syndicate-2017/racket
Tony Garnock-Jones 4c0e291658 Repair longstanding, subtle bug in both old- and new-syndicate.
during/spawn used not to add linkage assertions to its
initial-assertion set. In addition, if a spawned actor died in its
initial boot procedure, its initial assertions would never be visible.
These two problems interlocked to cause a space leak in during/spawn,
where monitoring facets would never be cleaned up.

This change does two things:
 - adds linkage assertions to the initial-assertion set in during/spawn
 - properly briefly signals initial-assertions even when a new actor
   immediately crashes.

Together, these repair the space leak in during/spawn with a crashy
child startup procedure.
2018-11-04 13:43:17 +00:00
..
doc Remove obsolete "examples" 2016-06-14 03:55:10 -04:00
syndicate Repair longstanding, subtle bug in both old- and new-syndicate. 2018-11-04 13:43:17 +00:00
syndicate-gl Make #lang syndicate equivalent to #lang syndicate/actor. Fixes #17. 2017-08-10 15:17:28 -04:00
syndicate-ide swap the meaning of spawn and actor in racket syndicate 2017-02-15 18:18:19 -05:00
.gitignore Move contents to subfolder in prep for merge 2016-04-01 19:05:47 -04:00
FAQ.md Update FAQ.md 2017-01-27 15:22:06 -05:00
Makefile First sketch of "IDE" for Syndicate 2016-08-31 19:12:40 +01:00
README.md Move syndicate-monolithic to new historical directory. 2016-07-30 14:48:59 -04:00
info.rkt Fix missing dependency. 2017-11-12 14:04:36 +00:00

README.md

Racket implementation of Syndicate

The language itself

This repository contains a Racket implementation of Syndicate in syndicate, which includes

Auxiliary collects

  • syndicate-gl is a Syndicate interface to 2D OpenGL based graphics

Compiling and running the code

You will need Racket version 6.4.0.14 or later.

Once you have Racket installed, run

raco pkg install syndicate

to install the package from the Racket package repository, or

raco pkg install

from the racket/ directory of the Git checkout to install the package from a local snapshot. (Alternatively, make link does the same thing.) This will make #lang syndicate available to programs.

At this point, you may load and run any of the example *.rkt files in the syndicate/examples/ directory.

Copyright © Tony Garnock-Jones 2010, 2011, 2012, 2013, 2014, 2015, 2016.