r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!Liquid] any questions about liquid dataflow core.

Maxim
16-Mar-2009
[930x3]
notice how it even updates labels, colors, and buttons become inactive 
when you go out of bounds.
(+/-) are buttons
also note that it was the first time I tried to do this using liquid. 
 its not like an old code sample I refurbished...
Graham
16-Mar-2009
[933]
all of this has to be wrapped inside a dialect !
Maxim
16-Mar-2009
[934x8]
in theory it should, but in practice, it depends.
I have built several systems which used dialects... but liquid allows 
so much variance, that its like building a dialect for functions...
the gross of the work is not in between the plugs... its the plugs 
themselves.
so liquid-vid is going to wrap most of the liquid code for the gui.
but a single function... liquify can actually perform 5 operations 
in one single line, including linking to any number of pipes at once... 
so there would actually be very little code gain.
dialects will be usefull when the use of the plugs is well defined, 
and your plugs  are pre-defined, then the dialect will effectivey 
shrink code size by a huge amount... but that's just like for any 
dialect use.
I guess we could make a generic dialect which uses a set of pre-determined 
plugs (a bit like a vid stylesheet) and just builds up a network 
a bit more easily...    this is planned....   the dialect function 
already has a name.... :-)
dilute()
Graham
16-Mar-2009
[942]
so, this works for numbers and ?
Maxim
16-Mar-2009
[943x4]
anything.  the example just does artithmetics, bounds and mappings, 
but you can use this for anything.
an obvious example is a setup where you have a series of inputs, 
which are all linked to one plug which compiles them as an object.
if part of a gui, the "submit" button is inactive, until all conditions 
are met.
liquid-vid should provide this out of the box.  :-)
Graham
16-Mar-2009
[947]
need to hook this up to rebgui
Maxim
16-Mar-2009
[948x2]
I also use liquid to build vast networks of AGG graphics for real-time 
interface creation... we are talking several thousand lines of AGG 
commands.
liquid-vid should make glayout and rebgui obsolete.
Graham
16-Mar-2009
[950]
only if you can replicate all the widgets!
Maxim
16-Mar-2009
[951x7]
we don't  :-)
for example, in the blood app, there are no int gadgets.
all the label types, will just need one link to a different font.
grids are much easier (actually quite easy) to build with liquid, 
and in any case, its still faces... so importing a gadget is dooable, 
if rebgui doesn't depend on too much out of widget infrastructure.
skining will be dynamic (I mean you plug a color gadget and the whole 
ui interacts as you set the scheme).
btw, the reason liquid-vid is taking some time, is that the whole 
layout is built using dataflow !  :-)
I've been re-designing the wrapper around the system for a week... 
trying to find a sweetspot between flexibility and styleability.
Dockimbel
16-Mar-2009
[958]
Max, would your engine be good fit for a spreadsheet calculation 
engine? Steve Shireman wrote this nice tiny spreadsheet widget (http://www.efishantsea.com/nano-sheets.zip), 
I guess that pluging liquid inside would make a killer demo both 
for liquid and REBOL, don't you think so?
Maxim
16-Mar-2009
[959x3]
I looked at it a long time ago, but realised that its basically easier 
to start from scratch... cause if you remove the processing aspect 
of nano-sheets... there's not much left.
:-)
but once liquid-vid is released... really its going to be very easy 
to build up grids and a little equation builder.
Robert
16-Mar-2009
[962x3]
Max, you should try to find a route to attach liquid to existing 
GUI like VID or RebGUI. By a dynamic hook or so.
Otherwise it's a all-or-nothing thing which makes it hard to bring 
liquid step-by-step into an existing app.
Overall, it still sounds like a multi-path constraint solver to me.
Maxim
16-Mar-2009
[965x3]
robert  liquid-VID  ;-)
someone could most probably use the same core system and adapt it 
to rebgui's dialect.
I myself am building it with faces directly.  so its just going to 
be a quick integration to VID, use of a few facet words and voila.
Maxim
28-Mar-2009
[968x4]
liquid v0.8.1 released:
changes in this release (from last public release)

	v0.7.2 - 8-Mar-2009/21:25:55(MOA)

  -officially deprecated and REMOVED SHARED-STATES from the whole module
		-ON-LINK() 
	
	v0.8.0 - 15-Mar-2009/00:00:00(MOA)

  -adding stream engine for propagation-style inter-node messaging.

  -STREAM() added for look-ahead messaging (ask observers to react 
  to us)

  -ON-STREAM() added to support callbacks when a stream message arrives 
  at a plug.
		
	v0.8.1 - 28-Mar-2009/00:00:00(MOA)

  -PROPAGATE?() added to valve - allows us to optimise lazyness in 
  some advanced plugs

  -LINK?() regression found and fixed... cycle?() was not being used 
  anymore!
liquid state of affairs:

-GLASS v1 is going through intense development.

-GLUE - foundation plugs,  although not yet released is getting packed 
with fully documented plugs weekly.  there is more documentation 
text than actual code in the lib!

   *currently working on highly optimised finite state machine systems. 
   (optimised in how they prevent useless processing and messaging).
also, liquid-vid project has been dropped, officialy, in favor of 
putting time on GLASS and GLOB v2 instead.
Liquid has been tested under R3 and crashes it outright.  so R3 support 
for liquid will wait until R3 is a bit more stable, unfortunately. 
 I have enough stuff to debug without having to wonder if its the 
platform that's causing the bugs in the first place.
Mchean
9-Apr-2009
[972]
liquid links?
Ammon
10-Apr-2009
[973]
http://www.rebol.org/view-script.r?script=liquid.r
RobertS
11-Apr-2009
[974]
Maxim - I have sent you a note on my intent to add to my piece on 
"slim Liquid Rebol" at eclectic-pencil -  I will pen that note in 
blood ...  piping can be so much more feral that ducts ; - )
Maxim
18-Apr-2009
[975x3]
Robert, there are some (old, yet still mostely accurate) docs here:

http://www.pointillistic.com/open-REBOL/moa/steel/liquid/index.html

and specific to the plug (less accurate)

http://www.pointillistic.com/open-REBOL/moa/steel/liquid/plug/index.html
any question you have, just ask here and will help as much as I can. 
 I've tutored three people so far, and it seemed to be easy enough 
to grasp that within a few hours, they where semi autonomous.
remember that dataflow is not just about using a new library, its 
a paradigm change in how you develop and design an application.  
so most of the difficutly is not in the actual coding of the plugs... 
which is really easy, its understanding what, how and why they are 
doing their stuff.
Graham
18-Apr-2009
[978]
write it up again so that those of us who didn't get personal tuition 
can understand it too!
Maxim
18-Apr-2009
[979]
it will happen. in a short while, I just had to stop working on personnal 
projects for a week or two... life has a tendency to cut into fun 
stuff... things like lawsuit threats, have a "slight" precedence 
over me hacking away at a keybord for the sheer fun of it   ;-)