| ||
|
This community works best when people use their real names. Please
register for a free account.
Other Groups: Joel on Software Business of Software Design of Software (CLOSED) .NET Questions (CLOSED) TechInterview.org CityDesk FogBugz Fog Creek Copilot The Old Forum Your hosts: Albert D. Kallal Li-Fan Chen Stephen Jones |
Joel's function to apply an operation to each member of an array reminds me of code blocks in Clipper: AEVAL(arX, {x| x = x + "lobster"}) (or something like that; it's been a couple years.) Was the code block idea exclusive to Clipper, or does it appear in other languages? I suppose it could be considered a type of anonymous class, but it's a function that as portable as any other kind of data.
Yeah, Smalltalk and Ruby are the languages that come to mind. Smalltalk blocks (" [object doSomething. object doSomething.] " or " [:var | object doSomethingWith: var. etc.] ") are used in Smalltalk to implement if/else, as methods of boolean objects.
" [:var | object doSomethingWith: var. etc.] ") are used in Smalltalk to implement if/else, as methods of boolean objects. which is extremely unreadable..
"which is extremely unreadable.." Not in the context of the language. The colon prefixing the arguments corresponds to the colon that ends argument keywords. The pipe is just an arbitrary separator, but it's also used to declare variables, so it's consistent. Smalltalk's syntax was very well designed, in my opinion.
masharpe Friday, August 04, 2006
Karl "Ah, Clipper. Those were the days ... I just threw away my version 5.0 5.25" diskettes last Sunday. Marked "Nantucket." No lie." Funny you should say that... I was going through some old boxes of stuff a couple of weeks ago and found my original Summer '87 box, complete with 5 1/4" floppies. <g> Ken
Ken Friday, August 04, 2006
"Smalltalk's syntax was very well designed, in my opinion." I agree. Smalltalk always seemed to be the language most like natural language to me. I much prefer the syntax to C-style syntax. I've recently been dabbling in Ruby, which seems similar in many ways to Smalltalk, but the syntax seems murkier.
Piece of advice. NEVER throw away the media or documentation for an old language that you happen to own. Two years ago I made $12,000 on a Clipper project because I was the only person they could find that still had the compiler and a decompiler (they did not have the source). I have also made substantial sums of money on other languages under similar circumstances. Anyone remember Apogee, Ohanlon ODBS, various Xbase variants and many others I still have the media and documentation for?
ps Friday, August 04, 2006
Danny Di Vito once said, in the movie "Other Peoples' Money," "You guys are grabbing a bigger and bigger piece of a shrinking market." He was referring to the practice of sticking with old technologies no longer in favor. If I had any interest at all in working in Clipper, or Visual Objects, I would have kept the disks. However, I left that behind years ago and I've no intention of taking new Clipper work. I'm far more interested in growing technologies. Not to take anything away from what you've done, but at some point you need to move on, and that means saying, "Sorry, I don't do that any more."
Karl, I am in current technologies, but would you seriously turn down $150 per hour in an old technology if it became available?? I'll take it any day of the week.
ps Saturday, August 05, 2006
I have not come accross this code in VB or VB.Net. Yes, we used clipper extensively in our office, back in 1996-97. And later Visual Objects for a brief period. It amazes me that there is still a NG at google groups which is visited by VO users. It has been 22 months since the last release of VO. If i look, i am amazed about how important funding is for a firm to survive. CA which owned Clipper and VO (still owns?), stopped funding them over a period of time. I had suggested that to make it more easier to manage and fund - handover reporting and other funcitonalities to third party developers, make the product more suitable for third party products, target a particular database and fine tune it, and some more steps. Like taking care of a patient on a deathbed. Obviously, they had no contingency plan. Madh http://www.vkinfotek.com | |
Powered by FogBugz
