←2009-05-08 2009-05-09 2009-05-10→ ↑2009 ↑all
00:00:12 <nooga> oerjan: Fjordgata ?
00:00:35 <oerjan> could be
00:00:51 <AnMaster> fizzie, "according to EXIF data this image is rotated\nWould you like gimp to rotate it into the standard orientation? [Rotate] [Keep orientation]"
00:00:53 <AnMaster> which do I want
00:01:04 <ehird> TIAS
00:01:12 <AnMaster> ok. Not rotate
00:01:13 <fizzie> Just try whichever; but I think you want to keep it.
00:01:15 <nooga> anyway, somewhere near, because i've been only in that area ;d
00:01:27 <oerjan> huh
00:01:35 <nooga> sec
00:01:52 <AnMaster> "www.connectiontonature.com" what is "tonature"?
00:01:59 <AnMaster> aspell doesn't know it
00:02:00 <fizzie> connection-to-nature.
00:02:03 <AnMaster> oh
00:02:05 <AnMaster> duh
00:02:23 <fizzie> It's the Gallery2-scaled version, and it has already been rotated; I didn't know that it embeds the original photo's EXIF data in the resized copies too.
00:02:32 <AnMaster> fizzie, I read it as "connect-ion-tonature"
00:02:35 <AnMaster> for some reason
00:02:38 * oerjan googles the company name visible
00:03:16 <nooga> http://img24.imageshack.us/img24/6056/img0439anj.jpg
00:03:34 <oerjan> seems to be Pirsenteret
00:03:52 <oerjan> that's a bit further out towards the see
00:04:54 <nooga> ah
00:05:04 <oerjan> yeah this looks like the same from the other side: http://images.google.no/imgres?imgurl=http://www.gregus.no/Inngangsparti.jpg&imgrefurl=http://www.gregus.no/Hovedside.htm&usg=__ACpOnKhddK_AY54nKR-Xw8NGIV4=&h=300&w=400&sz=30&hl=no&start=10&um=1&tbnid=GgQJp-VBb52YfM:&tbnh=93&tbnw=124&prev=/images%3Fq%3Dpirsenteret%26hl%3Dno%26sa%3DN%26um%3D1
00:05:22 <oerjan> er, http://www.gregus.no/Hovedside.htm
00:05:41 <nooga> fallen bicycle
00:05:42 <nooga> :D
00:06:12 <nooga> http://img22.imageshack.us/img22/4783/img0442d.jpg which one is me? ;p
00:07:37 <fizzie> The guy with the briefcase-like thing and a brown jacket?
00:07:37 <ehird> the ugly one
00:07:44 <ehird> oh burn
00:07:53 <ehird> fizzie: :D
00:08:15 <nooga> no ;p
00:08:39 <AnMaster> ehird, you may be surprised, but I really like dvtm
00:08:49 <AnMaster> just needs to be a bit more flexible
00:08:49 <ehird> AnMaster: shut down x and use it then
00:08:54 <oerjan> my bet is on the guy with the camera, since that's obviously a tourist
00:09:06 <AnMaster> ehird, I use it inside konsole with great success!
00:09:07 <AnMaster> ;P
00:09:10 <nooga> teh red haired one
00:09:14 <ehird> flexible how
00:09:25 <AnMaster> ehird, no-recompile
00:09:35 <AnMaster> scriptable
00:09:45 <AnMaster> like I said above: tmonad
00:10:06 <ehird> AnMaster: alias dvtm-config="cd /usr/src/dvtm && $EDITOR config.h && make install"
00:10:06 <ehird> then
00:10:11 <ehird> $ sudo dvtm-config
00:10:15 <ehird> easy
00:10:17 <AnMaster> ehird, haha
00:10:25 <ehird> and there's not exactly much to script :P
00:10:26 <AnMaster> aliases are evil
00:10:32 <AnMaster> use functions
00:10:39 <ehird> I like aliases.
00:10:44 <AnMaster> well ok, not evil
00:10:47 <oerjan> that last picture just barely fails to show my favorite restaurant
00:10:49 <AnMaster> but they do have some issues
00:10:51 <ehird> `alias x=y` is shorthand for `x () { y $* }` imo
00:10:55 <ehird> if it's not it should be :P
00:10:58 <AnMaster> ehird, no it isn't
00:11:04 <ehird> well it should be
00:11:07 <fizzie> I'd really have liked something like dvtm back in the fb-console age; but it seems to be a recent innovation.
00:11:12 <AnMaster> ehird, no it shouldn't
00:11:17 <ehird> why not
00:11:18 <AnMaster> that function can't handle spaces
00:11:22 <AnMaster> x () { y "$@" }
00:11:26 <AnMaster> ...
00:11:30 <ehird> that doesn't handle multiple arguments
00:11:35 <AnMaster> ehird, yes it does
00:11:37 <ehird> also, $* gets it quoted, I'm pretty sure
00:11:39 <fizzie> It does; that's the magic of $@.
00:11:39 <ehird> also, wtf? how?
00:11:42 <AnMaster> ehird, no it doesn't
00:11:43 <ehird> that's gross
00:11:48 <pikhq> That's what $@ does.
00:11:56 <fizzie> "$@" expands into: "arg 1" "arg 2" ... quoted separately.
00:12:03 <ehird> thus reinforcing my need for the orthogonal shell!
00:12:18 <fizzie> While "$*" would be all-in-one-quotes.
00:12:27 <ehird> $ find . -name \*.jpg -exec {x| echo $x; rm $x} \;
00:12:28 <ehird> comes to
00:12:40 <pikhq> I just need to bother making Tclsh into a usable shell.
00:12:41 <nooga> oerjan: next time, dinner is my treat
00:12:51 <AnMaster> ehird, say arguments 1 is : "a b" argument 2 is: "c". Then "$*" -> "a b c", "$@" -> "a b" "c". without quotes both expand to "a" "b" "c"
00:12:53 <ehird> $ find . -name \*.jpg -exec /tmp/osh/closures/1d874r \;
00:13:03 <ehird> or somethin
00:13:04 <ehird> g
00:13:05 <ehird> yes, closure
00:13:08 <ehird> {...} is a closure
00:13:10 <AnMaster> ehird, did that explain it?
00:13:10 <ehird> functions:
00:13:18 <ehird> $ fn hello {x y|echo "hello!"}
00:13:21 <ehird> $ fn a b
00:13:24 <ehird> err
00:13:25 <ehird> $ hello a b
00:13:36 <ehird> fn defining a closure as a command obviously
00:13:38 <AnMaster> ehird, what
00:13:39 <pikhq> Oh, wait. It almost is...
00:13:43 <oerjan> nooga: :D
00:13:53 <ehird> AnMaster: Design for an orthogonal shell with closures.
00:13:54 <ehird> For instance,
00:13:56 <AnMaster> {} in find is NOT the same as function
00:13:57 <AnMaster> oh
00:14:02 <ehird> And, {} is shell syntax
00:14:04 <AnMaster> ehird, new shell right
00:14:04 <ehird> in this case
00:14:08 <ehird> $ each * {x|echo $x}
00:14:10 <ehird> comes down to
00:14:12 <pikhq> Just need to do a bit of fiddling with tclreadline.
00:14:25 <ehird> $ each file1 file2 /tmp/osh.3478234/closure.349723
00:14:33 <AnMaster> ehird, list comprehension?
00:14:34 <ehird> each would be a builtin shell command, but needn't be
00:14:36 <ehird> and it'd come down to:
00:14:49 <ehird> foreach (args[0...-2]) { args[-1](it) }
00:14:52 <ehird> so you could also do
00:14:55 <ehird> $ each * rm
00:14:59 <ehird> to be a pointlessly verbose form of `rm *`
00:15:09 <ehird> and, since the closure files are executable, you can pass them to find, etc
00:15:13 <ehird> to do complex operations with find
00:15:15 <AnMaster> foreach...?
00:15:22 <ehird> AnMaster: it's pseudoC
00:15:25 <AnMaster> ehird, foreach is what a for does in bash
00:15:26 <ehird> I was demonstrating how each would be implemented
00:15:29 <ehird> by the shel
00:15:29 <ehird> l
00:15:34 <nooga> nuff
00:15:39 <AnMaster> for file in *; do echo "$file"; done
00:15:41 <ehird> AnMaster: IT'S NOT SHELL SYNTAX
00:15:42 <AnMaster> is a foreach loop
00:15:43 <AnMaster> ehird, true
00:15:44 <ehird> goddamn
00:15:44 <nooga> gnight
00:15:46 <AnMaster> ehird, but
00:15:53 <AnMaster> bash as C style for too
00:15:53 <ehird> I was telling you how "each" was implemented in the shell implementation language
00:16:01 <ehird> and I know bash kthx
00:16:11 -!- nooga has quit ("Lost terminal").
00:16:13 <AnMaster> for ((i=0;i<10;i++)); do echo "$i"; done
00:16:22 <AnMaster> :P
00:16:31 <fizzie> I don't personally like the $*/$@ either; it feels a bit ugly that they do such strange things inside quotes; but I don't think my dislike is acute enough to switch shells.
00:17:04 <ehird> In My Shell(TM), it'd just be {*a| rm $~a}
00:17:16 <ehird> $~foo being "foo expanded out (i.e. not quoted)"
00:17:18 <ehird> because quoting is default
00:17:25 <ehird> and *a meaning "rest of arguments"
00:17:26 <ehird> so
00:17:33 <fizzie> Incidentally, speaking of bash... how do you return a string from a bash shell-function?
00:17:41 <ehird> $ fn justLikeRm {a*| rm $~a}
00:17:44 <ehird> $ justLikeRm a b c
00:17:48 <ehird> fizzie: echo
00:19:02 <fizzie> So do I need to call it inside $() or backticks if I want to stuff the "return value" in a variable? Guess so.
00:19:11 <ehird> Yep.
00:19:14 <ehird> foo=$(bashSucks)
00:19:28 <ehird> Oh wait.
00:19:33 <ehird> fizzie: You can do foo=(bashSucks).
00:19:43 <ehird> Or not.
00:19:48 <ehird> Silly me.
00:19:50 <ehird> That's the array syntax.
00:19:55 <AnMaster> fizzie, I do like the $*/$@ thing
00:19:56 <ehird> Why you using Bash anyway
00:20:09 <AnMaster> it allows you do do crazy things
00:20:13 <fizzie> How do I return a value from a function that prints out diagnostics to the user to stdout? (I guess by using a different pipe.)
00:20:23 <ehird> fizzie: You don't.
00:20:25 <fizzie> Oh, I certainly like that it exists, but I don't like the idea of it.
00:20:29 <AnMaster> <fizzie> Incidentally, speaking of bash... how do you return a string from a bash shell-function?
00:20:32 <AnMaster> there are two ways
00:20:34 <AnMaster> echo and $()
00:20:39 <AnMaster> is the more common, and slow way
00:20:43 <AnMaster> and it creates a subshell
00:20:50 <AnMaster> so setting global variables won't work
00:20:52 <AnMaster> HOWEVER
00:20:55 <ehird> And the amazing, envbot approved way...
00:20:57 <AnMaster> there are some other ways
00:21:02 <ehird> Is $("@$plaineval func)
00:21:09 <ehird> Which invokes an internal bash shell exploit.
00:21:13 <AnMaster> no
00:21:17 <ehird> WHAT!
00:21:21 <AnMaster> I will come to the envbot way soon
00:21:29 <ehird> "Factor VM ported to C++" WHY GOD WHY‽‽‽‽‽
00:21:52 <AnMaster> anyway one method is eval, like eval "\$$varname=\$varwithvalue"
00:21:56 <AnMaster> but that is bugprone
00:22:01 <AnMaster> so I recommend the envbot way:
00:22:14 <AnMaster> printf -v "$varname" "%s" "$value"
00:22:35 <ehird> And you return via global variables?
00:22:40 <ehird> Neat. Your function calls must be ugly.
00:22:42 <AnMaster> ehird, that is yet another way
00:22:45 <AnMaster> but no I don't
00:22:45 <pikhq> That is fugly.
00:22:50 <ehird> How do you return then?
00:22:51 <AnMaster> ehird, bash has dynamic scoping
00:22:53 <ehird> Vomiting over a baby?
00:22:57 <AnMaster> so I return to a local in the caller
00:22:59 <AnMaster> :D
00:23:07 <pikhq> Oh. *Oh*.
00:23:10 * pikhq vomits
00:23:11 <ehird> AnMaster: How?
00:23:39 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
00:23:39 <pikhq> That's some of the most horrid dynamic scoping I've seen.
00:24:02 <fizzie> So do you take the return-variable name as an argument or something? Or is it just mandated that all callers of that function must have a fixed-name parameter?
00:24:03 <AnMaster> ehird, caller() { local myvar; callee "myvar" "other arguments"; } callee() { printf -v "$1" "%s" "$2"; }
00:24:04 <AnMaster> is that clear
00:24:11 <fizzie> Ah, an answer.
00:24:11 <pikhq> And I regularly program in a language that lets functions do things in the caller's scope.
00:24:17 <ehird> AnMaster: You're an awful person.
00:24:24 <ehird> An awful, awful person.
00:24:27 <AnMaster> ehird, intercal is worse
00:24:50 <AnMaster> this is an esolang channel
00:24:55 <AnMaster> what do you expect
00:25:03 <ehird> caller() { callee "x="; echo "$x" }; callee() { eval "$1 hello" }
00:25:07 <ehird> Flexible/
00:25:10 <ehird> s/\/$/./
00:25:14 <AnMaster> um
00:25:26 <ehird> If it doesn't work that's just because it's flexible
00:25:33 <ehird> Even shorter:
00:25:38 <ehird> caller() { callee echo; }
00:25:39 <AnMaster> ehird, eval is bug prone though. Not good in an IRC bot
00:25:45 <ehird> Truly a beautiful example of the continuation-vomiting style.
00:25:49 <AnMaster> for obvious reasons
00:25:59 <ehird> AnMaster: your OS doesn't have cheap jails?
00:26:05 -!- puzzlet has joined.
00:26:07 <AnMaster> ehird, it does. But it shouldn't be needed
00:26:08 <pikhq> proc caller {} {callee myvar;puts $myvar};proc callee {var} {uplevel "set $var flimble"}
00:26:19 <ehird> actually, I should write some commands for extremely-cheap chroot jail creation and usage
00:26:22 <pikhq> That's what you're doing, in Tcl-ese...
00:26:25 <pikhq> And *eeew*.
00:26:27 <AnMaster> pikhq, is it?
00:26:30 <ehird> they'd be useful
00:26:32 <AnMaster> I don't know TCL
00:26:39 <ehird> like
00:26:51 <AnMaster> ehird, that thing TravelGreaseGod use?
00:26:54 <AnMaster> in EgoBot
00:26:56 <pikhq> Sticking it in a language that has dynamic scoping as a normal thing to do doesn't make it better.
00:27:01 <ehird> $ cjcreate ~/hello
00:27:01 <pikhq> AnMaster: Definitely.
00:27:09 <ehird> $ cjadd myamazlinglibrary ~/hello
00:27:15 <ehird> hmm
00:27:16 <ehird> make that
00:27:19 <ehird> $ cjadd ~/hello myamazlinglibrary
00:27:23 <pikhq> uplevel executes its argument in the caller's scope.
00:27:26 <ehird> $ cjexec ls ~/hello
00:27:31 <ehird> the last one being equivalent to:
00:27:38 <AnMaster> pikhq, hey it is a working and fast solution
00:27:40 <ehird> $ chroot ~/hello ls
00:27:43 <AnMaster> don't complain
00:27:46 <AnMaster> anyway
00:27:50 <pikhq> (that's how the control structures are implemented)
00:27:52 <AnMaster> it doesn't work for arrays
00:27:53 <ehird> except setuid root, possibly
00:27:53 <ehird> hmm
00:27:58 <ehird> why does chroot() require roo?
00:27:58 <ehird> t
00:28:00 <ehird> I always forget
00:28:02 <AnMaster> so you need eval to do that
00:28:04 <AnMaster> pikhq, ^
00:28:05 <ehird> because you can escape a chroot jail with it?
00:28:17 <AnMaster> ehird, that could be one reason
00:28:17 <pikhq> AnMaster: That's ugly.
00:28:24 <AnMaster> pikhq, and bug prone
00:28:32 <ehird> I'll make the chroot()-using tools setuid root, but then disallow chrooting below /
00:28:33 <pikhq> Yuh.
00:28:37 <ehird> Problem solved
00:28:44 <ehird> Cheap, easy chroot jails in a few commands.
00:28:48 <ehird> You have no excuse not to use them ;-)
00:29:02 <pikhq> What if my OS supports jail()?
00:29:03 <AnMaster> ehird, I do. Because I need to interact with existing files
00:29:05 <AnMaster> for some stuff
00:29:15 <AnMaster> like package database search for a gentoo related channel
00:29:25 <ehird> AnMaster: It'd have tools to give pathways into the parent, probably.
00:29:34 <AnMaster> pikhq, have you seen bashdoc btw?
00:29:34 <ehird> "Make hardlink in jail", for instance.
00:29:35 <bsmntbombdood> jail() is fun
00:29:36 <ehird> pikhq: The BSDs?
00:29:46 <pikhq> (mine doesn't)
00:29:48 <ehird> Hmm, this OS X box has no jail()
00:30:02 <pikhq> AnMaster: No, I've not touched bash since I learned of zsh.
00:30:02 <ehird> What does jail() give over chroot
00:30:12 <bsmntbombdood> jail is actually secure
00:30:14 <pikhq> Shame it keeps the bad of bash along with the good, though.
00:30:21 <AnMaster> pikhq, http://envbot.kuonet.org/trac/browser/anmaster-trunk/tools/bashdoc (note that I didn't write it originally, it is a modified version of the bashdoc program from sourcemage)
00:30:34 <bsmntbombdood> a jail is almost a vm
00:30:47 <AnMaster> pikhq, you will love this: http://envbot.kuonet.org/trac/browser/anmaster-trunk/lib/hash.sh
00:30:59 <ehird> bsmntbombdood: chroot can be perfectly secure
00:31:03 <bsmntbombdood> ehird: no, it can't
00:31:06 <ehird> you just don't let the jailed commands run as root
00:31:23 <pikhq> ehird, a jail is secure as root.
00:31:30 <ehird> so?
00:31:38 <ehird> why can't a chroot be secure
00:31:39 <pikhq> A jail also can have a different IP address.
00:31:40 <bsmntbombdood> a jail has different processes, different superuser, different filesystem
00:31:45 <bsmntbombdood> different network interface
00:31:53 <AnMaster> err
00:31:56 <AnMaster> not exactly
00:32:05 <ehird> Well?
00:32:17 <AnMaster> a jail does limit network, and superuser, and processes though
00:32:20 <AnMaster> unlike a chroot
00:32:33 <bsmntbombdood> http://www.freebsd.org/cgi/man.cgi?query=jail&apropos=0&sektion=0&manpath=FreeBSD+7.2-RELEASE&format=html
00:32:33 <AnMaster> file system could be just a subdir
00:32:38 <ehird> Network can be handled in other ways, don't give the jail superuser, and who cares about processes
00:32:39 <AnMaster> bsmntbombdood, indeed
00:32:46 <ehird> chroot handles like 90% of cases :P
00:32:53 <AnMaster> ehird, you are soo wrong
00:33:00 <ehird> Argument by assertion.
00:33:02 <AnMaster> a jail as it's own /sbin/init
00:33:10 <AnMaster> ehird, read the link bsmntbombdood provided
00:33:10 <ehird> so?
00:33:13 <ehird> I did.
00:33:19 <ehird> I'm just saying that a chroot() is usually fine
00:33:32 <AnMaster> ehird, in less than 30 seconds?
00:33:33 <bsmntbombdood> read jail(2) also
00:33:35 <AnMaster> I don't believe that
00:33:39 <pikhq> If you're paranoid about the chroot security.
00:33:43 <ehird> AnMaster: what?
00:33:57 <ehird> pikhq: that's why I'm gonna make a toolchain to automate it :)
00:34:16 <bsmntbombdood> what are you doing?
00:34:24 <AnMaster> ehird, how well does your befunge interpreter work atm?
00:34:24 <ehird> what?
00:34:40 <ehird> AnMaster: can you stop asking me that? it's an ongoing project that i haven't worked on for a few days
00:34:46 <AnMaster> ok
00:34:46 <ehird> are you trying to prove something?
00:34:49 <pikhq> Also, root escalation in a chroot is dangerous. root excalation in a jail is useless.
00:34:57 <ehird> it seems like you always bring it up when I diasgree with you
00:35:02 <ehird> *disagree
00:35:05 <AnMaster> ehird, no... what would I try to prove?
00:35:10 <ehird> pikhq: Root escalation is fucked up anyway
00:35:11 <ehird> and rare
00:35:27 <pikhq> Jails can't create device nodes, can't mount or umount filesystems, can't modify their network configuration...
00:35:39 <ehird> ...execute instructions...
00:35:42 <AnMaster> can't see processes outside the jail
00:35:53 <bsmntbombdood> you could do virtual servers with jail right?
00:35:55 <ehird> I'm really failing to see actual issues here
00:35:59 <ehird> bsmntbombdood: yep
00:36:00 <ehird> that's one use
00:36:03 <ehird> they'd be super fas
00:36:03 <ehird> t
00:36:06 <pikhq> bsmntbombdood: That's a main use case.
00:36:15 <ehird> bsmntbombdood: you'd need a script that renice's them a lot though
00:36:19 <ehird> *renices
00:36:22 <ehird> to stop hoggers
00:36:28 <bsmntbombdood> how's the ulimits work?
00:36:41 <ehird> you want renice for adaptive speeds
00:36:47 <ehird> so that people paying more get more of the idle time etc
00:37:01 <ehird> if I had a dedi and was virtual servering it out I'd use jail(), probably
00:37:04 <ehird> unless I wanted a linux
00:38:05 <bsmntbombdood> what about ram?
00:38:22 <ehird> bsmntbombdood: adjust ulimits
00:38:34 <bsmntbombdood> obviously
00:38:36 <ehird> it'd be an interesting project ... controlling a bunch of jail()s
00:38:46 <ehird> anyone want to donate a dedi for it? :-)
00:39:59 <ehird> damn, now that idea's perlocating in my head
00:40:09 <pikhq> Percolating.
00:40:16 <AnMaster> no...
00:40:18 <ehird> pikhq: maybe it's locating perl
00:40:19 <AnMaster> perlocating
00:40:22 <ehird> Perlocating.
00:40:39 <pikhq> Perl ocation.
00:40:44 <AnMaster> compare: pythonocating
00:40:46 <pikhq> How does one ocate?
00:41:06 <AnMaster> pikhq, using an ocater on an ocatee. duh
00:41:36 * pikhq needs to invent a new concept in CS just to call it "ocation".
00:42:12 <oerjan> <AnMaster> anyway important hint for the future: Should you ever need to write a Swedish name, song title or other word: Don't drop any dots. In the best case it will look rather silly. In the worst case it will either be incomprehensible or mean something totally different. <<< Ja val, forstatt
00:42:26 <ehird> Ocation: adjusting limits for various non-virtualized process jails automatically.
00:42:59 <AnMaster> oerjan, "yes whale, <gibberish>"?
00:43:24 <AnMaster> oerjan, quite a good example indeed
00:43:48 <AnMaster> might also mean "yes election, <gibberish>"
00:43:55 <AnMaster> or
00:44:03 <AnMaster> "yes choice, <gibberish>"
00:44:18 <bsmntbombdood> i don't see anything in the man page about ulimits
00:44:27 <pikhq> ehird: I approve.
00:44:30 <ehird> bsmntbombdood: it just jails a process
00:44:32 <ehird> bsmntbombdood: so ulimit that process
00:45:28 <ehird> pikhq: It leads to the catchy name for the "v"ps host based on it: Ocator. :-P
00:46:51 <bsmntbombdood> i dunno how ulimits work with children
00:47:07 <ehird> "No Person except a natural born Citizen, or a Citizen of the United States, at the time of the Adoption of this Constitution"
00:47:08 <ehird> Hmm...
00:47:13 <ehird> Those commas...
00:47:18 <ehird> "No Person except a natural born Citizen at the time of the Adoption of this Constitution"
00:47:38 <ehird> Holy shit all the presidents born after the ratification of the constitution have been invalid
00:47:47 <ehird> :D
00:48:05 <AnMaster> pikhq, did you check http://envbot.kuonet.org/trac/browser/anmaster-trunk/lib/hash.sh
00:48:18 <AnMaster> it is truly horrible
00:48:23 <bsmntbombdood> it seems children just inherit the same ulimits
00:48:33 <pikhq> Yes.
00:48:36 <ehird> bsmntbombdood: they're not shared?
00:48:37 <bsmntbombdood> which means you can only set the ram limit per process, and not per jail
00:48:39 <pikhq> I hate you.
00:48:41 <AnMaster> pikhq, so you like it then? :)
00:48:42 <ehird> then ulimits are useless
00:48:43 <oerjan> logic terrorists: endangering america by tying the constitution into knots
00:48:45 <ehird> just fork and use some more
00:48:48 <AnMaster> pikhq, intercal is worse
00:48:50 <AnMaster> remember that
00:49:01 <pikhq> Yes, but Intercal is meant to be bad.
00:49:10 <AnMaster> pikhq, so is this program
00:49:13 <pikhq> bash is not meant.
00:49:14 <ehird> bsmntbombdood: just watch the process for children and adjust the ulimits based on their usage
00:49:20 <ehird> bsmntbombdood: you'll be dynamically adjusting them anyway
00:49:30 <bsmntbombdood> i don't know if that's practical
00:49:34 <AnMaster> pikhq, yeah I rather suspected that bash wasn't meant, rather it was an accident.
00:49:47 <ehird> bsmntbombdood: well, is here an alternative to ulimits?
00:50:04 <pikhq> Yeah, that's bash.
00:50:07 <bsmntbombdood> ehird: it seems like jails ought to support soemthing like that
00:50:08 <pikhq> And, really, all shells.
00:50:10 <AnMaster> pikhq, anyway you hate IOCCC then?
00:50:15 <pikhq> (except for csh. That is evil)
00:50:19 <ehird> bsmntbombdood: mm
00:50:19 <AnMaster> C wasn't meant for that
00:50:32 <pikhq> AnMaster: No, I merely joke about hating you.
00:50:33 <pikhq> ;)
00:50:35 <ehird> bsmntbombdood: One thing's for sure is that a jail() based "V"PS would be way faster than Xen and UML and all of that crap
00:50:40 <AnMaster> pikhq, so you are a fan then?
00:50:41 <AnMaster> :D
00:50:47 * pikhq nods
00:50:47 <bsmntbombdood> ehird: probably
00:50:59 <ehird> -s securelevel
00:51:00 <ehird> Sets the kern.securelevel sysctl variable to the specified
00:51:01 <ehird> value inside the newly created jail.
00:51:03 <ehird> Oy, what's that do then
00:51:08 <AnMaster> pikhq, do you dare look at module loading/unloading?
00:51:24 * pikhq shudders
00:51:24 <AnMaster> http://envbot.kuonet.org/trac/browser/anmaster-trunk/lib/modules.sh
00:51:45 <bsmntbombdood> securelevel doesn't have anything to do with ulimits
00:51:51 <pikhq> ehird: Xen is very freaking fast.
00:52:05 <ehird> pikhq: As fast as jail()?
00:52:09 <ehird> I differ to beg.
00:52:17 <AnMaster> with hardware support it should be close
00:52:17 <pikhq> The difference is negligible, I'm sure.
00:52:24 <AnMaster> pikhq, it is noticable
00:52:26 <ehird> Neglegible?
00:52:27 <ehird> Absolutely not
00:52:30 <AnMaster> I used both freebsd jails and xen
00:52:32 <ehird> I have a Xen server
00:52:35 <ehird> It's not a fast as the host
00:52:36 <ehird> By far
00:52:40 <ehird> It's really fucking fast for a VM
00:52:41 <pikhq> Hmm.
00:52:43 <ehird> But it's obviously a VM
00:52:46 <AnMaster> jails are as fast as the host
00:52:46 <ehird> whereas a jail() has 0 overhead
00:52:52 <pikhq> Probably the emulated devices.
00:52:57 <ehird> the only limits being what the ocator sets
00:53:20 <AnMaster> ehird, quotas are a PITA in jails though
00:53:21 <pikhq> In fact, I'm rather certain of that; good God, the context switches that it goes through for disk access.
00:53:29 <AnMaster> unless you have one partition / jail
00:53:42 <ehird> AnMaster: Slicehost do one partition
00:53:48 <ehird> It's not a big deal for most VPSes
00:53:53 <pikhq> Ring 3 to ring 1 to ring 0 to ring 1 to ring 3 to ring 1 to ring 0 to ring 1 to ring 3.
00:53:53 <ehird> they're too small to warrant partitioning
00:54:00 <ehird> pikhq: jails or xen
00:54:03 <AnMaster> ehird, then quotas doesn't work. And I need per-user quotas on my servers
00:54:05 <pikhq> Xen.
00:54:09 <ehird> AnMaster: sure quotas work...
00:54:13 <ehird> why wouldn't they
00:54:26 <AnMaster> pikhq, ring 1?
00:54:29 <pikhq> What sort of jail goes through that many context switches for disk access?
00:54:30 <bsmntbombdood> if you use 1 partition per user you can't overcommit disk space
00:54:41 <ehird> bsmntbombdood: this is arguably a good thing.
00:54:45 <pikhq> AnMaster: Xen runs the OS in ring 1 instead of the usual ring 0.
00:54:51 <ehird> if you tell someone they can have N gigabytes, and they can't, you suck dicks.
00:55:00 <AnMaster> pikhq, so it can't use SYSENTER/SYSEXIT stuff?
00:55:05 <AnMaster> slower
00:55:12 <pikhq> That's the syscall stuff.
00:55:16 <ehird> besides, disk is cheap
00:55:16 <bsmntbombdood> ehird: you can still overcommit
00:55:24 <AnMaster> err SYSCALL/SYSENTER, same thing really iirc
00:55:26 <ehird> a regular 10GB VM ... you can host 1,000 users with just 10TB of storage
00:55:35 <AnMaster> one is intel, one is amd
00:55:44 <ehird> 10TB is el cheapo
00:55:45 <pikhq> And actually, I think that SYSENTER and SYSEXIT in Xen go to the hypervisor which sends it to the kernel.
00:55:57 <ehird> i mean
00:56:08 <bsmntbombdood> 10gb is tiny
00:56:14 <AnMaster> pikhq, ouch
00:56:23 <AnMaster> BADLY ouch
00:56:25 <ehird> bsmntbombdood: let's say 24gb
00:56:29 <pikhq> That's for the paravirtualisation, rather.
00:56:39 <AnMaster> pikhq, what about with hardware support then
00:56:40 <pikhq> For the hardware-assisted stuff, um.
00:56:42 <ehird> 2tb WD drive on newegg: $279.99
00:56:51 <AnMaster> still a lot of emulation overhead
00:57:01 <pikhq> Actually, I think that just lets the hypervisor trap it instead of the kernel needing to be patched to handle it.
00:57:26 <ehird> okay, so
00:57:34 <pikhq> The solution on *Linux* is to make the entry gate not do sysenter.
00:57:37 <ehird> 1000 users with 24gib storage each
00:57:40 <ehird> = 24000gb
00:57:59 <ehird> which is 12 x 2TB drives
00:58:07 <ehird> So $3359
00:58:14 <ehird> That's dirt cheap for a host
00:58:30 <pikhq> (Linux, in addition to supporting int 8h and sysenter, has an "entry gate", which is just a function that does whatever's fastest)
00:58:31 <ehird> $3k to host a thousand users is basically fine, assuming you don't intend to grow to megahuge size
00:58:42 <ehird> bsmntbombdood: conclusion - overcommitting is mostly unneccessary
00:59:25 <ehird> and also, 24GiB is basically more than most VPS users need
00:59:50 <ehird> you can get by with 8 drives to serve 1,000 users on 16gib
00:59:58 <ehird> = $2,239
01:00:16 <ehird> and really, I don't think anyone could argue that that's prohibitive for a VPS host
01:00:22 <ehird> compared to the price of the CPUs
01:00:24 <pikhq> ehird: If you do grow to megahuge size, you're getting paid well enough to expand. ;)
01:00:30 <ehird> yeah, exactly
01:00:38 <AnMaster> ehird, you won't have 1000 users per server, more like 100 per server at most
01:00:38 <ehird> let's say $25/mo for a 24gib vps
01:00:43 <ehird> that
01:00:48 <ehird> 's $25k a month
01:00:57 <ehird> which simply dwarfs the $3k cost for storage
01:00:58 <ehird> AnMaster: of course
01:01:01 <pikhq> AnMaster: Yeah; that's because of CPU usage, not HD usage.
01:01:02 <ehird> I was just being hypothetical
01:01:05 <pikhq> Which is his point.
01:01:17 <AnMaster> even 100 sounds a bit much
01:01:29 <AnMaster> and not just cpu, ram too
01:01:30 <pikhq> If it's light usage, 100 is feasible.
01:01:33 <bsmntbombdood> yeah, that's some pretty shitty vps
01:01:42 <ehird> bsmntbombdood: what?
01:01:47 <pikhq> (light, like "Geocities". ;))
01:01:48 <ehird> $25/mo for 24gib is really cheap
01:01:58 <ehird> more usual is $25 for 10gb
01:02:02 <AnMaster> gib?
01:02:07 <pikhq> ehird: 100 users per server.
01:02:12 <ehird> AnMaster: Harddrive maker bytes.
01:02:19 <AnMaster> that is 24 gibbering bytes!
01:02:21 <AnMaster> :D
01:02:25 <pikhq> ehird: That would be a GB.
01:02:38 <AnMaster> pikhq, GiBi?
01:02:47 <ehird> pikhq: nobody says gibibyte
01:02:49 <pikhq> GiB is the unambiguous way of saying that you're using the binary prefixes.
01:02:58 <ehird> hmm
01:03:01 <ehird> alright then :P
01:03:03 <AnMaster> ehird, KDE's file info dialog
01:03:07 <bsmntbombdood> binary prefixes are the only sensible ones for storage anyway
01:03:12 <pikhq> A gibibyte is 1024 mebibytes, which is 1024 kibibytes, which is 1024 bytes.
01:03:13 <pikhq> ;)
01:03:18 <ehird> bsmntbombdood: It's not what harddrive makers use
01:03:27 <ehird> Anyway, $25 for 24gb storage is cheap & reasonable.
01:03:32 <ehird> on a vps
01:04:23 <ehird> Hmm...
01:04:32 <bsmntbombdood> like you said, disk is cheap
01:04:34 <ehird> It occurs to me that being a VPS hoster is terribly profitable.
01:04:36 <AnMaster> err
01:04:40 <bsmntbombdood> you can't compare vps's based on disk space
01:04:45 <AnMaster> both 10-based and binary are WAY off
01:05:03 <ehird> If you have 100 users paying $25/mo, you're earning $2,500 a month.
01:05:06 <AnMaster> ternary-based is the only sane way
01:05:20 <ehird> For a few hundred in dedi maintenance costs.
01:05:31 <ehird> And 100 users would be a pretty small VPS host...
01:05:32 <bsmntbombdood> ehird: half of that will go to colocation and bandwidth, a quarter to hardware
01:05:43 <ehird> hmm
01:05:49 <ehird> I don't seem to remember colo being awfully expensive
01:06:15 <ehird> anyway, $625 in profit is still quite nice for such a small userbase
01:07:29 <bsmntbombdood> so start your business
01:07:31 <AnMaster> night (not IRCing from bed tonight
01:07:32 <AnMaster> )
01:07:40 <ehird> bsmntbombdood: I'm considering it :-)
01:08:00 <ehird> can a 13 year old even legally start a business
01:08:05 <ehird> i sort of doubt it
01:13:09 <ehird> Hey, I thought of another advantage of jails.
01:13:25 <ehird> Since it doesn't have to do virtualization, the tax on the server is less = cheaper to run
01:13:53 -!- Gracenotes has joined.
01:14:18 <oerjan> AnMaster: balanced ternary, of course, otherwise you'd get an imbalance of positive charge
01:14:43 <oerjan> oh he left
01:15:00 <ehird> oerjan: think I should start a VPS hosting business?
01:15:50 <Sgeo> "The game cannot continue: Please change your display settings to be 'High Color (16 bit)'"
01:17:40 <oerjan> erm
01:18:39 <oerjan> i don't have the foggiest clue
01:19:04 <oerjan> well apart from the possible 13 year old problems
01:25:49 <pikhq> ehird: The trick is getting a few hundred users in the first place. ;)
01:26:07 <pikhq> Once you hit the break-even point, you're good.
01:26:20 <ehird> Mm.
01:26:54 <Sgeo> http://static.cbslocal.com/station/wcbs/img/flyover.jpg looks very CGIish
01:26:59 <ehird> pikhq: My first plan would be getting people I know on and having them do a bit of evangelizing ;-)
01:27:58 -!- puzzlet has quit (Remote closed the connection).
01:28:09 -!- puzzlet has joined.
01:30:01 <ehird> pikhq: Hmm... I'm trying to decide between Quad-Core 3.2GHz Intel Nehalems, Quad-Core 2.7GHz AMD Opterons and 6-Core 2.4GHz Dunningtons for the hypothetical server...
01:30:26 <ehird> The 6-core not being the most computationally powerful processor (it's last-generation, I beleive) and also being the most expensive, but I get 12 cores total then.
01:30:38 <ehird> The Nehalem being the best computational-wise, but I could only have two of them due to Intel being silly.
01:30:58 <oerjan> !slashes /a\\a/a\\aa\\a/a\a
01:30:58 <ehird> The Opteron not being the best computational-wise too, but it's cheap and I can have four of them.
01:31:06 <oerjan> !help
01:31:06 <EgoBot> Supported commands: addinterp bf_txtgen daemons delinterp fyb help info kill userinterps 1l 2l adjust asm axo bch befunge befunge98 bf bf16 bf32 bf8 bfbignum boolfuck c chiqrsx9p cintercal clcintercal cxx dimensifuck echo forth glass glypho hello kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor rot13 sadol sceql sh slashes test trigger udage01 underload unlambda whirl yodawg
01:31:24 <pikhq> You want cheap.
01:31:30 <ehird> The cores: Nehalem - 8 (16 threads), Opteron - 16, Dunnington - 16
01:31:33 <ehird> pikhq: True enough.
01:31:35 <oerjan> !slashes a\a
01:31:35 <EgoBot> aa
01:31:41 <pikhq> You want to be able to crap out a hundred of these without too much effort if you *really* need to. ;)
01:31:59 <oerjan> !slashes /a\\a/a\\aa\\a/a\\a
01:31:59 <EgoBot> aa
01:32:01 <ehird> pikhq: OTOH, the range is $1,699 (nehalem) to $1,825 (opteron) to $2,399 (dunnington)
01:32:10 <ehird> pikhq: The dunnington is probably not the best option.
01:32:26 <pikhq> Opteron or Nehalem.
01:32:26 <oerjan> !slashes /a\\a/b/a\a
01:32:26 <EgoBot> b
01:32:32 <ehird> Nehalem would give better performance and is cheaper; but the Opteron lets me have more cores, which is always a good thing when you have a lot of users.
01:32:54 <pikhq> Actually, in this case Opteron would be better performance.
01:32:57 <ehird> And also, saying "With the latest Intel Nehalem(TM) technology" is more catchy than "Using a regular AMD server CPU"
01:33:03 <ehird> pikhq: Hmm...
01:33:05 <pikhq> The Opteron does NUMA.
01:33:06 <ehird> Better parallelism?
01:33:07 <ehird> Ah.
01:33:15 <ehird> Opteron it is.
01:33:31 <ehird> Now how many would I want in one server...
01:33:31 <ehird> hmm
01:33:40 <oerjan> !slashes /a\\a/xx//x/a\\a/a\a
01:33:40 <EgoBot> aaaa
01:33:44 <ehird> With a 4-processor mobo, I wonder if there'd be any issues using 3?
01:33:55 <pikhq> AMD's not the best when it comes to consumer gear. Their architecture scales like crazy, though.
01:34:03 <pikhq> I honestly don't know.
01:34:14 <ehird> That would seem to be the right balance between parallelism and "I Can Shit These Out Of My Butt If I Need To"
01:34:18 <ehird> hmm
01:34:38 <oerjan> !slashes /*/\/a\\\\a\/xx\/\/x\/a\\\\a\//**a\a
01:34:38 <EgoBot> aaaa
01:35:06 <Gracenotes> ¡This cheese is burning me!
01:35:14 <oerjan> !slashes /*/\/a\\\\a\/xx\/\/x\/a\\\\a\//***a\a
01:35:14 <EgoBot> aaaa
01:35:24 <pikhq> Oh, Nehalem supports NUMA now.
01:35:28 -!- coppro has joined.
01:35:33 <ehird> pikhq: Nehalem can give me 16 cores for $3398 whereas Opteron can give me 12 cores for $5475
01:35:34 <oerjan> !slashes /*/ffff/***a\a
01:35:34 <EgoBot> ffffffffffffaa
01:35:37 <ehird> Leaning to Nehalem now
01:35:39 <pikhq> It's the first Intel x86 chip that does.
01:35:46 <ehird> err
01:35:49 <ehird> Nehalem can give me 16 THREADS
01:35:49 <ehird> rather
01:36:00 <ehird> which is probably more important than cores for VPSes; they can't max them out
01:36:04 <pikhq> Hyperthreading is a hack to get around poor pipelining.
01:36:14 <ehird> That's true, but it works, doesn't it.
01:36:30 <pikhq> Somewhat.
01:37:05 <ehird> pikhq: Also, I'm not sure what the effects of having three Opterons in a 4-CPU mobo would be.
01:37:46 <ehird> I think I'll go Nehalem. It's cheaper, after all.
01:37:58 <oerjan> !slashes /a\\a/xx//x/a\\a//a\\a/xx//x/a\\a//a\\a/xx//x/a\\a/a\a
01:37:59 <EgoBot> aaaa
01:39:28 <pikhq> Oh, *damn*... Apparently, hyperthreading tends to increase cache thrashing by about 50%...
01:39:40 <ehird> Holy shit.
01:39:44 <ehird> Won't be doing that then.
01:39:50 <ehird> Esp. since the Nehalem's L2 is puny.
01:40:03 <oerjan> !slashes /a\\a/xx//x/a\\a//\//|//a\\a/xx//x/a\\a//a\\a/xx//x/a\\a/a\a
01:40:04 <EgoBot> |aa|aaaa||aa|aa||aa|aaaa||aa|aa|aaaa
01:40:06 <pikhq> And it tends to screw with scheduling.
01:40:17 <ehird> pikhq: Still, $7300 for four Opterons is pretty costly.
01:40:32 <pikhq> You don't need to have four of the damned things.
01:40:36 <ehird> True.
01:40:46 <ehird> But I'll probably want more than 8 cores.
01:41:01 <ehird> pikhq: remember, the jails are running instructions direct on the processor
01:41:02 <oerjan> *facepalm*
01:41:18 <pikhq> The solution is to wait for Intel to start making the 8-core chips.
01:41:33 <ehird> possibly.
01:41:47 <ehird> pikhq: ya think using 3 Opterons in a 4-slot mobo would work?
01:42:01 <ehird> It sounds like the kind of thing that should work but will fry your computer ;-)
01:42:15 * pikhq checketh
01:42:20 * pikhq also checketh down
01:42:27 <oerjan> !slashes /*/\/a\\\\a\/x\\x\/\/x\\x\/a\\\\aa\\\\a\//***a\a
01:42:27 <EgoBot> aaaaaaaaaaaaaaaa
01:42:36 <ehird> pikhq: Checketh down?
01:42:46 <oerjan> !slashes /*/\/a\\\\a\/x\\x\/\/x\\x\/a\\\\aa\\\\a\//**********a\a
01:42:46 <EgoBot> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
01:42:47 <ehird> 3 opterons would give me 12 cores, which should be very much adequate
01:43:29 <bsmntbombdood> what are you speccing now?
01:43:53 <ehird> bsmntbombdood: hypothetical server for VPSery.
01:44:14 <pikhq> In other words, something practical.
01:44:20 <ehird> Yes.
01:44:33 <ehird> Practical, but performing, with an emphasis on parallelism over raw throughput.
01:44:49 <pikhq> Talk to IBM about a mainframe. :p
01:44:59 <ehird> pikhq: Hm, er... do the Opterons support DDR3?
01:45:03 <ehird> I'm not getting that vibe
01:45:55 <ehird> "Next-gen Opteron/DDR3 in 2009 - News and Siteseeing"
01:45:58 <ehird> Answer: no.
01:46:05 <ehird> pikhq: Back to Nehalem, I suppose.
01:47:20 * pikhq finds it increasingly tempting to upgrade his personal system...
01:47:44 <pikhq> 1 core -> 4 cores. 1 GB -> 4 GB or more. Um. Yeah...
01:47:59 <bsmntbombdood> how about 12 gb?
01:48:08 <pikhq> bsmntbombdood: Student budget.
01:48:09 -!- Judofyr has quit (Remote closed the connection).
01:48:18 <pikhq> We're talking about $200.
01:48:44 <pikhq> And I need a new motherboard in there.
01:48:54 <pikhq> (just *had* to skimp on my last one, didn't I?)
01:49:13 <bsmntbombdood> a new proc, motherboard and ram for $200?
01:49:27 <pikhq> Yeah.
01:49:39 <pikhq> Low-end, obviously.
01:51:46 <pikhq> Keep in mind that I've been dealing with an old single-core processor... This will still seem like a major upgrade to me.
01:54:28 -!- puzzlet_ has joined.
01:55:20 -!- puzzlet has quit (Remote closed the connection).
01:57:43 <oerjan> http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html :D
01:58:28 <pikhq> I... *Just* found that link from somewhere else.
01:58:38 <oerjan> probably
01:58:38 <pikhq> I was literally about to paste it.
01:58:50 <oerjan> BWAHAHAHA
01:58:51 <pikhq> DAMN YOU OERJAN!!! :p
01:59:38 <oerjan> (this link pasted for the 5% of #esoteric members not following reddit)
02:00:01 <oerjan> or something
02:00:56 <pikhq> Not from reddit.
02:01:00 <pikhq> Different blog.
02:01:02 <oerjan> ah
02:01:03 * pikhq should follow reddit, though.
02:01:41 * pikhq loves the description of Haskell
02:02:01 * oerjan hasn't got to that yet
02:02:25 <oerjan> i stopped at the prolog description to paste
02:05:21 <oerjan> also, perl
02:08:03 <pikhq> That part is not a joke.
02:08:07 <pikhq> It is truth.
02:08:15 <pikhq> (true but false) anyone?
02:08:44 <oerjan> "Later still, in an effort to cash in on the popularity of skin diseases the language is renamed ECMAScript.
02:09:11 <oerjan> what skin disease is that, anyhow?
02:09:58 <pikhq> It sounds vaguely like eczema.
02:10:38 <pikhq> And sounds a lot like some sort of skin disease.
02:10:43 <pikhq> (unspecified)
02:10:56 <bsmntbombdood> gar newegg hasn't given me a tracking number yet
02:12:59 <bsmntbombdood> they are far too easy on java
02:14:30 <pikhq> Nah. They are far, far too easy on C#.
02:27:05 <oerjan> http://www.reddit.com/r/programming/comments/8itq7/a_brief_incomplete_and_mostly_wrong_history_of/c09f5ur
02:27:35 <pikhq> http://www.huffingtonpost.com/2009/05/08/obama-mustard-attack-beco_n_199953.html
02:27:51 <pikhq> Republicans accuse Obama of elitism because he orders spicy mustard on his burger.
02:27:55 <pikhq> I freaking hate humanity.
02:34:35 <bsmntbombdood> i heard that
02:43:46 <Gracenotes> heh. I'm watching the Daily Show episode on that at the moment...
02:45:37 <Gracenotes> for my once-weekly-entertainment-spree >_>
02:55:00 <pikhq> Eh, you're forgiven. The Daily Show is worth watching.
03:07:13 -!- psygnisfive has joined.
03:16:10 <TravelGreaseGod> Well, I think I've outlived the humor of this /nick.
03:16:13 -!- TravelGreaseGod has changed nick to GregorR.
03:16:48 * pikhq bows before the former diety of traveled grease
03:18:40 -!- bsmntbombdood has quit (Read error: 104 (Connection reset by peer)).
03:19:24 -!- bsmntbombdood has joined.
03:20:32 <pikhq> Hwaet!
03:20:50 <GregorR> Whoot, I'm on OOPSLA.
03:21:06 <psygnisfive> oopsla?
03:21:12 <psygnisfive> how can you be /on/ oopsla?
03:21:26 <GregorR> Sneaky 'o' key, pushing its way in on the 'i' key's territory.
03:22:06 <comex> what I don't like about haskell is exceptions :<
03:22:18 <comex> though I love the type
03:22:23 <comex> throw :: (Exception e) => e -> a
03:22:33 <pikhq> What I don't like about haskell is that I don't know enough math to understand monads. :p
03:23:25 <Gracenotes> What I don't like about C is that I don't know enough math to understand pointer arithmetic...... oh wait...
03:23:33 <GregorR> Hahaha
03:23:40 <GregorR> Gracenotes: You may want to revisit the third grade :P
03:24:19 <Gracenotes> heh. for pointers, it's mainly the syntax that gets you at first
03:25:07 <Gracenotes> easy peasy once you're comfortable. same with monads, and uncountable other language features
03:25:20 <Gracenotes> ... or should I say countably infinite? :o
03:25:31 <GregorR> Uncountably finite?
03:25:32 <bsmntbombdood> i don't understand not understanding p ointers
03:25:44 <comex> I don't understand not understanding pointers
03:25:47 <comex> I do understand not understanding monads
03:25:49 <Gracenotes> the syntax mainly
03:25:52 <GregorR> I don't understand not understanding not understanding pointers.
03:25:55 <oerjan> i don't understand not understanding monads
03:25:56 <comex> this is because I understand the former, and not the latter
03:25:59 <Gracenotes> lvalues vs. rvalues
03:26:09 <Gracenotes> other things that are not intuitive whatsoever at first
03:26:12 <oerjan> BWAHAHAHA *CACKLE* *COUGH*
03:26:17 <pikhq> bsmntbombdood: It's one of those things that you wrap your head around and then it makes perfect, perfect sense.
03:26:35 <pikhq> oerjan: You've got an Erdos number smaller than mine; shaddup.
03:26:41 <Gracenotes> now monads, like typeclasses in general, are abstract. They're like uber design patterns
03:26:48 <psygnisfive> gregorr: how can you be IN oopsla
03:26:55 <comex> well, that's not true. I understand monads, in the sense of how to use the list and maybe monads, declare a new monad (+google), whatever
03:26:58 <Gracenotes> just use specific cases of them. you'' be fine
03:27:02 <comex> but I don't have an "intuitive" grasp of monads yet
03:27:08 <GregorR> psygnisfive: "published" in
03:27:16 <Gracenotes> list and maybe are a good start. Try State now :)
03:27:21 <psygnisfive> oh i see. i didnt realize oopsla was a publication
03:27:33 <Gracenotes> State is a pretty big hurdle but getting past it is significant
03:27:41 <Gracenotes> in... understanding.
03:27:42 <Gracenotes> stuff.
03:28:01 <comex> and then I have to figure out monoids
03:28:02 <comex> :<
03:28:10 <pikhq> GregorR: Oh, you have an Erdos number now? :p
03:28:13 <comex> and why do I want to learn a state monad in Haskell
03:28:20 <GregorR> pikhq: Probably a very high one :P
03:29:35 <pikhq> Oh, you're at a conference.
03:29:49 <pikhq> OOPSLA is a conference, not a journal. XD
03:29:59 <pikhq> GregorR: Well, then, your Erdos number is 7.
03:30:00 <Gracenotes> it is essentially a monad wrapping around an action, not a data structure. It shows even more so how they chain actions. and you basically get understanding Reader and Writer for free
03:30:10 <pikhq> Making its way through two other members of this chat room.
03:30:12 <pikhq> :p
03:30:24 <GregorR> ?
03:30:30 <GregorR> How does that establish it as 7?
03:30:45 <pikhq> Assuming you count working on a program together, sorry.
03:31:21 <Gracenotes> I have an Erdos number of .. undefined
03:31:22 <pikhq> Oerjan has an Erdos number of 5, he and I collaborated for PEBBLE, giving me an Erdos of 6. You and I collaborated for PEBBLE, giving you an Erdos number of 7. :p
03:31:34 <Gracenotes> no papers whatsoever. undergrad! *cringes*
03:31:59 <Gracenotes> I submit homework for you TAs to grade! *mwahahaha*
03:32:09 <bsmntbombdood> huh?
03:32:13 <pikhq> Gracenotes: I'm an undergrad myself.
03:32:16 <oerjan> pikhq: 4, thank you very much
03:32:24 <bsmntbombdood> why would working on a program together count?
03:32:26 <pikhq> oerjan: My apologies.
03:32:28 <Gracenotes> oh, nice :D when did you publish your first paper?
03:32:37 * oerjan had to check again
03:32:52 <pikhq> Have yet to. I said "assuming you count working on a program together". ;)
03:33:00 <GregorR> 4 is not bad.
03:33:23 <pikhq> bsmntbombdood: "Published work".
03:33:37 <bsmntbombdood> itym "paper"
03:33:47 <GregorR> SWEET
03:33:48 <Sgeo> So far, Free Realms is leaving a bad taste in my mouth
03:33:49 <GregorR> I'm 4 8-D
03:33:56 <pikhq> Some work published work of research.
03:34:03 <pikhq> GregorR: Oh?
03:34:22 <pikhq> bsmntbombdood: The question is, does PEBBLE count as a research project? :p
03:34:32 <GregorR> Me -> Jan Vitek -> Nir Shavit -> Michael E. Saks -> Erdos
03:34:49 <pikhq> Huh.
03:35:21 <oerjan> NOOOOOOOOOOOOO
03:35:24 <pikhq> Well, then. If PEBBLE doesn't count as a research project, does Plof?
03:35:41 <GregorR> pikhq: Only whenif I publish anything about it :P
03:35:45 <pikhq> I mean, it's a tiny bit unique as far as programming languages go.
03:35:56 * oerjan feels his #esoteric 1337-ness slipping
03:36:17 <pikhq> GregorR: Plof itself might count as a published work.
03:37:09 <Gracenotes> pikhq: ... sorry, when did you publish a paper? O-o
03:37:19 <bsmntbombdood> Gracenotes: that's what i said
03:37:29 <pikhq> Gracenotes: I have yet to, as I said previously.
03:37:37 <GregorR> It really only counts if it's a research paper :P
03:37:45 <pikhq> GregorR: Yeah, shaddup.
03:37:56 <Gracenotes> pikhq: ah, okay. Doing any research, by chance?
03:38:06 * Gracenotes hopes to get involved with that >_>
03:38:08 <pikhq> Not yet.
03:38:09 <GregorR> He's an undergrad :P
03:38:13 <pikhq> Inevitably will be.
03:38:19 * pikhq plans to do grad school
03:38:33 <GregorR> Go Purdue whooooooooo
03:38:36 <Gracenotes> okay. just wondrin. People going to research universities can get started somewhat early-ish, I've heard
03:38:50 <pikhq> Though my university does allow for undergrad research.
03:44:04 <comex> execState (tick >>= (\x -> tick >>= (\y -> return y))) 5
03:44:11 <comex> h m m
03:46:51 <comex> execState (tick >>= (\x -> return 42)) 8
03:46:54 <comex> returns 9 still
03:47:00 <comex> wat
03:47:29 <oerjan> what's the definition of tick?
03:47:35 <GregorR> tick = tock
03:47:35 <oerjan> oh right
03:47:46 <comex> from the example
03:47:47 <oerjan> comex: try runState
03:47:47 <comex> tick :: State Int Int
03:47:47 <comex> tick = do n <- get
03:47:47 <comex> put (n+1)
03:47:49 <comex> return n
03:47:59 <comex> oerjan: what's the difference
03:48:04 <oerjan> execState only returns the final state
03:48:11 <oerjan> evalState only the final result
03:48:17 <oerjan> runState returns both in a tuple
03:48:21 <oerjan> iirc
03:48:41 <Gracenotes> quite
03:49:16 <Gracenotes> and the way this works with lazy state is pretty interesting too :)
03:52:49 <comex> *Main> execState (tick >>= (\x -> tock >>= (\y -> return y))) 5
03:52:58 <comex> where tock is multiply by two
03:53:05 <comex> performs tick FIRST
03:53:08 <comex> wtf
03:53:19 <oerjan> of course
03:53:40 <oerjan> that's as designed
03:53:46 <comex> well, I guess it makes more sense in do notation that way...
03:54:22 <oerjan> i think i actually saw someone make a ReversedState monad
03:54:31 <oerjan> which does the opposite
03:54:55 <oerjan> it probably needs one to be careful with deadlocks, though
03:55:20 <oerjan> since you would then have information passing both ways
03:55:42 <comex> which both ways?
03:55:59 <oerjan> the \x and \y are always passed to the right
03:56:12 <oerjan> as you can tell just by scope
03:56:31 <oerjan> but that monad somehow managed to make state change backwards
03:57:44 <comex> I still don't see why not run the inner function first
03:57:49 <comex> but I don't get states either so :p
03:58:16 <oerjan> monads differ in whether they mostly run the left or right part of >>= first
03:58:27 <comex> as in, I don't see where you would use a state instead of a function (a, b) -> (a, b)
04:00:04 <oerjan> comex: here's something that might help show you why it must be like that
04:00:05 <comex> mainly because every example I've seen is of the form
04:00:12 <comex> do foo <- get
04:00:13 <comex> put bar
04:00:15 <comex> return qux
04:00:36 <oerjan> define tack n = do m <- get; put (m+n); return m
04:00:55 <comex> but why not replace it with f foo = (bar, qux)
04:00:57 <oerjan> (just to keep that tradition ;) )
04:01:14 <oerjan> oh i'm still on a previous question
04:01:33 <comex> well, yeah
04:01:38 <comex> with do notation it looks all nice and forwards
04:01:52 <oerjan> comex: indeed f foo = (bar, qux) is essentially what it is inside
04:02:52 <oerjan> now try execState (tick >>= (\x -> tack x >>= (\y -> return y))) 5
04:03:02 <comex> well, I have yet to see an example that doesn't have exactly those two lines
04:03:03 <comex> :<
04:03:25 <oerjan> you then see that tack x cannot possibly run before you know what x is
04:03:44 <oerjan> (well, ignoring laziness, which might allow it anyhow)
04:03:54 <oerjan> which means it must run after the tick
04:05:11 <oerjan> comex: as for why not replace it with f foo = (bar, qux)
04:05:14 <comex> ah, that makes sense
04:05:19 <comex> you're not getting a meaningful return value
04:05:22 <comex> but you are getting a meaningful parameter
04:05:46 <oerjan> well if you do that you could not use all the nice monad combinators that work on _all_ monads for it
04:06:31 <oerjan> for example, with import Control.Monad you can do:
04:07:10 <oerjan> runState (replicateM 5 tick) 10
04:07:47 <comex> http://haskell.org/ghc/docs/latest/html/libraries/base/src/Control-Monad.html#sequence
04:07:51 <comex> :<
04:08:10 -!- bsmntbombdood has quit (Success).
04:08:18 <oerjan> yeah replicateM is just ordinary replicate + sequence
04:08:50 -!- bsmntbombdood has joined.
04:09:11 <oerjan> try runState (sequence [tick, tock, tick, tock]) 5
04:10:15 <oerjan> actually you can even try:
04:10:48 <oerjan> evalState (sequence (cycle [tick, tock])) 5
04:10:51 <oerjan> (i think)
04:11:20 <comex> sucks!
04:11:29 <oerjan> hm?
04:11:51 <oerjan> er maybe i should have warned you about infinite output :D
04:11:59 <bsmntbombdood> bah
04:12:05 <bsmntbombdood> all the cool kids are learning haskell
04:12:32 * GregorR wishes there was more Haskell at Purdue.
04:12:39 <comex> I didn't actually run it :p
04:12:51 <comex> ok, now I did
04:12:59 <oerjan> take 20 $ evalState (sequence (cycle [tick, tock])) 5
04:13:07 <oerjan> if you want to abbreviate a bit
04:13:09 <Sgeo> ...Free Realms sent me 11 emails saying that my name has been approved
04:13:26 <GregorR> Sgeo: Well, they reaaaaaaaaaaaaally approve of it.
04:13:47 <Sgeo> Make that 12
04:13:50 <comex> I want a picture :(
04:13:51 <oerjan> comex: ok if you hadn't run it then what was it that sucked? :D
04:13:55 <comex> but I'm going to bed, maybe I'll run it tomorrow
04:14:01 <comex> oerjan: well, I knew it was going to do something infinite!
04:14:10 <Sgeo> They're sending an email every 1-2 minutes
04:14:16 <comex> s/run/understand
04:14:25 <comex> maybe I'll understand it tomorrow :)
04:14:29 <Sgeo> Wait, no, there's a 13 minute gap
04:14:40 <oerjan> comex: well this is a gradual process
04:15:01 <Sgeo> comex, of the emails?
04:16:15 <oerjan> Sgeo: did you ask to be approved?
04:16:50 <Sgeo> oerjan, since I used a custom name, it had to be approved before it could be used
04:29:45 <GregorR> So, I'm wondering if the American stereotype of a Swedish accent has anything to do with reality.
04:30:01 <GregorR> As far as I can tell, there's no similarity whatsoever.
04:30:42 <GregorR> It's not even just taken to the extreme or something, it just has nothing to do with anything.
04:32:50 <pikhq> The American stereotype of a Swedish accent has more to do with the Muppets than anything else.
04:33:00 <pikhq> :)
04:34:32 <oerjan> börk börk börk
04:34:41 <bsmntbombdood> i'd hit bjork
04:37:41 <pikhq> oerjan: Ah; wasn't aware that anyone overseas would've seen that.
04:37:43 <pikhq> :)
04:38:28 <oerjan> the muppet show was shown in norway already when we had a single state channel
04:38:52 <oerjan> which means that pretty much _everyone_ of that age has seen it
04:39:21 <pikhq> Ah.
04:39:29 <oerjan> mind you that was a while ago and i may not remember that much of it
04:39:43 <pikhq> So, that's a piece of Americana that's about as well-known in Norway. Got it.
04:41:58 <GregorR> So what's the reverse?
04:42:07 <GregorR> What piece of Norweigicana is known in the US?
04:42:16 <pikhq> ...
04:42:17 <pikhq> Hmm.
04:42:31 <oerjan> the nobel price and, well, that's about it
04:42:42 <pikhq> Beowulf.
04:42:54 <oerjan> beowulf is not particularly norwegian
04:43:02 <pikhq> (not necessarily Norwegian. Close?)
04:43:10 <oerjan> but then, i don't know beowulf
04:43:24 * pikhq wikipedes
04:43:32 <oerjan> ok i vaguely recall it's mostly set in denmark and sweden or something
04:43:41 <oerjan> and that it's in old english
04:44:01 <pikhq> Scandinavian, at least.
04:44:17 <oerjan> henrik ibsen, i hope
04:44:48 <oerjan> might be too class-dependent...
04:45:12 <oerjan> "The Scream"
04:45:34 <oerjan> i'm sure there must be _something_ from after the 19th century
04:45:48 <pikhq> Hmm.
04:45:55 <pikhq> Start naming things.
04:45:55 <pikhq> :p
04:46:12 <oerjan> the A-HA band
04:46:26 <pikhq> No.
04:46:41 <oerjan> this may be complicated by the fact that for ten years or so, _i_ haven't got much of a clue what's hot in norway :D
04:46:55 <oerjan> (maybe make that 15)
04:47:01 <pikhq> :D
04:47:23 * GregorR 's Americanness seeps into Europe
04:47:28 <oerjan> Age of Conan MMORPG
04:47:47 <pikhq> Henrik Ibsen isn't well-known amongst the general populace, but decently known amongst literature buffs.
04:47:51 <oerjan> (i don't play MMORPGs, but i know that's made in norway)
04:48:06 <pikhq> Age of Conan MMORPG is known *of*...
04:48:17 <pikhq> Not the most popular MMO, but it has a niche.
04:48:43 <pikhq> "The Scream" is something people don't realise they know. :p
04:49:38 <oerjan> Jarlsberg cheese :D
04:49:49 <oerjan> it's our main diary export i think
04:49:51 <pikhq> Didn't know that was a kind of cheese.
04:49:55 <oerjan> *dairy
04:50:09 <pikhq> We're Americans - we don't know things from other continents. :p
04:50:11 <oerjan> well i saw it when i was in the us
04:50:17 <oerjan> iirc
04:50:35 <pikhq> Doesn't mean I know what it is. XD
04:50:48 <oerjan> lutefisk
04:51:30 <oerjan> (if it's known, then it's probably as something to scare children with :D)
04:51:38 <oerjan> (mind you i love it)
04:51:39 <pikhq> Never had it, which is kinda surprising considering the amount of family I have in Minnesota.
04:52:01 <pikhq> (Minnesota was settled by Norwegian immigrants)
04:52:12 <oerjan> i know, vaguely
04:52:29 <pikhq> And it's something to scare children with, definitely.
04:52:36 <pikhq> (good God, it's *caustic*!)
04:52:51 <oerjan> possibly whale meat, although we try not to remind you of it :D
04:53:05 <GregorR> That'd be illegal.
04:53:31 <GregorR> Except for those common Norwegian-Amerindians :P
04:53:44 <pikhq> I think Norwegian cuisine is the most likely to be known in the US...
04:53:57 <pikhq> Except for the few fans of Norwegian metal, I guess? :p
04:54:08 <oerjan> brown cheese just to complete the stereotypically bad norwegian cuisine
04:54:11 * GregorR wonders what Norwegian cuisine is :P
04:54:26 <pikhq> GregorR: Visit Minnesota. You'll know.
04:54:31 <oerjan> (strangely enough norway has had several internationally award-winning chefs)
04:54:32 <GregorR> I don't like cheese :P
04:54:45 <GregorR> Or fish, just to cover both of those bases.
04:54:50 <oerjan> but i doubt they're cuisine is very traditional
04:54:53 <oerjan> *their
04:55:00 <pikhq> That covers a good chunk of Norwegian cuisine.
04:55:05 <oerjan> indeed
04:55:10 * pikhq shoves sushi down GregorR's throat
04:55:21 <oerjan> it doesn't cover fårikål though
04:55:32 <oerjan> which was once voted the national dish
04:55:38 <oerjan> (sheep in cabbage)
04:55:52 <oerjan> (with whole peppers)
04:56:23 <pikhq> Actually sounds rather tasty, if a bit simple.
04:56:34 <oerjan> (that would be the relatively small black kind of pepper)
04:56:48 <pikhq> Ah, yeah... I was about to say.
04:56:55 <GregorR> pikhq: I like those sushi things that don't contain fish.
04:57:04 <pikhq> Kinda surprising to see capsicum in Norway.
04:57:15 <pikhq> GregorR: Mmm... Fair enough.
04:57:20 <oerjan> um is that what it is?
04:57:39 <pikhq> Capsicum is the genus of chili peppers.
04:57:42 <GregorR> Fårikål is a traditional Norwegian dish, consisting of pieces of mutton with bone, cabbage, whole black pepper and a little wheat flour, cooked for several hours in a casserole, traditionally served with potatoes boiled in their jackets.
04:57:44 <GregorR> This sounds good.
04:57:51 <oerjan> well that is not what you use in fårikål
04:57:57 <pikhq> I know.
04:58:06 <oerjan> it's a very seasonal dish, btw
04:58:09 <GregorR> Now to find one of those popular on-every-corner Norwegian restaurants.
04:58:12 <oerjan> autumn
04:58:22 <GregorR> Americans have no conception of seasonality.
04:58:26 <GregorR> :P
04:58:43 <oerjan> how unseasonable
04:59:12 <pikhq> Mother Nature is America's bitch. :p
04:59:19 <GregorR> Pretty much.
04:59:44 <GregorR> I would make a joke about eating an extremely-out-of-season fruit, but I literally have no conception of what fruits are in season at what time.
05:00:05 <pikhq> A hint: they're out of season in the winter.
05:00:18 <pikhq> ;)
05:00:25 <GregorR> There are fruits that are in season in the winter! Just not many.
05:00:27 <Sgeo> GregorR, same her
05:00:29 <Sgeo> here
05:00:34 <oerjan> it depends what you mean
05:00:49 <oerjan> for example few norwegians eat figs and dates other than christmas
05:01:20 <oerjan> of course those are generaly dried
05:01:20 <pikhq> Hmm. Apparently pears and tangerines are in season during the winter.
05:01:27 <oerjan> *lly
05:01:38 <pikhq> (Wikipedia FTW)
05:01:48 <Sgeo> Free Realms is still spamming me
05:02:01 <GregorR> Sgeo: Hahahahaha
05:02:11 <oerjan> maybe google to see if it's a known problem?
05:02:12 <Sgeo> Although there was a 45 minute gap between the latest junk
05:03:05 <GregorR> Sgeo: Years from now, you'll be receiving it still, but so rarely that you always forget about it until you get another one.
05:03:58 <Sgeo> If it sends an email every time a separate mod approves it, then it might pick up tomorrow, or keep going for weeks, until it runs dry
05:08:44 * pikhq observes that American cuisine is very, very freaking odd...
05:09:09 <GregorR> pikhq: American cuisine: Take something simple, put cheese on it.
05:09:27 <pikhq> GregorR: That covers some things.
05:09:35 <pikhq> *cough* Cheeseburgers.
05:10:01 <Sgeo> GregorR, I'm eating Pasta and cheese tonight... just like most nights
05:10:32 <pikhq> Doesn't cover how somehow Italian, Mexican, and Chinese foods have somehow morphed into being a major part of our national cuisine...
05:10:44 <GregorR> pikhq: 'struth.
05:11:11 <pikhq> Or, for that matter, British or Native American foods.
05:11:22 <pikhq> (or freaking adoration of corn. :p)
05:11:27 <pikhq> s/or/our/
05:11:51 <GregorR> British "cuisine" is not dissimilar to American "cuisine"
05:12:06 <GregorR> Less focus on cheese, more focus on flavorless and fattening.
05:12:29 <pikhq> I thought that American cuisine had cornered the market on fattening.
05:12:52 <pikhq> The Brits may have such things as frying bread in bacon grease, but we, *we* have fast-food.
05:13:23 <GregorR> One day in an English pub I had eggs not-actually-over-hard-but-we'll-forgive-them-they're-British, baked beans, the liver of a whiskey-fed-chicken, mushrooms and fried tomato.
05:14:55 <pikhq> Also, not all British cuisine these days is flavorless; remember, curry has become a national dish for them. ;)
05:15:22 <GregorR> The McDonalds' there have curry for fries (chips)
05:17:42 -!- puzzlet_ has quit (Remote closed the connection).
05:17:48 -!- puzzlet has joined.
05:18:44 <pikhq> Also, they have tea. Any other culinary sins they make are forgiven by that alone.
05:19:03 * pikhq is fond of tea, in case you couldn't tell
05:19:16 <GregorR> Bleh
05:19:55 <pikhq> Do I sense someone who has been mistreated by American tea 'sensibilities'?
05:20:31 <GregorR> I don't like tea.
05:20:42 <GregorR> I'm hyposmic, so it tastes like bitter water to me.
05:20:50 <GregorR> (Along with coffee, beer)
05:21:50 * pikhq notes that bad tea, coffee, and beer *is* bitter water.
05:22:17 <GregorR> My insane tea friends took me about seven or eight times to this deluxe absurdly-expensive tea place.
05:22:19 <pikhq> But with hyposmia, good tea, coffee, and beer might be a bit lost on you. :/
05:22:26 <Sgeo> hyposmic?
05:22:38 <pikhq> Reduced sense of smell.
05:22:57 <pikhq> GregorR: So, nothing with subtle flavors for you.
05:23:04 <GregorR> Yuh
05:23:22 <GregorR> Or at least, no subtle flavors if there's also a significant bitter flavor to overwhelm :P
05:23:23 <pikhq> I hope you're at least fond of spicy foods. :p
05:23:28 <Sgeo> Is it possible to have hyposmia and not know it?
05:23:30 <GregorR> I wurve spicy foods.
05:23:43 <pikhq> Good man.
05:23:46 <GregorR> Sgeo: Hyposmia is a symptom, not a disease.
05:23:59 <GregorR> Sgeo: Which is to say, if you think you're hyposmic, you're hyposmic :P
05:24:16 <GregorR> Sgeo: But if you've never cooked a rotten chicken only for your roommate to come home and go "holy shit WTF is that smell", you're probably not.
05:24:18 <Sgeo> Or maybe I'm just bad with tastes. I notice other smells just fine
05:24:28 * pikhq likes his food with either subtle flavors or incredibly strong flavors
05:24:40 <pikhq> Mmm, salt and vinegar chips...
05:24:44 <Sgeo> (or at least, what I think is just fine)
05:24:45 <pikhq> GregorR: Damn.
05:24:48 <pikhq> Just damn.
05:26:10 <GregorR> pikhq: I don't like inviting friends over, because the experience often exposes odors I was not aware of ...
05:26:45 <pikhq> Meanwhile I, if anything, exhibit hyperosmia.
05:26:46 -!- puzzlet has quit (Remote closed the connection).
05:26:54 -!- puzzlet has joined.
05:27:21 <pikhq> ("fun" when combined with autism)
05:32:09 <GregorR> <Sgeo> Or maybe I'm just bad with tastes. I notice other smells just fine
05:32:13 <GregorR> Also, I'm not bad with tastes :P
05:32:30 <GregorR> The subset of food which really /requires/ smell (a subset I am uniquely qualified to identify) is quite small.
05:32:37 <GregorR> (Not true for drinks)
05:33:06 <pikhq> I'd imagine soda would be just fine.
05:33:08 <pikhq> Beyond that, well...
05:33:22 <Sgeo> But how would you distinguish between different sodas?
05:33:22 <GregorR> Yeah, I drink soda. I wurve the bubblitude :P
05:33:28 <GregorR> Sgeo: .......... srsly?
05:33:46 <GregorR> Sgeo: I can tell the difference between all sodas, and have a distinct (and distinctive!) favorite.
05:34:04 <pikhq> Sgeo: Soda flavor is anything but subtle.
05:34:07 <Sgeo> I thought taste only existed for very general things ("sweet" etc)
05:34:24 <pikhq> Scent gives extra detail on flavors.
05:34:24 <Sgeo> And beyond that is smell, or maybe I'm just very confused and tired right now
05:34:37 <pikhq> Try tasting stuff with your nose plugged.
05:35:19 <pikhq> GregorR: Your favorite being?
05:35:23 <GregorR> Based on descriptions I've heard from people who've tried that, I think I've got a one-sense-weak-makes-the-other-stronger thing going on :P
05:35:25 <GregorR> Moxie!
05:35:31 <GregorR> It's distinctively different! (And better)
05:35:33 <pikhq> ... Moxie?
05:35:39 <pikhq> Never had it.
05:35:44 <GregorR> Of course not, you're not a Mainer :P
05:35:48 <pikhq> Or heard of it.
05:35:51 <GregorR> Of course not, you're not a Mainer :P
05:36:01 <GregorR> It's the oldest continually produced soda in the US.
05:36:30 <pikhq> Huh.
05:37:17 * pikhq is rather fond of Dr. Pepper & Mountain Dew...
05:37:35 <GregorR> Surely you've heard the English term "moxie", though?
05:37:40 <pikhq> And also a *good* ginger ale. (most of it isn't)
05:37:44 <pikhq> Yeah.
05:37:52 <GregorR> That term comes from the soda, not vice-versa.
05:37:57 <pikhq> Wow.
05:42:07 <GregorR> http://en.wikipedia.org/wiki/Moxie , btw
05:42:47 <pikhq> I looked it up.
05:42:54 <pikhq> And kinda want to try it.
05:43:11 <pikhq> If for no other reason then that a soda I haven't tried is just wrong. :p
05:43:13 <GregorR> Unless you know somebody who imports it locally (e.g. me :P ), it's too expensive to try.
05:43:33 <pikhq> Next time I'm in New England.
05:43:39 <pikhq> (with any luck, next summer)
05:43:43 <GregorR> It's difficult to find outside of Maine proper.
05:44:16 <pikhq> There's a lot of stuff that's hard to find in Boston. :p
05:45:18 <pikhq> Hey, sure enough. The Star Market in Cambridge has it.
05:45:26 <pikhq> Easy enoguh.
05:46:00 <pikhq> As does the one in Newton, and that odd grocery store in Somerville...
05:46:09 <pikhq> Well, then.
05:46:17 <GregorR> There are a few places here and there you can find it. That's noreast enough that I'm not sure whether you'd be getting authentic Moxie (look for orange) or the just-as-good-if-not-better Real Soda brand Moxie.
05:46:47 <pikhq> Doubt I'll find it here in Missouri, though.
05:46:59 <GregorR> Prooooooooobably not :P
05:47:07 <GregorR> Actually easier to find in Oregon I'd bet :P
05:47:12 <pikhq> ... But there's a shop in Montana that sells it. WTF?
05:47:31 <pikhq> ... Ah. Missoula. The only town in that hellhole worth living in.
05:47:32 <GregorR> It probably all comes down to "somebody from Maine moved there and opened a store" ;)
05:47:38 <pikhq> Odd coincidence, that.
05:47:46 <pikhq> Missoula is a college town.
05:47:54 <pikhq> So, probably.
05:50:09 <pikhq> Jeeze; $24 for 24 cans.
05:50:19 <pikhq> Yeah, just a little pricy.
05:50:25 <GregorR> Eh, you can get a better deal than that (before shipping)
05:50:37 <pikhq> Still.
05:51:00 <pikhq> I think it's a bit cheaper to be fond of Dr. Pepper without HFCS.
05:51:16 <GregorR> Yeah, my Moxie lust is expensive :P
05:51:19 <pikhq> (at least that I could reasonably drive down and load my car up with)
05:51:43 <pikhq> Dr. Pepper without corn syrup is a bit difficult to find...
05:52:08 <pikhq> There's one distributor that makes it.
05:52:20 <GregorR> I can find it easily, but only one bottle at a time and overpriced :P
05:52:53 * pikhq got addicted for that short time it was available nation-wide...
05:52:59 * Sgeo joins Reddit
05:53:31 <pikhq> Now, the only way to get it sanely is to go down to Texas and clean out a store. :p
05:57:05 * GregorR wonders how "go down to Texas" and "sanely" can be in the same sentence.
05:59:19 <pikhq> It's not far into Texas, and it's in the name of one of the few American products that doesn't use corn syrup.
05:59:30 <pikhq> Making it worth it.
05:59:31 <pikhq> :p
05:59:40 <pikhq> And I use that smily a lot.
05:59:53 <GregorR> Hey now, there are lots of American products that don't use corn syrup.
05:59:59 <GregorR> Few of them are beverages, but still.
06:00:34 <pikhq> And few of them are food products for that matter.
06:00:59 <psygnisfive> i think some day OOPSLA should be held in Upsala
06:01:24 <pikhq> I think that we should cut back on the sugar tarriff and the corn subsidies.
06:01:31 <GregorR> For example, a 2009 Ford F-150 contains no corn syrup, as that would be too efficient of an alternative fuel.
06:01:35 <GregorR> And we wurve oil.
06:01:41 <pikhq> :)
06:01:58 <psygnisfive> i agree, pikhq.
06:02:37 <psygnisfive> but thats partially because corn takes more energy to turn into fuel than it produces
06:03:18 <pikhq> As a side benefit: corn syrup tastes awful.
06:03:22 <psygnisfive> it does
06:03:26 <psygnisfive> pure sugar is better
06:04:03 <pikhq> Of course, this is America; screw taste, the almighty dollar is in charge.
06:04:33 <pikhq> Oh, and also subversion of the free market.
06:04:40 <pikhq> (as we are wont to do here)
06:05:23 <Sgeo> afk all
06:05:24 <bsmntbombdood> is the turtlre?
06:05:45 <bsmntbombdood> NO - THE ACCUMULATOR
06:08:05 <pikhq> Hmm, that's interesting... In mice, HFCS has been shown to increase the absorption of fat.
06:08:20 <psygnisfive> hm.
06:08:25 <pikhq> So, we're manipulating the free market to make Americans fat. *Great*.
06:08:45 <pikhq> Oh, it also seems to supress mice's tendency to stop themselves from overeating.
06:09:10 <psygnisfive> yes
06:09:11 <psygnisfive> this is true
06:09:24 <psygnisfive> as it does not release the hormones that make you feel full
06:09:37 <pikhq> Explains a lot.
06:09:48 <psygnisfive> it also doesnt cause the release of insulin, which leads to elevated blood sugar levels, and a higher risk of diabetes
06:10:00 <pikhq> Also explains a lot.
06:10:09 <psygnisfive> yep
06:10:13 <pikhq> We're really fucking ourselves over here.
06:10:20 <psygnisfive> yep!
06:10:36 <pikhq> And we're not even getting better-tasting food out of it!
06:11:02 <psygnisfive> yeah
06:11:09 <psygnisfive> if were gonna kill ourselves, we shold atleast enjoy it
06:11:18 <pikhq> Seriously.
06:18:51 <pikhq> Really annoying when you consider that we've got the ability to grow a *lot* of sugar beet...
06:19:04 <pikhq> And a decent bit of sugar cane as well.
06:20:43 <pikhq> Both of which would make for a really good ethanol crop if corn weren't so damned subsidised.
06:39:27 -!- ais523 has joined.
06:43:59 -!- ais523 has quit (Read error: 104 (Connection reset by peer)).
06:44:37 -!- ais523 has joined.
06:45:22 <Sgeo> Maybe I should start eating HFCS foods
06:45:31 <Sgeo> Well, the diabetes bit doesn't sound good
06:49:42 * oerjan figures his infinite loop in slashes should work but it may be easier to use haskell to generate it
06:50:22 <ais523> oerjan: you're trying to write a nontrivial /// infinite loop
06:50:26 <oerjan> yep
06:50:45 <ais523> I spent hours working on that problem once, my conclusions were that it was obviously possible, but would require someone who made fewer silly mistakes than me
06:50:54 <oerjan> ah :)
06:51:05 <Sgeo> /// ?
06:51:30 <oerjan> http://esoteric.voxelperfect.net/wiki/Slashes
07:14:21 <lifthrasiir> okay, i got dead code elimination pass correct... now esotope-bfc prints only PUTS("Hello world!") for hello.b.
07:15:58 <ais523> in allcaps?
07:16:04 <ais523> is that a wrapper macro?
07:16:14 <lifthrasiir> ais523: defined as #define PUTS(s) fwrite(s, 1, sizeof(s)-1, stdout)
07:16:31 <ais523> also, does it optimise 99bob into printing a constant string?
07:16:52 <lifthrasiir> partially.
07:17:42 <lifthrasiir> propagation pass is (as i mentioned days ago) ad-hoc, so it misses some cases
07:19:13 <lifthrasiir> for example, it doesn't propagate Output[] node yet so there are lots of code looks like p[3] += 72; PUTC(p[3]);
07:20:45 -!- oerjan has quit ("Good night").
07:34:21 <Sgeo> 7 more spam messages from guess who
07:57:08 <ais523> wow, someone was reminicing about old-fashioned copy protection schemes on Slashdot, and apparently one of them involved rot13ing the binary
07:57:15 <ais523> amongst other things
07:57:20 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
07:57:24 <ais523> I have to admit, I never even thought of rot13ing binary data...
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:03:32 <bsmntbombdood> memfrob
08:08:59 <ais523> memfrob would make more sense
08:09:05 <ais523> its purpose is to hide strings in executables, right?
08:11:18 <bsmntbombdood> probably more for the lulz
08:13:14 -!- coppro has quit (Read error: 110 (Connection timed out)).
08:13:29 <fizzie> There was a demo of a game they told me to poke at, to see how it was made; the data files of that were memfrob()'d (except not with the constant 42) .zip files.
08:14:06 <ais523> heh, XOR encryption
08:14:28 <ais523> I remember recommending that to a friend about 6 or 7 years ago to use on his website
08:14:40 <ais523> because it was stronger than the nonencryption he was using, but I would still be able to crack i
08:14:42 <ais523> *it
08:14:54 <fizzie> Not quite sure what purpose it served; I guess it was there to discourage any "non-approved" modificating, or the extraction of graphical resources, but those both seem to be rather lamey reasons.
08:18:17 <fizzie> And there was that actual "binary rot-0x1b modulo 256 applied to .tar archives" ehird's router-box-or-whatever had for configuration dumps.
08:19:01 <ais523> the impression that I got from the Slashdot comment was that the binary had actually changed all the opcodes and data that happened to correspond to letters of the alphabet round 13 alphabetical places
08:19:14 <ais523> and left everything else untouched
08:19:16 <fizzie> Yes, that's pretty senseless.
08:19:22 <ais523> quite a few common x86 instructions correspond to capital letters, though
08:19:44 <ais523> in realmode, at least, the lowercase letters all seem to be invalid opcodes
08:23:29 -!- bsmntbombdood has quit (Remote closed the connection).
08:25:41 -!- daffa has joined.
08:25:59 <daffa> What's up, all?
08:26:11 <ais523> I'm having a completely crazy sleep pattern atm
08:26:22 <ais523> so I took advantage of the 24-hour opening of the University atm to come in at 6am
08:26:46 -!- daffa has changed nick to evincar.
08:27:38 <evincar> Sounds like fun.
08:28:16 <ais523> well, it's a case of "would I rather be lying in bed doing nothing wondering if 6am is too late to try to go to sleep, or come online and do nothing?"
08:29:06 <evincar> Fair enough.
08:29:36 <evincar> It's only 3:30 where I am. Been programming, and debating going for a run.
08:29:38 <ais523> esoteric-wise, the most interesting things I've done recently are write a BF Joust interp, and a fast Underload interp in a sane language
08:29:55 <evincar> Ah, nice.
08:30:05 <evincar> BF just never goes away.
08:30:12 <ais523> because it's ridiculous that nearly all the Underload interps were in esolangs
08:30:14 <ais523> although rather fun
08:30:25 <evincar> Ha, true.
08:31:00 <evincar> I dunno, I've been working on a legit language lately, so I figured it was time to take a break and see what the other half is doing.
08:31:50 <evincar> I had a great idea for a rather esoteric language, but unfortunately it seems too useful to count as an esolang in the truest sense of the term.
08:31:56 <evincar> More like domain-specific.
08:32:08 <ais523> I don't mind esolangs being useful
08:32:19 <ais523> in fact, I've been aiming towards that sort of thing quite a lot recently
08:32:43 <ais523> Underlambda is (will be) designed to be useful, Thutu turned out to be useful by mistake, and I've been progressively making INTERCAL more useful and hoping nobody notices
08:32:54 <evincar> Heh.
08:33:01 <evincar> Well, I guess it amounts to preference.
08:34:02 <evincar> My first esolang was rather useful, come to think of it, for batch scripting and lightweight graphics applications...
08:34:13 <evincar> ...made in good ol' QuickBASIC 4.5, of course.
08:34:17 <evincar> Such a dinosaur.
08:35:49 <ais523> I was stuck with QBasic ages ago
08:36:44 <evincar> It was a certain flavour of esoteria in its own right.
08:37:37 <evincar> Consider the things that the QB community did with that language in the early 00's that should never have been done with it.
08:37:51 <ais523> you can say that about any language, more or less
08:38:00 <ais523> I know when I was younger I implemented pointers in QBasic
08:38:05 <ais523> actual memory pointers
08:38:08 <evincar> Oh, I loved doing that.
08:38:09 <ais523> that's esoteric in its own way
08:38:17 <evincar> Yeah.
08:38:31 <evincar> It feels so good to get a linked list working in QB.
08:38:41 <evincar> And at the same time vile and disgusting.
08:39:01 <ais523> I couldn't figure out how to extract the value of a number, so in the end I blitted into a temporary variable and read the value from there
08:39:12 <ais523> I was so programming-naive then I didn't even know about floating point
08:39:19 <ais523> so no wonder I couldn't figure out the byte order
08:39:25 <evincar> Haha...
08:39:40 <evincar> ...but programming knowledge builds on itself.
08:39:59 <evincar> I've come a long way in the...almost ten years it's been.
08:40:11 <evincar> Since I started getting interested, that is.
08:40:13 <ais523> a bit more than that for me
08:40:18 <ais523> I started programming when I was 6, I'm 22 now
08:40:20 <evincar> I figured.
08:40:24 <evincar> Ah.
08:40:30 <ais523> Pascal and BBC Basic were my first languages
08:40:40 <ais523> and, as you can probably guess, 6502 asm was my first asm
08:40:46 <evincar> Yep yep.
08:41:18 <fizzie> We recently HTMLized the QB manual.
08:41:24 <fizzie> Or QBasic manual, anyway.
08:41:26 <ais523> we as in #esoteric?
08:41:29 <evincar> I was a QB/Pascal child, myself, but I got into C rather early on, and then C++ has pretty much stuck with me ever since, despite Perl, Python, and what have you.
08:41:35 <ais523> I know there was a discussion about it here a while ago
08:41:38 <fizzie> The dos .HLP decompiler didn't work on the QuickBasic one.
08:41:42 <ais523> I even managed to get what I think is a legal copy
08:41:47 <ais523> at least, it came from the Microsoft website
08:41:50 <ais523> and it runs in DOSBox
08:41:59 <ais523> (also, I have a spare Win98 license around, so I'll count it against that)
08:42:06 <fizzie> http://zem.fi/~fis/qbc.html
08:42:25 <fizzie> That's the one with CSS rules to make the colors correct.
08:42:34 <evincar> Neat.
08:42:38 <evincar> This is the 1.1 manual?
08:42:57 <evincar> Doesn't look like 4.5.
08:43:25 <fizzie> It's the QBasic one; like I said, real qb45 manual didn't get through the "helphelp" tool.
08:43:40 <evincar> Ah, gotcha.
08:46:50 <fizzie> It did get a couple of pages correct, but the rest of the output was just "^B^D^B^E^B^F^B^K^B^L^B^T^B^T\p^B\uP,P,P,P,<B3>i<A2>allimmedia\p" and so on. Must be an incompatible version.
08:48:08 * ais523 laments the death of winhelp
08:48:22 * evincar dons a black arm band.
08:48:23 <ais523> even winhlp32 is pretty much dead nowadays
08:48:35 <ais523> and you can't get hold of compilers for winhelp nowadays, I don't think
08:48:51 <ais523> that's actually a good point, I'll have to see if I have one lying around on a hard disk somewhere
08:49:00 -!- puzzlet has quit (Read error: 60 (Operation timed out)).
08:49:01 <ais523> the source code was a really weird format
08:49:03 <ais523> it was RTF-based
08:49:04 -!- puzzlet has joined.
08:49:14 <ais523> and you put metadata in footnotes, or as hidden text
08:49:27 <evincar> Strange.
08:49:35 <ais523> a link, for instance, was double-underlined-text, followed by the link target as hidden text
08:49:48 <ais523> I think it was double-underlined, anyway, I'm not sure, it was so long ago!
08:51:44 * ais523 opens up an old winhelp source file in OpenOffice to look
08:52:11 <ais523> yep, double-underline
08:53:07 <ais523> oh, and it had a scripting language too
08:53:25 <ais523> which had a slightly weird syntax, it was mostly lots of nested camelcase functions
08:53:42 <ais523> it looks functional looking at the source, but I suspect it may be imperative written with a functional synax
08:53:51 <ais523> and you put the commands in footnotes
08:54:09 <ais523> I don't think it's TC, but only because you can't have a loop not containing user input, and there's no infinite storage
08:55:34 <evincar> There's no way to hack around the former?
08:55:44 <evincar> Guess it's a moot point.
08:55:46 <ais523> no, it basically has no control structures but if
08:55:53 <evincar> Ah.
08:56:48 <evincar> Hey, you mind if I rattle off my recent idea and get some feedback?
08:56:58 <ais523> I don't mind at all
08:57:07 <evincar> All right.
08:57:49 <ais523> <content of a footnote called !> IfThen(Not(IsMark("mpk2pa")), "JI(`m2loadgm.hlp', `lerror')")
08:58:10 <evincar> Ew.
08:58:18 * ais523 boggles at programming languages that use ` for open quote and ' for close quote
08:58:22 <fizzie> The "whc" program reads WinHelp project files (*.HPJ) and Rich-Text Format
08:58:22 <fizzie> file (*.RTF) and converts them into a WinHelp file with a .HLP extension.
08:58:30 <fizzie> That's included still in the OpenWatcom package.
08:58:35 <ais523> ah, that sounds about right
08:58:41 <ais523> I still have a few HPJs lying around somewhere
08:59:05 <fizzie> --
08:59:07 <ais523> they basically correspond to Makefiles
08:59:07 <fizzie> Who to Yell at if "whc" Explodes in your Face
08:59:07 <fizzie> ---------------------------------------------
08:59:07 <fizzie> That would be me:
08:59:07 <fizzie> Peter Milley
08:59:10 <fizzie> If I'm not at Watcom, try:
08:59:10 <fizzie> email: pmilley@undergrad.math.uwaterloo.ca
08:59:12 <fizzie> --
08:59:17 <fizzie> I'm not quite sure he's still interested in whc bugs.
08:59:24 <ais523> can it use memory outside the bottom 640K?
08:59:27 <ais523> if so, it's better than the one I have
08:59:33 <ais523> it keeps crashing on large images
08:59:50 <fizzie> It should build on Linux, so I would hope so.
08:59:53 <ais523> ooh, wait, I think you can do an infinite loop
08:59:54 -!- M0ny has joined.
09:00:18 <ais523> I've just reseen the source of one of my most complex attempts to write a WinHelp program
09:00:26 <evincar> Heh.
09:00:27 <ais523> it has a lot of JI commands forming a chain
09:00:36 <evincar> There's no unreseeing it.
09:00:40 <ais523> in order to do more complicated coding than would fit into the footnotes of one page
09:00:49 <ais523> I expect you could fit the JIs into a load
09:00:50 <ais523> *loop
09:01:00 <ais523> which would be much the same as an HTML page refreshing itself in the middle of loading to loop
09:01:13 <evincar> Frightening.
09:01:18 <ais523> which is stupid, but this is #esoteric we're talking about and it's a lot saner than some control structures I've seen
09:01:24 <evincar> True.
09:01:39 <evincar> Reminds me of the abuses of the C preprocessor that you see in the IOCCC.
09:01:43 <ais523> yes
09:01:57 <evincar> Anyway, my idea.
09:01:57 <ais523> even more amusingly, JI requires you to specify the literal filename of the target of the jump
09:02:02 <evincar> D:
09:02:06 <fizzie> That Watcom's WHC is a bit limited, though: supports only .bmp and .shg images, not .mrb/.dib/.wmf; no redefining of window styles, whatever that means; no support of the built-in table commands, and "no disk caching, and as a result is a RAM hog, especially with the 2MB help files people compile here at Watcom!"
09:02:16 <fizzie> I guess that last point isn't such a great thing any longer.
09:02:20 <ais523> don't worry, I'm perfectly capable of having two conversations at once, with the same people on occasion
09:02:35 <evincar> Heh...all right.
09:02:48 <ais523> err, .dib = .bmp with a different extension, so they could support that one pretty easily
09:03:02 <ais523> and how nostalgic to see .shg there
09:03:18 <fizzie> "Support for Windows bitmaps and Windows SHG files is available, but other image formats supported by Microsoft's compiler (MRB, DIB, and WMF) are not supported."
09:03:29 <ais523> .shg is basically a .bmp, but with WinHelp commands embedded on rectangular and elliptical areas
09:03:32 <fizzie> I did think .bmp files were device-independent-bitmaps at heart.
09:03:55 <evincar> So my original concept was an "emotional" programming language. Roughing that out, I decided to design an arbitrary system for creating "emotional automata". Basically I mashed together the idea of the cellular automaton with that of a neural network, added some nondeterminism, and behold.
09:04:12 <ais523> well, this is sounding pretty esoteric
09:04:29 <ais523> although "temperamental" might be a better description, by the sound of it
09:04:40 <evincar> Well, I wanted something for simulation purposes.
09:05:05 <evincar> "Given these behaviours and arbitrary simulated inputs, how does this agent operate?"
09:05:31 <ais523> have you seen evfunge?
09:05:35 <evincar> Nope.
09:05:42 <ais523> unfortunately, neither have I
09:05:53 <ais523> it's been discussed here, but all we know of is a webpage describing it
09:05:58 <evincar> A program consists of a "space", which can be Cartesian, graph-based, or fully-connected; "agents", which are effectively just neurons in the network; and "traits", which provide the capabilities of the agent.
09:06:21 <evincar> A funge for genetic programming, I'd assume?
09:06:25 <ais523> yes
09:06:33 <evincar> Hmm...
09:06:35 <ais523> apparently it worked rather well, but I haven't seen the source
09:06:45 <ais523> either of evfunge itself, or of the programs it generated
09:07:01 <evincar> Hmm...
09:07:26 <ais523> aargh, I just found wininiss
09:07:36 <ais523> possibly one of my most ridiculous utility functions ever
09:07:56 <evincar> Oh?
09:08:00 <ais523> it was a rather silly FFI, that worked from programs I didn't write to programs I did
09:08:18 <ais523> it was an executable that took data from its command-line arguments and recorded them in the main Windows configuration file, in a custom setting
09:08:23 <ais523> from where the program I wrote could read them
09:08:34 <ais523> at the time, I was rather worried it might wear out the hard disk
09:08:43 <ais523> which was probably not what I should have been worried about
09:08:49 <evincar> Heh.
09:09:38 <ais523> I should look through my "programs written in things not meant to be programmed" directory more often
09:09:50 <ais523> it's a rather related field to esoprogramming, although not technically the same
09:09:56 <ais523> oandx.bmp is a classic
09:10:16 <evincar> Ah, right...so..."traits" express "capabilities", which are responses to traits of other agents; "responses", which are responses to sensory input (i.e., events); and "impulses", which are nondeterministic. So you've got a full range.
09:10:32 <evincar> Being?
09:10:40 <ais523> a bitmap that plays noughts and crosses
09:10:54 <evincar> Should've guessed.
09:10:58 <evincar> How'd you pull that one off?
09:11:11 <ais523> I also have the same program as .bat, .dot, .hlp, and .ppt
09:11:19 <ais523> and by relying on the way floodfill works
09:11:22 <ais523> and a lot of visual trickery
09:11:34 <ais523> it's mostly about looking cleverer than it is
09:12:13 <evincar> Heh. I think I can guess.
09:14:07 <evincar> Every agent runs in its own thread, and is active and listening to all of its inputs unless otherwise stated. When no agent is active and it can be determined that no agent will become active again (e.g., via an impulse), the program ends.
09:15:39 <evincar> Writing a program consists of defining a space, declaring agents, and linking up their inputs and outputs into the initial state, if they're in a non-Cartesian space.
09:17:01 <evincar> I'm feeling a syntax like LISP or Unlambda.
09:18:28 <evincar> Um...thoughts? Questions? I've rambled an outline, at least.
09:18:33 <ais523> Unlambda's LISP with half the brackets
09:18:46 <evincar> Hence the mention.
09:18:48 <ais523> and it seems a relatively standard general idea
09:19:54 <evincar> I think targeting simulation applications is going to make it worth it.
09:20:48 <psygnisfive> evincar
09:20:50 <evincar> "There. I've made my robot. Now give it some Mars-like terrain and weather, and keep blowing up the little guy until he learns from his mistakes. Then give me an analysis."
09:20:58 <evincar> Yeah?
09:20:59 <psygnisfive> it sounds like youve just invented normal agents.
09:22:04 <evincar> *shrug*
09:23:48 <evincar> So you're saying it's not necessary? Been done this way before?
09:24:00 <psygnisfive> it just sounds like youve reinvented agent based modelling.
09:25:29 <evincar> Well...yes. That's exactly what I've done. I'm just wondering if it's a good idea to make a programming language out of the method.
09:26:56 <psygnisfive> there already is one. its called agent based modelling. :P
09:27:07 <psygnisfive> or, after a fashion, object oriented programming.
09:30:00 <evincar> I was thinking esoteric language, but whatever. And over OO it's more of an architecture or design pattern than straight up part of the paradigm.
09:30:23 <psygnisfive> please rephrase that last part
09:30:27 <psygnisfive> im not sure i know what you mean
09:31:24 <evincar> I can write a program in an object-oriented language that uses the concept of agent-based modelling, but there's nothing about object-oriented programming that is specifically geared toward that technique.
09:31:46 <psygnisfive> after a fashion there really is.
09:32:25 <psygnisfive> its just that when we code things in the OO paradigm, we're doing it not for modelling so much as to achieve a particular goal
09:32:43 <psygnisfive> and so the emergent behavior of modelling doesnt really arise.
09:32:49 <ais523> OO as in true Smalltalk OO, or OO as in what people normally mean by OO?
09:33:04 <psygnisfive> true OO smalltalk, lets say.
09:33:12 <evincar> I may be biased by C++.
09:33:25 <psygnisfive> C++ is rarely programmed in an OO fashion.
09:33:32 -!- dbc has quit (Client Quit).
09:33:33 <evincar> I know.
09:33:46 <ais523> and C++'s OO is like machine code
09:33:56 <evincar> It tends to be more like a...hierarchical C.
09:34:02 <ais523> it's so ridiculously do-everything-by-hand that you can hardly get a proper OO system running
09:34:04 <evincar> Bad term for it.
09:34:07 <evincar> Yeah.
09:34:45 <evincar> Well, anyway.
09:37:42 <evincar> I would say that OO is "more generic", that is, it applies to a wider problem domain than, and is a superset of, agent-based modelling, so I would tend to view it as a conceptual or architectural decision rather than a programming paradigm outright.
09:38:09 <psygnisfive> ::shrug::
09:38:13 <psygnisfive> i dont see any clear distinction.
09:38:41 <evincar> I mean, I can write a genetic algorithm or agent simulation in C, or assembly, that takes advantage of far different techniques than an object-oriented language while accomplishing the same goal.
09:38:54 <psygnisfive> an agent-based model seems like merely a particular kind of OO program geared towards discovering emergent phenomena
09:39:15 <psygnisfive> sure, but you can write ANY program in ANY TC language
09:39:32 <evincar> Yes, but it's not necessarily OO.
09:39:34 <evincar> Aagh.
09:39:39 <evincar> We're chasing ourselves around in circles.
09:39:40 <psygnisfive> you can write time-ordered code in haskell
09:40:23 <psygnisfive> i just dont see how what youve suggested is novel. :P
09:40:24 <evincar> Yes...and this is in favour of what I've been saying.
09:40:34 <evincar> I don't mean the concept.
09:40:51 <evincar> I mean the funky esoteric programming language geared toward that concept.
09:41:03 <evincar> That's where I could be innovating.
09:41:10 <psygnisfive> ok
09:41:23 <evincar> Whew.
09:41:25 <psygnisfive> well what does that language look like and why is it novel in looking like that
09:41:37 <evincar> That's what I'm working on.
09:41:41 <evincar> ^_^`
09:41:47 <psygnisfive> lol
09:41:52 <evincar> Ha...wow.
09:42:08 <evincar> We seriously just had a million-line discussion for that.
09:42:49 * evincar gets a glass of milk.
09:42:54 <psygnisfive> milk?!
09:43:09 <evincar> I don't have lemonade.
09:43:11 <psygnisfive> http://blog.milkboys.org/topics/photo/milk-monday/
09:43:23 <evincar> Um.
09:43:28 <psygnisfive> milk!
09:43:33 <evincar> ...
09:43:35 <evincar> Convenient?
09:43:40 <psygnisfive> sexy.
09:44:07 <evincar> The guy without the shirt isn't bad-looking.
09:44:29 <evincar> The girl would be better-looking without the...eh...well...milk.
09:44:33 <evincar> :P
09:44:35 <psygnisfive> thats no girl
09:44:42 <evincar> Ah.
09:44:48 <psygnisfive> thats tokio hotel
09:44:51 <evincar> A suitably effeminate boi, then.
09:45:08 <psygnisfive> http://www.deedeecus.com/wp-content/uploads/2008/05/tokio-hotel-mtv.jpg
09:45:12 <psygnisfive> there are no females in that picture
09:45:31 <psygnisfive> http://www.cartoondollemporium.com/forum/pics/cdeblog/tokio%20hotel.jpg
09:45:36 <evincar> I am both frightened and intrigued.
09:45:44 <M0ny> he's gay.
09:45:45 * evincar whistles.
09:45:52 <evincar> No shit.
09:45:52 <psygnisfive> im pretty sure he's not actually
09:46:00 <evincar> 6_o
09:46:26 <psygnisfive> hes just bill kaulitx.
09:46:28 <evincar> You're telling me a boy who takes care of himself like that is not fond of a more familiar species?
09:46:29 <psygnisfive> kaulitz*
09:46:42 <psygnisfive> well given that males and females are of the same species!
09:46:54 <evincar> *facepalm*
09:46:58 <psygnisfive> ;P
09:47:05 <evincar> My subtlety is lost.
09:47:17 <evincar> Like my marbles, at this hour.
09:47:23 <psygnisfive> i deny your implicatures and substitute my own!
09:47:45 <evincar> He likes the male variety!
09:48:04 -!- tombom has joined.
09:48:17 <evincar> Heh...well, to be perfectly honest, I think it's rather silly to be guessing at someone's sexual preferences based on appearances alone.
09:48:19 <psygnisfive> he's said himself that hes not gay
09:48:56 <psygnisfive> given that hes german, and a popstar, and german, looking gay is expected
09:49:06 <evincar> Hm...
09:49:13 <M0ny> Heh...well, to be perfectly honest, I think it's rather silly to be guessing at someone's sexual preferences.
09:49:17 <M0ny> :p
09:49:26 <evincar> ...European power pop does that to a person.
09:49:50 <evincar> Look at ex-Ozone Dan Balan, RadU, and Arsenium.
09:49:58 <evincar> Less the latter.
09:50:29 <evincar> And RadU, the young-looking, effeminate, "cute one" is the oldest, married, and maybe with a kid, I forget.
09:50:51 <evincar> ...
09:50:56 <evincar> This is a hell of a tangent.
09:52:40 <psygnisfive> the thing about bill kaulitz is like
09:52:45 <psygnisfive> hes REALLY femmy, even without makeup
09:53:49 <psygnisfive> also, he could just be a lesbian in a boys body.
09:53:52 <evincar> Crap. I just realised that I'm built just like him.
09:53:55 <evincar> :/
09:54:39 <evincar> Blarg.
09:55:22 <evincar> So, how about that...anything else?
09:55:27 <evincar> The cake is a lie.
09:55:42 <psygnisfive> his cake is, anyway
09:55:45 <evincar> Is there a Portal-based esolang yet?
09:55:55 <psygnisfive> mm
09:55:58 <psygnisfive> you mean like with teleports?
09:56:03 <evincar> I have a feeling something awesome could be done with that.
09:56:06 <psygnisfive> or with program-created teleports?
09:56:16 <evincar> Um. Why not both?
09:56:27 <psygnisfive> ehhh see the problem with that is that if you have teleports, you get no interesting constraints
09:56:32 <psygnisfive> it just becomes a linear language
09:56:41 <psygnisfive> in the simplest case
09:56:47 <evincar> And of course the nondeterminism that arises from the question of whether the cake is or is not a lie.
09:57:00 <evincar> Hmm...explain?
09:57:13 <evincar> Oh, I see what you mean.
09:57:15 <psygnisfive> well, it depends on how you use teleports, i guess
09:57:15 <ais523> INTERCAL control flow feels a bit portally
09:57:20 <ais523> although it isn't exactly the same
09:57:24 <evincar> True.
09:57:28 <psygnisfive> if teleports are like
09:57:40 <psygnisfive> site-to-site beaming
09:57:41 <evincar> And program flow is only one object that can go through a portal, remember.
09:57:43 <psygnisfive> on certain conditions
09:57:49 <psygnisfive> its just a fancy version of befunge
09:57:55 <evincar> Oh, I wasn't thinking that.
09:57:58 <psygnisfive> that bypasses the constraints of befunge
09:58:06 <psygnisfive> in that befunge forces you to work in 2 dimensions
09:58:10 <evincar> Right.
09:58:20 <psygnisfive> which means paths will cross
09:58:26 <psygnisfive> so you have to code around that
09:58:33 <psygnisfive> once you go into three dimensions, theres no such restriction
09:58:44 <psygnisfive> and teleporting essentially does the same thing
09:58:49 <evincar> I don't know that a Portal language could be a fungeoid, but it seems like a logical conclusion.
09:59:07 <psygnisfive> well, portals only matter when you have something that moves about a space
09:59:13 <evincar> True.
09:59:28 <Slereah> Hey >:|
09:59:31 <psygnisfive> hey
09:59:32 <Slereah> Portal language was my idea!
09:59:40 <Slereah> YOU KLEPTO THIEF
09:59:42 <evincar> Haha.
09:59:54 <evincar> Hey, I haven't been here in *ages*.
10:00:02 <evincar> Independent innovation.
10:00:11 <psygnisfive> slereah, what do you do at slereah.place_of_employment?
10:00:18 <Slereah> For the record, I also had the idea of a Lemmings language, so HANDS OFF OF THAT
10:00:30 <Slereah> psygnisfive : I program stuff and shit
10:00:36 <Slereah> Do equations and such
10:00:43 <psygnisfive> ah
10:01:02 <Slereah> Science you know
10:01:07 <evincar> But of course.
10:01:13 <evincar> The Science.
10:01:17 <Slereah> Right know I'm trying to model a parton jet
10:01:23 <psygnisfive> a parton jet?
10:02:39 <Slereah> http://en.wikipedia.org/wiki/Jet_(particle_physics)
10:03:01 <psygnisfive> parton?
10:03:12 <Slereah> gluon + quark
10:03:22 <psygnisfive> a free quark???
10:03:40 <Slereah> Or gluon
10:03:52 <Slereah> Once free, it decays rapidly
10:03:58 <Slereah> Into a shitload of particles
10:04:05 <Slereah> All going in the same general direction
10:04:08 <Slereah> That's the jet
10:04:09 <psygnisfive> oh i see
10:04:57 <Slereah> Worst part about work is that they're rationning Mathematica
10:05:04 <Slereah> You only get some time per day
10:05:19 <psygnisfive> sounds like you need a bootleg copy
10:05:59 <Slereah> I have one, but at home
10:06:05 <psygnisfive> ok
10:13:23 <evincar> Well, I'm no longer productive.
10:13:30 <evincar> Time to turn in for a few hours.
10:13:56 <evincar> It's been interesting.
10:15:30 -!- evincar has quit ("ChatZilla 0.9.84 [Firefox 3.0.10/2009042316]").
10:46:13 <ais523> ehird (when you're here): more Perl6 stealing ideas from INTERCAL: it uses just-in-case compilation for procedures that aren't declared yet
10:46:33 <ais523> as in, compiles as if they're declared later, then errors out if it doesn't find the declaration
10:57:59 -!- MigoMipo has joined.
11:21:24 -!- WangZeDong has joined.
11:23:22 <ais523> ok, Perl6 has reverse-subtract as an operator
11:23:26 <ais523> along with reverse everything else
11:24:18 <ais523> > say(2 R- 5);
11:24:20 <ais523> 3
11:24:39 <ais523> > say(1 R+ 2);
11:24:40 <ais523> 3
11:24:46 <ais523> and there you have the ever-useful reverse-addition operator
11:25:47 <WangZeDong> Substraction?
11:28:25 <psygnisfive> its sort of subtraction
11:28:39 <psygnisfive> its subtraction with the arguments reversed
11:28:45 <lifthrasiir> ais523: why not a meta-operator for exchanging operands?
11:28:54 <ais523> that's exactly how it's implemetned
11:29:07 <ais523> and why things like reverse-addition exist
11:29:14 <lifthrasiir> i see.
11:29:21 <psygnisfive> whats the POINT of Rop?
11:30:59 <ais523> > say [<]();
11:31:00 <ais523> 1
11:31:05 <ais523> there we have it, a less-than with no arguments
11:31:18 <ais523> to be precise, a reducing less-than
11:31:24 <psygnisfive> a what
11:31:28 <psygnisfive> > say [>]();
11:31:31 <psygnisfive> aww
11:31:35 <psygnisfive> you tricked me!
11:31:41 <psygnisfive> youre not running a bot on your computer :(
11:31:51 <psygnisfive> ais, simulate a bot!
11:32:01 <ais523> 1
11:32:04 <psygnisfive> GASP
11:32:08 <ais523> apparently, both less than and greater than are true
11:32:09 <psygnisfive> ok im off to bed
11:32:13 <ais523> if applied to nothing at all
11:32:23 <ais523> just like [+]() is 0 and [*]() is 1
11:32:28 -!- psygnisfive has changed nick to augur[sleep].
11:32:47 <augur[sleep]> hm
11:32:48 <augur[sleep]> thats odd
11:33:13 <augur[sleep]> because 0 and 1 are the identity values for those operators
11:33:18 <ais523> yes
11:33:24 <augur[sleep]> while > and < have no identity operator
11:33:24 -!- tombom has quit (Read error: 54 (Connection reset by peer)).
11:33:26 <lifthrasiir> that's something like foldl or foldr in many languages, but took a form of n-ary operator
11:33:28 <ais523> it's meant to be the identity value you get if you apply them to no operands
11:33:38 <ais523> and I'd say "true" is the identity value of less-than
11:33:43 <ais523> because 4 < 5 < 6 < 7 is true
11:33:43 -!- tombom has joined.
11:33:51 <ais523> so [<]() is true
11:33:55 -!- Slereah has quit (Read error: 110 (Connection timed out)).
11:34:02 <ais523> lifthrasiir: yep, it's a folded-operator syntax
11:34:15 <augur[sleep]> but the chained < is not an accurate representation of < mathematically
11:34:25 <ais523> as in, chaining a less-than is an implicit "and" in pretty much all usage
11:34:30 <ais523> and the identity for and is truth
11:34:54 <augur[sleep]> true
11:35:05 <augur[sleep]> but < cannot by its very nature have an identity
11:35:10 <augur[sleep]> not in the traditional sense of an identity
11:35:36 <augur[sleep]> since its not an operation from the domain back to the domain
11:37:31 <ais523> yes
11:37:35 <ais523> the identity's on the return value, there
11:37:50 <ais523> as in, a < b < c is parsed by Perl6 as (a < b) && (b < c)
11:37:56 <ais523> so it uses the identity for &&
11:37:56 <augur[sleep]> true
11:38:13 <augur[sleep]> but i still cant reeeaaally comprehend what an identity for < would be
11:38:29 <augur[sleep]> because identities are not conceptualized as relating to chaining at all.
11:39:18 <AnMaster> ais523, did you highlight me?
11:39:29 <ais523> I don't think so
11:39:30 * AnMaster notes someone highlighted him but it is out of scrollback
11:39:36 <ais523> not today, anyway
11:39:44 <AnMaster> well if it was anything important I'm sure that person will re-highlight
11:39:45 <ais523> I highlighted you the day before yesterday, IIRC
11:39:49 <ais523> but I think you were online then
11:39:50 <AnMaster> well,*
11:39:58 <ais523> and I was talking about you, not to you, then
11:39:59 <AnMaster> ais523, yes, this happened since yesterday evening
11:40:09 <ais523> in the context of people who ehird tended to disagree with
11:40:16 <augur[sleep]> ok but really, night
11:40:25 <ais523> night
11:40:30 <AnMaster> augur[sleep], cya
11:41:10 <AnMaster> odd...
11:41:32 <ais523> > say((1,3,5)X+(2,4,6));
11:41:34 <ais523> 3575797911
11:42:11 <ais523> strangely, that took it a while to calculate
11:42:12 <AnMaster> when X runs for a long time (several weeks) it's memory usage sometimes start to rapidly grow. /proc/pid/maps indicate it is the heap that grows. However this doesn't always happen.
11:42:19 <ais523> I wonder how much is coing on behind the scenes there
11:42:24 <AnMaster> This time it happened after just 5 days
11:42:25 <ais523> AnMaster: memory leak only in certain circumstances, I wonder?
11:42:36 <AnMaster> ais523, I don't know.
11:42:37 <ais523> it could be that they're very rare circumstances
11:42:42 <ais523> but once they happen, they continue happening
11:42:50 <ais523> that would give apparently random lengths of time before it happened
11:42:52 <AnMaster> ais523, it happens about 2/3 of the times X runs for a few weeks without restart.
11:43:00 <ais523> also, I tend to restart X every few hours
11:43:05 <AnMaster> usually it doesn't happen after just a few days
11:43:11 <ais523> due to not staying on one internet connection for all thatl ong
11:44:02 <AnMaster> ais523, why would you need to restart X when changing internet connection??
11:44:12 <ais523> because I turn the computer off
11:50:25 -!- BeholdMyGlory has joined.
11:58:17 <ais523> Perl6 has one of the silliest lambda syntaxes ever:
11:58:28 <ais523> -> $var { #(code here...) }
11:58:37 <ais523> the #() is an inline comment, btw
12:04:31 <lifthrasiir> ais523: so does #«foo»...
12:04:38 <ais523> yes, I know
12:04:46 <ais523> in fact, you can use any of the bracket chars in Unicode
12:05:01 <lifthrasiir> and if i remembered correctly, there are anonymous arguments $^a, $^b etc.
12:05:26 <ais523> actually, $^anything works to implicitly give arguments to the closure you're in
12:05:38 <ais523> and all blocks are treated as 0-arg lambdas
12:05:44 <ais523> unless they have more than 0 arguments
12:06:41 -!- MigoMipo_ has joined.
12:16:28 -!- FireFly has joined.
12:16:33 <AnMaster> <ais523> the #() is an inline comment, btw
12:16:34 <AnMaster> o
12:16:35 <AnMaster> m
12:16:36 <AnMaster> g
12:16:47 <ais523> why are inline comments in Perl so surprising?
12:16:49 -!- tombom has quit ("Peace and Protection 4.22.2").
12:16:52 <AnMaster> ais523, the syntax for them
12:16:59 <AnMaster> what if you write at the start of a line:
12:17:02 <AnMaster> #( blah blah
12:17:05 <ais523> syntax error
12:17:08 <ais523> yes, seriously
12:17:14 <AnMaster> surprising
12:17:23 <ais523> # ( blah blah would be a one-line comment
12:17:31 <ais523> and space #( blah blah
12:17:33 <AnMaster> ais523, only if it ends with a matching space right?
12:17:35 <AnMaster> ;P
12:17:35 <ais523> would be the start of an inline comment
12:17:40 <ais523> which can last multiple lines
12:17:46 <ais523> and space isn't a sort of paren
12:17:49 <AnMaster> true
12:18:12 <AnMaster> but it would match s<any char here>blah<same any char>blah<again same any char>
12:18:13 <AnMaster> :P
12:18:36 <AnMaster> ais523, see what I mean?
12:19:01 <ais523> err, but s doesn't allow any char nowadays
12:19:05 <AnMaster> ais523, =
12:19:05 <ais523> in fact, it never used to
12:19:06 <AnMaster> ?
12:19:10 <ais523> it didn't allow letters, for instance
12:19:26 <ais523> in perl6 it doesn't allow : or # either
12:19:26 <AnMaster> hm ok
12:19:31 <AnMaster> pretty sure sed does however
12:19:38 <ais523> because it's legal to mix quote operators
12:19:50 <AnMaster> ah hm no
12:19:54 <AnMaster> any non-letter
12:20:08 <AnMaster> wait no
12:20:09 <AnMaster> it does
12:20:19 <AnMaster> $ sed 'sxfooxbarx'
12:20:19 <AnMaster> foo
12:20:19 <AnMaster> bar
12:20:19 <AnMaster> ^C
12:20:32 <AnMaster> :)
12:21:01 <AnMaster> this may be clearer:
12:21:02 <AnMaster> $ sed 'sxfooxbarx' <<< foo
12:21:03 <AnMaster> bar
12:22:27 <ais523> what about NUL?
12:22:44 <AnMaster> $ sed $'s\0foo\0bar\0' <<< foo
12:22:45 <AnMaster> sed: -e expression #1, char 1: unterminated `s' command
12:22:45 <AnMaster> hah
12:22:49 <AnMaster> hm
12:23:13 <ais523> you can use $'' to interpolate backslash-0?
12:23:29 <AnMaster> actually I'm not sure bash will handle it correctly
12:23:30 * AnMaster checks
12:24:07 <AnMaster> $ sed -f /tmp/blah <<< foo
12:24:07 <AnMaster> sed: file /tmp/blah line 1: unterminated `s' command
12:24:20 -!- MigoMipo has quit (Read error: 110 (Connection timed out)).
12:24:21 <AnMaster> and there I'm sure the null bytes are there
12:24:35 <AnMaster> ais523, and yes $'' interprets like echo -e
12:25:00 <ais523> and, obviously, I seriously doubt newline works as a separator
12:25:03 <ais523> I'm less sure about tab
12:25:09 <AnMaster> obviously
12:25:23 <AnMaster> $ sed $'s\tfoo\tbar\t' <<< foo
12:25:23 <AnMaster> bar
12:25:25 <AnMaster> tab works
12:25:33 <AnMaster> so does space
12:28:01 <ais523> I wonder how backslash reacts to escape codes in the s\\\ itself
12:28:18 <AnMaster> try it yourself, I'm a bit preocupied
12:32:16 <ais523> ok
12:32:21 <ais523> I might try late
12:32:22 <ais523> *later
12:44:41 <AnMaster> ais523, seems \ doesn't work then
12:44:42 <AnMaster> just checked
12:46:27 <ais523> ah, ok
12:55:24 -!- asiekierka has joined.
12:55:27 <asiekierka> Hi
12:55:33 <asiekierka> I implemented Deadfish in C64 basic O_O
12:55:40 <asiekierka> and I think I didn't see this channel more crowded
12:56:12 <asiekierka> oh, 1/10th of you all is bots
12:56:20 <asiekierka> egobot, fungot, clog, thutubot
12:56:20 <fungot> asiekierka: which was the first thing that popped into my brain
12:56:32 <asiekierka> fungot: uh... clog?
12:56:33 <fungot> asiekierka: what will scheme42 be exactly? some kind of priorities between your rules. ha ha ha you changed some words.
12:56:42 <asiekierka> ...:(
12:57:09 <ais523> hi asiekierka
12:57:20 <ais523> also, it's often more crowded than this, you must be in a weird timezone
12:57:41 <asiekierka> GMT+1 is not weird
12:57:53 <asiekierka> but i'm not in the US, which has GMT-6 or whatever :P
12:58:14 <asiekierka> ais523: Did you check out DEADFISH 64?
12:58:18 <ais523> I saw it
12:58:23 <ais523> it looks like portable BASIC to me
12:58:28 <asiekierka> C64 Basic
12:58:33 <ais523> presumably it would work on other basic interps too, though
12:58:46 <asiekierka> probably
12:58:56 <ais523> that's like saying that a particular standard strict-C89 program is x86 C
12:59:10 <asiekierka> Well, I wrote it on a C64
12:59:15 <asiekierka> and only tested on a C64
12:59:19 <asiekierka> And it has a subset of Deadfish~, too
12:59:23 <ais523> ah, ok
12:59:59 <asiekierka> if you click the external link to the webpage of Deadfish 64 (on the bottom of the Deadfish page) you can see what features does it have
13:00:07 <asiekierka> The one in the implementations only implements basic deadfish
13:00:08 <asiekierka> :D
13:00:16 <asiekierka> and h
13:04:40 <ais523> what does h do?
13:05:07 * ais523 thinks it's an interesting comment on programmer psychology that deadfish has such appeal
13:08:15 <asiekierka> Halt
13:08:20 <asiekierka> see deadfish~
13:08:20 <asiekierka> :P
13:08:24 <asiekierka> and the dead64 webpage
13:08:29 -!- asiekierka has quit.
13:18:36 -!- MigoMipo_ has quit (Read error: 110 (Connection timed out)).
13:35:07 -!- ais523_ has joined.
13:53:56 -!- puzzlet has quit (Remote closed the connection).
13:54:12 -!- puzzlet has joined.
13:54:30 -!- ais523 has quit (Read error: 110 (Connection timed out)).
14:08:09 -!- oklopol has joined.
14:08:33 <oklopol> so i saw evilsort and decided to have some fun http://www.vjn.fi/pb/p114666125.txt
14:09:01 <oklopol> (not evilsort, my own verysort thingie, in case you don't read python or don't, for some reason, know evilsort)
14:09:57 <oklopol> it's competitive sorting, i just started writing code and that happened
14:10:08 <oklopol> seems to be pretty fast
14:10:27 <oklopol> i mean for a pessimal algo, which of course is a bad thing.
14:10:44 <oklopol> i mean it can easily sort lists of seven elements
14:10:48 -!- Gracenotes has quit (Remote closed the connection).
14:11:28 <oklopol> OH MY GOD I'M A GENIUS, wait a mo i know just what to do to fix that...
14:17:57 -!- okloduk has joined.
14:23:55 <ais523_> what is evilsort?
14:24:27 <WangZeDong> When you sort a list by asking Satan
14:25:22 <ais523_> wow, that's quite a sorting algorithm
14:25:40 <ais523_> is it O(n!), or worse?
14:25:55 <WangZeDong> It is O(0), but it will cost you YOUR SOUL
14:26:01 <WangZeDong> Or the program's soul.
14:26:03 <WangZeDong> I'm not sure
14:26:04 <ais523_> I was refering to verysort
14:26:06 -!- WangZeDong has changed nick to Slereah.
14:29:18 -!- oklofok has joined.
14:30:35 <oklofok> so umm
14:30:40 <oklofok> i fixed it
14:30:51 <oklofok> but i'm not sure it works, because i can only test up to lists of length 3.
14:31:21 <oklofok> http://www.vjn.fi/pb/p214351221.txt <<< sorry, even more okloisms here
14:31:58 <oklofok> but basically what it does is pick a list at random
14:32:03 <oklofok> and order the rest randomly
14:32:13 <oklofok> and then take an element from each list
14:32:37 <oklofok> and if the chosen list has that element, and the one to the right of it in the correct order, and all the others don't, then it gets a point.
14:33:01 <oklofok> best has the list with the best score, it's returned if it's sorted
14:33:22 <oklofok> what i wanted to add to evilsort was nondeterminism and not using polynomial space
14:34:42 <oklofok> i guess i also added much more pessimality, but i guess this one looks somewhat pessimal already, that is, kinda hard to justify making sure it beats everyone else before giving it a point, which is a bad thing.
14:35:18 <oklofok> but i guess you could call it a tournament to the death, but with the dead guys getting another chance as opponents.
14:37:55 <oklofok> btw it's actually somewhat nontrivial that there even always is a terminating shuffling, if the elements aren't all equal
14:37:57 <AnMaster> oklofok, sorting by genetic algorithm?
14:38:01 <AnMaster> or what do you mean
14:38:05 <oklofok> AnMaster: you could call it that
14:38:31 -!- oklopol has quit (Read error: 110 (Connection timed out)).
14:38:39 <AnMaster> hm
14:38:51 <oklofok> but genetic algos don't usually have explicit "fights"
14:38:55 <AnMaster> true
14:39:01 -!- okloduk has quit (Read error: 110 (Connection timed out)).
14:39:20 <oklofok> well, incrediblysort has more like a deathmatch than a fight, as i guess i explained already
14:39:30 <AnMaster> bbl
14:39:36 <oklofok> byes
14:40:35 <oklofok> btw not only doesn't a list of four elements get sorted in a reasonable time, it's not very likely that anyone will even get any points in a quadrillion years :D
14:41:00 <oklofok> the probability of getting a point is 1/2^(n!)
14:41:50 <oklofok> assuming elements not equal, if they can be equal, it's probably much easier
14:42:48 <oklofok> yep, it runs in an instant :<<<<<<
14:43:11 <oklofok> i should add like an epsilon, "to make it stable" :P
14:43:11 <oklofok> well, you probably have no idea what i'm talking about
14:43:24 <oklofok> pizza and family guy, as halfway mentioned ->
14:44:12 <oklofok> that is, epsilon is a bad term, more like.......... umm..... random skew
14:44:44 <oklofok> except not random or it wouldn't be stable
14:44:44 <oklofok> it's just i can't find another justification for it
14:57:50 -!- ais523_ has quit (Read error: 104 (Connection reset by peer)).
15:08:06 -!- nooga has joined.
15:08:20 -!- puzzlet has quit (Remote closed the connection).
15:08:24 -!- puzzlet has joined.
15:08:43 <nooga> anyone wrote something using GTK2?
15:13:44 -!- oklodok has joined.
15:29:39 -!- oklodok has quit (Read error: 60 (Operation timed out)).
15:30:23 <nooga> ...
15:36:23 -!- oklofok has quit (Read error: 110 (Connection timed out)).
15:47:47 <AnMaster> back
16:07:35 <GregorR> nooga: In the distant past.
16:12:08 <ehird> 10:31 ais523: there we have it, a less-than with no arguments
16:12:08 <ehird> 10:31 ais523: to be precise, a reducing less-than
16:12:24 <ehird> #;1> (<)
16:12:25 <ehird> #t
16:12:26 <ehird> #;2> (>)
16:12:28 <ehird> #t
16:12:30 <ehird> r5rs
16:12:32 <ehird> 05:04 pikhq: Oh, and also subversion of the free market.
16:12:34 <ehird> 05:04 pikhq: (as we are wont to do here)
16:12:36 <ehird> the free market sucks
16:12:48 <ehird> And now, back to assembling this hypothetical server for the VPSness.
16:13:59 <ehird> (in case anyone wasn't here yesterday: I've semi-come up with a semi-novel way to do VPSes fast and easily and now I'm toying with the idea of getting a dedi to sell them.)
16:15:09 <ehird> GregorR: what does moxie taste of
16:15:31 <GregorR> ehird: It's not comparable to any other soda, really.
16:15:42 <ehird> GregorR: compare it to something that isn't a soda then
16:16:01 <ehird> "For those without access to Moxie, the flavor can be approximated (and adjusted to taste) by adding Angostura bitters to root beer, or by mixing Campari with Coca-Cola, or by mixing a shot of Jägermeister in a glass of Coca-cola (6-8 oz.)."
16:16:06 <ehird> Uh. But of course!
16:16:28 <GregorR> Yeah, Idonno, can't help ya :P
16:16:40 <ehird> GregorR: Just give me some :-P
16:17:24 <GregorR> ehird: If you were in W. Lafayette, and I had some right now, I might :P
16:20:47 <ehird> GregorR: This online store is offering me six cans for $7.99 plus a probably inordinately huge amount of shipping to the UK, and I'm trying to decide whether my curiosity extends that far.
16:21:16 <GregorR> That would probably be some ultra-expensive shipping.
16:21:32 <GregorR> It's really good, I'd recommend that everyone try it, but it's not necessarily worth the price.
16:21:35 <ehird> "To obtain an accurate shipping amount, enter shipping postal code (US only) "
16:21:37 <ehird> GregorR: $infinity
16:21:46 <GregorR> lol
16:21:52 <ehird> Unless that means they just can't estimate it for non-US
16:24:29 -!- ais523 has joined.
16:25:04 <GregorR> ais523: Whar's the bf joust bundle for EgoBot? :P
16:25:05 <AnMaster> <ehird> 05:04 pikhq: Oh, and also subversion of the free market. <-- is the repo public?
16:25:22 <ehird> That was so unfunny it took me seconds to get it.
16:25:40 <GregorR> svn co https://svn.free-market.co.su/trunk
16:25:51 <AnMaster> GregorR, .su? Sudan?
16:25:55 <ehird> AnMaster: soviet union
16:25:55 <ais523> GregorR: well, put it this way
16:25:57 <AnMaster> aha
16:26:00 <ehird> But they don't exactly have a free market!
16:26:02 <ais523> I last woke up at 5pm yesterday
16:26:05 <ehird> Er, didn't.
16:26:12 <ais523> and went to University at 6am today because I couldn't sleep
16:26:21 <ehird> ais523: try Uberman's. It can't be as fucked up as your current schedule
16:26:22 <ais523> now I'm back closer to home, so I've been up for almost 24 hours
16:26:27 <ais523> and didn't sleep properly before then
16:26:29 <ehird> ( http://www.kuro5hin.org/story/2002/4/15/103358/720 )
16:26:33 <GregorR> ais523: And you used all that extra time to write a bf joust interp for EgoBot, right? ;)
16:26:49 <ais523> no, I used most of it wondering why time had apparently broken down into discrete steps
16:26:55 <ais523> I suspect I'm so tired I'm hallucinating
16:27:01 <AnMaster> uh uh
16:27:07 <ais523> either that, or I'm just seeing the fundamental cellular automaton behind the universe
16:27:18 <ehird> ais523: just make sure things don't turn into 2D
16:27:19 <AnMaster> ais523, in what way did you notice it
16:27:23 <ehird> or you might start moving diagonally
16:27:30 <ais523> AnMaster: as in, it was like the universe's frame-rate was rather low for some reason
16:27:31 <ehird> AnMaster: you can't describe that kind of stuff...
16:27:45 <AnMaster> ais523, heh
16:27:47 <ais523> you know, too low to give a decent illusion of reality
16:27:53 <AnMaster> right
16:28:00 <AnMaster> ais523, sure you weren't dreaming?
16:28:08 -!- oerjan has joined.
16:28:08 <ais523> and no, I've spent most of the time reading the Perl6 docs, I think they make more sense when sleep-deprived
16:28:20 <ais523> AnMaster: I was technically awake, but probably not awake enough to do anything in practice
16:28:21 <AnMaster> ais523, aha, That is the cause clearly.
16:28:42 <ais523> GregorR: I have a BF Joust interp that pits two programs against each other, and returns the result to stdout and to exit status
16:28:48 <ais523> what else would it need?
16:29:00 <AnMaster> oerjan, IWC was slightly amusing today.
16:29:04 <ais523> I was rather hoping the existing FYB scripts would fit to BF Joust well
16:29:07 <ehird> ais523: could you think inbetween the discrete steps? if not, that's some feat to notice it :P
16:29:12 <GregorR> ais523: Just an adaptation of FYB's report.c
16:29:17 <GregorR> ais523: And scmds/fyb
16:29:35 <ais523> link to EgoBot source?
16:29:40 <AnMaster> !info
16:29:41 <EgoBot> EgoBot is a bot for running programs in esoteric programming languages. If you'd like to add support for your language to EgoBot, check out the source via mercurial at https://codu.org/projects/egobot/hg/
16:29:43 <AnMaster> there
16:30:15 * ais523 installs Mercurial
16:30:36 <ais523> I may as well have all three of the leading DVCSes, plus the one I actually use
16:30:43 -!- coppro has joined.
16:31:05 <GregorR> (The scmds/fyb script is sort of stupid because it was written before fyb exited with a useful status code, so I had to parse the human-readable output :P )
16:31:10 <oerjan> AnMaster: slight *groan*
16:31:23 <AnMaster> oerjan, agreed
16:31:46 <AnMaster> GregorR, fyb?
16:31:56 <GregorR> http://codu.org/eso/fyb/README
16:31:58 <ehird> fuck yor brane.
16:32:01 <AnMaster> aha that language
16:32:02 <ehird> hm
16:32:02 <AnMaster> right
16:32:03 <ehird> fuk
16:32:53 <ais523> argh, Ubuntu, stop telling me at is broken, it's been broken for two versions now and I've reported the bug and there are lots of helpful comments indicating what's causing it and it should be a one-line fix and you still haven't fixed it
16:33:01 <AnMaster> oerjan, the last sqrt(-garfield) (from yesterday iirc?) was rather *groan* too IMO
16:33:43 <oerjan> well...
16:33:58 <ehird> ais523: why are you using ubuntu again? :P
16:34:17 <ais523> it's the OS that the computer came with
16:34:55 <ehird> "This comic has been produced by applying the identity function simultaneously to every pixel of the comic of 2002-09-05. "
16:34:56 <ehird> :-D
16:35:02 <ehird> ais523: is installing an OS hard?
16:35:17 <oerjan> very meta
16:35:23 <ais523> yes if you don't have enough backup media you trust to hand to back up all your files first
16:35:34 <ais523> besides, in theory this thing might still be in warranty
16:35:44 <ehird> ais523: oh, you don't have a /home partition?
16:35:49 <ehird> ;-)
16:35:54 <ehird> also, installing an OS breaks the warranty?
16:35:56 <ehird> what kind of shitty warranty is that
16:36:14 <ais523> it's standard excuse for more or less every major PC manufacturer ever
16:36:14 <oerjan> and mezzacotta today advocates killing children, i see
16:36:38 <ais523> actually, I have no idea what would happen if you tried wiping Mac OS X on a Mac, installing Windows/Linux as the only OS, and then asking them to fix a hardware problem
16:36:39 <ehird> ais523: so you buy a computer whose warranty involves not using it
16:36:42 <ehird> it's just like DRM!
16:36:53 <ais523> well, I don't plan to use the warranty
16:37:02 <ais523> half the hardware's malfunctioning prettily as it is
16:37:04 <ehird> also, I think as long as you didn't imply it was anything to do with windows they'd help
16:37:06 <ais523> the touchpad hasn't worked for years
16:37:07 <ehird> Boot Camp is supported
16:37:10 <ehird> although I'm not sure removing OS X is
16:37:20 <ehird> well
16:37:23 <ehird> you can boot into an OS X install CD
16:37:27 <ehird> and remove your OS X partition
16:37:33 <ehird> so for a tenuous definition of supported it is
16:37:45 <ehird> boot camp doesn't actually do anything but partition, heh
16:38:10 <ehird> really, "boot camp" is just the EFI's bios emulation
16:40:42 <GregorR> ais523, ehird: They'd "fix" it, but when it came back it'd only have OS X installed :P
16:41:01 <ehird> GregorR: I find that unlikely.
16:41:22 <ehird> At least, if you had Windows AND OS X they'd stay since that's officially supported, and I don't recall seeing removing OS X be classed as unsupported
16:42:14 <AnMaster> ehird, Is putting the computer in lava explicitly classed as unsupported?
16:42:30 <ehird> that's totally irrelevant
16:42:34 <AnMaster> ehird, just wondering
16:43:01 <ehird> I imagine that destroying the computer is classed as unsupported, though.
16:43:12 <AnMaster> right, that covers a lot of different cases.
16:43:38 <ehird> AnMaster: Lawyers wrote it. They have thought of everything ;-)
16:43:47 <AnMaster> yeah :/
16:44:39 <kerlo> You know...
16:44:41 <kerlo> http://xkcd.com/373/
16:44:57 <ehird> kerlo: how's that relevant to anything
16:45:01 <kerlo> That comic is just as true if you replace "Claims of Supernatural Powers" with "Theories of Physics".
16:45:30 <ehird> kerlo: it's called casual conversation, s/confirmed/seems to work in practice for blah blah balh/
16:45:45 -!- Judofyr has joined.
16:47:25 * AnMaster wonders how hard it would be to make a web browser using XeTeX as rendering backend.
16:47:45 <ehird> Hard. Also impractical.
16:47:56 <ehird> Maybe WebKit or Gecko let you pug in a backend. That'd be hard though so I doubt it.
16:47:58 <AnMaster> you mean: only static pages?
16:48:02 <GregorR> We're all about practicality here in #esoteric
16:48:04 <ehird> .......... no?
16:48:14 <ehird> It's just that TeX isn't anything like HTML+CSS.
16:48:21 <GregorR> +JS
16:48:31 <GregorR> +VBScript :P
16:48:36 <AnMaster> pages using JS would be hard
16:48:36 <ehird> Oh gawd.
16:48:44 <ehird> AnMaster: you'd just re-render it every time
16:48:49 <AnMaster> yeah.
16:48:51 <ehird> that's basically what browsers do, 'cept incrementally.
16:48:59 <AnMaster> what about forms?
16:49:01 <ehird> GregorR: I wrote some VBScript-using pages when I was young and idiotic.
16:49:04 <ehird> Despite not knowing VBScript or JS.
16:49:12 <ehird> AnMaster: Tough shit. It's just not suited.
16:49:12 <GregorR> ehird: Be ashamed.
16:49:22 <AnMaster> ehird, pdf forms duh!
16:49:23 <ais523> I tried writing in VBScript, but then gave up and went back to batch files
16:49:30 <ehird> AnMaster: That's not TeX.
16:49:48 <ais523> the only VBScript program I ever got working could be translated into bash as echo $(($1))
16:49:49 <AnMaster> ehird, can't you do it using some package for LaTeX?
16:49:50 <AnMaster> hm
16:49:55 <ais523> actually, the bash script is probably more featureful
16:50:40 <AnMaster> I wouldn't be surprised if something similar to hyperref (for pdf TOC and links in pdf) existed for pdf forms too
16:50:54 <ais523> just use JI!
16:50:58 <AnMaster> JI?
16:51:04 <ais523> WinHelp command
16:51:13 <AnMaster> ais523, what has that got to do with TeX?
16:51:16 <ais523> it's useful by WinHelp standards, but not by regular programming standards
16:51:21 <AnMaster> and
16:51:22 <ais523> and because you can use it to implement links
16:51:25 <AnMaster> what does it do in WinHelp
16:51:43 <AnMaster> oh, links? Is that what it does. OK
16:52:18 <ais523> it's basically a goto, but you need to specify the filename of the file to jump to
16:52:24 <ais523> even if it happens to be the one you're in at the time
16:56:20 <pikhq> AnMaster: PDF is extremely powerful, actually.
16:56:29 <pikhq> It's basically a superset of Postscript...
16:56:35 <pikhq> Which is Turing-complete.
16:56:35 <pikhq> ;)
16:57:05 <AnMaster> pikhq, iirc pdf is a subset, not a superset?
16:57:09 <ehird> Superset.
16:57:15 <AnMaster> mhm
16:57:17 <ehird> Preview.app translates .ps files to PDF before rendering.
16:57:24 <ehird> Although maybe PDF doesn't have the code bits.
16:57:27 <ehird> And it just renders it.
16:57:28 <ehird> Dunno.
16:57:49 <pikhq> PDF contains Postscript compiled to bytecode, some headers, and sometimes some other file sections.
16:58:02 <pikhq> (in essence)
16:58:05 <ehird> Wait, isn't it proprietary?
16:58:09 <ehird> Surely they couldn't use PS.
16:58:16 <AnMaster> from what I remember: pdf was originally a subset, but later on they added more features to pdf, so they are actually two intersecting formats, each having a few bits the other doesn't.
16:58:19 <pikhq> No...
16:58:26 <pikhq> Postscript is a standard designed by Adobe.
16:58:30 <AnMaster> but yes I might have been wrong
16:58:33 <AnMaster> yes,*
16:58:34 <pikhq> PDF is also a standard designed by Adobe.
16:59:10 <ais523> translating postscript to pdf is like running ick -F
16:59:15 <ehird> ... Adobe made Postscript?
16:59:19 <ehird> I actually didn't know.
16:59:19 <pikhq> Yes.
16:59:28 <AnMaster> ehird, odd you didn't know
16:59:30 <ehird> ... wait, yes I knew that.
16:59:38 <ehird> But on the other hand I didn't know it as a sort of relation, just as a standalone fact.
16:59:44 <ehird> Thus confusion.
16:59:46 <ehird> Hey.
16:59:48 <ehird> You're wrong
16:59:54 <ehird> hm wait
16:59:58 <ehird> nope
17:00:00 <ehird> you're right :-P
17:00:03 <pikhq> AnMaster, you're right. PDF and PS have a common subset.
17:00:06 <pikhq> XD
17:00:16 <AnMaster> pikhq, but both have features the other doesn't. Right
17:00:22 <AnMaster> is pdf tc too?
17:00:23 <ehird> Heh, an Apple printer was the first PS printer
17:00:28 <ais523> AnMaster: I don't think so
17:00:32 <AnMaster> aha
17:00:34 <pikhq> Still Turing-complete.
17:00:40 <pikhq> AnMaster: That's what a common subset means.
17:00:51 <ais523> I thought PDF was rather light on control structures
17:00:57 <ehird> The use of PostScript did not come cheap. At an introductory price of US$6,995, the LaserWriter was more expensive than PC laser printers of comparable print speed and quality. The LaserWriter's high cost was largely due to the extra processing power needed to run the PostScript interpreter. As it was a complete programming language, PostScript came saddled with the overhead of a complex software rasterizer program (running inside the printer). Powering
17:00:59 <AnMaster> ais523, "me too"
17:00:59 <ehird> the LaserWriter was a Motorola 68000 CPU running at 12 MHz, 512KB of workspace RAM, and a 1 MB framebuffer. At introduction, the LaserWriter had the most processing power in Apple's product line — more than an 8 MHz Macintosh.
17:01:04 <ehird> Just use a LaserWriter to do your computing!
17:01:07 <pikhq> Erm, wait...
17:01:07 <ehird> It's extra-powerful ;-)
17:01:14 <pikhq> the conditionals are removed from PDF.
17:01:21 <pikhq> *Why* are the conditionals removed from PDF?!?
17:01:21 <ehird> Damn the old macs were slow.
17:02:20 <AnMaster> ehird, that's still faster than the C64 afaik
17:02:24 <ehird> Duh.
17:02:29 <ehird> The C64 is ancient.
17:02:33 <ehird> AnMaster: but the c64 didn't have a nice GUI.
17:02:34 <AnMaster> true
17:02:40 <ehird> The C64 wasn't used for desktop publishing.
17:02:41 <AnMaster> just trying to add a perspective to this
17:02:55 <ehird> 8mhz is slow however you slice it :P
17:03:08 <AnMaster> by the standards back then Macs were not that slow.
17:03:20 <ehird> I know this.
17:03:29 <ehird> AnMaster: also, the NTSC c64 was 1.02MHz
17:03:33 <ehird> admittedly a different architechture
17:03:37 <ehird> but that's not massively slower
17:03:43 <AnMaster> ehird, and 8 mhz is faster than many embedded microcontrollers.
17:03:46 <AnMaster> even today
17:03:51 <ehird> Yes, but they're not desktop computers.
17:03:58 <ehird> They're embedded microcontrollers.
17:03:59 <AnMaster> that's true.
17:04:20 <ehird> I couldn't write a non-trivial program that ran under the constraints of the original Macintosh, probably
17:04:34 <AnMaster> ehird, in 20 years or so people will look at intel nehlam (spelling?) the same way.
17:04:40 <ehird> *nehalem
17:04:43 <ehird> And true enough.
17:04:47 <pikhq> I could.
17:04:48 <ehird> AnMaster: closer than 20 years
17:04:50 <ehird> moore's law
17:04:55 <AnMaster> meh
17:05:29 * pikhq is freaking crazy, and knows of some scary, scary ways to do multitasking on systems with low memory.
17:05:46 <ais523> I've done multitasking on a microcontroller without an OS before
17:05:57 <pikhq> ... Not as crazy as the guy who made a multitasking GUI on the C64, mind.
17:06:01 <AnMaster> ais523, what microcontroller?
17:06:01 <ais523> by hooking all the tasks but one into signal handlers
17:06:07 <ais523> AnMaster: dsPIC
17:06:39 <pikhq> ... Or the UNIX for C64, for that matter.
17:07:20 <AnMaster> ais523, what does the ds mean
17:07:32 <AnMaster> pikhq, there is unix on c64!?
17:07:36 <ais523> AnMaster: as in DSP
17:07:48 <AnMaster> aha
17:07:59 <AnMaster> ais523, that is a rather high end PIC right
17:08:01 <ais523> also, someone's likely to have ported ucLinux or something to the C64 by now
17:08:05 <ais523> probably just to claim they could
17:08:12 <ais523> AnMaster: higher enough it's technically something different
17:08:16 <ais523> it's 16-bit, for one thing
17:08:43 <AnMaster> luxury!
17:08:51 <ehird> http://hld.c64.org/poldi/lunix/lunix.html
17:08:52 <ehird> Lunix!
17:08:52 <pikhq> AnMaster: Lunix.
17:08:54 <ehird> For the c64.
17:08:56 <ehird> pikhq: snap
17:08:58 <pikhq> Written in assembly.
17:09:02 <pikhq> ehird: :)
17:09:03 <ehird> This just makes "Lunix" to mean "Linux" even funnier.
17:09:19 <ais523> yes
17:09:49 <pikhq> Contiki, though, is just freaking crazy.
17:10:12 <AnMaster> anyone got a link to Contiki. I remember reading about it some years ago
17:10:27 <pikhq> http://upload.wikimedia.org/wikipedia/en/5/5c/Contiki-C64.png
17:10:33 <pikhq> Wikipedia.
17:10:39 <AnMaster> official website?
17:10:47 <ehird> http://www.sics.se/contiki/
17:10:57 <AnMaster> .se!
17:11:46 <ais523> why do people keep linking to the images themselves on Wikipedia, not the image description page/
17:11:47 <AnMaster> I assume it needs some form of changed hardware to support network?
17:11:55 <ehird> ais523: because we don't like the UIcruft.
17:11:58 <ais523> it's like people are going out of their way to violate the attribution requirements of the image
17:12:00 <AnMaster> ais523, because that loads more slowly?
17:12:11 <AnMaster> ais523, and often it is scaled down
17:12:14 <ehird> almost all of the time the cruft around the image is worthless
17:12:17 <ehird> and yeah, scaled down
17:12:18 <AnMaster> so you HAVE to click the image to see what it means
17:12:27 <ehird> and feel free to sue me for not attributing
17:12:28 <AnMaster> and see the details
17:12:42 <ais523> ehird: I can't, it has to be the image's copyright holder who does that
17:12:50 <ehird> ais523: I'll wait here.
17:13:49 <AnMaster> ais523, there should be a stripped down format then. Just a minimal html page with no css, first a link to the image description page, then the image below in full size
17:13:57 <AnMaster> and everyone would be happy
17:14:14 <ehird> I wouldn't be, it's still cruft :-P
17:14:21 <ehird> For example, you can't do
17:14:23 <AnMaster> ehird, much *less* cruft though
17:14:23 <ehird> imageviewer url
17:14:29 <ehird> When it's an image we're linking to
17:14:30 <AnMaster> agreed
17:14:43 <ais523> ah, it's no good, I'm going home
17:14:46 <AnMaster> it should have same file name with .html instead of .png/.jpg/.svg/.whatever
17:14:49 <ais523> I'm too tired to think straight at all
17:14:50 <AnMaster> ais523, what is no good?
17:14:53 <AnMaster> ais523, ok cya
17:14:56 -!- ais523 has quit (Remote closed the connection).
17:15:04 <AnMaster> ehird, then you could just have http://upload.wikimedia.org/wikipedia/en/5/5c/Contiki-C64.html
17:15:15 <AnMaster> and it would be easy to change
17:15:17 <AnMaster> wait
17:15:19 <ehird> AnMaster: yes, but think of the plan 9 users
17:15:21 <ehird> they can't do
17:15:22 <AnMaster> make that .png.html
17:15:26 <AnMaster> ehird, why not
17:15:26 <ehird> hget url | plumb
17:15:31 <ehird> (I think that's the right invocation)
17:15:32 <AnMaster> hm
17:15:44 <ehird> AnMaster: more convincing:
17:15:51 <ehird> they can't right/middle click the link in IRC (I forget whic)
17:15:52 <ehird> h
17:15:52 <AnMaster> ehird, surely there is some text replace to strip .html off http://upload.wikimedia.org/wikipedia/en/5/5c/Contiki-C64.png.html
17:15:55 <ehird> and get their image viewer up
17:16:00 <AnMaster> ah
17:16:04 <AnMaster> fair enough
17:16:17 <AnMaster> but it would open in their browser instead
17:16:22 <AnMaster> would that be so bad
17:16:32 <pikhq> Surely they have sed.
17:16:32 <ehird> AnMaster: if they have one. plan 9 browsers suck. And yes, one tool for one job.
17:16:40 <ehird> pikhq: 17:15 ehird: they can't right/middle click the link in IRC (I forget whic)
17:16:44 <ehird> pikhq: lern2read
17:16:53 <pikhq> They can type!
17:17:01 <AnMaster> ehird, ok then, add a watermark to the picture. That is what is left then
17:17:05 <AnMaster> and that is horrible
17:17:11 <ehird> pikhq: so we waste people's time for no gain
17:17:12 <ehird> awesome
17:17:15 <ehird> AnMaster: or just continue doing what we do
17:17:22 <AnMaster> ehird, you could script the client to automatically do that for you for wikipedia links
17:17:23 * pikhq vejnas
17:17:25 <AnMaster> ehird, true we could
17:17:37 * ehird jkdsfha
17:19:24 <AnMaster> s|http://upload\.wikimedia\.org/(.+)\.([^.]+)\.html|http://upload\.wikimedia\.org/\1.\2|
17:19:27 <AnMaster> or something
17:21:13 <AnMaster> hm contiki is ported to other platforms than C64 is it?
17:21:55 <ehird> Who knows.
17:22:11 <AnMaster> http://www.sics.se/contiki/ doesn't mention C64 anywhere I can see
17:22:11 <ehird> It's a very technobabbly page.
17:22:33 <ehird> The Contiki Operating System - Home
17:22:33 <ehird> Highly portable, multitasking OS for low memory networked embedded systems; typical install is 2K RAM, 40K ROM; event-driven kernel, programs load and ...
17:22:35 <ehird> from googl
17:22:37 <ehird> e
17:22:47 <ehird> AnMaster: http://www.sics.se/contiki/perspective/run-the-commodore-64-version-of-contiki-anno-2004-in-your-browser.html
17:22:49 <ehird> Today Contiki is mostly known as an operating system for networked embedded systems. A few years ago, however, Contiki's primary claim to fame was its Commodore 64 port. With the help of JAC64, a Java-based C64 emulator developed by my colleague and fellow Contiki developer Joakim Eriksson, you can now experience the C64 port of Contiki 1.2-devel1 again, directly in your web browser! Click here to enjoy it - unfortunately without networking support at pr
17:22:50 <AnMaster> ehird, I checked about, and so on and it only talks about embedded chipsets and such
17:22:52 <ehird> esent.
17:23:00 <AnMaster> well hidden
17:23:02 <pikhq> Contiki is on a *lot* of platforms.
17:24:06 <nooga> ;]
17:46:09 <ehird> a
17:56:31 -!- oerjan has quit ("leaving").
17:58:05 -!- puzzlet_ has joined.
17:58:22 -!- nooga has quit (Read error: 104 (Connection reset by peer)).
17:58:51 -!- puzzlet has quit (Remote closed the connection).
17:59:24 <ehird> AnMaster: Hey. AMD have their own version of ICC-like stuff
17:59:28 <ehird> http://developer.amd.com/CPU/OPEN64/Pages/default.aspx
17:59:33 <AnMaster> mhm
17:59:49 <ehird> Try cfunge with it :P
18:00:59 <AnMaster> I will look at the url later. Atm I wouldn't want to browse anything, system is heavily loaded, generating a graph of the space usage under /home
18:02:06 <ehird> AnMaster: Er... how big is your /home?
18:02:14 <AnMaster> ehird, over 30 GB, why?
18:02:32 <ehird> So's mine but it takes less than one minute to list all the files and usages of them
18:02:44 <AnMaster> ehird, loading firefox at the same time as the disk is working so heavily would be insane.
18:03:00 <ehird> w3m :-)
18:03:21 <AnMaster> ehird, your computer is newer to begin with.
18:03:42 <ehird> AnMaster: it's a disk-bound operation
18:03:45 <ehird> I guess your disk might be slow
18:03:54 <AnMaster> ehird, it's SATA, not SATA 2
18:04:12 * ehird refers to floppies and HDs as disks but optical media as discs; I wonder why?
18:04:18 <AnMaster> and I have mostly lots of small files. Lots of directories
18:04:22 <ehird> It just feels right. "Disk is cheap", "Disc is cheap"
18:04:31 <ehird> "I'm ripping this disk", "I'm ripping this disc"
18:04:39 <ehird> "I got it off this floppy disk", "I got it off this floppy disc"
18:06:06 <AnMaster> trivia: sv:diskmaskin means en:dishwasher
18:06:50 <ehird> I got it off this floppy dish
18:08:27 <kerlo> The distinction I heard once and nowadays make myself: a disk is computer storage, a disc is a round thing.
18:08:44 <ehird> kerlo: HDs use discs.
18:08:55 <ehird> also, it's "Compact Disc"
18:08:57 <kerlo> A frisbee is a flying disc. A flash card is a disk. A CD or a hard drive platter is both a disc and a disk.
18:09:17 <AnMaster> sv:disk means en:dish as in dish washing, but not in the other meanings of dish
18:09:19 <ehird> I seem to use disk as a plural:
18:09:23 <ehird> Disk is cheap
18:09:39 <kerlo> If you're using "is", it's not a plural.
18:10:32 <AnMaster> en:dishware is sv:servis, but a dirty set of dishware, may very well be sv:disk
18:10:46 <AnMaster> actually I can't think of any exact corresponding word in English
18:11:52 <kerlo> Wiktionary essentially says "floppy disk, hard disk, compact disc: optical media are discs, other media are disks."
18:12:12 <ehird> That's what I use
18:12:20 <ehird> 18:09 kerlo: If you're using "is", it's not a plural.
18:12:21 <AnMaster> did both disk and disc existed in English before computers?
18:12:24 <ehird> but it's referring to multiple disks
18:12:27 <AnMaster> the words I mean
18:12:33 <ehird> AnMaster: Disc existed. Disk did not,
18:12:36 <ehird> s/,$/./
18:12:36 <AnMaster> ah
18:12:48 <AnMaster> so what is the origin of disk then
18:12:56 <ehird> Neologism, probably.
18:12:59 <kerlo> Or, to use an actual quote: "If the medium is optical, the variant disc is usually preferred . . . if referring to a physical drive or older media (3" or 5.25" diskettes) the k is used, but c is used for newer (optical based) media."
18:13:00 <pikhq> Technically, it's a floppy diskette, BTW. :p
18:13:12 <AnMaster> why not discette
18:13:22 <kerlo> "Disk" is from Greek, "disc" is from Latin.
18:13:27 <ehird> AnMaster: I don't think "cette" ever works.
18:13:30 -!- Sgeo has joined.
18:13:31 <ehird> I think that forces it to be a k.
18:13:32 <AnMaster> "discette" looks slightly French...
18:13:34 <kerlo> "Discette" would be pronounced wrong.
18:13:35 <ehird> So probably disk came from diskette.
18:13:41 <ehird> Where diskette comes from disc-ette.
18:13:42 <kerlo> Like "dissette".
18:13:50 <AnMaster> heh
18:14:14 <kerlo> In Spanish, "disc" + "ette" would be "disquette". But "ette" isn't a Spanish suffix.
18:14:41 <kerlo> "disc" + "ito" would probably be "disquito", though, and it would mean "little disc".
18:15:36 <AnMaster> "<kerlo> "Discette" would be pronounced wrong." <-- why then are there quite a few words in English that aren't pronounced as they are spelled. Since those exists, why would another such word hurt.
18:15:42 <kerlo> If the Spanish word for "disc" were "disc". It's actually "disco". The diminutive would still be "disquito", or possibly "disquecito" or possibly-possibly "discocito".
18:16:16 <kerlo> AnMaster: it's quite rare in English for a "c" to be pronounced the wrong way.
18:16:39 <AnMaster> that is true, but weird spellings aren't unusual
18:16:45 <AnMaster> "guitar" comes to mind for example.
18:17:08 <kerlo> But that's not a "c" that's being pronounced the wrong way. I think it's a copying of Spanish.
18:17:08 <ehird> the "gui" in guitar is distinctly spanish feeling
18:17:20 <AnMaster> ehird, yes it is probably an imported word
18:17:31 <kerlo> The Spanish pronunciation of "guitar" would be essentially the same.
18:17:51 <AnMaster> ehird, when said in English it sounds more like "gitar" iirc?
18:18:01 <ehird> AnMaster: Sort of.
18:18:12 <AnMaster> it is "gitarr" in Swedish btw.
18:19:40 <kerlo> "gitar", stressed on the second syllable, with a hard g and a short i.
18:19:49 <pikhq> "Disc" comes from the Latin "discus". Disk also.
18:19:50 <pikhq> ;)
18:20:35 <kerlo> According to Wiktionary, "disc" comes from "disque" which comes from "discus" which comes from "diskos", and "disk" comes directly from "diskos".
18:21:00 <pikhq> Hmm.
18:21:03 * pikhq shakes a fist at English
18:21:50 <kerlo> Instead of speaking English, we should just speak an anglicised amalgamation of Old French, Latin, and Ancient Greek.
18:22:25 <pikhq> So, you mean English.
18:23:06 <kerlo> English contains things that are not from any of those.
18:23:11 <ehird> mi.e ,Eli'at.xrd.
18:23:22 <ehird> I only remember that Lojban now.
18:23:42 <kerlo> I'm pretty sure "wife" is quite Germanic, for one.
18:23:48 <pikhq> (though the French influences in English are from Anglo-Norman, not Old French)
18:24:00 <kerlo> Wiktionary says that everything is from Old French.
18:24:02 <ehird> I wish Lojban had some sounds more suited to my name.
18:24:08 <ehird> Eli'at.xrd is not very Elliott Hird at all.
18:24:18 <ehird> It's more a-y than o-y, and my first name does not start with Bach's ch.
18:24:28 <ehird> er
18:24:29 <ehird> last name
18:24:50 <pikhq> Anglo-Norman, of course, being itself an amalgamation of Old French and some Germanic language...
18:25:13 <pikhq> (granted, the main Germanic influences on Norman are in its grammer)
18:25:55 <ehird> grammer
18:26:13 <pikhq> XD
18:26:21 <kerlo> ehird: you're spelling it kind of weirdly.
18:26:32 <pikhq> I manage to misspell that word, and only that word, often.
18:26:33 <kerlo> mi'e .eli,at.xrd.
18:26:34 <ehird> kerlo: It's what #lojban agreed on.
18:26:40 <ehird> kerlo: Oh. Right.
18:26:42 <ehird> Sorry.
18:26:46 <ehird> That's just a typographical oddity.
18:26:55 <ehird> I've forgotten Lojban, you see.
18:27:14 <kerlo> It seems "Elliott" would be .eli,yt., though.
18:27:15 <ehird> I used "mi'e .Eli,at. xrd.", says google.
18:27:39 <kerlo> Unless you actually pronounce it with a short o.
18:27:50 <kerlo> So that it kind of rhymes with "polyglot".
18:28:36 <ehird> It's time for a recording.
18:28:45 <kerlo> Cool.
18:28:48 * pikhq wants a Lojban programming language
18:29:19 <ehird> pikhq: Been there, tried that
18:29:26 <ehird> , failed.
18:29:31 <ehird> It's still natural language.
18:29:33 <kerlo> You can write Unlambda in Lojban.
18:29:38 <ehird> It just has an unambiguous grammar.
18:29:41 <pikhq> Seems like the grammar would be easy...
18:29:49 <pikhq> Getting sane semantics might be tricky.
18:29:56 <pikhq> ehird, it's a constructed language.
18:30:03 <ehird> Yes.
18:30:03 <ehird> I know.
18:30:09 <pikhq> Not a natural language. ;)
18:30:12 <ehird> But it's constructed by humans, and to be a language for humans.
18:30:18 <pikhq> Right.
18:30:18 <ehird> It's not a programming language or a formal language.
18:30:20 <ehird> It's a natural language.
18:30:27 <ehird> kerlo: http://filebin.ca/oceeca/eliatxrd.ogg
18:30:33 <ehird> Released under the Share and Enjoy! license.
18:30:35 <pikhq> A natural language is the opposite of a constructed language.
18:30:39 <ehird> The Share and Enjoy! License
18:30:41 <ehird> 1. Share and Enjoy!
18:31:01 <pikhq> ehird, are you saying that I should stick my head in a pig?
18:31:02 <kerlo> ``sk`sk = lo me sy be lo my ky bei lo me sy be lo ky
18:31:20 <kerlo> I think.
18:31:23 <ehird> kerlo: that's using lojban's predicate stuff, right?
18:31:36 <ehird> so if you say ```sii``sii, you'll crash the brains of Lojban speakers?
18:31:46 <ehird> pikhq: I missed the joke.
18:31:58 <kerlo> It's impossible to say anything of worth in just about any language without using predicate stuff.
18:32:04 <ehird> oh, wait
18:32:05 <pikhq> ehird: No, I'm doing a different one.
18:32:08 <ehird> a related line from h2g2?
18:32:13 <pikhq> Yes.
18:32:29 <ehird> Specific quotes from that book have a tendency to roll off me shortly after reading the whole thing.
18:32:32 * pikhq has that song stuck in his head now, dammit.
18:32:34 <ehird> kerlo: So, what did I say in that ogg?
18:32:35 <kerlo> English has the same predicate stuff. That Lojban is pretty much precisely the same as the English "the S of the K of the S of the K", except with little words specifying associativity.
18:32:44 <kerlo> ehird: I haven't listened to ityet.
18:32:47 <kerlo> ...it yet.
18:32:49 <ehird> ah
18:33:10 <kerlo> This is where you scold me for using Windows.
18:33:39 <ehird> kerlo, stop using a shitty operating system.
18:34:44 <kerlo> Would you like me to attempt to justify my use of Windows to you?
18:34:55 <ehird> kerlo: Yes, so I may laugh at you.
18:35:00 <kerlo> Okay.
18:35:27 <kerlo> As far as I remember, this is a complete list of things I've been unable to do under Windows: 1. Run Freenet reliably. 2. Play an OGG file.
18:36:35 <ehird> kerlo: That's not a good argument. You need to argue why you won't use Linux, a technically superior operating system, not why you keep using Windows.
18:37:00 <ehird> Or, y'know, OS X.
18:37:03 * pikhq notes that you also probably can't reliably play FLAC files
18:37:06 <ehird> Or any other operating system on the planet apart from DOS.
18:37:06 <kerlo> ...well, things I've been unable to do under Windows that I would expect to be able to do under Linux.
18:37:37 <kerlo> Sound doesn't work well under Linux. YouTube videos don't play acceptably.
18:37:42 <pikhq> ehird: I dunno, DOS seems at least better-designed.
18:37:46 <ehird> kerlo: Which Linux are we talking about here?
18:37:50 <kerlo> Ubuntu.
18:37:54 <ehird> Here's how you get YouTube videos working on Ubuntu:
18:38:01 <ehird> Accessories → Install/Remove.
18:38:02 <pikhq> kerlo: Sound works quite well under Linux, and I find YouTube works much nicer in Linux.
18:38:03 <ehird> Search "Flash".
18:38:04 <ehird> Tick Adobe flash.
18:38:05 <pikhq> youtube-dl and all that.
18:38:06 <ehird> Click apply.
18:38:09 <ehird> Refresh page.
18:38:13 <ehird> That Was Hard(TM).
18:38:37 * pikhq doesn't use the Flash player for YouTube, but that's just because mplayer is much better at playing videos
18:39:01 <kerlo> YouTube videos actually play better without Flash?
18:39:28 <ehird> kerlo: anyway, so, there's a refutation of the YouTube argument. If you're using a recent Linux (say with PulseAudio), there should be no sound problems either.
18:39:29 <pikhq> kerlo, what he suggests there is to *install* Flash.
18:39:31 <ehird> Any other arguments?
18:39:44 <pikhq> Ubuntu by default ships with a crappy partial implementation of Flash.
18:39:51 <ehird> No it doesn't, pikhq.
18:39:55 <ehird> It doesn't do any such thing.
18:40:01 <ehird> It ships without any flash plugin whatsoever.
18:40:05 <pikhq> Hmm.
18:40:10 <kerlo> I'm not used to operating systems under which "Add/Remove Programs" is capable of adding programs.
18:40:10 <pikhq> Must be thinking of Mandriva, then.
18:40:25 <ehird> kerlo: OK, so your new argument is "It's easier, I don't like that." :P
18:40:32 <pikhq> That's the normal way of installing stuff on Linux.
18:40:33 <pikhq> ;)
18:40:42 <kerlo> That wasn't a new argument, that was jsut a comment.
18:40:48 <ehird> I know.
18:40:51 <ehird> I was Joe, King.
18:40:53 <kerlo> See you in a moment, when I'm running Linux again.
18:41:06 <ehird> kerlo: that's one quick installer
18:41:31 <kerlo> It's not like I installed Linux in the past couple minutes.
18:41:44 <ehird> kerlo: what version of Ubuntu is it?
18:41:55 <ehird> If it's pre-pulseaudio, that may explain screwy sound.
18:42:06 <ehird> If you've installed a non-Adobe Flash, that would explain YouTube.
18:42:11 <kerlo> I don't recall. Probably the newest.
18:42:19 <ehird> 9.04
18:42:20 <ehird> ?
18:42:23 <kerlo> I have seen the PulseAudio thing.
18:42:25 <ehird> You installed it after April 2x?
18:45:59 <kerlo> So here we are now, in containers. And by "in containers", I mean "running Linux".
18:46:22 <kerlo> The version turns out to be 8.10.
18:47:01 * Sgeo became a reddit person
18:47:05 <kerlo> The sound is set to "Autodetect", not "PulseAudio Sound Server".
18:47:37 <ehird> kerlo: Don't change it.
18:48:12 <kerlo> When you say Accessories → Install/Remove, do you mean Administration → Synaptic Package Manager, by any chance?
18:48:23 <ehird> No.
18:48:27 <ehird> I mean Programs → Install/Remove.
18:48:56 <ehird> And if it's not there, you've messed it up somehow and should just reinstall to exorcise whatever demons are in that installation.
18:49:15 * kerlo tries Applications → Add/Remove
18:49:23 <ehird> Or that.
18:49:28 <ehird> I haven't used Ubuntu in a day or two.
18:49:39 <Sgeo> What does an asterisk next to e.g. "2 days ago" mean?
18:49:55 <ehird> Sgeo: comment edited.
18:50:03 <Sgeo> ah
18:50:06 <Sgeo> ty
18:50:42 <kerlo> Will "Macromedia Flash plugin" do?
18:50:49 <ehird> kerlo: Yes.
18:50:53 <ehird> Sgeo: Tips for keeping your sanity on reddit: unsubscribe to politics, news, worldnews, worldpolitics, atheism. Unless you like hearing about how awesome Obama is, how stupid Christians are, and how awesome Obama is (what do you mean "world").
18:52:07 <ehird> Or just read /r/{programming,science,technology} which is a good chunk of what's left :-P
18:53:22 <kerlo> Anyway, the "o" of "Elliott" there actually sounds a lot like a short "i".
18:53:35 <kerlo> Which means it's a schwa, which is y, not a short "o", which is a.
18:53:42 <ehird> kerlo: I suppose os.
18:53:43 <ehird> *so
18:53:59 <ehird> so .eli,yt.xrd.
18:54:01 <ehird> kerlo: what about xrd?
18:54:05 <ehird> That x is just so fake.
18:54:41 <kerlo> I don't think there's much you can do about that. I mean, you could make it .y'yd. or something.
18:54:54 <ehird> That's not very Hird
18:54:55 <kerlo> Well, .y'YD.
18:55:11 <ehird> kerlo: maybe .xird. is more accurate?
18:55:43 <kerlo> Probably not.
18:56:01 <kerlo> That's pretty much a long "e", after all.
18:56:08 * Sgeo wonders if ehird's comment will bring anyone into Agora
18:56:23 <ehird> Sgeo: probably not. stop stalking me :-P
18:56:40 <kerlo> Anyway, I have to go eat lunch. The sound problem still exists; it's not exclusive to YouTube, apparently. See you when I get back.
18:58:40 <kerlo> I was mistaken. See you when I get there.
18:58:51 <ehird> wat
18:59:22 <kerlo> And I guess I'll also see you before I leave.
18:59:33 <kerlo> It seems like buffer underruns, being slow and choppy.
18:59:47 <ehird> That seems very unlikely
18:59:51 <ehird> My suggestion: reinstall
18:59:55 <ehird> With 9.04
18:59:59 <kerlo> Mmkay.
19:01:04 <kerlo> I don't suppose there's a convenient "uninstall Ubuntu" thing I can use that will keep my home folder and Firefox's configuration.
19:01:28 <ehird> kerlo: Don't you have a flashdrive?
19:01:35 <ehird> cp -R ~ /media/flashdrive/home
19:01:39 <ehird> cp -R .firefox /media/flashdrive/ff
19:01:40 <ehird> or sth
19:01:58 <ehird> kerlo: I think ubuntu has an import thing but it's likely some of your settings are contributing to this
19:02:01 <kerlo> Well, it's only minimal stuff that I would have to do.
19:02:14 <ehird> ?
19:02:35 <kerlo> All my data resides elsewhere; I'd just have to make new symbolic links to it.
19:02:49 <ehird> Then go for that
19:02:53 * kerlo nods
19:14:06 <AnMaster> bbl, possibly night. (not feeling well)
19:16:25 <ehird> I could never sleep that early.
19:30:23 <comex> state is fun
19:31:04 <comex> how do I make this less ugly
19:31:07 <comex> http://pastie.org/private/er1czt3oce9nf7tuqcfpg
19:31:56 <comex> in particular it's way too polite
19:32:02 <ehird> by not using state unneccessarily
19:32:16 <ehird> and not using that fucked up "Wrap" type
19:32:25 <ehird> does that thing even fulfil the monad laws
19:32:25 <comex> though that's kinda similar to how the HTTP module works
19:32:57 <ehird> comex: isn't that the ((->) t) monad
19:33:03 <ehird> maybe
19:33:08 <comex> ehird: never heard of it
19:34:20 * comex looks at Gtk2Hs documentation
19:34:23 <comex> I want to see how real modules do it
19:34:41 <ehird> gtk2hs does it by being evil, comex.
19:34:49 <ehird> whatever you're trying to do is probably wrong
19:35:00 <comex> I want to make a GUI toolkit :p
19:35:25 <ehird> comex: you don't even know haskell properly, don't be stupid
19:36:58 <ehird> :p
19:37:54 * Sgeo is devising ways to torture norns
19:38:52 * Sgeo pokes ehird
19:38:59 <ehird> I am not a norn
19:40:35 <Sgeo> I just figured you'd have interest in this
19:40:46 <ehird> I do.
19:41:23 <comex> what about just declaring UIs functionally
19:41:36 <Sgeo> My plan is constantly injecting full Disappointment and Punishment into all the norns in the world
19:41:42 <ehird> been done, comex.
19:41:43 <comex> where the user defines a function blablastate -> UI
19:41:44 <Sgeo> And sustaining their lives
19:41:45 <ehird> I just suggest you learn hs first :P
19:41:47 <ehird> also
19:41:48 <ehird> that's not functional
19:41:53 <ehird> that's just a manual monad
19:41:56 <comex> more functional than gtk2hs
19:42:02 <ehird> no its not
19:42:07 <comex> yes, because
19:42:20 <Sgeo> They wouldn't actually be in pain, but it would probably cause permanent brain damage after a while
19:42:20 <comex> you would declare the ui as a big list or something
19:42:22 <ehird> no, it's just a manual monad
19:42:29 <comex> rather than by specifying operations to create it
19:42:57 <Sgeo> As the bits that tell it "Ok, when I'm hungry, I should eat" eventually die from basically being told "WRONG!"
19:43:09 <Sgeo> and just about everything rldr
19:43:11 <Sgeo> else
19:43:12 <comex> [Button, Button, Button] whatever
19:43:13 <comex> rather than
19:43:17 <comex> button < - buttonNew olol
19:43:27 -!- olsner has joined.
19:44:02 <ehird> Sgeo: Just give up the habit before Creatures 734723846823: Now They're Sentient
19:44:17 <comex> in other news
19:44:37 <comex> when I type :w on this remote file, the color goes away
19:44:58 <comex> I have to manually :syntax on
19:48:29 <Sgeo> Hm
19:48:46 <Sgeo> Maybe I should make a potion that, when eaten, causes the norn to have very violent dreams
19:49:10 <ehird> A song.
19:49:10 <ehird> "Mormons, mormons, mormons mormons mormons
19:49:12 <ehird> Mormons, mormons, morrrr-
19:49:13 <ehird> -mons, mormons, mormons mormons mormons
19:49:16 <ehird> Mormons,
19:49:18 <ehird> Mormons!"
19:49:19 <Sgeo> When the norn wakes up, no matter what (e.g. hunger, bored, horny), its dream will have taught the norn to hit norns
19:49:56 <ehird> Sgeo: Just make them reproduce all the time and die of overpopulation (does inbreeding have effects in Creatures?)
19:50:26 <Sgeo> I don't think overpopulation is a serious issue, except slowing down the computer
19:50:37 <Sgeo> As far as I'm aware, inbreeding has no effects
19:50:48 <ehird> Sgeo: What, creatures take up no space?
19:51:43 <Sgeo> Well, they'd feel crowded eventually
19:51:58 <ehird> Sgeo: So you can have infinite creatures in infinite space
19:51:59 <ehird> awesome
19:52:02 <Sgeo> Yes, they take up space, but except for the crowdedness drive, they wouldn't notice
19:52:03 <GregorR> Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon MUSLIM MUSLIM! A Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon Mormon MUSLIM MUSLIM
19:52:36 <ehird> GregorR: Obama! Non-natural-born citizeeeeeeeeeeeeeeeen
19:52:47 <ehird> a mormon mormon mormon mormon mormon mormon mormon, mormon mormon mormon MUSLIN MUSLIN
19:52:54 <ehird> ↑ Terrible
19:53:18 * GregorR lols at "muslin muslin"
20:03:01 <fizzie> ^choo mormon
20:03:01 <fungot> mormon ormon rmon mon on n
20:03:32 <GregorR> What's "choo"?
20:03:52 <fizzie> There were a couple of variants on the "echo" commands on fungot.
20:03:52 <fungot> fizzie: my hangman doesn't support unicode.
20:03:53 <ehird> ^choo A magical butt.
20:03:54 <fungot> A magical butt. magical butt. magical butt. agical butt. gical butt. ical butt. cal butt. al butt. l butt. butt. butt. utt. tt. t. .
20:03:58 <ehird> 20:03 fungot: fizzie: my hangman doesn't support unicode.
20:03:59 <fungot> ehird: but we're rebuilding anyway, since it makes some sense. but basically, it's riastradh's sketchings i'm filling out nicely...
20:03:59 <ehird> :DD
20:04:03 <ehird> wow
20:04:06 <ehird> it DOES make some sense
20:04:10 <ehird> fizzie: what did you do to fungot?!
20:04:10 <fungot> ehird: an alternative would be for. there was this http://www.sarg.ryerson.ca/dmason/ common/ fnord/ comments
20:04:17 <ehird> fungot: What alternative?
20:04:18 <fungot> ehird: applying ep1 to ep2 now.
20:04:26 <ehird> fungot: That sounds like something liable to cause an explosion.
20:04:27 <fungot> ehird: grrr... why doesn't ( cons ' a ' b
20:04:32 <GregorR> !addinterp c choo char buf[1024]; int i; fgets(buf, 1024, stdin); buf[strlen(buf)-1] = '\0'; for (i = 0; buf[i]; i++) printf("%s ", buf + i);
20:04:32 <EgoBot> There is already an interpreter for c!
20:04:37 <ehird> fungot: You're not cut out to be a Lisp programmer.
20:04:37 <GregorR> Err :P
20:04:41 <ehird> ...
20:04:41 <GregorR> !addinterp choo c char buf[1024]; int i; fgets(buf, 1024, stdin); buf[strlen(buf)-1] = '\0'; for (i = 0; buf[i]; i++) printf("%s ", buf + i);
20:04:42 <EgoBot> Interpreter choo installed.
20:04:45 <GregorR> !choo Hewwo
20:04:46 <ehird> It hates me :-(
20:04:46 <EgoBot> Hewwo ewwo wwo wo o
20:04:51 <ehird> !choo IM OKA LOTJOIER
20:04:52 <EgoBot> IM OKA LOTJOIER M OKA LOTJOIER OKA LOTJOIER OKA LOTJOIER KA LOTJOIER A LOTJOIER LOTJOIER LOTJOIER OTJOIER TJOIER JOIER OIER IER ER R
20:04:55 <fizzie> ^show choo
20:04:56 <fungot> >,[>,]+32[<]>[[.>]<[<]>[-]>]
20:05:13 <GregorR> !delinterp choo
20:05:14 <EgoBot> Interpreter choo deleted.
20:05:17 <GregorR> !addinterp choo bf >,[>,]+32[<]>[[.>]<[<]>[-]>]
20:05:17 <EgoBot> Interpreter choo installed.
20:05:21 <GregorR> !choo Hewwo
20:05:21 <EgoBot> Hewwo
20:05:25 <Sgeo> afk
20:05:26 <GregorR> >_>
20:05:34 <GregorR> Heh, input has a newline.
20:05:36 <GregorR> !delinterp choo
20:05:36 <EgoBot> Interpreter choo deleted.
20:05:40 <GregorR> !addinterp choo c char buf[1024]; int i; fgets(buf, 1024, stdin); buf[strlen(buf)-1] = '\0'; for (i = 0; buf[i]; i++) printf("%s ", buf + i);
20:05:40 <EgoBot> Interpreter choo installed.
20:05:48 <ehird> GregorR: '+32'
20:05:51 <ehird> That means 32 +s.
20:06:00 <GregorR> Oh :P
20:06:04 <ehird> !delinterp choo
20:06:04 <EgoBot> Interpreter choo deleted.
20:06:14 <ehird> !addinterp choo bf >,[>,]++++++++++++++++++++++++++++++++[<]>[[.>]<[<]>[-]>]
20:06:14 <EgoBot> Interpreter choo installed.
20:06:16 <ehird> !choo CHOO!
20:06:17 <EgoBot> CHOO!
20:06:19 <GregorR> No, 'ts still no good because EgoBot sends a newline.
20:06:21 <ehird> Ahem :P
20:06:29 <ehird> 20:06 EgoBot: HOO!
20:06:29 <ehird> 20:06 EgoBot: OO!
20:06:30 <ehird> 20:06 EgoBot: O!
20:06:58 <GregorR> Yeah, but that's still no good.
20:13:15 <ehird> \Ö/
20:13:46 <GregorR> !deilnterp choo
20:13:48 <GregorR> Err
20:13:51 <GregorR> !delinterp choo
20:13:51 <EgoBot> Interpreter choo deleted.
20:14:26 <GregorR> !addinterp choo bf >,[>,]<++++++++++++++++++++++[<]>[[.>]<[<]>[-]>]
20:14:26 <EgoBot> Interpreter choo installed.
20:14:30 <GregorR> !choo Hewwo
20:14:30 <EgoBot> Hewwo ewwo wwo wo o
20:14:42 <GregorR> What a useless thing :P
20:14:43 <GregorR> !show choo
20:14:44 <EgoBot> bf >,[>,]<++++++++++++++++++++++[<]>[[.>]<[<]>[-]>]
20:14:44 <ehird> !choo Dij fog agju ufdhaiug njkknfjks klefjw sdiof
20:14:45 <EgoBot> Dij fog agju ufdhaiug njkknfjks klefjw sdiof ij fog agju ufdhaiug njkknfjks klefjw sdiof j fog agju ufdhaiug njkknfjks klefjw sdiof fog agju ufdhaiug njkknfjks klefjw sdiof fog agju ufdhaiug njkknfjks klefjw sdiof og agju ufdhaiug njkknfjks klefjw sdiof g agju ufdhaiug njkknfjks klefjw sdiof agju ufdhaiug njkknfjks klefjw sdiof agju ufdhaiug njkknfjks klefjw sdiof gju ufdhaiug njkknfjks klefjw sdiof ju ufdhaiug njkknfjks klefjw sdiof u ufdhaiug njkk
20:17:10 <GregorR> !userinterps
20:17:10 <EgoBot> Installed user interpreters: bfbignum chiqrsx9p choo echo hello rot13 slashes yodawg
20:17:18 <GregorR> !show slashes
20:17:19 <EgoBot> perl #!/usr/bin/perl -w
20:17:31 <GregorR> Heh, I'm not going to get that output fully :P
20:18:07 <GregorR> Maybe I could make it ctcp send.
20:18:55 <GregorR> s/ctcp/dcc/
20:19:47 <ehird> GregorR: make it pastebin
20:20:14 <pikhq> Make it Codubin.
20:20:17 <pikhq> :p
20:20:34 <fizzie> Make it send it with smoke signals out of your chimney.
20:20:41 <GregorR> fizzie: PURRFECT
20:35:16 <kerlo> comex: it seems to me that the vast majority of your code there is unnecessary.
20:36:04 <kerlo> Do this instead:
20:36:24 <kerlo> data Sometype = SomeType Int Int Int deriving (Show, Eq)
20:36:46 <kerlo> j (SomeType _ _ c) = SomeType 5 9 c
20:36:54 <kerlo> k = j (SomeType 10 11 12)
20:36:58 <kerlo> (fin)
20:39:34 <kerlo> If you need a monad, it's data Wrap a = Wrap ((a, SomeType) -> SomeType), and already exists; it's called State SomeType.
20:39:57 -!- sebbu has joined.
20:40:23 <GregorR> Bleh, /me can't figure out how DCC CHAT is supposed to work.
20:42:25 * kerlo curses his terminal
20:42:37 <kerlo> g - a cursed terminal
20:42:48 * kerlo downloads PuTTY
20:43:40 <ehird> kerlo: I thought you were using linux
20:43:55 <GregorR> OK, so that's annoying. The IP needs to be in decimal form X_X
20:44:08 <GregorR> That is, one-decimal-number form.
20:44:13 <GregorR> The retarded form everybody forgets exists.
20:44:29 <kerlo> I am using Linux.
20:44:55 <kerlo> For sentimental reasons, I require an ssh client that does not send a username.
20:45:06 <kerlo> It's very nice to connect to an SSH server and be asked for a username.
20:45:20 -!- sebbu2 has quit (Read error: 60 (Operation timed out)).
20:46:23 <kerlo> Does EgoBot have a way to compose commands?
20:46:35 <ehird> kerlo: why download putty
20:46:38 <ehird> install it from the package manager
20:46:41 <ehird> add/remove
20:46:45 <kerlo> You can do that?
20:46:51 <pikhq> Yes.
20:46:54 <ehird> >_<
20:47:01 <kerlo> Hey, you can.
20:47:02 <ehird> THAT'S LIKE HALF OF THE WHOLE POINT OF USING LINUX!
20:47:04 <pikhq> Just about everything is in the package manager.
20:47:10 <ehird> YOU BARELY EVER INSTALL EVERYTHING MANUALLY! :P
20:47:17 <kerlo> Well, I knew that you could download just about everything using the package manager.
20:47:29 <kerlo> I just thought that PuTTY in particular was not available that way.
20:47:50 <ehird> Right. PuTTY is made of magical unicorns, which are impossible to stick into a .deb
20:48:51 <kerlo> No, I seemed to remember reading something along the lines of "nope, we don't make PuTTY for *NIX; do it yourself".
20:49:56 <ehird> That's why the distros make it themselves
20:50:35 <kerlo> That makes sense.
20:54:11 <GregorR> !bf http://esoteric.sange.fi/brainfuck/bf-source/prog/mandelbrot.b
20:54:13 <EgoBot> AAAAAAAAAAAAAAAABBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDEGFFEEEEDDDDDDCCCCCCCCCBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
20:54:46 <GregorR> Whoops :P
20:54:49 <GregorR> Forgot to update
20:55:07 <ehird> "Santa Clara (CA) – Yesterday, we learned that Intel has begun phasing out the Core i7 940 processor, today we are told that the Extreme version 965 will be retired this year as well. "
20:55:17 <ehird> WHAT THE FUCK ARE YOU DOING INTEL?!
20:55:36 <ehird> STOP IT :|
20:56:04 <Deewiant> Is there something wrong with phasing out first-gen processors?
20:56:17 <ehird> Deewiant: They were only released a few months ago, and I want one :-P
20:56:26 <ehird> I guess the 975 will be out sometime, though.
20:56:31 <Deewiant> Most likely they'll release replacements.
20:56:53 <Deewiant> It's not like they'll just say "nah, we're out of the high-end processor business, AMD can have that"
20:56:57 <ehird> Lawl
20:57:16 <ehird> Deewiant: Weeell, you have to go AMD if you want >8 cores.
20:57:39 <Deewiant> "High-end desktop"
20:57:42 <Deewiant> Sorry :-P
20:57:44 <ehird> Wait, I think the last-gen Xeons had a single 6 core chip.
20:58:02 <ehird> Deewiant: Yeah, I just picked up on it since I'm assembling such a system in my head :-P
20:58:09 <ehird> ... or in an editor window as the case may be.
20:58:33 <GregorR> !befunge98 mycology/mycology.b98
20:58:38 <GregorR> Errr
20:58:50 <GregorR> !befunge98 http://rage.kuonet.org/~anmaster/mycology.b98
20:58:51 <EgoBot> 0 1 2 3 4 5 6 7
20:59:00 <ehird> Whoo boy.
20:59:12 <GregorR> Uses DCC now :)
20:59:18 <GregorR> Works great.
20:59:27 <ehird> !befunge98 http://rage.kuonet.org/~anmaster/mycology.b98
20:59:28 <EgoBot> 0 1 2 3 4 5 6 7
20:59:29 <GregorR> And no limits other than <4K total data.
20:59:29 <Deewiant> !bf http://esoteric.sange.fi/brainfuck/bf-source/prog/mandelbrot.b
20:59:32 <EgoBot> AAAAAAAAAAAAAAAABBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDEGFFEEEEDDDDDDCCCCCCCCCBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
20:59:41 <GregorR> Still sends the first line to the channel though ;)
20:59:45 <ehird> GregorR: my client appears not to do dcc chat.
20:59:55 <GregorR> ehird: Wow, you have a reaaaaaaaally lame client :P
21:00:01 <ehird> Limechat.
21:00:05 <ehird> !bf http://esoteric.sange.fi/brainfuck/bf-source/prog/mandelbrot.b
21:00:08 <EgoBot> AAAAAAAAAAAAAAAABBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDEGFFEEEEDDDDDDCCCCCCCCCBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
21:00:09 <ehird> GregorR: Oh.
21:00:11 <ehird> GregorR: Hm.
21:00:19 <GregorR> ?
21:00:23 <Deewiant> GregorR: Does it wait until it's been accepted before it sends?
21:00:23 <ehird> GregorR: No, this is odd, it hasn't said the first line of my mycology invocation yet.
21:00:26 <Deewiant> I think I only got one line.
21:00:36 <ehird> GregorR: 21:00 CTCP-query unknown(DCC CHAT) from EgoBot : chat 1077849409 10054
21:00:36 <Deewiant> Since I had to look up the command to accept a DCC chat request :-P
21:00:49 <GregorR> Deewiant: There is no command to accept a DCC chat request.
21:01:06 <GregorR> ehird: Yeah, that's not gonna work :P
21:01:06 <Deewiant> In my client there is.
21:01:22 <GregorR> Deewiant: Well that's laem. It should still work though, it only sends once you've connected.
21:01:34 <Deewiant> http://en.wikipedia.org/wiki/Direct_Client-to-Client#DCC_CHAT
21:01:38 <Deewiant> There's a handshake.
21:01:41 * Sgeo hates 16-bit color
21:01:42 <ehird> GregorR: Just make it run a minimal HTTP server and proxy it from $SERVER, so if the program outputs multiple lines it goes:
21:01:44 <ehird> <EgoBot> first line
21:01:47 <Deewiant> !bf http://esoteric.sange.fi/brainfuck/bf-source/prog/mandelbrot.b
21:01:50 <EgoBot> AAAAAAAAAAAAAAAABBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDEGFFEEEEDDDDDDCCCCCCCCCBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
21:01:50 <ehird> <EgoBot> http://codu.org/egobot/snippets/342348
21:01:52 <GregorR> Deewiant: The handshake is "I send you DCC CHAT, you connect"
21:01:57 <ehird> GregorR: And then have people reload that to get more.
21:02:02 <Deewiant> Now I got more.
21:02:05 <ehird> Fun for everyone!
21:02:20 <Deewiant> But then the session got lost or something, half way through
21:02:24 <Deewiant> The 4K limit, mayhaps.
21:02:25 <GregorR> ehird: That would be so much more obnoxious.
21:02:36 <Deewiant> GregorR: Yeah, exactly, I have to accept the connection, that's what I meant.
21:02:39 <ehird> GregorR: How? It'd let other people view it, and not have their irc clients beep every 2 seconds.
21:02:52 <Deewiant> !bf http://esoteric.sange.fi/brainfuck/bf-source/prog/mandelbrot.b
21:02:55 <EgoBot> AAAAAAAAAAAAAAAABBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDEGFFEEEEDDDDDDCCCCCCCCCBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
21:02:55 <GregorR> ehird: Every 2 seconds? It sends everything INSTANTLY
21:03:11 <ehird> GregorR: My other reason, then.
21:03:24 <Deewiant> I only get one line, AAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDEEEFGIIGFFEEEDDDDDDDDCCCCCCCCCBBBBBBBBBBBBBBBBBBBBBBBBBB, if the chat wasn't already open
21:03:27 <ehird> PMADDUBSWMultiply and Add Packed Signed and Unsigned BytesTake the bytes in registers A and B, multiply them together, add pairs, signed-saturate and store. IE [a0 a1 a2 ...] pmaddubsw [b0 b1 b2 ...] = [satsw(a0b0+a1b1) satsw(a2b2+a3b3) ...]
21:03:32 <ehird> What an obvious operation.
21:03:55 <GregorR> Letting other people view it isn't compelling to me, that's really not the point, and I wanted to keep everything more-or-less in-IRC.
21:04:21 <GregorR> A combo would be nice, but a bit of a PITA.
21:04:21 <ehird> GregorR: If someone runs a command in a public channel, I would assume they're displaying something to the world. They get the first line displayed at least.
21:04:27 <ehird> If they don't want that why not just /msg the bot?
21:05:09 <GregorR> Well, right now because due to a bug that I haven't figured out, the bot doesn't accept commands over /msg :P
21:05:23 <ehird> :P
21:05:55 <GregorR> I don't think people are always, or even often, showing something to the world, they're usually pokin' around.
21:06:28 <ehird> Pokin' around's perfectly possible in /msg. Besides, if it's the fun sort of public pokin' around (innuendo not intended. Maybe.) then THE WORLD SHOULD SEE IT IN ALL IT'S GLOOOOOOOOORY
21:08:06 <GregorR> !bf http://esoteric.sange.fi/brainfuck/bf-source/prog/beer.b
21:08:07 <EgoBot> 99 Bottles of beer on the wall
21:08:23 <GregorR> Heh, it only got as far as 63 :P
21:09:33 <Sgeo> And my "immortal" norn died
21:09:36 <Sgeo> underwater
21:09:38 <fizzie> I wouldn't probably be in a very good speaking condition after `expr 99 - 63` beers either.
21:10:08 <ehird> Sgeo: lol
21:10:15 <Sgeo> It's not supposed to drown!
21:10:16 <ehird> Sgeo: make an immortal norn suicidal
21:10:22 <ehird> watch anguish
21:10:34 <Sgeo> I don't think norns can be made suicidal. Violent, but not suicidal
21:10:43 <GregorR> OK, I have to know WTF norns are :P
21:11:30 <Sgeo> http://en.wikipedia.org/wiki/Creatures_(artificial_life_program)
21:12:50 * Sgeo deactivates the Death by Low Energy gene
21:13:00 <GregorR> Huh
21:13:20 <Sgeo> And death by low ATP, but even without that gene, 0 ATP kills organs, I think
21:13:51 * Sgeo adds full energy to his ATP creation gene
21:15:03 <Sgeo> You sleep with the fishies now, tough guy
21:15:15 <GregorR> You do a good job of making it sound godawfully dull.
21:16:12 <GregorR> :P
21:16:21 <ehird> GregorR: He's not playing the game regularly.
21:16:26 <ehird> He's hax0ring the internal gene stuff.
21:16:32 <ehird> I don't think that's supported
21:16:36 <Sgeo> It is
21:16:43 <Sgeo> But it's not normal gameplay
21:16:44 <ehird> Well, it's not how you play the game regularly, at least.
21:16:47 <ehird> Yeah.
21:17:05 <GregorR> Ahhhhhhhhhhh, OK
21:18:31 <ehird> Who wants to write 8080 code?
21:18:38 <GregorR> WHO DOESN'T?
21:19:12 <ehird> What about 4004 code?
21:19:19 <ehird> 740 kHz.
21:20:44 <GregorR> This analogy is like a really bad analogy: It's not clever and it makes no sense.
21:21:03 <ehird> :D
21:21:04 <ehird> http://www.e4004.szyc.org/
21:21:42 <GregorR> SWEET!
21:21:52 <GregorR> Not as sweet as JSMIPS but still ;)
21:22:23 <ehird> GregorR: @\0
21:22:25 <ehird> An infinite loop.
21:22:29 <ehird> (That's 40 00, hexwise.)
21:23:09 <GregorR> * 4-Bit Parallel CPU With 46 Instructions
21:23:14 <ehird> Yep.
21:23:15 <GregorR> That's downright RISC ;)
21:24:10 <ehird> GregorR: A thought for you while I brb: ARMjs. From the Simple Gargantuan Gadgets (SGG) chip company; an early competitor to Ligence.
21:25:03 <GregorR> Wow, that tells me so little :P
21:26:17 <Sgeo> This might be considered torture: The norn will feel needs and make decisions like a regular norn, but will have a neurological issue that causes everything to come out as "hit norn"
21:26:31 <GregorR> lol
21:29:44 <Sgeo> Ok, my "hyperviolent" norn, instead of doing what I want, is having sex with the victim
21:30:05 <Sgeo> And things that the answer to all of life's problems is to go right
21:30:12 <Sgeo> And she fell asleep
21:30:13 <Sgeo> WTF
21:30:17 <Sgeo> Oh I know
21:30:26 <Sgeo> You die now
21:30:54 <pikhq> You are fucked up.
21:30:57 <GregorR> Hm
21:31:08 <Sgeo> I was trying to clear all other attempted actions, instead, I set them all to active
21:31:16 <Sgeo> pikhq, me?
21:31:53 <pikhq> Si.
21:32:36 <Sgeo> lol at the violence machine
21:33:55 <GregorR> Sgeo: Any information on whether openc2e is goodish?
21:33:59 <Sgeo> The violence machine is asleep
21:34:09 <Sgeo> GregorR, it's not usable for norns yet, I think
21:34:13 <Sgeo> It's been a while since I checked
21:34:32 <GregorR> So that makes it not usable with any of the games then, presumably :P
21:34:59 <Sgeo> I think you can get DS running without the norns in them
21:35:02 <Sgeo> But I'm not sure
21:35:04 <Sgeo> Ask in Sine
21:38:26 -!- kar8nga has joined.
21:41:14 <Sgeo> The norns walk around with frightened looks on their faces
21:41:17 <Sgeo> Scared of Ms. Violence
21:42:46 <Sgeo> "em like ms. violence"
21:42:47 <Sgeo> wtf
21:43:17 <GregorR> "Ms. Violence" :P
21:43:39 <Sgeo> I'm going to have to kill her
21:43:43 <Sgeo> She keeps falling asleep
21:44:51 * GregorR adds that to the "list of comments to repeat endlessly out of context"
21:45:02 -!- KingOfKarlsruhe has joined.
21:45:33 <Sgeo> She killed all the kids. The only other norn alive is near-immortal
21:46:00 <GregorR> Sounds like this was a really good decision on your part :P
21:46:16 <Sgeo> What decision?
21:46:17 <GregorR> Which game in the series are you playing? I think I may actually own Creatures 1 :P
21:46:23 <GregorR> Sgeo: Making Ms. Violence
21:46:23 <Sgeo> Docking Station
21:46:46 <Sgeo> She can't eat. She doesn't need to eat, but she's hungry
21:46:50 <Sgeo> Maybe I should fix that
21:47:00 <GregorR> Sgeo: I thought that was some kind of add-on (judging by Wikipedia), is that an actual (free??) game?
21:47:11 <Sgeo> GregorR, yes, it's an actual free game
21:47:18 <GregorR> Oh!
21:47:19 * GregorR downloads.
21:47:36 <Sgeo> It's also an add-on
21:47:40 <Sgeo> But C3 is optional
21:48:38 <ehird> 21:24 ehird: GregorR: A thought for you while I brb: ARMjs. From the Simple Gargantuan Gadgets (SGG) chip company; an early competitor to Ligence.
21:48:39 <ehird> 21:25 GregorR: Wow, that tells me so little :P
21:48:45 <ehird> Advanced→Simple
21:48:49 <ehird> Micro→Gargantuan
21:48:54 <ehird> Devices→Gadgets
21:48:56 <ehird> Intel→Ligence
21:49:04 <ehird> 21:43 Sgeo: I'm going to have to kill her
21:49:04 <ehird> 21:43 Sgeo: She keeps falling asleep
21:49:06 <ehird> lawl
21:49:13 <Sgeo> The thing is, she doesn't WANT to hit norns. She is neurologically forced to, but she doens't want to
21:49:22 <GregorR> Sgeo: Hah
21:49:31 -!- jix has joined.
21:49:31 <ehird> Sgeo: Do the same but with breeding.
21:49:38 <ehird> I predict a fucked up Norn family.
21:50:23 <kerlo> I find Creatures boring because of the potential for the creatures to become immortal.
21:51:15 <kerlo> And then evolution just stops.
21:51:30 <ehird> kerlo: Shouldn't you dislike the Singularity for the same reason?
21:52:37 <kerlo> I kind of do.
21:52:39 -!- tombom has joined.
21:57:30 <ehird> kerlo: With immortality, you just switch to upgrading in-place.
21:57:47 -!- puzzlet_ has quit (Read error: 60 (Operation timed out)).
21:57:51 -!- puzzlet has joined.
21:58:11 <kerlo> That doesn't happen in Creatures.
21:58:39 -!- kar8nga has quit (Remote closed the connection).
21:58:51 <Sgeo> ehird, making horny norns now
21:59:09 <ehird> kerlo: Creatures isn't the singularity :P
22:02:00 <Sgeo> They're going at it, and still no preg.. ok, there we go
22:04:21 <Sgeo> Ms. Violence disapproves of this family's antics
22:04:33 <ehird> haha, what's happening
22:06:28 <Sgeo> I just fixed the violence genome, the new, untiring Ms. Violence is about to be born
22:06:56 <kerlo> Well, I said "kind of".
22:08:14 <Sgeo> Ok, so adults aren't as fragile as children
22:08:31 <Sgeo> Even stupid adults trying to do the murderer
22:08:35 <GregorR> $ /usr/local/bin/dockingstation
22:08:35 <GregorR> dirname: missing operand
22:08:36 <GregorR> Blargh
22:08:45 <Sgeo> GregorR, there's some patch for that
22:09:16 <Sgeo> try http://sgeo.diagonalfish.net/creatures/ds.diff (no guarantees)
22:09:45 <Sgeo> ...and I somehow forgot that the superbreeders were immortals
22:09:47 -!- jix has quit ("PRYTA!").
22:10:46 <Sgeo> That's it, I had to kill them all
22:11:03 <Sgeo> I'm going to send the violent norns to RANDOM PEOPLE!
22:11:14 <ehird> " # Is the awk/ls magic portable? "
22:11:16 <ehird> evidently not!
22:11:52 <Sgeo> GregorR, is it working
22:12:28 <GregorR> Seems to be.
22:12:42 <M0ny> norns ? what does it mean ?
22:12:47 <GregorR> Gee, I can't log in :P
22:12:53 * GregorR goes to get food.
22:13:08 <Sgeo> GregorR, make an account
22:15:50 <Sgeo> ROFL at the fighting match
22:16:17 <Sgeo> They like eachother
22:16:40 <Sgeo> The girls are fighting the girls and the guys are fighting the guys
22:18:35 <Sgeo> The astro girl's dead
22:19:23 <Sgeo> This one is watching over the girl's corpse. Probably trying to kill it
22:20:23 <Sgeo> Should I feel guilty about this?
22:21:02 -!- puzzlet has quit (Remote closed the connection).
22:21:06 -!- puzzlet has joined.
22:23:33 <ehird> Sgeo: Are they alive?
22:23:57 <Sgeo> The norns that I sent to other random people, who don't realize their nature? Yes, when I sent them
22:24:19 <ehird> 22:20 Sgeo: Should I feel guilty about this?
22:24:35 <ehird> You shouldn't feel guilty about wrongdoing to things that aren't alive or valuable :-P
22:24:54 <Sgeo> But it could hurt the norns that others care about
22:25:00 <Sgeo> I don't care about them, but others might
22:25:13 <kerlo> Linux's market share isn't valuable! /me reboots into Windows.
22:25:14 <kerlo> :-P
22:28:57 <ehird> kerlo: lawl
22:29:03 <ehird> Sgeo: that's their problem.
22:29:05 <ehird> it's a game
22:36:48 <kerlo> It's not exactly a competitive game.
22:37:57 -!- tombom has quit ("Peace and Protection 4.22.2").
22:45:34 -!- BeholdMyGlory has quit (Remote closed the connection).
22:46:20 -!- iano has joined.
22:49:45 <GregorR> Sgeo: I already did make an account.
22:49:56 <Sgeo> Um, hm
22:50:01 <Sgeo> And you can't connect?
22:50:19 <Sgeo> Try renaming server.cfg in the directory storing DS
22:50:25 <Sgeo> Then restarting DS
22:51:26 -!- puzzlet has quit (Remote closed the connection).
22:51:31 -!- puzzlet has joined.
22:51:57 <Sgeo> AFK
23:07:51 <GregorR> Sgeo: Thanks for the obscenely violent Norn :P
23:08:14 <ehird> :-D
23:08:15 -!- Gracenotes has joined.
23:10:47 -!- coppro has quit ("The only thing I know is that I know nothing").
23:10:59 <Sgeo> GregorR, you received a norn from me?
23:12:03 <GregorR> Oh, I received a Norn from somebody, with you as the original breeder.
23:12:09 <GregorR> And it killed all my Norns.
23:12:12 <GregorR> It was pretty sweet.
23:12:29 <Sgeo> "You should stop warping that norn around. It's sick, and it hits other norns compulsively. Also you have seriously screwed up its DNA. It's a ridiculously fast-ager."
23:13:14 -!- coppro has joined.
23:13:33 <ehird> Sgeo: Do they not know you did it intentionally? :P
23:13:40 <ehird> Sgeo: Spread around the uberbreeder.
23:14:04 <Sgeo> I think the child of an uberbreeder and a normal norn might be deformed
23:14:13 <ehird> Sgeo: Excellent
23:14:20 <Sgeo> Well, not visibly deformed
23:14:32 <Sgeo> But might, say, be completely unable to do anything
23:14:38 <ehird> Do it
23:14:41 <Sgeo> Or might be part immortal, and part suspectible
23:14:51 <Sgeo> Also, it's not quite the best breedability yet
23:14:57 <ehird> Oh just do it
23:14:58 <ehird> I like havoc
23:15:22 <Sgeo> I want to improve the fertility first
23:15:53 <Sgeo> "Horny" is really the wrong word. They're not horny, they just compulsively do it
23:16:55 <pikhq> What game you guys playing?
23:17:03 <ehird> pikhq: Sgeo's breeding mutant Norms in Creatures.
23:17:07 <ehird> Well, engineering.
23:17:08 <pikhq> Hmm.
23:17:21 * pikhq has always wanted to try that game...
23:18:30 -!- FireFly has quit ("Later").
23:19:35 * Sgeo does stuff that should increase fertility
23:20:07 * pikhq discovers that it appears to be gratis
23:20:10 <GregorR> Sgeo: How do you send a Norn through the portal?
23:20:16 <Sgeo> Two ways
23:20:51 <Sgeo> Put it in containment, config the Containment Chamber, click the face of the norn in the bar above the CC, and clikc the green checkmark
23:21:00 <Sgeo> Or make a portal: There's a portal creator in that room
23:21:00 <GregorR> Ohhhhhhhhhh
23:21:01 -!- iano has quit.
23:21:20 <GregorR> I was using the portal creator, but I couldn't figure it out >_>
23:22:05 <Sgeo> Ok, this should be hyper breeding
23:22:14 <Sgeo> Actually, I should make the female's pregnancy go quicker
23:30:37 <Sgeo> so far, it still isn't um.. what's the equivelentof birth, but for eggs?
23:31:00 -!- oerjan has joined.
23:31:10 <Sgeo> Did she just give birth after I killed her?
23:31:32 <Sgeo> ^^calculated to have maximum disturbing effect on oerjan
23:31:36 <coppro> gestation?
23:31:59 <oerjan> Sgeo: it failed
23:32:41 <oerjan> although that may be because i had already changed to logreading, and so saw the preceding part immediately
23:33:23 <oerjan> afk
23:38:02 -!- M0ny has quit ("Read error: 182 (Connection reset by beer)").
23:38:15 <Sgeo> kisspop, dangit
23:40:40 <GregorR> Well, I'm bored with not effing up my Norns :P
23:40:57 <ehird> GregorR: Learn CAOS!~
23:41:01 <ehird> s/~//
23:41:07 <ehird> All commands are 4 alphanumerics long
23:41:12 <ehird> So they fit into a 32-bit word
23:41:14 -!- jix has joined.
23:41:14 <ehird> So they have a lookup table
23:41:22 <ehird> And also they have a goto you can return from instead of functions.
23:41:34 <Sgeo> ehird, this isn't CAOS that I'm doing
23:41:37 <ehird> It is a torturous language to torture Norms.
23:41:41 <Sgeo> This is the Genetics Kit
23:41:43 <ehird> Sgeo: Yeah, but CAOS is easier :P
23:42:04 <Sgeo> GregorR, Ctrl-Shift-C
23:42:16 <oerjan> <kerlo> In Spanish, "disc" + "ette" would be "disquette". But "ette" isn't a Spanish suffix.
23:42:29 <oerjan> i suspect it's from french, and does it the same way
23:42:32 <Sgeo> Then:
23:42:50 <Sgeo> enum 4 0 0 sway writ targ 0 1 0 2 0 3 0 4 next
23:42:58 <Sgeo> Check the amount of pain they're in
23:45:31 <Sgeo> Ultrabreeders, take 1 million
23:47:31 <Sgeo> Ah, the sound of continuous sex
23:48:11 <Sgeo> The lovers need to be separated in order for the egg to be laid :(
23:48:33 <ehird> 23:47 Sgeo: Ah, the sound of continuous sex
23:48:39 <ehird> GregorR: there's an out of context thingy for you
23:52:32 <GregorR> My impression of bash.org:
23:52:35 <GregorR> on fire brb
23:52:45 <ehird> :p
23:53:16 <ehird> GregorR:
23:53:16 <ehird> <tomfoolery> there's a small fire burning in my room
23:53:17 <ehird> <beretta> lemme guess im supposed to act suprised that you're telling us and not making any attempt to extinguish it, so i can submit it to bash where it will join the ranks of the other "SOMETHING CATOSTROPHIC HAPPENED SO I CAME TO TELL YOU GUYS ON IRC FIRST INSTEAD OF ATTEMPTING TO DEFUSE THE HOSTILE SITUATION" quotes that are grossly abundant, similar, and overrated. and despite a new one is submitted each week and only the location of the fire is alt
23:53:22 <ehird> ered, loyal viewers firmly believe it is a unique and hilarious quotation, pledging support in the form of unneccesary votes
23:53:25 <ehird> Bash quote 60469.
23:53:47 <ehird> Note that there's at least another digit on quotes nowadays.
23:53:50 <ehird> People just don't get the hint :P
23:57:25 <Sgeo> I think something's broken
23:58:47 * Sgeo pokes GregorR
←2009-05-08 2009-05-09 2009-05-10→ ↑2009 ↑all