HDTenEightyP/NetNews huggingface dataset:
From: jbk@world.std.com (Jeffrey B Kane)
Newsgroups: comp.lang.lisp.mcl
Subject: Views and keystrokes
Date: 28 Dec 92 15:10:44 GMT


I've been attempting to implement my own key handlers for a new kind of
view with very little success.  These are not Fred windows or dialog
items so the limited documentation does not seem to apply.

I defined a window class and view class that is contained in within the
window.  The view (or one of it's subviews) is to handle key strokes in
a specialized manner.

I saw in the "windoids-key-events.lisp (MCL:examples)" file that you have
to define an (undocumented)

(defmethod accept-key-events ((self special-view)) t)

so that MCL knows your window wants key strokes.  The key-mixin documentation
is a bit confusing, but seems to apply only to fred-dialog-items.  The 
"add-key-handler" method seems to only deal with dialog items, not views in
general.  Any insights (so I can get on with this project) are VERY much appreciated!

     Jeffrey

;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; A simple color window
;;
(defclass special-window (window)  ; should this also inherit from key-handler-mixin?
  (default-initarg
    :color-p t))

;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; A simple view
;;
(defclass special-view (view) ; should this also inherit from key-handler-mixin?
  nil)

;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; Let MCL know we accept key strokes
;;
(defmethod accept-key-events ((self special-view)) t)

;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; define a method to beep when the user types a key
;;
(defmethod view-key-event-handler ((self special-view) char)
  "just beep if the use types a key"
  (ed-beep)
  (ed-beep))

;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; just to let us know our view exists
;;
(defmethod view-draw-contents ((self special-view))
  ;frame and color the rect
  (rlet ((r :rect
            :topleft #@(0 0)
            :bottomright (view-size self)))
    (with-fore-color *yellow-color*
      (paint-rect self r))
    (with-pen-saved 
      (set-pen-size self 2 2)
      (frame-rect self r)
      (move-to self (rref r :rect.topleft))
      (line-to self (rref r :rect.bottomright))
      (move-to self 0 (rref r :rect.right))
      (line-to self (rref r :rect.bottom) 0))))


;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; create the window and it's contained view
;;
(defvar temp-wind nil)
(defvar temp-view nil)
(setf temp-wind (make-instance 'special-window
                  :view-subviews (list (setf temp-view (make-instance 'special-view
                                                         :view-position #@(40 40)
                                                         :view-size #@(150 150))))))


;;
;; NONE of this stuff seems to have any effect
(current-key-handler temp-wind) ; returns nil
(add-key-handler temp-view temp-wind) ; seems you can only add dialog items, not views
(change-key-handler temp-wind)
(key-handler-list temp-wind) ; returns nil
(defmethod key-handler-p ((self special-view)) t) ;
From: maulsby@kauri.cs.waikato.ac.nz (David Maulsby)
Newsgroups: comp.lang.lisp.mcl
Subject: access to fred history, etc.
Date: 23 Dec 92 23:56:12 GMT

Hi Folks,

I'd like to incorporate a predictive interface with the Fred editor but
I need to be able to scan back through its history list.  Could someone
tell me how to access events other than fred-last-command.  Also, how
to decode all those numbers after the text and position args, if they
mean anything.

I would also like to co-opt the text-region outline (currently used to
mark a selection in an inactive window) and modify its graphical style,
but I find no documentation or routines relating to it.

Finally, I'll be writing a text pattern matcher that looks for tokens
like chars, words, paragraphs; types like numbers, alpha, etc; properties
like capitalization, font, etc.  I expect there must be parsers or pattern
matchers like this already out there, but I haven't found one.

Thanks in advance,
Dave Maulsby
From: Thomas_E_Morgan@cup.portal.com
Newsgroups: comp.lang.lisp.mcl,
Subject: Re: Taboo: MCL 2.0 and PCL (March 92 or newer)
Date: Tue, 29 Dec 92 15:46:09 PST
Organization: The Portal System (TM)
Distribution: world

Omar,
The July-92-PCL-1d-tar.z version of PCL on 
parcftp.xerox.com in \pub\pcl can be compiled
with MCL 2.0 final.

You need to set the autoload lisp package flag
to true, before evaluating the defsys.lisp file.

I've been using it for some months, for reasons
similar to the ones you mention.

   ...Tom M
From: Mark.Kantrowitz@GLINDA.OZ.CS.CMU.EDU
Newsgroups: comp.lang.lisp.mcl
Subject: Metering Version 2.0
Date: 1 Jan 93 06:03:51 GMT

A new version of the Metering system (code profiler) is now available
in ftp.cs.cmu.edu:/afs/cs.cmu.edu/user/mkant/Public/Lisp as the file
metering.lisp. (Be sure to cd to this directory in one fell swoop.)

This version has been tested in the following lisps:
      Macintosh Common Lisp (2.0)
      Macintosh Allegro Common Lisp (1.3.2)
      CMU Common Lisp (16d, Python Compiler 1.0 ) :new-compiler
      CMU Common Lisp (M2.9 15-Aug-90, Compiler M1.8 15-Aug-90) 
      ExCL (Franz Allegro CL 4.1 [SPARC R1] 8/28/92 14:06) :allegro-v4.1
      ExCL (Franz Allegro CL 4.0.1 [Sun4] 2/8/91)       :allegro-v4.0
      ExCL (Franz Allegro CL 3.1.12 [DEC 3100] 11/19/90) :allegro-v3.1
      Lucid Common Lisp (4.0.1 HP-700 12-Aug-91)
      Lucid Common Lisp (3.0)
      Lucid CL (Version 2.1 6-DEC-87)  
      AKCL (1.86, June 30, 1987 or later)
      Ibuki Common Lisp (Version 2, release 01.027)

The key new features are support for MCL 2.0, Franz Allegro 4.1, Lucid
4.0 and CMU CL 16d.

--mark
From: moeller@kogs26.informatik.uni-hamburg.de (Ralf Moeller)
Newsgroups: comp.lang.lisp.mcl
Subject: ptable and system 7.1 on PB 180
Date: 30 Dec 92 12:21:58 GMT


The ptable extension for MCL2.0p1 
does not seem to work with system 7.1(German) on
a Powerbook 180. The Mac cannot be shut down (-> bus error).
Is there another ptable version available?

rm

PS: Thanks for the psetf patch.
From: UK0392@AppleLink.Apple.COM (EHN & DIJ Oakley,GB,IDV)
Newsgroups: comp.lang.lisp.mcl
Subject: Re2: speed freak buys farm?
Date: 26 Dec 92 10:49:00 GMT

Michael,
 
>Have you considered using multiple Radius Rocket 33s instead of a farm of
>Quadra 950s?
 
Funnily enough, I expect to test my first Rocket early in the New Year.
However, the recent discussion on compatibility problems has rather worried me,
and future upgrading potential is also of concern.  But it is certainly
something that I shall be looking at very soon.
 
Thanks,
Howard.
From: 72110.1107@CompuServe.COM (Bruce Lester)
Newsgroups: comp.lang.lisp.mcl
Subject: AppleScript
Date: 29 Dec 92 16:17:33 GMT

Has anyone experimented with AppleScript and MCL 2.0?  If so, is there a 
simple interface callable from LISP?

Bruce Lester
From: bill@cambridge.apple.com (Bill St. Clair)
Newsgroups: comp.lang.lisp.mcl
Subject: Re: Views and keystrokes
Date: 31 Dec 92 17:06:01 GMT

>> The only problem is that you need to define a dialog-item-enabled-p
>> method for your key handler class
>
>Bill,
>  Thanks for the clue.  I saw the error message complaining that no 
>"dialog-item-enabled-p" was defined for my view class, but I assumed
>that I was on the wrong track, since I wasn't trying to define a 
>dialog item.  One last question.  After implementing the patch I get
>most key strokes, but I can only get access to a #\Tab key if I hold
>down the shift-tab combination.  Is this because the window now thinks
>that the view is a dialog item?  Below is the code that prints out
>any keys that it gets:

(method view-key-event-handler (window t)) only passes tab & return
characters to the current-key-handler if it returns true for
allow-tabs-p & allow-returns-p respectively. The default is for the
tab character to switch to another key handler and the return character
to select a default button. The easiest way to make your key handler
get these characters is with the :allow-tabs & :alow-returns initargs
(to key-handler-mixin). You can also use the set-allow-tabs &
set-allow-returns functions.

(setf temp-wind
      (make-instance 'special-window
        :view-subviews
        (list (setf temp-view
                    (make-instance 'special-view
                      :view-position #@(40 40)
                      :view-size #@(150 150)
                      :allow-tabs t
                      :allow-returns t)))))
From: bill@cambridge.apple.com (Bill St. Clair)
Newsgroups: comp.lang.lisp.mcl
Subject: Re: MEMBER bug!
Date: 30 Dec 92 22:15:09 GMT

At 11:12 AM 12/25/92 +0100, Rainer Joswig wrote:
>Hi there,
>
>Ralf Moeller (these guys even use MCL during their Christmas holidays - amazing)
>reported a fatal bug in MCL.
>
>The combination of :test-not and :key parameters immediately **crashes** the Mac.
>
>(member 1 '((1) (2)) :key #'first :test-not #'eql)

Apparently noone has done this before. The bug has been there
for I don't know how long. I'll send a patch to anyone who requests
it. Ask for "member-patch".
From: michaelg@Xenon.Stanford.EDU (Michael Greenwald)
Subject: Re: Speed freak needs help
Organization: CS Department, Stanford University, California, USA
Distribution: co
Date: 23 Dec 92 19:40:41 GMT
X-Note1: mail msgid was <michaelg.725139641@Xenon.Stanford.EDU>
X-Note2: message-id generated by recnews

moon (David A. Moon) writes:

>							Symbolics still makes 
>Lisp machines, but again without having measured them I think you would find 
>performance on the latest Symbolics machine similar to or less than the 
>Quadra.  (The Symbolics clock rate is half the Quadra clock rate, but the 
>architecture is not much more than twice as efficient.)

I don't know the numbers, this is a non-rhetorical question: How does
the Symbolics single float implementation stack up against the Quadra?
(I'm assuming that the Quadra conses its floats, while the LispM uses
immediates).  If (and it's a big "if"), the application in question is
float-intensive, and the GC is taking a significant part of the
overhead, then perhaps the Symbolics machines (or any machine with
immediate single floats) can give a reasonable performance boost.

But for a factor of 10 or 20, the answer (if any) probably lies in:

>Are you sure the algorithm can't be optimized?  Sometimes that's the fastest 
>and cheapest way to get more speed.  But maybe you already tried that.
From: kanefsky@halcyon.com (Steve Kanefsky)
Subject: Re: Re2: speed freak buys farm?
Organization: The 23:00 News and Mail Service
Distribution: co
Date: 26 Dec 92 22:06:36 GMT
X-Note1: mail msgid was <1992Dec26.220636.4778@nwnexus.WA.COM>
X-Note2: message-id generated by recnews

In article <725367136.8306423@AppleLink.Apple.COM> UK0392@AppleLink.Apple.COM (EHN & DIJ Oakley,GB,IDV) writes:
>Michael,
> 
>>Have you considered using multiple Radius Rocket 33s instead of a farm of
>>Quadra 950s?
> 
>Funnily enough, I expect to test my first Rocket early in the New Year.
>However, the recent discussion on compatibility problems has rather worried me,
>and future upgrading potential is also of concern.  But it is certainly
>something that I shall be looking at very soon.

DayStar has a 33mhz 68040 PowerCache coming out in the next few weeks (a
40mhz version is due out sometime in '93), that's guaranteed to be as
compatible as the Quadra itself (their 68030 accelerators are guaranteed
100% compatible), and it can be swapped between many different Mac models
with different adapters.  You can upgrade to a faster model for just the
difference in price at the time of the upgrade. (Compare that to Apple's
IIci->Quadra 700 upgrade, which is only $300 less than a brand new Quadra
700). There's an optional 128K cache that should boost CPU-intensive
tasks above Quadra 950 levels.  A IIci with one of these should cost about
as much as a Quadra 700 (far less than a 950) and the upgrade to a 40mhz
68030 will be relatively inexpensive. 

You might also wait for the new Mac models to be announced in January. 
Rumor has it that one of the new models will be a less-expandable version
of the Quadra 950, to be called the Quadra 800.

--
Steve Kanefsky
From: mark@cambridge.apple.com
Newsgroups: comp.lang.lisp.mcl
Subject: MCL 2.0 Patch 2 Pre-release
Date: 1 Jan 93 16:26:47 GMT

Hello MCL 2.0 users--

We have put together a second patch for Macintosh Common Lisp 2.0. This
patch fixes a number of mostly minor bugs.  Here are descriptions of a few
of them, from the documentation file:

        ; Fixed some problems printing on Imagewriter printers.

        ; LABELS wasn't consistent about "parallel" binding order in some cases.

        ; EQUALP hash tables no longer error with CLOS instances as keys.

        ; Fixed a kernel bug that pushed the wrong stuff on the stack
        ; when a function had required, optional, rest, & keyword args
        ; and a value was not specified for all of the optionals.

        ; (fround 3) no longer signals an error.

Instead of sending this off to a small number of beta testers, we're making
this patch generally available for testing. It has passed our internal test
suites, and many of the constituent fixes have been in use for some time,
so this pre-release feels reasonably safe. Still, it *is* a pre-release
(version 0.6) -- you should not install this patch unless you can live with
the possibility that it contains bugs.

If you would like to participate in this testing, simply download (via
anonymous ftp) these files from cambridge.apple.com:

        pub/mwp/test-p2/mcl2.0p2.fasl.hqx
        pub/mwp/test-p2/mcl2.0p2.doc.hqx

These files are in BinHex format. The latter (".doc") file contains
instructions for installing the patch and also brief descriptions of the
problems it addresses. You must install patch 1 before you install patch 2.
Patch 1 is available as:

        pub/MCL2/patches/mcl2.0p1.fasl.hqx

After you've downloaded the patch, please send email to me
(mark@cambridge.apple.com), containing:

        your name and email address 
                (so I can inform you in case of a problem with the patch);
        a description of your Macintosh 
                (so I know how broad our test coverage is).

If all goes well, I'll send mail in a couple of weeks officially releasing
Patch 2. At that point you can download the official copy, or update the
patch's version resource using ResEdit.

Thanks for your help. Happy New Year!

Mark Preece
Apple ATG East.
From: straz@cambridge.apple.com (Steve Strassmann)
Newsgroups: comp.lang.lisp.mcl
Subject: Speed freak needs help
Date: 23 Dec 92 18:00:45 GMT

>Date: 23 Dec 92 14:46 GMT
>From: UK0392@AppleLink.Apple.COM (EHN & DIJ Oakley,GB,IDV)
>Subject: Speed freak needs help
>To: INFO-MCL@CAMBRIDGE.APPLE.COM
>
>it is raw Lisp power that I seek (and we do accept that this will cost).

I'll just add to what Moon said: for raw lisp speed, the top of the line
is probably a CM-5 running *Lisp (a parallel dialect of Common Lisp).
There's a *Lisp simulator on the MCL cd, in case you have a friend with
a spare Connection Machine handy.

More realistically, you should probably contact the major unix Lisp
vendors (Lucid, Franz, Harlequin, ILOG, and Ibuki) and see if their
implementations run on this week's fastest/cheapest Unix RISC station 
(probably HP 700, Decstation, or IBM RS/6000).
Newsgroups: comp.lang.lisp.mcl
From: hauser@netcom.com (Michael Hauser)
Subject: Re: speed freak buys farm?
Summary: how about multiple Radius Rocket 33s?
Organization: Netcom - Online Communication Services  (408 241-9760 guest) 
Date: Sat, 26 Dec 1992 04:38:46 GMT

Have you considered using multiple Radius Rocket 33s instead of a farm of
Quadra 950s? The horsepower is the same but the Rockets would have the
advantage of much lower cost and faster data transfer between processors
(using RocketShare). You should be able to use several Rockets per host
Mac, depending on the number of slots and power supply.

Michael Hauser


Newsgroups: comp.lang.lisp.mcl
From: jm@vcd.hp.com (John Matthews)
Subject: Stand alone Lisp, try#2
Organization: Hewlett-Packard
X-Useragent: Nuntius v1.1a5
Distribution: co
Date: 28 Dec 92 23:00:33 GMT
X-Note1: mail msgid was <Bzzrwx.E2G@vcd.hp.com>
X-Note2: message-id generated by recnews

Sorry about the blank notes, I'm having a few problems with my
news server.

I am interested in 1) writing some prototype/experimental
stand-alone programs, such as init's, cdev's etc...
and 2) prototyping new modules within
my existing large C++ programs .
Since these are prototypes, I'm more concerned about
minimizing my development time than I am with
time or memory efficiency. Thus I would like to use
a dynamic language such as Lisp, with it's automatic
garbage collection and incremental compilation
abilities.

I've tried contacting (by phone message) the developers
of MacScheme, but have received no replies.

The current Macintosh Lisp implementations I know
about all require an application environment in which
to run. While this won't work for wish #1 above,
it might work for wish #2 IF I can do an application
context switch between my program and the Lisp
environment, combined with some foriegn function
library.

Any replies to #1 or #2 above posted to this group
would be appreciated.

John Matthews
Hewlett-Packard
Newsgroups: comp.lang.lisp.mcl
From: dtschett@saims.skidmore.edu (donna tschetter)
Subject: MicroCom Modem with Mac?
Organization: Skidmore College, Saratoga Springs NY
X-Newsreader: TIN [version 1.1 PL6]
Date: Tue, 22 Dec 1992 18:58:59 GMT



I have pruchased a MicroCom Modem 9600 Baud and do not know the
Macintosh configuration.  Help!!!  Will the setting for ProCom or 
HyperAccess work?

Any ideas?  Any Microcom users with manual?

e-mail to me, please.
From: UK0392@AppleLink.Apple.COM (EHN & DIJ Oakley,GB,IDV)
Newsgroups: comp.lang.lisp.mcl
Subject: still checking out farms
Date: 24 Dec 92 16:04:00 GMT

Friends,
 
1.  A little parenthetical clarification on the genetic programming business:
 
Why all this eval-ing (or, to be more accurate, fast-eval-ing - a cut-down and
faster route provided by Koza)?  Well, the program actually generates loads of
Lisp S-expressions which are *not* known a priori.  It generates a load (50 -
5000) randomly at the start of a run, and then manipulates them during a run,
by crossing over segments of them to generate new S-expressions, which then
have to be fast-evaled.  Normally, as far as I am aware, there is no way of
avoiding all this fast-eval-ing, since none of the S-expressions is known a
priori, and all are generated and used on the fly.  Any bright ideas are always
welcome, though!
 
2.  A little price comparison:
 
I have a friend who recently bought two of the new HP 700 series workstations.
In the UK, they cost =L40 000 apiece, to which you have to add the cost of
Lucid, etc.  Prices for 13 x Quadra 700, or 10 x Quadra 950, or 25 x Duo 230,
or 50 x Classic II - having roughly the same total CPU power, and each suitably
configured for 'farming' - are about =L45 000 after discount.  Fortunately,
power consumption and space do not come into the calculation for us!
 
Thanks again to all those who have replied,
 
Howard.
Howard Oakley,                      * Howard@quercus.demon.co.uk
EHN & DIJ Oakley, Brooklands Lodge, * AppleLink UK0392
Park View Close, Wroxall, Ventnor,  * CompuServe 70734,120
Isle of Wight UK PO38 3EQ           * Tel +44 983 853605, fax 853253
From: bill@cambridge.apple.com (Bill St. Clair)
Newsgroups: comp.lang.lisp.mcl
Subject: Re: MCL support for MOP
Date: 31 Dec 92 16:07:15 GMT

At  9:07 PM 12/29/92 +0000, Donald H. Mitchell wrote:
>I saw an article in the lisp newsgroup that had one phrase that worried me.
>I'm considering using MCL for a large project that I've been doing on
>a set of Symbolics ivory boards.  I want to be certain that MCL will
>support my needs.
>
>That project requires the ability to define new metaclasses and 
>use them with defclass;
>it further requires the ability to define new methods for that metaclass for 
>direct-slot-definition-class, effective-slot-definition-class, and
>compute-effective-slot-definition;
>it requires the ability to create subclasses of standard-slot-definition
>to add "facets" to slots (really slots on the slots); and finally,
>to support the above, we define subclasses of standard-direct-slot... and
>standard-effective-slot...
>
>Does MCL support programmers making these modifications?

No. MCL does allow you to subclass standard-class and specify a :metaclass
to defclass, but it does not have the standard-slot-definition, standard-direct-slot, or standard-effective-slot classes, nor
does it support the direct-slot-definition-class,
effective-slot-definition-class, or compute-effective-slot-definition
generic functions. Adding more MOP support to MCL is on my list of
things to do, but it's not very near the top of the list so I'm not
likely to do it soon.

You may be able to do what you want with PCL. I have not tried PCL
with MCL 2.0 final, but Thomas Morgan said that the newest version
works:

---------------------------------------------------------------------

To: info-mcl
From: Thomas_E_Morgan@cup.portal.com
Newsgroups: comp.lang.lisp.mcl
Subject: Re: Taboo: MCL 2.0 and PCL (March 92 or newer)
Date: 29 Dec 92 23:46:09 GMT
Organization: The Portal System (TM)

Omar,
The July-92-PCL-1d-tar.z version of PCL on 
parcftp.xerox.com in \pub\pcl can be compiled
with MCL 2.0 final.

You need to set the autoload lisp package flag
to true, before evaluating the defsys.lisp file.

I've been using it for some months, for reasons
similar to the ones you mention.

   ...Tom M
From: UK0392@AppleLink.Apple.COM (EHN & DIJ Oakley,GB,IDV)
Newsgroups: comp.lang.lisp.mcl
Subject: Speed freak needs help
Date: 23 Dec 92 14:46:00 GMT

Friends,
 
I hate to say this, but we are now running into a speed problem with MCL and a
Quadra 950.  It is of our own making, as I will explain, but I am urgently
seeking a means of running pretty standard Common Lisp at 10-20 times greater
speed than MCL 2.0 on a Quadra 950 36/400!  Pretty GUIs are immaterial, and not
used - it is raw Lisp power that I seek (and we do accept that this will cost).
[Having said that, this does not mark a departure from MCL for 99% of our work,
and I am delighted to see that MCL is starting to get the recognition that it
deserves (congrats, MCL team!).]
 
The reason is that we are starting to use John Koza's incredible Genetic
Programming (mail me if you have not heard of this, and I will send you a list
of refs. etc.) to optimise stack filters and other things which require
thousands of iterations of thousands of iterations of thousands of iterations.
Currently, one decent run takes over week on a Quadra 950, even after some
serious tuning of code.  We are committed to using Lisp, and other languages
need not apply.
 
One option that I am thinking of is using a farm of Quadras, but it would be
much neater if we could simply move our code onto another platform.
 
John Koza extols TI Explorers, but after finally tracking down someone who
claims to have a small number of new Explorer systems, I am not sure whether we
would see anything like the necessary acceleration, and the systems are not
cheap.  Suggestions as to whether an Explorer might suffice would be welcome
(and rough estimates on configuration would be even neater - given that the
code runs OK in 6 meg with MCL, but is clearly doing a lot of GC then).
 
Happy Christmas!
Howard.
Howard Oakley,                      * Howard@quercus.demon.co.uk
EHN & DIJ Oakley, Brooklands Lodge, * AppleLink UK0392
Park View Close, Wroxall, Ventnor,  * CompuServe 70734,120
Isle of Wight UK PO38 3EQ           * Tel +44 983 853605, fax 853253
From: gwer1@cislabs.pitt.edu (Gerhard Werner)
Newsgroups: comp.lang.lisp.mcl
Subject: PowerBook
Date: 29 Dec 92 18:03:01 GMT

I have some application programs (Lisp and C) which were written on
system 6.07. 	I can run them on a MacII with system 7 installed simply by re-booting with a system 6.07 disk. But the Powerbook (170) does not accept
this disk (it comes with the error message that it wont run with 6.07).
Short of having to update the old programs, is there some short cut that
would enable me to boot the Powerbook with another system disk ?
Gerhard Werner
Newsgroups: comp.lang.lisp.mcl