AltME groups: search
Help · search scripts · search articles · search mailing listresults summary
world | hits |
r4wp | 5907 |
r3wp | 58701 |
total: | 64608 |
results window for this page: [start: 10701 end: 10800]
world-name: r3wp
Group: !Liquid ... any questions about liquid dataflow core. [web-public] | ||
Maxim: 22-May-2007 | Gabriele, liquid (dataflow) adds a level of stability to any project. the fact that its lazy pays off very well so far. | |
Maxim: 22-May-2007 | I have gone through 3 rewrites before hitting this sweetspot. other versions might have been simpler in a way, but left the system, non generic and unscalable in one of many different ways. | |
Maxim: 22-May-2007 | liquid's strength lies in the fact that it is generic. we all write dataflow within our applications, without realising it. but we then recode each little system in its own isolated architecture. this means we just loose a lot of time. | |
Maxim: 22-May-2007 | and in fact, if we do add a measure of reflexivity to VID, we will just be redoing most of liquid, or run in the same issues, I had in my other prototypes, which led to this design. ;-) but we will not gain the advantage of having generic dataflow! | |
Maxim: 22-May-2007 | the only difference is that some (switcheable in real time, even set to a function) which will always want to refresh, when they are aware of data changes. | |
Gabriele: 22-May-2007 | when you move a slider that is attached to something, is that something that has to pull? does it pull x times a second? | |
Maxim: 22-May-2007 | does it pull x times a second? that is up to you to decide, really. | |
Maxim: 22-May-2007 | at a high level yes. but in reality, no. if you have some gadgets or other parts of dependent systems which do not "need" the value, it might not cause any refresh. | |
Maxim: 22-May-2007 | but you are only seeing all of this as a VID thing. | |
Maxim: 22-May-2007 | especially since its such a small kernel ! (not the current implementation, which has a few prototypical stuff left) | |
Maxim: 22-May-2007 | you see, if we had a dataflow datatype, we would not even need to talk about "do we add this to VID" people could just set values to attributes which are DF based. | |
Maxim: 22-May-2007 | hum liquid is what 50 kb of 0% optimised code. DF its a data processing kernel, paradigm level feature.. quite different in scope. | |
Dockimbel: 24-May-2007 | Hi Max, reading the %liquid.r source code from rebol.org, I've found a typo at line 948 : count plug/subordnates object! (i missing in "subordnates"). | |
Maxim: 24-May-2007 | Hi doc, The version of liquid on line is not quite the latest (obviously)... but I'll check out your info... its possible that one was already fixed.... I fixed a few minor bugs since I last released. Mainly due to intense use within glob and elixir. | |
Maxim: 24-May-2007 | dideC: well, I'm am working towards that. I am keeping up the habit of working on one thing at a time and currently I'm hard at work on Revault. that being said... guess what are the first libs to be put online ;-) | |
Maxim: 24-May-2007 | elixir is a proof of concept generating application... I am still measuring how well the generalised use of Liquid in all aspects of an application equate to all of my claims, but so far, empiricaly... it seems to be keeping up the intended benefits. | |
Maxim: 24-May-2007 | unfortunately, demo apps are still not available. One person using liquid is making a for profit dentist EMR and scheduling app. there is elixir, and there was the original liquified draw dialect example I had released just before the new year. | |
Maxim: 24-May-2007 | I have a pretty nifty parse-rule generating application which uses liquidGL but its far to complex to be used for understanding of anything. | |
Maxim: 24-May-2007 | elixir already has that built-in to its values, so any gadget also inherit their "flawlessness" but its not something that jumps at you... its a subtle but oh so important detail. | |
Maxim: 24-May-2007 | so, my answer to DideC, I guess, is: Give me ideas on simple demo applications I can build ! And I'll consider which one I do first. :-) I need and want this info to make the whole package more appealing and comprehensible. The current uber simple Sum example, just gives a glimpse of the engine's capabilities, not of its application. | |
Maxim: 24-May-2007 | I'd need a bit more explanation of what you mean by that. | |
Maxim: 24-May-2007 | basically a connection based TCP i/o interface to any liquid network. you define the ports, the protocol (on either end) and can then interface your Dataflow across machines :-) it would allow distributed processing without any understanding of such concepts. | |
Maxim: 24-May-2007 | obviously, the standard issues of machine redundancy will arise, but that is a good exercise for the later revisions of the system. | |
Maxim: 24-May-2007 | so one (actually several) machines can be a controler and synchronise to others which can also locally change their states... and whatever they data can generate can be sent to any other machine, including the controlers... so you have ONE kernel to handle all aspects of your systems. and its dead easy... and would interface directly within any other liquified systems like liquid GL, elixir, globs, or eventually GLASS. | |
Maxim: 24-May-2007 | want text ports, just make a liquid which spues out text on the console... need that logged, just plug in another node which spues out stuff on disk as it comes in... but you don't even have to change anything in your systems... and can even easily connect your logger to other nodes, so you can track the flow of traffic, or the end effects some root events are having on the outputs of the system. sometimes its not obvious to see the real world relation of inputs and output... liquid allows you inspect all states at all points in time of you system's processing and compare it. | |
Jean-François: 24-May-2007 | Maxim, I don't know if this would be considered simpe, but here is a suggestion: http://www.bliner.com/projectmanagement.html | |
Robert: 25-May-2007 | Max, on of the best examples would be a Rebol based simple 20x20 Excel clone. Let people use Rebol code in the cells, and handle the reference handling via Liquid. It should be perfect DF applicable. | |
Maxim: 25-May-2007 | robert, If I start from scratch, it will be an n dimension spreadsheet with a scale of infinity in each of those dimensions (thus really limited by RAM, disk and REBOL types). why start it up with a limitiation which is actually very easy to design correctly for starters... especially with GLayout which would just adjust the views as they grow. | |
Maxim: 25-May-2007 | ok. can it be packaged as a library module ;-) I'd put it up on revault | |
Maxim: 5-Jun-2007 | (just started looking at nanosheets... must have a little fun) | |
Maxim: 5-Jun-2007 | hum... I'm thinking its going to be much easier to make a pico sheets ;-) | |
btiffin: 5-Jun-2007 | I'll pipe in...I've got a modified copy of nanosheets with scroll bars so it could support more cells for financials sheets for the Fire Deparment volunteers... | |
Maxim: 5-Jun-2007 | I've started a simple test... but will start over... the new version will handle as much cells as you have RAM :-) | |
Maxim: 5-Jun-2007 | basically going to use a HASH of liquid nodes (the nodes themselves being already connected) and just asking for cell values, based on what cells are visible within the scrollpane. | |
Josh: 17-Apr-2008 | although it looks like he hasn't been on for a while | |
Sunanda: 8-Jul-2008 | Max posted this to the mailing list about a month ago: http://www.rebol.org/cgi-bin/cgiwrap/rebol/ml-display-message.r?m=rmlFGXC | |
Graham: 8-Jul-2008 | Max lives in a world of his own ... and I don't know the address! | |
Maxim: 8-Dec-2008 | I've been using liquid in a variety of projects for the better part of 2 years now... its ubber stable, fast and quite scalable... in fact much better than I had anticipated, for such an un optimised piece of code. | |
Graham: 8-Dec-2008 | There were a number ... I can remind you if you like :) | |
Maxim: 8-Dec-2008 | elixir, for example, easily allocates 10 000 nodes, creates a several thousand line AGG script and actually manages to rebuild the whole AGG dialect block faster than view can redraw it. | |
Graham: 8-Dec-2008 | You should be a salesman | |
Maxim: 8-Dec-2008 | elixir builds a 100% native AGG GUI . EVERYTHING is built using liquid, event the field (control) properties and cursor management. | |
Maxim: 8-Dec-2008 | elixir is a next generation Operating system. | |
Maxim: 8-Dec-2008 | I havent done the OS level UI, just the work area system... but the OS level GUI is a piece of cake. basically, just an interactive browser of your data cloud, using the query language and user d specified tags and information classification. | |
Graham: 8-Dec-2008 | do a movie and let us see what you've got ... | |
Maxim: 8-Dec-2008 | hehe but it was bought up by a german company | |
Maxim: 8-Dec-2008 | the latest game graphics are simply amazing. I've seen a real time strategy game with hundreds of characters which have reflecting armor... I mean the armor is inter-reflecting amongst characters! this is starting to be pretty amazing. | |
Maxim: 8-Dec-2008 | could also be a damned VISTA issue. | |
Graham: 8-Dec-2008 | Just a ploy ... to make us upgrade our hardware | |
Maxim: 8-Dec-2008 | anyhow... during the holiday season, I will be putting A LOT of time on my coding... so maybe, I'll release some stuff. | |
Maxim: 5-Feb-2009 | working a lot on remark right now... | |
Maxim: 6-Feb-2009 | yess its already on rebol.org... its not a visually driven engine, though, if that's what you are looking for. | |
Maxim: 6-Feb-2009 | the visual node work engine is my other (large) project, called Elixir ... its a node-driven work environment. Elixir is not yet ready for public scrutiny as its just a few percent short of being usable. | |
Josh: 26-Feb-2009 | I finally started playing around with liquid.r Having a little trouble conceptually with converting code that contains objects into the data-flow model. For example, I was fiddling around with a D&D character generator. I have an ABILITY! object class that I'm trying to convert to the model now. SUM is just a function that adds up all the values in a block ability: [[1 -5] [2 -4] [3 -4] [4 -3] [5 -3] [6 -2] [7 -2] [8 -1] [9 -1] [10 0] [11 0] [12 1] [13 1] [14 2] [15 2] [16 3] [17 3] [18 4]] ability!: make object! [ base: 0 modifiers: [0 0] total: does [base + sum modifiers] ability-mod: does [ability/(total)/2] ] It may be a lot to ask, but would it be possible for someone to convert this to liquid, so I can actually see how one creates this kind of hierarchy in data flowprogramming. | |
Josh: 26-Feb-2009 | the !sum plug is a good example,but I get a little stuck beyond that. From my first impression of trying to do this, it seems like I'm going to have to define so many variables to make it too troublesome. But I'm sure that I'll have to learn how to think in the right way to avoid all that | |
Josh: 27-Feb-2009 | whoops, base needs to have a value above 0 in that example | |
Maxim: 27-Feb-2009 | well only to handle the edge of the graph, since the computer/OS isnt't running within a graph | |
Maxim: 27-Feb-2009 | I did a D&D character manipulation application once when prototyping liquid, so I understand exactly what you are trying to do :-) | |
Maxim: 27-Feb-2009 | josh, did you try out the tutorial? the example is a basic sum node. although its not exactly what you need for the above example, it should give you an idea of the lego-style building of a liquid network. | |
Robert: 27-Feb-2009 | Max, I still wait for a simple to follow example and some simple to follow docs. | |
Maxim: 27-Feb-2009 | Josh: for simple data compilation and changes (like a D&D character creation/evolution), I suggest writing an aspect-oriented type of node set for your application. | |
Maxim: 27-Feb-2009 | basically, how this works is, you have a generic object which you pass around from node to node. each node may add/display/change/remove one or all of the attributes in the objects. Just plug some aspect-managing node to your "current" node and that's it, over and over. Its as easy as calling a function on an object. the difference is that all states of your character are still available up till its creation. you can even branch off at any point and try out another combination with NO risk of corrupting your previous data. | |
Maxim: 27-Feb-2009 | the trick is to implement the "rules" within the aspects themselves. basically returning some kind of error (or warning) when some rule is broken within a node. (going above some limit, impossible selection based on race, etc) | |
Maxim: 27-Feb-2009 | hum I just did a bit of googling for it ... can't remember ... IIRC a few good references on wikipedia. | |
Josh: 27-Feb-2009 | But a more complex example would be very helpful, otherwise I'm dead in the tracks | |
Maxim: 27-Feb-2009 | but I have spent many hours using liquid, testing it prototyping it, and even building an OS Operating Environment with it...and I now know its a viable idea. | |
Maxim: 27-Feb-2009 | I'll build up a quick and dirty aspect-driven, character creation tool :-) | |
Maxim: 27-Feb-2009 | with a gui. | |
Maxim: 27-Feb-2009 | I also have a simple graphics package which uses AGG directly with liquid, so I'll use that to further show liquid ties in from end-to-end. | |
Josh: 27-Feb-2009 | 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 | what I'll do is post all of this on rebol.org, so the whole world gets a view of it :-) | |
Maxim: 1-Mar-2009 | I have a double set-back though... the old aspect code was for a previous version of liquid... | |
Josh: 1-Mar-2009 | 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 | |
Maxim: 1-Mar-2009 | 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? | |
Maxim: 1-Mar-2009 | 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... :-( | |
Maxim: 2-Mar-2009 | 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. | |
Maxim: 2-Mar-2009 | 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) | |
Maxim: 2-Mar-2009 | I'll add a few more aspects to the system to show how this all scales, tomorrow and send you a copy. :-) | |
Maxim: 2-Mar-2009 | 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 :-) | |
Josh: 5-Mar-2009 | Sometimes I wish there was a delete button for messages I type, got some dumb ones from time to time | |
Maxim: 5-Mar-2009 | 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. | |
Maxim: 5-Mar-2009 | 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. | |
Maxim: 6-Mar-2009 | did most of the work yesterday, and will revise it to use VID. it just going to take a little less code. I think. | |
Maxim: 6-Mar-2009 | 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. | |
Maxim: 6-Mar-2009 | 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. | |
Maxim: 6-Mar-2009 | 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). | |
Maxim: 7-Mar-2009 | will also add a little integrated lib downloader.... to make it extra easy to use. | |
Maxim: 7-Mar-2009 | the code isn't intended to be compact... the goal is to help people understand. I added a few comments which explain what/how/why some of the things. | |
Maxim: 7-Mar-2009 | I might also add a doc to explain some of the unobvious technical merits of the example. people can say: "All that code just for that?" if they don't understand what is going on. | |
Maxim: 7-Mar-2009 | liquid R3... it could go really well, as it could be a bitch... if one little detail in a function breaks up the integrity of the whole. | |
Ammon: 7-Mar-2009 | You have such a strange way of wording things some times. "broken code doesn't work, the side effect is that working code is unbreakable" I'm not really sure what that means... | |
Maxim: 7-Mar-2009 | hehehe... means a system doesn't work at all until it does... and from that point on... its almost impossible to mess up. | |
Maxim: 7-Mar-2009 | you just move on, and forget what has been done so far. adding stuff to a system, doesn't mean patching old code. it simply means tacking new systems to the old, and deciding how they relate. | |
Maxim: 7-Mar-2009 | the application will be there within the hour (need to build a friendly little rebol.org based slim lib D/L interface using VID) | |
Ammon: 7-Mar-2009 | Interesting... I'm a heavy prototyper. I need one statement that does something to start with and I often have to see each additional statement functional before I can move on to the next. If I spend enough time within a given environment I'll eventually be able to rebuild it from scratch but your code has always been deceptively simple so I often need an explanation of why you do what you do how you do it. | |
Maxim: 7-Mar-2009 | I added such comments throughout the code, it should be a pretty easy to grasp example, me thinks :-) | |
Maxim: 7-Mar-2009 | I'm REALLY happy to do it. its a great opportunity for me to actually get some limelight on liquid :-) | |
Maxim: 7-Mar-2009 | I'll build a second version which has a skill editor :-) | |
Maxim: 7-Mar-2009 | also note that liquid was NEVER optimised, so if you look at its code, you might find slow loops and such... I know! for me, having it work without bugs and making it easy to maintain, is more important than raw speed... in all apps I've done using it, a single View face refresh slowed down the application more than alll liquid nodes combined, so the integrated lazy computing does enough optimisation on its own to make raw optimisation less of an issue.... but when I decide to go v2, I will make a "fast" version of the tool for production purposes... indentical in features, but with debugging removed and some loops optimised for speed. | |
Maxim: 7-Mar-2009 | the shared class, already speeds up the memory handling of the GC by a factor of 20 or 100 based on the size of your application (exponentially faster, as the app grows) |
10701 / 64608 | 1 | 2 | 3 | 4 | 5 | ... | 106 | 107 | [108] | 109 | 110 | ... | 643 | 644 | 645 | 646 | 647 |