IRC log started Fri Apr 14 00:00:01 2000 [msg(TUNES)] permlog 2000.0414 -:- SignOff veblen_: #TUNES (nap olympics!) -:- SignOff washort: #TUNES (Ping timeout for washort[d128.narrowgate.net]) -:- water [water@tnt-9-41.tscnet.net] has joined #tunes hey corey, hcf 12:50am -:- HenZo [henzo@bespin.dhs.org] has joined #tunes hi henzo hey are you a bespin admin or a tunes member? Both real name? ah n/m Hey hcf, can you help me out? I need a Scheme to C compiler. anything you want to talk about? 01:00am -:- SignOff hcf: #TUNES (Leaving) -:- hcf [nef@me-portland-us804.javanet.com] has joined #tunes Hm Guess not. Oh you're back. how's tril, henzo? He's fine It's my fault he hasn't been around lately. he seems busy oh so i can blame You :) I got him hooked on a game called Counter-Strike :) sorry But we've been programming too Unfortunately, not much on tunes * water/#tunes casts a cybernetic curse upon HenZo :( I keep bugging him about tunes, but he actually IS really busy.. bring back Tril and i shall release you from the abominable curse He's got a lot of stuff to do... :( I've been mass busy lately too, so I haven't had a chance to get into anything major. -:- smoke [smoke@15dyn124.delft.casema.net] has joined #tunes there's this DB he keeps promising to have set up Anyway, do you know anything about Scheme->C? i bet i can find one that'd be helpful why do you need one? Tril has like 1/4 done on the DB...hard part is done, he just needs time to work on the rest of it. I need to give someone something I wrote in scheme, but they don't have a scheme interpreter, and they're not even very computer literate. HenZo: http://gatekeeper.dec.com:/pub/DEC/Scheme-to-C/ what about http://www-rn.informatik.uni-bremen.de/software/elk/ ? hcf: I happen to be on that exact link right now. But what do I get out of there? the latest tarball, i'm guessing along with appropriate patches hmm my best guess is that everything there is out-of-date Yeah that's what I assumed. * water/#tunes has spent part of tonight working on pros/cons of slate and scheme as tunes hll (no pun intended) 01:10am HenZo: try stalin * HenZo/#tunes is installing elk on Bespin stalin, huh abi stalin i heard stalin was a _very aggressive_ optimizing scheme compiler at http://www.neci.nj.nec.com/homepages/qobi/software.html yeah.. it's really uptight * HenZo/#tunes abi stalin stalin is a _very aggressive_ optimizing scheme compiler at http://www.neci.nj.nec.com/homepages/qobi/software.html alright. screw this for now. i'm going to bed. bring back tril later guys, thanks for the tips -:- SignOff HenZo: #TUNES (Looking for Tril...) * water/#tunes has a look-see at abigail hm forget that 01:20am -:- SignOff smoke: #TUNES (Ping timeout for smoke[15dyn124.delft.casema.net]) -:- SignOff hcf: #TUNES (Leaving) -:- smoke [smoke@16dyn233.delft.casema.net] has joined #tunes -:- Closing Link: TUNES[206.63.100.13] by turtledove.openprojects.net (Ping timeout for TUNES[206.63.100.13]) -:- Connection closed from irc.us.openprojects.net: Success -:- Use /Server to connect to a server -:- Connecting to port 6667 of server irc.us.openprojects.net [refnum 0] -:- BitchX+Deb1an: For more information about BitchX type /about -:- Welcome to the Internet Relay Network TUNES (from varley.openprojects.net) -:- Your host is varley.openprojects.net, running version u2.10.05.18.(ipcheck4-5) (from varley.openprojects.net) -:- This server was cobbled together Wed Apr 28 1999 at 12 02:19 EDT(from varley.openprojects.net) -:- varley.openprojects.net u2.10.05.18.(ipcheck4-5) dioswkfcg biklmnopstv -:- [local users on irc(26)] 3% -:- [global users on irc(413)] 45% -:- [invisible users on irc(507)] 55% -:- [ircops on irc(20)] 2% -:- [total users on irc(920)] -:- [unknown connections(0)] -:- [total servers on irc(34)] (avg. 27 users per server) -:- [total channels created(356)] (avg. 2 users per channel) !varley.openprojects.net Highest connection count: 58 (53 clients) !varley.openprojects.net Welcome to Open Projects! You are on 4 ca 1(2) ft 14(14) tr. -:- Mode change [+f] for user TUNES -:- Mode change [+iws] for user TUNES -:- JOIN activated by "TUNES #tunes tunes@bespin.dhs.org " -:- TUNES [tunes@bespin.dhs.org] has joined #tunes -:- [Users(#tunes:6)] [ TUNES ] [ smoke ] [ water ] [ coreyr ] [ abi ] [ smkl ] -:- Channel #tunes was created at Sun Feb 28 08:48:06 1999 -:- BitchX+Deb1an: Join to #tunes was synced in 6.464 secs!! -:- Mode change [-ws] for user TUNES -:- eihrul [lee@usr5-ppp205.lvdi.net] has joined #tunes -:- nate37 [nate@ppp-206-117-3-119.dialup.pcmagic.net] has joined #tunes -:- SignOff water: #TUNES (Read error to water[tnt-9-41.tscnet.net]: Connection reset by peer) -:- XeF4 [xef4@194.255.106.103] has joined #tunes -:- SignOff nate37: #TUNES (nate37 has no reason) -:- SignOff XeF4: #TUNES (BitchX-1.0c16 -- just do it.) -:- SignOff eihrul: #TUNES (Ping timeout for eihrul[usr5-ppp205.lvdi.net]) re 06:10am -:- Closing Link: TUNES[bespin.dhs.org] by varley.openprojects.net (Ping timeout for TUNES[bespin.dhs.org]) -:- Connection closed from irc.us.openprojects.net: Success -:- Connecting to port 6667 of server irc.us.openprojects.net [refnum 0] -:- BitchX+Deb1an: For more information about BitchX type /about -:- Welcome to the Internet Relay Network TUNES (from devlin.openprojects.net) -:- Your host is devlin.openprojects.net, running version u2.10.05.18.(ipcheck4-5) (from devlin.openprojects.net) -:- This server was cobbled together Wed Apr 28 1999 at 12 02:19 EDT(from devlin.openprojects.net) -:- devlin.openprojects.net u2.10.05.18.(ipcheck4-5) dioswkfcg biklmnopstv -:- [local users on irc(97)] 10% -:- [global users on irc(441)] 45% -:- [invisible users on irc(537)] 55% -:- [ircops on irc(19)] 2% -:- [total users on irc(978)] -:- [unknown connections(0)] -:- [total servers on irc(34)] (avg. 28 users per server) -:- [total channels created(360)] (avg. 2 users per channel) !devlin.openprojects.net Highest connection count: 146 (142 clients) !devlin.openprojects.net Welcome to Open Projects! You are on 4 ca 1(2) ft 14(14) tr. -:- Mode change [+f] for user TUNES -:- Mode change [+iws] for user TUNES -:- JOIN activated by "TUNES #tunes tunes@bespin.dhs.org " -:- TUNES [tunes@bespin.dhs.org] has joined #tunes -:- Topic for #TUNES: TUNES, Free Reflective Computing System: http://www.tunes.org/ || Slate Language: http://www.tunes.org/~water/slate-home.html -:- topic set by water [Tue Apr 11 20:53:53 2000] -:- [Users(#tunes:5)] [ TUNES ] [ smoke ] [ coreyr ] [ abi ] [ smkl ] -:- Channel #tunes was created at Sun Feb 28 08:48:06 1999 -:- BitchX+Deb1an: Join to #tunes was synced in 7.083 secs!! -:- Mode change [-ws] for user TUNES -:- Closing Link: TUNES[bespin.dhs.org] by devlin.openprojects.net (Ping timeout for TUNES[bespin.dhs.org]) -:- Connection closed from irc.us.openprojects.net: Success -:- Use /Server to connect to a server -:- Connecting to port 6667 of server irc.us.openprojects.net [refnum 0] -:- BitchX+Deb1an: For more information about BitchX type /about -:- Welcome to the Internet Relay Network TUNES (from sterling.openprojects.net) -:- Your host is sterling.openprojects.net, running version u2.10.05.18.(ipcheck4-5) (from sterling.openprojects.net) -:- This server was cobbled together Wed Apr 28 1999 at 15 12:37 EDT(from sterling.openprojects.net) -:- sterling.openprojects.net u2.10.05.18.(ipcheck4-5) dioswkfcg biklmnopstv -:- [local users on irc(82)] 8% -:- [global users on irc(442)] 45% -:- [invisible users on irc(534)] 55% -:- [ircops on irc(19)] 2% -:- [total users on irc(976)] -:- [unknown connections(1)] -:- [total servers on irc(34)] (avg. 28 users per server) -:- [total channels created(360)] (avg. 2 users per channel) !sterling.openprojects.net Highest connection count: 106 (99 clients) !sterling.openprojects.net Welcome to Open Projects! You are on 3 ca 1(2) ft 14(14) tr. -:- Mode change [+f] for user TUNES -:- Mode change [+iws] for user TUNES -:- JOIN activated by "TUNES #tunes tunes@bespin.dhs.org " -:- TUNES [tunes@bespin.dhs.org] has joined #tunes -:- Topic for #TUNES: TUNES, Free Reflective Computing System: http://www.tunes.org/ || Slate Language: http://www.tunes.org/~water/slate-home.html -:- topic set by water [Tue Apr 11 20:53:54 2000] -:- [Users(#tunes:4)] [ TUNES ] [ smoke ] [ coreyr ] [ smkl ] -:- Channel #tunes was created at Sun Feb 28 08:48:06 1999 -:- BitchX+Deb1an: Join to #tunes was synced in 6.277 secs!! -:- Mode change [-ws] for user TUNES -:- abi [nef@bespin.dhs.org] has joined #tunes -:- smoke_ [smoke@16dyn233.delft.casema.net] has joined #tunes /scan 07:50am -:- water [water@tnt-9-41.tscnet.net] has joined #tunes -:- thomas [thomas@193.217.63.152] has joined #tunes hi tom hi what's new? I was just about to ask that same question does anyone here know if it's possible to compile a defclass and defmethod in one file in one pass in common lisp? well, eihrul's working on a new (complete) slate implementation heh i get the impression that i have to load the defclass first before being able to compile the defmethod, which is inconvenient that's nice, water water: in what language? sm: in cl at first water: aha I've been looking at an interesting lisplike syntax/semantics, where identifiers can be objects as well as the object their refering to. 08:30am hm is this your own idea? specifically, a object named for example '( do a b )' would correspond to a method with two parameters. well what if you want to partially-evaluate a method? the idea occured in a work-project a work-project on what? well, for example, if I write '( do c d )' it would be translated into the effect of the method, where a and b are substituted with c and d. ( don't know how that could answere it, really :) oic the first example was a declaration it was just the name of the method. well suppose i had (do a b c) and i wanted to specialize it on a and c only? in it's definition, it would refer to a and b - and those references are the once that are substituted. you would , for examle define '( do a b )' as '( do a b c )' huh? i said a and c ok! to make a new method that only has b as its parameter define '( do a c )' in stead. ok, then ( do b) is defined as ( do a b c ) that wouldn't work it seems in the declaration, the symbols are the names of the parameters, But... in order to specialize the declaration, you have to bind some of the parameters with values but not all of them I know, this part is not finnished yet. the semantics are not complete. -:- vvater [water@tnt-10-42.tscnet.net] has joined #tunes 08:40am i don't see how you can do that with the system you mention (without totally re-writing the method) (i got cut off for a minute) I'm not trying to create this specific language, just want to observe some effects and problems related to it. well, i'm just trying to point out the limitations ;) I know, the whole matching of identifiers and doing the correct substitution is a problem - but an interesting one .) how do you make symbols into objects? is this like my slate objects' slots being objects as well as parameters? -:- SignOff water: #TUNES (Ping timeout for water[tnt-9-41.tscnet.net]) -:- vvater is now known as water yes, you could say that. In TOOL, parameters are slots/attributes. And that design decision is probably final well you know i set parameters by passing messages, right? yes, I suppose you suppose? I'm haven't looked to closely at slate 08:50am i can give you an overview if you'd like sure i'll try to keep up ok. are you familiar with objects in self? alittle, prototyped using "slots" right well a slate object is a set of slots that refer to other objects that act as methods even state in slate is just a method that returns a value ok well, objects are also namespaces that you can navigate like directories in a file system you can clone objects in order to pass values around so, objects are immutable yes but slate also has meta-objects that define how each object's behavior gets invoked how do they fit in? or even whether it gets invoked (maybe depending on the senders identity) well each object has a 'parent', enclosing namespace '..', and 'meta' slot the meta-object actually implements the message-handling via a lookup and apply set of phases and each object's mo can be customized for its own use, even for special situations does this make sense? so the meta slot is like the invisible, implisit method that says 'invoke' / evaluate or send right yes, that make very sence! of course you can switch mo's or meta-behaviors dynamically 09:00am btw this mo idea came from moostrap originally yes, because you've given them a name so they can be refered to yep it's actually very much like TOOL. one thing that makes meta-behavior powerful is the ability to specify the meta-behavior of a slot's result so if you clone an object, you can make it into a dumb reference or another identical independent object, or something in between (clone is another slot) the difference may only be, that in TOOL I emphasize the use of first order objects. huh? how does slate not do this? sending first order objects is a subsitute for sending pointers. um slate does this I don't know if it doesn't, just that I think it is important cool as i said above, when you clone, meta-behavior customization can turn the clone into a dumb reference there's also another small aspect to slate so I can make for example a reference to a first order object - that is, put a first order object into a reference every object acts like a function, in that all objects have a result slot that can get invoked implicitly sort of in slate, you clone to get a reference yes, meaning you clone the whole representation of the object but in order to preserve the original object's identity, you have to force the reference to never modify itself (unless you re-target the reference i suppose) actually, not quite if i cloned the whole object explicitly, then it would have seperate state instead my references are more like objects with only 'parent' set to the refferred object and 'meta' set to the reference-like behavior but if they have the same state _and_ are immutable, then they must be read only one moment! the state stays in the original object, although the environment might implicitly hold state at the reference in order to cache values (say on a distributed system) no, in slate you get more options for immutability than just "read only" immutability in slate is just a result of meta-behavior * water/#tunes waits for thomas 09:10am -:- hcf [nef@me-portland-us729.javanet.com] has joined #tunes re i think i have this tutorial outline figured out water: tutorial? yeah a slate tutorial cool water: i dont fully understand the above conversation but it sounds nice. :) hm then maybe i should make two versions one for people who grok lisp and/or self already 09:20am i'm back and another for your run-of-the-mill procedural coders water: :P tom: check my comments above * thomas/#tunes reads corey: anyone interested in tunes should check out those languages yes, sure, you can always define different message passing schemes and policies meta-behaviors do you consider meat behaviour the way and object interprets/recieves a message, or the way it sends a message? water: 2 tuts sounds good receives, although sends can be intercepted if you use a little trick i learned how? if you make a clone into a proxy-like object in the namespace local to the sender, you can intercept sends a wrapper yeah except proxies can wrap from various directions of course hm that covers most of the concepts just notice that slate slots using meta-behavior of the slots themselves can be made into all the types of variables or constants you need despite prior discussions we may have stuff in common :) oh wait, i forgot the literal systems do you have a slate syntax? well right now its SEXP-based (object message) with everything reducing to messages at the moment (woo hoo!) I think thats' the way to go yeah well it's not easy 09:30am some things took a while to reduce to message-passing and i'm even looking right now at reducing ( and ) to messages >:) ok maybe that's going overboard, but it's still an interesting prospect brb k water: how well would a system like this perform? well it simply *needs* dynamic compilation to work properly i.e. static compilation will not be a simple option but if eihrul works it out right, he'll use run-time type feedback to improve on the self figures (which are 50%speed of compiled and optimized c) without a static compile 09:40am hm it seems like its only a matter of time now before slate is an actual tunes hll candidate 09:50am water: where do you think your philosophy differs from where you think tunes is going? tunes is programmer-centric they don't generalize the quotienting requirement of Tunes HLL to ontological relativism they also have no idea what substructural thinking is about and they also don't generalize tunes beyond computing qed 10:10am * water/#tunes adds a section to the tutorial addressing Lisp fanatics -:- beholder [beholder@dialin-187-67.sudbury.primus.ca] has joined #tunes hey! water: Hey what's news? (i'm trying to round up tunes people, btw) wow, there isn't usually ppl here during the day :) well this is my weekend water: Good, to discuss your new implementation ideas? yes, among other things water: Well, it's nice to see you here again :) so how available are you lately for tunes? beh: i'm here most every day water: Truthfully, not very. I start a new job on Monday which will eat away my 9-5, and after that I have a group of people I teach unix stuff to every night (they just kinda followed me home one day ;) :/ 10:30am ditch 'em! :) Ok, for you I'll ditch them a few nights a week :) well you could help Tril with the tunes web DB Is that project still going? apparently he has the hard work done but there's still some stuff left to take care of, probably mostly simple things if you would contact him about it, i'd appreciate it Well, I'll get the details from him, but in my current state I can't make any real promises. But I'll do my best :) as for Tunes itself, bill tanksley's getting into Joy as a LLL and i've got the Slate spec nearly ready Do the two relate? and eihrul's working on slate implementations hm well joy is like forth except its mathematically formalizable (combinators) so it's definitely a LLL, not something you can program with as an end-user and slate is turning out to be quite a multi-paradigm kind of language Do you believe slate is one step closer to a working arrows system? yes for reasons i haven't explicitly stated Yes, I noticed that, can you state them now? well how much do you grok slate? (btw i'm writing up a slate tutorial as we speak) Well, not very well :) I haven't seen the site sice the initial post, which was only a vague description alright well i made up a little explanation just a little earlier today, check the logs water: I'm on the site at the moment, would that be better to explain? also i explained it late yesterday in a slightly different way hm most likely not the site needs an overhaul lately, since it grew ad hoc (which was the best i could do at the time) but reading the site after the explanation in the logs might be beneficial Ok, what's the log URL again? abi logs logs are #tunes logs at http://www.tunes.org/files/irc Thanks, checking it out Woah, someone is gonna have to form a directory structure outta thoese log files, that's a huge listing :) 10:40am talk to tril about that beholder: u want http://www.tunes.org/files/irc/2000.0414 hcf: Got it and perhaps 0413 water: Where you're talking to thomas? yes both beh: yep -:- coreyr is now known as corey Damn phone keeps ringing... grr.. Hmm, object namespace hierarchies? yeah like a file-system That's contrary to arrows :) the hierarchy is illusory, though 10:50am Of course So this language could be easily implemented? Sorry, I mean more easily implemented than arrows? i think so, yes oh yeah, definitely easier than just going straight for arrows How far are you along, anything I can try? hm our current lisp evaluator is way out of date eihrul's cooking up a new one but the old code is still on line Hmm, if it helps any binENG is making a Forth interpreter using lisp for a school project. I'm not sure if it has any relevence to you project though. yeah i heard forth interpreters are quite simple in lisp Yeah, I told him to do a C compiler... but for some reason he balked at the idea ;) heh I mean if you want a challenge... hehe have you gotten to the web docs now? Still reading conversations, quite a few interruptions here... too much life k What is a slot? uh well objects have methods and vairables in ordinary oo, right? yeah in slate, variables are methods, and i call both slots 11:00am call 'em sub-objects if you want to Oh... hmm, I'm reading through thinking it's something more complicated that I'm having trouble comprehending... hehe ;) Language has so many problems... yeah the ideas are pretty simple (i came up with the slate idea in '95, btw) Not slate, the English Language, or any other human language for that matter just after i started reading the tunes language hm would you be interested in <>? :) Nahh, I'm more into (^) than anything at the moment ;) *? Hehe, sorry stupid joke ;) oh abi <> <> is Modality or a diamond symbol or your Arrow-like human language idea or additional blurb at http://www.tunes.org/~water/ abi: (^) is beholder's own knock-off language that advertises itself as being just as good as <>, but in reality it's made by Canadian immigrants in slave labour camps heh So how's the tutorial going? The spec sounds interesting. hm not bad. it's mostly built around the recent conversations as well as stuff i've told to newbies to explain the basics of tunes programming ideas Oh, I guess I missed it before.. it IS a meta-language ;) 11:10am * water/#tunes decides to hyperlink to tutorials of other languages, and quote them as well yeah in multiple ways, actually Yeah, not just syntatically (sp?) syntactically right -:- NetSplit: fontana.openprojects.net split from tolkien.openprojects.net [11:12am] -:- BitchX+Deb1an: Press Ctrl-F to see who left Ctrl-E to change to [fontana.openprojects.net] So it is still "code" based... unlike arrows. People will still have to resort to typing code even in abstract domains right? yeah but the code is just a sequence of symbols What? -:- Netjoined: fontana.openprojects.net tolkien.openprojects.net -:- smoke [smoke@16dyn233.delft.casema.net] has joined #tunes -:- smoke_ [smoke@16dyn233.delft.casema.net] has joined #tunes it doesn't depend on text each identifier is just a tag for accessing an object which i intend on abstracting from english textual basis And each identifier COULD be a string of characters comprising a human word then. Ok, understood actually the sequence part is illusory as well so in the futurist scene, one could picture a person manipulating arrow objects with their hands in a vr environment and be modifying code? How so? but you get the ides (object message) syntax is just a link between values you can connect such things together into the whole system as a kind of graph corey: Not modifying code, modifiying where the arrow points, it might not have to be code I imagine. yeah which is why people will receive a Slate Object :) corey: Arrows is a unified system where everything is data and everything can point to everything else it's also a way of thinking corey: In a meaningfull way hopefully :) grokking the arrow concept involves being able to manipulate exactly the right arrow to get a desired effect water: Yeah, I guess that's the "meaningfull" part :) You can point to anything, that's a pretty long noose to hang yourself with ;) right but then in an arrow system there are too many to effectively see at once the trick is to know how to manipulate your view of things Which is the ontology concept. * water/#tunes nods * beholder/#tunes still remembers the many conversations :) 11:20am Are you going for the "visual programming" concept for the first implementation of slate? That might take extra time... perhaps oh wait no not the *first* implementation more likely the third Ok, sounds reasonable yeah we're looking at developing the usability in the same sequence as self In the same sequence that self was developed? skipping some unnecessary stuff of course yes, roughly What lang are you writing this lang in? lisp, right now Common Lisp? i'm going to put together a squeak implementation as well yeah, CL What CL interpreter are you using? I mean, which/who's imeplementation oh i don't think it'll matter we'll keep it pretty portable at first Yeah, that's the concern. I hear even lisp is not totally portable... sad really most of this is up to eihrul and whoever else joins in Yeah, coders choice. Good call. eihrul recommended cmucl to me so i would infer that How long do you think it's going to take? Is the implementation details solidified yet? eih said it would take a week or two to have an evaluator that demonstrated all the language features then it would take at least a month or two to move to a full library of primitives and an actual dynamic compiler Hmm, very quick. of course i'm going to encourage and help him as much as possible to get something really usable by year's end, when i have to go back to sea :( (object message) wow, very simple :) water: Do you bring your laptop to sea with you? namespace access makes it a bit more complicated than it looks yes (\global\functions\print "Hello, World") ? kind of sorry, syntax isn't fully cemented yet (the sugar, that is) How would you do the same thing I just demonstrated in your syntax? 11:30am well there are several ideas i'm looking at pure sexp-style: (global (functions (print : "Hello, World"))) ":" hides some namespace access btw since strings have their own namespace :) yes like "use default method" type thing no not like that more like "clone this namespace here and access the following slot from it" -:- SignOff hcf: #TUNES (Ping timeout for hcf[me-portland-us729.javanet.com]) Hmm, so before an object can be used it must be cloned? another variant on the syntax decomposes the SEXP a bit yes global / functions / print : "Hello, World" \ \ Hmm, that example seems to be a lot of typeing... got any ideas that are shorter? -:- _ruiner_ [blah@ppp468.wi.centurytel.net] has joined #tunes with the last two being optional i think Never mind, that one was better well even namespace access can be cut out i mean, it's just a directory system :) -:- SignOff _ruiner_: #TUNES (Leaving) Hehe :) i'm sure you can figure out what to do with that -:- hcf [nef@me-portland-us729.javanet.com] has joined #tunes how much do you grok meta-behavior? Well, never heard the term till today so.... I imagine it allows you to abstract the behaviour of functions kinda like redirection hm yes messages get abstracted as lookups and applications basically it amounts to "what's the best way to use meta-objects?" i've managed to reduce a huge amount of programming language crap to meta-behavior so you can have a uniform language and still get your crappy features :) Best way? Hmm, store them as an object within the system, and allow it to instantiate a clone of the object it's modifying, then the output is taken from the meta-behavior object well that's not how i express it, but ok Hehe, the purity of the lang must be tainted at one point with features... let it go, it's for the best ;) hehe in slate, meta-objects actually implement messages for their objects 11:40am and since one slot of an object is its 'meta' slot, an object can get at and modify its meta-behavior dynamically Ahh, cool. That's a better way than what I was thinking :) notice the part of the docs about slate objects being the history of message-sends that created them that's a definite non-trivial language property damn phone... damn i forgot to update the part about slate gc gc? garbage collection Ahh, yes, that would be necessary here not necessarily :) well automated memory management is needed of course Yes, very well automated :) but i've got better ideas than the usual crap But isn't that the definition of a gc system? abi rewrite for gc abi rewriting for gc rumour has it rewriting for gc is "Abstract Models of Memory Management" at http://www.cs.rice.edu/CS/PLT/Publications/fpca95-mfh.ps.gz or see cora sort of there's the linear logic model where memory management follows the code itself (like with a stack) rewrite covers everything, including manual management heh are you still subscribed to the tunes mlist? read "induction, co-induction, and types in slate" from march Yes, but the conversations lately have been dull ;) bah you just have to look for the signal a bit harder ;) 11:50am Hehe, I'll do that. brb back * beholder/#tunes doesn't announce when he leaves... mostly because he's doing it every few min water: Keeping #tunes_mod up? it's up, but not in use since no dedicated tunes members seem to exist besides, i can always "grep " :) Hey, I said it before... Tunes is more like a gathering place for minds, under the premise of a project. screw that Something good will come of it... eventually. I hope :) quit that hope is bullshit you can take your hope and put it where the sun don't shine, if you catch my drift It sure is :) That's why 3 of my own projects go nowhere. But when you have no common vision, no plan and no people willing to concede, you left with not much else... whatever, have you read that e-mail yet or not? heh concession. 12:00pm water: Going after it right now corey: Have you been here long? water: Ok found it corey: I mean, in Tunes? he's been around for a few days water: Hmm, numbers as objects, neat as well as strings, reals, booleans, logic constructs, .... whose value is determined (not necessarily computed) equationally I mean representing them out of normal contex. Zero as a value, zero as a concept, etc. i know :) water: the hardware its running on as objects? Hmm, pretty damn flexible... corey: yeah that's the tunes idea and UniOS idea too :) so tunes = hll + arrows set up for the hardware its running on? um tunes does not consist of arrow i mean the arrow concept rather the opposite im still weak on understanding it arrow is not tunes at all corey: Tunes will be whatever HLL + LLL that happens to fit the description. corey: Arrows is a candidate well the LLL *is* the set of objects representing the hardware beh: no it's not yeh thats what i meant water: I thought it was? beh: no water: Arrows fits the description of what they want doesn't it? tunes = the hll + objects defined in the hll representing the hardware? no it exceeds the description by quite a bit Actually... come to think of it, it's a bit of a stretch... But Arrows does have a unified type structure ;) corey: yep yes but arrows does not have a consistent type structure so essentially tunes is the hll it's a reflective environment for the hll kay water: Yes, but data is represented in a fine-grained mannter (about as fine grained as it can get! ;) mannter=manner yeah 12:10pm Hmm, your mail seems to have spawned of many responses not enough imo -:- eihrul [lee@usr5-ppp48.lvdi.net] has joined #tunes re eih 12:20pm ping? * water/#tunes is typing up the tutorial pong * beholder/#tunes is afk for a bit cool yeah and i've been teaching beholder and thomas about slate -:- SignOff abi: #TUNES (Ping timeout for abi[bespin.dhs.org]) -:- abi [nef@bespin.dhs.org] has joined #tunes hey what do you think of this syntax?: (myPoint (x (: 4))) it's a very regular kind of syntax, and it suggests we can strip out some parentheses like this: myPoint x : 4 or rather: (myPoint x : 4) so, ':' is just a primitive method provided by Root now? 12:30pm no because root doesn't have variable-like traits it has to be separate well, and if ':' is a normal method now... things like actually binding 4 to ':' present a problem :) not really why not? you're binding the result of x and : is probably primitive in light of the idea that the mo implements it well, the original function of ':' was to bind an implicit input slot hm okay, that would work as well (atleast i think) well x would then inherit both : and return so that return would automatically interact with : correctly btw i've been working out some concepts about slate and using consensus among objects in the system to build state (an odd idea but interesting) 'consensus among objects'? and before i forget, the second syntax i mentioned there is versatile enough for the whole language yeah, x is bound to 4 because : was sent the message 4 oh wait doh! i think i already took care of this with changing : to be a clone of a namespace containing the values it can receive and changing the behavior of : to take the slot given and fiddle with its sibbling result (the result of x) that still isn't specific enough though grr ok every slot works by having an internal expression which is just an object that gets computed this result slot is really troublesome oh wait 12:40pm result *is* the object expression to compute so the result of x has special meta-behavior but gets its "parent" slot set to the value YES * water/#tunes pokes eihrul reading mail in other window well just read my last 3-4 statements plz (x parent) => 4, or are you saying something completely different? yeah x parent -> 4 er no i mean x result parent -> 4 so that myPoint x -> 4 (probably fiddling with punctuation a bit to ensure we aren't getting results from objects where we just want the namespace access) but, if (x result) is an expression evaluating to the result... i'm not so sure it is well, if it is, then its parent should not necessarily be 4... why not? if it's parent is 4, and its meta-behavior is that of a variable....? -:- poop [Loody_Dues@dap-209-166-133-141.pri.tnt-1.beaver.pa.stargate.net] has joined #tunes well, because it is cloned from a prototype expression, no? hi poop hi this channel is about ? * water/#tunes points at the topic water: so its parent is that prototype expression -:- hcf has changed the topic on channel #tunes to: TUNES, Free Reflective Computing System: http://www.tunes.org/ || Slate Language: http://www.tunes.org/~water/slate-home.html -:- poop [Loody_Dues@dap-209-166-133-141.pri.tnt-1.beaver.pa.stargate.net] has left #tunes [] topic was desync'd oh water: or else it would no longer inherit the behavior of said expressions eih: not sure what "prototype expression" means 4 isn't an expression, though well then you're saying (x result) => 4 rm... wait, (probably fiddling with punctuation a bit to ensure we aren't getting results from objects where we just want the namespace access) i think we need to distinguish expresion types okay... so you mean solely 'lookup' here no 'apply'ing :) right namespace access is different from evaluation 12:50pm btw, i've been considering screwing with sexp like making ( and ) something other than syntactic primitives well, they are also semantic primitives :) same thing in this case of course, in slate they'd have to be objects/messages but doesn't the lookup + apply protocol handle them? * water/#tunes shrugs in the sexp model, the just denote expression structure s/the/they/ it depends on what level we want lookup+apply to work well, in sexp, they're the literal representation of an object btw, if i do this with ( and ), they'll be alongside / (and maybe a \?) (which by their very nature carry structure) hm well i already know i don't want lists of slots as primitive that would screw up my rational number plans ;) well, i don't necessarily like to think of it as a list of symbols although that's what it may be in lisp :) you mean our expressions? yes hm ( my Point x : 4 ) that's too simple an example oops ( myPoint x : 4 ) ( my Point ( x : 4 ) ( y : 3 ) distance ) too much white-space * smoke_/#tunes just spent about 3 hours trying to find a bug in either common lisp, svgalib, libggi or libc and still hasn't found it it's more abstract, and so would work for a gui-based interface, but it would be terrible as text 01:00pm well, are you exluding the possibility of different syntaxes in slate? no, but i don't want to stray to far from something very uniform well, even if a non-uniform syntax is placed upon it the representation, generated from it, is still uniform hm "distance" above should be outside the paretheses why? yeah well the lispers in tunes won't go for it expression appears fine to me because the state-setting produces a new object. it'd be more concetually correct -:- SignOff hcf: #TUNES (Ping timeout for hcf[me-portland-us729.javanet.com]) s/cet/cept/ -:- hcf [nef@me-portland-us342.javanet.com] has joined #tunes well it's beside the point what sort of syntax do you have in mind? well, depends... i'd much rather have (object bar baz) be bar of baz of object "bar of baz of object"? er baz of bar of object :) bar (baz (object)) still er, baz (bar (object)) :) heh rather than, bar (object) and baz (object) well i sort of like the rpn idea of totally-uniforma eval order which corresponds to the former :) well sure, that's redundant (the bar and baz ...) which former? (object bar baz) => baz (bar (object)) um no uh, why no? it is more useful because with: bar (object) and baz (object) because you don't know what the message is until it gets looked up the results are being discarded (which implies side-effects) yeah well bar (object) and baz (object) is totally out of the question not even an option yes, which is why i like composition better yeah but your order is *opposite* of rpn no it isn't actually because you don't know what the message is until it gets looked up 01:10pm the object is the function, the message is the argument in oo i know i'm just trying to be more explicit as to order of evaluation here looks more like less explicit reverse-order seems odd (using a regular functional syntax) bar (foo (object)) reveals more about the composition than (object foo bar) especially as it makes object history views reversed for the sake of explanation :) um no it doesn't well, regardless, it sends foo to object, then sends bar to the result either way, the protocol of the object at the point of evaluation could change with any message-send so neither is better eih: which is why i like (o f b) ! you get 1, you send it 2, then you send it 3 what's not clear about it? well, the result of sending 2 to 1 is lost... if you're arabic, and you read right-to-left, then you can reverse it huh? no it isn't! "you send it 2, you send it 3", it here being "1" in your statement "it" is the result of the previous message just like in forth well, yes... the confusion is just in the fallacies of the english language here :) water: very few writings systems are left to right. :P i did that specifically so that object history would be the exact same thing as an expression corey: uh sure so, more explicitly stated... you get 1, you send 2 to 1, you then send 3 to 1 sent 2 yeah if you want to express it in natural language well, we're speaking in natural language... :) besides, i can take your syntax and use it with mine ((o f) b) :P eh, my syntax is your syntax... (object foo bar) i'm merely talking about what that means i know what it means hm "distance" above should be outside the paretheses it means you need to start using tags :) ( my Point ( x : 4 ) ( y : 3 ) distance ) yeah so? 01:20pm i was experimenting with reifying parentheses well, it can be inside the parentheses to the same effect, yes? you can make about 9 modifications to that syntax s/syntax/expression without violating syntax/ it is just the word "should" has a wholly different denotation no it has multiple denotations you just picked the one i didn't ;) well, i interpreter it as 'must' s/interpreter/interpret anyway... we were discussing ':' and its effect upon x wrt 4 :) right and the last thing i recall claiming was that it made x's result's parent into 4 itself and that x's result was vacuous otherwise (aside from mb) -:- zarq [zarq@10dyn95.delft.casema.net] has joined #tunes hi zarq eih: any objections? questions? hello water long time since i've been here;) yes darn eih, he leaves the kb for quite a while without telling anyone zarq: anything you want to talk about? not particularly k anyone else still here? corey? beh? me water: x's result is not necessarily vacuous, it is an object representing x's result slot eih: quesitons/comments/objections? well it's vacuous in that it doesn't have any 'feature' slots 01:30pm like a reference object i'm fine with that :) and don't think of it as me leaving... easier to implement, eh? :) just think of it as high communications latency yeah just like with Fare >:P well, fare disappears for days and weeks i just do so for small quantities of time in comparison even when he's here, he's not anyway eihrul: would it kill u to just type brb? -:- SignOff corey: #TUNES ([BX] Tabardation - the inability to master use of the key. See: retardation; Headcase.) well, if i typed it every 5 minutes, i'd just be contributing to the general noise in the logs :) "tabardation"? :) let's see... hm i think after all that that 'result' is finally settled and we know what ":" does as well perhaps every object should have a ":" but then it would have to know the object's type signature automatically which is not simple unless you consider ':' to be a message i do in which case it doesn't have to but that means the user can do anything with it hm i guess the user already *can* screw up the system :) so what about namespace-access syntax vs eval syntax? 01:40pm when i set an object's slot, i want to distinguish when i want the result of that object or the object itself -:- SignOff eihrul: #TUNES (Ping timeout for eihrul[usr5-ppp48.lvdi.net]) doh -:- water has changed the topic on channel #tunes to: TUNES, Free Reflective Computing System: http://www.tunes.org/ || Slate Tutorial (in progress): http://www.tunes.org/~water/slate-tutorial.html -:- eihrul [lee@usr5-ppp127.lvdi.net] has joined #tunes re re chk logs plz was going to :) and i uploaded the tutorial -:- lar1 [larman@adsl-63-204-133-184.dsl.snfc21.pacbell.net] has joined #tunes re lar Hey lar: check out the slate tutorial plz water: well, so the issue is that sometimes we don't want the 'apply' half of the protocol, yes? water: Ah! I was unaware you had created one. I will look at it at once! no, the issue is whether we want 'result' or no lar: it's a work in progress well, yes... the 'apply' half of the protocol is usually responsible for that :) no that's not what i mean i mean the result message should sometimes not get sent at all ejemplo? 01:50pm afaict anyway well if i want to get into an object and look at one of its slots, ... as opposed to invoking it, i would need another syntax for getting at it or... like moving around a file system without running a program every time you 'touch' it -:- SignOff beholder: #TUNES ([x]chat) wtf? eh? he left without any kind of notice shrug... anyway... given (object slot), and wanting to get a hold of slot, you could: (object (slot capture-slot)) huh? capture-slot? oh yeah that definitely encourages a file system metaphor yes, it would encapsulate the slot object so that its result is not returned yeah but it doesn't promote the idea of navigating between namespaces and namespaces *are* environments well, that's why i wanted an example as to where this would be specifically used... i gave you something that is immediately representable in the language without a primitive :) and i got interrupted yeah well it sucks :) seriously you expect people to use that syntax to get into and out of namespaces? no i was just describing it as a way of getting access to it by working around 'apply' besides, "encapsulate the slot object so that its result is not returned" doesn't seem to be the same as navigating namespaces, even formally hm (object /slot) ? -:- SignOff eihrul: #TUNES (Ping timeout for eihrul[usr5-ppp127.lvdi.net]) blah 02:00pm -:- eihrul [lee@usr5-ppp08.lvdi.net] has joined #tunes * eihrul/#tunes sighs. re that took a while well, i don't notice that i've gotten hung up until i suddenly notice that noone has said anything for 5 minutes :) oh other note (re: tutorial), (myPoint (x (: 4))) and (myPoint x : 4) are very different... i used the second as sugar for the first i.e. wherever parentheses not used, assume 1 s/1/the first/ ping? (object slot) (object (slot /)), what's the difference? :) er (object /slot) i think there is a difference, that both mean different things maybe / should be a slot in root well, what is the difference then? 02:10pm well it seems / sent to the object should block return well, / could alternatively be a message that creates a new object, with the "slot" as its result or maybe / sent to an object means the next slot invocation doesn't get a result well the whole point is namespace-access, isn't it? that seems to be more than just "give me that slot" blah if you actually do something in the namespace then perhaps it is signifigant yeah that is the point how do i get into the "system/text-functions" namespace to make some more text-functions? (bad example) but you get the idea /system/text-functions/(make-new-text-function foo) ? yeah well what if you want to call lots of code in that namespace, not just one? and anyway, no matter what, the evaluator *has* to work in some namespace making it work in only one namespace seems pointless well... that does two distinct messages right there :) "yeah you can make the namespace system as rich as you want but you have to type in the path every single time" huh? make-new-text-function and foo that's not usually possible it just works because you assume make-new-text-function returns its parent namespace well... then you're getting into a dangerous area... we *could* have everything use that metaphor side-effects :) but it's not an easy thing to require and in that area you have Lisp constructs like (progn) or what-not * water/#tunes thwacks eihrul with the Haskell manual monads well, monads are only a way of making a dangerous construct in terms of safe ones :) 02:20pm danger only comes from the inability to predict something the safe construct is supposed to change the model you use to tame the danger well, are you suggesting a sugar'd monad syntax? :) or making () more of a monad itself? besides, i think you assume the namespace returned equals the namespace invoked it could be an anonymous new namespace how would () be made a monad?? * eihrul/#tunes shrugs... within the frame work of normal slate, lots of meta-object hackery :P there must be a better way this is just too simple a concept to have it be that complicated hm well like in self, some slate namespaces (i suppose) could just be accessed by message-passing "lobby traits clonable cartesianPoint" there's nothing wrong with it if the objects just sit still and don't mute anything around them :) but that's self, where objects are really easy to screw up it's really great for an experimental system, but that's about it 02:30pm pong the problem is when you want to do the same thing around objects that actually *do* things (like inspecting, debugging, tracing, etc) what do you think? on this matter, i fail to see what you're even getting at here... why? is there some obvious way around it? in slate, if we had "traits" and it had a "result", we'd be screwed well, i already gave you a solution to that specific problem :) yeah it works like a very nice kludge, thanks and a primitive is not? and i doubt capture-slot would fly with programmers, syntax wise well, explain how your idea promotes the file system metaphor it doesn't, it promotes the message-passing metaphor :) how can i get the evaluator to work in some place where its not currently working ? gah ((object slot /) foo bar baz) hm that still looks really shaky what really bugs me is the implicit location of the evaluator and don't tell me about package-name :) 02:40pm well? well, all the suggestions i have on the matter oh wait a sec suppose we treated carriage returns as pauses in computation or something blah that came out wrong it just defeats the idea of interactivity if you can't write a series of really small statements in a series and watch the results interactively (of course) well, it just means the top-level needs to behave interactively and the way you suggest for accessing namespace *as is* doesn't admit stopping in the middle and watching the result of passing messages in that namespace interactively what if you didn't close a parenthesis? i don't see why it couldn't... ((object slot / hmmm well it would have to be "object slot /" to make sense by itself er, that should have been (object (slot /)), actually :) hm yeah i really hate having to picky about parentheses s/picky/nit-pick/ so perhaps "(object (slot /))" would work, which in my second form (in the tutorial) comes to be "object slot /" so then .. would invoke the parent namespace as a function and .. / would return you to that parent namespace without invoking its result (i bet you forgot about .. for a minute) :) what do you think? i suppose you suppose? what's wrong with it? it's both message-passing and interactive 02:50pm i didn't mean a negative connotation there :) oh ok one odd thing is that if you concat sequential statements with namespace accessors it looks odd s/it looks odd// since you now would have "/"s where you ordinarily you don't need them, afaik * eihrul/#tunes is going to sleep. ok i'll bbl -:- SignOff eihrul: #TUNES ([x]chat) is anyone still here? Me any thoughts/comments? Not ATM I read the tutorial Looking good ok so you grok it or is there more i could explain there? I grok what you have there. ok that's a very good sign then Heh hm well i'm tired of talking about this stuff for now Ok when i get back, i'll type like crazy but that's later -:- water [water@tnt-10-42.tscnet.net] has left #tunes [] -:- SignOff smoke: #TUNES (zz! later) -:- SignOff smoke_: #TUNES (z) 03:00pm -:- SignOff lar1: #TUNES (Leaving) -:- karmic_thief [lysergicac@intelligenesis.net] has joined #tunes -:- SignOff hcf: #TUNES (Leaving) -:- SignOff karmic_thief: #TUNES (Read error to karmic_thief[intelligenesis.net]: EOF from client) -:- veblen_ [veblen@bou-0223.dialup.frii.com] has joined #tunes -:- veblen_ [veblen@bou-0223.dialup.frii.com] has left #tunes [] -:- coreyr [coreyr@net255ip94.parklink.com] has joined #tunes -:- washort [washort@d127.narrowgate.net] has joined #tunes -:- SignOff coreyr: #TUNES (changing servers) -:- hcf [nef@me-portland-us645.javanet.com] has joined #tunes -:- gmol [gmol@24.68.42.158.on.wave.home.com] has joined #tunes -:- SignOff gmol: #TUNES (xchat exiting..) -:- NetSplit: merril.openprojects.net split from sterling.openprojects.net [06:32pm] -:- BitchX+Deb1an: Press Ctrl-F to see who left Ctrl-E to change to [merril.openprojects.net] -:- Netjoined: merril.openprojects.net sterling.openprojects.net -:- zarq [zarq@10dyn95.delft.casema.net] has joined #tunes -:- NetSplit: merril.openprojects.net split from sterling.openprojects.net [06:40pm] -:- BitchX+Deb1an: Press Ctrl-F to see who left Ctrl-E to change to [merril.openprojects.net] -:- Netjoined: merril.openprojects.net sterling.openprojects.net -:- zarq [zarq@10dyn95.delft.casema.net] has joined #tunes -:- coreyr [coreyr@net255ip95.parklink.com] has joined #tunes -:- eihrul [lee@usr5-ppp08.lvdi.net] has joined #tunes -:- ult [ult@user-38lc6c8.dialup.mindspring.com] has joined #Tunes -:- gmol [gmol@24.68.42.158.on.wave.home.com] has joined #tunes -:- SignOff gmol: #TUNES (xchat exiting..) -:- SignOff eihrul: #TUNES ([x]chat) -:- eihrul [lee@usr5-ppp08.lvdi.net] has joined #tunes -:- lar1 [larman@adsl-63-204-133-184.dsl.snfc21.pacbell.net] has joined #tunes -:- gmol [gmol@24.68.42.158.on.wave.home.com] has joined #tunes water around? he was oh well -:- SignOff gmol: #TUNES (xchat exiting..) I think he will be back tonight -:- gmol [gmol@24.68.42.158.on.wave.home.com] has joined #tunes -:- SignOff gmol: #TUNES (xchat exiting..) 08:10pm eihrul, others perhaps: icuc, the green page has been updated abi: green? green is at http://www.dc.ufscar.br/~jose/green/green.htm 08:20pm -:- washort [washort@d127.narrowgate.net] has left #tunes [brain] -:- ult_ [ult@user-37kbapo.dialup.mindspring.com] has joined #Tunes -:- SignOff ult: #TUNES (Ping timeout for ult[user-38lc6c8.dialup.mindspring.com]) -:- ult_ is now known as ult abi: Rosette is a concurrent (Actor model) prototype-based oopl w/ multiple inheritance and reflection at http://www.mcc.com/projects/infosleuth/archives/carnot/rosette/ref_1.html ooo.... that's a lot of relevent buzz-words, there.... 09:50pm -:- gmol [gmol@24.68.42.158.on.wave.home.com] has joined #tunes -:- SignOff gmol: #TUNES (xchat exiting..) abi: coop is Concurrent Object Oriented Programming at http://www.info.unicaen.fr/~serge/coop.html 10:10pm -:- SignOff hcf: #TUNES (Read error to hcf[me-portland-us645.javanet.com]: Connection reset by peer) -:- hcf [nef@me-portland-us236.javanet.com] has joined #tunes -:- gmol [gmol@24.68.42.158.on.wave.home.com] has joined #tunes -:- SignOff gmol: #TUNES (xchat exiting..) -:- XeF4 [xef4@83.ppp1-19.worldonline.dk] has joined #tunes -:- SignOff ult: #TUNES (Ping timeout for ult[user-37kbapo.dialup.mindspring.com]) -:- yinzen [foobar@cx158568-a.okcnw1.ok.home.com] has joined #tunes -:- SignOff eihrul: #TUNES ([x]chat) -:- ult_ [ult@user-38lcn6f.dialup.mindspring.com] has joined #Tunes -:- SignOff ult_: #TUNES (Read error to ult_[user-38lcn6f.dialup.mindspring.com]: EOF from client) -:- SignOff lar1: #TUNES (Read error to lar1[adsl-63-204-133-184.dsl.snfc21.pacbell.net]: Connection reset by peer) -:- lar1 [larman@adsl-63-204-133-184.dsl.snfc21.pacbell.net] has joined #tunes -:- SignOff XeF4: #TUNES (Leaving) -:- ult [ult@user-38lcn6f.dialup.mindspring.com] has joined #Tunes -:- SignOff hcf: #TUNES (Leaving) -:- water [water@tnt-9-165.tscnet.net] has joined #tunes foo (hic) sup water the tutorial is looking good, helped my understanding of slate quite a bit allready. oh good 11:40pm it will probably wind up being about 4 times that size to explain how the core language expands to the full one hm lots of good stuff in the logs today * water/#tunes checks on the new green pl pages yes .. although I need to go back and re-read now that I grok the tutorial, your discussion with eihrul might make more sense =) yeah the discussion with eih was about syntax options based on language semantics desired i'm still not satisfied with the last option we mentioned well aesthetically i like (object foo bar) but I dont know if that can be as flexible as the full SEXP As I understood it that is what allowed code to write code, the uniformity of the ()'s well my idea was to only use ()'s where right-associativity did not apply -:- SignOff ult: #TUNES (Leaving) so it's still uniform, just with a sparser set of parentheses to make up for not being quite the functional paradigm like (object foo (bar x y)) ?? hm 11:50pm well it depends on whar each symbol means what, even but basically (foo bar baz) is (foo (bar (baz))) ack damn it i meant the opposite oh well, i'm drunk anyway hehe, I have allready burned off my alcohol from tonight I got my freenet server running, cool toy not very familiar with it myself, but then i only have a modem connection to play with ugh I have repressed the memories of modem-land ;) no big loss, i want no part of managing any kind of internet serving but that is one of the nice things about freenet, you can publish something then break your connection, and what you published lives on in other nodes that have more 'permanent' connections and my bandwidth is limited by what can read (in terms of html and postscript and pdf papers) oic -:- hcf [nef@me-portland-us236.javanet.com] has joined #tunes re had u seen rosette? no i'm still looking at green * water/#tunes looks at rosette what is this green and rosette? abi: green? it has been said that green is at http://www.dc.ufscar.br/~jose/green/green.htm abi: rosette? rosette is a concurrent (Actor model) prototype-based oopl w/ multiple inheritance, reflection, and SEXP syntax at http://www.mcc.com/projects/infosleuth/archives/carnot/rosette/ref_1.html damn it, this brand-new electronica cd skips like crazy for some reason ahh languages, yum thanks [msg(TUNES)] newlog 2000.0415 IRC log ended Sat Apr 15 00:00:01 2000