|
What is RapidCASE?
The RapidCASE Advanced Development project is developing a
vertically integrated programming environment. The planned span of
RapidCASE is from edit through compiling, testing, profiling and
debugging. The first build level (BL0) includes a build facility
(like make or MMS), scanning, preprocessing and parsing for standard
C.
RapidCASE design focus is to minimize the time in the
edit/compile/test turnaround loop.
There are existing products in this niche. On PCs there are
Rational's Instant C, MicroSoft's Quick C, Bourland's Turbo C and
Symantek's Think C. Saber C is the current competition on
workstations.
RapidCASE has also been designed to accomodate various editors and
languages as well as to run on various platforms. Build level BL0
supports LSEdit on VMS and strict standard C.
In use RapidCASE looks like an extension of the editor.
Various documents and files necessasry to understand and use
RapidCASE are available from the project. Where to find specific
pieces of information is given in Note 3.0.
.prj files
The main user control of RapidCASE is through a so-called project
file. It is analogous to a makefile or .MMS file. In it the user
lists the source files to be processed and any additional flags such
as controlling #include search paths, externally set #defines,
intermediate output and the like.
There are examples in the documentation. In particular, RapidCASE
can be run in a preprocessor only mode. The output can then be
processed by any program (presumably a compiler) needing the
preprocessor output.
.ro files
The main data structure of RapidCASE is the rofile. There is one
.ro file per .c file. The rofile contains all of the intermediate
data structures necessary to enable incremental compilation,
debugging and execution. RapidCASE creates rofiles in the users
directory. Rofiles are not read and written on VMS. Rather they
are mapped so that all disk activity is driven by page faults.
Rofiles are also checkpoint/restart structures. They are
automatically saved and used by RapidCASE and in addition can be
saved by explicit command.
Rofiles may be freely deleted at the cost of recreating them when
RapidCASE again needs the information.
Rofiles are relatively expensive to build from scratch. There is a
standalone version of RapidCASE that can build rofiles in batch
mode. It can also do standalone preprocessing.
use pattern
Typically a user will have some small number of .c files under
development (jargon: a program development working set or pdws).
The pdws is listed in the project file. As the user makes
modifications to sources, the editor command RUN will cause
RapidCASE to discover what files need reprocessing, incrementally
update the processed state, and issue a diagnostic if something has
gone wrong. This happens in parallel to the usual industrial
strength builds using MMS (make). It is reasonable to assume 10
RapidCASE RUNs per call to MMS in the parallel build scenario. The
idea is to get the trivial errors out with low cost.
As the range of RapidCASE begins to extend toward run, the ratio of
RUNs to MMS is likely to increase to 100.
|
| I've been using the latest field test version of a ``C interpreter'' called
Rapid-C from Technosoft on my VAXstation at home�.
I've been very impressed with it in the short time I've had it.
It combines all the things you'd expect to get in an inperpreter (Fast
turnround time, debugger (good), cross referencer (SCA'ish), un-initialised
variables etc) but the big plus for me is that it's nicely integarted into VMS
with such goodies as :
- supports ANSI-C and VAX-C extensions.
- handles all VMS run time library, system calls etc..
- dynamically link to shareable images. (LIB$FIND_IMAGE_SYMBOL I guess)
- supplied a conversion utility to convert from .OLB to shareable images.
- full support for AST's.
- maintains run time statistics regarding program memory usage (malloc etc)
It tends to be a bit stricter that VAX-C particularlty WRT initializors (Extra
comma's etc)
If you want more info. on it send me mail offline.
Rik Watson.
Technosoft's address is
Adelaide House
Portsmouth Road
Bursledon
Hants, UK
Tel: (0)703-406764
Fax: (0)703-406765
�I'm a contractor and do ``C'' programming at home to make ends meet :-)
Usual disclamer. I have no interest in Technosoft other than as a satisfied
user.
|