Warning: incompatible changes with previous versions are marked with "*". ReactiveML 1.08.05 (2013-06-04): -------------------------------- - rmlc: new implementation of the reactivity analysis. - rmlc: providing the compiler as a library. - rmlc: bug fixes. - rmltop: new option -I. - rmltop: bug fixes. - rmllib: bug fixes. - rmlbuild: handling of rmli files. * rmldep: targets are ml and rzi files instead of cmo and cmi. ReactiveML 1.08.04 (2013-02-03): -------------------------------- - rmlc: simplification of effects in the reactivity analysis. - rmlc: new option -no_reactivity_simpl to keep reactivity effects without simplifications. - rmlc: adding of the "with" construct to define a record. - rmlc: bug fixes. - rmllib: new sampling mode. ReactiveML 1.08.03 (2012-10-23): -------------------------------- - rmlc: bug fix in the reactivity analysis. ReactiveML 1.08.02 (2012-10-19): -------------------------------- - rmlc: new reactivity analysis. * rmlc: renaming of the option -no_loop_warning into -no_reactivity_warning. - rmlc: new option -dreactivity to display reactivity effects. - rmlc: new option -old_loop_warning to activate the previous reactivity analysis. - rmlc: adding of the reactivity effects into the *.sannot file. - rmlc: bug fixes. - rmltop: new option -dreactivity to display reactivity effects. ReactiveML 1.08.01 (2012-06-14): -------------------------------- - New tool: rmlbuild, allows to build rml programs more easily using .rmlsim files. A foo.rmlsim would look like the following: /-------------- | sim: main | sampling: 0.1 | n : 100 \-------------- It tells the compiler that the main file is "foo.rml" has a main function called "main". The parameters "sampling" and "n" are not mandatory. They have the same semantics as the compiler's command line options -sampling and -n. Then the command to compile the program is "rmlbuild foo.rml.byte" or "rmlbuild foo.rml.native". - rmltop: "rmltop -i" lists known toplevel's directives. - New configure options: + "-target|--target" to choose a default compilation target ("opt" or "byte") The configure script will choose the best option if "-target" is not specified. + "-debug|--debug" adds "-g -dtypes" to OCAMLFLAGS and OCAMLOPTFLAGS. - Provide the Str library. ReactiveML 1.07.08 (2010-12-16): -------------------------------- - rmlc: bug fixes. - rmllib: bug fixes. ReactiveML 1.07.07 (2010-10-28): -------------------------------- - rmlc: bug fixes. ReactiveML 1.07.06 (2010-01-30): -------------------------------- - rmlc: bug fixes. ReactiveML 1.07.05 (2009-06-18): -------------------------------- - rmlc: bug fixes. - rmlc: check shape of rec. - rmlc: small optimizations. ReactiveML 1.07.04 (2009-04-18): -------------------------------- - New construct: e1 |> e2. - rmlc: bug fixes. - rmllib: new runtime available with the option "-runtime Lco_n". ReactiveML 1.07.03 (2008-11-27): -------------------------------- - rmlc: bug fixes. ReactiveML 1.07.02 (2008-07-29): -------------------------------- - New construct: control e with s(pat) done. - New construct: do e until s(pat) done. ReactiveML 1.07.01 (2008-07-08): -------------------------------- * Syntax: control/with and do/when are now finishing with "done". - New construct: control e with s(x) when e done. - New construct: await s(x) when e in e. - rmllib: bug fixes. ReactiveML 1.06.09 (2008-04-05): -------------------------------- - rmlc: bug fix in the type system. ReactiveML 1.06.08 (2008-04-05): -------------------------------- - New construct: do/until/when. - rmlc: bug fixes. ReactiveML 1.06.07 (2008-01-27): -------------------------------- * rmltop: new installation directory (you must remove your previous installation of ReactiveML). - rmltop: bug fixes. - rmltop: any instantaneous expression can be executed. * rmltop: #emit and #show are removed. - rmltop: #suspend directive can be executed by a process. - rmlc: bug fixes on arrays (2008-02-28). ReactiveML 1.06.06 (2007-12-06): -------------------------------- - rmlc: bug fixes. * rmltop: Some directives are renamed ReactiveML 1.06.05 (2007-06-13): -------------------------------- * The ReactiveML library rml_interpreter.* is renamed into rmllib.*. * Rml_pervasives module is renamed into Pervasives. - rmlc: bug fixes. - rmlc: improve code generation. - When a file is compiled with the "-dtypes" option, C-c C-s also displays the recursion variables. ReactiveML 1.06.04 (2007-06-05): -------------------------------- - rmldep: new tool (see ocamldep). - rml_interpreter: bug fixes. - rmlc: improve code generation. ReactiveML 1.06.02 (2007-01-28): -------------------------------- - rmltop: bug fixes. ReactiveML 1.06.01 (2006-12-07): -------------------------------- - New static analysis which detects instantaneous loops and recursions. - New configuration files. - "*.rannot" files are renamed "*.tannot" and "-dtypes" option creates also "*.sannot" files. - When a file is compiled with the "-dtypes" option, the "Instantaneous", "NonInstantaneous", "Dontknow" information can be displayed with C-c C-s shortcut within emacs. ReactiveML 1.05.00 (2006-08-17): -------------------------------- * Semantics of "pre ?s" is modified. - New constructs: "last ?s" and "default ?s". Remark: "pre ?s" is the value associated to the signal "s" at the previous instant (on the base clock). "last ?s" is the last value emitted by "s". "default ?s" is the default value associated to "s". "pre ?s" is equivalent to: if pre s then last ?s else default ?s