#
a71b1cc0 |
|
13-Mar-2018 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Updated as far as Pretype.sml Still no use of smpp tech.
|
#
e7b5dbb4 |
|
22-Jul-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Fix basic unification bug (add derived test-case)
|
#
872e20e7 |
|
21-Jul-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Switch type-checking to errormonad everywhere The optionmonad doesn't hold any advantage, and flipping back and forth between them was just annoying.
|
#
a1f463dd |
|
21-Jul-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Give Pretype environment slightly richer API
|
#
580d1ea2 |
|
21-Jul-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Get basic kernel working Interactive behaviour in terms of error messages and the like may still be broken.
|
#
3f02ce9c |
|
20-Jul-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Tweak optmonad.addState to return updated extra state
|
#
cb1931ce |
|
20-Jul-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Change error monads to wrap the state & result So, the state-error monad (called optmonad here) changes from 'state -> ('state * 'a option) to 'state -> ('state * 'a) option No doubt there is some precise monad-transformer jargon I could use to describe this change. The advantage of the latter is that it makes for an easy lift into the seqmonad (which replaces option above with seq).
|
#
6af175af |
|
20-Jul-2016 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Begin to make pretypes purely functional I want to do without the references that are used in the unification algorithm.
|
#
54f9badf |
|
07-Apr-2011 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Add has_unbound_uvar and mk_fun_ty to Pretype API. Also document some entrypoints there in the .sig suffix.
|
#
a63e7796 |
|
23-Feb-2010 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Add changes to Pretype required to make TermParse module compile.
|
#
4761143b |
|
10-Aug-2009 |
Tjark Weber <Tjark.Weber@cl.cam.ac.uk> |
Removed trailing whitespace from all .sml and .sig files. This affects over 900 files and was done using emacs's delete-trailing-whitespace function in batch mode. Building the system with Poly/ML and Moscow ML seems to work, so I'm hoping these changes don't break anything. Please complain if they do!
|
#
10195942 |
|
30-Nov-2008 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Minor prettification of the pretty-printing of pretypes.
|
#
0024ffaa |
|
27-Nov-2008 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Debugging Preterm.sml made me write a pretty-printer for pretype values (and I was almost annoyed enough to write one for Preterms too). I use Moscow ML compiler magic to get numbers for references, and have written to the Poly/ML mailing list to ask how to do the same in poly.
|
#
3b2b7c12 |
|
11-Nov-2008 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Modifications to support overloading to a pattern. For example, one can now do overload_on ("<>", ``\x y. ~(x = y)``) The parser does the right thing. The pretty-printer remains blissfully ignorant for the moment. I don't think Unicode aliasing will work quite yet either. Backwards compatible in that all the functions in Parse behave the same if given inputs that were previously acceptable. "The parser does the right thing" means the following - set_fixity "<>" (Infix(NONASSOC, 100)); > val it = () : unit - ``$<>``; <<HOL message: inventing new type variable names: 'a>> > val it = ``\x y. ~(x = y)`` : term - ``$<> p``; <<HOL message: inventing new type variable names: 'a>> > val it = ``\y. ~(p = y)`` : term - ``p <> q``; <<HOL message: inventing new type variable names: 'a>> > val it = ``~(p = q)`` : term When the pretty-printer is working correctly, the output will probably be ``\x y. x <> y`` ``\y. p <> y`` ``p <> q`` In the first two cases, fixing what would appear to the user to be an odd eta-expansion may be too difficult.
|
#
67005981 |
|
09-Apr-2001 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Changes to make the type parser handle thy$tyname syntax. This syntax can only be used as suffixes. Thus: (bool,bool) min$fun, for example.
|
#
118a9046 |
|
15-Nov-2000 |
Konrad Slind <konrad.slind@gmail.com> |
Latest mods for making everything paired.
|
#
a2511ab7 |
|
02-Nov-2000 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Changes to bring about Kananaskis parser. Known bug exists in treatment of qualified identifiers.
|
#
6e2257c8 |
|
11-Aug-1999 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
A number of changes, doing away with the old Pretype and Strm modules. These changes support the new implementation of the ParseDatatype module, which now refers to the type parser provided in this directory, meaning that ParseDatatype can see new user-defined type infixes as and when they become available.
|
#
caf74236 |
|
29-Apr-1999 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Initial revision
|