Lambda the Ultimate

inactiveTopic Atoms as Objects?
started 3/15/2001; 9:29:15 AM - last post 3/17/2001; 9:15:22 PM
andrew cooke - Atoms as Objects?  blueArrow
3/15/2001; 9:29:15 AM (reads: 1434, responses: 8)
Atoms as Objects?
A brief comment on the costs of universal objects.
Posted to OOP by andrew cooke on 3/15/01; 9:29:56 AM

andrew cooke - Re: Atoms as Objects?  blueArrow
3/15/2001; 9:34:40 AM (reads: 1467, responses: 0)
Back from holiday and going through mail, I thought this snippet worth posting. Maybe elegance is sometimes too seductive?

The hit rate has grown while I've been away - I'm surprised there aren't more contributors (I've also just read the pleas posted earlier this month).

pixel - Re: Atoms as Objects?  blueArrow
3/15/2001; 12:10:17 PM (reads: 1455, responses: 0)
As for me, i mainly see "abc".length as nice sugar and orthogonality with real/mutable objects. You can handle it very simply by having Int a final class. I don't see any implementation pb with this...

Ehud Lamm - Re: Atoms as Objects?  blueArrow
3/15/2001; 1:54:03 PM (reads: 1450, responses: 0)
Back from holiday...

Great to have you back! The site does get more traffic, but that's not enough for us to forget you...

Alas, I must report that no one came forward and became a contributing editor. So all the fame and glory must be split between us doing the hard work.

Oleg - Re: Atoms as Objects?  blueArrow
3/15/2001; 8:15:53 PM (reads: 1457, responses: 0)
Treating data as objects with a state, and behavior that can be altered through inheritance can lead to insidious subtyping errors. The errors can break separation of interface from implementation. A principle that guards against such errors -- Liskov Substitution Principle -- is, alas, generally undecidable in OOP case, and not mechanically reinforceable. Validation test suites aren't of much help either in identifying such problems.

A web site http://pobox.com/~oleg/ftp/Computation/Subtyping/

discusses this question in great detail. It shows that a Bag and a Set (or a Square and a Rectangle, or a Circle and an Ellipse) considered as objects are not subtypes of the other. OTH, if we consider bags and sets as pure values, a set is strictly subtype of a bag: a set is substitutable for a bag in all contexts -- while remaining a set. The paper proves this assertion and shows the code you can run to see it for yourself.

The paper also discusses available theoretical and experimental evidence that leads to a question if OOP is conducive to software development at all.

Chris Rathman - Re: Atoms as Objects?  blueArrow
3/16/2001; 9:15:06 PM (reads: 1435, responses: 0)
The hit rate has grown while I've been away - I'm surprised there aren't more contributors (I've also just read the pleas posted earlier this month).
Wish I could contribute more, but alas intense short term money projects combined with few long term prospects have kept my ability to wander into interesting topics to a minimum.

Don't know if anyone else has noticed, but there is almost a depression like qualitiy to the software economy these days. (If you don't believe me, go start interviewing for a job). Perhaps someone needs to post something about how the current economic downturn will impact the development of programming languages? I know how it effects me. Less time concerned with the beauty of language, and more time concerned with what makes me a qualified applicant.

andrew cooke - Re: Atoms as Objects?  blueArrow
3/17/2001; 1:16:54 AM (reads: 1426, responses: 0)
depression

Are you in the States? I get the impression that things are particularly bad there. But I saw that you did post a bunch of links on EJB - is that where the jobs are?.

Ehud Lamm - Re: Atoms as Objects?  blueArrow
3/17/2001; 11:37:10 AM (reads: 1433, responses: 0)
Perhaps someone needs to post something about how the current economic downturn will impact the development of programming languages?

When I think of languages created by industry I thin of Smalltalk (XEROX), C, C++, Awk (Bell), Java (Sun).

These are not small startups, like the ones that made/make up the bubble economy.

Alas, most of the these were created by R&D divisions. These were mostly downsized or 'realigned with business units' quite awhile back (it was quite a trend a few years aog). I thought it rather dumb when it happened, and I still think so today. It is nice to know that some companies are still putting money into R&D (IBM and, amazingly enough, Microsoft).


Less time concerned with the beauty of language, and more time concerned with what makes me a qualified applicant.

I know most firms don't work this way, but I'd consider posts you made here (and the great stuff on your home page) as evidence of your skills. All the nonsense about certification, is truly amazing. If you understand the real issues, learning some standard is really not a problem.

A company that wants ready made employess, that know the exact set of skills needed to get the job done, and doesn't value core skills, which include being able to learn new stuff is bound to go belly up sooner or later.

So much for the new economy...

Chris Rathman - Re: Atoms as Objects?  blueArrow
3/17/2001; 9:15:22 PM (reads: 1418, responses: 0)
Are you in the States? I get the impression that things are particularly bad there.
I think the old saying goes that it's I recession when someone else loses their job. It's a depression when I lose mine. :-)

Actually, I'm making more money than I was, it's just that I've had to shift gears since none of the companies I've talked to wants to do projects that are over a month for design-implementation-debugging-rollout. Kind of frustrating for me since I like to tackle the larger projects and which give a bit more stability to learn and experiment along the way. Generally speaking, the larger projects also offer a greater degree of freedom in using the appropriate language for solving particular problems.