aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
25 hoursfix: typo in build-essential and add mention that stdlib.slip must be in cwdmasterJoel Kronqvist
26 hoursdoc: added system requirements & fixed map x to x orHEADdevelJoel Kronqvist
38 hoursdoc: updated the README, still sysreqs missingJoel Kronqvist
38 hoursdoc: repeat in TUTORIAL.mdJoel Kronqvist
38 hoursfeat: repeat in stdlibJoel Kronqvist
38 hoursdoc: added exercise on Collatz conjectureJoel Kronqvist
2 daysdoc: added exercises 3 and 4Joel Kronqvist
2 daysfeat: left-or and right-or for coproducts in stdlibJoel Kronqvist
2 daysfix: added missing conversions and generic inferring for coproductsJoel Kronqvist
2 daysdoc: added a new exc. 1 to serve as an introduction to the cli, added ↵Joel Kronqvist
documentation on discard
2 daysfeat: added discard: T -> () to stdlib.slipJoel Kronqvist
2 daysfix: removed unneccessary lowering from SCons(x, Nil) to x when getting ↵Joel Kronqvist
matched arms
2 daysfeat: --babysteps for REPL for easier debuggingJoel Kronqvist
3 daysfeat: map and filter for integers in stdlib.slipJoel Kronqvist
3 daysdoc: added documentation on writing typesJoel Kronqvist
3 daysdoc: added section on coproducts and documented their pattern matching in ↵Joel Kronqvist
TUTORIAL.md
3 daysfeat: implemented coproducts according to testsJoel Kronqvist
5 daystest: added boilerplate and tests for coproduct parsing, type checking and ↵Joel Kronqvist
evaluation
6 daysdoc: added exercise 1Joel Kronqvist
6 daysrefactor: loop-unrolled recursive function SExp::parts as it's called a lot, ↵Joel Kronqvist
also fixed it returning [Nil] if passed Nil
6 daysfix: quote/vector disappearing in substitution on casesJoel Kronqvist
6 daysfix: make case type checking work according to updated testsJoel Kronqvist
6 daystest: added failing tests for type pattern matching, as VecType and QuoteTy ↵Joel Kronqvist
must be accounted
6 daysfix: make argument type list stay as one type when there is just 1 argument nameJoel Kronqvist
6 daysfix: refined [x] to x conversion, think (not true) and (vector 1)Joel Kronqvist
6 daysrefactor: change conversions to use a stricter function with deduplicated codeJoel Kronqvist
7 daysfix: repl erroring "let used as operator" with empty/nil inputsJoel Kronqvist
this was fixed by transforming empty inputs to nil and not transforming nil inputs to empty inputs.
7 daysfix: changed type of (() T) from (T ...) to (Vector (T ...))Joel Kronqvist
this makes the type of the empty vector consistent with the runtime behavior and prevents weirdly typed expressions such as (vector (() Int)) : (Vector (Int ...)). removed an unused import in case.rs and changed a unused pattern variable to an underscore in conversion.rs.
9 daysdoc: added <> and factorial example to TUTORIAL.mdJoel Kronqvist
9 daysfeat: vector concatenationJoel Kronqvist
9 daysfix: conversions between vectors, they were needed for some functions, but ↵Joel Kronqvist
now it's stricter than before
9 daysdoc: added empty vector initialization and int vector sum to TUTORIAL.mdJoel Kronqvist
9 daysfeat: sum for lists/vectors in stdlibJoel Kronqvist
9 daysfeat: type conversion from (Vec/Quote X) -> X and add vec/quote to rest ↵Joel Kronqvist
pattern substitutions
9 daysfix: prevented loading non-let expressions as declarationsJoel Kronqvist
9 daysdoc: added help message and a reference to it in README.mdJoel Kronqvist
9 daysfeat: standard library & loading it by defaultJoel Kronqvist
9 daysfeat: read binds from files, evaluate expression from fileJoel Kronqvist
9 daysfix: function arguments not evaluating before function callJoel Kronqvist
10 daysfeat: fixed point dynamicsJoel Kronqvist
10 daysfix: subst not respecting fn and case bindsJoel Kronqvist
10 daysdoc: updated tutorialJoel Kronqvist
10 daysfeat: statics for fixed point recursionJoel Kronqvist
10 daysfix: made conversion work according to updated tests:Joel Kronqvist
* implemented conversion of arrow types * fixed (Int Bool) into (T T) succeeding * now vectors have to be of one type only even if generic * maybe something else too
10 daystest: stricter generic checking tests added for Type::aka and Type::into_typeJoel Kronqvist
10 daysfeat: added rest of types to the parserJoel Kronqvist
also fixed function tests in check.rs
10 daysfix: removed obsolete code for handling types as they are now parsed ↵Joel Kronqvist
directly to atoms
10 daysfeat: parsing of new types (T, (int ...), (int bool)) etc. also fixed bug in ↵Joel Kronqvist
into_type (it didn't handle lists recursively)
11 daysfix: removed unneccessary print, excluded .#[file] emacs backups in gitignoreJoel Kronqvist
11 daysfix: step scrutinee of case & can instantiate empty vecJoel Kronqvist