QCL is a high-level, architecture-independent programming language for quantum computers, with a syntax derived from classical procedural languages like C or Pascal. This allows for the complete implementation and simulation of quantum algorithms (including classical components) in one consistent and familiar formalism. QCL is especially meant for users with a math/CS rather than a physical background, who want to play with non-classical algorithms.
SableCC is a parser generator that generates fully featured object-oriented frameworks for building compilers, interpreters, and other text parsers. In particular, generated frameworks include intuitive strictly-typed abstract syntax trees and tree walkers. SableCC also keeps a clean separation between machine-generated code and user-written code, which leads to a shorter development cycle.
ScriptBasic is an interpreter for the old language BASIC. It runs on Win32 as well as on UNIXes as a command-line or CGI program interpreter. It includes an interpreter, a compilable, well-documented embedding and extending interface for the C programmer, and a rich set of commands and functions.
SDCC is a freeware, retargettable, optimizing ANSI-C compiler. The current version targets Intel 8051-based MCUs, the Zilog Z80, and the DS390. Targets for the Microchip PIC and Amtel AVR series are under development, and the compiler can be retargeted for other 8 bit MCUs or PICs. The entire source code for the compiler is distributed under GPL. SDCC uses ASXXXX and ASLINK, a freeware, retargettable assembler & linker. SDCC has extensive MCU (8051)-specific language extensions, which lets it utilize the underlying hardware effectively. It includes a source-level debugger/simulator and can generate debug info for the NoICE debugger.
Sfront compiles MPEG 4 Structured Audio (MP4-SA) programs into efficient C programs that generate audio when executed. MP4-SA is a standard for normative algorithmic sound, which combines an audio signal processing language (SAOL) with score languages (MIDI and SASL). Under Mac OS X and Linux, sfront supports real-time, low-latency audio input/output and MIDI input. Under Mac OS X, sfront supports the creation of AudioUnit plug-ins. The documentation includes a book about SAOL programming.
SHACC (Shaggy's Homebrew Alternative Compiler Compiler) reads an extended yacc-style grammar specification and generates an LR(k) parser for it. The main purpose of SHACC is to be able to parse complex grammars with ambiguities that YACC cannot handle, such as C++ (which it was originally developed for). If your grammar results in lots of shift/reduce and reduce/reduce errors in YACC, and you don't want to rewrite it in ways that make the grammar more complex and hard to understand, you might want to try out SHACC instead.
SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. SWIG is primarily used with common scripting languages such as Perl, PHP, Python, Tcl/Tk, and Ruby, however the list of supported languages also includes non-scripting languages such as C#, Common Lisp (CLISP, Allegro CL, UFFI), Java, Modula-3, OCAML, Octave, and R. Also several interpreted and compiled Scheme implementations (Guile, MzScheme, Chicken) are supported. SWIG is most commonly used to create high-level interpreted or compiled programming environments, user interfaces, and as a tool for testing and prototyping C/C++ software. SWIG can also export its parse tree in the form of XML and Lisp s-expressions.
SmartEiffel is the GNU Eiffel Compiler. It is intended to be a complete, though small and very fast, Eiffel compiler. The current distribution includes an Eiffel to C compiler, documentation tools, a pretty printer, and various other tools including an Eiffel debugger. It also includes a large library of classes distributed under the terms of the MIT/X Consortium License. Eiffel is an advanced object-oriented programming language that emphasizes the design and construction of high-quality and reusable software.
sml/nj (Standard ML of New Jersey) consists of a compiler, compilation manager, and libraries for Standard ML. Included are CML (Concurrent ML) and eXene (a toolkit for X based on CML). The compiler produces efficient code for most popular architectures (Intel x86, Sparc, Alpha, Mips, HP-PA, PowerPC) and runs under Unix, Linux, or Windows (95,98,NT).
Soot is a Java optimization framework. It provides three intermediate representations for analyzing and transforming Java bytecode: baf, a streamlined representation of bytecode which is simple to manipulate; jimple, a typed 3-address intermediate representation suitable for optimization; and grimp, an aggregated version of Jimple suitable for decompilation and code inspection. Soot can be used as a stand alone tool to optimize or inspect class files and a framework to develop optimizations or transformations on Java bytecode.