IRC log started Wed Jan 27 00:00:00 1999 [msg(TUNES)] permlog 1999.0127 ωνω abi [nef@bespin.ml.org] has joined #tunes !netgod:*! mccaffrey will disappear for a few min presently !wichert:*! I didn't know you were a practising magician.. ωνω Closing Link: TUNES[bespin.ml.org] by asimov.openprojects.net (Ping timeout for TUNES[bespin.ml.org]) ωνω Connection closed from irc.us.openprojects.net: Success ωνω Connecting to port 6667 of server irc.us.openprojects.net [refnum 0] ωνω Your nick [TUNES] is owned by tunes@bespin.ml.org ωνω BitchX: 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.04.resolv9.nmt.egcs4.tok.pten.tlim4.admin.upper4.whisper3.gipl.modeless7 (from sterling.openprojects.net) ωνω This server was cobbled together Wed Dec 2 1998 at 02 26:39 EST(from sterling.openprojects.net) ωνω sterling.openprojects.net u2.10.04.resolv9.nmt.egcs4.tok.pten.tlim4.admin.upper4.whisper3.gipl.modeless7 dioswkfcg biklmnopstv ωνω [local users on irc(6)] 3% ωνω [global users on irc(64)] 36% ωνω [invisible users on irc(116)] 64% ωνω [ircops on irc(13)] 7% ωνω [total users on irc(180)] ωνω [unknown connections(0)] ωνω [total servers on irc(27)] (avg. 6 users per server) ωνω [total channels created(54)] (avg. 3 users per channel) !sterling.openprojects.net Highest connection count: 8 (6 clients) ωνω Mode change [+f] for user TUNES_ ωνω Mode change [+iw] for user TUNES_ ωνω TUNES_ [tunes@bespin.ml.org] has joined #tunes ωνω Topic for #TUNES: metaprogramming bites ωνω topic set by AlonzoTG [Tue Jan 26 21:15:37 1999] ωνω [Users(#TUNES:3)] [ TUNES_ ] [ abi ] [ TUNES ] ωνω Channel #TUNES was created at Wed Dec 30 09:08:43 1998 ωνω BitchX: Join to #tunes was synced in 12.246 secs!! ωνω SignOff TUNES: #TUNES (Ping timeout for TUNES[bespin.ml.org]) ωνω Current server: irc.us.openprojects.net 6667 ωνω Primary server: irc.us.openprojects.net 6667 ωνω Server list: ωνω [unknown] ωνω 0) irc.us.openprojects.net 6667 (TUNES_) ωνω [Users(#TUNES:2)] [ TUNES_ ] [ abi ] .......................LOGFILE 1999.0127 >>> You(TUNES_) are now known as TUNES ωνω TMF [s720@tordivel.ii.uib.no] has joined #tunes ωνω Tril [dem@bespin.ml.org] has joined #TUNES ωνω Tril has changed the topic on channel #TUNES to: http://tunes.org/ - TUNES Project | http://bespin.tunes.org/free-services.html - Hosting for Free OS Projects tril, I just read that your work in tunes is your bachlors degree. How do you do that? ωνω Tril has changed the topic on channel #TUNES to: http://tunes.org/ <-- TUNES Project || http://bespin.tunes.org/free-services.html <-- Hosting for Free OS Projects Fairhaven College is part of Western Washington University, and it is an experimental school in higher education formed in the early '70s. 10:20am so, you tell them what you want to do, and they consider it an education? there is no grading for Fairhaven classes, and Fairhaven has a degree called the Fairhaven Concentration where you choose an area of interdisciplinary study, and design your own degree with your own committee wow! for the concentration you have to take a good number of classes at the regular university, but you take ones that relate to your concentration. do you get assistance yeah sounds like a better deal then I'm getting! :( it's very friendly you can talk to an advisor at any time there are lots of prepatory classes to make sure you are on track and know what you are doing etc currently I have to take bogus classes just to get student _loan_! i'm very glad it was to be found near where I live! where is that? that is a system abstraction, but not sure. thanks, abi. Tril: bitte In germany? Bellingham, Washington . halfway between Seattle, and Vancouver British Columbia ok Tril, have you looked at TOOL, by the way? ahh..I need to read the last mail you wrote to me about it. my mail is in a weird state right now yeah, sure it's all tarred up from moving hard drives around. hold on while I get it accesible 10:30am found it 10:40am what was it about? Subject: The specification of TML ohh. The TML bible:D ok I understand a macro.but what about these macros inside macros? When are they expanded? what is the order of evaluation and time of evaluation etc the whole inside of a macro replaces the an occurence of a id if the inside of a macro has macro definitions the these are invoked but the scope of the inside definition is just inside the current macro? nono. the scope is only dependent on ()'s so if I write [ message [ from ] ] and then type, message, somewhere... it expands all the macros completely until none are left? so it comes out as a null string in the input after having the side effect of writing "TRil" to output it would expand to '[ from ]' which would define 'from' to be '' so every time I type 'message' it defines a from macro with global scope. Got it. only when you write 'message' and then 'from' it would expand to '' and write 'tril'. yepp ( well some current local scope, anyway ) now I need to run this thing..do I have the latest version? you sent me 2 copies of the same version, at different times latest-release.tar.gz :) I think so. Have you compiled it? there the same. I had at one time. I have to extract it from e-mail and compile it again, now. oh, current-release.tar.gz. there it is :) 10:50am hold on gotta get something to eat ok started something cooking now uh it didn't compile I don't remember if I got it compiled before or not what compiler/os are you using? undefined reference to 'sin' 'cos' 'tan' and 'pow', gcc version egcs-2.90.29 980515 (egcs-1.0.3 release) Linux tril.lnx 2.0.35 #1 Fri Sep 18 22:53:06 1998 i486 unknown try g++, if you got it hey that worked. It should be .cc if it requires g++ :) ooops :) I just wrote Hello, world in TML correctly the first time :) I don't suppose it would be too much trouble to make a lisp-like read-eval-print loop, would it? you're up to it!!!! In a way, '()' is it. well, I'd like it to have interaction, it would make it easier for me to learn it. I know, It's pretty easy though, to make it interactive. Just haven't gotten around to it yet. 11:00am reading the code.. In an interactive version, there would be an initial/global scope which was the harddrive current directory. Curretly it is possible only to read files, not write them ( except output ) hard drive? I was thinking of just a non-persistent interpretre yeah, like if you write '[ filename contents.... ]' it writes contents to a file named filename have you used lisp? seen it, never used it I want to get a prompt, type a TOOL expression, and have it run that and give me the prompt back. So I can use macros in later commands I mean TML expression yes, then you want <>'s to be interpreted as write to stdout in this initial context If I want to save some macros or objects or whatever, I should have to put them in a module and mark it as persistent (or manually save it in current systems) or send its definition to some persistent context, like a hard drive I also need to separate the read-input loop from the current state of the VM so I can run the interpreter more than once, updating the state each time basically take the macro_list outside of go_parse err, something yes, that's the place to do this thing! or just call parse multiple times with output set to stdout that would work, but how about files? currently: hold on phone 11:10am back if you write a filename, that file is invoked so you want to write files by redefining them like macros if you write a file in what syntax? [ filenam contents ] 'contents' would be the contents of the file. how so? I thought that defines a macro yes, but I could "overload" its meaning, just in the outermost scope for every macro it checks to see if there is a file by that name? in the scope where <>'s would cause writing to the outupt file. does it do this or are you just thinking of doing this it does. create a new file in the directory you are in! put some TML code in it have another TML source "call" the file, and it works as if it was a macro! do you have full file system support (chdir mkdir rm ls ...)? no, just this file transparency if you are conflating files with macros you should have a "list macros" = ls and "chdir" = change scope for reading the semantics should be the same if you dont want all macros to be files then there should be a special form for the file access if you look at TOOL, you will see that it's objects are on the form [ objectname identity structure state ] It's not that I do explisit file access. It's just that it's convienient to say that the directory you're in, is part of the inititial scope what does an object have to do with a file? look at how the object would be written to a file! I haven't even gotten to the () operator yet, much less TOOL! 11:20am it's just that object mab well to files, too. So well infact that in TOOL you would never need explisit files. much less mkdir and ls! but, read about ()'s. It will make it all clearer. () redirects the output of an expression to the evaluator? it reevaluates the output of what's inside the ()'s it's a trick:D But if I define a macro inside (), it doesnt affect the outside unless it has output? but if it does have output it has to be evaluated.. that seems to me to be combining two features into one. 1. nesting scope 2. evaluating an expression Yes like perl, you create syntax which is convenient for you, but is not designed for the long term general-purpose use. what if I wanted to do one, but not the other? (< [ this is an example ] >) this -> is an example this -> is a rule :D look at ()'s as a way to interpret something then the way you interpret something is dependent on the context. ()'s can be seen as a meta context, which you specialize by defining/redefining terminology used to interpret things in the context. 11:30am but the specifics of one context shouldn't implisitly effect the global context ... confusing well, I'm aware of this combining of two things in one, and I have considered splitting it into two constructs, but during the design of TOOL, I've never seen the need in practice I want to see more examples of using TML without TOOL, some common programs that do simple things like loops, conditional execution, arithmetics ? yeah, I have a couple of those in a message you sent, but I'd like to see more. Perhaps some programs that combine 2 or 3 of the above anything longer than a snippet try writing a loop, by recursive macro definition which terminate did you write a turing machine in it when you proved it was turing complete? I'll look at that.. :) yeah, well, never tested it on anything. you can have the source, and look at it. 11:40am I'm looking at it now. It's not a good example. mostly concerned with maintaining uniqe integers for tape positions. I just wrote a read-eval-print loop using shell script. Only problem is it erases the macro definitions every time. yes, you want to store them somewhere - not easy. haha.. I just crashed TML 11:50am how did you do that? [ loop loop ] ( < loop > ) Out of memory ok, I don't detect recursive definitions. how much memory does linux give programs anyway? don't know, but [ loop loop ] will use it in a hurry ( I'll be back in five minutes ) Looks like about 8 megs before stopping must be encoded in the binary, because netscape uses more than that :) why does [ ] () not print bar 12:00pm and why does [ ] (<>) print foo??? [ <...> ...] isn't defined hey, stop finding all those bugs, man! (<>) should print nothing, right? it should print foo <> prints that is ok because (<>) evaluates to the (<>) works correctly, it's just that [ ...] does nothing ack! I got it to read a file, accidentally! () has an error because the file "foo" has errors that could be it anyways..what about this (<>) what exactly does it do in what order nevermind I think i understand it I guess the best example is TOOL itself, then? yes, TOOL's a good example. how the heck did you debug this? how did you get the right punctuation..did you define a TML mode for Emacs? (I'm looking at the tool source) I implemented TOOL in TOOL code and hand translated it to TML It's a bitch to debug right! so... now you just need to implement reflection for TOOL on top of TML 12:10pm TOOL _is_ reflective so you have the ability to manipulate TOOL's definition (the version written in TOOL code), and it will take effect in the TML version? tool can generate its own TML code now, right? TML and TOOL are not different versions yes is there a way to get the definition for a macro in TML? TML is the complete meta layer, while TOOL is the consistent object layer no, not currently, but once TML interpreter is written in TOOL, this is possible. TOOL is a generic compiler, which currently compiles to TML code, but it may well be made to write C code, for example what OO language is TOOL most like? Smalltalk: that's what I thought.. the tool file can be seen as an image In comparison, though, smalltalk is somewhat of a hack :D so you use a message passing metaphor? objects contain state and methods? yes in a way 12:20pm methods are objects too btw, where is the source for TOOL written in TOOL you write it that way, so it must be easier to read wrote I haven't got it here and it's not complete ok. go on about methods and state >>> Tril [dem@bespin.ml.org] requested PING 917468676 676095 from #TUNES state is composed of the state of all the dynamic attributes that an object has static attributes are not part of state are there classes and instances? the difference betweem classes and instances is only that instatnces have no static attributes. there is no practicle need for this distinction, so in the new version of tool, it will no be there ( yeah, I'm working on a better TOOL, now that I have the experience of making it work ) do you know the lambda calculus? the lambda calculus is abtract, and doesn't seem very useful at first sight. still you can make useful things with it NOT YOU DOOFUS I know what it is, but I have never used it. how is it different from traditional OO? 12:30pm lambda calculus isnt OO it's a model of computing. I think 'tis a lot like TML ok, in what way? I dont know TML well enough to explain. but it is based on expansion of macros I'm searching for l.c. now. do you know any quick reference :| ? Fare likes this one: http://www.cs.rice.edu/~matthias/ I have more if you need them I can't find anything explisitly on l.c. 12:40pm you're right..he has some papers about LC in the Papers section but they don't look introductory..here's some other links: http://www.math.macalester.edu/~vsharma/papers/cs47_lambda.html http://www.cs.monash.edu.au/~lloyd/tildeProgLang/Paradigms/Lambda/Ch/01.Calc.html http://www.eg.bucknell.edu/~cs208/subpages/Problems/LambdaCans/LambdaCans.html ok, I got one introduction that I'll print and read. you said a method is an object, I think that is good, but how does it work? Can you put any object "inside" any other object, and what does it mean to do so? having a method object inside another object just means that the method is some kind of attribute a method in itself, contains 'action', a token, and two classes : the input type and the output type does that mean 4 things or 3 (is the action a token or are they two different things)? 12:50pm the action is a token. a token is a string that can be evaluated. I might well call it 'string' or 'text', since token is not a good word eighter. 'message' mabe. whatever it is called, it should be an object for consistency it's an object all right! even the punctuactions are objects! to alter the meaning of '.' in the 'object' context, write ( object ( '.' ( meaning ( = (:<...new meaning here...>:) !) .) .) .) not just the character cells, but the language structures denoted by the whole string should be objects too. And those objects should be usable without the string, since the string just describes them. ? I don't like strings being the primary representation for source code. When the string is parsed, the parser forms abstract structures which represent the structure of the program These structures should be directly editable by people and programs! in fact in my system there won't be strings to start with, just structures (made out of objects) yes, but these structures _are_ the source imagine that you are writing an abstract syntax tree directly exactly. instead of something that will be translated into one so, what I was saying, is ideally a method doesn't have a string but instead an abstract syntax tree (object). yes, I see what you mean 01:00pm and it might be worth looking into! I think it makes everything simpler how would you store the ast in the method? Mainly, in your case, I am concerned about not typing all that annoying punctuation! well the ast is just a tree of objects. How do you store the reference to the input/output types? I imagine you'd do it the same way. Punctuation, operator precedence, etc, is all the syntactic details of a language. These details are what make languages incompatible, even when their ideas are so much the same! yes, but the syntax needs a certain overkill, in comparison to syntax for treating numbers, in order to be able to manipulate general object sorry if I am talking on two subjects at the same time. that's three. But it's ok:) I'm trying very hard not to bring up another! :) hit me! well first what do about the storing of the AST, how DO you store references to input and output types? a reference is ... a STRING ! :DDDD well, I don't like that, for reasons I have postedf about before. But ok. but seariously, if you look at the way TML works, the "strings" I'm talking about is more than that. they _are_ the code at one level, viewed from somewhere else I need to get a better grasp at the way TML works. I'm interested to heear you compare it to LC, but first maybe we can just teach it to me a little better I would more than very much like to teach it to you! LC? what is your offset to GMT (i.e. when are you leaving) 01:10pm lambda calc, sorry ok, l.c.! ωνω Yery [ost@benetnash.ffke-campus.mipt.ru] has joined #tunes it's 10:10, soon midnight are you at work now? hi Oleg, we are talking about TMF's TML I'm at home I have class in 3 hours but I can talk until then OK, so you are +0100 hi. what is TMF's TML? I'll be kicked out by security in 1 hour 50 minutes. I'm at a computer lab at the university in Bergen Yery, it's my baby:D :) baby I guess you didn't post much about it on the list. anyway, I understand <> and [] alone... no, frankly, I'm a bit protective. ( read paranoid :) does <> do anything except print what's in between, to the current output, exactly? no, just copy the characters one by one any macro expansion, or treatment of other operators inside it (like other <>, or [] or ()) ? I think it does all of the above no, it just copies them, without thinking hmm, maybe not! why? I just tried it :) what happend? > < ( < [ foo hi ] foo > ) > ( < [ foo hi ] foo > ) > (the first > is my custom prompt to TML) 01:20pm so is the second one err, the last one it just copies, right? yep how about macro definition. [ m def ] just copies def exactly as it stands, into the definition for m? if I use any other [] <> () inside def it gets stored inside the macro definition, right? actually, it just remembers 'm' and the position right after. On macro invoke, it jumps. well, that's the implementation (doesn't matter, and it might change) yes anyway, it doesn't modify anything or try to build some meta data okay, next is macro expansion.. if I define m, then use m by itself it gets expanded. the definition of m is evaluated instead of m, exactly as if it had been there in its place, right? yes well, that's easy. the only other thing is the (), right? TML _is_ easy, and fun too!) yes, but you might notice something that is impossible to write what could that be? ωνω SignOff Yery: #TUNES (Ping timeout for Yery[benetnash.ffke-campus.mipt.ru]) a macro cannot expand to its literal name, instea it gets evaluated endlessly well, no, you can [ m ] I dont know anything you can't write, if you mean characters, because anything can be put in a <> literally. what about '<'? ωνω Yery [ost@benetnash.ffke-campus.mipt.ru] has joined #tunes tml starts eating up ram.. well, that's not what you said then. You said anything between <> is taken exactly as it is. You mean, anything except for < and > ??? (btw, it is eating up ram a lot SLOWER than when I did [loop loop ]) 01:30pm yes, duplicating one character at a time < < > -> out of memory !!! should I say, "< < >" = out of memory you said I can't print a <, so I tried it, and you're right. Why is that? well, you said "what about <", implying I can't print it < < > > prints "< >" just fine. yes, < and > is the characters that you cannot print it's because <>'s are nested, like all the parenteses in TML that seems like it is bad. is it good? it's a nessessity why, just because it is easier to program for some reason? no, because I don't have enough information to stop. you should just see a <, then find the right most >, and print everything in between. you do know where the END of the input is, since you require it to be a file! yes, but in most cases, that would mean the whole source code so, '<' would mean print until you shoke on it! it should stop at EOF, anyway. That's a bug. yes, another one. TML.c cares little for incorrect code :) but it's not a problem to fix you aren't going to fix? why do you have a list of bugs? someone might fix them for you, if you post the source with a list of bugs :) ωνω hcf [nef@escher.sdi.agate.net] has joined #tunes I assume it is because you are going to implement TML in TOOL, and TML.c will be unneeded then? yes, basically, TML.c is just a bootstrap but, the <<> problem has nothing to do with the bug. 01:40pm the interresting thing is: ok, so let me get this right: inside a <> it prints everything exactly, BUT any block structure punctuation must be in matching pairs, and correctly nested, including <> () and [], am I right? only <>'s <[ hello > is legal why? don't you parse all the blocks simultaneously? obviously you don't. <<> isn't really illegal, it just doesn't mean what you at first think it would, and then you discover that something is infact impossible to write interresting: <<> and <>> are not nessacary when implementing a turing machine but: when implementing TOOL, you'd need tables beyond the frontier of the known universe to get it to work TMF: I think TML is overkill, because lambda calculus is turing complete with ONLY macro expansion. You could implement all the other operators using just macro expansion. (and you should, too! :) does this mean that TML with the option to write <<> and <>> is more complete than a turingmachine. Could a turing machine simulate TOOL* It's not possible to implement an assignment with just macro expansion ok, you're right, macro expansion AND macro definition. for example x = x + 1 the notion of macros is not adequate. just using macros, x would here be recursively defined! l.c. has something called alpha-conversion, which means the macro names are renamed to not conflict. even if I did [ a x ] [ x a + 1 ] it would still be rec.def. besides, you are mixing up assignment with macro definition. They are not the same thing. 01:50pm But I need to "emulate" assignment, because it is not a primitive operation. ( < [ x > ++ x <]> ) does the job. how? wel, that is beyond my expertise, because I have not actually built a turing machine in l.c., but that's what Church did or someone, maybe not Church [ a <[x> ] [ b <]> ] [c a ++ x b ] c , that is exactly what I did in my reflective C program..it's a hack. exactly! () makes it easier, though. speaking of that I didnt get to it yet I have: "( exp )" evaluates exp in a temporary context, then evaluates the output in the current context." is that ok? yes, the temp context has one level deeper scope than the current context wait, what I wrote must be wrong somehow, otherwise you wouldnt need the () operator. why if as I said above [c a ++ x b ], I still need to evaluate c twice to expand a and b so it was wrong. unless I could evaluate a and b before defining the macro! and what is < exp > ? Yery: < exp > prints exp to the current output exactly as it appears and [ exp ] ? [ m ... ] defines the macro 'm' to be '...' Yery: [ m def ] makes a new macro m with the definition def exactly as it appears. then using m later evaluates def in place of m 02:00pm macro without arguments? what is [c a ++ x b ] ? Yery: right... lambda calculus is macros with one argument. Yery: [c a ++ x b ] just defines a macro c to be "a ++ x b". I was just writing another way for [x <[ x> ++ x <]> ] ..(did I get it right tmf?) yes, I think so brb Yery, TMF is the meta language for TOOL, an OO system I'm working on i see. somewhat REFALish TMF: have you looked at Prism? I need to look at prism closely next. Yery: What's REFAL? it looks kind of like Haskell actually. do you mean REBOL? I don't really understand what prism's about ancient language does RE by any chance stand for "Regular Expressions"? logical lang for compiler compiling 02:10pm may be RE is regex, actually i don't remember. equivalent to flex now, right? I don't know flex, but I know about parsing http://wombat.doc.ic.ac.uk/foldoc/foldoc.cgi?query=refal flex is a LALR(1) parser, which is more expressive than regex. http://www.ida.liu.se/labs/pelab/members/vaden/rigal/langdesc.html TMF: do you know about Haskell, or any other functional language? that's for RIGAL, very close, but newer lang no hcf: can you make sure refal and regal get added to Review? rigal, whatever:) Tril: just tell or email ultima TMF: functional languages like LISP, ML, Scheme, Haskell, and lots more, are all based on the lambda calculus yes, I've seen from the introduction I you found If you want people to use TML, you will have to explain why it is better than a functional language. or is TML just a temporary thing, to help make TOOL? I'm not sure how to compare them nono, TML _is_ the meta translator. well, I would start by learning a functional language and seeing how easy it is to write programs in it versus TML. hcf: can you find a link to the actual refal lang, since foldoc only describes it? Tril: perhaps sure there are languages simpler to write code, but they all compromise in some way Tril: u want refal, rigal. anything else? exactly. that is why we need one metalanguage to unify them all and I believe, bizzarr as it is, TML is that language. hcf: not right now! thanks :) 02:20pm I don't know any other language that could implement TOOL as efficiently as TML. It just works. tmf, well, what do you intend on implementing in TML first? or tool, whichver well in TML i'll write TOOL, and then I'll have TOOL optionally translate to C or asm or whatever, and then write TML interpreter in TOOL with the option to dynamically link, compile and handle machinecode object. At that stage, TML/TOOL would be independent from everything else - an empty, reflective OS. what about persistence? Then I will need drivers for different hardware and a good 3d engine! persistence is easy ( I think ) because things like file access and networks and ... are transparent. that's the definition of persistence, but how will you do it? If a object is evaluating it will be in ram, obviously. If an object is not evaluating, it will be where best kept to ecomomize access and storage And then: objects are _never_ evaluating, just _copies_. Then it's just a lazy updating of the object on disk, whenever it is changed. or memory is low. 02:30pm ok let's talk about evaluation.. what order is it done in? (in TML) left to right and from inner context to outer context, because the out context may get to evaluate some output from an inne context how do I undefine a macro why would you want to? you mean I have to exit the scope? argh. why? as a language designer, you can't ask "why would you want to.", if the language is supposed to be a universal metalanguage. The user has to be able to do everything! you could redefine it if you like you cannot even undefine things in reallity! for example, from now on 'hi' means, ok? then what you meant to ask was, "What does it mean to undefine something?" the answer is, make it the way it was before I defined it. causing an error when I try to use it. ok: [ macro _error_this_is_an_undefined_macro ] :) does that work? no :) do you want my shell script if a macro is "the same" as its definition, then 'macro' is undefined, because so is _error_.... if a macro is the same as its dfefinition it gets in an endless loop we already did that not _the_same_ but it has the same effect on its context just mailed you thescript :) great! well, no, it didnt work what happened 02:40pm OK it was sent correctly this time :) but, true, you cannot undo a redefinition of a macro. That would be a dangorous thing - like a timemachine. does TOOL have inheritance? i assume that is what 'subclass' is? yes, multipple. But the 'is' method is not implemented yet. that's funny. because the 'is' method is the only primitive in my object system :) :D what about 'has'? you make a subclass of a function call template, by adding the attribute of being an actual function call ωνω Anto [aresbeut@mulhouse8-101.club-internet.fr] has joined #TUNES ωνω Anto [aresbeut@mulhouse8-101.club-internet.fr] has left #TUNES [] then you make that glob a subclass of the evaluator, which adds the attribute "evaluating" pretty weird, huh? intensional attributes are not the same thing as extensional ones.. wait a minute, looking at what 'has' is in your model in my model, attributes are just a particular case of subclasses. Does that explain it? I can try to imagine how, but I'm not sure well, a subclass is an object with an 'is-a' relationship with its superclass, right? yes 02:50pm Then, if I am blue (have the attribute color=blue), I am in the class of objects that are blue in color. ok, I see I hope so, beacuse we have to go but I'll have to be going now before security kicks me out talk to you later! It's been a fun discussion! bye yep :) ωνω SignOff TMF: #TUNES (Leaving) ωνω SignOff Tril: #TUNES (save ram) 03:00pm ωνω SignOff Yery: #TUNES (ircII2.3.17+10 was here!) ωνω Beholder [beholder@ppp-160.m2-3.sub.ican.net] has joined #tunes Beholder! ωνω SignOff Beholder: #TUNES (Read error to Beholder[ppp-160.m2-3.sub.ican.net]: No route to host) 03:40pm ωνω Fare [rideaufr@esmeralda.enst.fr] has joined #Tunes hoy Fare hoy! 04:30pm just passing by. Bye! ωνω SignOff Fare: #TUNES (Back to the Tunes OS project -- /whowas Fare) 04:40pm ωνω _QZ [brand@p0wer.qzx.com] has joined #tunes hoy _QZ btw, ur finger _QZ thing is seemingly broke 04:50pm <_QZ> eh? <_QZ> finger on p0wer is disabled http://www.qzx.com/about/ calls /cgi-bin/cgiwrap/qz/finger_qz.cgi which isnt found 05:00pm <_QZ> oh <_QZ> ok it works now 05:10pm <_QZ> have u tried php3? php, the perl html thing, nope <_QZ> uhh <_QZ> no <_QZ> its a dynamic scripting for web pages yeah, same thing and nope <_QZ> aros has had it installed for years and i have always wanted to try it out but never did <_QZ> i started learning last night and now im gonna convert all my pages to it <_QZ> it is also what tril wants for tunes okay, _QZ. abi: no, it is okay, hcf. <_QZ> u can dynamically create buttons with it oh boy! buttons <_QZ> u just make a button graphic and php3 will copy text onto the button graphic and send it to the browser yay! gfx <_QZ> u can a template for all the pages and have it overlay the text onto each page <_QZ> so u can change the template and all yer pages change at once <_QZ> plus it has sql support <_QZ> so tunes can put all its glossaries and reviews into an sql dbase and have php3 build the pages review is already in a sql db glossary isnt tho afaik <_QZ> and with php3 u can detect the browser and change templates <_QZ> so when some1 with lynx goes to the site it will load an ugly text template as if u couldnt already detect browsers <_QZ> and if ns/ie goes then it can load lots fo gfx <_QZ> but with php3 u can change the template just cuz someone is using ns/ie doesnt mean they want lots o' gfx 05:20pm _QZ: hav u checked out eperl? abi: php is at http://www.php.net/ abi: eperl is at http://www.engelschall.com/sw/eperl/ <_QZ> php3 is at http://www.php3.com <_QZ> and no u shouldnt put 'lots' of gfx but a few makes the page look nice <_QZ> i dont use lots of gfx on qzx.com <_QZ> but my pages look nice cuz i know how much is needed they would look fine w/o all the alt tags too :P (thus no img tags at all) ωνω Tril [dem@hh112ws12.hh112lab.wwu.edu] has joined #TUNES 05:30pm _QZ: read http://x5.dejanews.com/getdoc.xp?AN=338452936&CONTEXT=917486462.306970635&hitnum=6 Tril: rigal @ http://www.ida.liu.se/~vaden/rigal/index.html REFAL @ http://pespmc1.vub.ac.be/:/TURCBIO.html, http://pespmc1.vub.ac.be/:/TURCHIN.html, http://www.engr.ccny.cuny.edu/CSCWWW/faculty/turchin.html, http://www.acm.org/pubs/citations/journals/toplas/1986-8-3/p292-turchin/, ftp://ftp.botik.ru/rented/rfp/refal-plus/fromAbram/Linux/refal-linux.tar.gz <_QZ> and how is that a security hole it is a security hole in that any variable in your script can be set by the user the risk depends on what script <_QZ> all variables will be t control the output the user sees 05:40pm then you might not care, but if the script had any variable like a program to run they could run any program, or arguments to a program they could try to overflow it. 05:50pm !spice_huh:*! Need to reboot Jordan <_QZ> any1 know what usermode +f is? no, but someone in #openprojects had better know <_QZ> the server has started setting it on me ωνω SignOff hcf: #TUNES (Leaving) 06:20pm if you find out let me know 06:30pm ωνω MeRWiN [merwin@bespin.ml.org] has joined #tunes 'lo <_QZ> u the guy? yah he is i be da guy :) <_QZ> u will probably start at $40k beats my $8/hr :) qz: where do you get the 40k figure? <_QZ> if u are lucky and find a dumb company u might get 75k+, but u will be fired within the month ωνω Tril has changed the topic on channel #TUNES to: NT certs <_QZ> i have seen lots of ppl with those certs get jobs while others (with 1000 times more knowledge then them) dont yup...i've got experience...only problem is that i'm roundabouts 19 years old :) <_QZ> several months, and several fired mcse's later the company hires the guy without the mcse <_QZ> if u got nothing better to do with yer money then get the mcse <_QZ> but i would suggest u just try to get the job without the cert qz: name another certification that you can get that's highly thought of. and don't say novell :) <_QZ> ieee <_QZ> :) ieee? <_QZ> I triple E i knwo <_QZ> the highest what kind of cert is it for though... merwin do you still work at that spie place <_QZ> u will start at 100k+ and be able to get any job u want Tril: nope...internship ended...only work at the college now <_QZ> the test is like $2000 and no one has passed it the first time 06:40pm they did stuff like standards committees sort of right? <_QZ> plus the test is only offered in a few places Tril: yeah <_QZ> so u gotta fly _QZ: is the seattle area one of 'em? :) <_QZ> nope <_QZ> there is one in CA <_QZ> cant remember which city in any case, ieee is out of the question for me...i don't know enough :) that's what MCSE is for...force me to learn NT, tcpip, etc. gotta run ωνω SignOff MeRWiN: #TUNES (MeRWiN has no reason) <_QZ> force?? <_QZ> my god what some people will do for money? <_QZ> when u know nothing and then get yer mcse u still know nothing or think they will get money for. <_QZ> this stupid consulting company finally broke down today <_QZ> they called me up, "ok we give up, yer machine has been blue screening up the ass on us. we give up please tell us what to do" what were they supposed to be doing? <_QZ> and i was showing my boss my celeron 463 and how much faster it was then the p2-333 <_QZ> and he said fine, tell them to buy one of these for u and get rid of that piece <_QZ> they are suppose to handle any computer problems <_QZ> for all the machines <_QZ> the purchased and installed them is this the company that does computer service for the company you work? <_QZ> ya <_QZ> they handle the frame relay, network, workstations, and all the proprietary shit and what did you tell them <_QZ> call micron <_QZ> :) <_QZ> i wasnt gonna sell em a machine so they could turn around and sell it back to us so the reason they were ordering a 463 is because the current one was crashing? 06:50pm <_QZ> cuz then they would expect me to fix it when soemthing went wrong <_QZ> its a hardware problem <_QZ> but my boss was so impressed by how much faster my 463 was over the 333 that he said i could have them buy me a p2-450 <_QZ> they dont do overclocking <_QZ> but hey if they wanna spend $600 for a p2-450 then fine <_QZ> ill just stick my hand in the case and jumper it to 504 07:00pm well your bosses logic makes no sense. <_QZ> the p2-333 box was fucked so we had to buy a new box <_QZ> normally they would have bought another p2-333 box <_QZ> but he decided to upgrade cuz my 463 was sooo much faster <_QZ> i also had 192meg in the machine at the time so he said to get 192meg too <_QZ> the p2-333 had 128meg <_QZ> the extra 64meg had nothing to do with the speed, but who the hell am i to complain <_QZ> :) <_QZ> er, actually its a she <_QZ> the bitch that no one knows what her job title is (not my boss) <_QZ> all i know is that she dials into our machines with pc anywhere and does absolutely nothing <_QZ> i kept setting my modem to only connect at 2400 baud and boy did it piss her off ωνω AlonzoTG [Alonzo@client-151-200-125-96.bellatlantic.net] has joined #tunes :| :? *sob* I can't dezine softwarez 07:10pm what? i think i have some leads on ipc mechanism. :O you can't define "software"? my os oh, you can't design. why not? cu; im lame :( cuz π Tril/#tunes waits for atg to ask a specific question now my os is mutating into another unix :( i'll get u that question <_QZ> AlonzoTG: my answer is yes, if yer question is if we think yer gay that was uncalled for <_QZ> does the truth hurt? save your carpels for something productive why do i come here when I have to put up with you? aloonzo you are someimes hard to put up with yourself 07:20pm I try not to be :| do you have a question now or are you going to think of one for a while im thinking ok i have to leave in 10 minues here it is: <_QZ> type faster inter module communication is accomplished by threads of the parent module... dvorak remember? assynchronously... threads of any given module use a synchronous method... i bet i can type dvorak faster than you <_QZ> Tril: ya no kidding what methods should i provide? (I did use it for a couple weeks) what do you mean threads this is week 1 for me... <_QZ> synchronous means the client thread blocks while the server thread executes thread = one progrom that shares all the features of all other threads in same module... <_QZ> if u are using sync within the same process then it would be faster to run the server code within the clients thread 07:30pm privlages that is ok qz looks like you can handle this one (I dont know much about threads) so if you would please talk to alonzo for me, i have to go. hmm i think i got it reversed ωνω SignOff Tril: #TUNES (Read error to Tril[hh112ws12.hh112lab.wwu.edu]: EOF from client) :| <_QZ> async means the server thread will run in parallel to the client thread yes thats right the parent module blocks its children during ipc.... <_QZ> only for sync calls then the threads will need to salve the concurrancy problems :| solve ok It is beginning to come into focus.. it's been years since i last worked on the ipc :P 07:40pm realmode is best for os development because it lets you focus on the problems rather than worry about the solutions... <_QZ> whatever think about it; its true! <_QZ> whatever take memory allocation: in Real mode you allocate x paragraphs.. en P mode u waste your time figuring how to set up descriptor tables!!! :) real mode is much better for lamers like me! :) <_QZ> excuse me? <_QZ> u arent suppose to use segments in pmode see! thats the problem!!! <_QZ> u setup 4 segment descriptors and use flat mode paging <_QZ> yer just brain dead too much crap!!! what the fuck are segment regs for anyway??? <_QZ> compatibility with rmode shit okay; sign me up for a brain transplant: i wanna be smart just like you! in the mean time kindly shut the fuck up 07:50pm <_QZ> blow me asshole hmpf paging is way beyond me anyway :((( <_QZ> most shit in life is beyond u om 08:00pm <_QZ> yes!!! <_QZ> i have made my first dynamically generated web page kule <_QZ> http://www.qzx.com/hello.php3 o'm not into thatv <_QZ> that single page creates either a text only page for lynx or a graphical page for all other browsers <_QZ> now i just need to find out the names of all text only browsers 08:20pm aah dos, what an inspiration :) om aciually much of my prototype is modled after dos :) 08:30pm sigh :) be happy! ωνω ThrustMonkey [kenpo@ip-69-152.obt.primenet.com] has joined #TUNES ωνω ThrustMonkey [kenpo@ip-69-152.obt.primenet.com] has left #TUNES [] bye! ωνω SignOff AlonzoTG: #TUNES (Have Nice Day :)) 08:40pm ωνω tcn [tcn@cci-209150250087.clarityconnect.net] has joined #tunes abi, tml? tml is the complete meta layer, while TOOL is the consistent object layer abi, tool? tool is a generic compiler, which currently compiles to TML code, but it may well be made to write C code, for example abi, where is tool? i heard tool was a generic compiler, which currently compiles to TML code, but it may well be made to write C code, for example ωνω SignOff tcn: #TUNES (tcn has no reason) 08:50pm !king.openprojects.net!! Remote CONNECT zsoldos.openprojects.net 8004 from lilo !lilo:*! well, zsoldos is chock full of connect problems and very unpredictable....king seems like a good choice, but I don't think anything will keep it connected !lilo:*! we'll try it a bit longer and then retire it for the evening.....meanwhile, lucas has been stable so it might be time to reintroduce it !lilo:*! Hint: to avoid seeing these /wall comments, /umode -w ωνω Tril [dem@bespin.ml.org] has joined #TUNES <_QZ> hey ωνω Tril has changed the topic on channel #TUNES to: http://tunes.org/ -- this page sucks <_QZ> http://www.qzx.com/hello.php3 <_QZ> its a php3 version of my main page <_QZ> it can output a text only page for lynx or a gfx page for gfx browsers <_QZ> i need to find out the names of other text only browsers so it will send them the text page too how about netcat browser <_QZ> u have that? I don't use it, but yes want me to? <_QZ> hold on <_QZ> goto http://www.qzx.com/test.php3 netcat is a program to connect directly to a port <_QZ> uhh there is a script that lets you use it for web browsing (it runs the page through less) <_QZ> try it anyway :) 09:50pm <_QZ> shit i gotta crash <_QZ> cya tomorrow ωνω SignOff _QZ: #TUNES (BRiX [http://www.qzx.com/brix] :: sleep) ωνω SignOff Tril: #TUNES (Tril has no reason) 10:00pm [msg(TUNES)] newlog 1999.0128 IRC log ended Thu Jan 28 00:00:00 1999