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.

Josh
27-Feb-2009
[659x2]
SOunds great!  If you can't get it finished, at least show me a sizable 
component of it so I can get some ideas
:-)
Maxim
27-Feb-2009
[661x3]
what I'll do is post all of this on rebol.org, so the whole world 
gets  a view of it  :-)
I've been wanting to do this for ages.... but having someone actively 
looking out for it... makes it much more compeling to do  ...
I'll announce it here when the first parts are available.
Josh
27-Feb-2009
[664]
hehe, just remember, I'm stuck here doing nothing until you finish 
;-)
Maxim
27-Feb-2009
[665]
yep.
Josh
27-Feb-2009
[666]
i'm excited
Maxim
1-Mar-2009
[667x4]
I'm working on it...  :-)
I have a double set-back though... the old aspect code was for a 
previous version of liquid...
and it was profoundly prototypish, I realise.  not enought comments 
for me to even remember how to use... so I'm scanning my old test 
code in order to make it much more usable.
note... the test application is called glass.r   ( an infamous name 
if there is one  ;-)
Josh
1-Mar-2009
[671x3]
hehe, yeah, I'm starting to finally fix all my poor coding practices, 
especially with naming.   Anyways, sounds good,  again, you don't 
need to do the whole char gen or anything, but just a good chunk 
for me to see how to put things together
One note:  on http://www.pointillistic.com/open-REBOL/moa/steel/liquid/plug/plug-reference.html
 when I use Opera, nothing after section 2.1.1 gets displayed.  Works 
fine in Firefox though
But I want to see glass.r ;-)
Maxim
1-Mar-2009
[674x4]
strange, cause its a static html page ... just one or two table.... 
in this case... I must say that opera seems to be the issue  ;-)

did you try reloading the page?
btw wrt the old code, I realised the issue... I had cleaned up the 
lib, and stopped half way....   so the naming changed, a few features 
missing... :-(
fixing it up... will have something during the week..  its the fabled 
week of at school... so I'll have my kids with me the whole week...
of = off
Maxim
2-Mar-2009
[678x6]
ok, so I have something to send to you... what I have is not really 
usefull to send to rebol.org without any kind of discussion, documentation. 
 I did something different than expected.  I just built a simple 
dataflow driven fsm engine which switches aspects on demand.  then 
I defined aspects which operated on a face, and made a very simple 
feel which sets the various states.
this is the whole feel:
	feel: make feel [
		engage: func [face action event][
			switch action [
				down [fsm/set-state 'pressed]
				up [fsm/clear-state 'pressed]
			]
		]
		
		over: func [ face action pos][
			either action [
				fsm/set-state 'over
			][
				fsm/clear-state 'over
			]
		]
	]
the dataflow takes care of calling any aspect which are built up 
from linked nodes.  basically, you build up a stylesheet by connecting 
nodes together and can branch off at any point, simply reusing the 
previous styles as a base... the cool thing is that the styles aren't 
absolute, you can define more than one style for a single state, 
so that a series of nodes can handle only the edge, others the color, 
yet you can include both in another style  (in my case, the base 
style has both)
I'll add a few more aspects to the system to show how this all scales, 
tomorrow and send you a copy.   :-)
next step will be to add some data to manipulate... I'll do a character 
attributes builder.  all 6 stats with a +/- counter besides each 
which you press and all the display magically adapts, even stopping 
the buttons when out of range, or no more points to attribute   :-)
all is built using direct faces... no VID no GLayout... just make 
face []   so you can understand exactly what happens, and realize 
how easy it is to replace VID, even in R2.
Josh
2-Mar-2009
[684x2]
So are you not using !plug for the examples?s
Or your just talking about the graphical portion?
Josh
5-Mar-2009
[686x2]
Any news?   I'm curious to see your examples...
Sometimes I wish there was a delete button for messages I type, got 
some dumb ones from time to time
Maxim
5-Mar-2009
[688x4]
hehe, while working on stuff, I suddently entered one of those rare 
brainstorming states... so I've basically been in my mind for the 
last 3 days... but I now have a nice roadmap for something that will 
help me to make clear examples or liquid.
or = of
plus, its spring break and I'm with my kids... so taking time with 
them.
ok, so I have a bit of spare time tonight and will build you a stand-alone 
example of a small RPG character editor.   Using !plug objects directly, 
so you can see the process of subclassing the core plug to have it 
do something usefull.
Josh
6-Mar-2009
[692]
Awesome!  I understand the busyness.  I am in the midst of my final 
semester of my master's program.   Enjoy your time with your kids!
Maxim
6-Mar-2009
[693x2]
did most of the work yesterday, and will revise it to use VID.  it 
just going to take a little less code.  I think.
yippe, I'm almost done  :-)
Josh
6-Mar-2009
[695]
Wonderful :)
Maxim
6-Mar-2009
[696x5]
its already working, but will add a few gizmos to give it more depth. 
  liquid makes more and more sense, as an application grows.


so adding a few features will show you how simple an application 
remains, even when many things interdepend.
right now I have str, dex, int fields, which cannot contain anything 
else than an integer value, and which are bounded in value...

the detail here is that the bounding is NOT done in the field, but 
at the value level itself.  nothing can cause the data to be invalid.
not even trying to set it with the wrong data type!
it will just fall back to values within bounds, or the the previous 
value otherwise.
and the field, thus gets refreshed since its piped to the value.
Josh
6-Mar-2009
[701]
That's neat!  I will try not to set them to non integers! ;-)   j/k 
   I'll have to see how it all works under the hood, once I get it
Maxim
6-Mar-2009
[702x2]
it will definitely be available tonight.  btw, I found and squashed 
a little but in liquid, so will also release a newer version on rebol.org 
when I release the example.
I am now in the process of adding a skill editor (note, not in any 
way a valid D&D chargen, just a simple example to understand by anyone).
Josh
6-Mar-2009
[704]
Congrats on the bug squashing.  Just save some work for me to do! 
:)
Maxim
6-Mar-2009
[705x2]
hehe it was really minor, but probably something that's caused me 
some headaches in the past.  wouldn't have been possible without 
slim's verbose printing management  :-)
(finding the bug, that is)
Maxim
7-Mar-2009
[707x2]
the example is DONE, it has MANY interconnected plugs which handle 
all maner of data integrity, button style effects, even disabling 
some buttons, when values get out of bounds!

built with VID, latest version of liquid.
currently working on updating the stuff to rebol.org.