{"id":18422450,"url":"https://github.com/sri-csl/imaude","last_synced_at":"2026-01-23T16:36:22.102Z","repository":{"id":36116722,"uuid":"40419095","full_name":"SRI-CSL/imaude","owner":"SRI-CSL","description":"Interactive Maude","archived":false,"fork":false,"pushed_at":"2019-06-07T13:54:08.000Z","size":78,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-04-13T14:44:37.837Z","etag":null,"topics":["actors","iop","jlambda","maude"],"latest_commit_sha":null,"homepage":"","language":"NewLisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SRI-CSL.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-08-08T23:15:47.000Z","updated_at":"2023-08-18T09:10:25.000Z","dependencies_parsed_at":"2022-09-03T11:02:11.352Z","dependency_job_id":null,"html_url":"https://github.com/SRI-CSL/imaude","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/SRI-CSL/imaude","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fimaude","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fimaude/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fimaude/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fimaude/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SRI-CSL","download_url":"https://codeload.github.com/SRI-CSL/imaude/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SRI-CSL%2Fimaude/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28695588,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T15:57:05.722Z","status":"ssl_error","status_checked_at":"2026-01-23T15:56:27.656Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["actors","iop","jlambda","maude"],"created_at":"2024-11-06T04:30:09.067Z","updated_at":"2026-01-23T16:36:22.078Z","avatar_url":"https://github.com/SRI-CSL.png","language":"NewLisp","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IMaude\n\n\nIMaude is a set of Maude Modules to be used in conjuction\nwith the [Maude system](http://maude.cs.uiuc.edu) and the\n[IOP Platform](https://github.com/SRI-CSL/iopc)\n to program interactive Maude applications.  It is used in systems such as the \n [Pathway Logic Assistant](http://pl.csl.sri.com/) and the [Maude-NPA System](http://maude.cs.illinois.edu/w/index.php?title=Maude_Tools:_Maude-NPA) and its [GUI.](http://www.csl.sri.com/users/iam/NPA/index.html)\n You can download the code either by cloning this repository or by downloading the latest [release.](https://github.com/SRI-CSL/imaude/releases)\n\n## Overview\n\nThis repository serves two purposes. It contains the shared\nlibraries for imaude (interactive maude) applications such as those mentioned above. It also contains\nthe simple vending machine example, that illustrates how to use the IMaude system.\n\n### Vending Machine\n\nThere are two ways to use the IMaude interaction environment: using only Maude\nor using the IOP framework. These are illustrated with the help of the vending\nmachine example in subdirectory VendingMachine\n\n#### Maude Commandline\nTo interact using only Maude, cd to [VendingMachine](VendingMachine), and type\n```\n  maude load-vend\n```\n[load-vend.maude](VendingMachine/load-vend.maude) loads the necessary IMaude code, maude's model checker, the vending machine specification\nin [vend.maude](VendingMachine/vend.maude) and then starts up loop mode with the command\n```\n  loop init .\n```\nInitialize the environment with some let commands to name states you are\ninterested in exploring, then you can rewrite and apply functions to the\nresults using the commands  described in [test-vend.txt](VendingMachine/test-vend.txt).\nExamples can be found in [input.txt](VendingMachine/input.txt) \nand a scenario with output summary can be found in [test-vend.txt](VendingMachine/test-vend.txt).  \n\nYou can examine the current environment using the various `show` requests\nof the `IMAUDE-STATE` module (also described in [doc-imaude.txt](ilib/Doc/doc-imaude.txt)).\ninput.txt has examples.\n\n#### Maude Actor Systems\nTo interact via IOP you must have [IOP Platform](https://github.com/SRI-CSL/iopc) installed with the `IOPBINDIR` binary directory\nin your path.  \n\nBy default `iop` looks for a file named `startup.txt` to configure itself ---\nwhat actors to start with what parameters.\nTwo sample startups are provided.  [startup-vend.txt](VendingMachine/startup-vend.txt) allows you\ninteract with the vending machine via the IOP GUI.  [startup-assist.txt](VendingMachine/startup-assist.txt)\npresents a specialized vending machine window with buttons and\nmenus for interaction.  You can overide the default choice of `startup.txt`\nby using the `-i` switch.\nIn a shell in the VendingMachine directory type\n```\n  iop -i startup-vend.txt\n```\nto interact with the vending machine via the IOP GUI.  Type\n```\n  iop -i startup-assist.txt\n```\nto get the vending machine window, a GUI application written in jlambda in the file \n[vend.lsp](VendingMachine/vend.lsp). The IOP GUI window will also be available, sometimes\nuseful for debugging the system of actors.\n\nIOP will display the file [input.txt](VendingMachine/input.txt) in IOP GUI interaction window.  \n\nIn general, you can use input.txt in the maude directory of\ninterest to predefine or save request scenarios. \n\nYou send messages to IMaude by selecting a line and doing `\u003cKEY\u003el`  where\n`KEY` is `control` on Linux and `command` on Mac.\n\n\n## References\n\nA technical description of the IMaude system can be found in the paper:\n\n[IOP: The InterOperability Platform and IMaude: An Interactive Extension of Maude](http://www.csl.sri.com/~clt/Papers/04wrla-iop.pdf)\nby Ian A. Mason and Carolyn L. Talcott.\n\nFrom Fifth International Workshop on Rewriting Logic and Its Applications (WRLA'2004). Elsevier. 2004.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsri-csl%2Fimaude","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsri-csl%2Fimaude","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsri-csl%2Fimaude/lists"}