1
1
mirror of https://github.com/tweag/nickel.git synced 2024-09-20 16:08:14 +03:00
Commit Graph

43 Commits

Author SHA1 Message Date
Teodoro Freund
a480bd30b2 Polymorphic enums + fixes:
* forall is instantiated
* fixes for two unsolved bugs on makam
2019-12-20 13:20:06 +01:00
Teodoro Freund
7392bcbd68 No equal enums on eval. 2019-12-20 13:18:32 +01:00
Teodoro Freund
203afdd101 Typechecking 2019-12-20 13:18:32 +01:00
Teodoro Freund
79bc241579 Evaluation and contract system. 2019-12-20 13:18:32 +01:00
Teodoro Freund
59e133d8e9 Syntax for enums. 2019-12-20 13:18:32 +01:00
Teodoro Freund
650a4bc19b Fix for the forall 2019-12-20 13:12:15 +01:00
Teodoro Freund
de8a5d55a3 Documented hack 2019-12-20 13:08:42 +01:00
Teodoro Freund
9f2c518a3e Quick fix for Makam issue #66 2019-12-20 13:08:42 +01:00
Teodoro Freund
d1331b7344 change name map to forall 2019-12-20 12:15:45 +01:00
Teodoro Freund
4a5062fdfc introduce Row type 2019-12-20 11:38:04 +01:00
Teodoro Freund
b7726ceacc 0.7.22 -> 0.7.24
and node 10 -> 12
2019-12-20 11:31:45 +01:00
Teodoro Freund
488f5c6159 Update Makam 0.7.20 -> 0.7.22 2019-12-17 14:52:39 +01:00
Teodoro Freund
46e21ad26d
Merge pull request #53 from tweag/teofr/contract-labels
Contracts have their own labels.
2019-12-06 11:35:15 +01:00
Teodoro Freund
2c3f3610e8 addressed comments 2019-12-06 11:33:18 +01:00
Teodoro Freund
cbfbaf7961 quick fix, no mo type parsing 2019-12-02 14:29:55 +01:00
Teodoro Freund
d46590935b Labels now have contract labels. 2019-11-29 18:01:21 +01:00
Teodoro Freund
6860686493
Merge pull request #47 from tweag/teofr/recs
Simple records
2019-11-29 11:31:11 -03:00
Teodoro Freund
60f7876b8f Addressed comments 2019-11-29 15:01:31 +01:00
Teodoro Freund
97cf517d6b Check that there are not repeated fields. 2019-11-26 14:21:50 +01:00
Teodoro Freund
a343649620 Completed the contracts for records. 2019-11-26 14:01:38 +01:00
Teodoro Freund
8aa7f58e10 Updated Makam to 0.7.20 2019-11-18 10:46:11 +01:00
Teodoro Freund
bedefab171 Added some more tests 2019-11-18 10:34:58 +01:00
Teodoro Freund
9ed1eea48e Added some things:
* runtime checking
 * some tests
 * eval rules
2019-11-18 10:34:31 +01:00
Teodoro Freund
5b77fd851b Basic implementation of records.
No runtime checking, no catch all, very basic.
2019-11-18 10:34:06 +01:00
Teodoro Freund
5be8795365 Explained the forall contract 2019-11-18 10:24:40 +01:00
Teodoro Freund
f4b4e7cfc3 added some tests 2019-11-18 10:15:54 +01:00
Teodoro Freund
bd2fa1baac working implementation of forall 2019-11-18 10:14:39 +01:00
Teodoro Freund
048dfc6c6c Simplify typechecking
... and add some tests
2019-11-13 13:57:00 +01:00
Teodoro Freund
705c2eb076 Small reorganization of the code 2019-11-07 15:54:21 +01:00
Teodoro Freund
cec532d579 Rewritten all the tests so there's no need for pretty printing.
Now it's much faster and (hoepfuly) it won't break Circle.
2019-11-07 15:51:21 +01:00
Teodoro Freund
127793d2b0
Merge pull request #40 from tweag/teofr/makam-tests
Moved the examples to tests.
2019-10-17 05:58:31 -03:00
Teodoro Freund
657fad5ce3
Merge pull request #37 from tweag/teofr/structural_map0
Changed typecheckTypes to a more generic abstraction.
2019-10-10 05:44:59 -03:00
Teodoro Freund
08a6c68fd4 Moved the examples to tests. 2019-10-07 13:41:06 +02:00
Teodoro Freund
6baddf98bf Changed typecheckTypes to a more generic abstraction. 2019-10-03 16:29:39 +02:00
Teodoro Freund
386c577dd0 Simple CI config for Makam + simple test
This was mainly copied from Makam's own CI config and it's as simple as can be,
there is some weird bug when, the first time running makam, it would "build" but never
answer to any of the in file queries, so before actually testing I need to "warm it up".

caching works quite well
2019-09-27 14:06:18 +02:00
Teodoro Freund
980738178a Fixed other issues and made lambdas lazy. 2019-09-25 10:36:39 +02:00
Teodoro Freund
8e7e5a24ab There was a problem with the recursive let...
fixing that.
2019-09-23 18:16:20 +02:00
Teodoro Freund
425bb1d029
Merge branch 'master' into teofr/expressions-as-types-take2 2019-09-23 05:01:50 -03:00
Teodoro Freund
f6cab65576 expressions as types, with better support
This enables to insert expression (dynamic contracts) into types,
in order to use them in `Promise(...)` and `Assume(...)`.
2019-09-13 12:04:27 +02:00
Teodoro Freund
a2d279ccb4 Recursive let
it ended up being easier than I thought
2019-09-12 19:02:25 +02:00
Teodoro Freund
5256d54944 Fixed some reviews
Going from the `ifte` way to the different rules would be better if `typecheck`
wouldn't have two responsibilities, to typecheck and to traverse the
AST looking for `Promise()`.
2019-09-12 10:45:40 +02:00
Teodoro Freund
60c439e7fd Initial makam spec commit
Quite limited for now
2019-09-11 16:36:15 +02:00
Teodoro Freund
7c6d6fc657 Just adding a basic infra to have Makam on NixOS 2019-09-11 15:34:49 +02:00