Estimated hours taken: .5
branches: main.
Remove the binary flag used as fourth argument of filter and make
filter a semidet predicate instead. If filter succeeds, it means that
the monitoring process can continue (the flag was set to `continue');
if it fails, it it means that the monitoring process should stop (the
flag was set to `stop').
extras/morphine/source/collect.in:
Remove the fourth argument of filter and make it semidet.
extras/morphine/source/collect.op:
Compile monitors with --no-warn-det-decls-too-lax to avoid
warnings when filter is det (since it is declared semidet).
extras/morphine/source/collect__dynamic_call_graph:
extras/morphine/source/collect__control_flow_graph:
extras/morphine/source/collect__proof_tree:
extras/morphine/non-regression-tests/test_ln:
Remove the fourth argument of filter.
--
Estimated hours taken: 2
branches: main.
Improve a little bit the code of monitor examples provided with
morphine.
extras/morphine/source/control_flow.op:
extras/morphine/source/collect__control_flow_graph:
extras/morphine/source/collect__dynamic_call_graph:
Use sets instead of lists, and arc/2 instead of edge/2.
Use post_process/2 to remove useless stuff.
extras/morphine/source/collect__dynamic_call_graph:
Extend arc labels with an integer that counts the number of calls.
Use stack library modules instead of list.
Estimated hours taken: 1
Put Morphine under the GNU/GPL licence. Also replace a few remaining
occurrences of Opium-M by Morphine.
morphine/Licence:
File containing a copy of the GNU/GPL licence.
morphine/INSTALL-MORPHINE:
morphine/source/*.pl:
morphine/source/*.op:
Add 2 lines in each file header that state that Morphine is under
the GNU/GPL Licence.
morphine/copyright.txt:
Change this file in such a way that Morphine is now under GNU/GPL.
morphine/INSTALL-MORPHINE:
morphine/README:
morphine/source/load_morphine.pl:
morphine/source/load_morphine.pl:
morphine/source/morphine_kernel.op
Replace a few remaining occurrences of Opium-M by Morphine.
Estimated hours taken: 1000
Add Opium-M in the extras. (committed on behalf of Erwan Jahier).
extras/opium_m/copyright.txt:
The copyright for Opium-M.
extras/opium_m/VERSION:
extras/opium_m/README:
extras/opium_m/opium-mode.el:
An emacs mode designed to write opium scenario.
extras/opium_m/INSTALL-OPIUM-M:
Opium-M installation script.
extras/opium_m/source/interactive_queries.op:
extras/opium_m/source/browse.op:
extras/opium_m/source/control_flow.op:
extras/opium_m/source/coprocess_M.op:
extras/opium_m/source/opium_kernel_M.op:
extras/opium_m/source/current_arg_M.op:
extras/opium_m/source/current_slots_M.op:
extras/opium_m/source/display_M.op:
extras/opium_m/source/source_M.op:
extras/opium_m/source/event_attributes_M.op:
extras/opium_m/source/step_by_step_M.op:
extras/opium_m/source/exec_control_M.op:
extras/opium_m/source/forward_move_M.op:
extras/opium_m/source/load_Opium-M.pl:
extras/opium_m/source/make_scenario-M.pl:
extras/opium_m/source/load_Opium-M_without_banner.pl:
extras/opium_m/source/load_scenario-M.pl:
The Opium-M source files.
extras/opium_m/source/partch.autoload:
extras/opium_m/source/partch.interface:
extras/opium_m/source/partch.parameter:
extras/opium_m/source/partch.scenario_handler:
extras/opium_m/source/partch.error:
extras/opium_m/source/partch.types:
extras/opium_m/source/partch.translate:
extras/opium_m/source/partch.util.pl:
extras/opium_m/source/partch.make:
extras/opium_m/source/partch.scenario:
Patches to create the scenario handler for Opium-M. autoload.op,
etc. are part of the Eclipse distribution; to avoid licensing
issues, we copy thoses files from the Eclipse installation
directory during the installation and then we patch them using
those files.
extras/opium_m/non-regression-tests/*:
Non regression tests for Opium-M.
extras/opium_m/non-regression-tests/queens.m:
extras/opium_m/non-regression-tests/test_vars.m:
extras/opium_m/non-regression-tests/test_listing.m:
Mercury files that are tested.
extras/opium_m/non-regression-tests/browse.in:
extras/opium_m/non-regression-tests/queens.in:
extras/opium_m/non-regression-tests/test_vars.in:
Input of the non regression tests.
extras/opium_m/non-regression-tests/queens.exp:
extras/opium_m/non-regression-tests/test_vars.exp:
extras/opium_m/non-regression-tests/listing_output.exp:
Expected output of the non regression tests.
extras/opium_m/non-regression-tests/runtests:
extras/opium_m/non-regression-tests/Mmakefile:
To perform the non regression tests.
extras/opium_m/non-regression-tests/Mmake.common:
extras/opium_m/non-regression-tests/shutdown:
extras/opium_m/non-regression-tests/startup:
extras/opium_m/non-regression-tests/handle_options:
Those files are copied from the Mercury tests repository.
extras/opium_m/scripts/exec_mercury_program:
Script that is used to run Mercury programs under the control of
Opium-M.
extras/opium_m/scripts/fixmanual:
Script that patch the output of `manual' command (which automaticly
generates the Opium-M Reference Manual).