Stefan pushed to branch master at Stefan / Typer
Commits: 2432cce1 by Jonathan Graveline at 2018-05-07T22:21:30Z New sform_load. Work in progress. - - - - - 4a0ed5b5 by Jonathan Graveline at 2018-05-07T22:37:20Z -lib nums to -pkg num - - - - - 905fc6f0 by Jonathan Graveline at 2018-05-10T01:08:36Z Modification and use of susp within sform_load - - - - - 5aa903a9 by Jonathan Graveline at 2018-05-10T01:12:36Z Modification of mktup and new function used in mktup - - - - - fc0bf4fa by Jonathan Graveline at 2018-05-10T15:15:35Z Removed 'reset_intra_ref' - - - - - 34d24f66 by Jonathan Graveline at 2018-05-10T15:20:01Z Correction in 'sform_load' and removed unused '_sform_default_rctx' - - - - - 83f93ecc by Jonathan Graveline at 2018-05-14T22:13:28Z First draft - - - - - f0d1072f by Jonathan Graveline at 2018-05-14T22:15:06Z First draft - - - - - a7dfcc1b by Jonathan Graveline at 2018-05-14T22:17:48Z Added some built-in function for Int, Float, String - - - - - 3b80038f by Jonathan Graveline at 2018-05-14T22:19:39Z Added some function for Int, Float, String - - - - - 00e86f25 by Jonathan Graveline at 2018-05-17T00:31:38Z Use of predefined function `shift` - - - - - 3d4d9623 by Jonathan Graveline at 2018-05-17T00:33:20Z Unfinished work on ctx2tup and mktup - - - - - d84820f3 by Jonathan Graveline at 2018-05-17T22:07:55Z
From master
- - - - - bd6a3933 by Jonathan Graveline at 2018-05-17T22:09:07Z Replace elab.ml - - - - - cdc94f8b by Jonathan Graveline at 2018-05-17T22:10:37Z Change from master - - - - - 3da1ce59 by Jonathan Graveline at 2018-05-17T22:15:49Z push_susp reverse let definition (not sure if it was an error) - - - - - bfa8bdcf by Jonathan Graveline at 2018-05-17T22:16:53Z Change from master - - - - - 69659f54 by Jonathan Graveline at 2018-05-17T22:19:36Z ctx2tup from master and different shift for tuple values - - - - - a7ed6fa2 by Stefan Monnier at 2018-05-18T19:43:20Z Merge branch 'trunk' into graveline
Also adds bool.typer and empty.typer for testing purposes, mostly.
- - - - - aaa4c5dc by Stefan Monnier at 2018-05-18T21:10:47Z Add missing parts of last commit
- - - - - 891026a4 by Jonathan Graveline at 2018-05-25T03:30:19Z Corrected String.sub String.concat - - - - - ae09719f by Jonathan Graveline at 2018-05-25T03:32:17Z Better name, more function - - - - - 26df3634 by Jonathan Graveline at 2018-05-25T03:33:03Z Better name - - - - - 7e8cd430 by Jonathan Graveline at 2018-05-25T03:34:45Z do macro, first draft - - - - - 00a41105 by Jonathan Graveline at 2018-05-26T15:17:41Z Syntax now using ";" and better use of IO_bind - - - - - eaca195c by Jonathan Graveline at 2018-05-26T15:23:04Z Sexp_print for debugging - - - - - 588c02a6 by Jonathan Graveline at 2018-05-26T15:23:50Z Sexp_print for debugging - - - - - df88126a by Jonathan Graveline at 2018-05-26T21:05:59Z Renamed Sexp_print to Sexp_debug_print - - - - - 34da1bba by Jonathan Graveline at 2018-05-26T21:08:02Z Renamed Sexp_print to Sexp_debug_print - - - - - 0259aaff by Jonathan Graveline at 2018-05-26T21:10:19Z cleanup - - - - - 6045d6aa by Jonathan Graveline at 2018-05-30T20:22:24Z Added make_block and Sexp_dispatch for Block - - - - - c096b10e by Jonathan Graveline at 2018-05-30T20:24:01Z New Sexp_block - - - - - 338fd242 by Jonathan Graveline at 2018-05-30T20:25:26Z New Sexp_block - - - - - 66f64c95 by Jonathan Graveline at 2018-05-30T20:27:21Z action now use block - - - - - fe78c2da by Jonathan Graveline at 2018-05-31T18:55:38Z Change to sexp_dispatch and added parse_default - - - - - a8779758 by Jonathan Graveline at 2018-05-31T18:56:37Z Added Parser_default - - - - - bd3aa605 by Jonathan Graveline at 2018-05-31T18:57:59Z Added Parser_default - - - - - 7884d73f by Jonathan Graveline at 2018-06-13T19:49:52Z Renamed Parse_default to Parser_default, Corrected String.sub argument count - - - - - b46c9421 by Jonathan Graveline at 2018-06-13T19:55:28Z Upload case.typer - - - - - 17fce738 by Jonathan Graveline at 2018-06-13T20:02:46Z Added Int->String - - - - - d3100d5e by Jonathan Graveline at 2018-06-14T02:25:03Z Added Ref as a built in type. - - - - - 1c406196 by Jonathan Graveline at 2018-06-14T02:26:12Z Added Vref as a value_type - - - - - 6fbec92e by Jonathan Graveline at 2018-06-14T02:27:39Z Added built in function Ref_make, Ref_read, Ref_write - - - - - ee004b1c by Jonathan Graveline at 2018-06-14T02:28:53Z Added Ref_make, Ref_read, Ref_write - - - - - 2669433a by Jonathan Graveline at 2018-06-14T03:23:09Z Ref_write affect when command is run - - - - - 56e7649d by Jonathan Graveline at 2018-06-15T22:47:16Z New built-in gensym, changed macro signature to return IO Sexp
- - - - - 203222b1 by Stefan Monnier at 2018-06-21T15:06:32Z Merge branch 'trunk' into graveline
- - - - - abda0e39 by Jonathan Graveline at 2018-06-21T16:28:58Z macro do in pervasive; test for macro do; some change on macro case
- - - - - eb8acb50 by Jonathan Graveline at 2018-06-21T16:30:52Z Merge branch 'graveline' of https://gitlab.com/monnier/typer into graveline
- - - - - cec64f4a by Jonathan Graveline at 2018-06-21T16:57:44Z After last merge symbol "_" in macro do need to be declared
- - - - - a8a77d78 by Jonathan Graveline at 2018-06-22T20:45:23Z New type Elab_Context and functions Elab_getenv, Elab_isbound, Elab_isconstructor
- - - - - 46381fd8 by Jonathan Graveline at 2018-06-25T18:11:36Z samples/list_n.typer, there must be some mistakes
- - - - - 246ba428 by Jonathan Graveline at 2018-06-25T21:22:00Z macro "case" now use "do" and "Elab_isconstructor"; added tests/case_test.ml
- - - - - 9e9a8e89 by Jonathan Graveline at 2018-06-27T17:57:09Z Correction of macro "do", dflt-sym need a symbol and not just "_"
- - - - - 4c682c42 by Jonathan Graveline at 2018-06-28T21:57:57Z New type and value for Array with some functions
- - - - - af4ba9f6 by Jonathan Graveline at 2018-06-29T20:41:33Z Correction of Array functions and simplification
- - - - - 9156b075 by Jonathan Graveline at 2018-07-02T21:08:22Z New data structure "Table" (some kind of tree) (work in progress)
- - - - - 124601a5 by Jonathan Graveline at 2018-07-03T22:19:55Z Corrected indentation in case.typer; table.typer rewriten with unit tests/table_test.ml
- - - - - e98cf539 by Jonathan Graveline at 2018-07-05T19:03:15Z Using rlwrap to add auto-completion and history
- - - - - a0f050f7 by Jonathan Graveline at 2018-07-05T19:40:51Z Stop compiler on first error
- - - - - ece77ad2 by Jonathan Graveline at 2018-07-05T19:43:43Z Don't try to print value if there's none
- - - - - 72bfc552 by Jonathan Graveline at 2018-07-05T19:49:54Z Added .directory to .gitignore
- - - - - f3667866 by Jonathan Graveline at 2018-07-06T03:03:52Z Print similar name with error message when a variable isn't found
- - - - - a89aa4f4 by Jonathan Graveline at 2018-07-11T19:39:36Z Compile samples/* only once in some unit tests; New balanced bst (bbst.typer)
- - - - - 81821861 by Jonathan Graveline at 2018-07-11T19:57:31Z Corrected macro type in default attribute and eval_test.ml
- - - - - c7d2bbfe by Stefan Monnier at 2018-07-18T21:01:03Z Merge branch 'trunk' into graveline
- - - - - 33a23595 by Stefan Monnier at 2018-07-21T21:29:49Z Make isconstructor pure and boolean; and ignore names in lctx
* btl/builtins.typer (Elab_isbound, Elab_isconstructor): Make pure and Bool. * samples/case.typer (is_ctor): Adjust accordingly.
* src/debruijn.ml (lctx_olookup, lctx_olookup_type) (lctx_olookup_value): Delete.
* src/elab.ml (elab_p_id): Not recursive. (check_case): Use Eval.constructor_p.
* src/eval.ml (sexp_dispatch): Remove dead code. (is_bound): Use senv_lookup. (constructor_p): New function, extracted from Elab.check_case. (is_constructor): Use it.
* tests/elabctx_test.ml (v2o_bool): New function. ("Elab_isbound", "Elab_isconstructor"): Adjust to new types of isbound and isconstructor. Add test case for alias to a constructor.
- - - - - c08685e0 by Stefan Monnier at 2018-07-24T00:57:53Z Merge branch 'trunk' into graveline
- - - - - ff69f5cf by Jonathan Graveline at 2018-07-24T01:55:12Z more List functions
- - - - - 61fc705d by Jonathan Graveline at 2018-07-24T02:18:36Z progression on the `case` macro
- - - - - 9f8cd189 by Stefan Monnier at 2018-07-24T02:19:28Z Merge branch 'trunk' into graveline
- - - - - e3e9599b by Jonathan Graveline at 2018-07-24T02:22:13Z Merge branch 'graveline' of https://gitlab.com/monnier/typer into graveline
- - - - - c8fad518 by Jonathan Graveline at 2018-07-25T00:08:43Z update on macro `case`
- - - - - 450e86fa by Jonathan Graveline at 2018-07-25T20:28:33Z *samples/list.typer, more consistent function's type declaration
- - - - - 5d4e2008 by Jonathan Graveline at 2018-07-25T20:35:26Z Stop compilation on error in `check` and elab functions Also store all errors and warnings for future use
- - - - - 2b2bac1b by Jonathan Graveline at 2018-07-25T20:40:47Z Print related name only when the name has underscore
- - - - - 26e9e4c2 by Jonathan Graveline at 2018-07-25T21:25:59Z Add an exception for sform_load's context when in pervasive.typer
- - - - - a188451f by Jonathan Graveline at 2018-07-26T02:52:06Z Merge branch 'master' of https://gitlab.com/monnier/typer into graveline
- - - - - be29169e by Jonathan Graveline at 2018-07-26T04:45:56Z Change lost somewhere in previous commit *samples/case2.typer *samples/do.typer *samples/list.typer
- - - - - b0b911ec by Jonathan Graveline at 2018-07-26T04:55:06Z Many change to use `load` in pervasive.typer and move some definition Temporary workaround for tuple access in macro `.`
renamed: samples/case2.typer -> btl/case.typer renamed: samples/do.typer -> btl/do.typer renamed: samples/list.typer -> btl/list.typer modified: btl/pervasive.typer deleted: samples/case.typer modified: src/opslexp.ml modified: tests/array_test.ml modified: tests/case_test.ml
- - - - - 572470f8 by Jonathan Graveline at 2018-07-27T05:30:17Z `plain-let` (not recursive nor sequential) without grammar yet
- - - - - 84261c57 by Jonathan Graveline at 2018-07-27T06:20:33Z keep count of `insert`/`remove` for faster `length` calculation
- - - - - 4d149272 by Jonathan Graveline at 2018-07-27T06:22:26Z use `if ... then ... else ...` syntax where appropriate
- - - - - 0ab2e43c by Jonathan Graveline at 2018-07-27T12:39:23Z Minimal built-in functions for unit tests in Typer
- - - - - 14f1aafb by Jonathan Graveline at 2018-07-30T20:57:35Z Correction of some unit test primitive (put action in `Vcommand` and set to correct type)
New primitive Integer->String (useful with Sexp_dispatch)
- - - - - e1917e8b by Jonathan Graveline at 2018-07-30T21:05:01Z Don't print related name with the single character symbol "_"
Added boolean operation from samples/bool.typer to pervasive.typer
- - - - - 35f6bc54 by Jonathan Graveline at 2018-07-30T21:09:57Z *polyfun.typer: Implicit `case` at function definition level (macro not working if at top-level, but working in `let`)
- - - - - a9f1a0dd by Jonathan Graveline at 2018-07-30T21:13:49Z macro for tuple creation and access (more to come) (`_,_` not working yet, temporarily using `_:_`)
- - - - - b27dd3ea by Jonathan Graveline at 2018-07-31T17:28:32Z `plain-let` with grammar setup
- - - - - 5c4ba829 by Jonathan Graveline at 2018-07-31T22:47:13Z Add function syntax support in `plain-let`
- - - - - 4191f41f by Jonathan Graveline at 2018-08-01T02:22:54Z new built-in function `Parser_*` and use it in do.typer
- - - - - 38b621d2 by Jonathan Graveline at 2018-08-01T16:12:25Z use `if...then...else...` syntax where appropriate
udict and odict (from table and bbst) for convenience
- - - - - 28006ea4 by Jonathan Graveline at 2018-08-01T17:33:28Z define operator `<-`, use it in do.typer and tuple.typer
tuple now working with `,` (needed escape: `_,_`)
- - - - - b3519661 by Jonathan Graveline at 2018-08-02T19:38:52Z macro `case` should now work on tuple
use `sexp_name` in `Sexp_debug_print`
change in `is_binary_op` (I think it was a bug)
tuple constructor now has a `gensym` name
- - - - - d63644ec by Jonathan Graveline at 2018-08-03T19:12:23Z samples/tuple_test.typer: Test written in Typer for tuple
Changed warning, info and fatal output in unit test primitive
- - - - - bedf45c5 by Jonathan Graveline at 2018-08-03T20:45:49Z Correction in polyfun.typer; unit test in Typer for macro `_|_`
- - - - - afe315b8 by Jonathan Graveline at 2018-08-06T15:52:15Z `Env.value_equal`: using structural equality when comparing constructor name
- - - - - ffe322a7 by Jonathan Graveline at 2018-08-06T16:26:56Z Rewrote unit test for `Bbst` and `Table` in Typer code
- - - - - e9a91eba by Jonathan Graveline at 2018-08-06T23:14:53Z An attempt to fix a problem with `load_`
- - - - - f4c0cfb7 by Jonathan Graveline at 2018-08-07T16:42:57Z `tunit` in eval.ml is now `unit` rather than `()`
- - - - - 3d4035ac by Jonathan Graveline at 2018-08-07T18:25:12Z Correction of bounds check in `array_get`
samples/array_test.typer: Unit test for `Array` rewritten in Typer
- - - - - f9d7cefc by Jonathan Graveline at 2018-08-09T17:30:04Z New primitive for inductive type info
Temporary fix of macro `case` to pass unit tests
Commented incorrect `Metavar` case in `conv_p`
- - - - - ab2c6d9b by Jonathan Graveline at 2018-08-10T16:59:38Z New macro `Test_file` not working on multiple call
Unit test rewritten in Typer for `case`, `do`, `Elab_Context`
Correction of primitive `Elab.is-arg-erasable`
- - - - - a8b733a6 by Jonathan Graveline at 2018-08-13T17:05:25Z Macro `Test_file` now return a command: `exec-test` from loaded file
File samples/batch_test.typer now working
Most unit test in Typer adapted for `Test_file` and batch_test.typer
- - - - - c11bb8a4 by Jonathan Graveline at 2018-08-13T20:52:32Z New complementary primitive: `Elab_arg-pos`
Improved macro `case` on explicit field pattern
- - - - - cf4448de by Jonathan Graveline at 2018-08-20T21:58:13Z Macro `Tuple` returning a type
Comment for `Test_file` in pervasive.typer
- - - - - 3981eea1 by Jonathan Graveline at 2018-08-22T23:29:34Z New character '@' introducing docstring
New primitive `Elab.debug-doc` mostly for testing docstring
Replaced `load_` by `load`
- - - - - 451ead23 by Jonathan Graveline at 2018-08-23T20:56:11Z Documentation, work in progress
Some more tests in samples/case_test.typer
- - - - - caa73195 by Jonathan Graveline at 2018-08-24T18:33:07Z Revised comments, trying to be more clear
- - - - - cd2381bc by Jonathan Graveline at 2018-08-24T19:46:34Z New unit test for `plain-let`
Revision of bbst.typer and table.typer
- - - - - 6ef13572 by Jonathan Graveline at 2018-08-27T19:01:33Z More comments in samples/myers.typer
Basic unit tests on Myers list in samples/myers_test.typer
- - - - - 13cf5ad0 by Jonathan Graveline at 2018-08-29T20:49:39Z Revised comments; commented more function in btl/builtins.typer
Rewrite tuple body; commented tuple unit tests (but they should work)
- - - - - a1747386 by Jonathan Graveline at 2018-08-30T20:16:35Z Removed "debug output" in `Ref_make` from src/eval.ml
samples/decltype.typer: another version of `decltype` implemented in Typer
samples/math.typer: a toy math library
- - - - - 9fd7015b by Jonathan Graveline at 2018-08-31T21:25:07Z Revised comments and documentation from btl/ and samples/
- - - - - 2269559a by Stefan Monnier at 2018-09-17T21:21:16Z Merge remote-tracking branch 'remotes/gitlab/graveline' into trunk
- - - - -
24 changed files:
- .gitignore - GNUmakefile - btl/builtins.typer - + btl/case.typer - + btl/do.typer - + btl/list.typer - btl/pervasive.typer - + btl/plain-let.typer - + btl/polyfun.typer - + btl/tuple.typer - + samples/array_test.typer - + samples/batch_test.typer - + samples/bbst.typer - + samples/bbst_test.typer - + samples/bool.typer - − samples/bugs.typer - + samples/case_test.typer - + samples/decltype.typer - + samples/do_test.typer - + samples/elabctx_test.typer - samples/empty.typer - samples/error.typer - + samples/list_n.typer - + samples/math.typer
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/monnier/typer/compare/90f98f1062c2db34c6815fbb8885ec364be...