Skip to content

JelleZijlstra/EH

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repository contains an implementation of the EH programming language. I
created EH mostly for my own education, but also use it as a command language in
some of my other projects (e.g., the control system for my electronic library of
biological articles).

EH is an imperative, object-oriented, dynamic, interpreted language. All values
are objects, and many operations are done through method calls. Functions and
classes are first-class values. Virtually all symbols (including functions,
classes, and other variables) are in the same global namespace, but classes
provide an easy way to namespace user-defined symbols.

The EH interpreter can be built as a standalone executable (ehi) or as a PHP
extension (ehphp); run 'make' in the ehi directory to build both. I have also
done some work on creating a compiler to x86 assembly for Mac OS X, but this
compiler is no longer functional.

I wrote the interpreter on a Mac OS X system and have run it on Fedora and
Ubuntu Linux VMs. It should be possible to run it on other Unix systems, but I
haven't tried it and things may break in subtle ways.

Dependencies:
- Flex
- Bison
- A C++ compiler (I've used g++ and clang++)
- For the ehphp portion: SWIG, PHP

About

The EH Programming Language

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published