SiroccoDoc.tioga
Copyright © 1986 by Xerox Corporation. All rights reserved.
Bhargava, August 12, 1986 11:15:59 pm PDT
Bill Jackson (bj) October 9, 1986 0:55:01 am PDT
Sirocco
CEDAR 6.1 — FOR INTERNAL XEROX USE ONLY
Sirocco
The Courier Compiler for Cedar
Sunil Bhargava
© Copyright 1986 Xerox Corporation. All rights reserved.
Abstract:
si|roc|co n., pl. -cos. Also sci|roc|co 1. A hot, humid south or southeast wind of southern Italy, Sicily, and the Mediterranean islands, originating in the Sahara as a dry, dusty wind but becoming moist as it passes over the Mediterranean. 2. A hot or warm southerly wind, especially one moving toward a low barometric pressure center. [Italian sirocco, from Arabic sharq, sharuq, east (wind),'' from sharaqa, (the sun) rose.]
This is Sirocco [1.0] which contains a minimum of features and requires a bunch more work. It will do most of the things required in order to build stubs for simple courier programs. The intent here is not to provide a robust tool, but get some working code out to those who need it. Known bugs below...
Created by: Sunil Bhargava, Alan Demers, Bill Jackson
Maintained by: Bill Jackson <BJackson.pa>
Keywords: Sirocco, Courier, XNS, Cedar, Casaba
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
1. Bugs
In particular, I know that:
(a) module creation needs to be factored
(don't generated unwanted things, and don't smash file already generated)
(b) kippering code for Bulk Data types needs to be added
(help CH, Auth, Filing deal with data on "STREAM"s)
(c) fix the routine that writes interfaces to not muck with item order
(in other words, but out items in the same order as in the courier program)
(d) totally rewrite the .table's, probably calling them .sirocco's
(put in the types of things that bcd's have or want)
(e) fix bulk data type definitions so that BulkData1.cr will translate
(right now instead of types you get variables. This isn't a problem for anything else.)
(f) fix marshalling and unmarshalling code for sequences
(NIL should be equal to SEQ[0].)
(g) fix generated code complexity by breaking up inline code into chunks or procs
(this is mostly a compiler issue. Pragma's would sure help...)
(h) rewrite the internals of the type graph manipulation code
(this stuff is complex, slow and possibly buggy)
(i) fix the Aux proc importing mechanism
(needs to grovel in the type graph code)
(j) fix the OPEN's by removing them
(some code won't compile because of symbol ambiguity)
the list goes on...