Felix is an advanced Algol like procedural programming language with a strong functional subsystem. It features ML style typing, first class functions, garabge collection, pattern matching, polymorphism, and has built in support for high performance microthreading, regular expressions and context free parsing.
The system provides a scripting harness so the language can be used like other scripting languages, but underneath it generates native code to obtain high performance.
A key feature of the system is that it uses the C++ object model, and provides an advanced binding sublanguage to support integration with C++ at both the source and object levels, both for embedding C++ data types and functions into Felix, and for embedding Felix into exitsing C++ architectures.
The Felix compiler is written in Objective Caml, and generates ISO C++ which should compile on any platform.
Requirements:
· Ocaml 3.08 to build the Felix compiler,
· Python to run the build scripts,
· A C++ compiler. The build script is preset to use GNU g++.
Installation
To bootstrap the build, type
./configure
on the command line to unpack the build scripts and makefile. You may need to edit the files
config/*.py
to suit your platform.
You should now be able to:
make
make doc
Become superuser and type
make install
to install the system, by default in /usr/local/lib/felix, the scripting driver harness in /usr/local/bin, and the man pages in /usr/local/man. If these install points are not suitable for your system, you'll have to edit the config/config.py file.
Product's homepage
What's New in This Release: [ read full changelog ]
· Major upgrades and improvements were made.
· The system is now stable enough to write significant applications with, and is now used for the Web server hosting the project.
· The system is currently undergoing major upgrades, particularly strengthening of the standard library.