Skip to content

Releases: madlib-lang/madlib

Release v0.22.2

10 Mar 16:06
Compare
Choose a tag to compare

Bug Fixes

  • make TCO optimized functions handle mutation correctly for LLVM backend (30f78a2)
  • make type error in tests appear correctly (59632bc)
  • make withTimeout and Http.request work correctly wrt error and cancellation (8589367)

Release v0.22.1

03 Mar 18:52
Compare
Choose a tag to compare

Bug Fixes

  • make enableTTYRawMode stop hanging the process (55f5b63)
  • make formatting of Char literals with hexa or unique escapes correct (fef2557)
  • make pretty printing for bytes and integers less ambiguous (f8e1732)
  • reject records constructors with field dupplicates (fda843a)
  • small fixes to Stream.concatMap (3cfa385)
  • small improvements to Set and Stream modules (ef0306d)
  • typo (869af14)
  • update ci builds with esbuild instead of rollup (faf495e)
  • update search for esbuild (ff3a389)

Features

  • add Stream/Process.exec for node (d6a98c2)
  • first draft of Stream/Process.exec (730fbfe)
  • first version of Stream/File api (72e628a)
  • move some functions from IO to Terminal and add some related to tty (cfcf15d)

Release v0.22.0

25 Feb 09:18
Compare
Choose a tag to compare

Bug Fixes

  • Correctly apply substitution for record constructors (2d6765a)
  • force rollup plugin-node-resolve version for workflows (d9ecc19)
  • force rollup version for workflows (905186a)
  • Improve error diagnostic for unbound tvars in type definitions (f1d97b8)
  • improve errors when name is not found in namespace import (1cfd280)
  • make bundle-darwin-arm64-archive update dynamic libs correctly for generated binary (6f24a94)
  • make sure to try defaulting on parent preds (cdeceb1)
  • show correct error when using something not exported by a foreign module (8055349)
  • wrap madlib package installer call in double quotes (ed3bb92)

Features

  • Add network module draft to prelude (b04820c)
  • correctly handle hexa and unicode escapes in strings and chars (00fe8ac)
  • improve formatting of if expressions (6f186f4)
  • improve grammar errors for string and char literals (6efef08)
  • Make it possible to install local packages with file:// protocol (350e470)
  • small improvements (be32305)
  • wrap up initial version of Network module (5e0320f)

Release v0.21.2

08 Feb 20:15
Compare
Choose a tag to compare

Bug Fixes

  • fix regression making some show instances fail to monomorphize (637e13d)
  • simplify record types during monomorphization (382e20a)

Features

  • small prelude improvements (ec53431)

Release v0.21.1

06 Sep 08:45
Compare
Choose a tag to compare

Bug Fixes

  • Fix path issues for windows (134f4af)
  • Minor fix to mutation restriction (59a0918)
  • Stop inferring twice for implicitly typed expressions (64bb113)
  • Use correct arity for checking if constructor call is saturated (9b4da70)

Features

  • Add tailRec function for stack safe recursion (222cdf0)
  • Extend trmc for list constructor with 2 values and a recursive call (a94e569)
  • Make TVar hold an Int instead of String for performance and improve tests of Stream (2f94f52)
  • Make Wish.parallel stack safe (0826891)
  • reduce hash size for unique names (e3a0dec)
  • Rework Set using a RB tree (823f06b)
  • Rewrite Dictionary to use an RB tree and add minor codegen fixes related to pattern matching (1274437)
  • Small fixes and draft of Stream module (925d07f)

Release v0.21.0

21 Jul 19:16
Compare
Choose a tag to compare

Bug Fixes

  • Add empty declarations before expressions to handle case of self mutation (83628f3)
  • Add missing annotated exps to function mutation check (1717901)
  • Correctly format type diff when kind differs (b39787e)
  • Correctly handle shadowing a namespace import (e326ebc)
  • Fix issue with mutation restriction (12c039a)
  • Fix unused local definitions that were sometimes wrongly reported and add the warnings for do blocks (b85510f)
  • Improve JSExp formatting and multiline type annotations (cecb222)
  • Make deriving records work again (6705e32)
  • Make mutation work for inner expressions and add error for mutating functions (ed37ad7)
  • Make mutation works when it's mutating from inside the assignment itself (731c764)
  • Make reexported constructors monomorphize correctly (207b050)
  • Update inference of App by applying subst of arg to type of fn (a9a978d)

Features

  • Add <|> to alias alt and handle errors of deriving Comparable (c372b2f)
  • Add cancelation for File and Http modules (9a869d5)
  • Add derivation of Comparable for records (548550a)
  • Add error for pattern matching with a function that isn't a constructor (ce0956d)
  • Add Float module (ae066e6)
  • Add more cancelation to Wish based functions in the standard library (8338373)
  • Add private modules for prelude with __ prefix and suffix (b864601)
  • Add Short type and rearrange some prelude modules (d3ff0a0)
  • First draft of deriving Comparable (9e356ca)
  • Improve cancellation for Wish and handle it for Http module (ecccdec)
  • Make comparison operators use Comparable and implement Comparable for all base types (ef45c47)
  • Remove local functions that aren't used (db38c7f)
  • Rename Inspect to Show and reorganize the standard lib slightly (1ca0fff)
  • Update ComparisonResult to Comparison and make it an ADT (40fcbf0)
  • Update Monoid instance and make assoc be aliased by ++ (9002b07)

Release v0.20.0

04 Jul 19:25
Compare
Choose a tag to compare

Bug Fixes

  • Disable indentation of JSExp in the formatter for now (be57054)
  • Make listCtorSpread not mutate the input List (eb22e9f)
  • Make ImportNotFound work for local imports (ddae32f)
  • Various fixes (ccafe79)

Features

  • Add multiline code for the REPL (fcb0b00)
  • Add ppInspect, cInspect, ppLog, and cLog (b83d256)
  • Add ppTrace and cTrace (c348dce)
  • Basic draft of the REPL (f9d413f)
  • Great progress on the REPL (a8144ba)
  • Make type aliases be able to reference types or aliases defined later (b7f2d59)

Release v0.19.2

18 Jun 07:36
Compare
Choose a tag to compare

Bug Fixes

  • Make comments at end of pipe() work correctly in the formatter (fcfb8db)
  • Minor formatter fixes (30d1669)

Features

  • Add location for ContextTooWeak error (d0d4e93)
  • First limited working version of debug symbols (f7a7cd8)
  • LLVM 12 transition looks good (1fae8c0)
  • meaningful progress on debug annotations for llvm backend (8fb4e35)

Release v0.19.1

02 Jun 21:28
Compare
Choose a tag to compare

Bug Fixes

  • Quantify after applying current substitution (331bd33)
  • Update inference fix (13b77c5)

Features

  • Add exhaustive patterns for instance methods (3562a28)
  • Add optimization feature flags (bbc1e83)
  • Add trmc for + and * (2d74a7e)
  • great progress and got tests green again (d922ad8)
  • Optimize map(map(..)) calls (04adaec)
  • Prepare for 0.19.1 release (2cbf214)
  • wip higher order copy propagation (11286d6)

Release v0.19.0

14 May 15:43
Compare
Choose a tag to compare

Bug Fixes

  • Add missing case for empty string templates in ToCore (0570531)
  • Add missing case for monomorphizing local bindings (2f635ad)
  • attempt to fix setup docker action (08e4182)
  • Few fixes before release (6e144c2)
  • merge existing env for Process.exec (36ced14)

Features

  • Add a few niche optimizations for pipe calls and closure converted code (ddf80f8)
  • Add builtins module and improve monomorphization (3d825ba)
  • first step towards monomorphizing local functions (f16c051)
  • Good progress on monomorphization of local functions and methods (6dded66)
  • Great progress towards making llvm backend work with monomorphization (ed27f88)
  • Improve errors in case no file is found by the formatter (0ddb941)
  • initial draft of next version (61b3971)
  • make progress on monomorphization (0902559)
  • Monomorphization seems to work for llvm backend (b1e8d7a)
  • More fixes and add mutation restriction (141b56c)
  • Move more things to BUILTINS.mad and start cleaning llvm codegen (03c9cac)
  • Move remaining instances for Eq and Inspect to BUILTINS (4ff0442)
  • Only namespaced constructors still need to be done (0a67973)
  • Optimize list patterns for common patterns and fix tests (c5c773a)
  • Some constructor access progress and bug fixes (e908a28)
  • Some more progress and make monomorphization faster (7dbc6e8)
  • some more progress on monomorphization (d2ac18a)