comp.lang.ada
 help / color / mirror / Atom feed
* Object,Subject,Verb, and Phrase (Sentence) Oriented Programming
       [not found]   ` <ymizp21cu2v.fsf@sevak.isi.edu>
@ 1999-06-16  0:00     ` Fernando D. Mato Mira
  1999-06-16  0:00       ` Fernando D. Mato Mira
  0 siblings, 1 reply; 5+ messages in thread
From: Fernando D. Mato Mira @ 1999-06-16  0:00 UTC (permalink / raw)


"Thomas A. Russ" wrote:

> I would argue that the CLOS style model would be a polymorphic form of
> Verb Oriented programming.  That is because the methods attach to the
> generic function rather than to any of the objects involved.  I would
> suggest that "Sentence Oriented" would be better placed under the Verb
> Oriented category.

Just got back from dinner and relaxation and the thing got brewing.
See below and give me your opinion [am I psychic or what? ;-)]

> I also prefer the term "Sentence Oriented" to "Phrase Oriented" because

Me too, and also because (for me) it's rythmically more pleasing. However,
then your abbreviations
would be something like SuO and SeO. That's what I meant by more practical.
So I'llcontinue using SO and PO, at least for now, for brevity and clarity.

*** NEW STUFF ***

Although the new terminology in the way it was presented seem to serve
a valid purpose, making communication and understanding easier (as phrases
like
"language with multimethods" or "single-dispatching OO language"), it is
not clear from there whether having them to basically be synoymns for
existing
concepts could not be considered pointless, or whether it would be better
to
use the thems VO, SO and PO only in the context of OO languages, so that
one could just say `a PO language" instead of `a POOO language'
(although SOOO [good], VOOO, and POOO seem quite useful for religious wars
;-) )

But it's possible to do better. In fact, one can talk about VO,SO,and PO in

the different dimensions categorizing a language:

I'll just make up a CO (Complement Oriented) term for the time being to
assign to all the theoretical cases
where it could be a direct object, indirect object, or other part of speech
(so maybe it's better to reserve the `P' for this?)

Key:
PO: Phrase Oriented
VO: Verb Oriented
SO: Subject Oriented
CO: Complement Oriented

Syntax:

VO: v(s,o,i)
SO: s.v(o,i)
PO: s v: o with: i  Shape of a fork (cuttlery), the subject can be seen
        in a symmetric position, not just `before the rest'.
       (v s o) Analogous.

       Whether a (imperative)  sentence should begin or end
       with a verb or not, can change across diffenent natural languages.

No language with strange `CO' syntax exists.

Dispatching:
VO: monomorphic
SO: single dispatch (single dispatch on something that is not the `subject'
in some sense (syntactic position,
       encapsulator) is _theoretically_ possible, it could be said `not
all', but we can define that the `subject'
       at the dispatching level is the distinguished dispatching argument.
[One could say the general case is
      CO, or OO in the non-syntactic (`structural') sense, but that is
another story]
PO: multiple dispatch

Encapsulation:
VO: CLOS, dylan
SO: C++, Eiffel, ...
PO: Cecil

Fortunately, nobody encapsulates methods in the class of a `non-subject'
argument.
But here one could could use CO again. And SO and CO are both `structural'
OO.


So you can say, for example, that Dylan is `a  PO (dispatching) language
withVO syntax and VO encapsulation',
or that Smalltalk is `a SO (dispatching) language with PO syntax (and SO
encapsulation)'


This is getting interesting. Now starts to take form something that could
actually be called a `paper'..


Thanks for your input,

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html







^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Object,Subject,Verb, and Phrase (Sentence) Oriented Programming
  1999-06-16  0:00     ` Object,Subject,Verb, and Phrase (Sentence) Oriented Programming Fernando D. Mato Mira
@ 1999-06-16  0:00       ` Fernando D. Mato Mira
       [not found]         ` <19990617103727.07296.00000475@ng34.aol.com>
  0 siblings, 1 reply; 5+ messages in thread
From: Fernando D. Mato Mira @ 1999-06-16  0:00 UTC (permalink / raw)


"Fernando D. Mato Mira" wrote:

> Dispatching:
> VO: monomorphic
> SO: single dispatch (single dispatch on something that is not the `subject'
> in some sense (syntactic position,
>        encapsulator) is _theoretically_ possible, it could be said `not
> all', but we can define that the `subject'
>        at the dispatching level is the distinguished dispatching argument.
> [One could say the general case is
>       CO, or OO in the non-syntactic (`structural') sense, but that is
> another story]
> PO: multiple dispatch

Correction. I have to refresh my memory on the specs to see how to classify
Ada!!  [Hm. Do I change my paper or the standard? ;-)]
I also have to see where it goes for encapsulation.


--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html







^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Object,Subject,Verb, and Phrase (Sentence) Oriented Programming
       [not found]         ` <19990617103727.07296.00000475@ng34.aol.com>
@ 1999-06-18  0:00           ` Fernando D. Mato Mira
  1999-06-18  0:00             ` Matthew Heaney
  0 siblings, 1 reply; 5+ messages in thread
From: Fernando D. Mato Mira @ 1999-06-18  0:00 UTC (permalink / raw)


Rjbotting wrote:

> Fernando D. Mato Mira excogitated:
> > I have to refresh my memory on the specs to see how to classify
> >Ada!!
> Hm.... I've been thinking aabout Ada since this
> came up:
> >Fernando send: aPaper about: subjectOriented to: OOPSLA
> which reminded me of vintage Ada:
> send(subject=>Fernando,object=>aPaper, about=>subjectOriented, to=>OOPSLA);

Comments welcome.    [** see below]

>
> When I was working on the syntax of a
> language I decided that, in general
>   f(a,b,c....)
>   a.f(b,c,....)
>   (a,b).f(c,...)
> etc
> would be different syntax for the same expression

Yup.

>
>
> (What we used to call "syntatic sugar" in the 70s)

"Syntactic sugar causes cancer of the semicolon" -- Alan Perlis

>
>
> I also experimented with parsing sentence like
> commands:
>   Fernando: move thePaper to OOPSLA.
> (how did COBOL get in here?)
>

Oh, no! Don't tell me I have sto study OO Cobol now! ;->
Gee. I've become a `language botanist'.. [** AND archeologist!]

>
> I have no data as to what works "best".

What "works best" depends. It seems to me that the categorization tells
you when a language is nicely put together in broad lines. i.e., both Eiffel
and C++
are SO in all these dimensions, but we know there's a difference, isn't it?
;->
But then, they lose some clarity if you extend just the dispatching, for
example.
Fitting in different ones might indicate a need for `more work', but which
in the end can result in a nicer language.


PS:
Really, can't Ada dispatching be upgraded w/o losing backwards-compatibility?
I still
have to get my refs. But for what I remember, it seems so.. Time for a poll..

--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1                   email: matomira AT acm DOT org
CH-2007 Neuchatel                 tel:       +41 (32) 720-5157
Switzerland                       FAX:       +41 (32) 720-5720

www.csem.ch      www.vrai.com     ligwww.epfl.ch/matomira.html







^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Object,Subject,Verb, and Phrase (Sentence) Oriented Programming
  1999-06-18  0:00           ` Fernando D. Mato Mira
@ 1999-06-18  0:00             ` Matthew Heaney
  1999-06-18  0:00               ` Fernando Mato Mira
  0 siblings, 1 reply; 5+ messages in thread
From: Matthew Heaney @ 1999-06-18  0:00 UTC (permalink / raw)


On 18 Jun 1999 11:52, "Fernando D. Mato Mira" <matomira@acm.org> wrote:

> Really, can't Ada dispatching be upgraded w/o losing
> backwards-compatibility?

What are your specific objections to "Ada dispatching"?  

And how is dispatching in Ada any different from dispatching in Eiffel
or C++?


> I still have to get my refs. But for what I remember, it seems
> so.. Time for a poll..

I don't understand what you're trying to say here.





^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Object,Subject,Verb, and Phrase (Sentence) Oriented Programming
  1999-06-18  0:00             ` Matthew Heaney
@ 1999-06-18  0:00               ` Fernando Mato Mira
  0 siblings, 0 replies; 5+ messages in thread
From: Fernando Mato Mira @ 1999-06-18  0:00 UTC (permalink / raw)




Matthew Heaney wrote:

> On 18 Jun 1999 11:52, "Fernando D. Mato Mira" <matomira@acm.org> wrote:
>
> > Really, can't Ada dispatching be upgraded w/o losing
> > backwards-compatibility?
>
> What are your specific objections to "Ada dispatching"?
>
> And how is dispatching in Ada any different from dispatching in Eiffel
> or C++?

Eiffel, C++, Ada fall all in the same category here.
See Dylan or standard CLOS dispatching. That's what I'd like. And it
doesn't
mean that also having restricted single dispatch would not be possible.

> > I still have to get my refs. But for what I remember, it seems
> > so.. Time for a poll..

The word about multimethods seem to be spreading. Ada95 embraced OO.
Is a new round scheduled? And the poll is; "Who wants that?"

Ada has an edge here w.r.t. Eiffel and C++ regarding adoption of multi
dispatch.
Extending the others will imply having them look gratuitously asymmetric or
increase
in complexity. Resolving how that would interplay with overloading in C++
will be an issue.
Eiffel uses classes as the unit of encapsulation. That is weird for
multimethods. Not to say
anything about extensibility.






^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~1999-06-18  0:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <7k3f2n$3gk$1@news1.Radix.Net>
     [not found] ` <37662F29.F4CFB69F@iname.com>
     [not found]   ` <ymizp21cu2v.fsf@sevak.isi.edu>
1999-06-16  0:00     ` Object,Subject,Verb, and Phrase (Sentence) Oriented Programming Fernando D. Mato Mira
1999-06-16  0:00       ` Fernando D. Mato Mira
     [not found]         ` <19990617103727.07296.00000475@ng34.aol.com>
1999-06-18  0:00           ` Fernando D. Mato Mira
1999-06-18  0:00             ` Matthew Heaney
1999-06-18  0:00               ` Fernando Mato Mira

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox