CORMAS
COmmon pool Ressources and Multi-Agent Simulations
Explore the docs »
Report a defect
|
Request feature
Table of Contents
Description
This is an ongoing effort to port CORMAS to Pharo ecosystem. Current stable version of CORMAS is based on VisualWorks 7.6 and still can be found on: http://cormas.cirad.fr/indexeng.htm
Some documentation (to be cleaned and reorganized) about Cormas is available on the Wiki here: https://github.com/cormas/documentation
If you want to contribute to CORMAS please have a look to the contributing guide. Join us on the cormas-dev mailing-list: http://groups.google.com/group/cormas-dev
Installation
Standard Installation
- Download a Pharo 9.0 image+VM depending of your platform: http://pharo.org/download
- Load Cormas: Open Pharo 9.0 image then click anywhere to open the main menu. Choose Playground (Ctrl + OW or Cmd + OW) to execute the following script. Paste the script below in Playground, select all then right-click and choose Do it (Ctrl+D or Cmd+D) to execute it:
EpMonitor disableDuring: [
Metacello new
onConflictUseLoaded;
onWarningLog;
repository: 'github://cormas/cormas/';
baseline: 'Cormas';
load ]
All packages load into the Cormas-* package names:
CLI Installation
Using Standard Unix CLI
You can install CORMAS through Unix command line. It works as follow:
mkdir mydir; cd mydir
curl https://get.pharo.org/90+vm | bash
./pharo Pharo.image eval "EpMonitor disableDuring: [
Metacello new
onConflictUseLoaded;
onWarningLog;
repository: 'github://cormas/cormas/';
baseline: 'Cormas';
load ].
Smalltalk snapshot: true andQuit: true"
Using PI
Make sure you have pi installed, and then execute:
pi install Cormas
Troubleshooting
There is from time to time, loading errors with github. If it happens, execute the following expression from Pharo:
| maxCount count |
maxCount := 3.
count := 1.
Transcript open.
[ count <= maxCount ] whileTrue: [ [
^ Metacello new
onWarningLog;
repository: 'github://cormas/cormas/';
baseline: 'Cormas';
load
]
on: IceGenericError "Failed to connect to github.com: Interrupted system call"
do: [ : ex |
MetacelloNotification signal: String cr , ex description , String cr , 'RETRYING ', maxCount asString.
(Delay forSeconds: 2) wait.
ex retry
].
count := count + 1 ]
Please add an issue if the installation expression above does not work due to one of these known exceptions:
- IceGenericError: Failed to connect to github.com: Interrupted system call.
- IceGenericError: SecureTransport error: connection closed via error
- IceGenericError: unexpected return value from ssl handshake -9806
Saving your image
As the loading process is rather slow, we recommend to save your image once the installation procedure has been successfully concluded.
For that, select Save As...
from the 'Pharo' menu:
Then write the name of your choice (ex: cormasPharo.im
):
Features
Work in progress
Documentation
Work in progress
✨
Contributors Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
Historical contributors
Innocent Bakam, François Bousquet, Alassane Bah, Emmanuel Lieurain, Jean-Christophe Soulié, Paul Guyot, Jean-François Lefevre, Anne Dray.