- step 1
- Closure scope contains ThunkIDs instead of values
- arithmetic expressions
- attribute sets
- field accessor parsing
- bugs:
-
let id = x:x; x = 4 in id x
diverges -
let x = 4; in {a = x;}
gives unbound variable,let x=4; in x
works
-
- let bindings
- syntax rework
- remove lens dependency?
- step 2
- figure out step 2
- recursion
- builtins
- error
- strings
- error
- eventually
- recursion but really
- booleans
- are they just atoms? would be weird to have 0 not equal false though
- trace
- stack traces
- list builtins
- nix-style { foo.bar = 4; }
- proper megaparsec errors for unexpected keywords
- check whether all rejected words are actually keywords
- think about runtime function call syntax
- it's not lists
- rename stuff
- lazy evaluation terminology
- code closure
- imports
- check for unbound variables to avoid capture issues
- warnings
- fix precedence issue (
builtins.fix (self: 0)
fails) - benchmarks
- use Text instead of String
- inherit from set, inherit multiple
- performance stuff
- (!) syntax issue with braces for function calls, f(x) has different meaning in rt and ct. spaces?
-
where
? - design questions
- Everything
- Atoms
- remove microlens dependency?
forked from jonascarpay/alloy
-
Notifications
You must be signed in to change notification settings - Fork 0
License
considerate/alloy
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
No description, website, or topics provided.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- Haskell 92.4%
- Nix 7.6%