G-EXEC geological data handling system

Dr. Stephen Henley <steve.henley@emine.com>
Resources Computing International Ltd

G-EXEC was a geological data handling system developed at the British Geological Survey (then named the Institute of Geological Sciences) from 1973 to 1980. The system consisted of an integrated collection of applications built around a relational database engine. The first was operational in 1973, and it served the needs of its geological users for over ten years.

Central members of the G-EXEC team were Keith Jeffery (team leader), Elizabeth Gill, Stephen Henley, and John Cubitt. The team also included a large number of other members who contributed ideas and programming effort: Jonathan Wheeler, Roger Carter, Chris Fage, Sandra Strachan, Stuart Duncan, Helen Phelan, Philip Green, Andrew Bell, and many committed and enthusiastic users.

The relational database "engine" in G-EXEC was actually rather primitive. It consisted of an implementation of each of the principal relational operators as a separate user-callable program (thus there was a 'project' program, a 'join' program, a 'select' program etc) - with files, keys, control parameters, etc specified by a language closely modelled on IBM JCL. It was a bit clunky but worked very well, and after the learning curve its users found they could make it do pretty well anything they wanted, including a lot of things it wasn't designed for. Development was done on IBM mainframes (mainly the 360/195) but it was ported to other machines including PDP-11, Univac 1108, Honeywell, and Cyber (I forget which models of the latter two).

Because of its origins in an IBM OS environment, the system had a two-pass architecture - in the first pass, a 'controller' parsed the user commands and generated the code and JCL needed actually to execute them. In this way we effectively obtained semi-dynamic Fortran array sizing and run-time file allocation, both of which were otherwise quite impossible on OS/360. We also defined a portable single-pass subset of G-EXEC for demonstration use and for use in overseas technical aid projects - I myself set up versions of this in Indonesia, Costa Rica, and Ecuador, and copies were also supplied to colleagues in Canada, Chile, and Spain. The full system was implemented in Saudi Arabia in 1980, and the only ever commercial sale was to BP in 1981.

Following my departure from BGS in 1979, I developed another application system 'Datamine' in the commercial sector - for technical applications within the mining industry, and again built around a proprietary relational database engine. This system has been progressively updated - at least the applications parts of it - and is still one of the leading mining software systems in use around then world. Since 1993 I have been working independently and have been involved in further DBMS / data model projects, but now taking a fresh look at the original G-EXEC engine with a view to reviving and updating it, as I believe it provides a very clean implementation of Codd's principles. And all written in Fortran !


Jeffery, K.G. and E.M. Gill. "The design philosophy of the G-EXEC system", Computers and Geosciences 2 (1976), pages 345-346.

Jeffery, K.G. and E.M. Gill. 1976. "The Geological Computer", Computers and Geosciences 2 (1976), pages 347-349.

Henley, S., K.G. Jeffery, C.J. Fage and E.M. Gill. "Communication of Geological Information among Different Soft Machines", Computers and Geosciences 3 (1977), pages 465-468.

Jeffery, K.G. and Gill, E.M. "The Use of G-EXEC for resource analysis", Mathematical Geology 9 (1977), pages 265-272.

http://www.g-exec.com/ is a web site devoted to a proposed follow-on to G-EXEC. 

Other relational systems; System R home page; Paul McJones's home page
Phone: (650) 964-1068

Internet addresspaul at mcjones dot org