Momoko is a generic, object-oriented, modular, extensible environment for creating multi-user environments. It is suitable for writing MUDs, servers, and community-based Web sites. It is written in pure Java and supports Java and Python as internal scripting languages. Momoko provides facilities for organizing objects into tree-based hierarchies, orthogonal persistence, a transparent distributed objects system, remote access to source code and user files via WebDAV, a telnet-enabled shell for manipulating the object database, and an integrated build process which can be triggered remotely.
SISC is an extensible Java-based interpreter of the algorithmic language Scheme. It uses modern interpretation techniques and handily outperforms all existing Java interpreters (often by more than an order of magnitude). In addition, SISC is a complete implementation of the language. The entire R5RS Scheme standard is supported. This includes a full number tower including complex number support and arbitrary precision integers and floating point numbers, proper tail recursion, hygienic macros, and full support for first-class continuations (not just the escaping continuations found in many other systems).
The Kawa Scheme System is a full Scheme implementation, completely written in Java. Scheme functions and files are automatically compiled into Java byte-codes. Kawa does some optimizations, and the compiled code runs at a reasonable speed. It provides the usual read-eval-print loop, as well as batch modes. The Kawa compilation framework is also useful for implementing other languages on top of JVM. There is active development of XQuery (the XML query language), and less active development of Emacs Lisp, Common Lisp, and EcmaScript.
jMax is a visual programming environment for building interactive real-time musical and multimedia applications by allowing the user to interactively design dataflow circuits. The basic data types that can go through are integers, symbols, lists, etc. It is an event-driven system and has been used for MIDI processing. A second part of the system (DSP) allows a continuous signal to flow through a circuit, which is most useful for PCM sound (ie. microphone, sound files, etc.). The system is extensible by using shared libraries, you may add data processor types, data types, GUI elements, device types, and more. Data processors may also be designed as circuits and reused.
CodeApplet is a Java-based client-server system that is meant to be used for teaching computer programming online. It may be used with any language for which an appropriate Java class is written, and adding a new interpreter requires no recompilation of the main binaries. Users connect to different coding sessions on the server. Every session has one editor at a time, elected by privileged operators or the current editor. This editor may control a shared language interpreter and edit source files while the other users watch in realtime. Some languages also support local interpreters for personal experiments.
ECB is a source code browser for (x)emacs. It displays a couple of windows that can be used to browse directories, files, and file contents like methods and variables. It supports source code parsing for languages like Java, C, C++, Elisp, Scheme, Perl, TeX, LaTeX, etc. In addition, it offers an (optional) permanent "compile window" at the bottom of the emacs frame, which is used to display all help and compile output. The rest of the frame is called the "edit area", which can be divided into several edit windows that are used for editing the sources. Deleting some of the edit windows neither destroys the compile window nor the browsing windows. It requires the CEDET suite.
Spiritbot is a suite of agent/bot applications with an IRC core. The core component interacts with a natural language chat interface (Scheme/LISP) base that parses input natural language (chat) input and then tries to come up with valid responses. The focus of the chat centers on technology.
Esra is a scriptable, scalable, and highly hackable molecular mechanics library for Java. Its primary purpose is the statistical analysis of trajectory data generated with packages such as GROMOS, GROMACS, or AMBER, but it can also be used as a standalone package for performing simple molecular dynamics and Monte-Carlo simulations. It can be scripted with Jython, Mathematica, or Matlab.