jyouells@pnet02.cts.com (John Youells) (08/05/88)
The information on CommFORTH was very interesting to me. I do have one question. Can someone tell me the executable size of a simple 'hello world' type program for the Amiga after a Comgen or turnkey. I enjoy writing utility programs for the Amiga and code size counts in a mutitasking environment ;) opps - that's ComFORTH not CommFORTH ... Thanks UUCP: {hplabs!hp-sdd!crash, cadovax}!gryphon!pnet02!jyouells INET: jyouells@pnet02.cts.com
A-PIRARD@BLIULG11.BITNET (Andre PIRARD) (08/08/88)
> The information on ComFORTH was very interesting to me. I do have one >question. Can someone tell me the executable size of a simple 'hello world' >type program for the Amiga after a Comgen or turnkey. I enjoy writing utility >programs for the Amiga and code size counts in a mutitasking environment ;) Well, a null program COMGENs to a 1124 bytes module on MSDOS. I can't tell for Amiga, but it must be in these whereabouts. I can ask our Amiga specialist a test if you like. But Comforth initialization uses Forth primitives at will and we made no effort to optimize the null program size. This would be useless as the smallest program would include the few primitives that could be avoided. In fact, the program : RUN ." Hello world " CR 127 20 DO I EMIT LOOP ; compiles to a 1162 module, which shows the 1124 bytes already contain a quite useful set of primitives. This is module size. Execution size is still 64Kb, unless one includes an <n DATA.SIZE> statement to instruct COMGEN to set the bootup variables so that initialization allocate a smaller memory area which is n + module-size + tib-area + user-area + stacks. For comparison, a menu driven Kermit program written with Comforth crams a lot of features in a 21000 bytes module which grows to 27000 when this module has compiled the messages files (it's designed to be language independent). By the way, these figures indicate what part of the code messages can take. In a 64K environment, it's a useful feature to be able to test an application with messages reduced in size. When the application is COMGENed, the smaller module loads the full-length messages file and regenerates itself. Keeping modules size low is interesting for multiprogramming environments indeed, but also to conserve disk space. Comforth is designed to be used on the C64 just as on the IBM PC. We have a guy constantly switching graphic programs development between his PC at work and his C128 at home. Using smaller machines must not be a shame and can be very useful for a wide range of applications. Quite large ones can be written by chaining modules, as long as the whole set can fit on one disk. Andr .