Commit Graph

7652 Commits (f70dbeb1b81a7440424ae471accbaa5f37ed5685)

Author SHA1 Message Date
Jacques Garrigue f70dbeb1b8 fix problem with constraints outside of matching, see typing-gadts/test.ml
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@11068 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-06-05 15:00:04 +00:00
Jacques Garrigue 3e7936cc2c limit propagation of type constraints to patterns to -principal mode
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@11012 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-04-19 02:34:54 +00:00
Jacques Garrigue ea15141d8a * make -principal stricter for gadts
* may also change behaviour without -principal
* propagate type constraints in let expressions to patterns


git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@11011 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-04-19 02:13:52 +00:00
Jacques Garrigue 04968cc2e6 fix principality by expanding local definitions when exporting a value
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10979 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-03-10 06:27:24 +00:00
Jacques Garrigue 974779cd1d recover some principality
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10964 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-02-24 06:29:26 +00:00
Jacques Garrigue 30d608dda0 add some more examples + section titles
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10925 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-01-07 07:21:43 +00:00
Jacques Garrigue 3345086867 backport of fix from gadts-devel
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10924 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-01-07 07:17:38 +00:00
Jacques Garrigue c64d239264 finish section 5
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10917 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-01-06 03:46:34 +00:00
Jacques Garrigue 3b79833705 add sections 5.7 to 5.10
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10916 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-01-05 10:10:04 +00:00
Jacques Garrigue e88a3e9482 allow existentials in "as" patterns + report escaping newtypes + clean-up
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10901 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-14 06:33:06 +00:00
Jacques Garrigue 6389ce769b add red-black trees
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10900 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-14 04:25:26 +00:00
Jacques Garrigue 1f26019d5e reset_pattern in partial_pred
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10898 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-14 02:00:20 +00:00
Jacques Garrigue 23df39a27a forgot level in partial_pred
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10897 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-14 01:53:15 +00:00
Jacques Garrigue 625ff1c969 make it work with omega07.ml
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10896 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-14 01:38:37 +00:00
Jacques Garrigue 052c8f93d1 fix some bugs found with omega07.ml
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10895 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-14 00:53:47 +00:00
Jacques Garrigue db519b49dd Add omega examples
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10893 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-13 08:46:36 +00:00
Jacques Garrigue a845276821 In type_cases, must take instances of ty_res
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10892 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-13 07:35:16 +00:00
Jacques Garrigue dd5535cfe6 pattern level is only for definitions + existentials too should use pattern level
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10891 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-13 02:59:58 +00:00
Jacques Garrigue b76455029e back to original
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10890 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-10 00:40:45 +00:00
Jacques Le Normand 80b18d194f changed the syntax back
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10885 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-05 15:25:44 +00:00
Jacques Le Normand 89f3b70c5e newtypes now have an explicit level
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10884 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-03 19:52:36 +00:00
Jacques Le Normand b16b083526 changed syntax of constructors
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10883 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-03 17:20:18 +00:00
Jacques Le Normand 981758ea76 existentials can no longer appear in let bindings. This is a temporary restriction until we add gadt support to type_let
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10882 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-03 16:13:01 +00:00
Jacques Le Normand a630208a26 moved escaping let code
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10881 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-03 14:20:07 +00:00
Jacques Le Normand 986b398713 fixed escaping existentials in let bindings
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10880 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-03 14:06:31 +00:00
Jacques Le Normand eddcc06798 fixed bug in syntactic sugar translation
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10879 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-03 01:49:08 +00:00
Jacques Le Normand d77b95fc56 fixed update_level bug
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10878 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-12-03 00:59:36 +00:00
Jacques Le Normand 775d35a2b8 & types are no longer created during for the new type syntax annotation
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10852 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-24 13:37:24 +00:00
Jacques Le Normand b623cdcf67 fixed duplicate error message bug
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10851 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-24 12:50:18 +00:00
Jacques Le Normand 421d864cca camlp4 -> caml ast transformations done
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10841 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-22 12:30:08 +00:00
Jacques Le Normand 3d99be4287 Camlp4 finally works. This is probably not the most elegant implementation
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10836 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-19 16:40:08 +00:00
Jacques Le Normand 4159485fff changed VERSION to 3.13.0-gadt so that it can work with camlp5. This is nonstandard, but hopefully it will not cause any problems
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10835 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-19 14:27:41 +00:00
Jacques Le Normand 86f1604d06 undid all changes to camlp4
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10831 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-19 08:28:32 +00:00
Jacques Le Normand 5a99cea6a3 renammed a function
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10817 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-18 06:56:02 +00:00
Jacques Le Normand 9a97dd50c9 small cleanup
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10816 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-18 06:23:00 +00:00
Jacques Garrigue 800af0cf42 fix mcomp + untabify
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10813 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-17 09:00:58 +00:00
Jacques Le Normand 9713744542 undid changes in last commit. unify now uses the old mode when possible
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10812 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-17 08:14:00 +00:00
Jacques Le Normand 460226317d every function exported by ctype is now set to the correct mode
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10811 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-17 07:41:18 +00:00
Jacques Le Normand 93d0eb2df1 updated addlabels
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10810 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-17 05:05:00 +00:00
Jacques Garrigue 8d643fc12d switch to Old in moregen too
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10807 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-16 06:46:34 +00:00
Jacques Le Normand 91a6a7c8b0 added change_mode function
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10806 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-16 06:35:29 +00:00
Jacques Le Normand 3ec9bc692b complete_constrs in parmatch.ml now works with gadts. Reverted changes to the syntax tree which are no longer needed.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10805 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-16 06:01:59 +00:00
Jacques Le Normand 180d03ae93 big change as to how unification mode is handled
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10804 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-15 09:26:28 +00:00
Jacques Le Normand ac4fa5ae13 we must forget abbrevs when switching to the old method of unification. removed unify_old: unify now decides for itself whether to use the old or the new method
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10803 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-15 08:02:17 +00:00
Jacques Le Normand 674cd74009 rebootstrapped to fix exception printing error
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10802 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-15 04:41:39 +00:00
Jacques Garrigue 81b859245b fix printing bug
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10801 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-15 04:32:21 +00:00
Jacques Le Normand b36e845126 updated VERSION and config files
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10799 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-13 11:27:56 +00:00
Jacques Le Normand f24d678e39 bootstrapped camlp4 gadts extension
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10798 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-12 11:33:41 +00:00
Jacques Le Normand d2fedeb703 updated addlabels.ml
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10797 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-12 09:41:49 +00:00
Jacques Garrigue e67c5db33f move everything to type_expect
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadts@10796 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-11-12 03:09:11 +00:00