Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!cbmvax!daveh From: daveh@cbmvax.UUCP Newsgroups: comp.sys.amiga,comp.lang.modula2 Subject: Re: M2Amiga, another bunch of answers Message-ID: <2916@cbmvax.UUCP> Date: Mon, 7-Dec-87 14:31:12 EST Article-I.D.: cbmvax.2916 Posted: Mon Dec 7 14:31:12 1987 Date-Received: Sat, 12-Dec-87 18:19:13 EST References: <1221@sugar.UUCP> Organization: Commodore Technology, West Chester, PA Lines: 45 Xref: utgpu comp.sys.amiga:11219 comp.lang.modula2:544 in article <1221@sugar.UUCP>, schaub@sugar.UUCP (Markus Schaub) says: > Yes, you still need the INLINE statement, we still believe that it is possible > to write everything in Modula-2, so we did not include an inline assembler. > If however you want to write Assembly code you can use the object converter > to convert your Assembler output into a M2Amiga object file. There you can > even use the Open/CloseLibrary mechanism and all other goodies of the > runtime-system. Perhaps there's no need for assembler in general programming, but how about building up Amiga libraries and devices. Most compilers can't produce the required ROMTag, jump table, and especially assembler-specified entry points into routines (args passed in registers instead of on the stack). In C I've done most of a device/library type item in C, but I still use the Assembler to produce the jump table, ROMTag, and C compatible argument stack for any objects that need parameters. > I'm currently working with a syntax directed editor for Modula-2 on the PC > and now that I'm used to it I think this is a good thing. Forget about > typing keywords, semicolons, indentation etc. Very nice features are wrap and > unwrap of LOOP/IF/WHILE etc statements. Select a block and say 'make an IF'. > Not yet available on the Amiga, and I don't know if it ever will be. The Emacs I used in college did this (not a MicroEmacs, the one from MIT written in TECO, with CMU extensions) to a programmable extent, for Pascal. You could tell it to capitalize your keywords, or give abbreviations for them that would be expanded. It knew about indentation and matching END with BEGIN. And if you really wanted it, you could tell it to build you an IF, WHILE, REPEAT, PROCEDURE, etc. framework with all proper syntax. They never had it supply ";", but other than that it was kind of a painless version of a syntax directed editor. Gosling's emacs on another system there had "Electric-C", a similar invention for C language. These systems were pretty nice. However, just before I left school, they moved all the Freshmen to their own VAX with a specialized Pascal environment and Pascal syntax-directed editor. This editor was very bad. It enforced it's idea of what everything should look like onto the user. I knew a bit more about structure and syntax, but using it was so much pain, I was really glad I started 3 years earlier. So it can really go both ways. > // Markus Schaub uunet!nuchat!sugar!schaub (713) 523 8422 -- Dave Haynie Commodore-Amiga Usenet: {ihnp4|uunet|rutgers}!cbmvax!daveh "The B2000 Guy" PLINK : D-DAVE H BIX : hazy "I can't relax, 'cause I'm a Boinger!"