Skip to content

Releases: andrew-johnson-4/lambda-mountain

1.19.28

25 Nov 22:30
b0d2af2
Compare
Choose a tag to compare

Features:

  • slice and index syntax for LSTS
  • various bug fixes to prepare for tokenization with LSTS
print( "abcd"[2:] );

1.19.27

25 Nov 01:57
02e9918
Compare
Choose a tag to compare

Features:

  • if a type is comparable, then it can define a cmp function
  • created comparison operators for Strings, SmartStrings, List, and Type

1.19.25

24 Nov 21:36
35cde05
Compare
Choose a tag to compare

Features:

  • install lm to /usr/local/bin if sudo
  • add a make option to profile compilation (requires perf)

1.19.24

24 Nov 19:05
6911108
Compare
Choose a tag to compare
  • remove all dead code related to Tag<x> and manual CaseNumber
  • reduce compile times by another 2s

tag casts can now be accomplished with

(as t Tag::MyCase)

This tag format is preferable because it can be sorted and hashed for efficient unification and indexing.

1.19.23

24 Nov 18:26
886ebbd
Compare
Choose a tag to compare

Features:

  • triage performance issues with deriving Field types with quick-prop
  • compile time down from 85s to 35s

1.19.22

24 Nov 04:57
61d1148
Compare
Choose a tag to compare

Features:

  • fields are now derived with quick props

1.19.21

23 Nov 21:08
1759f90
Compare
Choose a tag to compare

Features:

  • quick-prop is indexing and enrichment is working
  • quick-prop is written in LSTS, so all the things necessary to use LSTS code in real code

1.19.19

23 Nov 01:50
e81efb9
Compare
Choose a tag to compare

Features:

  • LSTS syntax destructure structured data
  • destructure by field-name
match term {
   TermCase { field-name=field-name, field2-name=field2-name } => print(field-name);
}

1.19.18

22 Nov 03:44
48ab967
Compare
Choose a tag to compare

Features:

  • LSTS Tuple type syntax
  • LSTS Tuple expression syntax
let f(x: X): (X, X) = (x, x);

1.19.17

22 Nov 01:01
a83b585
Compare
Choose a tag to compare

Features

  • Fix a surprisingly intricate type derivation bug
  • if a type definition derives another type in its definition, but is not used in code, then it wouldn't get marked to compile
  • this whole pipeline needs to be cleaned up