home up

Version-1997.1 Release Notes

This is only our second release for 1997 but it contains important additions to the package and some new features that illustrate future growth areas in our software. (Note that we anticipate that the time to the next release will be much shorter, and expect it to contain a proper gap4 interface to Phil Greens phrap assembly engine (for which we recently obtained the sources), and an improved version of our mutation detection program.) Of particular importance, the 1997.1 release contains a new program, Nip4. Changes to the existing programs consist mainly of a steady stream of improvements and bug fixes, but there are also some new functions. The more important updates are listed below, with the list of bugs fixed at the end of these release notes.

All the newer graphical programs have been updated to use Tcl/Tk version 8.0. The most obvious change to the user is that the fonts may appear to be different. However Gap4, Nip4, Sip4, and Trev also have font and colour configuration menus which can be used to permanently change the styles for the current user. Your comments on this configuration interface will be useful for future work on extending it to other program options.

SunOs 4

We are now supporting the package on SunOs 4.x, Solaris 2.x, Digital Unix 3.0 to 4.0, Irix 5 and Irix 6 and Linux. The number of users of all operating systems except SunOs 4 is increasing. It would help us to reduce the number of machines (and the heat they generate) if we could phase out SunOs 4 in the near future. A version exists for Solaris x86 (Solaris on Intel PCs). Please contact us if there is interest in us supporting this.

Nip4, interprogram communication and request for algorithms

The most important addition this release is a new program nip4 which will be replacement for our old nucleotide sequence analysis program nip. In its present form it contains a variety of the analytical functions that would be expected from a DNA analysis program, but by no means all. In this first release the functions implemented have been chosen to cover a reasonable range of the algorithms needed and to enable us to establish the main components of the user interface. Now that this has largely been finished we expect to rapidly increase the range of options available in the program, and we hope users will contact us with suggestions as to what their own priorities for new functions are.

That over the last few months we have spent time on nip4 should not be taken to imply that we think our work on gap4 is any less important than in the past. On the contrary, we see nip4 as a means of increasing the usefulness of gap4, and why this is so is explained below.

A great deal of sequence has been assembled and edited using gap4 and its predecessors. These consensus sequences are written out by gap4 and analysed using external programs. Often there will be queries about the accuracy of the sequence at particular places where, for example, the analysis suggests the possibility of a frame shift error. At present it is quite laborious to then go back into gap4 to check the evidence for the consensus sequence. Ideally we would like to check the evidence (i.e. look at the aligned readings and trace data) from within the analytical program, and this is what can be done from nip4: all the cursor positions, both graphical and textual in nip4 and gap4 can be linked so that they move together. Gap4 can send a consensus to nip4, which can perform various forms of analysis, and if there is a query about a section of the sequence, the contig editor and trace display cursors in gap4 can be moved by cursors in nip4 so that the original data covering the precise base in question can be checked. We believe this will save a great deal of time, both during the original analysis, and later when new results call the sequence into doubt.

Obviously this is most useful if nip4 can show results from the very best analytical methods, and it is our hope that either by encouraging others to write their algorithms so that they can be used from within nip4 (see below), or by us enabling nip4 to import the results of external programs, this will be the case.

For us the main tasks are 1: to provide an interface to the sequence libraries that is independent of the EMBL CDROM indexing systems that we have used for the last several years; 2: to provide a feature table creator, editor, parser and display routine; 3: to define and provide methods to import the results of other analytical programs and to use them inside nip. Of particular interest are BLAST and FASTA results and those from programs that search for unknown genes in genomic DNA.

Importing results from other programs is one way of enabling nip to grow but there is another perhaps more important route which is open, and which results from the way we have designed and programmed all of our new programs gap4, sip4 and nip4. The programs' user interface is provided by Tcl and Tk and their algorithms are written in C. The link between Tcl and C is made by adding the algorithms to the Tcl language - ie by extending the commands that can be understood by the Tcl interpreter. In conjunction with conventions for defining the items to appear in the program menus this organisation of the code makes it straightforward for other groups to add their own algorithms to the programs. Coupled with our use of dynamic loading this means that these additional functions can be made available as compiled code by their authors, hence allowing them to retain complete control of their distribution. We believe this will be an attractive option for many people developing new algorithms: they can concentrate on the algorithms without worrying about the user interface, and they can make them available as an additional option to a (we wish!) widely used program.


Gap4

Main changes

Minor updates

Bug fixes


Copy_db

Bug fixes


Sip4

Updates

Bug fixes


Pregap

Updates

Bug fixes


Init_exp

Updates


Io_lib

(Used by all programs accessing trace files and experiment file formats.)

Bug fixes


Vector_clip

Updates

Bug fixes


Repe

Bug fixes


Trace_diff

Updates

Bug fixes


Trace_clip and scale_trace_clip

Bug fixes


Mep

Bug fixes


Nipl

Updates


home up