This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
darius (author)
Sat Aug 01 18:37:24 -0700 2009
squerm /
| name | age | message | |
|---|---|---|---|
| |
README | ||
| |
asyncio.py | ||
| |
clutch.py | Sun May 18 22:46:26 -0700 2008 | |
| |
eg/ | ||
| |
initialscope.py | ||
| |
interpret.py | ||
| |
lispio.py | ||
| |
primitives.py | ||
| |
processes.py | ||
| |
run.py | ||
| |
scope.py | ||
| |
symbols.py | ||
| |
syntax.py |
README
Squerm Copyright (c) 2008 by Darius Bacon <darius@wry.me> Distributed under GNU General Public Licence v3 http://www.gnu.org/licenses/gpl.html This is a kind of melange of Scheme and Erlang; some Squeak influence may come in later, too. It's a toy implementation to play with the language design. As a language design this may be an ugly marriage: why have both procedures and processes? Wouldn't it be more beautiful with just one kind of thing? If you start down that road, you end up with Actors (and when nobody joins you there yet, you come back with E). Erlang shows a pragmatic compromise that I'd like to explore more: processes with granularity in between Unix processes and actors. Erlang's influence makes Squerm 'purer' than Scheme: the only side effects are from sending and receiving messages or raising exceptions (which become messages to a 'keeper'). Scheme's influence conversely purifies Erlang: instead of process IDs in a global namespace, we have capabilities to send and receive messages. To try it out: >>> import run >>> run.testme()








