Commit Graph

14 Commits

Author SHA1 Message Date
William J. Bowman
14960fd038
More quasisyntax/loc for better error messages 2016-01-21 16:07:16 -05:00
William J. Bowman
cc502671a6
[FAILING] Fixing design and running tests
Fixed up some of the design and started testing.
2016-01-21 15:14:13 -05:00
William J. Bowman
83fb144c24
[UNTESTED, DESIGN BUGS] Design for typed macros
Started working on a promising design for lifting type checking into the
macros for easy syntax extensions over the typed language. Works on some
examples, but running into performance issues and haven't
tested/finished design.
2016-01-20 17:52:37 -05:00
William J. Bowman
76933bd3b1
Fixed coq->cur to setup local-env, tweaked ->
* Fixed up coq->cur to track local-env while expanding.
* Tweaked -> to give better error messages
2016-01-19 16:57:17 -05:00
William J. Bowman
87bc0e44bc
[FAILING] cur-lib builds, tests fail
New application macro requires many extensions to manually keep up the
term environment while expanding/running code at compile-time.
This is not unreasonable, but does require some more changes.
2016-01-19 15:32:03 -05:00
William J. Bowman
b52ae2617b
Better error messages for application 2016-01-19 14:25:51 -05:00
William J. Bowman
961a5b7bb9
Rewrote Olly
Olly is now properly designed. This also fixes some issues with binding,
i.e. fixes #32, and extraction to Coq and Latex
Makes progress on #9.
2016-01-19 11:23:49 -05:00
William J. Bowman
3a644fae90
Added length function 2016-01-19 11:11:31 -05:00
William J. Bowman
b0a5f3fc09
Removed outdated comments 2016-01-19 11:11:30 -05:00
William J. Bowman
bf987cdb06
Better surface syntax. Closes #34
* Unified the surface syntax. There are no longer distinctions between
  single-arity and multi-arity function/function types.
* Removed case and case*, in favor of match, a single advanced pattern
  matching construct.
* Updated all libraries, tests and documentation to use these new syntax.
* Some work to provide improved error messages in surface syntax.
2016-01-18 14:14:05 -05:00
William J. Bowman
8c149fcef2
Fixed inductive elimination. Closes #33
Previously, inductive elimination could fail due to non-determinisic
matching in the reduction-relation and reduction over open terms via
reflection.
2016-01-13 21:00:04 -05:00
William J. Bowman
0596e4a0f6
[FAILING] Implemented list; found bug in elim
Implemented a list data type, but the tests revealed a bug in reducing
eliminators. Needs investigation.
2016-01-13 14:48:51 -05:00
William J. Bowman
ebdb419dd7
Changed oll to olly 2016-01-11 15:46:55 -05:00
William J. Bowman
792d37252f
Split and reorganized package. Closes #14
Created split packages: cur, cur-lib, cur-test, cur-doc, similar to
other Racket packages, e.g., redex.

* Moved tests out of core and into cur-test
* Moved docs into cur-doc
* Moved cur implementation and libraries into cur-lib
* Added cur meta-pacakge that installs all of the above
2016-01-10 19:10:12 -05:00