• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r4wp

[#Red] Red language group

Bo
10-Feb-2013
[5519]
Looks like ImageMagick will do the trick, if I can just figure how 
to translate the tutorials from C to Red/System.
DocKimbel
11-Feb-2013
[5520]
Kaj: are we good with the fixes in lex-scope branch? If all is fine, 
I will merge it tonight.
Kaj
11-Feb-2013
[5521]
Yep, it's starting to look good. I'll build the examples once more
DocKimbel
11-Feb-2013
[5522]
Great, I'll add a few binding tests from the tickets, then I'll do 
the merge.
Kaj
11-Feb-2013
[5523x3]
No build problems
I'm happy to report that literal arguments work now. For example:
cycle: func ["Cycle a series through its index."
	'series [word!]
	/local s
][
	either tail? s: get series [
		set series  next head s
		first head s
	][
		set series  next s
		s/1
	]
]
DocKimbel
11-Feb-2013
[5526x2]
Nice one!
Branch `lex-scope` merged in master.
Kaj
11-Feb-2013
[5528x2]
It seems that the optional attributes and function description are 
swapped in Red/System compared to REBOL. Is that intentional?
http://www.rebol.com/r3/docs/concepts/funcs-defining.html#section-1
DocKimbel
11-Feb-2013
[5530x2]
Yes, it makes it easier and faster to find optional attributes this 
way.
We could change it though, it's no significant impact on the compiler.
Gregg
11-Feb-2013
[5532]
I believe REBOL allows either order, so it's just the docs that say 
it has to be that way.
Kaj
11-Feb-2013
[5533]
I like the REBOL order better in the formatting of the program
Gregg
11-Feb-2013
[5534x2]
I can see arguments both ways. Attrs are short, and having them first 
makes them easier to see, because they will be used far less than 
doc strings. OTOH, being used less makes them feel "more optional" 
than doc strings, hence could come after the doc string.
This would be a great question for Carl, as to why he did it the 
way he did it in REBOL. That is, allowing either order.
Kaj
11-Feb-2013
[5536x2]
I like to put the function description on the same line as the function 
name, so it's easy to scan through a program text for them. Having 
the attributes in front of it makes the line too long and hides the 
atrributes in the text
So when there are attributes, I have to move the description in line 
with the arguments, where it becomes hidden because it's not lined 
up with the other function descriptions
DocKimbel
12-Feb-2013
[5538]
Kaj: I've pushed a change in attributes handling for Red/System functions, 
you can now specify attributes or function's description doc-string 
in any order. I've replaced direct spec block access for attributes 
by a function call in deep compiler's code parts, so watch out for 
regressions especially in callbacks!
Kaj
12-Feb-2013
[5539]
Fast response, thanks!
Bo
12-Feb-2013
[5540]
Pekr mentioned on 7-Jun-2012 in this group that an OpenCV binding 
was coming, but I can't find it anywhere.  Does anyone know if it 
exists?
Kaj
12-Feb-2013
[5541]
Good question. I have no idea where Petr pulled that from
DocKimbel
12-Feb-2013
[5542x2]
OpenCV binding is done by François Jouen, it's a work in progress. 
There's a Red/System version that you could find from this page (in 
french):


http://www.digicamsoft.com/cgi-bin/rebelBB.cgi?thread=%3C25May2012200150764026200%3E


There's a Red version that François sent me privately a few days 
ago for testing, but I haven't had the time yet to review it.
François showed me a few nice demos done with that binding a couple 
of weeks ago when I visited him in Paris. He had some camera-controlling 
and image recognition demos done from Red(/System).
Bo
12-Feb-2013
[5544x2]
Any chance he'd be willing to share his Red/System code?  I want 
to do something similar, and it would be great if I could see working 
examples!
Oh, I see he has a samples.zip file in that link you posted above.
DocKimbel
12-Feb-2013
[5546x2]
Right.
I will ask him for the latest version tomorrow.
Kaj
12-Feb-2013
[5548]
Very cool
Bo
12-Feb-2013
[5549x2]
This would be a good thing to add to the Contributions page on red-lang.org. 
:-)  (I looked there first for the OpenCV binding)
I wish I could work with Red instead of at my regular job. :-/
Kaj
12-Feb-2013
[5551x2]
I see it's another library that dug itself into a C++ hole
Compilation time seems to be reported modulo one minute or so, at 
least in the Red/System compilation phase
DocKimbel
13-Feb-2013
[5553]
Dyn-lib-emitter branch upgraded to match master.
Kaj
13-Feb-2013
[5554]
Cool!
DocKimbel
13-Feb-2013
[5555]
Now we need to make those Red functions callable from outside. ;-)
Kaj
13-Feb-2013
[5556]
No problem, I can just make a Red/System callback with a Red callback 
:-)
DocKimbel
13-Feb-2013
[5557]
I would like to add an #export option directly at Red level, with 
automatic argument marshalling...will be handier. ;-)
Kaj
13-Feb-2013
[5558]
No argument here :-)
DocKimbel
14-Feb-2013
[5559]
Branch `fix-385` merged in master.
DocKimbel
15-Feb-2013
[5560]
Added OpenCV to contributions page, François sent me the link for 
the latest version and says that it can be now used in production.

http://www.wuala.com/fjouen/Code/OpenCV/Red/
Pekr
15-Feb-2013
[5561x2]
Cool to see!
Btw - I noticed you tweeted about the LeapMotion - what's your first 
impression?
DocKimbel
15-Feb-2013
[5563]
François also did a binding for the DAQmxBase v3.6 lib that can be 
found here:
http://www.wuala.com/fjouen/Code/NI/Red/


This lib allows to drive data acquisition devices from NI: http://www.ni.com/data-acquisition/
Pekr
15-Feb-2013
[5564]
Ah, so cool, now I feel like Red is getting into embedded sphere 
:-)
DocKimbel
15-Feb-2013
[5565]
Leap device: huge potential, C++ drivers (!), only simple demos and 
basic testing tools available currently.
Pekr
15-Feb-2013
[5566x2]
C++ drivers - bad to wrap for us, no?
What would be also cool would be to bind to one of media frameworks 
- libVLC, ffmpeg, Libav, mplayer, Gstreamer, etc. - dunno which one 
is the best ....
DocKimbel
15-Feb-2013
[5568]
Yeah, significant extra work to interface with it. But there's a 
shortcut, a API is also available through a builtin websocket server, 
so you can access the device from your browser directly.