original commit: 296261832bdffd49471883223503091e3615395e
This commit is contained in:
Matthew Flatt 1999-08-07 03:47:23 +00:00
parent 8965f1a4e7
commit aae4c54634
2 changed files with 86 additions and 88 deletions

View File

@ -1,8 +1,91 @@
Version 100: August 9, 1999
MAJOR revision: see MrEd_100.txt in the current directory.
The Engine-System distinction is gone. MrEd Engine is now MrEd. MrEd
System turned into the Framework libraries.
MrEd 100 is the successor to MrEd 53. For MrEd 100, we preserved the
underlying windowing model, but redesigned the GUI toolbox interface
to make it simpler and more Scheme-like. Every MrEd 53 program
requires substantial changes to run in MrEd 100.
The revised interface makes MrEd more accessible to new users: class
and method names are more consistent; useless and redundant methods
have been eliminated; and methods check their arguments more
precisely. Key portions of the documentation have been re-written,
and a new help system called "Help Desk" makes locating information
much easier than before.
The implementation behind the revised interface is reliable. Whereas
previous versions of MrEd were plagued by bugs and inconsistently
implemented features, the new interface is consistently implemented
across platforms and thoroughly tested. Of course, bugs will always
slip through, but MrEd 100 is far more robust than its predecessors as
a result of a cleaner implementation and a new testing process.
New Application Architecture
----------------------------
MrEd 53 comprised two parts:
* a core toolbox (containing names prefixed with `wx:') that was too
primitive for real programming (notably, no geometry management);
and
* an application framework (containing names prefixed with `mred:')
that provided crucial functionality (notably, windows with geometry
management) but also much more, making it too heavyweight for
simple GUI programs.
For MrEd 100, we moved the boundary between the core toolbox and the
application framework. The name "MrEd" now refers to only the core
toolbox, but the core toolbox now includes the most useful `mred:'
classes from the old application framework. While merging the `wx:'
and `mred:' classes, we eliminated the prefixes.
All of the core toolbox classes are built into the MrEd executable.
The old `mred:' classes that are not part of the core toolbox have
been moved into a separate framework library. The framework library is
designed for use in large and polished applications (as opposed to
small or prototype applications), and particularly in applications
that require coordinated groups of frames, editor frames with
searching, or user preference dialogs.
Running MrEd and Developing MrEd Applications
---------------------------------------------
MrEd 100 is more consistent with MzScheme than previous releases. The
default language for MrEd 100 is the same as MzScheme's default
language. In contrast, MrEd 53's language had different
case-sensitivity and cond-fallthrough behavior. Command-line handling
for MrEd 100 is nearly the same as for MzScheme; the only difference
is that MrEd executes `(graphical-read-eval-print-loop)' on startup
instead of `(read-eval-print-loop)'. MrEd 100 programmers do not need
to understand units and collections to implement a simple GUI
application.
MrEd's `graphical-read-eval-print-loop' implements a rather primitive
REPL, unlike the relatively useful REPL provided by the old MrEd
toolbox-framework combination. MrEd 100 provides no replacement for
the old REPL. Instead, DrScheme 100 provides a REPL that matches
MrEd's language exactly.
Porting to MrEd 100
-------------------
The remainder of this document provides an overview of MrEd 100 with
notes for porting MrEd 53 applications. Section 0 describes a few
highlights of the MrEd 100 revision. Section 1 shows the new
interface/class hierarchy for windows and a few other parts of the
toolbox. Section 2 lists the methods of the new interfaces and
classes. Section 3 lists the complete, new set of MrEd procedures,
showing the arguments for selected new procedures. Section 4 provides
a mapping from the old `wx:const-XXX' constants to the new
symbols. Finally, Section 5 lists some of the small, relatively
subtle, and potentially confusing changes in MrEd 100 (similar to
changes normally listed in the HISTORY notes).
Further Details
---------------
See plt/notes/mred/MrEd_100.txt in the PLT distribution for further
details.
----------------------------------------------------------------------

View File

@ -1,89 +1,4 @@
******************
* MrEd 100 *
******************
MrEd 100 is the successor to MrEd 53. For MrEd 100, we preserved the
underlying windowing model, but redesigned the GUI toolbox interface
to make it simpler and more Scheme-like. Every MrEd 53 program
requires substantial changes to run in MrEd 100.
The revised interface makes MrEd more accessible to new users: class
and method names are more consistent; useless and redundant methods
have been eliminated; and methods check their arguments more
precisely. Key portions of the documentation have been re-written,
and a new help system called "Help Desk" makes locating information
much easier than before.
The implementation behind the revised interface is reliable. Whereas
previous versions of MrEd were plagued by bugs and inconsistently
implemented features, the new interface is consistently implemented
across platforms and thoroughly tested. Of course, bugs will always
slip through, but MrEd 100 is far more robust than its predecessors as
a result of a cleaner implementation and a new testing process.
New Application Architecture
----------------------------
MrEd 53 comprised two parts:
* a core toolbox (containing names prefixed with `wx:') that was too
primitive for real programming (notably, no geometry management);
and
* an application framework (containing names prefixed with `mred:')
that provided crucial functionality (notably, windows with geometry
management) but also much more, making it too heavyweight for
simple GUI programs.
For MrEd 100, we moved the boundary between the core toolbox and the
application framework. The name "MrEd" now refers to only the core
toolbox, but the core toolbox now includes the most useful `mred:'
classes from the old application framework. While merging the `wx:'
and `mred:' classes, we eliminated the prefixes.
All of the core toolbox classes are built into the MrEd executable.
The old `mred:' classes that are not part of the core toolbox have
been moved into a separate framework library. The framework library is
designed for use in large and polished applications (as opposed to
small or prototype applications), and particularly in applications
that require coordinated groups of frames, editor frames with
searching, or user preference dialogs.
Running MrEd and Developing MrEd Applications
---------------------------------------------
MrEd 100 is more consistent with MzScheme than previous releases. The
default language for MrEd 100 is the same as MzScheme's default
language. In contrast, MrEd 53's language had different
case-sensitivity and cond-fallthrough behavior. Command-line handling
for MrEd 100 is nearly the same as for MzScheme; the only difference
is that MrEd executes `(graphical-read-eval-print-loop)' on startup
instead of `(read-eval-print-loop)'. MrEd 100 programmers do not need
to understand units and collections to implement a simple GUI
application.
MrEd's `graphical-read-eval-print-loop' implements a rather primitive
REPL, unlike the relatively useful REPL provided by the old MrEd
toolbox-framework combination. MrEd 100 provides no replacement for
the old REPL. Instead, DrScheme 100 provides a REPL that matches
MrEd's language exactly.
Porting to MrEd 100
-------------------
The remainder of this document provides an overview of MrEd 100 with
notes for porting MrEd 53 applications. Section 0 describes a few
highlights of the MrEd 100 revision. Section 1 shows the new
interface/class hierarchy for windows and a few other parts of the
toolbox. Section 2 lists the methods of the new interfaces and
classes. Section 3 lists the complete, new set of MrEd procedures,
showing the arguments for selected new procedures. Section 4 provides
a mapping from the old `wx:const-XXX' constants to the new
symbols. Finally, Section 5 lists some of the small, relatively
subtle, and potentially confusing changes in MrEd 100 (similar to
changes normally listed in the HISTORY notes).
======================================================================
0. Highlights of the New MrEd Toolbox
======================================================================