HDTenEightyP/NetNews huggingface dataset:
From: caromel@mimosa.unice.fr (Caromel Denis)
Newsgroups: comp.lang.eiffel
Subject: OO Concurrency
Keywords: wait-by-necessity
Date: 12 Oct 92 15:19:22 GMT
Organization: University of Nice-Sophia Antipolis
NNTP-Posting-Host: mimosa.unice.fr

In <1992Oct1.105430.428@dsg.cs.tcd.ie> 
cjmchale@dsg.cs.tcd.ie (Ciaran McHale) writes:

>>One very neat idea for synchronization was proposed by D. Caromel. He
>>called it "wait-by-necessity" (also called "lazy wait").
>Wait-by-necessity has some semantics which I think are a bit strange.
>For example, to quote from page 17 of [Caromel-1] (ref at the end of
>this email):
>
>	res := ob1.op1;
>	res := ob2.op2;
>	<use of res>
>
>	In this situation, the first result (from obj1 or obj2) is
>	[assigned] to res... If the second result comes back... it is
>	lost. This asynchrony allows Project Team resolution.
>Those semantics are different from the semantics you would expect in a
>purely sequential language. I don't like the subtle difference. (I guess
>that one person's neat idea is another's unsafe optimisation:-)

Ciaram Mchale is right, but references a paper which is quite old now.
The semantics for "wait-by-necessity" we actually adopted is: 
   whatever the result which comes back first, the variable "res" 
   contains the result of the "ob2.op2" call.

Whatever the speed of the two asynchronous calls, you get in "res" 
the value you would get in with the sequential system.
Of course, the idea is to preserve the semantics when transforming a 
sequential system into a parallel one. Much recent papers describing
wait-by-necessity are in refs.

BTW, I don't think wait-by-necessity should be called "lazy wait" 
since it is confusing. The semantics of the functional "lazy evaluation" 
implies that we do the evaluation only if we need the value. In the 
wait-by-necessity, we do the asynchronous call, the evaluation, in any case.

Denis
--
   Denis Caromel - I3S
   Universite de Nice Sophia Antipolis - C.N.R.S. U.R.A. 1376 - France
   Mail: I3S, Bat. 4 Avenue Einstein, Sophia Antipolis, F-06560 Valbonne
   Ph.: (33) 92 94 26 25, Fax: (33) 92 94 28 98,
   E-Mail: caromel@mimosa.unice.fr, Telex: GRP 970 006

References:
Caromel, D.
``Concurrency and Reusability: From Sequential to Parallel''
Journal of Object-Oriented Programming, 3(3), September 1990.

Caromel, D.
``Concurrency: an Object-Oriented Approach'',
TOOLS'90, Paris, 1990.

Caromel, D.
"Programming abstractions for concurrent programming"
TOOLS PACIFIC'90, Sydney, Australia, November 1990.

Caromel, D.
``Programmation Parall`ele Asynchrone et Imp'erative,: Etudes et Propositions'',
Th`ese de Doctorat de l'Universit'e de Nancy I, France. February 1991.

Caromel, D., Rebuffel M.
"Ten Language Features to Achieve Reuse",
Workshop on Object-Based Concurrency and Reuse,
ECOOP'92, Utrecht, The Netherlands.
From: Markus_Klingspor@wue.maus.de (Markus Klingspor)
Newsgroups: comp.lang.eiffel
Subject: Re: like current
Date: 10 Oct 92 08:11:00 GMT
Article-I.D.: WUe.A2143
Organization: MausNet
X-Gateway: MausGate/News 1.14

In article <1992Oct9.055733.10733@news.jit.dec.com> diamond@jit533.jit.dec.com
(Norman Diamond) writes:
dd>>class tA
dd>>feature
dd>>        tst(t: tA): like current is do
dd>>            result := t;
dd>
dd>That assignment looks type-unsafe to me.  Does the language definition
dd>really allow it?  I'd believe this if you coded it:
dd>             result ?= t;
Eiffel The Language p.225 says:
In a class C, type like Current conforms directly to its base type CT, where
CT is C followed by its Formal_generic_list, if any, with any Constraint
removed.
I think this allows for the above assignment. Of course it's type-unsafe.

The same problem arises, if you have an assignment to a feature in a base class
and redefine the feature in a descendant. That is even worse, because for an
anchored type it's clear that it will be redefined, but for the redefinition of
a feature there is no hint in the base class.

I ran into the problem, when I wanted to implement anchored declarations in a
oop-extened modula-2 compiler. I found no easy way to fix the problem. Which
is partly due to the restrictions of the separate compilation mechanism in
modula-2.
------------------------------------------------------------------------------
Markus Klingspor Internet: mk@wue.maus.de
Gerbrunn                or klingspo@informatik.uni-wuerzburg.dbp.de
Germany          UUCP:backbone_that_knows_domains!wue.maus.de!mk
                 Fido: Markus_Klingspor%maus wue, 2:242/2.6
Newsgroups: comp.lang.eiffel
From: wagg@zellweger.ch (Georg Wagner)
Subject: Re: PD C source of Eiffel ???
Keywords: Eiffel on Atari ST
Reply-To: wagg@zellweger.CH (Georg Wagner)
Organization: Zellweger Uster AG, Switzerland
Date: Fri, 16 Oct 92 11:47:29 GMT

The port to the Atari ST is already done, but it is a commercial product
and not PD.

Georg


Newsgroups: comp.lang.eiffel
From: pdc@dcs.ed.ac.uk (Paul Crowley)
Newsgroups: comp.lang.eiffel
Subject: Freeware, Sather, types and other questions.
Date: 13 Oct 92 13:55:42 GMT
Reply-To: pdc@dcs.ed.ac.uk (Paul Crowley)
Organization: Laboratory for the Foundations of Computer Science, Edinburgh U

I just recently read Meyer's "Object Oriented Software Construction"
and I'm a convert.  In an ideal world, I'd never write another line of
C again.  Is there a freeware version of Eiffel?  If not, are there
similar languages which are free?

I know about Sather and it seems very nice indeed.  One thing I found
strange: it allows you to assign to a variable from a supertype of
that variable, assuming that you know what you're doing.  Presumably
if you get it wrong and you subsequently try to invoke a method not
available on the supertype, Bad Things Happen.  This seems an especial
shame since apart from things like divide-by-zero errors Sather
provides few opportunities for Bad Things to Happen which is most
refreshing to someone who's used to C's habit of causing Bad Things
like segmentation violations to Happen at the drop of a slighly bugged
hat.

In Xt (which is the only real experience of anything approximating to
OO programming that I have) there's a rather nice function called
XtIsSubclass which does what it says it does, so you could test before
you attempt to do any such assignments.  Do primitives exist which
attempt such an assignment and leave the variable empty if the classes
don't work out?  Is this what people mean by "downcasting"?

I've been poking my head around the corner of the debate around other
kinds of typing.  I did a little ML here in Edinburgh and was left
unconvinced of the usefulness of Milnerian polymorphism, especially if
you leave out the higher-order bits (which I didn't like either and
now consider a kludge solution to what dynamic dispatch solves well).
What sort of non-trivial classes could you use them to implement?  For
that matter, I can only think of about three classes you can implement
with parameterized types, and it seems only a small overhead to use a
top-level type and a subclass-testing primitive.

Are there any tools for writing X windows programs in a language with
all the best OO features (ie strong static typing, dynamic despatch,
multiple inheritance, garbage collection)?

Should I be doing my homework somewhere else before sending these
questions to the group?  Perhaps there's somewhere to discuss Sather
itself?  Thanks for any answers.
--
  __                                ____
\/ o\ Paul Crowley pdc@dcs.ed.ac.uk \  /
/\__/ "SET ME ON FIRE!" - Big Black  \/
Newsgroups: comp.lang.eiffel
From: gmaughan@monu6.cc.monash.edu.au (Glenn Maughan)
Subject: Converting basic types to STRING
Organization: Monash University, Caulfield Campus
Date: Thu, 15 Oct 1992 04:46:16 GMT

I am trying to convert basic types such as, INTEGER, REAL, and CHARACTER
to STRING for displaying in a graphic window.

I would like to send an object of type ANY to a function that will return
the string representation of the object's value.  (I have already determined
that the object is one of the above).

The solution I am working on at the moment:

string_value (object: ANY): STRING is
	local
		temp_int: INTEGER;
	do
		Result.Create (20);
		if class_name (object).equal ("INT") then
			temp_int ?= object;
			Result := to_string (temp_int);
		elsif class_name (object).equal ("FLOAT") then
			Result.append (object.out);
		elsif class_name (object).equal ("CHAR") then
			Result.append (object.out); 
		end;
	end; -- string_value

Feature class_name is from class INTERNAL
and feature to_string from BASIC.

The command out on FLOATs gives me binary.  Is there any way of converting
a FLOAT to STRING?  Also the INT section of code above sometimes gives
me C compilation errors.  (uncompleted macro or something like that).

One problem that happens is that `object' is of type ANY and does not conform
to INT, FLOAT or CHAR.  And so I cannot directly perform operations such
as to_string on `object'.  

Does anyone have any ideas?

Thanks for any replies,
Glenn
-- 
--------------------------------------------------------
Glenn Maughan
Software Development Honours
email: gmaughan@monu6.cc.monash.edu.au
From: l42@nikhefh.nikhef.nl (Sake Hogeveen)
Newsgroups: comp.lang.eiffel
Subject: PD C source of Eiffel ???
Date: 15 Oct 92 09:20:19 GMT
Reply-To: l42@nikhefh.nikhef.nl (Sake Hogeveen)
Distribution: world
Organization: Nikhef-H, Amsterdam (the Netherlands).

Gentle Reader,

A collegue of mine, with no access to the networks, is interested in
developing Eiffel for the Atari ST/TT series.

He understands that Eiffel is being developed in the Public Domain,
and that somewhere a C-source of the current version of Eiffel is
available.

He would like to know whether this is indeed so, and, if not, what
would be the way to get/make a port of Eiffel to the Atari.

On behalf of Leonard Kater,

Sake J. Hogeveen
______________________________________________________________________________
Astronomical Institute `Anton Pannekoek', Kruislaan 403, 1098 SJ Amsterdam,
The Netherlands. Telephone: +31 (0)20 525 7470/7491
Fax: +31 (0)20 525 7484     Telex: 10262 hef nl
E-mail: A410SAKE@VM1.SARA.NL or A410SAKE@HASARA11.BITNET or
        l42@nikhefh.nikhef.nl
From: ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie)
Newsgroups: comp.lang.forth
Subject: What should the Standard include?
Date: 9 Oct 92 12:01:51 GMT
Organization: EIEI-U

Category 10,  Topic 30
Message 165       Fri Oct 09, 1992
E.RATHER [Elizabeth]         at 01:37 EDT
 
Regarding trademarking...  we abandoned the trademark of FORTH spelled with
any letters) in the early 80's, because we realized there was more to be
gained by having it widely supported & used. Our currently protected
trademarks are polyFORTH, chipFORTH (actually the TM of our English rep,
COMSOL, which we protect in the US), Target Compiler, EXPRESS Event Management
and Control System (our new process control OOPS pkg), and clusterFORTH (high-
level protocol).

And, yes, we do spell the company name FORTH, Inc. (caps as shown).
-----
This message came from GEnie via willett.  You *cannot* reply to the author
using e-mail.  Please post a follow-up article, or use any instructions
the author may have included (USMail addresses, telephone #, etc.).
Report problems to: dwp@willett.pgh.pa.us
Newsgroups: comp.lang.forth
Subject: CREATE .. DOES>
From: mentink@wronz.org.nz
Date: 14 Oct 92 15:06:31 +1300


        Can anyone HELP please.

	I would appreciate any source ( forth or asm ) for the
	CREATE .. DOES> set of words for eforth or F83.
	I have tryed converting the figForth version, but not
	having a lot of success!.

        Thanks in advance.

        Regards.

        B.R.Mentink
        W.R.O.N.Z
        Christchurch
        New Zealand. 

        email: mentink@wronz.org.nz
From: spelk@cix.compulink.co.uk (MPE Ltd)
Newsgroups: comp.lang.forth
Subject: Floating Point
Date: 16 Oct 92 00:32:30 GMT
Reply-To: spelk@cix.compulink.co.uk

>From: ahaley@eo17 (Andrew Haley)
>MPE Ltd (spelk@cix.compulink.co.uk) wrote:
Please note that SPELK represents my private opinions, company messages
are sent from MPE.

>: This thread on floating point seems to be more about "how do
>: I grab a few cells for a short time". Looking at the syntax
>: usually proposed for such objects, I get the impression that
>: most users want these objects to be in memory space, NOT in
>: stack space.
>: 
>: If this is true, the use of a frame stack (just like C or Pascal)
>: should be perfectly acceptable. To avoid multiple frame
>: stacks in main memory, allocation could be from a heap.

>So every time you want a block of floating point temporaries, you have
>to do a heap walk?  Is that what you mean?  Steve, you _cannot_ be
>serious!  Even C doesn't do that.  Either that or I've
>misunderstood...

Go on, Andrew! Ignore the main point. But I aplogise for the lack of
clarity. What I should have said is allocation of frame stacks (at task
activation time) could be from the heap. Writing postings late at
leads to bad writing at times, I'm afraid.

The main point, however, is that once one has bitten the bullet of
writing a tool such as a memory manager, it can actually be used to
REMOVE complexity from a system.

In a similar vein, writing a tool such as an interface to the standard
operating system object file format removes the need to write a great
deal of library code. If people in the Forth community wish C
programmmers to become multilingual, then C programmers have every right
to expect Forth programmers to be multilingual. And with multilingual
ability might come multi-culturalism and mutual respect?

Stephen

EuroForth Conference - 23-25 October 1992
The hotel is pressing us to close the room numbers soon. If you want
to come, and have not contacted the office on +44 703 631441, please do
so NOW, or risk sleeping in the bathroom. The bar is open all night.
If you are arriving in England at Heathrow/Gatwick, the office can
give you details of transport to/from the conference.
Newsgroups: comp.lang.forth
From: ingles@engin.umich.edu (Ray Ingles)
Subject: Forth FAQ?
Date: Wed, 14 Oct 92 23:28:05 EDT
Organization: University of Michigan Engineering, Ann Arbor
Summary: Another idiot newbie...

 Is there a FAQ for this group? I've been reading a little while, and
I wouldn't mind seeing one... if so, I'd really appreciate it if it
could be posted or emailed to me...

Sincerely,

Ray Ingles                  || The above opinions are probably
                            || not those of the University of
ingles@engin.umich.edu      || Michigan. Yet.
From: dwp@willett.pgh.pa.us (Doug Philips)
Newsgroups: comp.lang.forth
Subject: Re: Multiple stacks (was Re: Floating Point)
Date: 8 Oct 92 16:37:13 GMT
Organization: EIEI-U

In article <1992Oct6.192831.12573@csi.uottawa.ca>
	cbbrowne@csi.uottawa.ca (Christopher Browne) writes:
+The "problem" of having additional wordsets doesn't HAVE to be a big
+problem:

+(a) For the already known "special words", there may be little
+EXTERNAL need to do any inter-stack operations.

I agree.

+(b) Then we have the more "generic" extra stacks.  The "user-defined"
+stacks, for instance.

+Doing a stack for a more complex "datatype" is going to be somewhat
+more difficult; but since defining a stack and its operators really
+only takes about 3 or 4 lines of code, additional stacks would be easy
+to hack up when needed.

+I haven't mentioned machine architectures or optimization thus far;
+I've been sort of assuming stack definitions that are written in
+Forth.  This is going to be quite a bit slower than native code in
+most cases; a more professional implementation would want to optimize
+the life out of these.

Indeed.  In fact, I could image an implementation that has ADTs for keeping
track of system resources (register allocation, memory allocation, etc.),
so that your stack creating words would write "custom" machine language
that would be as good as hand written code.  You could allow the user
to choose, or you could predecide, such things as "try to keep TOS..TOS-n"
(for a given n) in registers, the items in this stack are m cells wide,
I need the following operators ( DUP SWAP ) which operate within the
stack itself, I need to be able to move items between this stack and
( the return stack, the parameter stack, another given user defined stack ),
etc.

-Doug
---
Preferred:  dwp@willett.pgh.pa.us	Ok:  {pitt,sei}!willett!dwp
Newsgroups: comp.lang.forth
From: mikc@hal.gnu.ai.mit.edu (Mike Coughlin)
Subject: Re: Multiple stacks (was Re: Floating Point)
Organization: /etc/organization
    When I first heard the term "stack machine" I decided that it must
    The possibilities are endless. A stack for everything. A stack for
    But after a while the complications got to me. I didn't know what
    Forth has two stacks. No more, no less. And it has the ability to
Date: Sun, 11 Oct 1992 19:38:23 GMT
From: jax@WELL.SF.CA.US ("Jack J. Woehr")
Newsgroups: comp.lang.forth
Subject: Re: Who invented RPN ?
Date: 11 Oct 92 07:39:07 GMT
Reply-To: FIGI-L%BRUSPVM.BITNET@cmsa.Berkeley.EDU
Organization: The Internet

In comp.lang.forth you write:

>Hi folk,

>As I remember, some time ago someone posted a message giving the name of
>the Polish mathematician who reputedly invented the post-fix notation
>(Revise Polish Notation).

>Would it be possible for someone to repost this (with accents if possible)
>as I would like to include the name in some documentation I am writing.

	Pete, it waren't I, but the mathematician was the Pole
Lukasiewicz and I think there's a dot over the s and a hook on
the underside of the e. Hopw you get better info ... let me know.
--
 # jax@well.{UUCP,sf.ca.us}  # #  Member  # # Vice President,       #
 # du!isis!koscej!jax        # # X3J14 TC # #  Forth Interest Group #
 # JAX on GEnie              # # for ANS  # #   P.O. Box 8231       #
 # SYSOP RCFB (303) 278-0364 # #  Forth   # #    San Jose CA 95155  #
Newsgroups: comp.lang.forth
From: jax@well.sf.ca.us (Jack J. Woehr)
Subject: Re: Looking for 8031 native forth
Organization: Whole Earth 'Lectronic Link
Date: Mon, 12 Oct 1992 04:01:08 GMT

In <1992Oct11.013024.903@mala.bc.ca> bigras@mala.bc.ca writes:

>Hi,
>I am looking for a 8031/51 fig forth.

	There are downloadable 8051 Forths on the RealTime Control & Forth
Board, number in .signature below \/\/\/

		=jax=
-- 
 # jax@well.{UUCP,sf.ca.us}  # #  Member  # # Vice President,       #
 # du!isis!koscej!jax        # # X3J14 TC # #  Forth Interest Group #
 # JAX on GEnie              # # for ANS  # #   P.O. Box 8231       #
 # SYSOP RCFB (303) 278-0364 # #  Forth   # #    San Jose CA 95155  #
From: dwp+@cs.cmu.edu (Doug Philips)
Newsgroups: comp.lang.forth
Subject: Re: FORTH & OS/2
Summary: something salient, shortly stated, sadly seldom satoric
Date: 13 Oct 92 14:02:01 GMT
Article-I.D.: cs.Bw2CBr.Jtn.1
Organization: EIEI-U

In article <meek.3.718942651@fizzy.csu.murdoch.edu.au>,
	meek@fizzy.csu.murdoch.edu.au (Lindsay Meek) writes:
+In article <4106.UUL1.3#5129@willett.pgh.pa.us>,
	ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie) writes:
+>         Mike, thanx for uploading FORTH001.ZIP, a 32-bit
+> shareware Forth for OS/2 full screen text mode.
+
+>                 =jax=
+Say,
+	Is this 32-bit forth available from an FTP site anywhere?
+Thanks
+	Lindsay Meek

Since I expect this is a common question, I decide to post rather than
email my answer.  Currently it is not, to my knowledge, available on FTP.
Were this file to make it to FIG's library on GEnie (Hint Hint Hint),
then I could make it available from FNEAS and arrange to send it to the
FTP site.  If/when that happens there will be another article posted.
If anyone near to the RCFB would like to uuencode, split and email it to
me, I'll reverse the process and upload it to FIG's library on GEnie and
to the FTP site.  

-Doug
Newsgroups: comp.lang.forth
From: meek@fizzy.csu.murdoch.edu.au (Lindsay Meek)
Subject: Re: FORTH & OS/2
Organization: MPS Physics
Date: Tue, 13 Oct 1992 02:17:31 GMT

In article <4106.UUL1.3#5129@willett.pgh.pa.us> ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie) writes:
>From: ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie)
>Subject: FORTH & OS/2
>Date: 9 Oct 92 12:01:41 GMT

>         Mike, thanx for uploading FORTH001.ZIP, a 32-bit
> shareware Forth for OS/2 full screen text mode.

>                 =jax=
Say,
	Is this 32-bit forth available from an FTP site anywhere?
Thanks
	Lindsay Meek
From: John_Somerville@mindlink.bc.ca (John Somerville)
Newsgroups: comp.lang.forth
Subject: Re: String handling and sorting?
Date: 11 Oct 92 01:04:59 GMT
Organization: MIND LINK! - British Columbia, Canada
Distribution: world

Forth uses counted strings. Thus you can index your way through and compare
character by character after setting the DO ... LOOP to the minimum of the
two word COUNTs.

regards john
--
john somerville B.C. Hydro
affiliations FIG Forth Interest Group
From: ahaley@eo17 (Andrew Haley)
Newsgroups: comp.lang.forth
Subject: Re: Floating Point
Date: 9 Oct 92 16:12:34 GMT
Organization: EO, Inc.
X-Newsreader: TIN [version 1.1 PL6]

MPE Ltd (spelk@cix.compulink.co.uk) wrote:
: 
: This thread on floating point seems to be more about "how do
: I grab a few cells for a short time". Looking at the syntax
: usually proposed for such objects, I get the impression that
: most users want these objects to be in memory space, NOT in
: stack space.
: 
: If this is true, the use of a frame stack (just like C or Pascal)
: should be perfectly acceptable. To avoid multiple frame
: stacks in main memory, allocation could be from a heap.

So every time you want a block of floating point temporaries, you have
to do a heap walk?  Is that what you mean?  Steve, you _cannot_ be
serious!  Even C doesn't do that.  Either that or I've
misunderstood...

: There are lessons to be learnt from other languages which already
: have long implementation histories.

Maybe, but IMHO this isn't one of them.  FORTH's design was highly
innovative- let's think innovatively to solve these problems, rather
than piling kluges on top of kluges a la C.

: Stephen Pelc

Andrew.
From: ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie)
Newsgroups: comp.lang.forth
Subject: polyFORTH and other Forth Inc. products
Date: 9 Oct 92 12:01:46 GMT
Organization: EIEI-U

Category 7,  Topic 7
Message 19        Fri Oct 09, 1992
E.RATHER [Elizabeth]         at 01:13 EDT
 
"Target Compiler" has been a registered trademark of FORTH, inc. since 1978. 
We don't aggressively protect it, but we would appreciate other folks using
other terms.  "Cross compiler" seems a perfectly adequate and widely
understood term .
-----
This message came from GEnie via willett.  You *cannot* reply to the author
using e-mail.  Please post a follow-up article, or use any instructions
the author may have included (USMail addresses, telephone #, etc.).
Report problems to: dwp@willett.pgh.pa.us
From: esj@harvee.billerica.ma.us (Eric S Johansson)
Newsgroups: comp.lang.forth
Organization: gators 'r us
Subject: Re: An Open ANSI Forth Implementation
	<1992Oct2.161550.7536@email.tuwien.ac.at>
Reply-To: esj@harvee.billerica.ma.us
X-Software: HERMES GUS 1.03 Rev. Apr 14 1992
Date: Wed, 07 Oct 1992 07:48:46 -0500

In <1992Oct2.161550.7536@email.tuwien.ac.at>, Anton Martin Ertl writes:
>
>Besides the obvious manpower and maintenance (there are dozens of
>target machines and we don't have access to many of them) problems
>there's another reason why ANSI figForth will not be native code.

You can bypass the access and maintenance issues by using the time 
honored techinque of generating C as your high-level assembler code.
Or if you are feeling more hyper, you could rip open GCC and feed RTL 
into the code generator.

--- eric
-- 
HOME: esj@harvee.billerica.ma.us  HAM  ka1eec
WORK: 617.630.4687 (w)   esj@ruby.polaroid.com
source of the public's fear of the unknown since 1956