The Ribosome Builder Project
A software project to simulate the ribosome

Main Menu

Current Development Goals

GNU/Linux Port

The main goal in current development is to update the source code to support the GNU/Linux platform. An associated goal is to keep the code in a functional state on the current Win32 platform. The progress of porting is described below.

Definition of Unit Tests

Another immediate goal is to develop unit tests for the scripting API. These tests will help to maintain the stability and functionality of the program as the code is modified. The progress of unit test creation is described below.

Request for Developers

A working version of the code is available via anonymous pserver in CVS. To checkout the code, once you have CVS installed, you can do the following:

cvs -z3 co bas

At the present time there are only a small number of developers working on the project. Developers who are interested in contributing to the project are encouraged to post to the Open Discussion forum or to send email to

For additional information on using CVS, refer to the excellent SourceForge documentation pages:

GNU/Linux Porting

The program currently consists of 16 low-level libraries, 3 application-specific library modules and 2 application modules.

The table below lists all the libraries and application modules in increasing order of dependency. Completion dates are added as each module is ported to GNU/Linux.

Table of program modules and completion dates

Once an initial working version in GNU/Linux has been done, the next step will be to improve the build process to a more general Unix version using the GNU Autotools.

Rbq-Lua API Unit Test Definition

There are currently 182 functions, defined in C and C++, that provide an interface to the Lua script interpreter that is embedded in the program. These functions are the foundation used to build the Lua libraries that implement higher-level functionality.

A unit test is a script written in Lua that calls the function and checks the result. A number of different cases are tested. One case is a function call with well-formed parameters. Additional cases include function calls with invalid parameters.

Rbq-Lua unit tests will be located in the funcs subdir of the bas/app/rbq/tst/rbqlua directory in the CVS source tree. The first unit test has been created and can be viewed as an example. Creating and running RbqLua unit tests does not require installation of the VisualC++ 6.0 software.

The table below lists all of the interface functions, in alphabetical order. Completion dates are added as unit tests are defined for each function.

Table of rbq-lua API functions and unit test completion dates

A related goal is to generate priority ratings of the functions, based upon frequency of usage in the lua library code, to better define the order in which unit tests should be created.

Developer Logs

To document and communicate the work on the project, logfiles created by individual developers are posted to the project web page to describe details of work done.

A humongous 4-year developer log created by the original developer, William Knight, is also available. This is a log of work done on the project prior to the time that it was moved to SourceForge.

All work on the project after April 26, 2004 is described in the logfiles below.


Hosted at Logo