# The Red language project, building the world's first full-st



## Arnold (Mar 9, 2014)

Hi all,

Allow me a few moments of your free time to bring the Red programming language project under your attention here. (I'll try to keep it short, though I find that hard if I'm talking about this project).

I am involved in this open source project that aims to create the world's first full-stack programming language. It is the language Red, http://www.red-lang.org is the official site. Red is based on the very versatile language Rebol (http://www.rebol.com). The Red language project has been started to address some of the disadvantages that Rebol had, the most important ones of those being Rebol was not open source at the time, it is interpreted and development had reached an impasse.

So what exactly is a full-stack programming language?  It is a programming language that you can use at all levels of programming. So from system (drivers and more) to applications and much more, to put it into a slogan "from the metal to the meta".  Furthermore, it is possible to go from each platform on which it works to generate executables for all other platforms. And that only with the aid of a very small executable of about 1 MB, without any dependency on GCC toolchain or any other toolchain whatsoever. At this time, much of what I describe here is all possible for Windows, Linux and OS X. Furthermore, it is already possible to generate executables for Syllable (OS) Android and ARM (including Raspberry Pi).

At this moment you can already develop in Red on FreeBSD and create executables for the other environments because there is a Rebol executable for FreeBSD. The one thing missing is that Red cannot generate the bytecode to run on FreeBSD.

This post is mainly meant to bring the project to the attention of FreeBSD programmers and tell about another fun project to work on. Why don't we do it ourselves? That is because the core developers of Red have not enough FreeBSD system knowledge on board to realize Red for FreeBSD soon, we figure that programmers hanging out here can do a much better job at that too. 

What are the advantages of the FreeBSD project to have the Red language available fully on FreeBSD? Developers on other platforms can compile programs for FreeBSD. (They will have to test their program on FreeBSD and install FreeBSD.)  FreeBSD becomes a more valueable alternative to other OS'es as well as software programmers can develop programs for other platforms through Red.

From the Red and Rebol community there is always a lot of support for new users.  And before I forget it, there is an extra reason why Red is being developed. Programming in Red should bring FUN back into programming! Please visit us to find out more.

You can reply to this post find out more via the links on the Red-lang.org site or on stackoverflow (you need 20 points to talk there, but those are not really hard to get) at http://chat.stackoverflow.com/rooms/291/rebol-and-red

Thank you for your attention.

Kind regards,

Arnold


----------



## fonz (Mar 9, 2014)

*Re: The Red language project, building the world's first ful*



			
				Arnold said:
			
		

> At this moment you can already develop in Red on FreeBSD and create executables for the other environments because there is a Rebol executable for FreeBSD. The one thing missing is that Red cannot generate the bytecode to run on FreeBSD.
> 
> This post is mainly meant to bring the project to the attention of FreeBSD programmers and tell about another fun project to work on. Why don't we do it ourselves? That is because the core developers of Red have not enough FreeBSD system knowledge on board to realize Red for FreeBSD soon, we figure that programmers hanging out here can do a much better job at that too.


I do have some prior Rebol experience, so I just might be tempted to have a look.


----------



## Arnold (Mar 9, 2014)

*Re: The Red language project, building the world's first ful*

Hi Fonz,

Great to hear that! You know about REBOL, so how can we make it even more tempting 

Red originally stood for "Reduced REBOL instruction set", but the plans were shaped and worked out and it turned out the "reduced" was reduced itself, so Red even though compiled can be more flexible just like the interpreted REBOL can than ordinary compiled languages.

What did you use REBOL for? I made a complete checkers game using REBOL, including a graphical interface, all sources under 119 KB. (The link to the source is on rebol.org site and it should run in the REBOL/VIEW program for FreeBSD too, "write once run on every platform".)

For a really short introduction to Red, I wrote the entry http://learnxinyminutes.com/docs/red/. Try this on http://tryrebol.esperconsultancy.nl/.

```
list: [Windows Linux MacOSX FreeBSD]
foreach item list [print ["We want Red for " item "!"]]
```

Output:

```
We want Red for Windows !
We want Red for Linux !
We want Red for MacOSX !
We want Red for FreeBSD !
```

Ain't that nice?

See you around!

Arnold


----------



## fonz (Mar 9, 2014)

*Re: The Red language project, building the world's first ful*



			
				Arnold said:
			
		

> What did you use REBOL for?


Several years ago I was a teaching assistant for a course called "Internet Bots, Spiders and Emotional Agents". In a nutshell, it was about writing Internet programs that exhibited some form of intelligent and/or emotional behaviour. For example, one could try to write an IRC bot that is smarter than ELIZA or to write an MP3 player (this was in the heyday of Napster, when it was still free) that is able to assess its user's current mood and adjust the playlist accordingly, that sort of thing.


----------



## Arnold (Mar 10, 2014)

*Re: The Red language project, building the world's first ful*



			
				fonz said:
			
		

> In a nutshell, it was about writing Internet programs that exhibited some form of intelligent and/or emotional behaviour.



That is interesting. There are two bots in the Red and REBOL chat room on Stackoverflow. They welcome new visitors, they process pieces of example code and they have a limited number of responses to other messages sent to them.

Today this happened, one of the users wanted to view Redbot's avatar.

```
User:
@RebolBot show me you face please
RebolBot:
@User Can you elaborate on that?
User:
@redbot Sorry, I meant you
redbot:
Appologies are not necessary.
```

Not bad for a bot


----------

