Ciao is a complete Prolog system subsuming ISO-Prolog with a novel modular design which allows both restricting and extending the language. Ciao extensions currently include feature terms (records), higher-order, functions, constraints, objects, persistent predicates, a good base for distributed execution (agents), and concurrency. Libraries also support WWW programming, sockets, and external interfaces (C, Java, TCL/Tk, relational databases, etc.). An Emacs-based environment, a stand-alone compiler, and a toplevel shell are also provided.
AntiCutAndPaste is designed to search for text fragments that have been copied and pasted in programming language source code or plain text. It has been tested on sources from large C++, Pascal, Java, and C# (Mono) projects. The algorithms used are very fast and can handle up to three million C++ code lines in one minute. Minor modifications of code are ignored during the search. Reports are sorted conveniently by the total size of all similar fragments and there are many report customization options.
SHORE (Semantic Hypertext Object Repository) is a hypertext repository that stores data about documents and data described by documents. Access to this information is provided as hypertext. The repository stores objects that appear in documents, together with their relations in a semantic net. Hypertext navigation follows these relations in the semantic net. The SHORE server works as an HTTP server, and the client is a standard Web browser. The repository uses PROLOG as its query language and the XSB system as its query engine.
cstor is a cross-reference compiler and reverse engineering tool. It compiles one text file (database) from multiple source modules (currently reads C, C++, and Perl). The tool combines reverse engineering capabilities, code validation, and an HTML documentation generator. The database can then be reused from own scripts and programs, e.g. to implement cross-compilers, validate coding conventions, build statistics etc. The builtin documentation generators are actually an application of the database.