27 projects tagged "compiler"
teeterl is a lean, portable implementation of Erlang. teeterl starts from a single executable file without any additional harness. teeterl is built using Apache Portable Runtime, a library tested on dozens of OSes and their flavors. teeterl borrows from industry-standard Erlang/OTP, especially when it comes to compiler front-end. teeterl provides the concurrency power of Erlang without any telecom cruft.
Kouprey is a library that can be used to build and run parsers based on the Parsing Expression Grammar (PEG) formalism. It does not have any special requirements beyond standard ECMAScript/JavaScript, and can be used to parse arbitrarily complex languages inside a Web browser or other JavaScript runtime. It has been used to parse complex general purpose programming languages, and comes with numerous examples.
Shannon is a general purpose stream-oriented programming language; it is concise and yet feature rich. Streams, FIFOs, and Unix shell-style pipes are first-class concepts in the language. You can connect functions and FIFOs within your program similar to the way you connect processes with pipes in the Unix shell. These constructs in Shannon, however, are highly efficient as no true multitasking is involved, and at the same time they allow you to write more concise and readable code for chained data processing. State is a special type of function that returns a reference to its own local data and any nested functions it may have. In effect, states implement classes in terms of OOP, and yet classes per se aren't part of the language. A special type of modules marked as "persistent" is an effective replacement for databases and SQL. This allows you to access persistent shared data using native Shannon constructs, eliminating the need for an extra query language. Intuitive and minimalist syntax and semantics are used. Particularly, "minimalist semantics" means less things to remember and more possibilities. Shannon is statically-typed, although it provides dynamic typing facilities as well.
Sappeur is a safe and efficient programming language. The memory safety of Sappeur programs is equivalent to Java or .NET without having the performance penalties of those languages. This is implemented with smart pointers and stack allocation of objects and arrays. Also, arrays of objects and synchronous destructors are possible. Sappeur executables are native code and do not use a garbage collector. The safety properties of Sappeur are assured by a proper type system (which forbids weird pointer casts for example) and runtime checks. This is true for both single- and multithreaded programs. The Sappeur compiler translates programs into safe C++ programs, which makes integration with existing C++ code simple. Finally, Sappeur technology erects another layer of defense against cyber threats.
The Voodoo compiler is an implementation of the Voodoo programming language. The Voodoo programming language is a low-level programming language, abstracting over the platform's instruction set and calling conventions, but otherwise leaving the programmer free to do anything at all. The Voodoo compiler supports multiple target platforms and provides a stand-alone compiler, as well as a Ruby module for programmatic code generation.
Larceny is a simple and efficient implementation of the Scheme programming language. Created originally as a test vehicle for research on garbage collection and compiler optimizations, Larceny has grown into a major multi-platform system, and is one of the very few implementations that support all four de facto standards for Scheme: IEEE/ANSI, R5RS, ERR5RS, and the R6RS. Development of Larceny has been supported by NSF, Sun Microsystems, and Microsoft.