GCC-MELT is a high-level domain specific language that eases the development of plugin-like extensions for GCC, the Gnu Compiler Collection. These extensions can analyze or modify GCC internal representations, and can be used for static source code analysis, refactoring, specific warnings, optimizations, etc. The MELT language provides high-level features. Notably, MELT code is translated to C or C++, and can even contain C or C++ code. It includes powerful pattern matching facilities and can manipulate dynamically typed values and raw GCC structures. It enables functional/applicative, object-oriented, reflective programming styles and has a familiar Lisp-like syntax.
Wnotes are small, self-contained text notes for X Window System desktops. You can create, type, cut-and-paste, and save notes in any combination you like. Wnotes let you store notes and their window configurations using any database which accepts input from the Unix shell. It is compatible with most Linux and Unix desktops. The source code package includes sdb, a simple note database written as a bash script, and other examples of how to use Wnotes.
StaticPython is a statically linked version of the Python 2.x (currently 2.7.1) and Stackless Python 2.x interpreters and their standard modules for 32-bit (i686, i386, x86) Linux, Mac OS X, and FreeBSD systems. It is distributed as single, statically linked 32-bit executable binaries, which contain the Python scripting engine, the interactive interpreter with command editing (readline), the Python debugger (pdb), most standard Python modules (including pure Python modules and C extensions), coroutine support using greenlet, and multithreading support. The binary contains both the pure Python modules and the C extensions, so no additional .py or .so files are needed to run it. It also works in a chroot environment. The binary uses uClibc, so it supports username lookups and DNS lookups as well (without NSS).
YAGAC is a library that when linked to your C program, allows you to conveniently track or trash memory leaks within your application while it is still running. You can have multiple garbage collectors according the code part you are in. It tracks memory assigned by your code only, and does not monitor third part libraries. Tracking can be activated by updating a debug flag without restarting your application. It is intended for use with daemon-type programs.
ftracer is a simple user space implementation of a Linux kernel style function tracer. It allows you to trace every call in instrumented user applications. It is useful for debugging and performance analysis due to its fine grained time stamp. This allows you to do control flow oriented debugging without any special instrumentation. So if the program does something unexpected, it's easily possible to look at the function calls before that, and use that to deduce the cause of the problem. ftracer relies on gcc generating a call on top of every function call. The tracing slows every function call down (about 3x). The tracing is per thread and does not create a global bottleneck. It supports a dump function in C, directly callable by the program or on exit, and a gdb function to dump from gdb.
JCGO (pronounced as "j-c-go") translates (converts) programs written in Java into platform-independent C code that can be compiled (by third-party tools) into highly-optimized native code for the target platform. JCGO is a powerful solution that enables your desktop, server-side, embedded, mobile, and wireless Java applications to take full advantage of the underlying hardware. In addition, JCGO makes your programs, when compiled to native code, as hard to reverse engineer as if they were written in C/C++. The JCGO translator uses some optimization algorithms that allow, together with optimizations performed by a C compiler, the resulting executable code to reach better performance compared with the traditional Java implementations (based on the Just-In-Time technology). The produced executable does not contain nor require a Java Virtual Machine to execute, so its resource requirements are smaller than that required by a typical Java VM. This also simplifies the process of deployment and distribution of an application.
uevalrun is a self-contained computation sandbox for Linux, using User-mode Linux for both compilation and execution of the program to be sandboxed. The program can be written in C, C++, Python, Ruby, Perl, or PHP. uevanrun enforces memory limits, timeouts, and output size limits in the sandbox. The primary use case for uevalrun is evaluation of solution programs submitted by contestants of programming contests: uevalrun compiles the solution, runs it with the test input, compares its output against the expected output, and writes a status report.
iPDC is a Phasor Data Concentrator that collects data from PMUs and PDC/iPDC that are compliant with the IEEEC37.118 Synchrophasors standard. iPDC does time alignment and combines the received data into frames as per IEEEC37.118 and can send to other iPDCs and applications. It can also archive received data in a MySQL database on the local/remote machine. It includes a PMU Simulator, which is also IEEEC37.118 compliant. A friendly graphical user interface allows a user to add or remove new devices (PMU/iPDC) and send command frames to the devices from which the data is being received.