about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2019-09-19 test: add eitherN testAlex Rice1-0/+1
2019-09-19 feat: add n-ary eitherAlex Rice1-2/+4
2019-09-17 Add path typeMichael Fellinger2-1/+3
2019-09-14 docs(README): Add usage information to READMEVincent Ambo1-2/+46
This fixes #2.
2019-08-29 Merge pull request #1 from tazjin/feat/travis-buildsVincent Ambo5-0/+343
Add build configuration and various other repo setup chores
2019-08-29 fix: Bump Nix in CI setup to 2.2.2Vincent Ambo1-0/+1
Yants does not seem to work with older versions of Nix and I have not yet figured out why.
2019-08-28 chore: Add contribution & code of conduct informationVincent Ambo2-0/+135
2019-08-28 chore: Add Apache License 2.0Vincent Ambo1-0/+202
2019-08-28 docs: Add build status to READMEVincent Ambo1-0/+2
2019-08-28 feat: Add Travis CI configurationVincent Ambo1-0/+3
2019-08-28 chore: Change file layout to match repository instead of gistVincent Ambo9-39/+41
2019-08-28 test: Add test for pattern matching on sum typesVincent Ambo1-0/+5
2019-08-28 test: Add a test to check that all types match the 'type'-typeVincent Ambo1-1/+15
2019-08-28 feat: Introduce composable type errors and type parameter checkingVincent Ambo1-101/+268
This refactoring moves the type definitions into a recursively evaluated attribute set, which makes it possibe to refer to types in the definitions of other types. This functionality is used to type-check some of the type parameters passed in to other types. This is not yet done for all higher-order types because the evaluation semantics of Nix make it less useful for some cases. Further the definition of a type itself is now a stricter representation that works for all types except typed functions, which allows for composable error messages.
2019-08-28 feat: Add rough initial version of sum typesVincent Ambo2-1/+32
Sum types are represented as attribute sets with a single key in them.
2019-08-28 docs: Add defun to READMEVincent Ambo2-3/+19
2019-08-28 feat: Implement support for typing functionsVincent Ambo3-1/+20
The defun helper takes a type signature and a function and makes a typed version. Because we can.
2019-08-28 test: Add some simple tests for type-checksVincent Ambo1-0/+48
Does not currently test check failures, which makes it sort of not as useful as you'd think.
2019-08-28 chore: Add Google's copyright headerVincent Ambo1-0/+3
2019-08-28 docs: Update struct screenshot in READMEVincent Ambo1-1/+1
2019-08-28 feat: Improved error message for missing struct fieldsVincent Ambo2-1/+2
2019-08-28 docs: Add enum screenshot to READMEVincent Ambo1-1/+7
2019-08-28 feat: Add enum supportVincent Ambo2-15/+22
2019-08-28 refactor: Gain back a few more linesVincent Ambo1-14/+8
2019-08-28 refactor: Drop back to below 100 lines :)Vincent Ambo1-6/+2
2019-08-28 feat: Add function typeVincent Ambo1-2/+3
It's not currently possible to check arguments for curried functions, but there might be something on the horizon for attribute set functions.
2019-08-28 feat: Add derivation typeVincent Ambo1-0/+3
2019-08-28 docs: Fix image links (relative is not supported in gists)Vincent Ambo1-3/+3
2019-08-28 chore: Move screenshots into the gistVincent Ambo4-3/+3
2019-08-28 feat: Support better error messages for list/attrs element checksVincent Ambo1-5/+13
2019-08-28 feat: Initial check-in of type system sketchVincent Ambo2-0/+104