Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!sdd.hp.com!decwrl!ucbvax!van-bc!rsoft!mindlink!a665 From: a665@mindlink.UUCP (Anthon Pang) Newsgroups: comp.lang.modula2 Subject: Re: is modula2 available Message-ID: <2781@mindlink.UUCP> Date: 9 Aug 90 04:03:28 GMT Organization: MIND LINK! - British Columbia, Canada Lines: 28 Your friend is probably just typing in the CONST & TYPE declarations listed in the DEFINITION module listings, in the manual, and ignoring the PROCEDURES. For an IMPLEMENTATION module, he would use: IMPLEMENTATION MODULE modulename; BEGIN END modulename. Most of the modules are Amiga specific...ie stubs to library routines. Since all of the libraries are documented in the RKMs, he can use INLINE code for calling library routines that he needs. Since he's using Intuition, it's already an Amiga specific program...so, there's no need to worry about portability. As an alternative, I disassemble the final load file (after adding Symbols to it), strip or comment out the unused procedures. Which is quite easy, as unused procedures will show up as dc.b statements. Then, I fix the obvious [missed] optimizations (eg unnecessary tst's). Choose my favorite optimizing (eg branches) assembler--A68K--, and link it. Examples: unoptimized optimized savings MovePointer 7444 bytes 4304 bytes 43 % WarpDrive 8704 bytes 2772 bytes 69 % Split 3768 bytes 1832 bytes 52 % The savings will be even more noticeable when the 2.0 libraries come out...AmigaDOS.DEF will have over 100 exported procedures...a good reason to abandon "my" method, then.