1277683204 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :How do I create a branch in hg?
< 1277683207 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :hg branch poopy?
< 1277683209 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yup
< 1277683216 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Then just go about your business.
< 1277683225 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Literally poopy? :P
< 1277683231 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hg branch dev
< 1277683245 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: BTW, your existing filesystem solution sucks balls.
< 1277683253 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yup.
< 1277683259 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It has a LOT of problems :P
< 1277683264 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :But it does work.
< 1277683265 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And why do you go to the trouble of supportin IE.
< 1277683266 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*supporting
< 1277683279 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :/ A pretty little loader bar while a file is loading
< 1277683281 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I hate you.
< 1277683282 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*//
< 1277683297 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Whoooooo knows
< 1277683299 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Crazy suggestion: Just download everything at the start and stop the slowness.
< 1277683317 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: 1) The slowness is not from downloading, 2) everything is a LOT, 3) no.
< 1277683327 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :New suggestion: Make it less shit, then.
< 1277683340 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :What a super-specific suggestion :P
< 1277683349 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Well, it's shit. Valid complaint.
< 1277683380 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Okay, so where's this magic modular crap?
< 1277683393 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :function Stdout() {}
< 1277683395 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :That stuff?
< 1277683396 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :in mipsio.js
< 1277683414 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Every "file" is just an implementation of a mipsio-type object. Any object with the right shape can be stuffed in its place.
< 1277683426 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :/* Simple 80x25 console in a
< 1277683430 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Wrong, it's not a
in vtconsole.js
< 1277683441 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Where's that comment from? console.js?
< 1277683441 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: So how do I put that somewhere in the fs?
< 1277683444 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :vtconsole.js
< 1277683446 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :copied from console.js
< 1277683449 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh :P
< 1277683451 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Womp womp
< 1277683483 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh, hrm, with the current FS, putting stuff somewhere is ... actually kinda suckage ... the FS layout comes from the server, and is godawfully bad (it's not even JSON :P )
< 1277683500 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I sort of hate you.
< 1277683522 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The FS was a quick hack because I wanted an FS, it wasn't intended to be a real solution. It just stuck because I was too lazy to write anything better :P
< 1277683524 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: How about you stop supporting online JSMIPS? :P
< 1277683527 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ooh, I know.
< 1277683535 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Use that fancy HTML5 storage stuff to only download files once forever.
< 1277683539 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Then it'd suck less.
< 1277683551 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I'm unaware of that component of HTML5 ...
< 1277683569 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Protip: HTML5 has EVERYTHING.
< 1277683570 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Also, I wrote the vast majority of this well before HTML5 :P
< 1277683575 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Not well before.
< 1277683577 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :HTML5 is years and years old.
< 1277683588 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's just only been adopted as a W3C Working Draft recently (year or two ago).
< 1277683593 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Well before HTML5 had any actual use or implementation that is.
< 1277683599 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Opera implemented everything in like 2005 :P
< 1277683607 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Opera NEVER counts.
< 1277683623 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Also, Opera doesn't have
or useful , so, uh, no.
< 1277683640 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Opera is like this awesome small, fast browser that does everything before anyone else and supports all the standards but everyone hates it because it's Opera :P
< 1277683641 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I love it
< 1277683643 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(The hating)
< 1277683677 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: http://dev.w3.org/html5/webstorage/
< 1277683686 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's much more prototypey than HTML5 itself, though.
< 1277683694 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Basically, it's Google Gears, legislated.
< 1277683704 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Hm
< 1277683728 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, I take your complaints as the observation that the FS needs serious work, so I will consider working on it, but probably not today X-P
< 1277683751 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :How am I supposed to add something to the FS with your shitty arch? >_<
< 1277683765 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Suggestion: Have the thing be a php, so that you load the /directory structure/ on page load.
< 1277683776 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's exactly what it does.
< 1277683782 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's what's so shitty :P
< 1277683791 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :No, system.html is not a php.
< 1277683814 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you know who else is not a php?
< 1277683817 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: Note the script tag.
< 1277683876 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Which is to say, note http://codu.org/jsmips/server/dir.php
< 1277683885 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :fine fine
< 1277683906 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I'm going to do something horrible.
< 1277683911 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Hardcode /dev files into dir.php.
< 1277683916 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I blame you; you have made me this creature.
< 1277683917 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's fine *shrugs*
< 1277683924 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Okay, what the fuck @ dir.php.
< 1277683931 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I have no idea what I...
< 1277683933 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Do I just say
< 1277683949 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :dir.children["=/dev/fuck"] = new FuckingDevice();
< 1277683959 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sorry,
< 1277683962 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :dir.children["=_dev_fuck"] = new FuckingDevice();
< 1277683968 0 :pikhq!~pikhq@75-106-123-171.cust.wildblue.net JOIN :#esoteric
< 1277683971 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alise is working on JSMIPS?
< 1277683977 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes. Unfortunately.
< 1277683981 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor is a tramp and a whore.
< 1277683991 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :He has ruined my childhood.
< 1277684001 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :No, something like rootdir.children["=dev"] = new Directory(rootdir);, then thatdirectory.children["=whatevs"] = new Device(whatevs);
< 1277684020 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :No such thing as rootdir here.
< 1277684028 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: In the Xorg tree, hw/kdrive/
< 1277684028 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Oh, yes there is.
< 1277684045 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: yeah we're just gonna do fb driver i think
< 1277684048 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :that code looks gnarly
< 1277684079 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: btw, I vowed never to code PHP again
< 1277684085 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :so I doubly hate you
< 1277684089 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :8-D
< 1277684111 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I just realized that I might be able to think of this in terms of logic gates
< 1277684121 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevFoo an alright name for the classes?
< 1277684130 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Sure, why not *shrugs*
< 1277684143 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevKBD, DevMouse, DevWhateverTheFramebufferIs.
< 1277684159 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I just realised that I looked up Linux framebuffer documentation
< 1277684160 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :XD
< 1277684166 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Hey... stuff only accesses the framebuffer through the dev file, right?
< 1277684170 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :So I just have to implement DevFB or whatever.
< 1277684177 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :What I need to do is make a NAND gate
< 1277684189 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: Uhh, yeah? I thought that was the idea.
< 1277684207 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: My brain thought I'd be writing a framebuffer driver in C for Linux XD
< 1277684210 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I am a bit dim.
< 1277684214 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It is /dev/fb, right?
< 1277684215 0 :pikhq!unknown@unknown.invalid QUIT :Read error: Connection reset by peer
< 1277684219 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: fb0 IIRC
< 1277684223 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Since you can have multiple fbs.
< 1277684226 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ah, indeed.
< 1277684227 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(Hypothetically)
< 1277684261 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :changeset: 158:9ab2534af7a7
< 1277684261 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :branch: dev
< 1277684261 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :tag: tip
< 1277684261 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :user: ehird@localhost.localdomain
< 1277684261 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :date: Mon Jun 28 00:17:59 2010 +0100
< 1277684262 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :summary: *** empty log message ***
< 1277684265 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :How do you obliterate a commit from hg's log?
< 1277684271 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :darcs obliterate, hg ?
< 1277684279 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :If it's the last one, hg rollback
< 1277684285 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Yay.
< 1277684288 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :summary: Now the JS ctx saves the mips reference, so you can introspect in horrible ways.
< 1277684290 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Cthulu OS
< 1277684301 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :abort: no username supplied (see "hg help config")
< 1277684303 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ohh, fuck you.
< 1277684385 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :What's that error from?
< 1277684386 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION installs vim to write commit messages with...
< 1277684394 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION rethinks, installs nano.
< 1277684400 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Already is. How convenient.
< 1277684403 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION sets EDITOR=nano
< 1277684473 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * Copyright (C) 2010 Elliott Hird
< 1277684473 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * See mit.txt for license. */
< 1277684476 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ha! My very own file!
< 1277684478 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*/* above all that
< 1277684495 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Those getTC* functions... wtf are they?
< 1277684501 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :termios stuff?
< 1277684515 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yup *bleh*
< 1277684525 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I believe that the termios stuff is set up to be resilient to them being missing.
< 1277684530 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :But lemme verify that ...
< 1277684541 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yup.
< 1277684549 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :You don't have to implement them if they're not meaningful for you.
< 1277684554 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Good.
< 1277684570 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: do you know the /dev/kbd protocol? Say yes.
< 1277684576 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no
< 1277684587 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, yes, but only because you told me to say it
< 1277684589 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I am sad now.
< 1277684591 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yay.
< 1277684602 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, but I don't actually know the protocl
< 1277684603 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*protocol
< 1277684610 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I just said yes in response to nothing in particular to fulfil the request
< 1277684623 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :but you did what i asked
< 1277684750 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: hmm, it's PS/2
< 1277684752 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(/dev/kbd)
< 1277684755 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :gotta be easy right? P
< 1277684756 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*:P
< 1277684857 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Or, no, it's anything. But PS/2 primarily.
< 1277684862 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*primarily PS/2.
< 1277684868 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I need pikhq, he knows this stuff :P
< 1277684910 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Wait... fb0 is a Linux thing. So we'll be running a Linux-only driver on... nothing. X_X
< 1277684931 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :If I can build a NAND gate, does that imply turing completeness?
< 1277684942 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Or, well, given the existance of memory limitatiojns
< 1277684991 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :No.
< 1277685014 0 :ais523!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277685056 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: What the hell protocol is /dev/fb0....
< 1277685057 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*...
< 1277685058 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :But I thought you could build any logic system with just NAND?
< 1277685064 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: Logic systems have no control structures.
< 1277685074 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Besides, only boolean logic, not actual logic formalisms.
< 1277685275 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reappears.
< 1277685299 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :/dev/fb0 has, I think, the same protocol as VGA text memory, only ... bigger.
< 1277685306 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: The driver is only Linux-only because it's designed for a Linux device, I doubt that it does anything wildly Linux-specific.
< 1277685315 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :[ehird@ping jsmips]$ sudo cat -v /dev/fb0 | head -c50
< 1277685315 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :M-*M-*M-*^@M-*M-*M-*^@M-*M-*M-*^@M-*M-*M-*^@M-*M-*
< 1277685318 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Well, yeah, but still.
< 1277685323 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I thought the "protocol" of /dev/fb0 was that you just write shit to it, it's just a raw framebuffer :P
< 1277685324 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, I have no idea what that /dev/fb0 structure is.
< 1277685332 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Yes, but I mean, how do you get text to appear.
< 1277685335 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Because there's colours and shit.
< 1277685339 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Is it the two-byte VGA format?
< 1277685353 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I mean, there's devfb, so obviously it's a common format to all video devices.
< 1277685358 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Uhhh ... /dev/fb0 is never a text console is it? It's always graphics
< 1277685363 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Well, whatever.
< 1277685372 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :[ehird@ping jsmips]$ sudo wc -c /dev/fb0
< 1277685372 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :10485760 /dev/fb0
< 1277685376 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Not sure how that number is calculated.
< 1277685393 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Idonno ... what's your resolution?
< 1277685406 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :1280x1024. But the framebuffer isn't configured for that, I don't think, with vga=.
< 1277685411 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Yes it is.
< 1277685416 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :So 1280x1024, which != that number.
< 1277685426 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :In fact it's smaller.
< 1277685430 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :1280*1024*8 = that number
< 1277685434 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :No, wait, it's bigge.
< 1277685435 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*bigger.
< 1277685436 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Right.
< 1277685438 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Not that that's much of an explanation.
< 1277685442 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: So, 8 bytes... colour?
< 1277685442 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I was expecting *3 :P
< 1277685444 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe *4
< 1277685447 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :That's 64 bit colour XD
< 1277685453 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277685453 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Woooh
< 1277685457 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I am pretty sure the framebuffer can do text.
< 1277685467 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I mean, shit doesn't manually draw the character shapes ... right?
< 1277685472 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Like the bootup console.
< 1277685481 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's a different device I think.
< 1277685492 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's the framebuffer.
< 1277685495 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Same physical device, different virtual device, that is.
< 1277685505 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Well, it's definitely part of the framebuffer.
< 1277685536 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I know that the framebuffer drivers implement text modes ... but that's not exposed through fb0, that's just for having a text console on systems that can't do VGA text (like all non-PCs for example)
< 1277685566 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Okay.
< 1277685572 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :So... WTF is /dev/fb0's protocol.
< 1277685575 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It can't just be raw pixels.
< 1277685579 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :64-bit colour I think not.
< 1277685589 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :What can I do with something that outputs and toggles when it receives a signal?
< 1277685592 0 :pikhq!~pikhq@75-106-123-171.cust.wildblue.net JOIN :#esoteric
< 1277685597 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I thought it was just raw pixels. Try dd'ing it and seeing if you can make any sense of it given that you know what your screen looks like.
< 1277685597 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Hey! What is /dev/fb0's format?
< 1277685601 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Maybe it's just double-buffered.
< 1277685602 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's pixels_on_screen*8.
< 1277685616 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: It's empty because I'm not using the framebuffer, dude :P
< 1277685631 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Rather, it's filled with the same continually-repeating pattern.
< 1277685637 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :^@M-*M-*M-*
< 1277685640 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :(when cat -v'd)
< 1277685643 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Ohyeah :P
< 1277685686 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: It's raw pixels, twice the size of the raw display.
< 1277685698 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: but ... why twice the size?
< 1277685713 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Also, 32-bit colour? Why? There's no "transparency" on raw graphics :P
< 1277685724 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 248 seconds
< 1277685728 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :There's ioctls that let you change which portion of the buffer is displayed.
< 1277685736 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :HA! I knew it was double-buffered.
< 1277685739 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I'm so friggin' smart.
< 1277685740 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Thus letting you get double-buffering.
< 1277685753 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Does fbdev use those ioctls? If yes, is it optional?
< 1277685753 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It's 32-bit just so that you can treat it as an int array :P
< 1277685758 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Say no, or yes no.
< 1277685762 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :32-bit colour is commonly used by video cards because it's more convenient.
< 1277685783 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I'm sure fbdev does, and I'm sure if you just turned it off and always wrote to the first buffer it would work, just not have the benefits of double-buffering.
< 1277685796 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :fbdev does use those ioctls.
< 1277685807 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :But can you stop it using 'em?
< 1277685816 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :No.
< 1277685816 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Because, let's face it, double-buffering on this is irrelevant.
< 1277685820 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Gah.
< 1277685825 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Your job is to implement the ioctl shit.
< 1277685859 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ioctl = always set errno to ENOTSUP and return -1.
< 1277685859 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Done.
< 1277685861 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric ::P
< 1277685871 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :This is how it does things like figuring out the color map, the size of the display, etc.
< 1277685882 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: gah
< 1277685890 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Could we easily rewrite it to ... just hardcode them?
< 1277685902 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes.
< 1277685920 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Consider that the temporary solution though, eventually there's no reason not to add all the right ioctls.
< 1277685920 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Good.
< 1277685928 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Yeah.
< 1277685936 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Double-buffering will be irrelevant anyway: this will be Glacial OS.
< 1277685940 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :640x480x32 is all anybody should need anyway.
< 1277685943 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: So, what's the PS/2 /dev/kbd protocol? :P
< 1277685956 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: Uh, "fuck if I know".
< 1277685964 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: You know... if we just add sockets and optimise this, it'll be a hit. "Use your favourite applications anywhere" :D
< 1277685967 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Well... start knowing
< 1277685979 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: You know what would be easier?
< 1277685984 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :*Start with the SDL driver*.
< 1277685993 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Okay, wait, so do things using the framebuffer just fseek() around it and write chars there, then flush?
< 1277686005 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Heynow. That may be true. Adding a new SDL backend may be simpler.
< 1277686008 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Obviously, make it not use SDL, but still, that should be the easiest to work with.
< 1277686017 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Oh :P
< 1277686033 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :...meaning that /dev/fb just has to be an in-memory file, and it just has to be totally read and ... okay, now *that* sucks.
< 1277686036 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Given that once SDL's going, all it's doing is *writing pixels and reading keyboard data*.
< 1277686036 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Fuck /dev/fb :P
< 1277686048 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :SDL driver for kdrive?
< 1277686053 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Nope, it's for X.org. So we can't use it.
< 1277686055 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: They mmap /dev/fb.
< 1277686062 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Kdrive also has an SDL driver.
< 1277686066 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Not in the latest tree.
< 1277686075 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://cgit.freedesktop.org/xorg/xserver/tree/hw/kdrive/
< 1277686076 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :xorg-server-1.7.6 has it.
< 1277686077 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Only in the old CVS.
< 1277686080 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I'm *reading it as we speak*.
< 1277686102 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(xorg-server-1.7.6 is the latest stable version of the X server, BTW)
< 1277686111 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://cgit.freedesktop.org/xorg/xserver/tree/hw/kdrive?id=ba2ba32e04f9002dbb60f10e174ac63d16e5f507
< 1277686112 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Fair enough.
< 1277686113 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(erm. LAtest stable in Gentoo)
< 1277686116 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Must have been removed in the 1.8 transition.
< 1277686121 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://cgit.freedesktop.org/xorg/xserver/tree/hw/kdrive/sdl/sdl.c?id=ba2ba32e04f9002dbb60f10e174ac63d16e5f507
< 1277686123 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * Copyright © 2004 PillowElephantBadgerBankPond
< 1277686125 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :s/ $//
< 1277686135 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * It's really not my fault - see it was the elephants!!
< 1277686136 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * - jaymz
< 1277686143 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * PillowElephantBadgerBankPond DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
< 1277686143 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
< 1277686143 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * EVENT SHALL PillowElephantBadgerBankPond BE LIABLE FOR ANY SPECIAL, INDIRECT OR
< 1277686143 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
< 1277686143 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
< 1277686144 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
< 1277686146 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : * PERFORMANCE OF THIS SOFTWARE.
< 1277686148 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I like it already.
< 1277686159 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hah.
< 1277686166 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Okay, so, Gregor! Your job is to modify http://cgit.freedesktop.org/xorg/xserver/tree/hw/kdrive/sdl/sdl.c?id=ba2ba32e04f9002dbb60f10e174ac63d16e5f507 :P
< 1277686190 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Oh, BTW. The format of /dev/kbd is: scan codes.
< 1277686208 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Awesome
< 1277686219 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I don't know scancodes :(
< 1277686220 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: How do you distinguish keydown from keyup
< 1277686244 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: You get the scancodes whenever the key is down. :)
< 1277686384 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. It'd also be easy to just port SDL, I'd imagine.
< 1277686395 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I think so
< 1277686422 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. Actually, SDL has an aalib backend.
< 1277686425 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :DONE!
< 1277686452 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :lawl :P
< 1277686862 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: So, can I just use your system.html for shit and it'll work?
< 1277686865 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Wait, no, I need PHP.
< 1277686865 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Jeez.
< 1277686889 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Unfortunately, it does need to run on a server and have access to PHP, yeah >_>
< 1277686895 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :There's no totally static filesystem.
< 1277686921 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Here, how about this: I'll implement /dev/null and /dev/zero, and you compile it all together :P
< 1277686957 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :You should be able to compile it, and if you just make init/init.c not touch the filesystem, you can even run ... well, something.
< 1277686967 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I don't have a cross-compiler or anything.
< 1277686968 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :So nyah.
< 1277686980 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Eventually you'll need a cross-compiler :P
< 1277686981 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And I need to use the fs to test /dev :P
< 1277686989 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Eventually. Not today! Tomorrow I face living hell, so not tonight.
< 1277687000 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :...do I need to implement write if I have putchar?
< 1277687000 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Ohyah, fs for /dev, whoops X-D
< 1277687003 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Or vice versa?
< 1277687003 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :No
< 1277687008 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :So I can just have write.
< 1277687015 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Then why does stdout have both? :P
< 1277687026 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Do I need flush?
< 1277687041 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Only if it's meaningful for you.
< 1277687054 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :How does getchar signify EOF?
< 1277687058 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*signal
< 1277687067 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :EOF
< 1277687074 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :(There's a variable "EOF" with the value -1 :P )
< 1277687087 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :function DevNull() {}
< 1277687087 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevNull.prototype.write = function(str) {}
< 1277687087 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevNull.prototype.getchar = function() { return EOF; }
< 1277687089 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :That was stunningly easy.
< 1277687102 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's not how getchar works.
< 1277687107 0 :Oranjer!~HP_Admini@adsl-71-1-146.cae.bellsouth.net JOIN :#esoteric
< 1277687109 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :How does it work? this.buffer crap?
< 1277687124 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :function DevNull() { this.buffer = new Array(); }
< 1277687124 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevNull.prototype.write = function(str) {}
< 1277687124 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevNull.prototype.getchar = function() { this.buffer.push(EOF); }
< 1277687124 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Because getchar is blocking, and making blocking things in a PITA in JS, it takes a function, and calls that function with the value gotten.
< 1277687124 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Good?
< 1277687132 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Oh. Jeez.
< 1277687139 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :DevNull.prototype.getchar = function(into) { into(EOF); }
< 1277687148 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :*is a PITA in JS
< 1277687149 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :k, dammit, not into.
< 1277687152 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :k is for kontinuation. :P
< 1277687174 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :function DevNull() {}
< 1277687175 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevNull.prototype.write = function(str) {}
< 1277687175 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevNull.prototype.getchar = function(into) { into(EOF); }
< 1277687175 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :function DevZero() {}
< 1277687175 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevZero.prototype.write = function(str) {}
< 1277687175 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :DevZero.prototype.getchar = function(into) { into(0); }
< 1277687177 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Tada.
< 1277687183 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Good enough for me.
< 1277687208 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: OK, wanna give me an hg account?
< 1277687214 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Actually, I may still have one...
< 1277687219 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :commit URL?
< 1277687224 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :abort: push creates new remote branches: dev!
< 1277687225 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Same.
< 1277687225 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Waah?
< 1277687228 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Just use -f?
< 1277687231 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's just a warning, use -f
< 1277687231 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yeah
< 1277687238 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :What would my user be?
< 1277687241 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ehird?
< 1277687246 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Idonno, probably? If you have one :P
< 1277687248 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :ACTION checks
< 1277687249 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I think I do.
< 1277687285 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :anyone here know if it is possible to make an endless loop on the Zuse Z3?
< 1277687295 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :it is TC
< 1277687298 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: Nope.
< 1277687328 0 :pikhq!unknown@unknown.invalid QUIT :Read error: Connection reset by peer
< 1277687330 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :cheater99: If it's TC, then it's possible to make a never-ending computation, although perhaps not as an infinite loop per se (infinite recursion or whatnot)
< 1277687348 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Gimme one :P
< 1277687363 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :https://codu.org/projects/trac/jsmips/register
< 1277687366 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :well, i would like to hopefully create a program for it that controls 16 outside lamps and turns them on and off in a repeating cycle
< 1277687383 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Dude, that's so conformist.
< 1277687414 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Give ehird some sexy pushing privileges
< 1277687443 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Granted
< 1277687547 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Please assemble a sexy system.html from the dev branch.
< 1277687551 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :If it doesn't work, yell at me.
< 1277687582 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Hey ho, trac doesn't understand branches.
< 1277687587 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :So it's displaying my changes as the main branch.
< 1277687605 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Trac's repo browser sucks assface.
< 1277687605 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Wait.
< 1277687609 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I forgot to add dev.js :P
< 1277687613 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I was just about to say :P
< 1277687664 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Okay, do it now.
< 1277687674 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :anyone ever done any Plankalkuel?
< 1277687683 0 :pikhq!~pikhq@75-106-123-171.cust.wildblue.net JOIN :#esoteric
< 1277687685 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Plankalk%C3%BCl
< 1277687712 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: You didn't add dev.js to the Makefile :P
< 1277687713 0 :cheater99!unknown@unknown.invalid PRIVMSG #esoteric :Plankalkül (German pronunciation: [ˈplaːnkalkyːl], "Plan Calculus") is a computer language developed for engineering purposes by Konrad Zuse. It was the first high-level non-von Neumann programming language to be designed for a computer and was designed between 1943 and 1945.
< 1277687740 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: I'm just practicing very granular commits!
< 1277687746 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Okay, now do it.
< 1277687766 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :cat dev/null was a really stupid thing for me to do...
< 1277687784 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Hm, something's wrong ...
< 1277687808 0 :oerjan!unknown@unknown.invalid QUIT :Quit: Later
< 1277687808 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Eh? cat /dev/null should just do nothing.
< 1277687810 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :What's wrong?
< 1277687813 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :And publish it dammit :P
< 1277687832 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :OH
< 1277687836 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I know what's wrong.
< 1277687846 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Wut?
< 1277687848 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Elaborate.
< 1277687867 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Your DevNull is an open file, but you have it as a node in the filesystem with no implementation of open.
< 1277687873 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Just add an open that returns itself.
< 1277687878 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :return this; that is.
< 1277687897 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :And apparently I have literally zero error reporting for that situation HOORAY!
< 1277687899 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Same with /dev/zero?
< 1277687903 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Yeah
< 1277687934 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Pushing.
< 1277687942 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Fixed. And please publish it so I can try it :P
< 1277687944 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :dev.html or something.
< 1277687955 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That was the plan, but one step at a time.
< 1277688044 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric ::P
< 1277688051 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277688104 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric : cat dev/null was a really stupid thing for me to do...
< 1277688106 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Don't you mean /dev/zero? :P
< 1277688112 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :catting /dev/null is perfectly harmless.
< 1277688126 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It should've been harmless, but instead it blocked forever when it couldn't open()
< 1277688132 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :XD
< 1277688294 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :OK, uploading to Codu
< 1277688309 0 :Geekthras!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277688310 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/jsmips/dev.html
< 1277688387 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: It works! Yay!
< 1277688394 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Ayup
< 1277688396 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Note: cat /dev/zero is UNHOLILY SLOW.
< 1277688431 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :wtf is sigaltstack, anyway?
< 1277688501 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I think I'm making an RS flip-flop
< 1277688584 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Wow, it is too hot in here.
< 1277688586 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: I basically have no idea :P
< 1277688598 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :# ls -l dev
< 1277688598 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :total 32768
< 1277688598 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :crwxrwxrwx 1 0 0 Jan 1 00:00 null
< 1277688598 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :crwxrwxrwx 1 0 0 Jan 1 00:00 zero
< 1277688605 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :/dev/zero is totally empty. True story.
< 1277688612 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Also, wow @ those permissions XD
< 1277688625 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to rm /dev/null
< 1277688625 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :^^
< 1277688629 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Not supported!
< 1277688636 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :rm is unsupported period :P
< 1277688666 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Please make it support backspace.
< 1277688770 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It's the shell that sucks, not the actual support of backspace.
< 1277688780 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The shell just doesn't know how to interpret it properly.
< 1277688784 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Given an RS flip flop, are there any logic gates I can make?
< 1277688813 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Please compile openbsd ksh.
< 1277688815 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Or busybox ash.
< 1277688827 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :busybox ash is probably difficult to separate from busybox.
< 1277688830 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Maybe dash?
< 1277688846 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Just use busybox.
< 1277688848 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's good. :P
< 1277688873 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It will probably be an ENORMOUS pain to port, sincea lot of it is fairly Linux-specific.
< 1277688915 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ah.
< 1277688917 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :OpenBSD ksh, then.
< 1277688921 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Or dash, but preferably OpenBSD ksh.
< 1277688929 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Sec.
< 1277688932 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I'll find you the portable version.
< 1277688936 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :But ... that's Korn ...
< 1277688949 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: http://github.com/dryfish/openbsd-pdksh
< 1277688953 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: It's actually quite good.
< 1277688973 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's just like dash or whatever, but BSD-licensed and ... just cool, basically.
< 1277688976 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Tab completes and everything.
< 1277688992 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure dash is BSD-licensed, actually.
< 1277689000 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Why don't you build yourself a cross-compiler and port it yourself :P
< 1277689002 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Who cares, pdksh is better :P
< 1277689009 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Won't need porting.
< 1277689010 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's portable.
< 1277689034 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's what you think X-D
< 1277689037 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I think my Internet access is dying
< 1277689047 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Dude, the BSD guys wrote it and it was specifically modified to be portable.
< 1277689048 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, it's portable.
< 1277689075 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :No, I don't mean that it's not portable, I mean that it'll still require porting because JSMIPS is a pretty sucky UNIX :P
< 1277689168 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Eh, just try it :P
< 1277689238 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, but it's written by the OpenBSD guys. The only thing they obsess about more than portability is security.
< 1277689326 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Unlike NetBSD, which cares more about portability than ... pretty much everything ever.
< 1277689350 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :NetBSD haven't written a ksh.
< 1277689376 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :You may know OpenBSD for such things as OpenSSH and OpenSSL. ;)
< 1277689385 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I have successfully created an RS flip-flop in Active Worlds
< 1277689395 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Both highly portable and highly secure.
< 1277689423 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :And both highly ... highly ... EVIL.
< 1277689441 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :How so?
< 1277689442 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Wasn't the OpenSS.. something issue Debian's fault?
< 1277689463 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: Yes, that was Debian's fault.
< 1277689489 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I forgive Debian for it.
< 1277689491 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :'cuz I love 'em.
< 1277689505 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Feck Debian.
< 1277689554 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I'd rather not.
< 1277689608 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. If I can get a reasonably small statically linked interpreter for a scripting language, I may implement a coreutils in that instead of using busybox.
< 1277689614 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :What? Abstract projects are sexy!
< 1277689618 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Just use Go :P
< 1277689625 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Also, hey, coreutils is MY job.
< 1277689629 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :"Reasonably small" meaning "sufficiently small that I'd imagine I'd gain something from this", of course. :)
< 1277689651 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :alise: I'll have a FURINIKUSU system running before this happens.
< 1277689666 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I Will SUE you
< 1277689669 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*will
< 1277689673 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :In a court of law, Trenton, New Jersey.
< 1277689679 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :*law in Trenton
< 1277689712 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I will move to Canada and lose my American citizenship.
< 1277689714 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :This experimental flip-flop takes 1 second to read
< 1277689720 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Just to avoid that lawsuit.
< 1277689729 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric ::P
< 1277689745 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I will then demand that Canada hand me a passport, as they are obligated to do.
< 1277689777 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION mutters that X11 requires wide char support in uClibc
< 1277689786 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :This is when the real part of the Lebesgue-Probability of an event is not equal to zero. If the probability of rolling a five on the Lebesgue Dice were 0.5+i, then the we expect on average after 10 rolls, five never to appear 5 times and the disappear through another dimension. No isomorphism has been found between Complex Probability and a standard group, and the Manning-McArdle Conjucture states that Complex-Probability does not lead to consistant answers
< 1277689786 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :unless the imaginary part is equal to some integer times the square root of 7.
< 1277689804 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Just build coreutils into the kernel.
< 1277689819 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So that every coreutils "binary" is a device.
< 1277689831 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :echo /dev/null >/dev/cat
< 1277689832 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :cat /dev/cat
< 1277689832 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Building in the entire filesystem contents.
< 1277689833 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric ::)
< 1277689875 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :So, has anyone other than Phantom read The Culture novels?
< 1277689906 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Maaan nomath.js is the best-named file EVER.
< 1277689988 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I suggest you rename it math.js.
< 1277690231 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The name is so bad I almost don't want to rename it, just to remember the lunacy.
< 1277690254 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :intmath would be the best name, actually.
< 1277690260 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It's emulating the math as done by C ints.
< 1277690295 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: JSMIPS runs at a decent speed in Chromium, BTW.
< 1277690309 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :In Chrome it's friggin' awesome, I know.
< 1277690312 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Should go faster than Firefox.
< 1277690338 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Slow? Sure. But it's fast enough that it feels like an actual computer.
< 1277690339 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277690346 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Wow.
< 1277690358 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric
< 1277690372 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Aside from, y'know, network latency.
< 1277690386 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :fff
< 1277690389 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :clyde broke
< 1277690393 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :?
< 1277690398 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :arch package manager tool thing
< 1277690404 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :ACTION upgrades with pacman
< 1277690413 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gah, wants to update everything.
< 1277690555 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. ffmpeg's just gotten itself a vp8 decoder...
< 1277690574 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Comes out to 1,400 lines of code for the entire thing.
< 1277690590 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :An order of magnitude smaller than the official library.
< 1277690616 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :That's because anything Fabrice Bellard touches is amazing.
< 1277690743 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes.
< 1277690761 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Fabrice Bellard is one damned smart guy.
< 1277690945 0 :Oranjer!unknown@unknown.invalid PART #esoteric :?
< 1277690951 0 :tpw_rules!~tpw_rules@ericneill.com JOIN :#esoteric
< 1277690956 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :hey
< 1277690971 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Hi.
< 1277690971 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :i just made my own language, and i think i cheated with the OISC designation
< 1277690997 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric ::)
< 1277690998 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :the instruction is move, but it has like a billion different ways it can do so
< 1277691003 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Is there a page on the wiki for it?
< 1277691015 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :move @$20, #doreturn =2 <-- move the literal word to $20 only if the third flag is set
< 1277691016 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Seems not.
< 1277691017 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :no, not yet
< 1277691027 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :#doreturn?
< 1277691027 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277691068 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :doreturn is a label
< 1277691071 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :# means literal
< 1277691103 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Memory-mapped computation
< 1277691105 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :that's a sample from my 99 bottles of beer on the wall program
< 1277691120 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :does that qualify as an OISC?
< 1277691133 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Idonno, maybe? It's all debatable.
< 1277691134 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :tpw_rules: Well... not really. But sort of.
< 1277691137 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :It's all vague.
< 1277691158 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :But the words "memory mapped computation" are so awesome it's OK :P
< 1277691160 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I think if your definition includes a lot of "if some X thing is this hard-coded literal Y, behave differently", it's not really an OISC
< 1277691182 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :but flags are ALU status flags
< 1277691185 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :like that's if zero
< 1277691220 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :cause that's the only thing i could think of with that way to provide conditionals
< 1277691445 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :http://pastie.org/1021261 those are my notes on it
< 1277691490 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :yeah that's not really oisc
< 1277691492 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :not really
< 1277691507 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric ::/
< 1277691560 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :how could i implement conditionals to make it a proper OISC?
< 1277691574 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :see e.g. subleq
< 1277691577 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://esolangs.org/wiki/Subleq
< 1277691599 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :no i mean on my current implementation
< 1277691877 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: I just womped some stuff to keep JSMIPS' namespace clean. I updated the dev branch too, so pull.
< 1277691909 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Womped?
< 1277691947 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The major difference is that 1) the output jsmips.js is now contained in one giant function and B) everything that's exposed outside of JSMIPS proper is stored in the window.jsmips object.
< 1277691956 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :1) and B). You heard me.
< 1277691961 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I think I inadvertantly built a transistor.
< 1277691978 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Doctor Who, eh.
< 1277691981 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: Anyway, the only change to your code was to put your stuff in window.jsmips so that server/dir.php could see it.
< 1277691991 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :alise: Uhh ... no?
< 1277691993 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :window.jsmips?
< 1277692007 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :'s just an object with JSMIPS-exposed stuff in it.
< 1277692026 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :"window" is the name for the global scope in JavaScript, I'm just saying "window.jsmips" to be explicit :P
< 1277692028 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Why does server/dir.php want to see it?
< 1277692035 0 :tpw_rules!unknown@unknown.invalid PRIVMSG #esoteric :well bye
< 1277692035 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :To create DevNull objects
< 1277692036 0 :tpw_rules!unknown@unknown.invalid PART #esoteric :?
< 1277692039 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :But it ... already works.
< 1277692051 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I just don't like polluting the global namespace as much as I was.
< 1277692060 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I guess my Doctor Who reference was too obscure, huh.
< 1277692178 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :THE DOCTOR
< 1277692178 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Okay, okay, just hush! First things
< 1277692178 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :first. One, we're gonna climb
< 1277692178 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :through this ship. B, no, two,
< 1277692178 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :we're gonna reach the Bridge.
< 1277692179 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Three, or C, we're gonna save the
< 1277692181 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Titanic. And coming in at a very
< 1277692183 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :low four, or D, or that little i-v
< 1277692185 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :in brackets they use on footnotes,
< 1277692187 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :why? Right then! Follow me -
< 1277692212 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Tell me if this is not a transistor: A signal goes from A to B only if there's a signal C
< 1277692289 0 :pikhq!unknown@unknown.invalid QUIT :Read error: Connection reset by peer
< 1277692358 0 :pikhq!~pikhq@75-106-123-171.cust.wildblue.net JOIN :#esoteric
< 1277692392 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :../../../libtool: line 964: X--tag=CC: not found
< 1277692392 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric ::(
< 1277692502 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders what time it is in UKland
< 1277692640 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Any answer?
< 1277692670 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :2:38
< 1277692957 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Say, how can I check if subtracting two unsigned integers overflows?
< 1277692962 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Eh, never mind.
< 1277693690 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Aw man, you can't write a simple assembler.
< 1277693694 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Because you have to have a lookup table of strings.
< 1277693750 0 :zzo38!~zzo38@h24-207-48-53.dlt.dccnet.com JOIN :#esoteric
< 1277693782 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Fun to do portably: take two ints, a and b. Compute a + b or signal if it overflows...
< 1277693909 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Easier with positive ints only:
< 1277693919 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :int c = a+b; if (c 0 ? b < (INT_MAX - a) : b > (INT_MIN + a));
< 1277694329 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ilari: Cheating? :)
< 1277694369 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Ilari: Hmm, but then if a = -INT_MAX I think this breaks.
< 1277694399 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :I think it already breaks (becomes unportable) if a is negative.
< 1277694470 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :With signed integers, once there has been overflow, Undefined Behaviour has occurred and your program can do anything (for example: render tests inconclusive).
< 1277694481 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :So we have to not do the operation at all.
< 1277694497 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :if ((x >= 0) && (a > INT_MAX - x)) /* `a + x` would overflow */;
< 1277694497 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :if ((x < 0) && (a < INT_MIN - x)) /* `a + x` would underflow */;
< 1277694498 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :apparently.
< 1277694558 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :http://www.fefe.de/intof.html
< 1277694621 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :I don't think the first code would work even with well-defined 2's comlement overflow.
< 1277694694 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :That latter looks better.
< 1277695399 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :In C, are there any memory leaks or crashes if you use the wrong number of arguments to sprintf() or any other variable argument function?
< 1277695487 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :No memory leaks, but possibly very odd behavior.
< 1277695865 0 :zzo38!unknown@unknown.invalid PART #esoteric :?
< 1277696257 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :I guess goodnight. Anything interesting before I go? Gregor?
< 1277696271 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I was eating :P
< 1277696273 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So no.
< 1277696279 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Righty ho then.
< 1277696285 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Gah, but it's only just starting to get light.
< 1277696288 0 :alise!unknown@unknown.invalid PRIVMSG #esoteric :Oh well, goodnight.
< 1277696295 0 :alise!unknown@unknown.invalid QUIT :Quit: Leaving
< 1277696298 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Your shit's tarded and you talk all fag-like.
< 1277696322 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :What a bizarre statement :P
< 1277696334 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yup.
< 1277696419 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So yeah ... JSMIPS is awesome.
< 1277696429 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It was /pretty/ awesome before, but now it's awesomely awesome.
< 1277696499 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hah.
< 1277696508 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :What'd you change to make it awesomely awesome?
< 1277696722 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Everything I've done since Friday? The speed, the bugfixes, everything.
< 1277696730 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I was just basking in my own glory.
< 1277696753 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I've not been able to follow it much.
< 1277696766 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Still: nice.
< 1277696775 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :JSMIPS is pretty nice work.
< 1277696778 0 :aschueler!~alec@81.147.141.45 JOIN :#esoteric
< 1277696864 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I hugely improved the speed, fixed a bunch of bugs, GNU coreutils compiles for it now, my math primitives aren't all fucked up ...
< 1277696917 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277696952 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Awesome.
< 1277697171 0 :Geekthras!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277697596 0 :coppro!~coppro@unaffiliated/coppro JOIN :#esoteric
< 1277697684 0 :zzo38!~zzo38@h24-207-48-53.dlt.dccnet.com JOIN :#esoteric
< 1277698516 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :What's MIPS?
< 1277698618 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277698648 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders how difficult it would be to implement MIPS when every logic gate is a pain which takes up valuable, scarse space
< 1277698728 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :32 registers? I assume each register would hold 32-bit numbers?
< 1277698733 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :That's excessive
< 1277698765 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders what 8-bit instruction sets there are
< 1277698826 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Welcome to RISC, Sgeo.
< 1277698855 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Wikipedia says that MISC is an RISC
< 1277698860 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Those registers are in lieue of other things, like "direct memory access".
< 1277698862 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :erm, MIPS
< 1277698885 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds
< 1277698891 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, I'd like to know an 8-bit, or even better, 4-bit architecture
< 1277698900 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The opcodes operate on registers. Your memory access consists of load and store.
< 1277698909 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :4-bit? Uh.
< 1277698934 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's... 15 bytes of address space.
< 1277698942 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :15 bytes is a LOT of memory
< 1277698975 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Dude, an 8086 has more than that in its registers.
< 1277698991 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :An 8086 is not built within active worlds
< 1277699011 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Where each transistor takes up valuable space and is unbearably slow
< 1277699014 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Fine, fine.
< 1277699016 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :4004.
< 1277699034 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The Intel 4004 was a 4-bit microprocessor, and also the first microprocessor.
< 1277699083 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Oh, wait. It has 12-bit addressing and 4-bit words.
< 1277699106 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Because 4 bit addressing was damned small, even in *1971*.
< 1277699186 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :How difficult can it be to make my own instruction set?
< 1277699255 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I should just implement boolfuck
< 1277699258 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Trivial.
< 1277699270 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :You may want to implement a register-based move machine.
< 1277699273 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Those are easy.
< 1277699613 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Hm.
< 1277699624 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Suppose all computers were destroyed. How would we go about making more?
< 1277699693 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I'd hunt down that crazy bastard who did integrated circuitry in his *basement*.
< 1277699700 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And bootstrap from there.
< 1277699726 0 :zzo38!unknown@unknown.invalid QUIT :Quit: zzo38
< 1277699728 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :How did he do that?
< 1277699744 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :And linky?
< 1277699745 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(apparently only requires a few hundred bucks to do basic ICs. Granted, you're literally building individual *transistors* at that point, but still.)
< 1277699831 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :http://hackaday.com/2010/03/10/jeri-makes-integrated-circuits/
< 1277699927 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Alternately, we'd start back at vaccum tubes.
< 1277699951 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :These are much easier to make: you just need a glass blower, a decent machinist, and a way to get a good vaccum.
< 1277699990 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Is there enough written documentation to be able to say, read and understand the data on HDs?
< 1277699997 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :TO get more documentation?
< 1277700003 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Or are we assuming that HDs are dead too?
< 1277700039 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :They're well-enough understood, but very, very hard to extract data from.
< 1277700054 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :You need a computer to do it.
< 1277700073 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(exception: *really* old hard drives. Ones with a literal "0/1" bit pattern on the platter.)
< 1277700106 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :"literal"? What's the alternative?
< 1277700124 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :You.. don't mean written or punched, do you?
< 1277700151 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders how a punchcard HD would work
< 1277700176 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hard drives tend to have complex encoding schemes.
< 1277700208 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Since magnetism is very, very analog.
< 1277700229 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Oh, for redundancy, not compression
< 1277700250 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Also compression.
< 1277700279 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :How difficult would it be to make a computer in an environment where an RS Flip-Flop requires 4 objects
< 1277700313 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Not exceptionally.
< 1277700321 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :http://web.cecs.pdx.edu/~harry/Relay/index.html Here's one.
< 1277700349 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I love that machine.
< 1277700371 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Hm
< 1277700451 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :http://i.imgur.com/8DEx1.jpg
< 1277700567 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Shall I explain?
< 1277700760 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :That wasn't rhetoric, even though it should be.
< 1277700765 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :*rhetorical
< 1277700937 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I just realized that a flip-flop in AW should be able to hold 1 of several states
< 1277701083 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if he could build a 4-quat computer and make it run MIPS
< 1277701242 0 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric
< 1277701289 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :How does MIPS deal with events? Interrupts, I think?
< 1277701327 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I think I bored pikhq
< 1277702251 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277702274 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric
< 1277702388 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: Interrupts.
< 1277702394 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Well, I improved JSMIPS' filesystem. Now it doesn't work.
< 1277702408 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Fuckin' interrupts, how do they work?
< 1277702417 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :[Seriously, I don't know]
< 1277702436 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :And would it be difficult to implement a system that could deal with them in a limited transistor environment
< 1277702440 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :The CPU has an interrupt vector. When some hardware or software event occurs, it jumps to the address in the interrupt vector.
< 1277702454 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Actually, I think [and hope] that most logic gates won't need transistors
< 1277702504 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Mind, JSMIPS doesn't emulate interrupts at all.
< 1277702510 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It's just an ISA simulator, not a system simulator.
< 1277702525 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :....so, how does interaction work?
< 1277702543 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :System calls.
< 1277702555 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :System calls go to the JavaScript kernel.
< 1277702566 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :JSMIPS is essentially emulating a UNIX system on MIPS.
< 1277702578 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Key point: *UNIX system*. It has a kernel.
< 1277702600 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :A kernel which doesn't run on the MIPS simulator, it's just JavaScript magic.
< 1277702623 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hey, an OS kernel really *doesn't* need to actually be in the same language as the userspace, does it. :)
< 1277702654 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :It's not just not in the same language, it's not on the same platform :P
< 1277702697 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Still.
< 1277702762 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :But doesn't imput rely on interrupts?
< 1277702775 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Not in userspace.
< 1277702783 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Wait, you're not emulating a full chip? Why not?
< 1277702788 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Then it wouldn't have to be UNIX
< 1277702800 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Or am I confused as to what you're doing
< 1277702801 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Then it would be even slower than it already is.
< 1277702807 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :So?
< 1277702817 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :My goal is not to run arbitrary MIPS code, my goal is to run C code. In particular, vim.
< 1277702844 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :His goal is to have a UNIX userspace. He seems to have had some success with that.
< 1277702851 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :My goal is to make a computer in Active Worlds
< 1277702863 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I think I've had a lot of success, frankly :P
< 1277702878 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Oh, right. You've got coreutils.
< 1277702891 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Complete success.
< 1277702904 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Question: Is a transistor simply that a signal gets from A to B only if C is receiving a signal?
< 1277702907 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I mean, logic-wise?
< 1277702924 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: I think so? But I honestly thought there was something more to it :P
< 1277702932 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Analog or digitally.
< 1277702938 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Digitally
< 1277702954 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :If I can make a transistor, I can make any logic gate, right?
< 1277702961 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes.
< 1277702970 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Though a logic gate may be easier to make.
< 1277702984 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :But I will have demonstrated turing-completeness in Active Worlds
< 1277702989 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :True.
< 1277702989 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Well, not literally TC
< 1277702995 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :But as close as any computer can be
< 1277702996 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Literally TC.
< 1277703015 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Active Worlds doesn't have designed-in finiteness, does it? ;)
< 1277703044 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Actually, there is an extent of finiteness
< 1277703069 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Each cell can hold only a certain amount of data, and there's a hard cut-off that you can't see past 200m
< 1277703081 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :So, finite number of transistors
< 1277703122 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Is being a switched controlled by a signal close enough to being a transistor?
< 1277703360 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Hm, I don't think so
< 1277703374 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Well, I guess the AW Transistor will require intricate timing
< 1277703586 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I don't see a way to do it without having one of the signals in be out of phase with the other
< 1277703591 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Which may be problematic,.
< 1277703600 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I might need to figure out how to define current
< 1277703778 0 :oerjan!unknown@unknown.invalid QUIT :Quit: leaving
< 1277705450 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277705754 0 :Geekthras!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277705986 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I see how to turn a parallel bus into a delay-based value
< 1277706106 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :The inverse, however, seems insurmountable
< 1277706297 0 :cal153!~cal@c-24-4-207-72.hsd1.ca.comcast.net JOIN :#esoteric
< 1277706316 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :No, it's not
< 1277706336 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Have the bit for 1 toggle whether it will allow another object to have a signal or not every second
< 1277706345 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :bit for 2 toggle every 2
< 1277706346 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :etc
< 1277706895 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :okay, this is awesome, but why is my VLC in ASCII mode?
< 1277706946 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :DISPLAY is unset?
< 1277706956 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :So it defaulted to the aalib backend?
< 1277706988 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :Observation: Chrome will happily hand JavaScript 100MB of memory.
< 1277706995 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It might even default to the first backend (in some order) that manages to initialize correctly.
< 1277707021 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: no, it's making a window
< 1277707029 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :it's just rendering with caca instead of real video
< 1277707116 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I can't vouch for VLC, but at least mplayer can run aalib/caca into stdout without making a X window; it would be a singularly useless feature otherwise.
< 1277707157 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I assume that by "useless" you of course mean "awesome"
< 1277707168 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Well, yeah. Chrome leaves the system with 100MB of RAM to give. :P
< 1277707198 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: Well, I guess... but I've mostly used it for "previewing" videos over SSH to choose the right one.
< 1277707230 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :OMG
< 1277707234 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I'm sure VLC can too, if only I could work out why it's using it
< 1277707235 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Easy ASCII porn!
< 1277707244 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :That's ... an actual use for the aalib/caca backends D-8
< 1277707250 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :I thought they were just utter lunacy!
< 1277707255 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :But here you've gone and used them for a point!
< 1277707261 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :This turns my whole world on its head.
< 1277707281 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :An esotericer doing something for a point is, itself, a miracle.
< 1277707282 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :well, that would be fantastic if it weren't for the existence of X forwarding
< 1277707305 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :X forwarding is friggin' slow.
< 1277707321 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :X forwarding especially over a piddly ADSL link is oh-so-slow. But admittedly I could use it to look at the first few frames of the video.
< 1277707323 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I fixed stat'ing in JSMIPS. JUST FOR YOU.
< 1277707347 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: NX makes X forwarding quite usable.
< 1277707361 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I've even used it on this satellite link.
< 1277707373 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes. High-latency X11.
< 1277707437 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ah, there we go
< 1277707746 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :nope
< 1277707749 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :whoa, think I found out why
< 1277707754 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :for some reason vlc wasn't fully installed
< 1277707772 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :the binary existed but the package wasn't installed
< 1277707838 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :there we go
< 1277708050 0 :myndzi\!myndzi@c-24-19-39-178.hsd1.wa.comcast.net JOIN :#esoteric
< 1277708248 0 :myndzi!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds
< 1277708834 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION starts thinking in terms of N-Delays and S-Delays
< 1277710041 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277710322 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds
< 1277710364 0 :MizardX!unknown@unknown.invalid QUIT :Ping timeout: 248 seconds
< 1277710471 0 :tombom!tombom@wikipedia/Tombomp JOIN :#esoteric
< 1277710705 0 :augur!unknown@unknown.invalid QUIT :*.net *.split
< 1277710705 0 :pikhq!unknown@unknown.invalid QUIT :*.net *.split
< 1277711200 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :S-Signal -> N-Signal; N-Delay -> S-Delay
< 1277711209 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :"animate me" is N-Signal-free
< 1277711275 0 :GreaseMonkey!~gm@unaffiliated/greasemonkey JOIN :#esoteric
< 1277711279 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Awsistors receive an S-Signal and turn it into an S-Signal or N-Signal or both with an S-Delay of its previously stored/received N-Delay
< 1277711306 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I should write this down someplace other than here.
< 1277711717 0 :sebbu!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds
< 1277711939 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric
< 1277711939 0 :pikhq!~pikhq@75-106-123-171.cust.wildblue.net JOIN :#esoteric
< 1277711999 0 :clog!unknown@unknown.invalid QUIT :ended
< 1277712000 0 :clog!unknown@unknown.invalid JOIN :#esoteric
< 1277713166 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ARGARGARHAHRHARHA REDDIT ON CHROME IS FULL OF HATE
< 1277713518 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor, thanks. ;P
< 1277713570 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277713851 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :`addquote ARGARGARHAHRHARHA REDDIT ON CHROME IS FULL OF HATE
< 1277713859 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :191| ARGARGARHAHRHARHA REDDIT ON CHROME IS FULL OF HATE
< 1277713918 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 264 seconds
< 1277714032 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Hm, The Last Airbender is coming out soon?
< 1277714035 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I want to see it
< 1277714088 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :actually?
< 1277714096 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :hm?
< 1277714125 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :What, your saying the casting issues should be a problem?
< 1277714129 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :*you're
< 1277714220 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I've been randomly disconnecting all day
< 1277714234 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :no, I'm questioning your desire to see a live-action adaptation of an anime
< 1277714262 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I don't think Avatar: The Last Airbender is strictly speaking an anime
< 1277714479 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Good night
< 1277714675 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277714954 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds
< 1277715393 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277715653 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds
< 1277715717 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277716126 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds
< 1277717210 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277717448 0 :calamari!unknown@unknown.invalid QUIT :Quit: Leaving
< 1277717516 0 :Geekthras!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277718893 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277719317 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 252 seconds
< 1277719341 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277720065 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds
< 1277720344 0 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric
< 1277723510 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277726200 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :can anyone remember where the BF Joust leaderboard is/was?
< 1277726223 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test [[+]>]
< 1277726230 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The wiki knows
< 1277726233 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://esoteric.voxelperfect.net/wiki/BF_Joust
< 1277726235 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://codu.org/eso/bfjoust/report.txt
< 1277726252 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_test: 4.1
< 1277726586 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>++(>[+(-)*9[+]]->[-(+)*9[-]]+)*20
< 1277726594 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 25.4
< 1277726623 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>++(>[[+(-)*9[+]]]->[[-(+)*9[-]]]+)*20
< 1277726630 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 20.1
< 1277726662 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>->)*4>++(>[+(-)*9[+]]->[-(+)*9[-]]+)*20
< 1277726669 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 11.3
< 1277726694 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>--)*4>++(>[+(-)*9[+]]->[-(+)*9[-]]+)*20
< 1277726702 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 22.0
< 1277726750 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*3>++(>[+(-)*9[+]]->[-(+)*9[-]]+)*20
< 1277726758 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 21.5
< 1277726763 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*5>++(>[+(-)*9[+]]->[-(+)*9[-]]+)*20
< 1277726771 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 20.0
< 1277726781 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>++(>[+(-)*8[+]]->[-(+)*8[-]]+)*20
< 1277726789 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 27.0
< 1277726815 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>++(>[+(-)*7[+]]->[-(+)*7[-]]+)*20
< 1277726822 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 27.6
< 1277726829 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Why are your program names like that?
< 1277726863 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They're like trains, choo-chooing along.
< 1277726908 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :looks like the only defense programs still on there are mine
< 1277726987 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>++(>[+(-)*6[+]]->[-(+)*6[-]]+)*20
< 1277726994 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 24.8
< 1277727001 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>--(>[+(-)*7[+]]->[-(+)*7[-]]+)*20
< 1277727004 0 :GreaseMonkey!unknown@unknown.invalid QUIT :Quit: I'm using NO SCRIPT WHATSOEVER - Download it at file:///dev/null
< 1277727008 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 27.6
< 1277727017 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a pity really, I like the idea of defence in BF Joust
< 1277727022 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>--(>[-(+)*7[-]]+>[+(-)*7[+]]-)*20
< 1277727029 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 27.9
< 1277727051 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Your programs are too large to understand what they do :-P
< 1277727076 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: 9's a variant on 7, although I can't remember exactly what the difference is after this long
< 1277727107 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :7 works by attempting to figure out the cycle speed of the other program's inner loop, like the [-] and [+] in your maglev, via experiment on a sentinel value
< 1277727129 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :once it knows what it is, it attempts to lock the other program into an infinite loop, by exploiting the loop itself, and meanwhile goes off and very slowly captures its flag
< 1277727155 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's also a tweak in there somewhere to detect other defence programs and attack them in a defence-program-breaking way
< 1277727322 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm; how do you do the locking? Do you somehow manage to wrap the flag around past 0 at the appropriate time?
< 1277727338 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(I imagine that anything else is too slow to work)
< 1277727354 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sorry, boss has called, but I'll explain later
< 1277727393 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>++(>[-(+)*7[-]]+>[+(-)*7[+]]-)*20
< 1277727404 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 27.9
< 1277727553 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : can anyone remember where the BF Joust leaderboard is/was? <-- yes but it seems pointless to answer since you filter links
< 1277727568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or have you stopped doing that?
< 1277727619 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*4>++(>[-(+)*7[->-<]]+>[+(-)*7[+>+<]]-)*20
< 1277727626 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 0.0
< 1277727638 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*3>++(>[-(+)*7[->-<]]+>[+(-)*7[+>+<]]-)*20
< 1277727645 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 0.0
< 1277727683 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*3>++(>[-(+)*7[->(-)*32<]]+>[+(-)*7[+>(+)*32<]]-)*20
< 1277727689 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 5.6
< 1277727727 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hah, now it beats defend7 but nothing else
< 1277727742 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That wasn't quite what I was going for
< 1277727775 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*3>++(>[-(+)*7[->(-)*64<]]+>[+(-)*7[+>(+)*64<]]-)*20
< 1277727782 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 5.8
< 1277727786 0 :MizardX!~MizardX@unaffiliated/mizardx JOIN :#esoteric
< 1277727787 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (>+>-)*3>++(>[-(+)*7[->(-)*16<]]+>[+(-)*7[+>(+)*16<]]-)*20
< 1277727794 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 5.6
< 1277727809 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++(>[-(+)*7[->(-)*32<]]+>[+(-)*7[+>(+)*32<]]-)*20
< 1277727816 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 5.0
< 1277727844 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++(>[-[->(-)*32<]]+)*20
< 1277727850 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 0.0
< 1277727860 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++(>[-(+)*7[->(-)*32<]]+)*20
< 1277727867 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 5.0
< 1277727882 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++(>[+[->(-)*32<]]+)*20
< 1277727889 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 0.0
< 1277727895 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++(>[(+)*5[->(-)*32<]]+)*20
< 1277727902 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 5.4
< 1277727948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, seems not very successful against any but defend7
< 1277727959 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's what I just said
< 1277728000 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([>[(+)*5[->(-)*32<]]+]>)*16
< 1277728007 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.6
< 1277728031 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([->[(+)*5[->(-)*32<]]+]>)*16
< 1277728038 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 5.3
< 1277728046 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([(-)*2>[(+)*5[->(-)*32<]]+]>)*16
< 1277728053 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.6
< 1277728083 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([(-)*2>[(+)*5[->(+)*32<]]+]>)*16
< 1277728089 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.6
< 1277728102 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([(-)*2>[(+)*5[->(+)*33<]]+]>)*16
< 1277728108 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.3
< 1277728119 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([(-)*2>[(+)*5[->(+)*17<]]+]>)*16
< 1277728126 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 2.9
< 1277728141 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([(-)*2>[(+)*5[->(+)*25<]]+]>)*16
< 1277728147 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 0.8
< 1277728154 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([(-)*2>[(+)*5[->(+)*31<]]+]>)*16
< 1277728161 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.3
< 1277728169 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([(-)*2>[(+)*5[->(+)*27<]]+]>)*16
< 1277728176 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.3
< 1277728181 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([(-)*2>[(+)*5[-->(+)*27<]]+]>)*16
< 1277728189 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 0.0
< 1277728217 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>>)*4++([(-)*2>[(+)*5[->(+)*27<]]+]>)*16
< 1277728225 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.3
< 1277728235 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev +(>)*8++([(-)*2>[(+)*5[->(+)*27<]]+]>)*16
< 1277728242 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 5.0
< 1277728245 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev +(>)*8->+([(-)*2>[(+)*5[->(+)*27<]]+]>)*16
< 1277728253 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 7.3
< 1277728276 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([-->[(+)*5[->(-)*27<]]+]>)*16
< 1277728283 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.3
< 1277728294 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([-->[(+)*5[->(-)*32<]]+]>)*16
< 1277728302 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 8.6
< 1277728316 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you know, while this is spammy it is actually on topic for once
< 1277728317 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'll just leave it at that then
< 1277728321 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :makes it hard to complain
< 1277728334 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-)
< 1277730306 0 :kar8nga!~kar8nga@93-82-74-230.adsl.highway.telekom.at JOIN :#esoteric
< 1277731808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: still there?
< 1277731817 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Aye
< 1277731841 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :basically, there are ways to do locking
< 1277731845 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*two ways to do locking
< 1277731852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :one way, the riskier way, works as you've described
< 1277731867 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the idea is to predict which cycle the enemy jouster will change the value to 0, and force it past
< 1277731894 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's used as a backup method when the defender can't figure out which direction the opponent's changing the value, but can figure out the cycle time, which happens occasionally
< 1277731918 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the other method's using a long sequence of + or - to change the value faster in one direction than the other system's changing it in the other direction
< 1277731987 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the second method's more reliable in a sense, because even if it gets the direction or the timing wrong, the value won't stay at 0 for two consecutive cycles unless the opponent's doing something like +-+-+-+-
< 1277732016 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust trivial_defend ([](+)*128)*1000
< 1277732027 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_trivial_defend: 9.4
< 1277732048 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh, that actually beat all but the first of your maglevs
< 1277732119 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Those maglevs tend to run off the edge of the tape
< 1277732176 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, that's the only way that trivial_defend can actually win
< 1277732190 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep
< 1277732216 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust ghost_vibration (-)*128(+-)*10000
< 1277732225 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_ghost_vibration: 9.2
< 1277732240 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust test >-<([](+)*128)*1000
< 1277732253 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_test: 3.6
< 1277732264 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ghost_vibration actually got 6 wins, but they were mostly against rubbish opponents
< 1277732274 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust maglev (+>->)*4++([-->[(+)*5[->(-)*32<]]+]>)*16
< 1277732282 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_maglev: 7.9
< 1277732294 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Bah, I can't run those two against each other
< 1277732420 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I have a standalone BF Joust interp somewhere
< 1277732439 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I probably have one at home too
< 1277732447 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(But not here)
< 1277732514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ran it several times, maglev wins every time
< 1277732538 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alright, that's what I was expecting
< 1277732823 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*5([+]>)*10
< 1277732833 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 1.9
< 1277732836 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*5([+]>)*20
< 1277732843 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :duh, that was stupid....
< 1277732844 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 18.2
< 1277732851 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*5(---[+]>)*20
< 1277732862 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 38.7
< 1277732870 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :surprising how well a back-to-basics strategy can work sometimes
< 1277732885 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's the old BF Joust 1 tactic of gumming up the opponent's advance to your flag so you can reach theirs more quickly
< 1277732892 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's pretty much what all my programs are
< 1277732909 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha, it's actually fourth overall
< 1277732916 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :looks like the BF Joust metagame got a bit too centralised
< 1277732928 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(Another reason why they're called trains. They just plow forward without thinking too much.)
< 1277732973 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*7(---[+]>)*20
< 1277732983 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 26.8
< 1277732988 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Tape overrun
< 1277733001 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably not that, waiting forever is normally a recipe to lose anyway
< 1277733007 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*5(---[+]>)*20
< 1277733015 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, apart from the four cases in which it overruns in the init
< 1277733023 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 38.7
< 1277733025 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, those
< 1277733033 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the idea is alise's idea, to insta-lose in some cases to give yourself a better chance in otehrs
< 1277733034 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*others
< 1277733034 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Even this one overruns the 10-length one
< 1277733048 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*4>+++++(---[+]>)*20
< 1277733062 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 20.0
< 1277733068 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*5>+++++(---[+]>)*20
< 1277733073 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :strange how that makes such a difference...
< 1277733077 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Your +++++--- is a bit counterproductive
< 1277733078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although I was missing a > in there
< 1277733080 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 22.3
< 1277733094 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*5>(---[+]>)*20
< 1277733103 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 39.3
< 1277733122 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh, and meanwhile in my experimentation, I've pushed something that gives me trouble off the leaderboard
< 1277733148 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which one?
< 1277733173 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no idea, haven't been keeping track
< 1277733178 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but my score went up for the same program
< 1277733184 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and as egojoust is deterministic...
< 1277733184 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, that's different
< 1277733188 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You added a > after the *5
< 1277733195 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, right
< 1277733195 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or forgot to remove, rather
< 1277733202 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :How's *4>
< 1277733205 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*4>>(---[+]>)*20
< 1277733215 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 40.7
< 1277733217 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That'll overrun again with the 10 >
< 1277733220 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*4>(---[+]>)*20
< 1277733230 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 37.2
< 1277733237 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Sigh
< 1277733238 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*3>>>(---[+]>)*20
< 1277733248 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 30.1
< 1277733251 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I just can't live with that way of doing things, intentionally losing to win others :-P
< 1277733253 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*4>>(---[+]>)*20
< 1277733262 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'll try with a *19
< 1277733263 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 40.7
< 1277733267 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*4>>(---[+]>)*19
< 1277733278 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 37.5
< 1277733283 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although ofc, that always loses on a /max/-length tape
< 1277733310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust large_decoy_attack (>+++++>-----)*4>>(---[+]>)*19---[+](+)*1000
< 1277733320 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ais523_large_decoy_attack: 40.8
< 1277733331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh, I wonder what that draws against that it was losing against before?
< 1277733347 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nescience_shade, papparently
< 1277733350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*apparently
< 1277733369 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What you've got is monorail with tweaked constants (minus the latest revision)
< 1277733397 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah, and one loop less so it's a bit faster
< 1277733417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in general, in BF Joust, loops are bad
< 1277733425 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the issue is that sometimes you have to use them to have a clue what the opponent's doing
< 1277733448 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*4>++>((-)*9[+]>)*20
< 1277733460 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 11.7
< 1277733466 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust monorail (>+>-)*4>++>([(-)*9[+]]>)*20
< 1277733474 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for Deewiant_monorail: 34.4
< 1277733482 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I like my loops :-)
< 1277733487 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And have to go ->
< 1277733504 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :[+] is an incredibly dangerous thing to have in a program
< 1277734333 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Reddit's down?
< 1277734500 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://downforeveryoneorjustme.com/programming.reddit.com says it's down, and my tests agree with it
< 1277734571 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes slightly insane
< 1277734588 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Also, what's the difference between an AND gate and a transistor?
< 1277734602 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: transistors are analog devices
< 1277734621 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :one of the ways you can connect them happens to work vaguely like an AND gate, but chaining too many of them the analogy breaks down
< 1277734726 0 :relet!~thomas@c905DBF51.dhcp.bluecom.no JOIN :#esoteric
< 1277734827 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Could power issues have anything to do with my clock issues?
< 1277734840 0 :zzo38!~zzo38@h24-207-48-53.dlt.dccnet.com JOIN :#esoteric
< 1277735019 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :AERM is a mahjong rules that I wrote, I am not finished writing it yet. But please tell me if you have question/comment: http://zzo38computer.cjb.net/mahjong/anime_evolution/
< 1277735039 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: possibly, most clock circuits don't keep good time if they have an unstable power supply
< 1277735477 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :How can you make skin file in IP.Board or phpBB or another things, that has few CSS, no icons/images, but a lot of keyboard controls?
< 1277735577 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: you'd need to use JavaScript to handle the keyboard controls
< 1277735591 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :together with keyboard events hooked onto appropriate objects, maybe the tag in the template
< 1277735689 0 :BeholdMyGlory!~behold@unaffiliated/beholdmyglory JOIN :#esoteric
< 1277735740 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes I know you need JavaScript codes for the keyboard controls. But I don't know how to write these skin files anyways
< 1277735753 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: try starting with an existing one and removing things from it
< 1277735775 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Where is the URL for existing one download?
< 1277735816 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't know offhand, I don't use the Web much
< 1277735972 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Invision board had a lo-fi skin, but it still had some icons and had a lot of features didn't work. Now it is replaced by "IP.Board Mobile", which also has some icons/graphics and is still some features missing.
< 1277736472 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is there a file to test Invision Board 3.1.1 skins without installing Invision Board?
< 1277736550 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I doubt it, skins are normally pretty tightly linked to the forum software they're designed for
< 1277736574 0 :Gracenotes!~person@wikipedia/Gracenotes JOIN :#esoteric
< 1277738270 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor: How long until Plof runs on JSMIPS? :P
< 1277738329 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(yes, I realise you'd be much better off implementing a PSL interpreter in Plof.)
< 1277738826 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :*Argh*. Xlib requires POSIX threads.
< 1277738844 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :What's the smallest pthreads implementation?
< 1277738935 0 :cpressey!~CPressey@173-9-215-173-Illinois.hfc.comcastbusiness.net JOIN :#esoteric
< 1277739076 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: What's wrong with [+]
< 1277739098 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: it's easily exploitable
< 1277739108 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well, linuxthreads works with uClibc. Guess that's what I'm using.
< 1277739114 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION mutters
< 1277739121 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's how defend7 gets most of its wins
< 1277739126 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: As opposed to [-]?
< 1277739132 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's just as exploitable
< 1277739136 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Right
< 1277739142 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :egobf runs programs with + and - swapped as well as the original way round
< 1277739145 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*egojoust
< 1277739146 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes
< 1277739156 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I thought you were making a statement about [+] versus [-]
< 1277739173 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nah, just about tight loops
< 1277739209 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION rebuilds the build system AGAIN
< 1277739291 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rerebuilding?
< 1277739305 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, reremetabuilding
< 1277739314 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Fortunately, what I'm doing is starting with a basic buildroot and going from there.
< 1277739320 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :So it's not like it's too much *effort*.
< 1277739338 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well. Kinda-basic. I have added enough to make it a build system.
< 1277739473 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I wish the libc could have less, but X11 *does* need a few things.
< 1277740326 0 :kar8nga!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277740573 0 :Phantom_Hoover!~phantomho@cpc3-sgyl21-0-0-cust116.sgyl.cable.virginmedia.com JOIN :#esoteric
< 1277740891 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277741561 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Why does everyone use double instead of float?
< 1277741620 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Higher precision.
< 1277741641 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Even when you don't really need that sort of precision?
< 1277741670 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :There's also arcane promotion rules you need to consider when using floats in C.
< 1277741684 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :And its about as fast anyway (at least on most desktop platforms)...
< 1277741720 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Pretty much only speed difference is because of double's larger size, so there's more data (to copy).
< 1277741741 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Also, wouldn't dereferencing a pointer require loading the variable in question into a register, at least on x86?
< 1277741751 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And no-one really understands floating-point anyway, so they wouldn't be able to safely say whether they need the higher precision or not.
< 1277741770 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Not if you allow self-modification.
< 1277741777 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Why?
< 1277741825 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Typically, but not necessarily.
< 1277741836 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :On x86 there's a lot of really bizarre tricks you can do.
< 1277741843 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :What is self-modification in this context?
< 1277741868 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Particularly the addressing modes...
< 1277741869 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can do rep movsb or somesuch to move the pointer value directly from memory to an operand of an opcode that uses it.
< 1277741957 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :Heh... Self-modifiying code... Reminds me finding that DJGPP uses self-modifying code when issuing real-mode interrupts.
< 1277741963 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :mov [0xffffffff], eax is valid, I think, and you can then overwrite the 0xffffffff bytes with a memory-move thing.
< 1277741977 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You could probably do some other tricks too.
< 1277741984 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Self-modifying code is underused.
< 1277742001 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :The only thing I can think of that uses it on a fundamental level is Redcode.
< 1277742016 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I use double precision floating point for things that should use better precision, such as, mathematical graphing and stuff, such as in the WEBPLOT program (but WEBPLOT is not written in C anyways, but if it was it would still use double).
< 1277742027 0 :Ilari!unknown@unknown.invalid PRIVMSG #esoteric :The code modifies the interrupt vector number (its initially 3, but gets overwritten with whatever value is needed).
< 1277742047 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :C is not good for self-modifying code as much, but in Forth it can be done more easily
< 1277742072 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's certainly possible in C. Just tricky.
< 1277742081 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ooh, Bilski judged
< 1277742093 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: And nonstandard/portable
< 1277742097 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :dobelx64 uses some self-modifying code, but not very much
< 1277742105 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Although, doing it in Forth can be different depending on te Forth system you use, in some cases.
< 1277742115 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with a rather useless opinion, which is along the lines of "that particular patent is awful, but we aren't going to tell you the rules for patents in general, anyway they change over time"
< 1277742137 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, how can you do it easily and portably?
< 1277742137 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I used a bit of self-modifying ARM code in a DS terminal emulator, and it worked fine in desmume, but failed miserably on a real DS; it has some form of instruction caching going on. Should've just used an indirect jump instead of trying to be too clever.
< 1277742148 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Use a higher level language.
< 1277742163 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, you mean run C as an interpreter?
< 1277742190 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: No, one that lets you modify the actual source code.
< 1277742205 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Yes the ARM has instruction caching, and I would like to know how to disable it in some cases, but for other reasons as well other than just that
< 1277742210 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Wait, so it changes its code and recompiles?
< 1277742219 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :That is so crazy it could nearly work.
< 1277742239 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :... You're overthinking this.
< 1277742251 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: CLC-INTERCAL can do something like that, but it changes the meanings of the codes rather than changing the source-codes themself
< 1277742265 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, CLC scares me.
< 1277742265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :meanwhile, the Daily Mail mistake a twitter post by Fake Steve Jobs for actual news and post a story about how the IPhone is going to be recalled
< 1277742278 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ais523, are you really surprised?
< 1277742293 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: yes, I didn't expect them to be quite /that/ sloppy
< 1277742298 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Consider Tcl. Where you can get the source of a proc and replace it with a different proc.
< 1277742301 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Erm.
< 1277742303 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: ^
< 1277742318 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, this isn't really C, though?
< 1277742322 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :It's Tcl.
< 1277742326 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :s/?/./
< 1277742385 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Could an irregular power source harm my router?
< 1277742488 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Higher level language.
< 1277742503 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, how is it self-modifying C, then?
< 1277742716 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I sometimes use self-modifying code, but of course it won't work when it is in ROM.
< 1277742757 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I sometimes use other tricks as well.
< 1277742836 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Such as, calling an interrupt using push and far indirect jumps, instead of using the INT command.
< 1277742868 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :This is mostly to make interrupt return elsewhere, possibly with different states
< 1277742915 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :meanwhile, random and worrying stat: averaged across everyone in the entire world, the average person spends more than 2 minutes a day on Facebook
< 1277742938 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :(Which is useful if the code that calls the interrupt will be overwritten by the time it returns!)
< 1277742944 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I worry to think how much time that makes the average Facebook user spend
< 1277742976 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :>.>
< 1277742985 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: It isn't, that's the point.
< 1277742997 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Bah!
< 1277743025 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ais523, they might be like me and just have as a background tab.
< 1277743155 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I used these kind of call in MBR code, how many of these "tricks" are used commonly in MBR codes and others? B8 00 B8 8E C0 B0 70 B9 A0 0F 31 FF F3 AA B8 60 00 8E C0 B8 3E 02 B9 02 00 31 DB FA 9C 06 53 FF 2E 4C 00
< 1277743256 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Assembly por favor
< 1277743352 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :http://sprunge.us/eZeI
< 1277743495 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Weird, the microwave is tracking time decently
< 1277743713 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I posted assembly codes that URL
< 1277743849 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Mmm.
< 1277743985 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :What I like to do is, have a BIOS code that is compatible with all IBM PC BIOS calls (unlike coreboot, which I think it can't use BIOS calls?), has switches on front panel for some things configure, and has Forth interpreter in ROM accessible by push key at boot and at interrupt 18h.
< 1277744042 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :All CMOS setups can be done by Forth codes, such as CMOS-WRITE and CMOS-READ and that you can then boot a internet file by writing: $0000 GOPHER-BOOT= example.org 70 boot.bin
< 1277744073 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Or, by: $0000 S" example.org" 70 S" boot.bin" GOPHER-BOOT
< 1277744081 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And then have similar command for FTP-BOOT and HTTP-BOOT
< 1277744106 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And also GOPHER-LOAD FTP-LOAD HTTP-LOAD which is same but no boot, only load into memory
< 1277744130 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/User:ClueBot/Source
< 1277744138 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ACTION feels slightly nauseous.
< 1277744148 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Coreboot can load a BIOS implementation.
< 1277744167 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, because of the idea of writing a bot like that in PHP?
< 1277744191 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_, that, and the fact that the source is horribly ugly.
< 1277744215 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION feels guilty about his own ugly source
< 1277744368 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Don't worry, I've never even gotten around to write anything long enough to be ugly.
< 1277744394 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Well, except maybe my half-functioning E-SNUSP intepreter.
< 1277744469 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :What if someone vandalizes with {{nobots}}?
< 1277744490 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I assume it ignores that tag.
< 1277744515 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not all bots care about that tag
< 1277744531 0 :hiato!~nine@41-132-88-15.dsl.mweb.co.za JOIN :#esoteric
< 1277744535 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :"This bot is an exclusion compliant bot.
< 1277744535 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :"
< 1277744545 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Hmm...
< 1277744555 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Meh, something else would catch you.
< 1277744709 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I should have BIOS codes like: PALETTE-SNOOP OFF CMOS-WRITE
< 1277744728 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :What for?
< 1277744783 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Actually, looking at the source, it vaguely looks like it checks the flag of what it's about to post.
< 1277744920 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :It has a high regard for "Penisula"
< 1277745535 0 :Gregor-P!~AndChat@173-129-1-27.pools.spcsdns.net JOIN :#esoteric
< 1277745542 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Python uses doubles for its floating point values, and it still thinks 4.3 is 4.2999999999999998. Srsly, start Python interactively and type in "4.3 ".
< 1277745561 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :Welp, JSMIPS no longer works on IE :P
< 1277745579 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, well known bug.
< 1277745606 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Understandable, since 0.3 is a recurring decimal in binary.
< 1277745606 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: What, the existence of Python? ;)
< 1277745617 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-P: Congrats on getting rid of that bug.
< 1277745621 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: That's not a size bug, it's a ftoa bug.
< 1277745638 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :irb handles the number 4.3 just fine.
< 1277745655 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, uses rationals by default?
< 1277745696 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :erl and hugs both handle 4.3 fine too.
< 1277745719 0 :sebbu!~sebbu@ADijon-152-1-42-161.w83-194.abo.wanadoo.fr JOIN :#esoteric
< 1277745723 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :!haskell :t 4.3
< 1277745725 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :4.3 :: (Fractional t) => t
< 1277745734 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :What I learned at PLDI this year: ftoa is a hell of a lot more difficult than it sounds.
< 1277745781 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-P, unsurprising
< 1277745804 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Since you can only represent binary fractions with floats.
< 1277745828 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :And it appears that Ruby sees 4.3 as a Float type. So, this isn't just a problem with floating point.
< 1277745837 0 :Gregor-W!836b416f@gateway/web/freenode/ip.131.107.65.111 JOIN :#esoteric
< 1277745854 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :See http://portal.acm.org/citation.cfm?id=1806596.1806623 , then go implement it in Python and celebrate!
< 1277745856 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Also, that "4.3.ceil" is valid syntax in Ruby is weird.
< 1277745857 0 :Gregor-W!unknown@unknown.invalid QUIT :Client Quit
< 1277745868 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, it really is a problem with floats.
< 1277745871 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Think about it.
< 1277745893 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: I said "isn't just a problem with floating point."
< 1277745921 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I assume that the other things have just got sophisticated display code.
< 1277745961 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Rather, I assume Python lacks sufficiently intelligent display code.
< 1277745997 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :Which it does, because ftoa is harder than it sounds ;)
< 1277746003 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :IIRC they tidied it up in 3.
< 1277746006 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :0
< 1277746078 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :You mean 2.9999999999998
< 1277746116 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :3 is a binary fraction.
< 1277746122 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Beer to Mr. Richards!
< 1277746396 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :And fizzie: your lesson with the DS there is "Never ever be clever".
< 1277746425 0 :aschueler!unknown@unknown.invalid QUIT :Quit: leaving
< 1277746741 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Ever play with ColorForth?
< 1277746906 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :http://www.colorforth.com/
< 1277746980 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Apparently it's been put into silicon. Freaky.
< 1277747125 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I think I remember a quote from Moore about why he designed Forth: He wanted to be able to build more than a half-dozen programs in his lifetime. (He couldn't see how that would be possible if he were to have to write them in assembly, at the time.)
< 1277747216 0 :kar8nga!~kar8nga@93-82-74-230.adsl.highway.telekom.at JOIN :#esoteric
< 1277747269 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Reasonable reason to build a language.
< 1277747313 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I agree. I like Chuck.
< 1277747315 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :OMFG. Coreutils written in Forth: awesome or best idea ever?
< 1277747457 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: doit
< 1277747479 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Then make 'em run on JSMIPS :P
< 1277747659 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric : MIPS?
< 1277747760 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. Factor would be a bit nicer to write in. Though not quite as minimalist.
< 1277747791 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :Or English. Just need an English VM.
< 1277747819 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Ooh, Peter Jackson has expressed interest in a film adaptation of Mortal Engines.
< 1277747819 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(still pretty minimalist: it *is* a concatenative language, after all.)
< 1277747856 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I'm a bit disappointed that Linux doesn't appear to have any thinner a portable interface to its syscalls than libc. (Would love to be proven wrong on that.) That means a Forth for Linux has to either be machine dependent, or have a kernal written in C, or provide its own syscall abstraction layer.
< 1277747879 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, it's hardly difficult.
< 1277747888 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Oh, wait.
< 1277747890 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: I didn't use the word "difficult".
< 1277747904 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I have no idea what the calling convention is on non-x86 architectures.
< 1277747904 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: There is a thinner one.
< 1277747909 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The Linux VDSO.
< 1277747963 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Interesting. I found: "Virtual Dynamically-linked Shared Object, a kernel-provided shared library that helps userspace perform a few kernel actions without the overhead of a system call, as well as automatically choosing the most efficient syscall mechanism. Also called the "vsyscall page". "
< 1277747979 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :"A few" suggests it's not a complete interface, tho that glossary might be out of date.
< 1277748005 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It provides all the syscalls.
< 1277748041 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :OK, so a Forth only has to provide .so-loading-and-linking capability (which I guess it should do anyway!) and it's set. Nice. Err, assuming there's not much platform-dependent about .so's... I don't recall.
< 1277748089 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Very platform-dependent, but generally consistent across architectures using the same kernel and libc.
< 1277748107 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Linux doesn't have a proper dynamic linking thing, does it?
< 1277748108 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :That .so is fake, built into the kernel and loader, you don't load it in the same way as other .sos
< 1277748124 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-P: Actually, just the kernel.
< 1277748126 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: It does.
< 1277748134 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ld just sticks some code that mmaps the appropriate sos?
< 1277748139 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-P: The loader gets passed the location of it as an argument.
< 1277748139 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :s/?/./
< 1277748163 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: It has to actually copy read-write areas.
< 1277748171 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Like all dynamic linking.
< 1277748172 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :As long as you don't have to call anything C-based / platform-specific to load the damn thing, I guess.
< 1277748180 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: ld-linux.so
< 1277748195 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :But yes, it just mmaps the read-only chunks.
< 1277748201 0 :Gregor-P!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: Shouldn't.
< 1277748217 0 :Gregor-W!836b416f@gateway/web/freenode/ip.131.107.65.111 JOIN :#esoteric
< 1277748221 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Tired of typing on my phone :P
< 1277748233 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: By "loader" I meant the kernel's ELF loader, not the dynamic loader.
< 1277748248 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: Your statements about Linux's .so loading make it sound like Windows' PE/COFF. Shame on you
< 1277748251 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Ah.
< 1277748360 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: The one odd thing is that, on x86, the dynamic linker *allows* for non-PIC SOs. *These* are actually relocated, instead of dynamically linked.
< 1277748376 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :This is mostly for backwards compatibility, but also allowing for how PIC has overhead on x86.
< 1277748396 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(*notable* overhead, that is.)
< 1277748563 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Don't type on your phone, use a proper computer, please.
< 1277748588 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :... /me wonders what zzo38 thinks I logged in on another system for anyway
< 1277748599 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Why are there all of these Gregors?
< 1277748641 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :THERE ARE TO MANY.
< 1277748647 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :s/TO/TOO/
< 1277748707 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Digital addition seems easier than I thought: XOR two bits for the value at that point, AND them for the carry, and XOR the carry with the result for the next .. wait, there's an ordering issue here
< 1277748729 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Wait, it took you that long to find out?
< 1277748757 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :It took me that long to bother to think it through for two seconds.. still the ordering issue though
< 1277748821 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Do any new IBM computers have ROM-BASIC?
< 1277748851 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :I highly doubt it.
< 1277748852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I doubt it, somehow
< 1277748864 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: I find it easier to think about as its own operation on booleans, like: a ADD b => (r, c)
< 1277748903 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION still wonders if analogue addition might be better
< 1277748906 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: I will go one further than "doubt it" and say OMG NO
< 1277748962 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :What I think should be done is a Forth interpreter added to Interrupt 18h which runs if no bootable devices are found or if the DELETE key is pushed during BIOS boot
< 1277748985 0 :MigoMipo!~John@84-217-10-12.tn.glocalnet.net JOIN :#esoteric
< 1277748991 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Soooo, EFI.
< 1277748995 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what does int 18h do normally?
< 1277749014 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :(Doesn't EFI have Forth? I thought it inherited that from OpenFirmware .... maybe not)
< 1277749014 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: That's done in firmware these days, isn't it? So it's theoretically possible to add that.
< 1277749025 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I think on modern computer, just halts or reboots. Or asks the user to push any key to reboot.
< 1277749036 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :On old IBM computers, Int 18h was ROM-BASIC.
< 1277749076 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Ah, I remember calling that one once, and I just got a message "ROM BASIC NOT AVAILABLE" while the machine hung. This was in 1999-ish.
< 1277749099 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Yes, some computers will say "ROM BASIC NOT FOUND, SYSTEM HALTED" or something like that.
< 1277749220 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :You could have it when the computer is booted, it beeps and displays boot diagnostics and "Push for fast POST; Push for ROM-FORTH" and the current date/time, and then clears the screen and boots from the default boot device.
< 1277749245 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And then pushing there will display the "ok" prompt and then you can type in DEFAULT-BOOT to have it boot normally anyways, as if you didn't interrupt the boot process.
< 1277749249 0 :hiato!unknown@unknown.invalid QUIT :Quit: underflow
< 1277749257 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :If you can't wedge in a Forth there, the next best thing would be to change that "MISSING BASIC ROM" message to: BAD MAGIC "MERCIFUL TO GIBBERING MOUTHERS"
< 1277749338 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Or it could also be changed to "MISSING BASIC ROM. PUSH DELETE TO ENTER SETUP, OR ELSE SYSTEM REBOOTS IN 30 SECONDS"
< 1277749407 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I don't know what BAD MAGIC "MERCIFUL TO GIBBERING MOUTHERS" is going to mean here! It doesn't even make much sense?
< 1277749419 0 :Gregor-P!unknown@unknown.invalid QUIT :Ping timeout: 240 seconds
< 1277749496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :BAD MAGIC means that the "magic number" at the start of ROM or a file is wrong, i.e. it's really corrupt
< 1277749497 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Forth systems can be very small, modern computers can probably store a Forth system in ROM for sure if you remove a few of the other things that are sometimes found in the ROM
< 1277749500 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wasn't there some interrupt for calling extension roms? Like VGA ROM or ROM on other devices
< 1277749502 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't get the rest of the joke though
< 1277749507 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like network card or whatever
< 1277749513 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :was ROM-BAISC like that?
< 1277749525 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I know that is BAD MAGIC. But that's all
< 1277749534 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ais523: BAD MAGIC means exactly what I mean it to mean. :) The rest was a reference to something zzo38 was asking about a few days ago.
< 1277749570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, were you here when I mentioned the Lego RCX firmware validation magic?
< 1277749575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think you were hm
< 1277749592 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes, but my IRC client filters out everything Lego-related.
< 1277749596 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I was on here when I read about the Lego RCX firmware validation magic for sure!
< 1277749599 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, heh? ;P
< 1277749611 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ACTION sometimes feels like the only surrealist in the room.
< 1277749613 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And it seem strangely
< 1277749661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, oh surrealism, right. Was unsure if it was that or really bad pun or you going mad (and/or a combination of those)
< 1277749709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, strangely what?
< 1277749725 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Just strangely
< 1277749734 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, don't you mean "strange" then?
< 1277749782 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is "MERCIFUL TO GIBBERING MOUTHERS" the cause of the bad magic, or is "MERCIFUL TO GIBBERING MOUTHERS" a suggested course of action to fix the problem? Surely even if this is the case, it still doesn't seem to make perfect sense to put that in the ROM BIOS message?
< 1277749789 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No, I mean "strangely"
< 1277749899 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Licensing mind game/flood: Let's say I add a special library name to my portable ELF loader that means "some POSIX-compliant host libc". So on GNU/Linux it loads /lib/libc.so.6, but on Windows it loads cygwin1.dll . Now, you write some code targetting my portable ELF loader, then release binaries (no source) under some restrictive license. cygwin1.dll is GPL, so anything "linked" against it must be GPL-compatible. Are you violati
< 1277749902 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: I thought it was that an attempt to be merciful to gibbering mouthers was made, but was intercepted by the system as a bad act of magic. I could be wrong though, since I made it up.
< 1277749930 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ACTION will stop trying to be Zippy the Pinhead meets Giorgio de Chirico now.
< 1277749940 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: Ah, so that is what you meant (or think you meant) when you wrote that.
< 1277749987 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: I'm not personally violating Cygwin's license, but anyone using my software, via the intended method, on Windows is; I might be in trouble for inducing copyright infringement as a result
< 1277749997 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(in your hypothetical situation)
< 1277750013 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this is pretty similar to the whole libreadline/libedit thing
< 1277750017 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :I could make this hypothetical situation a reality in like fifteen minutes if I wanted to :P
< 1277750027 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Maybe you need to just not release binaries for Windows, should do it?
< 1277750042 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: But the binaries are platform-independent.
< 1277750046 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: you need someone else to write the source
< 1277750061 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: What kind of binaries are you using?
< 1277750069 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Perhaps it is "mere aggregation" then.
< 1277750076 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's clearly whoever causes cygwin to link against the restrictive-license binaries who's breaking copyright
< 1277750077 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ACTION just loooooooves the GPL.
< 1277750086 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not the author of either work individually
< 1277750091 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: In this hypothetical situation, ELF binaries targetting my super-special ELF loader that works on "all" platforms (at least Linux, Windows and Mac OS X)
< 1277750109 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :extreme simplification: suppose I go and link together Cygwin and Microsoft Windows, somehow. Is Microsoft now breaking the GPL?
< 1277750129 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's pretty much the same question you asked
< 1277750132 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Hm hm hm!
< 1277750137 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :How is "link" defined legally?
< 1277750143 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: 'snot :P
< 1277750166 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: the actual legal language is "create a derivative work"
< 1277750166 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :So it's a matter of who's lawyers are better funded.
< 1277750177 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's not quiet clear how that connects to linking
< 1277750199 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: I suppose what you have to do is, ensure the special ELF loader is under a Open-Source license (if it is the one that makes it link cygwin1.dll in the right place), and then do not package the ELF loader for Windows together with any other software!
< 1277750325 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: But surely packaging the loader along with the other software is just mere aggregation.
< 1277750384 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I don't know, I am not lawyer
< 1277750417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: I don't see how packaging is illegal; it's actually using the software together that's the issue
< 1277750434 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Using the software together for private use only should be OK.
< 1277750442 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Exactly! Yay for license lunacy :)
< 1277750444 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I think the GNU GPL permits it if it is private
< 1277750463 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :But it's always private, you can't actually distribute them linked in this setup.
< 1277750464 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: I don't see the problem here at all
< 1277750470 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :using the software != distributing the software
< 1277750590 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :I'm really just pointing out that this is a wonderful way to work around the GPL :P
< 1277750606 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: it's still inducing copyright infringement
< 1277750641 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :And then there's the wiki's public-domainness.
< 1277750675 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :ais523: But you're never /distributing/ versions that have proprietary and GPL components linked together.
< 1277750700 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: no, you aren't; you aren't infringing copyright; you're distributing a program that can't be used without infringing copyright
< 1277750720 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the second is illegal, but under a different law, unless you have really strong disclaimers
< 1277750766 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :It can be used without infringing copyrights, just not on Windows :P
< 1277750777 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :It would probably be allowed to distribute a binary linked with GPL components if the source code license is compatible with the GPL, it doesn't have to be the GPL. Because the source-code can be used under the GPL to create those binaries and anyone else can also do the same.
< 1277750811 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that's trivially and always been true.
< 1277750816 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, um what exactly are you trying to link together here?
< 1277750820 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Which is why I made the license in this hypothetical a proprietary license.
< 1277750827 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :isn't Gregor-W's thing just a dynamic linker
< 1277750844 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like the one glibc has, or any other *nix with dynamic linking
< 1277750878 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Yup
< 1277750887 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, why would it then be illegal on windows?
< 1277750906 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't get it to tell the truth
< 1277750934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean, lots of open source software links against windows DLLs when compiled on windows. Probably kernel32.dll and user32.dll at least
< 1277750944 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :cygwin1.dll is GPL
< 1277750962 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, that means only GPL software is in the official cygwin repos?
< 1277750968 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well that or *BSD
< 1277750969 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :GPL-compatible
< 1277750969 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or similar
< 1277751010 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, but it would link against closed source windows DLLs like the ones I mentioned above
< 1277751015 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :this makes no sense
< 1277751026 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Although Cygwin is GPL, it has an exception which allows any Open-Source software to link with it
< 1277751036 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Not necessarily GPL or even GPL-compatible
< 1277751058 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm
< 1277751107 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I think we might have decided in the past, that the Vonkeror license is not Open-Source but is still compatible with the GPL.
< 1277751122 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why isn't it open source? MPL?
< 1277751148 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I think it still qualifies as Free-Software though.
< 1277751188 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The reason it isn't Open-Source, is apparently, because it says: This software is licensed under GNU GPL v3 or later version. The workers of Conkeror are allowed to revert it to the Conkeror tri-license.
< 1277751210 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Apparently the "workers of Conkeror" clause makes it not Open-Source. (Or so I have been told)
< 1277751238 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh btw that reminds me of an issue I ran into recetly. If your kernel is under MPL, what happens to user space? To complicate things the system has no well defined limit between kernel and user space (embedded system with no MMU, syscalls as normal calls). On the other hand your user space code is not linked statically against the kernel, well until it is downloaded over IR to the device.
< 1277751254 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so the question is: does the user space code have to be MPL?
< 1277751328 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ^
< 1277751348 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't know, offhand, but MPL's a pretty weird license
< 1277751359 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I suppose only if they are distributed together or if the kernel header files are included as part of the program source-code. But I am not sure
< 1277751379 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : the second is illegal, but under a different law, unless you have really strong disclaimers <-- you know. Windows can be used to infringe copyright. Thus it should be illegal!
< 1277751423 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it has notepad and mspaint, both can easily be used to infringe copyright in various ways! And what about IE!?
< 1277751438 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's not about whether it can be used to infringe copyright, but about whether it strongly encourages infringing copyright
< 1277751471 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :"The workers of Conkeror are allowed to revert it to the Conkeror tri-license" -- Seems silly to say, to me. The copyright holder of a work is always allowed to switch license on it, just not retroactively.
< 1277751490 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, MS does certainly by having such a painful EULA!
< 1277751496 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :The great thing about open source is how it got every non-lawyer crafting license agreements.
< 1277751512 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: Not if there are multiple copyright holders in this case, you still have to agree everyone to be able to switch license!
< 1277751535 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric
< 1277751536 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: True. s/holder/holders/
< 1277751544 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :CLC-INTERCAL's used to be great
< 1277751548 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm?
< 1277751553 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :isn't it any more?
< 1277751559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but the level of recursion involved was sufficiently high that eventually the compiler became incapable of handling it
< 1277751565 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh the license you mean, missed the 's
< 1277751574 0 :sebbu!unknown@unknown.invalid QUIT :*.net *.split
< 1277751574 0 :pikhq!unknown@unknown.invalid QUIT :*.net *.split
< 1277751575 0 :coppro!unknown@unknown.invalid QUIT :*.net *.split
< 1277751575 0 :jix!unknown@unknown.invalid QUIT :*.net *.split
< 1277751575 0 :Phantom_Hoover!unknown@unknown.invalid QUIT :*.net *.split
< 1277751576 0 :Sgeo_!unknown@unknown.invalid QUIT :*.net *.split
< 1277751576 0 :olsner!unknown@unknown.invalid QUIT :*.net *.split
< 1277751576 0 :Gracenotes!unknown@unknown.invalid QUIT :*.net *.split
< 1277751576 0 :Geekthras!unknown@unknown.invalid QUIT :*.net *.split
< 1277751576 0 :jcp!unknown@unknown.invalid QUIT :*.net *.split
< 1277751576 0 :fungot!unknown@unknown.invalid QUIT :*.net *.split
< 1277751577 0 :MigoMipo!unknown@unknown.invalid QUIT :*.net *.split
< 1277751577 0 :fizzie!unknown@unknown.invalid QUIT :*.net *.split
< 1277751577 0 :Warrigal!unknown@unknown.invalid QUIT :*.net *.split
< 1277751578 0 :chickenzilla!unknown@unknown.invalid QUIT :*.net *.split
< 1277751578 0 :Gregor-W!unknown@unknown.invalid QUIT :*.net *.split
< 1277751578 0 :MizardX!unknown@unknown.invalid QUIT :*.net *.split
< 1277751578 0 :myndzi\!unknown@unknown.invalid QUIT :*.net *.split
< 1277751578 0 :oklopol!unknown@unknown.invalid QUIT :*.net *.split
< 1277751578 0 :Deewiant!unknown@unknown.invalid QUIT :*.net *.split
< 1277751579 0 :kar8nga!unknown@unknown.invalid QUIT :*.net *.split
< 1277751579 0 :ineiros!unknown@unknown.invalid QUIT :*.net *.split
< 1277751579 0 :relet!unknown@unknown.invalid QUIT :*.net *.split
< 1277751579 0 :cheater99!unknown@unknown.invalid QUIT :*.net *.split
< 1277751600 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Hay! *.net *.split
< 1277751622 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, of handling the license?
< 1277751622 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also argh lag spike
< 1277751635 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Haven't seen a netsplit in ages
< 1277751648 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, the license was changed to something that was plaintext rather than requiring compilation
< 1277751648 0 :AnMaster!unknown@unknown.invalid QUIT :Quit: ZNC - http://znc.sourceforge.net
< 1277751650 0 :Ilari!unknown@unknown.invalid QUIT :Quit: Reconnecting
< 1277751681 0 :MigoMipo!~John@84-217-10-12.tn.glocalnet.net JOIN :#esoteric
< 1277751681 0 :Gregor-W!836b416f@gateway/web/freenode/ip.131.107.65.111 JOIN :#esoteric
< 1277751681 0 :kar8nga!~kar8nga@93-82-74-230.adsl.highway.telekom.at JOIN :#esoteric
< 1277751681 0 :sebbu!~sebbu@ADijon-152-1-42-161.w83-194.abo.wanadoo.fr JOIN :#esoteric
< 1277751681 0 :Phantom_Hoover!~phantomho@cpc3-sgyl21-0-0-cust116.sgyl.cable.virginmedia.com JOIN :#esoteric
< 1277751681 0 :Gracenotes!~person@wikipedia/Gracenotes JOIN :#esoteric
< 1277751681 0 :relet!~thomas@c905DBF51.dhcp.bluecom.no JOIN :#esoteric
< 1277751681 0 :MizardX!~MizardX@unaffiliated/mizardx JOIN :#esoteric
< 1277751681 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277751681 0 :pikhq!~pikhq@75-106-123-171.cust.wildblue.net JOIN :#esoteric
< 1277751681 0 :myndzi\!myndzi@c-24-19-39-178.hsd1.wa.comcast.net JOIN :#esoteric
< 1277751681 0 :coppro!~coppro@unaffiliated/coppro JOIN :#esoteric
< 1277751681 0 :jcp!~jw@bzflag/contributor/javawizard2539 JOIN :#esoteric
< 1277751681 0 :oklopol!~oklopol@a91-153-122-35.elisa-laajakaista.fi JOIN :#esoteric
< 1277751681 0 :cheater99!~cheater@ip-80-226-21-184.vodafone-net.de JOIN :#esoteric
< 1277751681 0 :Sgeo_!~Sgeo@ool-18bf618a.dyn.optonline.net JOIN :#esoteric
< 1277751681 0 :chickenzilla!~chicken@olol.eu JOIN :#esoteric
< 1277751681 0 :jix!~jix@tomakin.h-ix.net JOIN :#esoteric
< 1277751681 0 :Warrigal!~Warrigal@rrcs-70-63-156-144.midsouth.biz.rr.com JOIN :#esoteric
< 1277751681 0 :Deewiant!~deewiant@kekkonen.cs.hut.fi JOIN :#esoteric
< 1277751681 0 :olsner!~salparot@c83-252-161-133.bredband.comhem.se JOIN :#esoteric
< 1277751681 0 :fungot!~fungot@momus.zem.fi JOIN :#esoteric
< 1277751681 0 :fizzie!fis@iris.zem.fi JOIN :#esoteric
< 1277751681 0 :ineiros!~itniemin@james.ics.hut.fi JOIN :#esoteric
< 1277751697 0 :Ilari_!~user@2002:5870:32ae:1:4261:86ff:fe96:fca JOIN :#esoteric
< 1277751697 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :If the former, then it's *debatable* whether or not it's violating the GPL.
< 1277751697 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :fsck.
< 1277751697 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277751698 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :If the latter, then you're not violating it at all.
< 1277751712 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: It's just gelfload linking it against some POSIX-compliant C library, which happens to be cygwin1.dll on Windows.
< 1277751742 0 :AnMaster_!~AnMaster@unaffiliated/anmaster JOIN :#esoteric
< 1277751743 0 :AnMaster_!unknown@unknown.invalid QUIT :Excess Flood
< 1277751752 0 :Ilari_!unknown@unknown.invalid NICK :Ilari
< 1277751762 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Oh, no!
< 1277751766 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Excess Flood!!
< 1277751775 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Perfectly legal. The proprietary program never once requested a GPL one. It would've been just as happy with newlib or libc.
< 1277751777 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: You *could* in theory link against some cygwin1.dll-alike, BSD-licensed library on Windows, right?
< 1277751778 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: I suppose it is OK if the data for linking it with cygwin1.dll is in an external file, even if it is distributed together with the software, should still be OK.
< 1277751805 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: Hell, I could even link against UWIN, but then the problem is with GPL software :P
< 1277751810 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :If it is specifically demanding cygwin1.dll, then it's probably illegal.
< 1277751810 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :That is, instead of hard-coding it into the program you put it in the "gelfload.conf" file, for example.
< 1277751812 0 :AnMaster!~AnMaster@unaffiliated/anmaster JOIN :#esoteric
< 1277751826 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I think a short disclaimer would CYA in practice,.
< 1277751827 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :....
< 1277751835 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :" also argh lag spike" was last line on this end
< 1277751836 0 :augur!~augur@216-164-33-76.c3-0.slvr-ubr1.lnh-slvr.md.cable.rcn.com JOIN :#esoteric
< 1277751840 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what did I miss
< 1277751847 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And then distribute gelfload.conf together with the ELF loader program that does that.
< 1277751849 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Nothing interesting.
< 1277751856 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Well that's the trick, gelfload may be specifically demanding cygwin1.dll, but the proprietary program is just demanding "some POSIXalike"
< 1277751865 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, any reply to " ais523, of handling the license?"?
< 1277751869 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, I presume not
< 1277751873 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: We found a proof for P=NP
< 1277751876 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :I don't know.
< 1277751878 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cpressey, har har
< 1277751882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, ...
< 1277751885 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster, but clog was down, so...
< 1277751886 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the license itself needed compilation
< 1277751897 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: So it's just fine unless you distribute it along with gelfload and cygwin1.dll.
< 1277751898 0 :pineappl1!~pineapple@cpc3-aztw11-0-0-cust24.aztw.cable.virginmedia.com JOIN :#esoteric
< 1277751904 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why?
< 1277751917 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because it's CLC-INTERCAL
< 1277751930 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : pikhq: Well that's the trick, gelfload may be specifically demanding cygwin1.dll, but the proprietary program is just demanding "some POSIXalike" <-- do the same?
< 1277751932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there was a literal space in the executable's filename
< 1277751939 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Basically, you can't provide the whole thing together but if someone just happens to piece it together it's fine.
< 1277751941 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which actually exposed a bug in mandb
< 1277751943 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Put the data needed for gelfload to link the program with cygwin1.dll into the gelfload.conf file and then distribute gelfload.conf together with gelfload (and if gelfload is GPL, include cygwin1.dll also in the distribution), and then it should be OK
< 1277751951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but Debian decided that not breaking mandb was more important than fixing the mandb bug
< 1277751962 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: But now you're arguing that mere aggregation is, in this case, the same as linking.
< 1277751963 0 :pineapple!unknown@unknown.invalid QUIT :Write error: Broken pipe
< 1277751976 0 :cal153!unknown@unknown.invalid QUIT :Ping timeout: 341 seconds
< 1277751976 0 :HackEgo!unknown@unknown.invalid QUIT :Ping timeout: 341 seconds
< 1277751976 0 :EgoBot!unknown@unknown.invalid QUIT :Ping timeout: 341 seconds
< 1277751979 0 :HackEgo!~HackEgo@codu.xen.prgmr.com JOIN :#esoteric
< 1277751979 0 :EgoBot!~EgoBot@codu.xen.prgmr.com JOIN :#esoteric
< 1277751980 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Mere aggregation with the intent of linking.
< 1277751981 0 :cal153!~cal@c-24-4-207-72.hsd1.ca.comcast.net JOIN :#esoteric
< 1277751986 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :lawl
< 1277751990 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And good *God* this is painful to think about.
< 1277751997 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :We caught him aggregating with intent to link
< 1277751997 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :... Linkregation.
< 1277752000 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I HATE COPYRIGHT LAW AND THIS IS AMBIGUOUS AS FUCK
< 1277752006 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Do you think my suggestion will work??
< 1277752020 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Nobody knows, all we can do is debate endlessly because the law is ambiguous and stupid :)
< 1277752025 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :um. wasn't there some ABI compatible BSD-licensed replacement for readline?
< 1277752029 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or do I misremember?
< 1277752033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if there wasn't there should be one
< 1277752050 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Technical issue: surely your gelf linker requires your libraries to have a compatible ABI on all platforms (which of course they won't)?
< 1277752061 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Or are you providing stubs to make the ABI compatible?
< 1277752100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm
< 1277752107 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: there's libedit; dunno if it is abi compatible
< 1277752107 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is glibc under lgpl? or gpl + linking exception?
< 1277752115 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Right now I'm just counting on them being compatible, which they actually mostly are since the C calling convention is consistent (modulo fastcall on Windows, but cygwin1 doesn't use that), and other than that the ABI is just POSIX function names (modulo how the "stdout" and "stderr" macros work, which is obnoxious)
< 1277752117 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Because otherwise what you've got going on is crossing fingers and hoping it doesn't break.
< 1277752121 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: GPL + linking.
< 1277752122 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: there might be some other one too, now that i think about it, but don't recall
< 1277752136 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Maybe you need to put the data for ABI compatible into the gelfload.conf file to tell it which stubs it needs to load to make it to do so, and so on.
< 1277752146 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Libc ABIs *do* change.
< 1277752154 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Yes, what I've got going in is crossing fingers and hoping it doesn't break, but this situation is a hypothetical :P
< 1277752163 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, also for x86_64 the calling convention differ between linux and windows. Even the size of a long differ there iirc.
< 1277752184 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Dude, *my current libc* provides for multiple ABIs because there exists breakage.
< 1277752186 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :What gelfload does right now is allow you to make Windows-specific ELF binaries on Windows, and Mac OS X-specific ELF binaries for Mac OS X, no cross-platform lunacy.
< 1277752193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, how does it define linking? what the whole thing?
< 1277752215 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :...and what about static linking?
< 1277752218 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Oh, Windows-specific ones on Windows. Okay. In that case what you have is perfectly fine.
< 1277752229 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I dunno.
< 1277752241 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I'm just making a hypothetical here for magical cross-platform ELFs.
< 1277752260 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: For those you'll need to provide all the libraries.
< 1277752278 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :As in effect you'll be building for a hypothetical i686-pc-gelfload-newlib thing.
< 1277752284 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though if I'm linking statically I'm definitely going with uclibc..
< 1277752300 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Welp, time for my brain to explode.
< 1277752305 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :*AXPLOSHON*
< 1277752325 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Since you *would* be defining, in effect, an OS which happens to have multiple implementations.
< 1277752334 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :On other kernels.
< 1277752337 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Which sounds like a totally awesome idea.
< 1277752341 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :hg st
< 1277752341 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :X ./Gregor-W
< 1277752346 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, :D
< 1277752349 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I had that idea once. I called it Microcosm.
< 1277752364 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: You've got most of the work done.
< 1277752383 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: http://codu.org/wiki/Microcosm
< 1277752387 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Port newlib and it's working.
< 1277752390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, indeed. This makes java lose it's "platform independent" appeal! Now you can do cross platform C without recompiling. Sure you still need a 32-bit and a 64-bit version but...
< 1277752408 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :System calls? Bah.
< 1277752417 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Have multiple libcs.
< 1277752432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :this would be easy for linux/osx
< 1277752436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :harder for windows
< 1277752441 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Platform-specific libraries offering the same ABI.
< 1277752442 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And you would need different binaries for different processors I guess, also.
< 1277752447 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Harder but still quite feasible.
< 1277752456 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, anyway hm I wonder if you could do it the other way? To run OS X binaries on linux
< 1277752461 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait they use mach-o
< 1277752462 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or something
< 1277752463 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nvm
< 1277752469 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :If y'all want to help me build Microcosm, I'll make it happen, but you'd have to do more work than me :P
< 1277752483 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :But there should be some way to make restricted-harvard VM that allows optimization into native codes
< 1277752486 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, how much more? ;P
< 1277752498 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Well, I actually know most of the work that would need to go into a gelfload-based Microcosm.
< 1277752503 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, and I might be interested, but I'm not going to do the main work of it.
< 1277752507 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :I've written the ELF loader. You write the libraries.
< 1277752515 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :(Restricted-harvard is my own idea based on harvard but a few additional restrictions to make it better for optimizing into any computer's native codes)
< 1277752520 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The basics would just be porting newlib and making a cross compiler.
< 1277752532 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Hell, I'll even get the ball rolling by making the patches for GCC and binutils :P
< 1277752536 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :(Since they'd be tiny)
< 1277752537 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, why newlib and not uclibc or such?
< 1277752552 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Newlib is portable. uClibc isn't.
< 1277752553 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :uclibc is unportable.
< 1277752559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, hm
< 1277752560 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Newlib is also *easy* to port.
< 1277752566 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well good point
< 1277752568 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Bizarrely so in fact.
< 1277752569 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :You implement the stubs for the system calls and you're done.
< 1277752601 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. Actually, might be nice to make it so there's a single newlib for all systems.
< 1277752610 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It'll just depend on a system-dependent libsyscall.
< 1277752611 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric ::P
< 1277752616 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :One of the restrictions for restricted-harvard is that pointers into ROM are never interchangeable with numbers. And indirect jumps must use a jump table stored in ROM at a fixed address.
< 1277752622 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, how hard would it be to port to a platform where data and function pointers have different sizes for example?
< 1277752626 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :So pikhq, you dislike my syscall style ... the reason for it was to avoid the headache of ABI jumping by just having one "syscall" ABI.
< 1277752649 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Why are we porting it to a system in 1985?
< 1277752660 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Ideally I'd like to make it so that libraries could directly call out to the main system ABI.
< 1277752661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, no it was a general question
< 1277752669 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Though this is, ah, *hard as hell*.
< 1277752670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, anyway you would need to translate data structures since sizeof(long) isn't the same for 64-bit linux and 64-bit windows
< 1277752677 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: I was thinking you might restrict indirect jumps. But then, a lot of object-oriented-type dispatching becomes impossible (or at least very ugly.)
< 1277752677 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Yeah, ABI jumping sucks.
< 1277752684 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and we are going to aim for 64-bit right? no point in going for legacy 32-bit
< 1277752690 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Dude, this is a unique platform.
< 1277752696 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Which happens to run on other platforms.
< 1277752710 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Wouldn't need to happen *much*, fortunately.
< 1277752717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, you still need to compile the program to use the right ISA
< 1277752725 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No shit.
< 1277752725 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Yeah :P
< 1277752728 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Thinking about it, I suppose you could mitigate it for the common cases.
< 1277752735 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: For system calls and probably GUI libraries.
< 1277752753 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :So, shall I set up a http://codu.org/projects/microcosm/ , or are you all just drooling over time you're not willing to spend in reality :P
< 1277752771 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Dude, I'm unemployed. I got *plenty* of time.
< 1277752772 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, and you need to define calling convetions and such to use for each ISA in your OS layer
< 1277752787 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Duh.
< 1277752802 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :using the links ones should be generally quite sane unless I misremember.
< 1277752805 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: So, yeah. I'll start working about when I've figured out how best to cross ABIs.
< 1277752852 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Annoyingly, probably involve writing custom stubs for each function that you want to call cross-ABI.
< 1277752855 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: I suppose you can still have C function pointers, but when stored in a variable or structure it is stored as the index number rather than as the actual function pointer. And then the compiler creates one jump table for all function pointers that are needed in this way.
< 1277752857 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, I'm willing to spend some time. I don't plan to lead the project. I feel you and pikhq have much more experience in that area. I can't promise any minimum time spent on it.
< 1277752875 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, and yeah, do your gelfload work on 64-bit linux currently?
< 1277752881 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes.
< 1277752898 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, AnMaster: Go register at http://codu.org/projects/microcosm/ and I'll give you all the priveleges.
< 1277752909 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Whoot
< 1277752912 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, oh and I won't touch C++. Which we might need if we need to port a toolchain to this
< 1277752920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm
< 1277752924 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Very little involved in porting C++.
< 1277752933 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, was thinking of llvm perhaps
< 1277752933 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm
< 1277752937 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Porting GCC and binutils is a tribiality.
< 1277752940 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :*triviality
< 1277752942 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Almost all the work is in the C library.
< 1277752961 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well. And various system-specific libraries.
< 1277752976 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :X11 wouldn't be hard, if you could just get SDL working.
< 1277753007 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, I don't know where to start coding though. :P
< 1277753008 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but done
< 1277753016 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Fortunately, most packages try their hardest not to rely on anything less portable than a C library.
< 1277753047 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, I guess you and/or pikhq should come up with a general design. But I'm willing to code when I know what to do. I presume we will use gelfload
< 1277753062 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, um, a lot tends to want parts of POSIX at least
< 1277753073 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: A POSIX C library, sure.
< 1277753087 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :There, privileges set up.
< 1277753087 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Few things I'm absolutely positive of: Linux calling convention.
< 1277753104 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :We do *not* want to mess with the weird shit that is Win32.
< 1277753113 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The whole point of this is to avoid that insanity.
< 1277753119 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Is there a Win4?
< 1277753128 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wants 4-bit stuff
< 1277753129 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :JSMIPS > Windows?
< 1277753131 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_, what?
< 1277753140 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Although I do think maybe 8-bit stuff can be made to fit
< 1277753153 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Can you add some stuff to the wiki front page with your idea for the overall design, and next steps?
< 1277753154 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :You'd be able to address 64 bits of memory.
< 1277753165 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :And a link to gelfload I guess :P
< 1277753167 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, hg? I'm more used to bzr I admit so.. quick summary? I remember that the difference was basically a few commands
< 1277753181 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION considers the advantages and disadvantages of analog storage
< 1277753186 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: hg clone ; hg commit ; hg push ; hg pull ; hg up
< 1277753198 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Gregor-W: Few things I'm absolutely positive of: Linux calling convention. <-- yes at least on x86_64. What about some register calling convention on x86_32 though?
< 1277753200 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :There's a case for analog storage?
< 1277753213 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No.
< 1277753218 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Let's not mess with GCC's default C calling conventions, 'kay :P
< 1277753219 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No no no.
< 1277753221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, right, the last two were one step in bzr
< 1277753236 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Use the Linux calling convention, because this is the easy one.
< 1277753239 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, hm wait we use centralised model instead of distributed? I'm lacking a "merge" there :P
< 1277753242 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Addition's pretty trivial. And most things would go to analog before being output
< 1277753242 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And the one that's most understandable.
< 1277753256 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_, multiplication?
< 1277753257 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It has merge too, I'm just hoping we don't bork up too much that merging gets crazy :P
< 1277753261 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: hg pull -u makes them one step in hg. Fwiw.
< 1277753261 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Division?
< 1277753263 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Hm, good point
< 1277753265 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Exponentiation?
< 1277753292 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, I'm used to bzr saying that branches has diverged. Anyway wouldn't you use feature branches and such? Oh how does hg switch between branches if it comes to that?
< 1277753294 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: hg merge merges two active heads, hg merge merges a branch, hg resolve -l lists merge problems, hg resolve -m marks a file as resolved.
< 1277753295 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :hg: How I Learned to Hate Merges
< 1277753305 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Although actually, it would be easy to convert the analog into a series of signals and just repeat one of the analogs each signal
< 1277753306 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Funny thought: qemu could have support for x86-Microcosm, and suddenly x86-Microcosm would be a totally awesome virtual machine to compete with Java. :P
< 1277753307 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :You need an analog process for all of these, and the digital equivalents are so superior that it's pretty pointless.
< 1277753321 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And then we could run Java on it.
< 1277753323 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: hg branch to create a branch, hg up to update to a branch.
< 1277753325 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, linux calling convention isn't easy. However it is sane
< 1277753330 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, at least for 64-bit
< 1277753333 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Superior except in requring more parts
< 1277753336 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I have no clue about 32-bit really
< 1277753339 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Perfectly easy to make GCC use it.
< 1277753342 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :It's easy because if we don't touch GCC, that'll be the calling convention it uses :P
< 1277753347 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's called "don't tell it otherwise".
< 1277753347 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, well yes
< 1277753372 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, but have you read the sysv-amd64-ABI?
< 1277753374 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or whatever it is called
< 1277753380 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: The most important thing about merging on hg is to convince it NOT to try to use some shitty GUI merge tool, and just put the nice "<<<<<" in there.
< 1277753390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the rules for deciding what ends up where are somewhat complex, in order to get the most efficient result
< 1277753407 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Here's the basic model I'm working with, using my own terminology in place of terminology that I don't know if others came up with yet or what:
< 1277753417 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :The essential unit is the awsistor.
< 1277753432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, presumably the code would be split in frontend and backend? Frontend for what the program sees and backend is the bit that differ between different "host OSes"
< 1277753434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm
< 1277753440 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_, How does this work?
< 1277753446 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, describing it now.
< 1277753454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, we need to come up with terminology for this first, or it will be too cumbersome
< 1277753459 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's the "syscall layer"
< 1277753463 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, right
< 1277753481 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Each awsistor can listen on 0 or 1 channels. THe channel can change, but it's tricky, and I don't think it's worth it
< 1277753518 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Basically: we try to offer native libraries as much as possible. However, allow for access to host libraries by writing thunks to transfer between the ABIs. My opinion on this may well change if writing thunks is going to be more difficult than a few lines of assembly or C per function.
< 1277753527 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Each awsistor stores an N-Delay: An amount of time. It can receive an N-Delay from another awsistor on a channel. Its only reaction is to store this N-Delay internally.
< 1277753548 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I get the feeling that thunks will basically be lunacy. Just my own fears manifesting themselves though ^^
< 1277753548 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Yes, found that out the hard way, when it was silently doing no merging at all.
< 1277753556 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: Sweet X-D
< 1277753572 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: On Linux, thunks would probably be trivial. On OS X, not much work.
< 1277753574 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, I'm soo tempted to make a commit with the message "first post!" to that repo ;P
< 1277753577 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I won't
< 1277753583 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :An awsistor has an N-Delay of Infinity by default.
< 1277753584 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :On Windows? I'm concerned.
< 1277753601 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: Yeah, hg's defaults changed recently w.r.t. merging ... it used to use the internal stupid-merge unless you told it otherwise. Now it defaults to trying to figure out a graphical merge tool, which is almost always wrong.
< 1277753630 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: No use making thunks that only work on one platform ;)
< 1277753638 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, hm maybe we could translate GTK+ into native windows API at some point far far far into the future
< 1277753643 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Alternate thought: have a single "syscall" function provided by gelfload, through which you access the system.
< 1277753652 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Uhh, that was the original idea?
< 1277753653 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :An awsistor can receive an S-Signal on the channel. It can do any of a number of things in reaction, but to an s-signal, the same things are always the result. It can send S-Signals, N-Signals, D-Signals, change channels, or output [which isn't particularly relevant for now]
< 1277753655 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Advantages: Damned easy to do the marshalling.
< 1277753661 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Yes, I'm aware.
< 1277753675 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Disadvantages: seems that it would make it harder to access native libraries...
< 1277753678 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, does hg has anything like svn:external?
< 1277753685 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Unfortunately no :(
< 1277753694 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Erm.
< 1277753695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, would be useful to pull gelfload
< 1277753696 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :s/native/host/
< 1277753697 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's a feature I've severely missed on a few occassions, actually.
< 1277753699 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It'd be damned nice to, say, make Qt consist of a wrapper around the host Qt.
< 1277753705 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :The amount of time between receiving an S-Signal and doing its reaction is equivalent to its stored N-Delay.
< 1277753723 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :If it receives a D-Signal in that time, the reaction does not occur.
< 1277753735 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, how would we handle stuff like fork() on win32?
< 1277753736 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :There, that's everything, I think
< 1277753740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or win64 for that matter
< 1277753757 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :roll your own stack switching!
< 1277753759 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Are you at least happy with my concept of having the builtin stuff only provide a "register syscall" syscalls, so that all the actual implementation can be in modules loaded via microcosm-modules.so? Keeping in mind that the way gelfload works, those can be host or microcosm libraries.
< 1277753783 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Oh, sometimes, an S-Signal can specify that it causes the receiving awsistor to repeat.
< 1277753784 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :fork() works on Cygwin, it is used in IRCd software I use
< 1277753787 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Two ways: base it off of Cygwin, or don't have it.
< 1277753795 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, thoughts?
< 1277753797 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: "Don't have it" is not an option.
< 1277753798 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Seems like an easy way to make things work.
< 1277753805 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, hm good ideas I guess
< 1277753807 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Does mingw have fork()?
< 1277753819 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Probably
< 1277753823 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_, OK, so how do we use it for processing?
< 1277753826 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I don't know, but I know MinGW doesn't have setenv()
< 1277753827 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :No, it doesn't.
< 1277753830 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :But IPC is probably wonky and not-POSIXy
< 1277753838 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, what about "lets sort that out a bit later"
< 1277753843 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Yes :P
< 1277753851 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :"Modules to be developed later: fork"
< 1277753859 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, okay do you need some cross compiler for gelfload on linux?
< 1277753862 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, I _think_ it's possible to make a transistor, and know it's possible to make a flip flip
< 1277753895 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_, I still don't see the advantages.
< 1277753899 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :We could stub fork until such time as someone feels like redoing the Cygwin fork.
< 1277753907 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover, this is what I have to work with in Active Worlds.
< 1277753908 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I think you should just have a file gelfload.conf with commands such as DYNLINK, STUB, SYSCALL, THUNKCODE, TRANSLATE, and so on.
< 1277753932 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, Gregor-W: brb, phone
< 1277753937 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_, why?
< 1277753942 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I want to make a programmable computer.
< 1277753949 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Have you been unorthodoxly computing?
< 1277753952 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Yes, you have.
< 1277753972 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :http://www.activeworlds.com/help/aw42/ read the seconds on animate, astart, astop, and name
< 1277753986 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Alternately, we could say "screw Win32" and only do i686-pc-interix-ms
< 1277753987 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric ::P
< 1277753993 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :animate is an N-Signal, astop is a D-Signal, astart is an S-Signal
< 1277754000 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(and thus get an *efficient* fork())
< 1277754003 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :"channels" are names
< 1277754013 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I think it's better to think in terms of Awsistors
< 1277754033 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Doing it this way I specified can mean that you can change the system call gates and thunk codes and so on, for different systems and for different libraries you might use
< 1277754038 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: You don't need a cross-compiler for gelfload on Linux, but you WILL need a cross-compiler since Microcosm is strictly a different OS.
< 1277754098 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_, are you just planning to make a conventional transistor-based computer?
< 1277754127 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Alternate-alternately: the Windows implementation could be done soley using threads. Making Microcosm an actual full kernel.
< 1277754135 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Probably not transistor-based, but more logic-gate based. Don't know how conventional or unconventional it should be
< 1277754145 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :What is Microcosm OS?
< 1277754148 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Implement virtual memory on virtual memory? Ew.
< 1277754158 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Bwahahah.
< 1277754186 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: I have designed a computer using logic-gates. I have never actually built it, though. But I did run simulations of it
< 1277754191 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: A conceptual portable OS that abstracts away OS differences and provides a POSIX-compliant, consistent ABI on "every" OS.
< 1277754219 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Err, missed a vital detail: It is an OS that runs on other OSes, to abstract away their differences.
< 1277754240 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: Inferno can do something similar I think, but not quite
< 1277754247 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Inferno is very thick.
< 1277754273 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that is one thing that isn't the same.
< 1277754274 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Why only "every"?
< 1277754278 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Is Win32 included?
< 1277754288 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The only thick thing here is thunking through to the host ABI.
< 1277754300 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: Yes.
< 1277754310 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: Win32 is sort of the evil "but we gotta do it" OS, so it'll definitely be supported. By putting quotes, I mean "not OS/2 or DOS" :P
< 1277754315 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Or Be
< 1277754320 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :However, Inferno binaries are workable on any processor
< 1277754334 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: Which is not our goal at all.
< 1277754339 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Esotericers? Working on a globally-useful project? Did hell freeze over?
< 1277754351 0 :relet!unknown@unknown.invalid QUIT :Read error: Connection reset by peer
< 1277754355 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Wait, this is called Microcosm, right?
< 1277754361 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :#microcosm
< 1277754363 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: I'm glad you've deluded yourself into thinking it's useful :P
< 1277754368 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :We must stay useless.
< 1277754388 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :How is it not useful?
< 1277754392 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION will be happy if this thing can run the darned heirloom utils
< 1277754396 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what are you trying to do, exactly
< 1277754414 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: DOS could certainly be supported. However, this would be as a bare-hardware implementation.
< 1277754420 0 :kar8nga!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277754427 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :What ais523 said.
< 1277754444 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Hey guys, apparently I own #microcosm ? I registered it years ago I guess.
< 1277754445 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: Sounds kind of like you'd want to use 555's as your basic units instead of transistors :)
< 1277754454 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :555s?
< 1277754461 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: timer chips.
< 1277754462 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: a sort of timer
< 1277754475 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you connect a resistor and capacitor to it, and maybe a few extra components if you want to make it more accurate
< 1277754478 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Can those work as basic units?
< 1277754492 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :ais523, Phantom_Hoover: Create a microkernel that runs on top of other OSes, providing a consistent and POSIX-compliant API and ABI to nested processes and abstracting away the wonky OS differences below.
< 1277754493 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I mean, of logic gates?
< 1277754494 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that is a idea, try to make a computer using almost entirely 555 timer chips.
< 1277754497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably, they have a bunch of connections
< 1277754504 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: hmm, reminds me slightly of coLinux
< 1277754505 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Maybe, who knows? I don't think they can do quite everything you've described, unassisted, though.
< 1277754523 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :ais523: But MUCH thinner.
< 1277754526 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster, get onto #microcosm
< 1277754528 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :NOW.
< 1277754528 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Everything I've described is a basic part of an AW object
< 1277754545 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, more like WINE for kernels
< 1277754572 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Actually yeah. It's exactly like WINE, but the API/ABI is some general idealized POSIX instead of Windows.
< 1277754582 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :This sounds like a good idea.
< 1277754621 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Linux-style ABI and sane POSIX-compliant API?
< 1277754630 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(insane POSIX-compliant exists, but you probably wouldn't go for that)
< 1277754671 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Naw, we don't need this to be SUS03-compliant ;)
< 1277754690 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you must put pax in the userland
< 1277754698 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so people can read C-INTERCAL tarballs
< 1277754719 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you can just use tar.
< 1277754732 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I know
< 1277754738 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but for some reason people never think of that until I tell them
< 1277754747 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :This is ais523-humour?
< 1277754748 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's as if people haven't memorised all the POSIX-standard data archiving formats...
< 1277754750 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :It's not particularly obvious.
< 1277754759 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :It has "pax" on the end of the filename.
< 1277754775 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Phantom_Hoover: and that's the name of the format?
< 1277754793 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :Traditionally.
< 1277754806 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I thought pax was some authentication thing
< 1277754813 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I think I was thinking of PAM?
< 1277754815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I mean, just because it's backwards-compatible with tar doesn't prevent it being called pax
< 1277754816 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Why is C-INTERCAL using so pedestrian an archive format? Surely, programmers would prefer ZOO archives?
< 1277754817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: yes, you were
< 1277754822 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Or ARJ?
< 1277754832 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Hm, this suggests using C-INTERCAL for authentication
< 1277754837 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: INTERCAL's about bening different from everything else
< 1277754846 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if it manages to simultaneously be more standards-compliant, so much the better
< 1277754863 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Ah. Standards-compliant and different. I see.
< 1277754875 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :different /by/ being standards-compliant
< 1277754880 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Yes.
< 1277754883 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you should look at its build system sometime, I put months of effort into it
< 1277754898 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :trying to get it to work perfectly, without issues, for every sort of build imaginable
< 1277754910 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although I haven't tested it on DOS or Windows yet, which is why it's still beta
< 1277754935 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you see, people hardly ever use autoconf/automake correctly, not even GNU, and they invented them
< 1277754953 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I spent ages studying the way they were actually meant to work in order to try to use them in a way that actually worked correctly
< 1277754960 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Wait, it's *possible* to use them correctly? I thought their versioning system subverted that!
< 1277754971 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: yep, although rather difficult
< 1277754983 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to add extra fun, they don't take the possibility of a compiler into account
< 1277754996 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :build/host/target
< 1277755010 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gcc's configure script is mostly written by hand, it seems, in order to get it working
< 1277755026 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whereas I managed it all from autoconf, with a bit of complex trickery
< 1277755032 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Oh man.
< 1277755043 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can even cross-compile C-INTERCAL without issues
< 1277755053 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and/or use parallel make (go -j2!)
< 1277755082 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it uses prebuilt lexers and parsers if lex/flex and/or yacc/bison is missing
< 1277755083 0 :Gregor-P!~AndChat@174-145-133-250.pools.spcsdns.net JOIN :#esoteric
< 1277755084 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :That's sick in a way I certainly didn't expect.
< 1277755087 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and all that sort of thing
< 1277755116 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :really, such a build system is wasted on C-INTERCAL, I should use it on something serious someday
< 1277755141 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: That's a thing of beauty. I must see this.
< 1277755162 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :something I haven't tried, but should, is to see if I can make it into a Debian package using nothing but one call to dh_make and filling in the "put description here" fields
< 1277755225 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :download link is http://c.intercal.org.uk/
< 1277755228 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :get the latest beta
< 1277755238 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(0.-2.0.29)
< 1277755268 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :build system's configure.ac, plus the contents of the buildaux subdir
< 1277755281 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because I didn't want it littering the actual distribution root like most of them do
< 1277755326 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, and I forgot: if you make changes to the build system, then it rebuilds itself and uses the newly-changed build system to rebuild the project
< 1277755344 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except if you don't have the tools needed to rebuild the build system (say you're missing autoconf), it just prints a warning message and uses the old one
< 1277755360 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ooh, and it does automatic dependency tracking too
< 1277755374 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Um. I have a ball.
< 1277755379 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ACTION bounces his ball.
< 1277755424 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Gregor-W: hmm, reminds me slightly of coLinux <-- colinux is very very different afaik.
< 1277755432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it runs a linux kernel
< 1277755467 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Beauty.
< 1277755486 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Claudio's thoughtfully provided an http download link for people who can't do Gopher over IPv6
< 1277755516 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Gopher over IPv6?
< 1277755526 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, he also provided a ipv4 gropher proxy iirc?
< 1277755531 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I cannot do anything over IPv6. I don't have IPv6
< 1277755534 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not as far as I can remember
< 1277755553 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, I can't remember why there's an IPv6 gopher download link
< 1277755567 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it doesn't seem massively out of place
< 1277755569 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, pretty sure that happened when I tried to do gropher over ipv4. it gave me links to some gropher proxies to try
< 1277755579 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :including one he ren it seemed like
< 1277755591 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since it was using the intercal domain
< 1277755609 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just gives me an error when I follow the link
< 1277755721 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, worked for me hm
< 1277755734 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, gopher://gopher.intercal.org.uk/
< 1277755751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :" IPv4 access to this gopher server is not supported, however the directories below may provide access to our IPv6-only servers. Feel free to try."
< 1277755768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :first one listed is "gopher.intercal.org.uk" which links to gopher://gopher4.intercal.org.uk/1gopher.intercal.org.uk
< 1277755785 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :bbl
< 1277755787 0 :cpressey!unknown@unknown.invalid PART #esoteric :?
< 1277755921 0 :relet!~thomas@c905DBF51.dhcp.bluecom.no JOIN :#esoteric
< 1277756199 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I want to eventually to write gopher client on nearly anything
< 1277756227 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Including "faxgopher" that all user interface is done by sending/receiving page by fax
< 1277756239 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And possibly also a gopher client on black and white GameBoy
< 1277756266 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: it's a pity most of the world will never appreciate your ideas, you have some truly great ones
< 1277756469 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Have you ever play mahjong? Have you ever make rule variants of mahjong game?
< 1277756496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm afraid not; I've only played the solitaire version
< 1277756505 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's rather different (and probably inferior) to the multiplayer version
< 1277756532 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes, it is a completely different game. It just uses the same tiles is all.
< 1277756569 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: don't forget homing pigeon
< 1277756602 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Can you just review this tell me if you can understand (please note I am not finished writing it yet): http://zzo38computer.cjb.net/mahjong/anime_evolution/ Also tell me if you like these rules. This is a bit different rules from normal mahjong but it is based on the Japanese riichi mahjong rules, some things are based on ZungJung, but it has some new things as well
< 1277756612 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Homing pigeon?
< 1277756622 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :of course
< 1277756631 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :it's not a proper protocol until it's been implemented by pigeon
< 1277756670 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Do you mean, gopher protocol by pigeon? I have read of IP over carrier pigeon, it is very extremely slow but it does work (and it has been actually done)
< 1277756678 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :yes, exactly
< 1277756868 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Also gopher could be done over FORMCARD forms, which would be a bit difficult for some reasons, one thing is that FORMCARD does not support input in lowercase
< 1277756888 0 :cal153!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds
< 1277756889 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And does not support all ASCII characters in form field input
< 1277757065 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, did you get gropher to work for intercal?
< 1277757072 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, I don't have IPv6
< 1277757084 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, see above... for the ipv4 proxy
< 1277757090 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait you filter gropher urls too?
< 1277757099 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I think you need to go from the clc side, not the c side
< 1277757106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, since you need to go to basedir
< 1277757114 0 :hiato!~nine@41-132-88-15.dsl.mweb.co.za JOIN :#esoteric
< 1277757115 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I have to go home anyway
< 1277757119 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cya
< 1277757150 0 :ais523!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277757369 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Please tell me if the mahjong rules I wrote is good so far in your opinion?
< 1277757464 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I have no idea about mahjong, couldn't possibly help you here
< 1277757474 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why do you assume any of us are experts on this?
< 1277757514 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Even if you don't know about mahjong, it should tell you exactly how to play this game, even for someone who has not heard of the game before
< 1277757786 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm
< 1277757814 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, link to the file
< 1277757864 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: http://zzo38computer.cjb.net/mahjong/anime_evolution/
< 1277757922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, yes but which file in there?
< 1277757927 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the first one is empty
< 1277757951 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :All of the files together make up the rules. Like I said, it isn't finished yet.
< 1277757963 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :That file will be filled later on, so will other files be improved
< 1277757971 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :But if you found a mistake or just a bad rule, tell me
< 1277758017 0 :Gregor-P!unknown@unknown.invalid QUIT :Quit: Bye
< 1277758041 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, too long to read :/
< 1277758108 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Perhaps read tiles.txt at first, you can better understand the other files after that
< 1277758120 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as I said: too long to read
< 1277758122 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tl;dr
< 1277758123 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Have you ever seen a set of mahjong tiles?
< 1277758138 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I have a Washizu Mahjong set.
< 1277758153 0 :Gregor-P!~AndChat@174-145-133-250.pools.spcsdns.net JOIN :#esoteric
< 1277758163 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, I have played the solitaire version on computer, quite boring
< 1277758178 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W, wb
< 1277758191 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Washizu here does not refer to a real person, it refers to a character in the Akagi manga, invented by Nobuyuki Fukumoto.
< 1277758418 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :zzo38, did you miss that I said tl;dr ?
< 1277758448 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :No.
< 1277758468 0 :zzo38!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277758489 0 :cal153!~cal@70.36.237.178 JOIN :#esoteric
< 1277759581 0 :augur!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277759691 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night
< 1277760520 0 :Gregor-P!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds
< 1277761698 0 :sebbu2!~sebbu@ADijon-152-1-85-116.w81-49.abo.wanadoo.fr JOIN :#esoteric
< 1277761759 0 :sebbu!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds
< 1277761759 0 :sebbu2!unknown@unknown.invalid NICK :sebbu
< 1277762419 0 :myndzi!myndzi@c-24-19-39-178.hsd1.wa.comcast.net JOIN :#esoteric
< 1277762626 0 :myndzi\!unknown@unknown.invalid QUIT :Ping timeout: 276 seconds
< 1277762941 0 :hiato!unknown@unknown.invalid QUIT :Quit: /quit /quit /quit /quit
< 1277763943 0 :pineappl1!unknown@unknown.invalid NICK :pineapple
< 1277764135 0 :Oranjer!~HP_Admini@adsl-71-1-146.cae.bellsouth.net JOIN :#esoteric
< 1277764168 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 260 seconds
< 1277764921 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277765056 0 :ehirdiphone!~ehirdipho@82.132.139.138 JOIN :#esoteric
< 1277765082 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Lax patrol yields no packet control yields "Hi."
< 1277765152 0 :Phantom_Hoover!unknown@unknown.invalid PRIVMSG #esoteric :...OK...
< 1277765383 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :hi
< 1277765409 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :My computer's clock says 4:21. It's now 5:49
< 1277765733 0 :Geekthras!unknown@unknown.invalid QUIT :Ping timeout: 265 seconds
< 1277766061 0 :GreaseMonkey!~gm@unaffiliated/greasemonkey JOIN :#esoteric
< 1277766439 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: since when are you unemployed? :(
< 1277766458 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: Since months ago.
< 1277766467 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Aw.
< 1277766505 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Recession, or making the computers recursively self-improve?
< 1277766520 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Recession.
< 1277766529 0 :Geekthras!~geekthras@adsl-99-39-2-249.dsl.pltn13.sbcglobal.net JOIN :#esoteric
< 1277766546 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Compiling X11 annoys me greatly.
< 1277766724 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Lets write our own X11 server.
< 1277766740 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: Compiling *libX11* annoys me greatly.
< 1277766745 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :And call the server X.Org, not X11.
< 1277766754 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The X server itself is quite straightforward.
< 1277766758 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Lets write our own libX11.
< 1277766770 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Let's call it xcb.
< 1277766786 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :That depends on things.
< 1277766814 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Call it lib12 (roman numerals :P)
< 1277766830 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Then 12serv on top.
< 1277766845 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :While we're at it, let's make X12.
< 1277766846 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric ::P
< 1277766858 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :No. That is too far :P
< 1277766871 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :X should just be skullfucked then left to die.
< 1277766877 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Forever.
< 1277766878 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nub >+[(+)*10>[[-]<]+]
< 1277766885 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :oops syntax error
< 1277766890 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :wait
< 1277766895 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: got a better idea?
< 1277766897 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_nub: 6.0
< 1277766902 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :wow.
< 1277766907 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nub >+[(+)*10>[[+]<]+]
< 1277766919 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust sludge (>+>-)*20
< 1277766926 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ehirdiphone_sludge: 0.0
< 1277766927 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_nub: 5.7
< 1277766927 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Yes.
< 1277766952 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :and that is?
< 1277766972 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nub >+[[(+)*10>[[+]<](-)*10>[[+]<]+]+]
< 1277766975 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Do you have hours? And a keyboard for me?
< 1277766980 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :No? Well then.
< 1277766987 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: give me the cliff notes version
< 1277766987 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_nub: 5.1
< 1277766989 0 :Phantom_Hoover!unknown@unknown.invalid QUIT :Remote host closed the connection
< 1277767035 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Composable, extensible abstract views and mungers over STUFF.
< 1277767036 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust nub >+[[(+)*10>[-[-[-[-[-[-[-[-[-[-[-[+]]]]]]]]]]]+]+]
< 1277767047 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: cool
< 1277767049 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_nub: 8.9
< 1277767050 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Meaningless? Yes. You asked for cliff notes.
< 1277767066 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :yeah, that's better
< 1277767085 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :GreaseMonkey: Loops are death.
< 1277767091 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :hmmkay
< 1277767117 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I bet you could write a decent libtwelve in... 2,000 lines.
< 1277767120 0 :augur!~augur@pool-138-88-63-17.res.east.verizon.net JOIN :#esoteric
< 1277767123 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :3k at most.
< 1277767135 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: But nothing links against libtwelve.
< 1277767138 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(>+>-)*3(<)*2+]+]
< 1277767143 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Then 12serv, minus drivers? Let's say 800.
< 1277767144 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 0.0
< 1277767147 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :ow.
< 1277767149 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: 12serv does.
< 1277767169 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Besides. Compatibility layer.
< 1277767189 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(+>[-[-[-[-[+]]]]]->)*3(<)*2+]+]
< 1277767202 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 1.0
< 1277767235 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(+)*3>(-)*3>(+)*3>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767242 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: All in all, 4k lines upper bound for a nice minimalist X solution.
< 1277767244 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 11.7
< 1277767251 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :i just realised that i'm probably killing myself here
< 1277767260 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(+)*3>(-)*4>(+)*5>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767270 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 14.0
< 1277767277 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :yeah that's getting there
< 1277767307 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :oh yay i'm actually on the hill now
< 1277767332 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(+)*3>(-)*4>(+)*8>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767336 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust lunge (>)*15(>(-)*128[+--+-])*30
< 1277767337 0 :myndzi!unknown@unknown.invalid QUIT :Read error: Connection reset by peer
< 1277767351 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for ehirdiphone_lunge: 2.8
< 1277767351 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 14.3
< 1277767363 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(+)*3>(-)*8>(+)*17>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767367 0 :myndzi!myndzi@c-24-19-39-178.hsd1.wa.comcast.net JOIN :#esoteric
< 1277767372 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 12.1
< 1277767373 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Y'know what?
< 1277767376 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :aww :/
< 1277767382 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(+)*3>(-)*5>(+)*13>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767391 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 8.3
< 1277767393 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Lets just implement plan9 gfx + rio for Linux.
< 1277767396 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :WHYYYYYYYY
< 1277767406 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :/dev/screen
< 1277767409 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(+)*3>(-)*5>(+)*7>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767418 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 10.7
< 1277767421 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(-)*3>(+)*5>(+)*7>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767430 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :rio provides /dev/win/me/shit
< 1277767432 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 10.7
< 1277767442 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :& /dev/win/N
< 1277767445 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(-)*3>(+)*4>(+)*8>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767448 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Job done
< 1277767454 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 12.4
< 1277767461 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(-)*3>(+)*4>(+)*5>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767462 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Insert libx11 compatibility layer
< 1277767470 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 16.0
< 1277767474 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :oh yay
< 1277767484 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[>(-)*16>(+)*5>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767493 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 9.9
< 1277767495 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[>(-)*16>(+)*5>[-[-[-[-[+]]]]]<+]+]
< 1277767500 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: alas Linux has no bind(2)
< 1277767502 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 0.7
< 1277767504 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :?!
< 1277767508 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(-)*3>(+)*4>(+)*5>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767513 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :i'll shove my older one in
< 1277767517 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 12.8
< 1277767517 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Lets just write a plan 9ish os :P
< 1277767537 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust pool [[(-)*3>(+)*4>(+)*5>[-[-[-[-[+]]]]](<)*2+]+]
< 1277767546 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_pool: 12.8
< 1277767561 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :somebody screwed me >_<
< 1277767605 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: At this rate I'm just wondering what's the nicest system that can be done on the framebuffer.
< 1277767622 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: yfs /n/server.net/dev/drive3 /stuff
< 1277767631 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Fuck yeah, Plan... y?
< 1277767640 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Plan gamma. Gimme a gamma.
< 1277767668 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Man. DirectFB. :)
< 1277767681 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :*There's* what FURINIKUSU needs.
< 1277767698 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust mine >[[-]+[-[--[+]...]+]+]
< 1277767707 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :newwin 'cat /n/othercomp/dev/screen >/dev/screen' # 'vnc'
< 1277767707 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_mine: 4.1
< 1277767713 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :aww :(
< 1277767726 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust mine (+)*7>[[-]+[-[--[+]...]+]+]
< 1277767732 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :well kb and mouse too :P
< 1277767736 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_mine: 4.1
< 1277767738 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :*needs
< 1277767741 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :after well
< 1277767748 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :oh, right, i get it
< 1277767752 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust mine (+)*7>[-]+[[-]+[-[--[+]...]+]+]
< 1277767758 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: gimme a gamma!
< 1277767772 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_mine: 0.0
< 1277767781 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust mine >(+)*101>[-]+[[-]+[-[--[+]...]+]+]
< 1277767797 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_mine: 0.0
< 1277767802 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :GreaseMonkey: No, you don't get it :P
< 1277767810 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :well i get what the bug is
< 1277767817 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Gamma symbol!
< 1277767826 0 :cpressey!~CPressey@173-9-215-173-Illinois.hfc.comcastbusiness.net JOIN :#esoteric
< 1277767841 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :!bfjoust mine >(+)*101>[-]+[-[-]+[-[--[+]...]+]+]
< 1277767854 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Hi cpressey
< 1277767854 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: Turns out I have zero good ideas for bots. As I suspected.
< 1277767858 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Score for GreaseMonkey_mine: 0.0
< 1277767858 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :'lo
< 1277767862 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :butt >_<
< 1277767868 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: Make one that lets me do
< 1277767873 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :.char gamma
< 1277767875 0 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric
< 1277767878 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :and get a gamma
< 1277767882 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :GIMME A GA
< 1277767884 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Mms
< 1277767886 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: OMG. DirectFB.
< 1277767888 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :GAMMA
< 1277767891 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Erm. XDirectFB.
< 1277767892 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :GIMME ONE
< 1277767902 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: yeah
< 1277767908 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :*That* is how to do X.
< 1277767911 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :iirc shitty
< 1277767922 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :*iirc,
< 1277767936 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Someone paste a fucking gamma!
< 1277768014 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :wtf omg haha
< 1277768015 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :-_-
< 1277768019 0 :tombom!unknown@unknown.invalid QUIT :Quit: Leaving
< 1277768022 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :PLEASE
< 1277768030 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :One second, pilgrim.
< 1277768042 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. Alternately, use GTK-DirectFB (and fuck Firefox. Just, fuck Firefox.)
< 1277768060 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I'm no furry.
< 1277768060 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :γ
< 1277768069 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: <3
< 1277768087 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Damn it. I was just looking for a Unicode high bar, to do | and be a jerk.
< 1277768089 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :A bot to privmsg you unicode characters actually is not a bad idea.
< 1277768097 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Plan γ
< 1277768107 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I'm sure such a trick could be taught to one of the existing bots though.
< 1277768107 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Gregor-W: wat
< 1277768123 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :!userinterps
< 1277768123 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Installed user interpreters: aol austro b1ff bc bct bfbignum brit brooklyn bypass_ignore bytes chaos chef chiqrsx9p choo cockney ctcp dc drawl drome dubya echo eehird ehird fudd funetak google graph gregor he hello id jethro kraut num ook pansy pirate plot postmodern postmodern_aoler redneck reverse rot13 sadbf sfedeesh sffedeesh sffffedeesh sffffffffedeesh simpleacro slashes svedeesh swedish valspeak warez yodawg
< 1277768155 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^show
< 1277768155 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord
< 1277768163 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :!ehird Hello world
< 1277768165 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Hello world
< 1277768176 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :!ehird What is this gaps?
< 1277768177 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Wut is this gaps?
< 1277768193 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :!eehird is an excellent man diverse.
< 1277768199 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :To write a bot that executes user code, you need to set up a timeout and shit, and... yeah. I don't care enough to write all that. If I did, I'd do it in Erlang.
< 1277768213 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^ord Ø
< 1277768213 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :!bypass_ignore shitters
< 1277768213 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :195 152
< 1277768214 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :shitters
< 1277768231 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^asc 195 152
< 1277768231 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :49.
< 1277768235 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wtf
< 1277768236 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :^ord please make ^ord use commas and . :P
< 1277768237 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :112 108 101 97 115 101 32 109 97 107 101 32 94 111 114 100 32 117 115 101 32 99 111 109 109 97 115 32 97 110 100 32 46 32 58 80
< 1277768241 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh they're not inverses
< 1277768261 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :^asc is the old name
< 1277768262 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :105.
< 1277768267 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^asc Ø
< 1277768267 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :195.
< 1277768279 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh and single-byte
< 1277768279 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :One char only
< 1277768283 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Byte rather
< 1277768288 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :^ord inary
< 1277768288 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :105 110 97 114 121
< 1277768299 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :^ord œ
< 1277768299 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :197 147
< 1277768302 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :see?
< 1277768310 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :^ord æ
< 1277768310 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :195 166
< 1277768320 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :however, my idea here was that the reverse should be capable of doing what cpressey asked
< 1277768335 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :But we need search
< 1277768350 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :.char em dash
< 1277768350 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: most useful if the bot could translate names like 'gamma' to chars
< 1277768353 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah
< 1277768355 0 :MigoMipo!unknown@unknown.invalid QUIT :Read error: Connection reset by peer
< 1277768361 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :.char combining x
< 1277768363 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :etc
< 1277768368 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :if i'm going ot look up the unicode code point, i might as well copy the character out of whatever i used to look that up in
< 1277768377 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :i might (read: MIGHT) try making a BF joust program in lua
< 1277768377 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :.char sup 3
< 1277768384 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :i just need the lua 5.1 VM spec
< 1277768390 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :GreaseMonkey: handle polarity
< 1277768402 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: can be done
< 1277768404 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :and tapering
< 1277768420 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :turns out i have that doc i need
< 1277768424 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Heck, let it receive "I've got a γ here" and have it provide a translation
< 1277768431 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :(just like polarity for tape lengths)
< 1277768443 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: No, \gamma
< 1277768461 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :As it suits you, miss.
< 1277768484 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :I've got an \ae{}mazing pre\"empting
< 1277768487 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :->
< 1277768499 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :wow kwrite thinks # is a comment in lua
< 1277768505 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :I've got an preëmpting
< 1277768513 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :...
< 1277768521 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :*æmazing
< 1277768563 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :What's the erdos accent in tex?
< 1277768576 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :the ’’ thing
< 1277768618 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: i note that http://unicode-search.net/unicode-namesearch.pl?term=gamma&.submit=Send+foresp%C3%B8rsel&subs=1&print=1 gives a whole slew of hits for "gamma"
< 1277768689 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: For some reason that doesn't bother me much
< 1277768703 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: well it means there's a lot to extract
< 1277768735 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I was not really thinking of arbitrary unicode chars, just common ones
< 1277768750 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :After all, only the ones *I* would think to use, are the important ones. Clearly.
< 1277768765 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hmph
< 1277768765 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: /dev/power. You halt with 'echo off>/dev/power' :D
< 1277768791 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :I try to have a text file of those, but it's a pain to remember to have it open. Mainly the emdash, arrows, greek letters, and some set theory operators
< 1277768829 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: however note that there are already _two_ common hits there, capital and small
< 1277768840 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: ps2kbd /dev/ps2/kbd
< 1277768844 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric : /dev/elf . To run something, cat someelf > /dev/elf
< 1277768857 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :usbmouse /dev/usb1
< 1277768860 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Uhh, Idonno how args get in there.
< 1277768874 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh and they're not the first ones either, that's some obscure "latin gamma" thing
< 1277768907 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: Favour lower over upper. Shorter name than longer. Greek than Latin
< 1277768924 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :(shorter/longer after REMOVING preferred words)
< 1277768925 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: OK, OK. Translate HTML entities then. Covers my use case, and maybe ehird's, modulo the ridiculous wanting-TeX-syntax thing. γ and Γ.
< 1277768940 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :TeX syntax is hugs.
< 1277768961 0 :cpressey!unknown@unknown.invalid PRIVMSG #esoteric :Gag me with a $spoon$
< 1277768961 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*huge
< 1277769013 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: also, \"
< 1277769024 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :iirc
< 1277769033 0 :GreaseMonkey!unknown@unknown.invalid PRIVMSG #esoteric :ACTION now reading ANoFrillsIntroductionToLua51VMInstructions.pdf
< 1277769039 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: \forall [\alpha, \beta, \gamma \in \emptyset] (\alpha \to \beta \to \gamma) \to (\beta \to \alpha \to \gamma)
< 1277769048 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or wait is that ordinary
< 1277769053 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :cpressey: beat that with HTML
< 1277769058 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: that's umlaut
< 1277769079 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: right i just realized
< 1277769087 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: \H maybe
< 1277769096 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :why H??
< 1277769100 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :rings a vague bell
< 1277769107 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Paul Erd\Hos :P
< 1277769113 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hungarian? also vaguely shaped the same
< 1277769139 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: define vaguely
< 1277769150 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :H ’’
< 1277769156 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :not seeing it
< 1277769157 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehirdiphone: two vertically oriented lines?
< 1277769180 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :except they're very slanted and H's are connected
< 1277769200 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what part of "vaguely" don't you understand?
< 1277769238 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :the part where it means "arbitrarily"
< 1277769248 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :What's an easy way to convert binary to decimal
< 1277769258 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :ignore "phone", squint and my name looks like yours
< 1277769268 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: lern2algorith
< 1277769270 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :m
< 1277769294 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Learn2al gore rhythm
< 1277769311 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hopes it doesn't require many logic gates
< 1277769313 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :climate change in da house
< 1277769314 0 :Gregor-W!unknown@unknown.invalid PRIVMSG #esoteric :Play that funky music, Al Gore
< 1277769329 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo_: divmod for one
< 1277769331 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I can't even add binary numbers yet, and that just takes AND and XOR
< 1277769343 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Then give up
< 1277769360 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Or I could eventually construct AND and XOR
< 1277769362 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Somehow
< 1277769372 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Or just convert to analog for addition
< 1277769382 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :I meant on bin2dec.
< 1277769406 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :Hm.
< 1277769411 0 :Sgeo_!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if I could do it in analog
< 1277769429 0 :ehirdiphone!unknown@unknown.invalid PRIVMSG #esoteric :Back soon.
< 1277769433 0 :ehirdiphone!unknown@unknown.invalid QUIT :Quit: Get Colloquy for iPhone! http://mobile.colloquy.info