HDTenEightyP/NetNews huggingface dataset:
From: straz@cambridge.apple.com (Steve Strassmann)
Newsgroups: comp.lang.lisp.mcl
Subject: Mouse location
Date: 23 Jul 92 17:41:30 GMT
Full-Name: Steve Strassmann
Original-To: jipan@gmuvax2.gmu.edu (Jiqian Pan)
Original-Cc: info-mcl

>Date: Thu, 23 Jul 92 11:14:28 -0400
>From: jipan@gmuvax2.gmu.edu (Jiqian Pan)
>To: info-mcl@cambridge.apple.com
>Subject: Mouse location
>
>I have a my-defined cursor with 16x16 bitmap.  Sometimes, the mouse
>location is in the top-left, and sometimes in the bottom-right using
>(view-mouse-position).  I am wondering if we can control the location
>by setting some variables.  Thanks in advance.
>
>jipan@gmuvax2.gmu.edu

If you edit your cursor as a "CURS" or "crsr" resource,
ResEdit lets you move around its "hot spot" location
The little "x" determines the offset to where the cursor is "pointing".
From: pvs@jazz.al.alcoa.com (Peter Van Sickel)
Newsgroups: comp.lang.lisp.mcl
Subject: Reminder: Register for LUV-92
Date: 28 Jul 92 20:01:00 GMT
Original-To: slug@ai.sri.com, info-macl@cambridge.apple.com, common-lisp@mcc.com,
        clim@bbn.com, comp.lang.clos@cis.ohio-state.com,
        comp.lang.lisp@cis.ohio-state.com


LUV-92 is fast approaching.  August 10 - 14 in San Diego
at the US Grant Hotel.  

For registration information contact Laura Lotz at 215/651-2990.

If you haven't seen a brochure descibing the tutorials and speakers,
contact your favorite Lisp vendor. 

Be there!
From: kieras@engin.umich.edu (David Kieras)
Newsgroups: comp.lang.lisp.mcl
Subject: compilations in eval
Date: 24 Jul 92 20:39:39 GMT
Original-To: bill@cambridge.apple.com
Original-Cc: info-mcl@cambridge.apple.com, kab@cambridge.apple.com

I ran a few benchmarks based on my actual code and discovered
that if the eval'd form is simply a function call or a macro
that does nothing more than call a function, then eval-compiler
apparently sees it as "easy" - the function and macro were
also already compiled.  So the setting of *compile-definitions*
didn't matter.  
 
It would be good to have more information relating to aspects
of MCL that affect performance.  Is this in the 2.0 final
manual? E.g. why is there a lot of disc activity and temporary
files created when I run a big hunk of code - does MCL do its
own VM-like overlays? I know it loads functions as needed, but why
create a temporary file?
From: djskrien@COLBY.EDU (Dale Skrien)
Newsgroups: comp.lang.lisp.mcl
Subject: window-hardcopy for fred dialog items
Date: 30 Jul 92 10:27:33 GMT
Original-To: info-mcl@cambridge.apple.com

On page 493 in the manual for MCL 2.0 final, it says that window-hardcopy
works for Fred windows or Fred dialog items.  However, when I create a
window with a scrolling-fred-dialog-item (which I assign to a variable x)
and then call
  (window-hardcopy x)
I get an error message:  "No applicable method for args:
(#<ccl::scrolling-fred-dialog-item #x51E179>) to
#<standard-generic-function window-hardcopy #x47A396>."

Am I doing something wrong?

Dale J. Skrien   	       	       	       	       	djskrien@colby.edu
Dept. of Mathematics & Computer Science 	       	207-872-3256
Colby College, Waterville  ME  04901
Newsgroups: comp.lang.lisp.mcl
From: nathan@akbar.teleos.com
Newsgroups: comp.lang.lisp.mcl
Subject: AVL tree code
Date: 23 Jul 92 18:34:50 GMT
Original-To: info-mcl@cambridge.apple.COM

I want to efficiently maintain a fairly large set (>3000 elements) of
sorted values, allowing for the operations insert, delete, min,
member, and next-member (i.e. (next-member (min avl)) is the second
smallest element).  From a quick review of my algorithms text book it
looks like AVL-Trees are the ticket.  Has anyone out there implemented
such or have code that provides similar functionality?  (AVL-Trees
allow all of the listed functions in time proportional to the log of
the number of elements in the tree)

Nathan Wilson
Teleos Research
nathan@teleos.com
From: mcdougal@cs.uchicago.edu (Tom McDougal)
Newsgroups: comp.lang.lisp.mcl
Subject: Re: Speech synthesis
Date: 24 Jul 92 19:12:54 GMT
Distribution: usa
Organization: University of Chicago Computer Science
X-Useragent: Nuntius v1.1



In article <9207211758.AA13237@brazil.cambridge.apple.com>,
nathan@akbar.teleos.com writes:
>Are there any available speech synthesis libraries that have been/can
>easily be added to MCL?

There is a new Talking Moose that works w/ System 7, and its speech
synthesizer is really very good.  The rumor I heard (not reliable) is
that the Talking Moose developers obtained a prerelease version of a
new MacInTalk.  It occurred to us that maybe it would be possible for a
research institution such as ourselves (or you) to get access to a
prerelease MacInTalk with hooks for MCL, or maybe the Talking Moose
people would be willing to tell us how to send Apple Events or
something....

You can see this was well thought-out! :-)

Anyway, we never followed up on it, probably because we thought the
chances were dim of anything working out, but we sure are interested.

If you find out anything more, please let me know!
----------------------------------------------------------
Tom McDougal    mcdougal@cs.uchicago.edu    (312) 702-0024
From: mdavis@MEDIA-LAB.MEDIA.MIT.EDU
Newsgroups: comp.lang.lisp.mcl
Subject: Re: Looking for QuickTime library
Date: 26 Jul 92 15:53:03 GMT
             <9207250230.AA13918@cambridge.apple.com>
Original-To: bill@cambridge.apple.com (Bill St. Clair)
Original-Cc: jbell@garnet.berkeley.edu    (John E. Bell), info-mcl@cambridge.apple.com,
        mdavis@MEDIA-LAB.MEDIA.MIT.EDU
X-Mts: smtp


Mike Travers, Brian Williams, and I wrote some code which creates a
class of QuickTime movie objects, windows, views, etc. in MCL.  This
code should be on the MCL CD-ROM.

Marc Davis
MIT Media Lab
From: rburnard@rburnard.isx.com (Robert Burnard)
Newsgroups: comp.lang.lisp.mcl
Subject: test
Date: 31 Jul 92 18:26:04 GMT
Original-To: info-mcl@cambridge.apple.com
X-Mailer: LeeMail 1.2

I have ceased to get mail from info-mcl, since last friday. I've talked with my 
SA guy and he says "everything is ok" (of course he's NEVER wrong, just ask 
him). Sorry to pollute the net with this.

Robert H. Burnard *********** (818)706-2020 ********
ISX Corporation               (818)706-2056 (FAX)  *
4353 Park Terrace Dr.         isx.com (internet)   *
Westlake Village, CA 91361    ISX.TECH (AppleLInk) *
****************************************************
From: bill@cambridge.apple.com (Bill St. Clair)
Newsgroups: comp.lang.lisp.mcl
Subject: Re: Typo in mac-file-io.lisp?
Date: 24 Jul 92 16:37:53 GMT
Full-Name: Bill St. Clair
Original-To: "Dave Wroblewski" <davew@atqm.advtech.uswest.com>
Original-Cc: info-mcl

>                      Typo in mac-file-io.lisp?
>I was trying to work through Bill St. Clair's "my-copy-file" example today in
>order
>to understand the mac-file-io.lisp code in the Examples folder. Unhappily , it
>kept
>bombing with error -50 ("parameter error"). 
>
>I found the following lines in the middle of the function FSOpen in
>mac-file-io.lisp:
>
>              (%put-long paramBlock 0  $ioPosOffset)
>              (%put-word paramBlock $fsAtMark $ioPosOffset)
>  
>which seemed incorrect, since they simply set the same field to different
>values.
>I changed them to the following which seems to remove the problem, at least for
>Bill's example function:
>
>              (%put-long paramBlock 0 $ioPosOffset)
>              (%put-word paramBlock $fsAtMark $ioPosMode)
>
>Was this truly a typo, or is there some incredible subtlety that I am missing?
>Also, if this was a known bug, where should I have looked to find it out? I
>have 
>been reading this mailing list for a month or two and haven't seen any bug
>reports
>about this...

It's been a known bug for a long time. I don't remember putting it
in any of the 2.0b1 patches, however. It definitely appeared on
info-mcl or bug-mcl around the time that Dale Skrien told us about
it, but I don't know which (if it was bug-mcl you would have no way
to have seen it) Here's the mod history line for the fix:

;; 08/19/91 bill in FSOpen: (%put-word paramBlock $fsAtMark $ioPosOffset) ->
;;                          (%put-word paramBlock $fsAtMark $ioPosMode)
;;               (thanx to Dale J. Skrien)
From: straz@cambridge.apple.com (Steve Strassmann)
Newsgroups: comp.lang.lisp.mcl
Subject: another error in my tiny test program
Date: 27 Jul 92 16:58:41 GMT
Full-Name: Steve Strassmann
Original-To: info-mcl

Date: Mon, 27 Jul 1992 11:36:29 -0500
To: Steve Strassmann <straz@cambridge.apple.com>
From: bill@cambridge.apple.com (Bill St. Clair)
Subject: Re: Error in my tiny test program

>(defun drop-ball (&optional (window *window*))
>  (let ((v 1)               ; vertical position
>        (h 1)               ; horizontal position
>        (size 10)           ; size of ball
>        (height 20))        ; initial height of ball
>    (while (< height 120)
>      (if (oddp h) 
>        (visible window)
>        (invisible window))
>      (paint-oval window h v (+ h size) (+ v size))
>      (setf v (+ v 3) 
>            h (+ h 5)
>            height (+ height v)))))

I have to thank Bill for pointing out some bugs in my
last message.

The WHILE macro is not part of CLtL2. It is available
in MCL 2.0 in the CCL package, but it is not exported.
So, if you want to use it, you have to say CCL::WHILE.

Also, PAINT-OVAL is part of the QUICKDRAW example file. 
You either need to (require "QUICKDRAW") or use the
#_paintoval trap directly.
Newsgroups: comp.lang.lisp.mcl
From: markw@asdi.saic.com (Mark Watson x6816)
Subject: MACL 2.0 final shipment
Keywords: CD ROM LISP
Organization: SAIC
Date: Sat, 25 Jul 1992 17:05:57 GMT

I received my 2.0 "final" package two days ago, and I am very pleased
with it!  I especially like the CD-ROM disk full of LISP programs.

I have noticed that most of the contributed programs do not seem to
work without being fixed up for 2.0 final.

I have a suggestion: create a new MACL2.0final directory on ftp.apple.com,
and as people port the sample user-contributed programs to 2.0 final, they
can have a place to put the modified versions.  I have a paricular interest
in Screamer (thanks to my friend in Germany who emailed some fixes [my email
to you thanking you bounced]!).

'just an idea....

-- Mark
From: bloch@wupost.wustl.edu (Charlene Bloch Abrams)
Newsgroups: comp.lang.lisp.mcl
Subject: Handles to resources
Date: 28 Jul 1992 16:04:36 -0500
Organization: Washington University, St. Louis
NNTP-Posting-Host: informatics.wustl.edu

I have a resource file in which resides a TEXT resource, about which I am
able to find absolutely no information, and I have a couple of questions
of burning importance, for which I should very much appreciate any sort
of answer:

(1) Is there a limit on the size of the text string that this resource type
    contains?

(2) Once I have a handle to the resource, how do I actually get at the text
    itself? There are functions for getting at, for example, the window
    being referenced by a window handle, but I've no idea about text. It's not
    a pascal string, so it's not as though there's any information about how
    big it is, etc (and even in that case, I'm left somewhat helpless).

Any help will be gratefully received.
Charlene
From: bill@cambridge.apple.com (Bill St. Clair)
Newsgroups: comp.lang.lisp.mcl
Subject: Re: toplevel-loop example
Date: 31 Jul 92 17:36:26 GMT
Full-Name: Bill St. Clair
Original-To: djskrien@COLBY.EDU (Dale Skrien)
Original-Cc: info-mcl

>On page 654 in the MCL 2.0 final manual, I am told that you want your
>toplevel function to catch aborts if you don't want the listener to appear
>with an error message.  Then the manual gives an example that shows what
>goes wrong if you don't catch aborts:
>? (defun new-top (&aux form)
>    (setq form (read))
>    (if (eq form 'done)
>        (%set-toplevel #'toplevel-loop)
>        (print (eval form))))
>? (%set-toplevel #'new-top)
>? (toplevel)
>At this point, if you type a command-period, you are supposed to get an
>error
>message saying that it can't throw to tag :abort.
>
>However, when I tried this, and typed a command-period, nothing happened. 
>The new-top function just ignored the command-period.  Is the manual
>correct?  If so, why didn't I get the error message?

The manual is incorrect. There is an abort handler that is always active
that throws to a catch in the kernel which calls the toplevel function.
No error message.

>Can someone give me a simple modification of the above example that catches
>aborts, brings up a message dialog with an error message, and then returns
>to the top-level function?

Time to re-read the Conditions chapter of CLtL2?

(defun new-top ()
  (restart-case
    (new-top-internal)
    (abort ()
           :report (lambda (stream)
                     (format stream 
                             "Pop up message dialog then return to toplevel."))
           (message-dialog "Top-level loop aborted"))))

(defun new-top-internal (&aux form)
  (setq form (read))
  (if (eq form 'done)
    (%set-toplevel #'toplevel-loop)
    (print (eval form))))

(%set-toplevel #'new-top)
(toplevel)
From: jipan@gmuvax2.gmu.edu (Jiqian Pan)
Newsgroups: comp.lang.lisp.mcl
Subject: Mouse location
Date: 23 Jul 92 15:14:28 GMT
Original-To: info-mcl@cambridge.apple.com

I have a my-defined cursor with 16x16 bitmap.  Sometimes, the mouse
location is in the top-left, and sometimes in the bottom-right using
(view-mouse-position).  I am wondering if we can control the location
by setting some variables.  Thanks in advance.

jipan@gmuvax2.gmu.edu
From: bill@cambridge.apple.com (Bill St. Clair)
Newsgroups: comp.lang.lisp.mcl
Subject: William's Object Oriented Database (Wood)
Date: 28 Jul 92 04:32:43 GMT
Full-Name: Bill St. Clair
Original-To: info-mcl
Original-Cc: info-wood

William's Object Oriented Database (Wood) is a simple persistent store
for MCL 2.0.

Wood version 0.5 is on the anonymous FTP server at cambridge.apple.com
in the file /pub/mcl2/contrib/wood-0.5.sea.hqx.
The documentation is contained in that archive and is also
in the file /pub/mcl2/contrib/wood.doc.

This is alpha software. It is incomplete: though you can save/restore
all Lisp objects to/from a file, there is no transaction/recovery manager
and no garbage collector for the persistent heap. I am working on these in
my copious spare time. I will not be able to provide much support, but
you get source code.

Please try it and send me feedback.

Send bug reports to bug-wood@cambridge.apple.com.

Send questions and comments for other interested Wood users to
info-wood@cambridge.apple.com.

To subscribe to info-wood, send a request to
info-wood-request@cambridge.apple.com
(info-wood-req@cambridge.apple.com@internet# for AppleLink users).

The BinHex'ed self extracting archive is about 280K bytes long.
Please don't ask me to mail it unless you really don't have FTP
access and are serious about testing it. I will be glad to post
it to AppleLink or mail the documentation file (< 20K) on request.
From: jipan@gmuvax2.gmu.edu (Jiqian Pan)
Newsgroups: comp.lang.lisp.mcl
Subject: Size of cursor
Date: 30 Jul 92 20:13:15 GMT
Original-To: info-mcl@cambridge.apple.com

Does anyone know how to make the cursor of more than 16 x 16?  Thanks.

jipan@gmuvax2.gmu.edu
From: nancym@ccwf.cc.utexas.edu (Nancy Mayer)
Newsgroups: comp.lang.lisp
Subject: Existence of AI_ATTIC
Date: 28 Jul 92 20:29:41 GMT
Reply-To: nancym@ccwf.cc.utexas.edu (Nancy Mayer)
Distribution: usa
Organization: The University of Texas at Austin, Austin TX
Originator: nancym@louie.cc.utexas.edu

This is to announce to the world the existence of the AI_ATTIC. The AI_Attic is an anonymous ftp site maintained at The University of Texas at Austin.  In this 
you will find the classic Artificial Intelligence programs, pointers on where 
to buy commercial AI programs, and the like.  Some of the programs we have are  
Parry, Eliza, Doctor, etc.

	This archive is intended for professors teaching courses in AI and 
the students they teach.  But others interested in expert systems, neural 
nets, ATN's, perceptrons, etc are, of course, welcome to rummage around.

	As would be expected in an attic, some things in this archive work, 
others need a little nudge to get them going, and some of them are "over 
the hill" for good.  In all cases they should bring back a sense of 
nostalgia to the old timer and give a sense of history to new workers in 
the field of Artificial Intelligence.

HOW TO ACCESS THE AI_ATTIC
	The AI_ATTIC is an anonymous FTP site that can be accessed by 
telneting or ftping to either the IP address 128.83.186.13 or the node 
address, bongo.cc.utexas.edu  At the request for your name, just type the 
word, anonymous, and at the request for a password, type your own 
personal E-mail address. 

It is important that you give us your address, because we want to justify 
keeping this archive open and you can help by letting us evaluate how 
active it is.  When you follow the above procedure, you will arrive at the 
upper level of the attic directory structure.  We recommend that you now 
download and read the ##PleaseReadMeFirst##  message to get an idea of what 
essentially this message) to get an idea of what is in store for you.  When 
is in store for you.  When you have finished your visit, just type bye at 
the ftp prompt.

Any questions or comments can be sent to the Atticmaster at the address shown
below:  ENJOY!!!
			Atticmaster:  	Dr. B. V. Koen
					atticmaster@bongo.cc.utexas.edu

		Assistants:		Mark Beaudry
					Mohit Dikshit
					Brain Garner
					Kunio Iwata
					Xinghong Li
					Yu-Hshin Liu
					Richard Mach
					Weihan Wu

                                        Vencatram Krishnamurthy
                                        Rusty Thomas
                                        Shutao Liao
                                        Nancy Mayer
                                        Russell Leighton
Newsgroups: comp.lang.lisp
From: jxhe@busadm1.cba.hawaii.edu (Jackson He)
Subject: How to clear memory
Organization: College Business Administration, University of Hawaii
Date: Fri, 24 Jul 1992 02:40:16 GMT


Hello there,

Can anyone out there tell me how to clear memory in Allgro Common
Lisp environment ? The :reset does not clear the memory. Basically
I am looking for a command which can clear the memory and bring
you to the state like you just enter "CL" environment.

Thank you very much,

-Jackson
Newsgroups: comp.lang.lisp,uiuc.lisp
From: jmrg9881@uxa.cso.uiuc.edu (Jon Reid)
Subject: Re: Want to prepend colon to symbol
Organization: University of Illinois at Urbana
Date: Thu, 23 Jul 1992 15:17:22 GMT

I feel kind of silly doing all the follow-ups to my own question, but
that's what I get for not subscribing to this group.  It also keeps
redundant e-mail down, and gives me more refined answers.

There is a more elegant solution to my problem than using read-from-string.
It is: (intern foo 'keyword).

Thanks to everyone for your help!

-- Jon  (j-reid@uiuc.edu)
From: jba@ai.mit.edu (Jonathan Amsterdam)
Newsgroups: comp.lang.lisp
Subject: dynamic-extent control transfers
Date: 22 Jul 92 18:34:39 GMT
Distribution: comp
Organization: MIT Artificial Intelligence Laboratory

I've been thinking about a Common Lisp feature recently, and I haven't been
able to figure out how to implement it well.  That is the ability to
transfer control to a point that is lexically apparent but may be elsewhere
on the stack.  E.g.

	(block b
            (mapc #'(lambda (x) (if (match x winner) (return-from b x)))
		  list))

I don't have any problem with figuring out how to get this to work
correctly; my problem is how to trap the misuses, like:
     
	(block b
	   #'(lambda () (return-from b 1)))

followed by a call of the closure.  Lucid, at least, correctly catches this
bug.  I can think of two implementations for doing so, neither of which I'm
fond of: 

1. Scan closures when placing them out of scope and invalidate their
   control transfers.

2. Associate a unique tag with each block and invalidate the tag on return
   from the block.

(1) is expensive.  (2) is cheap but requires consing, which seems counter
to the whole point of giving control transfers dynamic extent.  (The unique
tag could start out being a fixnum, eliminating consing for the first
couple of billion occurrences, but eventually you'd have to either cons
bignums or wrap around, risking tag duplication.)

Is there any method I'm missing, something that's both cheap and cons-free?
What do most implementations do?

	Jonathan Amsterdam
From: billh@hplsla.hp.com (Bill Harris)
Newsgroups: comp.lang.lisp
Subject: XLISP information?
Date: 29 Jul 92 20:35:03 GMT
Organization: HP Lake Stevens, WA

Does anyone have a text file that describes programming in XLISP?  I have
the file that came with Version 1.6 (I think), but it seemed like more of a
short reference than an introduction to the language.  

One simple question: is there a way to save programs from inside XLISP?  I
found a command to load programs; are you supposed to prepare programs using
an editor and then load them?

Thanks,

Bill Harris
billh@lsid.hp.com      

Hewlett-Packard Co. 
Lake Stevens Instrument Division ms/330
8600 Soper Hill Road
Everett, WA 98205-1298 
Newsgroups: comp.lang.lisp
From: layer@Franz.COM (Kevin Layer)
Subject: ANSI logical pathname patch for ACL 4.1 (SPARC), beta testers wanted
Organization: Franz Inc., Berkeley, CA
Distribution: comp
Date: Tue, 28 Jul 1992 20:44:07 GMT

Franz Inc. has implemented ANSI logical pathnames for Allegro Common
Lisp and would like to make the patch available to users of Allegro CL
4.1 on SPARC.  (Actually, with this patch, pathnames in Allegro CL are
fully ANSI compliant.)

Send me mail if are a user of Allegro Common Lisp 4.1 on SPARC and you
feel your situation would allow you to significantly use logical
pathnames in the near future.
--
-----
Kevin Layer, Franz Inc.         1995 University Avenue, Suite 275
layer@Franz.COM (internet)      Berkeley, CA  94704  USA
Phone: (510) 548-3600           FAX: (510) 548-8253
From: harry@issun1.kfk.de (Harald Kucharek)
Newsgroups: comp.lang.lisp
Subject: Re: converting from strings to ___
Date: 23 Jul 92 12:59:33 GMT
Reply-To: harry@issun1.kfk.de
Organization: Kernforschungszentrum Karlsruhe


In article 10131@cs.brown.edu, map@cs.brown.edu (Mike Perkowitz) writes:
>
>i'm working on a system where i'm getting user input through Motif widgets
>(using CLM). in one part, the user can specify values for certain parameters
>through a text widget. the problem is that the value held by the text widget
>will always be a string. i need to be able to treat that string as a number or
>even as any arbitrary value (t/nil, for example). what it really seems like i
>need to be able to do is just "remove the quotes" from the string and turn it
>into a symbol or something. does anybody have any ideas? is this doable? to
>what extent? any assistance would be greatly appreciated...

To make a string a symbol, you can use (intern <string>) or (make-symbol <string>) or
(concat-to-symbol <strings>), depending on what exactly you want to do...

    Harald Kucharek ($B>.?M(J), Nuclear Research Center Karlsruhe, IDT
		7514 Eggenstein-Leopoldshafen, Germany
         Internet: harry@issun1.kfk.de Phone: +49 7247 825706