Groovy is an agile, dynamic language for the JVM which combines many features from languages like Python, Ruby, and Smalltalk and makes them available to Java developers using a Java-like syntax. It is designed to help get things done on the Java platform in a quicker, more concise, and fun way. It can be used as an alternative compiler to javac to generate standard Java bytecode to be used by any Java project or it can be used dynamically as an alternative language, such as for scripting Java objects, templating, or writing unit test cases.
WinDriver automates and simplifies the development of user-mode Linux device drivers for PCI, CardBus, ISA, PMC, PCI-X, PCI-EXPRESS, and CompactPCI as well as USB 1.1/2.0. No internal OS knowledge or kernel level programming is required. It supports kernel 2.0.31 and above, including embedded Linux, x86 and PowerPC processors, and any 32-bit development environment supporting C or Delphi. Applications are source code compatible across Windows 98/Me/NT/2000/XP/XP Embedded/Server 2003/CE, Linux, Solaris, and VxWorks.
gjrand is a programmer's library for pseudo-random numbers. It includes random number generator testing code and is intended for simulation, games, and "Monte-Carlo" algorithms. It produces pseudo-random numbers of the types: uniform integers, uniform reals, normally distributed reals, binomial, Poisson, integer permutation, chi-squared distribution, "Student" T distribution, and spherical distribution.
ReadySET is a project to produce and maintain a library of reusable software engineering document templates. These templates provide a ready starting point for the documents used in software development projects. Using good templates can help developers work more quickly, and they help prompt discussion and avoid oversights. Key features include: high-quality outlines, sample text, and checklists, use of simple Web technologies (pure XHTML and CSS), and templates for many common software engineering documents.
The Java Application Monitor (JAMon) is a free, simple, high performance, thread safe, Java API that allows developers to easily monitor production applications. JAMon can be used to determine application performance bottlenecks, user/application interactions, and application scalability. JAMon gathers summary statistics such as hits, execution times (total, average, minimum, maximum, standard deviation), and simultaneous application requests. JAMon statistics are displayed in the sortable JAMon report.
UPPAAL is an integrated tool environment for modeling, validation, and verification of real time systems, modeled as networks of timed automata, extended with data types (bounded integers, arrays, etc.). Typical application areas include real time controllers and communication protocols, in particular those where timing aspects are critical.
Daikon is an implementation of dynamic detection of likely invariants. An invariant is a property (such as "x=2*y+5" or "this.next.prev = this" or "myarray is sorted by <") that holds at a certain point or points in a program. Invariants are often seen in assert statements, documentation, and formal specifications. Invariants can be useful in program understanding and a host of other applications. Daikon runs a program, observes the values that the program computes, and then reports properties that were true over the observed executions. It can detect properties in Java, C, C++, Perl, and IOA programs, in spreadsheet files, and in other data sources.
alph implements and analyzes historical and traditional ciphers and codes, such as polyalphabetic, substitutional, and mixed employing human-reconstructable algorithms. It provides a pipe filter interface in order to encrypt and decrypt block text to achieve transparency. The program is meant to be used in conjunction with external programs that transfer data, resulting in transparent encryption or decryption of information. The program can thus be used as a mail filter, IRC filter, IM filter, and so on.
Platform Independent Petri Net Editor (PIPE) creates and analyses Petri Nets quickly, efficiently, and effectively. A key design feature is the modular approach adopted for analysis, enabling new modules to be written easily and powerfully, using built-in data layer methods for standard calculations. Six analysis modules are provided, including Invariant Analysis, State-Space Analysis (deadlock, etc.), and Simulation Analysis and Classification. PIPE adheres to the XML Petri net standard (PNML). The file format for saving and loading Petri Nets is extensible through the use of XSLT, the default being PNML.