For decades, MV BASIC has featured the CALL() statement, allowing for
external subroutines invoked by mainline programs. Typically, one does this
to share common code/ processing/algorithms, thus upholding the development
principle of DRY (Don't Repeat Yourself). However, such features often come
with a performance penalty. How much of a performance penalty?
The task was designed to transfer geological survey data to tape for
distribution. This data was kept in separate files according to type. These
types included seismic section, well log, and well core data. The process
was taking over 72 hours.
For decades, MultiValue applications have followed the model of having an
always active, persistent connection to the server. This worked well when we
had control over the connection, primarily by using a dedicated cable to a
serial RS-232 port physically located on a board in the machine. Then came
networks, where everything is dynamic and out of our control. Yet in 2011,
how many of our MultiValue application still stick to trying to emulate the
old persistent connection model of the last century?