home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!paladin.american.edu!howland.reston.ans.net!usc!cs.utexas.edu!sun-barr!olivea!apple!goofy!cambridge.apple.com!ralex@tigger.cs.colorado.edu
- From: ralex@tigger.cs.colorado.edu (Repenning Alexander)
- Newsgroups: comp.lang.lisp.mcl
- Subject: Re: MCL size/distribution (was: MCL support for MOP)
- Message-ID: <199301102258.AA24857@tigger.cs.colorado.edu>
- Date: 10 Jan 93 22:58:27 GMT
- Sender: info-mcl-request@cambridge.apple.com
- Lines: 72
- Approved: comp.lang.lisp.mcl@Cambridge.Apple.C0M
-
- Subject: Re: MCL size/distribution (was: MCL support for MOP)
-
- >We'll probably be
- >looking into a few ways to reduce the size of MCL (though probably
- >not for 2.1).
- >1) A tree shaker..
- >2) Make the development environment be optional..
- >3) One or more shared libraries..
-
- Many systems have gone (or like to go) trough the following stages:
-
- a) Prototype
- b) Testing: Public Domain application
- c) commercial application
-
- MCL is certainly a great (if not the best) product addressing stage (a). It
- is a great environment to prototype things.
-
- In stage (b) things already become a bit more problematical. A 1.5 MB
- "hello world" despite todays improved technology doesn't fly over the
- internet. As a source for pre- commercial user testing the internet is
- an in-valuable source. However, with a memory demand starting at about
- 1.5 MB this is tricky - or lets just say impossible. That is, the size
- of your applications has an enormous impact on the testing stage.
-
- Stage (c) is even more problematic. Something Lisp users get to hear
- quite often is "you did a great prototype in Lisp now lets implement
- the application in C." This is frustrating! If my plan is to go on
- from stage (a) I don't like to loose all or more of the time I saved
- using MCL by strarting from scratch with C or C++ (please no
- programming language flames). Lisp has great potential of not only
- being a tool to prototype but also to maintain and extend
- applications. I like to have a Lisp tools that supports stages a-c and
- I don't like to be considered a fool (by non-lisp programmers) for
- using Lisp to do so.
-
- One could argue that these concerns are only temporary since RAM size
- is growing exponential, the price of RAM is decreasing, etc. This is
- only of litte comfort for users since they will always compare things
- to existing high-functionality applications like Word. After all,
- these applications probably have been created by companies like MS
- using quite powerfull programming environments as well. All I'm saying
- here is that you cannot justify extreemly large applications with
- powerfull programming environments. Switching the environment is not
- an option for me (I rather change my profession). Therefore, I can
- only hope that the MCL team appreciates a A-C market.
-
-
- A GOOD tree shaker would be my favorite. In addition to ordinary tree
- shaking it should allow me to explicitely keep/remove entities like
- symbols, documentation strings, file references, macro functions, and
- entire modules (e.g., compiler, editor, etc). The interface to the
- tree shaker should be simple. If I need to "click around" for an hour
- it's no good. I could imagine a bunch of keyword added to
- save-application (e.g., :shake-tree-p, :strip-documentation-strings,
- :keep-symbols (..) , strip-symbols (..)). That's maybe a bit naive,
- but you get the idea.
-
- >2) Make the development environment be optional..
-
- Could this be part of the shaker?
-
- >3) One or more shared libraries..
-
- This would help me to keep a large number of applications - which I
- don't. Also this fragments my application -> more files -> increased
- user confusion.
-
- So many demands, so little time ..
-
- Alex Repenning
- University of Colorado at Boulder
-