µsli is a register machine which can be used for learning the basic concepts of register machines. It uses Sexp program files as input and features a stack, simple arithmetics, and conditional jumps. The register machine comes with a lean Swing GUI that supports editing the program, stepping through and monitoring the registers, and the stack. It aims to be a lightweight, but usable and extendable, learning environment for students and adults that want learn about register machines and register based virtual machines.
Factor is a dynamically-typed stack-based programming language. Factor runs on various OSes and CPU architectures, and provides an optimizing compiler, interactive development environment, powerful collections, higher order programming, continuations, and a growing library of contributed code.
LavaPE is a programming environment for the experimental object-oriented programming language Lava. It replaces text editing with structure editing, thereby preventing all syntactic and many semantic errors. The pure point-and-click nature of Lava programming and the concise representation of programs as declaration trees with small chunks of executable code simplify programming, and ease comprehension.
Scilab is a numerical computation system similiar to Matlab or Simulink. Scilab includes hundreds of mathematical functions, and programs from various languages (such as C or Fortran) can be added interactively. It has sophisticated data structures (including lists, polynomials, rational functions, and linear systems), an interpreter, and a high-level programming language. Scilab has been designed to be an open system where the user can define new data types and operations on these data types by using overloading. A number of toolboxes are available with the system.
RJCE enables the editing of any method at runtime, applying the changes to any combination of objects, such as an array, or a complete class. It consists of a compiler, javaprec, and an IDE, Runtime Object Modifier (ROM). javaprec is used to compile programs, enabling runtime editing, and uses both sun.tools.javac and ANLTR for compilation. ROM is a JFrame used for editing methods, browsing classes, and viewing variables at runtime. It also includes an interpreter that runs Java scripts (which circumvent normal language access control) and is run from within any Java program. Aspects are also incorporated into RJCE, to enhance runtime editing.
Java Development Environment for Emacs (JDEE) is an Emacs-based integrated development environment (IDE) for developing Java applications and applets. Features include multiple code browsers, a JPDA-based debugger, method and field completion, template-based and procedure-based code generation, Java source code interpreter, context-sensitive help, and more.