HDTenEightyP/NetNews huggingface dataset:
From: zdhm06@trc.amoco.com (Donald H. Mitchell)
Subject: MCL support for MOP
Originator: zdhm06@scholar
Keywords: CLOS, MOP
Organization: Amoco Production Company, Tulsa Research
Distribution: co
Date: 29 Dec 92 21:07:48 GMT
X-Note1: mail msgid was <1992Dec29.150748@trc.amoco.com>
X-Note2: message-id generated by recnews


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?


-- 
Don Mitchell			dmitchell@trc.amoco.com
Amoco Production Company	(918) 660-4270
Tulsa Research Center
P.O. Box 3385, Tulsa, OK 74102
Newsgroups: comp.lang.lisp.mcl
From: kardank@ERE.UMontreal.CA (Kardan Kaveh)
Subject: Automatic evaluation of expressions in class slots
Organization: Universite de Montreal
Date: Sat, 2 Jan 1993 04:55:08 GMT

I would like to be able to place expressions in class slots, and have them
transparently evaluated when accessed.  Is there a standard way of doing
this?  Do I need the Meta Object Protocol for this?

For example, I would like behaviour similar to the following:

(defclass foo ()
  ((slot-1 :accessor slot-1)))

(defvar x (make-instance 'foo))

(setf (slot-1 x) '(+ 2 2))

(slot-1 x)  -->  4
(slot-value x 'slot-1)  -->  4
(slot-expression x 'slot-1)  --> '(+ 2 2)

Thanks,

Kaveh

-- 
------------
Kaveh Kardan                                       kaveh@taarna.UUCP
Systeme Taarna                                     kardank@eole.umontreal.qc.ca
Montreal Quebec Canada                             (514)844-8448
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)
Distribution: co
Date: 26 Dec 92 04:38:46 GMT
X-Note1: mail msgid was <1992Dec26.043846.13175@netcom.com>
X-Note2: message-id generated by recnews

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,comp.lang.clos,comp.lang.lisp
From: omar@kahlua.cc.vanderbilt.edu (Omar Patino-Siliceo)
Subject: Taboo: MCL 2.0 and PCL (March 92 or newer)
Followup-To: comp.lang.lisp.mcl
Keywords: MCL, PCL, MOP
Reply-To: omar@kahlua.cc.vanderbilt.edu
Organization: Vanderbilt University
Distribution: co
Date: 29 Dec 92 16:38:37 GMT
X-Note1: mail msgid was <1992Dec29.163837.15118@news.vanderbilt.edu>
X-Note2: message-id generated by recnews

Season's Greetings to all!

I've been using Allegro CL 3.X plus PCL for quite some time. I just bought MCL  
2.0 and found out that it does not [yet] fully implement the meta object  
protocol (neither does PCL but I can live with what PCL currently offers).

My application requires the use of the class option :metaclass in the macro  
defclass, and the dynamic change of class definitions.

Has anybody built (ported) PCL to MCL 2.0? I'm spoiled using UNIX systems. All  
I had to do (under that kind of environment) in order to compile PCL was to  
modify a few lines (subdirectory paths and such) and run a make command. I have  
no idea how to do it in MCL. Any help that you can provide will be greatly  
appreciated.

--
   __    _            _
  /  \	| |  Omar Patino-Siliceo * Computer Ctr. Vanderbilt Univ. *  Box 1375,
 |    | |-   Sta. B. Nashville, TN 37235.  ***   ``Research is what I am doing
 _\  /_ | \  when I don't know what I'm doing''          --- Wernner von Braun
From: hall@allegra.att.com (Bob Hall)
Newsgroups: comp.lang.lisp.mcl
Subject: speed data point
Date: 23 Dec 92 18:26:21 GMT

I have a lot of experience running the same lisp program both on a IIfx (36Mb)
under MCL and on a Sparc II (64Mb) under UNIX/Franz Allegro 4.1.  The Sparc can
only consistently produce a factor of 2 speedup.  (Once in a while 3x but
never more and sometimes only 1.5x).  This is over many different types of
cpu-bound application.  When I start doing disk i/o, the IIfx slows somewhat
but that probably reflects more about the IIfx disk i/o architecture
than the lisp speeds.

-- Bob
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
Distribution: co
Organization: The Portal System (TM)
X-Note1: mail msgid was <72561@cup.portal.com>
X-Note2: message-id generated by recnews

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: straz@cambridge.apple.com (Steve Strassmann)
Newsgroups: comp.lang.lisp.mcl
Subject: FFT in clmath
Date: 22 Dec 92 03:14:42 GMT

Thanks to John Lewis (zilla@ccrl.nj.nec.com) for pointing
out the aforementioned CL Math library contains discrete
fourier transform code, cleverly labeled dft.lisp.
Newsgroups: comp.lang.lisp.mcl
From: John Matthews <jm@vcd.hp.com>
Subject: Stand alone Lisp
X-Useragent: Nuntius v1.1a5
Date: Mon, 28 Dec 1992 22:21:06 GMT
Organization: Hewlett-Packard
From: stephen_ervin@venus.gsd.harvard.edu ("Stephen Ervin")
Newsgroups: comp.lang.lisp.mcl
Subject: set info-macl nomail
Date: 22 Dec 92 02:03:43 GMT

REGARDING                set info-macl nomail
is there an equivalent to 'set nomail' to suspend messages from this list for
the duration?
please do, if possible.
thx
servin@gsd.harvard.edu
From: stro@merl.com ("strohecker")
Newsgroups: comp.lang.lisp.mcl
Subject: seeking mac hacker media nut
Date: 21 Dec 92 02:02:00 GMT
Organization: Mitsubishi Electric Research Laboratories, Inc.
	Cambridge, Massachusetts, USA

Wanted: 
part-time undergrad crackerjack Macintosh Common Lisp-er, into QuickTime, with
a craving to get into just about every aural/visual package there is: MacroMind
Director, Life Forms, Swivel 3D, etc., etc. 

Contact: 
Carol Strohecker, Research Scientist
Mitsubishi Electric Research Laboratories
201 Broadway, Cambridge  MA  02139
617-621-7517, FAX 617-621-7550
From: zdhm06@trc.amoco.com (Donald H. Mitchell)
Subject: MCL support for MOP
Originator: zdhm06@scholar
Keywords: CLOS, MOP
Organization: Amoco Production Company, Tulsa Research
Date: Tue, 29 Dec 1992 21:07:48 GMT


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?


-- 
Don Mitchell			dmitchell@trc.amoco.com
Amoco Production Company	(918) 660-4270
Tulsa Research Center
P.O. Box 3385, Tulsa, OK 74102
From: kanefsky@halcyon.com (Steve Kanefsky)
Subject: Re: Re2: speed freak buys farm?
Organization: The 23:00 News and Mail Service
Date: Sat, 26 Dec 1992 22:06:36 GMT

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: barmar@think.com (Barry Margolin)
Newsgroups: comp.lang.lisp
Subject: Re: sorting arrays
Date: 30 Dec 1992 05:12:38 GMT
Organization: Thinking Machines Corporation, Cambridge MA, USA
NNTP-Posting-Host: gandalf.think.com

In article <C01pCC.MFK@acsu.buffalo.edu> lewocz@acsu.buffalo.edu (John S. Lewocz) writes:
>What would be the most effiecient way to sort a two-dimensional
>array using an arbitrary column
>as a key?

I can't vouch for it being "the most efficient way", but here's a
reasonably simple way that seems like it shouldn't be too inefficient.
Make a list or vector of displaced arrays, where each elements is a vector
displaced to a row of the original array.  Sort this using :KEY #'(LAMBDA
(X) (AREF X COLUMN-NUMBER)), and then combine the results into a new 2-D
array.

Some of the sources of inefficiency in this may be all the references to
displaced arrays and the copying of the elements into the result.  You can
avoid the former (at the cost of more consing and copying) by copying the
rows into new vectors at the beginning instead of using displaced arrays.

If you need to avoid all copying, then you'll have to do the sorting in
place, and there's nothing built into Lisp (Common Lisp, at least) to do
this, so you'll have to write your own sort routine.

-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar
Newsgroups: comp.lang.lisp
From: agnar.aamodt@ifi.unit.no (Agnar Aamodt)
Subject: Re: Origins of LISP and relation with Fortran
Followup-To: comp.lang.lisp
Organization: University of Trondheim, Department of Informatics
Date: Wed, 23 Dec 92 12:26:19 GMT

In article <1992Dec22.134446.170228@circe.fr>, girou@circe.fr (Denis Girou)
wrote:

>   Some years ago, one of my teacher says during a lesson that when John
> McCarthy, around 1956, think to that will become LISP, he only want to write
> an extension to the Fortran language (Fortran I or Fortran II at this time)
> to manipulate lists structures. It would be only later that he thought to a
> real new language, completely independant of Fortran.
> 
>   Is there somebody who can confirm or infirm this fact, and can give me a
> bibliographic reference? (it's for an article about Fortran that I have to
> write...) 
> 

The primary need was, I think, for an algebraic list procesing language,
and Fortran was one of the candidates for a start-out platform. Fortran
List Processing Language (FLPL) was developed by other poeple than
McCarthy, who decided to set out for a new language.

A reference:
  McCarthy, J.: 
  History of Lisp. ACM SIGPLAN Notices, Vol.13, no.8, August 1978, pp 5-11.

Agnar Aamodt

---------------------------------------------------------------------------
   Agnar Aamodt  (Ph.D)          |        Email: agnar@ifi.unit.no
   Department of Informatics     |        Fax:   +47-7-591733
   College of Arts and Sciences  |    
   University of Trondheim       |        Phone: (office): +47-7-591838
   N-7055 Dragvoll               |        Phone: (secr.):  +47-7-591840
   NORWAY                        |        Phone: (home):   +47-7-977365
---------------------------------------------------------------------------
   
Newsgroups: comp.lang.lisp
From: davel@cbnewsl.cb.att.com (David Loewenstern)
Subject: Re: a problem with reading a stream
Organization: AT&T Bell Labs, Whippany, NJ
Date: Mon, 28 Dec 1992 19:10:19 GMT

... On Sun, 27 Dec 1992 01:45:28 GMT, rs69@cunixb.cc.columbia.edu (Rong Shen) said:
} Hi experts:

Barmar must be on vacation... so a non-expert will have to handle it 8^).

}         I am trying to write a function that asks a path to a file
} from the user and opens the file to read. There is no problem with
} opening the file, but when it tries to read, the interpreter
} complains.


} (defun read-path ()
}   (format t "Enter the path to the file to read, e.g. /tmp/foo/faq.txt")
}   (setf file-path-name (read-line))
}   (setf what-stream (open file-path-name :direction :input)) ; ok

}   (read what-stream nil 'This-is-the-end-of-the-world)) ; This line has error;

Let me guess: faq.txt doesn't contain an s-expression?  Remember, READ
reads an s-expression.  You may want READ-LINE, or READ-CHAR.

Also: it's usually bad style to use OPEN.  Use WITH-OPEN-FILE instead.

(WITH-STANDARD-DISCLAIMERS
   (MAKE-INSTANCE 'Signature
         :NAME      "David Loewenstern"
         :LOCATIONS '((INTERNET "David.Loewenstern@att.com")
                      (INTERNET "loewenst@paul.rutgers.edu")
                      (AT&T "201-386-6516"))
	 :AFFILIATIONS '("AT&T Bell Labs" "Rutgers, Dept of CS")
         :SILLY-QUOTE (UNIX:SHELL "/usr/bin/fortune"))))
From: kramer@cme.nist.gov (Tom Kramer)
Newsgroups: comp.lang.lisp
Subject: Re: Use of format or pprint
Date: 24 Dec 92 17:13:19 GMT
Distribution: usa
Organization: National Institute of Standards and Technology, Gaithersburg, MD

In article <1992Dec17.173558.18552@grace.boeing.com> ski@atc.boeing.com writes:

>(setq a "org")
>(setq b 
>  "chris dan ski elaine nick tony charlie jeff jeffw bruce mike kim kelly")
>or (setq b '("chris" "dan" "ski"...))
>
>What format string
>(format "???" a b)
>will print them in this format
>
>org:	chris dan ski elaine nick tony charlie
>	jeff jeffw bruce mike kim kelly

Using (setq b '("chris" "dan" "ski" ...)) the following works

(format t "~A:~{~8T~A~^ ~A~^ ~A~^ ~A~^ ~A~^ ~A~^ ~A~^~%~}" a b)

The first ~A uses up a.
The ~{...~} is processed repeatedly on elements of b until all are used.
The 8T gets to the correct column.
The ~^ are so processing will stop without error regardless of the
length of b.

I wasted an hour on that, but I learned something. Merry Christmas!
This worked in Allegro Common LISP on a SUN4.

Tom Kramer
kramer@cme.nist.gov
Newsgroups: comp.lang.lisp
From: cracauer@wavehh.hanse.de (Martin Cracauer)
Subject: Address of 'Lisp Pointers', perhaps Germany
Organization: Private UUCP, Martin Cracauer, Norderstedt, Germany
Date: Mon, 21 Dec 92 13:16:18 GMT

Sorry for filling up this newsgroup, but I failed to get 'Lisp
Pointers' (published by ACM SIGPLAN) in Germany.

Could somebody mail me the e/paper-mail address of it (FAX would be
ok.k, too) ?

Thanks.


-- 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin Cracauer,    cracauer@wavehh.hanse.de
Waldstrasse 200, W-2000 Norderstedt, Germany
Tel.: +49 / 522 18 29, Fax.: +49 / 522 85 36
From: kramer@cme.nist.gov (Tom Kramer)
Newsgroups: comp.lang.lisp
Subject: Re: How to send out ANSI code ?
Summary: example LISP code for sending out ANSI code
Date: 23 Dec 92 14:14:50 GMT
Organization: National Institute of Standards & Technology, Gaithersburg, MD

In article <1992Dec17.113424.7819@debbie.cc.nctu.edu.tw>, GHOST@cc.nctu.edu.tw (Michael Huang) writes:
> 
> 
> 
> 
> When I want to use the ANSI code to control the terminal position,
> I tried the following program
> 
>    (prog () (code-char 27) (princ "[5,5H"))
> 
> The result is that 
>   
>    #\Esc
>    [5,5H
> 
>  How to send out the ANSI code ?

Here are two examples of functions I use to send out ANSI code. The first
one hides the window I am using. The second one resizes it. Both work
from Allegro Common LISP running on a SUN3 or SUN4 with the Sunview
window system. I do not know if they will work in other situations.

(defun window-hide (portname)
  (princ (concatenate 'string (princ-to-string (code-char 27)) "[6t") portname)
  (finish-output portname))

(defun window-resize (portname corner_x corner_y x_size y_size)
  (princ (concatenate 'string (princ-to-string (code-char 27))
                    "[4;" (princ-to-string y_size) ";"
                    (princ-to-string x_size) "t") portname)
  (princ (concatenate 'string (princ-to-string (code-char 27))
                    "[3;" (princ-to-string corner_y) ";"
                    (princ-to-string corner_x) "t") portname)
  (finish-output portname))

Something similar should work for sending other ANSI codes.

Tom Kramer
kramer@cme.nist.gov
Newsgroups: comp.lang.lisp
From: Howard Oakley <Howard@quercus.demon.co.uk>
Subject: Speed freak seeks help
X-Xxmessage-Id: <A75E35B735010916@quercus.demon.co.uk>
X-Xxdate: Wed, 23 Dec 92 15:26:47 GMT
Organization: EHN & DIJ Oakley
X-Useragent: Nuntius v1.1.1d12
Date: Wed, 23 Dec 1992 15:19:05 GMT

I am running some pretty heavy Common Lisp, which currently takes over 1
week to run on a Mac Quadra 950 (fast 68040) using MCL 2.0.  Can anyone
please suggest a hardware solution (cost is accepted!) which will run at
10-20 times the speed?

It has been suggested that a TI Explorer might help - could anyone
suggest a good Explorer configuration (I currently work in 6 megs of RAM
for MCL, but it still does plenty of GCing) and whether this is likely to
give the sort of speed increase that I desire, please?

Howard Oakley, EHN & DIJ 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: will@aristotle.ils.nwu.edu (William Fitzgerald)
Newsgroups: comp.lang.lisp
Subject: Re: Use of format or pprint
Date: 21 Dec 92 14:38:56 GMT
Distribution: usa
Organization: The Institute for the Learning Sciences
X-Newsreader: Tin 1.1 PL5

Chris Kacoroski,none (ski@atc.boeing.com) wrote:
: Hi,
: 
: I need help in figuring out a format statement.
: 
: 
: What format string
: 
: 
: will print them in this format
: 
: org:	chris dan ski elaine nick tony charlie
: 	jeff jeffw bruce mike kim kelly
: 

See the FAQ [3-14], which gives a template for this type of printing.
Newsgroups: comp.lang.lisp
From: york@oakland-hills.lucid.com (Bill York)
Subject: Re: Use of format or pprint
Reply-To: York@Lucid.COM
Organization: Lucid, Inc.
Distribution: usa
Date: 24 Dec 92 12:40:01

In article <20483@cosmos.cme.nist.gov> kramer@cme.nist.gov (Tom Kramer) writes:

   In article <1992Dec17.173558.18552@grace.boeing.com> ski@atc.boeing.com writes:

   >What format string
   >(format "???" a b)
   >will print them in this format
   >
   >org:	chris dan ski elaine nick tony charlie
   >	jeff jeffw bruce mike kim kelly

   Using (setq b '("chris" "dan" "ski" ...)) the following works

   (format t "~A:~{~8T~A~^ ~A~^ ~A~^ ~A~^ ~A~^ ~A~^ ~A~^~%~}" a b)
   I wasted an hour on that, but I learned something. Merry Christmas!

To paraphrase the old TECO joke:

"FORMAT.  A moment of convenience.  A lifetime of regret."
From: theodore-michael@yale.edu (Michael Theodore)
Newsgroups: comp.lang.lisp
Subject: Dictionary sorted into parts of speech?
Date: 29 Dec 1992 14:45:59 -0500
Organization: Yale University Science & Engineering UNIX(tm), New Haven, CT 06520-2158
NNTP-Posting-Host: minerva.cis.yale.edu

Is there an English dictionary out there that's sorted by the parts of
speech? Would be even better if said sorting was into some kind of Lispian
data stucture, and better still if the whole thing were FTP-able!

        Thanks,
        Michael

-- 
Practice random acts of randomness.........
		theodore-michael@cs.yale.edu
Newsgroups: comp.lang.lisp
From: krulwich@zowie.ils.nwu.edu (Bruce Krulwich)
Subject: Re: sorting arrays
Organization: The Institute for the Learning Sciences, Evanston, IL
Date: Wed, 30 Dec 1992 19:09:15 GMT


lewocz@acsu.buffalo.edu (John S. Lewocz) writes:

> What would be the most effiecient way to sort a two-dimensional
> array using an arbitrary column as a key?

I think that the following solution is pretty efficient, since it doesn't
require copying row data during the sort, or creating loads of new arrays.

It works by sorting a seperate vector that contains numbers of rows of the
original array.  This way the SORT function just sorts an integer vector,
which should be pretty quick, using a KEY that maps onto the array being
sorted.  Then we just copy the data into the appropriate rows of a new array.
Consing is limited to making one vector the side of the row-dimension of the
original array, and then making a new array to return.  

** Note that this is _not_ a destructive sort (unlike CLtL SORT), but it
shouldn't be that hard to do the final copying into itself instead of into a
new array.

(defun sort-array-by-col (a c &optional (p #'<))
  "Sort rows of 2-dimensional array A by value of column C using predicate P"
  (let* ((num-rows (car (array-dimensions a)))
	 (index-vec (do ((v (make-array num-rows))
			 (i 0 (1+ i)))
			((= i num-rows) v)
		      (setf (elt v i) i)))
	 (sorted-index (sort index-vec p :key #'(lambda (r) (aref a r c))))
	 (new-array (make-array (array-dimensions a)))
	 )
    (dotimes (r (car (array-dimensions a)))
      (dotimes (c (cadr (array-dimensions a)))
	(setf (aref new-array r c)
	      (aref a (elt sorted-index r) c))))
    new-array))
	 

Enjoy!

Bruce Krulwich
krulwich@ils.nwu.edu