Is There Any Future For Closed Languages?
willmurat writes: "I read about Rebol in an article in UnixInsider months ago. It seems to me a very interesting language, with new features and trying to bring new paradigms in programming. But (always there is a but ...), it isn't Open Source and no institution is responsible to maintain that language. The only responsible party is Rebol Technologies. I'm not saying this is the right way to failure; there are examples of success following this way (Visual Basic and Delphi, for example), but I think a business strategy like that isn't good anymore. See the current developing of Perl version 6 for a very good example of language discussion. Seems to me the owners of Rebol language are limitating the popularization of that language choosing that way of dealing in this issue ... Is there any future to popularize a language that way?"
Look around at the old versions of IBM mainframe OSes, old Solaris/BSD boxes -- many of those were still running because old apps required them. I personally have been involved with two such situations in the past two years -- one was not a Y2K situation, it was just an app written to an old API for which there was no compatibility supported in the latest version.
I think choosing proprietary technology is always a risky choice. The project using it might very well outlive the company owning that technology.
A programming language is something that require time to learn it (and I don't mean just learning the basics which is usually done in a few hours but learning how to best use it).
I try to invest my time in something that's worth it. I'll never regret my knowledge of C/C++ but the time I spent using Visual Basic (by my employers at the time choice not mine) is just a complete waste.
If you're good at debugging the tools in addition to your own code, that may be a good direction to go.
Of course, unless you're just banging out RAD, you necessarily have people who ARE good at debugging on hand.
I prefer to avoid proprietary libraries and compilers. It's not that they won't get the job done, many of them will. However, in 5 years when the software needs a revision, will the proprietary tools still be up to the job? Hove they been upgraded? Did the upgrades break your code?
There's also a need to distinguish between totally proprietary stuff and proprietary implementations of open standards. The latter probably won't cause nearly as much trouble down the road as the former.
Hmmm,
A thought Perl, Python, Ruby...
They are bigger because they are much larger general purpose languages and not just for one thing. Rebols niche is clean networking as far as I can tell. closed and open source has nothing to do with any of it. I prefer a laguange to be open but I will use it if it is good if it is not. I wrote a full GUI based picture viewer organizer, slideshow thing in Perl/Tk and it runs on Linux(which I developed it on) and Windows without any changes. I have not tested on other systems but if they support perl/tk it should run. Both of them are open source
-- Tyler >+++++++[-]++++.---------.+.++++.++.
Where is the Gnu/VB compiler?
--
Two witches watched two watches.
Which witch watched which watch?
The license isnt much different from a VB or Delphi license, you just have to pay for the Rebol compiler.
Most large corporations use only commercial compilers, so the business model is pretty sound.
Even cc in most *nix boxes dont come for free, you'd have to buy 'em separately.
The point is, once the specs are known, someone will make Grebol , so dont worry :)
Well, if you haven't caught on by now, just look at the history of what's used, and WHY it's used, put away your GNU colored glasses, and see the world as it is. Closed source will continue to be the dominant player in programming languages, or at the very least proprietary extensions to more open languages. Most programmers just want to get their product finished, rather than zealously convert the world to open source, and so far there isn't a compelling argument to switch most people, once they realize the 'free as in beer' doesn't mean they get free beer for using OSS.
Part of the confusion here is what we mean by "closed languague". I think of three separate things:
On the last one, does anyone use Miranda(TM) any more? We used to, back in the days when we had no choice if we wanted lazy functional programming. But now we have Haskell, with at least three solid open source implementations and a number of other research platforms. Even Microsoft has taken an interest (hiring half of the Cambridge University Haskell research group).
There's a lesson in here somewhere.
sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
Will I retire or break 10K?
Where is the Gnu/VB compiler?
They're working on it. Or you can use Glade to design your GTK+ program's interface layout. Besides, VB sucks for real projects.
Will I retire or break 10K?
And let's not forget Microsoft Visual C, which is "more or less" like gcc in the same way that J++ is "more or less" like Java. ;)
If you were blocking sigs, you wouldn't have to read this.
Hey -
food for thought. Sometimes closed is best, at least for the initial development of a project / product. When you look at some of the current opensource projects out there, a good many of them came out of small teams of people working in a largely closed fashion until they had achieved a certain critical mass.
Some advantages of closed development (at least initially):
1> Clarity of Vision -
You all know the saying about how a Camel is a Horse designed by commitee...
2> Consistency of Implementation -
Because only one or just a few people are working on this implementation details will likely be more consistent. Ideally the source code (not that we have access to it) should look like it was written by one programmer.
3> Ease of Refactoring and Deprecation -
Because the source is only at Rebol Technologies, they have the freedom to refactor the source more easily - eliminating inconsistencies, gaining in optimization, and clarity. They can also more easily deprecate features and functions that were either poorly implemented, or not well thought out.
Opensource, despite it's manifold benefits doesn't tend to foster any of these 3 goals.
1> Clarity of Vision is sacrificed unless there is a leader who makes (in the eyes of some of the community) arbitrary decisions. e.g. Linus, and Guido.
2> Consistency of Implementation is generally not even well achieved on small commercial teams. In the world of open source, in order to do similar tasks, you might use a "for" loop, I might use a "while" loop, and still another will use a "do while". Not that this matters that much, but it can make understanding of the source more difficult than it needs to be.
3> Ease of refactoring and Deprecation is generally sacrificed in OSS projects. Once the source is available people will build code around it. You will then have trouble refactoring the code base, and deprecating interfaces - cause it could break existing code. The freedom that is afforded the end user of OSS, in turn can be used to restrict the freedom of the original coders.
I'm not saying either way is particularly bad - there is a place for both. Of course, as someone posted earlier about taking off the glasses I was reminded of the following saying:
"When the only tool you have is a hammer, every problem looks like a nail."
Opensource is the answer to a lot of things - just not everything.
- Porter Woodward
I think any language can have a future - closed source or not - if you achieve the result you want.
Many people dont care if a language is open source. They might want to produce a windows program and choose VB to develop it. If VB does what they want and they get the application at the end of it, they are happy. The same person might produce a web site using PHP. Two widly differing languages produced by widly differning communities/companies - but each suits the task in hand.
Just remember - closed source does not mean poorly maintained 100% of the time.
I would say that languages have been sucessful that have proprietary control: VisualBasic, Java, Delphi. Microsoft hopes C# will also be successful. However, what makes a language successful has nothing to do with who controls it, but with its effectiveness. C++ for example has been bogged down in standards committees for years, and yet clearly established itself due to its incredible effectiveness and inter-compatibility with C. Java failed to become to the new defacto platform for GUI but, landed a home run with net service applications. VB is just a quick way to do Windows GUI work, but its a horrible language by anyone's admission. I don't think Perl's more open approach to design has much of an effect on the user base. Perl's success is due more in part to its natural ability as a workhorse. Python's sudden rise to the scene is a credit to its natural form and cross-platform glue, not its open source. For that matter, I don't use Linux because it's open source. I use Linux because its a damn good OS and extremely cost effective. Open Source projects do not garauntee a project will be successful. It is simply an alternative model of development.
Someone you trust is one of us.