HDTenEightyP/NetNews huggingface dataset:
From: vanMeule@cup.portal.COM
Subject: random rant on random files
Organization: The Internet
Date: Thu, 13 Aug 1992 13:24:07 GMT

I feel a little upset at Scheme for lack of direct support in 
most Schemes for random files.  These are essential for business
programming.  Scheme should and could revolutionize business and
supplant BASIC with all its basic flaws if Scheme provided a 
library routine for random files that was part of the definition.
 
BTW, I think Scheme should go the way of C and make use of 
libraries in order to make the core image tiny enough to fit on
Apple IIe's with 64K of memory--that is an ideal worth fighting
for, else Scheme is not a revolution for everyone.  
 
Any comments that might help me towards my desire to be able to
do real business programming in Scheme??? 
 
Cheers!
From: bh@anarres.CS.Berkeley.EDU (Brian Harvey)
Newsgroups: comp.lang.scheme
Subject: Re: random rant on random files
Date: 17 Aug 1992 14:26:46 GMT
Organization: University of California at Berkeley
NNTP-Posting-Host: anarres.cs.berkeley.edu

I don't find this "store" idea obvious at all.  Does it live in memory
or on the disk?  If on the disk, does that mean there is a redundant
disk-to-disk copy when I finally use store->file?  If in memory, how
do you handle gigabyte stores?

I'm not necessarily objecting to the idea.  I just need to see more
discussion than was posted about why this is thought preferable to
just adding seek, binary-read, and binary-write to the port mechanism.
From: thinman@netcom.com (Technically Sweet)
Newsgroups: comp.lang.scheme
Subject: Re: random rant on random files
Date: 18 Aug 92 16:47:00 GMT
Organization: International Foundation for Internal Freedom

The STORE concept is a Scheme adaptation of memory-mapped files.
Nothing more.

-- 

Lance Norskog

Data is not information is not knowledge is not wisdom.
From: rpg@cs.tulane.edu (Robert Goldman)
Newsgroups: comp.lang.scheme
Subject: Scheme introduction article
Date: 20 Aug 92 15:02:30 GMT

Nntp-Posting-Host-[nntpd-15941]: clones
Reply-To: rpg@cs.tulane.edu (Robert Goldman)
Organization: Department of Computer Science, Tulane University
Distribution: comp
Date: Thu, 20 Aug 1992 15:52:09 GMT

I am going to be teaching our AI course this semester in Scheme.
I would like to make available to my students (put on reserve at the
library, probably) an article which gives a short, conceptual
overview of Scheme.  Preferably this should be the kind of article
that might appear in CACM or Byte:  not for the layman, but not an
article which discusses denotational semantics, either.  If any of
you know of such an article, I would appreciate any pointers you
could offer.  The LISP FAQ file has a helpful list of texts, but no
overview articles.

Thanks,
R
Newsgroups: comp.lang.scheme.c
From: gjs@martigny.ai.mit.EDU ("Gerald Jay Sussman")
Subject: [williams@csrd.uiuc.edu: degree done; scheme]
Organization: The Internet
Date: Fri, 14 Aug 1992 18:12:20 GMT


Can anyone help him?

Return-Path: <williams@csrd.uiuc.edu>
Date: Wed, 12 Aug 92 10:54:20 CDT
From: williams@csrd.uiuc.edu (Peter Lawrence Williams)
To: gjs@ai.mit.edu
Subject: degree done; scheme
Cc: williams@csrd.uiuc.edu



Jerry,

In May I finished my PhD in CS at University of Illinois. My
thesis was on volume rendering scientific data defined on
irregular meshes (primarily generated by the finite element method).
The work involved computational geometry, parallelization and
graphics.

Starting next month I will be teaching at Harvey Mudd College.
My first course will be Intro to Programming (Honors).  I plan
to use Scheme.

Could you tell me who at the AI Lab to talk to about getting
MIT Scheme for a Sequent Symmetry 81.  

I ftp'd to altdorf but found nothing suitable there.  However, the
README file indicated the availability of an interpreter suitable for
any Unix-based machine but it didn't say how to get it.  Can you give
me any pointers how to track this down.

Thanks,

Peter Williams

PS   HMC is only 40 minutes from Cal Tech. Do you plan to spend
any time there in the next year?


From: steve.rainwater@ocitor.fidonet.org (Steve Rainwater)
Sender: FredGate@ocitor.fidonet
From: jeff@aiai.edinburgh.ac.UK (Jeff Dalton)
Subject: Re: R^4RS Authors Comments on Dylan
Organization: The Internet
Date: Mon, 17 Aug 1992 11:41:07 GMT

> Date: 14 Aug 1992 13:59:59 GMT
> From: Brian Harvey <bh@anarres.cs.berkeley.edu>

> As a teacher, I incline toward object-dispatch.  I know that the
> generic function idea makes it easier to talk about an operation
> that applies to more than one object (although not easier enough,
> because of the combinatorial explosion of the number of possible
> types of all the operands), but I think that for a learner the
> whole idea of objects (smart data) is lost. 

You can still think in terms of "smart data" when the generics
are specialized on only one parameter, and there are Schemes
(such as T) in which function call syntax is used even though
it's the objects that select the methods.

If you're not going to get into implementation, it's not necessary to
say the function does the dispatch, and even in class-based object
systems it's not just objects interpreting messages.

So I don't think the use of generic functions has to be a
tremendous problem for education in practice.  At least I
hope not.

On the other hand, I don't see why Scheme should do what Dylan
does just because Dylan does it.  If the same idea wasn't right
when it came from Common Lisp or EuLisp or whatever, why would
it suddenly be right now?

>   But I want to try to get educational concerns
> into the picture, so that the eventual decision isn't made entirely
> in terms of what's easy to implement efficiently and so on.

if anything, a CLOS-like object system as in Dylan is probably harder
to implement than most of the alternatives we're used to in Scheme.

-- jd
From: dorai@tone.cs.rice.edu (Dorai Sitaram)
Newsgroups: comp.lang.scheme
Subject: Re: MIT C-Scheme for DOS
Date: 23 Aug 1992 00:14:48 GMT
Organization: Rice University, Houston

In article <c1xmmbb.thinman@netcom.com> thinman@netcom.com (Technically Sweet) writes:
>There's a release of MIT C-Scheme 7.1 for 386 DOS machines
>on altdorf.ai.mit.edu.  What's the word on this?  Is it
>buggy as sin or useable?  How solid is the incremental compiler?
>
>Lance Norskog

I've been using bchschem.exe (with runtime.com).  (Haven't the courage
to try the other stuff.)  Works very well.  (My trip test was SLaTeX.)
Which brings me to more questions.  (I don't really want to bug the
maintainers if this is common knowledge.)

@ Is there ftpable documentation on the different ways of defining
macros in MIT C Scheme?  The scheme.dvi appears to document only
procedures.

@ Has there been any advance on command-line options beyond that
mentioned in user.dvi?  Specifically, can users now get at the command
line once they have been whisked into the repl?  Right now, I'm doing
something ugly like having batch files that prefix calls to Scheme
with changes to scheme.ini to mimic this kind of action. 

@ Is there a way to exit Scheme without going through the confirmation
dialog?

--d
-- 

dorai@titan.rice.edu   !    It may be that the gulfs will wash us down;
dorai@owlnet.rice.edu  !      it may be we shall touch the Happy Isles.
From: bh@anarres.CS.Berkeley.EDU (Brian Harvey)
Newsgroups: comp.lang.scheme
Subject: streams (was: random rant on random files)
Date: 22 Aug 1992 04:25:50 GMT
Organization: University of California at Berkeley
NNTP-Posting-Host: anarres.cs.berkeley.edu

I would like to attempt to nip in the bud this business of calling
a generalized i/o port a "stream."  Could we have another name please?

			-- SICP Preservation Society
From: barmar@think.com (Barry Margolin)
Newsgroups: comp.lang.scheme
Subject: Re: R^4RS Authors Comments on Dylan
Date: 15 Aug 1992 09:18:38 GMT
Organization: Thinking Machines Corporation, Cambridge MA, USA
NNTP-Posting-Host: gandalf.think.com

In article <16ge8vINNe1f@agate.berkeley.edu> bh@anarres.CS.Berkeley.EDU (Brian Harvey) writes:
>jmiller@crl.DEC.COM writes:
>>o Dylan's use of generic functions, derived directly from CLOS, fit
>>  into the language in a particularly elegant manner.
>But I want to try to get educational concerns
>into the picture, so that the eventual decision isn't made entirely
>in terms of what's easy to implement efficiently and so on.

That's a strange comment to make.  I have never heard anyone claim that
CLOS-style multiple dispatch is easier to implement efficiently than
traditional single dispatch OO.

Regarding the notion of "smart objects" and message passing, we in the CLOS
community have basically decided that this is an artificial and restrictive
paradigm.  We believe that the essence of OO programming is class
inheritance and dynamic function dispatching.  The notion of
object->class->method-table is not necessary for understanding this; it's a
useful implementation technique for methods that only specialize on one
argument, but it's not the appropriate way to conceptualize things.  In
particular, it breaks down completely when the choice of implementation
technique is based on two parameters (consider output, where the effect is
dependent on both the type of object being output and the type of output
destination (ASCII terminal, window, or file)).
-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar
From: kend@data.rain.com (Ken Dickey)
Newsgroups: comp.lang.scheme
Subject: Re^2: random rant on random files
Date: 19 Aug 92 16:56:19 GMT
Organization: Microtek DSD, Hillsboro, OR

tmb@arolla.idiap.ch (Thomas M. Breuel) writes:


>What is wrong with binary streams?

Nothing.  But Scheme is not a store description language (like C/C++),
and does not have a binary interface defined.  I have no problems with
making a "location pointer" and reading memory with a port interface.  
I prefer not to have to reset such a pointer at every random i/o.

It is trivial to build a port interface on top of stores.


-Ken
From: gjc@mitech.com (George J. Carrette)
Newsgroups: comp.lang.scheme
Subject: Re: random rant on random files
Date: 14 Aug 92 17:53:28 GMT
Organization: Mitech Corporation, Concord MA

In article <9208130624.1.11214@cup.portal.com>, vanMeule@cup.portal.COM writes:
> I feel a little upset at Scheme for lack of direct support in 
> most Schemes for random files.  These are essential for ...
> ... core image tiny enough to fit on
> Apple IIe's with 64K of memory-- ...
>  
> Any comments that might help me towards my desire ...

Do you really want to program an Apple IIe? Maybe, just maybe, you could
get SIOD to fit in that with enough space left over for something 
interesting. 

But seriously, SIOD version 2.8 has fopen,fclose,getc,putc, and puts
as lisp subrs that have semantics like the ones in C.

You should be able to add fread,fwrite,fseek, and ftell without
too much effort.

Then, if you are going to be storing lisp objects in random files,
you probably also want to be using FAST-PRINT and FAST-READ and
not read/print or getc and putc, if what you want to do is
database-like things.

-gjc
Newsgroups: comp.lang.scheme
From: oz@ursa.sis.yorku.ca (Ozan Yigit)
Subject: Y [Re: Summary on Church numeral]
Organization: York U. Student Information Systems Project
Date: Wed, 12 Aug 1992 18:03:54 GMT

Matthias Blume writes:

   [long note on church numerals elided]

   [5. and 6. make use of a trick: here we apply hh to itself to obtain
   recursion without the need of syntactic recursion (this is what the magic
   Y does)]

Talking about the magic of Y, I just added another note into
txt subdir of the Scheme Repository: "(Y Y) Works! A Lecture
on the Why of Y" by Matthias Felleisen. This note is written
in the style of the Little Lisper. Look for Y.{dvi,ps}.Z.

enjoy...	oz
---
1: Scheme Repository: ~ftp/ pub/scheme under nexus.yorku.ca.
2: as an internetworking courtesy, *please* try to avoid ftp
   transfers during peak working hours, i.e. 9am to 5pm EST.
---
Information is in the mind of  |  electric:  oz@sis.yorku.ca
the beholder. - R. Jackendoff  |  ph: [416] 736 2100 x 33976






Newsgroups: comp.lang.scheme
From: vanMeule@cup.portal.COM
Subject: going back to church
Organization: The Internet
Date: Thu, 13 Aug 1992 13:15:15 GMT

(Just call me Andre van Winkle...)  Just got caught up on my mail.
 
On the church numeral question, though it has been answered I 
wanted to interject my own vantage point.
 
First, I would reference my two articles on church math in May 
and June MacTutor 1991.  I want to write another article on them
but I have to be careful as I'm pushing the limits for theoretical
type stuff as it is, and I can't seem to find another publisher for
my churchy stuff...
 
To summarize some of my thoughts:
1)  The only interesting thing you can do with a church numeral
is to unravel it.  If you unravel with 1+ and 0 you convert to
regular numbers.  If you unravel with other church numerals you
get church math (that's how mul and expt is defined).  Church
numerals are like pre-initialized for loops.  
2) You don't want to unravel with 1+ and 0 in the church math 
functions themselves--you want to be lazy and general and do
that only as needs be (since you might unravel with many other
things in other situations).  
3)  There is a way to define mul in more easy to understand 
terms.  THe classical way is powerful fireworks, but a mind
bender.  You can define it in terms of add, just as in 
primitive recursion.  I will show how to do this by uploading
a pre-prepared file...I hope this works--I'm on a paid system
that is quite crude.  BTW, my phone is (818) 884-9610 should 
anyone want to discuss further off-line.  (Sorry for the length
of this!)...
;
(define project-2nd-of-2
  (lambda (x)
    identity))
;
(define identity ; project-1st-of-1
  (lambda (x) x))
;
(define unravel
  (lambda (n)
    (lambda (f)
      (lambda (x)
        ((n f) x)))))
;
(define church->number ; dechurchify-numeral
  (lambda (church-numeral)
    (((unravel church-numeral) 1+) 0)))
;
(define number->church ; make-church-numeral
  (lambda (n)
    (if (zero? n)
        com-zero
        (com-succ 
         (number->church (- n 1))))))
;
(define com-zero ; The Mother of all Church numerals.
  project-2nd-of-2)
;
(define com-succ
  (lambda (n)
    (lambda (f)
      (lambda (x)
        (f (((unravel n) f) x))))))
;
(define lay-add 
  (lambda (addend)
    (lambda (augend)
      (((unravel augend) com-succ) addend))))
;
(define lay-mul
  (lambda (multiplicand)
    (lambda (multiplier)
      (((unravel multiplicand) 
        (lay-add multiplier))
       com-zero))))
;
(define foo
  ((lay-mul (number->church 5))
   (number->church 3)))
;
(church->number foo)

;BTW I ran this code in MacScheme, so I KNOW it works!!!! At 
;least it did before I sent it!!!!
Newsgroups: comp.lang.scheme
From: rpg@cs.tulane.edu (Robert Goldman)
Subject: Scheme introduction article
Nntp-Posting-Host-[nntpd-15941]: clones
Reply-To: rpg@cs.tulane.edu (Robert Goldman)
Organization: Department of Computer Science, Tulane University
Distribution: comp
Date: Thu, 20 Aug 1992 15:52:09 GMT

I am going to be teaching our AI course this semester in Scheme.
I would like to make available to my students (put on reserve at the
library, probably) an article which gives a short, conceptual
overview of Scheme.  Preferably this should be the kind of article
that might appear in CACM or Byte:  not for the layman, but not an
article which discusses denotational semantics, either.  If any of
you know of such an article, I would appreciate any pointers you
could offer.  The LISP FAQ file has a helpful list of texts, but no
overview articles.

Thanks,
R
Newsgroups: comp.lang.scheme
From: Mayer Goldberg <mayer@moose.cs.indiana.edu>
Subject: church numerals ...
Organization: Computer Science, Indiana University
Date: Wed, 12 Aug 1992 20:16:55 -0500

Here are my 2 cents worth of church numeral stuff:

It would really be neat if we had a successor and a zero. If we did,
we could say the following (in either LC or Scheme):

Let z be our zero combinator; let s be our successor combinator:

zero == z
one == (s z)
two == (s (s z))
etc.

But unfortunately we con't have s and z in any obvious way, and so we
abstract over the two, defining our numerals as follows:

zero == \sz.z
one == \sz.(s z) == \x.x
two == \sz.(s (s z))

etc.

We want a successor.
If we had a successor "add1" combinator, we could have: (add1 five) -> six.
and in general (add1 'n') -> 'n+1', where 'n' is our church numeral
representation for n, and 'n+1' is our church numeral rep for n+1,
both quasi-quoted. If we had s and z, all we'd need is one more
application of s:

(s ('n' s z))   or the less obvious:
('n' s (s z))

where 'n' is the rep for our n'th church numeral.
But we don't have s and z and so we abstract them out, getting:

'n+1' == \sz.(s ('n' s z)) or the less obvious:
'n+1' == \sz.('n' s (s z))

By abstracting over 'n' we can define add1 as follows:

add1_version1 == \nsn.(s (n s z)) or the less obvious:
add1_version2 == \nsz.(n s (s z)).

We'll use version1 here because it's the easiest to prove things
about.

A church numeral is an abstraction over the n'th composition of a
function, hence for some function f: ('n' f) -> f^n
(right-associated).

This means that for example (three add1) is just: 
                    \x.(add1 (add1 (add1 x)))
So so we clearly have:
         ('n' add1 'm') -> 'n+m'.
Remeber that in LC and CL we auto-left-associate, and so (a b c)
is really ((a b) c) ... side note ...

So we get addition by abstracting over 'n' and 'm':
add == \nm.(n add1 m)
where add1 is just a placeholder for the text of the add1 combinator,
and a simple substitution can take place, yielding a formal mess.

(add five) is the procedure which adds 5 to anything ...
(four (add five)) is thus: \x.(add5 (add5 (add5 (add5 x)))). If
we apply it to zero we get twenty. In general:
                        ('n' (add 'm') zero) -> 'n*m'
so we abstract over 'n' and 'm' getting:
mul == \nm.(n (add m) zero)

(mul three) is the procedure which multiplies something by three ...
(two (mul three)) is thus: \x.(mul3 (mul3 x)). If we apply this to one
we get 3^2 -> 9. In general:
                          ('m' (mul 'n')) -> 'n^m'
We abstract over 'n' and 'm' and thus get exponentiation:
exp == \nm.(m (mul n) one)

This can go on all the way to ackerman and above. Ackermann is gotten
through exponentiating the lambda expression taking the
super-n-exponent and returning the super-n+1-exponent and applying it
to exponentiation ... :)

Another interesting point is that exponentiation on church numerals is
just \nm.(m n) or if you are willing to cope with a change of order in
the arguments, it's just the identity \x.x. This is so because composition
and exponentiation are governed by a similar algebraic structure.

Church numerals are a lot of fun!

Mayer.
From: oj@miki.pictel.com (Oliver Jones)
Subject: Re: Two suggestions for photocopier designers
Organization: PictureTel Corporation
Date: Wed, 19 Aug 1992 14:26:07 GMT

In article <1992Aug18.105101.10655@jarvis.csri.toronto.edu> ematias@dgp.toronto.edu (Edgar Matias) writes:
>
>... how about a big RED button in the shape of a stop sign  ...

Industrial safety regulatory agencies in various countries have reserved
the color red for safety-related purposes only.  

Ollie Jones
From: mathew <mathew@mantis.co.uk>
Newsgroups: comp.human-factors
Subject: Two suggestions for photocopier designers
Date: Mon, 17 Aug 92 18:09:45 BST
Distribution: world
Organization: Mantis Consultants, Cambridge. UK.

1. Spiffy auto-feeding units are very nice and helpful.  It is good to be
   able to copy an entire stack of pages just by loading them and pressing a
   button.  Unfortunately, most people are trained to know that pages must be
   placed face-down onto a photocopier in order to be copied.  Therefore they
   are likely to place documents face-down onto the loader, even if there's a
   small label saying "Place documents face up".  This is especially true if
   the loader is positioned flat on the lid.

2. Idiots who put a large stack of pages in upside-down and press the big
   button marked "Start" will be very, very much happier if there is a
   similarly big button marked "Stop", rather than a small orange button of
   uncertain function with a triangle drawn on it and a button marked "Front
   panel reset" which doesn't seem to do anything.


mathew
[ As ever, speaking from personal experience ]
-- 
"Even the most bizarre of the unions (probably that between a cat's gall
 stone and a single note 'G' from CNN's ident theme) managed to convey a
 sense of rampant impropriety."  -- 'Fortran Five', Simon G. Lawrence Leonard
From: davidst@tekig1.PEN.TEK.COM (David D Stubbs)
Newsgroups: comp.human-factors
Subject: Re: Display Settings (i.e background/foreground colors)
Keywords: background foreground display
Date: 17 Aug 92 16:24:38 GMT
Organization: Tektronix, Inc., Beaverton,  OR.

Following Mike Sellers' advice before he gave it, my wife has taken to
wearing orange sunglasses while working with MS-Word on our Macintosh.
She used to love WordPerfect's access to color characteristics and had
the DOS system set for a brownish-orange background with black characters.
She used boldface Courier I think.

Without the sunglasses, she can use MS-Word only for about 30 minutes. 

(Anyone know how to change MS-Word's page background color?!)


David Stubbs                                                           - home -
Tektronix, Inc.                +1 503 627 2627    .         2215 NE 45th Avenue
PO Box 500, MS 47-837        +1 503 627 2341 fax  .      Portland OR 97213-1343
Beaverton, Oregon 97077    David.D.Stubbs@tek.com .             +1 503 284 9282
--
David D. Stubbs			   - work -                            - home -
Tektronix, Inc.                +1 503 627 2627              2215 NE 45th Avenue
PO Box 500, MS 47-837        +1 503 627 2341 fax         Portland OR 97213-1343
Beaverton, Oregon 97077    david.d.stubbs@tek.com               +1 503 284 9282
From: rss@gooey.eng-sun (Rich Scire)
Newsgroups: comp.human-factors
Subject: Wanted: Info on HCI Conferences
Date: 18 Aug 92 12:41:55 GMT
Article-I.D.: fripp.1992Aug18.124155.1718
Reply-To: rss@gooey.eng-sun
Organization: Sun Microsystems, Inc.


---

Hi,

I am in the process of providing budget information to my manager and was asked what conferences
I wanted to attend.  What I would like to know is:

	What, where and when are good conferences dealing with human factors issues?

Thanks,
Rich

---

Rich Scire   DoD #1341            Cadre Technologies
E-Mail:  rss@cadre.com            222 Richmond St., Providence RI  02903
Phone:  (401) 351-5950            FAX: (401) 351-7380
Newsgroups: comp.human-factors
From: shanks@saifr00.cfsat.honeywell.com (Mark Shanks)
Subject: Re: GUIs Considered Harmful
Followup-To: alt.flame
Organization: Honeywell Air Transport Systems Division
Date: Thu, 20 Aug 92 15:02:00 GMT

In article <1992Aug19.192513.28287@news.eng.convex.com> tchrist@convex.COM (Tom Christiansen) writes:

>                     GUIs Considered Harmful
>
(Assorted comments gratuitously deleted throughout.)

>These people don't seem to understand this.
>
>Too often a tool that "does windows" is little more than a marketing
>gimmick to dazzle impressionable users into not noticing that they
>don't have the real functionality they need.
>
>..naive users can use push-button GUIs, blind users can use Braille
>terminals, and sophisticated users can program solutions to intricate
>problems.
>
>Being needlessly forced to click the mouse over a menu will slow down
>the expert user who is more comfortable with a keyboard interface.  
>
>Gratuitous distractions from the keyboard only slow down the experienced
>user.

Ooooooohhh, those GUIs make me soooo MAAAAAAADD!!

Mark Shanks