home *** CD-ROM | disk | FTP | other *** search
- Aug 30 1993: Struct 0.95 released to beta testers.
-
- Sep 18 1993: Made Zeroloop work properly with LONG variables. The
- way to do this was explained by Joakim Rosqvist.
-
- Jan 03 1994: The Lib Call command originally had two limitations:
- you couldn't use math expressions as parameters and it didn't
- automatically sign-extend parameters to LONG for you. The former was
- caused by a lack of scratch registers. The latter was just dumb.
- Making library calls under these limitations proved unbearable, and
- so they were removed. Struct now uses 12 bytes of stack space as
- scratch during a library call if you supply a parameter list.
-
- Jan 06 1994: Allowed procedures to return a value. This would have
- been done a long time ago, but I couldn't decide how it should
- appear to the programmer.
-
- Jan 12 1994: Made the Load Address command more powerful. It can now
- load the addresses of labels, procedures, and variables. In order to
- make this work, compiler output is now directed to two separate
- files which are combined at the end of processing. The AmigaDOS Join
- command must be in your C: directory (the compiler will use it
- automatically). This modification effectively makes Struct a
- "1 & 1/2 pass" compiler.
- The compiler now distinguishes between local and global labels.
-
- Jan 15 1994: Added the ability to recognize the IFND directive to
- the Include Constant command. This seems to make it work properly
- with the include files I have. It's real slow though.
- Made the Goto command use the double output file system. Forward
- Gotos no longer require a resolution subroutine at the end of the
- procedure.
-
- Jan 21 1994: No more annoying warnings from the Print command.
-
- Jan 22 1994: Variables can now be given an initial value.
-
- Jan 25 1994: Procedures can now have "default parameters" for each
- of their input variables. The default parameter will be used if no
- value is passed to that variable. This permits a limited form of
- function overloading.
- STACK data type added. This is EXPERIMENTAL and may be removed
- from the language at a later date. See the Q & A section of the main
- documentation for more information.
-
- Jan 27 1994: Indenter and UOut example programs updated to make use
- of Struct's new features.
- REALLY DUMB bug discovered in the Exit command and eliminated. I
- must have been brain-dead the night I wrote the code for that
- command.
- L¡brary base tracking fixed. Struct tries to keep track of which
- library's base pointer is on A6, but isn't as rigorous as it is with
- normal register variables. This was part of the language from the
- beginning, but didn't work. It should, now.
-
- Jan 29 1994: Library definitions file updated. It now contains the
- five major libraries (Exec, Dos, Graphics, Layers, and Intuition) up
- to version 1.2. My references are not the most complete, so there
- may be some functions missing. It would be nice if some kind soul
- could send me the function information for 2.0+...
-
- Jan 30 1994: Increased the compiler's working buffer size and raised
- some of its internal limits. See the Theoretical Limits appendix for
- specifics. Struct now requires approximately 600k to compile a
- program.
-
- Jan 31 1994: Documentation for the Indenter example program written.
-
- Feb 02 1994: Documentation for the UOut example program written.
-
- Feb 13 1994: Struct main documentation updated to reflect recent
- changes. New chapter added on optimization.
- Struct 0.99 released to beta testers.
-
- Feb 21 1994: Any constants which end with "@" will now be ignored by
- Include Constant if they're already defined. (The "@" sign indicates
- a redefinable constant in assembly)
- Library bases are now stored in global variables which are
- directly accessible to the programmer.
- Various bugs fixed - local and global labels with the same name
- weren't being allowed, forward Gotos were bringing up false errors
- in some situations, constants weren't always working with the Poke
- and Peek set of commands.
-
- Mar 14 1994: Despite my efforts to fix the Include Constant command,
- one of my beta testers still has problems with it. If you can't get
- this command to work, and you only need a few magic numbers, you
- might try finding out the values of those numbers and then just
- inlining them with the Constant command.
- Struct 1.0 released to the public. My great thanks to those beta
- testers who sent advice and comments during the testing process:
- David Benn, Sean Conner, and Joakim Rosqvist.
-