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 (
| name | age | message | |
|---|---|---|---|
| |
.gitignore | ||
| |
README | ||
| |
docs/ | ||
| |
inspiration | ||
| |
setup.py | ||
| |
somersault/ | ||
| |
tests/ |
README
_ _
___ ___ _ __ ___ ___ _ __ ___ __ _ _ _| | |_
/ __|/ _ \| '_ ` _ \ / _ \ '__/ __|/ _` | | | | | __|
\__ \ (_) | | | | | | __/ | \__ \ (_| | |_| | | |_
|___/\___/|_| |_| |_|\___|_| |___/\__,_|\__,_|_|\__|
-------------------------------------------------------------
Somersault is a tiny functional programming language inspired by RPAL and
modern programming languages (think Python, Ruby, OCaml, or Haskell). It's not
intended to appeal to anyone other than myself; it's more like a sandbox
for my experiments.
The current implementation is written in Python (for now, at least. I'm
probably going to rewrite it in Haskell for my honors thesis.)
---
Somersault is syntactically similar to the ML family of languages.
A Somersault program consists of a single expression. There are no statements
and no concept of assignment.
Available primitives include booleans, integers, and (immutable) strings.
The basic collection type is a heterogenous tuple.
The virtual machine is based on the CSE (Control, Stack, Environment) machine,
which oddly has very little literature written about it. Suggestions for
alternatives are welcome.







