Python is an interpreted, interactive, object-oriented programming language. It combines remarkable power with very clear syntax, and isn't difficult to learn. It has modules, classes, exceptions, very high level data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems (Tk, Mac, MFC, GTK+, Qt, wxWindows). New built-in modules are easily written in C or C++. Python is also usable as an extension language for applications that need a programmable interface.
pyPEG is a quick and easy solution for creating a parser in Python programs. pyPEG uses a PEG language in Python data structures to parse, so it can be used dynamically to parse nearly every context free language. The output is a plain Python data structure called pyAST, or, as an alternative, XML.
Cpptools is a set of C/C++ development tools. This package contains a C++ scanning class coded both in C++ and Python. CppFSMDoc.py is the Finite State Machine diagrammer which uses @FSM comment tags inside sourcefiles. CppClassHierarchy.py parses C/C++ sourcefiles and generates a graphical dependency tree using Graphviz, and CppColorize.py scans sourcefiles and generates a highlighted HTML version.
Jython is a Java implementation of the Python programming language. It allows users to compile Python source code to Java byte codes, and run the resulting bytecodes on any Java Virtual Machine. It is a very seamless and smooth integration with Java: from Python you have complete access to all Java libraries, can build applets, can integrate with Java beans, and can subclass Java classes in Python and vice versa. Like Python, and unlike Java, Jython can also be used interactively: just type some Jython code at the prompt and see the results immediately.
Exscript is a scripting language for automating network connections over protocols such as Telnet or SSH. It is in some ways comparable to Expect, but has some unique features that make it a lot easier to use and understand for non-developers. It supports parallelization, logging, authentication mechanisms, and a lot more.
Narval is a framework dedicated to the setting up of intelligent personal assistants (IPAs). It includes a language, an interpreter, and a GUI/IDE. It is based on artificial intelligence and agent technologies. It executes recipes (sequences of actions) to perform tasks. It is easy to specify new actions using XML and to implement them using Python. Recipes can be constructed graphically (without programming) by linking blocks representing the actions.
EmPy is a system for embedding Python expressions and statements in template text. It takes an EmPy source file, processes it, and produces output. This is accomplished via expansions, which are special signals to the EmPy system and are set off by a special prefix (by default the at sign, '@'). It can expand arbitrary Python expressions and statements in this way, as well as a variety of special forms. Textual data not explicitly delimited in this way is sent unaffected to the output, allowing Python to be used in effect as a markup language. Also supported are callbacks via hooks, recording and playback via diversions, and dynamic, chainable filters. The system is highly configurable via command line options and embedded commands.