# World: r4wp

## [Announce] Announcements only - use Ann-reply to chat

 older first Kaj24-May-2013[513] I fixed the calling convention for the OpenGL library that's included in Windows, so the Red/System binding works there now: http://red.esperconsultancy.nl/Red-OpenGL/dir?ci=tip I also fixed the binary downloads GL-spin and GL-textures: http://red.esperconsultancy.nl/Red-test/dir?ci=tip  Ladislav26-May-2013[514] Another "batch" of doc files committed. See e.g.: https://github.com/saphirion/documentation/blob/master/r3/whatsnew.mdp , which tries to compare R2 and R3, which was a popular request.  Geomol26-May-2013[515] New World alpha at https://github.com/Geomol/World Let me know in #World group or private, if there are problems.  Pekr26-May-2013[516] Carl's REBOL blok - Roku - http://www.rebol.com/article/0529.html  Kaj27-May-2013[517] I dropped the cURL dependency from my red-base distribution. This means that it now only depends on a few libraries that can be expected to be included in all platforms. This version of the Red interpreter can now be used on Windows as a single executable, without any extra libraries. The Windows version red-base.exe is here: http://red.esperconsultancy.nl/Red-test/dir?ci=tip&name=MSDOS/Red It has versions of READ and WRITE for local file I/O, but no network I/O. It also has the other functionality from the C library, such as INPUT, ASK, GET-ENV, CALL, NOW and RANDOM, but for more functionality you still have to use red-core and red, and download the extra libraries for Windows.  GrahamC27-May-2013[518] Ok, Carl is now on Stackoverflow chat .. just need to upvote him somehow so he can actually talk! http://chat.stackoverflow.com/rooms/291/rebol-and-red  Robert31-May-2013[519] I'm happy to announce that we reached a major milestone and can release a bunch of new things. All the different versions have been merged into one code base which makes things easier for us. This was possible because the new 'retargetable' graphics subsystem was finished. This allows us to port R3 to other platforms much easier. Next target Linux. The release in detail: R3-GUI: Quite a lot of fixes and enhancements. Thanks for all the feedback. The main milestone we achieved was to switch to a resolution independent sizing system. This will scale your app widgets to look the same on different display densities. It's a must have for mobile apps. Next for R3-GUI is to create a simple mobile style set. Fruther, we are going to push the source code to GitHub. We need to setup a bridge to our internal SVN repository, so expect some back and forth on Github before we are stable. Anway feel free to help making R3-GUI better and better. Android: This release is now mostly the same as the windows release. So, yes, it's now possible to do R3-GUI apps on Android. I'm going to try to run Treemapper on it. Type DEMO to see the new R3-GUI version and widget scaling feature. Post as much screenshots / pictures of your phone as you can :-) R3/Saphir: New version for windows with bug-fixes are released as well. Please see the change-log on our web-site for details. Thanks to all the team for the great work! I really think we are close to have a very good and stable base with R3 and R3-GUI. Looking forward to see more and more people joining and becoming part of it. Links: http://development.saphirion.com (Change Logs, Downloads, etc.) http://development.saphirion.com/experimental (Android) https://github.com/organizations/saphirion (Documentations)  GiuseppeC31-May-2013[520] Hi, I paste the link: https://github.com/organizations/saphirionin Firefox and the main page of GitHub open. I see no Saphirion repository.  Andreas31-May-2013[521] Correct Link: https://github.com/saphirion  Robert1-Jun-2013[522] R3/Saphir: Core now builds again on OSX.  Robert2-Jun-2013[523x2] You can find it at: http://development.saphirion.com/experimental  R3/Saphir OSX Version updated, should now work on OSX from 10.4 on.  Robert4-Jun-2013[525] R3/Saphir OSX Version updated, should now have working HTTPS scheme.  Ladislav4-Jun-2013[526] Announcing changes to Saphirion doc: Function arity documentation and Argument passing styles documentation now adjusted to document both R2 and R3 versions. See https://github.com/saphirion/documentation  Arnold7-Jun-2013[527] I set up a Youtube account under the name of REBOL Coder using the gmail account [RedREBOLs-:-gmail-:-com]. I added a small number of youtube Red presentations. http://www.youtube.com/channel/UC4UikCida6olTyowsi5JyyA As it is an extra channel I think about sharing this account with interested from the community.  NickA10-Jun-2013[528] Robert, thank you for the improvements and progress with Android (sorry, I've been away from AltMe for a while)  Arie10-Jun-2013[529] @Arnold What about http://www.youtube.com/playlist?list=PL595BBBBC4CD91581 ?  Gerard11-Jun-2013[530] What a bad choice of color for your name - I just can't read it ... is it from Aries ?  Robert12-Jun-2013[531x2] I'm happy to announce that we made good progress regarding the Android R3 encapper. A major breakthru in the multiple-app generation has been made (thanks to Andreas for ELF format hints). Now it is possible to create encapped apps with unique app-id. Such apps can be recognized properly by the Android OS and also accepted on the Google Play market. The cool thing with this approach is one really don't need anything more than the Android encapper to produce the apk file. No need for android NDK, SDK or even JAVA to be installed ;-) There are some glitches we are going to fix and than the encapper is ready for production.  For an example see http://development.saphirion.com/experimental/encap-demo.apk  GrahamC14-Jun-2013[533] Makedoc for Rebol3 from Chris http://chat.stackoverflow.com/transcript/message/10001554#10001554  Rebolek15-Jun-2013[534] My Redis scheme was updated heavily and I hope it's ready for use by others. You can find it here: https://github.com/rebolek/prot-redis  Andreas18-Jun-2013[535] I wrote a quick & minimal example illustrating how to use R3-GUI together with R3's async HTTP: https://gist.github.com/earl/447e4e9510a68c308f6b  Kaj19-Jun-2013[536x2] I changed the Red 0MQ interface to optimise the memory use during receiving of messages: http://red.esperconsultancy.nl/Red-ZeroMQ-binding/info/2a1541af57 SEND and RECEIVE have been renamed to send-string and receive-string, because they currently handle messages as UTF-8 text. When Red gets a binary! type, versions for binary messages will be added, and there will probably be type agnostic SEND and RECEIVE wrappers again. Previously, you used message: receive socket to receive a string message. Now you pass a premade string! (similar to call/output in R2): message: "" receive-string socket message This means that you can choose between creating new strings for each message (with COPY) or reusing the same string. In the latter case, some Red/System code in receive-string makes sure that no extra Red memory is used, and that all used system and 0MQ memory is freed again. By optimising memory use, this also improves performance of message throughput.  This work will be paid for by Respectech as part of an assignment I'm doing for them. As far as we know, this is the first commercial assignment done with Red. I'm implementing a network server that needs to run for long periods and handle relatively large numbers of requests. This is tricky because Red has no garbage collector yet, and the memory allocator doesn't handle large series yet. We have been testing the memory system to scale it, and Doc has fixed an allocator bug so that series can now be twice as large. I've also found and reported seven other bugs so far. The results are very encouraging. The memory system is reliable in my stress testing. It can use all the memory available in a machine for the contents of series. In the default configuration, one series can have a maximum content of 2 MB, or 131070 values for a block!. This can be enlarged, basically at will, by compiling your program with customised allocator settings. To reduce the amount of memory that currently cannot be reclaimed by garbage collection, I am reducing the number of series generated during the handling of each server request. This can be done within the same Red program, because low level optimised Red/System code can be inserted anywhere. I am down to only a few hundred bytes per handled request, and the memory budget of the server is a GB, so the Red 0MQ server will be able to handle several million requests.  Kaj20-Jun-2013[538x3] For relevant platforms, I added extra versions of my Red interpreter console distributions to my downloads: http://red.esperconsultancy.nl/Red-test/dir?ci=tip They provide versions that include my 0MQ binding for messaging. Previous interpreter distributions didn't include it, because on most platforms, you have to install the 0MQ library as an extra. Further, people may need 0MQ with the GTK+ GUI binding, or without it on servers and embedded systems. So there are two new distributions in each platform folder: */Red/red-core-message */Red/red-message red-core-message is meant for servers and includes bindings for the C library, cURL, SQLite and 0MQ. In addition, red-message also includes the GTK binding and is meant for GUI programs. For Windows, most of these interpreters are in the MSDOS/Red/ folder, but I also added a version that is meant to start scripts for GUI programs, so it doesn't open an extra console window: Windows/Red/red-message.exe  As an example, the interpreter to run messaging scripts on a Raspberry Pi without GUI is here: Linux-ARM/Red/red-core-message The interpreter to develop GUI scripts on x86 Linux to communicate with a Raspberry Pi is here: Linux/Red/red-message A similar interpreter to develop GUI scripts on Windows to communicate with a Raspberry Pi is here: MSDOS/Red/red-message.exe As always, for Windows you also have to download the libraries that are included in the repository, according to the instructions here: http://web.syllable.org/news/2012-11-18-20-47-Red-high-level-programming-language-first-alpha.html  In addition to these added programs, the existing interpreters and other programs have been rebuilt with the latest Red enhancements, including the doubled maximum size for series. These new Red interpreters are candidates to be used in filming and streaming the presentations on the DevCon in Montreal.  Ladislav21-Jun-2013[541] https://github.com/saphirion/includerepository created, containing the %include.r and %include.mdp files  AdrianS21-Jun-2013[542] Ladislav, couldn't you convert the docs to markdown into a file called readme.md so that they are visible by default?  Arnold3-Jul-2013[543] Added 2 more video's to the RedRebols channel http://www.youtube.com/channel/UC4UikCida6olTyowsi5JyyA I forgot to tell about not requiring a specific return, not needed to declare types and use of normal naming is encouraged and the automatic casting of the return value. Need to make a [3.5] too someday..  Arnold4-Jul-2013[544] Video number 5 posted. This one uses routine to call a Red/System function from a Red script.  Kaj7-Jul-2013[545x5] I'm happy to announce that Doc and I got the first Red/System kernel driver working, for Windows. This is Doc's second kernel driver, and my first, and also my first real Windows program, so it took a few weeks to figure it out. This new ability of Red is sponsored by Respectech. Our test driver just loads and prints a Hello World style message that a kernel debugger can view, but I will be developing the driver into the functionality we need for our Respectech project. I will post the code of the test driver in the Red group.  This replaces the Windows Driver Development Kit (WDK) that you normally have to install on Windows to compile drivers. The WDK is a full CD download, 650MB. You don't need the WDK, but currently, you do still need to run the Red/System compiler on Windows (or WINE on Linux) to compile Windows drivers. This limitation will be removed later, so you will be able to cross-compile Windows drivers from all other Red platforms, like you can with other Red programs.  You should be able to compile the test driver with the latest Red/System development version, following the normal build procedure but adding the following parameter to the Red/System compiler command line: rsc.r -t WinDRV driver.reds This effectively replaces a makefile build script that the WDK uses that is almost 12,000 lines. By the way, the WDK is unable to work in a path that contains spaces, so for example on older Windows versions such as XP, you can't develop drivers in your home directory, because your home path always contains spaces. I think Red will now allow you to do that.  You will get a driver.sys file that you can install, start, query and remove like this, from a Windows account with administrative rights: sc create hello-Red type= kernel binPath= C:\full\path\to\driver.sys sc qc hello-Red sc start hello-Red sc query hello-Red sc delete hello-Red  To view the debug message generated by sc start, you need to install a (kernel) debug tool such as DebugView, and enable kernel debugging in the Windows boot options. Other than that, you should see sc query showing the driver as running.  Kaj10-Jul-2013[550x3] Red has a new platform, Android for x86 processors, so I added it to the downloads of example programs: http://red.esperconsultancy.nl/Red-test/dir?ci=tip The Android programs for both ARM and x86 include the recent fixes to the Red Android port, so they have a better chance of working now. I would still like someone to test them. All example programs for other platforms have also been rebuilt with the latest Red enhancements and fixes.  Remember Doc's instructions for running command line programs on Android: http://www.red-lang.org/2011/12/arm-support-released.html  Now that generation of shared libraries and drivers is available in Red's mainline, I have extended my build script to build libraries and drivers. I have added examples of a Windows kernel driver and libraries for R3 extensions in both Red/System and Red to the downloads repository mentioned above. The R3 extensions are available for all platforms to test, but the Windows kernel driver is here, as hello-kernel-driver.sys: http://red.esperconsultancy.nl/Red-test/dir?ci=tip&name=MSDOS/RedSystem See above how to start the driver. Instructions for using the R3 extensions are in the headers of the source code: http://red.esperconsultancy.nl/Red-REBOL-3/dir?ci=tip&name=examples  Kaj13-Jul-2013[553] I have extended the Red/System null driver for the Windows kernel into a null mini-filter driver. It now registers itself as a mini-filter and imports functions not only from the kernel, but also from the FilterManager driver, so it is now in a hierarchy of drivers. It now responds to a stop command, so you can stop running the driver like this: sc stop hello-Red I will set up a new repository later to publish the Windows kernel and FilterManager bindings and examples.  Robert14-Jul-2013[554x2] We did a new Saphir / R3 Andoid release. Changes: -fixed input text renderin bug -reworked misc internal threads synchronisation issues to fix possible dead locks -added ACTIVE, INACTIVE events -added horizontal native scrolling for layouts wider than screen -fixed screen rotation -updated demo script (just type DEMO in the console) -fixed BROWSE bug -added .r3 suffix to be able open this type of R3 scripts automatically -other smaller internal fixes If you want to test it on your phone just run the console and type: do http://development.saphirion.com/experimental/demo.r ATTENTION: We changed the directory layout a bit. You find the Andoid release here: http://development.saphirion.com/experimental/builds/android We added other platforms as well: http://development.saphirion.com/experimental/builds/ And the root is still: http://development.saphirion.com/experimental/ Next Wednesday I will give a short talk about our porting efforts here via Web-Cast: http://www.vksi.de/sneak-preview/17072013-android-qs.htm (German)  In conjunction we did a new R3-GUI release as well. added DETAB flag support fixed TEXT-AREA issues fixed TEXT init-size handling fixed SIZE-TXT bug built new R3GUI release (version 4897) delete "experimental" layout-sizing-independent.r3 improve rouding move docs/r3-gui/ to documentation/r3/r3-gui/ remove documentation/r3/r3-gui/license/ directory containing obsolete license Copyright notice update license update typo fixed Rounding correction improved rotate event handling improved drag handling code (removed duplicate gui-events/drag reference) improved android text input handling fixed progress resizing improved text-able cell font handling fonts are antialiased by default on android now http://development.saphirion.com/resources/r3-gui.r  Cyphre14-Jul-2013[556] Some additional notes: -you can run the demo on Saphir / R3 Andoid just by typing DEMO in the console -the Linux, OSX-PPC and OSX-Intel "View" binaries needs 32-bit version of freetype2 library (also included in the specific build folders) -the Linux, OSX-PPC and OSX-Intel "View" binaries are currently able to render DRAW dialect to image! (using the DRAW command). We'll be working to get full graphics support on the metioned platforms in the near future.  Kaj14-Jul-2013[557] I upgraded the 0MQ library for Windows that is included in my Red downloads from version 2.0.10 to 2.2.0: http://red.esperconsultancy.nl/Red-test/dir?ci=tip Timeouts are now available for sending and receiving messages, and the OpenPGM library is included for multicast networking. Thanks to MikeL for noting the newer binary builds for Windows.  Luis15-Jul-2013[558] Robert, Cyphre Congratulations !! Correct link for r3-gui is: http://development.saphirion.com/resources/r3-gui.r3 (no .r)  Geomol17-Jul-2013[559] New World alpha release at https://github.com/Geomol/World - Added better networking using cURL library, libcurl (OS X and Linux) - Added tasks incl.: - task! datatype - task-id! datatype - TASKS native function - task? and task-id? mezzanines - Task support for many functions incl. HELP, SOURCE, FIRST, SECOND, PICK, COMPILED? and DISASM - KILL mezzanine to call TASKS/KILL - Added inter-task communication using SEND and RECEIVE native functions - Added support for messages to WAIT as: wait 'message - Added preemptive multitasking using TASKS/TICKS to specify number of Virtual Machine instructions per task run (default is 200) - Added timers for tasks triggered by WAIT native and READ native, when reading from url - Task yield can be achieved by: wait 0 - Changed ;{ } comment syntax to ;( ) - Parens can now span several lines at the prompt - Added system/console/paren - Added support for pressing to stop execution of main task - Sending input via pipe to World started with a script will activate input without echo and without -completion etc.. (Not sure how and if this works under Windows.) - Added support for picking 'Re and 'Im of complex numbers - Better implementation of TRY - New test versions of IF and EITHER, that can take other than block! arguments - Added more tests  Robert19-Jul-2013[560] We have pushed our R3-GUI sources to Github. The project was cleaned up, old stuff removed etc. So it should be in pretty good shape. We keep the GibHub repository in sync with our internal SVN repository. We will further take a look at pull requests and take your feedback into our main line. You can find the repository here: https://github.com/saphirion/r3-gui  Ladislav19-Jul-2013[561] README adjustments made as Adrian proposed.  Gerard28-Jul-2013[562:last] Thank you very much Robert and your team members for all of your efforts. I'll also contribute to your advancement by sending some contributions to you very soon. Just waiting for my next pay cheque in about 15 days.  older first