AltME: Announce

Messages

Marco
I have updated my latest script:
http://www.rebol.org/view-script.r?script=vid1r3.r3
and also vid-build.r that now work on R3 (with vid1r3.r3).
I think I have reached a good degree of compatibility. I also think I have reached my limit in this script so do not expect many other improvements.

Maxim
I am happy to announce my one release a day program (c)
yes, for a while now I have been doing many commits to several repositories, and am doing my best to do at least one commit a day.  today I did commits on liquid-libs/fluid.r and steel/fluid-tests.r

Kaj
By popular request, I have upgraded Red on Try REBOL to the current development version, which now includes PARSE:
http://tryrebol.esperconsultancy.nl
Unfortunately, this also means that objects are no longer included until they arrive in the master development branch.
Please test the new Red, in particular PARSE, for the upcoming release

Maxim
simple script to detect if you've got some console functions in one or more scripts.
note that you can easily replace the words to verify in the globals.

Kaj
Here's a new Red project, using PARSE:
http://red.esperconsultancy.nl/Red-TNetStrings
It implements the Tagged Netstrings data format:
http://tnetstrings.org
an extension of the original Netstrings format by Dan Bernstein:
http://cr.yp.to/proto/netstrings.txt
Kaj
There are two functions: to-TNetString and load-TNetString. They have several refinements to improve the conversion between the Red and TNetStrings type systems, and to be consistent with other Red functions, in particular MOLD and LOAD.
The converters are heavily optimised to minimise the number of series operations, to optimise memory use and hopefully speed.
The TNetStrings parser uses the new Red PARSE. Even though it's a very simple format, it uses many of the PARSE enhancements.
Converting the Red type system to another one gave it a good exercise. It has shaken out a series of bugs from PARSE and other parts of Red.
Kaj
You can use TNetStrings instead of MOLD and LOAD to serialise some Red data using UTF-8, as long as Red's LOAD only supports ASCII.
Further, I need TNetStrings to interface Red with the Mongrel 2 web server.

Kaj
I used the TNetStrings converters as templates to write a JSON implementation for Red:
http://red.esperconsultancy.nl/Red-JSON
It's heavily optimised for minimal memory use, over speed, because Red doesn't have garbage collection yet.
I haven't implemented string escaping yet.
You can use JSON for example to communicate with a Fossil server, in combination with the cURL binding.
Maxim
Announcing Stone DB, a New commercial project I am currently starting design and implementation on, it is partially funded.
Stone will be an "enterprise level" node/graph DB.  Coded in C (no C++), it is currently planned to become Open-source within a short timeframe.  
much more is detailed in my initial project draft, some surprising capabilities,  but I wanted to keep  the list here short, just to give the main idea.
Some of the end GOALS are:
----------------------------------------
-Eventual native Integration in Rebol 3 ( & Red? ), much like Neo4j is integrated to java (as are most other graph DBs).
-terra/petabyte level capacity  (if you have access to a filesystem with such a capacity.  SAN or RAID array for example).
-100 billion nodes, 1 trillion associations are minimums I want to reach, even possible with 32 bit executables which typically use half the RAM.
-unique directional, associative and "qualified node" querying system, allows you to probe the db across all datasets, without using any pre-determined records.
-windows / linux compatible as initial targets.
If you are :
--------------
- interested in helping write code,
- interested in knowing more about Stone's planned technology and featureset
- currently using some node DB,  
- would be happy to test (even just , hey it started ;-)
- support the DB via funding
- put time on documentation
- writing generic clients (web client like neo4j would be nice)
...
once it starts being useful outside of my initial, pretty raw prototype phase, please let me know and I'll put you in a list of people to reach out at opportunate points in the Stone DB development.
obviously, I'll hapilly chat here if any of you have questions.
(here in altme, but in the ann-Reply group ;)

Kaj
I implemented SINGLE? and OFFSET? for Red in common.red:
http://red.esperconsultancy.nl/Red-common/dir?ci=tip
I've also started collecting commonly used PARSE rules in there, so far for string parsing:
whitespace
digit
non-zero ("1" - "9")
AdrianS
Kaj, for offset? should the function not test that the series passed in refer to the same undelying series (but a different position)?  I see that Rebol doesn't do this check either, but wouldn't it make sense to do so? What is the point of comparing positions in different underlying series?

Gregg
My implementation of OFFSET? in Red is exactly the same as Kaj's. I didn't thinl about adding that check either, but I think I have used it on different series at least once in the past, tracking progress in two different queues.
Kaj
By request, I added a /deep refinement on my JSON emitter for emitting nested blocks as objects. The /map refinement now only works on even sized blocks, instead of considering odd sized blocks an error:
http://red.esperconsultancy.nl/Red-JSON/dir?ci=tip
print to-JSON/map/deep [a 9 [b 9  c 42]]
["a", 9, {"b": 9, "c": 42}]
The JSON loader now supports string escaping, except Unicode escapes, which are implemented but are waiting for Red's LOAD to support char! syntax with parens: #"^(0000)"
probe load-JSON {"Escape: \"\\\/\n\r\t\b\f"}
{Escape: "\/^/^M^-^H^L}

amacleod
Very exciting stuff, Kaj!

Last message posted 110 weeks ago.