Red is a new programming language inspired by REBOL, but compiled and open source. The language is currently being bootstrapped by first implementing a lower level dialect, in which the high level, dynamic language will be written. This C class dialect for systems programming, Red/System, has reached beta status after only half a year of development. It now supports using dynamic libraries on Syllable. Also, a new version of Syllable Desktop’s FTP client, Transferrer, was released (screenshot accessing Syllable Server).
To support loading dynamic libraries on Syllable and Linux, the generator for the Red/System ELF backend needed to be extended. The Syllable project has already contributed two library bindings to the Red project: an almost complete binding with the standard C library at the ANSI C level, and a high performance binding for the ZeroMQ messaging system. These libraries can now be used from Red/System programs, providing good coverage for basic programming needs and advanced communication programming. A network server and its messaging client are quite easy.
The Red/System compiler is currently written in REBOL 2, until it will be rewritten in Red. Initially, it required the graphical REBOL/View version of REBOL, but it has been freed from that dependency, so REBOL/Core is now sufficient. The result is that the compiler can now run on Syllable Server and on Solaris Sparc. Generic x86 Linux, FreeBSD, OpenBSD, Mac (Intel and PowerPC) and Windows were already supported. Red/System programs can currently be compiled for Syllable Desktop, Linux (and thus Syllable Server) and Windows. Experimental programs have already been compiled for x86 FreeBSD and for a new code generator for ARM processors. A backend for OS X’s Mach-O executable format is also in the works. Installation instructions are here.
Cross-compiling is trivially easy with Red. For example, the canonical demo program can be compiled for Syllable Desktop on Syllable Server or any of the other supported platforms like this:
rebol -s rsc.r -t Syllable %/path/to/tests/hello.reds
You can cross-compile a Windows program from Syllable Server or any of the other supported platforms like this:
rebol -s rsc.r -t MSDOS %/path/to/tests/hello.reds
Mabye it’s just me but that’s some god awful syntax. Hopefully it looks better with highlighting on. Also, it might looks better if I’m not cranky from just waking up.
I really don’t know a lot about the current state of compilers, but it seems to me that all news are about new C and C++ compilers (aren’t there other compiled languages today?). So for people who don’t like the C syntax and the C way of doing things I guess this is good news.
I’m hoping that this “make a restricted subset for the run time, compiled extensions, and/or systems programming” pattern will catch on.
Of course, I’m a Python programmer. That opinion is no big surprise, given that we came up with Pyrex/Cython and PyPy’s RPython.
…makes me wonder how close RPython might come to Haskell’s elegant implementation of “statically but implicitly typed” if they eventually decide to make RPython into something that’s useful as a full-blown systems programming language rather than just a way to write your code so the slow parts can be compiled to native if necessary.
I’m not a big fan of statically typed languages. What would really make my day would be a compiler for a dynamic and loose typed language.
Maybe try Javascript with the V8 engine? Maybe PERL to C. If you don’t like C syntax then maybe C# is out of the question, shame. It’s a very good language… hmmm… actually most of it is fairly ordinary but Lambda expressions combined with LINQ are beautiful.
PHP can be compiled (I think it’s PHP->C++->Compiler->code).
There are options!
The glib answer is “write your own C++ library” in which all objects are _really_ objects and inheritance is a dynamic runtime property… at which point I’d give up and use Javascript!
I don’t know what to say … I don’t feel that JS is fast enough even with the latest engines or integrated enough with any OS so you could write native applications.
To my knowledge I don’t know of any current and updated compiler for PHP.
I guess I could live with Python’s strong typing given the nice syntax, but the lack of a proper compiler still bugs me to no end.
There’s “Hiphop” for PHP which is a PHP to C++ compiler. Haven’t even tried it.
TBH – You’ll never achieve “native” speed with a dynamically typed language for the same reason that you’ll never achieve it with an interpreter (or even byte code). You have to keep reading data and checking types all the time.
If you want real native speed and native interfaces then the ‘C’ class languages are the only viable option. I’d still recommend C++ and Qt.
TBH – Syntax is not what’s worth worrying about – you brain will adjust to it eventually (especially given funky editors with colouring, auto tabbing etc).
There are exceptions… Both Forth and LISP make me cross eyed after a while!
The big noises in compilers these days (and has been for a few years) are mostly centered around GLSL, OpenCL and their ilk. Or compilation of dynamic code like Javascript.
Syllable’s latest stable release is now 2 years old. So the Syllable team has been trying to perfect REBOL and Red in Syllable for the past 2 years?
Edited 2011-07-06 12:54 UTC
But that news has nothing to do with syllable development in fact. These are 3rd party products.
“Transferred” (which is just a very very simple GUI using curl as backend) is developed since about 3 years. Nearly all people are gone who contributed to it. Now after many years of doing nothing, anthony took a little time, to fix some minor bugs and it seems that’s a good reason for kaj to publish a news related to it. It’s really pathetic.
The syllable (atheos) kernel lacks important features, that’s the reason why nobody tried to port the latest gcc. Their latest gcc compiler is about 4 years old.
Their latest development build is going to be soon 2 years old!!! (Their latest release build is already more than 2 years old). To be fair, there is no real reason, why they would need a new development build, since in last years there were nearly no commits to the syllable repository.
Nearly all syllable developers disappeared, but what happened to the syllable leader VANDERS?
Since years he is not really contributing with code, but since about 1 year, it seems he is completed away, there are no forum posts of him, nothing. No sign of life. Why doesnt he clarify the situation?
I have some guestion to Vanders, perhaps he reads that:
1) Why did you abandone syllable?
2) Do you intend to return back one day?
3) Do you want to give the leadership of syllable to somebody else?
4) Do you spend your free time with another open source project?
5) Kaj declared you, as not being the leader of syllable anymore. Is that true?
6) I know it’s hard to admit a failure. But you should be a man and clarify the situation.
7) You said many years ago that you would never leave syllable, even if it would have no success. What changed your mind?
I think all syllable users deserve answers, when developers and the leader are abandoning the syllable project. At the moment it’s a big confusion and nobody knows what’s going on. You could give an official statement or you could give an osnews interview, like Robert did when he didnt contribute to skyos for month.
You deserve nothing. If the future of syllable is important for you why don’t you contribute with code, money or PR to get developers interested?
This “I’m entitled to things because I want to” rant is just childish.
I must be very stupid, to start wasting my time again with syllable. Nearly all devs are gone, the leader (vanders) is gone. It’s quite clear, that syllable has no future. I’m not interested in the future of syllable, i’m interested in the past. I’m curious what happened. We know why Kurt abandonated atheos, but we dont know why Vanders abandonated syllable.
When a leader is abandoning a project, everyone should be informed. The syllable community should be informed.
So hopefully he will read this, and make an official statement.
Perhaps Thom could try to make an interview with vanders?
You presume that you’re talking to someone who’s on the outside looking in. Cipri WAS a part of the Syllable community. Know what you’re talking about first.
I do read OSNews, and I often post. I don’t see why I should answer a laundry list of random question about my involvement with Syllable, though.
For the record it was nothing at all to do with Kaj, or anyone else involved in Syllable.
Look, cipri: I know you are upset about Syllable. I know you do not like Kaj. We knew this years ago when you got upset. Can you now please stop trolling every Syllable article on OSNews with it? You’ve made your point: please move on.
Vanders:
I did say you should answere to one of the question. But it would be nice, if you would clarify the situation. Do you remember how you personally were feeling when Arno left syllable without saying anything? You did exactly the same and you caused the same feeling to other people. I think it would be nice, if you would at least clarify the situation. At the moment nobody knows who the syllable leader is. Kaj said recenly that you are not, but at the same time you never said you would step back from that position. No matter what your decision is, it will respected, but perhaps you should know that there are still some people waiting for you to speak, even kaj.
Edited 2011-07-07 19:31 UTC
Syllable is open source, under the GPL. If you are so unhappy with its current direction, fork it.
The Syllable developers [active or not], as people who contribute their spare time, blood, sweat, and tears and do so voluntarily, owe you nothing. Not support, not any answers about anything, not explanations. Nothing. You have not paid them, exchanged contracts, or done anything other than continuously spread hate on this website (and wherever else you stalk Syllable news posts).
Stop being a childish little troll. Help out (contribute), help yourself (fork), or help the world (by shutting up).
1)
I dont want to become personally, but do you have problems with understand the meaning of a question?
I never said that somebody owes me something. If you are not able to understand, you should consult an mathematician, who will logically analize my sentences and tell you the content.
2) Do you have as many years, as many thousands of c++ code i wrote related to syllable? Just two programs that I published have been altogether about 10.000 lines of c++ code. My other applications (sever + client (gui) imitating AltMe, PDF-Viewer based on poppler, a software for translating text imitating the software Lingoes) which I didnt publish, but who have been seen by some syllable devs, are also about more than 20.000 lines of code. The code that I wrote for testing the syllable API is also considerable.
I guess I’m one of the few, how knows the syllable api in detail, all this didn’t come over night, it was a lot of time that i spent with syllable. Especially since the syllable api is poorly documented and it has a lot of bugs, and you need to try a lot of hacks to make it work like it should.
Write yourself at least 30.000 lines of code related to syllable like I did, and then come again and tell me that this is nothing.
As I said before, nobody with a clear mind would spend too much time with syllable. I guess that’s also Vanders reason, why he even hasnt written a comment in the last year on the syllable forum, not to talk about writing code.
I guess, you should contribute to syllable if you think it’s worth. If you are not able to write c++ code, you can learn it very easy and fast, I encourage you. I still have a clear overview of the current syllable development (and it’s internal situation), when you will be contributing I will notice it, and I will be the first to congratulate you. So hurry up contributing.
Did i say that I’m unhappy with the current direction? No, I didnt say that. I just said that it’s pathetic to write write in an osnews article that you fixed some bugs of a very basic application in the last 2-3 years. You must be very desperated if you need to notice that kind of progress in an osnews article.
If you will read again my comments, you will see that somebody owes me something (answered, etc.). Just try again, and read carefully. If you still have problems, consult an mathematician, for example Anthony, he can help you for sure.
As i said in other thread,
No new code, no fork, just more documentation and a clean sh build script without ruby, rebol crap (nothing personal about rebol, just want a cleaner compile way)
I’m trying to solve some problems, there exist more than 240 makefiles, the API is poorly documented, the kernel, also has a poor documentation. If someone wants to clean a little all that mess, i’ve created a google code project with my effort in to make a better documentation (really, i have no hope, but a lot of energy)
http://code.google.com/p/wave-os/
The very first i want to do is to update the building script, create.sh, because i not just want to build the whole system in a straightforward way, but also to assemble the whole iso and then burn first a copy of the new iso and then an installation cd.
I dont want to say something bad, but you really waste your time and effort. Syllable is as good as dead. On top of that, it has a lot of bugs and very deep problems. Haiku is beating syllable in all domains (posix, hardware, software,..). Now recently Haiku got a payed full time developer, and also just recently somebody donated 10.000 dollar.
I know kaj told you a lot of lies related to haiku, but I can really can give you the advice not so spend your time with syllable.
Syllable was already declared by Thom (osnews owner) to be dead. And he had a good appreciation, even he didnt know the “internals”.
There are now more than 2 years, since the last release, and a new release is even not in sight. Most developers are gone, even the leader disappeared. The last development build is nearly 2 years old too. Taking all that facts together, your “alarm bells” don’t ring? What can you expect?
Syllable will remain “quasi-dead”, and I dont expect much more than some osnews articles which say: “script xy is working on syllable correctly”, “a new boot-option was added to the menu”, “keyboard navigation was enabled”, “some sdl games have been build by a user”, “some bugs in transferrer were fixed”.
That’s what I expect from syllable.
Edited 2011-07-09 13:34 UTC
The build system for Syllable (Builder) is actually pretty damn good.
Well, yes, there will be. Building an entire OS requires building a lot of components. Note that the ancient recursive-Makefile based build system was replaced long, long ago with Builder.
I’m not sure if you’re aware of the existing build scripts: http://syllable.cvs.sourceforge.net/viewvc/syllable/syllable/system… ? You install Syllable, run start.sh to install the additional build components and then build everything by running start.sh. Once the build is complete you can use build-cd.sh, build-vm.sh or build-upgrade.sh scripts to create installable media. It’s really pretty simple.
Yes, my effort is in order to achieve a more standard build system, in my opinion, to use builder is a way to get more “bloat”. just my 2 cents. The other topics i mentioned are the poor documentation in the mediaserver, appserver, and specially, “registrar”. Not to mention the kernel also with poor documentation.
To CIPRI, Haiku has some good points over many HobbyOSes, but my effort is to offer a product in that world, exactly, hobbyOSes (a topic covered by the “hype” in Syllable, adding more features without simplifying the install process, without being capable to self compile..).
I doubt you could replicate what Builder does in less code. Just take a look at the complexity in some of the third-party package recipes to get a sense of how complex building something can be.
did you notice the existence of jamfiles as replacement of makefiles?
http://www.perforce.com/jam/jam.html
Since I use both (make and jam), I can just recomand to switch to jam (like haiku did). The advantages are just huge.
anonymkous8756:
if you want a “media os”, then syllable is definitely the wrong address. The kernel of syllable hasn’t had improvements in the last years (except some little commits). Syllable simple doesnt have, and in fact never had a real kernel developer. If you compare the atheos kernel and the syllable kernel you will see how much development there was in the last 10 years related to kernel. More than that, the media server of syllable is in a very bad shape, and nothing changed in the last years. I think vanders planed to rewrite the media-server, if I dont remember wrong. Even the most trivial bugs related to the media-sever havent solved since many many years.
In that domains haiku is much better. The kernel of haiku is constantly developed and optimized. Play 20 movies at the same time with haiku, and then try the same with syllable.
By the way, is it possible that your name is Lucas? 🙂
Edited 2011-07-10 19:28 UTC
Cipri, thanks for your ideas. Haiku has some good points, and i have to recognize them. I just want to offer a standard way to compile (without “builder”, in a vintage way, using shell scripting, sorry Vanders!, i haven’t trust in the ruby mix used in the past).
Jam is all nice and good but if the third party package uses GNU Make, you have to use GNU Make. The other parts of Syllable are just fine with GNU Make: most Syllable specific Makefiles are really quite simple.