AltME groups: search
Help · search scripts · search articles · search mailing listresults summary
world | hits |
r4wp | 4382 |
r3wp | 44224 |
total: | 48606 |
results window for this page: [start: 8201 end: 8300]
world-name: r3wp
Group: Tech News ... Interesting technology [web-public] | ||
[unknown: 10]: 23-Feb-2006 | http://pages.google.comgoogle just launched a new beta... They are gooing and going faster faster... | |
Volker: 23-Feb-2006 | Maybe MS learned from Carl and now the beta is the more stable version? just thinking.. | |
Alan: 23-Feb-2006 | using 7 beta here also and seems ok but I still use Firefox for most of my surfing.IE 7 seems to have "borrowed" several ideas from Firefox but that's nothing new | |
Alan: 24-Feb-2006 | got a pc and want to run OSX on it ? try this then : http://maxxuss.konglish.org/ | |
[unknown: 10]: 24-Feb-2006 | http://www.ubrowser.com/and 3d browsing ;-) | |
Ashley: 28-Feb-2006 | Hope they can deliver on this: "Vista will include a built-in speech recognition engine, and new and improved speech synthesis. Assuming it works as well as it should, you'll be able to dictate emails or give voice commands for web navigations without buying additional speech recognition software." | |
Ashley: 1-Mar-2006 | Internet Explorer 7 under Windows Vista runs in a special super-low user access mode that gives the browser very little access to the underlying OS, and ActiveX security has been tightened up significantly as well, with most ActiveX controls off by default and set to opt-in rather than opt-out. Hopefully other browsers will follow suit and operate in this least-privileged mode, too. - Like IE is a model of good security practices!? | |
Gabriele: 1-Mar-2006 | Why Windows Vista Won't Suck - maybe because the author of the article has been paid by MS? ;) I'll believe this when I see it (but even in that case, MS is evil and must be fighted) | |
Terry: 1-Mar-2006 | Well lets see. according to yahoo, Microsoft has revenues of $41 billion, a 31% profit margin, total cash of $34 billion, a $15 billion operating cash flow, and a market cap of $277.66 Billion. Thats BILLION as in $1000 million. But hey, what do they know? | |
Gabriele: 1-Mar-2006 | i wonder if the fact that MS is that rich means that ms-dos doesn't suck either, and that windows 95 doesn't suck and so on. | |
Alan: 1-Mar-2006 | I will be going by Redwood Valley on Saturday and give Carl a "reboot" :) | |
Allen: 1-Mar-2006 | Terry, I think computing is mature enough to have machines for different purposes, games machines, media machines and work machines. Most households I know have a least two on that list so far and are heading for the 3rd. Currently the pendulum is swinging away from "one machine to rule them all". | |
Allen: 1-Mar-2006 | Economic tides may turn that back again, and cut the diversity again like it did in the late eighties / early nineties. But | |
Sunanda: 1-Mar-2006 | I've been telling people foy years to get a machine for work and a machine to trash for games etc. Because if they call me (as they often do) and say "I've broken my only computer by downloading a game and now I can't get it to work and I've got to do something important" they get zero sympathy and I'm pretty dis-inclined to lend a hand in fixing their crisis. | |
Sunanda: 1-Mar-2006 | Strange isn't it? Most people wouldn't dream of pimping their plumbing or their car.....They just know that those things need to work, and messing around with them will lead to breakages. But they'll mess with their only computer day and night. | |
Anton: 2-Mar-2006 | I'm guilty. But I think below a certain threshold, people tend to spend all their available money on the one computer, in order to make it as good as possible. That's my reasoning from years ago. These days, I feel quite different. I don't feel like playing games much anymore and I'm pretty careful installing new software. | |
Terry: 4-Mar-2006 | MySQL 5.0 Adds Features for Enterprise Developers and DBAs by Ken North Baseball legend Satchel Paige is famous for having said Don't look back, something might be gaining on you." Companies selling a commercial SQL database management system (DBMS) know its MySQL that's gaining on them. With an already large installed base, MySQL is set to attract new users because of the feature set of version 5.0. It includes capabilities for which developers have often turned to commercial SQL products. The purposes for which we use personal, mobile, workgroup, departmental, enterprise and web databases are diverse. Application requirements are a primary determinant of the capacity and features we need from an SQL DBMS. For example, a high-volume transaction processing web site places greater demands on a database than a contact list manager for laptops and small business servers. A Web Techniques magazine article, "Web Databases: Fun with Guests or Risky Business?" discussed features that characterize an industrial-grade SQL DBMS. It explained SQL security and mission-critical databases, defined as "A database is mission critical if its lack of data integrity has serious consequences, such as causing the loss of customers or even lives." Maintaining data integrity is implicit -- that's a prime directive for a DBMS. The article explained other features that enterprise developers look for in an SQL platform: ... mission-critical applications require features such as intrinsic security, transaction journaling, concurrency controls and the ability to enforce data integrity constraints. Without those features, you do not have secure, robust databases. Connecting a database to a Web server adds other requirements, such as a multithreaded architecture and the ability to do database backups without taking the server down. Freeware and PC DBMSs are suitable for certain classes of applications, but not for high-volume Web sites and mission-critical databases. In any case, don't bet your business, or lives, on such software unless you have the source code and the expertise to understand and repair it. Since that article appeared in print, improvements to MySQL have removed the "not ready for prime time" label. Features described in that article are now available to MySQL users: * transactions * concurrency control, locking, SQL standard isolation levels * intrinsic security * integrity constraints * thread-based memory allocation. TII Computer Deals at Dell Home Systems 180x150 MySQL uses separate threads to handle TCP/IP and named pipes connections, authentication, signaling, alarms and replication. The combination of threaded architecture and MySQL clustering provides powerful parallel processing capabilities. MySQL can process transactions in parallel with separate connections on separate processors using separate threads. MySQL Milestones A decade of development has moved MySQL out of the bare-bones DBMS category, enlarged its user base, and turned MySQL AB into a profitable company. One of the important milestones was integration of the InnoDB engine with MySQL 4.0. That upgrade gave MySQL multiple tablespaces, tables greater than 4GB and support for transaction processing. Other enhancements included OpenGIS spatial data types and hot backups. The latter enables a DBA to perform a backup without taking the DBMS offline. Hot backup software is available as a commercial add-on for databases using the InnoDB storage engine. MySQL 5.0, the newest version, is a major milestone. There have been enhancements to the tool sets, storage engines, types and metadata. MySQL 5.0 includes features enterprise developers have come to expect from commercial SQL products. * capacity for very large databases * stored procedures * triggers * named-updateable views * server-side cursors * type enhancements * standards-compliant metadata (INFORMATION_SCHEMA) * XA-style distributed transactions * hot backups. MySQL has a demonstrated capacity for managing very large databases. Mytrix, Inc. maintains an extensive collection of Internet statistics in a one terabyte (1 TB) data warehouse that contains 20 billion rows of data. Sabre Holdings runs the oldest and largest online travel reservation system. It replicates 10-60 gigabytes per day from its master database to a MySQL server farm. The MySQL databases are used to support a shopping application that can accommodate a million fare changes per day." | |
Graham: 4-Mar-2006 | Jim Starkey Sells Netfrastructure to MySQL AB and Moves On Today Jim Starkey, who led the original Vulcan fork of Firebird, announced that he has sold his Netfrastructure web software business to MySQL AB and will be taking up a full-time job as a developer for the MySQL company. Jim won't be a regular code contributor around Firebird any more, but he has promised he'll still be around to post the occasional "wolf-gram" in Firebird-Architect. We in the Firebird Project wish Jim all the best for what looks like an interesting turn in his career. | |
Terry: 4-Mar-2006 | Sorry about the size of that paste above,.. only mean to post the last paragraph, and then my connection went down right after.. | |
Geomol: 6-Mar-2006 | :-D That robotic mule is really funny! Amazing and interesting, what's possible these days. | |
Pekr: 6-Mar-2006 | Gaining root access to a Mac is 'easy pickings', according to an individual who won an OS X hacking challenge last month by gaining root control of a machine using an unpublished security vulnerability. On February 22, a Sweden-based Mac enthusiast set his Mac Mini as a server and invited hackers to break through the computer's security and gain root control, which would allow the attacker to take charge of the computer and delete files and folders or install applications. Within hours of going live, the 'rm-my-mac' competition was over. The challenger posted this message on his Web site: "This sucks. Six hours later this poor little Mac was owned and this page got defaced". | |
JaimeVargas: 6-Mar-2006 | Same competition was done for obsd and has not been claimed ever. | |
JaimeVargas: 6-Mar-2006 | The problem imho is not necesarily the OS but how all the apps and networking layer on the OS are configured. by default. OBSD is paranoic for this so very little is open or install, but as you install things like apache, you maybe opening holes for system exploits. | |
Pekr: 6-Mar-2006 | http://www.osnews.com/- go there - there is also discussion and the link to the original article ... | |
[unknown: 10]: 6-Mar-2006 | Yes Obsd has a very nice qualification scheme..and Im very happy with it ;-) | |
Ashley: 6-Mar-2006 | That Mac article (from MS-owned ZDnet) has been widely discredited. From a follow up article on OSnews: The ZDnet article, and almost all of the coverage of it, failed to mention a very critical point: anyone who wished it was given a local account on the machine (which could be accessed via ssh). Original ZDnet article: http://www.zdnet.com.au/news/security/soa/Mac_OS_X_hacked_in_less_than_30_minutes/0,2000061744,39241748,00.htm Follow up challenge: http://test.doit.wisc.edu/ | |
[unknown: 10]: 16-Mar-2006 | And another one hitting the race.. -> http://officelive.microsoft.com/ | |
[unknown: 10]: 17-Mar-2006 | and another goole release hits the road... http://base.google.com/ | |
[unknown: 10]: 22-Mar-2006 | and another google...http://finance.google.com/finance | |
Pekr: 22-Mar-2006 | that is strange - all mail is plain text and can be og GBs of size ..... | |
[unknown: 10]: 22-Mar-2006 | lets hope those browsers will do some good for the internet community.. For now they only go straight ahead wihout improving things..they just add gadgets and bells..oohh yes and yuo need at least 50 Meg of memory free to run those bulldozers.. ;-) | |
Pekr: 22-Mar-2006 | nah, Mozilla is the only browser, which does go like the buldozer, implementing new MLs .... and look at W3C, how many MLs we've got :-) Opera does nice job working on mobile devices, whereas MS tries to catch-up, but - imo they are more and more trying to make us dependant upon .NET ... | |
[unknown: 10]: 22-Mar-2006 | Do you know how much memory those Mobile devices use to run Java ;-) Its outrages actualy...but it works..oke..and indeed all the modules etc its handy.. BUT..its all XML or C++ or Java Or javascript not realy the nicest lagunages to work with especialy when they need an engine to run on thats bigger then my Linux kernel.... | |
[unknown: 10]: 22-Mar-2006 | About the Email.. I think they dont understand where email is going.. If they would have build an email client that would support encryption or packaging from text to grafics they would be on the route to the future.. For..re-inventing the wheel with lots of bells and advertising.. (yes im a little anti java and .net internet applications currently ;-) Ever stranger...NET is dead and also is Java..still many use it.. i dont get it.. | |
Pekr: 22-Mar-2006 | Java is not dead. It just moved to another segment - server apps. More and more systems are moving to Java .... and .NET, at least, is being regarded as second big contender. I don't understand why, but then our company was never dependant upon any MS development tools. We are IBM guys :-) | |
[unknown: 10]: 22-Mar-2006 | Isnt it more that the Java community is moving other ways because of the onsupport by SUN? And I have read from a .NET developer from Microsoft that the complete architecture of .NET was wrong wrong the start and that they where running into problems and because of that they wuold not survive time? | |
Pekr: 22-Mar-2006 | hmm, I talk with various companies reps, big ones, as SAP, IBM etc. consultants, and they mostly say there are three dev. containers - C++, Java, .Net .... | |
[unknown: 10]: 22-Mar-2006 | I think that those development statements from consulatns are more related to the concervitive idea behind programming, like stick what you know..that cost effective..(im not sure)..and also the unknown is hard to target in projects... (and now im back angain at the year 2000 and the rebol story...) Anyway.. as long as they stick with C++ .NET and Java.. the rest has probably an advantage.. | |
[unknown: 10]: 22-Mar-2006 | Oke SAP and Oracle is a different story... ;-) | |
[unknown: 10]: 22-Mar-2006 | I wished that java and .NET started like this -> What would we put inside a binary if we only would have 600 Kb to be filled.. | |
Pekr: 22-Mar-2006 | :-) they would put there credits and project specs comments, 600kb? noone thinks in that terms today :-) | |
[unknown: 10]: 22-Mar-2006 | I must say though.. Its the way you program Java.. The speed is not always the issue because i have seen java boots screens that did my ears wave.. ;-) But i dont understand the choise of java..The idea thats its multi-platform is long past..there are alternatives..(but those are unknown and scary :-) | |
Pekr: 22-Mar-2006 | java is open-source, cross-platform, and hence availalbe everywhere - rebol is not ... and untill it changes, ppl will feel unsafe .... | |
[unknown: 10]: 22-Mar-2006 | I agree..but its a contradiction ...the idea of company's floating on opensource and sell their applications for big money... that happens just too often...If you develop with opensource be that flexible and sell it for a low street price.. In this case SUN is taking the honour but not the money...pitty... | |
yeksoon: 22-Mar-2006 | Marketing talks... (I believe). I am not sure when MSIE 7 will be released...but I would think they time the release of FF2.0 to be around the same time or earlier...and do their marketing spills | |
Allen: 22-Mar-2006 | http://www.podiobooks.com/Serialised Audio Books. Interesting to see serialised form revisited, Much of Dickens and H.G Wells work was originally serialized in magazines & newspapers long before they became popular Novels. | |
Allen: 23-Mar-2006 | From Henrik's link above: What's the difference between OS X and Vista? Microsoft employees are excited about OS X... | |
yeksoon: 23-Mar-2006 | http://10000th.com/ a flash site to showcase Tag Heur. try out how you can flip the pages and even tear it out. | |
[unknown: 10]: 23-Mar-2006 | Evolution Robotics today announced a strategic alliance with WowWee Robotics(TM) to integrate Evolution's technologies for vision and navigation into the next generation of WowWee products. http://robotgossip.blogspot.com/2006/03/wowwee-partners-with-evolution.html | |
Terry: 24-Mar-2006 | IE 7 is one of the buggiest pieces of garbage I've ever come across.. here's one problem I had.. (a quoted solution.) This is just so Microsoft" it should almost be expected. I had recently installed IE7 in an unsupported way using the instructions found here. The nice thing about this, is that it lets you run IE7 side by side with IE6. As a developer, there's no way to just let IE7 install itself over IE6, so I thought this would be a good solution. Fired up IE7 for the first time and it took about 2 minutes for me to realize there is just no possible reason why anybody would find this useful at all. Not for end users... not for developers... it just doesn't work right. The new toolbars are not that special either, IMO. So, that was it. At least for Beta 2. Fast-forward one week and I'm doing some serious testing of one of my new apps. Of course, I'm testing on the fly in Firefox but testing in both browsers after finishing all pieces of major functionality. Enter my URL into IE, press enter... and bang... up comes Firefox with the page I loaded!?!?! Uh... what? Google to the rescue. A search for "IE Launches Firefox" returned only 2 results... but luckily, one of them had the solution. It seems that a registry key installed when IE7 is run causes this situation. Just brilliant. From the IE Blog... locate this registry key and remove it: HKEY_CLASSES_ROOT\CLSID\{c90250f3-4d7d-4991-9b69-a5c5bc1c2ae6} As stated... it fixed my problem. Thanks Microsoft... | |
DideC: 24-Mar-2006 | The windows registry is probably the most "crappy" (native english speaker, please replace this word by the word that is in my head and I can't find) invention of all the computer history. If you have a problem and it's not hardware, then it's 99% chance it's a registry problem. The 1% rest is for files and DLL problem. My boring all day experience. | |
Pekr: 30-Mar-2006 | hmm, hmm - http://www.eweek.com/article2/0,1895,1944044,00.asp - Ruby on rails takes on Java ... interesting how Carl is right - ppl don't buy technologies, they buy solutions ... and Rails is solution, which makes Ruby a king ... although it all is surrounded by nice hype ..... | |
yeksoon: 31-Mar-2006 | RoR like most other framework, sells the ease to get things done. What I think makes them standout, is the way they SHOW it. 1. Ruby itself is always a 'simpler' approach to Java. That is one EASE 2. They SHOW you on their webcast...and they said it themselves. 'SHOW, Don't Tell' http://rubyonrails.org/screencasts 3. And they also SHOW it by using tools other programmers use, eg TextMate, drawing a targetted group potential user. The success of RoR puts a lot of big companies to shame. (given the resources they have) | |
Terry: 31-Mar-2006 | I've toyed with RoR, and frankly, it doesn't impress. For one thing, the syntax is archaic... like this.. def self.up add_column "posts", "author_name", :string Post.find(:all).each {|posts|posts.update_attribute :author_name, "Anonymous"} end def self.down.... | |
Henrik: 5-Apr-2006 | http://www.apple.com/macosx/bootcamp/<--- Apple Boot Camp, lets you partition and dual-boot OSX and XP easily on Intel Macs | |
JaimeVargas: 11-Apr-2006 | Yes, and that he considers the Open Source movement the success story in biz, while the old model is dying the lawyers from the past are trying to derail it. | |
Group: !Liquid ... any questions about liquid dataflow core. [web-public] | ||
Maxim: 7-Mar-2009 | I have a newer version which has the "ability modifiers" added as extra labels to the right of the abilites... it took me 5 minutes to do, and it only needs one new simple !plug derivative: ;- !ability-mod !ability-mod: make !plug [ valve: make valve [ type: 'ability-mod ;----------------- ;- process() ;----------------- process: func [ plug data ][ vin [{!ability-mod/process()}] plug/liquid: 0 vprobe data if integer? data: pick data 1 [ plug/liquid: to-integer (data - 11 / 2) ] vout ] ] ] and necessary linkage within the !character setup, and appropriate faces in the window layout. | |
Maxim: 7-Mar-2009 | currently preparing 2 liquid modules for distribution on rebol.org : * LIQUID-VID : adding liquid functionality to ANY vid face * GLUE : a (hopefully growing) set of reusable core !plug classes (like !sum and !subtract, in blood example). | |
Ammon: 7-Mar-2009 | Well, I just got home from work. I'm cooking some dinner which I will eat while watching last night's episode of Battlestar Galactica and then I will download Blood and play with it a bit. | |
Maxim: 8-Mar-2009 | just thought I'd share this list I built while coaching someone in using liquid last night... SANITY PRESERVING KNOWLEDGE WHEN USING LIQUID: -------------------------------------------- #1: liquid isn't a bully - liquid shares its state, but asks for data (pulls, observes, etc) from its subordinates ("parents"), not the other way around (it doesn' push or force feed, like a highly inneficient signal messaging engine). #2: liquid is lazy by default - unless a plug or one of its observers ("children") is stainless, nothing will process automatically (thus, faces usually are set to stainless, so that they refresh automatically). #3: liquid has several computing modes in a single base class. * linking is for once sided dependencies * piping is for inter-dependencies or synchronisation * containment is for data storage * linked-containment is for processed data storage #4: liquid mutates - plugs automatically change computing modes when you call some methods like linking, piping and filling. depending on the order of these operations, a plug may "stick" to its previous computing mode. e.g. a piped node remains piped, even you attempt to link it to something. #5: liquid is alive - remember that as you are setting up a liquid network, your plugs will start receiving messages as you are building up the tree, meaning that the process() (and other) functions might be triggered before every expected connections are done. always verify the integrity of the data before starting the process. (i just got stumped by this one again, 5 minutes ago). #6: liquid is a collection of droplets - each plug should do one thing or manage one step of a process. the more you break up the network, the better you will be at making it stable, reusable, flexible, and fast. #7: liquid is highly memory efficient - !plug uses shared classes. so all the liquid operations are in a sub-object called a valve. Thus, when you call internal functions, remember they are within the valve, and you must supply the plug as its first argument. my-plug/valve/stats my-plug #8: liquid is volubile - its slim-based verbose & indented console printing engine (vprint) is YOUR BEST FRIEND. use it profusely, to understand the chain of events and what the hell is going on. | |
Maxim: 8-Mar-2009 | SANITY PRESERVING KNOWLEDGE WHEN USING LIQUID: -------------------------------------------- #1: liquid isn't a bully - liquid shares its state, but asks for data (pulls, observes, etc) from its subordinates ("parents"), not the other way around (it doesn' push or force feed, like a highly inneficient signal messaging engine). #2: liquid is lazy by default - unless a plug or one of its observers ("children") is stainless, nothing will process automatically (thus, faces usually are set to stainless, so that they refresh automatically). #3: liquid has several computing modes in a single base class. * linking is for once sided dependencies * piping is for inter-dependencies or synchronisation * containment is for data storage * linked-containment is for processed data storage #4: liquid mutates - plugs automatically change computing modes when you call some methods like linking, piping and filling. depending on the order of these operations, a plug may "stick" to its previous computing mode. e.g. a piped node remains piped, even you attempt to link it to something. #5: liquid is alive - remember that as you are setting up a liquid network, your plugs will start receiving messages as you are building up the tree, meaning that the process() (and other) functions might be triggered before every expected connections are done. always verify the integrity of the data before starting the process. (i just got stumped by this one again, 5 minutes ago). #6: liquid is a collection of droplets - each plug should do one thing or manage one step of a process. the more you break up the network, the better you will be at making it stable, reusable, flexible, and fast. #7: liquid is highly memory efficient - !plug uses shared classes. so all the liquid operations are in a sub-object called a valve. Thus, when you call internal functions, remember they are within the valve, and you must supply the plug as its first argument. my-plug/valve/stats my-plug #8: liquid is volubile - its slim-based verbose & indented console printing engine (vprint) is YOUR BEST FRIEND. use it profusely, to understand the chain of events and what the hell is going on. | |
Maxim: 8-Mar-2009 | this is embeded within the slim manager and is added to any slim library automatically | |
Maxim: 8-Mar-2009 | one note... you might want to wait for me to release liquid-vid and glue... they will both simplify coding of things a lot. and liquid-vid will even have a few dynamically adjusting faces like row and column. funny thing is that its taking me far less energy (and code) to implement more dynamic and smart faces than glayout so far. its also taking a lot less code to do a lot of the same things in glayout. | |
Maxim: 8-Mar-2009 | pipes and containers are like storage. their value is to be used as-is. if you wanted to clean ANOTHER plug to a color, your code is correct | |
Maxim: 8-Mar-2009 | btw, I am now building up a series of sample files for use as a tutorial as you guys ask questions and post examples. so from now on, most of the question will be compiled into a great collection, used for an eventual tutorial! so keep the questions comming. independent and explicit code examples like the above are excellent. | |
Maxim: 8-Mar-2009 | ammon in the above, the /piped is superfluous ( and in fact a waste, since the p plug only needs to contain data) | |
Maxim: 8-Mar-2009 | its fixed and I wonder when that bug got inserted in the first place. there is another tiny bug which I squashed, which was added with a brand-new (and not very teste) feature . | |
Maxim: 8-Mar-2009 | !color: make !plug [ valve: make valve [ type: 'color ;----------------- ;- process() ;----------------- purify: func [ plug ][ vin [{!color/purify()}] if integer? plug/liquid [ ; convert integer to b/w gradient plug/liquid: to-tuple head insert/dup copy [] plug/liquid 3 ] unless tuple? plug/liquid [ plug/liquid: 0.0.0 ] vout ; this is ESSENTIAL determines if plug is dirty or not... basically ; if you return false, the node stays dirty... and is re-evaluated everytime. ; if you forget to return a value, liquid causes an error. true ] ] ] print "----" c: liquify !color fill c 255.255.255 probe content c fill c none probe content c fill c 11 probe content c p: liquify !plug link/reset c p ; /reset is used to reset the state of the plug as ; virgin plug before linking. (all links removed, ; pipes and containers are forgotten/ignored) ; if /reset isn't used, the plug c WILL be linked ; but its links are ignored, since the plug is fill p 55 output: 255.255.255 0.0.0 11.11.11 55.55.55 | |
Ammon: 8-Mar-2009 | Yes, I understand it. I'll be modifying my code to use both process() and purify() as I'm currently capable of linking multiple plugs to !color to set r.g.b separately and I need process for that but purify to ensure I have a tuple. | |
Maxim: 8-Mar-2009 | btw adding node freezing, a very fundamental change to the engine, took a huge 4 lines and about 40 bytes to implement! | |
Maxim: 9-Mar-2009 | announcing stream ! I am in the midst of adding some more functionality to liquid which allows it to act as a signal processor (push method data-flow) the nice thing is that its incorporated in the same plug, again, and using message stream will retain 100% compatibility with all the current plug featureset. | |
Maxim: 9-Mar-2009 | this will allow us to use window events directly within a lazy computing environment, for example, or provide dependency notification of child to parent changes. this will allows a node to send a manual signal "downstream" and possibly take processing/setup decisions based on those messages. downstream nodes should be able to return data in order to feedback the effects of the signal to its author, which might then, also activate some code. | |
Maxim: 10-Mar-2009 | And I'm building up a lot of code and information for creating tutorials :-) | |
Ammon: 13-Mar-2009 | I'm finding myself writing standard test code for each plug type as I go along and I was just thinking it would be nice if I could add the code as a block on the plug such that I could test any plug type by calling liquify/test !plug Or something like that... Could be a nice documentation/usage example feature. | |
Maxim: 13-Mar-2009 | As you know, I just totaly reviewed how liquid-vid will handle its layout (now a live prodecural network in its own), so I am hard at work building that, but I will definitely put some time on integrated unit testing, when I rebuild the visual graph editor. its such a great idea, as we have discussed, the I/O aspect of plugs cannot be ignored in dataflow, so this would be a great way to profile, document and verify expected node behaviour. | |
Ammon: 13-Mar-2009 | BTW... I seem to be seeing a node processing it's liquid when it shouldn't be. Once a node is liquified, filled and purified it shouldn't call process() or purify() again until it is filled again, should it? | |
Maxim: 13-Mar-2009 | this and the !plug/document. | |
Maxim: 13-Mar-2009 | btw there is already a plug/valve/stats feature embedded within, which gives you the node's current state and setup. | |
Maxim: 13-Mar-2009 | so after 15 years of analysis, design and countless prototypes of all shapes and sizes , I am now finally working on the first true code that will find itself into some layer of the GLASS engine. =oD | |
Ammon: 13-Mar-2009 | LOL, fix blood.r then, please! ; this is ESSENTIAL determines if plug is dirty or not... basically ; if you return false, the node stays dirty... and is re-evaluated everytime. ; if you forget to return a value, liquid causes an error. true | |
Maxim: 13-Mar-2009 | you guys can't imagine how nice it feels to be discussing and teaching about how to use liquid.... I've now got three pupils... in one week... that's so cool... | |
Maxim: 13-Mar-2009 | anyone who wants to get to use liquid, don't hesitate to try and ask stupid questions. They are hard to answer, and its giving me a chance to get a general feeling of what needs more attention in the forthcomming revision to the whole liquid documentation. | |
Maxim: 13-Mar-2009 | for the layout algorythm, I actualy did a complete flow analysis of a row/column resizing liquid graph. its actually rather simple, when you force yourself to follow what data goes where. note that I was able to build this without creating a processing cycle... which is neat, since some values are going to the parent face and coming back to its pane elements. | |
Ammon: 13-Mar-2009 | Ok... So, what's the difference between a pipe and a link? >;) | |
Maxim: 13-Mar-2009 | plugs may be filled with data directly. when you do this the node becomes a container, and this effectively turns off all of the linking management.. | |
Maxim: 13-Mar-2009 | your plug simply stores a value and returns it (but purify IS still called on it) | |
Maxim: 13-Mar-2009 | note that you can LINK the pipe server and set it to a linked-container? too! but that is advanced usage. | |
Maxim: 13-Mar-2009 | linked-containers, accumulate their subordinate data AND add the value you filled , as if it where an extra link... which then goes through the normal process mechanism. | |
Maxim: 13-Mar-2009 | the pipe server can be used to normalise the data into its purest form, and allows many things in your application to interact with it as peers. one can be a string another an int. but for each pipe client, they could care less about who and what the others are. they just need to know that, in this case, they are always receiving an int, and can convert it back to the format they need. | |
Maxim: 13-Mar-2009 | The computing methods mutation is one of the most powerfull and unique aspects of liquid. the same plug can be used for many different purposes, and it can go to-from any method to another. | |
Maxim: 13-Mar-2009 | one important note, is that switching computation modes, NEVER unlinks previous subordinates... it will only ignore them. only the pipe aspect is dynamic and can be unlinked automatically by the internal plug managers... | |
Maxim: 13-Mar-2009 | btw, when we are working with pipes, we use the attach and detach functions instead of link/unlink. | |
Maxim: 13-Mar-2009 | and strangely, you guys are all pretty much evolving and learning in about the same pattern... so I have some clues into how to order the tutorials. :-) | |
Maxim: 13-Mar-2009 | a subtle but extremely powerfull and explicit demonstration of dataflow robustness. | |
Maxim: 13-Mar-2009 | glue now has a plug that returns gfx text size given any value and a font :-) | |
Maxim: 13-Mar-2009 | ------------------------------------------------- NOTE: FROM NOW ON, every usable !plug definition that I post will be in black, to make it easy to differentiate from test code, and copy in your own libs. ------------------------------------------------- ;- glue-proc-face: glue-proc-face: make face [size: 100x100] ;----------------- ;- !gfx-text-area ;----------------- ; this class returns the area which a value, when represented as a string, occupies. ; ; returns: a pair representing width and height ; ; usage: ; linked only, unlabeled. (filling this node will permanently freeze it) ; ; inputs: ; (1) [any!] value ; the first input is formed to a string, or set to "" ; ; (2) [object!:font] font to use ; the test will be run with this font, irrelevant of what font is currently set in the face. ; ; <TO DO>: add explicit support for /para facet ;----------------- !gfx-text-area: make !plug [ liquid: 0x0 ;----------------- ;- frozen?() ;----------------- ; plug won't do anything until you have proper linkage done. ;----------------- frozen?: func [ ][ vin ["" self/valve/type {/frozen?()}] vout (2 <> length? subordinates) ] valve: make valve [ ;----------------- ;- process() ;----------------- process: func [ plug data ][ vin ["" self/valve/type {/process()}] plug/liquid: 0x0 glue-proc-face/font: data/2 glue-proc-face/size: 1000x1000 glue-proc-face/text: any [ attempt [to-string data/1] "" ] plug/liquid: size-text glue-proc-face vout ] ] ] | |
Maxim: 13-Mar-2009 | yep, black text is tested and functional... note the explicit comment header | |
Pekr: 13-Mar-2009 | I think I still don't understand what in particular Liquid is, but would it be e.g. good system to do some animation system in? I mean - something like Scala. You have some objects, wipes, effects, happening at various times, and the might be cross dependant, etc., so that when something happens here, something else happens there :-) | |
Ammon: 13-Mar-2009 | Is there a way to hook into the attach function? I want to build a pipe-server that handles multiple values but I want to be able to hook up the input plugs in any order and in some cases not have a plug for any given value. To accomplish this I want to create a block that tells me which order the plugs are connected in so that I can use the index to select the correct plug from the server's liquid. | |
Josh: 14-Mar-2009 | this may be a wild guess, but doesn't the !plug/subordinates do that? I haven't been using pipes so much as links, but I would guess you would look at that, and I'd assume the plugs are in the order that they have been attached. Maxim of course will correct me if I'm wrong. |
8201 / 48606 | 1 | 2 | 3 | 4 | 5 | ... | 81 | 82 | [83] | 84 | 85 | ... | 483 | 484 | 485 | 486 | 487 |