Skip to content

cormas/cormas

Repository files navigation

CORMAS

CORMAS

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

Report a defect | Request feature

CI Core CI Full Coverage Status Licence All Contributors Archived | swh:1:dir:7861db8c1b3c19b867c665d86a0b47a8770f1db0

Table of Contents

Description

This is an ongoing effort to port CORMAS to Pharo ecosystem.

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 to install the latest stable version of Cormas (pre-v0.5). 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:v0.8';
        baseline: 'Cormas';
        load ].

Use this script if you want the latest development version of Cormas:

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):


Oleksandr Zaitsev

💻 ⚠️

Serge Stinckwich

💻 ⚠️

Tomohiro Oda

💻 ⚠️

Etienne DELAY

💻 ⚠️

Hernán Morales Durand

💻 ⚠️

Pierre Bommel

💻

Christophe Le Page

💻

Cédrick Béler

💻

nbecu

💻

npapoylias

💻 ⚠️

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.