public
Description: A purely functional programming language intended for practical programming.
Homepage:
Clone URL: git://github.com/nostrademons/eve-language.git
name age message
file .gitignore Loading commit data...
file README
directory bootstrap/ Sun Sep 14 18:42:51 -0700 2008 Debugged & doctested Iterator.chain [nostrademons]
directory bootstrap_compiler/
directory doc/
directory prototypes/
directory src/ Sun Sep 28 14:43:37 -0700 2008 Changes to Iterator. [nostrademons]
directory test/ Sun Sep 14 14:00:41 -0700 2008 Bound methods are no longer rebound to a new re... [nostrademons]
README
Eve is intended to be a purely-functional programming language with Erlang-style concurrency and Python syntax.  It's 
dynamically typed, but with optional type declarations and type definitions (soft typing).  The intended userbase is 
people who currently use Python or Ruby for shell scripting and web programming but would like to try out functional 
programming techniques without learning a whole new syntax and language ecosystem.

This is prerelease software, hence the lack of documentation.  A large number of unit tests are available in the /test 
directory; the Eve standard libraries (in /src) also support doctess, which are run automatically by the test harness.  
The main compiler source code is in /bootstrap and consists of a bunch of Haskell modules.

To build, you'll need the following software:
- GHC (Glasgow Haskell Compiler)
- The Monad Template Library (included in some GHC distributions, or apt-get install libghc6-mtl-dev)
- Alex (Haskell lexer generator)
- Happy (Haskell parser generator)
- make

The makefile offers the following targets:
- eve (default): builds the interactive interpreter
- test: builds the test harness
- check: builds & runs the test harness
- lex: builds an executable that prints out the token stream, for debugging
- clean: removes all generated files.

There is a blog tracking development and design decisions at:

http://eve-language.blogspot.com/