Path: utzoo!attcan!uunet!cs.utexas.edu!samsung!zaphod.mps.ohio-state.edu!wuarchive!psuvax1!rutgers!rochester!pt.cs.cmu.edu!dsl.pitt.edu!pitt!willett!ForthNet From: ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie) Newsgroups: comp.lang.forth Subject: Metacompilation Message-ID: <1889.UUL1.3#5129@willett.pgh.pa.us> Date: 21 Oct 90 01:58:44 GMT Organization: String, Scotch tape, and Paperclips. (in Pgh, PA) Lines: 67 To: RAY DUNCAN Refer#: NONE From: SHANNON VANCE Read: 10-18-90 (23:50) Subj: METACOMPILER Status: PUBLIC MESSAGE Ray; I have been working on a generalized software development system for the programmers here at SAGE. We have adopted the Pansophic line of version control and make utilities. In trying to integrate the LMI metacompiler into this system I have run across many problems. There are often workarounds for these problems, but often these are so odious that even considering them gives me a stomach ache. What it comes down to is: I need some help from LMI. I consider the things that I wish for to be features that would naturally be included in any serious compiler. How soon can we expect a new release of the meta-compiler? Will the things I have asked for be included? Here is the list of things that I sent before, with some new items added. 1) The bug - In ROMZ80 land. FORGET doesn't work with vocabularies. If a vocabulary is declared at compile time, FORGET will crash the system. If a vocabulary is declared at run time, FORGET will forget all words in the vocabulary, and the vocabulary itself. 2) I would like to see a command that does whatever is done when the metacompiler finishes a compile. That way I can do a CHECKSUM at the end of a compile and it would accurately reflect the compiled image. Without this feature the CHECKSUM command is fairly useless. (unless another compile is done based on the image that was just written) 3) I would like a MACRO-VARIABLE that would essentially act like an EQU that can be re-valued during a compile. In other words a variable that doesn't appear in the target image. 4) I would like a STRING-MACRO-VARIABLE. This would be handy for vectoring pathnames in an include file. (among other things) example: MACRO-$VAR $COMPILE_PATH " C:\SOURCE" $COMPILE_PATH $! . . . INCLUDE $COMPILE_PATH\APPLIC.TXT 5) I would like to be able to set the return code for testing in batch files and the like. 6) I need to be able to set the path for where the compiler will put it's output files. This will make it possible to compile different "flavors" of a product without copying files to and from a "save" directory. 7) I need to be able to use environment variables in compiles. This is somewhat like item #4. Instead of a literal string, $COMPILE_PATH would be an environment variable. eg. "INCLUDE %COMPILE_PATH%\APPLIC.TXT" 8) Being able to spawn a DOS command would be extremely helpful. It would also be necessary to test the return code from the DOS command. 9) I would like to be able to test the values of environment variables and STRING-MACRO-VARIABLES for .IF .THEN statements. 10) I need to be able to break out of a compile without crashing my workstation. Thanks for an exellent product....Shannon Vance NET/Mail : LMI Forth Board, Los Angeles, CA (213) 306-3530 ----- This message came from GEnie via willett through a semi-automated process. Report problems to: dwp@willett.pgh.pa.us or uunet!willett!dwp