GitHub PushEvent at 2014-02-27 20:34:06
Repository: modern-eiffel
Actor: hbr
Payload: {"shas":[["9b3775cb087fb3f85d6fcd6568ad6c4ef6d8b4a7","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Removed 'typ' and used 'term' also for type terms\n\n\tmodified:   ocaml/assertion_table.ml\n\tmodified:   ocaml/assertion_table.mli\n\tmodified:   ocaml/class_table.ml\n\tmodified:   ocaml/class_table.mli\n\tmodified:   ocaml/eiffelc.ml\n\tmodified:   ocaml/feature_table.ml\n\tmodified:   ocaml/feature_table.mli\n\tmodified:   ocaml/new_prover.ml\n\tmodified:   ocaml/proof.ml\n\tmodified:   ocaml/prover.ml\n\tmodified:   ocaml/term.ml\n\tmodified:   ocaml/term_table.ml\n\tdeleted:    ocaml/type.ml","Helmut Brandl",false],["13e0911ded9257a3c62a1562b33e78ceeae72cf4","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Term unification now symmetric\n\nGiven two terms 't1' and 't2' and a number of variables 'nvars' the algorithm finds a substitution for the\nvariables so that none of the variables occurs in the substitution terms and that the substitution applied\nto 't1' and 't2' makes them identical. In case that no substitution exists the algorithm raises 'Not_found'.\nThis symmetric version of the unification is necessary in order to apply it within the type checker.\n\nFix: There has been a bug in the function 'sub'. The substitution terms have to be shifted up by 'nb' in case\nthat the substitution happens in an environment with 'nb' bound variables.\n\nOptimization: The functions 'upbound' and 'up' check if the number of shifts is zero. In this case nothing\nhas to be done, i.e. the algorithm is applied only to shifts above zero.\n\n\tmodified:   ocaml/term.ml","Helmut Brandl",false],["f2b87a95714b6c5b68079ae49a4e4b0de7d32bd0","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","First step to make symmetric unification incremental\n\nThe substitution consisting of an array of terms and an array of flags has been factored out in\norder to make unification incremental.\n\n\tmodified:   ocaml/term.ml","Helmut Brandl",false],["bfce9e55a7cc3a35679326f4526f74d573f3da7e","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Fix: removed 'open Type'\n\nThe module 'type.ml' does not exist anymore\n\n\tmodified:   ocaml/assertion_table.mli","Helmut Brandl",false],["49db98e66dec1fbbd3316ac15569b53e58fe9d54","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Added the module 'Option'\n\n\tmodified:   ocaml/container.ml","Helmut Brandl",false],["81014afd38d3b8422c72cb79f06e92c0cb770595","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Added some more syntatic types\n\n\tmodified:   ocaml/class_table.ml","Helmut Brandl",false],["98cb37390fdf3d29e139d5d251e3d19ff00a67ef","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Added signature maps to find features\n\n\tmodified:   ocaml/feature_table.ml\n\tmodified:   ocaml/feature_table.mli","Helmut Brandl",false],["142027859ecb8c039b30664c40b44177ca341d99","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Simplified 'has_value' to 'has' in module 'Option'\n\n\tmodified:   ocaml/container.ml","Helmut Brandl",false],["f040a475b5ae658334f9c8d5bced7d825852cfc8","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Made the module 'Term.Sub' publicly available\n\n\tmodified:   ocaml/term.ml","Helmut Brandl",false],["3a02419b52498dd51dad9a8a23068225a631c6e4","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Added a draft version of the type checker with type inference\n\nA datatype 'context' with a global context (class_table, featura_table, assertion_table, ...)\nand stack local context has been added to the system which is already partially in use.\n\nThe type checker has not yet been activated, just included into the package.\n\n\tmodified:   library/kernel/boolean.e\n\tmodified:   ocaml/feature_table.ml\n\tmodified:   ocaml/feature_table.mli\n\tmodified:   ocaml/makefile\n\tnew file:   ocaml/signature.ml\n\tmodified:   ocaml/support.ml\n\tmodified:   ocaml/term.ml\n\tnew file:   ocaml/typer.ml\n\trenamed:    local_context.ml -> local_ass_context.ml\n\trenamed:    local_context.mli -> local_ass_context.mli\n\tmodified:   prover.ml\n\tnew file:   ocaml/context.ml","Helmut Brandl",false],["254120a179ccde6dafe6d8495e5b1d2ccc07d36f","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Clean up of 'eiffelc.ml'\n\nThe parsing of arguments is now done in a separate function and not\nin the main function of 'eiffelc.ml'.\n\n\tmodified:   ocaml/eiffelc.ml","Helmut Brandl",false],["36fdd3c99ef8ba6b0143164826066f901befd374","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","All global tables now used exclusively via Context.t\n\n\tmodified:   ocaml/context.ml\n\tmodified:   ocaml/eiffelc.ml\n\tmodified:   ocaml/prover.ml\n\tmodified:   ocaml/prover.mli\n\tmodified:   ocaml/support.ml","Helmut Brandl",false],["d3568199681c50f57318a8b910550192b81abe61","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Some streamlining in the analysis of signatures\n\n- function type eliminated\n- formal generic names used consistently in some functions\n\n\tmodified:   ocaml/class_table.ml\n\tmodified:   ocaml/class_table.mli\n\tmodified:   ocaml/context.ml\n\tmodified:   ocaml/feature_table.ml\n\tmodified:   ocaml/signature.ml","Helmut Brandl",false],["c89199d747bf2ce6b7a13481b2ada97f58bbb9ce","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Added procedure flag into Sign.t\n\n\tmodified:   ocaml/signature.ml","Helmut Brandl",false],["a925299c7c6d78360d3bf6e8e3518b260af51673","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Used 'type_term' instead of 'term' if the term describes a type\n\n\tmodified:   ocaml/class_table.ml","Helmut Brandl",false],["a19d3ddf7b4791a5fa1c7da5d26b46879c775171","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Improved the analysis of syntactic signatures\n\n- collection of the number of untyed variables (because they need\n  type variables) and adding corresponding type variables to the\n  signature\n\n- introduced 'Sign.t' into the analysis functions\n\n- removed some unnecessary functions\n\n\tmodified:   ocaml/class_table.ml\n\tmodified:   ocaml/class_table.mli\n\tmodified:   ocaml/context.ml\n\tmodified:   ocaml/feature_table.ml\n\tmodified:   ocaml/signature.ml","Helmut Brandl",false],["b656e5e7e8c2b19baa0a7d836ea82d06713d2514","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Added the pushing of contexts\n\n\tmodified:   ocaml/context.ml\n\tmodified:   ocaml/signature.ml\n\n\tmodified:   ocaml/eiffelc.ml","Helmut Brandl",false],["643603e1a77717e6cebe44e094b4bba7c659b70a","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Feature definitions simplified\n\nThe argument names and types are already included in the feature descriptor.\nTherefore they have been dropped from the definition.\n\n\tmodified:   ocaml/feature_table.ml","Helmut Brandl",false],["75e0a3390abda940547231febd5b35bc2927ea00","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Added formal generic names to classes and the function 'type2string'\n\n\tmodified:   ocaml/class_table.ml\n\tmodified:   ocaml/class_table.mli","Helmut Brandl",false],["8e876e2d632aa6542ebebe346921a0a3c0e82470","2a976b4bbba93be32d8c9a2121cf52b8d4716f19@gmx.net","Completed the draft of the type checking algorithm\n\n\tmodified:   ocaml/context.ml\n\tmodified:   ocaml/feature_table.ml\n\tmodified:   ocaml/feature_table.mli\n\tmodified:   ocaml/typer.ml","Helmut Brandl",false]],"size":22,"ref":"refs/heads/develop","head":"1c3fe24b3767aadf8d8104c1723ea0e50ff9941a"}