[Syllable Logo]
...is becoming an easy-to-use free software operating system for the home and small office user. It is powerful, lightweight and extraordinarily fast and responsive. More info.

Try Syllable!
Things To Do
Source Code
Restless native Dec 19, 1:42
[Ports] [Open sourced REBOL 3 programming language on Syllable Desktop 0.6.7]

As we predicted many years ago, version 3 of the REBOL programming language has finally been open sourced, under the Apache 2 licence. REBOL originally constituted our main cross-platform strategy, but we are now also free to use it in the Syllable base platform, which should not contain closed parts.

So far, REBOL 3 ran on Syllable Desktop using the Linux version of the interpreter library. Now its source code compiles natively on Syllable, and we have integrated it in our build system. To compile REBOL and start it, enter the following commands in the terminal. You need the latest version of Builder. On Syllable Desktop 0.6.7, do:

    build update
    build log
    package unregister Builder
    package register Builder
    build REBOL-Core--current
    build install REBOL-Core--current
On Syllable Server, install the newer Builder package. Then do:
    s build update
    build log
    build get REBOL-Core--current
Install the binary version of REBOL 3 in the REBOL-Core--current/make/ subdirectory as r3-make. Then from the parent directory again:
    build REBOL-Core--current
    build install REBOL-Core--current

We now have the choice between the interpreted REBOL language and the compiled Red language. We have already contributed a bridge between them, that allows to write REBOL extensions in the Red/System language. Previously, REBOL 3 extensions needed to be developed in C, which has proven unpopular. This currently requires a development branch of Red on Windows, but this will be extended to Syllable.

[Ports] [Red programming language alpha 1 on Syllable Desktop 0.6.7]

The first alpha of the high-level Red programming language has been released (demo program, video on Software Freedom Day at the Science Park in Amsterdam). It was developed to support Syllable Desktop after the first code was available. Red compiles to the low-level Red/System programming language as an intermediate format before compiling it to native machine code. Red/System was already ported to Syllable, but more porting work was needed for Red. It requires Syllable 0.6.7 for its POSIX mmap support.

Ready to run test programs (download, instructions) are now available for all Red's targets: Syllable, Linux x86, Linux ARM (screenshot on the Raspberry Pi, video on Hardware Freedom Day), Android, OS X and Windows. For Syllable Server, you need the Linux x86 versions.

Enlightened at ten Jul 16, 16:22
[Ports] [Enlightenment Evas canvas animation on Syllable Desktop 0.6.7]

Today marks the tenth anniversary of the first release of Syllable Desktop, then plainly called Syllable 0.4.0. The original website and announcement are gone, and many other circumstances of the time have changed quite dramatically. We are happy that Syllable is still here - which, judging by comparable ventures, is a feat to be proud of.

We would like to celebrate by presenting the port of most of the Enlightenment E17 graphics stack to Syllable Desktop. The screenshot shows a 3D animation in the Evas canvas engine. (It shows tearing because the animation runs close to full speed and Syllable does not lock the display when making a screenshot. This is not present in the actual display.)

[Enlightenment Evas canvas object stacking on Syllable Desktop 0.6.7] The Enlightenment Foundation Libraries constitute a cross-platform application framework, from a graphics engine up to a widget set and a desktop environment. The stack is modularised into more than ten packages, so we can use only what we need. We have ported most of the stack but not the desktop and not yet the widget set.

The Evas canvas is a scene graph rendering engine. It does not just draw bitmaps, or even vectors, but handles such elements as objects. Because it knows where they are, it can redraw and therefore move and otherwise manipulate them at will. The screenshot shows three Evas squares objects in a stacking order that can be changed.

[Enlightenment Edje layout perspective on Syllable Desktop 0.6.7] On top of the canvas engine is the Edje layout engine. It can do all sorts of manipulations on its layout objects, including 3D transformations. The screenshot shows a text in a rectangle, transformed in a 3D perspective that can be changed and animated.

A number of subsystems that are common in other open source projects have been ported to Syllable Desktop to support Enlightenment. Font rendering is done by FreeType, which Syllable already used, and font management by FontConfig. Other libraries that Enlightenment supports can be ported in the future, such as FriBidi for right-to-left text and Harfbuzz for font shaping of languages with complex glyph interactions.

[Enlightenment Edje layout engine swallowing events on Syllable Desktop 0.6.7] Enlightenment is an integrated stack. It can be programmed at a high level, for example in the Edje layout engine, but lower levels can be addressed when needed. The engine is consistent across these levels. Events and graphics effects are propagated through this stack until they reach their proper destination. The screenshot shows an Edje layout object programmed to swallow user interface events.

This graphics stack is running on top of the SDL subsystem in Syllable. Therefore, it is currently limited to a single window per application. In the future, a native Syllable backend could be written for Enlightenment. We have ported the latest version of Enlightenment, the new E17 from a month ago. In this, Evas doesn't have a specific SDL backend anymore, but integrates through its generic memory buffer backend. In a similar way, Evas could already be used in a native Syllable C++ application.

[Enlightenment Edje layout slider dragging on Syllable Desktop 0.6.7] We hope to port the E17 widget set Elementary in the future, which reached version 1.0 only a few months ago, to complete this cross-platform application framework. We already have it working on Syllable Server. It is built on top of the Edje layout engine, so widgets can be manipulated in the same ways as Edje and Evas objects.

The screenshot shows an example of how a slider widget can simply be programmed on top of Edje.

[Applications] [Red/System binding with the cURL networking library on Syllable Desktop 0.6.7]

Red/System 0.2.5 has been released. It now has proper support for initialisation of the standard C library, for Red/System programs or other libraries that use it. This has been developed in collaboration between the Red and Syllable projects. Other platforms got by without it so far, but on Syllable Desktop, Red/System programs that use the C library required a workaround until now. The screenshot shows Red/System reading a web page, through the cURL networking library (demo source).

[Red/System bindings with the C library and SQLite on Syllable Desktop 0.6.7] Red celebrated its first birthday at the third Red Developers Conference. Bindings that were developed over the past year can now be used unmodified on Syllable Desktop. Videos were made introducing Red/System and the bindings. This screenshot shows the C library (Fibonacci source, see the .reds file) and SQLite (demo source) bindings. The Mandelbrot demo (source) relies on the new floating point support that was released earlier. The SQLite database binding requires the new Syllable Desktop test release, which fixes support for recent SQLite versions and includes the latest one.

[SDL paint program written in Red/System on Syllable Desktop 0.6.7] The other bindings also work on older versions of Syllable. They were written by us and contributed to the Red project. The goal is to make sure that native and cross-platform Red programs will be able to run on Syllable Desktop. The bindings work on Syllable Desktop, Syllable Server, and other platforms. Red/System is currently implemented in REBOL 2. Therefore, the Red/System compiler doesn't run on Syllable Desktop yet, but Syllable programs can be cross-compiled from other systems. We developed the bindings on Syllable Server. Here is an example of a simple paint program running on the SDL multimedia library (demos source).

[SDL audio playing written in Red/System on Syllable Desktop 0.6.7] Finally, for now, here is an example of playing audio through SDL.


We made a new web site for the Red & REBOL DevCon coming weekend. It is now on-line here. The conference will include a fair number of Syllable topics, as well.

Lupercalia Present Feb 15, 4:08

At the Ides of February, we have released a new Syllable Desktop development version. It is based on the previous Syllable 0.6.7 development build, with many fixes and additions made to it. At the time of writing, there are no known cases where this version functions worse than Syllable 0.6.6, so it is safe to install it instead of 0.6.6.

We are interested to hear about any problems with it, especially if you can find any regressions compared to Syllable 0.6.6.

Welcome to TechWorld Readers Sep 1 2011, 1:42

We were recently asked to do an interview for IDG. The article is now published as the top story on TechWorld Australia. There is a summary article, written by Rohan Pearce. We congratulate Rohan on his new position as the editor of TechWorld. He was kind enough to publish the full interview, as well. The articles are even discussed on Slashdot.

Red/System Reaches Beta Jul 5 2011, 2:54

Red/System, the low-level C class Red dialect for systems programming, in which the high-level, dynamic Red language will be written, has reached beta status after only half a year of development. It now supports using dynamic libraries on Syllable. For that, the generator for the ELF backend needed to be extended.

We have 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.

Initially, the Red/System compiler 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. 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 like this:

    rebol -s rsc.r -t Syllable %/path/to/tests/hello.reds
You can cross-compile a Windows program from Syllable Server like this:
    rebol -s rsc.r -t MSDOS %/path/to/tests/hello.reds

New Transferrer Version Jul 2 2011, 21:36
[Applications] [Transferrer on Syllable Desktop downloads from and uploads to FTP servers]

Anthony has made and published a new version of Transferrer, our FTP client application. He has made a number of fixes to the functionality and the appearance, and has integrated work from contributors. The application is not done yet, but it is becoming usable for your downloading pleasure, and your uploads if you are so inclined.

Remember, Transferrer is our community project, so you can help creating it, and we supply extra facilities to support you.

Red Alert! May 28 2011, 0:37
[Ports] [First Red program, on Syllable Desktop 0.6.7 development build]

Those who have followed our REBOL & Boron conference in February know that Nenad Rakocevic, previously of Cheyenne fame, introduced his new REBOL like programming language there. It's called Red, it's BSD licensed and we are proud to announce that Red programs now run on Syllable Desktop. This is the demo program in the screenshot. Syllable is the third Red target platform, after Windows and Linux.

Contrary to REBOL and Boron, Red is a compiled language. Its name hints at the goal to offer a reduced REBOL dialect that is suitable for compilation, while still being as much like REBOL as possible. The new language is currently being bootstrapped in an ingenious way. The demo program is not written in Red yet, but in Red/System, yet another REBOL like dialect. Red/System is a low level language comparable to C, with similar capabilities. The project is less than half a year old and has been public for a mere three months, but the design and implementation of Red/System are already nearing completion. After that, it will be used to implement the higher level Red language.

Red/System already has several interesting properties. It is a complete compiler toolchain, including a native code generator and a static linker. It is tiny and does not need the huge GCC or the GNU linker. It was ported to Syllable in a collaboration with the REBOL community by making its ELF executable format suitable for Syllable's own in-kernel loader and adapting the embedded kernel syscalls. The compiler is currently written in REBOL 2, which means it must be run on one of the REBOL 2 platforms: Linux, FreeBSD, OpenBSD, Mac or Windows. However, Red/System can trivially be used as a cross-compiler, so Syllable programs can now be cross-developed from those platforms. Once the Red language is implemented, the compiler will be ported from REBOL to Red. It will then also run on Syllable itself, and it will be possible to use Syllable to cross-develop for other Red platforms. Eventually, a JIT compiler will be added, opening even more possibilities with dynamic compilation.

sIDE, Sourcery and Layout Editor
* More Screenshots

Try REBOL & Boron Online

* Read Newsletter #2

Copyright © 2002 - 2012 Syllable Project
All Rights Reserved