The Noble Ape Simulation is a collection of a number of autonomous simulation components including a landscape simulation, biological simulation, weather simulation, sentient creature (Noble Ape) simulation, and a simple intelligent-agent scripting language (ApeScript). Noble Ape also contains a social simulation where the Noble Apes can be tracked in terms of social groups and also over many generations to explain social phenomenon to users looking to study this kind of interaction. It has been in development for more than a fifteen years.
openTCS is a platform-independent transportation control system (TCS) intended to control automatic guided vehicles (AGVs), but which can be used to steer virtually any (track-guided) vehicle. It consists of an abstract kernel which implements replaceable algorithms and strategies (computation of routes, dispatching of orders to vehicles, scheduling of resources, etc.), pluggable vehicle drivers which implement communication protocols, and a graphical frontend for creating and visualizing logical models of areas the vehicles are moving in.
dispy is a Python framework for parallel execution of computations by distributing them across multiple processors in a single machine (SMP), or among many machines in a cluster or grid. The computations can be standalone programs or Python functions. dispy is well suited for the data parallel (SIMD) paradigm where a computation is evaluated with different (large) datasets independently (similar to Hadoop, MapReduce, Parallel Python). dispy features include automatic distribution of dependencies (files, Python functions, classes, modules), client-side and server-side fault recovery, scheduling of computations to specific nodes, encryption for security, sharing of computation resources if desired, and more.
The YB.ORM library aims to simplify writing C++ code that has to deal with SQL databases. The goal is to provide a convenient interface like SQLAlchemy (Python) or Hibernate (Java). The library itself is cross-platform and supports a variety of SQL dialects: SQLite3, MySQL, Postgres, Oracle, and Firebird. Integration with Boost, Qt4, and wxWidgets is built-in. In a typical usage scenario, you would describe your database schema and table relationships in a simple XML-based format, generate SQL code to populate database schema with tables, generate C++ classes, add application-specific logic to the classes, and use these classes in cooperation with the Session object to query objects from the database, create new or modify/delete existing objects, or link and unlink objects using relations. Simple serialization to XML is supported along with connection pooling.
sydep is a tool for simple deployment over rsync. In combination GIT it is very powerful instrument. It provides three actions: init, push, and pull. init creates config files for sydep in the current directory. These are sydep.cfg, which contains connection details, and .sydepignore, which specifies files to ignore. push uploads files from the working directory to the server. pull downloads existing files from the server. It downloads only those files which are already in the working directory.
asyncoro is a Python framework for concurrent distributed network programming with asynchronous completions and coroutines. Asynchronous completions implemented in asyncoro are socket I/O operations (non-blocking sockets), database cursors, sleep timers, and locking primitives. Programs developed with asyncoro have the same logic and structure as Python programs with threads, except for a few syntactic changes. It supports socket I/O notification mechanisms epoll, kqueue, /dev/poll (and poll and select, where necessary), and Windows I/O Completion Ports (IOCP) for high performance and scalability, and SSL for security. asyncoro features include remote execution of coroutines, coroutines monitoring other coroutines, coroutines communicating with messages, message channels etc., for concurrent, distributed, fault-tolerant programming.
Happy Phone Number provides easy methods to format phone numbers from your Rails models. Virtually any country specific format or convention could be supported, including national and international format. For the not (yet) supported countries, a general method using a simple mask is also provided.