A summary of what's happening in the REBOL community.

The week ending 28th May, 2006


Sunanda has written a new article, Reading CGI input data safely .
Accompany source code is available

Graham contributed 'skype.r', a rebol script to call Skype via com. Requires /Pro or /Command
http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=skype.r as well as the necessary dlls as documented.

Gregg has contributed 2 scripts
- file-date-comparison-ctx , which allows you to compares file dates using a dialect
- file-size-comparison-ctx, which compare file sizes using a friendly dialect

Xavier Debecq contributed a script XPDev that allows XP programmers to manage their documentation.

AltMe :
OpenGL for REBOL
John Niclasen, aka Geomol, had created an OpenGL solution for REBOL (on Mac OS X).

More information available at

Mailing List :
Alessandro's question on "How to read a BIG file" gives rise to a good tip.

TIPS : /seek mode was created in the 'open' function one to rapidly access large files.

Read more on 'seek' here : http://www.rebol.net/article/0199.html

On the NET :

OSNEWS.com :
Internet2, a not-for-profit consortium of over 200 US universities, collaborated with SURFNet to provide Internet2 Detective.
Internet2 Detective provides an easy way for the average computer users to detect and find out the status and capabilities of their current network.

Sighted on RebelBB, forum for French REBOL community, is another full-blown BBS written in REBOL.

This REBOLWeek is brought to you by YekSoon, from Singapore.

The week ending 21st May, 2006

This weekly summary idea has been well received, and we now have 4 new contributors. Please welcome Sunanda, Volker, Max, and YekSoon.

Although we do not aspire to become an e-zine, like the much missed Rebol/Zine, we will be happy to accept small articles that we can publish within the constraints of the blog format.

Discussions continue on the security model to be used by the plugin. A design document is being drafted by Josh, and should be available for comment within a couple of weeks.

Anton has updated his batch-download.r script so that you can now skip a file, pause, and abort. Very useful stuff. Graham's demo using this script has been updated as well.

Vollker has released his mini RCS system named snapsets.

Henrik released version 0.0.41 of his very useful list-view - a powerful extension to the list style.

Gabriele released his structure matching and rewriting tool. With this you can match a structure using parse rules, and replace it with another. Sounds cool and potentially very useful especially in relation to the following news about contexts.

A context is a set of words, for example the arguments to a function or the members of an object. Prior to Rebol3 once a context was created, it could not be extended. But in some instances, this constraint will be released.

Bind will now expand contexts. So, instead of having to create a new object to add to a context, we will now be able to do this:

obj: make object! [a: 1]
word: bind 'b ob
set word 10
print obj
a: 1
b: 10

This is related to Rebol3 using modules which means allowing for multiple global contexts instead of a single global context, and similar to the Forth vocabulary.

As you know, AGG is now used by View as its rending engine. Recently AGG 2.4 was released, and is now able to render Flash shapes. Does this mean that View at some time in the future may be able to playback Flash movies?

This web forum has now added a section specifically for Francophiles.

This Rebol clone has been chosen to be the default scripting language for Syllable, a GPL operating system. In the meantime a binary release is available.

The week ending 14th May, 2006

The REBOL community, though small, spreads itself thinly across the globe, and in many different forms of electronic publishing. There has been a preference in particular for Rebolers to hide in dark secretive worlds even away from other Rebolers though this has improved with the publishing of some content from Altme Rebol3 to rebol.net.

This blog is therefore an attempt to summarise the weeks news and activities in the Rebol community.

Robert announced that he had contracted Cyphre to work on some fixes, and to build a tree widget. Anton announced he has finally debugged the area widget of some long standing issues.


Mailing List
For the first time in living memory, a poster had to be removed from the list for creating a lot of ill feeling. Let's hope it is the last time.

Gregg, Ladislav and others discussed a collect function implementation. What does a collect function do?? Apparently it is designed to reduce some dancing that you do when you wish to accumulate values.

So, say you had a function to grab all the results from a database query

get-results: has [ result ][
insert db-port {select * from database}
result: copy []
foreach record copy db-port [
append result record

This would be written

get-results: has [ result ][
insert db-port {select * from database}
collect result [
foreach record copy db-port [result: record ]

Browser Plugin
Work on the Internet Explorer, and now Firefox plugins has recommenced with the welcome return of Josh Mitts.

New Scripts
I released a download manager using Anton's batch-download function. It was needed for my purposes to allow users to select the downloads required for Synapse EMR, and grabs files from multiple sites. License is BSD.

Prolific's Edgar released a wrapper for ImageMagick, and I also released a wrapper for Dosadi's Eztwain library.

Gabriele continues to study the sources to TeX so that pdf-maker2 can do flowing text, justification, and pagination. He did release a pre-alpha version of make-doc3 to me so that I could experiment with a LaTeX emitter, and the early version of this was released.