< 1285027204 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unfortunately, that makes it more likely to pass than if a politician proposed it < 1285027262 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Thankfully, it was proposed by the FCC. < 1285027283 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Who can tell them to go suck a dick without fear of repercussion (because loud morons won't complain about it). < 1285027291 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Erm. Proposed *to* the FCC. < 1285028157 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I need a DHT expert. < 1285028159 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :You, pikhq! Be a DHT expert. < 1285028359 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ha-hem. < 1285028369 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : nooga: sane style or stupid style? < 1285028369 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : stupid < 1285028372 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i mean dfa/nfa etc < 1285028375 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :or crappy < 1285028488 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION decides that the only way to get aliseOS done is to split it into tiny, tiny little research experiments of different components < 1285028616 0 :Leonidas!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1285028698 0 :Leonidas!~Leonidas@unaffiliated/leonidas JOIN :#esoteric < 1285028777 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: This is probably the best way of getting any large project done. < 1285028802 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Except at the end I can't combine them all, since they'll be custom-built. Of course, this doesn't matter -- there is no end! < 1285028815 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Never has there been a more NIH and more slow-paced project than aliseOS. < 1285028833 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Even Feather has the beginnings of an implementation and a preliminary syntax. < 1285028917 0 :Mathnerd314!unknown@unknown.invalid QUIT :Disconnected by services < 1285028934 0 :Mathnerd314_!~mathnerd3@dsl.6.28.53.206.cos.dyn.pcisys.net JOIN :#esoteric < 1285028947 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Anyway, you're Consultant #1. I have decided to start numbering my consultants, as I have discovered I am too ridiculous to name them. < 1285028970 0 :Mathnerd314_!unknown@unknown.invalid NICK :Mathnerd314 < 1285029120 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 252 seconds < 1285029728 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if it is physically possible for anyone to read everything Mencius Moldbug has written. < 1285030078 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285030491 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, I imagine Mencius Mlodbug did < 1285030502 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*Moldbug < 1285030965 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i think he multitasks < 1285030973 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :making toast, tap on the keyboard a little < 1285031418 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1285031797 0 :augur!~augur@208-59-167-26.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285032257 0 :Sgeo!~ubuntu@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1285032334 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Are logfiles compatible across different versions of ddrescue? < 1285032344 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm thinking of using Parted Magic's ddrescue to finish it < 1285032362 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Also: If I use my old computer, there is a risk that, if there's a blackout, it will stop < 1285032370 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :The logfile will still be intact, right? < 1285032570 0 :ais523!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285032692 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if alise is awake and if so, if alise is simply refusing to talk about this issue < 1285032773 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 272 seconds < 1285032822 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i didn't notice < 1285033117 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :My current plan: Wait to get an external HD mount. Set up old computer to do the ddrescue < 1285033124 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Be patient < 1285033315 0 :trinithis!unknown@unknown.invalid QUIT :Quit: Leaving < 1285033335 0 :trinithis!~trinithis@99-7-56-119.lightspeed.davlca.sbcglobal.net JOIN :#esoteric < 1285034221 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :goodnight < 1285034222 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :bye < 1285034227 0 :alise!unknown@unknown.invalid QUIT :Quit: Leaving < 1285034238 0 :alise!~alise@91.105.70.176 JOIN :#esoteric < 1285034243 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: although one last thing. < 1285034253 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :think hard about whether the things on that drive truly make you happier. < 1285034257 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :bye < 1285034258 0 :alise!unknown@unknown.invalid QUIT :Client Quit < 1285034404 0 :augur!~augur@208-58-6-161.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285034761 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :...? < 1285035550 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :My passwords. < 1285035552 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :My favorites < 1285035565 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Chat logd < 1285035567 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :*chat logs < 1285036071 0 :lament!~lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1285036738 0 :bsmntbombdood!~gavin@174-16-83-173.hlrn.qwest.net JOIN :#esoteric < 1285042342 0 :myndzi!unknown@unknown.invalid PRIVMSG #esoteric ::-/ < 1285043363 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Current battle plan: Help rebuild my dad's 2002 computer. Do not accidentally fry motherboard. Use computer to finish the ddrescue < 1285043531 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :alise, I'm forcibly undeferring you < 1285043876 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285043890 0 :augur!~augur@208-58-6-161.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285044112 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285044147 0 :augur!~augur@208-58-6-161.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285044642 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285044663 0 :augur!~augur@208-58-6-161.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285045357 0 :sshc!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1285045403 0 :sshc!~sshc@unaffiliated/sshc JOIN :#esoteric < 1285046755 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :My busy message on my IM accounts: "Do Sgeos dream of electric esolangs?" < 1285047032 0 :wareya_!~wareya@cpe-74-70-142-220.nycap.res.rr.com JOIN :#esoteric < 1285047219 0 :wareya!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1285048144 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285048157 0 :augur!~augur@208-58-6-161.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285048850 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285048859 0 :augur!~augur@208-58-6-161.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285049387 0 :calamari!~calamari@ip70-162-184-205.ph.ph.cox.net JOIN :#esoteric < 1285050024 0 :calamari!unknown@unknown.invalid QUIT :Quit: Leaving < 1285052088 0 :webquint!8fd7722c@gateway/web/freenode/ip.143.215.114.44 JOIN :#esoteric < 1285052125 0 :webquint!unknown@unknown.invalid PRIVMSG #esoteric :someone suggest me a language on the wiki that I haven't looked at yet and isn't the same old thing. < 1285052410 0 :tombom!~tombom@wikipedia/Tombomp JOIN :#esoteric < 1285052668 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :webquint: Glass? < 1285052701 0 :webquint!unknown@unknown.invalid PRIVMSG #esoteric :"developed by Gregor Richards" :D < 1285052714 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :OK, I could be biased :P < 1285052762 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :At least I didn't say "Glass, 2L, ORK and FYB!" < 1285052883 0 :webquint!unknown@unknown.invalid PRIVMSG #esoteric :well, I was just looking at the *L's so that would be impertinent anyway < 1285052939 0 :webquint!unknown@unknown.invalid PRIVMSG #esoteric :what's the most unique thing about glass? what's the thing i never saw before? or is it just the way things i've seen before have been putted together? < 1285053158 0 :webquint!unknown@unknown.invalid PRIVMSG #esoteric :it hasn't been long since i looked at fyb either < 1285053539 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :anyone familiar enough with scheme's call/cc to answer some questions? < 1285053550 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :hopefully everybody in the channel < 1285053553 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1285053592 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :lament: assumie (define (f return) (return 2) 3) < 1285053600 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :(display (call/cc f)) ; displays 2 < 1285053603 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :from wikipedia < 1285053702 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i got lost on (define (f return) (return 2) 3) < 1285053757 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :is that valid syntax? < 1285053773 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :is that an implicit begin block? < 1285053962 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1285053979 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :nooo my favourite gay person is gone < 1285054020 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reappears. < 1285054048 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :webquint: Glass is OO, which is rare for esolangs (although certainly not rare for real languages). Glass is stack-based, which is rare both for OO and for real languages. < 1285054102 0 :augur!~augur@208-58-6-161.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285054175 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lament: There, he's back. < 1285054182 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lament: Celebrate! < 1285054185 0 :webquint!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: ORK amused me more. < 1285054187 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :yay celibation < 1285054205 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lament: That's nothing to yay about :P < 1285054208 0 :webquint!unknown@unknown.invalid PRIVMSG #esoteric :But not as much as Schrodilang. That one wins the night for me. < 1285054220 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1285054223 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :my client is all wonky < 1285054281 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :augur: (define (f return) (return 2) 3) < 1285054286 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :is that an implicit begin block? < 1285054290 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :lament: http://pastebin.org/1016674 < 1285054295 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :from similar askings in #haskell < 1285054368 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :uh < 1285054381 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :your "explanation" is more like an attempt to make things more confusing than they are < 1285054390 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's not that it's wrong < 1285054397 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :lament: maybe. its very clear and sensible to me :) < 1285054407 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :but i can't understand it despite knowing what call/cc does < 1285054423 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok, can you explain then how call/cc works, implementation-ish-wise? < 1285054451 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :(call/cc f) calls f with the current continuation, right? < 1285054461 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :just like the name says < 1285054462 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :sure, but i dont know what the current continuation is < 1285054470 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :ok then that's the important bit < 1285054472 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :im trying to understand how thats built up < 1285054480 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :continuations are still a concept in absence of call/cc < 1285054497 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :a continuation is the rest of your program < 1285054503 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok first let me just try this right < 1285054523 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's easiest to understand them in an imperative language without any state < 1285054525 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :using f from before < 1285054536 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :just a bunch of statements < 1285054539 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :print "hi" < 1285054540 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :(+ 1 (* 2 (call/cc f))) == ??? < 1285054541 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :print "blah" < 1285054549 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :then the continuation is literally the rest of your program < 1285054566 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :when you're on the line print "hi", your continuation is just print "blah" < 1285054593 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :but because scheme has expressions and not statements, it gets slightly more complicated < 1285054632 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :the continuation of (call/cc f) in (+ 1 (* 2 (call/cc f))) is (+ 1 (* 2 ...)) < 1285054637 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's the unevaluated bit < 1285054642 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok but < 1285054661 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and normally ... is replaced by whatever (call/cc f) is evaluated to right? < 1285054663 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so its the highest possible thing being evaluated at any given moment? < 1285054671 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :or the smallest? < 1285054674 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1285054675 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's the rest of your program < 1285054679 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285054691 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so its genuinely program-scope < 1285054702 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285054711 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285054718 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so then what happens is... < 1285054721 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :now what call/cc does is < 1285054733 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it allows you to pass anything to the continuation < 1285054734 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you say (eval '(+ 1 (* 2 (call/cc f)))) ... < 1285054741 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :unwind this evaluation for me, if you can < 1285054752 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i said that conceptually the continuation is (+ 1 (* 2 ...)) < 1285054756 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :right < 1285054760 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :but specifically in scheme < 1285054778 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's a function that takes a parameter and places it in the ... < 1285054786 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :right < 1285054790 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :(lambda (x) (+ 1 (* 2 x))) < 1285054793 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :sure < 1285054810 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :so that's what f gets called with < 1285054826 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :right < 1285054827 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :except it's not just (lambda (x) (+ 1 (* 2 x))) < 1285054833 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's actually the outer expression < 1285054842 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :the outer expression? < 1285054852 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285054856 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :when it is evaluated < 1285054861 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it is the (+ 1 (* 2 (call/cc f))) that was evaluated < 1285054875 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :not some new lambda < 1285054919 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :in terms of control flow < 1285054921 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok, so .. what does that mean? how can it be the ... that was evaluated? < 1285054928 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you mean like in terms of environments or what? < 1285054931 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :what this means in terms of control flow < 1285054939 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :(define (f return) (return 2) 3) < 1285054947 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :(display (call/cc f)) < 1285054962 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :we call f with the current continuation which is (display ...) < 1285054963 0 :webquint!unknown@unknown.invalid QUIT :Quit: Page closed < 1285054982 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :we start executing f and have to evaluate (return 2) < 1285055017 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :return is the continuation < 1285055043 0 :calamari!~calamari@ip70-162-184-205.ph.ph.cox.net JOIN :#esoteric < 1285055044 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :when we call it control flow returns into (display ...) < 1285055054 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :the outer expression of your program < 1285055063 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and ... becomes 2 < 1285055087 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :evaluation of f abruptly terminates < 1285055096 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well hold up tho < 1285055097 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :we never actually finish evaluating it < 1285055103 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :because eval isnt just going to say aha call f! < 1285055107 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :3 never gets evaluated < 1285055118 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :call/cc calls f < 1285055140 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its going to say ok, '(display (call/cc f)) thats an application, so thats (apply (eval (car that)) (map eval (cdr that)) env) < 1285055142 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :etc etc < 1285055152 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :or whatever the interpreter is doing there < 1285055169 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :sure < 1285055185 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so unwind it from there if possible < 1285055220 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :(map eval (cdr that)) env) returns 2 < 1285055225 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :at the moment that return gets called < 1285055273 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but why is it going to return 2 < 1285055284 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i don't understand the question < 1285055291 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :itll just be (eval '((call/cc f))) < 1285055292 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :that's how call/cc works? < 1285055296 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285055303 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and? < 1285055307 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :call/cc is a magical function < 1285055310 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so whats going on with the stack and so forth < 1285055314 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well i KNOw its magical < 1285055318 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i want to UNDERSTAND the magic! < 1285055330 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :call/cc calls f < 1285055337 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and passes it the current continuation :( < 1285055347 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :the current continuation is a magical object < 1285055359 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :how does call/cc get it, by magic < 1285055361 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :lament: I'm not sure if this was answered yet, but (define (f return) (return 2) 3) = (define f (lambda (return) (return 2) 3)) and lambda's have "an implicit begin block" in the sense that you can put multiple expressions in, and it works like in a begin. I've seen at least some implementations (incl. my own) that actually translate multi-expression lambdas into single-begin-block lambdas for convenience. < 1285055372 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: thanks < 1285055386 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :augur: the current continuation really is magical < 1285055397 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it is created by magical means < 1285055405 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it encapsulates the state of the execution < 1285055411 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :so it pretty much has to be magical < 1285055419 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :you're useless :| < 1285055431 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :no that's how it works < 1285055445 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :call/cc does magic < 1285055452 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it collects all the state, stores it somewhere < 1285055457 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok sure < 1285055476 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so it starts evaling (+ 1 (* 2 (call/cc f))) < 1285055480 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :in such a way that it becomes possible to return to that moment of execution < 1285055483 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :builds up some call stacks or whatever < 1285055486 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :hits (call/cc f) < 1285055487 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :then what < 1285055505 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :call/cc is evaluated, does its magic < 1285055508 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :which involves < 1285055515 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :copying those call stacks somewhere < 1285055518 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :copying the envs < 1285055530 0 :tombom!unknown@unknown.invalid QUIT :Quit: Leaving < 1285055532 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and packaging this as a nice callable object, the current continuation < 1285055539 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285055555 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm probably going to confuse this even more, but it doesn't necessarily involve any copying, just additional references, if your stack is just a garbage-collected heap. < 1285055564 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: sure, thats fine < 1285055579 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so it packages it all up as a pseudoprocthingybopper called the current continuation < 1285055580 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :right < 1285055586 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285055600 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :then it calls (f that-current-continuation) < 1285055607 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :now for as long as the continuation object exist, you can effectively return to that moment in time < 1285055612 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :by calling the continuation < 1285055624 0 :calamari!unknown@unknown.invalid QUIT :Quit: Leaving < 1285055629 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :right ok < 1285055630 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :call stack and everything else gets restored < 1285055645 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and (call/cc f) itself returns the value that the continuation was called with < 1285055696 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's pretty awesome, you travel back in time but bring new information with you < 1285055703 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :you could win the lottery this way < 1285055838 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Can't resist pasting the full call/cc primitive code (5 lines) in my silly little scheme-course-programming-project implementation: < 1285055841 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : mov rax, rdx < 1285055841 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : mov rdx, rdi < 1285055841 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : shl rdx, 8 < 1285055841 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : mov dl, ITcont < 1285055841 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric : jmp apply < 1285055845 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's not very much magic at all. < 1285055873 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i meant magic in the sense of not being anything like scheme code < 1285055920 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :strange incantations in assembly don't have to be long to be powerful :) < 1285055941 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :lament: what would happen with (define (f return) (return 2) (return 3)) < 1285055960 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :augur: (return 3) never gets evaluated, just like 3 never got evaluated before < 1285055969 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :could it ever get evaluated < 1285055974 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :no < 1285055986 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :return returns < 1285055999 0 :clog!unknown@unknown.invalid QUIT :ended < 1285056000 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1285056036 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok, so its not a yield, its an actual return here < 1285056049 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :well the stack and everything else gets replaced < 1285056057 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :by the continuation inside return < 1285056071 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I'm sure you could sort-of do a pure Scheme call/cc implementation, with some pretty hairy macros to CPS everything else, after which call/cc is just (define (call/cc f k) (f k k)), assuming f gets turned into (define (f return k) (return 2) (k 3)). < 1285056144 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :ugh :) < 1285056222 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :augur: the next step on the path of enlightenment for you is to figure out how CPS compares with GOTOs < 1285056232 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: how hairy would the macros be? i mean, i presume you mean scheme macros, not some magic compiler macros, yeah? < 1285056259 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :scheme macros, pretty damn hairy < 1285056263 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ok. < 1285056272 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :so in theory maybe some non-scheme macro would work nicely then? < 1285056273 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :like < 1285056274 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :a macro like < 1285056281 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: and how would this help with envs < 1285056302 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :global variables < 1285056347 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :? < 1285056350 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric : /(.*)\(call/cc (.+)\).*/ => "(\2 (lambda (x) (\1 x)))" < 1285056363 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :that would literally rewrite the code < 1285056371 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :CPS conversion is a perfectly valid way to implement continuations, but I don't think I'd start doing it to Scheme before simplifying lets and such. < 1285056374 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :modulo unnecessary details < 1285056395 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :augur: call/cc doesn't rewrite the code it replaces the execution state < 1285056415 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :augur: do you know CPS? < 1285056429 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :lament: im saying hypothetically if you were implementing a transformation based approach < 1285056504 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :well again imagine your language was statements instead of expressions < 1285056515 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :1. foo < 1285056518 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :2. call/cc whatever < 1285056521 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :3. bar < 1285056524 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285056533 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :then the continuation is literally 3. bar < 1285056541 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :so you could shove that somewhere < 1285056544 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :right ok < 1285056553 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :er, 3. bar followed by 4. terminate < 1285056564 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :so you know when to terminate < 1285056588 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :you can do this in scheme, with CPS. < 1285056594 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :do you know CPS? < 1285056600 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :In full CPS, your simple (* (+ 1 2) 3) would turn into something like (lambda (k) (+ 1 2 (lambda (v1) (* v1 3 (lambda (v2) (k v2))))), modulo something to deal with +/* taking a variable amount of args. < 1285057058 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :lament: maybe. full explicit CPS im ok with, i think < 1285057071 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: also it was (+ 1 (* 2 ...)) not the other way :P < 1285057106 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :augur: full explicit CPS just makes continuations explicit, so there you go < 1285057115 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :they're the same continuations < 1285057129 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :lament: but im not trying to understand CPS, im trying to understand call/cc! < 1285057146 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :all call/cc does is call something with the current continuation < 1285057153 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :which is explicit with CPS and implicit otherwise < 1285057154 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :thats useless :P < 1285057295 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The community-scheme-wiki has two explanations of continuations; one with the usual "explain escape continuations first, then show you can jump back in, then give a coroutine-style example" and another for C programmers comparing with setjmp/longjmp: http://community.schemewiki.org/?call-with-current-continuation < 1285057467 0 :sftp!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1285057548 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(I'm not claiming either introduction is an especially good one.) < 1285057857 0 :atrapado!~ro@193.144.79.241 JOIN :#esoteric < 1285058071 0 :nooga!unknown@unknown.invalid QUIT :Ping timeout: 272 seconds < 1285061245 0 :lament!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds < 1285077833 0 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric < 1285078025 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1285078697 0 :ais523!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1285078939 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1285080361 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Hypothesis: all operating system ads are so obnoxious that the rage of people watching them could be used for power. Discuss. <-- I can't remember seeing an ad for an OS the last 5 years, but then I use adblock. Anyway I have no idea what they look like these days < 1285080395 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I'M A MAC < 1285080399 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :AND I'M A PC < 1285080415 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :http://membres.multimania.fr/bewulf/Apple/1180113117597.jpg < 1285080548 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :http://membres.multimania.fr/bewulf/Apple/1180111599456.jpg < 1285080550 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :heheheh < 1285080565 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :http://membres.multimania.fr/bewulf/Apple/pic_5580970011890947492.jpg < 1285080585 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : http://membres.multimania.fr/bewulf/Apple/1180111599456.jpg <-- not since a few years < 1285080635 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, the last one: is it about architectures or OSes? < 1285080666 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It is about humor. < 1285080678 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, the last one doesn't really work < 1285080692 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Maybe for NERDS < 1285080696 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I still like it :3 < 1285080735 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, like mac used to be RISC. PPC after all < 1285080759 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and most (all?) Dell's are x86 PCs. Plus iirc some x86 servers < 1285080774 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and um, GNU would be GNU/Hurd? < 1285080788 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :NEEEEEEEEEEERD < 1285080801 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :yeah the whole thing just doesn't work < 1285080802 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Also, SGI and Sun (Solaris I assume) and a few of the others are all UNIX. < 1285080808 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, indeed < 1285080811 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, I was getting to that < 1285080825 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I like BeOS though :P < 1285080839 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :GN/ERD < 1285080852 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I don't get the DEC one as a dinosaur... < 1285080869 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I don't get most of them < 1285080869 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: But ... a DEC machine ... is a dinosaur. < 1285080875 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Though the Amiga, I got :3 < 1285080881 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Are you unfamiliar with the expression "X is a dinosaur"? < 1285080905 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, no, but um, Amigas are also dinosaurs. So are probably the Amstrads and a few more < 1285080932 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, but DECs are dinosaurs in that they're still around being old. < 1285080940 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :The amiga joke is that there is a furry dude who is big on Amigas. < 1285080946 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Eric Schwartz < 1285080957 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh, I was wondering about that < 1285080978 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :anyway, so what? There are probably a ton more furries using windows < 1285080994 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but how many people are known for using amigas? < 1285081005 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, today? Zero < 1285081017 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, one. < 1285081029 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I never heard of him before < 1285081039 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I have :P < 1285081046 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :And he said "known", not "known to Vorpal" < 1285081051 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, if you're not a furry or amiga enthusiast, it is not too surprising. < 1285081059 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :He made this : http://www.youtube.com/watch?v=9mg6wrYCT9Q < 1285081083 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :He's famous enough to have a not-a-complete-stub wikipedia page, anyway -- http://en.wikipedia.org/wiki/Eric_W._Schwartz < 1285081124 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : He made this : http://www.youtube.com/watch?v=9mg6wrYCT9Q <-- wtf? < 1285081133 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I don't know! < 1285081140 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :is it a portal reference as well? < 1285081145 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Nah < 1285081149 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :He just liked the song < 1285081153 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :And made it fit to Amiga < 1285081157 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :said "aperature science" somewhere in there < 1285081166 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Yes, because the song is from Portal < 1285081169 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1285081170 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :never played portal to end < 1285081173 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :(Also "Black Mesa") < 1285081175 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I got bored quite quickly < 1285081176 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :You should < 1285081180 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Quickly? < 1285081188 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :The game takes like an afternoon to finish < 1285081207 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, well, about a bit after the last test room it got very boring < 1285081250 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :You should try to finish it. < 1285081252 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Great ending. < 1285081259 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :And not very long. < 1285081263 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, not my genre. Puzzle isn't just my style < 1285081274 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, nor the first person perspective < 1285081286 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :What is your style? < 1285081299 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, third person RPG or non-3D RPG < 1285081304 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh and rougelike < 1285081309 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Did you play Torment? < 1285081322 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, never even heard the name. < 1285081326 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, I love NWN1 btw < 1285081340 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Go play it < 1285081343 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :RIGHT NOOOOW < 1285081347 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, ? < 1285081350 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, I never heard of it < 1285081356 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Torment is widely considered the best RPG :3 < 1285081357 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Planescape: Torment. < 1285081361 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it is the good. < 1285081363 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah that is a bit more info < 1285081376 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, maybe next holiday, if it runs on low end systems < 1285081387 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :The game is 12 years old < 1285081389 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It should. < 1285081389 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It was released in '99. < 1285081392 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah no problem then < 1285081398 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :PROTIP < 1285081402 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Buy the DVD version. < 1285081403 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :wine or what? < 1285081411 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :CD version is very hard to run on modern systems < 1285081412 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :(I'm not going to install windows) < 1285081426 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Wine it is, I guess < 1285081428 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It hasn't always been very Wine-friendly in all Torment/Wine version pairs, but it should be doable. < 1285081446 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :well, then I might just as well skip it < 1285081451 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, the DVD version runs fine on modern systems, so I guess it should run < 1285081474 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, my cpu is from 2006 < 1285081482 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, or was it 2004? < 1285081491 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :early 64-bit sempron anywayt < 1285081492 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :anyway* < 1285081504 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It is not a very demanding game < 1285081511 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, so why would a dvd version be better < 1285081515 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Er, well, the official system requirements call for "200MHz CPU w/ MMX, 32MB RAM"; I really don't think that should be a problem. < 1285081517 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It had good graphics for the era, but well, that was 99. < 1285081522 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and um, I don't have any money to spend on it < 1285081532 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :The CD version was made for windows 98. < 1285081536 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :And old computers < 1285081539 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm okay < 1285081547 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It fucks up a lot on recent video cards < 1285081557 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :So they rereleased it recently as a DVD < 1285081560 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Also you can < 1285081561 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and what made the newer version want a DVD? < 1285081562 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :PIRATE IT < 1285081576 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I mean, does it take more space? < 1285081577 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Because nowadays nobody uses CDs anymore for games < 1285081593 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Also IIRC the original came on 2 CDs < 1285081598 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Or 4 for one version < 1285081621 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :"It takes place in Planescape, an Advanced Dungeons & Dragons (AD&D) fantasy campaign setting. The game's engine is a modified version of the Infinity Engine, which was also used for BioWare's Baldur's Gate, a previous AD&D game set in the Forgotten Realms." <--- okay *that* looks promising < 1285081631 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can probably play Torment with GemRB (a portable open-source Infinity Engine replacement) some day, but not with the current beta, which only does BG1/BG2/Icewind Dale. < 1285081632 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1285081639 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm I forgot, did NWN1 use that engine too? < 1285081639 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It is very story-oriented < 1285081646 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :No, NWN went with 3D. < 1285081654 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, good, but something to save for when I don't have lots of deadlines looming ahead < 1285081661 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :k < 1285081664 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, oh so this is isometric? < 1285081670 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1285081674 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apparently, the amount of text in Planescape: Torment's dialog trees is about the same amount of text as is found in one volume of the Encyclopedia Britannica < 1285081679 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Also, if you want another good RPG : Arcanum < 1285081683 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, ever played any game from the avernum series? < 1285081686 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, you can complete the entire game with only two combats < 1285081692 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't ring a bell < 1285081694 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, a mix of RPG/adventure < 1285081700 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Torment is I think widely considered best, or at least most interesting, of the Infinity Engine games. < 1285081704 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, probably only well known on classic mac os < 1285081711 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, spiderwebsoftware < 1285081716 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :HUGE gameworld < 1285081718 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :isometric < 1285081731 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Huge gameworld isn't necessarily a good thing. < 1285081736 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Wasn't that the continuation of Exile stuff? < 1285081739 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, it is for avernum < 1285081741 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, so it was < 1285081742 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Arena was like the size of Britain < 1285081749 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :But most of it was randomly generated < 1285081750 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, remake and continuation < 1285081757 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, not much random in avernum < 1285081778 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :avernum 2 is on the top 3 of RPG list of all time for me < 1285081789 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :runs well in sheepshaver under OS 9 < 1285081807 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :avernum 3 sadly doesn't work in sheepshaver, works fine on real classic mac though < 1285081815 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I played Exile.. I think it was number 2, back then; I have good memories about that, although I don't quite recall much about the game itself. < 1285081859 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I found exile a bit unbalanced and exile 1 had terrible keyboard controls... the avernum series remake of 1/2/3 were a lot more balanced a better than the original exile games < 1285081878 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :s/a better/and better/ < 1285081900 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :http://tvtropes.org/pmwiki/pmwiki.php/Main/PlanescapeTorment is a nice "four paragraphs and a line" introduction to Torment. < 1285081917 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, and isometric is a lot nicer than a weird mix of top-down/sideways/whatever-works < 1285081918 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, sorry, I guess a tvtropes link is a bit of a netiquette violation. < 1285081960 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :now bbl < 1285081994 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I seem to recall there being some Torment references sneakily sneaked into NWN 1 or 2. < 1285082011 0 :cpressey!~CPressey@173-9-215-173-Illinois.hfc.comcastbusiness.net JOIN :#esoteric < 1285082021 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe the Mask of the Betrayer extension thing. < 1285082089 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal < 1285082093 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Did you at least play < 1285082095 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :MORROWING < 1285082098 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :D < 1285082154 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think we have had a talk about Morrowind here before. < 1285082167 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It wasn't something he played, if I recall correctly. < 1285082190 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, back for a sec, was the dvd release on one? < 1285082194 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, not familiar. < 1285082209 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Morrowind is the one that came before Oblivion. < 1285082224 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Which DVD release? < 1285082230 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, planescape < 1285082263 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I would sure guess so. I don't quite recall how many CDs the CD version had, and I haven't had the DVD one ever. < 1285082265 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Morrowind is pretty good. < 1285082265 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :At least officially. < 1285082272 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Original settings, good story < 1285082288 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I bought the DVDs a few months ago < 1285082291 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Runs smoothly < 1285082299 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Unlike those lousy CD versions < 1285082304 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Morrowind was fun-ish, but it's quite different in gameplay-style from something like BG and friends. < 1285082305 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :They choked on my mighty cock < 1285082308 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I mean video card < 1285082314 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1285082318 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Still, pretty good. < 1285082336 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It was nice to see an RPG that wasn't medieval England. < 1285082352 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Much like Planescape and Arcanum by the way :3 < 1285082353 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, lets say: I'm unable to find a dvd one. < 1285082357 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :also wtf is .nrg < 1285082364 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I SEE NOTHING BAD WITH TVTROPES LINKS. ALSO, MWAHAHAHA < 1285082364 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's a disc image. < 1285082372 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, what can open it... < 1285082377 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :ENERGY < 1285082388 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal : On linux, no idea < 1285082392 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: There was some sort of a converter; it's from the Nero tool. < 1285082393 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :hello sweethearts < 1285082403 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Try finding a virtual DVD player < 1285082414 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"nrg2iso" is in Ubuntu's repo, at least. < 1285082430 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And "iat". < 1285082451 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285082456 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: hello < 1285082458 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :("BIN, MDF, PDI, CDI, NRG, and B5I, -- into ISO-9660.") < 1285082462 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, timeout on tracker -_- < 1285082466 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: you have been marked as being away < 1285082471 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: where have you been < 1285082482 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :By the way < 1285082489 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :If you try Planescape < 1285082490 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Protip < 1285082498 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Invest heavily in intellectual stats. < 1285082501 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It pays off. < 1285082518 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1285082536 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, it's not a very hack-and-slash game. < 1285082539 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, I'm, um, acquiring it now, won't play it until later though < 1285082554 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, nor is NWN < 1285082561 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(And some of the interesting dialogue options have stats checks, as can be expected.) < 1285082566 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :well I guess it might be if playing fighter < 1285082577 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :not as rouge or any spell caster though < 1285082591 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, you can be a fighter < 1285082593 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: NWN is in the sense of lots of combat < 1285082597 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Just be a philosophing fighter. < 1285082614 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :As said, you don't need to do a lot of combat, be it physical or magic < 1285082614 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just because you're fireballing things rather than stabbing them doesn't prevent it being hack-and-slash < 1285082622 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Planescape: Torment is... different < 1285082634 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well... with good stats in hiding related stuff you can use different tactics quite often < 1285082635 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, you can play it as a hack and slash < 1285082639 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :But it is rather boring < 1285082655 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Although there are very hack-and-slashy parts in the game. < 1285082664 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: are you using a henchman? they normally spoil any attempt to stealth through the game < 1285082679 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although admittedly, the NWN 1 speedrun does pretty much all of chapter 1 via invisibility potions < 1285082714 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I'm aware, and I try to avoid henchman sometimes, though, hiding tactics doesn't work for all subquests, so often a mix of leaving henchmen for some parts and using them for other < 1285082716 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Like fucking Baator < 1285082721 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Baator was a nightmare < 1285082726 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Though it was supposed to be < 1285082742 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :MOUNDS OF SKULLS < 1285082980 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : oerjan: you have been marked as being away <-- erm that's a technical term in irc, and as far as i know hasn't been true of me in a while < 1285083009 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, technically it's just a convention that's almost universally honoured, IIRC < 1285083021 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's not in the main IRC standard, it's in one of the supplements I think < 1285083036 0 :ais523!unknown@unknown.invalid QUIT :Read error: Connection reset by peer < 1285083120 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1285083263 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cheater: in _other_ news which may be relevant to my absense, first the new nvg server that they set up to replace the one that died itself died, temporarily, on friday it may have been. it got back online sunday evening. monday afternoon the neigbors managed to dig through our phone cable (again). < 1285083461 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, it's an actual command < 1285083474 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: yes < 1285083518 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"With the AWAY message, clients can set an automatic reply string for any PRIVMSG commands directed at them (not to a channel they are on). The automatic reply is sent by the server to client sending the PRIVMSG command." (RFC1459) < 1285083520 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and i rarely use it anyway < 1285083535 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I have auto-away set up nowadays < 1285083654 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I have as XLock.startCmd: a Python script to tell X-Chat (via DBus) to set an away message; just to be different, you see. (In fact, I think I'll actually go away now.) < 1285083669 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, "again"? < 1285083686 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, you think that since it would cost quite a bit for them to have it repaired, they would learn to avoid it < 1285083686 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: happened in the spring as well < 1285083730 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well this time it may not have been them personally, there's been some major digging all throughout the neighborhood < 1285083737 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285083750 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but it was in approximately the same spot as last time :D < 1285083787 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it looks like they're renovating the sewers or something < 1285083885 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the first time it was them just moving in and replacing part of the lawn with stones < 1285083927 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*stone tiles < 1285084091 0 :alise!~alise@91.105.70.176 JOIN :#esoteric < 1285084178 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :01:11:05 16:47:01 which is why the Singularity is defined at precisely the point where we have no fucking idea what will happen ← true, but you presuppose many things about it which aren't as certain as made out. < 1285084191 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I may have speculated wildly while stating that I was. < 1285084200 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :But nothing I've said as fact is controversial at all, really. < 1285084230 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :20:32:11 alise, I'm forcibly undeferring you < 1285084240 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i have no wish to help you further as i know you ignore my advice < 1285084252 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :...whatever undeferring means < 1285084307 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :23:34:22 sure, but i dont know what the current continuation is < 1285084315 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the current continuation is the return address < 1285084318 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :except it's the return closure < 1285084329 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(f (g x)), the call to g has the continuation (lambda (g-result) (f g-result)) < 1285084331 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the end < 1285084353 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: hmm, an interesting way to define it < 1285084360 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :http://www.youtube.com/watch?v=IJyUQ7zarS8&feature=related < 1285084366 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for some reason, I only mentally define the current continuation during a call to call/cc < 1285084370 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Planescape made you think your spells were tits :3 < 1285084371 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, it's the easiest way to explain it to someone who groks some basic return stack assembly < 1285084379 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: also, some of the best scheme implementations do CPS < 1285084386 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so in that case it's entirely continuation-based < 1285084389 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285084398 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I'm thinking in a world where things aren't necessarily CPS < 1285084411 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :not Scheme's native world :) < 1285084444 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wasn't assuming Scheme < 1285084448 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :augur was < 1285084454 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, OK < 1285084492 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i actually get kind of annoyed at people who don't get monads or continuations as i can't help but think they're the simplest things in the world :P < 1285084506 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Monads aren't simple >:| < 1285084510 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :they are. < 1285084519 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I understood quantum mechanics before I understood monads. < 1285084535 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that just means you're a physicist, not a computer scientist < 1285084538 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the programming concept of a monad is relatively simple < 1285084539 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :also, you don't understand quantum mechanics < 1285084540 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :nobody does :) < 1285084562 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can, say, understand a useful subset of quantum electrodynamics, though < 1285084563 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :You only say that because you're a computer scientist, not a physicist. < 1285084569 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or enough quantum mechanics to know how a transistor works < 1285084581 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Slereah: actually, i'm quoting a physicist from memory. < 1285084592 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Yes, you're quoting Richard Feynman. < 1285084595 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I know < 1285084599 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Because I'm a physicist. < 1285084612 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :*puts on labcoat* < 1285084621 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION imagines Slereah in a lab coat saying, "Yes, but /I'm/ a physicist!" then the crowd gasps in amazement. < 1285084622 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :(it's to avoid getting neutron stains on my jacket) < 1285084622 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :COMPUTER SCIENTISTS CAN WEAR LABCOATS < 1285084625 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :we're still scientists! < 1285084628 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Damn, you labcoated before me :P < 1285084636 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I should totally wear a lab coat. < 1285084637 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :we can still have test tubes < 1285084644 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :filled with liquid data storage < 1285084644 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :They have DATA in them! < 1285084646 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :... < 1285084654 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Pre-emptively, I do. < 1285084657 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :http://www.phdcomics.com/comics/archive.php?comicid=1361 < 1285084667 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: I'm not a pedophile D-8 < 1285084685 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I guess unless that's super-preemptively :P < 1285084694 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Maybe you could build one of those old school hydrolical calculator < 1285084695 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :And then < 1285084698 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :1) It's been ephebophilia for at least three years! < 1285084701 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :The water would be full of data < 1285084705 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :2) WHO SAID MARRIAGE MEANS YOU HAVE TO LIKE THE OTHER PERSON < 1285084852 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :My C implementation of Pixley is fully CPS now :) < 1285084865 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Full of CPs? < 1285084868 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :C Pixley System < 1285084871 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :My CPS implementation of C is fully Pixley now :) < 1285084874 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :He was the pedophile all along < 1285084996 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :And he would've gotten away with it too if it wasn't for you meddling kids! < 1285085007 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :...waaaaaaaaaaaaaaaiiiiit < 1285085029 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :http://www.thedailyshow.com/watch/tue-february-2-2010/story-hole---children-s-cartoons-from-hamas < 1285085043 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :And I would(ve gotten away with it too if it wasn't for those meddling jews! < 1285085072 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And I would've gotten away with it too if it weren't for you meddles! < 1285085075 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*medals! < 1285085078 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Although meddles works too! < 1285085087 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: you have been marked as being away in my HUMAN REGISTRY which you are an element of. < 1285085094 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :muddles < 1285085101 0 :Phantom_Hoover!~phantomho@cpc3-sgyl21-0-0-cust116.sgyl.cable.virginmedia.com JOIN :#esoteric < 1285085102 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :muggles < 1285085109 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :alise: It's largely *because* monads and continuations are so simple that people find them hard to understand. < 1285085134 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: I'm not entirely convinced you understand monads, though :P < 1285085140 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Or, well, not in the conventional manner. < 1285085155 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :if monads are so simple < 1285085161 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :explain them to me in 5 minutes < 1285085163 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :alise: I admit that I don't, quite. < 1285085171 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :IN ONE SENTENCE < 1285085174 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :One word. < 1285085178 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :One character. < 1285085183 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Zero character. < 1285085184 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :no, just in 5 minutes. < 1285085185 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :go on. < 1285085193 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :00:01:11 Oh, I'm sure you could sort-of do a pure Scheme call/cc implementation, with some pretty hairy macros to CPS everything else, after which call/cc is just (define (call/cc f k) (f k k)), assuming f gets turned into (define (f return k) (return 2) (k 3)). < 1285085196 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you mean: < 1285085215 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(define (call/cc f k) (f (lambda (x k2) (k x)) k)) < 1285085224 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I do understand continuations pretty well, though. < 1285085237 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(define (f return k) (return 2 (lambda (x) (k 3)))) < 1285085241 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :The y combinator, I also admit, I do not fully understand. < 1285085246 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise/cpressey: back up your claim < 1285085253 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: I didn't understand the y combinator until about two days ago < 1285085261 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: unfortunately i'm sure you're not intelligent enough to understand it, unlike the towering minds we have in this channel. < 1285085264 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when suddenly something clicked with me < 1285085269 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Surely you're joking, Mister Smith! < 1285085271 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: that's not nice < 1285085278 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: I'd never really tried to understand it before then < 1285085287 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I've seen it demonstrated, so I have a "feel" for what it does, but that's about all < 1285085294 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Isn't it obvious? I guess if you haven't toyed with the lambda calculus a lot. < 1285085300 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: also, my iq is fairly high, you just dislike me because i'm different, and the fact that i'm different makes you immediately assume that i'm also wrong < 1285085314 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but my latest problem for my job has pretty much been to see to what extent it's possible to implement Y in hardware < 1285085330 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's clearly impossible in general, but we're trying to see if there are any useful special cases, and it looks like there are < 1285085333 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ais523: whew < 1285085350 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: which is fairly ironic coming from someone who's not understood well by the powers-that-be around them. < 1285085353 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: actually, I was just trying to (a) shut you up and (b) see how stupid you'd get under that insult < 1285085383 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I now know that the answer to (b) is "claim that (a) your IQ was measured correctly (which is rare) and (b) implicitly claim that IQ is a measurement of intelligence". < 1285085387 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :incidentally, many monads (mostly the lightweight statey ones) have a really nice implementation in hardware < 1285085392 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Y in hardware? ha < 1285085393 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :for what? < 1285085398 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: completeness, really < 1285085411 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ACTION understood the Y combinator after quite a bit of effort. < 1285085416 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: silly strategies like that don't usually work with me < 1285085421 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :given that we can do more or less everything /else/ < 1285085429 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: well, half of it worked. < 1285085434 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :It's basically the omega combinator with an extra argument. < 1285085437 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: i think if you once got off your high horse and tried being friendly, you would save a lot of grief and energy < 1285085452 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: and then you could possibly even get something positive out of interacting with me < 1285085463 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :being friendly to people who i don't like takes more energy than it's worth. < 1285085464 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: instead of painting yourself into the corner of negative relationships < 1285085465 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hmm < 1285085470 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in hardware, a monad is simply an extra wire/set of wires that go alongside the rest of the circuitry, and are used by individual components < 1285085471 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Can you do SKI in hardware, then? < 1285085484 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: i don't do anything on purpose for you to dislike me < 1285085484 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: no, for the same reason you can't do it in Haskell < 1285085489 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at least with the formulation we're using < 1285085491 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: it is only your own mind block < 1285085495 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ah < 1285085499 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: SKI still type, though < 1285085501 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :they're just not very useful < 1285085502 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it'd require an infinite number of wires to construct the infinite type < 1285085504 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: well, yes < 1285085510 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: you can give it up, or you can continue to have someone around that you force yourself to dislike, your choice < 1285085513 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i am interested in this research! < 1285085514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but more to the point, they type an infinite number of different ways < 1285085518 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1285085519 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :no forall? < 1285085526 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not in hardware < 1285085530 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Are you wacky boffins talking about a purely-functional computer? < 1285085535 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you need to know the exact type to konw how many wires you need < 1285085541 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I thought the reduceron already counted. < 1285085549 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :no, ais523 is just implementing combinators directly in silicon < 1285085553 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i think < 1285085561 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(ais523 is an acceptable substitute for ais523 et al.) < 1285085565 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ok, cpressey explains monads (wrong again). You write your function as a bunch of little functions and they get called, generally but not necessarily in sequence, by a bit of infrastructure which does some stuff for you, for example tracking state or aborting early. < 1285085566 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(as a name) < 1285085573 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: incorrect! < 1285085581 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :alise: you just love saying that. < 1285085587 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :besides, i am clearly NOT being technical < 1285085591 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :"ais523" is short for "ais" then a 523-character sequence of other names. < 1285085611 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: http://portal.acm.org/citation.cfm?id=1190216.1190269 is the first paper in the series, written by my supervisor before I started working on the project < 1285085622 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :a monad is a type m of one argument for which the following functions have total (always-terminating) implementations: return :: a -> m a ; bind :: m a -> (a -> m b) -> m b (or join :: m (m a) -> m a, instead of bind), that obey the following identities: < 1285085633 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Left identity": return a >>= f ≡ f a < 1285085633 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Right identity": m >>= return ≡ m < 1285085633 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Associativity": (m >>= f) >>= g ≡ m >>= (\x -> f x >>= g) < 1285085634 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :alise: way too technical for this audience < 1285085634 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the second's been accepted for publication but not published yet (with me as a coauthor), the third's been submitted but there's been no feedback yet (also with me as a coauthor) < 1285085635 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: also, to answer your other "insult", i do not feel i said anything stupid. if you feel so, your loss, you're missing the value of things given to you. i guess that's closer to stupidity than what you implied. < 1285085638 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :>>= being bind < 1285085654 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: heh, that's far from the way I understand monads, despite being the actual definition < 1285085666 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: aha < 1285085679 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it becomes a lot more useful when you start doing hopelessly theoretical things with them < 1285085680 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ais523: the actual definition tells you NOTHING that helps you understand them, is what burns me < 1285085695 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :e.g. I know monads are associative, but mostly because they'd have the wrong semantics otherwise, not because being associative is part of what they are < 1285085699 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :alise, doing the monad laws without Kleiski arrows is ugly as hell. < 1285085702 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: yep < 1285085710 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: not really < 1285085715 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: that sort of definition is useful for proofs, but proofs can be far from understanding < 1285085722 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Well, the 3rd one. < 1285085728 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: err, nothing like proofs < 1285085731 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :understanding the list monad < 1285085732 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :for instance < 1285085736 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that's the first step < 1285085745 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :*Maybe monad < 1285085747 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(you then generally need to know *why* instead of *how*, but it's the how) < 1285085748 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: understanding the list monad for me is /miles/ from the theoretical definition < 1285085748 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: We still need to settle a question here. < 1285085754 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :It's the easiest non-trivial one. < 1285085756 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: not understanding the use; understanding < 1285085767 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, a showdown! Count me in! < 1285085771 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: nah, read-only state is the easiest nontrivial one < 1285085794 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ais523, for Maybe: < 1285085810 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :data Maybe a = Nothing | Just a < 1285085814 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :return = Just < 1285085826 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: so why do you need those functions to be "many" and "small"? < 1285085835 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :do you need to break up your functionality somehow? < 1285085835 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Do you really need a type system to have monads? If so, does it mean that, you can't have monads in (e.g.) the untyped lambda calculus? I don't believe that. < 1285085846 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, you do in the strictest sense. < 1285085853 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, you don't < 1285085854 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Since monads are by definition functors. < 1285085869 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Functor? < 1285085873 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I hardly know her! < 1285085886 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :*clap clap* < 1285085929 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: the category-theoretical definition of monads doesn't depend on types existing < 1285085940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or even any concepts from programming at all < 1285085952 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you can fit untyped LC into a category just as easily as typed LC < 1285085963 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Well, I suppose. < 1285085980 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cpressey's description is still just one possible practical usecase of monads, though < 1285085982 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that isn't even tied to monads < 1285085990 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and the concept of some supervising thing that calls your functions is wrong < 1285085997 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I think my view is that if you want to prove that something is a monad, you need a type system in which to do so, just as if you want to prove something is an integer. But just to program them, well, like Church integers, if you can build it, there it is, even if you don't have a way of proving that it's that. < 1285086015 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the issue with monads is, they're too general to really be useful < 1285086022 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :err, not reallty < 1285086023 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*really < 1285086030 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"It's too general! Nooooooooooooooooo!" < 1285086031 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :alise: what would you call bind and return if not infrastructure? < 1285086033 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I mean, the concept of monads in general < 1285086037 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"I can do things I didn't think I could do! Nooooooooooooooooo!" < 1285086039 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rather than particular monads < 1285086045 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: I would call them... bind and return. < 1285086052 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :return and join is the more common category-theoretical definition, though. < 1285086056 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: do you call addition infrastructure? < 1285086056 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: but a constructive proof is a proof too. < 1285086080 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :personally, I'm annoyed at return being necessary in the definition of monads, as even without return, you still have a pratically useful concept < 1285086089 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: take a look at abstract algebra < 1285086090 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is there a name for that one? < 1285086095 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :addition, multiplication -- < 1285086097 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :alise: if i were encouraged to make it implicit, i might, like in sum() < 1285086099 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :they're not infrastructure < 1285086109 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :they're part of the definition of a number < 1285086119 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :algebraic structures are defined *very similarly* to a monad < 1285086132 0 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory JOIN :#esoteric < 1285086133 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Group: (G,*) where (G,*) is a monoid and [conditions] < 1285086135 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :first you say they're not structure then you call them structure < 1285086139 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: there are a bunch of ways to define that sort of thing < 1285086141 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Monad: (M,return,join) where [conditions] < 1285086150 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :and (the usage of) monads definitely encourages making the monad functionality implicit < 1285086158 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :after all, comultiplication isn't inherent in the definition of numbers, nor even definable for them < 1285086164 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :this conversation is boring < 1285086168 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :we've had it before at least three times < 1285086179 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :But it's for a noble cause! < 1285086188 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: :) < 1285086188 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :i.e. getting cpressey to understand monads! < 1285086222 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, interesting question: can all monads be implemented in terms of multithreading plus state (regardless of how inefficient or pointless it would be to actually implement them that way)? < 1285086236 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: eh? :P < 1285086240 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION realises in horror that C-INTERCAL actually implements continuations that way < 1285086242 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'd like to see you do the continuation monad that way < 1285086248 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: already have < 1285086250 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :...ouch < 1285086258 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, continuations != the continuation monad < 1285086261 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :well < 1285086263 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, I know < 1285086266 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the usual implementation of continuations, that is < 1285086303 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL's implementation is nothing like the usual one < 1285086308 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :partly because it's such a stateful language < 1285086310 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :OK. Well, I should probably get some work done instead of boring y'all. < 1285086312 0 :cpressey!unknown@unknown.invalid QUIT :Quit: leaving < 1285086317 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: they can be implemented in terms of continuation and state (felleisen) < 1285086328 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i wish cpressey would stop taking "this conversation is boring" to mean "you, personally, are a boring person" < 1285086341 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: ah, OK, and continuations can be implemented in terms of multithreading, so they can be < 1285086371 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to figure out how to do continuations with multithreading. < 1285086374 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: that's what happens when you hate on people < 1285086383 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :What happens is, I go to my thinking bank, and it beeps, and says "TOO PAINFUL TO CONSIDER". < 1285086409 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :you might be confused, i think it says "$this->ASSHOLE()" < 1285086418 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :IS THAT PERL < 1285086422 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(or rather iirc, with delimited continuations, which can be implemented using ordinary continuations and a single stateful variable) < 1285086423 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :no, it's php. < 1285086429 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :legal Perl too < 1285086438 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with probably pretty much the same meaning < 1285086457 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: to create a continuation, fork a thread, lock it in an infinite loop < 1285086459 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yeah, php is like perl with a few C extensions < 1285086468 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to go back to the continuation, let it out of the infinite loop, kill the currently executing thread < 1285086471 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ah, then break it out? < 1285086471 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1285086477 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you have to store all closed state in it, though < 1285086482 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :java-style final inner class problem < 1285086492 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: can you explain this "extra wire" analogy that you mentioned earlier? < 1285086495 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :theoretically possible, though, I guess < 1285086499 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that sounded very interesting < 1285086526 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: unfortunately, it doesn't model all monads, just the large subset that correspond to just the one computation at a time (as opposed to 0-or-1 like Maybe, or 0..n like List) < 1285086541 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yeah < 1285086543 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: go on though < 1285086549 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :00:05:50 /(.*)\(call/cc (.+)\).*/ => "(\2 (lambda (x) (\1 x)))" < 1285086550 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ouch < 1285086582 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so the idea is, you have an existing function; you can see it sort-of like a computation, give it input, you get output after a bit, and you can then connect that output to some other function < 1285086594 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that's a shame -- Maybe and List being some of the most useful monads :P < 1285086598 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: yep < 1285086601 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :so let's say this function is something like an addressable memory < 1285086604 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err, what? < 1285086613 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :you feed it 8 bits of address and the output is 8 bits of data < 1285086618 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I see < 1285086630 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :it is a computation < 1285086631 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :a LUT < 1285086642 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :06:46:01 Hypothesis: all operating system ads are so obnoxious that the rage of people watching them could be used for power. Discuss. <-- I can't remember seeing an ad for an OS the last 5 years, but then I use adblock. Anyway I have no idea what they look like these days < 1285086652 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Area Man Constantly Implicitly Mentions He Doesn't Own a TV < 1285086653 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :TV ads. < 1285086655 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :OK, so let's say it's an 8-bit-address ROM or something; what the function actually is hardly matters < 1285086670 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Vorpal said that <-- < 1285086672 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :stuff < 1285086677 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok go on < 1285086679 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :alise: was that an onion title? < 1285086687 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I was clarifying for him... < 1285086702 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: "Area Man Constantly Mentioning He Doesn't Own A Television" < 1285086706 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I adapted it to the situation. < 1285086720 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285086729 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://www.theonion.com/articles/area-man-constantly-mentioning-he-doesnt-own-a-tel,429/ < 1285086730 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :a classic < 1285086736 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now, you can sort of think of the function as a component in a pipeline, or something like that, UNIX-style; you can run function after function after function, each of which takes its input from somewhere (could be the output of the previous function, could be a constant, could be an output from some earlier function) and produces output < 1285086747 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285086748 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in such a way that when you run each function, you have enough information to know what input you plan to give it < 1285086764 0 :MigoMipo!~John@84-217-6-103.tn.glocalnet.net JOIN :#esoteric < 1285086775 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now, suppose for each of these functions, you give it an extra piece of information of a given type (an extra integer or something), and it returns an extra piece of information of the same type < 1285086791 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285086794 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gah, my boss has called just as it was getting interesting, I'll be back later < 1285086795 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: maybe you want Arrows rather than Monads? < 1285086802 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :aw < 1285086821 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :although every Monad is an Arrow afair < 1285086823 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: you should be able to pick up where ais523 left off! < 1285086856 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"ais523" -- people call him that in real life, you see -- "We're cancelling the 'monadia in silico' project. Instead, we're going to be doing 'Java in silico'. That will be all." < 1285086865 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the worst phone call < 1285086948 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Good night < 1285087174 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :alise, "We have invented nFAI." < 1285087176 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Worse. < 1285087179 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Qed. < 1285087277 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"We have killed a kitten." < 1285087279 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Wrose. < 1285087710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sorry about that < 1285087805 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: back? :) < 1285087807 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285087810 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ok go on! < 1285087812 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :that was cunning < 1285087845 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, let's say we modify these functions to take an extra piece of input - which they don't have to use if they don't want to - an produce an extra piece of output, of the same type < 1285087854 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285087857 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :a sort of sideband < 1285087859 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the easiest way to do this is just to ignore the input, except we copy it to the output < 1285087862 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285087874 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :so let's call it sideband < 1285087874 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and we can connect these functions together by connecting this new output to the new input < 1285087880 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285087889 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you have a connected sideband, and everything is doing just what it was doing before otherwise < 1285087899 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :sort of like 'self' in object oriented languages < 1285087912 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep. (Hmm, I wonder if that /is/ a monad?) < 1285087920 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :or global scope in many languages < 1285087937 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok go on < 1285087947 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now, it's clear that we can mix functions that actually use the sideband, and do something with it, with these original functions that we added a sideband to just for the sake of giving them a sideband < 1285087959 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285087961 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and connect them all together < 1285087983 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :OK, monad terminology: adding a sideband that does nothing to a function = "return"; connecting the sideband of one function to the sideband of the next = "bind" < 1285088002 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1285088008 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when a monad models just one computation, that's pretty much all it is < 1285088018 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :what about a function that does something with the sideband? < 1285088026 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's a function in the monad < 1285088029 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :what is that in monadsp34k? < 1285088035 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you can't produce it using return < 1285088038 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :no < 1285088042 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :so how do you produce it? < 1285088052 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :normally, you find it lying around in a standard library or something < 1285088062 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you need to know details of how the monad's implemented in order to make one < 1285088067 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1285088082 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes, just like you need to know the signaling format of the sideband < 1285088087 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but assuming i know that < 1285088115 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then you can use that in order to make something that uses the sideband < 1285088143 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :can you give an example? < 1285088158 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :say in haskell, a monad that starts out just plugging 0 every time < 1285088158 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so for instance, the State monad is one of the simplest that fits this idea < 1285088168 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where the sideband is the state you're trying to manage < 1285088171 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but then i have a function that NOT's it < 1285088174 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you don't care about the state at all, it just stays the same < 1285088179 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok go on < 1285088200 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you have functions like the one that sets the state (I've forgotten its name), which just discards the old sideband and creates a new one, from its argument < 1285088212 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the function that gets the state, which just takes a copy of the sideband < 1285088214 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok so what would the type be of a function that wants to modify state? < 1285088235 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :setState, or whatever it's called, would have type a -> State a < 1285088261 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err, no < 1285088266 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a -> (State a) () < 1285088272 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you give it input of type a < 1285088289 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then you get something that outputs (), with a sideband of type a < 1285088326 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285088336 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even though outputting () is normally useless in Haskell, it isn't here in the monad, because it's still modifying the sideband, and so still doing something < 1285088346 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's why people say that monads are used to deal with side effects < 1285088361 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :likewise, getting the state would have type (State a) a < 1285088375 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even without an argument, it can look at the sideband and return something of the same type < 1285088378 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :why can't it model Maybe and List? < 1285088386 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you need to generalise it a bit < 1285088398 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now, so far, we've been looking at functions which model just one computation < 1285088400 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : setState, or whatever it's called, would have type a -> State a < 1285088401 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :set < 1285088403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :we have one function, plus the sideband < 1285088406 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: thanks < 1285088429 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I seem to remember that on my last Haskell project, I had so much problems trying to remember the name that I eventually reimplemented it rather than trying to find it in the standard library < 1285088431 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :there's also "modify f", which is "x <- get; set (f x)" < 1285088442 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: wow, why not just look up Control.Monad.State? < 1285088449 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wasn't Internet-connected at the time < 1285088454 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it installs locally < 1285088458 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :knowing that I had to import Control.Monad.State would have helped < 1285088481 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, this is the stupid reason for NIH ever < 1285088494 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"I reimplemented the State monad because I couldn't remember its name" < 1285088498 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1285088500 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yeah heh < 1285088501 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1285088502 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(*stupidest, forgive me) < 1285088515 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: "I reimplemented GHC because I forgot its name" < 1285088522 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"-- one afternoon" < 1285088527 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :what's worse is: i reimplemented the state monad but i couldn't download it from the internet! < 1285088541 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :s/but/because < 1285088548 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: so, at the moment we have each function producing just the one output+sideband < 1285088549 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: so why can't Maybe work? < 1285088565 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now, there's no conceptual reason why we couldn't have the function producing 0 output+sideband pairs, or more than 1 < 1285088568 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :Maybe would produce either 1 output or 0 outputs yes? < 1285088570 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285088583 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :what does the sideband do here? < 1285088585 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what you need to do is, you need to copy everything from then on < 1285088592 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :copy? < 1285088601 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, Maybe doesn't have a particularly useful sideband, it just carries () everywhere < 1285088603 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :like IO does < 1285088607 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285088609 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :go on < 1285088615 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's still necessary because you need to know what order things are in < 1285088621 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: IO has state < 1285088622 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :IORefs < 1285088631 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: ah, I didn't know that < 1285088633 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but it arguably shouldn't < 1285088635 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, and RandomRIO too < 1285088636 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it's just that < 1285088639 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you can't have IOT or STT < 1285088640 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that's just an implementation detail < 1285088648 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so since you often want ST-style references in IO < 1285088652 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :there's no real other option < 1285088657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :IOT would require inventing new IO subsystems on the fly... < 1285088663 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(note: anachronism; I'm pretty sure ST postdates IORefs) < 1285088668 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: IOT Cont == TwoDucks < 1285088681 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I think STT might be theoretically possible < 1285088682 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but it hurts my brain < 1285088692 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: well, suppose we run our monad function, and get two outputs, each with their own sideband < 1285088693 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :so what is the equivalent of Maybe in our circuit topology here? < 1285088697 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and try to bind it to another monad function < 1285088708 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok go on < 1285088711 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then, we need to make two copies of the second one, and connect one of them to each of the possible outputs < 1285088732 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you sort-of need to imagine a circuit which you can dynamically make copies of runtime, as you don't know in advance how many outputs you're going to get < 1285088739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with Maybe, you either get an output, or you don't < 1285088748 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you don't, then you connect 0 copies of the next element in the chain < 1285088762 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :if you do, you connect 1 copy? < 1285088796 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285088796 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so Maybe effectively ends up halting the entire computation if you get Nothing as your output < 1285088807 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok so < 1285088823 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!haskell (Maybe 1) >>= (\x -> Maybe x) < 1285088825 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :in fact if your chain is f g h i j < 1285088833 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and f has type x-> Maybe x < 1285088836 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then f, g, h, i, j run in sequence until one fails < 1285088840 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285088844 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and say f fails < 1285088845 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then the rest run 0 times each < 1285088850 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and it doesn't output < 1285088866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, and you get Nothing at the end < 1285088867 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :then what you in fact want to do is to short circuit g h i j yes? < 1285088871 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285088878 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and they are short-circuited in practice < 1285088881 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but < 1285088886 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :that can be modeled easily < 1285088890 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :agreed < 1285088895 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :with exactly the side band < 1285088903 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what gets a bit conceptually hairier is when you get to List < 1285088910 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now, it's possible for f to output 0, 1, or more times < 1285088915 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :since g h i j do not have side effects outside of the small world called "g h i j", you can put info in the side band that says "fail" < 1285088919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can < 1285088925 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that's how it's implemented in practice, actually < 1285088928 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and at the very end you have a small Maybe-failure block < 1285088931 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285088931 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was wrong earlier, Maybe doesn't have a sideband of () < 1285088937 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :instead, it has a sideband of Just/Nothing < 1285088947 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :aha! < 1285088951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with Just matching up to a normal output, Nothing matching up to no output < 1285088955 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :i really like your analogy < 1285088962 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :that has helped me look into monads a little bit < 1285088970 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :still not far enough but that's a great explanation < 1285088973 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for List, your sideband can match up to /multiple/ outputs < 1285088982 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so, say you run f and it returns both 1 and 2 < 1285088989 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1285088999 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :so what does the list monad do blockwise < 1285089005 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :it takes our computation unit < 1285089006 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it forks the chain, effectively < 1285089014 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :say f returns twice, g, h, i, j each return once < 1285089014 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285089026 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :so g h i j need to be copied < 1285089027 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes? < 1285089031 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then f conncets up to /two/ sequences of g,h,i,j < 1285089033 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285089036 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but that's easy too < 1285089042 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :have the sideband contain the list index for f < 1285089043 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and thats why you can't really do List as a circuit in hardware, even though it's conceptually easy < 1285089049 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and at the end you have a demultiplexer < 1285089053 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :nono < 1285089055 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :it's easy < 1285089068 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's easy if you know you're only going to get two outputs < 1285089074 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :no < 1285089078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, easy if you happen to own an infinite-ways demultiplexer < 1285089082 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :it's easy with any amount of outputs < 1285089087 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285089091 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but < 1285089097 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :the thing is < 1285089104 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :instead of the multiplexer you can have a memory < 1285089106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, I think you're missing something, slightly; say f outputs [1 2], and g's input is connected to f's output < 1285089121 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then, g will have to be run with both 1 and 2 as inputs < 1285089123 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :the sideband contains the address (i.e. the index), and the chan ghij ends up writing into the data lines < 1285089136 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1285089138 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so the sideband contains a set of addresses, really < 1285089144 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285089144 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or a set of possible inputs < 1285089152 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and then h is run with output of g < 1285089153 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1285089161 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :SO, < 1285089175 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!haskell ([1 2]) >>= (\x -> [x+10 x+20]) < 1285089187 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err, forgot the commas < 1285089191 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!haskell ([1, 2]) >>= (\x -> [x+10, x+20]) < 1285089192 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :the question is what does it mean that a computation block can get an arbitrary amount of inputs < 1285089193 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :[11,21,12,22] < 1285089220 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: well, you make a copy of the block for each input, run it on that input, then combine all the outputs into one long list of outputs at the end < 1285089230 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :you are right now talking about serial rather than parallel computation < 1285089231 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :that's all < 1285089247 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, List really models parallel computation < 1285089247 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :before you were describing everything as a parallel interface < 1285089253 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but in fact < 1285089260 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :you can model that with serial computation < 1285089263 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and the sideband says: < 1285089278 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :let's say the left thing is the sideband and the right thing is in-band < 1285089295 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :(start, 1) (continue, 5) (end, 2) < 1285089310 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :!haskell ([1, 5, 2]) >>= (\x -> [x+10, x+20]) < 1285089313 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :[11,21,15,25,12,22] < 1285089323 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, that's one way to implement it < 1285089327 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285089335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, I think we're agreeing with each other generally here < 1285089340 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :so in fact < 1285089346 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :you can do those two monads in silicon now :) < 1285089349 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :fun times < 1285089353 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285089360 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, that's all monads are, really < 1285089371 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sorry that it took a bit longer than 5 minutes, but I didn't make such grandiose claims as alise did < 1285089381 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :now i expect you to put my full name on the silicon so that i can make a microscopic photo of it < 1285089384 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :;) < 1285089396 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :it was a really really good explanation < 1285089399 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :monads are sidebands < 1285089401 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :that's pretty cool < 1285089412 0 :Phantom_Hoover!unknown@unknown.invalid QUIT :Ping timeout: 252 seconds < 1285089423 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :i was having some sort of similar idea already, as in, only have been toying a tiny bit with haskell < 1285089424 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i specialise in grandiose claims! < 1285089444 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but what i ended up figuring out is that you can't fit the IO-shaped block through the non-OI-shaped hole < 1285089456 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: congratulations, you invented TV < 1285089457 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(IO/OI) < 1285089460 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(UI/IU) < 1285089461 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's interesting that I think of State as being the simplest monad, as opposed to Maybe which is what many other people claim < 1285089470 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :sorry? < 1285089471 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably reflects a difference in how we think < 1285089472 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :note: obscure reference of obscure references < 1285089480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: I was referencing what someone (alise) said eariler < 1285089482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*earlier < 1285089483 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Identity is the simplest monad < 1285089490 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err, simplest nontrivial < 1285089492 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :return x = x; join x = x < 1285089494 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i was confused about alise < 1285089502 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1285089502 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :or return x = x; bind x f = f x < 1285089507 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :with Haskell you need data Identity = Identity a < 1285089507 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: well, OK < 1285089509 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but it's the same thing < 1285089524 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :clearly, if you're not going to actually use the sideband, why bother having a monad in the first place? < 1285089529 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ok, that's pretty cool < 1285089536 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that was a great explanation < 1285089540 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :is there a log of this somewhere? < 1285089545 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, it's in the topic < 1285089562 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :gr8 < 1285089562 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi clog! < 1285089595 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: http://codu.org/projects/trac/egobot/browser/multibot_cmds/interps/c-intercal/pit/continuation.i?rev=42%3A3e7fe826dddf if you want to see the implementation of continuations in terms of threading, btw < 1285089598 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you were asking earlier < 1285089622 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i thought of haskell's monads as the "block shape" < 1285089650 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :just like in OO languages you'll have 100000000000 extensions of Exception < 1285089658 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1285089659 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and each is just an empty class < 1285089667 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, that's a good analogy too < 1285089669 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :i think the same way monads work in haskell don't they? < 1285089685 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, everything works like that in Haskell, including monads < 1285089698 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I was the first one to see it :P < 1285089701 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Area Man Constantly Implicitly Mentions He Doesn't Own a TV <-- um I do own one < 1285089703 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Although I got straight to work on forgetting it. < 1285089707 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: Onion reference. < 1285089718 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I don't own a TV < 1285089724 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: monads aren't usually empty... < 1285089726 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I have access to TVs, but I think all of them are technically owned by someone else < 1285089732 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, but we have public service... which doesn't show ads. And the channels with ads are mostly crap sitcoms < 1285089736 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: but you don't not-own-a-TV as an active thing like dear old Area Man < 1285089741 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: so, are you actually implementing this stuff in silicon? < 1285089746 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: ok < 1285089758 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: not in general; some special cases, perhaps < 1285089764 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there was something of a flame war in a seminar < 1285089770 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: because you have to define return/bind < 1285089772 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what did they say? < 1285089780 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when my supervisor invented the "clock monad", and we had a row about whether it was technically a read only state monad or not < 1285089785 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : I have access to TVs, but I think all of them are technically owned by someone else ais523: so, are you actually implementing this stuff in silicon? <-- at first this looked hilarious < 1285089788 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: but you can define it "trivially" can't you? < 1285089795 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: no < 1285089797 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :for instance, the list monad < 1285089797 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(they were using the monad sidebands to carry clock signals, which makes sense) < 1285089798 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : @src [] return < 1285089798 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : return x = [x] < 1285089798 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : @src [] (>>=) < 1285089798 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : xs >>= f = concatMap f xs < 1285089802 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :this is what defines the actual monad, it's important < 1285089809 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :unlike the irrelevant contents of an exception glass < 1285089824 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :return and bind are what make do notation work, they're what make the fancy operators work < 1285089824 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: but can't you define a monad which doesn't do anything? < 1285089826 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :they are the monad < 1285089832 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: yes, but only on one type (Identity) < 1285089834 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: you can, he did above < 1285089836 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and it's literally useless < 1285089840 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :as opposed to something you'd actually do < 1285089849 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: you can define an infinite number of identity monads < 1285089852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which don't connect to each other < 1285089856 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :doesn't make them any less useless, though < 1285089869 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, not from a mathematical point of view < 1285089879 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: agreed; but yes from a programming point of view < 1285089880 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :there's only one identity type, naturally, < 1285089888 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and only one implementation of return/bind for it < 1285089902 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just like you can have HTMLStrings and SQLStrings and UnescapedStrings which are all really just strings, but you don't want to mix < 1285089918 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i'm not sure; there's a push in quite a few language communities to make structurally identical types equal in some manner < 1285089927 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: I don't think I like that < 1285089930 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I mean, it makes sense in theory < 1285089937 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it makes sense for a more mathematically-oriented language < 1285089939 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but in practice, you often want to model things in types that the type system just doesn't handle < 1285089943 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :where things like "constructors" aren't actually assumed to exist < 1285089954 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it's also usually done in communities that favour rather... advanced type systems < 1285089965 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :also: ok, separation of identity monads for security; I know now what the craziest thing ever is < 1285089966 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, that would make sense < 1285089982 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: tricycling along a tightrope? that's pretty crazy < 1285089999 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: tricycling along a tightrope while writing code that separates identity monads for security < 1285090001 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :NEW CIRCUS ACT < 1285090021 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: wait, *tri*cycling? < 1285090028 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: yep, exactly < 1285090037 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION 's brain explodes < 1285090044 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you try to put more than one of the wheels on the rope, going in the right direction, the thing is completely unbalanced < 1285090053 0 :impomatic!~chatzilla@87.115.83.45 JOIN :#esoteric < 1285090159 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: or just scrape the back end awkwardly < 1285090160 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :unless you put the rear axle on the rope < 1285090167 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :in which case the back wheels work to stabilize you < 1285090170 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :while riding the most badly-weighted unicycle ever made < 1285090172 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :in the front < 1285090177 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :which means the act becomes trivial. just have leaden wheels. < 1285090203 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: but then, the front wheel would have no actual grip on the rope < 1285090205 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pentacycle; discuss < 1285090211 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you wouldn't be able to move < 1285090211 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it would < 1285090220 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: why would it not? < 1285090223 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, well a bit, I suppose < 1285090229 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but the centre of gravity would be a long way back < 1285090229 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it would have the exact same grip < 1285090238 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: except, the axle would also have grip, which would be blocking < 1285090245 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I suppose so < 1285090251 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but you make the housing of the axle out of teflon and smear it with butter < 1285090264 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and you're suddenly copperfield < 1285090371 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :teflon cycle; I approve < 1285090379 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, I just noticed how hacky (8205) is < 1285090429 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1285090443 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"It seemed idiomatic when I wrote it!" < 1285090447 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Idiomatic INTERCAL. < 1285090457 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I propose it be called idiotic in INTERCAL circles instead. < 1285090465 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Wow, your code is really idiotic for a beginner! Good job!" < 1285090467 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: well, there's idiotism.oil < 1285090482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is a filename based on that sort of pun < 1285090494 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :really, anything that remotely works is considered idiomatic < 1285090741 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :what's 8205? < 1285090768 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :Anarch [~olaf@c-67-171-37-107.hsd1.wa.comcast.net] has quit [Quit: WILL TROLL FOR FOOD] < 1285090806 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: a line number in the INTERCAL program I linked above < 1285090822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :generally, numbers in parens wax/wane pairs indicates line numbers in INTERCAL programs < 1285090924 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :you know i have INTERCAL on my CV < 1285090932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :really? < 1285090935 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in what respect? < 1285090962 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :it is listed as one of my professional skills < 1285090970 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :also i have a list of skills on the back of my visit card < 1285090975 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :do you actually know INTERCAL? < 1285090977 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and the last one is "Munctional" < 1285090982 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :i read the manual < 1285090984 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and if someone decided to actually give you a test of your INTERCAL knowledge, could you pass it? < 1285090985 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :isn't that bad enough? < 1285090988 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that's definitely not the same thing < 1285090992 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :great < 1285090992 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, which manual? < 1285090997 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :presumably INTERCAL-72 < 1285090998 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there are two < 1285091003 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :the one with the select operator < 1285091016 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :which, even if you were the most amazing interpreter ever, doesn't even come close to explaining anything :D < 1285091027 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's a really pointless characterisation, given that both the manuals explain about the select operator < 1285091032 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :given that it is, you know, fundamental to INTERCAL < 1285091032 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :I should list Redcode on my CV :-) < 1285091045 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes but the original one has a nice drawing < 1285091049 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I'm vaguely confused < 1285091056 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as I remember writing Redcode, but I can't remember the context < 1285091065 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or if I ever ran it, or did anything other than interpreting it in my head < 1285091067 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It couldn't possibly be Core Wars? :-P < 1285091075 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :i should put unrealscript on my cv < 1285091082 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1285091085 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: it wasn't a core wars entry, I don't think < 1285091085 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :i forgot all about it. < 1285091091 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i should put underload on my cv (despite not being a good underload programmer, but I'm better at it at brainfuck) < 1285091094 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it may have been related in some other way < 1285091107 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :come to think of it, Brainfuck may be my favourite satire on current computer design < 1285091108 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: *than!!!!!!!!!! < 1285091125 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: nonsense, i only use prime numbers of exclamation marks < 1285091132 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :lol :( < 1285091136 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 is prime? < 1285091138 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(note: not even *vaguely* accurate) < 1285091145 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes!! as is 2!! < 1285091158 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and 3!! < 1285091161 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and 4!!!! < 1285091162 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :2! is the only prime factorial < 1285091168 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1285091195 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: 10 has the interesting property that it is a sum of prime numbers. < 1285091219 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :22, too < 1285091222 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :also 3 < 1285091224 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: are you aware of the Goldbach conjecture? < 1285091228 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(note: none of this is even vaguely true) < 1285091234 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(except for the parts that are) < 1285091245 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :I used Goldbach's conjecture for something the other day! < 1285091256 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how do you use a conjecture for something? < 1285091264 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :fun fact: 4 is the first number greater than two that is not a Goldbach conjecture < 1285091274 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: writing an algorithm that always returns correct results iff the conjecture is true, presumably < 1285091276 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: to make a conditional theorem < 1285091280 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and may not halt if it isn't true < 1285091283 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285091291 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, OK < 1285091294 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :like a lot of CASes do < 1285091300 0 :impomatic!unknown@unknown.invalid PRIVMSG #esoteric :Goldbach's is tested up to a certain value and the problem I had was below that bound < 1285091318 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION vaguely remembers a theorem that was proved both if the Riemann hypothesis was true, and if it was false, in completely different ways < 1285091321 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :impomatic: heh < 1285091323 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suppose that's a different way to use a conjecture < 1285091345 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: [PAH EXCLUDED MIDDLE etc.; someone has to be the malcontent] < 1285091359 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :although Riemann is quite obviously either true or false < 1285091373 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :unless ZFC is even crazier than i realise < 1285091375 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: invoking the law of the excluded middle is normally considered an acceptable thing to do in proofs of theorems < 1285091388 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :what if riemann is undecidable < 1285091391 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: not if you're an intuitionist :P < 1285091392 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :is the theorem proven then? < 1285091397 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: it can't be proved undecidable < 1285091404 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because doing so would be a proof that there were no counterexamples < 1285091404 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :why? < 1285091405 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: if riemann is true, there exists a real x such that etc. if it is false, no such real exists < 1285091407 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it cannot be independent < 1285091415 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and thus contradict the original proof that it was undecidable < 1285091416 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :consider ZFC+Riemann and ZFC~Riemann < 1285091422 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the zeta function is the same in both < 1285091426 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but this "x" exists in the former < 1285091429 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :consider zeta(x) in the latter < 1285091431 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it might theoretically be possible for it to be undecidable, but unprovably so < 1285091437 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :erm < 1285091439 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :swap former/latter < 1285091442 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :anyway, yeah, it must be 0 in the other < 1285091448 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but we've said it's not; that system is contradictory < 1285091457 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hmm, agreed < 1285091467 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :although don't you mean independent? < 1285091473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure < 1285091479 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :there are no "undecidable theorems" < 1285091485 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in case you haven't gathered by now, I tend to be incredibly bad at technical terminology < 1285091507 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :independent theorem = neither x or ~x is provable in the axiom system; adding either x or ~x to the axiom system produces a system consistent iff the system without it is < 1285091511 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :for instance, ZF and Choice < 1285091518 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: yes, there are < 1285091520 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Choice is not provable in ZF, ZFC is consistent, ZF~C is consistent < 1285091529 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: by what definition? < 1285091540 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: goedel's incompleteness theorem < 1285091559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :isn't that theorem just true? < 1285091570 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :i mean the theorem as the definition < 1285091572 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :anyways < 1285091578 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :errr... < 1285091583 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*err... < 1285091590 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :"undecidable" is one of the accepted outcomes of field's if i recall correctly < 1285091616 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :as in, you can prove something's undecidable, and you get a medal < 1285091618 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: that is one of the most pointless IRC corrections I've ever seen < 1285091632 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you could prove that it is impossible to prove either X or ~X in ZFC, where X = (it is impossible to prove either Riemann or ~Riemann in ZFC) < 1285091636 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Decidability_(logic) < 1285091636 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but that would just be *ridiculous* < 1285091648 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and probably cause me to commit suicide as a protest against how illogical logic is < 1285091662 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: don't, just leave the field altogether if that happens < 1285091665 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :Indeed, the proof that a logical system or theory is undecidable will use the formal definition of computability to show that an appropriate set is not a decidable set, and then invoke Church's thesis to show that the theory or logical system is not decidable by any effective method < 1285091666 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :become a bricklayer or something < 1285091666 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(note: not true; stop worrying ais523) < 1285091678 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'm not exactly in the field of logic :P < 1285091711 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :are you in that case alogical? < 1285091747 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :Some undecidable theories < 1285091750 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I know I'm illogical < 1285091754 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :The first-order theory of the natural numbers with addition, multiplication, and equality, established by Tarski and Andrzej Mostowski in 1949. < 1285091761 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's more a comforting thought < 1285091761 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :i have some books by mostowski and tarski < 1285091763 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :back in poland < 1285091767 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :a logical alogical: quite illogical < 1285091768 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :being completely logical would be an awful burden on anyone < 1285091770 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :in a damp cellar somewhere < 1285091792 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: probably impossible for a human < 1285091794 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :due to reflex actions < 1285091807 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :can reflex actions be considered illogical, though? < 1285091810 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you don't decide to perform them < 1285091821 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yes, if you're in a situation where performing the reflex action isn't the most logical action < 1285091827 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :performing it would constitute an illogical action < 1285091840 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and being absolutely logical is best defined as "performing the logical action in any situation, no matter what it is" < 1285091854 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :The first-order theory of groups, established by Mal'cev in 1961. Mal'cev also established that the theory of semigroups and the theory of rings are undecidable. Robinson established in 1949 that the theory of fields is undecidable. < 1285091858 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :great < 1285091861 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :all the usefull stuff sucks. < 1285091863 0 :impomatic!unknown@unknown.invalid PART #esoteric :? < 1285091880 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :might as well kill myself now < 1285091883 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :mathematics has basically become an endeavour in rigorously laughing at the idea of mathematics :) < 1285091918 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285091954 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: I mean, though, failing to perform an action you're physically incapable of performing isn't illogical, no matter how logical it would be to perform the action otherwise < 1285091964 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so why is performing an action you're physically incapable of not performing? < 1285091974 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, you certainly aren't a logical agent < 1285091983 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :imagine an agent that universally does stupid things and nothing else < 1285091987 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but inside is a perfectly rational mind < 1285091994 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it's just that the connections to the outside invert any decision it makes < 1285091998 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :is it really a rational agent? < 1285092005 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'd say that's a ridiculous definition < 1285092023 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :surely it would figure that out after a while, and invert its own outputs? < 1285092037 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no, because the inputs are also reversed < 1285092045 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even so < 1285092047 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but a rational agent would be able to rationally tell in which cases they would be unable to act upon the situation by failing to perform actions < 1285092052 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it sees itself being wonderful and logical and great while it, i don't know, repeatedly hits its head against a brick wall < 1285092056 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :inverse outputs don't always cause inverse effects on the environment < 1285092056 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :therefore removing those actions from the pool of considered actions < 1285092062 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :and performing the next best possible action < 1285092070 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, ok, fixed output < 1285092075 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(do something stupid, pick one) < 1285092078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's a better example < 1285092081 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :for example: it is impossible for me to explode into a gamma burst therefore killing the whole planet < 1285092088 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :even though it would be the most logical action < 1285092096 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why is that a logical action? < 1285092098 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :for some definition of logical. < 1285092106 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :^ < 1285092108 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, it is, under the "I hate Earth" system of morals and ethics < 1285092120 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :just an example < 1285092127 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :if anyone powerful actually had that system, I'd recommend killing them :P < 1285092133 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :somewhere on TVTropes there's a ranking of how thorough apocalypses are < 1285092134 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(powerful = more than a human.) < 1285092143 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :but following that example, the next logical action could end up being "move into hut and build bombs to send to people" < 1285092145 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(although POTUS is probably a bad one to go by that system, too.) < 1285092163 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: url! < 1285092164 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :from local devastation, all the way up to the complete and irreversible eradication of all of reality < 1285092165 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I thought the one at the end of H2G2 was pretty good, but they managed to stuff that up by releasing a sequel not written by Douglas Adams. < 1285092170 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: You've read H2G2, right? < 1285092178 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: it's TVTropes, linking to it is pretty evil < 1285092181 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise: the first four books < 1285092188 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: tryyyy < 1285092197 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ah. i won't spoil the fifth for you, then. < 1285092210 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cheater: more to the point, I'm at work and so won't visit the site to get the URL < 1285092218 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I think the page name is "ApocalypseHow", use its search engine < 1285092227 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: How did you not finish reading the series? < 1285092238 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because my parents own an anthology book of the first four < 1285092243 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pah < 1285092244 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :presumably bought before the fifth was written < 1285092253 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ok :p < 1285092256 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the fifth brings it all together wonderfully < 1285092258 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :strangely, I've read other stuff by Douglas Adams and don't really like it < 1285092264 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :H2G2 is good, the rest, not so much < 1285092271 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what did you read? < 1285092277 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Dirk Gently's Holistic Detective Agency is very good. < 1285092278 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I can't remember now < 1285092291 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I read The Meaning Of Liff, but that one actually is pretty clever, if rather shallow < 1285092375 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the fifth book basically ties together the entire series and then puts a big lock on it so nobody can ever make it work again < 1285092392 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(which was then promptly broken in only 17 years) < 1285092490 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :Class Z: Total Irreversible Destruction Of All Of Reality - THE DESTRUCTION OF REALITY ITSELF! The theoretical ultimate goal of the Omnicidal Maniac. < 1285093046 0 :ais523!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285093323 0 :tombom!~tombom@wikipedia/Tombomp JOIN :#esoteric < 1285093501 0 :proff4egg!~proff4egg@213.87.81.137 JOIN :#esoteric < 1285093577 0 :proff4egg!unknown@unknown.invalid QUIT :Client Quit < 1285093874 0 :atrapado!unknown@unknown.invalid QUIT :Quit: Abandonando < 1285095289 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : the fifth book basically ties together the entire series and then puts a big lock on it so nobody can ever make it work again <-- which series? < 1285095303 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh, you mean hhgtg? < 1285095317 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I haven't read the new book < 1285095327 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the new one is 6 < 1285095328 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :not 5 < 1285095332 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :6 sucks. < 1285095339 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :5 is Mostly Harmless < 1285095344 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, yes < 1285095355 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, you misunderstood me < 1285095363 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I was commented on the book that broke the lock < 1285095370 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :when I said I hadn't read the new one < 1285095378 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I know 5 is mostly harmless < 1285095407 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :right < 1285095412 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i meant breaking the lock in a bad sense < 1285095427 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, indeed, I heard as much < 1285095471 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, anyway, you could write side stories, like Adams did himself. Thinking of that short one about Zaphod. < 1285095473 0 :cheater!unknown@unknown.invalid PRIVMSG #esoteric :alise: http://paste.pocoo.org/show/263554/ < 1285095483 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, which is iirc set before the first book < 1285095497 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :well, "before" is a bit tricky in any series that has time travel < 1285095503 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :in a non-paradoxical way < 1285095543 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :or rather, it points out some of the paradoxes, and them promptly ignores them < 1285095575 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cheater: ow. < 1285095577 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: /msg < 1285095583 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ACTION looks < 1285095685 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :cheater, wait a second, the same file is mentioned several times after each other? Also "included from"? < 1285095703 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :cheater, isn't java's importing stuff more like that of, say, python? < 1285095754 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :alise: thanks for trying x3 < 1285095824 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :augur: Trying? < 1285095826 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :augur: oh right that < 1285095942 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :alise: i think i understand the issue, i just needed to see how it played out in an actual program < 1285095949 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :i learn be seeing evaluations and stuff < 1285096506 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, or Slereah: there? < 1285096562 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, Slereah do you think planescape would work in winxp in virtualbox? < 1285096568 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :http://appdb.winehq.org/objectManager.php?sClass=application&iId=294 doesn't look too reassuring < 1285096583 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :oh wait, different versions hm < 1285097185 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I seem to recall I've succesfully played with wine. < 1285097245 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I am there < 1285097254 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Nigga I don't know shit about Linux < 1285097270 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :wine is p cool < 1285097290 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :i should see if the world of goo demo runs in wine < 1285097350 0 :sftp!~sftp@79.174.50.208 JOIN :#esoteric < 1285097361 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: if Slereah is right, then i'd run win98 with the original version put on one hard drive < 1285097375 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :failing that, xp with the dvd version < 1285097413 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :As I said, I think the problem with the CD version is mostly modern video cards < 1285097426 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I have not been able to find the dvd version < 1285097435 0 :FireFly!~firefly@unaffiliated/firefly JOIN :#esoteric < 1285097448 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: then run win98 < 1285097453 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :no need to run all of xp if you don't have to, right? < 1285097468 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I have xp x64 in a vm already < 1285097470 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and finding a win98 cd is super easy on torrents < 1285097471 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :thus... less work? < 1285097475 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: well it's unlikely to work with 64-bit... < 1285097480 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, and I can get win98 legally :P < 1285097482 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :msdnaa has it iirc < 1285097486 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :do that, then < 1285097491 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :XP x64 has pretty bad compatibility with things like games < 1285097494 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and it'll be a lot heavier < 1285097508 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :plus as Slereah says the old version probably wouldn't even run on 32-bit XP < 1285097518 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, that means playing it on my laptop though, desktop lacks hw virtualisation < 1285097531 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :why laptop? < 1285097540 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, because it has hw virtualisation < 1285097543 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you said you had it in a vm < 1285097544 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :unlike desktop < 1285097547 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so... < 1285097550 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you'd be doing that anyway < 1285097553 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, yes... and xp is in the vm on the laptop < 1285097555 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :besides, dude < 1285097559 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I meant "as opposed to wine" < 1285097559 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :software virtualisation is fast < 1285097561 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :in fact < 1285097569 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :virtualbox for 32-bit windows was faster than hardware virtualisation < 1285097571 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :at least for a time < 1285097575 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :erm < 1285097578 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1285097578 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :virtualbox running 32-bit windows < 1285097579 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that is < 1285097582 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1285097590 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so i'd just use put win98 in virtualbox on the desktop < 1285097597 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm disk space on laptop < 1285097599 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :*hrrm* < 1285097608 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :how much does it take? < 1285097615 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :windows 98 that is < 1285097618 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :not the game < 1285097622 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I found those numbers already < 1285097662 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: not much < 1285097669 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: 200 mb installed or so < 1285097671 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'd say < 1285097727 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285097778 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1285097812 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, oh hm I have MS DOS 6.2 and MS-DOS 6.0, and Windows 3.1 for worksgroup, and all the modern ones from XP and onwards. Just not 9x < 1285097824 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :on msdnaa I mean < 1285097865 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, oh well, trying in wine first... then we will see < 1285097873 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i like windows 95 :) < 1285097907 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :win95 was easily the best OS of its time < 1285097930 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :how did MS sink so low as to then produce WinME < 1285097939 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :quintopia, nah, I would say contemporary *nix beat it. Sun OS and such < 1285097955 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :spoken like someone who's never used Sun OS < 1285097957 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*SunOS < 1285097967 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I have used solaris, sure not quite the same < 1285097970 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(or read an old usenet FAQ that was 90% workarounds for SunOS' stupidity) < 1285097998 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, anyway BSD4.3 would have been around back then iirc? < 1285098007 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :if not even later versions < 1285098017 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :linux was not really usable yet back then < 1285098072 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :the thing about Win95 that made it so great was how much frickin effort they put into making every little thing they could think of compatible with it < 1285098084 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: buying anything other than an x86 box was an expensive proposition... < 1285098085 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it wasn't like "here's the OS make software for it" < 1285098094 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :quintopia: also, it was the last version to ship with a usable Explorer < 1285098099 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :it was more "alright, here's the software we want to continue to support, here's the OS for it" < 1285098150 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, well yes < 1285098164 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I was just arguing against " win95 was easily the best OS of its time" < 1285098165 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: 386BSD... maaybe < 1285098167 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i don't think they had X < 1285098168 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :maybe they did < 1285098170 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :if they did it was a pain < 1285098171 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :twm fuck yeah < 1285098175 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :or fvwm, i guess < 1285098178 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but still, very slapdash < 1285098195 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1285098199 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1285098200 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, hey people still use twm. Like the teacher in the programming course. twm without the green colours < 1285098203 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Free/NetBSD were around then < 1285098214 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :just use them :P < 1285098219 0 :quintopia!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1285098221 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :when I asked he said something, "it worked in 1995, it still does" < 1285098222 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but anyway, windows 95 had actually useful applications and games. < 1285098226 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :something like* < 1285098236 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :unlike the others < 1285098241 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :anyway it wasn't more crashy than classic mac os < 1285098243 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, games certainly < 1285098245 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it wasn't a buggy OS < 1285098250 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it just let every program do what the fuck it wanted < 1285098253 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, not sure about programs. Depends on what you were doing I guess < 1285098256 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :like the Amiga, classic Mac OS, etc. < 1285098274 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, SunOS did *not* let every program do what they wanted < 1285098277 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that was my point < 1285098313 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, hm was NT 4 around back then? < 1285098497 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :1996 < 1285098502 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and besides, it didn't have DirectX < 1285098584 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: actually, planescape: torment may work on win95. < 1285098596 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :win95 lacks IE explorer.exe, so i heartily recommend it. also, it installs smaller. < 1285098674 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, installing in wine, lets see if this works well or not < 1285098710 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, less work than the alternative if it works < 1285098722 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and it is supposed to work for some versions, no report for wine 1.3.x < 1285098726 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :which seems to be what I have < 1285098810 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, http://sprunge.us/TDMA < 1285098830 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I want a bunch old machiiiiines < 1285098832 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*bunch of old < 1285098871 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, who doesn't < 1285098941 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :nazis < 1285098956 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'd like < 1285098959 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :have a whole room of them < 1285098967 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Over here, this is the Plan 9 cluster..." < 1285098975 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"...the Windows 95 beowulf..." < 1285098997 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"...here's my complete collection of all Symbolics Lisp Machine models..." < 1285099005 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"...a pony..." < 1285099015 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :windows95 beowulf? I doubt it < 1285099033 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :well it doesn't work well in wine I can say. Oh well < 1285099048 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Windows XP Embedded, commonly abbreviated "XPe", is a componentized version of the Professional edition of Windows XP. An original equipment manufacturer is free to choose only the components needed thereby reducing operating system footprint and also reducing attack area as compared with XP Professional. Unlike Windows CE, Microsoft's operating system for portable devices and consumer electronics, XP Embedded provides the full Windows API, and support for < 1285099048 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : the full range of applications and device drivers written for Microsoft Windows. The system requirements state that XPe can run on devices with at least 32MB Compact Flash, 32MB RAM and a P-200 microprocessor. XPe was released on November 28, 2001. As of October 2008, the newest release is Windows XP Embedded Service Pack 3." < 1285099049 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*Well.* < 1285099058 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Looks like MiniXP has found a way to become even smaller. < 1285099094 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :was worth a try anyway < 1285099109 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"XPe adds a USB boot option to Windows. An XPe embedded device can be configured to boot from a USB drive." < 1285099110 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Awesome. < 1285099403 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, did the 0000-0000 and so one work in 98? < 1285099406 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :or just in 95? < 1285099430 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: the what? key? < 1285099433 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :dunno < 1285099434 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, yeah < 1285099438 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :there were no keys, dude < 1285099441 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :in 95 < 1285099443 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1285099450 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :then it was 98 that it worked with < 1285099450 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285099460 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I have an OEM 98 key somewhere < 1285099464 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :just no working cd < 1285099470 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :wonder if that will work < 1285099496 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :unlikely < 1285099499 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :95! 95! woo hoo hoo! < 1285099504 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :95! 95! woo hoo hoo! < 1285099542 0 :augur!~augur@129-2-175-79.wireless.umd.edu JOIN :#esoteric < 1285099547 0 :Phantom_Hoover!~phantomho@cpc3-sgyl21-0-0-cust116.sgyl.cable.virginmedia.com JOIN :#esoteric < 1285099566 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1285099649 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, meh < 1285099663 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: here, chant for 95 with me! < 1285099676 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in Windows 95? < 1285099696 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1285099703 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :over 98 < 1285099705 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the chant is: 95! 95! woo hoo hoo! < 1285099724 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it was good for its time, so long as you didn't let it into contact with the outside world < 1285099752 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it's not any less safe than classic mac os :P < 1285099815 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :interesting how virtualbox tries to guess the type of OS from the name you are about to give the VM < 1285099919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1995 was before the Internet really took off, wasn't it? < 1285099931 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, it was around, and people were aware of it, but didn't really see how it applied to them < 1285099970 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ais523, 1995 or maybe 1996 was when my dad got internet < 1285099982 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :28 kbps dialup < 1285099988 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I was /born/ in 1995. < 1285099994 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Late 1995, at that. < 1285100012 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, yeah you are too young to remember how it was before internet I expect < 1285100030 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :when if you didn't know something you went to check the encyclopedia < 1285100033 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and that was one in paper < 1285100035 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :not wiki based < 1285100042 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal, I had no internet access at all during my formative years! < 1285100046 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and if you didn't find it there: tough shit < 1285100064 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, I hardly had internet access as such, I mean, it was expensive "pay per connected minutes" < 1285100078 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I had *nothing*. < 1285100079 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :by the time i was looking things up i had the internet yeah < 1285100080 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, I watched dad use it to send mail for work stuff sometimes < 1285100088 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, I remember macpaint, on the old classic < 1285100104 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :vaguely < 1285100690 0 :ais523_!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1285100725 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, not 95 btw, for the simple reason of no ACPI -> idle loop is a busy loop < 1285100747 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :windows98 can do it as HLT with some trickery < 1285100777 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :What *is* ACPI? < 1285100829 0 :ais523!unknown@unknown.invalid QUIT :Ping timeout: 252 seconds < 1285100838 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, ... google? < 1285100850 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I can't be arsed to explain something I know have a good wikipedia page < 1285101146 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :ive attempted to increase my britishness by eating a ploughmans lunch. < 1285101513 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I don't think I've ever eaten a ploughman's lunch. < 1285101524 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :nor i < 1285101535 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ais523_, and you? < 1285101553 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well its not bad < 1285101558 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :wouldn't fit within my diet < 1285101573 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :mine is as emulative of the one on the wikis < 1285101588 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :that is, cheese, onion, and buttered bread < 1285101670 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :augur, I conclude that you have made yourself less British with respect to this channel by eating a ploughman's lunch. < 1285101687 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: well this channel isnt very british, so that can only be a good thing < 1285101723 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :By "with respect to this channel" I mean "with respect to the channel's British regulars". < 1285101740 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :theyre not very british either < 1285101749 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i am deeply offended < 1285101760 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well, alise is. alise is the epitome of britain, in that he's a tiny version of david deutsch < 1285101767 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :and david deutsch is especially british < 1285101771 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :especially english, even < 1285101812 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :augur, I strongly suspect you to be conflating "British" with "upper-class English". < 1285101836 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :im not, im just being liberal in my use of the word british :D < 1285101853 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Waitaminute, Deutsch is Israeli. < 1285101890 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :an israeli citizen maybe < 1285101904 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :http://www.edge.org/3rd_culture/deutsch/deutsch_index.html < 1285101908 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :but look at that man < 1285101913 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :how much more english can you get < 1285101978 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :That page does not have a single mention of the word "tea". < 1285101981 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :QED. < 1285101991 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :its an Edge.org page < 1285102000 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :deutsch's books are nothing but tea < 1285102043 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :"Quantum computers could theoretically be used to create the perfect cup of tea." < 1285102077 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :well we know what happens when an englishman tries to use quantum magic to get tea < 1285102117 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Schrödinger's teacup. < 1285102127 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :It is broken and not broken at once. < 1285102147 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :When you try to pour tea into it, you get scalded and not scolded. < 1285102151 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :*scalded < 1285102153 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Oops. < 1285102614 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I'm selecting to install microsoft chat. Just for the laughs < 1285102653 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: It works for Jerkcity. < 1285102660 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, hm? < 1285102665 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://www.jerkcity.com/ < 1285102666 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :The only webcomic. < 1285102680 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Jerkcity is a webcomic published almost daily since 17 August 1998. It follows the adventures of its four main characters — Pants, Rands, Deuce, and Spigot — and their nonsensical adventures within the Jerkcity universe. The strip's backgrounds and the appearance of its characters are generated with the long-defunct application Microsoft Comic Chat, which features the artwork of Jim Woodring. The spirit of the strip is summed up in its official motto, " < 1285102680 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Slurping and drooling and hurrrr."[1]. < 1285102686 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ouch < 1285102700 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Basically they say "cocks" on IRC and then it gets posted as a comic. < 1285102716 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :The guy who invented it is also http://randsinrepose.com/, which is rather more intellectual. < 1285102721 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Well, "invented"; started. < 1285102779 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"The primary themes of Jerkcity include [list of sins]; also, cocks[35]." -- Wikipedia; reference 35 is http://www.jerkcity.com/jerkcity4184.html. < 1285102781 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Brilliant. < 1285102819 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :someone actually came in IRC using that program, IIRC < 1285102830 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :every line they said had a bunch of random characters in square brackets at the start of it < 1285102834 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1285102835 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :which they couldn't see < 1285102853 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :" character could express a specified emotion, possibly making IRC chatting a more emotive and expressive experience" < 1285102854 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :I think it was in #irp < 1285102855 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :perhaps that < 1285102857 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*"this character < 1285102866 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Although Comic Chat could be used in text-based chat rooms as well, it added a code at the beginning of every message to communicate the character's expression to other chat clients. This had a somewhat annoying effect on non-Comic Chat users (although it could be disabled). < 1285102867 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1285102868 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I wonder if win98 will now *overestimate* the tiem for once < 1285102871 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah it seems so < 1285102876 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it jumped from 40 minutes to 28 < 1285102879 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :!!! < 1285102880 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Microsoft Comic Chat installed a custom font, Microsoft Comic Sans, that users could use in other applications and documents. < 1285102885 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I remember it used to underestimate it < 1285102889 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :THE ORIGIN OF THE EVIL < 1285102892 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :alise: did you not know that it was that that invented Microsoft Comic Sans? < 1285102893 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Well, Bob is the origin. < 1285102893 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, didn't you know it came from there? < 1285102895 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :But this is the spreader. < 1285102897 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523_: wrong < 1285102902 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vincent Connare designed it for Bob < 1285102907 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :well < 1285102907 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that < 1285102909 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :explains < 1285102910 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :it was designed too late for Bob < 1285102911 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :MY GOD < 1285102911 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :so much < 1285102914 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but < 1285102919 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :he gave them it anyway < 1285102921 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal, GET OUT BEFORE IT'S TOO LATE < 1285102922 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :ah, you know about what happened before it was released < 1285102928 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, what? < 1285102930 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :I should look up what Microsoft Bob was some time < 1285102944 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :you mean you don't know? < 1285102955 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :no < 1285102960 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal, it's the origin of Comic Sans! < 1285102960 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I hereby present the canonical comic about Comic Sans. < 1285102961 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://achewood.com/index.php?date=07052007 < 1285102962 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :although apparently it's pretty horrific < 1285102974 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :It's pure, irredeemable typographical evil! < 1285102975 0 :ais523_!unknown@unknown.invalid PRIVMSG #esoteric :what little I've heard of it almost makes me not want to know < 1285102979 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :("WHAT DO YOU THINK YOU'RE RUNNING FROM?! THE DISEASE IS INSIDE OF YOU!") < 1285103018 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Vincent_Connare < 1285103021 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :THIS IS HE < 1285103022 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Comic Sans 2010 continues to take the world media by storm < 1285103022 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ascender Corporation (Illinois, USA): Ascender releases new OpenType font pack for Microsoft Office 2010 with Expanded Super Comic Sans 2010" < 1285103025 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's NOT EVEN A JOKE < 1285103029 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :AAAAAAAAAAAH < 1285103033 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :KILL ME NOW < 1285103043 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Because the Comic Sans you had before WASN'T ENOUGH" < 1285103050 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://www.connare.com/whycomic.htm < 1285103055 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :In which he tries to defend himself < 1285103055 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :oklopol isn't even here to give us his delightfully Philistine views on typography. < 1285103067 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Comic Sans is INDEFENSIBLE < 1285103071 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Comic Sans was NOT designed as a typeface but as a solution to a problem with the often overlooked part of a computer program's interface, the typeface used to communicate the message. < 1285103071 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :There was no intention to include the font in other applications other than those designed for children when I designed Comic Sans. The inspiration came at the shock of seeing Times New Roman used in an inappropriate way." < 1285103080 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: "philistine"; I prefer "post-". < 1285103087 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :oklopol is a post-modern post-typographer. < 1285103093 0 :ais523_!unknown@unknown.invalid NICK :ais523 < 1285103153 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :*post-aesthetics < 1285103175 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :he has aesthetics, they're just more minimalist than minimalism < 1285103180 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i'm not sure he thinks anything should exist at all < 1285103222 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, when this is done installing and I get more than 640x480 screen res (found a thread on vbox forums about that) I will bring ms comic chat into here < 1285103252 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: But Planescape is 640x480. < 1285103260 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :also, you use that bear program < 1285103263 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, anyway it seemed windows 98 installer managed to underestimate time even on virtualbox < 1285103268 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :driver < 1285103270 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the vesa driver < 1285103272 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, indeed < 1285103277 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, that is what I'm going to install < 1285103278 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :my favourite program <3 < 1285103283 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, why is that? < 1285103293 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i used it to use win 95 in the vm :P < 1285103297 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1285103298 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i liked those bears! < 1285103304 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :now i can't find the site < 1285103304 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, where did it show bears? < 1285103306 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: on the website < 1285103308 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :there are bears < 1285103309 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :at the top < 1285103312 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :or the bottom, or both; I forget < 1285103313 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :What is that bear program? < 1285103320 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: VESA driver for Windows 9x < 1285103321 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, VBEMP? < 1285103324 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(and also XP but nobody uses that) < 1285103331 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://navozhdeniye.narod.ru/vbemp.htm < 1285103334 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :where are the bears... < 1285103337 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :E-Mail: bearwindows_at_operamail_dot_com | Last update: July 09th 2010 < 1285103349 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :bearwindows.boot-land.net? < 1285103352 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :VESA? < 1285103352 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :is the one I have < 1285103354 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :there are bears somewhere < 1285103359 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :aha, indeed < 1285103363 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://bearwindows.boot-land.net/ < 1285103365 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :look at the bears < 1285103377 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: generic graphics interface < 1285103379 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, at the top yeah < 1285103382 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :like super-super-VGA < 1285103391 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :no 2D acceleration, but it gets you a decent range of resolutions on basically all graphics hardware < 1285103396 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so it's often used as a default driver < 1285103398 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: and bottom! < 1285103406 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :WOOO BEARS!!! < 1285103426 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Old adapters support like EGA, CGA, Hercules etc. for testing purposes only :)" < 1285103429 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Windows 95 on Hercules. Now. < 1285103460 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285103470 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://upload.wikimedia.org/wikipedia/commons/8/83/Arachne_CGA_Mode.png ;; 640x200: this is an actual CGA resolution. < 1285103490 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, how awkwardly wide screen < 1285103498 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :640x1 < 1285103501 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :fuck Euclid! < 1285103534 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: VBEMP's one flaw is that it can't set widescreen resolutions < 1285103537 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :even with PowerStrip < 1285103539 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(various versions) < 1285103549 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but i think it is technically possible to ask for wide resolutions using VESA < 1285103551 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :just nobody does it < 1285103561 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Noneuclidean display modes! < 1285103576 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: "Here we view an image of Cthulhu AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA < 1285103581 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I plan to run it in windowed mode anyway < 1285103586 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, so not much of a problem for me < 1285103592 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :windowed games are rubbish < 1285103611 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I meant windowed mode for virtualbox < 1285103613 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :not for the game in it < 1285103628 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, anyway I can get virtualbox to add black borders around < 1285103633 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :if I just maximise the thing < 1285103657 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, also if windowed games are rubbish, are you suggesting the classical mine sweeper is? < 1285103672 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that's hearsay! < 1285103678 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :minesweeper isn't exactly immersive < 1285103684 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: try scaling. it works. seriously. < 1285103691 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :as long as it's a multiple < 1285103692 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, hm < 1285103714 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(there are quite good smoothing scalers but they only work on really low-res stuff; 320x200 adventure games etc.) < 1285103721 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(not in the realms of dithering and the like) < 1285103759 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, they work great on zsnes games < 1285103884 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : fuck Euclid! <-- ? < 1285103971 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, win95 with orthogonal persistence. Highly unrealistic but do you like the idea? < 1285103983 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :How would it *work*? < 1285104014 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :All existing OSes rely on the disk/memory separation fundamentally. < 1285104046 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, I don't know, I was just asking about the *idea* < 1285104177 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I've indoctrinated Phantom_Hoover so wonderfully! < 1285104213 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Praise be to alise, for he is almighty. < 1285104227 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*(s)h/it < 1285104232 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, from what I remember palm OS has orthogonal persistence < 1285104244 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: quite likely. < 1285104252 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, so not all current OSes rely on it < 1285104261 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :on fs that is < 1285104264 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :large parts of the stock iPhone set do orthogonal persistence too -- Notes, for instance < 1285104268 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :persisted to the FS internally, but < 1285104280 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :the real thing with orthogonal persistence is that it has to be automatic, from a code perspective < 1285104292 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, I don't know if that is the case for palm os or not < 1285104306 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :unlikely < 1285104395 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :damn, virtualbox crashed on windows 98 post-setup configuration < 1285104416 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :lets see if it is recoverable < 1285104469 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :perhaps < 1285104527 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I'll just leave it, at least it is alternating between reading/writing disk in an irregular pattern, so probably not just locked up < 1285104572 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah a dialog! < 1285104573 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285104579 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :enter password for MS networking huh < 1285104586 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ACTION clicks OK < 1285104618 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :then nothing much...? < 1285104634 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :irregular disk access, so still hope < 1285104693 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :"Lisp Machine keyboard to PS/2 Converter - PIC16F84A firmware" < 1285104695 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :https://code.google.com/p/lmkbd/ < 1285104700 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :From the man who brought you LoperOS. < 1285104706 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Or, rather -- failed to bring you, so far. < 1285104707 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*Loper OS. < 1285104729 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ah it restarts the whole post install thing, mostly < 1285104732 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :not quite the same < 1285104766 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, https://code.google.com/p/lmkbd/source/browse/trunk/README < 1285104768 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :considering that < 1285104771 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I don't know... < 1285104779 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Hey, it has code. < 1285104785 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :now it is again at the phase it previously crashed in < 1285104791 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And that file's a year older than the assembly. < 1285104814 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :https://code.google.com/p/lmkbd/source/list < 1285104819 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :very useful commit messages XD < 1285104910 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, the only change in 2008 was "update email address" < 1285104911 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :so um < 1285104920 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :meh < 1285105140 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, classic mac had way better backward compat than windows < 1285105157 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :err what < 1285105166 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :windows 7 still runs almost all windows 3.1 programs < 1285105177 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i think there's like one that doesn't run < 1285105214 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :er wait < 1285105215 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :what about the planescape cd < 1285105218 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :windows 7 runs *all* windows 3.1 programs, < 1285105224 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :XP even runs Windows 1.01 programs: < 1285105224 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://toastytech.com/guis/miscwin1xp.png < 1285105230 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :iirc windows 7 broke support for one or two of the 1.01 programs < 1285105234 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :beat that < 1285105239 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, yeah but what about planescape? < 1285105258 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: the transition from 9x to NT was painful. games tend to access hardware in a quite low-level fashion. < 1285105261 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :even directx may have had some issues < 1285105269 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285105279 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :ooh win98 startup sound < 1285105280 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :anything poking around the internal mac stuff wouldn't have liked a new mac model < 1285105285 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :windows 95's is bette < 1285105287 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*better < 1285105287 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :huh, not as I remembered it < 1285105289 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1285105289 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :composed by brian eno, bitch < 1285105310 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, "who"? < 1285105316 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :... < 1285105332 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :basically invented ambient music? < 1285105342 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Music for Airports? < 1285105345 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Discreet Music? < 1285105354 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :blank < 1285105393 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :you fail < 1285105399 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :he's amazing < 1285105422 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, "Heitor Villas-Lobos"? < 1285105425 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: he managed to convince microsoft to give him royalties < 1285105428 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :for the 95 sound < 1285105429 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :imagine how that went :) < 1285105437 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, "not him in 98" < 1285105442 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :is how it went I imagined < 1285105444 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : alise, "Heitor Villas-Lobos"? < 1285105445 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :imagine* < 1285105446 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1285105456 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i never said /his/ name. < 1285105457 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, Choros? < 1285105474 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, do you not know who I'm talking about? < 1285105476 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I don't see the relevance. < 1285105477 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :if so: you fail < 1285105484 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that is the relevance :O < 1285105487 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :s/O/P/ < 1285105495 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :brian eno is actually famous for being amazing, though. < 1285105502 0 :Mathnerd314!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds < 1285105502 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :brb. < 1285105515 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, so is the name I mentioned. In the right places < 1285105653 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(Better places) < 1285105704 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, you know him? < 1285105707 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :of him* < 1285105721 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, good < 1285105753 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, I have right in front of me a 7-cd box with his complete works < 1285105800 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :unless I'm mistaken. Complete Choros and Bachianas Brasilerias anyway + complete solo guitar music < 1285105996 0 :Mathnerd314!~mathnerd3@128.198.97.131 JOIN :#esoteric < 1285106241 0 :Sgeo!unknown@unknown.invalid QUIT :Ping timeout: 252 seconds < 1285106298 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, it wants to setup dialup, how do I get it to use ethernet < 1285106301 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it sees the interface! < 1285106303 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :so wtf < 1285106381 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :huh windows crashed < 1285106645 0 :Gracenotes!unknown@unknown.invalid QUIT :Ping timeout: 272 seconds < 1285107084 0 :Sgeo!~ubuntu@ool-18bf618a.dyn.optonline.net JOIN :#esoteric < 1285107092 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :o.O at The Guild < 1285107095 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :amazing episode < 1285107169 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :alise, what advice have I been ignoring? < 1285107242 0 :MigoMipo!unknown@unknown.invalid QUIT :Quit: Quit < 1285107404 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: "recover it *now*" < 1285107435 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I want to do that < 1285107479 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :But I can't comply, unless it's 100% safe to leave a computer with a power supply from 2000 running for over a week, sometimes unsupervised... < 1285107569 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, that bearvideo driver makes stuff crash < 1285107577 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if qemu will do better < 1285107596 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :works fine with win95 in virtualbox for me. < 1285107603 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1285107606 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Of course it's safe ... < 1285107617 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And no, you didn't do that. < 1285107618 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It can't catch fire or anything? < 1285107621 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :As soon as you reported it we told you to. < 1285107622 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :You waited days. < 1285107625 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: ... < 1285107891 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, he is an incurable idiot, just accept it and give up. Saves on head desking < 1285107923 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: you're being stupid, but i'm not one to blatantly insult people in a public message addressed to someone else. Vorpal is retarded. < 1285107956 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION assumes that that was intentional hypocracy < 1285108038 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :<3 SGU < 1285108248 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :"yep, i'll be more worried about a old CRT monitor catching fire then any computer/computer psu < 1285108249 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :" < 1285108254 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Then again, that's one random person < 1285108314 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :My dad said that power supplies do short out... < 1285108323 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :your dad says a lot of stupid stuff. < 1285108432 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to want evidence, one way or another < 1285108438 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I want to see a trustworthy source < 1285108495 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I never seen a PSU fail, I had one suspected PSU failure years ago, turned out it was mobo. It was not violent in any way < 1285108500 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :just didn't boot < 1285108503 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and that was desktop < 1285108529 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :The computer I want to use is a desktop < 1285108537 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :well, no issue really < 1285108551 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :PSUs do generally not fail < 1285108563 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Even ones from a decade ago? < 1285108569 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1285108598 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, just check for dust and blow it away if possible if you are really worried, but seriously nothing to be worried about < 1285108611 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :it isn't like copying disk data will be a heavy task anyway < 1285108629 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I won't need to copy this CD if I make a GRUB CD < 1285108647 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That would also make starting this computer much more convenient < 1285108654 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, or why not just restore from your backups < 1285108659 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that might be easier < 1285108662 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I don't have backups... < 1285108678 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, will you at least start with backups from now on? < 1285108681 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :On the other hand, is there any way to just locate and pull out the stuff I care about? < 1285108688 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, no there isn't < 1285108691 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal, I guess... don't know where I'd back up to < 1285108695 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :pull the disk image then work on that < 1285108703 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, get an external 250 GB disk or such < 1285108705 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :that's cheap < 1285108716 0 :FireFly!unknown@unknown.invalid QUIT :Quit: swatted to death < 1285108727 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What happens when I get a 2TB drive for a new computer? < 1285108744 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, well, then you would presumably need to grow backup device as well < 1285108749 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :but I wouldn't get a 2 TB one < 1285108764 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :large disks are not as reliable from what I heard < 1285108770 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :1 TB is about max I would get < 1285108778 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :if I needed more I would get several and use in RAID5 or such < 1285108834 0 :GreaseMonkey!~gm@121-73-165-42.dsl.telstraclear.net JOIN :#esoteric < 1285108835 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and of course backups < 1285108835 0 :GreaseMonkey!unknown@unknown.invalid QUIT :Changing host < 1285108835 0 :GreaseMonkey!~gm@unaffiliated/greasemonkey JOIN :#esoteric < 1285108887 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, but in general backing up documents is probably more important than downloaded movies and programs. Programs can be reinstalled. TV shows could be re-downloaded < 1285108961 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, also a cool trick for hot backup that I seen is that if you have 3 disks, you constantly have two in RAID1, and then add a third one and let it sync, then deattach one. Now it is a backup. < 1285108967 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I haven't tried it myself < 1285109008 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :but with hardware RAID with dirty bitmap it is probably quite nice (such bitmaps in linux software raid have abysmal performance) < 1285109489 0 :tombom!unknown@unknown.invalid QUIT :Quit: Leaving < 1285109913 0 :augur!unknown@unknown.invalid QUIT :Ping timeout: 272 seconds < 1285110025 0 :nooga!~nooga@maverick.aircity.pl JOIN :#esoteric < 1285110028 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :berk < 1285110161 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Ok < 1285110167 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Now I just need to convince my dad... < 1285110178 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :When he wakes up < 1285110480 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :alise, have I ever been madly in love with Haskell? < 1285110501 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I think falling in love is how I learn languages, unless I have to learn the language for some other reason < 1285110802 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :is therea way to write a perl regexp that matches strings that DO NOT contain specified substring? < 1285110819 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :(straightforward way) < 1285110849 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : Now I just need to convince my dad... When he wakes up <-- how old is he? < 1285110857 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :and how old are you? < 1285110870 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :I assume 70 and <18 < 1285110881 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :since otherwise there would be no need to convince him < 1285110901 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm 21 :/ < 1285110917 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo, then why the fuck do you need to care about what your dad thinks < 1285110927 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :you are an adult! < 1285111010 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :swedes are weird < 1285111016 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :nooga, how so? < 1285111026 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :nooga, if it is something specific maybe I can help explain it < 1285111029 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :you turn 18, ding, you're an adult < 1285111043 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: (/msg) < 1285111045 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :leave home < 1285111047 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :nooga, well, you can't buy alcohol until 21 < 1285111053 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :really? < 1285111061 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :i guess you guys are a bit weird with alcohol < 1285111063 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :so? < 1285111063 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :state-owned stores and stuff < 1285111070 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, well you can at restaurants. < 1285111075 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :just not in the state owned stores < 1285111078 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :or such < 1285111089 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, or beer (sold in normal supermarkets) < 1285111106 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :my 17yo brother was buying cider all the time ;D < 1285111117 0 :nooga!unknown@unknown.invalid PRIVMSG #esoteric :in supermarkets < 1285111121 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: haha really? < 1285111123 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :beer but no wine? < 1285111427 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :As a reference point, the Finnish state-owned alcohol monopoly sells beer/wine at 18 but "strong" drinks (>22 vol-%) at 20. < 1285111461 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :and i sell heroin to kids at 12! < 1285111521 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and that was retail; for restaurants and such it's just 18 in general. < 1285111526 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: Less weird than the US. < 1285111554 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Where if you're under 21, you basically cannot have alcohol pass your lips. < 1285111719 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric : beer but no wine? <-- is sold in supermarkets yes < 1285111727 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :the 21 year age applies to both < 1285111772 0 :Mathnerd314!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds < 1285111779 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, the only thing it doesn't apply to is consumption at a place with legal right to serve alcohol, such as many (but not all) restaurants, in which case the age limit is iirc 18 or such. < 1285112032 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote host closed the connection < 1285112226 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Vorpal: http://toastytech.com/guis/miscbapps.png < 1285112229 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :windows 95 < 1285112267 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://toastytech.com/guis/miscbmultimedia.png < 1285112274 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://toastytech.com/guis/miscbnetwork.png (flash!!) < 1285112288 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(more: http://toastytech.com/guis/miscb.html) < 1285112299 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :even Tux Racer < 1285112515 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(Yes, that's OS X running on Windows 95) < 1285112931 0 :Gracenotes!~person@wikipedia/Gracenotes JOIN :#esoteric < 1285113147 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, planescape seems to work fine in XP < 1285113181 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :probably because it uses virtualbox graphics drivers < 1285113184 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :rather than actual hardware < 1285113187 0 :GreaseMonkey!unknown@unknown.invalid QUIT :Quit: Welcome honored guest. I got the key you want! would you like onderves. of Yourself < 1285113197 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Microsoft brought the "ribbon" interface to Pain & WordPad as well. < 1285113198 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :*vomit* < 1285113237 0 :augur!~augur@208-59-167-26.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric < 1285113267 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Is the ribbon that bad? < 1285113344 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1285113367 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Really? < 1285113383 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Truly. < 1285113388 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's an exercise in defying the law of least surprise. < 1285113391 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the ribbon is like toolbars, except it takes an extra click < 1285113415 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it's usable, just slower < 1285113418 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, I have never used it, so I can't say. < 1285113423 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Toolbars. Instead of the menu. That are "context-sensitive". With a dynamic hierarchy. < 1285113435 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, it requires you to memorise where everything is, because it's generally less discoverable than menus < 1285113458 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at least, it's slower to scroll over every ribbon to see which one a particular item is on, than it is to scroll over every menu to see which one a particular item is on < 1285113468 0 :Vorpal!unknown@unknown.invalid PRIVMSG #esoteric :alise, hw accel support is active in xp x64 here so hm < 1285113477 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The arrangement of the ribbon is dependent on the window dimensions. < 1285113480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apparently, the reason Microsoft invented ribbons is that they kept getting feature requests for features that were in their applications already < 1285113484 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just nobody had found them on the menu < 1285113500 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I'd call that reason to start paring out features. < 1285113518 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : Microsoft brought the "ribbon" interface to Pain & WordPad as well. < 1285113519 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Pain :-D < 1285113524 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: Hah. < 1285113549 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :http://toastytech.com/guis/win7appuis.png Windows 7: now with 3 completely different UI conventions! < 1285113564 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :First they brought Pain to the ribbon interface ... then they brought the ribbon interface to Pain.