SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. SWIG is primarily used with common scripting languages such as Perl, PHP, Python, Tcl/Tk, and Ruby, however the list of supported languages also includes non-scripting languages such as C#, Common Lisp (CLISP, Allegro CL, UFFI), Java, Modula-3, OCAML, Octave, and R. Also several interpreted and compiled Scheme implementations (Guile, MzScheme, Chicken) are supported. SWIG is most commonly used to create high-level interpreted or compiled programming environments, user interfaces, and as a tool for testing and prototyping C/C++ software. SWIG can also export its parse tree in the form of XML and Lisp s-expressions.
PYX is a highly simplified XML derivative/substitute suitable for use in certain applications. In particular, PYX markup is easy to parse, and PYX documents are easily processed with simple tools. MyoPyx is a compact PYX document parser with a SAX-like API. Its small size makes it convenient for embedding in other applications who need some form of structured document markup, but don't need the weight of a full XML processor. It provides both Java and Ruby validating, streaming parsers.
Marathon is a GUI test tool that allows you to play and record scripts against a Java Swing UI. It's written in Java, and uses Python and Ruby as its scripting language (the emphasis being on an extremely simple, readable syntax that customers/testers/analysts feel comfortable with). Marathon includes a recorder, editor, player, and debugger to simplify working with test scripts.