
Red Programming Language: 0.6.0: Red GUI System - zzp
http://www.red-lang.org/2016/03/060-red-gui-system.html
======
jcrites
Rebol has always interested me, as a person that follows programming
languages. There seems to be a spark of insight to it. I wasn't aware that
there were free and open source languages inspired by it (or made by its
author), nor had I heard about Red. I'm impressed by what I've seen so far and
am going to have to take a closer look!

I have suspected that a well-enough designed programming language could
subsume many programming tasks that are currently different languages or data
formats. There are so many. It looks like Red is attempting to tackle that
problem directly - I'm curious what headway can be made.

~~~
mhd
Rebol itself was open sourced a while ago, but IIRC that didn't include the
GUI system, and few third parties seem to be interested. Last update to the
github repo [1] was two years ago…

If we're talking about Amiga almuni projects, DragonFlyBSD seems to be the
healthier one.

[1] [https://github.com/rebol/rebol](https://github.com/rebol/rebol)

~~~
nickpsecurity
"If we're talking about Amiga almuni projects, DragonFlyBSD seems to be the
healthier one."

I've never heard it referenced in connection to Amiga. How is it related?

~~~
hansjorg
It was started by Matthew Dillon, known for several prominent pieces of Amiga
software, like the DICE C compiler.

I've never used it, but supposedly several DragonFly features were inspired by
AmigaOS.

~~~
nickpsecurity
It's here in the "Not a microkernel" section:

[http://www.informit.com/articles/article.aspx?p=766375](http://www.informit.com/articles/article.aspx?p=766375)

------
ncx
For minimal introduction to Red ->
[https://en.wikipedia.org/wiki/Red_(programming_language)](https://en.wikipedia.org/wiki/Red_\(programming_language\))

Coming up next -> [https://trello.com/c/11bblhBn/133-0-6-1-android-gui-
support](https://trello.com/c/11bblhBn/133-0-6-1-android-gui-support)

Come chat @ [https://gitter.im/red/red](https://gitter.im/red/red)

------
spriggan3
Looks phenomenal, but the syntax is way too alien for me personally.

EDIT: just went to this page, that's some crazy stuff with very little coding,
never heard of Red or REBOL before, what language paradigm is that?

[http://easiestprogramminglanguage.com/easiest_programming_la...](http://easiestprogramminglanguage.com/easiest_programming_language.html)

~~~
ncx
Red/Rebol is basically LISP without parentheses (highly dynamic and
homoiconic). Syntax is weird but easy to grasp. Red/Rebol is basically a All-
in-One Package as a tiny executable contains a lots of useful functions for
which you would require the use of big, heavy libraries in C/C++.

Red/Rebol allows for very clean (subjective term!), short and concise code,
which allows for easy long term maintenance and also leads to more work done
in less amount of time.

The syntax is a big deviation than the imperative C-Style languages people are
used to. But if you ask me, then well, it is for the good.

~~~
RodgerTheGreat
REBOL syntax is even closer to Logo. Logo is well-known for its "turtle
graphics" drawing system but beyond that it is actually a full-featured
dynamically scoped (traditionally) Lisp.

~~~
vram22
>REBOL syntax is even closer to Logo.

Heck, now that you say that, I think I agree, intuitively, though did not
think of it before (and I've been checking out Red lately, and Rebol some time
earlier). (Used Logo as a kid.) I'll have to analyze why. Interesting
observation.

------
dragonbonheur
For people who would like to learn REBOL:
[http://easiestprogramminglanguage.com/easiest_programming_la...](http://easiestprogramminglanguage.com/easiest_programming_language.html)

~~~
notchent
See [http://re-bol.com/rebol_quick_start.html](http://re-
bol.com/rebol_quick_start.html) and [http://re-
bol.com/short_rebol_examples.r](http://re-bol.com/short_rebol_examples.r)
first, then [http://business-programming.com](http://business-programming.com)
. The beginnings of the same docs for Red are at
[http://redprogramming.com/](http://redprogramming.com/)

------
jarcane
Yes please. More people need to be experimenting and working with reactive GUI
for native.

------
vram22
Apropos of Rebol (which inspired Red), Douglas Crockford has said that it was
an influence on JSON, IIRC.

Also, Rebol is mentioned as a (readable) data format, here:

[https://en.wikipedia.org/wiki/JSON](https://en.wikipedia.org/wiki/JSON)

------
hanniabu
I'm digging this. While it's too early for me to dove in, I can definitely see
this language having a future. It's nice to have languages questioning the
current paradigm of what a language and syntax should look like. These kinds
of experiments, even if they happen do go nowhere, are important for the
future of programming. They help change and form opinions and inspire thoughts
of what a programming language could/should look like. Each language created
helps us pave the way for a more optimal future by seeing what doesn't work
and what does work and then taking those notes of benefits and drawbacks to
help create future technologies.

------
Buttons840
Last I looked into Red someone said they weren't ready to draw attention to
Red. I can't find the source now, but figured if Red's creators aren't even
ready to attract attention, it's too early for me to hop on board.

Is there any truth to this? Whatever the case, I will learn Red eventually. It
looks really awesome. The project has ambitious goals and seems to be
achieving them at a good pace.

~~~
rebolek
Red is still alpha and certain important features are still missing (see
roadmap for details). But it is not some hobby language, Nenad, the author, is
very dedicated as are other members of Fullstack Technologies (company behind
Red), so you can expect Red improving at steady pace.

I am really glad you like Red. It is already useful as it is now. Check the
Red room on Gitter (sorry, I am on phone now, so no link), there is lot of
people willing to help you.

------
hamdouni
is the gui backend coded width direct windows system calls or there is a layer
? I'm thinking about the work to be done for other systems (linux, os x, ...)

~~~
ncx
As rebolek said, yes, there is a layer. The blog states that `Flexible backend
support that can be mapped to virtually any kind of UI library.` which means
that the abstractions used are good enough to support different OS. There are
plans to support View (gui) on each platform (desktop/mobile) that Red
supports. But it's going to take some time. Lots of other features to be added
as well :D .

------
biokoda
If they can deliver truly cross platform GUI toolkit it would be huge. No one
has quite pulled it off yet. But frankly the task is so large it is hard to
have much hope.

------
progman
Awesome work in less than 1 MB! Red could be a very interesting platform for
iOT and embedded systems.

Red works also pretty neat with Wine. Just the shell cursor is not in sync
with the input (usually one char ahead).

Is there way to run a GUI script without the shell popping up? Compilation of
a script takes many seconds. Is that normal? Is there a FFI?

~~~
ncx
For wine issue, see
[https://github.com/red/red/issues/1618](https://github.com/red/red/issues/1618)
. Short Summary: You need the Consolas font installed.

Compilation takes a long time currently. It is normal. Fast Compilation Times
are an objective for 0.6.5 release.

For FFI, see [http://static.red-lang.org/red-system-
specs.html#section-15....](http://static.red-lang.org/red-system-
specs.html#section-15.1)

As for `Is there way to run a GUI script without the shell popping up?` , IDK.
So better ask it at the gitter chat room.

~~~
progman
Thanks for the detailed infos!

------
skaplun
im not sure this language is popular enough to do this kind of post without
taking the second-third paragraphs to explain to new people why its worth to
get interested in this shiny new thing

~~~
e12e
It's from the language's own blog - and they have a perfectly valid "about"
section on that page (It's a modern REBOL-inspired language).

What I found mostly interesting with the post (other than playing with the GUI
examples after downloading the current build), is that they announce full I/O
and networking support will be in 0.7!

------
moonshinefe
Okay so it's yet another programming language to add onto the other hundreds
of them, it can make GUIs that are Windows 7 era sort of. The syntax looks way
off from most other programming languages.

Honestly, this looks like a mess and I don't understand the purpose of it if
it's meant to be used by real users. Why would anyone prefer this?

~~~
jernfrost
Kind of quick of judging something you don't know. I too find the syntax alien
to me, but I don't automatically assume that means it is a bad thing or a bad
syntax. If you look at smalltalk, LISP or forth they all have very different
syntax which will seem alien but usually they are all quite simple below the
surface and quite quick to learn.

Plenty of languages with familiar looking syntax which are horribly
complicated. E.g. like C++ ;-)

