wwlisp is an interpreted programming language for application development and scripting.
Version: 8.2.3wwlisp is an interpreted programming language for application development and scripting which can be used for developing stand-alone programs, shells scripts or can be embedded in another program.
License: GPL v3
Operating System: Linux
wwlisp is a concise object oriented dialect of the Lisp language very loosely inspired by Common Lisp, Smalltalk, or even C++. This project aims at solving specific categories of problems and hence the implementation does not comprise mechanisms intended to treat all the types of data traditional in Lisp or to implement theoretical concepts of software engineering or facilities d Some syntactical forms related to the conservation of memory or the intricacies of the language were abandoned at the profit of a lighter syntax.
The interpreter includes the traditional mechanisms and structures for this type of program. The memory is organized in four spaces: pointerspace - containing the car|cdr cells, the 64 bits integers (allowing 64 bits arithmetic independently of the 32 or 64 bits processor architecture) and 64 bits floating point, stringspace - containing the names of atoms and the character strings, binaryspace containing structures, buffers, and API objects, and finally the dynamic stack for calling the functions.
Pointer, string and binary spaces are pre-allocated at the startup of the interpreter and used gradually in the course of operation, while garbage collector algorithms recover space in case of exhaustion.
The car and cdr pointers are full word (32 or 64 bits) variables, making possible the use of the maximum of the addressable space authorized for a process by the operating system and the processor. The version 8 interpreter has about 400 intrinsic compiled functions, as well as a library loaded at startup defining more than 60 additional functions dedicated mostly to debugging and edition. Moreover, the interpreter includes natively the following possibilities:
· Multi-threading, with independence of the environments of each thread and communication between those;
· Foreign Function Interface allowing to call C APIs accessible under the form of shared objects or DLL;
· Possibility of developping C or C++ plugins or extensions to the language which can be loaded and unloaded dynamically;
· Process Handling and IPC;
· Streams, Pipes and Sockets handling.
What's New in This Release:
· This release contains a lot of corrections for miscellaneous bugs and defects in the syntax and documentation.
· The overall stability and usefulness of the interpreter have been enhanced, notably by more regression-testing.
· Also, this release includes a new build of the wwlispkdialog library, which allows the scripting of KDE dialogs, making use of some of the most prominent KDE widgets without lots of coding.
· And finally the release includes for the first time the wwlisp2dimage library which interfaces with the well-known GD library and allows to draw and save pictures.
· Note: The source packages compile on Debian 4 and on SuSE, provided that GD and KDE are installed, with headers.
· The precompiled package installs everything at once, but was tested only on Debian 4.