Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: "Mark Nicholls" <Nicholls.Mark@xxxxxxxxx>
- Date: 7 Mar 2007 09:21:27 -0800
On 7 Mar, 16:05, "topmind" <topm...@xxxxxxxxxxxxxxxx> wrote:
Mark Nicholls wrote:
I did reply to this, but something seems to have prevented it
appearing.
On 6 Mar, 22:10, "topmind" <topm...@xxxxxxxxxxxxxxxx> wrote:
Mark Nicholls wrote:
You are basically using
a variation of the age-old Turing Equivalency argument to claim OO is
a superset of procedural.
no I am not, I never mentioned it, and I don't see how it applies.
you seem to be making up flawed arguments in your head and then
claiming I said them.
Dude, grow some diplomacy skills. Why not simply say, "There seems to
be a misunderstanding between us" rather than a form of "your head is
probably broken". I suspect sinister/dumb behavior from at least half
of everyone I talk to in a given day. However, I don't suggest that
beleif to their face.
Sometimes I think the problem with the 'net is that in real life being
overly frank risks getting you a new set of teeth. There is no such
check on behavior on the 'net. (Sometimes that is good, but has big
downsides also.)
I was answering a specific question about OO and procedural
programming, I miss your point about pot pouri and any connection to
the relational model.
Here is the quote again:
it is trivial to consider procedural programming as a special case ofSo does relational. Or functional, or logical programming, etc. You
OO, OO gives you some extra bells and whistles that make life easier
(or more complex depending on what hat you've got on).
seem to be arguing for paradigm potpurri.
You seem to be implying that *some extra* paradigms or language
features are good over not having them.
"or more complex depending on what hat you've got on".....
But that is so wishy washy as to mean just about anything you want.
does this not imply that the extra features are of debatable value?
Okay, I probably should have asked for clarification on the "hat"
comment first. I apologize for not taking such course of action.
I have not claimed anything about the semantics of execution.
But for the heck of it, here is a language-specific evidence that this
may not be true. In Java one cannot have a "global" function "print"
to make it C-like. Instead one has to do something like:
someArbitraryRedTapeSystemCrap.print(...);
It would probably have to abandon OOP to acheive such (or invent a
hidden "global" class, which is cheating).
-T--
Mathematicians 'cheat' all the time in the manner you reject......who
said anything about 'objects'....your mapping is to and from spaces of
strings, and yet the little '.' seems to have upset you....is the set
of even numbers smaller than the set of integers....because the
classic construction that shows their equivalence 'cheats' by creating
a correspondence between elements with different
labels?....no....would the proof be invalid if we using strings with a
'.' in them that may or may not have an interpretation in some model
you disaprove of?.....no....the interpretation is irrelevant.
It would probably require a solid and consensus definition of OOP to
settle this. It is hard to use formal logic and reasoning on fuzz.
That is exactly my point....your argument as it stands says nothing
about OOP, it is simply the observation about a mapping between two
sets of strings....we simply prepend another string that happens to
have a '.' on the end of it.....you seem to be rejecting the argument
based on a specific interpretation that you reject....The observation
is cardinality of A is less than or equal to the cardinality of B.
I tend to view programming languages as data structures, not as
strings.
Then you are including more than is required to construct the counting
argument.....the counting argument doesn't care whether they are car
registrations, data structures, programs, addresses....it is
irrelevant.
Again, if we are allowed to play parsing pre-process fiddle games,
then anything can be anything such that the argument says nothing of
value.
that is not the case....the counting argument is a formal method.
I don't want to get into a syntax battle because there are
many ways to slice the syntax cat and skin the duck. A strict
interpretation of OO says that "every method must be part of an object/
class". Thus, self-standing functions like "print()" cannot exist, at
least not without zarking up the language.
Is there an injective mapping from the integers into the reals?
Arguments about integers being a subtype of numbers usually do not
extrapolate to domain entities such as employees or invoices.
again your filling in gaps I have not specified, on the basis that you
want to have a pop at OO....the counting argument is a formal part of
set theory....it can be applied to several domains.....but it has
absolutely nothing to do with OO.
As a mathematical construct "Is there an injective mapping from the
integers into the reals"?
The relevance of the question is to your rejection of the application
to OO.....if you reject the OO application, then it only seems fair
that you reject the set theory application.
Does the syntactical representation of each domain have any effect on
the validity of the above conclusion?
representation is irrelevant.
See the "anything can be anything" statement above.
No it cannot be.....specific representation is irrelevant.....it is
the basis of mathematical analysis.....it has absolutely nothing to do
with OO.....your are suffering from post de facto reasoning.
Yes this argument can be used to construct an injective mapping from a
OO program into a procedural....we need to do some work to show that
semantics are preserved....(but they trivially are)....and so we show
that OO is a generalisation (as a construction mechanism, nothing to
do with the semantics of execution...they are both trivially by turing
completeness which tells us nothing about the relationship).
We could fudge it by having a "default class" such that any function
that cannot be mapped to a local method is assumed part of the default
class. But this is a kludge. We could kludge up procedural to make it
OOP also. Thus, if you want to play the kludge card....
Feel free to demonstrate polymorphism of a *fixed* program P using
only procedural code (no function pointers), that works under
extension.
Please explain "fixed" and "under extension".
Fixed....you cannot change any existing code...i.e. no tweaking 'if'
statements and claiming that the if statement is fixed....no adding
elements to look up tables, and claiming that they are fixed.....
extension (expansion really)....you are allowed to add new data
structures, and new 'procedures'.....
Until you do that I will believe such a construction does not exist.
The construction the other way is trivial.
You can choose to reject the extension of the argument, but the
construction on strings is a pretty 'standard' counting argument used
all over the place.....the extension seems pretty unexceptional as
well.
Is there really any point us continuing this thread?......no....
Probably not. One or both of us is probably gonna hafta bust our
rump(s) to add enough precision to avoid miscommunication.
I apologise for prejudjing....
But to be fair though you did seem to jump in and construct an
argument I did not make and then reject it in a seeming attempt to
entice me into an argument about something I didn't comment on.
If I misinterpret what you say, then simply restate or clarify your
point. It is that simple. Constructing conspiracy theories about an
evil manipulative troll will only trigger another shout-war.
In the context of a question about learning OO, is it useful to
procedural programming first.
"it is trivial to consider procedural programming as a special case of
OO, OO gives you some extra bells and whistles that make life easier
(or more complex depending on what hat you've got on)."
Again, if we take into account your disclaimer at the end, it is one
big "it depends" without any details.
Correct!
So whatever you are complaining about.......I didn't say.....
-T-- Hide quoted text -
- Show quoted text -- Hide quoted text -
- Show quoted text -- Hide quoted text -
- Show quoted text -
.
- Follow-Ups:
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: topmind
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: Daniel Parker
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- References:
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: Mark Nicholls
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: topmind
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: Mark Nicholls
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: topmind
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: Mark Nicholls
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: topmind
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: Mark Nicholls
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- From: topmind
- Re: Is Procedural Paradigm a basis of OO Paradigm?
- Prev by Date: Re: Relational-to-OOP Tax
- Next by Date: Re: Is Procedural Paradigm a basis of OO Paradigm?
- Previous by thread: Re: Is Procedural Paradigm a basis of OO Paradigm?
- Next by thread: Re: Is Procedural Paradigm a basis of OO Paradigm?
- Index(es):
Relevant Pages
|