World: r3wp
[!Liquid] any questions about liquid dataflow core.
older newer | first last |
Maxim 16-Mar-2009 [899] | happy you are "getting" it :-) it can be a wee bit unsettling when the system starts to be knowledgeable about itself. |
Ammon 16-Mar-2009 [900] | That's exactly what I want the system to do. =D |
Maxim 16-Mar-2009 [901x2] | my most common bug, is to forget to put something stainless or to ask for a value... hehe |
I turn round and round and wonder why nothing is being printed on the console... then after a very long time... hehe I realised I never asked it to perform its task... hahaha | |
Ammon 16-Mar-2009 [903] | The last one I ran across took me 15+ minutes to find a reference to face in a plug that never got set. I couldn't figure out why it did nothing... |
Robert 16-Mar-2009 [904] | Sounds like a special tracing/debugging functionality should be included. |
Maxim 16-Mar-2009 [905x4] | it already is :-) its run-time switcheable... and its how I always find my stuff. its even indented |
if you try out the little blood.r app on rebol.org you'll see how extensive liquid's tracing is, thanks to slim's vprint engine. :-) | |
plugs also have the generic stats method, which gives A LOT of info about the current state of the node. links, state, type, serial numbers, etc. | |
rmembr that liquid is the culmination of 5, yess FIVE years of R&D ;-) | |
Graham 16-Mar-2009 [909x2] | so for someone who does plain boring data entry forms .. what can it do for me? |
screen validation? calculate results based upon screen entry? | |
Maxim 16-Mar-2009 [911x4] | did you try the blood.r on rebol.org? |
there are 12 interconnected fields, which all react together. impossible to break by using the gui. | |
We already have some variations where the buttons get deactivated even more precisely. | |
its a simple download and run... all libs are d/l for you in same dir... can't be easier to try out. | |
Graham 16-Mar-2009 [915x2] | not yet ... been busy with my pdf stuff. |
waiting for everyone to report their bugs first so that you can fix them :) | |
Maxim 16-Mar-2009 [917x2] | that's the point of liquid... un breakable.. once it works... it just does |
the entire gui is reflective. | |
Graham 16-Mar-2009 [919] | how much code is it? |
Maxim 16-Mar-2009 [920x3] | in this example... way to much, cause we are basically including very basic nodes and a core gui api, but if you remove that, in fact there isn't that much left. |
with the external libs I am building (actually working on them daily) code use will be very small. since the most complicated part of the engine will be wrapped within liquid-vid, and you will have a lot of example and reusable liquid classes to start off with. | |
I mean, we have to use liquified versions of things like min/max/sum/sub/append funcs... there is no going around that. but its like defining new functions... which are just as reusable. | |
Graham 16-Mar-2009 [923] | ok, cool . just tried it out |
Maxim 16-Mar-2009 [924] | try putting extreme values in ANY field, even non numerical, decimal, etc. |
Graham 16-Mar-2009 [925] | is everything MIT now? Is the GPL gone? |
Maxim 16-Mar-2009 [926x7] | all MIT |
what really pushed me was that I realized that with gpl, you can even get kicked out of your own code. | |
its like a sticky fly trap. | |
beurk | |
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 [948] | 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. |
older newer | first last |