Skip to content

cormas/cormas

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
img
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

CORMAS

CORMAS

COmmon pool Ressources and Multi-Agent Simulations
Explore the docs »

Report a defect | Request feature

CI Coverage Status License All Contributors

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:

Loading...

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:

SaveAs

Then write the name of your choice (ex: cormasPharo.im):

Loading...

Features

Work in progress

Documentation

Work in progress

Contributors

Thanks goes to these wonderful people (emoji key):


Tomohiro Oda

💻 ⚠️

Etienne DELAY

💻 ⚠️

Hernán Morales Durand

💻 ⚠️

Serge Stinckwich

💻 ⚠️

Cédrick Béler

💻

nbecu

💻

npapoylias

💻 ⚠️

Pierre Bommel

💻

Christophe Le Page

💻

Bruno Bonté

💻

Jigyasa Grover

💻

Peter Uhnak

🔧

Géraldine Abrami

⚠️

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.