Ooc: new awesome language with site redesign, guide, and screencast
ooc-lang.org
ooc-lang.org
I mean, if something as simple as applying MVC principles to web development can create a revolution there have to be a lot of other unplucked ideas out there. Software engineering feels a lot like architecture would if people spent 95% of their time talking about materials.
I have basically built ooc to make programming a lot less annoying for me (and others) to try new things with. The work is really starting to pay off and I thought I'd share it! It's not like anybody forces you to try it ;)
There's nothing more annoying IMO than reinventing all those wheels one more time. I'm willing to play with the new JVM languages because I can get all that stuff for free but the advantages of one more sui generis language are going to have to be HUGE for me to even consider retooling all that junk.
Yes, that's one more advantage of producing C code - integration is seamless. No need to reinvent all the wheels, rewrite what you feel like, re-use the rest.
(And please, no "But I don't have the time, you have to chew everything for me"-answer. I'm in overload of this kind of answer too.)
The thing is, the development of the car got to focus on and nail the use case and user experience before it was able to really take off. Do we really think of end-to-end user experience of programmers? Smalltalk had some human factors thinking put into it, but I'm not sure this happens for new languages with enough applied human factors knowledge and expertise. (And the attention to that sort of detail didn't go quite far enough for Smalltalk either.)
Most programmers are the last people to do that sort of designing. In particular, I think most programmers are too familiar with programming. It's like someone asked a driver of one of those saddle-seated early racing cars to design a minivan.
To be competitive in the current web job market, I have to have at least three fundamentally very similar languages under my belt: javascript, and at least two of perl, php, python and ruby. In truth any one of these could easily do the job of the others. Lately I find this irksome. Diversity is only a virtue up to a certain point.
I agree with you that good abstractions (architectures are just large-scale abstractions) are needed, but that doesn't mean the new abstractions won't come in the form of a new language. In some sense, they always will. In the sense you mean, some abstractions fit better into existing languages than others.
nddrylliog, I think you should make the "jump to" navigation easier to find in the intro guide.
Extra points for this awesome install process. I wish more projects would make a seamless newbie experience higher-priority.
I mean ooc -> llvm.
Not only that it is obviously faster and simpler, it is also better to maintain and better to optimise. And it gives more power and possibilities to the ooc compiler.
I only wish llvm-c would suck less, then we'd get proper bindings and be able to write the llvm backend in ooc.
Besides, what's the point in having a shiny language if we have to use C++ to implement part of its compiler :(
How complicated would it be to link against C++ code from within ooc code?
This is like "Go" / "Go!" all over again, except more people have probably heard of "Ook!".
Hopefully I will have more time for it and SR:
Also, is the type system known or believed to be sound? Are there casts?
Is this for real? Because it sounds like someone is overselling their langauge way too much.
Can someone please explain how it can be both?
You can turn off the GC, control when and how the memory gets allocated, use pointers to deal with raw memory blocks, easily link with ASM, and the consuming features are easy to avoid - leaving you with a nicer syntax for C. Of course, in the real world you probably want to find a compromise and not go 'full metal'.
</troll> (with a hint of truth)