HDTenEightyP/NetNews huggingface dataset:
From: rahard@eeserv.ee.umanitoba.ca (Budi Rahardjo)
Subject: ANNOUNCE: perl386 update on ftp.ee.umanitoba.ca
Summary: update available
Keywords: 386
Organization: Electrical Engineering, U of Manitoba, Winnipeg, Manitoba, Canada
Date: Tue, 15 Dec 1992 02:21:22 GMT


Update of perl for 386 by Hitoshi Doi <doi@jrd.dec.com>
Available at ftp.ee.umanitoba.ca:/pub/msdos/perl/perl386.zoo

-- budi rahardjo <rahard@ee.umanitoba.ca>

----- README.386 -----

This is perl386 for MS-DOS systems built by using the DJGPP 1.08 compiler.
It will only run on systems with a 386 or greater.
This perl version is 4 patchlevel 35.

The files that needed modifications in order for the build to succeed were:

  makefile, config.h, perl.c, doio.c, toke.c
  msdos/makefile.386, msdos/msdos.c, msdos/popen.c

My modifications were done by using #ifdef DJGPP.
I also used the following public pieces of code to add some pieces
missing in MS-DOS and DJGPP.

  glob (command line globbing), ufc (ultra fast crypt)

This kit contains all of the sources that needed modifications from the
original perl distribution, and the perl386.exe executable that has the
go32.exe (from DJGPP) prepended to it.

I have not run all of the tests and there are some features missing in
this perl.  You can look at the config.h file to see which features have
been commented out.  In addition, it does not have exec().
But this perl doesn't run out of memory like all of the other MS-DOS
versions of perl when running my large programs.

This perl will use a 387 for floating point.  But even if you don't have
one, you can use the 387 emulator provided by DJGPP.  You can set up the
environment as follows,

  set GO32=emu C:/gcc/emu387/emu387

where C:/gcc/emu387/emu387 is the path of the 387 emulator.  Without a
387 or a 387 emulator, most perl programs will not run.

The following are the instructions for building perl386.exe with dmake.

  cd msdos
  dmake -f makefile.386
  ranlib libmsdos.a
  cd ..
  dmake

By the way I have also included a2p, the awk to perl translator.

Hitoshi Doi <doi@jrd.dec.com>, 1992.09.06

My environment is: Toshiba notebook computer (386SX-16MHz), 4MB memory,
40MB internal HD, 200MB external HD, MS-DOS v3.3 and Japanese MS-DOS v3.1.

--
Budi Rahardjo
<rahardj@ccu.umanitoba.ca>      <rahard@ee.umanitoba.ca> 
Electrical Engineering - University of Manitoba - Canada
From: mark@coombs.anu.edu.au (Mark)
Newsgroups: comp.lang.perl
Subject: Re: Error: Allocation to large in Perl for DOS -- bug?
Date: 14 Dec 92 14:46:29 GMT
Organization: Australian National University
NNTP-Posting-Host: 150.203.76.2
Organisation: Wassat?!

pyrros@braindamaged.cis.udel.edu (Christos T. Pyrros) writes:

>When running the program below, I'm getting the following error:
>Allocation to large: 11fe6

>This error occurs on binary files that are over 200k or so.  The binary
>files are AutoCAD Release 12 plot files for CalComp plotters.  Strangely,
>this problem does NOT occur on AutoCAD Release 11 plot files, which are
>slightly different.

[proggy deleted]

>I'm using DOS 5.0 (mem reports 565k avail), and perl for DOS:
>Is this a bug?  Or am I doing something wrong?

It looks like you're running the perl.msdos distribution as opposed to the
perl.386 one that is nice enough to use the whole {2,4,8} meg in your 
machine. The perl.msdos is a nice perl, it just doesnt have the necessary
memory additions to use more than the standard 640K...

In your situation it looks like it's reading in the whole file and then
trying to work with it.

Unfortunately the perl.386 has problems with little things like changing 
drives and the 'utime()' command... I use both, and Im very careful when
programming for the perl.msdos version.. use temp files etc.

Now if someone would just merge the two..

Mark
Newsgroups: comp.lang.perl
From: chip@tct.com (Chip Salzenberg)
Subject: Re: system() vs exec()
Date: Fri, 18 Dec 1992 14:51:35 GMT
Organization: TC Telemanagement, Clearwater, FL

According to mcook@fendahl.dev.cdx.mot.com (Michael Cook):
>Besides, you've used @_ after you used local().  That's a Perl no-no.

Oh?
-- 
Chip Salzenberg at Teltronics/TCT  <chip@tct.com>, <73717.366@compuserve.com>
  "you make me want to break the laws of time and space / you make me
   want to eat pork / you make me want to staple bagles to my face /
   and remove them with a pitchfork" -- Weird Al Yankovic, "You Make Me"
Newsgroups: comp.lang.clos
From: tar@isi.edu
Subject: Best way to set class slots
Reply-To: tar@ISI.EDU
Organization: The Ohio State University Department of Computer and Information Science
Date: Wed, 16 Dec 1992 02:05:25 GMT

 > Whatever documentation you are referring to can't really apply to
 > shared slots, as they are not "on" the prototype instance;  you are 
 > only using the instance to gain access to the shared slot, which is 
 > probably stored "out there, somewhere."

That's what I would have thought, but this is not true across all
implementations.  The TI Explorer's class prototype doesn't exhibit
this behavior.  Apparently until an instance is initialized, it
doesn't have values even for its class allocated slots!  Bizarre, but
true.  (OK, so TI Lisp is not really up-to-date, but we need to
support that platform).

This observation does bring up a related question:  Does calling
CLASS-PROTOTYPE on a class force the class to finalize?

- Tom

The documentation is from Gregor's AMOP book.  It also says that the
instance returned by CLASS-PROTOTYPE may or may not be initialized.


Thomas A. Russ                                             tar@isi.edu    
USC/ISI, 4676 Admiralty Way, Marina del Rey, CA 90292      (310) 822-1511
From: root@watson.cba.csuohio.edu (David R. McIntyre)
Newsgroups: comp.lang.clos
Subject: email address of a programmers guide to how to use PCL for latest PC version
Date: 21 Dec 92 07:59:22 GMT
Organization: The Ohio State University Department of Computer and Information Science


   I am interested in reading from a users point of view (not interested in the
   implementation details) a manual preferably (or the best email doc you know of)
   which explains clearly CLOS syntax.  I am familial with the CLOS syntax as
   discussed in Winston & Horn 3rd ed and am interested in experimenting with PCL
   to implement the BLOCK WORLD's problem in that book.  Could you please mail me
   an ftp site?   mcintyre@cis.csuohio.edu
Newsgroups: comp.lang.clos
From: olasov@cs.columbia.edu (Ben Olasov)
Subject: FrameKit and docs needed
Followup-To: poster
Originator: olasov@ground.cs.columbia.edu
Reply-To: olasov@cs.columbia.edu (Ben Olasov)
Organization: none
Date: Mon, 21 Dec 1992 04:16:18 GMT


I'm looking for a copy of a frame based KR system called FrameKit,
(referenced in this group's FAQ) and any available documentation.  The
maintainer (and author?)  Eric Nyberg's finger plan indicates he's out
of town until next year, so I'm trying to locate an ftp'able source
(archie didn't turn up anything) or a kind individual to email me a
copy.

There's a technical report:

  Nyberg, E. (1988). "The FrameKit User's Guide: Version 2.0",
  Technical Memo, Center for Machine Translation, Carnegie Mellon 
  University, CMU-CMT-88-MEMO.

which I'd also like to get if it's in emailable or ftp'able format.

I'm also interested in demonstrations/ examples of applications built
with FrameKit.


Thanks,

Ben Olasov

-- 
Ben Olasov		olasov@cs.columbia.edu
Newsgroups: comp.lang.clos
From: jonl%kuwait@lucid.com (Jon L White)
Subject: Best way to set class slots
Organization: The Ohio State University Department of Computer and Information Science
Date: Wed, 16 Dec 1992 07:38:37 GMT

re: Initially I thought that using the CLASS-PROTOTYPE from the MOP would
    be a good solution, but the documentation indicates that setting slots
    on the prototype is a no-no.

Whatever documentation you are referring to can't really apply to
shared slots, as they are not "on" the prototype instance;  you are 
only using the instance to gain access to the shared slot, which is 
probably stored "out there, somewhere."


-- JonL --
Newsgroups: comp.lang.clos
From: dussud%aspen@lucid.com (Patrick Dussud)
Subject: Best way to set class slots
Organization: The Ohio State University Department of Computer and Information Science
Date: Thu, 17 Dec 1992 17:04:21 GMT


   Date: Wed, 16 Dec 1992 02:05:25 GMT
   Organization: The Ohio State University Department of Computer and Information Science
   From: tar@isi.edu
   Sender: commonloops-request@cis.ohio-state.edu
   References: <9212160738.AA06763@kuwait.lucid>
   Reply-To: tar@ISI.EDU

    > Whatever documentation you are referring to can't really apply to
    > shared slots, as they are not "on" the prototype instance;  you are 
    > only using the instance to gain access to the shared slot, which is 
    > probably stored "out there, somewhere."

   That's what I would have thought, but this is not true across all
   implementations.  The TI Explorer's class prototype doesn't exhibit
   this behavior.  Apparently until an instance is initialized, it
   doesn't have values even for its class allocated slots!  Bizarre, but
   true.  (OK, so TI Lisp is not really up-to-date, but we need to
   support that platform).  
I believe the that the TI implementation is correct the the face of X3J13. It
is not up-to-date because the MOP didn't exist when I implemented it.

Newsgroups: comp.lang.clos
From: gandalf@Csli.Stanford.EDU (Juergen Wagner)
Subject: Re: Object Oriented Programming in GNU Emacs Lisp
Keywords: object oriented, programming, gnu, emacs, lisp
Organization: Stanford University CSLI
Date: Thu, 17 Dec 1992 12:19:04 GMT

In article <BzDDy9.65q@dcs.ed.ac.uk> jhe@dcs.ed.ac.uk (James Evans) writes:
>...
>  Does anybody know if it is possible to program in an object oriented way
>  in Gnu Emacs lisp.
>...

In the recent batch of the ACM journals I have subscribed to, there
was an article on ELOOP (whas that the exact name?), a package
providing functions and macros for object-oriented programming  in
Emacs LISP. Candidate journals are the ACM Sigplan, the ACM
Software-Engineering, or the LispPointers issues.

This is my last working day this year, so can't really just look it up
and tell you tomorrow. Can anyone else provide the exact reference?

--Juergen
J_Wagner@iao.fhg.de
gandalf@csli.stanford.edu
From: jhe@dcs.ed.ac.uk (James Evans)
Newsgroups: comp.lang.clos
Subject: Object Oriented Programming in GNU Emacs Lisp
Keywords: object oriented, programming, gnu, emacs, lisp
Date: 16 Dec 92 20:51:44 GMT
Organization: Department of Computer Science, University of Edinburgh


 **********************************
 * I am posting this for a friend * 
 **********************************

  Does anybody know if it is possible to program in an object oriented way
  in Gnu Emacs lisp.

  This is part of a final year project my friend has and one of the objectives
  is to provide re-usable code, hence the object orientation angle.

   He has to use this language as the rest of the project is to do with providing
   a grammer checker integrated within Gnu Emacs.

   If you have any ideas and/or references to other people, papers or newsgroup
   please direct your comments to me.  I am available as jhe@dcs.ed.ac.uk

   Thanks
From: charest@Aig.Jpl.Nasa.Gov (Len Charest)
Newsgroups: comp.lang.clos
Subject: Re: Best way to set class slots
Date: 17 Dec 92 22:12:26 GMT
Reply-To: charest@aig.jpl.nasa.gov
Distribution: comp
Organization: NASA/Jet Propulsion Laboratory

In article <23063@venera.isi.edu>, tar@ISI.EDU (Thomas A. Russ) writes:
|> 
|> I was wondering what the best way to set a slot with allocation :class
|> is.  In particular, I wonder if there is any way to do this portably
|> without creating an instance of the class.
|> 
|> Initially I thought that using the CLASS-PROTOTYPE from the MOP would
|> be a good solution, 

But isn't CLASS-PROTOTYPE technically an instance of the class? You may want to
try defining a subclass of STANDARD-CLASS and storing your information on a slot
of the subclass. Then the 'shared' slot would be available
even if no instances were ever created. If instances were created then they could
access they class object for the shared information; you could hide this
implementation with a custom method or with a method on SLOT-VALUE-USING-CLASS to
maintain the illusion of a shared slot:

(defclass alien-class (standard-class)
  ((collective-conscious :initform nil)))

(defclass martian ()
  ((sex :type (member :foo :bar :baz)))
  (:metaclass alien-class))  ;a subclass of standard-class!

;;; custom retrieval
(defmethod martian-collective-conscious ((m martian))
  (slot-value (class-of m) 'collective-conscious))

;;; slot-value illusion
(defmethod slot-value-using-class ((c alien-class) obj 
                                   (slot (eql 'collective-conscious)))
  (declare (ignore obj))
  (slot-value c 'collective-conscious))
..................................................
                                  Len Charest, Jr.
                 JPL Artificial Intelligence Group
                          charest@aig.jpl.nasa.gov
From: davis@passy.ilog.fr (Harley Davis)
Newsgroups: comp.lang.clos
Subject: Re: Best way to set class slots
Date: 18 Dec 92 09:37:11 GMT
Distribution: comp
Organization: ILOG S.A., Gentilly, France
In-reply-to: tar@ISI.EDU's message of 16 Dec 92 00:19:37 GMT


In article <23063@venera.isi.edu> tar@ISI.EDU (Thomas A. Russ) writes:

   I was wondering what the best way to set a slot with allocation :class
   is.  In particular, I wonder if there is any way to do this portably
   without creating an instance of the class.

   Initially I thought that using the CLASS-PROTOTYPE from the MOP would
   be a good solution, but the documentation indicates that setting slots
   on the prototype is a no-no.

   Currently I just make an instance, set the slot and then throw the
   instance away.  This just strikes me as wasteful.

   Any better ideas?

If you want to set a slot given the class but without an instance,
perhaps what you really want is a class slot -- ie, a new metaclass
with an additional slot.

   (defclass my-class (standard-class)
     ((new-slot :initform ...
                :accessor my-class-new-slot)))

Then your application classes specify my-class as their metaclass:

   (defclass app-object ()
     (...)
     :metaclass my-class)

It depends on the semantics of the slot in question.

-- Harley Davis

--

------------------------------------------------------------------------------
nom: Harley Davis			ILOG S.A.
net: davis@ilog.fr			2 Avenue Gallie'ni, BP 85
tel: (33 1) 46 63 66 66			94253 Gentilly Cedex, France
Newsgroups: comp.lang.clos
From: liberte@cs.uiuc.edu (Daniel LaLiberte)
Subject: Re: Object Oriented Programming in GNU Emacs Lisp
Organization: University of Illinois, Dept. of Comp. Sci., Urbana, IL
Date: Thu, 17 Dec 1992 23:20:50 GMT

In article <1992Dec17.121904.16849@Csli.Stanford.EDU> gandalf@Csli.Stanford.EDU (Juergen Wagner) writes:

   In the recent batch of the ACM journals I have subscribed to, there
   was an article on ELOOP (whas that the exact name?), a package
   providing functions and macros for object-oriented programming  in
   Emacs LISP.

"Eoops: An Object-Oriented Programming System for Emacs-Lisp", by
Chris Houser and Scott D. Kalter (chris and sdk @twinsun.com), Lisp
Pointers Volume V, Number 3.

I started porting the Tiny-CLOS to Emacs Lisp.  Anybody wanting to finish
it should mail me.

Guido Bosch <bosch@loria.fr> wrote a flavor-like package for Emacs Lisp.

Finally, I need to read a couple articles in Lisp Pointers Vols 1 and 2,
and I cannot find them anywhere on campus.  Someone please offer to
mail or fax them.  Thanks.

Dan LaLiberte
liberte@cs.uiuc.edu
(Join the League for Programming Freedom: lpf@uunet.uu.net)
From: tar@ISI.EDU (Thomas A. Russ)
Newsgroups: comp.lang.clos
Subject: Best way to set class slots
Date: 16 Dec 92 00:19:37 GMT
Reply-To: tar@isi.edu
Distribution: comp
Organization: USC-ISI


I was wondering what the best way to set a slot with allocation :class
is.  In particular, I wonder if there is any way to do this portably
without creating an instance of the class.

Initially I thought that using the CLASS-PROTOTYPE from the MOP would
be a good solution, but the documentation indicates that setting slots
on the prototype is a no-no.

Currently I just make an instance, set the slot and then throw the
instance away.  This just strikes me as wasteful.

Any better ideas?

--

Thomas A. Russ                                             tar@isi.edu    
USC/ISI, 4676 Admiralty Way, Marina del Rey, CA 90292      (310) 822-1511
Newsgroups: comp.lang.c++
From: jcarden@digi.lonestar.org (Jack Carden)
Subject: access to comp.lang.c++ from compuserve
Organization: Department of Computer Science, University of Toronto
Date: 16 Dec 92 14:11:56 GMT


Yes, I'm very interested.  How does one post or access from CompuServe?

Thanks
Jack Carden
Internet: jcarden@digi.lonestar.org	CompuServe: 76620,1623
From: maxtal@extro.ucc.su.OZ.AU (John MAX Skaller)
Newsgroups: comp.lang.c++
Subject: Re: C++ class libs survey.
Date: 20 Dec 92 12:52:46 GMT
Organization: MAXTAL P/L C/- University Computing Centre, Sydney

In article <486@imp.diablery.10A.com> devil@diablery.10A.com (Gil Tene) writes:
>Hello C++ Land,
>
>I'm doing a small survey about what C++ class libraries are out
>there. I'm interested in information about "good" class libs
>you know about. Also of interest:
>

	There aren't so many, if any, good general purpose class libraries, 
because in my opinion a good GPCL needs to use shared virtual bases,
templates, and exceptions, and most compilers do
not support all these features, or did not support them until recently.
 
>- Are there any trends showing for a "standard" C++ class lib?
>
	There will be some ANSI/ISO standard libraries, but these do not fall
under the category of a good class library. I expect only a very minimal,
bare bones set of classes, which is the way it should be.

>
>Please give a few details about class libs you work with. I will
>(of course) prepare a summary and post it.
>
	Due to my perception of the poor quality of most GPCL's,
I dont use any of them :-) I could be wrong, but I prefer to
wait until proper compiler support makes writing a good library
possible, before making a heavy committment to anything I haven't
written myself.

	I believe there are some very good special purpose libraries,
particularly numerical ones. 

	It is interesting that the numerical people have been most excited 
about producing qualtity components. Maybe because the overloadable
operators lend themselves best to numerical applications.

	Perhaps after FORTRAN ...  anyhow its a pity they didnt get 
the power operator IMHO.



-- 
;----------------------------------------------------------------------
        JOHN (MAX) SKALLER,         maxtal@extro.ucc.su.oz.au
	Maxtal Pty Ltd, 6 MacKay St ASHFIELD, NSW 2131, AUSTRALIA
;--------------- SCIENTIFIC AND ENGINEERING SOFTWARE ------------------
Newsgroups: comp.lang.c++
From: jimad@microsoft.com (Jim Adcock)
Subject: Re: What is Object Oriented Programming? Is C doomed?
Date: 11 Dec 92 21:50:13 GMT
Organization: Microsoft Corporation

In article <1992Dec10.101100.1@happy.colorado.edu> srheintze@happy.colorado.edu writes:
|I believe it was Ed Yourdon who first said:  "it is far easier to optimize a
|correct (i.e. working) program than correct an optimized program".
|
|Do you agree that:
|  (1) Modularization is a great aid to making correct programs?

Yes.

|  (2) What Youdon said was correct?

No, because it is easy to construct correct programs that are practically 
impossible to optimize and it is easy to construct optimized programs that
are practically impossible to correct.  The only way to make either correctness
or optimization "easy" [or even *possible*] is to plan, design and build to
make both possible from the start.  Given that a program is designed to be
easy to optimize, and given that a program is designed to be easy to correct,
then either task becomes easy [or at least *possible*]

In the worse case one finds cases of programs that are so suboptimal that
one cannot even afford to run them in order to find any of the bugs.
In which case one has to start by doing some optimizations even in the presence
of [massive] bugs.
Newsgroups: comp.lang.c++
From: warsaw@nlm.nih.gov (Barry A. Warsaw)
Subject: Re: Survey: File Extension
Reply-To: warsaw@nlm.nih.gov (Barry A. Warsaw)
Organization: Century Computing, Inc.
	<stanleyr.724172017@kramden> <Bz80Bu.HI4@knot.ccs.queensu.ca>
	<WARSAW.92Dec14101955@anthem.nlm.nih.gov>
	<1992Dec14.211010.10318@rd.hydro.on.ca>
Date: 14 Dec 92 21:50:46 GMT


    me> Should the .h file extension matter?  Do compilers supporting
    me> pre-compiled headers need to know the extension for header
    me> files?  Just wondering 'cause we use .cc and .hh

    Timothy> Is there a good reason for having separate extensions for
    Timothy> C and C++ header files?

    Timothy> One situation where I have found it useful to have
    Timothy> separate extensions is for editors which choose a mode
    Timothy> based on the extension.  However, I get around this with
    Timothy> GNU emacs using file local variables e.g.

That's one reason, though as you mention the file local vars should
handle that just fine.  The other really is just notational. It helps
our people to know if a header file is from some in-house package or
not when they're looking at a #include list.  .hh just seemed like it
paralleled .cc nicely...

It doesn't really have anything to do with #ifdef'ing on __cplusplus.
Newsgroups: comp.lang.c++
From: reindorf@us-es.sel.de (Charles Reindorf)
Subject: TRY ... FINALLY
Keywords: Exception Handling TRY FINALLY
Organization: SEL-Alcatel Line Transmission Systems Dept. US/ES
Date: Fri, 18 Dec 92 09:46:24 GMT

I have actually seen a post, I think on this newsgroup, concerning the equivalent
to Modula 3's TRY ... FINALLY clause. (This is exception handling related)

If you have :

   TRY

      statements1

   FINALLY

      statements2

   END

"statements1" gets executed follwed by "statements2" but, if an exception gets raised
executing "statements1" then "statements2" gets executed before re-throwing.

The important point here is that ANY exit from the TRY block results in "statements2"
being executed, this includes the equivalent of returns, branches, break, continue,
and normal exit from the loop. It is therefore *not* equivalent to the C++ example ...


   try
   {
       statements1
   }
   catch(...)
   {   statements2
       throw;
   }

Is there any proposal in the ANSI C++ committee to introduce some sort of "TRY ... FINALLY"
type of clause into C++. I have found that this is an extremely useful construct (even
in the absence of exceptions) for putting general "clean-up" code in the "statements2" section
which frees up new'ed memory, resets state variables, and so-forth. I cannot think of any
other concise and wieldy way of doing it.

Any comments?


Charles Reindorf


Newsgroups: comp.lang.c++
From: steve@taumet.com (Steve Clamage)
Subject: Re: Operator "new" - how to catch array-allocation?
Organization: TauMetric Corporation
Date: Tue, 15 Dec 1992 17:41:03 GMT

sabroe@daimi.aau.dk (Morten Sabroe Mortensen) writes:

>As you know, it's possible to attach a special 'new' operator on a
>specific class, -something like
>class A
>{
>public:
>  void* operator new(size_t s);
>}

>So, well, -when doing something like
>	A* a=new A;
>the new 'new' for my class A is used, but when doing something like
>	A* a=new A[25];
>the global new operator is used, it seems! Can it be true, it should
>work like this?

Yes, that is what is specified in the ARM, and current C++ implementations
work that way.  It is explained in the ARM on page 60.

At the last C++ Committee meeting (November 1992, Boston) we voted in
a new syntax to allow overriding the 'new' used for allocating
arrays with a class-specific version.  This would be a different
operator new() from the one which allocates a single object.

Future implementations of C++ should support this new feature, assuming
it is not later removed or modified.
-- 

Steve Clamage, TauMetric Corp, steve@taumet.com
Newsgroups: comp.lang.c++