Sapphire |
It looks like the Sapphire in Steel camp feels they need to create their own language on top of Microsoft's CLR/DLR (.NET) platform. Yawn, ho-hum, here we go again. *Snort* wait a sec.. this isn't coming from Microsoft? *Sigh*. Here's an open question to the Programming Community: Why, oh WHY do so many developers feel the need to create their own programming language? With an alphabet soup full of programming languages available, why do we really need another one? Can't we just figure out how to do what we want via Domain Specific Languages (DSLs) within our preferred language platforms? From my understanding after reading the Sapphire announcement, it seems the Sapphire Language is inspired by Ruby, but adds constraints to make the language more “unambiguous”. Funny, that sounds a lot like what Charles Nutter recently blogged about, with his experimental, type-inferenced, Ruby-like language that he calls Duby. With Sapphire and Duby floating around, I have to question.. nee... CHALLENGE future direction of the Ruby Language. Are Ruby Language implementers getting tired of “In Matz We Trust”, and caving into temptations to make platform-specific extensions? I seriously hope not! Remember how screwed up things were when Microsoft added J#-specific “extensions” to their implementation of Java? “Write Once Run Anywhere” went out the window, and Microsoft forced us into “Java Wars” -- much like how we were already engaged in the “Browser Wars”. Life as a programmer back then was a freaking nightmare! Instead of focusing on getting the job done, Technical Architects worked on conditional-coding to bring out the “flavor-specific” candy for each platform, or they used the “lowest common denominator” approach by abstaining from ALL extensions. If the Sapphire Language closely resembles Ruby (i.e. it's a fork, despite their claims), we could soon see a lot more conditional-coding constructs showing up in Ruby Application code (versus Ruby Library code, where this is hidden from Developers): def do_something(a,b) Needless to say, I don't care for conditional-coding constructs. It detracts away from the Application Solution. I specifically choose to develop in Python and Ruby because all the desirable platforms have implementations available:
As a developer, I strive to create “Cross Platform” applications where possible, and go Platform-Specific when something needs to be more optimized. With that goal in mind, Sapphire Camp, I just gotta say... PLEASE DON'T FORK RUBY! |
|||


Recent comments
1 week 6 hours ago
1 week 6 days ago
2 weeks 1 day ago
4 weeks 3 min ago
4 weeks 16 hours ago
4 weeks 17 hours ago
4 weeks 17 hours ago
7 weeks 5 days ago
8 weeks 1 day ago
8 weeks 1 day ago