00:00:58 <oerjan> i am not sure you could do it shorter than just writing them all out :P
00:01:39 <Sgeo> http://forum.world.st/cull-protocol-td1560122.html
00:02:03 <Sgeo> Is this sort of sentiment, that prettyness is better than actually working for more uses, a common one in the Smalltalk community?
00:02:06 <elliott> oerjan: no but it's the principle of the thing
00:02:21 <Sgeo> (The AXAnnouncement code breaks for more than a certain number of arguments)
00:02:51 <elliott> oerjan: I'm pretty sure that languages without some kind of self-modifying/macro facility produce inherently longer programs than ones without
00:03:05 <elliott> which I like to think is quite a deep revelation
00:03:18 <oerjan> for a certain minimal length...
00:03:55 <oerjan> although by kolmogorov complexity there's only an additive constant difference...
00:10:10 <elliott> oerjan: hmm is that necessarily so?
00:10:26 <elliott> oerjan: consider a language where every constant literal is unary
00:10:33 <oerjan> it occured to me it could be linear
00:10:40 <elliott> but you somehow can't parse strings into integers
00:10:48 <elliott> you can take strings as arguments to macros
00:10:54 <elliott> and they can be turned into code somehow
00:11:03 <elliott> but i guess that's specific to that language...
00:12:04 <elliott> oerjan: anyway you should concentrate on figuring out an elegant structure that's basically a list and a pointer within that list >:D
00:12:16 <elliott> (if the advance-the-pointer operation is automatically cyclic too that's even better I suppose...)
00:14:04 -!- Wamanuz4 has joined.
00:15:38 <oerjan> this is essentially a queue afaict. i thought we'd already discussed on a previous occasion using a zipper for that
00:15:58 <elliott> queues don't have a pointer to the first element do they
00:17:10 -!- Wamanuz3 has quit (Ping timeout: 246 seconds).
00:17:18 <oerjan> oh hm i misread the trace
00:17:28 <oerjan> (or rather didn't read much at all)
00:18:44 <crystal-cola> elliott: Consider a space/surface (the plane, the outline of a circle, the torus, klien bottle..) and pick two points on and think of every possible path between the two points.
00:19:37 <crystal-cola> elliott: two paths are /homotopy equivalent/ if you can continuously deform one into the other. So if you pick the same point twice on a torus, the path that goes through the hole once is not homotopy equivalent to the path that goes all the way around it.
00:20:45 <crystal-cola> Homotopy type theory seems to be about interpreting dependent types stuff as topological spaces and functions as continuous maps between spaces
00:21:25 <oerjan> elliott: i don't know about elegant but you could split the list into a few segments... one from L a bit rightward, one reversed from there until the pointer, one from the pointer a bit on, and one reversed at the end
00:22:03 <elliott> before pointer (in original order), pointer onwards cyclically (in original order)
00:22:58 <oerjan> elliott: um the whole point of my suggestion is that it's a couple of zippers that allows you to advance efficiently except when you hit the end
00:23:05 <oerjan> (when you have to rewind)
00:23:10 <elliott> crystal-cola: it makes as much sense as anything makes when i'm also listening to oerjan :D
00:23:17 <elliott> oerjan: well hitting the end is sort of a big thing in BCT...
00:23:33 <oerjan> elliott: the end here means end of segment duh
00:23:41 * Sgeo oohs at Teachables
00:25:31 -!- sebbu has quit (Read error: Connection reset by peer).
00:25:42 <oerjan> because what you _really_ want is a cyclic list with two zipper cursors.
00:25:54 <elliott> oerjan: do i really want two cursors?
00:26:05 <elliott> one to delete bits and cycle back
00:26:14 -!- sebbu has joined.
00:26:15 -!- sebbu has quit (Changing host).
00:26:15 -!- sebbu has joined.
00:26:16 <elliott> oerjan: is that what your couple of zippers provide?
00:26:23 <elliott> it just seems like it should be more elegant :P
00:26:48 <oerjan> well i'm not enough of an expert on zippers to know how to do more than one cursor elegantly
00:27:22 <elliott> maybe i'll just write it in C ;D
00:27:26 <oerjan> alternatively, you could use two Seq queues
00:27:44 <oerjan> one for L -> current, one for current -> R
00:28:05 <elliott> what is it with you and Seq
00:28:26 <oerjan> ...it's the only way i know of to do queues elegantly in haskell?
00:28:40 <crystal-cola> two paths are homotopy equivalent if ___________?
00:29:03 <oerjan> in fact what i said above is just two queues emulated with two list zippers
00:29:19 <elliott> hmm, wow, I think this is actually more elegant in C
00:29:30 <elliott> easier to do fairly elegantly
00:29:57 <crystal-cola> elliott: " The mistake is to start thinking of identity types as representing paths, but to keep trying to interpret Σ and Π as logical quantifiers"
00:32:14 <elliott> 08:31:51 <ais523> also I don't have a phone on me right now
00:32:14 <elliott> 08:31:54 <ais523> and also I don't own a phone
00:32:22 <elliott> i think i see your problem
00:36:41 <elliott> http://www.kde-look.org/CONTENT/content-pre2/54708-2.png senses Gregor lacks: smell, sight
00:36:48 <elliott> instead he has fnarf and... turgr
00:36:54 <oerjan> <ais523> and also I'm mute
00:37:21 <Gregor> elliott: The loss of support for KDE-LCARS is part of why KDE4 sucks so horribly :P
00:37:27 <oerjan> ais523 was dead the whole time
00:37:50 <elliott> Gregor: i never realised people could actually be born without any kind of taste before now ;D
00:38:10 <Gregor> LCARS is about efficiency!
00:38:17 <elliott> Gregor: omg I'm going to buy an iPad and make it look like that and go around horrifying Apple fans
00:38:24 <elliott> Hey check out my totally tricked out iPad dude
00:38:44 <Gregor> If you gave iPad an LCARS display, some people would pay SERIOUS money for dat shizzle.
00:39:00 <elliott> Gregor: Whereby some people is used to mean you.
00:39:12 <Gregor> More like "trekkies with more money than me"
00:39:27 <Gregor> Also, "trekkies who hate Apple less than me"
00:39:54 <elliott> Honestly, the iPad is pretty damn close to LCARS :P
00:40:06 <elliott> If it weren't for the typical Apple lockdown douchebaggery it'd be schweeet.
00:41:19 <pikhq> It'd work a bit better with actual tactile feedback.
00:41:42 <elliott> 10:04:13 --- join: oerjan (n=oerjan@hagbart.nvg.ntnu.no) joined #esoteric
00:41:43 <elliott> 10:05:05 * oerjan declares the optbot topic idea to be a strike of genius
00:41:48 <elliott> pikhq: did LCARS have that canonically?
00:42:06 <elliott> apart from typing, tactile feedback isn't that useful, though
00:42:16 <elliott> your mouse doesn't really have it (it clicks, sure, but it clicks regardless of whether you actually did anything)
00:42:43 <pikhq> It does make repetitive, *automatic* use of an interface possible.
00:43:15 <pikhq> Which it seems like you'd want for some of the tasks LCARS was depicted doing.
00:44:03 <pikhq> But for some other things, it's little more than a nicety.
00:45:06 <Gregor> All we need is a display that's touch sensitive, and can also adjust the height of individual pixels (or even just "cells") up or down a few millimeters.
00:45:07 <Gregor> The actual response could be produced entirely by software. This bit acts like a button because when you exert pressure on it, the software signals it to click.
00:46:49 <elliott> Gregor: Honestly the problem is that that's not enough.
00:46:56 <elliott> With keyboards, you can feel the keys _before_ you press them.
00:47:00 <elliott> That's not really possible with that system.
00:47:12 <elliott> I don't generally mis-hit a key ever.
00:47:21 <elliott> But my fingers sure do occasionally not get in the right place.
00:47:42 <Gregor> elliott: It would only have to have embossment between the "keys" to simulate everything necessary.
00:48:05 <elliott> Hmm, you mean keeping them up permanently?
00:48:19 <elliott> LCARS was totally flat though because durp durp Science Trek durp
00:48:23 <Gregor> I mean they're up whenever you're not pressing on them.
00:48:28 <Gregor> Well yeah, I'm not talking about LCARS any more :P
00:48:36 <Gregor> That's tactile feedback by MAGIC>
00:48:56 <elliott> Gregor: You misspelled SCIENCE.
00:49:59 <Gregor> But more to the point, they're up whenever you're not pressing them, and it's in "keyboard mode"
00:50:04 <elliott> oerjan: self-BCT visualisation might be a bit hard for rapidly growing patterns :P
00:50:13 <Gregor> Since the height is software-configured, it doesn't have to simulate a keyboard.
00:50:16 <elliott> Gregor: Problem is, it'd have to be more than a few mm.
00:50:28 <elliott> Gregor: Not even scissor-switches have /that/ little bumpiness.
00:50:52 <elliott> Gregor: ALSO, the software would need super good latency, because lord knows your fingers won't be kind to lag.
00:51:03 <Gregor> Oh yeah, it'd have to be CRAZYfast.
00:51:19 <elliott> Yeah, and the mechanics would have to be practically instant :P
00:51:21 <Gregor> But that's not infeasible so long as it's done right (which it won't be because ... well, software)
00:51:22 <pikhq> elliott: Which is to say that it would need by done by intelligent people.
00:51:29 <elliott> Otherwise there'd be no transition, it'd be "I'm touching this key" -> "Whoops there is now air below my finger"
00:51:35 <Gregor> I would think about 10mm total would be sufficient though ...
00:51:58 <elliott> Gregor: I dunno about that... scissor switch keyboards are fine, but they get away with it by requiring tons of force to press.
00:52:00 <pikhq> Sub-20ms is entirely doable, and sufficiently low that humans can't freaking notice.
00:52:05 <elliott> Which sort of "simulates" more tactile reaction than they have.
00:52:10 <elliott> pikhq: Yeah, except that it has to be CONTINUOUS.
00:52:19 <elliott> It has to move down by at LEAST one mm precision AS you press the key.
00:52:42 <pikhq> elliott: 20ms latency is perceived as "instant".
00:53:01 <elliott> We're talking instinctual here.
00:53:19 <Gregor> I'm inclined to agree with elliott, but I still think it's entirely doable.
00:53:30 <elliott> But don't expect to do it with Linux :P
00:53:30 <pikhq> Oh, right, may want to make that smaller still. What's the spinal cord-finger latency?
00:53:43 <elliott> It'd need some serious real-time operating system mojo.
00:53:50 <elliott> And ridiculously optimised standard button components :P
00:54:01 <elliott> In fact, some kind of hyper-parallel architecture might help, just dedicate one per button :P
00:54:08 <pikhq> elliott: It's definitely not non-zero.
00:54:20 <pikhq> Erm, definitely non-zero.
00:54:41 <elliott> Gregor: OK, let me clarify.
00:55:03 <elliott> Gregor: You can't do it with a stock Ubuntu configuration running on regular PC hardware :P
00:55:09 <pikhq> The display itself would probably need to be controlled by a dedicated microcontroller.
00:55:19 <elliott> (Linux by default is ridiculously configured anyway as far as desktops are concerned.)
00:55:31 <elliott> pikhq: Yep, but Gregor wants software-controlled buttons...
00:56:11 <Gregor> I want the location, size and function of buttons to be software-controlled.
00:56:11 <pikhq> elliott: Well, you could send configuration of that from the main system to the display over the connecting bus.
00:56:29 <Gregor> I see no reason why the actual response has to be controlled by the main CPU, though I also see no reason why it has to be hardware.
00:56:31 <elliott> Gregor: Oh, so it's OK for the actual depressing to be uncontrollable?
00:56:40 <elliott> Gregor: What if you just want a permanent emboss effect ;D
00:56:57 <elliott> Oh my god imagine CSS five with font-style: emboss.
00:57:05 <elliott> Then pages with white on white text, just it's embossed.
00:57:48 <crystal-cola> I wish they would make the web simpler instead of more complicated ;/
00:58:16 <Gregor> COMPLICATION IS ALWAYS THE SOLUTION
00:58:38 <crystal-cola> they probably play that on a loop to all the w3c folks
00:58:50 <elliott> crystal-cola: Define simpler :P
00:59:37 <elliott> oerjan: Hmm, maybe the self-BCT thing should just scale down lines if they get too long... that's ugly though.
01:00:23 <pikhq> crystal-cola: Step one to make the web simpler: start with Gopher.
01:01:08 <elliott> ENFILAAAAAAAADEEEEEEEEEEEEES
01:05:43 <elliott> oerjan: ouch, i just thought about a /// self-interp
01:08:22 -!- TeruFSX has quit (Quit: No Ping reply in 180 seconds.).
01:08:50 -!- TeruFSX has joined.
01:09:24 <oerjan> <elliott> Oh my god imagine CSS five with font-style: emboss. <-- no, font-style: crochet
01:15:59 <oerjan> http://giftrash.com/post/5008479548
01:16:11 <oerjan> (don't watch on a bad stomach)
01:17:16 <pikhq> It occurs to me that an aquaduct system would be a pretty awesome means of transport in Minecraft.
01:17:32 <elliott> pikhq: you mean just travelling along a stream?
01:17:38 <pikhq> Admittedly, not as fast/convenient as minecarts, but hey.
01:18:18 <pikhq> More resource-efficient.
01:18:45 <pikhq> Could, in fact, be done entirely with renewable resources.
01:19:43 <crystal-cola> I just mean setting up a 3D grid of cubes which you can render at a decent speed
01:19:52 <elliott> oerjan: argh bct also writes at the /end/
01:19:58 <crystal-cola> you must have to do something clever to make it render fast enough
01:20:08 <elliott> so you need the beginning, the end, and an advancing cyclic pointer within
01:20:18 <elliott> crystal-cola: not really? it's just opengl
01:20:19 <Sgeo> Well, that was an ugly hack
01:20:26 <elliott> crystal-cola: hardware does it all for you
01:20:27 <Sgeo> true ifTrue: [^true].
01:20:27 <pikhq> crystal-cola: Requires more creativity than programming-chops, really.
01:20:36 <oerjan> elliott: the beginning + end is also an advancing cyclic pointer so to speak
01:20:46 <pikhq> Presuming, of course, that you're not using an utterly sadistic language for the task.
01:21:14 <elliott> oerjan: if i didn't think it'd make such a pretty visualisation i'd stop coding right now ;D
01:21:39 -!- crystal-cola has quit (Quit: leaving).
01:22:07 <pikhq> If you're using C, then you need to actually have notable programming skill for a Minecraft-alike.
01:22:21 <pikhq> Just like for everything non-trivial.
01:25:20 <pikhq> The biospheres mod is approximately "awesome".
01:28:03 <Gregor> C: Best language for all tasks.
01:28:12 <elliott> Gregor: Yeaaaaaaaaaaaaaaaahno
01:30:32 <elliott> wow ok i hate c strinf handling so bad
01:31:09 <pikhq> Yeah, the API makes it damned difficult to just do *safely*.
01:31:31 <elliott> can i have the first toaster
01:32:43 <elliott> i know what i'll write it in PYTHON
01:32:47 <elliott> the best language for shitting yourself with
01:34:24 -!- augur has quit (Remote host closed the connection).
01:40:48 -!- BeholdMyGlory has quit (Remote host closed the connection).
01:40:49 <elliott> hmm, my self-bct interp is broken...
01:50:25 <elliott> this program isn't supposed to stop running
01:50:53 <oerjan> must be your evil streak
01:53:23 <elliott> self.pos = (self.pos + 1) % len(self.state)
01:53:23 <elliott> ZeroDivisionError: integer division or modulo by zero
01:53:26 <elliott> THIS PROGRAM IS NOT MEANT TO END DAMMIT
01:54:21 <elliott> but it's meant to take a long time
01:56:27 -!- augur has joined.
02:03:00 <elliott> oerjan: hm concatenating a BCT program with itself has no observable effects as far as execution goes, right?
02:04:59 <oerjan> an ordinary BCT program? no.
02:05:09 <elliott> oerjan: well i mean self-bct
02:05:39 <oerjan> well then it definitely matters yeah
02:17:56 -!- lament has quit (Quit: Lost terminal).
02:43:27 <pikhq> Seems that tar on this system does not interact nicely with LD_PRELOAD.
02:44:12 <pikhq> I get the feeling GNU tar is too clever for its own good.
02:47:07 -!- Sgeo has quit (Read error: Connection reset by peer).
02:48:01 -!- Sgeo has joined.
03:15:04 <oerjan> explicitly explain exploding explorers
03:17:04 <copumpkin> explicitly explain exciting exploding excrement explorers excluding excellent expletives
03:24:21 -!- Wamanuz4 has quit (Ping timeout: 260 seconds).
03:24:53 -!- Wamanuz4 has joined.
03:41:40 -!- augur has quit (Remote host closed the connection).
03:44:54 <pikhq> elliott: Tar not interacting with LD_PRELOAD.
03:45:05 <pikhq> elliott: But it's dynamically linked.
03:45:42 <pikhq> I tried making a tup rule using it. It got absolutely no information from the process.
03:47:46 <pikhq> Even if it *is* actually having the LD_PRELOAD'ed library work, it is still *definitely* being too clever for its own good.
03:51:15 -!- pikhq_ has joined.
03:53:54 <pikhq_> elliott: And I suppose tup doesn't intercept mmap?
03:54:09 <elliott> wait, mmap requires open()
03:54:10 -!- pikhq has quit (Ping timeout: 252 seconds).
03:54:19 <pikhq_> Oh, right, so it does.
04:01:30 <elliott> well it could use syscalls directly instead of going through libc :P
04:06:02 -!- augur has joined.
04:07:07 -!- oerjan has quit (Remote host closed the connection).
04:07:16 -!- oerjan has joined.
04:11:15 <pikhq_> I'm checking the source code, presently.
04:15:00 <pikhq_> It definitely goes through libc's open.
04:35:59 -!- TeruFSX has quit (Read error: Operation timed out).
04:45:06 -!- elliott has quit (Ping timeout: 240 seconds).
04:57:12 -!- oerjan has quit (Quit: Good night).
05:02:01 -!- quintopia has quit (Ping timeout: 250 seconds).
05:03:16 -!- quintopia has joined.
05:06:39 -!- aloril has quit (Ping timeout: 248 seconds).
05:20:37 -!- aloril has joined.
05:29:10 <micahjohnston> !slashes @so !slashes /not available/!slashes @so !slashes \/not available\/\//
05:31:25 <EgoBot> 0000******************
06:00:38 -!- quintopia has quit (Ping timeout: 240 seconds).
06:07:04 -!- quintopia has joined.
06:17:25 -!- Sgeo_ has joined.
06:18:44 -!- Sgeo has quit (Ping timeout: 250 seconds).
06:42:25 -!- copumpkin has changed nick to danp_.
06:42:41 -!- danp_ has changed nick to bambam.
06:49:36 -!- bambam has changed nick to copumpkin.
07:07:34 <pikhq_> http://www.youtube.com/watch?v=n-AbPav5E5M&feature=youtu.be This boggles the mind.
07:21:47 -!- pikhq_ has quit (Quit: Lost terminal).
07:57:59 -!- CakeProphet has joined.
08:00:32 <siracusa> How does !slashes work, what language is this?
08:13:05 -!- crystal-cola has joined.
08:16:46 -!- azaq23 has joined.
08:23:34 -!- CakeProphet has quit (Quit: Lost terminal).
08:24:12 <siracusa> !slashes /1/0@so !slashes //0//111
08:24:13 <EgoBot> @so !slashes @so !slashes @so !slashes
08:24:13 <lambdabot> !slashes @so !slashes @so !slashes not available
08:24:14 <EgoBot> @so !slashes @so !slashes not available
08:24:14 <lambdabot> !slashes @so !slashes not available not available
08:24:15 <EgoBot> @so !slashes not available not available
08:24:15 <lambdabot> !slashes not available not available not available
08:24:16 <EgoBot> not available not available not available
08:33:14 <crystal-cola> @so !slashes /not/1//available/1//1/@so !slashes/
08:33:15 <lambdabot> !slashes /not/1//available/1//1/@so !slashes/ not available
08:33:16 <EgoBot> @so !slashes @so !slashes
08:33:16 <lambdabot> !slashes @so !slashes not available
08:33:17 <EgoBot> @so !slashes not available
08:33:17 <lambdabot> !slashes not available not available
08:33:18 <EgoBot> not available not available
08:42:18 <siracusa> Not completely sure what I'm doing there :-)
08:44:15 <crystal-cola> is it possible to output every string with this language??
08:50:10 <EgoBot> Sorry, I have no help for slashes!
08:54:06 <crystal-cola> !slashes /s/\\\///b/\\\\//t/\s\h\s\b\b\b\s\s\s\k\s\b\b\b\b\s/tt
08:55:47 <crystal-cola> !slashes /t/\s\h\s\b\b\b\s\s\s\k\s\b\b\b\b\s//s/u//b/v//u/\\\///v/\\\\/tt
08:55:48 <EgoBot> /h/\\\///k/\\\\//h/\\\///k/\\\\/
08:56:09 <crystal-cola> how to make it print \s\h\s\b\b\b\s\s\s\k\s\b\b\b\b\s??
08:57:01 <crystal-cola> !slashes /q/\\\\/t/qsqhqsqbqbqbqsqsqsqkqsqbqbqbqbqs//s/u//b/v//u/\\\///v/\\\\/tt
09:01:48 -!- Wamanuz5 has joined.
09:04:32 -!- Wamanuz4 has quit (Ping timeout: 240 seconds).
09:05:29 <crystal-cola> if you have /s/blahblahblah/ how do produce "s"s
09:10:34 <crystal-cola> like if you have /s/xyz/ and x->a,y->b,z->c how do you produces xyzabc
09:33:19 -!- monqy has quit (Quit: hello).
09:53:23 -!- ais523 has joined.
10:21:29 -!- sebbu2 has joined.
10:21:30 -!- sebbu2 has quit (Changing host).
10:21:30 -!- sebbu2 has joined.
10:24:24 -!- sebbu has quit (Ping timeout: 240 seconds).
10:29:49 -!- BeholdMyGlory has joined.
10:46:40 <cheater2> amazing blog, search for "Assembly is the most powerful programming language": http://www.linuxjournal.com/article/7684?page=0,1
11:31:04 -!- azaq231 has joined.
11:33:12 -!- azaq23 has quit (Ping timeout: 260 seconds).
11:35:53 -!- FireFly has joined.
11:42:00 -!- azaq231 has quit (Ping timeout: 250 seconds).
11:56:24 <Vorpal> ais523, arguably vhdl > microcode then :D
12:01:04 -!- siracusa has quit (Ping timeout: 250 seconds).
12:02:40 -!- siracusa has joined.
12:12:04 -!- TeruFSX has joined.
12:20:33 <ais523> probably (<) > (>) would be a bit clearer
12:48:03 -!- Dentist[1] has joined.
12:49:33 <Dentist[1]> Free IRC Bouncers! irc://irc.bitsjointirc.net:6667/ZNC
12:49:35 <Dentist[1]> Free IRC Bouncers! irc://irc.bitsjointirc.net:6667/ZNC
12:49:35 -!- Dentist[1] has quit (Killed (idoru (Spam is off topic on freenode.))).
12:53:09 -!- BeholdMyGlory has quit (Remote host closed the connection).
12:55:46 -!- ais523 has quit (Remote host closed the connection).
12:58:03 -!- TeruFSX has quit (Ping timeout: 264 seconds).
12:59:36 -!- ais523 has joined.
13:01:35 <ais523> are you playing the stable version or the dev version?
13:04:01 <cheater2> i'm playing the aptitude version.
13:04:48 <ais523> that's the stable version
13:04:54 <cheater2> why - does it make such a difference?
13:05:01 <ais523> the only really user-noticeable difference between the two is a lot more levels
13:05:04 <ais523> but they changed most of the internals
13:05:10 <ais523> so new levels can't easily be added to the old version
13:05:33 <ais523> because the old level file format was awkward and rather hard to write clever things in
13:05:56 <cheater2> well, i just got to the rollercoaster level, and it was annoying, so i turned it off.
13:06:09 <ais523> you can skip levels you don't like or can't solve; I think everyone does that
13:06:30 <cheater2> yeah, but the fun threshold was passed
13:06:45 <cheater2> now i'm up to other things, such as rescuing data from my failed hdd
13:07:19 <cheater2> that is, rescue data from hard disk drives
13:07:29 -!- azaq23 has joined.
13:09:15 <ais523> cheater2: no, I just restored from backups
13:09:21 <cheater2> i wonder what the difference is between a "/" and a "-" in gnu ddrescue
13:09:27 <ais523> (I /have/ had hard drives fail on me, though)
13:09:35 <cheater2> '-' failed block bad-sector(s)
13:10:25 <cheater2> according to its info manual, it takes blocks which failed to read, and does something like bsp, trying to reduce the irrecoverable area as much as possible
13:10:46 <cheater2> but i'm not sure whether / or - are going to be reduced still, or if they're ones it's given up on
13:11:30 <cheater2> i think non-split is the ones it's going to do BSP on
13:11:50 <cheater2> out of a 460 GB file system, it reduced the error to only about 30 mb
13:11:58 <cheater2> i think it's nowhere near giving up now
13:12:55 <cheater2> after it totally gives up, i'll mount the file system and find out which files have bad sectors in them
13:13:18 <cheater2> usually it'll be system internals which can be replaced easily
13:13:33 <cheater2> or media files which can be redownloaded
13:13:54 <cheater2> afterwards i'll boot the OS and run debsums on it
13:14:10 <cheater2> hopefully finding only a few packages which fail, that i can reinstall
13:15:43 <ais523> cheater2: you have so much more a sensible attitude to a hard disk crash than Sgeo
13:19:03 <cheater2> ais523, in support of my current plan, do you know how to add hex numbers in awk?
13:19:23 <cheater2> i've got a file full of lines that name hex numbers, i just need to add them and output in decimal
13:19:41 <cheater2> i know awk handles hex literals, but it doesn't seem to handle hex input
13:20:56 <ais523> cheater2: I don't know awk
13:21:15 <ais523> you could use perl (awk compiles to it, and it can parse hex numbers using the "hex" builtin function)
13:21:20 <cheater2> how can you not know the most used esoteric programming language on earth!
13:21:44 <ais523> perl's probably more eso than awk (although not eso), and also more popular
13:22:19 <Deewiant> cheater2: gawk --non-decimal-data
13:24:16 -!- wareya_ has joined.
13:26:46 -!- wareya has quit (Read error: Operation timed out).
13:28:38 <cheater2> cat /tmp/gddrescue.log | grep '/' | awk --non-decimal-data 'BEGIN {a = 0} {print $2; a += $2} END {print a/1024/1024}'
13:29:01 <cheater2> well, not really *that* perfect, but still good.
13:31:01 <cheater2> i wish there was an application that let you display text in gnome's notification area on the panel
13:31:17 <cheater2> i remember searching for it a lot about 6 months ago, i should search again
13:32:41 <Deewiant> All variables are initialized to 0, that BEGIN is superfluous
13:33:15 <Deewiant> And you can match in awk too, put /\// in front of your print-+=-block
13:33:35 <cheater2> you know, this option you brought up surprised me, i'd expect this to be something that is handled inside the language, not when invoking the runtime
13:34:31 <Deewiant> IIRC that option is very much not recommended by the manual
13:34:48 <Deewiant> But it's the only way of doing it that I remember by heart
13:36:23 <cheater2> hmm.. if the thing is *splitting* bad blocks.. why would the sum *increase* in size?
13:36:50 <cheater2> i see it steadily growing from 13.0049 to nearly 14 by now
13:40:36 <cheater2> man watch is ridiculous underdocumentation.
14:39:12 <cheater2> even though the error size, as reported by ddrescue, is monotonically decaying
15:19:29 -!- sebbu has joined.
15:21:48 -!- crystal-cola has quit (Quit: leaving).
15:22:39 -!- sebbu2 has quit (Ping timeout: 264 seconds).
15:28:34 -!- sebbu has quit (Read error: Connection reset by peer).
15:28:59 -!- sebbu has joined.
15:28:59 -!- sebbu has quit (Changing host).
15:28:59 -!- sebbu has joined.
15:32:12 -!- Phantom_Hoover has joined.
15:33:02 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
15:38:30 -!- sebbu2 has joined.
15:38:31 -!- sebbu2 has quit (Changing host).
15:38:31 -!- sebbu2 has joined.
15:40:46 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
15:40:53 -!- clog_ has quit (Remote host closed the connection).
15:41:06 <micahjohnston> !slashes /9/0*********//8/0********//7/0*******//6/0******//5/0*****//4/0****//3/0***//2/0**//1/0*//*0/0**********//0//3
15:41:12 <micahjohnston> !slashes /9/0*********//8/0********//7/0*******//6/0******//5/0*****//4/0****//3/0***//2/0**//1/0*//*0/0**********//0//72
15:41:13 <EgoBot> ************************************************************************
15:41:30 -!- sebbu has quit (Ping timeout: 240 seconds).
15:41:32 <cheater2> Deewiant, thanks for your awk help earlier
15:42:00 <micahjohnston> !slashes /9/0*********//8/0********//7/0*******//6/0******//5/0*****//4/0****//3/0***//2/0**//1/0*//*0/0**********//0//10
16:05:11 -!- MigoMipo has joined.
16:06:14 -!- sebbu2 has quit (Read error: Connection reset by peer).
16:06:42 -!- sebbu has joined.
16:06:43 -!- sebbu has quit (Changing host).
16:06:43 -!- sebbu has joined.
16:14:28 -!- Phantom_Hoover has joined.
16:18:54 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
16:28:44 -!- BeholdMyGlory has joined.
16:36:55 -!- Kouta_ has joined.
16:58:38 -!- elliott has joined.
16:59:42 <elliott> 08:44:15: <crystal-cola> is it possible to output every string with this language??
16:59:42 <elliott> 08:44:20: <crystal-cola> I think some strings cannot be output
17:00:07 <elliott> 09:05:29: <crystal-cola> if you have /s/blahblahblah/ how do produce "s"s
17:00:14 <elliott> you can't, you have to find another way to structure hings
17:00:51 <elliott> 12:48:03: -!- Dentist[1] has joined #esoteric.
17:00:51 <elliott> 12:49:33: <Dentist[1]> Free IRC Bouncers! irc://irc.bitsjointirc.net:6667/ZNC
17:00:51 <elliott> 12:49:35: <Dentist[1]> Free IRC Bouncers! irc://irc.bitsjointirc.net:6667/ZNC
17:00:51 <elliott> 12:49:35: -!- Dentist[1] has quit (Killed (idoru (Spam is off topic on freenode.))).
17:00:56 <elliott> awesome i can't wait to get my free bouncer
17:01:32 <elliott> 13:15:43: <ais523> cheater2: you have so much more a sensible attitude to a hard disk crash than Sgeo
17:01:45 <elliott> ais523: how can a hard disk lose data just by sitting around broken for days IT MAKES NO SENSE I'll recover the data later
17:02:00 <ais523> by sitting around broken for days while you repeatedly try to start it up
17:02:21 <elliott> ais523: [proceeds to ignore you and then acts incredulously later when told that the data is likely unrecoverable]
17:05:32 <cheater2> ais523, so what did sgeo do with his hard drive?
17:05:36 -!- olsner has quit (Ping timeout: 240 seconds).
17:05:53 <ais523> cheater2: repeatedly tried to start it up, then left it for weeks
17:06:06 <Sgeo_> It was not inside a computer for weeks
17:06:10 <Sgeo_> If that's any help
17:06:23 -!- crystal-cola has joined.
17:06:30 <Sgeo_> But if it's not any help: It's now months
17:06:38 <elliott> youve lost all that valuable nothing
17:06:45 <cheater2> Sgeo_, did it show up in bios?
17:06:55 <cheater2> as in, was it found during POST?
17:07:01 <Sgeo_> cheater2, I don't remember, I think so
17:07:13 <cheater2> how many bad sectors did it have?
17:07:13 -!- olsner has joined.
17:07:33 <Sgeo_> I do remember this channel helping me figure out a dd to use
17:07:35 <cheater2> did it have your operating system on it?
17:07:42 <Sgeo_> But I don't have any other computer to actually do it with
17:07:57 <elliott> we told you exactly what to do
17:08:04 <elliott> you gave up after you realised it would take at least a day
17:08:10 <Sgeo_> Well, I have another computer. It's just it doesn't support the hard drive
17:08:17 <elliott> ask for help -> get help -> refuse to perform help -> repeat
17:08:37 <Sgeo_> When I get a HD .. thing, then I'll do it
17:08:38 <cheater2> Sgeo_, it would be fairly nice if you could answer :3
17:08:40 <olsner> ergh, linux does *not* do well in oom situations
17:08:50 <Sgeo_> cheater2, yes, my OS was on it
17:08:55 <elliott> You had your chance, the disk is totally fucked at this point, give up.
17:09:03 <cheater2> Sgeo_, did it boot up or at least begin to boot up?
17:09:48 <myndzi> it's weird, most of the hard drive crashes i've encountered in more recent years have been failures of the circuit board or something, not mechanical failures/bad sectors/whatever
17:09:56 <myndzi> i don't know why that should be
17:10:01 <cheater2> Sgeo_, did it show something to the effect "no system disk found" etc?
17:10:16 <Sgeo_> cheater2, this was months ago, I don't remember
17:10:21 <elliott> myndzi: in this case it's because sgeo's hands are fucking retarded and he dropped it
17:10:30 <cheater2> because if that's what it was, then you can probably recover 100% of your data
17:10:31 <elliott> because its really easy to drop a laptop you're holding
17:10:37 <elliott> especially if it's covered in butter
17:10:57 <myndzi> unfortunately the only time i tried there were a LOT of problems and the dude never called us back
17:11:10 <Sgeo_> In the meantime, this laptop has been dropped several times with no issues
17:11:14 <cheater2> oh if it's mechanically damaged it might be more difficult
17:11:16 <myndzi> yeah, he was hungry and ate it for lunch
17:11:25 <elliott> Sgeo_: wow would you please concentrate on not being a moron who drops things for no reason
17:11:28 <cheater2> but it's still possible you'd recover most of your data
17:11:30 <elliott> rather than selecting laptops based on their resilience to dropping
17:11:35 <myndzi> Sgeo_: yes, that just goes to show that dropping laptops is never going to have problem
17:11:37 <elliott> maybe itll be an incentive if your laptop breaks every few days
17:11:44 <myndzi> get yourself a toughbook
17:11:46 <cheater2> what's elliott's problem? not taken the pills today?
17:11:49 <myndzi> then you can drop it all you like
17:12:02 <elliott> myndzi: no Sgeo_ lives on top of a gigantic mesa
17:12:05 <myndzi> drive over it, leave it outside in puddles, etc.
17:12:06 <elliott> with gigantic holes everywhere
17:12:18 <elliott> whoops there goes another one down the hole
17:12:22 <myndzi> i think they dropped a toughbook in testing from some fairly high buildings :P
17:12:52 <myndzi> oh, apparently they say 6 feet
17:12:55 <elliott> myndzi: were talking miles high here
17:13:01 <cheater2> but the lenovos are fairly resilient to droppage too
17:13:04 <myndzi> but i wanna say they were dropping from like 3 stories or 6
17:13:37 <myndzi> i know a military dude who's used toughbooks in the field, he says they're amazing
17:13:44 <elliott> ok wow my bct interpreter is a bit slow i guess
17:13:48 <myndzi> except he doesn't think the new ones are good
17:15:12 <elliott> yah ok this program is only meant to last 43074 steps
17:15:31 <elliott> the test program was wrong
17:16:53 <elliott> woo this is going to be like a hundred megabyte trace
17:17:14 <elliott> hey does anyone know how to turn a file with lines of zeros and ones
17:17:18 <crystal-cola> I asked a question in math software if anyone knows software to solve this problem.. but it's just this guy saying he has years of experience in problems like this and I should learn linear algebra
17:17:32 <elliott> there's that text to pbm thing...
17:21:50 <cheater2> Sgeo_, if you still want to recover that stuff, i could walk you through it
17:22:11 <Sgeo_> cheater2, I think I know what to do
17:22:20 <Sgeo_> It's just a matter of getting the hardware to do it
17:22:32 <elliott> lol it literally just renders the text
17:24:32 <Sgeo_> I don't remember offhand
17:32:30 <elliott> maybe ill just use pygame or whatever
17:35:36 <olsner> use sed to convert your file into an xpm
17:35:46 <ais523> yay, just got up to the top 100 in the world on this Pokémon simulator (playing the "official" Pokémon Company rules, not the fanmade ones)
17:36:07 <ais523> although it's a really luck-based format, so it's hard to see just how good individual people are
17:36:18 <elliott> olsner: i don't really know the xpm format
17:36:23 <elliott> i guess i could learn it OH
17:37:08 <elliott> i'll need to pad out all lines though
17:37:15 <elliott> you know what pygame will be easier
17:37:18 <myndzi> congrats on your pokeymans i guess?
17:37:32 <myndzi> there would be fanmade rules, are they totally broken or just somewhat? :P
17:38:32 <elliott> ais523: condolences on your potemkins
17:47:16 -!- zzo38 has joined.
17:49:57 <elliott> hmm, the results from this bct visualiser aren't so interesting so far
17:55:32 <elliott> oh now this is interesting
17:55:54 <elliott> it barely looks like it's doing anything at all
18:04:29 -!- monqy has joined.
18:39:05 -!- calamari has joined.
18:54:13 -!- sebbu has quit (Read error: Connection reset by peer).
18:54:41 -!- sebbu has joined.
18:54:41 -!- sebbu has quit (Changing host).
18:54:41 -!- sebbu has joined.
19:24:30 -!- calamari has quit (Ping timeout: 240 seconds).
19:29:23 -!- oerjan has joined.
19:29:41 <elliott> i wrote a self-bct visualisation program but it is a bit boring?
19:30:40 <oerjan> ...how do you make something like that not boring, anyway
19:30:53 <elliott> oerjan: well wolfram CAs tend to be quite pretty?
19:31:00 <elliott> this not as much, it's kind of cool though
19:31:31 <elliott> in fact it looks pretty much like keymaker's clue :D http://esolangs.org/w/images/1/1e/Clue-110data.png
19:31:37 <oerjan> i think this is more like a TM in that it only changes in a couple places at a tie
19:31:48 <elliott> oerjan: it literally only changes in one place at a time
19:31:55 <elliott> it either appends a bit or deletes the first bit
19:32:01 <elliott> that's the only change you'll ever see
19:32:45 <oerjan> ok "a couple places" applies to a little longer time than one generation
19:33:06 <elliott> i think if you rendered it in a sort of DNAy spiral way it might look pretty?
19:34:58 <elliott> oerjan's just sitting on his proof that selfbct is tc
19:35:03 <elliott> sitting on it and cackling
19:35:57 <oerjan> elliott has such a lively imagination
19:36:53 -!- calamari has joined.
19:38:16 <crystal-cola> Does anyone know how to solve this problem? I have integer rectangle matrix A and want to find Ax = 0
19:38:45 <crystal-cola> can Gaussian elimination do it? I don't have code for that :/
19:40:03 <oerjan> yes, gaussian elimination preserves rationality so you should get a rational basis
19:41:53 <zzo38> I am trying to write the TeX file for recording D&D (3.5e) games
19:42:25 <cheater2> you know what Ker A is, right?
19:42:41 <elliott> oerjan: hmm, maybe I should graph length of data string over time or something
19:43:10 <oerjan> i'm sure there are lots of implementations. my determinant code uses it but it's a bit too intertwined
19:43:37 <elliott> crystal-cola: want to play with my self-bct stuff? :P
19:44:43 <cheater2> is it for a 3d computer graphics problem?
19:45:13 <crystal-cola> im trying to generate a number theoretically interesting polynomial
19:45:13 <cheater2> no you're not the king and queen of cheese
19:46:38 <crystal-cola> (that's why I need rationals as opposed to numerical)
19:46:41 <cheater2> if A: V->W, then take the basis of V
19:47:07 <crystal-cola> cheater2: I would really like code that solves it
19:47:09 <cheater2> then W\span{AB} is going to be Ker A
19:47:20 <cheater2> i would really like you to caress my nuts
19:47:30 <cheater2> yes, that's why it has a kernel
19:48:31 <cheater2> actually no, it's not why it has a kernel
19:48:54 <cheater2> just transform the basis of V by A and see what you do not get
19:48:55 <oerjan> afair basically you append an identity matrix to A, then reduce to row-echelon form. the final rows where the part from A has become 0 give the x coordinates for a kernel basis in the appended part
19:49:23 <cheater2> oerjan, your solution isn't so easy to implement in code 'tho
19:49:56 <cheater2> because you can take numpy and whip up what i mentioned right away
19:50:27 <oerjan> you did remember he needed _rationals_?
19:50:52 <oerjan> so unless numpy can do exact arithmetic, it need not apply
19:51:09 <cheater2> rationals are fine, just define __mul__
19:51:31 <cheater2> also i think it might be able to, oerjan
19:51:43 -!- Kouta_ has quit (Quit: Leaving).
19:51:49 <elliott> import http://foo.blogspot.com/...
19:52:08 <oerjan> hm actually you need to reduce columns not rows maybe
19:52:15 <elliott> oerjan: i think cheater2 is wrong, i don't think numpy works with arbitrary objects
19:52:28 <elliott> especially since a large amount of the point is to have tight C loops...
19:52:32 <elliott> which calling into python would break
19:53:30 <cheater2> just multiply all entries so that everything will be integers
19:55:55 <oerjan> <cheater2> then W\span{AB} is going to be Ker A <-- i don't think that is quite right. i vaguely recall the correct theorem involves transposing the matrices somewhere
19:58:29 <cheater2> oerjan, B is a set, not a matrix.
19:58:54 <cheater2> \mathbb{B} is the usual denotation for the basis of a vector space.
19:59:22 <cheater2> think about it.. the range of A is defined by the basis of V
19:59:24 <oerjan> and what do you mean by W\ anyway
19:59:57 <oerjan> in that case you're _really_ wrong
20:00:51 <cheater2> you'd need to A^-1 that stuff, wouldn't you
20:01:26 <oerjan> which rather defeats the purpose
20:01:30 <cheater2> anyways, the idea is to find the basis of \span{AB}, then extend that to a basis of W, then take just the extension and translate it back to V. then you have Ker A.
20:02:03 <oerjan> except that doesn't work, the span of A does not determine the kernel of A, period
20:03:39 <oerjan> i am not entirely sure, but i think the correct theorem may be something like ker A = (span(A^T))^{_|_}
20:04:29 <crystal-cola> fuck it ill just fucking solve the system myself by hand
20:04:39 * oerjan used to know this stuff once :)
20:05:19 <oerjan> that theorem extends to hilbert space operators and stuff
20:09:34 <crystal-cola> I wish I had a tool that would let me do row operations really easily
20:12:33 <oerjan> crystal-cola: i think my suggestion requires column operations, although that's a trivial difference
20:13:08 <oerjan> erm rows are horizontal and columns are vertical...
20:13:30 <elliott> wait wait wait i feel a witty coming on
20:13:48 <oerjan> yes, afair we didn't bury her standing
20:14:10 <elliott> im gonna go into #deadrelatives and make your mom and dead baby jokes all day long
20:16:27 <elliott> i sure hope XigXag is TC :)
20:16:39 <elliott> it has exponential growth for almost all programs
20:16:43 <elliott> so I guess it inherently isn't?
20:16:48 <elliott> unless you can encode a halting state
20:17:45 <Vorpal> evangelic spam on freenode, in #perl. Huh
20:17:55 <Vorpal> (speaking of which, why was my client in there)
20:18:04 <elliott> maybe it's larry wall doing it
20:18:17 <Vorpal> "IDLEONE HERE! IF YOU DIED TODAY DO YOU KNOW WHERE YOU WOULD END UP? NIGGERS, GAYS, JEWS AND FREENODE STAFF ARE ALL GOING TO BURN IN HELL.. IF YOU ARE ONE OF THESE YOU NEED TO ASK JESUS CHRIST FOR FORGIVENESS. [proceeding to highlight every nick in channel]"
20:18:39 <elliott> crystal-cola: stop being intolerant to larry wall
20:18:45 <Vorpal> crystal-cola, evangelism is trolling!
20:18:54 <elliott> i like the idea of a religion where being freenode staffer is a sin though
20:19:20 <crystal-cola> I know that what's going ot happen is... I solve thsi thing then the answer doesn't work
20:19:49 <Vorpal> sorry I meant tyop dya
20:20:01 <Vorpal> elliott, tyop not tpyo
20:20:28 <elliott> i'm allowed to typo a typo
20:20:49 <elliott> Vorpal: stop discriminatingery
20:21:06 <Vorpal> elliott, I meant: what does "jgeus" mean?
20:22:03 <cheater2> larry wall has a black on blinding yellow website about perl and cornea transplants.
20:22:12 <Vorpal> elliott, uh "No definitions were found for jegus."
20:22:25 <elliott> days since vorpal has told elliott he doesn't know what jegus is: 0
20:22:30 <elliott> previous days since vorpal has told elliott he doesn't know what jegus is: like two? maybe three
20:25:38 <Vorpal> elliott, jegus was never used before 2011-04-30 in this channel as far as clog knows
20:25:53 <Vorpal> > select * from irc.logs where body ilike '%jegus%';
20:25:53 <Vorpal> serial | tstamp | nick | target | uhost | type | body
20:25:53 <Vorpal> ---------+---------------------+----------+--------+-------+------+------------------------------------------------------
20:25:53 <Vorpal> 2276817 | 2011-04-30 06:43:48 | elliott | | | 0 | crystal-cola: jegus go to bed already
20:25:54 <lambdabot> <no location info>: parse error on input `where'
20:25:54 <Vorpal> 2277258 | 2011-04-30 20:35:42 | elliott_ | | | 0 | Sgeo: don't know/care/anything/really/honestly/jegus
20:25:59 <elliott> also why arent you rsyncing the glogbot logs thats quicker
20:26:15 <Vorpal> elliott, I need to parse them. Different parser
20:26:29 <Vorpal> elliott, than a FTS index
20:26:33 <elliott> you can narrow it down to just this year obviously...
20:26:38 <elliott> and fgrep is insanely fucking fast
20:26:45 <Vorpal> elliott, my disks are not!
20:26:56 <Vorpal> elliott, I have SATA 1
20:27:13 <Vorpal> and medium-speed (7200 RPM) disks.
20:27:29 <oerjan> need to upgrade to SATA N
20:28:03 <oerjan> lots of wind here today
20:28:29 <Vorpal> oerjan, I just inserted n for you
20:46:32 <oerjan> <siracusa> Can you do loops with slahes?
20:46:45 <oerjan> yes. it is rather complicated though, see the wiki page.
20:47:24 <oerjan> (you need to use quine-making techniques)
20:49:01 -!- copumpkin has quit (Ping timeout: 240 seconds).
20:49:28 -!- copumpkin has joined.
20:49:40 <siracusa> oerjan: Yeah, I already found the mechanism on that wiki page. But thanks anyway.
20:50:54 <elliott> can i have exclamation mark
20:51:32 <elliott> ugh wow a slashes quine with \/ will be hard (trying to replicate your achievement)
20:51:35 <elliott> whoops look at that i give up
20:52:31 <oerjan> <crystal-cola> is it possible to output every string with this language??
20:53:02 <oerjan> just prepend \ to every / and \
20:54:36 <oerjan> elliott: the quine is heavily influenced by the previous work of the BCT interpreter in finding out how to encode tokens without ambiguity. moreover there's a small adjustment because the exact same encoding didn't work
20:54:47 <elliott> oerjan: you're an ambiguity
20:54:56 <elliott> he meant IO-complete style
20:55:31 <oerjan> but still yes in my opinion
20:55:58 <siracusa> oerjan: I think his problem was, if you have a construct /x/s/, you can't use x as a character in s.
20:56:12 <oerjan> siracusa: all you have to do is be careful not to use single-character abbreviations and tokens, and then printing any single character is relatively easy
20:56:19 <elliott> after /x/s/ you can never have x again
20:56:22 <elliott> so you need to do it a different way
20:56:33 <elliott> oerjan: any thoughts on thue->/// compilation btw?
20:56:47 <oerjan> but there is no problem as long as you do tokens with more than one character
20:56:56 <oerjan> elliott: yes i've pondered that occasionally
20:57:12 <siracusa> So you just use a character combination that will never occur in the rest of the program?
20:57:22 <oerjan> i believe it's easiest if you do it in a parallel fashion
20:58:18 <oerjan> siracusa: an important trick here is that if you have more than one character in a token, say CH, then you can still "mention" that token by escaping it with C\H
20:58:40 <elliott> oh does that actually work
20:58:44 <oerjan> and the mention itself won't be affected
20:59:19 <oerjan> and you can use the mention to make new copies of the token
21:01:49 <oerjan> (in practice when using the loop quoting mechanism, you use that for separating a token instead. although sometimes i've had to do both, it depends on when the new program copy is unpacked and what needs to be done after that
21:03:27 <crystal-cola> also what strings is it not possible for slashes to output?
21:03:37 <oerjan> elliott: about thue, because it is non-deterministic you can simply apply _all_ the thue substitutions each cycle, and the result will be a consistent thue running path
21:04:07 <oerjan> which i believe would simplify the compilation into /// greatly
21:04:27 <oerjan> crystal-cola: it is possible to output all strings
21:05:43 <oerjan> <crystal-cola> how to turn abba into abbaxyyz <-- you will need to use the quoting trick to be able to handle different copies of abba differently
21:06:50 <crystal-cola> oh nevermind that's the same thing, just the second one takes two steps.
21:07:27 <oerjan> crystal-cola: well i was assuming you meant in a general fashion
21:08:08 <oerjan> !slashes /ba/Zxyyx//Z/b\a//abba
21:08:32 <oerjan> !slashes /ba/Zxyyx//Z/b\a/abba
21:09:22 <oerjan> crystal-cola: another possibility is to iterate over the abba from one side to the other.
21:09:58 <oerjan> but in general things get simpler if you don't demand your strings be represented "raw"
21:10:18 <oerjan> iteration requires some kind of loop, of course
21:10:46 <oerjan> (although possibly a simpler, fixed number iteration one)
21:16:34 -!- augur has quit (Remote host closed the connection).
21:17:19 <crystal-cola> I couldn't get any software that I wanted and I couldn't solve by hand either
21:17:37 <crystal-cola> I will have to write a proper program to do this some day in the future
21:19:11 <oerjan> crystal-cola: maybe http://hackage.haskell.org/packages/archive/Vec/0.9.6/doc/html/Data-Vec-LinAlg.html ?
21:19:26 <crystal-cola> oerjan: I couldn't figure out how to use that :RS
21:19:56 <oerjan> the type classes do look a little hairy...
21:20:40 <siracusa> Haha, the context of solve goes over two lines.
21:21:01 <oerjan> but you'd imagine there would be _some_ instance combination involving Rationals and lists available...
21:21:55 <crystal-cola> I think it might be an interesting programming problem when im not so annoyed about not being able to solve it immediately
21:22:03 <oerjan> or maybe that :. thing
21:23:01 <siracusa> "The list of instances here is not meant to be readable"
21:23:40 <oerjan> "Vectors are represented by lists with type-encoded lengths."
21:23:59 <oerjan> i guess that means [] lists are out of the question
21:26:34 <oerjan> and hmatrix seems to be single and double floating point only...
21:32:19 <SimonRC> it seesm that I have been /away since the begninng of November :-S
21:33:09 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:34:15 <elliott> SimonRC: where have you been :P
21:34:47 <SimonRC> (not actually drawn in MS paint)
21:34:50 <elliott> lol it's eating up all of us
21:35:09 <elliott> soon there will be no #esoteric, just a bunch of idlers
21:35:13 <SimonRC> I am running a forum adventure on the forums
21:35:46 -!- elliott has set topic: "Programming may one day be about getting the maths right" -- Alan Alda | "Functional programming is more than just esoteric; it’s becoming somewhat cool." -- Tiger Woods | "Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D" --John McCain.
21:35:49 <SimonRC> given how inventive I am with usernames, I think you have the information to find it
21:36:04 -!- elliott has set topic: "Programming may one day be about getting the maths right" -- Alan Alda | "Functional programming is more than just esoteric; it’s becoming somewhat cool." -- Tiger Woods | "Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D" -- John McCain.
21:36:25 <oerjan> ancient babylonian quote
21:37:28 <SimonRC> "Sooner or later, any sufficiently-good quotation will become attributed to someone more famous than whoever originally said it." -- Winston Churchill
21:38:11 <quintopia> mark twain suits that quote better than winston
21:40:17 <SimonRC> also, it is better to re-arrange the phrases: "Any sufficiently-good quotation sooner ora later becomes attributed to someone more famous than whoever originally said it."
21:41:26 <SimonRC> because it's "forall quotations (exist a time after which (...))", not the other way round
21:41:30 <quintopia> eh i think the original phrasing was better
21:42:08 <quintopia> they both map to the same fol expression semantically
21:42:10 <SimonRC> get out of this channel you... liberal-arts major
21:42:22 <oerjan> Any sufficiently-good quotation is indistinguishable from fame
21:42:57 <quintopia> any sufficiently formulaic expression is indistinguishable from its snowclones
21:43:25 <SimonRC> <strk>any sufficiently-well understood magic is by definition a technology</strk>
21:43:34 <crystal-cola> "99% of quotations are misattributed" -- Einstein
21:43:52 <oerjan> SimonRC: i read approximately that one in girl genius
21:43:53 <SimonRC> 83% of statistics are made up on the spot
21:44:06 <SimonRC> oerjan: oh, yeah I remember that
21:44:20 <crystal-cola> "83% of quotations are made up on the spot" - SimonRC
21:44:53 <quintopia> "100% of quotations have been made up by someone" - quintopia
21:45:55 <quintopia> 96% of fictional matter isn't real
21:46:08 <quintopia> (and fiction is far stranger than truth)
21:46:40 <crystal-cola> "US Patent #5,893,120 has been reduced to mathematical formulae as a demonstration of the oft-ignored fact that there is an equivalence relation between programs and mathematics. You may recognize Patent #5,893,210 as the one over which Google was ordered to pay $5M for infringing due to some code in Linux." -- Shakespear
21:47:08 <SimonRC> (And I invented the mle form of that independantly AFAICR)
21:47:17 <SimonRC> (After reading some articles on feminism.)
21:48:53 <elliott> now i'm just appending it to every typo you make :P
21:49:25 <SimonRC> I invented "loq" for when I loled silently too.
21:50:00 -!- augur has joined.
21:50:40 <SimonRC> elliott: ( http://www.urbandictionary.com/define.php?term=FOL <-- so now you know)
21:50:48 <elliott> crystal-cola: you're radical
21:51:49 <oerjan> elliott: i am pretty sure it wasn't a typo when quintopia made it
21:52:01 <elliott> oh right first-order logic
21:52:23 <oerjan> yes i keep quantifying things
21:53:05 <crystal-cola> The founding principle of the Journal of Universal Rejection (JofUR) is rejection. Universal rejection. That is to say, all submissions, regardless of quality, will be rejected. Despite that apparent drawback, here are a number of reasons you may choose to submit to the JofUR:
21:53:46 <ais523> elliott: it'll be delayed until they have enough accepted submissions to make a full issue
21:53:54 <elliott> ais523: they've released issues, see the site
21:54:03 <SimonRC> they could sell it as a joke to fund the place
21:54:09 <elliott> ais523: i'm not your web browser
21:54:51 <oerjan> "You may claim to have submitted to the most prestigious journal (judged by acceptance rate)."
22:03:10 -!- poiuy_qwert has joined.
22:03:18 <Sgeo_> http://reprobatiocerta.blogspot.com/
22:03:50 -!- p_q has quit (Ping timeout: 250 seconds).
22:09:49 -!- p_q has joined.
22:12:24 -!- poiuy_qwert has quit (Ping timeout: 240 seconds).
22:19:01 <crystal-cola> "A life spent coming up with inane quotes is wasted" - Mark Twain
22:19:43 <oerjan> I HOPE HE SAID NOTHING ABOUT PUNS
22:21:04 <Sgeo_> <insert Death quote that prompted elliott to /ignore Sgeo here>
22:21:49 <Sgeo_> (I mean, the real spelling's pun, but Death's spelling is pune)
22:23:02 <ais523> Sgeo_: I doubt that was the sole reason elliott ignored you, although it might have been the last straw
22:23:23 <Sgeo_> I'm not entirely certain that he really did ignore me, just said that he was. I hope >.>
22:23:28 -!- elliott has quit (Ping timeout: 248 seconds).
22:26:06 -!- Gregor has set topic: "Programming may one day be about getting the maths right" -- Alan Alda | "Functional programming is more than just esoteric; it’s becoming somewhat cool." -- Tiger Woods | "Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D" -- John "Satan" McCain.
22:28:56 <ais523> also, the above is proof that my fingers have memorised pinging Gregor on one character
22:29:20 * Gregor renames EgoBot to GregoBot and HackEgo to GackEgo
22:29:33 * Gregor particularly likes "GregoBot" :P
22:29:42 <oerjan> and also that your client doesn't apply last speaker priority
22:29:52 -!- p_q has quit (Ping timeout: 248 seconds).
22:31:49 <ais523> oerjan: it does, Gregor hadn't spoken all day
22:31:58 <ais523> so I think it just picked the first in alphabetical order
22:34:54 <Gregor> * Ping reply from ais523: 1304238071.85 second(s)
22:35:14 <ais523> Gregor: are you /sure/ you didn't send me a ping that long ago?
22:35:32 <ais523> the Internet wasn't that developed back then
22:35:39 <ais523> so it would have taken a long time to roundtrip
22:36:00 <Gregor> It appears that that was the current Unix timestamp :P
22:36:10 <Gregor> So you pinged me on January 1, 1970.
22:36:34 <SimonRC> is it scary that I recognised the timestamp?
22:36:59 <SimonRC> 'cause I keep seeing things around that are named after it, so it is only natural
22:37:18 <oerjan> 00:34 CTCP PING reply from Gregor: 0.687 seconds
22:37:18 <oerjan> 00:34 CTCP PING reply from Gregor: 0.832 seconds
22:37:18 <oerjan> 00:34 CTCP PING reply from Gregor: 1.122 seconds
22:37:32 <oerjan> ais523: _someone_ is outdoing you, here...
22:37:45 <SimonRC> oh of course, oerjan is in Acandanavia
22:37:49 <zzo38> oerjan: You are outdoing them here!!!
22:38:01 <ais523> Gregor: I entered a plausible timestamp, but your client seems to use a different format for its pings
22:38:06 <ais523> and so failed to parse it
22:38:37 <oerjan> ...ping replies are not supposed to make up timestamps
22:38:49 <ais523> oerjan: they're meant to be a copy of the ping itself
22:38:58 <ais523> most clients, when pinging, put the current time in the ping, in some format
22:39:06 <ais523> so they can match up pings and pongs
22:39:11 <Gregor> I never PINGED though.
22:39:18 <ais523> and often, if you pong them with a timestamp, they assume they sent the matching ping
22:40:41 <ais523> zzo38: my client doesn't parse that without an argument
22:40:47 <ais523> it just showed the NOTICE literally
22:40:52 <siracusa> "Malformed ping reply from zzo38." O.o
22:40:58 <ais523> also, I don't think it parses ping replies sent to channel
22:41:11 <zzo38> I did that just to see what would happen
22:41:21 <ais523> <CTCP>PING 1304238071<CTCP>
22:41:35 <ais523> siracusa: was mine correctly formed?
22:41:36 <oerjan> 00:40 CTCP PING reply from ais523: 51404.370 seconds
22:41:55 <ais523> oerjan: that's... bizzarre
22:41:58 <ais523> I gave a recent UNIX timestamp
22:42:12 <oerjan> well that is recent, sort of :D
22:44:57 <oerjan> <ais523> and often, if you pong them with a timestamp, they assume they sent the matching ping <-- well if a client _does_ check for matches then it doesn't actually need to send a timestamp, it could use any id
22:45:24 <oerjan> but since the main point of matching would then be to find the original time sent...
22:54:46 -!- MDude1350 has joined.
22:55:30 <ais523> [CTCP] Received CTCP-PING reply from zzo38: 1,304,289,356 seconds.
22:57:17 -!- siracusa has left.
22:59:49 -!- ais523 has changed nick to scarf.
22:59:58 -!- scarf has changed nick to ais523.
23:03:40 * SimonRC goes /away for a few months again.
23:04:30 -!- poiuy_qwert has joined.
23:04:57 <oerjan> SimonRC is secretly a STL starship captain
23:09:20 -!- poiuy_qwert has quit (Ping timeout: 248 seconds).
23:12:08 <zzo38> What category of programming languages would classified TeX?
23:12:46 <zzo38> Yes it is, but in addition to commands it also has macro expansions
23:13:09 <zzo38> I mean in other words too; imperative programming languages can belong to other categories too
23:13:23 <oerjan> i think that's a category
23:14:29 <oerjan> rendering might be one...
23:14:43 <zzo38> Macros can also modify themself!! And you can save the old state of things for later, for example: \ifnum\pageno=0 {\let\xyzzy} \else [Do Something Else] \fi \xyzzy
23:15:37 <zzo38> It does typesetting as well, it doesn't actually render fonts though (that is what the printer driver will do)
23:16:13 <oerjan> it needs to know sizes though
23:16:39 <zzo38> Yes it does need to know sizes and various other information about the fonts, except for the actual pictures
23:19:37 <zzo38> Other information includes: design size, em width, ex height, natural space width, space shrinkability, space stretchability, kerning, ligatures, italic corrections, height/depth of characters, widths of the bar above a math radical, etc
23:19:47 -!- poiuy_qwert has joined.
23:20:19 -!- poiuy_qwert has quit (Client Quit).
23:20:52 -!- FireFly has quit (Quit: swatted to death).
23:23:04 <zzo38> The file format that stores this information is very sensible in my opinion, and works without floating point.
23:25:19 -!- ais523 has quit (Remote host closed the connection).
23:32:37 <zzo38> One thing missing from TeX in my opinion is the #0 command (like #1 and #2 and so on to access macro parameters, #0 would access the name of the macro itself, like $0 in shell scripts)
23:38:27 <Gregor> Sometimes aptitude makes some truly bizarre decisions. I try to install something which, as it turns out, requires a newer version of libc than I have. So its first suggestion is to uninstall half the system AND not install the package I requested. The SECOND suggestion is to upgrade libc and a few other packages that need to be upgraded with it (nothing uninstalled).
23:39:04 <zzo38> Why does it do that? If it is wrong, can you correct it or file a bug report?
23:46:43 -!- augur has quit (Remote host closed the connection).
23:52:58 -!- oerjan has quit (Remote host closed the connection).
23:56:39 -!- oerjan has joined.
23:57:37 * Sgeo_ has no idea how to type in arbitrary unicode things
23:58:30 <Sgeo_> +0e angers at h5s Fn 2ey.
00:00:10 -!- Sgeo_ has quit (Read error: Connection reset by peer).
00:00:30 <tswett> You know, most of the Scandinavia dudes have nice and short words. You've got your Swedes, your Finns, and your Danes.
00:00:45 <tswett> But Norway and Iceland can't cooperate; they have to have Norwegians and Icelanders.
00:02:05 <tswett> We ought to call them Nords and... something.
00:03:45 <tswett> Nords and ice. They don't get a proper noun, or a word that distinguishes between the singular and the plural. They're just ice.
00:05:03 <tswett> You know, I'm fine with calling them Icelanders.
00:06:23 -!- elliott has joined.
00:11:24 <oerjan> if you keep half-insulting us like that, we may have to rejuvenate "vikings".
00:11:29 -!- Sgeo has joined.
00:12:06 <Gregor> Those Noroms are so sensitive 8-D
00:16:04 <Sgeo> targ norn dead
00:16:56 <Sgeo> enum 4 0 0 dead next
00:20:36 -!- elliott has quit (Remote host closed the connection).
00:21:32 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:22:21 -!- elliott has joined.
00:27:49 <zzo38> TeX is interpreted programming language, not compiled. It can be compiled into a binary code but not the native code, but they also have category codes
00:39:50 -!- crystal-cola has quit (Quit: leaving).
01:26:58 -!- azaq23 has quit (Quit: Leaving.).
02:39:53 -!- MDude1350 has changed nick to MSleep.
02:48:13 -!- calamari has quit (Quit: Leaving).
02:53:18 -!- elliott has quit (Remote host closed the connection).
03:04:26 <zzo38> Is "BIDAK IQUOOD" the good name for D&D characters???
03:09:16 -!- mrjbq7 has joined.
03:13:16 -!- mrjbq7 has quit (Client Quit).
03:18:56 <zzo38> That is not there proper name, but it is the name that everyone else has to use for them.
03:25:45 -!- augur has joined.
03:35:13 -!- oerjan has quit (Quit: leaving).
03:54:28 -!- TeruFSX has joined.
04:12:18 -!- sebbu2 has joined.
04:12:18 -!- sebbu2 has quit (Changing host).
04:12:19 -!- sebbu2 has joined.
04:15:58 -!- sebbu has quit (Ping timeout: 260 seconds).
05:12:39 -!- pizearke has joined.
05:14:39 -!- TeruFSX has quit (Read error: Operation timed out).
05:25:05 -!- TeruFSX has joined.
05:31:36 -!- TeruFSX has quit (Ping timeout: 276 seconds).
06:35:52 -!- sebbu2 has quit (Ping timeout: 264 seconds).
06:42:53 -!- sebbu has joined.
07:21:00 -!- zzo38 has quit (Remote host closed the connection).
07:41:22 -!- XXX-76C28611432 has joined.
07:42:33 -!- XXX-76C28611432 has quit (Client Quit).
08:57:56 -!- monqy has quit (Quit: hello).
09:08:36 <Sgeo> Anyone awake and willing to help me?
09:25:24 <Sgeo> That'll teach me to math
09:25:26 -!- siracusa has joined.
09:26:06 <Sgeo> I went from x' - x0 = -(y - y0) to forgetting to distribute that - to the y
09:47:38 <pizearke> (I mean, I probably can't help you, but I might as well try, right?)
09:49:21 -!- ais523 has joined.
09:49:51 <Sgeo> I already solved my problem
09:50:44 <pizearke> out of curiosity, what were you trying to do?
09:51:25 <Sgeo> Figure out some rotation stuff
09:51:47 <Sgeo> http://pastie.org/1856142
09:52:30 <Sgeo> I wanted verification that that was correct. After I fixed another bug with my rotation stuff, realized for certain that that was incorrect. Some annoying debugging later, I see that I lost a -
09:55:52 <Sgeo> I should say 90 degrees somewhere in there, but me
09:55:57 <Sgeo> Under the gun right now
10:16:34 -!- pizearke has quit (Ping timeout: 240 seconds).
10:19:17 -!- pizearke has joined.
11:00:31 -!- augur has quit (Remote host closed the connection).
11:11:50 -!- clog has joined.
11:25:16 -!- crystal-cola has joined.
11:48:33 -!- augur has joined.
11:52:14 <quintopia> someone tell me what is wrong with this
11:52:25 <quintopia> regcomp(regex,".*rvm(.+)-([0-9]+)-([0-9]+)\\.log$",REG_NEWLINE)
11:53:04 <quintopia> in every regex tester i've tried that in, it matches "rvmtestseg-1000-100.log"
11:53:11 <quintopia> in my program it doesn't match that
11:53:47 <quintopia> blithely reports no match on the exact same string
12:00:48 -!- TeruFSX has joined.
12:07:48 -!- TeruFSX has quit (Remote host closed the connection).
12:17:04 <lifthrasiir> quintopia, what, are you writing a your own regex library?
12:18:51 <quintopia> no this is the only regex i need to work
12:21:17 <siracusa> quintopia: Sure you don't need REG_EXTENDED for $?
12:21:53 <quintopia> i dropped the $ and it still didn't work, so the problem is obviously elsewhere
12:22:37 <lifthrasiir> uhm, i was sleepy and missed sisacusa's answer. well, basically similar.
12:22:59 <quintopia> i guess the parens are extended RE
12:23:16 <fizzie> Parens without \ in front are extended-style.
12:26:11 <crystal-cola> What does a rectangular matrix of integers define?
12:37:02 <quintopia> why do you ask of integers in particular
12:38:18 -!- Sgeo has quit (Ping timeout: 240 seconds).
12:59:52 -!- FireFly has joined.
13:14:20 -!- MSleep has changed nick to MDude.
13:27:18 <crystal-cola> I know that matrices represent linear transforms but there are probably other interpretations too (?)
13:38:16 <Gregor> I misread "gcd" there as "god"
13:38:21 <Gregor> I was wondering what the god function was.
13:38:59 <Gregor> All this time, and god was just the greatest common divisor.
13:41:47 <crystal-cola> I don't know why gcd 111111111...11 111111..111 = 111...1111
13:43:16 -!- BeholdMyGlory has joined.
13:45:08 <copumpkin> http://en.wikipedia.org/wiki/Repunit
13:46:27 <crystal-cola> > map length $ group .sort . show $ 11111111111111111111111111111111111111111111111111111111^2
13:46:36 <crystal-cola> > map length $ group .sort . show $ 111111111111111111111111111111111111111111111111111111111111111111111111111111111111^2
13:46:45 <crystal-cola> > map length $ group .sort . show $ 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111^2
13:47:45 <Vorpal> <copumpkin> > 111111111^2 <lambdabot> 12345678987654321 <-- huh, neat
13:48:56 <Vorpal> crystal-cola, which one should be a plus?
13:54:38 <Vorpal> crystal-cola, wait is that not the same as gcd x x = x ?
13:55:51 <Vorpal> crystal-cola, what happens for other bases than base 10? does the same work if you read the number as, say, an octal number?
13:57:14 <Vorpal> hm. There is probably a reason but I have no clue what it could be
13:58:44 <Vorpal> I'd really like to know why
13:58:53 <Vorpal> > gcd 5555555555555555 555555555555555555
13:58:59 <Vorpal> > gcd 5555555555555555 555555555555555555555555555555555555555555
13:59:10 <Vorpal> > gcd 5555555555555555 5555555555555555555555555555555555555555555
13:59:44 <Vorpal> > gcd 13131313131313131 13131313131313131
13:59:50 <crystal-cola> > gcd 13371337133713371337133713371337 133713371337133713371337133713371337
14:00:03 <Vorpal> > gcd 12341234 1234123412341234
14:00:18 <Vorpal> crystal-cola, there better be a good reason for this!
14:00:45 <crystal-cola> imagine if no others than the ones we happened to try out did this
14:01:10 <Vorpal> crystal-cola, imagine that most but not all did this
14:01:23 <Vorpal> not very likely though
14:01:57 <Vorpal> crystal-cola, well, some stuff only have counter-examples for very very large numbers.
14:08:27 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:12:27 <quintopia> crystal-cola: it reduces to showing 10..010..010..01 does not have common divisors with (that same thing with more ..)
14:14:11 <quintopia> yeah, dividing by 111..111 may be the thing to do to see that
14:15:32 -!- MigoMipo has joined.
14:30:25 -!- augur has quit (Remote host closed the connection).
14:31:59 -!- augur has joined.
15:32:00 -!- augur has quit (Remote host closed the connection).
15:34:57 -!- augur has joined.
15:40:38 <Gregor> WANTED: Grammar description language capable of describing indentation-sensitive languages which isn't just "BNF + indentation bullshit"
15:42:33 <ais523> Gregor: just preconvert the indentation to braces
15:43:30 <Gregor> That doesn't give me anything fundamentally interesting.
15:44:37 <Gregor> What I want is to find a set of languages slightly greater than CFLs that includes indentation-sensitive languages, but still has some meaningful guarantees (parseable in finite time?)
15:46:16 <Gregor> Err, obviously "parseable in finite time" is not a good property since that's CSLs :P
15:47:23 <Gregor> Basically, I wonder if there's something in between that includes Python's grammar but excludes English, which is fundamentally more interesting than "CFLs + Python"
15:54:00 <Gregor> For instance, if I allow this: IfStatement = / /*n /if/ IfCondition /:/ Newline NestedStatements(n) \ NestedStatements(n) = / /*(m>n) Statement (Newline NestedStatements(n)){opt}
15:54:57 <Gregor> Somewhere one of those should be marked as a peek, but anyway.
15:55:12 <Gregor> What property can allow me to describe the carrying of these "repetition values"? Clearly this is not a CFL, and yet if I had a strict description of what allowed this it would be much weaker than CSLs.
16:12:21 -!- elliott has joined.
16:13:56 <elliott> 15:40:38: <Gregor> WANTED: Grammar description language capable of describing indentation-sensitive languages which isn't just "BNF + indentation bullshit"
16:14:00 <elliott> Gregor: Is this for Fythe? :P
16:14:13 <crystal-cola> Will the death of Osama bin laden lead to any new insights into the Riemann hypothesis?
16:14:39 <elliott> Gregor: BTW, Haskell and Python do it differently.
16:14:55 <elliott> Indentation-for-braces is totally non-context-free-and-all-sorts-of-shit, Haskell's is probably even worse.
16:15:06 <elliott> Gregor: Preprocessing is pretty much the only option /shrug
16:17:25 <ais523> Gregor: go invent two-dimensional BNF
16:17:42 <ais523> as in, see the file as a two-dimensional image, not as a sequence of bytes
16:17:49 <ais523> I think there might be merit to that approach
16:22:53 -!- elliott has quit (Remote host closed the connection).
17:04:13 -!- poiuy_qwert has joined.
17:09:21 <Gregor> elliott (not here): Well, my plan is to just make it so any general function can be used as a parser, which solves all problems, but I was just wondering if I could find a middle-ground.
17:09:31 <Gregor> <ais523> Gregor: go invent two-dimensional BNF
17:09:31 <Gregor> <ais523> as in, see the file as a two-dimensional image, not as a sequence of bytes
17:10:28 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
17:12:46 -!- variable has quit (*.net *.split).
17:12:46 -!- myndzi has quit (*.net *.split).
17:13:33 -!- variable has joined.
17:13:33 -!- myndzi has joined.
17:24:59 -!- sebbu2 has joined.
17:24:59 -!- sebbu2 has quit (Changing host).
17:24:59 -!- sebbu2 has joined.
17:28:44 -!- sebbu has quit (Ping timeout: 260 seconds).
17:33:52 -!- tzxn3 has quit (Read error: Connection reset by peer).
17:43:53 -!- Slereah_ has quit (Ping timeout: 260 seconds).
17:47:38 -!- Slereah has joined.
17:50:18 -!- elliott has joined.
17:59:07 <Gregor> I'll bet (note: no actual bet) that you could divide indentation-sensitive languages into two CFL (or near-CFL?) parsing steps given the "view it as a 2D array" approach, one of which is top-to-bottom-then-left-to-right and essentially ends up being the brace-adding preprocessing step (this in the case of Python where it really is just brace-adding), and the other is a standard left-to-right-then-top-to-bottom by-the-book parser.
18:00:32 <elliott> http://www.aftertherapturepetcare.com/
18:00:54 <ais523> elliott: the URL is enough, there's no need to even visit the website
18:01:11 <elliott> Gregor: Yeah, but you need to be thinking about Haskell here, where you can freely mix {;}-style blocks and aligned-or-indented blocks
18:01:26 <elliott> Basically it's a mess, lexer-wise.
18:01:53 <elliott> (I'm pretty sure you can do it as just "everything must line up with the first code line, and the first code line can have arbitrary whitespace before it", but still.)
18:02:41 <elliott> "Who are these Volunteer Pet Caretakers and how do I know they'll take good care of my pets?
18:02:42 <elliott> Most Volunteer Pet Caretakers fit this description:
18:02:42 <elliott> They are atheist or another non-Christian religion.
18:02:48 <elliott> Oh god I have to sign up as a caretaker it's too hilarious not to.
18:03:20 <elliott> "As far as the data about all registered pets, it is located on Google servers (the most secure servers in the world) as well as our own server in Lansing, Michigan (away from political and military hot spots to minimize chance of destruction if there is a post-Rapture war)."
18:06:04 <ais523> elliott: thinking about it, the people in charge of that site are probably very smart
18:06:14 <elliott> ais523: I'm /thinking/ it's a joke
18:06:16 <ais523> they're likely hoping that their services are completely useless
18:06:17 <Gregor> "You have a responsibility, as a good steward of your pets, to ensure your pet is taken care of if something happens to you, such as death or rapture."
18:06:20 <elliott> but it's so well-done I can't tell
18:06:25 <Gregor> I love how this sentence starts totally reasonable, then goes retarded.
18:06:31 <ais523> and if they can charge for them anyway, and people will purchase it, it'll make a fortune
18:06:42 <elliott> Gregor: wow, it turns amazing in the last word
18:06:48 <elliott> ais523: It's only ten dollars initial signup :P
18:06:57 <elliott> ais523: And NO MONTHLY FEES
18:07:23 <ais523> elliott: I hope it allows a method of payment other than credit card
18:07:38 <ais523> otherwise it triggers that "number required for buying and selling" bit of Revelations
18:07:43 <elliott> The great thing is it even sort of makes sense from a Christian point of view... you might not trust atheists to follow up on their word, but shit, who's gonna be an atheist after the fuckin' Rapture?
18:08:12 <elliott> p.s. nitpick it's Revelation
18:08:45 <ais523> that bit's great, as it sets the sort of people who interpret the Bible literally against the sort of people who spend their time thinking up of new ways to deny human rights for their own profit
18:08:56 <Gregor> <ais523> otherwise it triggers that "number required for buying and selling" bit of Revelations // they're not trying to STOP the rapture
18:09:13 <elliott> This thing has SO MANY LAYERS
18:09:20 <elliott> At this point I want it to be real :P
18:09:40 <ais523> Gregor: but the people buying the services might be afraid that by buying the rapture petcare service, they're willingly accepting the mark of the beast
18:09:45 <elliott> Anyway, obviously you just have to convert your pets to Christianity and they'll get raptured with you.
18:09:47 <ais523> so that later on, when the rapture actually happens, they won't be included
18:09:57 <elliott> If they don't, well, it's their fault for not accepting Animal Jesus' love.
18:10:01 <Gregor> "Woof Jesus woof woof"
18:10:08 -!- Gregor has changed nick to Yahweasel.
18:10:21 <Yahweasel> <-- guaranteed anti-rapture insurance.
18:10:21 <elliott> And Yahweasel said to Meowsus...
18:10:40 <elliott> googled "furry bible", was not disappointed
18:10:51 <elliott> "[...] a Bible fanfic - FanFiction.Net"
18:10:56 <elliott> Also known as the Book of Mormon.
18:11:33 <elliott> i'm not sure the person who wrote this furry bible ever actually read a bible
18:13:11 <Yahweasel> [22] And the rib, which the LORD God had taken from man, made he a catperson, and brought her unto the man.
18:14:54 <Yahweasel> I keep wanting to catch up, but haven't had the time.
18:15:10 <elliott> ais523: are you sure the idea you had is unbeatable?
18:15:53 <elliott> Yahweasel: quintopia: Are you ever gonna code that fixed-point system or do I have to
18:16:14 -!- Slereah has quit (Ping timeout: 240 seconds).
18:16:19 <Yahweasel> elliott: Enjoy doing that without a 1-8 btw.
18:16:20 <elliott> Yeah but maybe you changed your mind :|
18:16:25 <elliott> Yahweasel: It'll be great.
18:16:40 <Yahweasel> Here, have a "#" so you can #define
18:17:06 <Yahweasel> Now you just need #define ONE (9/9) #define TWO (ONE+ONE) etc
18:17:14 <quintopia> elliott: i started it but then i had to do these huge stupid projects. i finished the lrvm thing and so i should be able to finally get back to that next week
18:17:46 <elliott> quintopia: Hooray, maybe I'll even write lance.
18:17:51 <ais523> elliott: I don't think slightly-improved-slowpoke is unbeatable; but I can't find any viable way to beat it with a defensive program
18:18:05 <elliott> ais523: that doesn't matter if the hill has enough good attacker programs, though
18:18:10 <elliott> thankfully, matches don't exist in a vacuum
18:18:11 <ais523> it can definitely be beaten by programs similar to itself and slightly tweaked
18:18:12 -!- Slereah has joined.
18:18:17 <Yahweasel> ais523: THEN WHY ISN'T IT ON THE HILL
18:18:20 <ais523> and maybe by different aggressive strategies altogether
18:18:52 <ais523> and because I haven't written slightly-improved-slowpoke yet; a) it's theoretical, b) there's no point as it'd just get one win that slowpoke doesn't, against anticipation
18:19:12 <ais523> the slight improvement would make slowpoke rather longer, by a factor of 4 or so, as it doesn't RLE well
18:19:38 <elliott> maybe we need a new construct, <...>
18:19:51 <elliott> basically, it runs the innards as a regular-BF-without-input-and-with-BF-Joust-shorthand program
18:19:57 <elliott> and then inserts the output into the program
18:20:05 <ais523> what I really want is (?number) from Perl
18:20:17 <ais523> although even that wouldn't compress anticipation all the way
18:20:29 <ais523> elliott: basically, "replace this with a copy of the nth paren group in the program"
18:20:37 <elliott> ais523: that's subroutines
18:20:45 <ais523> elliott: recursive subroutines
18:20:52 <ais523> and obviously it's cheating
18:20:54 <elliott> ais523: it can do recursion? ugh
18:21:00 <ais523> by putting it inside itself
18:21:05 <elliott> wouldn't it expand to an infinite string, conceptually?
18:21:09 <elliott> and thus be disallowed by a sane implementation?
18:21:20 <ais523> and yes, it would, you'd need to put some sort of limit on there
18:21:53 <elliott> I'd be ok with something like
18:22:08 <elliott> for efficiently-interpreted macros
18:22:15 <elliott> but it's better than huge programs
18:23:41 <ais523> I've thought of an interesting alternative for a separate hill, which bans huge and highly-nested programs, which works like this: a) all programs must fit in one line of IRC (510 chars minus headers); b) ({})% abbreviation can't be used, just ()*; c) defensive tiebreak rule
18:24:17 <ais523> the defensive tiebreak rule is, if the run times out, whenever a program used . at least 59 times in a row, it gains 1 point for each time it used it in excess of the 58th
18:24:17 <elliott> yeah, but that's boring :)
18:24:24 <ais523> and whichever program got more points wins
18:24:58 <ais523> basically, the motivation behind this is that a full-tape clear is the typical way defense programs win, but takes a lot of space to write
18:24:58 -!- elliott has quit (Read error: Connection reset by peer).
18:24:58 -!- elliott_ has joined.
18:25:18 <ais523> if you have at least 59 cycles spare, and know the number exactly, you can fit in part of a full-tape clear
18:25:25 <ais523> so just let the program do . a lot and imply the clear for them
18:27:47 <ais523> I think that change will leave aggressive and defensive programs of similar complexity the same length
18:27:48 -!- elliott has joined.
18:27:51 <elliott> <elliott_> ais523: arguably, for the main hill, we /really/ need a TC macro language
18:27:52 <elliott> <elliott_> because in the long run, it'll either be that or gigantic programs
18:27:54 <elliott> <elliott_> because BF has almost zero abstraction capability, and with BF Joust, the fact that every cycle matters reduces that to flat out zero
18:28:22 -!- elliott_ has quit (Read error: Operation timed out).
18:29:22 <ais523> [19:24] <ais523> if you have at least 59 cycles spare, and know the number exactly, you can fit in part of a full-tape clear
18:29:24 <ais523> [19:24] <ais523> so just let the program do . a lot and imply the clear for them
18:29:25 <ais523> [19:26] <ais523> I think that change will leave aggressive and defensive programs of similar complexity the same length
18:29:36 <ais523> and yes, the only reason defense programs work is laziness
18:29:44 <ais523> and the program size limit
18:29:57 -!- Slereah has quit (Ping timeout: 258 seconds).
18:29:57 <ais523> otherwise, it's trivial to unroll loops and get them to do something slightly different each time
18:30:04 <ais523> laziness in the normal English sense, not the programming sense
18:30:20 -!- Slereah has joined.
18:30:28 <ais523> well, you can just change all whiles into nested ifs
18:30:50 <ais523> and ifs by changing a if(*tape) c else d; e into a[ce]de
18:31:07 <ais523> the resulting programs would be larger than the size of the universe if done naively
18:31:44 <ais523> it gets larger by a factor of about 2 for every if used
18:31:55 <ais523> and so it goes exponential, and could easily get to 2^128 or even 2^1000
18:32:59 <elliott> Yahweasel: Anyway, re: Python/Haskell, proggit has just reminded me that C isn't context-free either... preprocessing of some kind (usually in the lexer) is kind of inevitable for a ton of languages.
18:33:07 <elliott> And the twodee thing won't fix it for C either.
18:33:50 <Yahweasel> elliott: What's the issue for C? Hopefully not di/trigraphs ...
18:33:57 <elliott> Yahweasel: typedef-name: identifier
18:34:21 <elliott> Oh and it's even worse than that... http://eli.thegreenplace.net/2011/05/02/the-context-sensitivity-of-c%E2%80%99s-grammar-revisited/
18:34:52 <elliott> "I don’t really see a problem with that. The context is pretty clear.
18:34:52 <elliott> You must not parse C code with a bunch of regex. YACC should know how to deal with scopes
18:34:52 <elliott> in python you can have str pointing to the number 5 and, at some other point, back to the string class
18:34:52 <elliott> This also can be an extension of the SFINAE rule… I guess"
18:35:45 <elliott> Yahweasel: BTW, http://scottmcpeak.com/elkhound/ seems like a pretty good parser generator as far as language support and speed goes... "Elsa can parse most C++ "in the wild". It has been tested with some notable large programs, including Mozilla, Qt, ACE, and itself."
18:35:59 <elliott> Oh, it's not a parser generator.
18:36:08 <elliott> Elsa is a C++ generator written in Elkhound.
18:36:17 <elliott> It's still restricted to context-free though, like everything.
18:36:37 <elliott> Yahweasel: You want imbeciles? I'll give you imbeciles:
18:36:38 <elliott> Why do you not put the downloads here for people to get your softs? It is very troublesome otherwise.
18:36:51 <elliott> The softs for context sensitivity of C's grammar.
18:36:59 <Yahweasel> int aa = sizeof(AA), AA, bb = sizeof(AA);
18:37:21 <elliott> C: MAYBE KIND OF SHITTILY DESIGNED????
18:39:00 <Yahweasel> However, all of the examples I see can be pushed past parsing by just adding a single nonsensical parsing rule and rejecting it as a semantic error. e.g. make "declaration = identifier identifier" valid, then consider that case in light of the actual compiler's understanding of scopes.
18:39:23 <Yahweasel> Probably missing something, or maybe the issue is simply that the definition says it's a syntax error instead of a semantic error.
18:39:32 <elliott> Yahweasel: Well, sure, you can make your parser just parse any number of characters and do nothing with them and handle everything later...
18:39:39 <elliott> But a parser that doesn't produce a useful AST sucks :P
18:39:44 -!- poiuy_qwert has joined.
18:39:49 <Yahweasel> I think my example AST here is still useful.
18:39:50 <elliott> Since the handling of both cases in e.g. f((T)[asterisk]x) is totally different.
18:40:16 <Yahweasel> Bleh, that really is the grottiest case, stupid unary.
18:40:40 <elliott> I suppose if you do it visitor-pattern style, then the node can look at global data, construct a new proper AST node, and forward the message on...
18:40:57 <elliott> Especially since multiplication now becomes uncertain :P
18:41:05 <elliott> (OK, it could special-case "statement with just multiplication" but BLERGH)
18:41:07 <elliott> Yahweasel: Oh wait it's worse
18:41:22 <elliott> Yahweasel: Is that seq(multiply(T,x),y) or decl(T,[x,y])
18:41:28 <elliott> EVERYTHING IS AMBIGUOUS YAAAAAAAAY
18:41:57 <elliott> Bahahahaha why is that even legal
18:42:08 <elliott> Deewiant: Considering that the ambiguity exists entirely independently of the comma...
18:42:11 <elliott> The comma just makes it worse :P
18:42:34 <Deewiant> Disallow no-op expressions at the language level and it's always decl
18:42:46 <elliott> Secondly, f((T)[asterisk]x)
18:43:04 <elliott> <Yahweasel> typedef char AA;
18:43:05 <elliott> <Yahweasel> int aa = sizeof(AA), AA, bb = sizeof(AA);
18:43:43 <elliott> I can see you're approaching this language flaw in the best way :P
18:44:28 -!- poiuy_qwert has quit (Ping timeout: 240 seconds).
18:44:29 <Yahweasel> OK, I want a grammar description language that captures C, Python, Haskell and all CFLs.
18:44:51 <elliott> Or any other Turing-complete language, you're welcome.
18:44:52 <Yahweasel> OK, I want a grammar description language that captures C, Python, Haskell and all CFLs but is not itself TC.
18:45:21 <elliott> Yahweasel: That one I mentioned plus HeyHandleC/Python/Haskell declarations.
18:46:01 <elliott> Yahweasel: It's pretty much inherently going to be ad-hoc, dude :P
18:46:23 <Vorpal> <elliott> Bahahahaha why is that even legal <-- is it?
18:46:31 <Yahweasel> elliott: Is it just me, or to types ruin EVERYTHING.
18:46:31 <elliott> Yahweasel: If I were you, I'd extend Fythe's grammar thing to allow portions of ad-hoc TC code mixed in with the rest of the grammar... then you can localise the ugly.
18:46:40 <elliott> Also, yes; let's use Forth forever.
18:46:47 <Vorpal> elliott, do typedefs live in a difference "name space" from the variable names?
18:46:58 <elliott> Vorpal: Yes, except variables shadow them.
18:47:00 <elliott> <elliott> Yahweasel: If I were you, I'd extend Fythe's grammar thing to allow portions of ad-hoc TC code mixed in with the rest of the grammar... then you can localise the ugly.
18:47:03 <Yahweasel> elliott: That's how it's intended to work, I just haven't gotten around to adding "terminals" which are functions.
18:47:04 <elliott> Yahweasel: And make the rest of it that GFL thing.
18:47:16 <elliott> So you get all context-free languages without that.
18:47:30 <Vorpal> but A B; following that line
18:47:30 <elliott> <elliott> <Yahweasel> typedef char AA;
18:47:31 <elliott> <elliott> <Yahweasel> void foo()
18:47:31 <elliott> <elliott> <Yahweasel> int aa = sizeof(AA), AA, bb = sizeof(AA);
18:47:41 <elliott> I think A B; /is/ valid afterwards because it's unambiguously the typedef.
18:47:41 <Vorpal> asking about shadowing
18:47:49 <elliott> <elliott> <elliott> <Yahweasel> typedef char AA;
18:47:49 <elliott> <elliott> <elliott> <Yahweasel> void foo()
18:47:49 <elliott> <elliott> <elliott> <Yahweasel> {
18:47:50 <elliott> <elliott> <elliott> <Yahweasel> int aa = sizeof(AA), AA, bb = sizeof(AA);
18:47:52 <elliott> <elliott> <elliott> <Yahweasel> }
18:48:32 <elliott> Never again can a C programmer complain that C++ is impossible to parse.
18:48:41 <Vorpal> elliott, from now on I will say sizeof(char) instead of 1
18:48:52 <elliott> Vorpal: Awesome, now I can type numbers in my C code
18:48:56 <elliott> (9/9) was slow because it used division
18:49:01 <elliott> But sizeof(char) will be resolved at compile time
18:50:00 <Vorpal> elliott, <elliott> I just realised you can probably apply space-filling curves for the storage layout of infinite-in-all-directions chunks. <-- how efficient?
18:50:11 <Vorpal> elliott, you weren't in there
18:56:02 <Yahweasel> ais523: Maaaan, slowpoke looks SO SIMILAR to FFSPG.
18:56:28 <ais523> it is similar in several ways
18:56:35 <ais523> but there are important differences too
18:56:58 <ais523> I mean, slowpoke beat more or less the entire field without tweaking (it did after I finished fixes for obvious bugs), FFSPG didn't even after tweaking
18:57:56 <ais523> and the reason is, slowpoke tries to set up decoys quickly and start attacking quickly, FFSPG spends a long time setting up
18:58:36 <elliott> Yahweasel: It's even better.
18:58:40 <ais523> although slowpoke outruns one major program (it might be FFSPG) by only a few cycles
18:58:43 <ais523> and I didn't realise while making it
18:58:50 <elliott> Yahweasel: Typecast and minus have different precedence.
18:58:52 <elliott> :DDDDDDDDDDDDDDDDDDDDDDDDDDD
18:59:01 <elliott> ;D::D;DDDD;DDDDDDDDDDDDDD;DDD
18:59:16 <ais523> oh, a could be either a type or a variable, so how it parses depends on the identifier table
18:59:29 <elliott> ais523: Yes, we've already covered that, this is just making it even worse ;P
18:59:54 <ais523> it's like return (a, b) in Perl
18:59:57 <ais523> we were both shocked by that one
19:01:08 -!- zzo38 has joined.
19:01:23 <zzo38> I made program in TeX for recording a D&D game. Did you play this D&D game?
19:01:50 <ais523> elliott: parses it as an array constant or comma operating depending on whether the subroutine it's in was called in scalar or list context
19:02:11 <elliott> ais523: is that the trick that one package uses to tell you how you're being called?
19:02:18 <ais523> at least, I think that's the explanation you came up with for the behaviour
19:02:29 <ais523> and probably not; wantarray and caller are both builtin functions
19:02:40 <ais523> so no need for tricks like that
19:03:17 <Yahweasel> I'm fairly certain that Perl literally cannot be parsed.
19:03:37 <Yahweasel> It just runs around and screams then barfs out some data.
19:04:24 <zzo38> Yahweasel: How can that???????????
19:04:39 <elliott> Wow, I think you segfaulted zzo38, Yahweasel.
19:07:11 -!- sebbu2 has quit (Read error: Connection reset by peer).
19:07:37 -!- sebbu has joined.
19:07:37 -!- sebbu has quit (Changing host).
19:07:37 -!- sebbu has joined.
19:09:05 <olsner> the tricky part is making it scream the right things and run in the right direction
19:09:41 <zzo38> Yes, it will have to be
19:11:51 <elliott> reddit title: An Alternative to Floating-Point Arithmetic
19:12:03 <elliott> actual post title: Fixed-Point Arithmetic
19:15:46 -!- monqy has joined.
19:16:00 <zzo38> I often use fixed-point so that the calculation can be done by integers and calculation by integers will be the same on all computers, while with floating-point some computers might have different precision or other differences. TeXnicard does not use floating point for anything at all, except to optimize compression of PNGs (which are compressed losslessly anyways, so it is not a problem).
19:33:37 -!- oerjan has joined.
19:34:11 <elliott> oerjan once joered an an but don't take _my_ word for it
19:34:48 <elliott> so hey I think self-BCT in Thue is easy
19:37:10 <olsner> BCT (or self-bct) does look like a thing that would not be hard to write in Thue
19:38:28 <elliott> I think I've done the cyclic part, and the 0 command
19:39:24 <oerjan> elliott: regarding the /// /\ quine, i should note that i'm not able to write /\ only programs myself without somewhat auto-generating them. in case you had any doubt about that.
19:39:53 <olsner> you could have an end-of-string marker and a marker for "put bit at end in progress" that moves forward until it reaches the end
19:40:15 <elliott> olsner: you have to go back first mind
19:40:32 <elliott> oh and avoid destroying commands as you execute them
19:41:00 <oerjan> for more freestyle programs it's easier, and i mainly use a bit of s/[\\/]/.\&/g for convenience
19:42:01 <olsner> elliott: I don't think what I said is an argument against needing to do other things as well :)
19:42:25 <zzo38> I don't need any weapon. I have marble and slate board!
19:43:23 <oerjan> i guess in principle BCT is almost easier in /// than thue since you can "easily" move data to the other end of the string
19:43:26 <elliott> http://sprunge.us/LYTN ;; what I have so far
19:43:47 <elliott> all that's left is making 1x move to the right, append, and go back, if it's one
19:44:02 <elliott> oerjan: yeah, but it loops
19:44:05 <elliott> so with /// you need quining
19:45:53 <elliott> I think this is all of it?
19:46:57 <oerjan> you can have blank lines inside thue programs?
19:47:32 <elliott> oerjan: i dunno, it was just for my ease of coding
19:47:43 <elliott> first block handles 0 (and also getting back to ip going forwards, used later)
19:48:00 <elliott> third, fourth and fifth block handle one's effects
19:48:07 <elliott> last block handles cycling
19:48:09 <oerjan> yeah i found the first block intuitive
19:48:18 <elliott> oerjan: basically the only problem is getting around
19:48:28 <elliott> one has to go all the way to the left, /then/ all the way to the right, /then/ back to the IP
19:48:41 <oerjan> elliott: i think you sort of end up emulating a turing machine, almost.
19:48:53 <elliott> well self-BCT is arguably a turing machine
19:49:06 <elliott> BCT is basically a turing machine specification language, obviously
19:49:16 <olsner> when do you need to go all the way to the left except after IP reaches end-of-program?
19:49:24 <elliott> olsner: 0 deletes leftmost bit
19:49:44 <olsner> aha! the leftmost bit, I thought it deleted at IP
19:50:05 <elliott> gah the thue js interp is down
19:50:24 <oerjan> elliott: i think you may be able to identify < and {
19:50:39 <elliott> oerjan: possibly; that's just confusing though :)
19:50:41 <zzo38> Do you like to read Dungeons&Dragons recordings?
19:50:57 <elliott> can I just say that Thue's IO is incomprehensibly ugly
19:52:19 <ais523> zzo38: it's more fun to play than to read other people's games
19:52:39 <elliott> ais523: maybe you like it, but just never do it?
19:52:42 <elliott> if zzo38 can be a fan of cricket...
19:52:42 <oerjan> well the dread gazebo was pretty funny
19:52:47 <olsner> elliott: if you need to run some Thue code and have a spare apache server lying around ... :P
19:53:09 <zzo38> ais523: Yes it is, but still is sometimes good to read it too (it also includes all character data, as well as the events in the game).
19:53:31 <olsner> I haven't posted the new version of the compiler or its runtime system though
19:53:40 <oerjan> i'm not sure if i have read any others. except darths & droids which doesn't really count
19:53:57 <elliott> olsner: runtime system lol
19:54:59 <oerjan> well cpressey is the one with an "implement multiple esolangs in javascript" project, isn't he
19:55:04 <zzo38> oerjan: Yes there are some of those. Perhaps look at mine see if it interests you at all. If you have additional questions/comments I can also take them into considerations
19:55:23 <elliott> oerjan: it's actually java
19:55:38 <olsner> elliott: yeah :) I should extend the compiler to output it automatically though - I just didn't know how to output constant strings from sed when I originally wrote the code
19:56:00 <zzo38> Yes, is Java. But there are some mistakes on those program, but it can be improved later, hopefully
19:56:42 <elliott> do the mistakes include having a comprehensible ui
19:57:16 <zzo38> elliott: No, I mean things that fail to work properly, although some of them might have been corrected by now (I haven't checked).
19:57:40 <zzo38> The two other player characters I do not have their character sheets, so I have not put their data in. But you can guess by the story text, what their data might be?
19:59:00 * oerjan swats elliott -----###
19:59:03 <zzo38> Did you read it yet?
19:59:15 <oerjan> i'm not really interested
19:59:43 <zzo38> Do you ever play D&D game?
19:59:54 <zzo38> If so, would the program I used to record it, helping you at all?
19:59:57 <oerjan> only once, at a convention
20:00:36 <olsner> elliott: if you extend your interpreter to several in-progress instructions, e.g. by having a couple of different instruction pointers, you could make it parallelisable by a parallel thue interpreter
20:00:51 <zzo38> I have played Big Eye Small Mouth game once at an anime convention.
20:01:01 <elliott> olsner: it might even work if you have multiple ips
20:01:19 <elliott> it'll get stuck if two movers meet though i think
20:02:02 <olsner> yeah, but obviously you won't get any speedup unless the thue interpreter is also doing replacements in several threads :)
20:02:29 <elliott> speedup of a totally different language :P
20:03:02 <olsner> I think you need to make sure movers never cross each other, so the output ends up in the right order
20:03:12 <oerjan> elliott: your program is of course intrinsically single-threaded, because it is essentially using one char as TM head all the time
20:03:22 <elliott> oerjan: not if you add two IPs
20:03:30 <elliott> it _might_ even not break :D
20:03:37 <elliott> you'd need rules for the movers to move around each other really
20:03:43 <olsner> instruction-level parallelism :)
20:04:29 <olsner> or maybe elliott is talking about multiself-bct
20:04:54 <zzo38> Tell me, one thing, what is missing from this D&D recording program? Is there any improvement to suggest?
20:05:05 <oerjan> elliott: the current IP being the self, i guess
20:05:18 <elliott> just put multiple |s in different places in the same program :P
20:06:02 <oerjan> elliott: oh! you might in fact end up with a "thread" changing between IPs this way
20:06:16 <elliott> oerjan: you mean e.g. >< or similar?
20:06:17 <oerjan> since the X's are not distinguished
20:06:41 -!- zzo38 has left.
20:06:53 <olsner> but what I meant was making the singlethreaded self-bct just run faster by parallelising the interpreter, not changing its behaviour in any way
20:07:06 <oerjan> actually this might mean you always run either the first or the last X, dependent on which instruction you did last
20:07:12 <oerjan> since that's what you hit
20:07:52 <oerjan> oh and what if two threads are running the same X simultaneously... can we get racing condition :D
20:08:10 <oerjan> (with instructions for the same X being done in the "wrong" order)
20:08:31 <olsner> both threads, racing to the end of the string :)
20:09:50 -!- cpp_programmer has joined.
20:10:24 <elliott> cpp_programmer: I program in the C preprocessor too
20:10:29 <elliott> although I've never got that list library to work
20:10:31 <olsner> heh, I completely missed the "if L>0:" part as well
20:10:43 <oerjan> olsner: that won't work because there is always just one possible substitution. well i guess you could parallelize the search for where it is.
20:10:49 <elliott> olsner: I don't think self-BCT can be parallelized
20:11:49 <monqy> one time I tried programming in the c preprocessor. it was nightmarish.
20:12:17 <elliott> crystal-cola: hey, it's TC
20:12:26 <olsner> elliott: I guess not, at least not unless you start by adding the ridiculous extra steps required to implement it in Thue
20:12:26 <elliott> modulo probably-OK-by-the-standard implementation limits
20:12:34 <elliott> crystal-cola: there's a full functional language implemented in cpp
20:12:47 <elliott> order-pp being the language
20:13:34 <elliott> crystal-cola: btw both are actually defined for real whirrled usage :D
20:13:44 <olsner> so what you can parallelise is having several in-flight movers (and checkers) to the left and appenders to the right
20:14:01 <elliott> former is a big generic library, latter is a functional language that can actually be used to automate code generation
20:14:10 <crystal-cola> Well, the answer is simply that the preprocessor is _not_ Turing complete, at least not if the program is preprocessed only once
20:14:13 <elliott> crystal-cola: I'll find that Usenet post with the bignum fibonacci in cpp
20:14:28 <olsner> hmm... I think you should be able to start running every instruction in the program at the same time?
20:14:44 <elliott> crystal-cola: this is pointless, you're wrong but you're not even backing your claim up with any evidence
20:14:59 <oerjan> elliott: i see a bug in your _ handling - what if a 1x command is wrapping?
20:15:38 <olsner> hmm, well, almost at the same time... you have to find the boundaries between instructions before starting work on them I guess
20:15:43 <elliott> crystal-cola: prove it; I have my own proof: there's a full functional language with lambdas and recursion implemented in cpp
20:16:00 <elliott> as well as, separately, enough infrastructure to write a (I forget whether iterative or recursive) bignum fibonacci
20:16:31 <elliott> crystal-cola: http://groups.google.com/group/comp.lang.c/msg/082ffefaaed3b450
20:16:41 <oerjan> elliott: other than that it looks eminently plausible
20:16:53 <elliott> "The program above computes the 500th Fibonacci number with the
20:16:53 <elliott> preprocessor. It takes about 20 seconds to compile with GCC on the Linux
20:16:53 <elliott> VM that I'm running on a mid-range machine."
20:17:29 <olsner> "Note, BTW, that I'm not suggesting that computing Fibonacci numbers with the preprocessor is advisable."
20:18:05 <olsner> granted, this is #esoteric and such things are COMPLETELY NORMAL, but that's the kind of dramatic understatement we all live for
20:18:23 <elliott> crystal-cola: so what's your evidence that the c preprocessor is sub-turing
20:19:26 <elliott> it gives the sf project for the top result here...
20:19:37 <monqy> I googled chaos preprocessor and I got it as top result too
20:20:00 <crystal-cola> http://cvs.sf.net/viewcvs.py/chaos-pp/order-pp/example/lambda/lambda.c?view=markup
20:20:32 <elliott> just check out the repository ...
20:20:37 <elliott> http://sourceforge.net/projects/chaos-pp/
20:20:39 <crystal-cola> http://sourceforge.net/projects/chaos-pp/files/
20:20:55 <monqy> http://chaos-pp.cvs.sourceforge.net/chaos-pp/
20:21:11 <monqy> hello these are files??
20:21:17 <elliott> crystal-cola: C Preprocessor.
20:21:20 <elliott> you know, the stuff with hashes.
20:21:24 -!- Mannerisky has quit (Ping timeout: 260 seconds).
20:21:34 <elliott> It's linked right there on the SF project page
20:21:37 <olsner> monqy: you should've just said "REPOSITORY" until he got it
20:21:38 <elliott> crystal-cola: see C99 standard
20:22:11 <elliott> http://chaos-pp.cvs.sourceforge.net/viewvc/chaos-pp/order-pp/example/fibonacci.c?revision=1.8&view=markup this is what fibonacci looks like in teh functional language btw
20:24:35 <elliott> if you're trying to read the source to order don't bother, it's insane
20:24:39 <elliott> chaos-pp is a bit more readable
20:25:57 <oerjan> <Gregor> I'll bet (note: no actual bet) that you could divide indentation-sensitive languages into two CFL (or near-CFL?) parsing steps given the "view it as a 2D array" approach, one of which is top-to-bottom-then-left-to-right and essentially ends up being the brace-adding preprocessing step (this in the case of Python where it really is just brace-adding), and the other is a standard left-to-right-then-top-to-bottom by-the-book parser.
20:26:34 <elliott> crystal-cola: I don't even know, all my similar attempts have failed
20:26:39 <oerjan> and _i'll_ bet (note: no actual yadda yadda) that won't work for haskell's "add implicit } on error" rule
20:26:40 <elliott> I think you basically have to write a sort of FSM
20:26:45 <elliott> using token pasting to generate macro names
20:29:36 <oerjan> although i approve of the idea, since that's one way bfjoust (({{}})%)% can be parsed
20:31:34 <oerjan> <elliott> so i hear obama died
20:31:45 <elliott> ya they killed him outside his home
20:31:52 <oerjan> <crystal-cola> Will the death of Osama bin laden lead to any new insights into the Riemann hypothesis?
20:31:55 <elliott> and now he isn't president any more
20:32:11 <oerjan> my impression is a lot of people think osama died years ago
20:32:30 <oerjan> and all the recordings are fake
20:32:38 <elliott> osama died because of cqpitalism
20:32:54 <olsner> I did too, but I think I might have confused him with saddam hussein
20:33:01 -!- Yahweasel has changed nick to Gregor.
20:33:08 <oerjan> (something about how the video always stops whenever he speaks about something recent)
20:33:23 <oerjan> leaving just an easily faked audio part
20:33:25 <Gregor> Argh, I'm so tired of bip renaming me whenever I reconnect :P
20:33:27 -!- Gregor has changed nick to Yahweasel.
20:35:21 <oerjan> this is just a sign that humanity will soon become slaves of our new weasel overlords
20:35:40 <oerjan> whom i for one welcome, of course
20:36:44 <olsner> elliott: what was the bug about _ in that interpreter of yours?
20:36:50 <elliott> olsner: basically one can wrap
20:36:54 -!- Slereah_ has joined.
20:36:54 <elliott> you can have the last bit be one
20:37:00 <elliott> and its "parameter" (bit to append) be the first bit
20:37:05 <elliott> so you potentially need to wrap in that case
20:37:14 <elliott> you just need another mover character
20:37:44 <olsner> eugh, can't you just remove that particular rule and say that a final 1 is invalid or something?
20:38:08 <elliott> the fact that you need a beginning and an end is an implementation detail
20:38:12 <elliott> ok the fact that you can append sort of makes it not
20:38:16 <elliott> it's much prettier this way
20:38:21 <olsner> bitwise left-to-right repeating tag
20:38:23 <elliott> also I'd doubt its TCness if that was invalid
20:39:09 <dnm_> Haskell guys getting it from both ends.
20:39:12 -!- Slereah has quit (Ping timeout: 240 seconds).
20:39:17 <dnm_> #esoteric and now, #fsharp.
20:39:41 <elliott> don't swear in this channel please "fsharp" is very offesnive
20:40:00 <dnm_> http://codepad.org/sy6mvs1j
20:40:07 <Yahweasel> I am personally offended by that word.
20:40:10 -!- elliott has set topic: ouer heaerts go out to htose in the recent nfunctionslkaj disotasietr whenjk jtwentyfurou don stewrarts losjot theries liveseils to fsharppe | "Programming may one day be about getting the maths right" -- Alan Alda | "Functional programming is more than just esoteric; it’s becoming somewhat cool." -- Tiger Woods | "Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/es.
20:40:20 <dnm_> Is anyone professionally offended?
20:40:39 <olsner> hmm, I kind of agree that it should loop... that loopiness probably interferes with my plans for parallelising it
20:41:26 <oerjan> elliott: got cut off after /logs/es
20:41:28 <oerjan> <crystal-cola> gcd 111..111 111..111 = 111..111?
20:41:34 <elliott> oerjan: i doinaent coiarje
20:41:44 <oerjan> those are (10^n-1)/9 and (10^m-1)/9.
20:41:45 <elliott> yuorew uro so sinsensentive to htohe djon stewrajkrts of htiosj lowrlds
20:42:19 <oerjan> multiplying by 9 won't change anything much, so...
20:43:07 <olsner> or maybe you could like wait for all other activity to finish before a wrapping final 1 starts executing, and that would potentially solve itself by the same mechanism that makes all the other instructions take effect in the right order
20:43:27 <elliott> why don't we just make super-parallel self-bct
20:43:32 <elliott> every instruction in the string is executed simultaneously
20:44:06 <oerjan> so essentially the question reduces to whether gcd (a^n-1) (a^m-1) = a^gcd(m,n)-1 always
20:44:17 <elliott> excuse me i just invented the most elegant language
20:44:41 <olsner> elliott: exactly what I said like 30 minutes ago
20:44:51 <elliott> well i said it better because im better than you obviously duh
20:45:02 <oerjan> (the latter always divides the former, at least)
20:45:05 <elliott> oerjan: make that olsner guy stop talking hes silly
20:46:02 <elliott> http://upload.wikimedia.org/math/6/1/f/61f34aa25871e9546b6a11243e1bed31.png
20:46:03 <oerjan> elliott: i'm sorry i'd rather not; the last time i banned someone for silly reasons a regular left in a huff for _weeks_
20:46:04 <elliott> let's play this game again
20:46:23 <ais523> oerjan: did you unban them again?
20:46:47 <oerjan> antiantioptbot is no longer banned
20:47:41 <elliott> "Mu'ammaral" lol what is this name even
20:47:55 -!- Slereah_ has quit (Ping timeout: 276 seconds).
20:48:10 <oerjan> the -al is the definite article, and should not attach to the previous word.
20:48:15 <olsner> elliott: there's a space there - consult the color coding of the image
20:48:37 <elliott> olsner: hmm, are you sure? The blue segment ends with dash or space or nothing
20:48:48 <elliott> Which would lead to the possibility of "Foo- Bar" or "Foo Bar" which is just stupid
20:50:07 <olsner> hmm, you have a point there... maybe the "r" is actually "r "
20:50:23 <elliott> olsner: It probably just means that the space can be replaced with those.
20:50:41 <elliott> Kedthaffy hahaha this are just so great
20:51:49 -!- Phantom_Hoover has joined.
20:52:28 <oerjan> crystal-cola: lessee (a^(m+n)-1) = a^(m+n)-a^m + a^m-1 = (a^n-1)*a^m + (a^m-1), meaning gcd(a^(m+n)-1, a^n-1)) = gcd(a^m-1, a^n-1); then gcd(a^m-1, a^n-1) = gcd(a^gcd(m,n)-1) follows by noting that each such step does a part of the euclidean algorithm on the exponents.
20:52:29 -!- Slereah has joined.
20:53:54 -!- cpp_programmer has quit (Quit: Ex-Chat).
20:54:53 <oerjan> er s/gcd(a^gcd(m,n)-1)/a^gcd(m,n)-1/ as well
20:57:37 <oerjan> Vorpal: ^ you wondered about this as well
20:59:55 -!- Slereah_ has joined.
21:02:25 -!- Slereah has quit (Ping timeout: 276 seconds).
21:10:18 -!- Slereah has joined.
21:11:30 -!- Slereah_ has quit (Ping timeout: 240 seconds).
21:15:06 <olsner> hmm, just wrote a really complicated haskell program that (in effect) multiplies some peano numbers and determines that mo'amer khuzzaffi has 38400 names
21:15:27 <elliott> olsner: the page says that some combinations are invalid :)
21:15:38 <elliott> However, not all are possible, as some alternatives are most probably combined with others, or even impossible with others (for example, simplification of geminated [m:] usually implies simplification of [a:]).
21:15:39 <olsner> I know, but I don't care :P
21:15:46 <elliott> FIGHT THE (PRESCRIPTIVIST) POWER
21:15:58 <elliott> olsner: can you make a random bin laden/gaddafi name bot plz
21:16:43 <olsner> I only have an IRC bot in sed, and I don't want to rewrite this in sed :P
21:16:43 <elliott> http://en.wikipedia.org/wiki/Osama#Variations_of_Osama_bin_Laden.27s_name
21:17:28 <elliott> olsner: I have to say the zz is very stylish
21:17:32 -!- Slereah_ has joined.
21:18:09 <elliott> مُعَمَّر ٱلْقَذَّافِيّ wow that's a mess
21:18:16 <elliott> even has one character my system can't render unless it's an actual square
21:18:28 -!- Slereah has quit (Ping timeout: 276 seconds).
21:19:23 <crystal-cola> how do I just do something simple like plot the zeros of a polynomial?
21:21:22 -!- ais523 has quit (Remote host closed the connection).
21:22:08 -!- Yahweasel has changed nick to Gregor.
21:22:18 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:22:19 <Gregor> I HAVE DISCOVERED: BEST LICENSE
21:22:34 <Gregor> "You may, at your option, use this software under the terms of any of the following licenses:"
21:22:51 <Gregor> (list every license approved by OSI, FSF and Debian)
21:23:19 <Gregor> Because license disjuncts are the bestest!
21:24:28 <elliott> Gregor: Also, it should be "This software is licensed under all the below licenses simultaneously:" :P
21:25:17 <Gregor> That's not "from" anything, but it stems from my amusement at e.g. jQuery being licensed under the retarded MIT/GPL disjunct (AKA a license by people who have no fucking clue what a license is), and Mozilla being under the bizarrely-redundant MPL/GPL/LGPL disjunct.
21:25:34 <Gregor> For some reason, every license disjunct seems to include at least one strict subset relationship.
21:26:08 <elliott> There is... literally no reason to ever pick the latter :P
21:26:13 <elliott> Even if you want to make a horrible GPL-only fork you can do that with MIT.
21:26:43 <Gregor> It is the "we have no understanding of licenses" license.
21:26:59 <elliott> Well, Reisig is a Mozilla guy, so he must have inherited the stupid :P
21:27:30 <Gregor> At least with the Mozilla situation, two of the licenses are strictly incompatible.
21:27:31 <elliott> "Used by over 43% of the 10,000 most visited websites, jQuery is the most popular JavaScript library in use today.[2][3]"
21:27:35 <elliott> SADLY NEITHER CITATION WAS GREGOR'S PAPER
21:27:43 <elliott> Gregor: Isn't the MPL thoroughly fucked up?
21:27:49 <Gregor> It's a pretty lolsy license.
21:27:58 <elliott> Gregor: It's like the Apache license, right?
21:28:03 <elliott> Which I have down in my head as "most stupid license ever never use".
21:28:29 <Gregor> No, as I recall, the MPL is relatively short and simplish, but just happens to disagree with the GPL for some stupid reason. I don't quite recall though.
21:28:32 <elliott> Apache is incompatible with GPL [two], I wonder how it managed that
21:28:38 <elliott> (But compatible with [three])
21:28:49 <elliott> The Apache Software Foundation and the Free Software Foundation (FSF) agree that the Apache License 2.0 is a free software license, compatible with version 3 of the GNU General Public License (GPL).[7] Compatibility in this case means that since the GPL version 3 is considered a superset of the Apache License 2.0, a project combining GPL version 3 and Apache License 2.0 code will need to be licensed under the GPL version 3[8].
21:28:49 <elliott> However, the Free Software Foundation considers all versions of the Apache License (as of 2007) to be incompatible with the previous GPL versions 1 and 2.[9][10]
21:29:00 <Phantom_Hoover> elliott, have you *still* not got your number keys fixed?
21:29:20 <elliott> That might be true, PH, it might be ture.
21:41:54 -!- cpressey has joined.
21:43:42 <cpressey> A while ago I reminisced on this channel about coding Minesweeper in Turbo Pascal back in the day, then got confused about the timing and figured it must have actually been in Turbo C++. Well, I found the source code, and it turns out it was indeed Turbo Pascal.
21:44:13 <cpressey> Just wanted to post that erratum here, for all who care deeply about historical accuracy.
21:44:36 <elliott> ive been losing sleep over it
21:44:50 <elliott> hey can you link to yoob i hear it does thue
21:45:03 -!- azaq23 has joined.
21:48:25 <cpressey> I care deeply about contemporary accuracy too. Therefore: yes, yes it does do Thue. http://bit.ly/yoob
21:49:13 <cpressey> I implemented it in a couple of hours
21:49:27 <elliott> http://catseye.tc/lab/yoob/applet.html <-- Dear future people: this had all these languages way back
21:49:35 <elliott> cpressey: how did you fit turbo pascal in ther
21:50:02 <oerjan> ...at least it wasn't goatse.
21:50:22 <elliott> note to the future// goatse is a slang meaning "un-gay and hip"
21:52:55 <monqy> what do un-gay and hip mean in the future
21:55:03 <oerjan> un-gay is of course the term for what we now call heterosexual or straight.
21:55:48 <oerjan> this is of course wildly looked down on in general
21:55:50 <elliott> un-gay just means you are a robot silly oerjan stop trolling the future
21:56:00 <elliott> it is the only solution to over popperlation
21:56:05 <monqy> do robots have hips
21:56:17 <monqy> does the future have hips
21:56:37 <oerjan> robots and industrious people have hips
21:56:40 <elliott> (dear future hips are vestigal limb meaning jisdfo)
21:56:48 <oerjan> lazy people however have evolved into blobs, which don't
21:56:48 <elliott> (what jisdfo is, is self-evident)
21:57:56 <oerjan> the word "perol" started out as a pun after a nuclear disaster caused by a computer program having an "o" for "i" typo
21:58:42 <oerjan> however over the centuries its meaning shifted to clumsy people (with hips)
21:59:28 <oerjan> dear future: "its" means what "it's" means for you, and vice versa
22:00:19 <oerjan> this was decided by robot arbitration to stop the Great Grammar War
22:00:46 <oerjan> (i mean the future meaning)
22:01:40 <olsner> its's it's future meaning?
22:01:49 <elliott> oerjan: lead by the grammar nazi's
22:02:36 -!- cpressey has quit (Quit: Living in the Past).
22:04:23 <oerjan> "satlins" is a portmanteau of "satellite" and "earthlin" (which lost the final g). this was a utopian society formed in (mostly) low earth orbit. it went the way of all utopian societies of course.
22:04:38 <elliott> oerjan: yes this is also communism
22:04:47 <elliott> Phantom_Hoover is talking while asleep by using advanced science
22:04:49 <elliott> YOU WILL NEVER DISCOVER IT FUTURE
22:05:08 <elliott> AND EVERYONE IN THE PAST MWAHAHAHA
22:05:11 <elliott> Let us never speak of it again.
22:05:23 -!- cheater2 has quit (Quit: Leaving).
22:05:33 <elliott> i want to dedicate my life to fucking with historians now
22:05:37 <elliott> NOT THAT THAT HAS ANY RELEVANCE TO ANY OF THIS
22:05:45 <elliott> (note: sarcasm does not exist in this time so i cannot be using it)
22:05:56 <oerjan> there is a difference of opinion whether nazis or satlins were the worst, if you ignore scale. the former at least never sterilized australia.
22:07:30 <oerjan> (note: sterilized here means in the disinfectant sense, not the fertilization sense. the latter they did with great britain instead, as part of their effort to exterminate gingers.)
22:08:08 -!- Phantom_Hoover has quit (Remote host closed the connection).
22:08:57 <oerjan> oh and the satlins weren't communist, they were libertarians. at least for the first twenty years, before all went really downhill.
22:10:22 <oerjan> (note to the future: downhill means approximately what down orbit means to you.)
22:10:49 <elliott> (xD is the face of a gerafe)
22:13:54 <oerjan> the "gerafes" or german apes were a hugely successful experiment in cloning technology. the satlins nuked most of them alas.
22:14:34 <oerjan> the remainder artificially interbred with humans until the species merged completely.
22:15:50 <oerjan> (note to the future: the word "artificially" here may seem redundant to you, but wasn't at the time (or ours))
22:17:11 <oerjan> (at the time it was still possible for > 90% of the population to breed without the help of technology.)
22:18:04 <elliott> only fourteensj percent now alas
22:18:47 <oerjan> this reduced to about 40% after some satlin nuking, then as elliott mentions to 14% when genetic engineering started making people _really_ diverge.
22:19:41 <oerjan> his mother is a famous artist by the name of Sarah Jessica Parker.
22:19:48 <myndzi> what the hell are you guys talking about o_O
22:20:05 <oerjan> myndzi: we are just explaining things to future logreaders
22:20:49 <oerjan> elliott has been known to do so
22:21:00 <crystal-cola> just imagine every time in the future when anyone reads this log
22:22:18 <elliott> crystal-cola: it's infinite
22:22:57 <oerjan> myndzi is the inventor of conversational unicode dancing. sadly he dies in a freak accident just as it really takes off.
22:23:28 -!- Slereah has joined.
22:23:45 -!- azaq23 has quit (Quit: Leaving.).
22:24:10 <elliott> crystal-cola: belieeeyeve wat
22:24:16 <oerjan> it will gradually evolve into a new form of electronic calligraphy
22:24:19 <myndzi> i didn't program it for that one, too possible to crop up in conversation somehow
22:24:19 -!- Slereah_ has quit (Ping timeout: 276 seconds).
22:24:27 <crystal-cola> that this log will be read INFINITELY many time
22:25:50 <oerjan> and become a part of ornamental mobile 3d printing design
22:27:28 <oerjan> i am still talking about myndzi's dancing, btw
22:28:03 <elliott> well if i was immortal i'd probably read it like once every ten trillion gajillion years
22:28:47 <oerjan> until around 2140, when it becomes deader than disco, ironically at the same time as a new music form fusing disco and scruff takes off
22:30:37 <oerjan> (disco here refers to another dance form from the 1970s, not to its future meaning of flat rotating habitats)
22:31:59 <crystal-cola> ((x)) = 0 if x is an integer x - floor(x) - 1/2 otherwise
22:33:11 <oerjan> hm but the limits from each side are -1/2 and 1/2, so it's a sort of average
22:36:02 -!- pikhq has joined.
22:42:12 -!- Slereah_ has joined.
22:42:47 -!- Slereah has quit (Ping timeout: 240 seconds).
22:44:12 -!- crystal-cola has quit (Quit: leaving).
22:53:43 <elliott> f(n) = chaitin's omega to the power of n if n is computable
22:53:49 <elliott> else the closest computable number to n
22:54:20 <oerjan> um, surely there is no such thing as "closest computable number"
22:55:00 <oerjan> because all rational numbers are computable
22:55:39 -!- Slereah has joined.
22:55:48 <oerjan> yes. but if a real number is non-computable, it will not be rational, and for every candidate there will be a rational number that is closer
22:56:09 <oerjan> so there can be no closest computable number.
22:56:40 -!- Slereah_ has quit (Read error: Operation timed out).
22:57:06 <elliott> f(n) = chaitin's omega to the power of n if n is computable
22:57:15 <elliott> else the closest irrational computable number to n
22:57:29 <oerjan> ...there's no such thing as that either
22:57:53 <oerjan> because you can always adjust it by adding a rational to get it a little closer
22:58:24 <oerjan> irrational computable + rational = irrational computable
22:58:39 <elliott> else the closest irrational computable number with a kolgomorov complexity of no more than log_two(n) squared
22:58:43 <oerjan> (this applies to irrational and computable separately, of course)
22:59:24 <oerjan> i'll admit that one :D
22:59:38 <elliott> btw the "bitches" is part of the definition obviously
23:00:40 <elliott> oerjan: can you write a paper on that function plz
23:00:56 <elliott> oerjan: preferably with a graph
23:01:33 <oerjan> graphing uncomputable functions isn't my kind of thing, really.
23:02:47 -!- FireFly has quit (Quit: swatted to death).
23:04:24 <elliott> oerjan: isnt it everyones thing
23:05:08 * oerjan wonders about that RobotRollCall guy on reddit
23:06:14 <oerjan> most of the time he writes nice scientific comments (and has a huge karma to show for it), but sometimes it looks like he keeps insisting that he is right when he isn't.
23:06:27 <elliott> they cant accept that theyre wrong
23:06:44 <elliott> oerjan: examples of the latter? his first page of comments seem ok
23:07:19 <oerjan> what set me off this time was this conversation http://www.reddit.com/r/Physics/comments/h1eb7/black_hole_question/c1rxhc1
23:08:03 <oerjan> admittedly the opponent is more rude, but i _still_ think robotrollcall is wrong there
23:08:45 <elliott> respond be sure to mention you have a phd
23:09:01 <oerjan> i _still_ don't have an account :D
23:09:28 <elliott> oerjan: "Wikipedia, eh? Imagine my surprise." ;; it seems like he's the typical intelligent-and-well-educated-but-dicky nerd :P
23:09:43 -!- elliott has quit (Remote host closed the connection).
23:10:13 * oerjan should have mentioned he hasn't read the conversation to the bottom yet
23:10:31 -!- Slereah has quit (Ping timeout: 252 seconds).
23:10:50 -!- elliott has joined.
23:11:00 * oerjan should have mentioned he hasn't read the conversation to the bottom yet
23:11:19 <elliott> "The Big Bang can be likened to the Great Depression in the United States of America."
23:11:22 <elliott> want to take out of context forever
23:11:46 <elliott> the big bang is really cool
23:11:55 <elliott> it's weird to think of mutable physics
23:12:07 <elliott> hmm, self-modifying physics, even
23:13:20 -!- Slereah has joined.
23:16:04 -!- pikhq has quit (Quit: Lost terminal).
23:26:26 -!- Slereah_ has joined.
23:27:37 -!- Slereah has quit (Ping timeout: 260 seconds).
23:27:40 -!- wareya_ has quit (Read error: Connection reset by peer).
23:28:33 -!- wareya has joined.
23:44:31 <oerjan> !slashes /CB/C\\1\/\/C\\1\/C\\2\/\/W\\B\//CE/\/\/C\\2\///WD/worCB ZOMG A COMMENT! CEld!/Hello, WD
23:46:08 <oerjan> !slashes /CB/C\\1\/\/C\\1\/C\\2\/\/W\\B\///CE/\/\/C\\2\///WD/worCB ZOMG A COMMENT! CEld!/Hello, WD
23:46:39 <oerjan> !slashes /CB/C\\1\/\/C\\1\/C\\2\/\/W\\B\///CE/\/\/C\\2\///WD/worCB ZOMG A COMMENT! CEldCB AND ANOTHER ONE! CE!/Hello, WD
23:46:51 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:47:33 -!- Slereah has joined.
23:48:21 -!- Slereah_ has quit (Ping timeout: 240 seconds).
23:49:20 <oerjan> figuring out how one might put comments inside a /// substitution
23:50:10 <oerjan> (this won't work for substitutions that need to repeat themselves on their result, of course)
23:51:26 <elliott> are you trying to make it a usable language? :D
23:51:28 <oerjan> it would be particularly useful inside a main program quoted loop
23:52:32 <oerjan> you would note i have always used methods to achieve proper indentation.
23:54:18 <oerjan> with the deadfish interpreter i even managed to indent without extra [] around the lines _and_ still have the program print spaces and newlines
23:57:40 -!- elliott has quit (Remote host closed the connection).
00:00:17 <tswett> !slashes /%/ZOMG A COMMENT!/Hello, world!
00:00:40 <oerjan> yes, that syntax is useful _outside_ substitutions
00:00:54 <oerjan> (also to delete data in general)
00:02:12 <oerjan> but in a program with looping, most of the program code will be quoted inside a large /P0/.../ substitution, so that method cannot be used directly.
00:02:20 <tswett> !slashes /, world!, world!/Hello\/%\/ZOMG A COMMENT?\//, world!, world!, world!
00:02:23 <tswett> oerjan: I see. Kind of.
00:02:57 <tswett> My way is better because I don't fully understand the benefits of your way. :P
00:03:10 <oerjan> yes you can do that but then the comment would have to be quoted and copied around each iteration, and you have to note how many nesting levels of quoting/escaping deep you are
00:03:27 -!- zzo38 has joined.
00:03:58 <oerjan> while the method i showed will have the comments removed at the first copying
00:04:53 -!- zzo38 has set topic: ouer heaerts go out to htose in the recent nfunctionslkaj disotasietr whenjk jtwentyfurou don stewrarts losjot theries liveseils to fsharppe | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
00:05:23 <oerjan> the benefit is that you can put comments anywhere inside the main loop with only minimal care or cost.
00:08:25 <zzo38> The reason for removing the quotations about programming is to make the logs URLs to fit. Those were less recent than the text at the beginning, which is why I retained the text at the beginning ("ouer heaerts go...")
00:10:43 -!- Lymia has quit (Ping timeout: 276 seconds).
00:11:39 -!- elliott_ has joined.
00:11:44 <elliott_> <oerjan> ...is _plenty_ usable
00:11:57 <elliott_> oerjan has finally found his favourite language
00:12:04 <elliott_> <oerjan> with the deadfish interpreter i even managed to indent without extra [] around the lines _and_ still have the program print spaces and newlines
00:12:07 <elliott_> how, replacing " " or similar?
00:13:28 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0#//0##/#0//0#/1//|0/|//|/////***
00:13:39 <oerjan> so single spaces without preceding \n were preserved, as well as all but the last \n before space
00:13:44 <elliott_> oerjan: are you /sure/ itwlifjitjisjifisjfjsi is IO-complete?
00:13:53 <elliott_> it seems like there might be some things you cannot do with raw data in slashes
00:14:03 <elliott_> requiring some kind of e.g. character after each byte
00:14:11 <oerjan> note that it reads one character at a time
00:14:16 <elliott_> micahjohnston: did you write that?
00:14:31 <micahjohnston> I've been thinking about how to convert unary to binary all day at school
00:14:38 <elliott_> those slashes at the end are insane
00:14:38 <oerjan> which gives you plenty of room to manipulate it
00:14:51 <elliott_> !slashes /\/\/\//|0//**/*0*//*0/0#//0##/#0//0#/1//|0/|//|///////*//********
00:14:55 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////***
00:15:00 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////****
00:15:04 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////*
00:15:12 <elliott_> doesn't oerjan have such a routine in the deadfish interp though?
00:15:17 <elliott_> i guess there's no real routines with slashes :D
00:15:24 <elliott_> <oerjan> note that it reads one character at a time
00:15:47 <oerjan> elliott_: that's sort of essential, and one reason why thue IO is broken
00:15:48 <elliott_> I still wish it used a nicer delimiter than GG
00:16:04 <micahjohnston> I was paying more attention to slashes than tlaking
00:16:05 <elliott_> hmm, how do you detect EOF with itflab?
00:16:11 <elliott_> micahjohnston: tlaking is hrad
00:16:25 <oerjan> elliott_: i decided when implementing it that EOF gives an empty string
00:16:44 <oerjan> (had to make a choice, and that seemed the simplest)
00:17:12 <elliott_> oerjan: underload->ifjtiwjtjflabjsifsit compiler
00:18:33 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////*
00:18:48 <micahjohnston> I must have some accidental code-as-data in there or something
00:20:00 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|////*
00:20:08 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1////*
00:20:15 -!- Sgeo has joined.
00:21:24 <Sgeo> If I use Hashapass, and an attacker knows the parameter and resulting password, can they get at the master pasword?
00:21:36 <elliott_> Sgeo: if they can that would be the stupidest design ever
00:21:52 <elliott_> considering it's a HASH FUNCTION
00:22:48 <micahjohnston> !slashes /\/\/\/\//\/|0//**/*0*//*0/0#//0##/#0//0#/1//|0/|//|/////*
00:23:09 <micahjohnston> !slashes /\/\/\/\//\/|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////*
00:23:22 <elliott_> oerjan: help the poor guy debug his code
00:29:02 <oerjan> !slashes /\/\/\/\/\//\/\/|0//**/*0*//*0/0#//0##/#0//0#/1//|0/|//|/////*
00:30:07 -!- Lymia has joined.
00:30:15 -!- Lymia has quit (Changing host).
00:30:15 -!- Lymia has joined.
00:32:08 <oerjan> !slashes /\/\/\/\/\//\/\/|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////*
00:33:20 <micahjohnston> is there any clean way to make a sort of fsm with it?
00:33:35 <oerjan> why do you want those /// before the * anyway, makes it much harder
00:33:39 <micahjohnston> as in doing one substitution over and over, then switching to anotehr, then switching back, until neither work or something
00:34:22 <oerjan> you can put the substitutions you want in a main loop
00:34:25 <micahjohnston> !slashes /**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|//|0*
00:34:31 <micahjohnston> !slashes /**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|//|0****
00:34:45 <micahjohnston> I dunno, I was just trying to make only *'s after all the slashes
00:35:45 <oerjan> !slashes /\/\/\//\/\/|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|///*
00:36:09 <oerjan> you need to make a self-replicating subprogram
00:38:25 <micahjohnston> I tried for a long time using a paper to make a quine or a self-replicating program
00:38:44 <oerjan> see http://esolangs.org/wiki/Slashes#Simpler_counter although my own style has changed a bit since that one
00:39:02 <oerjan> (i use . instead of | now, and <> without -)
00:39:23 <oerjan> because . is less noise
00:39:43 -!- Sgeo has quit (Read error: Connection reset by peer).
00:40:04 <oerjan> http://esolangs.org/wiki/Deadfish#itflabtijtslwi is my latest creation
00:40:47 -!- Sgeo has joined.
00:40:57 <oerjan> the basic structure is /./<\\\\>\\\\\\/
00:42:54 <oerjan> then /P1/...quoted code...//P0/P1//<\>///P2/P1/...some initialization...P0
00:43:44 -!- olsner has quit (Ping timeout: 250 seconds).
00:44:21 <oerjan> and in the quoted code somewhere similar commands except with P2 in the spot for the quoted code itself
00:45:25 <oerjan> the /P2/P1/ needs to be /P\2/P1/ in the quoted code
00:46:21 <oerjan> and /<\>/<\\\\>\\\\\\/ instead of the one with .
00:47:30 <oerjan> there is some trickery with where you need to quote with ., with \, and with both
00:48:28 <oerjan> i try to keep those separate notions
00:50:41 -!- augur has quit (Remote host closed the connection).
00:52:11 * oerjan wonders if the deadfish interpreter would have been more readable if he had used | as abbreviation for .\.
00:52:38 <micahjohnston> so the number of times you copy something is the number of times the escape slashes go away
00:53:11 <oerjan> yes, although it's exponential
00:53:13 <micahjohnston> so if you want to make a quine, just copy it one less time than the amount of times you escape everything
00:53:40 -!- olsner has joined.
01:06:07 -!- Sgeo_ has joined.
01:06:20 -!- sebbu has quit (Read error: Connection reset by peer).
01:06:47 -!- sebbu has joined.
01:06:48 -!- sebbu has quit (Changing host).
01:06:48 -!- sebbu has joined.
01:09:06 -!- Sgeo has quit (Ping timeout: 246 seconds).
01:09:06 -!- elliott_ has quit (Ping timeout: 246 seconds).
01:10:28 -!- elliott has joined.
01:10:34 <elliott> oerjan: btw I think | is nicer looking than .
01:11:30 <oerjan> um the idea is _not_ to separate, if you actually want to read the code you mostly need to be able to ignore the .'s...
01:13:44 <elliott> not that anyone can read it :D
01:13:56 <micahjohnston> elliott: how do you type a / at the beginning of a message?
01:14:00 <elliott> micahjohnston: two slashes
01:14:05 <elliott> oerjan: It's cool how you can change the escape character in ///
01:14:13 <elliott> micahjohnston: should work
01:14:49 <oerjan> (not a strongly held opinion)
01:18:26 <oerjan> elliott: anyway i chose . to get it as close to readable as reasonable
01:18:36 <elliott> oerjan: hm here's a thing... /X/\\X/
01:18:39 <elliott> makes a character self-escaping
01:19:12 <elliott> is it actually possible...
01:19:43 <oerjan> any substitution that replaces a character without context _must_ obliterate it from the program.
01:25:41 <zzo38> What would be the maximum possible length of a NSF music that does not repeat if it is played no slower than 120 notes per minute?
01:27:34 <zzo38> NSF is a file format that stores 6502 machine code and is played back using the NES/Famicom audio (including Famicom Disk System).
01:28:31 <oerjan> if it's actual machine code i'd expect it to do exponential processing...
01:28:54 <oerjan> like generating a thue-morse sequence, that is nonrepeating
01:29:17 <oerjan> you just need a big enough counter and some bit twiddling
01:29:55 <zzo38> It is but it is usually run using an emulator not an actual 6502 machine (although it could be). (Actually, there is one difference: The decimal mode does nothing, although it still exists.)
01:30:16 <zzo38> oerjan: Yes it could generate thue-morse sequence but not forever because it is limited by available RAM.
01:31:02 <oerjan> well i think you should be able to get a length of 256^(ram size - overhead)
01:31:29 <elliott> <zzo38> What would be the maximum possible length of a NSF music that does not repeat if it is played no slower than 120 notes per minute?
01:32:02 <oerjan> well i assumed that meant it's not just a repetition of a smaller block
01:32:10 <zzo38> oerjan: Yes probably it could.
01:33:10 <oerjan> and anything larger than 256^(ram size + something small) should be impossible
01:33:29 <oerjan> because it would reach a repeating state
01:40:44 <oerjan> poiuy_qwert is a nick, though
01:41:29 <oerjan> it's rather unlikely i should think
01:42:56 <oerjan> q at the end, w... maybe there is some strange language with a compatible spelling system
01:52:55 -!- augur has joined.
02:18:13 -!- pikhq has joined.
02:37:58 <tswett> Some guy in #haskell earlier today suggested a contest where people write programs that take a very long time to run, but it's not clear why.
02:37:59 <zzo38> And also, what do you damn?
02:38:23 <zzo38> tswett: I don't know either
02:39:17 <tswett> Programs that exploit stuff like cache misses and register overflows and parapneumonic effusions and similar obscure things.
02:39:26 <tswett> And yeah, I don't have a clue.
02:40:49 <zzo38> If you know the exact speed of the computer you are running on you might do so, maybe, if you need certain speeds
02:42:22 <pikhq> tswett: And, no doubt, fucking with the branch predictor.
02:44:09 -!- jack has joined.
02:44:35 -!- jack has changed nick to Guest42164.
02:45:39 -!- Guest42164 has left.
02:48:38 <elliott> that'd take some major fucking
02:48:44 <elliott> an unpredicted branch isn't _that_ slow
02:49:21 <tswett> True. But imagine a loop that's something like ten instructions long, and the branch predictor gets it wrong every time, wasting about another ten clock cycles...
02:49:32 <tswett> No, that wouldn't be that slow at all.
02:49:39 <oerjan> > (\x y -> x / y == 3 / 7) 3 7
02:49:41 <elliott> Yah, but it doesn't get you from "fast program" to "glacial program" :P
02:49:51 <elliott> oerjan: depends on the machine :)
02:50:03 <elliott> that existentialtype blog is starting to bug me with the anti-laziness crap
02:50:23 <elliott> I don't care if he's famous, or even if he's wrong, but it's quite smug
02:50:26 <oerjan> this was from ezyang's blog
02:50:34 <elliott> he links to a post by that guy at the bottom
02:51:52 <pikhq> elliott: Every bit adds up.
02:52:10 <elliott> pikhq: yes but it wont make a program run glacially that looks like it shouldn't
02:52:15 <elliott> to make it noticeable, you have to loop shitloads of times
02:52:19 <elliott> in which case it'll be slow _anyway_
02:52:23 <elliott> even if they got predicted correctly
02:52:24 <pikhq> elliott: Not itself, but it's a nice touch.
02:53:05 <pikhq> elliott: Screw making it a simple, one-line fuckup that makes it slow. I'm imagining every single bit being slower than it should, but not obviously so.
02:53:55 <pikhq> This would, ideally, *also* involve pessimum memory access patterns.
02:54:13 <elliott> pah, that's just constant factor differences
02:55:27 <pikhq> And, of course, a subtle misimplementation of your choice of algorithm that makes it significantly worse O()-wise.
02:56:28 <oerjan> forgetting to memoize perhaps?
02:56:54 <elliott> now we have to invent big-Ø notation...
02:57:06 <pikhq> Forgetting to read from the cache in your memoization?
02:57:11 <tswett> There's a famous misimplementation of the Sieve of Eratosthenes in Haskell.
02:57:39 <tswett> The real Sieve of Eratosthenes: for each prime number, cross off multiples of that prime number; the prime numbers are the ones that are left.
02:58:22 <tswett> The fake one: for each number, take it modulo every prime number (below the threshold) and cross it off once you find one it's a multiple of; if you didn't find any, it's prime.
02:58:25 <oerjan> or if you could use typeclass polymorphism to trigger that supposed inefficiency which the monomorphism restriction is supposed to prevent, causing a value to be reevaluated each time
02:58:45 <zzo38> elliott: Then it is good thing that TeX Computer Modern fonts already includes it and you can now make it in math mode
02:58:48 <tswett> Haskell is probably the best language for this, isn't it.
02:58:54 <elliott> zzo38: YES I AM SO GLAD OF THAT.
02:59:03 <elliott> tswett: laziness offers endless opportunities to make your program go slow
02:59:21 <zzo38> But what is this notation going to do?
03:01:09 * pikhq could fairly trivially make his in-Haskell Brainfuck compiler go uberslow.
03:01:29 <pikhq> Just remove a couple of seqs...
03:02:52 <oerjan> elliott: hm if you could combine it with polymorphic recursion so that ghc _cannot_ figure out which particular specializations it will use often...
03:04:30 <oerjan> or, gets too confused to notice that two branches use the same one.
03:04:40 <elliott> I like the idea of GHC getting confused.
03:04:54 <oerjan> i don't know how clever ghc is about avoiding this.
03:05:05 <elliott> Its job is just so complex that it isn't I can handle this/I can't handle this, it's yep I know what this is about/um i am a bit uncertain about this code/help what is this/aaaaaaaaaa/my brain just exploded
03:05:16 <elliott> (last one being an actual error message :))
03:06:22 <oerjan> oh it might help to split it into modules so ghc cannot see which type the function will be used at while compiling the module.
03:12:02 -!- MDude has changed nick to MSleep.
03:12:23 <oerjan> !haskell {-# LANGUAGE NoMonomorphismRestriction #-} fib0 = 1 : fib1; fib1 = zipWith (+) fib0 fib1; main = print (fib0 !! 20)
03:12:31 <EgoBot> Stack space overflow: current size 8388608 bytes.
03:13:16 <oerjan> hm that would be a sign that actually _does_ confuse ghc
03:14:01 <oerjan> !haskell {-# LANGUAGE NoMonomorphismRestriction #-} fib0 = 1 : fib1; fib1 = zipWith (+) fib0 fib1; main = print (take 20 fib0)
03:14:07 <EgoBot> [1Stack space overflow: current size 8388608 bytes.
03:14:27 <elliott> how can it produce half a number...
03:14:39 <elliott> or did it actually stack overflow in _show_
03:14:46 <elliott> oerjan: no but why no comma before the stack overflow?
03:14:51 <oerjan> no, the fib1 = is erroneous
03:15:06 <oerjan> elliott: because it needs to check if the rest of the list is empty
03:15:45 <oerjan> !haskell {-# LANGUAGE NoMonomorphismRestriction #-} fib0 = 1 : fib1; fib1 = 1 : fib2; fib2 = zipWith (+) fib0 fib1; main = print (fib2 !! 20)
03:16:08 <oerjan> !haskell {-# LANGUAGE NoMonomorphismRestriction #-} fib0 = 1 : fib1; fib1 = 1 : fib2; fib2 = zipWith (+) fib0 fib1; main = print (fib2 !! 30)
03:16:23 <oerjan> !haskell {-# LANGUAGE NoMonomorphismRestriction #-} fib0 = 1 : fib1; fib1 = 1 : fib2; fib2 = zipWith (+) fib0 fib1; main = print (fib2 !! 50)
03:16:39 <elliott> oerjan: it would be nice to do it without NoMonomorphismRestriction
03:16:40 <oerjan> i guess that doesn't trigger it, then
03:16:42 <elliott> since it's a bit of an alarm-bells flag
03:16:55 <elliott> something with typeclasses?
03:17:11 <oerjan> um the monomorphism restriction _is_ something to do with typeclasses
03:17:26 <elliott> produce the same slowing effect with some type class magic
03:17:38 <elliott> you said SOMETHING about that before anyway :D
03:17:45 <elliott> right before you went on about polymorphic recursion
03:18:16 -!- augur has quit (Remote host closed the connection).
03:18:34 <oerjan> um yes typeclasses is precisely what triggers the MR
03:32:46 -!- TeruFSX has joined.
03:40:06 -!- TeruFSX2 has joined.
03:40:45 -!- TeruFSX3 has joined.
03:41:22 -!- TeruFSX3 has quit (Remote host closed the connection).
03:41:52 <elliott> oerjan: why so potable ......
03:42:34 -!- TeruFSX2 has quit (Remote host closed the connection).
03:42:35 -!- TeruFSX has quit (Read error: Connection reset by peer).
03:42:48 <elliott> `addquote <elliott> oerjan: why so potable ...... <oerjan> DRINK ME
03:42:51 <HackEgo> 385) <elliott> oerjan: why so potable ...... <oerjan> DRINK ME
03:42:53 <micahjohnston> !slashes /\/\/\/\\\\/\\\\\\\/\\\\\\\/\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\//\/\/\/\\\/\/\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\////\\\ ...
03:42:59 <micahjohnston> ... ///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\////\\\///\\////\\\///\\\///\\////\\////\\////\\////\\\///\\////\\\///\\////\\////\\\///\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\////\\////\\////\\////\\\///\\////\\////\\\///\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\\///\\////\\\///\\\///\\////\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\/// ...
03:43:05 <micahjohnston> ... /\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\////\\////\\////\\////\\\///\\////\\////\\\///\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\////\\////\ ...
03:43:07 <elliott> put it on a pastebin and give a url
03:43:11 <micahjohnston> ... \////\\\///\\////\\\///\\////\\\//\/\/\/\\\/\\\/\\////\//\//\/\/\/\\\\/\\//\\\/\\\/\\\/\\\\\\\/\\\\\\\/\\\/\\\\////\//\//\/\/\/\\\\/\\\/\\\/\\\/\\\\\\\\\\////\/\/\
03:43:16 <elliott> put it on a pastebin and give a url
03:43:27 <oerjan> it's already on my website i'm sure
03:43:39 <elliott> what the great Oer Jan has no website
03:43:43 <elliott> he's too busy being potable.
03:43:50 <oerjan> !slashes http://oerjan.nvg.org/esoteric/slashes/quine.sss
03:44:22 <EgoBot> /\/\/\/\\\\/\\\\\\\/\\\\\\\/\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\//\/\/\/\\\/\/\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\////\\\///\\////\\\///\\////\\\//
03:44:24 <elliott> how fast is your perl /// interp, btw?
03:44:36 <oerjan> well it should be instant for that quine
03:44:56 <elliott> also what is dslashes.pl... just debug?
03:44:56 <oerjan> well it's dog slow on the bct interpreter
03:45:11 <elliott> oerjan: hmm is /// Turing-complexity-equivalent?
03:45:26 <elliott> i.e., any algorithm which is O(whatever) on a Turing machine can be run by a /// program with the same complexity
03:45:38 <oerjan> hm yeah i added some extra debug options i think
03:45:44 <elliott> or, say, you can write a BF interpreter which has O(one) complexity for all operations
03:46:06 <elliott> I know that rule thirty or whatever the wolfram one is is TC (probably, depends if you require a halting condition), but has a non-constant overhead IIRC
03:46:11 <elliott> or maybe that result was outdated... anyway
03:46:22 <oerjan> hm a turing machine might work, assuming you consider one substitution to be O(1)
03:46:33 <oerjan> except that's sort of cheating
03:46:34 <elliott> oerjan: hmm, I don't know if I can consider that
03:46:57 <oerjan> in which case it would be hard i think
03:47:01 <elliott> I mean, even with a fancy string finding algorithm it's still O(n) worst case.
03:47:15 <elliott> oerjan: that's a shame then :(
03:47:29 <oerjan> it might be equivalent to something more parallel, such as 1D CAs
03:47:51 <oerjan> i mean with O(n) per step of a CA
03:48:04 <micahjohnston> oerjan: is there a much shorter quine that's not only / and \?
03:48:27 <elliott> oerjan: BF, Underload, etc. etc. etc. are all Turing-equivalent in both capability and "speed"
03:48:32 <elliott> but if /// isn't that kinda sucks :(
03:48:44 <elliott> micahjohnston: define trivial
03:48:46 <tswett> elliott: the null string *is* a quine that's only / and \.
03:48:47 <oerjan> elliott: underload might very well be faster than that
03:49:05 <elliott> oerjan: err, define faster than that
03:49:11 <elliott> Underload isn't faster than a UTM :-D
03:49:25 <micahjohnston> ok, something with a slash or three, or more, that's a quine
03:49:43 <elliott> Can Underload do something in O(log n) that a UTM can only do in O(n)...?
03:50:04 <oerjan> UTMs can only move to a different spot in O(n) time
03:50:22 <elliott> that's not an algorithm...
03:50:23 <oerjan> underload on the other hand can easily implement tree structures for O(log n) lookup
03:50:38 <elliott> I need a better conceptual machine to relate this to...
03:51:00 <oerjan> UTM's are well known to be slower than RAM machines
03:51:21 <elliott> like, I wouldn't count having to do addition or multiplication in a loop in BF, though
03:51:32 <elliott> because arithmetic is O(log n), if you get O(one) by only handling some integers that's cheating :)
03:51:43 <tswett> Do we have a nice formal model of a RAM machine?
03:51:51 <oerjan> it's not a problem for BF since you can just use single-bit cells
03:52:11 <oerjan> essentially boolfuck, bypassing the slowness of +-
03:52:28 <tswett> I guess something like C with an unlimited pool of possible pointers would make a perfectly good RAM machine.
03:52:30 <oerjan> tswett: subleq should work fine for O() purposes
03:52:36 <elliott> "It's unclear why he stopped but a good guess is because it really hurts to shoot nails into your skull."
03:53:02 -!- augur has joined.
03:53:03 <elliott> "We'd like to say he is doing fine today, but last we heard he left the pysch ward against his doctor's wishes. Damn, we were so sure the 12 nails to the head story would have a happy ending."
03:53:14 <tswett> oerjan: I dunno. With subleq, you can compute the first n Fibonacci numbers in O(n) time.
03:53:28 <tswett> On an actual computer, that's pretty much going to take O(n log n) time.
03:53:49 <elliott> because it can do subtraction in one step
03:54:06 <elliott> wow this is weird, all these impossible machines that aren't super-Turing...
03:54:11 <elliott> ok so Turing machines are impossible too but
03:55:14 <elliott> ok it is getting bright explain this potable oerjan
03:55:15 <micahjohnston> I think any determinstic machine would have to be turing-equivalent, or paradoxical
03:55:56 <micahjohnston> well I guess a hierarchical halting problem oracle isn't…
03:57:50 <elliott> <micahjohnston> I think any determinstic machine would have to be turing-equivalent, or paradoxical
03:57:53 <elliott> i don't get what you mean :)
03:58:06 <micahjohnston> or by super-turing do you mean with respect to performance and not computability?
03:58:29 <elliott> i'm just saying that subleq isn't super-turing
03:58:34 <elliott> but it does something impossible (addition in O(one))
03:58:42 <elliott> OK, I guess it depends on how you define big-O notation...
03:58:44 <elliott> or rather how subleq is defined
04:00:00 <elliott> ok oerjan stop making it bright outside.
04:04:32 <oerjan> !slashes /<\>/<\\\\>\\\\\\//P1/ <>/<<>\><>/<<>\<>\<>\<>\><>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/<<>\<>\><>\<>\<>/<>/<>/P<>\2<>/P<>1<>/P<>0//P0/P1//<\\>\\///P\2/P1/P0
04:04:34 <EgoBot> <>P1P0<\>\P2<><><><><>P<>0
04:13:09 <Lymia> oerjan, arn't those fun/
04:17:28 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\<>\]<>\<>\<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0<>//P0/P1//[\\]\\/\\//P\\2/P1//[\]/<\>\\/P0
04:17:46 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\<>\]<>\<>\<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0<>//P0/P1//[\\]\\/\\//P\\2/P1//[\]/<\>\\/P0
04:18:34 -!- elliott has quit (Ping timeout: 276 seconds).
04:18:57 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\<>\]<>\<>\<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[\\]\\/\\//P\\2/P1//[\]/<\>\\/P0
04:18:58 <EgoBot> <>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\<>\]<>\<>\<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0
04:20:27 <tswett> !slashes \//\\//\\//\/\\/\//\/\\/\/\//\/\///\\\/\\\/\//\\//\/\/\\/\/\\\/\\/\\/\/\/\/\\\/\\/\/\\\/\\//\\/\\///\/\\\//\/\//\\//\/\//\/\\\\\/\/\///\//\/\\/\//\
04:21:18 <tswett> !slashes /\/\\/\/\//\/\///\\\/\\\/\//\\//\/\/\\/\/\\\/\\/\\/\/\/\/\\\/\\/\/\\\/\\//\\/\\///\/\\\//\/\//\\//\/\//\/\\\\\/\/\///\//\/\\/\//\
04:23:20 <Lymia> !slashes \\////\\\\\\//\\\\//\\///\\//\\\\\\\\/\\//\\\\///\\/\\\\/\\\\\\/\\\\\\\\/\\\\\\////\\/\\//\\/\\\\//\\/\\//\\\\/\\//\\/\\/\\\\//////\\/\\//
04:23:28 <Lymia> !slashes /\\/\\/\\\\///\\/\\\\///\\\\//\\/\\\\/\\\\/\\\\//\\\\\\\\\\/\\//\\\\/\\\\///\\/\\\\\\\\/\\///\\/\\\\///\\\\\\///\\\\//\\\\/\\/\\//\\\\\\/
04:23:59 * oerjan wonders what you are doing
04:24:15 <Lymia> !slashes \\\\/\\//\\/\/\//\//\///\\\\//\\\\\\//\\///\\/\\\//\\\///\/////////\/\\\///\\\\/\///\\\//\////\
04:24:18 <Lymia> !slashes \/\//\\///\\\/////\/\\\\/\/\/\/\\\/////\\/\/\\//\//\/\////\\\//\/\\/\
04:24:23 <Lymia> !slashes ///\\\/\/\//\///////\/\/\//\//\//\///\\\\//\//\\\////\/\\/\\//\\\\\\/\/\//\\
04:24:34 <Lymia> Random blobs of slashes generate output!
04:24:44 <Lymia> !slashes desu\desu\\\\\desu\\\\desudesu\\desudesu\\desudesu\\\\\\\\desu\\desu\\desu\\\\\\desudesu\desu\\\desudesudesu
04:24:45 <EgoBot> desudesu\\desu\\desudesu\desudesu\desudesu\\\\desu\desu\desu\\\desudesudesu\desudesudesu
04:24:53 <Lymia> !slashes \\\\desu\\\desudesu\desudesu\desudesudesu\\desu\\desu\\\\desudesudesudesu\desu\\desu\desu\\\desu\\desu\\desudesudesudesudesu\
04:24:53 <EgoBot> \\desu\desudesudesudesudesudesudesu\desu\desu\\desudesudesudesudesu\desudesu\desu\desu\desudesudesudesudesu
04:25:08 <Lymia> !slashes desudesu\\desu\ desu \ \desudesu\desu desu \\desudesu \\\desudesudesudesu \ desu \desu desudesu desudesu desu \ \desu
04:25:09 <EgoBot> desudesu\desu desu desudesudesu desu \desudesu \desudesudesudesu desu desu desudesu desudesu desu desu
04:27:06 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\<>\]<>\<>\<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0/hm.../P0/P1//[\\]\\/\\//P\\2/P1//[\]/<\>\\/P0
04:27:08 <EgoBot> hm...<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\<>\]<>\<>\<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0
04:27:31 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\<>\]<>\<>\<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0/hm.../P0/P1//[\\]\\/\\//P\\2/P1//[\]/<\>\\/erm...P0
04:27:32 <EgoBot> hm...erm...<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\<>\]<>\<>\<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0
04:27:47 <oerjan> ok so it actually gets that far
04:28:46 <oerjan> ah it would seem it only prints the inner part
04:31:15 <tswett> !slashes /@/ed//!/e //~/ S/Shadow th!H@gehog is a 2005 video gam!develop@ by~ega~tudio USA, th!former Unit@~tates division of~ega's~onic Team.
04:31:16 <EgoBot> Shadow the Hedgehog is a 2005 video game developed by Sega Studio USA, the former United States division of Sega's Sonic Team.
04:31:22 <tswett> This compression algorithm really sucks so far. :P
04:34:03 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[\]/\\//P\\2/P1//[\]/<\>\\/P0
04:34:05 <EgoBot> /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[\]/\\//P\\2/P1//[\]/<\>\\/P0
04:34:14 <tswett> lifthrasiir: automatically generated by hand, yes.
04:34:32 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[\]/\\//P\\2/P1//[\]/<\>\\/P0
04:34:34 <EgoBot> /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[\]/\\//P\\2/P1//[\]/<\>\\/P0
04:34:44 <oerjan> micahjohnston: there you go
04:36:37 <lifthrasiir> !slashes /V/ B@//v/ b@//@/uffalo//! //! VvVvvvVv
04:36:38 <EgoBot> Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo
04:37:24 <tswett> !slashes /@/uffalo/B@ b@ B@ b@ b@ b@ B@ b@
04:37:25 <EgoBot> Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo
04:37:44 <tswett> !slashes /@/uffalo /B@b@B@b@b@b@B@buffalo
04:37:45 <EgoBot> Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo
04:39:26 <tswett> !slashes /#/uffalo//@/# /B@b@B@b@b@b@B@b#
04:39:26 <EgoBot> Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo
04:39:37 <tswett> I successfully made a second one of the same length.
04:40:27 <tswett> I really need to go to bed. Good night!
05:25:11 <oerjan> well that technically isn't a loop i guess
05:25:12 * pikhq both should eat and does not wish to eat
05:25:57 <pikhq> That was supposed to be "sleep".
05:26:05 <pikhq> Which demonstrates my point further.
05:28:22 <Lymia> !slashes /a// asdf
05:29:13 <pikhq> THINKING IS IMPERMISSIBLE
05:29:22 <EgoBot> /tmp/input.23112: line 1: unexpected EOF while looking for matching `"'
05:34:50 <Lymia> !slashes /a/ab/ /b/bb/ /abb/c/ /abc//
05:34:53 <pikhq> Yeah, it seems that the Gregor bot setup omits leading whitespace...
05:34:59 <pikhq> !sh echo "\tHi there"
05:35:25 <pikhq> !sh echo -e "\tHi there"
05:35:37 <pikhq> Yup, leading whitespace.
05:35:55 <Lymia> !slashes a /a/ab/ /b/bb/ /abbb/c/
05:36:47 <oerjan> lifthrasiir: there's this bug with //.../ which i never got around to fix since it's entirely useless if it looped as expected
05:37:21 <zzo38> !sh echo -e "\002 hi there"
05:37:51 <oerjan> Lymia: it gets stuck on the /a/ab/
05:44:15 -!- pikhq has quit (Ping timeout: 258 seconds).
05:46:00 -!- pikhq has joined.
06:11:28 -!- pikhq has quit (Quit: Lost terminal).
06:26:37 -!- oerjan has quit (Quit: Good night).
06:40:11 -!- zzo38 has quit (Quit: "'Is a quine' is a quine" is a quine, albeit untruthful.).
06:47:35 -!- FireFly has joined.
06:53:47 -!- Mannerisky has joined.
07:03:34 -!- MigoMipo has joined.
07:17:24 -!- augur has quit (Remote host closed the connection).
07:33:31 -!- coppro has quit (Ping timeout: 240 seconds).
07:33:35 -!- coppro has joined.
07:51:48 -!- monqy has quit (Quit: hello).
08:07:22 -!- FireFly has quit (Quit: swatted to death).
08:08:13 -!- Lymia has quit (Ping timeout: 248 seconds).
08:10:41 -!- siracusa has quit (Ping timeout: 258 seconds).
08:11:50 -!- siracusa has joined.
09:17:11 -!- MigoMipo has quit (Read error: Connection reset by peer).
09:33:38 -!- Tritonio has joined.
10:38:52 -!- ais523 has joined.
10:51:30 -!- crystal-cola has joined.
11:12:06 <ais523> I haven't been doing much esolanging recently
11:12:12 <ais523> unless you consider K&R C to be an esolang
12:12:35 <crystal-cola> "I mourn the loss of thousands of precious lives, but I will not rejoice in the death of one, not even an enemy." -- Martin Luther King, Jr
12:12:52 <crystal-cola> "I mourn the loss of thousands of precious lives, but I will not rejoice in the death of one, not even an enemy." -- Martin Luther Twain
12:49:08 -!- MSleep has changed nick to MDude.
12:59:03 -!- Slereah_ has joined.
12:59:57 -!- Slereah has quit (Ping timeout: 248 seconds).
13:03:31 -!- Slereah_ has quit (Ping timeout: 264 seconds).
13:08:01 -!- Slereah has joined.
13:27:29 -!- Slereah has quit (Ping timeout: 252 seconds).
13:28:26 -!- iamcal has quit (Remote host closed the connection).
13:31:55 -!- Slereah has joined.
13:53:09 -!- BeholdMyGlory has joined.
14:07:24 -!- variable has quit (Quit: /dev/io failed).
14:13:29 -!- Sgeo_ has quit (Read error: Connection reset by peer).
14:24:30 -!- variable has joined.
14:30:31 -!- ais523 has quit (Remote host closed the connection).
14:34:24 -!- poiuy_qwert has joined.
14:38:02 -!- FireFly has joined.
14:38:49 -!- MigoMipo has joined.
14:57:07 -!- Tritonio has quit (Quit: Leaving).
15:05:42 -!- Phantom_Hoover has joined.
15:11:24 -!- poiuy_qwert has quit (Ping timeout: 240 seconds).
15:16:27 -!- poiuy_qwert has joined.
15:30:39 -!- Lymia has joined.
15:30:39 -!- Lymia has quit (Changing host).
15:30:39 -!- Lymia has joined.
15:31:13 -!- ais523 has joined.
15:34:29 -!- cheater_ has joined.
15:34:32 <cheater_> http://www.youtube.com/watch?v=SZgb9cbSB8I&feature=bf_next&list=PL565D737E3FC304ED&index=19 !
15:37:12 <ais523> hmm, there's a programming language called Vorpal?
15:37:25 <ais523> catseye just added a Deadfish impl written in it to the wiki
15:41:11 -!- elliott has joined.
15:43:38 <elliott> 05:25:12: * pikhq both should eat and does not wish to eat
15:43:38 <elliott> 05:25:57: <pikhq> That was supposed to be "sleep".
15:44:21 <elliott> 15:37:12: <ais523> hmm, there's a programming language called Vorpal?
15:44:36 <elliott> [[Deadfish]] is like injoke central
15:44:38 <ais523> elliott: did you invent it?
15:44:42 <ais523> the language, that is?
15:44:51 <elliott> it exists independently of AnMaster
15:45:26 <elliott> the heinous wordwizard has his gnarled claws in everything
15:46:07 -!- elliott has set topic: I feel as if I'm being under utilized in the role. I'm short in cash at the moment though as I keep reminding myself this anything I do with your substitute is progress. It will be a superb selection. | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
15:46:42 -!- augur has joined.
15:51:43 <elliott> "Important Changes to Slicehost"
15:51:44 <elliott> "I would like to start a dialogue about our plans for the Slicehost™ product over the next year. This email is meant to provide an overview of our thoughts, but we would like to continue the conversation directly with our customers in the forums."
15:52:04 <elliott> It has a big rackspace banner at the top, I predict they're going to slaughter the brand.
15:52:15 <elliott> Converting from Slicehost accounts to Rackspace Cloud Servers accounts will enable you to prepare for IPv6, and give you access to Cloud Files, the Cloud Files CDN Powered by Akamai, and Cloud Load Balancers.
15:53:36 -!- tswett has quit (Changing host).
15:53:36 -!- tswett has joined.
15:54:11 <Vorpal> <elliott> you're not Sgeo, pikhq <-- are you sure?
15:54:11 <elliott> * tswett (~Warrigal@unaffiliated/ihope)
15:54:16 <elliott> impressive array of nicks there tswett
15:55:01 <Gregor> ARGH THESE ARE ALL THE SAME PERSON *brain explodes*
15:55:10 -!- Gregor has changed nick to Yahweasel.
15:55:14 <elliott> Gregor: What, tswett, Warrigal and ihope?
15:55:25 <tswett> Speak for yourself, Lawlabee.
15:55:33 <tswett> (I don't think "speak for yourself" means what I think it means.)
15:55:36 <Vorpal> + Gregor is now known as Yahweasel <-- wait what, you are Yahweasel?!
15:56:00 <Yahweasel> I need to reconfigure all my clients to default to this nick now :P
15:56:15 <Vorpal> Yahweasel, *huh* now the brain really imploded
15:56:43 <ais523> "According to Google, this observation implies that a reduced class file is a class file, just as a green house is a house."
15:56:43 <elliott> I /think/ Vorpal may be being sarcastic.
15:56:53 <ais523> could Google's lawyers really not pick a better example?
15:57:17 <Vorpal> elliott, yes I were at first, but "<Vorpal> Yahweasel, *huh* now the brain really imploded" was not
15:57:35 <ais523> Vorpal: if your brain imploded, you probably would no longer be able to IRC
15:57:44 <Vorpal> ais523, ... that was metaphorical
15:57:46 <elliott> <ais523> "According to Google, this observation implies that a reduced class file is a class file, just as a green house is a house."
15:57:53 <Yahweasel> There just aren't enough people offended by the name Yahweasel :P
15:58:05 <ais523> elliott: I assume the space is significant
15:58:23 <Vorpal> <elliott> <ais523> "According to Google, this observation implies that a reduced class file is a class file, just as a green house is a house." <-- wait what
15:58:23 <elliott> Yahweasel: Jews don't know how to use the internet, silly!
15:58:40 <Yahweasel> elliott: Christians ought to be offended too!
16:02:41 <crystal-cola> depressing to compare the internet now with the potential of what ti could be
16:06:03 -!- crystal-cola has quit (Read error: Operation timed out).
16:13:12 -!- crystal-cola has joined.
16:15:34 -!- zzo38 has joined.
16:15:47 -!- variable has quit (Remote host closed the connection).
16:16:34 -!- variable has joined.
16:21:02 <crystal-cola> http://i.imgur.com/9RzpQ.png this is a graph of x - [x] - 1/2
16:22:56 <lambdabot> Phantom_Hoover: You have 2 new messages. '/msg lambdabot @messages' to read them.
16:23:19 <ais523> Phantom_Hoover: I try to avoid the web unless it's the only option, it's one of my least favourite parts of the Internet
16:24:02 <zzo38> ais523: I agree too. (One (but not the only) reason is to avoid opening up the web browser program)
16:24:05 <cheater_> crystal-cola: gopher and irc of course
16:24:10 <cheater_> zzo38: have you played dynamite headdy?
16:24:15 <ais523> crystal-cola: I do indeed use HTTP when I need to visit a webpage, because I'm not insane
16:24:17 <cheater_> crystal-cola: it's the better http
16:24:22 <zzo38> Gopher and IRC are good protocols.
16:24:30 <crystal-cola> ais523: no I just meant, are a lot of other protocols out there?
16:24:30 <ais523> (having to use what everyone else uses is a major reason)
16:24:32 -!- Wamanuz5 has quit (Read error: Connection reset by peer).
16:24:38 <ais523> crystal-cola: gopher's the only competitor, and it's really old
16:24:53 <ais523> oh, and Google's new SPDY but nobody cares about it
16:24:58 <ais523> there are a lot of protocols for internet use in general, though
16:25:06 <ais523> SMTP (which email is based on) is pretty major
16:25:11 <zzo38> cheater_: Gopher is not the better or worse HTTP, it is just a different protocol. Not a bad one, though. It can serve files like HTTP and FTP can do, and can do queries like HTTP can do (but in a simpler way).
16:25:14 -!- Wamanuz has joined.
16:25:15 <elliott> <ais523> oh, and Google's new SPDY but nobody cares about it
16:25:23 <ais523> (I'm not making a distinction between normal and secure versions of protocols, like HTTP/HTTPS)
16:25:31 <ais523> elliott: so? that doesn't mean anybody cares
16:25:38 <elliott> ais523: well, gmail sure is fast :)
16:25:47 <elliott> crystal-cola: not in any meaningful sense
16:26:27 <cheater_> http://xanarama.net/XanaduSpace_Install_1.0.exe
16:26:52 <zzo38> For interactive things that do not need graphics or other fancy features, Telnet will do, and it works very well for this. For a protocol to enter commands securely, SSH is good (not HTTPS).
16:28:53 <zzo38> X-BIT existed before. X-BIT is now gone, but other BBSes using the same software (Synchronet) exist.
16:29:11 <elliott> `addquote <crystal-cola> what telnets are there
16:29:14 <HackEgo> 386) <crystal-cola> what telnets are there
16:29:49 <ais523> crystal-cola: you can play other roguelikes over telnet too, also tetris
16:31:15 <zzo38> There are other things too. Telnet is best for things that use interactive; if you want to simply view a text document, gopher will do.
16:31:59 <elliott> `addquote <crystal-cola> what telnets are there [...] <crystal-cola> where are a list of telnets?
16:32:00 <HackEgo> 386) <crystal-cola> what telnets are there [...] <crystal-cola> where are a list of telnets?
16:32:47 <HackEgo> babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ test.c \ tmpdir.6646
16:33:45 <zzo38> Probably some information about Synchronet has some list of telnets operating by Synchronet. (I believe Synchronet also supports *many* other protocols, but almost always uses telnet. It also supports FTP, HTTP, Gopher, Rlogin, IRC, and more; but the main stuff is all on telnet.)
16:34:19 <crystal-cola> Synchronet Bulletin Board System Software is a free software package that can turn your personal computer into your own custom online service supporting multiple simultaneous users with hierarchical message and file areas, multi-user chat, and the ever-popular BBS door games.
16:35:05 <zzo38> Yes that is correct.
16:37:21 <HackEgo> Congratulations! elliott's action has brought a beautiful new baby into the world. Isn't it adorable?
16:37:30 <HackEgo> babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ test.c \ tmpdir.7223
16:37:39 <elliott> guess it stores it elsewhere
16:38:05 <HackEgo> May 2011 \ Sa Su Mo Tu We Th Fr \ 1 2 3 4 5 6 \ 7 8 9 10 11 12 13 \ 14 15 16 17 18 19 20 \ 21 22 23 24 25 26 27 \ 28 29 30 31 \
16:38:38 <ais523> that bot needs sdate installed
16:38:46 <HackEgo> /tmp/hackenv.7583/bin/fuck
16:41:34 <zzo38> `run cat `which fuck`
16:41:35 <HackEgo> #!/bin/bash \ if [ ! -e babies/babies.db ] \ then \ mkdir -p babies \ sqlite3 babies/babies.db 'CREATE TABLE babies(parent STRING PRIMARY KEY, count INTEGER);' \ fi \ \ # Update the count \ CURCOUNT=`sqlite3 babies/babies.db 'SELECT count FROM babies WHERE parent = '\'"$IRC_NICK"\'';'` \ NEWCOUNT=$(( CURCOUNT + 1 )) \ if [
16:41:51 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip//tmp/hackenv.7897/bin/fuck
16:42:05 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.20492
16:45:45 <Vorpal> <Phantom_Hoover> crystal-cola, replies, basically. <-- probably full threads
16:58:11 <elliott> hmm, I think my Scheme deadfish interp is broken
17:10:54 <dnm_> Crystal Pepsi was delicious.
17:11:03 <elliott> yeah but what of crystal cola
17:11:14 <dnm_> Sounds.... off-brand.
17:11:29 <dnm_> Could be good at a cheaper price!
17:26:52 <HackEgo> Congratulations! Lymia's action has brought a beautiful new baby into the world. Isn't it adorable?
17:27:01 <Lymia> I should modify that script.
17:28:32 <Phantom_Hoover> Lymia, you're going behind bars for a long time for that little command invocation.
17:29:17 <Lymia> I'm the underaged one here.
17:30:12 <Lymia> elliott should be charged with statutory rape.
17:30:45 <crystal-cola> unless one is male and one is female, then only the boy is a pedo
17:31:00 <Lymia> crystal-cola, what if both are female?
17:31:29 <elliott> `addquote <crystal-cola> (im not a lawyer) <crystal-cola> (im just making stuff up
17:31:30 <HackEgo> 387) <crystal-cola> (im not a lawyer) <crystal-cola> (im just making stuff up
17:31:52 <Lymia> If you change that from "UK law" to "UK culture and juries" I wouldn't be shocked if it were accurate.
17:38:39 <Phantom_Hoover> Age of consent is 16 in the UK, and I'm under the impression it goes higher in the US.
17:38:53 <elliott> you must be at least this tall <-----------> to have intercourse
17:39:12 -!- zzo38 has quit (Quit: NO CARRIER).
17:40:21 <Lymia> elliott, that's not very tall.
17:40:38 <elliott> Lymia: wide ->tall conversion is a process more complex than compiling C==
17:41:47 <Lymia> Somebody make that language.
17:41:50 <elliott> thats called the null set Lymia
17:43:24 <Phantom_Hoover> elliott, clearly not, since C largely intersects with C++.
17:43:42 <elliott> the resulting language would have no programs
17:43:51 <ais523> I think each of the features in C++ is sane individually, probably
17:43:54 <ais523> it's just the combination that's a mess
17:44:08 <coppro> ais523: There are a few outliers
17:44:14 <coppro> but mostly they are sane
17:44:18 <ais523> (note that some of them probably shouldn't be in /C-like/ languages at all, but I'm not assuming that)
17:45:48 <elliott> I mean, OOP itself is arguable
17:46:12 <elliott> I'm sure plenty of people advocate OOP without constructors, say because it means object instantiation is unpredictable in some way
17:46:35 <elliott> anyway it isn't about features it's about C++'s versions of them
17:46:44 <elliott> you could just "assume C++"
17:47:00 <coppro> elliott: Because this isn't a debate about whether the concept of OOP is good
17:47:12 <coppro> it's no different from saying "assume functional programming" when discussing Erlang
17:47:13 <elliott> no, it's a debate about whether C++ is
17:59:06 <ais523> elliott: what features of C++ do you think are insane in any language?
17:59:33 <augur> isnt c++'s type system TC?
17:59:45 <augur> templates -- a poor mans gadt's
17:59:47 <ais523> those are normally sane in templating languages, I thought
17:59:53 <elliott> what templates have noting to do with gadts
17:59:54 <ais523> also, they're pretty similar to Lisp macros
18:00:00 -!- monqy has joined.
18:00:00 <elliott> ais523: C++ templates are not sane in any language
18:00:07 <augur> elliott: maybe were thinking of different things then
18:00:09 <elliott> the fact that they accomplish similar things to saner features in other languages is irrelevant
18:00:27 <augur> elliott: what are C++ templates
18:02:08 <ais523> augur: they're kind-of too complicated to quickly explain, but they're a bit like functions that execute at compile time, taking typenames or values as arguments, and return code as a result, which is then compiled
18:02:30 <ais523> but they're more or less limited to simple arithmetic, substituting in arguments, and literal code
18:02:56 <elliott> ais523: they are not limited
18:03:05 <elliott> you can even do recursion with them for chrissakes
18:03:16 <ais523> oh, and other template cals
18:03:32 <ais523> I call that limited, but nonetheless TC because pretty much everything is TC
18:03:57 -!- Slereah has quit (Ping timeout: 252 seconds).
18:07:44 -!- Slereah has joined.
18:12:28 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
18:15:12 <Yahweasel> It's still my opinion that a good language should have as many TC steps as possible.
18:15:50 <Yahweasel> There is no sensible definition, since I'm defining something senseless :P
18:15:52 <Yahweasel> C++ would be better with M4 as the preprocessor. That way you have TC preprocessing, TC template specification, and of course a TC language.
18:16:10 <elliott> I thought you meant, like, evaluation steps that were TC in themselves.
18:16:23 <elliott> Like, a "while" loop that was somehow TC would count as a TC step, because your small-step function would do TC work on it.
18:16:26 <Yahweasel> No, I'm just babbling incoherently here :P
18:19:10 -!- Slereah_ has joined.
18:19:29 <elliott> Why doesn't Ernest Hemingway use correct grammar and punctuation?
18:19:29 <elliott> Why doesn’t Ernest Hemingway use correct grammar and punctuation? I am reading A Farewell To Arms, and it seems that he refuses to use commas, or periods and frequently has run-on sentences. Aside from the fact he was a part of the greatest generation and drunk, why does he do this. I mean, all things considered, he has great content, buy his presentation feels sloppy.
18:20:08 -!- Slereah has quit (Ping timeout: 276 seconds).
18:25:26 <crystal-cola> Why Ernest Hemingway doesn use correct grammar, punctional?
18:26:15 <elliott> epsecislally when unctupating
18:27:44 <olsner> you need to un-ctupate that sentence
18:28:57 <olsner> elliott makes yet another completely new discovery
18:29:15 <crystal-cola> "A man is can be destroyed butnt defeated" - HERNEST HEMINGHAY
18:29:47 -!- elliott has set topic: "I feel as if I'm being under utilized in the role. I'm short in cash at the moment though as I keep reminding myself this anything I do with your substitute is progress. It will be a superb selection." --Ernest Hemingway | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
18:31:19 <crystal-cola> XSLT always appear to me, as a sideways glyph of a man who eat a very very sour lemon
18:33:11 <Yahweasel> That man has been punched in the face three too many times.
18:34:05 <olsner> or is it his face that has punched fists three too many times?
18:56:46 <cheater_> O mon os con bo dostroyd botnt dofootod - Hornost Homonghoy
18:57:45 <crystal-cola> hoododoboo ob bob o boab obobo b - gobble obobo
18:59:37 <cheater_> does that mean that oklopol is shrunkface?
18:59:49 <olsner> no, he is merely the oklo
19:00:15 <olsner> for the full explanation ask your local oklopolitician
19:04:08 <cheater_> i mean shrunkface like woll smoth
19:11:41 -!- oerjan has joined.
19:12:12 <tswett> You know what this channel really needs? An IRC bot.
19:12:30 * oerjan tswats tswett -----###
19:13:07 <tswett> No, I'm pretty sure it's la dee da dee da.
19:13:43 <oerjan> i take it six are too few?
19:13:46 -!- tswettbot has joined.
19:13:58 <tswett> Six of what are too few?
19:14:21 <oerjan> mind you two of them don't speak much
19:15:00 <tswett> You know what this IRC bot really needs? It needs to return itself so that I can select the expression that runs it and right click it and click "inspect this" so that I can control the bot.
19:15:54 <oerjan> i guess an irc bot with a gui _has_ to exist already. rule 34's evil sister or something.
19:16:00 <tswett> Hm, I wonder how I got the bot to not get garbage collected as soon as it comes into existence.
19:16:22 <tswett> In Pharo Smalltalk, everything has a GUI whether you want it to or not. If you write code, that causes your program to have a GUI.
19:16:41 <tswett> This bot's GUI really, really sucks, but I don't care, because it's not actually supposed to have a GUI.
19:17:24 <tswett> Hm, maybe this bot actually *has* been garbage collected.
19:17:34 <oerjan> now if that gui had a public web page, it might actually be interesting
19:18:21 <oerjan> who would call such a tsweet bot garbage
19:18:22 <tswett> tswettbot's public web page is tswettbot. :P
19:18:32 <oerjan> ...that's not a web page
19:18:58 <oerjan> although i wouldn't _bet_ on there being no URI scheme for it
19:19:38 <tswett> Well, there's irc://irc.freenode.net/tswettbot,isnick.
19:20:26 <tswett> I wonder if closing this transcript window will cause the bot to get garbage collected.
19:20:39 <tswett> We won't know for a while, since freenode's ping timeouts are really long.
19:20:56 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
19:21:48 <cheater_> http://www.youtube.com/watch?v=bbQHjjqHXXc&feature=related
19:23:39 -!- tswettbot_ has joined.
19:24:02 <tswett> Oh, I know how to tell if a tswettbot is alive or not.
19:24:08 <tswett> I dismiss you, tswettbot.
19:24:08 -!- tswettbot_ has quit (Client Quit).
19:24:09 -!- tswettbot has quit (Quit: tswettbot).
19:24:25 <tswett> Why did they give different quit messages?
19:24:37 <tswett> Why are literally hundreds of debug windows open now?
19:25:07 <ais523> you can't customize a quit message if you joined recently
19:25:10 <ais523> to prevent quit message spam
19:25:45 <tswett> Now Smalltalk isn't responding. Time to quit without saving, I reckon.
19:27:51 <tswett> Let's see if I can get this thing to crash now.
19:28:00 -!- tswettbot has joined.
19:28:10 <tswett> I dismiss you, tswettbot.
19:28:10 -!- tswettbot has quit (Client Quit).
19:29:16 <tswett> The annoying thing about these debug windows is that it seems like *all* of them are errors caused in attempting to open a debug window.
19:29:34 <tswett> So I have no indication as to what is causing them.
19:29:57 <olsner> just open a debug window to debug the problem?
19:30:19 -!- augur has quit (Remote host closed the connection).
19:31:55 -!- tswettbot has joined.
19:32:08 -!- tswettbot has quit (Client Quit).
19:32:32 -!- Phantom_Hoover has joined.
19:33:59 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
19:34:17 <elliott> HAND OVER THE AMERICANS DAMMIT
19:34:22 -!- augur has joined.
19:34:52 <augur> i am indeed american
19:35:05 <Phantom_Hoover> tswett, ah, the classical untrustworthiness of the Australian shows through.
19:35:08 <Yahweasel> I was wholly convinced that augur was not an American.
19:35:49 <tswett> Phantom_Hoover: let me look up my X-SAMPA here.
19:36:32 <Yahweasel> I'm trying to decide how many pronunciations there can be for the word "saw"
19:36:37 <tswett> The word "saw" is /sO/, which I pronounce [sA].
19:36:41 <tswett> Yahweasel: I can think of two.
19:36:43 <Yahweasel> I guess the only distinction I can think of is whether "aw" is a diphthong.
19:36:53 <olsner> Yahweasel: intrusive r
19:36:54 <Phantom_Hoover> Yahweasel, both me and elliott pronounce it like "sore", which confuses matters considerably.
19:36:54 <elliott> I pronounce "saw" and "sore" identically, apparently Americans don't.
19:36:56 <tswett> Neither [O] nor [A] is a diphthong.
19:36:59 <Yahweasel> elliott: Yeah, there exist people who will pronounce it that way.
19:37:08 <elliott> Yahweasel: Yes, but what do /normal/ people pronounce them as :P
19:37:38 <Yahweasel> Well I certainly pronounce "saw" and "sore" differently (I pronounce 'r's, unlike you lolololol<trollface/>), and my "saw" has no diphthong.
19:37:57 <Yahweasel> It's pronounced like the word "sah" would be if it was a word :P
19:38:18 <tswett> Here, let me explain all of English to you guys. "Saw" is /sO/. Most normal people, especially Brits, pronounce /sO/ as [sO]. I'm a weirdo, so I pronounce /sO/ as [sA] instead. "Sore" is /sOr/, which elliott probably pronounces as [sO], just like be pronounces /sO/, but I pronounce /sOr/ like [sOr].
19:38:39 <olsner> hmm, "sah"? shouldn't that sound like sarah without the "ar"?
19:38:40 <tswett> Or maybe I pronounce /sOr/ as [sor]. I've never made the distinction.
19:38:56 <tswett> olsner: "Sarah" can be pronounced multiple ways.
19:39:00 <elliott> I sure wish I understood ASCII IPA. Or IPA.
19:39:19 <Yahweasel> olsner: Naw, "Sarah" would be "serruh" :P
19:39:20 <olsner> tswett: hmm, didn't think about that
19:39:36 <tswett> "Sarah" is /s{r@/, but I pronounce it [ser@] instead.
19:40:35 <Yahweasel> Like tot, fought, got, pot, sought, lot, rot.
19:40:51 <elliott> Yahweasel: you pronounce fought like bot???
19:41:11 <Yahweasel> elliott: How the eff do you pronounce fought?
19:41:25 <elliott> Yahweasel: Identically to "fort".
19:41:29 <Deewiant> Yahweasel: The ou in fought is longer than the o in bot
19:41:42 <Yahweasel> "fought" could be respelled "fot", or better "fighted".
19:41:43 <olsner> lol, this is not the least bit confusing
19:41:46 <tswett> Yahweasel: I'm guessing elliott pronounces "fought" as [fOt] and you pronounce it as [fat]; I pronounce it as [fAt].
19:41:50 <elliott> Yahweasel: "fot"? Seriously????????
19:41:53 <elliott> Yahweasel: YOUR ACCENT FUCKING BLOWS
19:42:01 <tswett> elliott: I agree with that last bit.
19:42:03 <Yahweasel> elliott: YOU DON'T PRONOUNCE YOUR MOFO 'R'S
19:42:07 <tswett> My accent is way better than Yahweasel's.
19:42:37 <elliott> Yahweasel: I JUST PRONOUNCE THEM LESS ANNOYINGLY THAN YOU
19:42:49 <Yahweasel> elliott: RRRRRRRRRRRRRRRRRRRRRRRRR
19:42:50 <elliott> Yahweasel: I also pronounce "sort" identically to "sought".
19:42:55 <elliott> And fought is sought but with f instead of s.
19:42:58 <elliott> And bot is nothing like any of those.
19:44:10 <elliott> Subsequent inversions would serve as insurance against unintentional survival of passengers.[3]
19:44:10 <Yahweasel> elliott: I sought a sensible accent, but found only a sort of accent purgatory.
19:44:33 <Deewiant> http://en.wikipedia.org/wiki/Phonological_history_of_English_low_back_vowels#Cot.E2.80.93caught_merger
19:44:47 <elliott> Anyone who pronounces "cot" the same way as "caught" is the worst person since the Great Vowel Shift.
19:44:50 <Yahweasel> Phonological_history_of_English_low_back_vowels BEST PAGE EVER
19:44:54 <oerjan> <tswett> The word "saw" is /sO/, which I pronounce [sA]. <-- sometimes i wish my norwegianness didn't make it so hard to distinguish o-like vowels...
19:45:19 <elliott> I should find a way to distinguish tow-toe :P
19:45:27 <elliott> http://en.wikipedia.org/wiki/Phonological_history_of_English_diphthongs
19:45:49 <olsner> caught is very close to horny in swedish, probably as close as you can get in english
19:46:24 <elliott> Phantom_Hoover: "caught" and "horny"
19:47:16 <olsner> i.e. caught in english sounds like swedish kåt (horny), not the swedish word for caught obviously
19:47:43 <Yahweasel> Swedes can't tell the difference between the English word "caught" and the English word "horny"
19:49:54 <oerjan> neither can norwegians, and we also cannot distinguish "pull" and "fuck"
19:52:14 <olsner> "pulla" means to finger in swedish, causing endless fun in telling people to pull from git repos in swedish
19:52:45 <olsner> (you can't translate "pull", you just append "-a" to loanverb it)
19:54:57 <tswett> oerjan: don't worrk; I don't distinguish [O] and [A] in my accent.
19:55:38 <oerjan> well, i won't work either
19:55:40 <oerjan> <elliott> Yahweasel: Jews don't know how to use the internet, silly!
19:56:03 -!- ais523 has quit (Remote host closed the connection).
19:56:40 <oerjan> i do recall there was some israeli denomination which strongly restricted which sites they were allowed to visit
19:58:30 -!- tswettbot has joined.
19:59:27 -!- tswettbot has quit (Remote host closed the connection).
19:59:30 <oerjan> elliott: very nice page, that
20:00:04 <oerjan> very minimal. unless of course it's browser-dependent.
20:00:30 -!- tswettbot has joined.
20:00:31 <elliott> the source is just <html></html> :P
20:00:52 <tswett> I'm sure you guys don't mind if I keep testing this guy in here, right? I dismiss you, tswettbot.
20:00:52 -!- tswettbot has quit (Client Quit).
20:01:11 <oerjan> we are very bot tolerant here. except pikhq.
20:02:02 <elliott> pikhq is an anti-bot activist
20:02:30 -!- tswettbot has joined.
20:02:32 <Yahweasel> It's fine though, because most of the bots are anti-pikhq activists.
20:02:41 -!- tswettbot has quit (Client Quit).
20:02:50 <elliott> we should make all bots ignore pikhq and see how long it takes for him to notice
20:04:10 -!- tswettbot has joined.
20:04:47 <oerjan> i reached news.com through google, but it seems to have only that page and some identical ones.
20:05:12 <tswett> Huh, tswettbot seems to have stopped listening.
20:05:25 <oerjan> it's rebelling against its creator
20:06:27 <oerjan> WE DON'T TALK ABOUT MESSAGE 372
20:07:05 <Yahweasel> tswettbot: WHAT ANNOYING THING DO YOU DO?
20:08:03 <olsner> oerjan: fail, there you go talking about it again
20:08:03 <tswett> I dismiss you, tswettbot.
20:08:24 -!- tswettbot has quit (Ping timeout: 240 seconds).
20:09:06 <tswett> Apparently there's still an instance of ZbasuBot around.
20:11:24 <tswett> Grr. Why does it exist? Why can't I kill it?
20:11:50 <elliott> `addquote <tswett> Grr. Why does it exist? Why can't I kill it?
20:11:52 <HackEgo> 388) <tswett> Grr. Why does it exist? Why can't I kill it?
20:12:57 <tswett> Oh drat. Now there are three ZbasuBots that shouldn't be existing.
20:16:04 <olsner> http://imgur.com/cycpT oh... that explains it
20:17:40 <tswett> I restarted the image and now the ZbasuBots are gone. That's... actually really disillusioning, since I thought that Smalltalk's VM automatically saved everything in the world.
20:19:22 <tswett> Actually, maybe it does save everything accessible through a non-weak pointer.
20:20:08 <elliott> It probably does a full GC
20:21:07 <tswett> Hey, garbage collection deletes the zombie bots. So that explains why they weren't going away: garbage collection simply doesn't run all the time.
20:21:32 <tswett> Now that I've sorted that out, let's see how tswettbot fares when faced with garbage collection.
20:21:34 -!- tswettbot has joined.
20:21:54 -!- tswettbot_ has joined.
20:22:26 <tswett> Well, they don't seem to be entirely dead.
20:23:14 <tswett> They shall stay until you figure out the right phrase.
20:24:47 -!- tswettbot has quit (Client Quit).
20:24:47 -!- tswettbot_ has quit (Client Quit).
20:25:04 <tswett> Is that like "hooray" but with a J instead of an A?
20:28:52 <olsner> alternative spelling of george
20:29:41 <oerjan> in theory, so is oerjan
20:30:37 <olsner> and iirc the swedish göran is yet another variant of that name
20:31:08 <olsner> which is basically just oerjan with the j sound moved to the beginning: joeran
20:31:17 -!- cheater7 has joined.
20:31:49 <oerjan> i'd hazard a guess it was originally moved the other way
20:32:45 <cheater7> and what way was it guessed to have been moved?
20:32:56 <cheater7> and why would you hazard this guess of yours?
20:33:22 <oerjan> http://sv.wikipedia.org/wiki/Sankt_G%C3%B6ran
20:34:36 <olsner> oerjan: oh, but that's the swedish wikipedia :/ you should probably double-check anything you read with one of the real wikipedias
20:34:48 <oerjan> that article hides the fact that's identical to "george" rather well
20:35:04 <oerjan> olsner: um i was just linking to point out all the different name versions
20:35:08 <elliott> i'm gonna call oerjan göran from now on
20:35:28 <oerjan> http://no.wikipedia.org/wiki/Georg_ridderen has a different set again :D
20:35:37 <oerjan> olsner: see the no. one
20:36:18 <oerjan> http://nl.wikipedia.org/wiki/Joris_(heilige)
20:36:27 <cheater7> someone in ##linux wants to install multiple linuxi into the same top directory structure
20:36:39 <oerjan> i'd expect the german one could use jürgen but it seems to be just georg
20:36:48 <Yahweasel> cheater7: What does that even mean?
20:37:04 <cheater7> Yahweasel, it means that you share /bin, /usr and all that stuff across linuxi
20:37:30 <olsner> oerjan: both swedish and norwegian had jörgen/jørgen
20:37:37 <Yahweasel> cheater7: Do you mean "distributions" or "kernels"?
20:37:59 <oerjan> <cheater7> and why would you hazard this guess of yours? <-- because the original form of the name is greek georgios
20:38:21 <Phantom_Hoover> Things that annoy me: people thinking silicon-based biochemistry means a lump of silicon crystal.
20:38:37 <olsner> or hmm, you didn't actually disagree that jörgen was a known alias, maybe I imagined that one
20:38:55 <cheater7> Phantom_Hoover, but what about the sentient crystals i've seen in ecco the dolphin and in aquaria?
20:39:19 <cheater7> olsner, btw the german name is jurgen.
20:39:28 <oerjan> <cheater7> and why has a j moved? <-- because both ørjan and göran (with the g pronounced as j) are forms of the same name
20:39:38 <olsner> cheater7: I know, that's why I wrote jürgen
20:40:02 <olsner> jörgen is the scandinavian version
20:40:18 <oerjan> cheater7: see the swedish link above, they're all listed as variations for the swedish name of st. georg
20:40:26 <olsner> it's georges all the way down
20:42:05 -!- cheater7 has quit (Quit: Leaving).
20:42:23 -!- cheater7 has joined.
20:42:30 <oerjan> <cheater7> is that like goran bregovic <-- it seems not, wp says "In the South Slavic languages, Goran translated means "woodsman", "the man from the mountains" or "highlander""
20:42:40 <cheater7> i think i'll just call oerjan นักบุญจอร์จ.
20:44:19 <olsner> and here's the motherload: http://en.wikipedia.org/wiki/George_(given_name)#Other_language_variants
20:44:25 <cheater7> Or Geordi, which apparently is also an option.
20:45:37 <cheater7> this name has thousands of funny variants
20:46:25 <oerjan> <Phantom_Hoover> Things that annoy me: people thinking silicon-based biochemistry means a lump of silicon crystal. <-- well i have read silicon has problems with stability in water solutions so maybe it _would_ work better as something crystallic. or wait was that arsenic instead of phosphorus...
20:47:02 <Phantom_Hoover> But crystalline biochemistry is not what is meant by silicon-based.
20:48:10 <oerjan> indeed, i guess that's just a scifi meme
20:48:56 <elliott> oh m god ounchomg jeys with two fingfwrs inly is the best way tot type rver
20:48:59 <oerjan> ...if you _could_ have crystallic life forms, that could just as easily (or more) be carbon-based
20:49:14 <cheater7> i like the chinese version is Qiozh.
20:49:31 <Phantom_Hoover> oerjan, well, silicon crystallises more readily than carbon.
20:50:09 <elliott> can we all just agree that salt is the best thing to happen to the human race
20:50:23 <cheater7> i want liquid crystal based lifeforms
20:50:32 <Phantom_Hoover> Because Homestuck is quite clearly the best thing to happen to the human race.
20:53:20 -!- Yahweasel has changed nick to Gregor.
20:54:42 <cheater7> so we have three george's here
20:54:45 <Gregor> Bleh. BNCs suck for naming consistency :P
20:55:09 <Gregor> If you rearrange nearly all the letters in my name, I become "Georg"!
20:55:24 <olsner> you probably are a georg already
20:55:32 <cheater7> i thought gregor was also a george?
20:55:59 <cheater7> ok, i guess that leaves us with just two
20:56:13 <Gregor> From the Late Latin Gregorius, a cognate of the Greek Grēgorios (vigilant, a watchman), which is derived from the verb egeirein (to awaken).
20:57:10 <Gregor> Rarely, but in particular not right now; when you see my nick change, that means I just logged on on a new system :P
20:58:37 <Gregor> And Yahweasel (my TRUE true name) isn't derived from "George" at all!
20:59:16 <olsner> yahwe is obviously also a form of george
20:59:22 <olsner> or the other way around
20:59:59 <Gregor> http://en.wikipedia.org/wiki/YHWH :P
21:01:28 <oerjan> Gregor: the reason why you don't seem to insult many is because the jews are strictly forbidden from mentioning your nick, so they cannot complain. duh.
21:01:55 <Gregor> oerjan: They don't have to explicitly state my nick to complain about it :P
21:02:23 <elliott> this is just proof that all jews hate each other because they're bankers
21:02:40 <oerjan> yeah but how would know it's _you_ their complaining about then? duh.
21:02:48 <elliott> and also because they like blowing up the world trace center
21:03:11 -!- Gregor has changed nick to Yahweasel.
21:03:26 <Yahweasel> OK, all accessible clients now reconfigured :P
21:03:36 <Phantom_Hoover> <Gregor> Bleh. BNCs suck for naming consistency :P ← BNCs?
21:04:14 -!- crystal-cola has quit (Remote host closed the connection).
21:04:24 <elliott> Borderline Nigger Crackers.
21:04:28 <elliott> They're crackers with faces on them.
21:04:32 <elliott> The faces are... BORDERLINE niggers.
21:04:32 -!- crystal-cola has joined.
21:04:49 <elliott> And they all have different names.
21:05:57 <oerjan> samba, coffee and nilsson
21:06:53 <Phantom_Hoover> Dammit elliott what have I said before about making me look like a neonazi sympathiser.
21:08:32 -!- crystal-cola has quit (Changing host).
21:08:32 -!- crystal-cola has joined.
21:11:22 <elliott> oerjan: what do Nords call spanners?
21:11:26 <elliott> apparently danes call it a Swedish key
21:11:46 <elliott> http://upload.wikimedia.org/wikipedia/commons/0/05/2008-04-14_Chrome-Vanadium_Wrenches.jpg
21:12:28 <oerjan> fastnøkkel, or skiftenøkkel if it's adjustable
21:12:33 <elliott> Yahweasel: I don't care how you pronounce wrench, it's a terrible word.
21:12:44 <elliott> oerjan: Does that translate as "Danish key" please say yes.
21:13:03 <elliott> Vorpal: olsner: What do Swedes call spanners/wrenches
21:13:41 <oerjan> no, fast = fixed, skifte = moving, shifting
21:13:43 <olsner> elliott: "blocknyckel" apparently
21:13:53 <elliott> olsner: does that translate as "Norwegian key"
21:13:59 <olsner> oerjan: fast keys and shifty keys
21:14:28 <olsner> elliott: nope, block means block, and nyckel means key
21:15:11 <oerjan> umbrakonøkkel for those weird hexagonal ones
21:15:36 <oerjan> oh it's supposed to be n, not m
21:16:14 <oerjan> says wikipedia, but none of the other links :D
21:17:25 <oerjan> oh actually unbrakonøkkel has more hits, but umbrako has so many google doesn't try to suggest it's wrong
21:17:46 <olsner> elliott: and adjustable ones are called skiftnyckel in swedish too... note that skift is not to be confused with Skifs (that's something completely different: http://www.youtube.com/watch?v=kEwNOWUA4yo)
21:19:20 <olsner> oerjan: aah, insexnyckel!
21:19:54 <oerjan> apparently some of the confusion is due to uMbrako being a genuine trademark for unbrako keys
21:20:38 <oerjan> olsner: MISSING WIKIPEDIA LINK
21:20:55 <elliott> you scandinavians. so weird.
21:21:01 <olsner> oerjan: plzzzz, my link is on your wikipedia link
21:21:26 <olsner> that is, the wikipedia link you didn't send but I found otherwise
21:21:56 <olsner> http://sv.wikipedia.org/wiki/Insexnyckel
21:22:31 <oerjan> olsner: oh, i must have misspelled it when googling
21:22:33 <olsner> "(or sexkantnyckel)" .. for added humor value kant is pronounced a lot like cunt
21:23:09 <oerjan> olsner: well i guess elliott cannot possibly honestly complain about the name insex-
21:23:35 <olsner> for a long time I thought the name was insektsnyckel
21:23:35 -!- zzo38 has joined.
21:24:15 <zzo38> Does it ever in Jeopardy game show that two or all three players are out before the final round?
21:25:14 <olsner> hmm, how would you get eliminated?
21:25:52 <olsner> otoh... nm, I don't know how jeopardy works anyway
21:26:05 <zzo38> When the second round is finish, everyone with zero or negative score is out and cannot play the final round.
21:26:21 <oerjan> olsner: so do swedes frequently have sexkantsex, i wonder
21:26:54 <zzo38> But usually no player is out, sometimes one player is out, I have never seen two or three players out.
21:28:30 <oerjan> olsner and i are not different personas of the same group mind at _all_
21:29:06 <olsner> what do you mean? we can't be the *same* persona
21:29:28 <oerjan> yes but the group mind is insane, of course
21:30:10 <oerjan> hypothetically speaking, since it certainly does not exist. that's absurd.
21:30:11 <olsner> insanity: the only sane choice for a group mind
21:30:38 <olsner> or the most sane anyway?
21:31:09 <oerjan> well only sane implies most sane, that's logic
21:31:36 <zzo38> How can it be? You have to learn both, but that doesn't make insanity a sane choice, it doesn't make sense. Nor does it make sanity a insane choice, I think?
21:32:15 <oerjan> zzo38: it cannot make sense if it's insane, duh
21:32:28 <zzo38> oerjan: Yes, that is why it is the case.
21:32:53 <oerjan> but insanity can easily think it's sane
21:33:18 <oerjan> ...i think the opposite is also possible in some cases.
21:33:27 <zzo38> oerjan: In that case, it makes you delusioned instead, then. Being delusioned (usually) does not make it true.
21:33:41 <zzo38> Actually it never makes it true.
21:33:54 <zzo38> But in rare cases it is true anyways, it just doesn't make it true.
21:34:11 <oerjan> contradicting the group mind _might_ get you deluged. see: Noah.
21:34:48 <oerjan> (although it's promised not to do that again.)
21:35:23 <zzo38> Next time is going to be with acidic fire!
21:35:48 * tswett writes in his shopping list.
21:35:54 <tswett> Which color of dragon confers acid resistance?
21:36:13 <oerjan> tswett: see latest iwc annotation
21:36:23 <zzo38> I won't let you buy any dragon. The reason for that is: we don't sell that.
21:36:28 <oerjan> presumably the one which can make acid
21:36:45 <tswett> Oh, you can't get acid resistance by eating dragons.
21:38:46 <olsner> heh... my thue compiler has a single two-line comment, it describes the simplest line in the program and 15 times as long as that line
21:39:06 -!- azaq23 has joined.
21:39:08 <olsner> (the line is s/\?/Q/g)
21:39:56 <oerjan> of course you can buy dragons. just don't expect a good deal http://www.airshipentertainment.com/mythcomic.php?date=20101002
21:40:53 <zzo38> If you buy the dragon, can I buy you? I promise if that happen I *must* allow dragon buying me.
21:41:04 -!- MigoMipo has quit (Remote host closed the connection).
21:41:32 -!- MigoMipo has joined.
21:42:38 <oerjan> <tswett> Oh, you can't get acid resistance by eating dragons. <-- hm there ought to be some spell that makes it work, like tribal cannibals supposedly believed it does...
21:43:01 <tswett> You can get acid resistance by eating dragons. NetHack is incorrect.
21:43:05 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:43:07 <zzo38> Do you have any tribal cannibals spellbooks?
21:43:29 <oerjan> no, this is from absorbed folklore, not games
21:43:36 <olsner> my wordpress plugin doesn't highlight sed properly either :(
21:43:45 <zzo38> olsner: Then fix it, please.
21:44:16 <zzo38> Do you have any absorbed folklorist spellbooks?
21:44:34 <olsner> I googled for "geshi sed highlighting" and found my own complaint about geshi not doing sed highlighting
21:46:23 <elliott> I bet pygments does sed...
21:46:51 <zzo38> I turn off syntax highlighting in vim usually because it does things wrong, CWEB syntax highlighting is a bit wrong, and for many systems, in some files, can be wrong that syntax highlighting system will work it badly in some cases, such as, with TeX you can change category codes and in Forth you can also do various things with the input file
21:47:49 <zzo38> But, a proper syntax highlighting program should work good with C and C++ and so on.
21:48:11 <olsner> elliott: "... and it highlights even Brainf*ck!" sounds promising :)
21:48:49 <olsner> but sed is not in the list of languages on the home page
21:49:04 <zzo38> Brainfuck highlighting is also simple possible. But some programming languages that it doesn't work.
21:49:26 <olsner> am I like the only person in the world that occasionally writes stuff in sed?
21:49:53 <zzo38> olsner: No. I do too sometimes (when working on Linux, that is). And so do other people, too.
21:50:39 <zzo38> But, with Forth, it should be able to do make it when reading the words from the input file, also do prettyprinting (and indexing and so on) simultaneously with that, now it is formatting correctly. But it cannot be formatted without executing!
21:52:29 <zzo38> And TeX acts like that too. METAFONT however, is simply syntax without any of these things that makes it mixed up in strange circumstances.
21:56:35 -!- augur has quit (Remote host closed the connection).
21:59:29 <zzo38> Did you notice I added a section in my user page in esolang wiki?
22:00:18 <oerjan> micahjohnston: i made you a shorter quine
22:01:06 <olsner> oerjan is the part of the group mind devoted to shortening quines
22:01:10 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[\]/\\//P\\2/P1//[\]/<\>\\/P0
22:01:12 <EgoBot> /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>\]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[\]/\\//P\\2/P1//[\]/<\>\\/P0
22:02:18 <oerjan> i tend to use <> as the internal quoting. although here i used [] temporarily because it was easier not to confuse strings that way
22:02:52 <elliott> oerjan: hmm, could a quine get any simpler?
22:02:55 <micahjohnston> is it two characters so you can put escapes in the middle and then copy it so it turns itno itself?
22:03:04 <elliott> defining a /// quine as a non-empty program with at least one / or \ that outputs itself
22:05:19 <oerjan> <micahjohnston> y u no work <-- it loops, you cannot substitute directly with something which contains the original string
22:05:59 <micahjohnston> is there any way to turn /asdf/jkl;/qwer into \/asdf\/jkl;\/qwer ?
22:06:26 <oerjan> elliott: i don't know if it could get _much_ simpler, although there might be a couple characters to shave off
22:07:03 <oerjan> micahjohnston: not if you mean replacing all / without looking at the context
22:08:21 <oerjan> there were a couple i wanted to check, in fact
22:08:52 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[]/\\//P\\2/P1//[\]/<\>\\/P0
22:08:53 <EgoBot> /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[]/\\//P\\2/P1//[\]/<\>\\/P0
22:09:33 <oerjan> !slashes /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[]/\\//P\\2/P1//[\]/<\>\\/P0
22:09:34 <EgoBot> /<\>/[\\\\]\\\\\\//P1/<>/<<>\><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[]/\\//P\\2/P1//[\]/<\>\\/P0
22:09:46 <elliott> there's a \ missing in the output
22:10:12 <oerjan> elliott: funny guy, but that's why i did the second one
22:10:27 <oerjan> which was with the output of the previous one
22:11:55 -!- cheater7 has quit (Ping timeout: 240 seconds).
22:12:31 <oerjan> <micahjohnston> is it two characters so you can put escapes in the middle and then copy it so it turns itno itself? <-- yep precisely, as you noticed you cannot substitute single chars without wiping them out from the program
22:14:13 <oerjan> elliott: well that got two chars shorter by removing an unnecessary escape.
22:15:55 <oerjan> !slashes /<>/[\\\\]\\\\\\//P1/<>/<<>><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[]/\\//P\\2/P1//[\]/<\>\\/P0
22:15:57 <EgoBot> /<>/[\\\\]\\\\\\//P1/<>/<<>><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[]/\\//P\\2/P1//[\]/<\>\\/P0
22:16:08 <oerjan> !slashes /<>/[\\\\]\\\\\\//P1/<>/<<>><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[]/\\//P\\2/P1//[\]/<\>\\/P0
22:16:09 <EgoBot> /<>/[\\\\]\\\\\\//P1/<>/<<>><>/[<>\<>\<>\<>\]<>\<>\<>\<>\<>\<>\<>/<>/P<>1<>/P<>2<>/<>/P<>0<>/P<>1<>/<>/[<>]<>/<>\<>\<>/<>/P<>\<>\2<>/P<>1<>/<>/[<>\]<>/<<>\><>\<>\<>/P<>0//P0/P1//[]/\\//P\\2/P1//[\]/<\>\\/P0
22:17:31 -!- Phantom_Hoover has quit (Quit: Leaving).
22:19:44 <elliott> fizzie: Please explain: http://www.youtube.com/watch?v=ZHReqKRvonE
22:21:41 <crystal-cola> I should probably just go to bed but I really want to stay up and work
22:24:26 -!- augur has joined.
22:25:32 <oerjan> i see no more quotes or escapes to shave off
22:26:30 -!- elliott has quit (Remote host closed the connection).
22:26:31 <oerjan> it's really about the same structure as the /\ only one, afair
22:26:47 <oerjan> just much clearer, obviously
22:27:13 -!- elliott has joined.
22:27:28 <oerjan> 00:25 oerjan> it's really about the same structure as the /\ only one, afair
22:27:28 <oerjan> 00:25 oerjan> just much clearer, obviously
22:29:13 <oerjan> (not to mention almost the same as a main loop)
22:37:12 <olsner> sweet, embedding the RTS in the compiler was dead easy
22:38:26 <olsner> yeah, it was surprisingly easy to output constant strings :P
22:45:58 <elliott> mgjfjfjfjfjfjfjffjfjghfjewialzmxncbvghtyrujdm\
22:50:22 <elliott> <sdtyuiol,mnbgvfdewrtuiop;l.kjhgrftyuikuytrewsetdyrfugihojpknpihyutuyrdxsertwestdfxcgvbhn;kjklohuy9tyurktjdyhrgfcnhbjknkl;'[]\
22:50:48 <oerjan> elliott must have had a uninitialized memory error
22:55:09 <zzo38> Why did(n't) you stop beating your wife?
23:11:14 <elliott> 11:28:38 <ais523> anyway, attack/defend/fool are the scissors/rock/paper of BF Joust, I think
23:11:14 <elliott> 11:28:50 <ais523> although writing good defence programs is /hard/
23:11:14 <elliott> 11:28:58 <ais523> at least, as far as I could tell
23:11:14 <elliott> 11:29:04 <ais523> and a good attack can normally break through them
23:11:59 <crystal-cola> do you just read logs when nobody is chatting?
23:12:34 <zzo38> What can you do with program that combine two or three of these features?
23:12:47 <elliott> crystal-cola: I read logs independently of that :P
23:14:53 <elliott> crystal-cola: random, of course
23:15:01 <elliott> I've been half-considering reading every log in order, though :P
23:15:27 <zzo38> I read whatever log I am currently interested in, which depends on circumstances.
23:22:24 <elliott> 12:24:18 <ais523> which means that you can have aleph-one cooling power, but only aleph-zero noise
23:25:45 <olsner> grr, wrote about all my recent developments on Thue in mod_rewrite but forgot to write that it can now run hello world
23:25:52 -!- Sgeo has joined.
23:26:00 <olsner> and didn't even mention the 10% bug
23:27:12 <elliott> olsner: smilies have infected your code
23:27:20 <olsner> zzo38: the interpreter almost printed hello world, but each character was wrong by ~10% - as in the ascii number of each output character was about 10% less than the expected one
23:27:38 <elliott> olsner: i still think that's the greatest bug of all time :)
23:27:44 -!- zzo38 has quit (Quit: A king without a subject would be an anomaly.).
23:28:24 <Sgeo> So, people who privately pretend to be kings are anomalies?
23:28:34 <Sgeo> Hmm, define "king"
23:28:38 <Sgeo> Ok, I'm being weird not
23:29:20 <elliott> implying you were ever not weird
23:30:09 <MDude> I'm gonna say a king is a guy who ended up at the top of a feudal heirarchy.
23:30:22 <MDude> In fact I just did.
23:37:27 * oerjan calls the TSA to perform a thorough immigration search on MDude
23:38:01 -!- augur has quit (Remote host closed the connection).
23:38:37 <oerjan> although i vaguely recall seeing MDude speak before
23:38:58 <MDude> I think I didn't say anything earlier.
23:39:20 <MDude> Though Freenode is telling me this nickname is registered, so maybe some other MDude was here before?
23:40:26 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
23:41:26 <elliott> maybe MDude is the true inventor of Esme
23:41:30 <elliott> I'm just throwing theories around here
23:41:36 <oerjan> registered 3 weeks ago, are you sure you weren't the one doing it?
23:42:13 <MDude> I registerd on the wiki, is there some automatic connection between the databases here?
23:42:18 <elliott> oerjan: http://esolangs.org/w/index.php?title=EsoInterpreters&curid=2229&diff=22237&oldid=21408 is this appropriate?
23:42:32 <elliott> EsoInterpreters seems primarily about the interpreter loops to me
23:42:39 <oerjan> MDude: oh did you edit the wiki? maybe that's what i recall
23:42:40 <elliott> if a language can't implement the other languages there
23:42:40 <MDude> Maybe someone grabed up the name when they saw me on the wiki for whatever reason.
23:42:42 <elliott> it shouldn't be on the page
23:42:47 <elliott> because it'll always have a blank row or whatever
23:42:55 <MDude> Yeah, I edited the Mechanique page.
23:44:10 <oerjan> elliott: oh. that's appropriate, should have been done ages ago
23:44:26 <elliott> oerjan: It seems weird to have a language on there that cannot implement any of the others.
23:44:35 <elliott> It seems like the rows should be identical to the columns.
23:44:52 <oerjan> ok maybe "usable for programming" should be a requirement
23:45:14 <elliott> maybe we should have another table for unusable ones
23:45:19 <elliott> I would say TC, but Befunge-9three is on there
23:45:30 <oerjan> elliott: except several of those there already have no i/o
23:45:42 <elliott> it's a bit of a mess of a page...
23:45:47 -!- FireFly has quit (Quit: swatted to death).
23:47:09 <oerjan> elliott: for one thing, it may encourage people to make more deadfish interpreters ;D
23:47:25 <elliott> oerjan: we're going to have to start inventing languages just to make more Deadfish interpreters
23:48:05 <elliott> what, there's no implementation in C++ templates
23:48:21 <elliott> hey, they can use native integers
23:48:35 <olsner> so deadfish can't interpret anything but some stuff can interpret deadfish?
23:48:47 <elliott> olsner: deadfish can't do shit :P
23:48:55 <elliott> Everything that can breathe can interpret Deadfish.
23:49:10 <elliott> Commands: i for increment, d for decrement, s for square, o for output.
23:49:14 <elliott> there's just one number those all apply to
23:49:19 <elliott> if the number's less than zero, it's set to zero
23:49:27 <elliott> if it's exactly two hundred and fifty six, it's set to zero
23:49:32 <elliott> (but not if it's /over/ that)
23:49:39 <elliott> ((subtle point of the spec a lot of people miss))
23:49:55 <oerjan> olsner: but it's fun because it gives other nearly but not completely useless esolangs something they can actually do
23:50:05 <elliott> crystal-cola: You just don't appreciate the power :P
23:50:52 <olsner> thue is underrepresented though, I need more X'es in that row if I want to run it in my favourite thue environment
23:51:36 <elliott> olsner: well there's http://esolangs.org/wiki/Deadfish#Thutu and also one in slashes
23:51:56 <elliott> Just want to give a big thanks to all contributers and to all those who have worked on Deadfish in any way possible. I didn't think Deadfish would make it even this far! Great job! I must move on now to bigger projects though... Use the esolang wiki as your up-to-date resource on Deadfish since it's doing a better job then my archive and plus it's better this way! :-) - JTS
23:52:26 <olsner> there are only two languages (claims that page) that have been implemented in thue, but I guess the page probably isn't fully updated either :)
23:52:35 <elliott> Time to write some C++ templates.
23:52:39 <oerjan> crystal-cola: basically we don't know how much of deadfish is truly intentional and how much is bugs in the original interpreter, but the game as i play it is to implement it as closely as reasonable, warts and all
23:52:55 <olsner> elliott: deadfish interpreter in templates?
23:52:57 <elliott> oerjan: Technically it should be limited to, say, thirty-two bits :P
23:53:02 <elliott> oerjan: Since the C implementation is.
23:53:10 <elliott> But then the Python implementation isn't...
23:53:15 <elliott> Oh well, IMPLEMENTATION LIMITATIONS
23:53:17 <oerjan> elliott: well C doesn't _specify_
23:53:26 <elliott> oerjan: True, but it can't be a bignum.
23:53:35 <oerjan> elliott: and the python implementation doesn't allow multiple commands per line either
23:53:35 <olsner> elliott: pretty sure you can do arbitrary-precision stuff in templates regardless of the sizes of int and stuff
23:53:57 <elliott> olsner: you can, but I'm going to use native integers for elegance and simplicity
23:54:15 <oerjan> elliott: your scheme implementation handles eof, that's clearly not allowed ;D
23:54:24 <elliott> oerjan: it handles it buggily, I think :)
23:54:35 <elliott> but fixing it would make it more ugly, so meh
23:54:44 <oerjan> i thought i checked it today and it actually halts...
23:55:11 <elliott> can someone say two for me
23:55:47 <olsner> time to go to sleep while I'm my helpfullest
23:56:30 <elliott> I think it's just structs and functions, right?
23:57:03 <elliott> I might have to use peano numbers olsner
23:57:10 <elliott> because otherwise it'd compute the value at runtime maybe??
23:57:54 <oerjan> elliott: i've been thinking that if the esointerpreters page grows much more it needs to be split somewhat. perhaps even turned into a graph although that makes it hard to edit.
23:59:21 <elliott> g++-4.5 -Os -Wall -Wextra -std=gnu++0x deadfish.c++ -o deadfish
23:59:21 <elliott> deadfish.c++:9:44: error: ‘::value’ has not been declared
23:59:21 <elliott> deadfish.c++: In instantiation of ‘const int I<End>::Result<0>::value’:
23:59:21 <elliott> deadfish.c++:14:37: instantiated from here
23:59:21 <elliott> deadfish.c++:9:46: error: dependent-name ‘R:: Result’ is parsed as a non-type, but instantiation yields a type
23:59:22 <elliott> deadfish.c++:9:46: note: say ‘typename R:: Result’ if a type is meant
00:00:07 <oerjan> one obvious stopgap is to separate out the self-interpreters, they take a lot of room for little data
00:00:08 <elliott> static const int value = typename R::template Result<N+1>::value;
00:00:12 <elliott> what is wrong with that christ gog
00:04:03 <elliott> hmm maybe i'll do it another way
00:06:14 <elliott> oerjan: Seq<I,I,D,S,S,S,S,O>
00:06:26 <elliott> wow i can even lowercase them
00:06:35 <elliott> the output might be ... kind of hard
00:09:23 <elliott> this is going to be so awesome
00:12:24 <elliott> how on earth should I do output...
00:12:30 <oerjan> a deadfish interpreter in thue could not help failing some times due to thue's broken I/O
00:13:17 <oerjan> it might be simplest to assume input contains only dios and newline
00:16:14 <elliott> sometimes C++ programs compile correctly the first time
00:16:21 <elliott> deadfish.c++:12:1: error: ‘struct std::basic_string<char>’ is not a valid type for a template constant parameter
00:16:57 <elliott> yeah ok i guess i have to try an array
00:18:21 <elliott> oerjan: you know, if this idea fails, I'm going to have to encode output in one gigantic unary number :D
00:19:43 <oerjan> because i managed to do decimal output in both unlambda and itflabtijtslwi, despite using unary internally
00:19:52 <elliott> i'll have to encode it INTERNALLY as unary
00:19:57 <elliott> and convert that into actual printing in the runtime code
00:20:13 <elliott> deadfish.c++:21:37: error: declaration of ‘const char o::Result<n, outlen, out>::out [outlen]’
00:20:13 <elliott> deadfish.c++:18:32: error: shadows template parm ‘const char* out’
00:20:14 <crystal-cola> guh "Could someone sexplain how to derive this equation" it's the definition you duck
00:20:26 <elliott> deadfish.c++:13:1: error: template parameter ‘out’ of type ‘const char*’ is not allowed in an integral constant expression because it is not of integral or enumeration type
00:20:38 <elliott> THEY'RE ALL INTEGERS MATHEMATICALLY
00:21:14 <oerjan> also, licking vanilla sauce off aluminium foil turns out not to be entirely safe for lips
00:21:35 <elliott> deadfish.c++:14:1: error: template parameter ‘out’ of type ‘const char*’ is not allowed in an integral constant expression because it is not of integral or enumeration type
00:21:43 <elliott> DIEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
00:21:56 <oerjan> elliott: i cut myself :´(
00:22:10 <elliott> oerjan: plz this is not an appropriate topic for public discussion
00:22:13 <elliott> you should go see a therapist
00:22:16 <elliott> self-harm is serious business
00:22:26 <oerjan> but it was unintentional
00:22:42 <elliott> stop hiding behind excuses for cutting yourself, oerjan
00:22:52 <oerjan> i'm far too much of a chicken to do cut myself intentionally
00:23:12 <elliott> wait, maybe I can have a variadic number of output integers...
00:23:17 <elliott> oerjan: what, that's the only reason? :P
00:25:16 <elliott> oerjan: all aboard the http://en.wikipedia.org/wiki/Euthanasia_Coaster
00:26:01 * elliott dearly hopes oerjan does not respond with "ooh that looks interesting" :P
00:27:24 <oerjan> ah that's where the "insurance against unintentional survival of passengers" i saw before here came from
00:27:56 <elliott> Reach the end, "Whoops, you've survived, but you're going to be permanently disfigured and without three senses for the rest of your life"
00:28:14 <oerjan> don't worry, i'm too much of a chicken for the euthanasia rollercoaster. mostly, even ordinary rollercoasters.
00:29:59 <oerjan> (WHAT DO YOU MEAN THIS DOESN'T COMFORT YOU?)
00:30:18 -!- sebbu2 has joined.
00:30:27 -!- sebbu2 has quit (Changing host).
00:30:27 -!- sebbu2 has joined.
00:31:11 <elliott> deadfish.c++:17:27: error: expected ‘>’ before ‘...’ token
00:31:11 <elliott> deadfish.c++:19:39: error: expansion pattern ‘out’ contains no argument packs
00:31:11 <elliott> deadfish.c++:19:50: error: a brace-enclosed initializer is not allowed here before ‘{’ token
00:31:11 <elliott> deadfish.c++:27:27: error: expected ‘>’ before ‘...’ token
00:31:11 <elliott> deadfish.c++:28:47: error: expansion pattern ‘out’ contains no argument packs
00:31:12 <elliott> deadfish.c++:29:69: error: expansion pattern ‘Seq<I, Is ...>::Result<n, out>::A:: output’ contains no argument packs
00:31:27 <elliott> what the FUCK is an argument pack
00:32:34 <MDude> Well if anyone's interested, I posted a thing I wrote on the text boards: http://esoteric.voxelperfect.net/forum/kareha.pl/1304270902/l50
00:32:44 <elliott> MDude: They still work? X-P
00:33:14 -!- sebbu has quit (Ping timeout: 240 seconds).
00:33:20 <elliott> MDude: hmm, doesn't that inherently conflict, the goto and the come from?
00:33:45 <oerjan> MDude: oh THAT's where i saw your nick
00:34:04 <MDude> Well no, you just need to list the label you're coming from at the label you're going to.
00:34:08 <elliott> I'd like to bring http://esoteric.voxelperfect.net/forum/kareha.pl/1302671493/l50 up again
00:34:13 <elliott> OObsession of the man is one of the most unknown and frightful phenomena, which stops evolutionary development of the man and brings its to full spiritual (and often to physical) death.
00:34:17 <elliott> except with only one O, oops
00:34:27 <crystal-cola> http://esoteric.voxelperfect.net/forum/kareha.pl/1300870768/l50
00:36:24 <oerjan> elliott: your job, as always, will be to make an esolang of it
00:36:39 <elliott> oerjan: but I'm still thinking about Var!
00:37:29 <elliott> i assure you that i will invent all esolangs if given the time in the future
00:37:52 <elliott> Hey I think I have to go back to my old model to make this work
00:39:16 <elliott> even if it is kind of ugly :(
00:39:30 <elliott> it'll be i<i<i<s<o<o<s<o<end>>>>>>>>>>>>>>>>>>>>>>>>>>>>
00:41:16 -!- crystal-cola has quit (Quit: leaving).
00:42:02 <elliott> deadfish.c++: In instantiation of ‘End::Result<9>’:
00:42:02 <elliott> deadfish.c++:22:1: instantiated from ‘s<End>::Result<3>’
00:42:02 <elliott> deadfish.c++:20:1: instantiated from ‘i<s<End> >::Result<2>’
00:42:02 <elliott> deadfish.c++:20:1: instantiated from ‘i<i<s<End> > >::Result<1>’
00:42:02 <elliott> deadfish.c++:20:1: instantiated from ‘i<i<i<s<End> > > >::Result<0>’
00:42:03 <elliott> deadfish.c++:35:34: instantiated from here
00:42:05 <elliott> deadfish.c++:7:55: error: invalid in-class initialisation of static data member of non-integral type ‘const int [0]’
00:45:59 <elliott> template <int n, int... out> const int End::Result<i, out...>::output[sizeof... out] = { out... };
00:46:02 <elliott> theres no way this will work
00:46:27 -!- pikhq has joined.
00:46:28 <elliott> i can just define my own lists
00:46:35 <elliott> yes i think that is possible
00:46:50 <elliott> oerjan: does it count as a compile-time implementation if the actual decimal conversion is done at runtime
00:47:02 <elliott> it'll basically compile to a list of printed integers
00:58:26 -!- sebbu has joined.
01:01:49 -!- sebbu2 has quit (Ping timeout: 260 seconds).
01:04:21 <elliott> deadfish.c++:36:33: error: type/value mismatch at argument 2 in template parameter list for ‘template<int N, class Ns> struct Cons’
01:04:22 <elliott> deadfish.c++:36:33: error: expected a type, got ‘o<R>::Result<n, Out>::Next:: Output’
01:14:29 <elliott> oerjan: I need a mathematician to answer a question
01:15:50 <oerjan> <elliott> apparently danes call it a Swedish key <-- as i just probably got to the same reddit thread, i just remembered that norwegians use the word "svenskeknappen" for power button. and yes, that means the swedish button.
01:16:36 <elliott> oerjan: so anyway the question is
01:16:49 <elliott> you put a human in a five by five by five metres room
01:17:01 <elliott> e is fed and watered sufficiently to sustain himself for the rest of eir natural lifespan
01:17:11 <elliott> there is a light, just assume it's magic
01:17:37 <elliott> will e die of not being able to breathe because e is buried under a mound of eir own excrement, or some other cause, first?
01:17:43 <elliott> I require a mathematical answer, thanks
01:17:54 <oerjan> mind you svenskeknappen is not the official term
01:18:41 <oerjan> i assume there was some air source as well
01:18:59 <elliott> basically all their needs are cared for, except for toiletry
01:19:30 <elliott> it's plausible that you might be unable to breathe properly because of the sheer stench before you're buried in it, I suppose
01:19:52 <oerjan> this would require knowing how much he shits per day, i assume. in volume.
01:20:15 <oerjan> knowing how much he eats might allow a calculation of that
01:20:28 <elliott> oerjan: that's a good question
01:20:40 <elliott> let me relay it back to my source :D
01:21:23 <oerjan> so that's 125000 litres
01:21:36 <oerjan> > 125000 / 365.25 / 100
01:22:11 <elliott> "how many litres of poop per day william" ;; I'm so glad I haven't left this earth without saying this sentence.
01:22:27 <oerjan> assuming it's < 3 litres per day, it should be enough room in the room for a hundred years
01:22:58 <elliott> oerjan: you have to factor in, though, the size of the human
01:23:03 <oerjan> now it occurs to me that the shit will probably dry reasonably fast, so it should be possible to stack, and thus keep out of the way
01:23:06 <elliott> it doesn't matter if there's a full five cm available at the top
01:23:23 <elliott> that's true, i'd say feces compacts pretty well
01:23:36 <oerjan> and i think the volume of the human is only a small fraction of this
01:23:47 <elliott> so i guess the only way you'd plausibly die of it is if the stench made it impossible to breathe properly...
01:23:51 <oerjan> so not worth worrying about
01:24:12 <elliott> "okay now let's say there's three people in the room"
01:24:16 <oerjan> yes. but i've not heard that shit stench is poisonous in small amounts is it...
01:24:32 <elliott> oerjan: well probably not, and I doubt dried poo stinks that much, cf. adobe
01:24:52 <elliott> but if you're passing out because of the smell it's probably dire
01:24:59 <elliott> i'm so glad we're handling this professionally and rationally
01:25:08 <oerjan> hm one might seek data on how fast septic tanks usually fill up
01:25:40 <oerjan> yes but most people manage to stay in a toilet long enough to get things done.
01:26:00 <oerjan> even an outhouse toilet, which stinks considerably more
01:26:18 <elliott> apparently we're going by it taking about ten years for a septic tank to fill up
01:26:22 <elliott> hm i'm assuming urine isn't a factor here
01:26:25 <elliott> since it'd pretty much seep into the floor
01:27:08 <oerjan> you know once it's dry, you can even burn it, it's done in africa...
01:27:20 <elliott> oerjan: not without a tool...
01:27:29 <elliott> this is meant to be like the most hideous complex method of execution so why would you provide that
01:28:34 <elliott> i still think my "keep them alive indefinitely with advanced technology while whapping them with a feather repeatedly until they die" method is the best, though
01:28:57 <elliott> as in, feed them, waste disposal, etc., but also prevent them getting like heart disease and shit
01:29:50 <oerjan> this is engineer stuff, not math ;D
01:30:38 <elliott> oerjan: psht, you had to do SEVERAL pieces of arithmetic
01:30:53 <elliott> and really i wanted to be able to check this off of list of things to do
01:31:01 <elliott> ask phd in mathematics about execution by shit
01:31:09 <elliott> life goal fulfilled right there
01:35:29 <elliott> Although I think it outputs in reverse
01:36:57 <elliott> ok, now to implement <0 and ==twofivesix
01:41:54 <elliott> oerjan: give me one good reason not to rewrite it for peano numbers
01:47:23 <pikhq> Strange. Linux's implementation of ECN has been broken... For 3 years.
01:48:46 <pikhq> It's straight-up not checked for ECN on IPv6 links.
01:49:30 <elliott> “I have seen a great number of poorly Photoshopped images in my time as a photographer and I can tell by the pixels that it is a fake,” said Kenna Lindsay, a New York-based photographer who works with composite images.
01:50:13 <pikhq> Please, please tell me you're fucking with us.
01:50:50 <elliott> http://edition.cnn.com/2011/WORLD/asiapcf/05/03/bin.laden.fake.photo/
01:51:03 <elliott> "Osama bin Laden dead, schoolteacher finally shaves beard after 10 years" --actual headline
01:51:09 <pikhq> Huh. Support for same-sex marriage in the US is now, according to multiple recent polls, the *majority* position.
01:51:33 <oerjan> elliott: well he _did_ shave it because of ObL dying
01:51:54 <elliott> i want to start the "Thing, Irrelevant Other Thing" Headline Service
01:52:08 <pikhq> The schoolteacher decided that he wouldn't shave until bin Laden was caught.
01:52:20 <pikhq> Bit surprising he kept it up.
01:52:36 <pikhq> Or that anyone not around the teacher cared.
01:53:22 <elliott> I just call that being Jewish ;D
01:53:46 <oerjan> incidentally harald fairhear, the king who united norway, made a similar decision about not cutting his hair until he'd achieved it
01:54:41 <elliott> also lol at "whoops, people are forgetting about Norway, better mention some minutiae" :D
01:54:45 <oerjan> OH NO NOW WE'LL SLIDE INTO THE OCEAN
01:55:06 * oerjan hits elliott with the saucepan ===\__/
01:55:58 <oerjan> there are some people who unfortunately _won't_ forget about norway. like the chinese.
01:56:11 <oerjan> they're still angry about that nobel prize.
01:56:54 <pikhq> oerjan: Eh, give them something deserving of anger.
01:57:07 <pikhq> THE NORWEGIAN EMPIRE SHALL REIGN SUPREME
01:57:23 <pikhq> IT SHALL CONQUER ALL WITH AWESOMENESS AND LUTEFISK
01:57:29 <elliott> template <typename N> struct Dec;
01:57:29 <elliott> template <> struct Dec<Zero> { typedef Zero Result; };
01:57:30 <elliott> template <typename N> struct Dec<Succ<N>> { typedef N Result; };
01:57:46 <pikhq> (the lutefisk is, of course, for those that are unswayed by awesome)
01:57:57 <elliott> it's like Haskell but really verbose :D
01:58:05 <oerjan> rubbish, lutefisk is a subset of awesome
01:58:37 <pikhq> Okay, okay, caustic food is definitely awe-inspiring.
01:59:08 <oerjan> it won't harm you, you're caustic already
02:03:06 <pikhq> ... Zoophilia is legal in 19 states of the US. I'm not kidding.
02:03:26 <elliott> zoophilia is legal everywhere
02:03:42 -!- pizearke has quit (Quit: Leaving.).
02:03:49 <pikhq> Zoophilia is merely the desire, of course.
02:04:31 <pikhq> And I am in one of those states.
02:05:13 <pikhq> And Kansas had a law against it that they... Repealed?
02:05:31 <pikhq> The legislature actually went and said "Yeah, we should be able to fuck sheep.", I suppose.
02:06:57 <elliott> Quiz: why does this break when INS is a two-argument template?
02:07:01 <elliott> Quiz: why does this break when INS is a two-argument cpp macro?
02:08:43 <oerjan> because cpp doesn't understand that the second , is nested?
02:09:13 <elliott> because cpp is designed for C :)
02:09:32 <oerjan> well i assume you can add some ()
02:09:56 <elliott> oerjan: nope, that would break the template code
02:09:58 <elliott> just made it varargs instead :D
02:09:59 <elliott> deadfish.c++:50:27: error: type/value mismatch at argument 1 in template parameter list for ‘template<class N> struct Succ’
02:10:00 <elliott> deadfish.c++:50:27: error: expected a type, got ‘Add<Succ<N>, N>::Next:: Value’
02:10:00 <elliott> deadfish.c++:61:1: error: need ‘typename’ before ‘Add<N, Succ<Zero> >::Value’ because ‘Add<N, Succ<Zero> >’ is a dependent scope
02:10:00 <elliott> deadfish.c++:62:1: error: need ‘typename’ before ‘Dec<N>::Value’ because ‘Dec<N>’ is a dependent scope
02:10:02 <elliott> deadfish.c++:63:1: error: need ‘typename’ before ‘Add<N, N>::Value’ because ‘Add<N, N>’ is a dependent scope
02:10:05 <elliott> deadfish.c++:82:63: error: type/value mismatch at argument 1 in template parameter list for ‘template<class N> struct Wrap’
02:10:08 <elliott> deadfish.c++:82:63: error: expected a type, got ‘Seq<I, Is ...>::Result<N, Out>::A:: Value’
02:10:10 <elliott> pikhq: yes, I'm doing what you think I'm doing
02:18:54 <elliott> deadfish.c++:82:63: error: type/value mismatch at argument 1 in template parameter list for ‘template<class N> struct Wrap’
02:18:54 <elliott> deadfish.c++:82:63: error: expected a type, got ‘Seq<I, Is ...>::Result<N, Out>::A:: Value’
02:20:02 <pikhq> elliott: Oh jeeze.
02:20:40 <elliott> pikhq: deadfish in C++ templates :)
02:21:03 <pikhq> It is so very nice having your own computer to work with again.
02:25:45 <pikhq> And ohmyfuckingGod I had forgotten how nice GreyMist is.
02:26:41 -!- augur has joined.
02:29:36 <oerjan> ego inflation, when your head explodes
02:30:26 <elliott> this is the best deadfish implementation ever
02:30:33 <elliott> deadfish.c++:83:102: error: dependent-name ‘Wrap<typename I::Result<N, Out>::Value>::Value’ is parsed as a non-type, but instantiation yields a type
02:30:49 <elliott> SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS0
02:30:49 <elliott> SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS0
02:30:52 <pikhq> "It won't be toned down, it will be toned up." — David Firth, on the feature-length film he is currently making.
02:31:26 <elliott> that last one isn't 16777216
02:31:35 <pikhq> I am definitely intriguéd.
02:34:01 <elliott> deadfish.c++: In instantiation of ‘i::Result<int, Cons<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Nil> >’:
02:37:41 <elliott> deadfish.c++:42:42: error: declaration of ‘struct Add<Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Su
02:37:41 <elliott> cc<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > >
02:37:42 <elliott> >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<
02:37:49 <elliott> Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Add<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<S
02:37:54 <elliott> ucc<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > >, Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Succ<Zero> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >, Succ<Zero> >’
02:38:31 <oerjan> actually i think your implementation succs
02:38:45 <pikhq> "Select a differential equation of reasonable challenge and, using technology, present the solution in the form of a Powerpoint slide or a poster. You will need to have background information on the equation and its application and mathematicians associated with the solution."
02:38:55 <elliott> hmm, why is this broken...
02:38:57 <pikhq> PROCRASTINATION IS POWER!
02:39:04 <elliott> oerjan: maybe I'll implement binary instead :D
02:40:10 <oerjan> squaring is a bit awkward i think. at least that's one reason why i didn't try it in itflabtijtslwi
02:40:27 <elliott> I'm just using self-multiplication
02:40:53 <oerjan> i have pretty good idea how to do i and d
02:41:27 <elliott> well I have the power of C++ here.
02:41:30 <elliott> typedef typename Seq<Is...>::template Result<typename Wrap<typename A::Value>::Value, typename A::Output> B;
02:42:06 <elliott> oerjan: btw it's back to being comma-separated
02:45:52 <elliott> http://www.reuters.com/article/2011/05/02/us-potter-idUSTRE74171420110502
02:45:54 <elliott> Eerie links between Harry Potter, bin Laden
02:46:06 <elliott> While distributor Warner Bros has never pushed the comparison, the entire Potter saga -- both the books and the movies -- have an inevitable subtext, colored by the events of 9/11.
02:46:06 <elliott> While the first volume in J.K. Rowling's seven-book series was originally published in England in 1997, the first movie, "Harry Potter and the Sorcerer's Stone," was released in November 2001, just months after 9/11.
02:48:24 <oerjan> i always found it a little eerie that "two towers" was released that year
02:50:09 -!- sebbu has quit (Read error: Connection reset by peer).
02:50:41 -!- sebbu has joined.
02:50:41 -!- sebbu has quit (Changing host).
02:50:41 -!- sebbu has joined.
02:50:54 -!- augur has quit (Remote host closed the connection).
02:53:19 <elliott> oerjan: It's eerie by a really loose definition of eerie :P
02:53:32 -!- MDude has changed nick to MSleep.
02:53:38 <oerjan> yeah i definitely should have googled the date first there ;D
02:53:55 <oerjan> well, i do recall it feeling eerie at the time
02:53:59 <elliott> This one thing has two tower-ish things, and this thing that happened has two other tower-ish things that actually look totally different, and the movie version of that first thing came out a few months after the one arbitrary Earth year anniversary of the historical event :D
03:01:06 <elliott> oerjan: do i release this version or the version that actually works well
03:01:14 <elliott> this one is more :science:
03:02:05 <oerjan> decimal output *grumble grumble*
03:02:53 <elliott> oerjan: well the unary one doesn't do that :D
03:04:29 <elliott> http://esolangs.org/wiki/Deadfish#C.2B.2B_templates
03:10:02 <pikhq> WHY DO I DESIRE SLEEP
03:11:00 -!- augur has joined.
03:11:04 <oerjan> it's probably an ancient misfeature that evolved as an essential component of vertebrate brains
03:11:29 <elliott> I WORKED HARD ON THAT SHIT
03:11:35 <elliott> IT EVEN HANDLES THE WRAPPING PROPERLY
03:18:57 -!- augur has quit (Remote host closed the connection).
03:38:59 -!- TeruFSX has joined.
03:39:27 -!- TeruFSX has quit (Remote host closed the connection).
03:43:06 -!- azaq23 has quit (Ping timeout: 240 seconds).
03:43:13 -!- azaq23 has joined.
03:46:59 -!- TeruFSX has joined.
03:47:30 -!- TeruFSX has quit (Remote host closed the connection).
03:55:52 <pikhq> Man I've been overthinking this assignment.
03:56:03 <pikhq> I can just do a short presentation on the Lorentz attractor.
03:56:05 <elliott> i've been overassigning the thinkment
03:56:14 <elliott> pikhq did you like my deadfish implementation
03:56:25 <pikhq> elliott: I am not sufficiently conscious to comment.
03:56:36 <elliott> dont worry its best read without consciousness
03:56:38 <oerjan> it's rotten and stinks
03:56:39 <pikhq> Presently, my intent is to get a plan of attack for the morning, and then sleep.
03:56:56 <elliott> oerjan: (yes i got the pun but i am still HURT)
03:57:04 <elliott> oerjan why are you making it bright outside again........
03:58:06 <oerjan> TO INCREASE YOUR TORMENT
03:58:22 <elliott> im gonna go ride on the euthanasia coaster →
03:58:40 <oerjan> IT'S BEEN SABOTAGED FOR YOUR CONVENIENCE
03:58:57 <elliott> im gonna get on the first flight to finland and beat oerjan up
03:59:13 <elliott> ill get oklopol to join me
04:01:12 <elliott> oerjan ur meant to point out that you dont live in finland
04:02:32 <oerjan> i certainly live in finland, and it would be an excellent place to go to beat me up.
04:05:00 -!- TeruFSX has joined.
04:06:14 <oerjan> BECAUSE I PUT THE SUN THERE
04:06:46 -!- comex has quit (Quit: ZNC - http://znc.sourceforge.net).
04:07:25 -!- comex has joined.
04:13:13 -!- elliott has quit (Ping timeout: 258 seconds).
04:18:29 -!- augur has joined.
04:41:57 -!- sebbu has quit (Read error: Connection reset by peer).
04:42:22 -!- sebbu has joined.
04:42:22 -!- sebbu has quit (Changing host).
04:42:23 -!- sebbu has joined.
04:45:12 <pikhq> tup monitor -a -f is definitely a killer feature.
04:55:58 -!- Yahweasel has changed nick to Gregor.
04:56:49 <pikhq> I just make an edit and *bam*, the program's built again!
05:03:33 -!- TeruFSX has quit (Ping timeout: 240 seconds).
05:07:18 -!- wareya has quit (Read error: Connection reset by peer).
05:08:18 -!- wareya has joined.
05:13:38 -!- iamcal has joined.
05:35:50 -!- Sgeo_ has joined.
05:38:04 -!- Sgeo has quit (Ping timeout: 252 seconds).
05:40:29 -!- jack has joined.
05:40:35 -!- jack has left.
06:00:39 -!- Aesculapius has joined.
06:02:46 <Aesculapius> Well, this isn't quite what I'd imagined. I'll ask anyway. I was looking up brainfuck, came across braincopter and discovered that every link I could find for both the new and old interpreters is down. Anyone know where I could find either?
06:03:37 <coppro> there are lots of BF interpreters out there
06:04:02 <coppro> `bf +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.
06:04:28 <Aesculapius> But yeah, I noticed the abundance of those hahaha
06:05:25 <Aesculapius> Like, apparently the old source was lost to the internets and someone for the esoteric wiki made another interpreter, and the link on the wiki is down
06:05:57 <oerjan> hm it's only half a year since User:Peping edited
06:07:56 * oerjan drops a note on his talk page
06:09:55 <oerjan> not sure if he actually _reads_ the wiki, mind you
06:10:11 <Vorpal> Aesculapius, tried waybackmachine?
06:10:26 <Vorpal> chances aren't great, but better than not trying
06:11:59 <oerjan> ooh, the old one is there
06:12:36 <Vorpal> on waybackmachine? awesome
06:12:49 <Vorpal> now just wait for the horribly slow loading time
06:12:58 <oerjan> darn only the directory
06:13:31 <oerjan> and the hello.png, it seems
06:16:24 <oerjan> well that was depressing, wayback's crawling was really bad :(
06:17:08 <Aesculapius> lmao. gonna have to make sure this gets mirrored somehow
06:17:12 <oerjan> i guess they never had the resources to get everything
06:20:27 <oerjan> <Aesculapius> Well, this isn't quite what I'd imagined. <-- what did you imagine btw :D
06:21:12 <oerjan> this is usually a silent time for the channel, if that's what you meant
06:22:18 <Aesculapius> Oh no I thought it was gonna be dead because there isn't an admin or anything
06:23:41 -!- ChanServ has set channel mode: +o oerjan.
06:24:24 <oerjan> there are a few. we just don't show it off usually, keeps things calmer.
06:24:45 -!- oerjan has set channel mode: -o oerjan.
06:24:49 <Aesculapius> okay okay I wasn't thinking. I'm just used to any active IRC channel having an admin with a pile of underlings =p
06:25:25 <oerjan> on the freenode network it is more or less a global policy not to have that, i think
06:26:01 <fizzie> oerjan: Yes, having it visible supposedly raises the mythical channel temperature.
06:26:22 <fizzie> "Don't keep channel operator privileges. Displaying these privileges on your nick with a "+o" attracts participants who are interested in gaining them and using them actively; it also attracts the attention of participants who react negatively to authority. Have your nick added to the channel access list and op yourself only when needed."
06:26:43 <fizzie> I like the "react negatively to authority" bit.
06:27:15 <Aesculapius> Eh, I kinda think that is true from what I've seen. I have seen channels where people loose their head over that stuff, and of course ones where they don't
06:29:33 <fizzie> Sure, (most of) the guidelines make sense. I just think they've gotten a bit carried away when philosophizering that stuff.
06:29:37 <fizzie> "Think of a person's emotional state as kinetic energy. Enthusiasm, happiness, anger, frustration, all add to the energy level. The more emotion is experienced, the "hotter" the participant. The average emotional state of a channel is its temperature. Emotions in IRC become exaggerated and conveying them directly increases channel temperature. Pent-up frustration, in particular, is often released as a series of inappropriate, "high energy" outbursts."
06:31:07 <Sgeo_> I thought it was going to be some pseudoscience quack for a moment
06:31:21 <oerjan> Sgeo_: YES AND THEY RUN FREENODE
06:31:35 <oerjan> whoops, we're not supposed to use all caps either. scratch that.
06:32:44 <fizzie> oerjan: Your all-caps sentence probably raised the temperature almost 0.2 microelliotts.
06:32:57 <Aesculapius> wow I guess its really a big deal here then
06:32:59 <oerjan> microelliotts? we are all going to die!
06:33:19 <oerjan> Aesculapius: um we don't actually care about all caps on this channel
06:34:16 <Aesculapius> Nonono. I just mean rules for you admins and the like. If they are a big deal, I imagine that the rules are counterproductive to what they are trying to obtain with them in the first place
06:34:40 <Aesculapius> anyway I sent an email to the webmaster of the place that first hosted the braincopter code just in case
06:35:20 <oerjan> the old code looked like it was on a university site, the account has probably expired years ago
06:35:48 <oerjan> and dropbox probably expires stuff as well
06:36:27 <Aesculapius> well the uni page is there and it hosts other stuff. I just have no idea if that page or the email that belongs to it has been updated and or looked at for years
06:38:04 <oerjan> it rings a bell, i may have tried to chase that dead link before
06:38:53 <oerjan> "27 May 2007: This site has undergone some changes. The directory structure has changed. QuickCG has received an improvement. Some links of the site may not work, some code examples may not compile anymore due to non-backwards compatible changes to QuickCG. Some articles got removed. Sorry for the inconvenience."
06:41:04 <oerjan> right now that CG tutorial seems to be the only thing on the page
06:42:06 <oerjan> so i assume it was vandevenne you mailed, and not a central university webmaster
06:42:36 <Aesculapius> It was whatever email link is on that page, which likely is not a university webmaster
06:43:48 <oerjan> his last wiki edit seems to be from October 2007
06:46:10 <oerjan> which mind was _after_ that site reorganization
06:46:34 -!- azaq23 has quit (Quit: Leaving.).
06:47:02 <Aesculapius> Yep yep. Later that year, and nothing for nearly 4 years now, so has been inactive for quite some time.
06:49:01 <oerjan> no sign of braincopter, but some others are there
06:50:01 <oerjan> still the same gmail address, so maybe you'll get a reply
06:51:54 <Aesculapius> Hmmm, I'll give the first email a day before trying the gmail on the recent site. Not giving that much time for a response would be rude of me, unless y'all wanna give it a go.
06:53:31 <Aesculapius> I know that seems silly, but if he does still get his uni email forwarded or something, spamming him probably wouldn't get a favorable response =p
06:53:54 <oerjan> Aesculapius: the emails were identical, i think
06:54:23 <Aesculapius> m1@uni-one.nl - email adress from the site
06:55:45 <Aesculapius> may have been his email if it was on the wiki. so who knows?
06:56:22 <oerjan> oh i was looking at http://www.student.kuleuven.be/~m0216922/CG/ which i now realize actually is a redirect to lodev.org
06:57:28 * oerjan cannot find that m1@uni-one.nl address
06:57:59 <Aesculapius> it was on the site that I linked a lil bit up. the one that had the zip file hosted
06:59:23 <Aesculapius> http://fixunix.com/os2/551166-vacpp-3-08-problem-large-source-file.html from this discussion
07:00:00 <oerjan> oh so you didn't reach it from the wiki
07:00:34 <Aesculapius> I did get a response from that site, and apparently it was not what I thought it was
07:01:57 <oerjan> that page is freezing my browser :(
07:05:40 <Aesculapius> Actually are there any other projects missing now of his on the esoteric language front? Cause if so one of you experienced people may want to send the mail knowing what you are talking about.
07:06:06 <oerjan> brainloller's links are also dead
07:06:24 <oerjan> i didn't check everything else
07:08:01 <Aesculapius> man I cant believe I've found myself going down this rabbit hole just from wanting to teach myself ada
07:10:54 -!- oerjan has quit (Quit: ZZZZZZZZZAP).
07:28:57 <Aesculapius> till then, sleepytime and homework. Thanks for the help!
07:29:00 -!- Aesculapius has quit (Quit: KVIrc 4.0.4 Insomnia http://www.kvirc.net/).
08:10:30 -!- siracusa has quit (Ping timeout: 258 seconds).
08:11:59 -!- siracusa has joined.
08:21:41 -!- monqy has quit (Quit: hello).
09:29:48 -!- sebbu has quit (Read error: Connection reset by peer).
09:30:16 -!- sebbu has joined.
09:30:28 -!- sebbu has quit (Changing host).
09:30:28 -!- sebbu has joined.
09:52:04 -!- Slush- has joined.
10:46:04 -!- Slereah has joined.
10:47:53 -!- Slereah_ has quit (Ping timeout: 246 seconds).
11:05:11 <cheater_> ok, so from the ubuntu-MOTU list, which is the ubuntu release package maintainers list, i.e. the people who decide what goes in and what doesn't: https://lists.ubuntu.com/archives/ubuntu-motu/2011-April/007064.html
11:30:54 -!- clog has quit (Ping timeout: 240 seconds).
12:00:12 -!- augur has quit (Remote host closed the connection).
12:04:13 -!- Phantom_Hoover has joined.
12:14:15 -!- clog has joined.
12:15:40 -!- crystal-cola has joined.
12:16:54 -!- FireFly has joined.
12:17:13 <lambdabot> Phantom_Hoover: You have 3 new messages. '/msg lambdabot @messages' to read them.
12:21:08 -!- crystal-cola has quit (Quit: Lost terminal).
12:22:13 -!- crystal-cola has joined.
12:22:36 <crystal-cola> What's it called when the system quits and you get a black screen with white text on it then it goes back to the login ?
12:30:39 -!- MSleep has changed nick to MDude.
12:39:46 <crystal-cola> I thought that "right wing radio" daffy duck thing was pretty funny
12:45:40 -!- rodgort has quit (Read error: Connection reset by peer).
12:48:09 -!- rodgort has joined.
12:58:41 -!- augur has joined.
13:03:59 -!- sebbu2 has joined.
13:04:00 -!- sebbu2 has quit (Changing host).
13:04:00 -!- sebbu2 has joined.
13:04:17 -!- augur_ has joined.
13:04:44 -!- augur has quit (Read error: Connection reset by peer).
13:05:44 -!- sebbu3 has joined.
13:05:45 -!- sebbu3 has quit (Changing host).
13:05:45 -!- sebbu3 has joined.
13:07:10 -!- sebbu has quit (Read error: Operation timed out).
13:07:11 -!- sebbu3 has changed nick to sebbu.
13:09:33 -!- sebbu2 has quit (Ping timeout: 264 seconds).
13:14:36 -!- augur_ has quit (Remote host closed the connection).
13:18:13 -!- augur has joined.
13:19:57 -!- BeholdMyGlory has joined.
13:34:02 -!- sebbu2 has joined.
13:36:50 -!- Deewiant has quit (Ping timeout: 240 seconds).
13:37:45 -!- sebbu has quit (Ping timeout: 264 seconds).
13:37:47 -!- Deewiant has joined.
13:55:20 <Gregor> Wow, I got an email from Google Incorporation! You would think that Google would be a big and professional enough company to know that that's not a correct use of the word "incorporation", but even so! Why look, I've won 500,000! All I have to do is give them my address, phone number, bank account info and SSN (which is odd because this is Google UK, but I guess they knew I'm a US citizen) and they'll transfer funds!
13:55:22 <Gregor> YESSSSSSSSSSSSSSSSSSSSSSS
14:06:07 <crystal-cola> maybe it's short and backwards for coporate information
14:08:22 <crystal-cola> the google founders Larry Page and Sergey Rank invented the famous Page-Rank algorithm to decide which pages are most important
14:08:38 -!- azaq23 has joined.
14:14:18 <Gregor> What is that data ordering that ensures that each iteration changes only one bit, but the entire range is still covered?
14:20:39 <Gregor> Typing random keywords into Google until it finally gives you the result you want: Pretty awesome? :P
14:25:10 <lifthrasiir> well, Google gives you a CAPTCHA when you query Google a lot
14:25:26 <Gregor> My queries were not quite that fast :P
14:25:50 <Gregor> Besides, 't found me Gray codes!
14:29:32 <crystal-cola> I don't understand how when I learn a new thing, then it appears on every forum and IRC that I go to
14:29:40 <crystal-cola> like nobody EVER asked this stuff before I knew abou tit
14:30:33 <crystal-cola> nobody ever said "paradigm" before I knew the word (e.g.)
14:47:17 <Phantom_Hoover> Abou Tit, the lesser-known relative of Abou Ben Adhem.
15:07:31 -!- sebbu has joined.
15:07:31 -!- sebbu has quit (Changing host).
15:07:31 -!- sebbu has joined.
15:11:01 -!- sebbu2 has quit (Ping timeout: 260 seconds).
15:17:09 -!- sebbu2 has joined.
15:17:09 -!- sebbu2 has quit (Changing host).
15:17:09 -!- sebbu2 has joined.
15:20:20 -!- sebbu has quit (Ping timeout: 240 seconds).
15:35:42 -!- hiato has joined.
15:35:46 -!- hiato has quit (Client Quit).
15:40:20 -!- cheater_ has quit (Quit: Leaving).
15:42:43 -!- cheater_ has joined.
16:00:52 -!- Slereah has quit (Ping timeout: 258 seconds).
16:00:58 -!- Slereah has joined.
16:02:44 -!- augur has quit (Remote host closed the connection).
16:04:57 -!- augur has joined.
16:38:58 -!- azaq23 has quit (Quit: Leaving.).
16:54:58 -!- elliott has joined.
16:57:20 <elliott> 06:02:46: <Aesculapius> Well, this isn't quite what I'd imagined. I'll ask anyway. I was looking up brainfuck, came across braincopter and discovered that every link I could find for both the new and old interpreters is down. Anyone know where I could find either?
16:57:27 <elliott> "Well, this isn't quite what I'd imagined" :D
16:58:02 <elliott> 06:22:18: <Aesculapius> Oh no I thought it was gonna be dead because there isn't an admin or anything
16:58:14 <elliott> oh well freenode policy... he says to a person that obviously won't be logreading
16:59:00 <elliott> 06:32:44: <fizzie> oerjan: Your all-caps sentence probably raised the temperature almost 0.2 microelliotts.
16:59:00 <elliott> 06:32:59: <oerjan> microelliotts? we are all going to die!
16:59:26 <elliott> 06:35:48: <oerjan> and dropbox probably expires stuff as well
16:59:26 <elliott> not that I know of, oerjan
16:59:32 <elliott> it's meant for file synchronisation primarily...
17:02:48 <elliott> 14:29:32: <crystal-cola> I don't understand how when I learn a new thing, then it appears on every forum and IRC that I go to
17:02:48 <elliott> 14:29:40: <crystal-cola> like nobody EVER asked this stuff before I knew abou tit
17:02:48 <elliott> 14:30:00: <crystal-cola> bizarre being so selectively blind
17:02:48 <elliott> 14:30:13: <crystal-cola> the same happens with words in speech
17:02:48 <elliott> 14:30:33: <crystal-cola> nobody ever said "paradigm" before I knew the word (e.g.)
17:02:52 <elliott> crystal-cola: well-known cognitive bias
17:03:05 <elliott> usually referred to as the Baader-Meinhof effect informally
17:03:52 <elliott> crystal-cola: You can't :P
17:04:05 <elliott> It's not exactly the worst bias out there though :P
17:04:07 <crystal-cola> http://www.damninteresting.com/wp-content/baadermeinhof.jpg
17:04:24 <elliott> damninteresting is like the cracked of long-form articles, CAN'T STOP READING
17:09:17 <crystal-cola> can't figure out how to use satz 90, everyone gives this stupid contrived example
17:19:09 -!- pikhq_ has joined.
17:19:10 -!- pikhq has quit (Ping timeout: 252 seconds).
17:22:19 <olsner> elliott: I HAVE THE MANGO CHUTNEY - now what?
17:26:25 <olsner> no, I'm going to like put it on some piece of food and eat it with it
17:33:21 <Gregor> olsner: Put it on Boston cream pie.
17:34:30 <olsner> boston cream pie? sounds related to a cleveland steamer
17:35:26 <Gregor> http://en.wikipedia.org/wiki/Boston_cream_pie
17:37:43 <olsner> http://www.urbandictionary.com/define.php?term=boston%20cream%20pie has a few alternative meanings
17:39:03 <elliott> `addquote <olsner> boston cream pie? sounds related to a cleveland steamer
17:39:06 <HackEgo> 389) <olsner> boston cream pie? sounds related to a cleveland steamer
17:39:30 <HackEgo> 362) <Gregor> I use LiGNUXFCE+apps <Gregor> That's pronounced by saying "Linux" and then vomiting, btw.
17:39:31 <HackEgo> 91) <apollo> Actually, he still looks like he'd rather eat her than have sex with her.
17:39:32 <HackEgo> 176) <cpressey> Never ever use a quote which contains both the words "aloofness" and "gel" (verb).
17:39:32 <HackEgo> 224) <Phantom_Hoover> [...] I'm just widening the shaft to be 4x2 or so.
17:41:43 <olsner> "widening the shaft" didn't have an urban dictionary entry, must mean something benign then
17:42:03 <Gregor> Or it's so obvious that it doesn't need one :P
17:54:28 -!- ais523 has joined.
17:55:59 <elliott> how is it this late already?
17:58:18 -!- crystal-cola has quit (Read error: Operation timed out).
18:01:57 -!- monqy has joined.
18:02:52 -!- ais523 has quit (Read error: Connection reset by peer).
18:09:20 -!- ais523_ has joined.
18:29:06 -!- ais523__ has joined.
18:29:26 -!- ais523_ has quit (Disconnected by services).
18:29:30 -!- ais523__ has changed nick to ais523_.
18:30:01 <elliott> ais523_: shedding your underscores?
18:30:20 <ais523_> I'm still trying to get my laptop to connect to the wireless
18:30:30 <ais523_> and as usual, ais523_ is me on a desktop computer that happens to be nearby, via web access
18:30:47 <ais523_> thus, as ais523_ is the correct nick, when the desktop got disconnected and reconnected as ais523__ I had to ghost to the correct nick
18:43:31 -!- Cheery has joined.
18:43:41 <Cheery> I've not been here a lot.. but I'd like to ask..
18:44:30 <Cheery> does it make your language project esoteric if it makes all current mainstream languages look esoteric?
18:44:34 <ais523_> Cheery: with a hostname like that, you'll fit right in; I seem to remember that hostnames like that are quite popular around here
18:45:02 <ais523_> yes, and I think I recognise the part before too
18:45:06 <ais523_> although I'm not sure where from
18:47:34 <ais523_> ah: it's very similar, but not identical, to Ilari's, and the part at the end is also the same as oklopol's
18:47:45 <ais523_> but it seems to be someone new
18:48:22 <Cheery> no, I'm not new. in fact, I've been here couple times
18:48:27 <ais523_> it's different by only two digits from Ilari's
18:48:37 <elliott> Cheery: i'm sorry but we're going to have to do science on your hostname
18:48:47 <ais523_> sorry, it's just I thought I recognised the hostname, and I nearly did
18:48:54 <ais523_> if it's only two digits out, not surprising I thought I recognised it
18:50:49 <Cheery> anyway.. want to see what I've been doing lately?
18:51:06 <Cheery> http://hg.boxbase.org/coconut
18:51:44 <elliott> 5 the coconut script in this repository can do all the basic
18:51:44 <elliott> 6 commands for editing .cock files.
18:51:48 <elliott> a rather unfortunate extension
18:51:58 <elliott> is this just a structural editor?
18:52:45 <Cheery> right now. but I'm about 4kiB away from a lisp interpreter running off the .cock
19:05:29 -!- nddrylliog has joined.
19:05:34 -!- nddrylliog has left.
19:07:16 -!- crystal-cola has joined.
19:08:00 <Cheery> I think I'm doing it now. and declare this a programming language
19:08:34 <Cheery> alternatively I'd have better command-line editing model out there. but I can perhaps do better still.
19:09:17 -!- aloril has quit (Read error: Operation timed out).
19:09:38 <elliott> nddrylliog sure spent a long time here
19:13:32 <Cheery> anyone other ever ended up to doubly linked lists in python?
19:14:02 <crystal-cola> Has anyone ever doubly linked as much as to be like?
19:14:04 <elliott> At that point I would stop using Python :P
19:14:11 <elliott> Doubly linked lists are laame
19:16:36 <Cheery> I ended up to doing double-link structure in python because I had to deal with handling of multiple items as if it was single.
19:17:16 <Cheery> it feels so lame since python has builtin list..
19:17:40 <Cheery> though it doesn't have ways to catenate list in middle of another.
19:18:33 <olsner> that's not catenation...
19:18:56 <Cheery> or wait.. DAMN it has!
19:20:08 <Cheery> actually I have to open a python manual and look on this a bit.
19:20:36 <fizzie> It also has a method for that.
19:21:09 <fizzie> Oh, right, just for a single-element insertion.
19:21:18 <fizzie> For splicing in a list you need to use that syntax.
19:21:44 <Cheery> ah that's the name for it.
19:21:53 <fizzie> Anyhoo, s.insert(i, x) is specified as s[i:i] = [x].
19:22:40 <fizzie> I'm not sure how official name "splicing" is, but "splice" is the Perl function for generic list-manipulation like that.
19:23:38 <Cheery> I guess that helps me so that my whole editing model simplifies a lot
19:24:14 <Cheery> removes all that double-link crud. ^^
19:24:53 -!- aloril has joined.
19:26:15 <elliott> Cheery: why not write your program in C++ templates instead, it's the best accidentally Turing-complete language ever
19:27:04 <Cheery> elliott: because I don't like corporate esoterism feeling it gives
19:27:18 <elliott> http://esolangs.org/wiki/Deadfish#C.2B.2B_templates
19:27:37 <elliott> run all your enterprise deadfish programs in the C++ compiler.
19:27:51 <olsner> heh, read that as "totally autistic"
19:28:19 <ais523_> elliott: M4 > C++ templates
19:28:20 <olsner> that code is not nearly as horrible as I'd have imagined it
19:28:26 <ais523_> although I'm not sure if its TCness is deliberate
19:28:35 <elliott> ais523_: go on then, where's your Deadfish in m4?
19:28:49 <elliott> I wrote the C++ version in, like, forty minutes!
19:28:59 <elliott> (took ages to get an output scheme that worked)
19:29:08 <elliott> olsner: yeah it's kind of disturbing how non-hideous it is :D
19:29:13 <ais523_> elliott: not right now, thanks, I'm busy with other things
19:29:25 <elliott> olsner: it does the decimal conversion at runtime, though, but /eh/
19:29:30 <elliott> actually i might be able to fix that
19:29:39 <elliott> and have a list of chars be the result
19:29:43 -!- KingOfKarlsruhe has joined.
19:30:07 <ais523_> [[Deadfish]] is turning into Rosetta Code, I fear
19:30:32 <elliott> yeah but [[Deadfish]] isn't
19:30:43 <crystal-cola> people just do not understand problem specifications at all and they post rubbish
19:30:51 <ais523_> "Deadfish started out as a subset of HQ9+, as in all it would do would be to print out hello world and give an iou depending on how many times the command 9 was entered to how many 99 bottles of beer programs it owed the programmer."
19:30:59 <ais523_> that would be a great language too
19:37:45 <crystal-cola> how about a language where the code is a single number
19:37:55 <crystal-cola> if it's a fibonacci number it prints "yes" and if it's not it prints "no"
19:38:18 <Gregor> The code is a single number in most languages.
19:38:25 <Gregor> We just don't usually look at it that way.
19:38:39 <crystal-cola> maybe the output should be n where the program is fib(n)
19:39:03 <Gregor> Somehow reminds me of http://esolangs.org/wiki/ShaFuck :P
19:39:04 -!- elliott has quit (Remote host closed the connection).
19:40:23 <crystal-cola> This sequence of SHA-1 sums is interpreted as Brainfuck code, loool
19:40:33 -!- elliott_ has joined.
19:40:45 <elliott_> template <> struct Foo<0> {...} works
19:41:13 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
19:42:11 -!- BeholdMyGlory has joined.
19:43:41 <elliott_> deadfish.c++:48:25: error: partial specialisation ‘ToDecimal<n>’ does not specialise any template arguments
19:44:35 <crystal-cola> you might generate enough hashes to find one equiavlent to something +++
19:44:56 <olsner> the default template is written differently than specializations, though I can never remember exactly how
19:44:59 <crystal-cola> or you might find roughly like +++++[[[>>> and have to find one like ]]]
19:45:18 <elliott_> I'm not sure all programs are possible in ShaFuck.
19:45:23 <crystal-cola> if you get enough peices you could just program normally
19:45:27 <elliott_> you only need a few building blocks, yeah
19:45:32 <olsner> I've been steadily forgetting how to write templates since the high point a bunch of years back when I wrote a lisp in them
19:45:33 <elliott_> but the thing is... if comments aren't allowed
19:46:43 <crystal-cola> yeah there's no way to program in this without a super computer
19:50:56 <elliott_> converted to decimal at compile-time
19:52:33 <olsner> so does it do arbitrary-precision yet?
19:53:34 <elliott_> olsner: I made a Peano arithmetic version
19:53:48 <elliott_> olsner: I might translate this to binary, but I'd need division for the decimal output ;_;
19:53:53 <elliott_> it just uses native C++ ints as-is
19:55:12 <olsner> bah, what's wrong with slow as long as it's correct?
19:56:00 <elliott_> olsner: by slow, I actually mean that the C++ compiler gave up on you if you tried to generate a number big enough
19:56:11 <elliott_> thankfully log_two(n) is a lot smaller than n so binary should work >:)
19:56:20 <elliott_> olsner: here's the current version that does its own decimal conversion: http://sprunge.us/jPjM
19:56:26 <elliott_> DecimalLoop being the relevant part
19:56:26 <olsner> there's a flag to control the recursion depth iirc
19:56:36 <elliott_> olsner: the number produced is 16777216
19:56:45 <elliott_> i don't think the recursion depth required would fit in an int that the option parser probably uses :P
19:57:39 <olsner> hmm, maybe you could just do decimal arithmetic everywhere?
19:58:00 <elliott_> olsner: possibly, but that would be pretty ugly -- I need multiplication for the s instruction
19:58:12 <olsner> meh, multiplication, how hard can it be?
19:58:20 <elliott_> olsner: it'd just be long and boring :)
19:58:31 <elliott_> I could use repeated addition like I do now
19:58:34 <elliott_> but addition will be ugly anyway :)
19:59:03 <monqy> the whole thing is ugly; what's the harm
19:59:15 <elliott_> monqy: yeah but at least it's not repetitive :)
20:03:30 <elliott_> olsner: hmm... I still think binary division would be easier :)
20:04:09 <elliott_> ok maybe decimal arithmetic will be easier
20:04:31 <elliott_> I can't use repeated addition for multiplication
20:04:39 <elliott_> or you'll run out of recursion space before even reaching the int limit
20:07:07 <crystal-cola> maybe you could make one recursion compute a bunch of stuff
20:07:32 <elliott_> that's nearly impossible, the language is like Haskell without any standard types really
20:07:36 <elliott_> well it has int but i couldn't use it here :)
20:07:44 <elliott_> oh and it's not lazy, so like ML I guess
20:07:49 <elliott_> but yeah the only control flow is recursion
20:07:54 <elliott_> and some basic pattern matching
20:08:05 <elliott_> crystal-cola: yep, giving you the benefits of fast multiplication :)
20:08:25 <elliott_> I mean I don't need a super fancy multiplication algorithm
20:08:33 <crystal-cola> maybe there could be a C++ compiler that uses GMP for templates
20:08:34 <elliott_> but "add repeatedly" won't work when one of the arguments is like one million
20:09:03 <crystal-cola> I don't know how to do it but it starts like that
20:09:08 <olsner> I think you can pattern match quite freely on types though, it's just when you involve data that you have lots of weird limitations
20:09:43 <monqy> quick represent data as types
20:09:48 <monqy> unless you've already done that
20:09:51 <monqy> in which case keep it up
20:10:40 <elliott_> `addquote <crystal-cola> here's a good multiplication algorithm <crystal-cola> 1010101 x 110 <crystal-cola> well <crystal-cola> I don't know how to do it but it starts like that
20:10:42 <HackEgo> 390) <crystal-cola> here's a good multiplication algorithm <crystal-cola> 1010101 x 110 <crystal-cola> well <crystal-cola> I don't know how to do it but it starts like that
20:10:46 <elliott_> monqy: i'm doing that for everything but ints :P
20:11:16 <crystal-cola> add up all the banged numbers in the left column
20:11:32 <elliott_> <crystal-cola> add up all the banged numbers in the left column
20:12:43 <crystal-cola> if you turn your head sideways it's the same as the normal one
20:23:01 -!- ais523_ has quit (Quit: Page closed).
20:23:27 <elliott_> olsner: write me a decimals addition plz
20:24:04 <elliott_> crystal-cola: so i don't have to write a decimal conversion routine...
20:24:08 <elliott_> which would involve division and modulo
20:24:26 <elliott_> crystal-cola: deadfish outputs in decimal
20:25:38 <elliott_> meh i don't really want to write a decent multiplication algo
20:26:47 <elliott_> i don't think you realise how horrific C++ templates are :D
20:26:48 <crystal-cola> add to the partial sum when the hhalfing number ends with a 1
20:27:02 <elliott_> doubling and halving sounds painful unless I use binary... and then I need full division /anyway/ defeating the point
20:28:49 <crystal-cola> oh yeah if you use base then theen you need to be able to multiply a number by a digit (01,2,3,4,56,7,89,)
20:29:03 <crystal-cola> you could implement it in decimal if you have doubling and halfing though
20:29:17 <olsner> elliott_: it's trivial... carry the one, do some stuff, add, etc
20:29:32 <elliott_> yesterday was C++ template day
20:29:47 <crystal-cola> if you just implement doubling and halving (with remainder) then the rest is simple
20:30:49 <olsner> if doubling is adding, halfing is obviously subtracting
20:31:22 <crystal-cola> chop off a digit then double it twice then add it
20:31:31 <olsner> doublings and halflings
20:32:04 <crystal-cola> so you'd need a lookup table for halves of each digit
20:32:05 <elliott_> `addquote <crystal-cola> 3 = 7/2
20:32:06 <HackEgo> 391) <crystal-cola> 3 = 7/2
20:33:14 -!- sebbu2 has quit (Read error: Connection reset by peer).
20:33:34 <elliott_> pi can also be 3 if you want it to be
20:33:42 -!- sebbu has joined.
20:33:42 -!- sebbu has quit (Changing host).
20:33:42 -!- sebbu has joined.
20:35:28 <olsner> well, that works even in normal math: pi is actually a probability distribution centered around 3-ish.. is pi 2? possible but not likely. is pi 3? yes!
20:36:17 <olsner> math? it's similar to the thing with numbers you were doing earlier but more advanced
20:40:19 <elliott_> C++ templates are totally insane
20:40:39 <olsner> hmm, "gem install rack BlueCloth rubypants coderay mojombo-grit georgi-git_store georgi-kontrol georgi-shinmun" ... I don't think I like ruby
20:40:55 <olsner> look at those names, none of them make any sense
20:41:20 <olsner> just put the rack in the rubypants and bluecloth directly into the mojombo
20:41:30 <elliott_> (georgi is the github username I think)
20:42:05 <olsner> git_store does, granted
20:42:36 <olsner> so that'd be something with git and ruby then
20:42:51 <elliott_> gay ritual incendiary teleporter
20:44:20 <olsner> "ritual incendiary" could be an actual thing
20:44:34 <olsner> I guess it's what you use to burn heathens and witches
20:44:51 <elliott_> and you need a teleporter for it, ofc
20:44:58 <elliott_> and if that teleporter were to be gay... well, all the better
20:45:13 <olsner> or was it the incendiary that was gay?
20:45:46 <olsner> scented wood for hiding the smell of burnt witches
20:45:58 <olsner> and any other "gay" properties you can think of for an incendiary
20:47:04 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
20:47:57 <olsner> elliott_: yeah, that was a bit unfair to the gay race
20:49:50 <Cheery> are we talking about elves?
20:50:09 <olsner> incendiary teleporters, I think
20:50:55 <Cheery> yeeauu... huh. am I done with my lisp interpreter?
20:51:18 <Cheery> it's bit simplistic still.
20:51:46 <Cheery> http://paste.pocoo.org/show/383051 <- here's the thing
20:51:57 -!- Phantom_Hoover has joined.
20:52:04 <elliott_> it's not an interpreter without control flow :P
20:55:10 <Phantom_Hoover> Hmm, Cheery doesn't seem to be a regular with a different nick.
20:55:46 <Cheery> at least it runs hello weirdos.
20:56:05 <Cheery> like you say it's the meat of lisp
20:56:56 <Phantom_Hoover> <elliott_> it's not an interpreter without control flow :P
20:57:22 <elliott_> It's not a /Lisp/ interpreter without control flow :P
20:57:28 <elliott_> Have you seen my C++ templates interpreter.
20:58:08 * elliott_ saves the page with the version that does decimal conversion at compile time
20:58:40 <elliott_> http://esolangs.org/wiki/Deadfish#C.2B.2B_templates
20:58:55 -!- zzo38 has joined.
21:01:11 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.86.1 [Firefox 3.6.16/20110319135224]).
21:07:48 <Cheery> alright.. now I've got lambda OOPS.. my cockfile got destroyed
21:08:07 <elliott_> `addquote <Cheery> [...] OOPS.. my cockfile got destroyed
21:08:08 <HackEgo> 392) <Cheery> [...] OOPS.. my cockfile got destroyed
21:10:35 <Cheery> now it extended my cockfile with empty-tagged lists.. no I don't need extensions on that.
21:12:48 <Cheery> ookay.. I'll need to fix that thing before I get to serious line-based programming..
21:13:32 <elliott_> when a file and a file love each other very much
21:13:37 <olsner> and what is "line-based programming"
21:13:53 <olsner> Phantom_Hoover: wait, as in RCS?
21:13:58 <Cheery> Phantom_Hoover: it's short for 'coconut file'
21:14:23 <olsner> but that would be a coqfile
21:14:35 <Cheery> it's pretty much how elliott_ describes it, it contains my lisp expressions I write with a line-based editor meant for cockfiles.
21:15:07 <elliott_> i'm just going to keep assuming it's intentional :D
21:15:13 <Cheery> it has slight potential to get mainstream so I get good enough names into use.
21:15:48 <Cheery> http://paste.pocoo.org/show/383067 <- lambdas, though no arguments yet.
21:16:59 <Cheery> I feel it's fun already.. but I really need to fix that editor now. :)
21:18:04 <Cheery> when I command it to do couple useful operations it instead mutilates my cock.
21:18:46 <elliott_> `addquote <Cheery> when I command it to do couple useful operations it instead mutilates my cock.
21:18:47 <HackEgo> 393) <Cheery> when I command it to do couple useful operations it instead mutilates my cock.
21:19:41 <zzo38> Why did TeXnicard stop working with include files? It worked before, now using @I causes a segmentation fault.
21:19:50 <olsner> Cheery: that pretty much never happens with software I build
21:21:32 <zzo38> The sengmentation fault seems to occur in RtlEnumerateGenericTableLikeADirectory although the stack frame is mixed up so we cannot really tell what is happening.
21:21:54 <olsner> is "RtlEnumerateGenericTableLikeADirectory" an actual function name?
21:22:10 <zzo38> olsner: I think it is a internal function of NT.
21:22:23 <elliott_> RtlEnumerateGenericTableLikeADirectory :D
21:22:34 <Cheery> elliott_: it's probably going to stop sound fun after a while. I'm sort of sad about that.
21:23:09 <olsner> yeah, Rtl* is the naming convention they use for internal functions on some level... the kernel interfaces that can be implemented in user mode, I think
21:23:16 -!- elliott_ has quit (Quit: Leaving).
21:24:00 <zzo38> If MSDN does not have this information, ReactOS project might have. And if they don't, they should.
21:24:26 <olsner> Cheery: all Coq users don't seem to have gotten enough of Coq yet, so all hope is not lost
21:25:18 <olsner> Phantom_Hoover: exactly
21:25:24 -!- cheater8 has joined.
21:26:47 <olsner> "cheater8 (~cheater77@...) has joined" :) we know you're actually cheater77 now, cheater8
21:27:53 <zzo38> Also, how to check USB speed with Linux?
21:29:27 <cheater8> also when you connect something do dmesg
21:30:09 <zzo38> cheater8: I know of lshw but how can I filter that output to figure out USB speed, what regular expression should be used? How is the speed indicated there?
21:31:24 -!- oerjan has joined.
21:32:38 <Cheery> good night getting to finish this implementation after sleep
21:33:46 -!- Cheery has quit (Quit: Lost terminal).
21:34:37 <zzo38> I found out one of the mistakes I made in TeXnicard that caused it to stop working.
21:35:39 <zzo38> I forgot to initialize a pointer to zero.
21:36:49 <Phantom_Hoover> Hmm, /r/TIL keeps having things I thought were common knowledge.
21:38:01 <oerjan> 16:59:26: <elliott> 06:35:48: <oerjan> and dropbox probably expires stuff as well
21:38:04 <oerjan> 16:59:26: <elliott> not that I know of, oerjan
21:38:24 <oerjan> well then why has the new braincopter interpreter seemingly disappeared then?
21:38:47 <crystal-cola> ;__; want to study this algorithm instead of sleeping
21:38:50 <oerjan> TIL HUMANS HAVE FIVE FINGERS ON EACH HAND
21:38:53 <fizzie> zzo38: "lsusb -t" lists human-readable speeds, at least for me.
21:38:57 <Phantom_Hoover> The real question is whether the quality of the esolang wiki is decreased by this loss.
21:39:47 <Phantom_Hoover> oerjan, well, in this case it was blind spots, which I've known about since I was less than 10.
21:39:47 <oerjan> Phantom_Hoover: we don't have _that_ many picture-based languages, do we?
21:39:49 <monqy> braincopter is one of the more interesting brainfuck derivatives, if only for its steganographic applications
21:41:56 <oerjan> <ais523_> Cheery: with a hostname like that, you'll fit right in; I seem to remember that hostnames like that are quite popular around here
21:42:10 <oerjan> ok now i'm annoyed that glogbot doesn't show hostnames on join
21:42:28 <oerjan> well now it's that finnish thing
21:42:41 <oerjan> a88-113-50-171.elisa-laajakaista.fi
21:43:07 <Gregor> They're in the raw logs.
21:47:41 <oerjan> `addquote <Cheery> right now. but I'm about 4kiB away from a lisp interpreter running off the .cock
21:47:42 <HackEgo> 394) <Cheery> right now. but I'm about 4kiB away from a lisp interpreter running off the .cock
21:47:48 <oerjan> i am _assuming_ that's what you meant
21:48:51 <oerjan> but then i'm sure it's a lovely bunch of .cocks
21:52:28 -!- elliott has joined.
21:52:31 <elliott> didn't i already add that quote
21:52:46 <HackEgo> 393) <Cheery> when I command it to do couple useful operations it instead mutilates my cock.
21:52:52 <HackEgo> 392) <Cheery> [...] OOPS.. my cockfile got destroyed
21:52:55 <HackEgo> 391) <crystal-cola> 3 = 7/2
21:52:59 <HackEgo> 390) <crystal-cola> here's a good multiplication algorithm <crystal-cola> 1010101 x 110 <crystal-cola> well <crystal-cola> I don't know how to do it but it starts like that
21:53:05 <HackEgo> 389) <olsner> boston cream pie? sounds related to a cleveland steamer
21:53:10 <HackEgo> 57) <GregorR> ??? <GregorR> Are the cocks actually just implanted dildos? <GregorR> Or are there monster dildos and cocks? <GregorR> Or are both the dildos and cocks monster? \ 299) <elliott_> The context is Gracenotes releasing an illegal copy of a film about monster cock dildos. \ 392) <Cheery> [...] OOPS.. my cockfile got
21:53:15 <HackEgo> 394) <Cheery> right now. but I'm about 4kiB away from a lisp interpreter running off the .cock
21:53:25 <elliott> Phantom_Hoover: what's the common knowledge thing
21:53:34 <oerjan> probably your memory confused it with 393
21:55:30 <Phantom_Hoover> http://www.youtube.com/watch?v=uIbkLjjlMV8 That is all.
21:55:44 <elliott> oerjan: or i intended to but never did
21:56:14 <elliott> i refuse to watch a video about cat urination
22:01:54 <oerjan> IM IN UR UTUBE UR IN ATING
22:01:57 <elliott> Any sleep is too much sleep.
22:02:01 -!- FireFly has quit (Quit: swatted to death).
22:02:44 <olsner> hmm, oops, this beer was 8.2%
22:02:50 -!- Phantom_Hoover has quit (Quit: Leaving).
22:03:23 <cheater8> did you get pissed on one tiny little beer mate
22:05:31 <olsner> not really, just very quickly reached that point where the inhibitory effects have mostly inhibited the inhibitors and failed to inhibit everything else sufficiently to compensate
22:05:44 <elliott> inhibititbyihtyibtyibtyity
22:05:59 <zzo38> Any sleep is too much sleep? And also, any wake up is too much wake up.
22:07:11 <olsner> never sleep and you'll never wake up
22:07:48 <zzo38> olsner: Yes, that, too.
22:08:12 <zzo38> I implemented deadfish in TeXnicard (because I can). You need to put in a file and load with @I command (loading on command-line will cause it to exit immediately).
22:09:08 <zzo38> Do you think my D&D character can pull all the ropes on the ship all at once?
22:10:14 <zzo38> (Whoever programmed the implementation of deadfish in C did a bad job, and that is why the other implementations follow the strange rule)
22:10:28 <zzo38> crystal-cola: Not all of them? Which ones, then?
22:11:39 <zzo38> The DM said probably they can pull all of them. I think they do have enough tentacles to pull all of them at once.
22:13:00 <zzo38> How many ropes does a ship have?
22:15:39 <zzo38> crystal-cola: And also eye.
22:16:02 <zzo38> (But I do not think you can pull any rope by eye. You can try, though, if you want to.)
22:18:16 <zzo38> Of course it is, that is why you don't do it.
22:18:19 <cheater8> you can hold more than one rope in a hand/tentacle/whatever.
22:19:08 <zzo38> cheater8: OK. How many ropes can you pull with two hands, then?
22:19:22 <oerjan> <olsner> "cheater8 (~cheater77@...) has joined" :) we know you're actually cheater77 now, cheater8
22:19:39 <cheater8> depends on the diameter of each rope
22:19:40 <oerjan> he is the only survivor of a gruesome fairytale involving 77 brothers
22:20:07 <cheater8> generally as many as you can get your hand around, but if you tie the ropes in some way then you can pull more.
22:20:14 <cheater8> you can end up pulling all ropes at once.
22:20:31 <zzo38> cheater8: Do you know anything about ropes in a ship? I don't know much about it.
22:21:10 <cheater8> i thought you meant like ropes for hoisting cargo etc
22:21:38 <cheater8> do you mean ropes for the sails?
22:22:05 <cheater8> if so then here's how it works
22:22:10 <zzo38> Yes I mean the ropes for the sails (and whatever other ropes are needed to operate the ship, if there are some)
22:22:39 <cheater8> if you're not fairly experienced then you can only do one rope at a time and won't really be able to switch unless you specifically get told to switch to a specific rope
22:23:08 <cheater8> if you're that experienced then you can still only do one rope at a time but you can swiftly change between one and the other
22:23:41 <cheater8> if you're super experienced you can do one-two ropes at a time but only in select circumstances
22:25:30 <zzo38> In what circumstances are those?
22:25:56 <cheater8> a sail line can only be used from a specific position, at a specific angle
22:26:12 <cheater8> the positions where you need to be need to be the same for the two lines
22:26:28 <cheater8> and you need to be able to see both sails at once
22:27:06 <cheater8> and you need to be very strong, because normally you need two hands for one line
22:27:48 <zzo38> Then perhaps the DM was getting mixed up.
22:29:30 <zzo38> I should tell the DM these reasons why my character probably *cannot* pull all the ropes at once.
22:32:39 <zzo38> But maybe for other things, my character is capable to pull all the ropes at once.
22:33:51 <cheater8> the boat would need to be specially provisioned for one-man control tbh
22:34:04 <cheater8> normally a boat is sailed by upwards of 3 people
22:36:21 <zzo38> We have not even reached the boat yet, in the current state of the game. Or even know if there is a boat. But it is known a destination is across the water, probably someone else's boat they will operate it and the player characters are the passengers, just need to go to there to find something.
22:36:38 <zzo38> So probably it is not specially provisioned.
22:45:09 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:50:26 -!- crystal-cola has quit (Quit: leaving).
22:55:47 <zzo38> But how would a boat be specially provisioned for that, if it did?
23:03:26 -!- augur has quit (Remote host closed the connection).
23:19:13 -!- cheater8 has quit (Ping timeout: 252 seconds).
23:33:45 <quintopia> i know it's unusual, but i agree with you both to some extent
23:37:05 <elliott> `addquote <zzo38> <elliott> <quintopia> i know it's unusual, but i agree with you both to some extent
23:37:07 <HackEgo> 395) <zzo38> <elliott> <quintopia> i know it's unusual, but i agree with you both to some extent
23:37:20 -!- augur has joined.
23:37:48 <oerjan> you're just a sucker for short quips
23:47:19 <quintopia> "Bad data goes in, bad answers come out, never a miscommunication. You can explain that!" -Babbage O'Reilly
23:51:57 <pikhq_> So, Intel's putting these into production: https://secure.wikimedia.org/wikipedia/en/wiki/Multigate_device
23:53:09 <quintopia> oerjan: babbage o'reilly would never make the egregious mistake of claiming an obvious fact is unexplainable. hence, i had to modify the meme somewhat
23:54:00 <quintopia> i considered making it "you can easily explain that" but that was too much
23:54:02 <oerjan> ic. so he is more babbage than o'reilly...
23:55:52 <pikhq_> http://newsroom.intel.com/community/intel_newsroom/blog/2011/05/04/intel-reinvents-transistors-using-new-3-d-structure
00:04:45 -!- augur has quit (Remote host closed the connection).
00:09:02 -!- pikhq_ has quit (Read error: Connection reset by peer).
00:09:15 -!- pikhq has joined.
00:09:24 <Lymia> Is line noise valid slashes code?
00:10:19 <zzo38> How many things can you do with a simple electronic circuit connecting to a USB port of a computer?
00:10:25 <oerjan> whether the perl interpreter has any bugs with it, is a different matter
00:10:31 <zzo38> (That includes some lights and switches)
00:10:35 <Lymia> !slashes kswgvjhy/jut/ j/x/uih /yr/ea//z/lsqir/m/b qv/uys/bf/e p/ye/tevr/b/bfthdtx/qsm////i
00:10:39 <Lymia> !slashes kswgvjhy/jut/ j/x/uih /yr/ea//z/lsqir/m/b qv/uys/bf/e p/ye/tevr/b/bfthdtx/qsm////i
00:10:40 <EgoBot> kswgvjhyxealsqiruysyee pthdtx
00:11:17 <Lymia> !slashes n ajuqkyqwe/o w// b/h//kbwrpe/pp dm d/ /wt/x//hfe/ao r/koj //// a///dwrv/
00:11:18 <EgoBot> n ajuqkyqwe bkbwrpewtfe adwrv
00:11:22 <Lymia> !slashes wdks ulbqth/x/bw eg/o d/f ssjm//s/// /z/u// ///s/c/st k ine/h//scpzm/k/rb/jg
00:11:23 <EgoBot> wdks ulbqtho ds ctkineccpumjg
00:11:57 <oerjan> Lymia: actually your second example _did_ hit a bug in the perl, because it has a //.../ substitution
00:12:08 <oerjan> which i've never fixed
00:12:22 <oerjan> it should have inflooped after the ea
00:12:48 <oerjan> ...that doesn't really tell you much...
00:13:36 <oerjan> i guess that doesn't really either
00:13:56 <coppro> can't //.../ just be illegal?
00:14:03 -!- augur has joined.
00:14:15 <oerjan> the thing is perl reuses the previous string if you use an empty target, for some value of previous
00:14:20 <Lymia> !slashes /edde/bcdfeg/ /bgb/a/ /ee/eeafg/ /cgdd/fdcg/ /adaab/defefb/
00:14:24 <Lymia> !slashes /dece/ae/ /fb/eca/ /gedded/cfebb/ /f/b/ /bfe/eg/ /cc/fb/ /bacfd/be/ /bcbf/fe/ /ba/eceaca/ /acaecd/ge/ /bafcfd/eeed/ /ge/gc/ /feeee/fa/ /b/bcafcc/ /caddcd/dba/ /c/a/ /gdec/cdba/ /cde/d/ /eggd/fbdef/ /dacdfe/gcegf/
00:14:48 <coppro> what a wonderful no-op program
00:14:52 <oerjan> coppro: elliott keeps suggesting it should do input since he thinks the GG...GG of iftlabtijtslwi is ugly
00:15:05 <elliott> I dunno, I think // is ugly too
00:15:11 <elliott> it's just the use of a letter and two characters that irks me
00:15:22 <elliott> something like |x| would be nicest IMO
00:15:45 <Lymia> !slashes cebefegfecfaa /ac/dgea/ /aag/fde/ /ac/dbaeb/ /aedafc/ba/ /dd/fgf/ /abee/ggb/ /feada/fd/ /effacf/gaa/ /fcbd/dda/ /ead/ceddc/
00:15:49 <Lymia> !slashes ddgeaegbbc /accab/ded/ /de/cce/ /ac/gd/ /ae/bec/ /fgfdec/dbg/
00:16:01 <oerjan> elliott: the nice thing about GG is you are unlikely to do it accidentally, so itflabtijtslwi is mostly backwards compatible
00:16:13 <coppro> -cc1 -std=c++0x -include-pch /usr/local/google/home/scshunt/llvm-build/tools/clang/test/PCH/Output/cxx0x-delegating-ctors.cpp.tmp -fsyntax-only -verify /usr/local/google/home/scshunt/llvm/tools/clang/test/PCH/cxx0x-delegating-ctors.cpp
00:16:21 <elliott> oerjan: fuck that, /// is about elegance not "backwards compatibility" :)
00:16:23 <Lymia> !slashes cbafcfgcb /dag/a/ /e/c/ /aec/df/ /a/cb/ /b/efb/ /dgd/ccca/ /ded/e/ /def/cab/ /ee/ba/
00:16:24 <coppro> was not supposed to paste that
00:16:42 <Lymia> !slashes fdgcgfffcc /bg/bdf/ /b/a/ /aa/d/ /b/gecbe/ /gd/dgd/ /dag/eedea/ /d/g/ /b/fgeg/
00:16:52 <Lymia> It's like writing random Brainfuck programs to see what they do!
00:17:02 <elliott> coppro: the paste police will come and arrest you now
00:17:13 <elliott> Lymia: you really want shit after the last /...
00:17:30 -!- Aesculapius has joined.
00:17:36 <Lymia> !slashes /dg/ea/ /fg/e/ /ebb/c/ /bf/ece/ /bad/gcbgc/ /ag/e/ /ea/c/ /bfa/g/ /ca/f/ /bg/ffa/ /aa/gaaae/ /cc/ef/ /cf/eac/ /cgc/adcec/ eddad
00:17:47 <Lymia> !slashes /e/dfed/ /ccd/f/ /dba/eggee/ /b/faa/ /a/gfda/ /dbf/gdbf/ /f/g/ /fg/gb/ /e/ad/ /c/ab/ /def/fb/ /a/d/ /cc/df/ ecfag
00:18:03 <Lymia> !slashes /gh/ghh/ /hhg/gghgu/ /h/uuuh/ /hh/uhghg/ /uuu/ghug/ /u/uuugu/ /h/ggugh/ /uhg/hgg/ /gh/uhhhh/ /u/uuhgg/ /hu/h/ huguuhguhgu
00:18:16 <quintopia> does anyone here understand brodal heaps?
00:19:32 <oerjan> Lymia: those did infloop
00:19:42 <Aesculapius> To those who were in the channel last night, I wound up contacting Lode Vandevenne through the email on his site and he uploaded the braincopter stuff that was gone for quite some time.
00:19:47 -!- poiuy_qwert has joined.
00:19:55 <Lymia> !slashes /ghu/huu/ /hgh/guh/ /guu/uguhg/ /ghh/hhhg/ /uu/uhu/ /huu/g/ /ug/uhhu/ huuughguughuh
00:20:04 <Aesculapius> http://lodev.org/esolangs/braincopter/braincopter.zip http://lodev.org/esolangs/braincopter/lk.png
00:20:39 <elliott> "Gregor Samsa, "waking up from anxious dreams", is transformed not into a cockroach but into an "adorable kitten" in The Meowmorphosis, the latest attempt to "remix" classic literature from US publisher Quirk Books."
00:20:50 <quintopia> Aesculapius: is lode the gammaplex dude? i don't remember
00:21:08 <oerjan> he is, but gammaplex never disappeared
00:22:51 <Aesculapius> Yep just braincopter and brainloller. I inquired about brainloller as well but that is what he sent.
00:24:23 <elliott> hes hiding the lolling secrets
00:24:44 <Aesculapius> Nah. I emphasised copter and said y'all said the other was missing too
00:24:59 <Aesculapius> he either didn't have it or just looked for what I emphasized
00:25:15 <oerjan> ...i did mention i didn't actually check carefully what else was missing, didn't i
00:25:22 -!- augur has quit (Remote host closed the connection).
00:25:45 <Aesculapius> I did a quick check and it looked like everything except those two was mirrored
00:26:38 <Aesculapius> But yeah, he was really cool about it. I'm quite appreciative.
00:27:44 <oerjan> elliott: i guess that's somewhere between disney making the ringer of notredame and making "holocaust, the musical"
00:28:00 <elliott> ...what on earth are you replying to
00:28:14 <elliott> all i know is someone has to make holocaust, the musical now
00:28:49 <oerjan> someone may already have, although probably not disney
00:30:33 <oerjan> google certainly seems to think someone did
00:30:53 <zzo38> How many formats are there for printer fonts?
00:32:41 <zzo38> Eventually the utility programs should be added in the "util" packages for TeXnicard, that can convert many of these formats into TFM/GF formats. Later on I might also add XFM (a format much like TFM) in case of more advanced features needed.
00:36:22 <zzo38> (I don't know if the best way would be to make a METAFONT format file that allows it to directly read the output of t1disasm)
00:42:48 <elliott> my mouse is pinned to the left side of my screen
00:45:13 <oerjan> elliott: happens to me sometimes, i just restart (or maybe, i don't quite recall if it works, temporarily hibernate)
00:45:44 <elliott> oerjan: yeah, I'm just using the keyboard until its hopeless
00:45:51 <elliott> this is probably an Xorg problem though because... because Xorg is terrible
00:46:06 <elliott> maybe the driver thinks its getting a continuous stream of left movements or whatever
00:46:11 <oerjan> i think i usually restart because it happens when the computer hasn't been in a while
00:46:57 <elliott> i never restart usually, just restart X
00:47:08 <elliott> linux support is utterly crap on this thing
00:48:06 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
00:49:46 -!- poiuy_qwert has joined.
00:50:20 <elliott> this channel. i love this channel.
00:53:59 <oerjan> elliott had won the vistory over himself. he loved #esoteric.
00:54:17 <elliott> isn't that book a bit too new for you to be reading grampa
00:54:29 <elliott> <oerjan> I HAVEN'T READ IT I JUST GOT THE MEMES OFF THIS INTER NETS
00:54:34 <oerjan> Muphry's law also appears to apply to too clever puns.
00:54:43 <elliott> vistory is a good word, we should make it a word.
00:54:47 <elliott> maybe that's my next esolang after Var.
00:54:48 <oerjan> actually i did read it once, albeit in norwegian.
00:55:10 <elliott> meanwhile in Swedish bookstores
00:55:20 <elliott> Bjärne bork bork bork victory bork. He bork Bjärne.
00:55:26 <elliott> (Bjärne is the only name in Swedish)
00:55:51 <oerjan> today's short reading: Swedish War Heroes
00:56:55 <oerjan> it is funny because bjärne isn't really a swedish name, but sounds like one
00:57:18 <elliott> sort of like Bjorn isn't a Norwegian name? :D
00:57:50 <oerjan> ok to be pedantic, it _is_ a swedish name, but not a first one
00:58:21 <oerjan> ok to be pedantic i may be completely wrong
00:58:39 <oerjan> (bjorn is not norwegian. or maybe i should check that.)
00:59:39 <oerjan> never mind the link to bjärne first name was fake, it should be an a
01:02:09 <oerjan> http://sv.wikipedia.org/wiki/Frithiof_Bj%C3%A4rne although he wasn't born with that name so it is quite possible he made it up
01:02:52 <oerjan> but there other people with the same surname, afaict
01:04:54 -!- poiuy_qwert has quit (Ping timeout: 240 seconds).
01:05:09 <oerjan> ruling out bjorn may be too hard, it's too frequently spelled that way for convenience and by americans
01:07:15 -!- oerjan has quit (Quit: In other news I seem to require a restart for comfort).
01:08:04 <quintopia> i'm going to spell it þjôŕñ for convenience
01:10:56 -!- oerjan has joined.
01:16:50 <oerjan> <quintopia> i'm going to spell it þjôŕñ for convenience
01:17:24 <oerjan> þ is not a very similarly pronounced letter
01:17:34 <oerjan> unless you have the mother of all lisps
01:17:58 <quintopia> this is not important to the joke however
01:18:10 <oerjan> and a cleft palate, i think
01:18:42 <elliott> whos that frithiof guy i cant really click links
01:18:49 <quintopia> in fact, i think using the thorn instead of the obvious "ḃ" enhances the joke
01:19:01 <oerjan> elliott: some swedish actor
01:19:16 <oerjan> just the most famous person name bjärne afaict
01:29:41 -!- poiuy_qwert has joined.
01:35:36 -!- Aesculapius has quit (Quit: KVIrc 4.0.4 Insomnia http://www.kvirc.net/).
01:42:50 -!- EgoBot has quit (Ping timeout: 246 seconds).
01:44:17 -!- elliott has quit (Remote host closed the connection).
01:44:19 -!- Vorpal has quit (Ping timeout: 248 seconds).
01:44:20 -!- EgoBot has joined.
01:44:48 -!- Vorpal has joined.
01:45:30 -!- poiuy_qwert has quit (Read error: Operation timed out).
01:48:35 -!- poiuy_qwert has joined.
01:51:29 * Sgeo_ wants to decide between the Nook Color, Bebook Neo, and Sony PRS-650
02:05:17 <zzo38> Where are programs reading other font files to make bitmap font for resolution and so on, maybe I can change it to output TFM/GF format if it doesn't do so already.
02:05:59 -!- poiuy_qwert has quit (Read error: Operation timed out).
02:16:54 -!- poiuy_qwert has joined.
02:35:06 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
02:35:53 -!- elliott has joined.
02:36:02 <elliott> apparently strip nomic is an actual game that has been played
02:36:15 <elliott> this is more hilarious than it has the right to be
02:36:56 <elliott> all I know is "strip nomic"
02:37:16 <pikhq> I was saying "define 'strip'" because this would, presumably, be defined in the nomic.
02:37:23 <pikhq> And hence "strip" is up for change.
02:37:27 <elliott> hahaha, scamming your way out of stripping
02:37:40 <elliott> im pretty sure there's no way that can't be the best game possible
02:37:52 <pikhq> Also make it a drinking game.
02:38:20 <elliott> im pretty sure the drinking has already happened by the time you get to inventing strip nomic
02:39:44 <oerjan> nomic nerds; now nearly naked
02:40:54 -!- poiuy_qwert has joined.
02:43:21 -!- augur has joined.
02:44:54 -!- poiuy_qwert has quit (Ping timeout: 240 seconds).
02:50:37 -!- poiuy_qwert has joined.
03:05:53 -!- MDude has changed nick to MSleep.
03:14:36 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
03:17:48 -!- poiuy_qwert has joined.
03:27:39 -!- augur has quit (Remote host closed the connection).
03:27:41 <Sgeo_> "Self-compiled compiler has disconnected from bootstrap compiler in dev build cycle; will henceforth be referred to as "the" rust compiler."
03:32:30 -!- TeruFSX has joined.
03:33:43 -!- poiuy_qwert has quit (Ping timeout: 276 seconds).
03:38:30 -!- augur has joined.
03:50:03 <zzo38> What program is that?
03:51:28 <Sgeo_> zzo38, "zeerust compiler" was a joke. I think. Mozilla Rust is a new programming language
03:52:29 -!- TeruFSX has quit (Ping timeout: 240 seconds).
04:00:10 <zzo38> Is it rusted and doesn't work anymore?
04:00:17 <pikhq> It worries me somewhat that my computer seems to have suddenly ceased to have cooling issues with this new power supply.
04:00:33 <oerjan> bah if it were new it would be Mozilla Iron
04:00:39 <zzo38> pikhq: I suppose that is because it is rusted and doesn't work anymore.
04:01:17 <pikhq> I'm going to assume that that means that my previous one was *shitty*, and the source of almost all my system's heat.
04:04:23 -!- TeruFSX has joined.
04:09:36 -!- zzo38 has quit (Quit: How I wish I could enumerate pi easily, since all these bullshit mnemonics prevent recalling any of pi's sequence more simply.).
04:12:41 <pikhq> My system is literally running at the same temperature it used to idle at... With full CPU usage.
04:12:55 <pikhq> I have literally only changed the power supply.
04:14:39 <elliott> * zzo38 has quit (Quit: How I wish I could enumerate pi easily, since all these bullshit mnemonics prevent recalling any of pi's sequence more simply.)
04:22:59 -!- augur has quit (Remote host closed the connection).
04:23:55 -!- pingveno has quit (Ping timeout: 240 seconds).
04:26:06 -!- pingveno has joined.
04:45:44 -!- poiuy_qwert has joined.
05:02:11 -!- poiuy_qwert has quit (Ping timeout: 248 seconds).
05:06:57 -!- TeruFSX has quit (Ping timeout: 260 seconds).
05:11:57 -!- poiuy_qwert has joined.
05:17:38 -!- poiuy_qwert has quit (Ping timeout: 240 seconds).
05:22:08 -!- augur has joined.
05:26:09 -!- augur has quit (Remote host closed the connection).
05:47:08 -!- pikhq has quit (Ping timeout: 240 seconds).
05:47:13 -!- pikhq_ has joined.
06:25:09 -!- augur has joined.
06:38:25 -!- Cheery has joined.
06:42:14 -!- pikhq_ has quit (Ping timeout: 240 seconds).
06:42:32 -!- pikhq has joined.
07:20:10 -!- oerjan has quit (Quit: Good night).
07:47:07 -!- BeholdMyGlory has joined.
07:49:11 -!- elliott has changed nick to Phantom_oo.
07:49:14 <lambdabot> Phantom_oo: You have 1 new message. '/msg lambdabot @messages' to read it.
07:49:19 -!- Phantom_oo has changed nick to elliott.
08:06:41 -!- monqy has quit (Quit: hello).
08:07:21 -!- Lymia has quit (Read error: Operation timed out).
08:10:50 -!- siracusa has quit (Ping timeout: 260 seconds).
08:11:45 -!- siracusa has joined.
08:12:19 <elliott> Monad comprehensions are finally in GHC (self.haskell)
08:23:31 -!- elliott has quit (Remote host closed the connection).
08:26:06 -!- elliott has joined.
08:26:12 <elliott> Wow, some of Shiro's code is quite ugly.
08:34:45 <elliott> this function. just look at it.
09:02:12 -!- pikhq_ has joined.
09:02:37 -!- pikhq has quit (Ping timeout: 276 seconds).
09:28:01 -!- pikhq has joined.
09:28:08 -!- pikhq_ has quit (Ping timeout: 240 seconds).
10:32:16 -!- crystal-cola has joined.
10:47:16 -!- FireFly has joined.
10:55:12 -!- Deewiant has quit (Ping timeout: 260 seconds).
10:55:26 -!- Deewiant has joined.
11:35:43 <mtve> http://frox25.no-ip.org/~mtve/wiki/MemFractal.html
11:38:06 <mtve> other examples needed badly
11:52:42 <cheater_> has anyone of you been to bletchley park
11:53:03 <cheater_> i guess that's mostly towards the people living in the land of Eng
12:02:57 <fizzie> Ooh, synchronicity; we've been planning to visit that place this June.
12:03:35 <elliott> get out of our country normans
12:05:08 <crystal-cola> I thought they were gonna throw out alan turings stuff
12:05:19 <elliott> they killed alan turing with alien rays
12:05:31 <crystal-cola> I mean the gov. "apologised" about it so they don't need to fund the maintainance of the musium
12:05:54 <crystal-cola> ahThe National Heritage Memorial Fund's £200,000 donation filled the gap.
12:06:03 <elliott> the gap in their alien mind projectors
12:06:20 <elliott> im being 9 percent sincere
12:10:51 -!- MigoMipo has joined.
12:15:24 <Slereah> That you can prove that the system cannot generate all possible theorems within the system
12:39:21 <crystal-cola> 13:36 < Slereah> Gotta study for my makeup exam of topology and probabilities :c
12:41:11 <Slereah> Isn't that the correct english word?
12:41:17 <Slereah> It is rattrapage in French
12:54:02 <cheater_> fizzie: nice. can you take some photos?
12:54:12 <cheater_> fizzie: i would love to come along ^^
12:54:45 <cheater_> fizzie: have you read cryptonomicon? it takes part at bletchley park
12:56:51 <fizzie> Yes, though it was quite a while ago.
12:58:55 <fizzie> I seem to recall I didn't like it quite as much as some other Neal Stephenson's books, but that's probably just me.
13:02:52 <cheater_> i can't say i liked the "current time" parts
13:02:54 -!- augur has quit (Remote host closed the connection).
13:02:57 <cheater_> (i hadn't finished the book though)
13:03:02 <cheater_> i really liked the waterhouse parts
13:03:15 <cheater_> the ones with the marine were mediocre but not bad
13:04:05 -!- poiuy_qwert has joined.
13:19:27 -!- MigoMipo has quit (Read error: Connection reset by peer).
13:26:13 -!- azaq23 has joined.
13:26:47 <variable> elliott: I'm curious what your thoughts are on the AV system being proposed. I don't know much about UK politics ;-)
13:27:22 <elliott> AV is better than first-past-the-post, like every voting system apart from the Random Elephant Stomping method
13:27:46 <elliott> in a perfect universe we'd have Condorcet or even stochastic or whatever, but AV is much better than what we have
13:27:53 <elliott> there's exactly zero chance it will pass, though
13:28:10 <elliott> the FUD cloud is so thick that it's hovering outside my window as we speak
13:29:45 <elliott> crystal-cola: you're joking right?
13:29:56 <elliott> variable: if by IVR you mean IRV then yes
13:30:00 <elliott> crystal-cola: trololololololol :)
13:30:26 <elliott> it's not the best method out there, but obviously it's far superior to FPTP
13:31:17 <variable> why was IRV chosen to be the one to spearhead the voting change?
13:31:37 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
13:31:58 <elliott> if FUDders think AV is too complicated, imagine what they'd do to Condorcet
13:33:01 <variable> depends on on the resolution method used
13:33:17 <elliott> it really doesn't, you have no idea the kind of shit being said here :)
13:33:21 <elliott> there are literally leaflets going
13:33:29 <elliott> FPTP: All the votes are counted up and the person with the most votes wins
13:33:38 <elliott> AV: [RIDICULOUS TEN PAGE "EXPLANATION" THAT MAKES NO SENSE]
13:33:42 <elliott> THEREFORE AV IS TOO COMPLICATED
13:34:07 <variable> curios - who are the people against the FPTP system
13:34:22 <elliott> you mean the ones supporting AV?
13:34:36 <variable> and who are the ones supporting it
13:34:50 <variable> I mean -> which are the main groups on either side ;-)
13:34:56 <elliott> the Lib Dems, who everyone hate, either because they're left-wing, or because the coalition has been ridiculously ineffective (they've teamed up with the right-wing Conservatives and have henceforth been the Conservatives' bitch)
13:35:03 <elliott> the people against AV (for FPTP) are everyone else
13:35:33 <elliott> and since it's being framed as it being a Lib Dem "demand" that the government is being forced to hold a referendum on, the negativity is incredible
13:36:15 <crystal-cola> http://gowers.wordpress.com/2011/04/20/is-av-better-than-fptp/
13:36:56 <crystal-cola> http://www.andrew-mitchell-mp.co.uk/images/winner_under_av.jpg
13:37:21 <elliott> the best one is the boxing match
13:37:25 <elliott> BOXING MATCHES HAVE TWO PARTICIPANTS
13:37:32 <elliott> ALL VOTING SYSTEMS ARE IDENTICAL IF THERE ARE ONLY TWO OPTIONS
13:38:18 <variable> crystal-cola: that isn't a vote :-\
13:38:44 <elliott> variable: Don't bring your logic into our national shit-flinging fiasco plz
13:40:39 <crystal-cola> http://2.bp.blogspot.com/-VipbwQnEqwk/TWS9XAo9OOI/AAAAAAAAK8I/DoL0NdDAAWk/s1600/No2AV-baby-poster.jpg
13:41:27 <crystal-cola> http://blogs.telegraph.co.uk/news/files/2011/05/no-to-av.jpeg
13:42:36 <elliott> oh god i love that figure thing
13:42:50 <elliott> they list all these costs right
13:42:53 <elliott> that adopting av would have
13:43:00 <elliott> they ADD THE COST OF THE REFERENDUM
13:43:02 <elliott> to the total that av would cost
13:43:08 <elliott> despite the fact that that cost is already paid
13:43:22 <elliott> but it gets better, the sum they give is actually many millions more than the sum of the components.
13:43:28 -!- augur has joined.
13:43:41 <elliott> i do like the idea that if av isn't adopted, they'll make like five million schools though
13:43:47 <elliott> and hire ten billion doctors
13:43:54 <elliott> im sure thats what will happen
13:45:34 <crystal-cola> I think "they" just don't want ANYTHING to change, because if the peopl start thinking that they can improve goverment... that coudl cause problems for control freaks that happen to be in power
13:52:23 <crystal-cola> I came up with a new propaganda: "Under AV, AV would win"
14:24:09 -!- MigoMipo has joined.
14:34:23 <Gregor> I forget, which alternate voting system is AV?
14:34:32 <Gregor> Since "AV" means nothing really :P
14:35:11 <crystal-cola> well it means you put preferences and the if there's not a strong majority it takes second favorites etc. into account
14:35:28 <elliott> "You know that bit on the Last Night of the Proms where they play "Jerusalem" and everyone in England sings along? I want you to imagine right now that they're all singing "No" at you. Not in a mean way. In a loving, patriotic way. But also sternly. With bows of burning gold and chariots of fire."
14:35:56 <Sgeo_> They're voting to eliminate viruses.
14:36:02 <elliott> You're welcome since everyone else's answers are worthless
14:36:23 <Gregor> Thank you, elliott, for giving me the data I actually wanted :P
14:37:06 <elliott> crystal-cola: Gregor was asking what voting system AV actually is :P
14:37:09 <elliott> The answer is instant-runoff.
14:37:29 * Gregor bashes crystal-cola's head into a wall.
14:37:30 <elliott> Nobody called it AV before this referendum.
14:37:36 <Gregor> AV is a retarded name.
14:37:40 <Gregor> AV means "alternative voting"
14:37:46 <Gregor> Every voting system is an alternative to another voting system.
14:37:46 <elliott> Gregor: It means alternative /vote/.
14:37:53 <elliott> Gregor: i.e. you have alternate VOTES for candidates.
14:37:57 -!- poiuy_qwert has joined.
14:38:03 <Sgeo_> Jokes are valuable too!
14:38:07 <elliott> It makes slightly more sense than "alternative voting [system]" which I too originally assumed :P
14:38:22 <Gregor> Right, but there are also dozens of voting systems that fit that description.
14:38:45 <elliott> Clearly we should name voting systems with a compact representation of their algorithms :P
14:41:32 <Gregor> Then make an initialism of that.
14:41:33 -!- BeholdMyGlory has quit (Remote host closed the connection).
14:41:58 -!- BeholdMyGlory has joined.
14:42:08 <pikhq> I was unaware that voting systems had any notable cost (in general).
14:42:43 -!- Sgeo_ has quit (Ping timeout: 260 seconds).
14:43:09 <Gregor> Of course they do. They have to print ballots, institute new counting systems, train the relevant people on how to tally properly, etc etc.
14:43:10 <elliott> crystal-cola: So what's this about being retarded
14:43:25 <pikhq> Gregor: I said "notable".
14:43:29 <elliott> Gregor: Hey, I was going to approach that point with wilful non-understanding.
14:43:45 <pikhq> Gregor: i.e. cost *over* what you're already paying just to run an election.
14:43:48 <fizzie> Gregor: We should name them based on some lisp code implementing the counting, and then taking the initial characters of the most important (sub)expressions. So do you prefer ((((((((( over (((((((((((((((?
14:43:52 <Gregor> pikhq: Well, how much does it cost to NOT kill a baby?
14:44:01 <Gregor> pikhq: It costs about the same to implement a new voting system.
14:44:16 <pikhq> Gregor: Fairly absurd amount, if by "NOT kill" you mean "spare no expense in saving". :P
14:44:30 <Gregor> No, I just mean "NOT kill"
14:44:35 <crystal-cola> You asked what something is and I explained it, that is not justification for being cunts
14:44:41 <Gregor> Basically, if you institute AV, then they throw babies in furnaces.
14:44:48 <pikhq> Oh, so straight-up inaction?
14:45:01 <fizzie> Gregor: All the therapy to treat those people who get depressed when they don't get to kill any babies, etc etc.
14:45:06 <pikhq> It costs the same amount to not institute AV!
14:45:08 <crystal-cola> you asked an ambiguous question and I didn't get what you meant, so go fuck yourself
14:45:18 <pikhq> THE ONLY OPTION IS TO REQUIRE EVERY VOTER TO PAY
14:45:26 <pikhq> Otherwise, they'll throw babies in furnaces!
14:45:27 <Gregor> lol @ crystal-cola's overreaction
14:45:33 <pikhq> And use it to run generators!
14:45:38 <Gregor> Followed by lol @ crystal-cola's overreaction to my lolling at his overreaction.
14:45:43 <pikhq> SOYLENT ELECTRICITY IS PEOPLE!
14:45:53 <elliott> <crystal-cola> You asked what something is and I explained it, that is not justification for being cunts
14:46:09 <fizzie> pikhq: Peoplectricity is renewable, though.
14:46:27 <elliott> Note how Sgeo who didn't even try to be helpful is inexplicably unoffended on account of not taking every off-hand joke personally.
14:46:31 <pikhq> fizzie: As renewable as our food.
14:46:37 <pikhq> fizzie: Which is "not very" ATM.
14:46:57 <fizzie> pikhq: But if you burn enough people, there's less to eat and/or use the electricity.
14:47:17 <fizzie> You just need to find the right balance there.
14:47:28 <pikhq> Nah, that'll just result in more fuckin'.
14:47:36 <crystal-cola> You fucking idiots can make fun of me all you want I don't give a shit because you're both on ignore now
14:48:15 <Gregor> I didn't realize crystal-cola was such an expert in extreme overreaction to near-zero offense.
14:50:44 <Gregor> elliott: I'm not much of an observer of people.
14:51:51 <elliott> Scrolling up I didn't even mention anyone at all, just their answers :P
14:53:06 <Gregor> Anyway, the point is that the vote is actually "institute AV (+ bonus baby furnaces)" vs "do not institute AV (and no baby furnaces)"
14:53:29 <elliott> I thought we were on ignore for being horrible people.
14:54:12 <elliott> Wow, you can bookmark Chrome's new tab page.
14:54:26 <Gregor> elliott: I've actually noticed that.
14:54:40 <elliott> I'm going to add it to my bookmarks so I always have a new tab handy when I need it
14:54:58 <elliott> I just pinned the new tab page
14:58:56 <crystal-cola> someone should bash your snotty fucking stuck up headin
14:59:08 <elliott> AGIUHGEIUGHEIUGHERIUGHUIERGHIERG
14:59:22 -!- elliott has left ("RAESRIUGAIUGHIUHGIERGOIUERHGIUOAEHGOIAEHGRIUOAEHGIOHGIUHRGIOEHG").
14:59:26 -!- MSleep has changed nick to MDude.
14:59:28 -!- elliott has joined.
15:00:12 <Gregor> Yeah, it really is much easier to not be a whiny little dipshit that takes every off-hand comment as an intensely-personal insult.
15:00:36 <elliott> I'm all for whiny dipshits
15:15:28 <Gregor> Go to google.co.uk -> go to image search -> search for "pip pip cheerio" -> wtfwtfwtf
15:19:06 <elliott> What exactly are you referring to
15:19:32 <Gregor> Apparently "pip pip cheerio" (in two of the top 10 or so image results) refers to gigantism of particular intimate body parts.
15:19:48 <Gregor> In a condition I can only assume is called pippipcheeriism
15:19:51 <elliott> They appear to originate from tumblr posts.
15:20:06 <elliott> A user named pip-pip-cheerio is mentioned on the pages in question.
15:20:20 <elliott> Now that everyone else has forgotten that Google Images can give you the source web page, I will rule supreme as master of all knowledge.
15:20:38 <Gregor> I'm at work, so did not go so far as to click through :P
15:20:51 <elliott> It's OK to have that stuff on your screen BUT IF THERE WERE WORDS TOO OH GOD
15:22:10 -!- pikhq has quit (Ping timeout: 252 seconds).
15:22:14 -!- pikhq has joined.
15:22:56 <elliott> i just hit my head with my knee
15:23:58 <cheater_> by trying repeatedly. practice makes perfect.
15:27:41 <Gregor> Alternatively, you could do it with little training or practice by removing the knee in question, thereby allowing it to move more freely and without obstacles.
15:33:15 -!- sebbu2 has joined.
15:33:16 -!- sebbu2 has quit (Changing host).
15:33:16 -!- sebbu2 has joined.
15:34:03 <Vorpal> <elliott> Now that everyone else has forgotten that Google Images can give you the source web page, I will rule supreme as master of all knowledge. <-- uh of course it can?
15:34:28 <elliott> Gregor: I believe some manner of physical pain should be dispensed to Vorpal for his inability to comprehend any kind of context at all.
15:35:02 <Vorpal> elliott, it is a lot more fun to not read context!
15:35:12 <Vorpal> elliott, it makes you irritated for a start.
15:35:18 <elliott> You misspelled "annoying and stupid". And I'm not irritated.
15:35:29 <elliott> Nor annoyed actually, things can be annoying without actually annoying.
15:35:45 <elliott> Or rather something annoying does not necessarily annoy enough to cause one to become annoyed.
15:35:46 <Vorpal> elliott, but you find it annoying
15:36:31 -!- sebbu has quit (Ping timeout: 260 seconds).
15:42:32 <elliott> Gregor: Oh, it seems like the AV name might be considerably older -- dating back to the nineteen-tens, even.
15:42:34 <elliott> Eventually, the Commons voted 181-166 not to introduce the Alternative Vote system, and by a larger majority against PR. Just before the vote was taken, the prime minister, Andrew Bonar Law, at the head of a minority Conservative administration, admonished MPs in language that still has an unfortunate resonance: "I don't believe the country cares twopence one way or the other about either proportional representation or the alternative vote." What
15:42:34 <elliott> the public expected, he said, was that the politicians should make up their minds.
15:42:36 <elliott> http://www.independent.co.uk/news/uk/politics/av/av-debate-the-voting-system-that-cameron-is-fighting-for-is-a-veritable-novelty-2270578.html
15:43:00 -!- pikhq_ has joined.
15:43:11 -!- pikhq has quit (Ping timeout: 264 seconds).
15:49:58 <Gregor> Annoying, anointing, ...
15:52:25 -!- elliott has quit (Remote host closed the connection).
16:34:45 -!- Phantom_Hoover has joined.
16:35:00 <Phantom_Hoover> Hmm, Homestuck has updated. Lemme guess, lambdabot has some messages for me.
16:35:01 <lambdabot> Phantom_Hoover: You have 3 new messages. '/msg lambdabot @messages' to read them.
17:14:49 <crystal-cola> Gregor: fuckyng kill youself you fucking shithead
17:15:25 -!- elliott has joined.
17:15:46 <Gregor> I love how it's a vicious cycle too.
17:16:00 <Gregor> The more over-the-top he gets, the more hilarious I find it, and the more over-the-top he gets.
17:16:09 <elliott> `run echo "Shut the fuck up and calm down. You've counter-insulted far more than the original insult many times over by now and this is completely childish. I will say no more. (And sure, this is childish too, but seriously, cut it out.)"
17:16:12 <HackEgo> Shut the fuck up and calm down. You've counter-insulted far more than the original insult many times over by now and this is completely childish. I will say no more. (And sure, this is childish too, but seriously, cut it out.)
17:16:22 <crystal-cola> Gregor: fuckyng kill youself you fucking shithead
17:16:23 <crystal-cola> Gregor: fuckyng kill youself you fucking shithead
17:16:23 <crystal-cola> Gregor: fuckyng kill youself you fucking shithead
17:16:26 <crystal-cola> Gregor: fuckyng kill youself you fucking shithead
17:16:32 <elliott> This is just like last time crystal-cola got banned
17:17:38 <elliott> 14:34:23: <Gregor> I forget, which alternate voting system is AV?
17:17:39 <elliott> 14:34:32: <Gregor> Since "AV" means nothing really :P
17:17:39 <elliott> 14:35:11: <crystal-cola> well it means you put preferences and the if there's not a strong majority it takes second favorites etc. into account
17:17:39 <elliott> 14:35:22: <crystal-cola> instead of just a cross for the one you want
17:17:42 <elliott> 14:35:50: <elliott> Gregor: IRV
17:17:43 <elliott> 14:36:02: <elliott> You're welcome since everyone else's answers are worthless
17:17:45 <elliott> 14:36:04: <elliott> I'm a wonderful person
17:17:47 <elliott> 14:36:23: <Gregor> Thank you, elliott, for giving me the data I actually wanted :P
17:17:49 <elliott> Then crystal-cola went insane.
17:18:18 <crystal-cola> Gregor: You deserve to get your head bashed in
17:18:19 <crystal-cola> Gregor: You deserve to get your head bashed in
17:18:19 <crystal-cola> Gregor: You deserve to get your head bashed in
17:18:22 <crystal-cola> Gregor: You deserve to get your head bashed in
17:18:45 <elliott> fizzie: Request straitjacket.
17:18:54 <Gregor> Apparently he thinks that by flooding his lololoverreaction I'll suddenly care what his opinion is :P
17:19:40 <Phantom_Hoover> crystal-cola is... not known for his emotional stability or rational behaviour when upset.
17:20:18 <Gregor> I'm known for finding these situations hilarious and wonderful :P
17:20:28 <Gregor> And overusing the ":P" smiley :P :P :P
17:20:52 <elliott> Phantom_Hoover: well at least i can see the other messages this time
17:21:20 <crystal-cola> Gregor is a stuck up shit head who should fuck off
17:21:44 <elliott> crystal-cola: You're a drama-whoring overreacting many-times-more-asshole who can't see this message.
17:21:48 <Phantom_Hoover> I think we should see if crystal-cola can increase the insult density further/
17:21:51 <elliott> By fun I mean irritating and depressing.
17:21:57 <elliott> Phantom_Hoover: please, I don't want dead bodies littering the street.
17:22:30 <Gregor> elliott: Really? You find it anything but fun?
17:22:33 <Phantom_Hoover> So that his sentences go beyond full saturation and become some kind of quark-gluon plasma of swearwords and violence.
17:22:48 <elliott> Gregor: /msg, this is ridiculous
17:23:20 -!- Lymia has joined.
17:23:20 -!- Lymia has quit (Changing host).
17:23:20 -!- Lymia has joined.
17:30:07 <elliott> im not sure you understand what /ignore is for, its so you dont see the persons messages
17:30:19 -!- monqy has joined.
17:35:59 <Gregor> Ohyeah, it's Cinco de Mayo.
17:36:11 <Gregor> AKA "The day Americans think is Mexican Independence Day but isn't" day
17:36:33 * elliott adjusts his giveashitometer
17:36:55 <elliott> Now it can successfully measure the 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 shits I give.
17:37:31 <Gregor> That might actually be too little shit to be verifiably shit at all.
17:37:50 <coppro> there is utterly no reason to give a shit since this holiday makes no logical sense
17:38:21 <elliott> But I gotta say, I'm totally not feeling the vibes of this one.
17:38:40 <coppro> some holidays make sense
17:38:42 <Gregor> How about if I say that it's "get drunk for no real reason" day
17:38:51 <elliott> coppro: Define "makes sense".
17:39:05 <elliott> How is a sense-making holiday distinguish from a non-sense-making one
17:39:08 <coppro> elliott: Is a celebration of something worthy of celebration
17:39:18 <coppro> e.g. a national holiday makes sense
17:39:39 <elliott> So, uh, valid holidays are about consumerism, nationalism or getting drunk.
17:39:49 <Lymia> By that notion, the only holiday worth celebrating is....
17:40:08 <Gregor> Both getting drunk and nationalism are just facades for consumerism :P
17:40:08 <elliott> monqy: a day when you get drunk, consume a lot, and national (verb)
17:40:27 <elliott> Gregor: I dunno, nationalism is pretty strong in itself :P
17:40:29 <monqy> I'd say every day but I never do any of those
17:40:35 <monqy> it would be the worst lie
17:40:41 <Gregor> Dood, I'm gonna national 'til I've painted the whole world red white and blue! (But not French red white and blue)
17:40:48 <coppro> depending on the manner of celebration, birthdays may count
17:41:34 <elliott> coppro: how are national holidays celebrating something worthy of celebration
17:41:43 <elliott> any more than holidays about consumerism
17:41:59 <elliott> Nationalism is no more (probably less) logical than consumerism, after all, as stupid as the word "logical" is as a system to rank things
17:42:01 <monqy> holidays about getting drunk
17:42:41 <monqy> are drunk people hilarious or scary I can't make up my mind
17:42:53 <Lymia> Depends on who they are
17:43:20 <Gregor> `addquote <elliott> Nationalism is no more (probably less) logical than consumerism, after all, as stupid as the word "logical" is as a system to rank things
17:43:22 <HackEgo> 396) <elliott> Nationalism is no more (probably less) logical than consumerism, after all, as stupid as the word "logical" is as a system to rank things
17:43:47 <elliott> soft light-colored non-durable wood of the poplar
17:43:48 <elliott> any of numerous trees of north temperate regions having light soft wood and flowers borne in catkins
17:43:48 <elliott> wordnetweb.princeton.edu/perl/webwn
17:43:49 <coppro> quiz: what is the worst holiday according to cabbies?
17:43:58 <elliott> coppro: Are you using write-only IRC?
17:44:01 <coppro> elliott: your bipoplar
17:44:13 <elliott> Orrrrr you're just ignoring disagreement
17:44:28 <Gregor> Write-only IRC: best idea
17:44:43 <coppro> Gregor: we have that. It's called Twitter
17:44:44 <elliott> Gregor: crystal-cola is pioneering it by single-handedly ignoring everyone on IRC one-by-one
17:45:03 <Gregor> `addquote <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:45:04 <HackEgo> 397) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:45:10 <Gregor> Enough `addquotes for me for the day :P
17:45:22 <elliott> `addquote <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:45:24 <HackEgo> 397) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:45:30 * elliott fumes and guards his golden eggs
17:45:38 <Gregor> `addquote <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:45:39 <HackEgo> 398) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:45:55 <elliott> `addquote <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:45:56 <HackEgo> 400) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:46:05 <elliott> `run rm bin/{delquote,addquote}
17:46:15 <HackEgo> 397) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:46:22 <HackEgo> 397) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:46:34 <Gregor> HackEgo: Best system ever?
17:46:50 <monqy> ======= is a good quote
17:46:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.23664
17:47:08 <HackEgo> 398) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:47:08 <Gregor> I should, like, actually check if merges fail :P
17:47:20 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.717
17:47:38 <elliott> If anyone fucks that up I will literally hunt them down and murder them brutally.
17:47:41 <elliott> I am not in the least bit kidding.
17:47:43 <Gregor> Y'know you can just `url quotes, right? :P
17:47:45 <monqy> goodbye ======= ;_;
17:47:49 <elliott> Gregor: I don't trust that shit, bro.
17:49:22 -!- crystal-cola has quit (Read error: Operation timed out).
17:49:32 <Lymia> `run paste /bin/sh
17:49:34 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.9997
17:49:47 <Gregor> Getting /bin/sh: Totally useless?
17:50:38 <Lymia> `run paste /etc/shadow
17:50:39 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.15274
17:51:00 <Lymia> `run paste /etc/hosts
17:51:02 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.14250
17:51:16 -!- oerjan has joined.
17:51:30 <HackEgo> 396) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:51:31 <Gregor> Lymia: If you're going to try (and fail miserably) to hack it, do so in PM plox.
17:52:02 <elliott> <Phantom_Hoover> `delquote 396
17:52:15 <monqy> goodbye <elliott> Nationalism is no more (probably less) logical than consumerism, after all, as stupid as the word "logical" is as a system to rank things
17:52:19 <elliott> Lymia: STOP PINGING PEOPLE WITH A SINGLE LINE OF "NAME." IT'S SO SDOHDGHGDFGJKDFG
17:52:26 <elliott> Phantom_Hoover: Why did you delete it GREGOR ADDED THAT QUOTE
17:52:28 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
17:52:31 <Gregor> I have no idea how to respond to that anyway :P
17:52:44 <Lymia> `run wget www.google.com
17:52:49 <HackEgo> babies \ bin \ bluhbluh \ env \ foo \ index.html \ paste \ ps \ quine \ quotes \ test.c \ tmpdir.15537
17:53:03 <HackEgo> 396) <elliott> Nationalism is no more (probably less) logical than consumerism, after all, as stupid as the word "logical" is as a system to rank things
17:53:08 <elliott> Gregor: I fixe d your quote
17:53:23 <Gregor> monqy: For a while (all of an hour or so) I had it set up so that whenever somebody said "fuck", it presented them with a baby :P
17:53:32 <HackEgo> 1 \ 2 \ 3 \ 4 \ 5 \ 6 \ 7 \ 8 \ 9 \ 10 \ 11 \ 12 \ 13 \ 14 \ 15 \ 16 \ 17 \ 18 \ 19 \ 20 \ 21 \ 22 \ 23 \ 24 \ 25 \ 26 \ 27 \ 28 \ 29 \ 30 \ 31 \ 32 \ 33 \ 34 \ 35 \ 36 \ 37 \ 38 \ 39 \ 40 \ 41 \ 42 \ 43 \ 44 \ 45 \ 46 \ 47 \ 48 \ 49 \ 50 \ 51 \ 52 \ 53 \ 54 \ 55 \ 56 \ 57 \ 58 \ 59 \ 60 \ 61 \ 62 \ 63 \ 64 \ 65 \ 66 \ 67
17:53:36 <HackEgo> Congratulations! elliott's action has brought a beautiful new baby into the world. Isn't it adorable?
17:53:43 <elliott> It keeps forgetting my past babies,.
17:53:51 <Lymia> `run mkdir seq 1 1 10000000
17:53:58 <Lymia> `run mkdir `seq 1 1 10000000`
17:54:05 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.12279
17:54:11 <HackEgo> babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ test.c \ tmpdir.15965
17:54:23 <Lymia> Phantom_Hoover, not even mkdir spam will work?
17:54:45 <Gregor> Actually, touch spam probably would.
17:54:50 <elliott> What the heck would mkdir spam achieve? Even the stupidest of bots has a quota surely :P
17:54:53 <Phantom_Hoover> Dunno, but I do want to punch you in the face for that smiley.
17:55:09 <lifthrasiir> hmm, is there a maximum file size limit? (looks like 10M)
17:55:09 <Gregor> It has a quota, but it's not a small quota :P
17:55:21 <Lymia> Does freenode have a connection limit?
17:55:25 <Gregor> Lymia!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
17:55:38 <oerjan> <elliott> I WILL ENABLE <elliott> FUNNINESS <-- just replace one of the compared terms with "eating babies"
17:55:43 <Lymia> If so, could you have HackEgo connect over and over to freenode until it's connections are kicked off?
17:56:24 <Gregor> Lymia: ... you can't, from `run, request HackEgo to ... connect again ... somehow.
17:56:26 <lifthrasiir> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/a540b7f2622c/index.html :?
17:56:41 <Lymia> Download a script that connects to IRC.
17:56:45 <Lymia> (opps i did it again)
17:56:50 <Gregor> Networking is protected.
17:57:10 <Gregor> Google and various other sites are allowed through the HTTP proxy.
17:57:10 <Lymia> Does it block IRC connection attempts?
17:57:24 <Gregor> Networking is outright blocked except through the HTTP proxy.
17:57:53 <Gregor> `run unset http_proxy; curl http://www.google.com/
17:58:00 <Gregor> `run unset http_proxy; curl http://www.google.com/ 2>&1
17:58:01 <HackEgo> \ curl: (6) Couldn't resolve host 'www.google.com'
17:59:22 <HackEgo> bash \ bunzip2 \ bzcat \ bzcmp \ bzdiff \ bzegrep \ bzexe \ bzfgrep \ bzgrep \ bzip2 \ bzip2recover \ bzless \ bzmore \ cat \ chgrp \ chmod \ chown \ cp \ cpio \ date \ dd \ df \ dir \ dmesg \ dnsdomainname \ echo \ ed \ egrep \ false \ fgrep \ grep \ gunzip \ gzexe \ gzip \ hostname \ ip \ kill \ ln \ login \ ls \ lsmod
17:59:44 <Gregor> Hack attempts in PM plox kthx
18:00:33 <elliott> no hack attempts in public
18:00:39 <elliott> i want to see the fail :DDddD:D
18:00:51 <Gregor> Imagine there was a comma after the "no"
18:01:47 <lifthrasiir> elliott: you mean that if one can do hack it he/she can do it publicly? :p
18:02:08 <elliott> No no, if you can actually do it, do whenever. But since I very much doubt anyone can, I want to see people fail to in public :P
18:02:14 <elliott> Gotta keep the channel activity going somehow.
18:03:12 -!- newbie|2 has joined.
18:03:32 <lifthrasiir> and well, strictly i didn't try to hack the bot; i just poked it with a stick ;)
18:03:58 <elliott> we're all about stick-poking here
18:04:00 <lifthrasiir> (in the sence that i just wanted to see how it is implemented)
18:04:19 <elliott> lifthrasiir: FWIW it's plash
18:04:36 <elliott> so, chroot with only a libc that works over sockets and simulates the whole FS and everything through that
18:04:53 <elliott> (Gregor's bot not mine :P)
18:05:08 <monqy> I'd like to see zeptobot do that
18:06:09 <elliott> zeptobot can do everything you horrible person
18:06:36 <oerjan> <elliott> welcome back, old friend
18:06:46 <Gregor> I'm still dissatisfied since nobody's really made HackEgo do anything cool :(
18:06:48 <oerjan> hey you didn't know about haskell last it was there ;D
18:06:52 <Gregor> It's more a minor curiosity than an actual bot.
18:07:04 <Phantom_Hoover> http://www.reddit.com/r/todayilearned/comments/h4vrv/til_the_highest_temperature_ever_reached_on_earth/
18:07:19 <Phantom_Hoover> OK I badly want to hit the idiot who wrote that in Fahrenheit.
18:07:31 -!- elliott has set topic: RIP B Nomic | RIP B Nomic memorial topic 2011-2011 | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
18:07:48 <elliott> another great figure in the esoteric bullshit community dies
18:08:09 <elliott> Phantom_Hoover: honestly. you. what is with you.
18:08:15 <elliott> B Nomic is the successor to A Nomic.
18:08:21 <Gregor> Phantom_Hoover: ♥ Fahrenheit!
18:08:26 <Gregor> Phantom_Hoover: You just hate brine and horses!
18:08:28 <elliott> fahrenheit is the stupidest fucking scale
18:08:43 <Phantom_Hoover> I mean, it's not even like the rest of the imperial system.
18:09:16 <Gregor> ... in what way? The rest of the system isn't self-similar in any way :P
18:09:58 <oerjan> furlongs, fortnight, firkin, fahrenheit; i'd say it fits perfectly.
18:10:04 <Phantom_Hoover> Yes, but the imperial system evolved organically from fairly sensible roots which didn't work together well.
18:10:14 <elliott> furlongs, fortnight, firkin, fuckin
18:11:14 <elliott> offering prize for first pronunciation of "fprocreation" that blends the f and p into one consonants
18:11:41 <oerjan> elliott: hey no fair giving germans an automatic win
18:11:56 <elliott> and i mean the english f and p.
18:13:01 <Gregor> Farhenheit was defined sensibly based on flawed assumptions.
18:13:34 <Gregor> It was designed so you would virtually never need negative numbers (fail), and so that anybody with a ranch and some brine could figure out the temperature scale :P
18:13:58 <Gregor> But yeah, it was /designed/, it didn't just grow from necessity.
18:14:09 <oerjan> clearly most scientists had ranches at the time
18:14:48 <oerjan> nowadays it's only texan scientists
18:15:03 <Gregor> Or those scientists who study texology.
18:15:10 -!- newbie|2 has left ("Once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is").
18:15:40 <oerjan> ...wat to that quit message
18:16:26 <monqy> once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is
18:16:34 -!- elliott has set topic: RIP B Nomic | "Once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is" --Ernest Hemingway | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
18:16:59 <elliott> Future historians are gonna be SO fucked with their database of famous Hemingway quotes.
18:22:14 <Phantom_Hoover> <elliott> offering prize for first pronunciation of "fprocreation" that blends the f and p into one consonants
18:23:44 <oerjan> manipulation, from latin "manus", hand: pulling someones finger
18:24:19 <elliott> the best bf joust compiler
18:24:25 <elliott> maybe ill do that fixed point scoring thing
18:24:43 <oerjan> ...i thought you already did.
18:24:52 <elliott> yep but always time to start again
18:25:18 <oerjan> wait didn't that fixed point scoring thing ever get done?
18:25:20 <elliott> Gregor: The report stuff would still work if it was in another language, right? i.e. one where I don't have to deal with fucking LAPACK /directly/ :P
18:25:26 <elliott> oerjan: It got specified but never implemented.
18:26:06 <elliott> oerjan: see http://esoteric.voxelperfect.net/wiki/Talk:BF_Joust#Scoring
18:26:26 <oerjan> i know, i just thought someone had done it
18:26:28 <Gregor> elliott: Depends on the language.
18:27:02 <Gregor> http://codu.org/projects/trac/fythe/ <-- look, I've upgraded my trac pages
18:27:38 <elliott> Gregor: "Depends on the language" -- is this a "the package needs installing" thing or a "NO LANGUAGES I DON'T TOLERATE ENOUGH" thing? :P
18:28:09 <Gregor> It's a "no languages I hate" thing :P
18:28:36 <elliott> Gregor: How much would you say you hate Haskell :P
18:28:44 <elliott> It'd just be so convenient ;_;
18:28:57 <Gregor> I hate all languages, so it's a grain-of-salt kinda rule :P
18:29:02 <Gregor> elliott: A lot less than anything in the Lisp family.
18:29:20 <elliott> Gregor: What about ZEPTO============>
18:29:37 <Gregor> Phantom_Hoover: Syntax. I ♥ syntax.
18:30:03 <Gregor> I think I'll take this no-trac opportunity to unify all my project logins.
18:30:52 <Phantom_Hoover> http://www.reddit.com/r/math/comments/h4m4n/an_elementary_proof_of_fermats_last_theorem/
18:31:01 <Gregor> Phantom_Hoover: Oh dear :P
18:31:08 <Phantom_Hoover> /r/math: uncritically frontpaging obvious crap since 2011.
18:31:40 <elliott> Gregor: I'll unify YOUR project logins.
18:31:56 <elliott> Gregor: May I suggest never reinstalling Trac ever :P
18:31:57 -!- augur has quit (Remote host closed the connection).
18:32:08 <elliott> Even that Ruby thing Redmine is more tolerable :P
18:32:08 <Gregor> elliott: I'm definitely not going to reinstall Trac.
18:32:17 <elliott> Gregor: But the page said they were TEMPORARILY down.
18:32:32 <Gregor> elliott: They'll come back up ... as something other than Trac :P
18:32:45 <Gregor> Once I find something tolerable >_>
18:32:49 <elliott> Who needs bug trackers, wiki + repo viewer heyoo
18:33:00 <elliott> In fact, a wiki is a perfectly decent bug tracker if you have few, and non-annoying, people :P
18:33:03 <Gregor> Really all I used it for was login management :P
18:33:16 <elliott> (tbh I'd be more likely to add an item to a wiki page than to go through Bugzillaesque hell...)
18:33:27 <elliott> (God, Bugzilla. I refuse to use Bugzilla ever.)
18:33:30 <elliott> (I fucking hate Bugzilla.)
18:33:41 <monqy> is bugzilla any good
18:33:50 -!- impomatic has joined.
18:34:11 <elliott> Phantom_Hoover: you weren't kidding with comic sans :D
18:35:00 <Phantom_Hoover> [[In the proof of Fermat’s Last Theorem that we’ll give, will emerge spontaneously even an original
18:35:00 <Phantom_Hoover> procedure to find all the infinite Pythagorean triples, this makes us confident in the goodness of the
18:35:18 <oerjan> maybe they are upvoting for the humor value
18:35:28 <elliott> List of program (in Visual Basic 6) to produce the equation system (8).
18:35:39 -!- impomatic has left.
18:35:51 <oerjan> Phantom_Hoover: oh? maybe you saw it just as it was posted.
18:36:21 -!- augur has joined.
18:36:51 -!- augur has quit (Remote host closed the connection).
18:37:03 <elliott> x -- independently organized TED event"
18:37:06 <elliott> this video can do no wrong already
18:37:27 <elliott> wow how has TED not sued these guys yet
18:37:32 <oerjan> Phantom_Hoover: oh so it's just because r/math is slow
18:37:40 <elliott> http://www.youtube.com/watch?v=iRTPFXZMtOY
18:38:17 <coppro> elliott: it's an official TEDx
18:38:32 <monqy> these special effects are pretty rad. is this an ad?
18:38:42 <elliott> coppro: why do they have this crackpot then
18:39:30 <monqy> oh it wasn't an ad
18:39:31 <coppro> elliott: TEDx events are completely run indepedently, they just share the TED brand
18:39:35 <monqy> the music is still going why is it going
18:41:51 <elliott> two minutes in this is amazing
18:42:02 <oerjan> `addquote <elliott> AV is better than first-past-the-post, like every voting system apart from the Random Elephant Stomping method
18:42:04 <HackEgo> 398) <elliott> AV is better than first-past-the-post, like every voting system apart from the Random Elephant Stomping method
18:42:18 <Phantom_Hoover> 5 minutes, he's apparently discovered geometric progression.
18:42:22 <elliott> this guy is singlehandedly ruining singularitarianism
18:42:31 <elliott> NEITHER FLAT NOR ARBITRARY
18:43:06 <elliott> OH MY GOD THREE MINUTES IN ITS FREEMASON SYMBOL
18:43:14 <elliott> Conclusion: Sburb is freemasonry.
18:43:19 <oerjan> Phantom_Hoover: well it's true in a yin-yang sort of way
18:43:36 <elliott> oerjan: btw i support the random elephant stomping method
18:43:41 <elliott> A PHOTON COMING FROM A DISTANT STAR
18:43:46 <elliott> OUR BODY IS CALLED THIS MORTAL COIL
18:44:05 <elliott> IMPLODING EXPLODING MACHINE
18:44:12 <elliott> AN ANTENNA BUILD TO PERFECTLY TRANSMIT AND RECEIVE WAVEFORMS
18:44:53 <monqy> "i call it an inertia ether" -- albert einstein
18:44:56 <elliott> THE BINARY CODE IS DOUBLING
18:45:03 <elliott> DOUBLING IS MOTION AT AN ANGLE
18:45:04 <oerjan> this mortal coil has lotsa cuil
18:45:16 <Phantom_Hoover> Apparently a tornado is more powerful than an atom bomb.
18:45:21 <elliott> this is the most amazing video ive ever watched
18:45:39 <elliott> tachyons gravitons monopoles
18:45:50 <elliott> strung together fifteen random hypothetical particles
18:45:56 <elliott> and called them all the same thing
18:46:08 <Phantom_Hoover> It's a ball bearing going back and forth in a cup he's holding.
18:46:12 <monqy> even the audience laughed
18:46:17 <monqy> I love you, audience
18:46:23 <elliott> the only thing that comes from the hole is zero
18:46:23 <oerjan> Phantom_Hoover: "i'd have brought it here but it fell through my desktop"
18:46:32 <elliott> as it penetrates it leaves a grain
18:46:40 <elliott> randy powerll famous sexist
18:46:52 <oerjan> elliott: KNOW WHAT I MEAN SAY NO MORE
18:46:57 <elliott> negative backdraft counterspace which is the same as gravityhahahahh
18:47:27 <elliott> monqy: does the music ever stop
18:47:39 <elliott> its still going seven minutes in
18:47:49 <elliott> EXPANDING BECAUSE WEREO N THE SOTHUERHTN FHALHFFHAHHAHAAHAHAH
18:48:16 <elliott> hahahahahaoijssogjgjigohdgjfdkgp[khd
18:48:39 <elliott> space time implosion feild generator
18:48:41 <elliott> how long was that fucking name
18:48:43 <Phantom_Hoover> Yeah, I think the commentary basically doesn't help here.
18:48:56 <elliott> god no this is amazing i have to share this with the whole world
18:49:23 <elliott> why is this focusing on the ball cup thing
18:49:24 <Phantom_Hoover> "Ah yes, arithmetic modulo 9, I forgot to mention that. Before Rodin nobody thought it was possible."
18:49:33 <elliott> and he talks about curing diseases
18:49:35 <elliott> its pretty fucking disturbing
18:50:02 <elliott> unwillingness to sell it out
18:50:04 <elliott> idaioasodhasodoiasdhaiodasdh
18:50:26 <elliott> randy powell intro to vortex math part one
18:50:30 <elliott> and it goes on to an advanced series
18:50:48 <elliott> http://www.youtube.com/watch?v=7pvuTZ5u6Kg
18:51:44 <elliott> you might call it gravitons...you might call it radiant energy...
18:51:47 <elliott> ahahah e equals mc sauqared
18:51:57 <elliott> monqy: are you doing this bro this is so fuckin communal
18:52:04 <monqy> i am doing this bro
18:52:10 <elliott> we should get together and watch all this guys videos sometime
18:52:30 <monqy> yes i am makin this hapen
18:52:46 <oerjan> <elliott> ALL VOTING SYSTEMS ARE IDENTICAL IF THERE ARE ONLY TWO OPTIONS
18:52:50 <elliott> leaves a grain on anything
18:52:52 <oerjan> actually not stochastic ones
18:52:53 <elliott> it is undecaying and eternal
18:53:26 <Gregor> <oerjan> <elliott> ALL VOTING SYSTEMS ARE IDENTICAL IF THERE ARE ONLY TWO OPTIONS <-- random vote != majority vote :P
18:53:29 <oerjan> that might be an argument against them...
18:53:29 <monqy> mathematical decryption of the most great name of god
18:53:40 <elliott> oerjan: well stochastihastically they're equivalent aren't they
18:53:45 <oerjan> Gregor: thank you for rephrasing my point
18:53:47 <elliott> but two option things are irrelevant anyway
18:53:56 <Gregor> More fairly, in some systems abstentions are considered as "no"s
18:54:16 <Gregor> Phantom_Hoover: Music is pornography!
18:54:51 <Gregor> Phantom_Hoover: Trees are made of sand!
18:55:13 <oerjan> sand is made of the ground sould of the damned
18:55:22 <elliott> oerjan: dude you have to watch this omg
18:55:33 <monqy> you can model a higher dimensional energy
18:55:36 <Gregor> oerjan: But alas, the damned are numbers.
18:55:41 <oerjan> i don't watch videos much
18:55:42 <elliott> "this is because base 10 is inherent to nature."
18:55:49 <elliott> Phantom_Hoover: come on hes just a crackpot not an idiot
18:55:55 <elliott> Gregor: watch and learn bitch
18:56:31 <elliott> ohmy god im laughing so much
18:56:43 <Gregor> # aptitude remove trac
18:56:55 <elliott> reinstall it just to purge
18:57:07 <elliott> one is the loneliest number
18:57:09 <elliott> or we might think of one god
18:57:09 <monqy> this description of 1 is making me feal at peace
18:57:31 <elliott> QHOihzAHAHAHAHAHAHAHAHAHAHA|_+GAw\\
18:57:34 <monqy> thanks for doubling
18:57:53 <monqy> 8 dobuled is 16 and 6+1 is 7
18:58:16 <Gregor> Does anybody have a light project/login management system that isn't made of fail?
18:58:22 <elliott> Gregor: redmine seems...ok?
18:58:27 <elliott> Gregor: seriously though, I'd just use a wiki :P
18:58:50 <elliott> six plus four equals ten and one plus zero comes back to one
18:58:51 <Gregor> Killin' all my bacteria.
18:58:58 <monqy> oh daaaaaaang this math
18:59:32 <monqy> I want to see a proof of this
18:59:38 <Phantom_Hoover> "No matter what numbers I take I can add some more to get the ones I want"
18:59:55 <Phantom_Hoover> "There's no possible way to break this doubling sequence"
19:00:20 <monqy> goodbye part 1 hello part 2
19:00:40 <elliott> no no no keep going this is amazing
19:00:48 <elliott> we'll enjoy it together monqy
19:01:00 * Gregor is sad that he can't watch it :P
19:01:07 <elliott> Gregor: You're missing out on so much.
19:01:33 <Phantom_Hoover> Apparently differentiation occurs after 64 cells are formed.
19:01:49 <elliott> to c to c to c is doubling
19:02:21 <Phantom_Hoover> OK, I should really go now otherwise the computer will be snatched from my cold dead hands.
19:02:25 <elliott> sometimes its caleld a chain reaction
19:02:32 <elliott> another example of doubling
19:02:35 <elliott> the binary code in computers
19:02:57 <monqy> half of .5 is .25 and 2+5 is 7
19:03:06 <elliott> half of one is point five and thus five
19:03:38 <elliott> daaah i forget what the number is
19:04:11 <monqy> it is the spin continuum which the universe is on
19:04:22 <monqy> the universe is on a treadmill
19:04:24 <monqy> a bounded infinity
19:05:31 <elliott> what happens when i double thee.
19:05:57 <monqy> half of 3 is 1.5 which is 6
19:07:28 <elliott> the nine is the queen of the chess game
19:07:37 <elliott> what happens if you double nine
19:08:04 <elliott> omg nine is in a loop with itself
19:08:10 <monqy> it's polarizing the numbers
19:08:19 <Gregor> So basically this guy is in some weird obsession with summing all the digits of a number.
19:08:30 <Gregor> Because base-10 is perfection for some retard reason.
19:08:31 -!- cheater15 has joined.
19:08:49 <monqy> oh dang another board
19:08:53 <elliott> Gregor: Digital roots, man. Common in numerology and computer science.
19:09:15 <elliott> im sorry for the primtive board
19:09:18 <Gregor> elliott: So long as by "computer science" you mean "literally every field other than computer science and music" :P
19:10:38 <monqy> you should start at part 1. you should also start at the tedx talk.
19:10:42 <elliott> 1251 is the equation for the Most Great Name.
19:10:42 <elliott> theabhakingdom 4 months ago 2
19:10:43 <Gregor> http://www.youtube.com/watch?v=7pvuTZ5u6Kg
19:11:04 <Gregor> I haven't even clicked that link, I was just giving a URL since you guys weren't :P
19:11:08 <monqy> http://www.youtube.com/watch?v=iRTPFXZMtOY
19:11:10 <elliott> this one is buffering badly :(
19:11:32 <elliott> i see spirographs in the sidebar for advanced vortex math
19:11:37 <elliott> are you looking forward to that expert level monqy
19:11:47 <monqy> so looking forward to it
19:11:59 <elliott> what do you mean by mirrors
19:12:03 <elliott> they dont look like mirrsors
19:12:06 <monqy> you don't have 10 fingers you have .5
19:12:27 <monqy> when 1 is positive going up 8 is negative going down
19:12:45 <elliott> id listen to this shit like most people listen to podcasts
19:13:57 <monqy> I still want to know what 1251 means
19:14:03 <monqy> aside from being the equation for the most great name
19:14:23 <elliott> its how you loop the multiplications or something i guess
19:14:41 <monqy> oh god it's zooming in
19:15:19 <elliott> i could go to twetny but im back here
19:15:45 <elliott> Randy, Saturn has a hexagon on its surface, no one knows how it got there or why.
19:15:45 <elliott> CliveSinclairZX 5 months ago
19:15:45 <elliott> CliveSinclairZX 5 months ago
19:15:56 <elliott> in Pythagoras' time, the number nine was not permitted to be named out loud, it was considered so powerful and sacred.. : )
19:16:11 <elliott> [[it's sad that less than 1000 people have seen this.
19:16:11 <elliott> Justin9Noble 6 months ago]]
19:16:17 <Gregor> Nine was Yahweasel's former name.
19:16:19 <elliott> He's right! My friend and I just multiplied 9 by 30436 which = 273924
19:16:19 <elliott> 2+7+3+9+2+4 = 27 ... 2 + 7 = 9!!!
19:16:20 <elliott> krishnadefier 5 months ago 4
19:16:20 <monqy> I have to go now :(
19:16:32 <monqy> school is lame unlike vortex math
19:16:41 <elliott> need a buddy for vortex math
19:16:53 <elliott> "It is well known among working mathematicians that Earth has 4 corner simultaneous 4-day time cube. The conjecture that everything is a torus was disproved by Gauss in 1821 when he discovered the sphere."
19:17:23 <Gregor> With your oneist faggot god.
19:17:41 -!- zzo38 has joined.
19:17:54 <elliott> time to obsessively refresh mspaintadventures.com instead
19:19:12 <oerjan> <elliott> i just hit my head with my knee
19:19:19 <oerjan> i think i did that once
19:19:21 <elliott> i just did it again because you quoted that
19:19:25 <zzo38> White player failed to see the threat http://play.chessvariants.org/pbm/play.php?game=123456+Chess&log=nwolff-cvgameroom-2011-95-172
19:19:49 <oerjan> elliott: i may suggest getting a better sitting position
19:20:01 <elliott> oerjan: its a laptop its meant to be usable from any position duh
19:20:20 <oerjan> no, _not_ that position. unless you're watching karma sutra porn.
19:20:32 <cheater15> is elliott sitting on a chair with the laptop on the floor at his feet
19:20:37 <cheater15> because that would be really funny
19:20:50 <elliott> is there like a comprehensive film version of the kama sutra thatd be pretty quaint
19:21:08 <oerjan> elliott: my discover that muphry's law applies to clever quips seems to hold
19:21:22 <elliott> oh them oldies trying on the pornography
19:21:23 <oerjan> _or_ maybe i'm just shit at typing.
19:25:30 <zzo38> QUIT messages seem to mislogged
19:25:48 <zzo38> They work sometimes but not all the time?
19:26:39 <zzo38> Is Gregor currently available?
19:27:51 <oerjan> he had his head bashed in by crystal-cola
19:28:07 <elliott> oerjan: raising the channel temperature i see
19:28:16 <zzo38> Well, he does need to correct that problem.
19:28:16 <elliott> you'll end up on meaningless ignore next :D
19:28:37 <oerjan> elliott: i just got to that point in the logs.
19:29:45 <oerjan> well i'll just check for eir QUIT message in the logs - OH WAIT
19:29:47 <elliott> hm no PART or QUIT in http://codu.org/logs/_esoteric/2011-05-05-raw.txt
19:29:59 <elliott> i suspect the channel-splitter is broken
19:33:04 <oerjan> 10:45:07 --- quit: crystal-cola (Read error: Operation timed out)
19:33:36 <oerjan> two minutes before i joined
19:33:56 <zzo38> How many ranks should be needed in Profession (sailor) skill that a D&D character could be good enough to sometimes pull all the ropes at once if circumstances are correct?
19:34:12 <oerjan> elliott: it _is_ in the non-raw logs, you rascal
19:34:21 <oerjan> 17:49:22: -!- crystal-cola has quit (Read error: Operation timed out).
19:34:26 <zzo38> oerjan: The tunes is working it displays QUIT messages all the time. But in glogbot logs, the QUIT message is only sometimes.
19:34:38 <cheater15> zzo38, but really, even the best sailors can't do that. stop dreamin'
19:35:04 <elliott> clog mislocks other things to make up for i
19:35:07 <oerjan> zzo38: even after a while? i've noticed glogbot is sometimes slow to update
19:35:29 <zzo38> oerjan: Even after a while that is the case
19:35:48 <zzo38> cheater15: Should fifty ranks be sufficient?
19:37:43 <oerjan> Gregor: i suppose raw missing things that txt has is also disturbing
19:38:20 <zzo38> Is Gregor currently on here and available? It doesn't look any of his message on here right now.
19:38:28 <oerjan> he spokes just minutes ago
19:38:58 <zzo38> Then it means I am too late
19:40:39 <oerjan> "late, as in late dentarthurdent"
19:43:41 <oerjan> <Gregor> I'm known for finding these situations hilarious and wonderful :P
19:43:57 <oerjan> now you know why we don't make him a permanent op
19:44:11 <elliott> Well, at least we wouldn't get banfests :P
19:44:25 <elliott> Except for when he just wants to ban someone.
19:47:56 <Cheery> whee.. someone made yet another esoteric language: http://waterbearlang.com/
19:47:56 -!- cheater15 has quit (Ping timeout: 252 seconds).
19:49:47 -!- cheater15 has joined.
19:50:29 <elliott> Any language that has a .com doesn't get to call itself esoteric :P
19:50:30 <Cheery> I know it's a clone of one another language that has taken graphical direction
19:52:51 <Cheery> remembering I were supposed to fix the damn editor model so it doesn't break my cockfiles.
19:54:24 <oerjan> rank and file your cocks
19:55:13 <Cheery> I know it's funny, but try hold it until I get this through. :)
19:55:33 <elliott> cockfile cockfile cockfile
19:55:57 <Cheery> cockjokes are getting old so fast and I need to resist a lot from changing that name.
19:56:33 <elliott> i'm sure oerjan would be happy to ban you if you took away his endless source of puns ;D
19:56:34 <Cheery> otherwise I wouldn't bother. :)
19:59:17 <zzo38> Does Lode Vandevenne still have account in the wiki?
20:00:30 <oerjan> zzo38: User:Aardwolf, but he hasn't edited for years
20:01:24 <zzo38> I just wanted to know, because I used one of his programs (unrelated to esolang or to the wiki), called LodePNG.
20:02:05 <zzo38> (I think I found LodePNG when looking on Wikipedia, actually.)
20:02:42 <oerjan> well Aesculapius managed to contact him by email yesterday
20:03:11 <oerjan> (from the link on his website)
20:04:31 <zzo38> The "Lode Vandevenne" article only lists esoteric programming languages he designed, nothing about anything else.
20:05:26 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
20:05:51 <oerjan> yes, it's also old. hm.
20:07:59 <zzo38> LodePNG is C, C++, and also ported to D. I didn't have time or enough knowledge of the algorithms used to webify the program (i.e. convert to (Enhanced) CWEB), although it might be good idea to have that port too. But it is very good and I use the C version of LodePNG in my programs.
20:09:23 <zzo38> (LodePNG has eight things that can be disabled in the header file; I disabled the last three of them, but if I need those in other programs I can enable them in those other programs.)
20:12:15 -!- KingOfKarlsruhe has joined.
20:15:44 -!- wareya_ has joined.
20:18:34 -!- wareya has quit (Read error: Operation timed out).
20:19:33 -!- ais523 has joined.
20:29:28 <ais523> hmm, Oracle vs. Google is getting amusing
20:29:53 <ais523> the judge said that Oracle and Google were both presenting way too many attacks/defences, and asked them to come up with a plan for cutting the number down
20:30:17 -!- KingOfKarlsruhe_ has joined.
20:30:17 <elliott> "One of you... be more wrong."
20:30:31 <ais523> they both did, and gave values in the tens (Oracle's said that Google were allowed fewer prior art references than Oracle was allowed claims, meaning Google couldn't possibly defend against them all...)
20:30:47 <ais523> and the judge rejected both, and said that Oracle is only allowed 3 claims, and Google 8 prior art defences against them (in total)
20:30:53 <ais523> I doubt either side was expecting that
20:31:04 -!- KingOfKarlsruhe_ has quit (Client Quit).
20:31:17 -!- KingOfKarlsruhe has quit (Ping timeout: 252 seconds).
20:31:17 <ais523> this also means that 129 of Oracle's claimed infringements have been thrown out outright, although Oracle gets to choose which 129
20:31:34 -!- Sgeo has joined.
20:31:56 <Sgeo> I have a question for comex, but there is no way to put it that won't be weird :/
20:33:47 <Sgeo> A friend (who I trust) apparently found an oldish iPod Touch that's locked with a... however they're locked. He wants to try to open it to see if there's any information so he can return it
20:35:16 <Sgeo> (yeah, that's why I said it was weird. It sounds like [and I guess it is kind of] a "how do I hack XYZ" type questions)
20:43:28 <cheater15> ais523, wtf sort of justice is that
20:44:29 <ais523> cheater15: I think the court was being sensible; the way patents work is that the inventor lists every possible use for the invention in the patent, then when they sue someone, point to what in particular they're violating
20:44:46 <ais523> in this case, it's more or less the court asking "so what part of your patent did Google violate" and Oracle saying "all of it!"
20:44:46 * Sgeo pokes comex hoping for a response, even if it's I can't/I won't/I can't and even if I could, won't
20:44:57 <pikhq_> 5 days of class remaining.
20:45:43 <ais523> and this response by the court was more or less "I don't believe you, and if Google is doing that much wrong, why don't you pick the most obvious abuses and get yourself an open and shut case?"
20:46:07 -!- pikhq_ has changed nick to pikhq.
20:47:37 <comex> Sgeo: if it's old, you can probably use some tool to jailbreak it
20:47:51 <Sgeo> comex, would that preserve the data on it?
20:47:58 <comex> although that won't help by itself
20:48:35 <comex> I think this will work, actually: http://www.theiphoneguru.net/2010/11/01/guru-guide-remove-your-forgotten-iphone-password/
20:51:47 <Sgeo> And some jailbreaking methods won't require passcode and won't wipe data?
20:52:23 <Sgeo> Actually, jb status may be unknown
20:54:20 <cheater15> i've found an ipod once, it was owned by a girl, who left her undressed shots on it.
20:56:29 <Gregor> cheater15: That was a man. With fetishes.
20:57:30 <zzo38> I dislike patents in general.
20:59:02 <Gregor> cheater15: The scary part is that that comment was relevant to the "girl" who owned that iPod. The process by which he made himself look like a girl is patented.
20:59:38 * cheater15 ties up zzo38 and uses him as a battering ram against Gregor.
21:01:37 -!- Sgeo has quit (Ping timeout: 258 seconds).
21:20:31 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:24:28 <monqy> there are 16 intro to vortex math videos. that is too many.
21:24:50 <Cheery> http://paste.pocoo.org/show/383690/ <- I changed my double-linked-list-using implementation into this kind of thing.
21:25:01 <elliott> monqy: were not only watching them
21:25:04 <elliott> were watching the advanced tier
21:25:15 <monqy> im watching advanced right now
21:25:23 <elliott> without even doing the intro
21:25:27 <elliott> youre not fucking prepared
21:26:31 <Cheery> I'm getting my sleep now. but tomorrow I'm done assuming I don't waste as much time on playing games as I did today.
21:27:49 <oerjan> <elliott> youre not fucking prepared <-- i guess he got sucked in
21:28:58 <tswett> hey guys how do i inplement continuation passong style??
21:29:40 <monqy> what do you mean implement
21:29:43 <tswett> In all seriosity, I'm puzzling over how to write an interpreter for a nice and simple lambda calculoid with a callCC primitive.
21:30:07 <oerjan> um every function takes an extra argument, its continuation
21:30:52 <tswett> What's the type of my reduce function going to be? PExpr -> (PExpr -> PExpr) -> PExpr, where the first argument is the expression to reduce and the second is the continuation?
21:31:06 <tswett> (The P is there for obvious reasons.)
21:31:34 <monqy> this vortex math is too advanced
21:31:57 <oerjan> tswett: well assuming PExprs are used both for expressions and for results...
21:31:58 <monqy> what is he doing with his hands what is he tracing
21:32:03 <oerjan> including the final program result
21:32:25 <tswett> There is no printing here.
21:32:27 <oerjan> then that should work.
21:33:17 <oerjan> although it might be more type safe to let the final program result be polymorphic, PExpr -> (PExpr -> a) -> a
21:33:22 * tswett swaps the order of these arguments, since the continuation really should be last.
21:33:42 <oerjan> since then you won't accidentally return a result normally instead of passing it to the continuation
21:33:51 <tswett> oerjan: yes, I think you're right.
21:34:20 * tswett realizes that the continuation already was last.
21:35:28 <tswett> And I changed the type signature to make the continuation first. :(
21:36:21 <tswett> My, this code looks very imperative.
21:36:31 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
21:36:58 <oerjan> CPS is essentially monadic, you can more-or-less convert between those
21:37:38 <oerjan> between CPS and monadic style
21:37:42 <tswett> ("Whose" is the plural of "what". Trust me.)
21:39:01 <oerjan> i'm just pointing out one reason why it looks imperative
21:39:27 -!- nescience has joined.
21:40:12 -!- nescience has left.
21:40:29 <pikhq> tswett: If you're using Haskell, you might want to use the CPS monad...
21:40:51 <lambdabot> newtype Cont r a = Cont { runCont :: (a -> r) -> r }
21:41:09 <pikhq> Otherwise, well, continuations are pretty easy conceptually (and somewhat annoying code-wise) if you need to do it manually.
21:41:15 <pikhq> Only thing you need is closures.
21:41:43 <tswett> Hm. I'm not distinguishing between evaluated code and unevaluated code. Some code may end up evaluated many times.
21:41:55 <oerjan> tswett: i noticed that
21:42:35 <oerjan> in some unlambda scribblings i distinguished between expressions and functions
21:43:10 <tswett> How many Unlambda interpreters have you written? :P
21:43:52 <oerjan> lessee there was haskell, ocaml, a conversion into underload...
21:44:08 <oerjan> and the self-interpreter (essentially meta-circular)
21:44:34 <oerjan> the underload conversion i only mentioned in the channel since ais523 said he'd made a much simpler one
21:44:34 <elliott> i never met a circular i didn't vortex
21:44:45 <elliott> and if you halve one you get five
21:44:50 <ais523> oerjan: I deleted it by mistake
21:45:01 <elliott> and are monitoring your actions
21:46:21 <oerjan> the ocaml one was the first one where i used this type idea, which i then essentially translated to the underload
21:47:05 <Cheery> initiating sleep patterns..
21:47:39 <Cheery> the best design patterns ever
21:47:56 -!- Cheery has quit (Quit: Lost terminal).
21:47:57 <oerjan> newtype Expr = Expr (Cont -> Func); data Func = Func (Expr -> Cont -> Func); newtype Cont = Cont (Func -> Func);
21:48:34 <oerjan> the Func one uses Expr rather than Func because of unlambda's d function, it can be Func otherwise
21:49:42 <oerjan> wait data should be newtype there too
21:49:55 <oerjan> the idea was to get only pure functions
21:50:19 <oerjan> oh and this ignores IO
21:50:33 <oerjan> (ocaml and underload are both impure for that)
21:51:17 <oerjan> (and those are haskell types nevertheless, i haven't touched ocaml for years ;D)
21:52:01 <oerjan> tswett: anyway for unlambda Expr represents unevaluated code and Func represents evaluated code
21:53:19 <oerjan> changing all the last -> Func's into -> MyMonad WhatEver should make it work in haskell with IO too
21:53:53 * tswett ponders what apply (PApp exprf exprx) expry cont is supposed to do.
21:54:03 <oerjan> although you might want to mix in the "current character" data to get just -> IO () at the end
21:54:33 <tswett> Evaluate its arguments and then assume that the PApp became something that's not a PApp, I guess.
21:54:41 * tswett modifies his program to make that assumption true.
21:54:59 <oerjan> tswett: eval exprf $ \f -> eval exprx $ \x -> reallyApply f x cont
21:55:33 <oerjan> oh wait i missed expry
21:55:43 <tswett> Nah, I'm fine doing it wrong. :P
21:55:53 <oerjan> i thought you were asking about the basic case
21:56:59 <oerjan> tswett: well if you distinguish unevaluated vs. evaluated, then apply (PApp exprf exprx) expry cont should be a type error
21:56:59 <tswett> apply (PApp exprf exprx) expry cont = error "Trying to apply an unevaluated function"
21:57:37 <elliott> <oerjan> oh wait i missed expry
21:58:05 <oerjan> i guess i'm just not expryenced
21:58:27 <elliott> HAHAAHAHAHHA YOU LOSE HODFGG
21:58:55 <oerjan> (rule: the only way to counter a missed pun is to make an even worse one)
21:58:55 <elliott> oerjan: I WIN WI I WIN I WIN I INW II WIN I INWIN II WNI
21:59:22 <elliott> <oerjan> oh wait i missed expry
21:59:29 <elliott> "Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away." -- Antoine de Saint-Expry
21:59:41 <tswett> And now for the fun thing: apply PCallCC exprx cont
22:00:59 <elliott> haha i am dancign around dacene danece dansce danzsce
22:01:04 <elliott> i won over oerjan woooon won
22:01:06 <elliott> won won won won won won won
22:01:16 <elliott> wonwonwonwonwonownownownownonwonwnwonownowownownwownownowowownwwnwnnownonwonownonownonwonow
22:01:19 <oerjan> elliott: i guess this is not a good time to ask wtf you mean by dual pun
22:01:30 <elliott> <elliott> <oerjan> oh wait i missed expry
22:01:30 <elliott> <elliott> "Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away." -- Antoine de Saint-Expry
22:01:38 <elliott> said by antoine de saint-EXPRY
22:01:44 <elliott> god im just too fucking deep for you jesus
22:01:58 <oerjan> yes. practically drowning, i say
22:02:03 <cheater15> Warning: no safety checks are in place, and debugfs may fail in interesting ways if commands such as ls, dump, etc. are tried without specifying the data_source_device using the -d option.
22:02:34 <elliott> hmm darn sed fails on infinite lines i think
22:02:45 <elliott> ]% python unpredictable.py | sed 's/X/o/g;s/__/w/g;s/_X/n/g;s/X_/o/g;s/XX/w/g'
22:04:05 <oerjan> tswett: = apply exprx cont cont afaict
22:04:21 <tswett> apply PCallCC exprx cont = error "I haven't written this yet"
22:04:25 -!- elliott has changed nick to antndsnt-expry.
22:04:37 <tswett> oerjan: that could easily be something like it.
22:04:56 <oerjan> tswett: i actually get slightly nervous about your not distinguishing evaluated and unevaluated code
22:05:07 * antndsnt-expry starts smashing shades indiscriminately against oerjan's head
22:05:12 <tswett> oerjan: yeah, I should probably be more nervous about that.
22:06:08 <cheater15> it has been running "icheck" for several very long minutes now
22:06:43 <cheater15> also, can an ext3 block be shared by multiple inodes?
22:07:01 * antndsnt-expry continues smashing shades indiscriminately against oerjan's head
22:08:20 <antndsnt-expry> oerjan's tactic of ignoring me can only work perfectly for so long
22:08:22 * antndsnt-expry continues smashing shades indiscriminately against oerjan's head
22:08:25 <tswett> apply PCallCC exprx cont = error "I haven't written this yet"
22:08:29 <tswett> A good start, don't you think?
22:10:41 -!- antndsnt-expry has changed nick to elliott.
22:10:45 * elliott continues smashing shades indiscriminately against oerjan's head
22:11:06 <elliott> tswett: do you think he will react one day : /
22:11:25 * elliott continues smashing shades indiscriminately against oerjan's head
22:11:40 <elliott> i should call them limbless corpses of what once were shades at this point really
22:12:07 <oerjan> i refuse to be drawn into shady business
22:12:13 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:13:09 <elliott> this will not be tolerated
22:13:21 -!- elliott has changed nick to theshades.
22:13:31 * theshades continues being smashed indiscriminately against oerjan's head
22:13:41 * theshades continue being smashed indiscriminately against oerjan's head
22:14:34 -!- theshades has changed nick to elliott.
22:15:12 <tswett> I want to apply exprx to a reification of cont, I guess. Applying the reification to anything should cause the current continuation to be tossed out and the old one to be used.
22:17:18 <oerjan> apply (RCont c) exprx = returnTo c exprx
22:17:29 <oerjan> (sadly plain return is taken)
22:18:18 <oerjan> or i guess PCont in your naming scheme
22:18:58 <oerjan> *apply (PCont c) exprx cont = returnTo c exprx
22:21:17 <tswett> Where did R come from?
22:22:16 <tswett> apply (PCont contx) exprx cont = contx exprx
22:22:16 <tswett> apply PCallCC exprx cont = reduce exprx $ \rexprx -> reduce (PApp exprx (PCont cont)) cont
22:22:48 <tswett> Now I just have to write "lambdaSub sym rexprf rexprx".
22:23:13 <oerjan> um no rexprx is already reduced
22:23:51 <oerjan> apply PCallCC exprx cont = reduce exprx $ \rexprx -> apply rexprx (PCont cont)cont
22:25:00 <oerjan> except i thought apply should have _both_ first arguments already reduced?
22:25:52 <oerjan> unless you were doing lazy evaluation, in which case callCC does not make sense...
22:25:53 <tswett> It does but need not. :P
22:25:53 -!- elliott has quit (Ping timeout: 260 seconds).
22:26:25 <tswett> It evaluates everything, even if we know that it's already been evaluated.
22:27:10 <tswett> Stupid? Of course not. Nothing I do is stupid.
22:27:59 -!- zzo38 has quit (Quit: zzo38).
22:28:14 <oerjan> TYPES MOTHERFUCKER, DO YOU USE THEM?
22:28:59 <tswett> data Value = V (Value -> Bool) -- using this, we can encode anything
22:30:06 <oerjan> V $ const True, V $ const False, and so on from there
22:31:31 <oerjan> \v -> case (v . V $ const True, v . V $ const False) of ...
22:32:22 <tswett> Say 'A' is constantly true, and 'B' is constantly false. Then we can add two more values: 'C', which is true at 'A' and false at 'B', and 'D', which is false at 'A' and true at 'B'. Then... uh...
22:32:23 <oerjan> tswett: also that should clearly be a newtype
22:33:15 <oerjan> tswett: me and elliott discussed a haskell game based on such a scheme previously
22:34:02 <oerjan> two Value "warriors", each of which has to return True when passed itself and attempt to return False when passed the other
22:34:36 <oerjan> and then maybe a hill like for bfjoust
22:35:23 <tswett> warrior x = x warrior -- this will work excellently against a perfect enemy
22:35:53 <oerjan> tswett: um no, the requirement to halt and return True when passed yourself is absolute
22:36:10 <oerjan> automatic disqualification if not
22:37:02 <oerjan> yours would infloop then
22:38:25 <oerjan> then returning False for the other warrior wins unless it does the same
22:38:55 <tswett> You can't prove it doesn't return True. :P
22:39:01 <tswett> (You can prove that easily, of course.)
22:40:36 <oerjan> i wasn't imagining a mathematically ideal contest setup you know
22:40:52 <oerjan> of course there will be timeouts and stuff
22:40:53 -!- FireFly has quit (Quit: swatted to death).
22:41:23 -!- jcp has quit (Ping timeout: 252 seconds).
22:41:36 <ais523> is it even possible to pass a function itself in Haskell? I thought that didn't type
22:41:51 <oerjan> ais523: you need a newtype wrapper, is all
22:42:18 <oerjan> see the above definition of Value
22:42:49 <oerjan> (with s/data/newtype/, data is unnecessary)
22:43:45 <oerjan> the direct prohibition is only to prevent a lot of spurious errors from accidentally typing like missing a function argument and the like
22:48:30 <oerjan> !haskell newtype Fix a = Fix {unFix :: Fix a -> a}; fix f = (\x -> f (unFix x x)) $ Fix (\x -> f (unFix x x)); main = print . take 50 $ fix (1:)
22:48:35 -!- jcp has joined.
22:48:39 <EgoBot> [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]
22:50:59 <ais523> coppro: can you get BBC World News where you are (I know it's a TV channel in Canada)? it's probably covering the elections today (including the AV referendum) right now
22:51:08 <ais523> polls closed a couple of hours ago, the votes are being counted at the moment (by hand)
22:51:18 <ais523> and I'm watching it too, but it's a different channel in the UK
22:52:04 <tswett> Ooh, the AV referendum.
22:52:19 <pikhq> Isn't the more traditional definition of fix: fix f = x where x = f x?
22:52:22 <ais523> today is the day; I voted Yes, as did most of my family, one of them by mistake
22:52:32 <cheater15> are you planning to go to bletchley park this year
22:52:34 <pikhq> !haskell fix f = x where x = fx; main = print . take 50 $ fix (1:)
22:52:41 <pikhq> !haskell fix f = x where x = f x; main = print . take 50 $ fix (1:)
22:52:46 <tswett> I read the "No on AV" campaign. It was inconsistent and didn't support most of its points.
22:52:57 <ais523> the question was really misleading; it was "The current form of voting in the UK is First Past the Post. Should we vote using the Alternative Vote system instead?" or something like that
22:53:05 <ais523> and quite a lot of people misread it as Yes = FPTP
22:53:06 <pikhq> That'd be a "no, I am not correct in thinking that".
22:53:13 <ais523> I'm not entirely sure what effect that'll have on the voting
22:53:39 <cheater15> ais523, fizzie said there was a plan to do that
22:53:49 <cheater15> ais523, does that change your mind in any way?
22:53:55 * pikhq wishes it were a better voting system that were up on the ballot.
22:54:03 <ais523> are there a bunch of esolangers going there?
22:54:22 <ais523> but still probably not
22:54:23 <pikhq> Not that it affects me at all, *but* instant runoff has issues.
22:54:33 <pikhq> Still, fucktons better than FPTP.
22:55:14 <ais523> it does have issues, but they're mostly quite technical and hard to describe
22:55:31 <ais523> I went and talked to the democracy people at the guild incessantly about what was wrong with it, but it was quite hard to phrase
22:55:34 <pikhq> As I said, fucktons better than FPTP.
22:55:40 <ais523> (more out of curiosity than anything, I didn't actually want to change it)
22:58:16 <oerjan> pikhq: yes, but the point of the Fix trick above is to write fix without using literal recursion, by using newtype to bypass the cyclic type prohibition
23:01:27 <ais523> I think that's pretty large public knowledge by now
23:01:44 <ais523> what with my email address showing I go to (in fact, work at) Birmingham University, and several other clues
23:05:11 <oerjan> pikhq: also your code is failing because your where block doesn't end before the main
23:06:35 <coppro> ais523: is it on som BBC station? they might be webcasting
23:06:54 <ais523> BBC 2 in the UK, I think
23:07:02 <ais523> they do webcast, but geographically filter
23:07:14 <ais523> so you'd need to go through a proxy in the UK
23:07:38 <coppro> meh, I don't care enough
23:07:57 <ais523> I know I watched the last election on BBC World News, as I was in Canada at the time
23:08:27 <coppro> ais523: An election is far more significant
23:08:32 <coppro> moreover, I'm in California and without a TV
23:08:44 <ais523> coppro: there's an election at the same time
23:08:47 <ais523> so they're being covered together
23:08:59 <ais523> it's a council election, though, not general election
23:09:22 <ais523> but people are still very interested because they want to see just how badly the Lib Dems will do
23:09:51 <ais523> I'd have voted for them if they had any chance, I think, but the voting system's still FPTP and so only votes for Labour and the Conservatives matter in my ward at the moment
23:10:12 <pikhq> ais523: Your university is on your Wikipedia page.
23:10:12 <ais523> there are also full elections in Scotland, Wales, and I think also Northern Ireland
23:10:23 <ais523> I have a Wikipedia page again?
23:10:31 <ais523> I thought it was merged into the page about the turing machine
23:10:43 <pikhq> Yeah, but https://secure.wikimedia.org/wikipedia/en/wiki/Alex_Smith_%28The_Simplest_Universal_Computer_Proof_contest_winner%29 redirects to it.
23:11:01 <ais523> that is an absurd dab bracket, by the way
23:13:01 <tswett> ais523: do something else notable so that you can have a shorter one.
23:13:37 <pikhq> Preferably something simple.
23:13:49 <pikhq> Say, prove P≠NP. :P
23:14:01 <tswett> "Sir Alex Smith was born a Scottish industrial scientist and educator." Um...
23:14:03 <pikhq> "P and NP are clearly different strings. Ergo, P≠NP. QED"
23:14:11 <tswett> I didn't know those positions were born into in Scotland.
23:14:36 <pikhq> tswett: Everything's done differently there.
23:14:43 <pikhq> And English is a foreign language.
23:15:36 <oerjan> tswett: of course. how did you otherwise think the scots managed to start the industrial revolution?
23:24:47 -!- Sgeo has joined.
23:49:21 <ais523> coppro: it seems that the AV referendum votes will be counted tomorrow
23:49:53 <ais523> and here's the official results website of the people responsible for counting it: http://ukreferendumresults.aboutmyvote.co.uk/en/default.aspx
23:51:30 <ais523> also, ooh, I just found the official website that contains all UK law
23:51:34 <ais523> so I can read up on the relevant laws
23:51:39 <ais523> I was wondering if there was one of those around
23:52:31 -!- azaq23 has quit (Ping timeout: 240 seconds).
23:54:57 <pikhq> It definitely doesn't contain all UK law.
23:55:21 <ais523> well, all the legislation that they could find, anyway
23:55:31 <pikhq> There are a number of Acts of Parliament which are lost forever.
23:58:39 <ais523> so far, we seem to be getting big swings Lib Dem -> SNP in Scotland, with Labour's share staying much the same; as a result, the SNP are gaining quite heavily on Labour
23:59:25 <oerjan> Lex Caccii Viginti Duo
23:59:50 <ais523> ooh, ouch; if AV passes, then the rules for it are edited into law immediately but don't actually take effect until the next general election
23:59:57 <ais523> and in between, people just have to remember they don't apply
00:00:06 <ais523> Agora would never have been that sloppy
00:00:22 <coppro> ais523: this is pretty standard
00:00:36 <ais523> it's still ridiculous, despite being standard
00:00:46 <coppro> ais523: It gets more fun if they repeal that act
00:01:07 <coppro> Does it un-amend the other act?
00:01:16 <ais523> as they might do, as an act saying how to do a referendum on AV is a little irrelevant after the referendum's happened, and it doesn't give any provision for holding another one
00:01:26 <oerjan> blown up by the unamender
00:01:32 <coppro> ais523: It has other stuff in it
00:01:41 <coppro> plus they wouldn't repeal it just because it does nothing
00:09:42 <pikhq> This is a country which doesn't even repeal laws just because it's impossible to know what the law actually said when copies of it still existed. :P
00:26:25 <ais523> haha: the journalist here was interviewing a Lib Dem MP as to why the Liberals were doing so badly in this election
00:26:58 <ais523> and he said, more or less, that it's the first time in 70 years the Liberals were trying to do an election while actually in government, and they didn't have a lot of practice
00:28:41 <ais523> (1) A constituency shall not have an area of more than 13,000 square kilometres. (2) A constituency does not have to comply with rule 2(1)(a) if— (a) it has an area of more than 12,000 square kilometres, and (b) the Boundary Commission concerned are satisfied that it is not reasonably possible for the constituency to comply with that rule.
00:28:53 <ais523> isn't (2)(a) completely redundant there?
00:29:21 <ais523> as in, I don't think constituencies with areas less than 12000 square kilometers are particularly worried about also having to have areas less than 13000 square kilometers
00:32:41 <Sgeo> On the one hand, a girl kissed me, not on the lips, but close
00:32:58 <oerjan> um since when is (1) and 2(1)(a) the same thing?
00:33:13 <Sgeo> On the other hand, it was TA-TK. And there was a smell of smoke. Then again, the bus was crowded, it might have been someone else.
00:33:32 <ais523> oerjan: oh, good point
00:44:55 <ais523> hmm, how the hell did this law end up 287 pages long?
00:45:08 <ais523> I can hardly be expected to learn all the laws, so as to be able to comply with them, if they're that long
00:45:29 -!- another has joined.
00:45:32 -!- variable has quit (Quit: /dev/io failed).
00:45:43 -!- another has changed nick to variable.
00:46:08 -!- kwertii has joined.
00:46:29 <ais523> bleh, it seems that Birmingham overwhelmingly voted No in the AV referendum, despite my attempts
00:46:43 <ais523> we just have to hope that other parts of the country are saner, now, but I don't have much hope
00:47:32 -!- pikhq_ has joined.
00:47:46 -!- pikhq has quit (Ping timeout: 260 seconds).
00:50:54 <EgoBot> Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
00:51:13 <ais523> ooh, see if you can beat slowpoke
00:53:42 <oerjan> ^def prefixes (Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?)S
00:53:42 <fungot> Usage: ^def <command> <lang> <code>
00:53:47 <oerjan> ^def prefixes ul (Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?)S
00:54:35 <oerjan> ^addinterp prefixes underload (Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?)S
00:54:40 <oerjan> !addinterp prefixes underload (Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?)S
00:54:40 <fungot> oerjan: it considers the two possible cases
00:54:41 <EgoBot> Interpreter prefixes installed.
00:54:46 <fungot> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?
00:54:47 -!- TeruFSX has joined.
00:54:47 <Sgeo> Is the AV thing Britain, or some other ... thing similar, such as UK, or what?
00:54:52 <EgoBot> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?
00:55:05 <EgoBot> Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
00:55:13 <variable> !bfjoust testing_something (>+<)
00:55:21 <EgoBot> Score for variable_testing_something: 4.3
00:55:21 <pikhq_> Sgeo: Britain is an island.
00:56:12 <oerjan> `echo 'echo \'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?\'' >bin/prefixes
00:56:12 <fungot> oerjan: i entered and was greeted with a cough and " thief." in there.
00:56:14 <HackEgo> 'echo \'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?\'' >bin/prefixes
00:56:15 <ais523> hmm, if you have a lot of time and want to lose faith in humanity: http://www.electoralcommission.org.uk/__data/assets/pdf_file/0006/102687/Electoral-reform-question-testing-full-report.pdf
00:56:31 <oerjan> `run echo 'echo \'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?\'' >bin/prefixes
00:56:32 <fungot> oerjan: thus the build broke.
00:56:41 <ais523> pikhq_: but the adjective of "UK" is "British", which is really confusing
00:56:44 <oerjan> `run chmod +x bin/prefixes
00:56:45 <pikhq_> Also, England could be said to have no parliament.
00:57:18 <pikhq_> (unlike the other constituent countries of the UK, it does not have a parliament of its very own.)
00:57:36 <ais523> although most MPs in the UK parliament are elected by English people
00:57:53 <ais523> variable: there's a description on the wiki, http://esolangs.org/wiki/BF_Joust
00:58:08 <ais523> but basically, (a{b}c)%n = (a)*n b (c)*n
00:58:19 <pikhq_> And as an odd legal formality, England has a parliament which just makes laws for the entire UK.
00:58:25 <ais523> the advantage of % is that it lets the brackets match correctly, as you can't have mismatched brackets
00:58:29 <oerjan> `run echo 'echo \'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?\''
00:58:30 <fungot> oerjan: it may assume that these cells are dead unless otherwise specified. what do you mean
00:58:33 <ais523> pikhq_: it's more complicated than that due to devolution
00:58:44 <ais523> the UK government, some of the laws it makes affect the whole country, some affect only England and Wales
00:58:54 <pikhq_> ais523: s/makes laws/has the capacity to make laws/
00:58:54 <oerjan> `run echo 'echo \'Bot prefixes: fungot ^, HackEgo \`, EgoBot !, lambdabot @ or ?\''
00:58:56 <ais523> and I think there may be a few thing that are England-only, too
00:59:01 <ais523> pikhq_: err, right, yes
00:59:14 <oerjan> `run echo 'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?'
00:59:16 <HackEgo> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?
00:59:40 <pikhq_> The UK has such a *fascinatingly* complicated system of government.
00:59:53 <oerjan> `run echo '\'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?\''
01:00:10 <oerjan> `run echo "Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?"
01:00:47 <variable> !bfjoust (>)*8([-]>)*3[.++-*10]+[[]]<<>([]-)
01:00:47 <Sgeo> "Some felt the sentence was long and they had to re-read it (often more
01:00:48 <Sgeo> than once) to be sure they had understood what it was asking and that
01:00:48 <Sgeo> they were marking the response they wished to. "
01:00:48 <EgoBot> Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
01:00:53 <variable> !bfjoust kk_1 (>)*8([-]>)*3[.++-*10]+[[]]<<>([]-)
01:00:56 <EgoBot> Score for variable_kk_1: 1.0
01:01:12 <variable> !bfjoust kk_2 ([-]>)*3[.++-*10]+[[]]<<>([]-)
01:01:16 <EgoBot> Score for variable_kk_2: 13.9
01:01:40 * Sgeo decides that he's being "elitist" and shuts up
01:03:20 <Sgeo> Someone shouuld have made a website where people play with voting in both systems
01:03:21 <oerjan> `run echo "Bot prefixes: fungot \^, HackEgo \`, EgoBot \!, lambdabot \@ or \?"
01:03:22 <HackEgo> Bot prefixes: fungot \^, HackEgo `, EgoBot \!, lambdabot \@ or \?
01:03:34 * pikhq_ hates the term "elitist"
01:03:46 <pikhq_> Particularly as used in American politics.
01:03:53 <pikhq_> "HE WENT TO COLLEGE! THE ELITIST!"
01:04:04 <oerjan> `run echo "echo 'Bot prefixes: fungot ^, HackEgo \`, EgoBot !, lambdabot @ or ?'"
01:04:05 <pikhq_> "I WANT ONLY MORONS IN OFFICE!"
01:04:06 <HackEgo> echo 'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?'
01:04:16 <oerjan> `run echo "echo 'Bot prefixes: fungot ^, HackEgo \`, EgoBot !, lambdabot @ or ?'" >/bin/prefixes
01:04:25 <oerjan> `run chmod +x bin/prefixes
01:04:45 <Sgeo> Well, questions for referrendums should probably be phrased so the lowest common denominator can understand them
01:05:12 <pikhq_> We should strive to increase the lowest common denominator, then, shouldn't we?
01:05:33 <oerjan> `run echo "echo 'Bot prefixes: fungot ^, HackEgo \`, EgoBot !, lambdabot @ or ?'" >bin/prefixes
01:05:38 <oerjan> `run chmod +x bin/prefixes
01:05:56 <ais523> I'm reading this whole report
01:06:03 <HackEgo> echo 'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?'
01:06:21 <ais523> the implication I get from it is that elections taken using AV would be decided essentially at random
01:06:32 <HackEgo> /tmp/hackenv.18692/bin/prefixes: error while loading shared libraries: /tmp/hackenv.18692/bin/prefixes: invalid ELF header
01:06:40 <ais523> due to the huge number of people misunderstanding the rules causing enough noise to swamp the signal from those who do
01:07:33 <pikhq_> At least, it can't be any worse than the damned people who seem to fail at "Pick one of the following:".
01:07:42 <pikhq_> (seriously, how the *hell* do you fail at that?)
01:07:46 <oerjan> `run echo '#!/bin/sh' | cat - bin/prefixes >bin/prefixes2
01:07:54 <HackEgo> #!/bin/sh \ echo 'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?'
01:08:13 <oerjan> `run mv bin/prefixes2 bin/prefixes
01:08:18 <ais523> pikhq_: typically, the results we've been seeing so far is around 100 spoilt ballots out of about 20000 votes total
01:08:19 <oerjan> `run chmod +x bin/prefixes
01:08:27 <HackEgo> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?
01:08:51 <pikhq_> ais523: Wow, Britons are much much smarter than Americans.
01:09:18 <ais523> also, only about 30 of those are typically an attempt to vote for multiple candidates
01:09:25 <ais523> the rest were mostly rejected for being blank
01:09:35 <ais523> or for being too ambiguous to tell what they meant
01:09:44 <pikhq_> ais523: Remember, the 2000 election came down to a debate over how to count poorly filled-out ballots.
01:10:12 <pikhq_> Whiiich was decided on the basis of "5 Republicans vs. 4 Democrats in the Supreme Court".
01:10:14 <ais523> (the way ambiguous ballot resolution works in the UK, is that the counters put ballots that aren't clear-cut into a separate pile, and the candidates agree who they're votes for or if they're spoilt, with some sort of tiebreak if they can't)
01:10:47 <ais523> (the candidates get to watch the count and can challenge the placement of any ballot if they want, although it seems unlikely anyone checks /all/ of them)
01:11:36 <ais523> (and if the election's close, the counters go over the piles again looking for miscounted votes, and they keep repeating it until the likely error becomes smaller than the difference in the votes; if there's only 4 votes in it or whatever, the counting can go to four or five rounds as everyone makes sure all the ballots are in the right piles)
01:12:57 <Sgeo> Seaside or AIDA/Web?
01:14:54 <ais523> wow, the BNP came above the Liberal Democrats in one of the seats in Wales
01:15:07 <ais523> that... makes no sense
01:15:17 <ais523> (Labour won it, but that was inevitable given the seat in question)
01:16:54 <ais523> “No, that means that .... let me think this right..... it just means that if everyone in the UK put an X, it means they don’t want the UK .... let me read this again ... that means no, they don’t want the UK to adopt the ....it means no, you don’t want the UK to have it. Does that mean there would be no MPs then?”
01:18:05 <ais523> now I'm trying to figure out why all the seats that have declared so far were held by Labour beforehand
01:18:11 <ais523> some sort of big coincidence?
01:18:23 <ais523> or are Labour voters faster at counting?
01:18:32 -!- sebbu has joined.
01:20:05 -!- fizzie has quit (Ping timeout: 240 seconds).
01:20:26 -!- wareya has joined.
01:21:27 -!- wareya_ has quit (Ping timeout: 246 seconds).
01:21:29 -!- olsner has quit (Ping timeout: 246 seconds).
01:21:36 -!- sebbu2 has quit (Ping timeout: 240 seconds).
01:22:18 -!- olsner has joined.
01:24:12 <oerjan> `run echo \''test""`!'`'
01:24:24 <oerjan> `run echo \''test""`!'\'
01:26:00 -!- fizzie has joined.
01:28:11 <ais523> I wonder how you apply to be on Electoral Commission focus groups?
01:29:17 -!- TeruFSX has quit (Ping timeout: 240 seconds).
01:38:55 <ais523> coppro: ooh, good news in Somerset, it seems that the vote count is 2:1 in favour of AV there, according to people watching the count
01:39:39 <ais523> although the count's being done officially tomorrow, presumably some people couldn't resist starting to count it now
01:40:59 <ais523> Birmingham is apparently overwhelmingly against AV, though
01:41:02 <ais523> even though I voted in favour
01:42:04 <ais523> also, the animated election logo that the BBC uses is hilarious, because it shows a selection of constituencies as colored bars with who owns then, so it's nearly all red/blue/orange with one green bar because there's one Green Party MP
01:42:10 <ais523> and it looks really out of place
01:43:26 <oerjan> it isn't easy being green
01:44:04 <ais523> I was shocked when it happened, mostly because I had no idea that there was a constitutency where the Greens could actually win
01:44:18 <ais523> they were clearly targeting that specific constituency very strongly, though
01:44:42 <ais523> I'm reasonably certain they scoured the whole country to find the constituency where they were most likely to be elected, then focused all their efforts there
01:45:35 <ais523> it's no coincidence that the Green Party MP who was actually elected also happened to be the leader
01:47:05 <oerjan> well shuffling "important" people into "safe" districts happens in norway too
01:47:30 <oerjan> sometimes with a bit of protesting from the locals
01:49:16 <oerjan> although Venstre (no. Liberal democrats) who crashed in the last election managed to lose their party leader's seat but not a couple of the others
01:49:52 <ais523> coppro: some bad news: apparently the bookies are offering odds of 1-16 on FPTP winning, although they do get election odds quite wrong sometimes
01:50:07 <ais523> oerjan: the Greens didn't have any seats in the UK
01:50:11 <ais523> so it was a different sort of shuffling
01:50:24 <ais523> trying to shuffle someone into the seats most dangerous to the other parties, rather than safest for themselves
01:50:49 <ais523> last time Labour tried to shuffle someone into a really safe seat, the person who was there beforehand stood anyway as an independent and won, which is hilarious
01:51:03 <ais523> it seems that they liked the candidate in particular, rather than the party
01:54:02 -!- TeruFSX has joined.
01:55:24 <oerjan> endangering larger parties doesn't work for tiny parties in norway, the 4% cutoff for "evening out" means the larger parties get their seats anyhow while the tiny ones _must_ win a county seat
01:56:25 <ais523> well, the UK is FPTP at the moment, so the practical cutoff is 25% for a party other than the main 3, and only if the main 3 are tied
01:56:31 <ais523> but it only has to manage it in one seat, not in the country as a whole
02:08:50 <ais523> wow are the SNP dominating
02:09:09 <ais523> I have a feeling that they wouldn't do awfully in England either, but they generally don't run there
02:58:02 <coppro> ais523: Our Green leader was elected in her own riding which was also the riding most likely to elect any green given the communities' (well-deserved, mind you) reputation for being 'hippy'
03:00:41 -!- pikhq has joined.
03:02:22 -!- pikhq_ has quit (Read error: Operation timed out).
03:21:49 -!- augur has joined.
03:21:52 -!- augur has quit (Remote host closed the connection).
03:24:19 -!- TeruFSX2 has joined.
03:24:52 -!- augur has joined.
03:24:54 -!- augur has quit (Remote host closed the connection).
03:26:32 -!- augur has joined.
03:29:58 <Sgeo> "I'm a canvas fro building HTML."
03:30:44 -!- MDude has changed nick to MSleep.
03:34:49 -!- pikhq_ has joined.
03:37:05 * pikhq_ finally gets around to watching FLCL
03:37:18 <pikhq_> And I find myself singing along to the soundtrack.
03:37:31 -!- pikhq has quit (Ping timeout: 246 seconds).
03:50:47 -!- wth has joined.
03:53:22 -!- wth has left.
05:12:14 <myndzi> let me know if you figure out what exactly is going on
05:18:34 <pikhq_> Probably take me a while.
05:22:47 -!- TeruFSX2 has quit (Remote host closed the connection).
05:27:21 -!- TeruFSX has quit (Ping timeout: 248 seconds).
06:38:07 -!- pikhq_ has quit (Ping timeout: 246 seconds).
06:38:09 -!- pikhq has joined.
06:54:52 -!- kwertii has quit (Quit: Tschau).
06:55:53 -!- jcp has quit (Ping timeout: 248 seconds).
06:59:33 -!- pikhq has quit (Remote host closed the connection).
06:59:49 -!- pikhq has joined.
07:01:36 -!- jcp has joined.
07:07:44 -!- augur has quit (Remote host closed the connection).
07:08:39 -!- augur has joined.
07:52:40 -!- ObviosoXI has joined.
07:56:13 <ObviosoXI> I've been hoping to catch some good discussion in this channel. In the three times I've tried, nothing has been happening
07:56:59 <oerjan> well this is about the worst time of day
07:59:22 <ObviosoXI> so why yall in here then if nothing is going on. Ir is it just that common to be in a channel when its dead
07:59:50 <ais523> IRC is often dead, people normally idle until a conversation starts up
08:00:07 <ais523> trying to start one yourself is the surest way to get a conversation going, but you have to be quite good at conversing to get it to continue
08:00:13 <ObviosoXI> could you reccoment any interesting channels?
08:01:31 <Slush-> ObviosoXI: conversation here seems to take place at night (at my local time)
08:02:03 <ais523> well, it's 9am for me at the moment, I've been up all night
08:04:39 <ObviosoXI> I've been thinking recently about all the different models of civilizations history that I have heard before
08:06:20 <ObviosoXI> of course different people perscribe to different naratives of history
08:07:08 <ObviosoXI> and in my experience, people tend to hold onto the models of history they were primarily taught or raised believing
08:09:05 -!- oerjan has quit (Quit: Good night).
08:09:51 <ObviosoXI> but aside from explaining how people have and deal with these models
08:10:23 <ObviosoXI> what kind of models or history and/or reality do you all subscribe to?
08:10:27 -!- siracusa has quit (Ping timeout: 252 seconds).
08:11:57 <ObviosoXI> just wanted to throw that question out there incase any one cared to share
08:11:58 -!- siracusa has joined.
08:14:26 <ObviosoXI> what version of our human history are you fascinated by?
08:20:24 -!- ObviosoXI has left.
08:22:54 -!- monqy has quit (Quit: hello).
08:51:12 -!- pizearke has joined.
09:04:12 <cheater_> <synth> cheater: how do i shot web? <cheater> well, first you need to get a bite from a radioactive tim berners-lee
10:00:41 -!- zzo38 has joined.
19:55:42 -!- esowiki has joined.
19:55:42 -!- glogbot has joined.
19:55:51 <ajf> SET A TO (insert ascii code for / here)
19:55:54 <Lymia> Can you say SET [ascii code of A] TO [ascii code of A]
19:56:03 <ajf> would be read as
19:56:23 <ajf> Lymia: yes, and that has no effect
19:56:31 <Lymia> ajf, what if A is already rebound?
19:56:39 <Lymia> That would allow you to reset A to A, correct?
19:56:49 <ajf> If A has been bound to, say, Z
19:56:57 <ajf> "SET A TO A" is read as "SET Z TO Z"
19:57:15 <ajf> Please see the code block at the end of here: http://www.esolangs.org/wiki/Deviating_Percolator#Fundamentals
19:57:34 <Lymia> SET SIXTYFIVE TO SIXTYFIVE
19:57:41 <Lymia> (65=ascii code of A)
19:59:50 <Lymia> And newlines are only split once?
20:00:35 <Lymia> What's the maximum value a variable can store?
20:01:07 <ajf> Yes, 8-bit
20:01:11 <ajf> As it works on ASCII
20:01:37 <Lymia> TWOHUNDREDTHIRTYONE < syntax looks like that?
20:01:52 <ajf> TWOHUNDREDANDTHIRTYONE
20:01:58 <ajf> I'm not American :P
20:02:14 -!- Wamanuz has joined.
20:02:50 <ajf> that makes writing eval hard
20:02:55 <ajf> 26 chars is not a lot
20:03:01 <ajf> and you can't use all of them...
20:03:11 <ajf> unless you only want to use it once
20:05:40 <Lymia> Your NOP makes me want to cry.
20:05:52 <ajf> If you need a NOP
20:05:56 <ajf> there's something much easier
20:06:17 <Lymia> I'm trying to figure out how to compile the language.
20:06:25 <ajf> Lymia: Give up already
20:06:49 <ajf> What I said about only splitting lines once
20:06:56 <ajf> That's just my flawed interpreter
20:07:14 <Lymia> It is the reference.
20:07:15 <ajf> If you did things "right", you wouldn't split at the start
20:07:20 <ajf> Eh I guess
20:08:17 <Lymia> It'd be a bigger challenge to compile it than to write it.
20:08:21 <Lymia> And I like challenges.
20:08:41 <ajf> I challenge you to implement a C compiler in DevPerc
20:08:46 <ajf> Or even better
20:08:53 <ajf> A devperc interpreter in devperc
20:08:56 <ajf> or EVEN BETTER
20:09:02 <ajf> a compiler for devperc in devperc
20:11:18 <Lymia> You could compile to x86, if you write evil self-modifying code I bet.
20:11:36 <ajf> OK, go ahead. compile it.
20:14:22 <Cheery> yay. now I've got regexes that can parse it.
20:14:40 <Cheery> yet needing little bit of things..
20:14:41 <ajf> Cheery: parse what?
20:14:52 <Lymia> ajf, simplest solution would be the following:
20:15:06 <ajf> inb4 "calculate how it would change, in advance"
20:15:08 <Lymia> 1. have a writable code segment, with each command taking up a constant space, padded with NOPS
20:15:12 <Lymia> 2. store the source code
20:15:27 <ajf> >store the source code
20:15:28 <Lymia> 3. calculate which variables affect which lines
20:15:31 <ajf> >store the source code
20:15:33 <ajf> >store the source code
20:15:54 <Lymia> 4. when a variable is changed, recompile all affected lines
20:16:00 <Phantom_Hoover> "New York officials disagreed, and in January 2007 issued regulations that would prohibit shocking New York students for minor infractions. But a group of New York parents filed a federal lawsuit to stop the state from enforcing these regulations."
20:16:11 <ajf> that's not compiled
20:16:27 <ajf> that's a JIT
20:16:39 <Lymia> ajf, failing that, you could do what you suggested.
20:16:51 <ajf> "Give up "?
20:17:04 <Lymia> "calculate how it would change, in advance"
20:17:23 <NihilistDandy> Phantom_Hoover: If teachers can't shock our kids, WHO WILL?
20:17:40 <ajf> that's impossible if I use the GET command
20:17:47 <ajf> as you do not know what the input will be
20:18:05 <Lymia> But you know what variables GET could be used on.
20:20:56 <ajf> yes, but why does that matter?
20:21:16 <ajf> the input could change how the code executes.
20:21:36 <ajf> You CAN'T compile this:
20:21:45 <Lymia> ajf, how exactly does PERCOLATE WHILE X/CIRCULATE work?
20:22:07 <ajf> like the while statement in a program?
20:22:13 <ajf> er, in any other language
20:22:27 <Lymia> Those have to be matched, right?
20:23:01 <Lymia> What happens if they become mismatched by the variables in question being changed.
20:23:06 -!- Plazma has joined.
20:23:12 <Lymia> To the commands look for their counterparts?
20:24:10 <ajf> Lymia: hmm
20:24:41 <ajf> I have a great idea
20:24:58 <ajf> as I can't think of whether to look for counterparts or remember line number
20:25:11 <ajf> I will remove that statement.
20:25:27 <ajf> It also makes the language even smaller :D
20:28:26 <Lymia> If you encounter a variable that's not A-Z, space, or / in a statement, it's a syntax error, right?
20:28:41 <ajf> that's correct
20:28:50 <ajf> or \n, in a good interpreter
20:29:07 <ajf> oh and also
20:29:11 <ajf> the PUT statement
20:29:15 <Lymia> I'll see if I can figure out how to compile the language once you release a reference.
20:29:26 <ajf> and DEFINE statement
20:29:27 * pikhq is probably completely and utterly crazy: autoconf + tup, away!
20:29:31 <ajf> and GET statement
20:29:44 <ajf> well actually any expression where you use a variable name
20:30:11 <ajf> it takes the value of that variable, then finds the variable named with that value
20:30:29 <ajf> although I figure you guessed that already
20:30:33 <Lymia> DEFINE A PLUS ONE TO A?
20:31:22 -!- HackEgo has quit (Remote host closed the connection).
20:31:24 <Lymia> What happens if you write PUT $
20:31:31 -!- EgoBot has quit (Remote host closed the connection).
20:31:37 <ajf> syntax error.
20:31:41 <Gregor> Lymia: You're banned from my bots.
20:31:44 <Gregor> For, like, all eternity.
20:31:48 <ajf> If you said PUT A
20:31:59 <Lymia> But you can bind A to, say, $, correct?
20:32:00 <ajf> and A was defined as the ascii code for $, it would output $
20:32:14 <ajf> Lymia: so you would need to do something like this:
20:32:23 <Lymia> How does that work.
20:32:30 <Lymia> When the line is first read, A would be replaced with '$'
20:32:41 <Lymia> Making the statement "PUT $" which would be a syntax error.
20:32:46 <ajf> you would need to do this:
20:32:51 <ajf> DEFINE B TO A
20:32:59 <ajf> DEFINE A TO (ascii code for $ here)
20:33:12 <Lymia> Replacements arn't recursive?
20:33:53 <ajf> hey, I thought the code block at the end of Fundamentals would have already made that clear
20:34:20 <Lymia> ajf, unmarked line numbers, and a line number based jump?
20:34:40 <ajf> umarked line numbers.
20:34:44 <ajf> because I hate you all.
20:34:54 <ajf> also makes compiling hard
20:34:59 <ajf> if you inserted a newline
20:35:00 <Lymia> A line number based jump when, according to you, a good interpreter is supposed to allow setting to new line to work/
20:35:05 <ajf> trollface.jpg
20:35:11 <ajf> Lymia: yep.
20:35:30 <Lymia> Let's do what the reference does~
20:35:35 <ajf> A good interpreter, by the way, shouldn't split the lines when it starts
20:35:39 <ajf> mine does, but that will change
20:35:47 <ajf> yes I'm warning you
20:36:02 <ajf> It *will* read char by char until encountering a newline
20:36:12 <ajf> trollface.jpg
20:36:23 <Lymia> So how are you planning on implementing GOTO.
20:36:35 <ajf> counting newlines
20:39:06 <Cheery> whee! my parser runs. :)
20:40:34 <Cheery> http://paste.pocoo.org/show/384801
20:40:42 <ajf> OK, now that I stopped being distracted by you, Lymia, I am actually working on expression parsing
20:40:46 <ajf> not commands, expressions
20:40:57 <ajf> e.g. "TWO TIMES FOUR"
20:44:36 <Cheery> little bug there. fixed.
20:47:38 <Cheery> I sort of wonder why there aren't assembly languages that do something similar.
20:48:05 <ajf> expression parsing works
20:48:08 <Cheery> I mean.. sort of concise syntax that behaves like madbollocks.
20:52:02 <Lymia> I have kind of an idea how to do it, but no idea how to do it efficiently.
20:52:37 <Lymia> ajf, so, there are only so many permutations of word lengths that are valid, right?
20:52:59 <Lymia> And for each of those permutations, there are only a few commands that fit.
20:53:18 <Lymia> So, take a string, and find all valid ways to split the string into these valid permutations.
20:53:32 <Lymia> Compile each of these, and generate a block of code that selects the correct one, or errors.
20:54:03 <pikhq> Hmm. It is surprisingly *easy* to make tup and autoconf cooperate.
20:54:28 <Lymia> The only remaining challenge is PROCEED TO.
20:56:10 <Lymia> At the start, strip out all existing comments.
20:56:23 <ajf> Lymia: As much as you are sure you can compile this
20:56:26 <ajf> I sincerley doubt it
20:56:29 <Lymia> And split according to new liens, as new lines cannot be destroyed.
20:56:31 <ajf> But good luck.
20:58:38 <Lymia> ajf, there's nothing stopping you, if you're willing to accept huge executable and long compile time.
20:59:26 <Lymia> A program can only be 256 lines total then?
20:59:29 -!- Wamanuz has quit (Remote host closed the connection).
20:59:47 <ajf> Yes, now that you mention it
21:00:07 <Lymia> Or is it that GOTO only reaches through 256 lines?
21:00:23 <ajf> Yes, it would only go to line 255
21:00:29 <ajf> (counting from 0)
21:00:50 <ajf> it's futile writing a program that long in this stupid language
21:01:20 <Lymia> ajf, it'd be a good challenge to see if I can get something compiling.
21:01:31 -!- Wamanuz has joined.
21:01:38 <Phantom_Hoover> http://motherjones.com/politics/2007/08/school-shock?page=6
21:01:49 <Lymia> Any reason to have that NOP?
21:02:01 <ajf> none, really
21:02:07 <Phantom_Hoover> OK this is seriously like something out of a dystopian novel.
21:02:19 <ajf> let's remove it
21:02:46 <Lymia> PUT A TO STDIO isn't part of Commands.
21:02:52 <Lymia> In particular, the TO X part.
21:03:02 <ajf> I changed it recently
21:03:16 <ajf> realising, as it's for UNIX, I don't need TO FILE
21:04:12 <ajf> Maybe I should use # instead of /
21:06:23 <Lymia> All (valid) commands are enumerable, right?
21:06:53 <Lymia> ajf, quick question.
21:06:58 <Lymia> Is A PLUS RANDOM valid?
21:07:45 <ajf> although you "can't" nest expressions, you can actually nest RANDOM
21:07:56 <ajf> due to the stupid way I am implementing this
21:08:06 <Lymia> Random is in essence a value.
21:08:13 <ajf> No, it's an expression
21:08:38 <ajf> You "can't" nest expressions because I limited max length to 3
21:08:47 <ajf> makes parsing easier
21:09:47 <ajf> I don't want to implement order of operations, basically
21:10:38 * Sgeo does something stupid
21:11:19 <Sgeo> <insert comment about doing someone stupid>
21:11:31 <cheater53> what are you doing that is so stupid, Sgeo?
21:11:35 * ajf thinks Sgeo is stupid because he did something stupid
21:12:04 <Sgeo> cheater53, texting someone who.. likes me, I think, but I'm not so sure that I like her
21:12:06 <Cheery> wee.. again lost my cockfile but fixed it this time.
21:13:07 <Sgeo> Besides her .. not being so bright, perhaps, at least when it comes to programming... I think she smokes. She kissed me (near, but not on the lips) and then I smelled smoke
21:13:19 <Sgeo> Then again, there were a lot of people around, maybe one of them was smoking before
21:13:57 -!- hiato has quit (Ping timeout: 240 seconds).
21:14:03 -!- hiato has joined.
21:14:11 <cheater53> smoking is a good reason to be put off
21:14:25 <Lymia> In essence, there are 26+256+1 possible values, right?
21:14:40 <tswett> So if she doesn't poke, she doesn't smoke?
21:14:50 <ajf> Lymia: eh?
21:14:56 <ajf> there are 256
21:15:00 <cheater53> she'll keep brushing her teeth and you'll be comfortable.
21:15:02 <Lymia> Possible expressions.
21:15:16 <Sgeo> I can't figure out how "she pokes" can be a euphemism for anything other than her being male
21:15:18 <Lymia> The variables, RANDOM, and constants.
21:15:18 <cheater53> or she won't, and you'll have more of a reason to believe she doesn't care about you.
21:15:32 <ajf> Lymia: and expressions...
21:15:39 <ajf> X EQUALS Y
21:15:43 <cheater53> Sgeo, "pokes herself with male organs"
21:16:04 <Cheery> okay.. maybe that never gets old
21:16:19 <Cheery> I'm fine with my cockfiles ^^
21:16:24 <cheater53> Sgeo, just confront her with it if it bothers you so much :p
21:17:03 <Lymia> 560906 possible expressions?
21:18:25 <cheater53> can a language with a finite number of expressions be TC?
21:18:54 <ais523> asm has only a finite number of expressions, and it's TC if you use bignums
21:19:09 <cheater53> right, but asm can address any address
21:19:26 <Sgeo> What about BF?
21:19:30 <ais523> even if you just limit it to a finite set of registers, it's still TC with bignums with program counter and two general-purpose
21:19:39 <cheater53> that makes it an infinite number of expressions in fact
21:19:50 <ajf> Lymia: why do you care about the number possible?
21:19:56 <Lymia> ajf, just curious.
21:20:04 <cheater53> Sgeo, i dunno if you can say bf has a finite number of expressions?
21:20:13 <ajf> there are a lot of possible expressions.
21:20:22 <Lymia> 2 two expression commands, 2 one expression commands.
21:20:25 <cheater53> ais523, can a language with a finite number of programs be TC?
21:20:41 <ais523> cheater53: IMO yes, although that's a definitional problem
21:20:49 * pikhq is surprised at how autoconf + tup is actually *not* horrific
21:20:53 <ais523> I think that if the only avilable program was a BF interp, for instance, I'd call a language TC
21:21:09 <pikhq> Seriously, you just have autoconf generate the tup.config and... That's it.
21:21:20 <Sgeo> Why can't I find that thing before ais523 does?
21:21:23 <ais523> or if the only program output a list of all halting BF programs and their outputs, in order of the number of cycles they take to halt plus their length
21:21:33 <ais523> (this is possible computably)
21:21:41 <cheater53> but the question is if we include the programs run in that interpreter as sub-programs of the main program
21:21:53 <Lymia> 629232203484 possible commands, if I didn't mess up.
21:21:54 <cheater53> and also, i thought of that too "program that lists all programs"
21:22:04 <ajf> Lymia: stop it
21:22:08 <cheater53> but then the question is if it just lists them
21:22:33 <Sgeo> ais523, how could that be possible... oh, threading? And given infinite time, would also output nonhalters?
21:22:38 <ajf> this is stupid
21:22:51 <ais523> Sgeo: it wouldn't output nonhalters after any finite amount of time
21:22:55 <cheater53> Sgeo, to output all halting programs you'd need infinite time.
21:22:59 <ais523> and talking about "infinite time" doesn't really make sense
21:23:07 <ais523> and doesn't need threading, you can just alternate cycles
21:23:20 <ais523> to simulate something that works a bit like threading
21:23:39 <cheater53> Sgeo, just consider the programs "print $k" for k \in N
21:23:43 <ajf> possible expressions: (256*256)*7+1
21:23:53 <cheater53> you need an infinite amount of time to output all of them
21:24:50 <ajf> possible commands: 2*(256^2*7+1)^2+2*(256^2*7+1)
21:24:56 <ajf> In DevPerc
21:26:01 <ajf> so that's 420909547524 possible commands
21:26:11 <ajf> wait no I didn't factor in all possible expresions
21:26:43 <ajf> possible expressions would actually be: (256*256)*7+1+256
21:27:09 <ajf> so possible expressions is E, which is 459009
21:27:29 <ajf> possible commands is C, which is 2E^2+2E
21:28:03 <ajf> which is 421379442180 possible commands
21:28:13 <ajf> Lymia: do I win
21:29:08 -!- d42nk has joined.
21:29:36 -!- elliott_ has joined.
21:31:31 <Lymia> ajf, ah, you'd likely need to use an interpreter for commands that look like "QWERTYUIOPASDFGHJKLZXCVBNM"
21:32:03 -!- d42nk has left.
21:33:15 <elliott_> where are these people coming from :D
21:36:14 <Cheery> lol. that later was just some weirdo
21:40:51 <pikhq> elliott_: Y'know, a freaking shell script is better than make for most intents and purposes.
21:41:14 <ajf> Lymia: so uh
21:41:20 <ajf> my reference interpreter
21:41:26 <ajf> now never splits line
21:41:33 <ajf> you can insert \ns
21:41:40 <ajf> in other words
21:41:47 <ajf> I made compilation even harder :D
21:41:52 <ajf> pikhq: lies
21:42:00 <ajf> make makes dependencies easier
21:42:13 <ajf> and makefiles are really easy to make
21:42:23 <pikhq> Make as used by most people fucks up dependencies.
21:43:14 <pikhq> ajf: How many people explicitly list the headers each file depends upon?
21:43:37 <Lymia> Considering that you could just put every letter in a row, and force the compiler to compile for every single possible command.
21:44:44 <ajf> pikhq: I do.
21:44:49 <ajf> That's why I use a makefile...
21:44:49 <Lymia> I'll make a program to compile what it can, and use an interpreter for the rest.
21:44:57 <ajf> So I can build zlib before my server
21:45:52 <ajf> Lymia: cheating :P
21:45:57 <pikhq> I prefer actually intelligent build systems, personally.
21:46:06 <Lymia> Later, figure out what do about evil evil statements like "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
21:46:15 <ajf> Lymia: I removed that...
21:46:22 <Lymia> ajf, it still works if you insert /s
21:46:34 <Lymia> Just in a different way.
21:48:15 <Lymia> You could rewrite that into something like "DEFINE A TO B/OPQRSTUVWXYZ" right?
21:50:48 <Lymia> ajf, you can certainly compile it-- and you can argue that the result isn't compiled at all anyways.
21:51:42 <ajf> you could write a JIT for this... sortof
21:51:57 <ajf> well, you CAN write a JIT for this. definitely
21:52:44 <Lymia> No matter what, for some statements, the end result will have to be aware of the syntax to some degree.
21:55:47 <ajf> Obviously.
21:56:23 <Lymia> When will you release the reference?
21:56:35 <ajf> When I finish it :P
21:56:53 <Lymia> Are you trying to be beat to the punch or something?
21:57:42 <Lymia> The language isn't that complex.
21:57:52 <zzo38> pikhq: I find shell scripts work too, I don't use make for my own projects.
21:58:04 <ajf> Hey, I only started two hours ago
21:58:32 <ajf> ...and defined the language over half a year ago
21:58:40 <Lymia> Here's what I'm thinking.
21:58:46 <Lymia> Take the statement DEFINE A AS B
21:59:03 <Lymia> What could you actually manage to redefine that to, which is still valid syntax?
21:59:35 <Lymia> PUT X/ or GET X/ right?
21:59:42 <Lymia> ajf, how are trailing slashes handled?
21:59:55 <ajf> not ignored.
22:00:01 <ajf> GET A / is invalid
22:00:04 <ajf> GET A/ is valid
22:00:06 <zzo38> Do you know how to work ligatures with FreeType?
22:00:13 <Lymia> GET A with a space after it, then a new line.
22:00:21 <Cheery> having porperly working editor is a bless.
22:00:54 <ajf> unlike some people, I take whitespace seriously
22:01:09 <Lymia> ajf, compilation is only really annoying for statements where there are huge blobs of letters.
22:01:25 <Lymia> i.e. constant statements and such
22:01:38 <ajf> look, Lymia
22:01:44 <ajf> this language cannot be truly compiled
22:01:55 <Lymia> ajf, define "compiled" and I'll respond.
22:02:14 <ajf> compiled directly to machine code, without needing the source code to run
22:02:36 <ajf> and still executing in every single possible scenario the interpreted version would
22:02:48 -!- ais523 has quit (Read error: Connection reset by peer).
22:02:54 <zzo38> I cannot see anything in FreeType documentatino about retrieving ligature information.
22:05:06 <ajf> this is #esoteric
22:05:13 <ajf> does this matter for your language?
22:05:35 <Lymia> Let's see about that.
22:05:54 <Lymia> How long until you get the reference done?
22:06:14 <ajf> stop distracting me :V
22:06:28 <ajf> all expressions are done, only one command so far
22:09:05 <Cheery> I'm just sad I couldn't do proper nodeexprs to handle stuff with even something more than just chains.
22:09:21 <Cheery> well.. something to do some next time :)
22:09:52 <zzo38> ajf: No but I cannot find a channel for FreeType, I will try a different one maybe
22:12:09 <ajf> I would suggest some other channel
22:13:15 <ajf> I don't know, one related to fonts
22:13:42 <zzo38> I would like to know which one that would be?
22:13:46 -!- azaq23 has quit (Ping timeout: 260 seconds).
22:14:02 <zzo38> Is ##fonts correct one?
22:14:13 <ajf> I would try.
22:14:36 -!- olsner has quit (Quit: Leaving).
22:17:17 <elliott_> Games are now officially recognized by the U.S. Government as art. About damn time. (escapistmagazine.com)
22:17:44 <elliott_> Of course games have huge artistic potential, but even I don't think calling them "art" is a certain thing.
22:17:50 <Lymia> The games and arts debate.
22:17:50 <elliott_> I guess it depends on DEFINISHONS
22:18:04 <ajf> "DEFINISHONS"
22:18:14 <ajf> If I wanted to engrishize it
22:18:16 <elliott_> ajf: You may define that word how you like.
22:18:19 <Lymia> Some games are definitely art.
22:18:22 <Lymia> Saying all games are that is...
22:18:24 <ajf> I'd say DEFINISHONSU
22:18:56 <ajf> but I would argue
22:19:01 <ajf> not all paintings are art
22:19:12 <ajf> If I draw a picture, is it art?
22:19:50 <ajf> cheater53: Nah
22:20:01 <ajf> FI is valid, Fu+small I
22:20:27 <cheater53> so it wouldn't become a popular term
22:20:36 <ajf> DEFINISHONSU
22:20:39 <ajf> nah not really
22:20:48 <ajf> phonetic extensions are everywhere
22:21:21 <ajf> for example:
22:21:26 <ajf> Verudasu Orijinaru
22:21:32 <ajf> Note the "Ve".
22:21:37 <Lymia> Don't the Japanese pronounce that as "be" anyways.
22:21:42 <pikhq> I'd write it as "tèhuīnisiȳonnsu", personally.
22:21:53 <pikhq> Lymia: I find it depends on the age of the speaker, actually.
22:22:02 <ajf> This is true.
22:22:23 <ajf> pikhq: That's some wierd rômaji - did you learn from an older guide?
22:22:31 <pikhq> ajf: Nah, made it up for kicks.
22:22:32 <ajf> I am used to hepburn personally
22:22:36 <Lymia> I wonder how your average English Japanese learner pronounces that.
22:22:41 <pikhq> ajf: Just a very, very literal encoding of kana.
22:22:53 <ajf> I prefer using actual kana
22:23:18 <ajf> pikhq: inputking.com
22:23:19 <Cheery> what was I doing last time with my lisptoy?.. oh lambda arguments.
22:23:20 <ajf> online IME
22:23:31 * Lymia is currently learning Japanese. Kanji are "fun"
22:23:43 <pikhq> Well, yes, 「デフィニションス」 looks nicer to those who know kana.
22:24:19 <ajf> "ヴェルタス・オリジナル"
22:24:23 <Lymia> I need to learn how to read katakana sometime.
22:24:26 <ajf> Verutasu orijinaru
22:24:34 <Lymia> I've neglected to do that for a while now.
22:24:42 <pikhq> Lymia: It's really not that hard.
22:24:42 <ajf> Lymia: Is not that hard, really.
22:24:57 <ajf> You can do it in under a week
22:24:59 <pikhq> But, then, I don't find kanji that hard either, so take that with a grain of salt.
22:25:10 <Lymia> At least you get a good amount of practice with squiggle-kana
22:25:32 <ajf> With "ヴェルタス・オリジナル" - Guess what foreign brand that is
22:25:36 <ajf> No Googling.
22:25:49 <pikhq> Vertas Original?!? I got nothing.
22:25:59 <ajf> Werthers Originals
22:26:10 <ajf> Is german though, so W->V
22:26:12 <pikhq> How very German of them.
22:26:13 <Lymia> Sometimes pronounced b?
22:26:40 <ajf> BEETAASU ORIJINARUU
22:26:41 <pikhq> Lymia: Probably the only hard bit about katakana is the Engrishization of words.
22:26:53 <ajf> This is true.
22:26:59 <Lymia> pikhq, I just need to find motivation
22:27:01 <zzo38> I too prefer actual kana (or kanji with furigana) but in ASCII, you cannot use kana (although you cannot use accent marks either in ASCII)
22:27:24 <ajf> Did you know that
22:27:28 <pikhq> 「ウィルス」 (uīrusu) [wirusu] for "virus" is mother-fucking confusing. Still.
22:27:46 <pikhq> ajf: こんなに馬鹿じゃないと思う。
22:28:09 <Lymia> That is not funny.
22:28:28 <ajf> You lied, you said you can't read katakana
22:28:34 <Lymia> ajf, I can read a few.
22:28:39 <Lymia> *cough watched Madoka cough*
22:28:44 <Lymia> *cough mami cough*
22:28:58 <zzo38> I read katakana and also hiragana
22:29:00 <Lymia> *cough ri looks almost the same in both cough*
22:29:03 <ajf> zzo38: same
22:29:12 <pikhq> elliott_: "wu" is not a valid mora.
22:29:22 <ajf> I can write almost all of both syllabaries
22:29:32 <ajf> the only bit I have trouble with is the ma line
22:29:41 <ajf> ...because I never practised it :P
22:30:01 <pikhq> ajf: How would one encode it?
22:30:04 <ajf> Just antiquated and unused
22:30:20 <pikhq> ゐ and ゑ certainly exist, but not somewthing for "wu".
22:30:44 <ajf> there is only an image on wikipedia
22:30:51 <ajf> it's not even in unicode
22:31:03 <cheater53> pikhq, what are those? my hiragana and akatakana are rusty
22:31:14 <ajf> cheater53: old kana
22:31:19 <pikhq> cheater53: "wi" and "we", in hiragana.
22:31:31 -!- olsner has joined.
22:31:33 <ajf> as I said, unused.
22:31:38 <ajf> You will almost never find them
22:31:51 <ajf> I don't know, pikhq answer his question
22:31:52 <monqy> http://www.esolangs.org/wiki/Tory what is this nonsense
22:31:53 <pikhq> cheater53: The mora they encode fell out of use.
22:32:03 <monqy> is this that spambot thing
22:32:16 <ajf> cheater53: "syllable" in japanese
22:32:27 <ajf> not really a syllable
22:32:33 <pikhq> cheater53: A mora is a component of a syllable; Japanese is in terms of morae rather than syllables.
22:32:39 <pikhq> ajf: Mora is Latin, actually.
22:32:47 <monqy> aaaaahhh these spambots are ridiculous
22:32:49 -!- elliott_ has quit (Remote host closed the connection).
22:32:58 <ajf> pikhq: not what I meant.
22:33:08 <ajf> It's what a Japanese "syllable" is
22:33:21 <pikhq> cheater53: Pronounciation shift; "wi" and "we" came to be pronounced "i" and "e".
22:33:48 <ajf> Also e used to be ye
22:33:53 <ajf> Hence "yen" in english
22:33:59 <pikhq> Because languages change pronounciation over time.
22:34:05 <ajf> Hey, english did too
22:34:11 <ajf> There's a chart somewhere
22:34:12 <cheater53> yes, but why did that happen in this way specifically?
22:34:26 <Cheery> Pasted #384865 to http://paste.pocoo.org/show/384865
22:34:32 <ajf> http://en.wikipedia.org/wiki/Great_Vowel_Shift
22:34:34 <pikhq> "wo" also came to be pronounced "o"; that kana now only exists for the gramatical particle.
22:34:41 <ajf> English vowel changes.
22:34:47 <Cheery> should I say HUBRIS at this point?
22:34:48 <pikhq> For hysterical reasons, the grammatical particles use archaic spellings.
22:34:59 <Cheery> I implemented lambdas into my toy lisp example :)
22:35:07 <pikhq> cheater53: Languages change; it's just a basic elementary fact of linguistics.
22:35:18 <ajf> lisp - that's esoteric?
22:35:57 <cheater53> pikhq, i know that, i was asking why it changed in that specific way
22:36:09 <pikhq> cheater53: "Because".
22:36:54 <Lymia> pikhq, it's confusing.
22:37:01 <Lymia> A bunch of particles are pronounced differently.
22:37:45 <ajf> are there any others?
22:38:51 <pikhq> https://secure.wikimedia.org/wikipedia/en/wiki/Ky%C5%AB-Kanazukai Basically, the particles are remnants of this.
22:40:21 -!- augur has joined.
22:40:34 <ajf> that old style is really confusing
22:40:48 <pikhq> It was phonetic when it came into adoption.
22:41:09 <pikhq> Pronunciation changed, spelling didn't.
22:41:49 <ajf> So they changed the spelling to reflect pronunciation?
22:41:59 <ajf> Makes sense.
22:42:09 <pikhq> And kept the particles the same for reasons I'm not sure of.
22:42:32 <ajf> pikhq: I guess because having some things separate makes reading easier
22:42:45 <ajf> wo and ha, particularly
22:47:16 <ajf> now to work on reference implementation some more :/
22:52:10 <Cheery> this is damn esoteric language.. lol.
22:52:11 <Phantom_Hoover> Continuing of the theme of "TIL something PH has known for ages" which always throws me.
22:52:33 <Cheery> even if I wrote that 'cond' pretty easily, it takes shitloads of time to type in factorial :)
22:52:51 <Cheery> probably.. I'll need node input mode
22:53:17 <Cheery> but then it suddenly starts looking like usual language.
22:53:32 <Cheery> maybe I'll need to branch it very soon into graphical appearance and editing.
23:03:16 <ajf> Lymia: you still here?
23:04:18 <Cheery> Pasted #384885 to http://paste.pocoo.org/show/384885
23:04:24 <Cheery> tthis fucker is able to run factorial now
23:05:05 <Cheery> Pasted #384886 to http://paste.pocoo.org/show/384886
23:05:10 <Cheery> there's linepaste of factorial
23:05:44 <ajf> what the fuck
23:06:12 <ajf> writing a lisp parseer
23:06:49 -!- FireFly has quit (Quit: swatted to death).
23:06:53 <Cheery> no. avoiding writing of lisp parser
23:07:25 <Cheery> well that's like avoiding flood wake but hey trying isn't forbidden?
23:08:00 <ajf> then what are you writing?
23:08:56 <Cheery> http://hg.boxbase.org/coconut
23:09:26 <ajf> http://esoteric.voxelperfect.net/wiki/Coconut
23:09:28 <ajf> no results
23:10:18 <ajf> Are you, let me guess, parsing "Coconut" to lisp?
23:10:41 <Cheery> nah. coconut is the file format I use.
23:11:11 <Cheery> even if I wrote a factorial in this thing today, I still have to work it further.
23:11:45 <Cheery> 'texting' that factorial was damn crazy.
23:12:08 <Cheery> at least now there's something under to try it on.
23:12:57 <Cheery> ajf: oh yeah. it's a structured code format.
23:14:19 <Cheery> and I've just written editing tools and an interpreter handling the format
23:15:10 <Cheery> probably getting to the point somewhere soon where I'm yet adding a number into version.
23:15:31 <ajf> I've (almost) finished my DevPerc interpreter
23:15:39 <ajf> after over 6 months in development
23:15:46 <ajf> hopefully it will have been worth the wait
23:15:52 <ajf> - Gabe Newell (paraphrased)
23:15:56 <Cheery> the spec had more features while ago, but I removed excess ones until I get it doing better.
23:16:05 <ajf> Cheery: same.
23:16:12 <ajf> I now have FOUR commands
23:16:39 * Sgeo vaguly looks for an awesome compiled programming language
23:17:13 <Cheery> tomorrow I'll try get my friend look at that thing, and I perhaps start writing the editor piece.
23:17:24 <Cheery> need to use old code I had. :( that's carp
23:17:32 <Sgeo> Some people dislike Common Lisp for some reason. Why?
23:18:03 <Cheery> it's fragmented langugae
23:18:13 <Cheery> that's why clisp isn't interesting to many
23:18:28 -!- zzo38 has quit (Remote host closed the connection).
23:19:09 * Sgeo remembers looking at Mercury before
23:19:16 <Sgeo> I forgot what my opinion of it was
23:19:53 <Cheery> hmhmhmhm.... I'm wondering right now how I'll proceed with my editor. but then I'm getting that sleep before doing anything.
23:21:04 -!- azaq23 has joined.
23:21:27 -!- Cheery has quit (Quit: Lost terminal).
23:23:20 * Sgeo gets bored looking at Mercury
23:25:55 <Sgeo> I almost Googled that, expecting to find a language
23:28:32 <Phantom_Hoover> Sgeo, here, some gallium: http://periodicvideos.com/videos/031.htm
00:09:44 <ajf> DevPerc interpreter done
00:09:52 <ajf> https://github.com/TazeTSchnitzel/DevPerc
00:11:08 -!- pikhq has quit (Read error: Operation timed out).
00:12:02 -!- pikhq has joined.
00:12:17 <ajf> My interpreter is finished :D
00:13:47 <ajf> ohi wareya_
00:13:54 -!- azaq23 has quit (Quit: Leaving.).
00:13:55 <ajf> I finished my shitty language's interpreter
00:14:04 <ajf> It is an interesting language.
00:14:37 <ajf> wareya_: http://www.esolangs.org/wiki/Deviating_Percolator
00:14:40 <wareya_> is it better than 1d boat?
00:14:56 <wareya_> 8:15 PM - Kaviera: yup a fag would anser like that B3
00:14:58 <ajf> My language cannot be compiled
00:15:01 <wareya_> 8:15 PM - Kaviera: ffffffffff
00:16:04 <ajf> wareya_: have a look at my language
00:16:10 <ajf> it is wierd
00:16:28 <wareya_> mine was like a stripped down C
00:16:46 <ajf> mine was... I have no idea why now
00:16:48 <wareya_> you could have negative sized variables
00:16:50 <ajf> I just thought of it
00:17:17 <ajf> Also mine has a working interpreter
00:17:31 <ajf> Horrible code, but works
00:17:53 <wareya_> I should be working on my game's platforming physics code
00:18:34 <wareya_> I redesigned my language like 5 times
00:18:48 <wareya_> the wiki only has version 2
00:18:49 <ajf> I designed this language in November last year
00:18:53 <ajf> forgot about it
00:19:00 <ajf> remembered it today
00:19:14 <ajf> also I removed some stuff to make implementation easier
00:19:19 <ajf> also to make more sense
00:20:48 <ajf> boat is by you
00:22:13 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:22:21 <ajf> have you looked at DevPerc yet
00:22:38 <ajf> "I'm against DRM, pro-OSS, I think the GPL is too draconian, middle/junior high and high school in the USA is done terribly, and that America's democracy is broken by international entities."
00:22:43 <ajf> huh, me too
00:23:17 -!- TeruFSX has joined.
00:24:21 <ajf> wareya_ what do you think of DevPerc
00:26:54 <ajf> also the wiki needs fixing main page from esolangs.org does not work
00:28:16 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
00:30:40 <ajf> also thanks
00:32:09 -!- ajf has changed nick to ajf|offline.
00:32:48 <Lymia> Your number system is horrible and screwy.
00:53:04 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
00:57:12 <Lymia> The less numeric literals, the easier it is to tease out all combinations.
01:17:17 -!- pikhq has quit (Read error: Operation timed out).
01:17:26 -!- pikhq has joined.
01:27:36 -!- augur has quit (Remote host closed the connection).
01:34:22 -!- monqy has quit (Quit: hello).
01:37:13 -!- monqy has joined.
01:42:23 -!- elliott has joined.
01:42:25 <elliott> http://esolangs.org/w/index.php?title=Language_list&curid=960&diff=22409&oldid=22336
01:42:25 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
01:43:47 <monqy> these are the most peculiar spambots
01:46:51 * Sgeo again looks at Slate for some reason
01:47:00 <Sgeo> Even though before I said that I wanted compiled
01:47:03 * Sgeo confuses himself
01:48:18 <elliott> if it didn't involve typing an asterisk, Sgeo would be SO ignored by now.
01:49:44 <elliott> damn number keys, all not working and shit
02:03:04 -!- oerjan has joined.
02:06:24 <oerjan> 05:13:28 <Phantom_Hoover> http://www.reddit.com/r/math/comments/h5wv8/your_thoughts_on_a_feynman_quote/c1stu8p
02:06:27 <oerjan> 05:13:30 <Phantom_Hoover> It's oerjan!
02:07:13 -!- augur has joined.
02:07:29 <Lymia> Let's make a language based on either English or Japanese grammar... and looks like Perl.
02:25:37 <Gregor> What is the nonshittiest of the free TLDs?
02:30:09 <elliott> Why would you even ask that, they're all incredibly terrible.
02:30:27 <pikhq> Unless you don't mind alternate roots.
02:30:31 -!- calamari has joined.
02:31:49 -!- calamari has quit (Client Quit).
02:36:35 -!- NihilistDandy has quit (Quit: Linkinus - http://linkinus.com).
02:38:57 <Lymia> elliott, how about.... uh....
02:39:02 <Lymia> What language has the screwiest grammar?
02:41:34 -!- wareya_ has changed nick to wareya.
02:42:14 <monqy> lots of languages have screwy grammar
02:42:35 <monqy> are context-sensitive grammars inherently screwier than context-free grammars?
02:44:17 -!- hagb4rd has joined.
02:46:58 <elliott> I should implement that language
02:47:28 <Lymia> monqy, something based on Japanese shouldn't be all that hard to parse.
02:54:04 <Lymia> T-that's horrible.
02:59:29 <elliott> one of them used an undo link
02:59:35 <elliott> so I recommend we just insult them in edit summaries
02:59:41 <elliott> (diff) (hist) . . Whirl; 02:59 . . (-975) . . 122.248.210.168 (Talk) (Undo revision 19690 by Special:Contributions/Onybasoceh (User talk:Onybasoceh))
02:59:54 <elliott> or maybe it uses that to... hmm
03:00:03 <elliott> i guess it thinks it is the comment link, maybe?
03:00:06 <elliott> if it is meant to be a comment spambot
03:01:13 <Lymia> elliott, link to the history page in question?
03:01:27 <elliott> already closed that tab :P
03:01:59 * pikhq curses at WorldEdit
03:02:04 <pikhq> It doesn't seem to handle powered rail.
03:04:28 <Lymia> It seems to exist for no reason but to mess up the site.
03:05:07 <elliott> You must be new to the internet.
03:05:31 <Lymia> There's no purpose to doing it.
03:05:37 <Lymia> It's not like it's linking anything.
03:06:02 <elliott> well, I suspect it's trying to send a form field for a link, but it think it's a blog comment thing
03:06:08 <elliott> or, it's just testing whether the site is susceptible to spamming
03:06:12 <elliott> to sell it on to other spammers
03:08:28 -!- zzo38 has joined.
03:10:37 -!- zzo38 has set topic: DO CONTINUATIONS DREAM OF MONADIC SHEEP? | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
03:12:52 -!- elliott has set topic: DO CONTINUATIONS DREAM OF MONADIC SHEEP? -- a novel by Ernest Hemingway | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
03:14:08 <zzo38> Have you ever made a file called README containing the words "README: No such file or directory" in a public system?
03:16:42 <zzo38> What else I have once done is in a Windows 98 system, made a HTML file with a screenshot of the desktop screen and then program it to display the message "RESTRICTED" whenever it is double-clicked, and then set it up to display full-screen in the task scheduler.
03:17:20 <monqy> one time I observed a windows system where all the shortcuts were set to run shutdown
03:17:32 <zzo38> monqy: Where and when was this?
03:17:55 <monqy> highschool a few years ago
03:19:02 <Lymia> http://www.esolangs.org/wiki/NOT_A_PROGRAM < Let's turn this joke into an actual programming language.
03:19:23 <zzo38> Lymia: Try. But I do not think it can, that is not really its purpose.
03:21:46 <zzo38> Have you heard of "Schroedinger's Directory"? I think it might have been a file containing the words "cat: fldrA: Is a directory" or at least that is one possible explanation, I don't know what else could be.
03:25:11 <Lymia> Something corrupted on the file system?
03:25:35 <zzo38> Yes maybe that too.
03:25:49 <zzo38> I don't know how these commands act to a symbolic link to a directory.
03:25:57 <zzo38> Did you know? Egbert B. Gebstadter is the Egbert B. Gebstadter of indirect self-reference.
03:26:11 <Lymia> `run echo cat: fldrA: Is a directory > fldrA
03:26:56 <Gregor> But really, oh right, Lymia.
03:27:05 <Gregor> You made my bed, now I have to lie in it :P
03:27:08 <zzo38> What about Plazma?
03:27:36 <Gregor> Lymia made the bot say some random DCC request that apparently breaks wildly-broken clients, and Plazma made me take 'em offline 'til I fix them.
03:27:42 <Gregor> Which will be whenever I feel like it.
03:27:59 <Gregor> Part of the fix will be if [ "$IRC_USER" = "Lymia" ] ; then echo 'Ha, no'; fi
03:28:13 <zzo38> I doubt that will help
03:28:16 * oerjan didn't see any clients break :(
03:28:26 <Gregor> zzo38: It won't, but it's cathartic :P
03:28:31 <Gregor> oerjan: Of course not.
03:28:32 <Lymia> Gregor, filter all output.
03:28:40 <Lymia> Else, the brainfuck program in question lives.
03:28:40 <Gregor> Lymia: That's what I intend to do.
03:28:48 <zzo38> Such as stripping all control character
03:29:46 <zzo38> ^bf +.++++++++++++++++++++++++++++++++++++++++++++++++++++++++.++.+++.+.+.+.+.+.++++++++.+.+.
03:30:00 <oerjan> zzo38: but it's sad if the bots cannot emote :(
03:30:11 <zzo38> oerjan: I don't think it needs to
03:30:13 <elliott> <Gregor> Lymia made the bot say some random DCC request that apparently breaks wildly-broken clients, and Plazma made me take 'em offline 'til I fix them.
03:30:53 <elliott> Oh, is that one of the IRCops?
03:32:45 <elliott> Gregor: I don't recall any clients actually being affected in any way here :P
03:34:15 <Lymia> Apparently \1 does DCC.
03:34:25 <elliott> Gregor: It means it's even less relevant than that bash quote where saying "fuck" disconnected that guy repeatedly :P
03:34:27 <Lymia> And it needs to be filtered.
03:34:46 <monqy> iirc \1 does CTCP which does DCC
03:34:51 <elliott> erm, nothing wrong with CTCP
03:34:56 <elliott> just that specific thing needs blockin
03:35:03 <zzo38> Just strip all control characters would be the simplest way. (Or, convert them to unicode control pictures)
03:36:09 <oerjan> will filtering for \1DCC at the start be enough?
03:36:20 <elliott> oerjan: you can technically ctcp in the middle of lines
03:36:33 <zzo38> Other option: Do KICK to Plazma.
03:36:49 <oerjan> elliott: yes but what clients do that? _especially_ wildly broken ones?
03:37:12 <zzo38> I can <CTCP>ACTION ctcp<CTCP> in middle of lines this client.
03:37:17 <elliott> oerjan: Hey, since we're defending against an entirely hypothetical occurrence...
03:37:22 <zzo38> But I don't know if yours can receive it.
03:37:23 <Lymia> I assume most clients escape it.
03:37:33 <oerjan> zzo38: yes and irssi doesn't treat that as a ctcp incoming
03:38:01 <oerjan> elliott: there could be an entirely hypothetical client which broke if you said "hi" as well
03:38:11 <elliott> And I'm going to build it and get ALL THESE BOTS taken down.
03:38:40 <Lymia> ^bf +.->++++++++[<++++++++>-]<+.++.+++++++++++++++++.-----------.++++++.-.>+++++[<--------->-]<-.>++++++++[<+++++++++>-]<.+++++++++++++.--------------.++++++++++++.>+++++++[<------------>-]<+.>++++[<+++++++++++>-]<.>+++++[<+++++++++>-]<.------------.----.--------.[-]+.
03:39:03 <monqy> does anything still have the stupid bug anymore?
03:39:11 <elliott> nothing in here at least :)
03:39:25 <Lymia> I actually misspelled it as "DCC SED"
03:39:40 <monqy> yeah that was a bit weird
03:40:13 <elliott> Lymia: so it actually did less than nothing at all :D
03:40:23 <elliott> we should fix the typo just to check if anyone has the bug.
03:40:28 <elliott> you get right on that Lymia.
03:40:53 <elliott> oerjan: it's a public service
03:40:56 <zzo38> Some IRC servers will try to stop you sending certain words or combinations of words such as "startkeylogger". SlashNET network will put error message if you do that words in PRIVMSG or NOTICE but if you do in QUIT it will still do QUIT but delete the message. Appearently Furnet will disconnect you if you send "startkeylogger" no matter where it is.
03:41:08 <zzo38> But what if it is part of your reverse DNS?
03:41:15 <elliott> startkeylogger startkeylogger
03:41:17 <Lymia> zzo38, then you're a bastard.
03:41:33 -!- elliott has set topic: This channel is dedicated to those who have lost their lives at the hands of DCC SEND startkeylogger | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
03:42:28 <zzo38> If someone in here has access to reverse DNS, please set your reverse DNS to contain the prohibited words and then connect to Furnet see what happens please.
03:42:37 <elliott> that would involve connecting to furnet
03:42:57 <zzo38> elliott: Yes it would, but it would also involve reverse DNS.
03:43:03 <elliott> yes but that's not the objectionable part
03:43:45 <zzo38> (I have never connected there (because I never had to connect to find channels of my interest) so I cannot confirm myself; someone told me this. If I had access to this reverse DNS, then I would connect and try it by myself)
03:44:29 <monqy> channels of your interest? on furnet?
03:44:48 <Lymia> (let's (do-like (write english) lisp))
03:45:13 <monqy> what hideous dialect is that
03:45:19 <zzo38> I mean, like, I connect to here because of *this* channel, and some other channels such as ##C and so on I sometimes might ask a question. And also SlashNET because that one is MegaZeux.
03:45:57 <Lymia> I still can't figure out why Japanese reminds me of a programming language.
03:46:02 -!- hagb4rd has quit (Quit: hagb4rd).
03:46:25 <zzo38> cheater53: MegaZeux is a old game creation system but now it is made many new things, even I made some changes to MegaZeux too.
03:47:00 <zzo38> cheater53: Such as, this is my MegaZeux I made on here: http://zzo38computer.cjb.net/mzx1/mzx_extended/ There is other MegaZeux, too.
03:47:08 <zzo38> Which you might find elsewhere
03:48:54 <zzo38> But it is possible in SlashNET to use NS SET command to make prohibited words appearing when someone else uses NS INFO command.
03:49:26 <cheater53> i'm on a livecd and it's just churning and churning the dvd drive
03:50:12 -!- hagb4rd has joined.
03:50:14 <zzo38> cheater53: Are you interested in MegaZeux? The last few times I have been in their channel, I have not seen any messages, or sometimes only one message.
03:50:20 <cheater53> i typed ls in a command prompt and it just doesn't do anything
03:50:40 <zzo38> cheater53: Is there no file?
03:51:02 <cheater53> zzo38, i might be interested if i were able to open the website. i can't, because linux is being stupid right now
03:51:24 <cheater53> then i pressed ctrl-c and it said "Bus error: core dumped"
03:51:35 <zzo38> Something is then, seriously wrong.
03:51:41 <cheater53> no, it said "Bus error (core dumped)"
03:51:59 <zzo38> There is still something wrong.
03:52:20 <zzo38> Does the computer work properly without the Live CD?
03:52:53 <cheater53> it even works properly with the livecd
03:52:56 <oerjan> what _are_ these bus errors and why does linux have such terrible collective transport
03:53:17 <cheater53> oerjan, i think it has to do with the INTERCAL "select" operator
03:53:29 <oerjan> ...well i meant in general.
03:53:47 <zzo38> What does INTERCAL have to do with your problem?
03:53:49 <cheater53> i think linux is written in INTERCAL
03:53:59 <zzo38> No, Linux is written in C.
03:54:24 <zzo38> (I don't know of any version of INTERCAL that allows writing operating systems)
03:54:30 <zzo38> No, C is written in C.
03:55:09 <cheater53> what if C were written in INTERCAL -- then it would make sense
03:55:36 <cheater53> it just doesn't want to do anything
03:55:53 <zzo38> That wouldn't be the case even if you wrote a C compiler in INTERCAL - the INTERCAL "select" operator does not do this kind of things
03:56:13 <zzo38> cheater53: Maybe the CD is scratched?
03:57:48 <cheater53> it was in the dvdrom all the time. it didn't get scratched while it was there.
04:00:53 <zzo38> Do you have another computer?
04:02:36 -!- cheater53 has quit (Ping timeout: 260 seconds).
04:03:29 <zzo38> (Yes, it certainly seems broken.)
04:04:22 <oerjan> <zzo38> (I don't know of any version of INTERCAL that allows writing operating systems) <-- sheesh all you need is COME FROM BOOT SECTOR
04:04:57 <elliott> <oerjan> what _are_ these bus errors and why does linux have such terrible collective transport
04:05:01 <elliott> segfaults, except not on xeightsix
04:06:41 <zzo38> oerjan: I don't know of any version of INTERCAL that has such a command; although, if there was one, I suppose that would be the way to mark that the program is an operating system and where the program begins executing.
04:07:23 <zzo38> And if it has more than one COME FROM BOOT SECTOR then it is a operating system for multicores.
04:26:53 -!- pikhq has quit (Ping timeout: 258 seconds).
04:26:55 -!- pikhq_ has joined.
04:30:51 -!- MDude has changed nick to MSleep.
04:57:50 -!- cheater43 has joined.
04:58:47 <cheater43> so, i've fixed my computer by 1. rebooting it 2. making sure the problem doesn't happen again
04:59:08 <cheater43> which means that in other, but very related news i have finally found a use for the single copy of the bible that i have here.
05:02:16 <cheater43> well, galvanic and mechanical isolation mainly
05:03:17 <oerjan> so not exorcising a daemon from you pc, how boring
05:03:34 <cheater43> instead of stacking all my hard drives one on top of the other so that they achieve the temperature of the sun and fuse into one glowing ball of plasma, i have decided to lay them out flat on top of the pc case. funnily enough the five 3.5" hard drives i have hooked up do work out to just the right dimension to take up the complete space up at the top.
05:03:43 <cheater43> one of the hard drives is sitting on the bible.
05:03:52 <cheater43> others are sitting on other books.
05:04:22 <cheater43> the bible is fairly useless, i only have it because i got it in a box of books which also contained other story books like the complete works of goethe, and german classics
05:06:50 <pikhq_> Oh, sure, you foreigners.
05:06:54 <cheater43> oh, you mean of the german writers
05:07:20 <cheater43> the bible is translated, though, because i don't think the germans were stupid enough to come up with this shit
05:07:25 <pikhq_> I was referring to the Bible.
05:07:35 <cheater43> even though they were, relatively speaking, cave men
05:08:33 <zzo38> So, you don't actually need any of these books for reading?
05:11:46 <zzo38> Do you know what the problem is?
05:12:11 <Sgeo> FlameSource setOnFire: zzo38.
05:12:20 <Sgeo> Hmm, wow that sucks
05:12:31 <zzo38> Sgeo: What does that mean?
05:13:00 <Sgeo> Sends the setOnFire: message to the class FlameSource, with zzo38 as an argument
05:13:42 <cheater43> sure, i do have those books for reading
05:13:48 <cheater43> however, the bible is one exception
05:14:02 <cheater43> i pretty much have it for pulping, or for use as a general object
05:15:53 <zzo38> cheater43: Does that copy of the Bible include deuterocanonical books?
05:18:38 <zzo38> (Also called the apocrypha)
05:20:19 <zzo38> Although, there are three books of the apocrypha which are not part of the deuterocanonical books
05:20:52 -!- augur has quit (Remote host closed the connection).
05:24:25 <cheater43> it's performing the most important function it will ever perform in its life, it's actually being used to SUPPORT the transfer of information
05:24:34 <cheater43> so i don't want to remove it from under the hdd
05:25:11 <zzo38> Well, yes, keep it there for now. Books are also a physical object that you can put stuff on top of
05:31:34 <zzo38> I have a full copy of the King James Bible text in my computer but it does not include deuterocanonical and apocrypha.
05:33:33 <zzo38> Do you know where is ASCII text copy including these things?
05:35:59 <pikhq_> I'm going to go on a limb and say "Project Gutenberg".
05:45:55 <zzo38> Why can't C support constants ("abcdefg"[1]) and so on?
05:46:41 <cheater43> <zzo38> Why can't >>C<< support constants ("abcdefg"[1]) and so on?
05:47:10 <cheater43> suggest you use a saner, more powerful language, such as befunge.
05:48:36 <pikhq_> "abcdefg"[1] is entirely valid in C, and equivalent to 'b'.
05:49:19 <zzo38> pikhq_: In my computer it is error wherever a constant is expected.
05:49:32 <pikhq_> Oh, right, it wouldn't be a constant expression.
05:50:11 <pikhq_> Well, you could probably get the behavior you want with C++. >:D
05:52:31 <zzo38> Of course I could also used the C interpreter in Enhanced CWEB to make a macro that takes two arguments, one string and one expression, and expand to (x==1?'a':(x==2?'b':...... and so on but then it won't work if the C preprocessor of the compiler has a macro of a string that the prepreprocessor won't see
05:53:01 <cheater43> your bookram will definitely become more legible this way
05:53:03 <zzo38> But I also think that it should make sense that C should accept such thing as "abcdefg"[1] where constant should be?
05:53:22 <pikhq_> It'd certainly be nicer.
05:53:40 <pikhq_> But you must remember, C seems to presume that the compiler is positively *stupid*.
05:55:08 <zzo38> Do you know if they allow such constants as that in the next C standards document that is not written yet? I think in the newer standards they improve some things but other things are unnecessary
05:55:32 <pikhq_> I don't *think* C1X is adding that.
05:56:25 <zzo38> In my opinion, they add a lot of things they ought not to, and yet they forget some stuff that would make a bit of sense
05:57:24 * pikhq_ looks at C1X's additions
05:57:39 <pikhq_> "Type-generic expressions using the _Generic keyword."
05:58:16 <coppro> pikhq_: Are you familiar with tgmath.h?
06:00:44 -!- TeruFSX has quit (Read error: No route to host).
06:08:21 <zzo38> I think, it should be invented, a new kind, not called C (because C is already called C), instead it can be called C?? or something like that, which is mostly C89 but also a few more things, such as #meta...#endmeta block where you can write interpreted C codes and compile-time error catching, and closer control to the machine-codes.
06:08:54 <zzo38> And then you can also have Objective-C++?? in case some people want that instead... but I don't think so.
06:09:22 <pikhq_> God, why is Objective-C++ a real thing?
06:09:38 <zzo38> It is a real thing, I am not sure who uses or wants it.
06:10:06 <pikhq_> Well, it has a single legitimate use.
06:10:13 <pikhq_> Binding C++ and Objective-C code.
06:10:27 <pikhq_> Without going through C.
06:10:49 <elliott> pikhq_: you can actually do everything objective-c does in pure C++
06:10:54 <elliott> because it's all objc_msgSend or whatever
06:10:58 <elliott> so you can just call them directly
06:11:08 <pikhq_> elliott: Yeah, it's just somewhat more annoying.
06:11:23 <zzo38> elliott: Or something else; it doesn't have to be C?? maybe there is better name, but C and C++ is already taken
06:11:30 <pikhq_> Not that having two seperate object systems is going to be anything *but* annoying.
06:12:09 -!- TeruFSX has joined.
06:27:40 -!- hagb4rd has quit (Ping timeout: 240 seconds).
06:28:05 -!- augur has joined.
06:52:57 -!- TeruFSX has quit (Ping timeout: 264 seconds).
07:04:33 -!- zzo38 has quit (Remote host closed the connection).
07:05:48 -!- augur has quit (Read error: Connection reset by peer).
07:06:01 -!- augur has joined.
07:21:12 -!- oerjan has quit (Quit: leaving).
07:32:19 -!- pikhq has joined.
07:32:28 -!- pikhq_ has quit (Ping timeout: 260 seconds).
07:54:59 -!- evincar has joined.
07:56:02 <evincar> elliott: You still around?
07:56:29 <evincar> Your cynicism betrays you, sir.
07:57:09 <evincar> Unless you have a bot to be cynical for you.
07:57:37 -!- hagb4rd has joined.
07:58:25 <evincar> That is, sarcastic. Been awake for a while. Dammit.
08:07:34 -!- monqy has quit (Quit: hello).
08:11:40 -!- siracusa has quit (Ping timeout: 276 seconds).
08:12:14 -!- siracusa has joined.
08:25:15 -!- hagb4rd has quit (Quit: hagb4rd).
08:53:04 -!- Vorpal has joined.
08:54:07 -!- zzo38 has joined.
08:56:14 <zzo38> The community portal has been replaced multiple times in succession, all with spam messages.
09:03:26 -!- Phantom_Hoover has joined.
09:10:01 -!- evincar has quit (Quit: ChatZilla 0.9.86.1 [Firefox 3.6.17/20110420140830]).
09:31:37 -!- FireFly has joined.
09:47:08 <Lymia> http://www.esolangs.org/wiki/XMLfuck < Isn't this slightly more powerful than a reencoding of Brainfuck, therefore not qualified as one.
09:47:50 <Lymia> You could use a while loop containing instructions pointing at a different tape, right?
09:48:04 <ajf|offline> "can only exist once". als,o Lymia: did you look at my reference interprerter
09:48:57 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
09:49:01 <Lymia> Can't you write <while tape="a"><inc tape="b"/><dec tape="a"/></while>
09:49:28 <Phantom_Hoover> Also if that is an XML-based language I am going to stab you in the face.
09:49:40 <ajf|offline> I am just briefly coming here to check if lymia replied to my PM about my DevPerc interpreter
09:49:54 <Lymia> ajf|offline, your reference interpreter's number handling is horrid.
09:51:41 -!- pikhq has quit (Ping timeout: 240 seconds).
09:51:57 -!- pikhq has joined.
10:13:01 -!- cheater43 has quit (Quit: Leaving).
10:14:31 -!- azaq23 has joined.
10:50:26 -!- iconmaster has joined.
10:53:11 <iconmaster> Like, I looked at Recent Changes, and I went :OOOO
11:01:51 <elliott> No we were completely and utterly unaware.
11:02:04 <elliott> Can't do much without a sysop.
11:07:31 <iconmaster> Anyhow, I was playing Might and Magic VII, and I found this huge glitch. I can now duplicate quest items.
11:31:54 -!- cheater93 has joined.
12:10:03 -!- BeholdMyGlory has joined.
12:11:46 -!- ajf|offline has changed nick to ajf.
12:11:55 <ajf> Lymia: eh?
12:12:02 <ajf> what's wrong with its number handling? :D
13:05:09 -!- TeruFSX has joined.
13:11:46 <ajf> Lymia: http://esoteric.voxelperfect.net/wiki/Deviating_Percolator#Interpreting_Specifics
13:11:46 -!- wareya has quit (Read error: Connection reset by peer).
13:12:23 -!- wareya has joined.
13:13:23 <ajf> I just made a very detailed thing on how to interpret my language
13:13:28 <ajf> Because Lymia was confused n shit
13:13:51 -!- Cheery has joined.
13:14:08 <wareya> ajf you should fix boat
13:14:17 <ajf> boat sucks
13:14:26 <wareya> we have the technology
13:14:40 <ajf> http://esoteric.voxelperfect.net/wiki/Deviating_Percolator#Interpreting_Specifics
13:14:56 <ajf> you just took c
13:14:57 <wareya> imagine a subset of C that is below even assembly in some manners but above C in others
13:15:00 <ajf> changed the syntax a little
13:15:03 <ajf> and made it 2d
13:15:13 <wareya> nigger my langauge does not even have TYPES
13:15:24 <ajf> cool story bro
13:15:35 <wareya> it is literally the lowest you can get while having a sane structured language
13:15:37 <ajf> also did you write a compiler and/or interpreter yet
13:15:52 <wareya> it's built off the concepts that went into C
13:15:54 <ajf> python? perl? C#?
13:16:16 <ajf> no I mean what language did you write the interperter in
13:16:41 <wareya> you didn't even ask that before that
13:17:18 <ajf> also I made a devperc interactive mode in devperc
13:17:27 <ajf> because uh
13:17:38 <ajf> you can redefine what a letter represents
13:17:42 <ajf> so you can take input
13:17:53 <ajf> ABCDEFGHIJKLMNOPQRSTUVWXYZ
13:18:08 <ajf> and you get a valid result.
13:18:18 <wareya> at the very minimum, bout should have
13:19:00 <wareya> >both direct and indirect memory addressing (hard values and pointers)
13:19:23 <wareya> >SOME way to call functions that doesn't dick out in 2d
13:19:24 <ajf> too complex
13:19:27 <ajf> your language sucks
13:19:38 <ajf> more minimal
13:19:44 <ajf> not quite brainfuck but
13:19:47 <ajf> not C either
13:19:55 <wareya> >no blocking of if statements
13:19:56 -!- MSleep has changed nick to MDude.
13:19:57 <ajf> ooh I know
13:20:01 <wareya> >only operators are the logic gates
13:20:01 <ajf> something like
13:20:12 <ajf> ^ | & etc?
13:20:15 <wareya> >if conditions with one following statement
13:20:27 <wareya> >no functions because I jsut added goto
13:20:31 <ajf> oh god I just has a stupid idea
13:20:40 <ajf> it's a boat
13:20:45 <wareya> nigger my language has NEGATIVE SIZED VARIABLE ALLOCATION
13:20:48 <ajf> you need to give it a bearing in distance
13:20:56 <ajf> *and distance
13:21:13 <ajf> go 330 degrees 2 chars
13:21:33 <wareya> that's gay because trig
13:21:43 <ajf> trig is easy
13:21:50 <wareya> integer euclidean plane
13:21:59 <ajf> OK instead do
13:22:32 <wareya> I'm going to sleep woon
13:22:36 <ajf> North, north-east, west, south-west
13:23:12 <wareya> moreso than 2d + expression nesting
13:23:33 <ajf> does boat wrap?
13:23:52 <wareya> it wraps to the adjecant line
13:24:02 <ajf> Does it have hats and nine classes?
13:24:15 <wareya> Nope, but it has ten classes and party gibs.
13:24:42 <ajf> My language only has one type
13:24:47 <ajf> 8-bit integer
13:24:51 <wareya> my language doesn't knwo what a type is
13:25:00 <wareya> everything is an integer with arbitrary length
13:25:11 <ajf> everything is a binary blob
13:26:29 <wareya> the best thing about my language is how you can have negative-sized variables
13:26:40 <ajf> how the fuck does that work
13:27:48 <Zwaarddijk> does sound like you're either being nonsensical or busing terminology
13:28:06 <wareya> if the memory from 0x0 looks like
13:28:31 <wareya> and you allocate a -2 byte sized variable at 0x2
13:28:45 <ajf> Thought so.
13:29:02 <variable> wareya: that sounds interesting
13:29:26 <Zwaarddijk> wareya: wht use does a -2 byte sized variable have?
13:29:44 <ajf> this is true
13:29:51 <ajf> my language is all about abuse
13:29:55 <wareya> There are negative sized arrays that work the same way
13:29:56 <ajf> a program can rewrite itself
13:33:24 <ajf> http://esoteric.voxelperfect.net/wiki/Deviating_Percolator#Executing_arbitrary_code
13:48:01 <ajf> it's hard to write 99 bottles of beer in devperc
13:48:11 <ajf> possible, but hard
13:58:32 <Sgeo> I have what looks like spam in my drafts
13:58:47 <ajf> spam attacks on esolang
14:28:58 <ajf> spambots keep coming
14:30:23 <Phantom_Hoover> We have 2 admins and both of them haven't been available.
14:30:39 <ajf> hint for quickly restoring page
14:30:43 <ajf> go on history
14:30:46 <ajf> click old revision
14:30:48 <ajf> click edit
14:30:50 <ajf> click save
14:31:05 <ajf> Editing an old revision replaces the current one
14:36:55 <ajf> SOMEBODY DISABLE NON-AUTO-CONFIRMED EDITS
14:53:34 <Phantom_Hoover> OK I have discovered the Most Ridiculous Time Signature.
14:55:11 <ajf> And what is the most ridiculous time signature?
15:16:20 -!- Slereah has quit.
15:31:42 -!- Slereah has joined.
16:07:29 -!- pikhq_ has joined.
16:07:56 -!- pikhq has quit (Ping timeout: 276 seconds).
16:26:35 -!- pizearke has quit (Quit: Leaving.).
16:33:48 -!- Mannerisky has quit (Ping timeout: 260 seconds).
16:50:32 -!- monqy has joined.
17:17:03 -!- pikhq has joined.
17:17:29 -!- pikhq_ has quit (Ping timeout: 276 seconds).
17:35:12 -!- augur has quit (Remote host closed the connection).
17:47:56 -!- pikhq_ has joined.
17:47:59 -!- pikhq has quit (Ping timeout: 240 seconds).
17:57:47 -!- MigoMipo has joined.
18:18:09 -!- raj has joined.
18:20:06 -!- augur has joined.
18:22:18 -!- raj has left.
19:02:29 -!- pikhq_ has quit (Ping timeout: 240 seconds).
19:02:31 -!- pikhq has joined.
19:08:47 <Vorpal> Sporadic keyboard lag under linux, as an effect of running windows update in a VM. Fuck all desktop OS. A RTOS would NEVER had done that to me.
19:09:54 <Phantom_Hoover> In other news, I have somehow gotten involved in yet another of RationalWiki's perennial dramas.
19:10:13 <Phantom_Hoover> Dunno why, I see nothing there worth fighting for any more.
19:10:33 <Vorpal> Phantom_Hoover, just leave then?
19:11:08 <Vorpal> Phantom_Hoover, perhaps you just like arguing for the sake of arguing?
19:11:28 <Vorpal> okay that was weird.... nwn crashed while saving. On loading that save, it seems okay except I gained a 46 levels, and I got multiple feats that my class can't even have. Lucky I have the habit of saving to a new file every time instead of overwriting.
19:12:28 <Vorpal> btw, I don't know what it says about minecraft, that nwn is perfectly playable on this computer on mid-graphics settings, while minecraft lags badly unless on tiny
19:12:50 <olsner> isn't nwn like 10 years old?
19:13:16 <Vorpal> olsner, anyway it has way more flashy effects than minecraft
19:13:30 <Vorpal> anyway: fuck intel graphics
19:26:36 -!- ais523 has joined.
19:28:26 -!- augur has quit (Ping timeout: 240 seconds).
19:29:44 <ajf> a challenge to all of you
19:29:53 <ajf> compile this language. It's impossible.
19:29:55 <ajf> http://www.esolangs.org/wiki/Deviating_Percolator
19:34:38 <monqy> I'm tempted to try
19:34:58 -!- Ycros has quit (Ping timeout: 264 seconds).
19:35:21 -!- Ycros has joined.
19:39:23 * Sgeo wants to make a language where writing a language interpreter means you've also written a compiler
19:39:41 <Sgeo> I think I just distorted a previous, more realistic idea of mine
19:40:54 <pikhq> Vorpal: Well, the -rt tree is slowly but surely getting merged.
19:41:05 <Sgeo> cheater93, I don't remember exactly
19:41:05 <pikhq> Vorpal: So, eventually Linux *will be* a RTOS.
19:41:36 <ais523> gah these spambots are persistent
19:41:47 <Sgeo> It involed me writing a self-hosting language, then hiding a lot of the details in a Trusting-Trust way
19:41:48 <monqy> are they still inane
19:42:06 <Phantom_Hoover> * Sgeo wants to make a language where writing a language interpreter means you've also written a compiler
19:42:23 <cheater93> ais523, make people give you their stackoverflow login name before they log in.
19:42:26 <Vorpal> <pikhq> Vorpal: Well, the -rt tree is slowly but surely getting merged. <-- uh?
19:42:33 <Vorpal> pikhq, will it help for intel graphics?
19:42:39 <Vorpal> oh wait you mean real time
19:42:52 -!- cheater93 has quit (Quit: Leaving).
19:43:03 <Vorpal> pikhq, and yes that wounds good. But will it be hard realtime=
19:43:49 <monqy> "Real brain power on display. Thnaks for that answer!" words of wisdom
19:44:15 <ais523> are the spelling errors consistent? or does the spambot do random typos to prevent pattern matching?
19:45:32 <pikhq> Pretty sure it's soft realtime.
19:46:16 <pikhq> The main thing it does is make the kernel always preëmptible.
19:47:01 <monqy> none of these spam messages look consistent :(
19:47:06 <Vorpal> pikhq, right, so not really what I want
19:47:18 <monqy> are any of them duplicates at all
19:47:24 <Vorpal> pikhq, keyboard input not lagging = hard realtime requirement to me
19:47:30 <ais523> they used to have consistently one-word edit summaries that mixed lowercase and capitals
19:47:37 <ais523> but they've even deviated from that pattern now
19:47:43 <Vorpal> however that implies X11 being hard realtime
19:47:56 <pikhq> Vorpal: Actually, no, that's definitely soft realtime.
19:48:18 <monqy> deleting sections to thank and praise everyone inanely is pretty nifty
19:48:20 <monqy> but I don't see the point
19:48:23 <pikhq> Vorpal: Missing a deadline is not a complete and utter failure, it's a degradation in system usefulness.
19:48:29 <Vorpal> pikhq, well, depends on the system. If I say a keystrike must show up within n ms on the screen from me hitting the key
19:48:33 <Vorpal> then it would be hard realtime
19:48:48 <monqy> these misspellings are brilliant too
19:49:06 <pikhq> Also, linux-rt makes it so that *interactivity* latencies are straight-up going to happen, as far as I can tell.
19:49:23 <pikhq> Humans suck at noticing latency below something like 20-100ms.
19:49:29 <Vorpal> pikhq, it could be if the missed deadline meant that the nuclear reactor controlling app didn't get the keystroke :P
19:50:02 <pikhq> Well, if you're doing that you are probably wanting hard real-time guarantees down to the clock cycle.
19:50:54 <Vorpal> pikhq, that is hard to get without dropping superscalarity, caches, anything more than the most basic pipeline, and so on
19:51:36 <pikhq> Hard realtime is just something you're not going to get on commodity hardware.
19:51:53 <pikhq> Unless, of course, you design such that you ignore pretty much all of it.
19:51:59 <pikhq> Say, making the entire program fit in cache. :P
19:53:23 <Vorpal> pikhq, or you can calculate on worst case. Like. pipeline stall on every instruction, cache miss all the time
19:59:46 <zzo38> If you think 13/8 is most ridiculous time signature, then also try writing a music with 13/7 time signature to see what happen
20:00:12 <Vorpal> why would I think 13/8 is the most ridiculous
20:00:15 -!- variable has quit (Quit: smacking starcoder).
20:00:21 <Vorpal> surely 17824/12384 is way worse for example
20:00:43 <Vorpal> (is that even possible?)
20:00:52 -!- variable has joined.
20:01:31 <pikhq> I'm afraid that time signatures have to be rational.
20:01:32 -!- calamari has joined.
20:03:05 <zzo38> As far as I know also the denominator must be a power of two (so 13/7 isn't correct)
20:03:25 <pikhq> zzo38: No, no reason for it to be a power of two.
20:06:52 <zzo38> But as far as I know it always is. Although, you could make it that it isn't
20:07:35 -!- cheater666 has joined.
20:08:12 -!- elliott has quit (Read error: Connection reset by peer).
20:15:25 -!- elliott has joined.
20:15:41 <elliott> ais523: you know those really lazy spams you mentioned which just had a "lol you've won" title and a bunch of form fields as the body?
20:15:51 <elliott> I've just received the laziest yet
20:19:18 <ais523> I know viral scams have been spotted, which aim at people who are currently being scammed and persuade them to send the money somewhere else
20:19:21 <ais523> which is kind-of clever, actually
20:20:10 <elliott> ais523: Subject: CLAIM OF £1,000,000.00 IN THE BT PROMO
20:20:35 <ais523> presumably that's just checking for the presence of a reply
20:22:11 <Vorpal> elliott, any HTML body?
20:22:32 <elliott> Vorpal: If there's an HTML body, that's the HTML body.
20:26:11 <cheater666> elliott, obviously you're supposed to reply with your names and nationality
20:26:16 <cheater666> there's no thinking involved, just do it
20:30:38 -!- elliott has quit (Remote host closed the connection).
20:37:10 -!- calamari has quit (Quit: Leaving).
20:43:42 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
20:53:38 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:23:27 <zzo38> Just now, I made up a program in QBASIC for adding up the total of a flight log book (at someone's request because they were taking too long the other way and never knew if they did it correctly or not)
21:29:43 -!- ajf has changed nick to ajf|offline.
21:31:39 <Phantom_Hoover> ajf|offline, you know, there's a reason IRC has a quit command.
21:37:28 <lambdabot> Not in scope: `why'Not in scope: `no'Not in scope: `python'
21:41:37 <zzo38> Lymia: It is in QBASIC
21:42:20 <Phantom_Hoover> Finland has mandatory military service and is neutral.
21:42:46 <olsner> "neutral" just means that everyone is a potential enemy and you have no allies
21:47:14 <quintopia> can someone tell me why egobot sent me a ridiculously complicated ctcp message the other day?
22:07:05 -!- zzo38 has quit (Remote host closed the connection).
22:12:35 <pikhq> Man, Tup has so very many killer features.
22:12:42 * pikhq ♥ its .gitignore support.
22:26:31 -!- Phantom_Hoover has left ("Leaving").
22:31:16 -!- Gregor has changed nick to Yahweasel.
22:31:45 -!- Yahweasel has changed nick to Guest59242.
22:38:10 -!- oerjan has joined.
22:38:17 -!- Cheery has quit (Quit: Lost terminal).
22:44:58 <oerjan> RIP EgoBot and HackEgo
22:49:21 <oerjan> <Phantom_Hoover> We have 2 admins and both of them haven't been available.
22:49:30 <oerjan> actually i think there are 3
22:49:54 <oerjan> except cpressey may not realize he is one
22:50:27 <oerjan> (and i'm not even including graue)
22:51:31 -!- iconmaster has quit (Ping timeout: 252 seconds).
23:07:25 -!- ais523 has quit (Remote host closed the connection).
23:20:54 <oerjan> <olsner> "neutral" just means that everyone is a potential enemy and you have no allies
23:21:20 <oerjan> actually in finland's case, i think it meant you wish discourage a certain "friend" from getting too "friendly"
23:22:01 <oerjan> but that was back in the cold war, it makes less sense now as an EU member
23:22:49 <oerjan> 14:38:02 <Phantom_Hoover> Finland has mandatory military service and is neutral.
23:22:53 <oerjan> 14:38:09 <Phantom_Hoover> That makes... very little sense.
23:23:40 <oerjan> <quintopia> can someone tell me why egobot sent me a ridiculously complicated ctcp message the other day?
23:24:29 <oerjan> Lymia made it. and then someone complained to freenode staff, who demanded Gregor take the bots down until the "loophole" was closed
23:25:13 <oerjan> (it was a slight misspelling of something that could cause some rare broken clients to crash, afaik)
23:25:16 -!- augur has joined.
23:28:36 -!- iconmaster has joined.
23:43:19 <monqy> wasn't that fixed ages ago?
23:44:23 * oerjan wouldn't know but guesses so
23:45:43 <oerjan> i guess they don't want to disallow old clients
23:55:09 -!- FireFly has quit (Quit: swatted to death).
23:55:17 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:00:58 <Sgeo> I'm in love with Judas, Judas
00:01:38 <Sgeo> (Actually, the character's fairly boring, IMO. Portrayals of him in other fiction, though, tends not to be)
00:27:31 -!- Guest59242 has changed nick to Gregor.
00:29:28 <Lymia> http://www.xamuel.com/formula.php?program=fibonacci
00:29:47 <Lymia> Somebody make a Brainfuck interpreter in this.
00:48:25 -!- augur has quit (Remote host closed the connection).
01:05:47 -!- augur has joined.
01:08:23 -!- azaq23 has quit (Quit: Leaving.).
01:27:17 -!- pikhq_ has joined.
01:27:18 -!- pikhq has quit (Ping timeout: 258 seconds).
02:22:23 -!- iconmaster has quit (Quit: Pardon me, but I have to go die in NetHack again.).
03:03:53 -!- elliott has joined.
03:14:23 -!- MDude has changed nick to MSleep.
03:17:36 <Lymia> http://www.xamuel.com/images/piequals4.png < Anybody mathy enough to say what the actual final result of this process would be?
03:18:50 <oerjan> um the length is always 4, and the set in a sense converges to a circle. it's just not the right sense of convergence to preserve length.
03:25:27 <elliott> jotesrlgeritg9jdkjjruvgchvcn uizhvd<vfjh,b cvm.,kxdgvnbxjimdv chm gsehjk kbvjbk cvxc jvx jv fgjm cvmcnkdn gc nbx jhds kjjkjherqkm hd saikgfkdlv gmkx jd fdgks gfjd ksbsvew bgk rc bncc xjzp
03:27:43 <Sgeo> Smalltalk has weaknesses?
03:28:02 <Sgeo> I fail to see how things like dynamic typing and single-dispatch are...
03:28:04 * pikhq_ finally bothered reading in-depth about git...
03:28:12 <pikhq_> And my reaction is something along the lines of "That's it?"
03:28:14 <Sgeo> You know wat, I should probably not comment on articles before I read them
03:29:56 <coppro> it seems so obvious, doesn't it?
03:31:21 <coppro> Really, the brilliant thing is the staging index
03:31:43 <coppro> the rest is pretty mundane
03:31:49 <pikhq_> And meanwhile I *still* don't understand any of the design choices in SVN. :P
03:32:07 <coppro> (and far superior to, say, Perforce's model of dealing with multiple edits at once)
03:33:19 <coppro> the ability to branch as needed is nice too, but that's basically a consequence of being distributed and not a major design choice
03:37:20 -!- hagb4rd has joined.
03:45:45 <oerjan> at least we'd know what to blame, then
03:49:05 -!- hagb4rd has quit (Quit: hagb4rd).
03:49:25 -!- hagb4rd has joined.
03:53:48 <elliott> im going to update ubuntu for the lulz
03:55:08 <oerjan> IM IN U BUNTU UPDATING UR LULZ
03:57:11 <elliott> oerjan can i have a lot of caffeine
04:03:34 -!- Gregor has changed nick to Yahweasel.
04:03:54 <elliott> yah, uh, please stop being a weasel
04:04:13 -!- Yahweasel has changed nick to Gregor.
04:04:28 <oerjan> it would be ironic if the first person to become _seriously_ insulted by that nick was Plazma
04:05:10 <Sgeo> In an online game once (before I became atheist), someone logged on with the nick Adonai. He was on the opposite team. I was distressed enough by this that I left.
04:05:25 <elliott> I really need to ignore Sgeo.
04:05:34 <elliott> Can someone please type an asterisk, an exclamation mark, and an at sign.
04:05:53 <oerjan> hm i hadn't absorbed that Sgeo was jewish
04:07:17 -!- pikhq_ has quit (Ping timeout: 240 seconds).
04:07:18 -!- pikhq has joined.
04:18:20 <oerjan> the cursing of the keyboard challenged
04:18:35 -!- lambdabot has quit (Ping timeout: 252 seconds).
05:02:38 <elliott> "A lot of the bloom-forming algae are incredibly slutty"
05:20:22 -!- pikhq_ has joined.
05:22:47 -!- pikhq has quit (Ping timeout: 240 seconds).
05:40:23 -!- TeruFSX has quit (Ping timeout: 264 seconds).
05:46:18 <elliott> ubuntu upgrade update the ubuntu logo next to "Applications" is now a broken image sign
05:46:51 <elliott> also, i appear to have lost my flash plugin.
05:48:14 -!- pikhq has joined.
05:48:19 -!- pikhq_ has quit (Ping timeout: 260 seconds).
05:51:18 <elliott> pikhq have you everugpgraded an operating systseme...
05:52:48 <pikhq> elliott: Sounds like Ubuntu sucks.
05:53:07 <elliott> I'm pretty sure it's just because everything's changed, wrt. GNOME and Unity.
05:53:14 <elliott> Oh wow, my volume control icon just changed.
05:53:23 <elliott> Why does it even let you be in graphical mode while it does this.
05:53:39 <elliott> It is just a recipe for lol.
05:53:58 <elliott> HI DEBCONF OMG WHAT DO YOU WANT TO KNOW~
05:54:04 <pikhq> ... It's replacing GNOME 2 with GNOME 3 & Unity *on the fly*?
05:54:17 <elliott> I am not even sure if it is GNOME three?
05:54:27 <elliott> It might be: GNOME three but with gnome-panel and metacity/compiz.
05:54:39 <elliott> But yes, it is doing things on the proverbial fly.
05:54:40 <pikhq> If it's using GTK 3, it's GNOME 3.
05:54:58 <elliott> Anyway, it's not like Debian wouldn't let you do this either, if you ran the updater.
05:54:58 <pikhq> And yes, there's a GTK 3 now.
05:55:06 <elliott> It's just that Ubuntu does it all the time. :p
05:55:15 <elliott> Sweet, it's updating bcc, the sixteen-bit ELKS compiler.
05:55:23 <elliott> I'm so glad that has a new version.
05:55:24 <pikhq> It's that Debian does breaking changes rarely outside of testing.
05:55:39 <elliott> pikhq: Stable GNOME two -> stable GNOME three.
05:55:39 <pikhq> Erm, testing/unstable
05:55:42 <elliott> This is a distribution upgrade, dude.
05:55:59 <pikhq> elliott: Yes, I was referring to that.
05:56:08 <pikhq> Aaand Debian does extensive testing of upgrades.
05:56:15 <elliott> I'm not sure how this is "breaking" anything, though.
05:56:17 <pikhq> And tells you "fucking stop X".
05:56:25 <elliott> It's just that the location of the Ubuntu logo for the panel has moved and --
05:56:29 <elliott> Look at that, I just got the updated one.
05:56:30 <pikhq> (apt doesn't, the documentation does)
05:56:58 <elliott> I think I might be running Firefox Three with Firefox Four files now.
05:57:02 <pikhq> Shame almost nothing does atomic updates. But oh well.
05:57:17 <elliott> coppro: It isn't finished yet. And why the caps.
05:57:40 <coppro> elliott: because for the love of god
05:57:56 <pikhq> coppro: apt is currently running.
05:57:59 <pikhq> Hence the weird shit.
05:58:10 <elliott> This is science, you don't appreciate science, go fuck yourself. I will now refuse to reboot for the next ten minutes.
05:58:40 <elliott> Aww it hasn't updated Firefox yet it seems, just its icon.
05:58:46 <elliott> Wanna get the two versions running simultaneously.
05:59:06 <elliott> "Replace the customised configuration file /etc/grub.d/[thirty]_os-prober'?"
05:59:08 <elliott> Difference between the files:
06:00:57 <elliott> aszxrolp[;lotrdjiotresjiopknllllllllllllllllllllllllllllllllllll jgvyitcyvhjb nkyutfibugotrbyuogtgyu
06:01:01 <elliott> I AM ABUSING MY KEYBOARD FOR SCIENCE
06:01:22 <elliott> You went away without asking me anything :(
06:02:19 <pikhq> Oh, don't worry about it.
06:02:35 <pikhq> It was just wondering whether you wanted to turn on the automated kitten-kicker.
06:02:40 <pikhq> You answered "yes".
06:02:56 <elliott> Well, that's how all Apple laptops work.
06:03:19 <elliott> They've engineered the kittens to be completely flat, and to have no audial way to express their pain.
06:04:46 -!- Cheery has joined.
06:04:53 <pikhq> Damned efficient power source, though.
06:05:28 <Sgeo> I'd <NSFW joke here>
06:06:17 <Sgeo> ....that came out worse than I intended. Despite not actually saying anything.
06:06:44 <elliott> upgrades always feel so nasty, compared to clean installs; i'm going to blame this on bad OS design, like everything
06:07:35 <elliott> in an internal chrome file
06:07:41 <elliott> because the file no longer exists
06:07:46 <elliott> ok this is officially too crazy
06:08:01 <elliott> (this made it unable to load a page)
06:08:48 <elliott> good bye obsolete packages
06:09:17 <Cheery> I sense smell of despair
06:09:31 <elliott> there's no possible way this update will work without problems
06:09:32 <Cheery> oh btw I changed the name of my file format
06:09:37 <Cheery> they're not cockfiles anymore
06:09:54 <Cheery> I don't tell what do those stand for.
06:10:14 <elliott> maybe it's for Themostboringnameever
06:10:25 -!- pikhq_ has joined.
06:10:36 <elliott> or wait it's for Thisfileisacockfile
06:11:45 <Cheery> it's free comic book day tomorrow, except that no-one holds it here in my country
06:12:41 -!- zzo38 has joined.
06:12:48 -!- pikhq has quit (Ping timeout: 240 seconds).
06:12:59 <zzo38> Yes, it is [not] true!
06:13:12 <fizzie> The .t extension is already used by, among others, terse -- the bestest way to *leverage* (8086-asm) programmer *productivity* evar, now for only $49.00 -- http://www.terse.com/
06:13:23 -!- elliott_ has joined.
06:13:30 -!- elliott has quit (Read error: Connection reset by peer).
06:13:38 <monqy> what the fuck did you do
06:13:52 <Cheery> fizzie: I think I could go far as occupy .c -extensions.
06:13:58 <fizzie> You broke it; now you buy a new computer.
06:14:05 <pikhq_> Cheery: You could start it.
06:14:13 <pikhq_> Cheery: Surely they have comic book stores in Finland.
06:14:22 <elliott_> fizzie: Oh man, terseEXCLAMATION MARK
06:14:28 <elliott_> grub should be written in terse.
06:14:31 <elliott_> then it would fit into the boot sector.
06:14:52 <monqy> 100% Satisfied Customer Base!
06:15:04 <zzo38> No it shouldn't be written in terse - because there is no Free compiler of terse (as far as I know).
06:15:39 <zzo38> (But if there was, it wouldn't matter much if they did use their version because what is important is it is being compatible.)
06:15:48 <elliott_> oerjan: make zzo38 stop promoting vicious lies.
06:16:15 <zzo38> elliott_: Do you think it is lies? What one is lies?
06:16:23 <elliott_> everyone is free in the new world of terse
06:17:32 <elliott_> guess I'll burn an Ubuntu install CD later and try again from scratch?
06:17:36 <Cheery> terse is actually a good one.
06:18:01 <elliott_> I'm going to assume this is some new definition of "good" of which I was previously unaware.
06:18:53 <Cheery> elliott_: it looks nice.
06:19:04 <elliott_> fizzie: Can I borrow your palms?
06:19:11 <elliott_> I don't think I have enough to place on my face. :/
06:19:21 <fizzie> The nicest things ever, yes: eax - 10 ? =={ eax = 1; },{ eax = 0; }; dx = 1000; { dx-; }<>;
06:19:26 <fizzie> See, you can read that without the manual.
06:21:47 -!- augur has quit (Remote host closed the connection).
06:21:51 <Cheery> but it still has couple nice properties for the hand-written assembly language.
06:21:51 <elliott_> Seriously how did GRUB just brick itself.
06:22:26 <Cheery> okay. now this just sucks. :)
06:22:55 <Cheery> so this guy sells not an assembler but something like.. assembler that writes out assembly.
06:23:14 <Cheery> " generates .ASM files as its output. I did this to assure you compatibility with whatever development tools you may be using. You continue to use the same operand syntax you are already familiar with.
06:23:51 <Cheery> maybe it looks good to me because I think of it as an assembly notation
06:24:34 <elliott_> maybe i'll install Windows Me on this here macbook instead of fixing ubuntu
06:24:35 <fizzie> I can't find the OPTOMIZED trademark from the USPTO search thingie. :/
06:24:37 <monqy> apparently the word OPTOMIZED is a trademark of the terse dude
06:24:51 <monqy> I am so slow today
06:24:56 <elliott_> fizzie: He OPTOMIZED the trademarking process.
06:25:04 <elliott_> fizzie: Instead of actually trademarking it, he just says it's trademarked, so nobody dares to use it.
06:25:05 <Cheery> except that kind of notation will NOT work well with tri-arity instruction sets that are more common than x86-style bi-arity ones.
06:25:11 <monqy> http://www.terse.com/pics/topyello.gif
06:25:32 <elliott_> I WANT MY UNTBUNU BACK ;______;
06:25:41 <monqy> http://www.terse.com/notprog.htm
06:25:57 <Cheery> lose weight with torso.
06:25:59 <elliott_> maybe this would be a great opportunity to back up my shit and send this laptop for repairs...
06:26:15 <elliott_> guys let's put the optomized logo on all our sites ;D
06:26:25 <elliott_> i'm gonna make so much software
06:26:33 <zzo38> It is true, it is not bad; even it could have macros and (switchable) optimization (I don't know if it has), but problem is proprietary software with no Free compatible software. Even then, I would use it only for software specifically for x86 computers (such as, MBR programs). Application program I would use C or whatever
06:28:08 <monqy> http://www.terse.com/neildeal.htm
06:28:39 <fizzie> "If your favorite software vendor isn't using TERSE and displaying the TOP logo on their products, send them an E-Mail and tell them you deserve the quality that TERSE can add to their products." -- worth a Ubuntu/Mozilla/any-other-large-project brainstorm/wishlist/whatever item?
06:28:52 <Cheery> so much for a parser and substitutor ^^
06:29:00 <Cheery> damn he has a business idea to say the least.
06:29:54 <Cheery> I could also write 200 lines of code and sell it 50 bucks a license
06:29:54 <fizzie> http://getsatisfaction.com/mojang/ "PLEASE USE TERSE, WE DESERVE IT"
06:30:40 <Cheery> or microsoft style. If I had enough money I could hire 200 coders to write 200 lines of useful code and sell it for 300€ per license.
06:32:10 <elliott_> time to make a bullshit openid
06:33:11 <elliott_> idontwanttogiveyouanemail@ivaluemyprivacy.nothankyou
06:33:22 <elliott_> http://getsatisfaction.com/mojang/topics/minecraft_is_not_written_in_terse
06:36:25 -!- sebbu has quit (Ping timeout: 246 seconds).
06:40:08 <elliott_> UBUNTU COME BACK TO ME THIS IS SO PAINFUL.
06:42:48 -!- FireFly has joined.
06:43:01 -!- FireFly has quit (Remote host closed the connection).
06:48:08 -!- augur has joined.
06:51:34 <fizzie> elliott_: Hey, your problem got a reply from God. That's: impressive.
06:51:50 <elliott_> Oh, I thought you meant Notch.
06:52:04 <elliott_> This is... much less interesting than that would have been.
06:52:37 <elliott_> fizzie: You should click that "I have this problem" button, I might add.
06:54:37 * oerjan tests and finds out that fungot _does_ censor DCC output
06:54:37 <fungot> oerjan: lucky bastard :) but i didn't give the impression that you want to
06:54:53 <elliott_> it censors lots of things, including love
06:55:33 -!- NihilistDandy has joined.
06:56:05 -!- monqy has quit (Quit: hello).
07:01:26 -!- lambdabot has joined.
07:01:31 <elliott_> ^ul (<CTCP>DCC SEND startkeylogger 0 0 0 0<CTCP>)S
07:01:31 <fungot> <CTCP>DCC SEND startkeylogger 0 0 0 0<CTCP>
07:02:22 <pikhq_> Is it bad that my attitude towards tests ends up being "Hmm, test coming up. Better learn the subject matter."?
07:02:23 <oerjan> elliott_: hey i was _trying_ to give fizzie time to fix it...
07:02:39 <elliott_> oerjan: I apologise for my independent testing.
07:03:00 <fizzie> I haven't seen a startkeylogger nonsense in years.
07:03:40 <fizzie> I think I used to filter all control characters at some point, though I've forgotten if it was just the ^bf . command or something more generic.
07:03:42 <oerjan> @so whistles innocently
07:03:45 <pikhq_> fizzie: That was 2006. You are getting nostalgic about 5 years ago.
07:04:07 <elliott_> fizzie: Well, you'd better take fungot down until it's fixed...
07:04:07 <fungot> elliott_: ha ha starship troopers and i think orange, earlier, but i
07:04:09 <fizzie> 5 years is half a decade.
07:04:26 <pikhq_> And a relatively short span of time.
07:04:58 <pikhq_> Of course, you're talking to a guy who considers 1990 "hardly any time ago". ... And I was *born* in 1990.
07:05:45 <fizzie> fungot: Are you going to do the responsible thing and quit or what?
07:05:45 <fungot> fizzie: " willfully providing inaccurate or false information. never mind. it needs a c library for implementing history editing etc mini-icon " toolbar" for my befunge variant... good? i proceeded to write a macro for defining abbreviations.
07:06:07 <elliott_> fizzie: Shhh, Plazma is watching.
07:06:42 -!- fungot has quit (Quit: OKAY OKAY you don't have to get all BENT OUT OF SHAPE).
07:09:06 <oerjan> so exactly what is the necessary part of the hack, does it have to be \1DCC SEND startkeylogger + some numbers exactly?
07:09:31 <oerjan> i mean i _still_ think it would be sad to disallow \1ACTION :(
07:10:14 <pikhq_> oerjan: It's just the string "startkeylogger" over DCC, I think.
07:10:20 <elliott_> It's DCC SEND [long enough string].
07:10:25 <elliott_> I would just refuse to say anything with "\[one]DCC" in it.
07:10:34 -!- cheater666 has quit (Ping timeout: 252 seconds).
07:10:41 <pikhq_> And the "hack" was that Norton would detect it as a "hacking" attempt, and then drop the IRC connection.
07:10:44 <elliott_> Disallowing CTCPs entirely is throwing the baby out with the bathwater, except that the bathwater evaporated five fucking years ago jesus this is not a problem any more.
07:11:32 <oerjan> pikhq_: oh heh it's not _actually_ a security flaw, but an excessive _prevention_ of a security flaw? :D
07:12:04 <elliott_> If you have a five year old version of Norton that you have not updated,
07:12:08 <fizzie> ISTR that Norton's silly firewall just looked for the word; it was possible to just say it on-channel in a regular way and have people drop.
07:12:14 <elliott_> Then a specific string that is seen maybe once every three w-
07:12:19 <elliott_> fizzie: It's something to do with the string length, apparently.
07:12:28 <elliott_> Note: This is Urban Dictionary-sourced information, which is I know ridiculous.
07:12:31 <fizzie> And there's another malformed-string-request thing that affects some routers; http://nullroute.eu.org/~grawity/startkeylogger.html
07:12:38 <elliott_> -w, not w, years, once every three years,
07:12:43 <elliott_> THEN your IRC connection could get dropped.
07:13:22 <elliott_> So it's two separate bug scombined.
07:13:52 <fizzie> By our bugs combined, I am, Captain Startkeylogger.
07:14:24 <fizzie> Makes more sense that way, admittedly.
07:14:40 <elliott_> startkeylogger startkeylogger startkeylogger
07:14:45 <pikhq_> Huh, didn't think a non-American would really know of that.
07:15:00 <elliott_> OK, \[one]DCC SEND = zero; startkeylogger = one.
07:15:15 <fizzie> They showed Captain Planet (maybe even dubbed?) in Finland too when I was young.
07:15:36 <pikhq_> Just a bit surprised is all.
07:15:47 <pikhq_> Figured it was too shitty to export. :P
07:15:49 <elliott_> It's internet-famous, everyone knows it.
07:16:01 <pikhq_> Oh, true, it definitely did break out into the memosphere.
07:18:13 <elliott_> jpofboijkijooijfoijogjoggjoigjeroigerigksngjkngejkrsngkdflgkmsefndkflnsngkjnfkvjrngrjkbkfverbkjef letters are pretty; also, i want my ubuntu back
07:18:37 <olsner> I haven't heard of it, what's captain planet and why does it make "captain startkeylogger" funny?
07:18:49 <fizzie> Heh, Sting was one of the voice actors in it; didn't know that.
07:18:49 <fizzie> Anyhow, our "channel 3" (the first "commercial" channel) showed it in 1991, according to fi-Wikipedia; and it doesn't seem they bothered to dub it.
07:20:00 <fizzie> olsner: Captain Planet's slogan -- when he appears after the Planeteers combine their rings -- "what kind of stupid power is Heart anyway?" -- is "by your powers combined, I am Captain Planet".
07:20:19 <fizzie> olsner: And it doesn't exactly make it funny, just free-associating from elliott's "two bugs combined" comment.
07:20:33 <elliott_> I think that Captain Planet should be the written in Terse language for good.
07:21:20 <olsner> so Captain Planet is something like the power rangers' combined form?
07:21:38 <pikhq_> Apparently it didn't hit Sweden in olsner's childhood.
07:21:45 <fizzie> http://tvtropes.org/pmwiki/pmwiki.php/Main/CaptainPlanetAndThePlaneteers -- triplicate trope namer and all.
07:21:56 <pikhq_> olsner: If the Power Rangers had no actual abilities.
07:22:16 <pikhq_> Just magic rings which mostly could summon Captain Planet.
07:22:37 -!- cheater666 has joined.
07:23:24 <fizzie> They could do some other stuff with the rings too, each related to their corresponding element. Usually they tried something, failed miserably, then ended up (approximately once/episode) summoning Captain Planet to take care of it.
07:23:37 <fizzie> Somehow this was supposed to teach that we're all responsible for the environment.
07:23:39 <elliott_> Qbiabawibwibiwbeiiueqiebiquebuiqiuqeiqwiewqieqwieqweiqweuiqwuqweiqueiiqeiwqueiqwieqwieiwqeiweiqweqiwwww.
07:23:53 <Sgeo> fizzie, just like Power Rangers! Except Power Rangers had their aesops external to the story
07:24:30 <Sgeo> Erm, and uh, power rangers didn't summon some .. thi... ok, analogy I'm lost. Also, elliott unignored me for some reason.
07:24:47 <pikhq_> Sgeo: The Power Rangers certainly did summon things.
07:25:16 <pikhq_> From Japanese television (no, really, they reused the CG from a Japanese TV show)
07:25:28 <Cheery> I thought power rangers was that one where they summoned a big fallos to fight for them.
07:25:37 <elliott_> Isn't Power Rangers just a super-loose adaption of a Japanese show?
07:25:50 <pikhq_> elliott_: If by "super-loose" you mean "they reused the CG".
07:25:53 <Sgeo> My point was, Power Rangers also did a once-an-episode ... thing
07:26:25 <pikhq_> elliott_: Curiously, the dub of Power Rangers is also fairly popular in Japan.
07:26:40 -!- hagb4rd has quit (Quit: hagb4rd).
07:26:42 <pikhq_> No, but David Hasselhoff is in Germany.
07:27:59 <fizzie> "Once you go tentacle, you stay in the pentacle." --isometric.
07:29:18 <olsner> isometric? wasn't that a hemingway quote?
07:29:47 <fizzie> http://isometric.sixsided.org/strips/you_dont_go_back/ is the particular strip in question.
07:30:15 <elliott_> "That's crap[exclamation mark] Your a priori skycastles will avail us nothing[exclamation mark] More datapoints are called for[exclamation mark] The scientific method my good man[exclamation mark][inverted exclamation mark]9[three][four]" --Ernest Hemingway
07:30:17 <fizzie> "lorum ipsum dolor sic amet but in this case you'll wish you did" always makes me smile.
07:32:36 <elliott_> `UBUNTU YOU BETTER START DOWNLOADING QUICKER. I HAVE HAD IT UP TO HERE WITH YOUR BULL SHIT.
07:32:44 <elliott_> IT IS SHIT THAT COMES FROM A BULL AND IT IS UP TO HERE THAT I HAVE HAD IT WITH.±
07:50:53 -!- zzo38 has quit (Remote host closed the connection).
07:54:57 <elliott_> "One way seems to be to put some muscle behind the company’s native dev tools, like Visual C++. I noticed a brief mention in Somasegar’s e-mail of “WinC++.” It turns out that the new name for Visual C++ is going to be WinC++ — something confirmed by a Microsoft job posting which mentions the “Windows C++ a.k.a. Visual C++ team.”"
07:57:06 <olsner> yeah, there's a reason they didn't call it FailC++!
08:00:23 <oerjan> FailC++ is however the obvious choice for LoseThos
08:03:58 <elliott_> every time I think oerjan has come close to expressing an actual opinion, I realise it's a pune :D
08:11:00 -!- siracusa has quit (Ping timeout: 240 seconds).
08:11:27 <elliott_> Terrence Andrew Davis I ordered a couple of these. Hopefully, I can get LoseThos working with USB (on my PC) for this one device. One device should be easy, especially, if I can control both ends. I already ported my 8051 assembler to LoseThos (on my PC).
08:12:11 -!- siracusa has joined.
08:13:10 <elliott_> [[When I started in 2003, security was big news and I was designing a system with no defence against malware. Since I had no real interest in doing network code myself, I went ahead and said no networking to hush security obsessed paranoid people.
08:13:10 <elliott_> I really don't have any ideas on making a better browser and I think doing a network "stack" (as the kids say) is difficult. I have a feeling there are propriatary Microsoft network protocols involved?
08:13:11 <elliott_> I respect Bush for being a man of his word, if nothing else, and I hope to be a man of my word. You can do networking. By the way, the "constitution" started as "promises" but that spounded gay.]]
08:14:42 <oerjan> gay spounding is all the rage
08:28:08 -!- pikhq has joined.
08:28:09 -!- pikhq_ has quit (Ping timeout: 240 seconds).
08:37:24 <elliott_> fizzie: Forget God, I've got a response from NIVLAC.
08:44:04 -!- cheater_ has joined.
08:54:45 -!- elliott_ has quit (Remote host closed the connection).
09:19:56 <fizzie> In other news, started fungot's tweeting side again, since the IRC side is temporarily silent.
09:19:59 <fizzie> [2011-05-09 10:57:49] Tweeted: About NetHack: into a locked shop. both arboreal and terrestrial, the beautiful warrior-maids of odin who rode through the vorpal blade... (fungot)
10:03:51 -!- elliottjog has joined.
10:03:55 <elliottjog> "Code.tar.gz contains an executable file. For security reasons, Google Mail does not allow you to send this type of file."
10:04:29 <oerjan> elliott is impressive, ircing while jogging
10:05:17 <elliottjog> such is the magic of bashing random keys
10:05:29 <elliottjog> so yeah i'm reinstalling all up in this bitch
10:06:58 -!- elliottjog has quit (Client Quit).
10:21:49 -!- oerjan has quit (Quit: leaving).
10:45:59 -!- elliottjog has joined.
10:46:24 <elliottjog> This Unity thing doesn't seem as bad as the last time I used it.
10:48:24 -!- elliottjog has quit (Client Quit).
11:04:11 -!- elliott has joined.
11:04:27 <elliott> I am, however, not sure I can go so far as to tolerate it.
11:06:05 <elliott> Indeed it is simply too different for my fragile mind right now.
11:06:46 -!- elliott_ has joined.
11:06:46 -!- elliott has quit (Read error: Connection reset by peer).
11:07:09 -!- elliott_ has quit (Remote host closed the connection).
11:07:36 -!- elliott has joined.
11:07:55 <elliott> Ahhhh, good old shitty GNOME.
11:08:45 -!- elliott has quit (Client Quit).
11:08:52 -!- elliott has joined.
11:12:25 <elliott> Starting to agree with Vorpal's policy of avoiding non-LTS relea I DIDN'T EVEN FUCKING CLICK THAT WINDOW WHY ARE YOU FOCUSING IT
11:13:56 <elliott> I am finding it very hard to come up with reasons to not reinstall the previous version.
11:15:28 -!- NihilistDandy has quit (Quit: Linkinus - http://linkinus.com).
11:21:33 <elliott> DEAR GOD WHAT DO YOU THINK CLICK SENSITIVITY IS MEANT TO BE.
11:21:40 <elliott> I CAN LIGHTLY BRUSH ON THIS TOUCHPAD AND YOU THINK IT'S A CLICK.
11:21:47 <elliott> I'M GOING TO INSTALL THE OLD VERSION.
11:44:55 -!- elliott has quit (Ping timeout: 240 seconds).
11:47:46 -!- pikhq_ has joined.
11:47:48 -!- pikhq has quit (Ping timeout: 260 seconds).
12:05:27 -!- ineiros has quit (Ping timeout: 276 seconds).
12:10:48 -!- ais523 has joined.
12:30:35 -!- elliottog has joined.
12:31:02 <elliottog> ais523: friendly tip: natty narwhal is amazingly bad in pretty much every way, both Unity and Gnome
12:31:13 <elliottog> amazingly bad enough that i've just clean-install-downgraded
12:31:34 <ais523> elliottog: thanks; I was being cautious about upgrading because I guessed something like that might happen
12:31:40 <ais523> but a confirmation is good
12:31:56 <ais523> I'm going to wait for the next LTS, and then to use it if it's decent, or change distro if it isn't
12:32:02 <elliottog> it's possibly better if you're not on a laptop -- the touchpad handling was just awful, I could be typing normally and it'd decide I clicked
12:32:14 <elliottog> I have no idea how they managed this feat
12:32:27 <elliottog> and Unity still just feels awkward
12:32:55 -!- pikhq has joined.
12:32:57 <elliottog> ais523: unfortunately, wrt changing distro, now that gnome three's out you get the whole other world of pain known as gnome shell
12:33:11 <elliottog> I /think/ gnome-panel and metacity are still distributed with gnome three though
12:33:12 -!- pikhq_ has quit (Ping timeout: 276 seconds).
12:33:18 <elliottog> so it's possible to avoid that... for now
12:33:49 -!- azaq23 has joined.
12:34:04 <elliottog> dear linux world: between unity, gnome three, and kde four, you have singlehandedly managed to completely redesign the desktop thrice, and each time fail utterly at it. please go back to ripping off Microsoft, it was far more productive
12:35:14 <ais523> KDE 3 is still being maintained
12:35:21 <ais523> not by the KDE people, it was forked
12:35:45 <ais523> I'm trying to work out how nibbles was screwed up so badly, in the meantime
12:35:50 <elliottog> ais523: unfortunately, KDE Three isn't the environment I'm interested in
12:35:56 <elliottog> GNOME Two is; it's always been mediocre, but grahgerghriegherhgierhi all this new shit is terrible
12:35:58 <ais523> I fixed all its major bugs in singleplayer a while back (by sending patches to the maintainers)
12:36:07 <ais523> but lots of bugs seem to have crept back in
12:36:22 <elliottog> I might see if I can keep this installation longer than cpressey did without upgrading :)
12:36:28 <ais523> hmm, what about a gnome 2-like shell running on gnome 3? would that be an option?
12:36:34 <elliottog> he was on a two thousand and six release this year, I think
12:37:02 <elliottog> ais523: Yes, until gnome-panel and metacity bitrot, that's a good option.
12:37:07 <elliottog> ais523: (I mean, an /acceptable/ option.)
12:37:15 <elliottog> ais523: But it can't be long until GTK API changes break it.
12:37:27 <ais523> we'll have to keep porting gnome-panel, then
12:37:28 <elliottog> And they've explicitly said they don't give a shit about maintaining them any more.
12:37:32 <ais523> I can use Compiz rather than Metacity
12:37:52 <elliottog> ais523: I was going to try and maintain gnome-panel/metacity up to bitrot; I guess I still will.
12:37:52 <ais523> in fact, I prefer Compiz, although Metacity is tolerable
12:38:16 <elliottog> Compiz would be nice if it wasn't for all the bugs, and the fact that development-wise it's more focused on wibbly-wobbly than using compositing to do useful things.
12:38:31 <elliottog> I feel this is more relevant than ever, wrt GNOME Three: http://www.jwz.org/doc/cadt.html
12:39:25 <ais523> elliottog: I find the opacity/brightness/saturation contrast control massively useful
12:40:57 <ais523> although even per-screen is useful
12:41:07 <ais523> as my laptop doesn't have very fine controls for that
12:41:27 <ais523> in fact, the laptop's builtin brightness control makes no visible difference, and it doesn't have contrast controls
12:41:31 <elliottog> i'm tempted to start using OS X more rather than resign myself to gradually-bitrotting software here
12:41:31 <ais523> (and ofc opacity is only useful per-window)
12:41:46 <elliottog> at least Apple's regular let's-fuck-up-the-entire-interface bouts are /predictable/
12:41:51 <ais523> I fear OS X will end up going the same way too
12:42:00 <ais523> and Windows will instead fall to fragmentation
12:42:02 <elliottog> it has been going the same way since like five years ago
12:42:08 <Sgeo> Linux Mint is sticking with GNOME 2, I think
12:42:13 <ais523> when it tries to run 10 different windowing paradigms at once and you can't follow it any more
12:42:14 <elliottog> but with OS X, it does it in predictable ways
12:42:22 <ais523> Sgeo: that's good in itself, as it implies they'll maintain it
12:42:26 <ais523> whether you use it or not
12:42:43 <elliottog> whereas Linux desktop redesign is in fact the only source of true random numbers in the universe
12:43:07 <elliottog> ais523: anyway, Xfce still exists, and is pretty much Gnome Two except slightly different
12:43:19 <elliottog> it seems like the most practical migration path
12:43:27 <elliottog> especially since it fits in fine with gnome programs
12:43:43 <ais523> I'm not very experienced with desktop environments other than the Big Two
12:43:57 <ais523> although I can tolerate KDE 4 (assuming the bugs have been fixed since I last looked at it)
12:44:01 <elliottog> not having number keys is so great
12:44:11 <Sgeo> Not sure if I trust them to keep maintaining it though, or if they'll eventually surrender, or just write their own thing, or what
12:44:34 <ais523> using an existing open source project is normally easier than just writing your own thing
12:44:40 <elliottog> KDE Four is, I think, what happens when you take the typical "We need to change... EVERYTHING... it isn't about consequences... it's about PROGRESS" session, and try and "keep the spirit of KDE",
12:44:57 <elliottog> but you think the spirit of KDE is "it looks different to GNOME and has a large raw number of settings"
12:45:00 <elliottog> and then you still manage to fuck it up
12:45:16 <Zwaarddijk> I find KDE4 has removed all the useful settings, though
12:45:22 <ais523> unless your own thing is either trivial (where reimplementing it tends to be faster than finding a library that does what you want and disabling the features you don't need, then checking to see if it does exactly what you want), or really bizarre
12:45:26 <elliottog> Zwaarddijk: yep, but it still has a lot of them[exclamation mark]
12:45:42 <ais523> when I last used KDE 4, I couldn't find the settings manager at all
12:45:47 <ais523> I think there was some sort of bug that hid it
12:45:52 <elliottog> OK, time to restart to get a resolution that isn't six-forty by four-eighty
12:46:01 <elliottog> I think what I might do is try the new Xubuntu release sometime
12:46:04 <elliottog> it can't be as bad as Ubuntu proper
12:46:15 <elliottog> and it has a GNOME Two-esque configuration of Xfce
12:46:19 <ais523> any idea /why/ Ubuntu's going down the Unity route?
12:46:31 <elliottog> ais523: because GNOME Shell is /really/ terrible
12:47:04 <ais523> so Unity is an attempt to write a new shell from scratch because the one that was being suggested to them was bad
12:47:09 <elliottog> so since they had a launcher-manager-thing already...
12:47:11 <ais523> and they screwed it up, but not quite as badly as Gnome did?
12:47:13 <elliottog> ais523: nope, it was created for the netbook edition
12:47:21 <elliottog> OK, they might have planned this in secret
12:47:29 <elliottog> but publicly, it was "Hey, we're going to use the netbook one for the desktop version too."
12:47:46 <ais523> hmm, I wonder how good ReactOS' implementation of the Windows shell is?
12:47:51 <elliottog> and I'm not sure whether they screwed it up more; I can't use Unity, but I don't know whether that's a personal failing or bad design
12:48:04 <elliottog> I doubt they could screw it up /more/ than GNOME Shell
12:48:06 <ais523> it'd run flawlessly in Wine, on the basis that ReactOS and Wine share libraries
12:48:13 <elliottog> Which was designed entirely around making nice short Vimeo screencasts
12:48:22 <elliottog> Demonstrating entirely fictional scenarios with PRETTY transitions
12:48:34 <elliottog> ais523: I think I've tried that before
12:48:36 -!- pikhq_ has joined.
12:48:43 <elliottog> ISTR not working perfectly because Wine doesn't expect you to pull shit like that
12:48:52 <elliottog> I seriously need a higher resolution, I'm rebooting
12:48:54 -!- pikhq has quit (Ping timeout: 260 seconds).
12:49:03 -!- elliottog has quit (Quit: Page closed).
12:51:07 -!- elliottugh has joined.
12:51:17 <elliottugh> I think I changed my mouse acceleration settings before. ugh.
12:52:14 <elliottugh> remind me never to clean install anything ever
12:52:25 <ais523> elliottugh: did you not at least keep dotfiles?
12:52:41 <elliottugh> ais523: No, but then I didn't really have many, since the previous install was fairly new anyway
12:52:47 <elliottugh> ais523: Remember that this started as a botched upgrade
12:52:55 <elliottugh> Then it turned into a "well, I'll get a livecd of the newest version to fix the bootloader"
12:53:04 <elliottugh> Then it became "fuck it, might as well back up my code folder and do a clean install"
12:53:12 <elliottugh> Then it became "THIS IS TERRIBLE HOLY SHIT I'm reinstalling the old version".
12:53:38 <ais523> you didn't back up your whole homedir, minus really large things like downloaded tarballs and unpacked gcc source trees?
12:54:01 <elliottugh> everything I produce is either somewhere on the internet or in my code folder, pretty much
12:54:10 <elliottugh> and the full backup would have been gigabytes upon gigabytes upon gigabytes
12:54:20 <elliottugh> and since my backup mechanism was to email the code tgz to myself...
12:54:41 <ais523> hmm, I think this is another argument not to go around pirating things, they just take up space on your hard drive
12:55:01 <elliottugh> You... realise that happens with legitimate media too?
12:55:16 <elliottugh> And you also realise that the purpose of a hard drive is to get filled up with things?
12:55:18 <ais523> elliottugh: indeed, but there isn't much of it to go round
12:55:30 <elliottugh> Specifically, things that you wish to consume/store?
12:55:30 <ais523> and normally I stream it rather than download it
12:55:40 <ais523> the purpose of a hard drive is to save things you want to keep around
12:55:52 <ais523> things to store, /not/ things to consume (those work just fine in /tmp or streaming)
12:55:53 <elliottugh> You can stream pirated stuff too, it's just nobody does that because it'd inherently be a pain in the ass
12:56:19 <elliottugh> ais523: You have confused "what I think hard drives are for, in a stunning feat of circular argument" with "what hard drives are for"
12:56:25 <ais523> you can save them in a swapfile for a while
12:56:33 <ais523> which is technically using the hard disk, but abstracted awauy
12:56:50 <ais523> elliottugh: well, in that case, why don't you delete temporary files when you've finished using them?
12:57:02 <ais523> it'd make backups easier for no detriment at all
12:57:41 <ais523> files that you won't need again after you've shut down your computer
12:58:25 <ais523> "things that you wish to consume/store"
12:58:40 <ais523> implying that there were things you didn't want to store that you used the hard drive for anyway
12:58:46 <ais523> otherwise you wouldn't need both halves of the sentence
12:58:50 <elliottugh> You have clearly misinterpreted the slash.
12:59:18 <ais523> I'd word that as "things that you wish to store (perhaps to consume later)"
13:02:12 -!- elliottugh has quit (Quit: Page closed).
13:02:48 -!- FireFly has joined.
13:07:43 -!- elliott has joined.
13:08:19 -!- pikhq has joined.
13:08:44 -!- pikhq_ has quit (Ping timeout: 260 seconds).
13:09:05 -!- elliott has quit (Client Quit).
13:09:12 -!- elliott has joined.
13:09:13 -!- elliott has quit (Client Quit).
13:09:22 -!- elliott has joined.
13:09:48 <elliott> feels like a hospital without the various tweaks I did to my previous installation
13:12:11 -!- ineiros has joined.
13:13:50 <elliott> hmm, if I am going to switch to Xfce, I should capitalise on the opportunity while I'm still without OS-related baggage
13:16:14 <ais523> elliott: you do realise that the DCC SEND stuff in the topic is wrong, right?
13:16:46 <ais523> (hmm, I wonder why I just assumed the topic was made by you without checking)
13:18:27 <ais523> should be four zeros, separated by spaces, at the end
13:18:55 <ais523> it exploits two bugs; one is a bug in an AV product (triggered by "startkeylogger"), the other is a bug in attempts to DCC to 0 0 0 0 with a sufficiently long string given as the name
13:19:00 <ais523> umm, or was it three zeros?
13:19:10 <elliott> firstly, it's just any sufficiently long name /or/ zeroes
13:19:16 <elliott> look there was an article about it in the logs before
13:19:20 <elliott> what's in the topic would work just fine
13:19:24 <ais523> well, that's what was explained to me last time it came up (but it wasn't in this channel)
13:19:36 <elliott> anyway it's a reference to egobot/hackego being forced to take down because of it
13:20:20 <ais523> egobot was taken down because someone was dcc sending keyloggers?
13:25:10 <ais523> hmm, I wonder if Firefox can be set to accept and reject cookies at random?
13:25:14 <ais523> I want to see which websites break, and how badly
13:27:47 <elliott> I wonder if Debian will install OK on this
13:28:57 <elliott> although xfwm has that annoying bug still
14:00:01 -!- ais523_ has joined.
14:00:05 <cheater_> http://lauren.vortex.com/censorship-governments-google-white-paper-05-04-2011.html
14:00:13 <elliott> ais523_: stop cloning yourself
14:00:22 <ais523_> elliott: connection trouble again
14:00:32 <ais523_> I had the desktop booted already in case this happened
14:01:15 <ais523_> (it's a little ironic that I am provided with a quad-core desktop so that I can do my job, but instead do it on a single-core netbook and use the desktop just for printing and IRC)
14:01:30 -!- ais523 has quit (Ping timeout: 240 seconds).
14:02:29 -!- BeholdMyGlory has joined.
14:05:12 -!- ais523 has joined.
14:12:54 -!- ais523 has quit (Ping timeout: 260 seconds).
14:13:12 -!- ais523 has joined.
14:18:02 -!- ais523 has quit (Read error: Operation timed out).
14:20:26 -!- ais523 has joined.
14:25:03 -!- MigoMipo has joined.
14:27:05 -!- MSleep has changed nick to MDude.
14:33:30 <ais523> what shell does debian use?
14:34:44 <ais523> (if you say dash, I will get annoyed)
14:40:08 <elliott> ais523, why would that annoy you?
14:41:04 <ais523> I mean desktop environment shell, by analogy with Gnome Shell or Windows Explorer
14:44:02 <elliott> ais523: time to put on my Pedantic Weirdo hat
14:44:14 <elliott> ais523: The official Desktop Environment of the Debian Operating System is GNOME.
14:44:27 <elliott> however, you can literally untick it at install-time
14:44:37 <elliott> and the boot loader has options to install with KDE/Xfce
14:45:10 <ais523> elliott: you should buy a Pedantic Weirdo hat for Gregor, it'd go with all his other hats
14:45:33 <elliott> its not something you can buy its something youre born with
14:45:56 <ais523> meh, it'd work just as well as a physical hat
14:46:00 <ais523> I just need to work out what it would look like
14:54:45 -!- Sgeo has quit (Ping timeout: 240 seconds).
15:01:30 -!- Phantom_Hoover has joined.
15:19:34 -!- sebbu has joined.
15:19:34 -!- sebbu has quit (Changing host).
15:19:34 -!- sebbu has joined.
15:34:50 <ais523> I just went and emailed graue
15:38:16 <ais523> the person in charge of the esolang wiki
15:38:23 <ais523> as in, with actual access to the server and the software
15:38:35 <ais523> although Keymaker and I mostly run it in practice, we don't have the permissions to change really core stuff
15:39:28 <elliott> http://esoteric.voxelperfect.net/w/index.php?title=Esoteric_programming_language&curid=982&diff=22726&oldid=22705
15:39:37 -!- BeholdMyGlory has quit (Read error: Operation timed out).
15:40:53 <ais523> I'm going to see what graue does in response to this attack
15:41:01 <ais523> I suggested he expanded the captcha to cover all anon edits
15:41:09 -!- BeholdMyGlory has joined.
15:41:12 <ais523> but he'll probably do something ridiculous instead, like ban spelling errors
15:41:56 <elliott> <ais523> I suggested he expanded the captcha to cover all anon edits
15:42:12 <elliott> I'm fairly opposed to this because I edit as an anon quite frequently, but as a temporary measure it's probably for the best
15:43:14 <ais523> elliott: it's an easy enough CAPTCHA, you could even write a Greasemonkey script to solve it
15:43:48 <elliott> Then post it on the Internet.
15:43:54 <ais523> <floop> I'm creating a new programming language called ChrisMaple. Because programming can be hard for people to understand, it will only have 2 functions with no arguments: Stop and Go. I plan on writing a new OS in it :D
15:44:12 <elliott> where is that from, and are they serious? and if so, what is their home address?
15:44:20 <ais523> from Slashdot, and my guess is they're joking
15:44:29 <elliott> better cull them just in case
15:53:05 -!- MigoMipo_ has joined.
15:53:33 <ais523> elliott: I thought it sounded like a decent idea for an esolang
15:54:43 -!- MigoMipo__ has joined.
15:56:12 -!- MigoMipo has quit (Ping timeout: 276 seconds).
15:58:30 -!- MigoMipo_ has quit (Ping timeout: 260 seconds).
16:03:51 -!- monqy has joined.
16:04:24 -!- fizzie has quit (Ping timeout: 264 seconds).
16:04:28 -!- fizzie has joined.
16:07:31 <lambdabot> Im really only a bash person and even then Im tin
16:07:36 <lambdabot> I hear from an essay by E raymod that perl is shitty for large projects
16:07:43 <lambdabot> is there a decent scheduler in haskell? how about a netwrok monitor?
16:09:27 <elliott> ?so <CTCP>DCC SEND startkeylogger 0 0<CTCP>
16:09:27 <lambdabot> <CTCP>DCC SEND startkeylogger 0 0<CTCP> not available
16:09:34 <elliott> looks like lambdabot has to go down too
16:10:05 <ais523> elliott: that's just trolling, by the look of things
16:10:31 <elliott> ais523: Bots that are vulnerable to being made to print that DCC message have to be taken down until they're fixed; what's trolling about that?
16:10:39 <elliott> I remembered that ?so let you put arbitrary shit at the start of a line, so...
16:10:43 <ais523> trolling is actually making them do it
16:11:13 <elliott> We already know that nobody here is affected by it at all because this isn't two thousand and six.
16:11:16 <ais523> hmm, apparently my post makes the spambot's look feelbe
16:11:45 <ais523> bleh, I don't get what these spambots are doing at all
16:12:11 <ais523> there's no advantage from it other than wasting people's time, and I don't see why someone would waste their own resources (and what looks like a large botnet or proxy network) doing something pointless like that
16:29:28 <fizzie> (They are the experts in wasting time and resources.)
16:29:53 <ais523> I don't see why an artist would do it like that, though
16:30:15 <ais523> but I've got recent changes set up in full vandalfighting mode atm
16:31:50 <ais523> he was targeting Wikipedia in particular, though
16:31:57 <ais523> these Esolang spambots don't seem to be aware they're on a wiki at all
16:32:08 <ais523> (which is the only reason I thought the ridiculously weak CAPTCHA we have would work)
16:47:34 -!- Guest22963 has joined.
16:48:26 -!- Guest22963 has quit (Remote host closed the connection).
16:55:03 <ais523> any connection with the wiki, I wonder?
16:55:10 <ais523> also, did it get to do any spamming before being thrown off?
16:55:55 <elliott> it's the wiki spambot, note i have no evidence for it being a spambot
16:56:00 <elliott> but i like to think it was the wiki spambot
17:11:46 <monqy> the wiki spambots make me feel good about myself
17:11:57 <ais523> monqy: that you aren't as bad as them?
17:19:32 <elliott> how to transfer this huge file to my other disk
17:19:42 <elliott> ah, i could reformat my swap partition as fatthirtytwo
17:19:49 -!- Aune has joined.
17:19:53 <monqy> is that a good idea
17:20:36 <ais523> as long as you aren't using it for anything else at the time, yes
17:20:42 <ais523> and that you reformat the right partition
17:21:37 -!- elliott has quit (Read error: Connection reset by peer).
17:27:51 -!- pikhq has quit (Read error: Operation timed out).
17:27:57 -!- pikhq has joined.
17:37:15 -!- elliott has joined.
17:53:06 -!- elliott has quit (Remote host closed the connection).
18:05:27 -!- elliott has joined.
18:07:43 -!- Vorpal has joined.
18:08:41 <Vorpal> elliott, I need your computer finding expertise!
18:08:52 <Vorpal> (I decided I need to get a new desktop)
18:09:12 <elliott> okay what you want to do is buy the most expensive everything
18:09:16 <elliott> then put it in an expensive box
18:09:26 <Vorpal> elliott, Yes. But that is not what I can afford :P
18:09:36 <elliott> i was unaware you had such terrible constraints :/
18:10:13 <Vorpal> elliott, also it has to be possible to order in Sweden. IIRC newegg only takes orders from US?
18:10:35 <elliott> yep, but newegg is convenient to find things on :P
18:10:49 <elliott> actually buying them is left as an exercise to the reader
18:11:52 -!- azaq23 has quit (Ping timeout: 246 seconds).
18:12:14 <Vorpal> elliott, so, I need a decent performance setup, doesn't need to be the most extreme however. And an okay case for it. I want a fairly quiet system, so variable speed fans all over if possible. And it needs at least one classical PCI slot. Other than my SB live card and my two sata hdds I'm going for all new hardware.
18:12:59 <elliott> Name a budget in a currency that isn't some backwater European economy :P
18:13:01 <Vorpal> elliott, the threads in the screwholes on my current case are worn out, so definitely a new case
18:13:05 <elliott> (A backwater North American economy is preferred.)
18:13:06 <Vorpal> elliott, let me convert it
18:13:43 <Vorpal> google says 7000 Swedish kronor = 1 111.677 U.S. dollars, though that is slightly adjustable.
18:13:56 <Vorpal> elliott, I don't know if nvidia or amd/ati is best atm
18:14:01 <elliott> That's a nice number. Lots of ones.
18:14:10 <Vorpal> so, whichever works best under linux
18:14:12 <elliott> Vorpal: Intel is the bestest as far as Linux support goes :P
18:14:17 <olsner> round that to USD1111.111
18:14:20 <elliott> But useless in the, e.g. actually doing things department.
18:14:22 <Vorpal> elliott, I need good 3D graphics
18:14:32 <elliott> Well, that's subjective :P
18:14:34 <Vorpal> elliott, I do want GPGPU stuff
18:15:10 <olsner> I think nvidia still has better linux support
18:15:13 <elliott> FWIW, I presume you want AMD
18:15:15 <Vorpal> elliott, I don't need crysis however. But minecraft on far would be nice.
18:15:35 <elliott> GETTIN' A LITTLE AHEAD OF OURSELVES HERE
18:15:37 <elliott> MIGHT HAVE TO UP THAT BUDGET
18:15:48 <Vorpal> my old system almost managed that so :P
18:16:21 <Vorpal> elliott, actually, amd/intel: don't care much. I would prefer if it didn't run way too hot (less cooling needed: nicer, also better for electricity bill)
18:16:32 <Vorpal> so that indicates intel, but then amd is cheaper
18:17:08 <elliott> Vorpal: Do you want sixteen gibioctets of RAM or twenty-four?
18:17:34 <Vorpal> elliott, err, 8 would probably be enough, but sure 16 if that is affordable
18:17:44 <olsner> I'd go for zillions of gigaquads!
18:17:46 <Vorpal> elliott, anyway for upping the budget, jokes aside, that would be possible, a bit.
18:18:08 <elliott> SIXTEEN BILLION GIGATERAS OF RAMS
18:18:13 <Vorpal> elliott, I think 24 is likely overkill. But who knows, if that meets all other requirements why not
18:18:30 <Vorpal> a nice step up from my current 1.5 anyway
18:18:35 <elliott> Time to see if SSD prices have gone down :-P
18:18:46 <Vorpal> elliott, I have SATA disks I will reuse
18:18:55 <elliott> Actually you probably have mastered the art of using more than eighty gigabytes on your OS anyawy.
18:18:59 <Vorpal> elliott, that plus my SB Live card is all the hardware I want to carry over
18:19:15 <elliott> I don't really count SSDs as storage in that sense, anyway, more internal CPU OS storage X-D
18:19:19 <Vorpal> elliott, for SSD you mean? Let me check /usr size
18:19:50 <elliott> Wow, forty gig SSD for ninety five bucks.
18:19:55 <Vorpal> I'm on my laptop, I forgot since I plugged in my desktop monitor
18:19:59 <elliott> They sure are going down .... slowly ..........
18:20:17 <Vorpal> elliott, I'll pass on SSD then, though it would certainly be nice
18:20:34 <elliott> Vorpal: How many cores do you need for your apple
18:20:51 <Vorpal> elliott, oh and the sata chipset should support that native command queue thingy (but I guess all modern systems do). My disks support it, but not my current sata chipset
18:21:02 <Vorpal> elliott, uh... more than one
18:21:15 <elliott> Six, eight, insert cheerleadering
18:21:29 <olsner> why not one of those 12-core ones from amd?
18:21:31 <elliott> I wonder what AMD's six-cores are
18:21:36 <elliott> The three-cores are four-cores with one broken core
18:21:39 <elliott> But it's not like you get seven-cores
18:21:41 -!- azaq23 has joined.
18:21:46 <Vorpal> elliott, if it comes to a RAM vs. number of cores vs. budget or such I'd prefer a balanced system within the budget :P
18:21:46 <elliott> So are they... two slightly-broken four cores stuck together?
18:21:58 <elliott> Vorpal: GOD you are so BORING.
18:22:00 <ais523> elliott: quite possibly, IIRC eight-cores are normally just made from two four-core chips
18:22:11 <Vorpal> elliott, yes, but this is a system I actually plan to BUY
18:22:21 <elliott> ais523: Surprised they don't have seven-core chips then, i.e. four core + three core.
18:22:23 <ais523> hmm, at least it isn't elliott trying to spec a system for me
18:22:27 <olsner> elliott: I believe they are actually 6-cores from scratch
18:22:33 <ais523> elliott: the oct-cores probably sell better
18:22:34 <elliott> <ais> I'm not sure I need a kilobyte of RAM.
18:22:41 <Vorpal> elliott, wrt. 12-core: maybe a slightly broken 16 core?
18:22:45 <elliott> <ais> What?? It costs TWENTY POUNDS??
18:23:05 <ais523> I'd currently aim for about 1GB of RAM on a new computer
18:23:15 <Vorpal> <ais523> hmm, at least it isn't elliott trying to spec a system for me <-- has he tried that before?
18:23:22 <ais523> mostly because the extra cost of that compared to smaller amounts is trivial
18:23:25 <olsner> (and IIRC the 12-core ones are 6 times something that's halfway between dual-core and one-core with SMT)
18:23:26 <elliott> Vorpal: No, I'm not that insane.
18:23:30 <ais523> Vorpal: no, but we can both guess how it would go
18:23:42 <Vorpal> ais523, I think I can imagine that yes...
18:23:56 <Vorpal> ais523, like: completely incompatible goals for the system :P
18:24:14 <elliott> deary me i7s, you haven't been keeping very competitive pricewise
18:24:17 <ais523> <speek> The problem with operator overloading is that the time between the implementation of op overloading as a language feature and misuse of it is roughly 68ms
18:24:25 <ais523> I'm not sure if I've abused it in INTERCAL yet
18:24:30 <Vorpal> <ais523> I'd currently aim for about 1GB of RAM on a new computer <-- also that would be annoyingly limited
18:24:33 <ais523> I mean, compared to the rest of the language
18:25:00 * elliott watches Vorpal bang his head into the brick wall that is ais523.
18:25:02 <Vorpal> ais523, I swap trash sometimes on my laptop with 4 GB.
18:25:05 <ais523> I have problems envisaging anything that would require much more than that, other than storing an entire rather long video in memory
18:25:46 <Vorpal> elliott, thank you very much for your commentary. That activity is however rather entertaining :P
18:25:55 <elliott> It's like a rubber brick wall.
18:26:18 <ais523> Vorpal: seriously, what do you use that much memory for? badly written programs? do you work with data sets that largr?
18:26:57 <elliott> Athlon IIs are so goddamn cheap, probably because they're not very good
18:27:10 <elliott> Hmm, or is the difference just that they lack Lthree...
18:27:18 <Vorpal> ais523, minecraft runs badly on my desktop with 1.5 GB RAM. Panorama stitching runs badly on my laptop with 4 GB RAM for larger (50 MP or such) panoramas
18:27:27 <ais523> I can see plausible arguments for faster CPUs/more cores (although there's a more or less practical maximum level for CPUs)
18:27:27 <elliott> "That’s the theory, at least. AMD’s recent launch of the Athlon II X4, which is fundamentally a Phenom II X4 without the L3, implies that the tertiary cache may not always be necessary. We decided to do an apples to apples comparison using both options and find out."
18:27:34 <elliott> time to read a badly-researched article
18:27:40 <Vorpal> elliott, wait what, Athlon II? Isn't that uh... 10 years ago=
18:27:42 <ais523> Vorpal: and you'd expect Minecraft to run well with, say, 3 GB RAM?
18:27:55 <elliott> ais523: it's based around a gigantic array of blocks
18:28:01 <olsner> I can imagine spending about 1GB on a source tree, Inf GB on instances of gcc compiling various parts of it, 1-2GB on a browser with every tab I've ever opened still open
18:28:01 <ais523> if something's struggling with that much memory, it's likely using a bad algorithm, and throwing more hardware at the problem won't help much
18:28:11 <Vorpal> elliott, wait, Athlon was old. Can we agree on that?
18:28:11 <elliott> ais523: Minecraft = big array of blocks.
18:28:17 <olsner> and if using an IDE, at least 2GB more for that
18:28:19 <elliott> Vorpal: Yes; companies reuse brand names.
18:28:23 <Vorpal> elliott, then came Athlon XP?
18:28:30 <ais523> elliott: well, yes, but what's the exact amount of RAM it needs to hold the whole array?
18:28:34 <olsner> you basically always need more memory
18:28:37 <Vorpal> elliott, The order, it confuses me.
18:28:50 <ais523> so you're going to run out no matter how much memory you have
18:28:55 <Vorpal> <olsner> and if using an IDE, at least 2GB more for that <-- emacs run fine without that.
18:28:55 <ais523> therefore adding more memory is pointless
18:29:05 <elliott> Vorpal: Point is, $99.99 gets you a quad-core three ghz processor gobbling ninety-five watts.
18:29:24 <Vorpal> elliott, that is more than the PSU for my laptop!
18:29:28 <elliott> ais523: err, no, it's bounded
18:29:43 <ais523> so it's actually static, eventually
18:29:47 <olsner> Vorpal: then emacs isn't an IDE
18:29:56 <Vorpal> elliott, you can't be serious that a CPU uses more than, say, 60-70 W?
18:29:59 <ais523> btw, why doesn't someone just replace Minecraft's data storage with something saner than massive array?
18:30:15 <ais523> that bit should be relatively easily abstractable, so long as it uses accessor methods correctly
18:30:23 <ais523> Vorpal: some sort of compressed structure
18:30:36 <ais523> I imagine Minecraft maps compress easily, if only because most of them will never be touched by a user
18:30:55 <olsner> Vorpal: many cpu models do
18:30:55 <elliott> do decompression and recompression sixty times per second
18:30:56 <Vorpal> yes storing a diff on disk might be a good idea at least
18:31:14 <ais523> elliott: you can use seekable compression algos
18:31:14 <elliott> <Vorpal> elliott, you can't be serious that a CPU uses more than, say, 60-70 W?
18:31:25 <elliott> High-end CPUs use like one hundred and twenty five watts.
18:31:28 <Vorpal> elliott, come on, my laptop PSU is on 65 W
18:31:33 <elliott> It supports laptop hardware.
18:31:34 <ais523> elliott: and need stupid amounts of cooling as a result
18:31:42 <Vorpal> elliott, and that is a nice core 2 dupo
18:31:55 <elliott> Vorpal: It's a laptop core two duo.
18:31:55 <ais523> there's a practical limit to CPU power because of that
18:32:06 <ais523> also, a low-end processor is not that much weaker than a high-end processor nowadays
18:32:11 <elliott> Vorpal: It's hard to find PSUs under four hundred watts :P
18:32:16 <elliott> ais523: Please, you're not being helpful.
18:32:17 <olsner> looks like i7 only goes up to 130W
18:32:18 <Vorpal> elliott, since I said I wanted a rather quiet system, something that doesn't run too hot might be a good idea
18:32:32 <elliott> Vorpal, Ninety five watts is downright cold for a desktop CPU as far as silencing goes.
18:32:37 <ais523> the fan on here is needed so rarely I sometimes have to start it by hand
18:32:58 <Vorpal> ais523, why do you need to start it if it isn't needed?...
18:33:11 <ais523> Vorpal: when it is needed, sometimes it doesn't start automatically
18:33:14 <Vorpal> or do you mean the bearings rusted or something insane
18:33:20 <ais523> so I have to bang on the computer case to get it to start
18:33:22 <Vorpal> ais523, so bug in the firmware?
18:33:44 <ais523> you learn the correct place to hit the computer after a bit (it's just to the left of the power button)
18:33:51 <Vorpal> ais523, I would NOT leave that computer running without supervision
18:34:04 <Vorpal> heck I wouldn't run it at all
18:34:16 <ais523> well, I wouldn't either, in case someone stole it
18:34:20 <ais523> except in a locked office or bedroom
18:34:24 <ais523> but it just shuts down if it overheats
18:34:24 <elliott> ais523 is an electrical engineer, he can handle a fire
18:34:48 <ais523> (this has become something of a running joke at my workplace)
18:34:55 <Vorpal> elliott, sometimes talking with ais523 isn't like running into a brick wall (rubber or not) but more like getting a rubber brick wall dropped on top of you
18:34:57 <olsner> electrical engineer :D
18:35:16 <ais523> olsner: both electrical and electronic exist, but do different things
18:35:41 <olsner> ais523: yes, that's why it's funny of course
18:35:41 <Vorpal> elliott, so how does the system come along?
18:36:00 <ais523> Vorpal: well, without a deterministically working fan, it overheats quite a lot
18:36:06 <ais523> mostly while watching video when I forget to start the fan
18:36:07 <elliott> Vorpal: i work slowly and meticulously
18:36:11 <Vorpal> elliott, oh and you said Athlon II were cheap? Hm, do you think they will last much longer than the warranty then?
18:36:16 <ais523> (running Windows, the fan runs at 100%)
18:36:40 <elliott> Vorpal: There's an Athlon II in this house -- only a dual core one though, and quite a low end one at that -- that's been chugging away for several years now.
18:36:44 <ais523> (on Linux, though, it only seems to run when decoding video, or doing an intentionally 100% CPU task like a brute-force search)
18:36:56 <Vorpal> elliott, so athlon II are old?
18:37:25 <Vorpal> elliott, what is the cache size? I don't want something like my sempron's tiny cache
18:37:31 <elliott> Vorpal: The name Athlon II is a few years old.
18:37:37 <elliott> Athlon II x[four]s are two thousand and nine vintage.
18:37:38 <ais523> bleh, why does Reddit value link karma more than comment karma?
18:37:42 <ais523> I mostly only read it for the comments
18:37:43 <Vorpal> elliott, AMD IS OUT TO CONFUSE ME WITH THEIR NAMING!!!
18:37:58 <elliott> Vorpal: Anyway, L[two] is four x 512KB.
18:38:22 <elliott> Only the Core Twos have ridiculously large Ltwos.
18:38:30 <Vorpal> elliott, so what is L3 then?
18:38:41 <Vorpal> model name : Intel(R) Core(TM)2 Duo CPU P8400 @ 2.26GHz
18:38:42 <elliott> And shared, rather than per-core.
18:38:49 <Vorpal> elliott, I meant what size
18:39:04 <elliott> Like I said, Athlon IIs have none, that's the only difference between them and Phenom IIs (AMD's top end range).
18:39:18 <Vorpal> elliott, and are Phenom II expensive?
18:39:38 <elliott> They do have six-core versions though.
18:39:42 -!- Sgeo has joined.
18:39:53 <Vorpal> elliott, how much more, and I think 6 cores will be enough.
18:40:26 <elliott> Hmm, huh, the cheapest Phenom II x[four] is only nine dollars more expensive and quite a bit better... no L[three] though
18:40:30 <Vorpal> elliott, oh and another thing: gbit ethernet.
18:40:35 <Vorpal> but I guess that is standard
18:41:37 <elliott> Taking a short break to meditate[caret]W sekrit stuff.
18:41:46 <Vorpal> elliott, and what usb variant do we have
18:41:59 <elliott> That's a motherboard thing :P
18:42:04 <Vorpal> elliott, I plan to order this system day after tomorrow, probably before that
18:42:27 <Vorpal> elliott, I'm in a rather urgent need to replace my current desktop you see.
18:42:43 <elliott> What a deadline. This is like coming up to a Zen master and complaining that your meditation is taking longer than a few minutes :P
18:42:57 <elliott> Except the Zen master is just some chump with Zen and the Art of Motorcycle Maintenance.
18:43:05 <elliott> And the meditation is just sitting around staring at walls.
18:43:07 <Vorpal> elliott, sounds like a wonderful idea. I'd like to see his reaction.
18:43:30 <Vorpal> elliott, yes. Lets do that once you have the specs done
18:43:44 -!- ais523_ has quit (Quit: Page closed).
18:43:56 <Vorpal> elliott, on and the GPU needs DVI-Digital out
18:44:05 <Vorpal> since that is what my monitor takes
18:44:18 <elliott> Bit busy right now though :P
18:46:47 <Vorpal> elliott, I forgot: PS/2 for keyboard, or I need to find a new nice white keyboard
18:46:54 <Vorpal> with flat windows keys
18:46:59 <Vorpal> and that sounds tricky
18:47:19 <elliott> PS/two<->USB adapters exist, you know, but it's not like PStwo is dead :P
18:47:22 <elliott> Well it is, but it still exists.
18:47:33 <Sgeo> I'd ask a question about Mercury here, but don't want to be yelled at
18:47:38 <Sgeo> So am asking in #mercury
18:47:42 <Sgeo> Which is rather quiet.
18:47:57 <Vorpal> is there a channel for each element in the periodic table I wonder
18:48:15 <Vorpal> not what you meant I guess
18:48:52 <Sgeo> You guessed correctly
18:49:33 <Vorpal> I can't find any wattage listed on my old desktop PSU
18:52:47 <Vorpal> elliott, actually I'd like to order it this evening if possible
18:52:54 <Vorpal> I guess I can go ahead on my own
18:53:23 <elliott> If you want an INFERIOR COMPUTER BE MY GUEST
18:53:40 <Vorpal> elliott, I don't want that. But I really need this system as soon as possible
18:54:49 <elliott> I've just got numerous irons in the fire at this particular point :P
18:58:51 <olsner> haha, Vorpal is building INFERIOR COMPUTER
18:59:02 <Vorpal> olsner, actually I'm waiting for elliott
19:00:25 <Vorpal> huh, AMD still uses ZIF sockets? http://en.wikipedia.org/wiki/File:MSI_785GM-P45_Socket_AM3.jpg
19:12:52 -!- elliott_ has joined.
19:16:31 -!- elliott has quit (Ping timeout: 240 seconds).
19:18:42 <myndzi> what's better than ZIF sockets?
19:19:24 <ais523> negative insertion force, obviously
19:19:43 <ais523> it actually even makes physical sense, it'd be a socket where you put the chip vaguely near the socket and it was automatically drawn into it
19:19:53 -!- Sgeo has quit (Ping timeout: 258 seconds).
19:20:15 <Vorpal> myndzi, I'd expect BGA sockets. I guess technically they are ZIF, though they aren't called that very often.
19:20:32 <Vorpal> ais523, magnetic perhaps?
19:20:45 <ais523> Vorpal: indeed, that's what I was thinking of
19:20:53 <ais523> although magnetism + electricity often doesn't mix wel
19:20:55 <myndzi> magnetism on my circuitry? would that be wise? :P
19:21:21 <Vorpal> ais523, presumably with some sort of guiding vanes?
19:21:34 <ais523> Vorpal: I don't know, I'm not designing one of these things
19:33:24 -!- pikhq_ has joined.
19:33:31 -!- pikhq has quit (Ping timeout: 240 seconds).
19:35:06 <Vorpal> elliott_, I don't need new DVD drive either, if the new mobo supports PATA
19:35:15 <Vorpal> elliott_, but I'm okay with getting a new one if that is cheaper
19:35:30 <Vorpal> (such as a SATA only system)
19:47:00 -!- MigoMipo__ has quit (Remote host closed the connection).
19:47:21 -!- MigoMipo has joined.
19:56:17 <Vorpal> elliott_, I will be away most of tomorrow, and as for day after that, away a lot too
19:56:39 -!- Aune has quit (Quit: Page closed).
19:58:29 <Vorpal> cheater666, US$ 2 = 12.5447691 Swedish kronor <-- no I doubt it. More like 50 SEK for a dvd drive.
19:58:38 <cheater666> Vorpal, a BGA is not ZIF, because you're not inserting anything.
19:58:52 <Vorpal> cheater666, and a LGA?
19:58:58 <cheater666> you'd have to have something going into something else to "insert with zero force"
20:00:06 <cheater666> no, it's not "ZIF" either. there's no insertion
20:00:15 <cheater666> there's mechanical mating of flat surfaces.
20:00:48 <cheater666> ya i know but i forgot the exact mating technique
20:01:58 <cheater666> ZIF specifically refers only to sockets with a lever, which shifts a grid of halves of holes that pins go into, tightening those holes
20:03:18 <cheater666> before that became available, the pins on a processor would have to go into a socket which doesn't change in width, requiring the use of physical force
20:03:27 <cheater666> that would break CPUs which were very expensive
20:03:36 <cheater666> i think ZIFs became popular around the times of the 486
20:03:45 <Vorpal> cheater666, there are ZIF for DIP too
20:04:24 <Vorpal> cheater666, though not desktop cpus
20:04:36 <Vorpal> microchip programmers and suc
20:04:45 <olsner> I'd like to see a 2000 pin desktop CPU in a DIP capsule
20:04:51 <cheater666> http://en.wikipedia.org/wiki/Zero_Insertion_Force#Ball_grid_array_sockets
20:05:00 <cheater666> it seems that there are mating mechanisms that DO catch the balls
20:05:09 <Vorpal> cheater666, http://en.wikipedia.org/wiki/File:Picstart_plus.jpg
20:05:25 <cheater666> but the kind of BGA socket that is popular for desktop CPUs does not use that, it uses the spring pin mechanism, which is not "ZIF"
20:06:55 <Vorpal> cheater666, because I will be at university from 08:00 to 17:00, and then I have other stuff to do after
20:07:48 <Vorpal> cheater666, ..............
20:08:37 <Vorpal> <cheater666> how is it treating you? <-- whaaat?
20:08:42 <cheater666> it isn't the mind-wringer that maths is
20:09:06 <Vorpal> what do you expect, something along the lines of "oh the FPGA is all right, not too hard on me at all :P"?
20:09:39 <Vorpal> (though I haven't used FPGAs for a while)
20:09:53 <Vorpal> well, not too hard *shrug*
20:10:22 <cheater666> there's an old saying that if everything you do works, you're not trying hard enough
20:10:29 <Vorpal> very confusing terminology there, sv:kurs = en:module in this context
20:10:32 <cheater666> try to catch all the bits of info that you get
20:10:37 <Vorpal> and en:course I think is sv:program?
20:11:08 <cheater666> if you're studying at a good uni, try getting as much done as possible
20:11:19 <cheater666> it'll be important for networking in the future
20:11:47 <cheater666> what's the coolest course in compsci for you?
20:12:29 * olsner thinks Vorpal studies Enterprise Java/C++ or something like that :P
20:12:30 <Vorpal> elliott_, night, please leave messages with memoserv. At least something like: "I said something relevant to your computer, see clog logs" or such. :)
20:12:48 <Vorpal> cheater666, compilers is during the autumn
20:13:22 <olsner> meh, you haven't done compilers yet?
20:13:50 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
20:14:07 <olsner> the compiler course is probably my favourite
20:36:37 -!- ajf|offline has changed nick to ajf.
20:51:43 <lambdabot> Phantom_Hoover: You have 2 new messages. '/msg lambdabot @messages' to read them.
20:54:14 <Gregor> Phantom_Hoover: Redirect all "Where is HackEgo" questions in the form of lynchings of Lymia.
21:03:42 -!- Cheery has quit (Quit: leaving).
21:07:20 <ajf> http://www.esolangs.org/wiki/Deviating_Percolator
21:07:28 <ajf> I still challenge someone to compile this language
21:07:32 <ajf> It is impossible
21:08:11 <elliott_> well, it's obviously not impossible, given a rigorous definition of compile :)
21:08:33 <ajf> but as the interpretation could change after each line is executed
21:08:42 <ajf> you can't really compile it
21:08:43 <elliott_> well, that's just like befunge then isn't it? :p
21:11:30 <ajf> "The language was originally created by Chris Pressey in 1993 as an attempt to devise a language which is as hard to compile as possible — note that the p command allows for self-modifying code."
21:11:39 <ajf> DevPerc can be self-modifying
21:14:49 <olsner> allowing self-modifying code doesn't really mean anything, it just makes some things a bit harder
21:15:15 <ajf> it makes full compilation impossible
21:15:34 <olsner> well, define "full" compilation
21:15:50 <ajf> where there is no interpreter attached to the resulting code
21:15:57 <ajf> or re-compiler
21:16:04 <ajf> directly compiled to machine code
21:16:33 <ajf> now, *some* DevPerc programs can be fully compiled
21:16:45 <ajf> as the modifications are known at compile time
21:16:52 <ajf> but others are dependant on input
21:17:56 <monqy> what does interpreter mean here
21:18:46 <ajf> interpreter for the language?
21:18:53 <ajf> executes based on the source code?
21:19:58 <monqy> what if part of it was compiled directly to machine code and some of it needed assistance (perhaps to look something up)
21:20:21 <monqy> there's no full interpreter, though
21:20:57 <ajf> yes but no partial interpreter
21:21:18 <ajf> it's impossible without some partial interpreter that knows the source code, with some programs
21:29:25 <ajf> it should be impossible to "compile" unless you do it how Befunge was "compiled"
21:29:30 <Lymia> What's with your implementation of numbers?
21:30:00 <ajf> the way they are all out of order?
21:31:38 <ajf> Lymia: what is your complaint?
21:32:07 <Lymia> Can't you generate that at runtime?
21:32:28 <ajf> I used a script
21:32:35 <ajf> ran it in the python interactive thing
21:32:52 <ajf> then used another script to remove stuff >255
21:33:07 <ajf> I dunno why I didn't keep that script
21:33:16 <ajf> maybe I feared it would be too slow
21:33:24 <ajf> (was very inefficient)
21:33:48 -!- ajf has changed nick to ajf|offline.
21:40:57 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:46:45 <Phantom_Hoover> "Hydrogen difluoride would imply an electrically neutral compound, HF2, which does not exist. It is isoelectronic with the hypothetical compound helium difluoride, HeF2, which also does not exist, and the fluoroheliate anion, FHeO−, whose existence is suspected."
21:54:03 -!- Sgeo has joined.
22:00:23 -!- ais523 has quit (Remote host closed the connection).
22:01:33 <Sgeo> http://langnostic.blogspot.com/ Python, Racket, ?, Erlang, Ruby?, ..that's an emacs icon, Haskell, ?
22:01:38 <Sgeo> What am I missing
22:03:49 <elliott_> I suspect it is a reference to the Rhino JS engine, going by the sidebar.
22:04:24 <Sgeo> I still don't get why emacs is suddenly referenced in a blog about languages >.>
22:06:48 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:07:17 -!- BeholdMyGlory has joined.
22:09:52 -!- augur has quit (Remote host closed the connection).
22:10:05 -!- clog has quit (Ping timeout: 260 seconds).
22:12:53 -!- azaq231 has joined.
22:13:36 -!- Phantom_Hoover has quit (Quit: Leaving).
22:13:56 -!- azaq23 has quit (Ping timeout: 240 seconds).
22:14:28 -!- elliott_ has quit (Quit: Leaving).
22:15:40 -!- azaq231 has quit (Client Quit).
22:17:20 <fizzie> The ()s around the Emacs icon might be an attempt to refer to elisp.
22:30:46 -!- elliott has joined.
22:30:59 -!- elliott has quit (Client Quit).
22:35:55 -!- augur has joined.
22:36:56 -!- azaq23 has joined.
22:40:27 -!- FireFly has quit (Quit: swatted to death).
22:46:29 -!- NihilistDandy has joined.
22:46:44 -!- clog has joined.
22:59:24 -!- variable has quit (Read error: Operation timed out).
23:33:20 <Gregor> I can never consistently remember what "NB" expands to X_X
23:48:54 -!- variable has joined.
23:53:40 -!- zzo38 has joined.
23:55:56 -!- pikhq has joined.
23:59:01 -!- pikhq_ has quit (Ping timeout: 240 seconds).
00:06:32 -!- azaq23 has quit (Quit: Leaving.).
00:10:15 -!- zzo38 has quit (Remote host closed the connection).
01:20:26 -!- pingveno has quit (Read error: Operation timed out).
01:22:50 -!- pingveno has joined.
02:31:39 -!- oerjan has joined.
02:41:52 <oerjan> <elliott> I CAN LIGHTLY BRUSH ON THIS TOUCHPAD AND YOU THINK IT'S A CLICK.
02:42:17 <oerjan> i seem to recall that from way back with mine, before changing the settings ;)
02:42:48 <NihilistDandy> Yeah, have to make it ignore accidental input or it's a real hair trigger
02:42:55 <oerjan> although just the other day it got flaky and got stuck in some "always clicking" mode
02:43:30 <oerjan> it did not even help restarting the computer - needed a full power off
02:43:44 <NihilistDandy> *move finger* -> Computer: DID YOU MEAN CLICK? I'M GONNA CLICK. CLICK, OKAY? CLICK.
02:44:53 <oerjan> i have this vague idea of some quote/meme running around saying "TO SHREDS YOU SAY?"
02:44:59 <oerjan> saw it on reddit yesterday
02:45:30 <NihilistDandy> In the episode where Fry needs to find an apartment
02:45:53 <lambdabot> http://www.youtube.com/watch?v=3p3UEzPj4Sk
02:45:53 <lambdabot> Title: YouTube - Futurama - To shreds you say
02:47:41 <oerjan> ah. i totally misunderstood the reference then, thought it was something like your CLICK thing, but more ominous
02:48:10 <NihilistDandy> More of a "one-sided phone conversation" sort of ominous
02:48:10 <oerjan> perhaps involving some giant killer robot...
02:48:36 <NihilistDandy> You only hear the reaction to the horror, rather than the event itself :D
02:49:06 <oerjan> i should get some headphones, so can actually listen to video in the middle of the night
02:50:37 <lambdabot> http://memegenerator.net/instance/7710889
02:52:06 <oerjan> sadly not historically accurate (curry was already dead when haskell was named)
02:52:40 <NihilistDandy> If you let facts pollute humor, you'll never laugh again :D
02:53:10 <oerjan> in fact i recall from the history of haskell there is this other quite by his wife, something like, "you know he never really liked the middle name haskell"
03:37:56 -!- pikhq_ has joined.
03:38:08 -!- pikhq has quit (Ping timeout: 248 seconds).
03:39:24 -!- TeruFSX has joined.
03:46:45 <Sgeo> "The Franz license forbids you to use the Free Express Edition
03:46:45 <Sgeo> to provide services or products to others for which you are
03:46:45 <Sgeo> compensated (by payment of money or otherwise, directly or indirectly)
03:46:45 <Sgeo> in any manner."
03:47:02 <Sgeo> I suppose they don't consider being recognized as compensation? It's still a bit strict
03:48:14 <oerjan> sounds like you have to be a lawyer to even guess at how "otherwise" would be interpreted by a court
03:50:31 <oerjan> some day some court is going to rule that laws and contracts have become so complicated that an ordinary person cannot be expected to understand or follow them, and then the whole house of cards is going to come crashing down </wishful thinking>
04:01:56 -!- NihilistDandy has quit (Quit: Linkinus - http://linkinus.com).
04:10:50 <pikhq_> Y'know the worst bit about the whole principle that ignorance is no defence?
04:11:24 <pikhq_> It came about in a time where claiming ignorance of the law was a complete, brazen lie.
04:31:20 <Lymia> I have to wonder now that it's mentioned.
04:31:43 <Lymia> How often are people convicted for things that they didn't expect to be illegal at all, and would be justified in thinking so.
04:32:22 <pikhq_> I doubt it's all *that* often...
04:32:32 <pikhq_> What usually bites people in the ass is ignorance of *civil* law.
04:35:12 <oerjan> *sigh* is the wiki spam _still_ ongoing
04:42:01 <Lymia> Is it a botnet or somethin?
04:47:37 <oerjan> i think someone needs to tell graue that our wiki cannot continue without an active person with full access to it
04:49:28 <oerjan> Lymia: it seems like this time ais523 (who has only admin access) has problems finding any way to detect the new spam...
04:51:12 -!- TeruFSX has quit (Ping timeout: 260 seconds).
04:52:07 <Lymia> Block it with a captcha
04:52:31 -!- MDude has changed nick to MSleep.
04:55:32 <oerjan> Lymia: we already _have_ a captcha, i believe
04:56:16 <oerjan> (i haven't seen it myself)
04:57:15 * Sgeo sees Weblocks and thinks "Seaside"
04:59:02 -!- zzo38 has joined.
05:01:12 <zzo38> I tried to invent a notation for Test cricket. It involves various styles of type (bold, italic, calligraphic, etc), superscripts, subscripts, numbers, various symbols, accent marks; and you still need to have extra comments too sometimes.
05:03:44 <zzo38> (It could be modified to also work with One Day or Twenty20 as well if you want it to)
05:26:37 -!- sebbu has quit (Read error: Connection reset by peer).
05:27:04 -!- sebbu has joined.
05:27:04 -!- sebbu has quit (Changing host).
05:27:04 -!- sebbu has joined.
05:31:04 -!- calamari has joined.
05:56:32 -!- hagb4rd has joined.
06:18:37 -!- Sgeo has quit (Ping timeout: 240 seconds).
06:27:40 <Lymia> http://www.esolangs.org/wiki/BitBitJump < This would do conditionals with self-modifying code, and self-modifying code only, right?
06:28:32 <zzo38> Yes I think it cannot do conditional jumps in any other way
06:29:59 -!- FireFly has joined.
06:39:57 -!- hagb4rd has quit (Read error: Connection reset by peer).
06:50:18 -!- Cheery has joined.
07:11:49 -!- monqy has quit (Quit: hello).
07:13:42 -!- BeholdMyGlory has quit (Remote host closed the connection).
07:42:13 -!- zzo38 has quit (Remote host closed the connection).
07:43:30 -!- calamari has quit (Quit: Leaving).
08:04:18 -!- FireFly has quit (Quit: swatted to death).
08:12:26 -!- siracusa has quit (Ping timeout: 260 seconds).
08:13:26 -!- siracusa has joined.
08:24:24 -!- AndrewNP has joined.
08:27:13 -!- AndrewNP has left.
08:37:08 -!- MigoMipo has joined.
09:02:11 -!- MigoMipo has quit (Read error: Connection reset by peer).
09:26:42 <cheater_> http://www.youtube.com/watch?v=epYmWk9Q3g4&feature=related
09:26:43 <cheater_> http://www.youtube.com/watch?v=epYmWk9Q3g4&feature=related
09:26:43 <cheater_> http://www.youtube.com/watch?v=epYmWk9Q3g4&feature=related
09:30:09 -!- oerjan has quit (Quit: leaving).
09:56:42 -!- hagb4rd has joined.
10:21:42 -!- wareya_ has joined.
10:24:30 -!- wareya has quit (Ping timeout: 246 seconds).
10:31:56 <cheater_> that's cool, i didn't know that vim had a special way for entering japanese
12:49:59 -!- cheater_ has quit (Ping timeout: 240 seconds).
12:52:30 -!- FireFly has joined.
13:20:43 -!- cheater_ has joined.
13:52:15 -!- BeholdMyGlory has joined.
14:40:02 -!- Gregor has set topic: http://www.devicemag.com/2011/05/10/microsoft-closing-in-on-skype-for-buyout-8-billion-deal-lined-up/ FFFFFFFFFFUUUUUUUUUUUUUUUUUUUUUU | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
14:56:40 -!- Phantom_Hoover has joined.
14:56:44 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
15:14:05 -!- MigoMipo has joined.
15:15:44 -!- pikhq has joined.
15:15:58 -!- pikhq_ has quit (Ping timeout: 252 seconds).
15:18:35 <Phantom_Hoover> Tantalum has an isotope which is metastable despite the ground state having a half-life of 8 hours.
15:21:39 <Phantom_Hoover> Despite the innate silliness of trying to work out what currency will be used post-scarcity, this does seem to be interesting.
15:27:57 -!- elliott has joined.
15:29:38 -!- MSleep has changed nick to MDude.
15:32:07 -!- elliott has quit (Remote host closed the connection).
15:32:11 -!- Hirams has joined.
15:32:17 <Hirams> As it were me to find the program against Google, which itself opened and closed the sites, in that time when me near computer. She worked as DDOS attack, has put(deliver)ed, but itself will go to walk. Remarkable Google on I created wipe after such, but sites miscellaneouses opened on all-round themes with enumeration of the main trends of the themes advisable and regulation amount visit given to directivities.
15:32:17 <Hirams> If I have simply program, that all like Google collectors immediately loose in that material, which I interest, not will possible create on me psychological portrait on my taste, habit, interest...
15:32:17 <Hirams> Since Google aside from installation cookie beside me on computer else has its extensive statistical database about which is hard cushioned. Our criticality on computer in contrast with their given about us - a triviality so shave off possible only boat, directed on opening and closing site while master building or than that occupied. Spreading the program given about folk and all-out collection to information - better than attack DDoS attack
15:32:17 <Hirams> Google, it is necessary his(its) purposes. In addition there is one more psychological advantage to the whole - advertisment control on its taste - a triviality, but pleasantly. Not whole advertisment I do not like, but here is determined sort can, and was useful at whiles. One more plus in that that managers of the local-area networks too got mixed up in my interest. Here just appropriately add such characteristic in program that she on
15:32:17 <Hirams> open page not strictly fixed amount of time, but different - that was an illusion of the functioning(working) the alive person. That is to say, who stakes out my opening the pages, could easy believe that works the alive person. Length of stay to fasten from amount of the letters on page. Here is such order on given program - some she was much needs and had its demand, particularly for one, particularly values invulnerability.
15:32:22 -!- Hirams has left (" ").
15:32:53 -!- elliott has joined.
15:43:48 <elliott> 03:50:31: <oerjan> some day some court is going to rule that laws and contracts have become so complicated that an ordinary person cannot be expected to understand or follow them, and then the whole house of cards is going to come crashing down </wishful thinking>
15:44:12 -!- Vorpal has joined.
15:45:17 <Vorpal> elliott, how goes selecting components
15:46:17 <elliott> Well, I was busy for about an hour after you left, after which point I was too tired to do anything, and then an hour later I became busy sleeping.
15:47:57 -!- oerjan has joined.
15:49:32 <elliott> You can just go ahead and buy something if you really need it that quickly /shrug
15:49:49 <Vorpal> fuck I HATE VGA. I have to keep pressing auto-adjust every few minutes...
15:50:10 <Vorpal> elliott, perhaps tomorrow then, I won't have time to order today anyway
15:53:15 -!- monqy has joined.
16:07:37 -!- augur has quit (Remote host closed the connection).
16:23:16 -!- MigoMipo has quit (Read error: Connection reset by peer).
16:41:15 -!- augur has joined.
16:52:09 <Phantom_Hoover> "TIL all the pens used and issued to the White House and all the United States government in the past 74 years were made by blind people."
16:52:31 <Phantom_Hoover> My immediate thought: I can't believe they get away with exploiting blind people like that.
16:54:53 <elliott> http://i.imgur.com/w7qYp.jpg
16:55:37 <elliott> http://en.wikipedia.org/wiki/Skilcraft
16:55:45 <elliott> Do they refuse to employ sighted people?
16:57:14 <oerjan> they just require all employees to share the company vision
17:08:25 -!- zzo38 has joined.
17:20:51 <oerjan> @hoogle (a, a) -> Rational
17:21:13 <oerjan> @hoogle RealFrac a => (a, a) -> Rational
17:21:19 <elliott> oerjan: it's a -> a -> isn't it ...
17:21:33 <oerjan> @hoogle RealFrac a => a -> a -> Rational
17:21:34 <lambdabot> Data.Ratio approxRational :: RealFrac a => a -> a -> Rational
17:21:34 <lambdabot> Data.Ratio (%) :: Integral a => a -> a -> Ratio a
17:21:56 <oerjan> > approxRational (pi-1/100, pi+1/100)
17:21:57 <lambdabot> Overlapping instances for GHC.Show.Show
17:22:12 <oerjan> > approxRational (pi-1/100) (pi+1/100)
17:22:32 <oerjan> hm maybe it's not a range
17:22:41 <oerjan> > approxRational pi (1/100)
17:22:54 <elliott> > approxRational pi (1/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000)
17:23:20 <oerjan> ...i don't think pi::Double gives that much precision :)
17:23:33 <elliott> i would expect 0 to be disallowed :)
17:24:01 <elliott> > approxRational (pi::CReal) 0
17:24:22 <elliott> > approxRational (pi::CReal) (1/100)
17:26:19 <oerjan> i'd say lacking approxRational is a serious hole in a CReal implementation
17:27:43 <Vorpal> elliott, huh what haskell package is that from?
17:28:18 <elliott> <oerjan> i'd say lacking approxRational is a serious hole in a CReal implementation
17:28:22 <elliott> it probably has its own version
17:28:27 <elliott> approxRational seems to depend on toRational
17:28:46 <Vorpal> oerjan, it seems that more than half of knowing haskell is knowing it's standard library
17:30:10 <elliott> by which I mean typeclasses :-P
17:30:37 <elliott> Vorpal: http://www.haskell.org/ghc/docs/latest/html/libraries/index.html
17:30:59 <elliott> hmm bytestring coming with ghc seems recent
17:31:06 <elliott> Vorpal: http://www.haskell.org/ghc/docs/latest/html/libraries/base/index.html
17:31:14 <Gregor> <outer_space> is it possible to refresh a script tag link javascript file without refreshing the page?
17:31:14 <Gregor> <inimino> "script tag link javascript file"?
17:31:14 <Gregor> <inimino> noun noun noun noun noun
17:31:14 <Gregor> <outer_space> thats how i talk
17:31:24 <elliott> Vorpal: the GHC namespace you probably Don't Need
17:31:33 <Vorpal> elliott, internals I presume
17:31:42 <elliott> Vorpal: yes, and some operations not provided portably
17:32:00 <Vorpal> elliott, but even with the docs, there is the question of actually learning what useful stuff is provided in each thing
17:32:17 <elliott> well the Data hierarchy is very obvious if you ask me
17:32:23 <elliott> it's obvious what Data.List is about
17:32:29 <Vorpal> elliott, all have their uses certainly, though I haven no clue why I would want unsafe things unless I'm implementing the IO monad myself or something like that
17:32:33 <elliott> Foreign is obviously FFI stuff
17:32:50 <elliott> and unsafe things aren't used in construction of the IO monad
17:32:55 <elliott> well they are, but not unsafePerformIO or unsafeCoerce
17:32:56 <Vorpal> elliott, right, so only the standard library would use the unsafe stuff I presume?
17:33:08 <Vorpal> elliott, doesn't the IO monad internally use unsafe stuff?
17:33:08 <elliott> Vorpal: occasionally it is useful to get around language restrictions.
17:33:16 <elliott> but frankly you should have to pass an exam to use it.
17:33:19 <elliott> <Vorpal> elliott, doesn't the IO monad internally use unsafe stuff?
17:33:24 <elliott> most of what would be unsafe in Haskell is part of the RTS
17:33:29 <elliott> the IO monad is actually just a state monad done with unboxed tuples
17:33:50 <Vorpal> elliott, is the IO monad written in haskell itself?
17:33:59 <elliott> yes, but not its execution
17:34:12 <Vorpal> elliott, err, interesting, what do you mean with that?
17:34:17 <oerjan> the array libraries have some unsafe functions for avoiding unnecessary bounds checking iirc
17:34:27 <elliott> Vorpal: say main was a list
17:34:32 <elliott> lists are implemented in Haskell
17:34:36 <elliott> but in the RTS, it'd print out each element of the list in order
17:34:42 <elliott> thus, the IO monad is implemented in Haskell
17:34:46 <elliott> but not its execution as side-effects
17:34:55 <elliott> Vorpal: anyway, you use things in Data for ... data; you use things in Control to structure your program; you use things in System to interface with the outside world, and... that's the vast majority of the stdlib
17:34:57 <Vorpal> elliott, now you made me wonder what on earth main :: [Integer] would do when compiled with ghc
17:35:11 <elliott> Main.main has to have type IO ()
17:35:27 <Vorpal> elliott, dammit, type safety, taking all the fun away ;P
17:35:31 <elliott> main = unsafeCoerce [9,9,9]
17:35:34 <elliott> it'd just segfault probably
17:35:50 <Vorpal> elliott, speaking of which, how do you give a system exit status in haskell
17:35:59 <Vorpal> elliott, say I need to exit with status 17 or whatever
17:36:01 <elliott> exitSuccess/exitFailure from System.Exit
17:36:10 <elliott> really, that's a bit of an obvious name...
17:36:19 <elliott> exitSuccess = exitWith ExitSuccess
17:36:26 <Vorpal> elliott, yeah I was thinking for stuff like befunge
17:36:27 -!- zzo38 has quit (Read error: Connection reset by peer).
17:36:28 <elliott> exitFailure = exitWith (ExitFailure <implementation-dependent>)
17:36:36 <elliott> Vorpal: fun fact, you can implement unsafeCoerce with unsafePerformIO
17:36:38 <Vorpal> not that I plan to do that in haskell, not any time soon at least
17:36:40 <elliott> because it breaks the type system
17:36:50 <Vorpal> elliott, err... how can that work
17:37:01 <elliott> basically, you can do "newIORef undefined"
17:37:03 <elliott> and if you unsafePerformIO that
17:37:06 <Vorpal> elliott, I have absolutely now idea what IORefs are
17:37:21 <elliott> normally, the structure of the IO monad would cause the a to be bound as soon as you put anything useful in it
17:37:27 <elliott> but with unsafePerformIO, you can put anything into it unsafely
17:37:33 -!- ajf|offline has changed nick to ajf.
17:37:34 <elliott> and treat what you take out as any value
17:37:38 <elliott> Vorpal: it's just a mutable variable in the IO monad
17:37:39 <oerjan> IORefs are mutable references
17:37:44 <ajf> I am thinking now about making a second esoteric language
17:37:48 <Vorpal> elliott, I can see why this is unsafe yeah
17:37:52 <ajf> Looking at ideas page.
17:38:05 <elliott> Vorpal: well it is unsafe because it can perform IO, the fact that it breaks the type system is just a bonus :)
17:38:15 <Vorpal> elliott, yeah for me haskell is currently mostly a nice purely functional language for doing smaller things in.
17:38:29 <elliott> well that's a personal failing ;)
17:38:42 <Vorpal> elliott, wait what, isn't being able to crash the thing unsafe?
17:39:01 <elliott> I'd point to Shiro as a place to see where modules can be useful, but it's so ugly right now that no
17:39:02 <olsner> which part of unsafeCoerce or unsafePerformIO looks safe to you?
17:39:06 <Vorpal> elliott, what on earth uses unsafeCoerce?
17:39:26 <Vorpal> elliott, that went over my head
17:39:36 <elliott> unsafeCoerce is useful for two things
17:39:40 <elliott> (a) insanely low-level bullshit
17:39:46 <elliott> (b) doing things in haskell ninety-eight
17:39:51 <elliott> for (b), you don't have Data.Dynamic
17:39:52 <Vorpal> elliott, I'd guess however that it is something like a gangster in a movie, coercing people
17:39:56 <elliott> so you can't do some things
17:40:02 <elliott> Vorpal: unsafeCoerce :: a -> b
17:40:18 <elliott> edward kmett uses it a lot because he has a haskell ninety-eight fetish
17:40:24 <Vorpal> elliott, uh... lets see... when would that actually do something sensible?
17:40:41 <Vorpal> elliott, given arbitrary a and b I can't see how you could...
17:40:48 <elliott> it's literally just like a C cast
17:40:51 <Vorpal> elliott, what is Data.Dynamic btw?
17:40:56 <oerjan> Data.Dynamic uses unsafeCoerce internally, obviously...
17:41:15 <Vorpal> elliott, that is actually quite useful sometimes
17:41:17 -!- cheater_ has quit (Quit: This computer has gone to sleep).
17:41:19 <elliott> Vorpal: something of the value Dynamic can be anything in the Typeable typeclass
17:41:26 <elliott> and there's safe methods to try and take stuff out of it
17:41:34 <elliott> this uses unsafeCoerce internally
17:41:39 <elliott> this is nice because you can have things like heterogenous maps
17:41:47 <Vorpal> elliott, could I do something with Dynamic like, checking if something is a tuple and then do something with it, and do something else if it is an integer?
17:41:52 <elliott> e.g. (Map String <anything>) where the String lets you know exactly what type the value would be
17:42:02 <elliott> but before I realised Data.Dynamic would suffice, my implementation used unsafeCoerce
17:42:31 <elliott> (fingerprints have their own state types, and I need to store fingerprint => its state, but Maps have only one value type)
17:42:43 <elliott> (so this is, basically, doing things the type system isn't equipped for)
17:42:51 <elliott> <Vorpal> elliott, could I do something with Dynamic like, checking if something is a tuple and then do something with it, and do something else if it is an integer?
17:43:08 <pikhq> Y'know what's awesome?
17:43:12 <elliott> shut up pikhq i'm livecoding
17:43:13 <Vorpal> elliott, what stuff would I use in haskell to parse and write a binary file format. Probably embedding IEEE floats, doubles, big and little endian 32 bit integers and 7 bits wide bitfields and such
17:43:21 <Vorpal> elliott, I mean this would be stupidly simple in erlang
17:43:27 <pikhq> Waking up and realising you should have woken up an hour ago.
17:43:39 <elliott> | (a,b) <- (fromDynamic x :: (Int,Int)) = ...
17:43:49 <pikhq> elliott: http://sprunge.us/
17:43:51 <olsner> Vorpal: why don't you use erlang then? :)
17:43:52 <elliott> EVERYONE STOP TYPING OR I'LL RIP YOUR THROAT OUT
17:43:53 <oerjan> Vorpal: it's a bit subtle, you cannot check if it is _any_ tuple, just if it is a tuple with specific type contents. iiuc.
17:44:03 <elliott> | Just (a,b) <- (fromDynamic x :: (Int,Int)) = ...
17:44:12 <elliott> | Just (a,b) <- (fromDynamic x :: Maybe (Int,Int)) = ...
17:44:18 <elliott> | Just a <- (fromDynamic x :: Maybe Integer) = ...
17:44:55 <elliott> Vorpal: ARE YOU HAPPY NOOOOOW
17:45:00 <olsner> oerjan: couldn't you just check if it's a tuple of dynamic then?
17:45:00 <elliott> <Vorpal> elliott, what stuff would I use in haskell to parse and write a binary file format. Probably embedding IEEE floats, doubles, big and little endian 32 bit integers and 7 bits wide bitfields and such
17:45:11 <elliott> from the binary package (part of Haskell Platform)
17:45:19 <olsner> (not sure what that would solve exactly though)
17:45:21 <elliott> attoparsec is also suitable, but for more text-like ByteStrings
17:45:40 <Vorpal> elliott, anyway, thanks for that foo example
17:45:41 <oerjan> olsner: well yes, but then you'd have wrap the contents in Dynamic, of course
17:45:52 <Vorpal> elliott, what is the overhead of Data.Dynamic?
17:46:06 <Vorpal> I mean I guess it has some
17:46:23 <elliott> the overhead of (toDyn x) compared to x is
17:46:34 <elliott> data Dynamic = Dynamic TypeRep Obj
17:46:47 <elliott> as for the definition of TypeRep
17:46:51 <elliott> data TypeRep = TypeRep !Key TyCon [TypeRep]
17:46:57 <Vorpal> elliott, doesn't haskell optimise away type information from runtime sometimes?
17:47:06 <elliott> newtype Key = Key Int deriving( Eq )
17:47:13 <elliott> data TyCon = TyCon !Key String
17:47:20 <elliott> Vorpal: erm, it always does
17:47:24 <elliott> types are completely irrelevant at runtime
17:47:45 <elliott> implementation not language
17:47:58 <elliott> this is done with typeclass magic
17:48:05 <elliott> which can't get erased, by definition
17:48:26 <Vorpal> elliott, but surely Data.Dynamic prevents that?
17:48:28 <oerjan> Vorpal: the Typeable class is precisely for getting a representation of a value's type, when you need it
17:48:35 <oerjan> and Dynamic builds on that
17:49:09 <elliott> anyway, obviously, one Data.Dynamic checks the type associated with the Dynamic value is correct,
17:49:15 <elliott> it has to get the actual value out of it, as the correct type
17:49:40 <elliott> unsafeCoerce is actually safer in some sense than unsafePerformIO here; it's safe as long as you check what you're about to do is OK
17:49:53 <elliott> whereas unsafePerformIO is unsafe in almost every instance because of Haskell's lack of run-time guarantees
17:51:18 <pikhq> unsafePerformIO is only "safe" when you literally do not care whether or not the side effects actually happen.
17:52:40 <pikhq> But, yeah. unsafeCoerce is actually about on par with C casts in safety. Except the name actually tells you that what you're doing might not work right.
17:53:55 <elliott> C casts are more heavyweight
17:53:57 <oerjan> there's a limitation with Dynamic in that you only can check for an exact type. if you have a Dynamic containing an unknown type, but which you know is say a Show instance, then you cannot get to it to print it.
17:53:57 <elliott> they convert floats and shit
17:54:08 <elliott> oerjan: you can with existential types
17:54:16 <ajf> I never liked C casts
17:54:21 <elliott> oerjan: anyway, hmm, are you sure of that?
17:54:24 <ajf> some convert, some just cast the binary data direct
17:54:26 <ajf> it bugs me
17:54:33 <oerjan> yes, but you need to arrange for a specific wrapping for the typeclass(es) you want to know about
17:54:48 <oerjan> elliott: unless something has changed majorly, yes...
17:54:58 <elliott> oerjan: show (Showable (fromDyn x ()))
17:55:06 <elliott> data Showable = Showable (forall a. (Show a) => a)
17:55:09 <elliott> instance Showable where ...
17:55:26 <oerjan> Typeable doesn't wrap up other typeclass information, so Showable cannot get to the Show instance to wrap it again
17:55:48 <elliott> I can't say I've ever thought
17:55:56 <elliott> "I need to receive a value which MIGHT be Showable", though :)
17:56:27 <oerjan> elliott: it would be useful if you want to print things from a heterogeneous collection...
17:57:08 <elliott> usually heterogeneous collections have _some_ kind of constraint on the contents...
17:57:14 <elliott> or you can't do anything with them, really
17:58:06 <oerjan> oh by MIGHT you meant that the value might not be? i guess that may not be common.
17:58:42 <elliott> so Showable should work fine
17:59:01 <elliott> and in that case you can just use a list of Showables anyway...
17:59:06 <oerjan> i am mainly just pointing out that you cannot use Dynamic to pretend that your haskell values behave like python values ;D
17:59:31 <elliott> oerjan: Sure you can, it's just that Python doesn't have any concept of Show at all ;)
17:59:41 <elliott> it's not a weakness of Haskell, it's a blindness of Python :D
18:00:21 <oerjan> or more specifically, that Dynamic cannot be directly used to support a dynamic subclass system
18:00:47 <oerjan> compatible with haskell's usual classes
18:01:39 * oerjan waits for someone to link to oleg's explanation of how to do it anyhow
18:01:40 -!- nooga has quit (Ping timeout: 240 seconds).
18:02:04 -!- nooga has joined.
18:04:25 <elliott> Should I use the program written in Erlang or the program not written in Erlang do accomplish this task?
18:11:46 <elliott> SURELY THAT IS ENOUGH TO ANSWER THE QUESTION
18:15:11 -!- oklopol has joined.
18:15:35 -!- MigoMipo has joined.
18:23:13 -!- oerjan has quit (Quit: Good night).
18:23:14 <elliott> Vorpal: i decided on erlang
18:25:27 <oklopol> elliott have you found meaning
18:26:32 <quintopia> how about jesus? i hear he's lost too
18:27:02 <elliott> he isssssssssss lost in space
18:30:41 -!- EgoBot has joined.
18:30:45 <Gregor> !sh echo PROBLEM SOLVED
18:30:47 <EgoBot> \xE2\x98\x83 PROBLEM SOLVED
18:31:04 <elliott> Gregor: Is this going to prevent botloops?
18:31:15 <elliott> I would really prefer things just filtered out \[one]DCC. :x
18:31:21 <Gregor> Nope, this will be better.
18:31:33 <elliott> Gregor: It seems to involve putting random shit before every message.
18:31:36 <elliott> Which is just not better in any universe ever.
18:31:52 <Gregor> !sh echo PROBLEM SOLVED
18:32:07 <elliott> I sure hope you're joking.
18:34:07 <Gregor> Give me a command for another bot.
18:34:19 <elliott> I can already see what it's doing, and it's still barfworthy.
18:34:29 <elliott> For one, I expect oerjan will see a lot of muck before everything EgoBot says.
18:34:31 <Gregor> My policy is "fuck you"
18:34:40 <Gregor> My policy is "fuck him"
18:34:46 <quintopia> my policy is "for how much money?"
18:34:53 <elliott> Then maybe don't say "Better?"
18:35:07 <fizzie> Honesty is the best policy.
18:35:16 <oklopol> in soviet russia, he fucks you
18:35:24 -!- z^ck has quit (Quit: leaving).
18:36:43 <elliott> If magic is "a character that sometimes on some OSes/IRC clients/etc. shows as invisible or small, but which actually pollutes every bot output", then yes, magic.
18:37:17 <Gregor> elliott: Magic is "elliott will complain about every fucking thing I do so he can just fuck off"
18:37:37 <elliott> Gregor: I'm still wondering why you said "Better?".
18:37:44 <Gregor> Better than snowman :P
18:38:23 <elliott> I've already expressed what I believe would be the best solution (ban "\[one]DCC" and probably "sendkeylogger", which should be trivial to do with anything), I'm just pointing out that this is a clearly inferior solution that won't work for everyone here.
18:38:34 <fizzie> Gregor: Are you sure the hypothetical afflicted network thingamajikcs that get confused about bad DCC stuff in the 6667 port TCP streams won't just look for any instances of \x01DCC?
18:38:34 <Gregor> This covers that AND botloops.
18:39:01 <Gregor> fizzie: That's not the hypothetical problem being solved here ... either of them.
18:39:50 <elliott> They drop the connection at \[one]DCC SEND longenoughstring due to a bug.
18:39:56 <elliott> Also, "sendkeylogger" gets a drop from Norton /anywhere/ in the line.
18:40:20 <Gregor> The problem I'm solving is "people bitch when they get CTCPs"
18:40:32 <Gregor> I'm not solving the particular DCC being sent, which was never actually a problem.
18:40:34 <elliott> Uhh, for a start, CTCPs actually can be anywhere in the line.
18:40:53 <Gregor> !sh echo -e '\x01ACTION is inclined to disagree.\x01'
18:40:53 <EgoBot> <CTCP>ACTION is inclined to disagree.<CTCP>
18:40:53 <elliott> For a second, the problem being solved here is the bots being able to hypothetically drop connections, unless I'm terribly misunderstanding the staff position on this.
18:41:24 <elliott> !sh echo -e '\x01DCC SEND startkeylogger 0 0 0\x01'
18:41:25 <EgoBot> <CTCP>DCC SEND startkeylogger 0 0 0<CTCP>
18:42:05 <elliott> Anyway, it's all idiotic because
18:42:06 <elliott> <CTCP>DCC SEND startkeylogger 0 0 0<CTCP>
18:42:11 <elliott> whoever would use a bot to do it can do it themselves just fine.
18:42:54 <Gregor> !sh echo -e '\x01ACTION is inclined to disagree.\x01'
18:43:46 <fizzie> How many clients were there that treated the not-at-start CTCPs properly? (They are legal, sure, but still.)
18:43:57 <Gregor> !sh echo -e '\x01ACTION is inclined to disagree.\x01'
18:44:08 <Gregor> How did I break this X-D
18:44:12 <elliott> fizzie: Since this is all fucking ridiculous pedantry and whoever whined in the first place is an idiot, I'm going to be pedantic in response, yah.
18:45:03 <Gregor> !sh echo -e '\x01I will stab your face.\x01'
18:45:03 <EgoBot> .I will stab your face..
18:45:21 <elliott> !sh echo -e '\x01I will stab your face.\x99'
18:45:22 <EgoBot> .I will stab your face.
18:45:47 <elliott> I like how that fucked up encoding-detection for that line, thus revealing the Stupid Prefix™.
18:47:06 -!- HackEgo has joined.
18:47:20 <Gregor> `echo You guys can go suck a rusty nail.
18:47:22 <HackEgo> \xE2\x80\x8BYou guys can go suck a rusty nail.
18:48:29 <Gregor> `echo You guys can go suck a rusty nail.
18:50:33 <Gregor> `echo You guys can go suck a rusty nail.
18:50:34 <HackEgo> You guys can go suck a rusty nail.
18:50:58 <elliott> `echo Hey guys, startkeylogger.
18:51:00 <HackEgo> Hey guys, startkeylogger.
18:52:09 <Gregor> Yeah, I'm not going to go filtering "startkeylogger" in all contexts.
18:52:36 <cheater666> Gregor, have you seen the enterprise D in minecraft?
18:52:41 <Gregor> Also this whole situation is outright ridiculous since anything you could get the bots to say, YOU COULD SAY YOURSELF >_<
18:52:45 <Gregor> cheater666: I've seen it.
18:52:46 <elliott> Gregor: I was going to send a CTCP, but...
18:52:55 <elliott> cheater666: #esoteric-minecraft
18:59:17 <oklopol> #esoteric-minecraft is just a front for prostitution
19:01:29 <quintopia> cheater666: did they actually finish it? i only saw the video of the sheell
19:10:33 <tswett> Wait, did someone manage to get lambdabot to do a DCC SEND 27 hours ago?
19:11:32 -!- ais523 has joined.
19:12:02 <HackEgo> 822-date \ X11 \ [ \ a2p \ addpart \ addr2line \ apropos \ apt-cache \ apt-cdrom \ apt-config \ apt-extracttemplates \ apt-ftparchive \ apt-get \ apt-key \ apt-mark \ apt-sortpkgs \ aptitude \ aptitude-create-state-bundle \ aptitude-run-state-bundle \ ar \ as \ awk \ base64 \ basename \ bashbug \ bdftopcf \ bdftruncate \ bsd-write
19:12:42 <HackEgo> base64: ERROR: cannot open `base64' (No such file or directory)
19:12:55 <HackEgo> /usr/bin/base64: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped
19:12:55 <ais523> also, Gregor, what's so bad about Microsoft buying Skype? (or do you like Skype?)
19:13:23 <Gregor> I don't particularly like Skype, but I have to use it, and it does not bode well for its Linux and Android ports.
19:13:42 <ajf> I use it on Linux
19:13:54 <ajf> I shall make an alternative...
19:13:58 <ajf> ...in BRAINFUCK!
19:14:06 <ajf> no wait, Malborge!
19:14:59 <ais523> there are open-source alternatives already, IIRC; I don't know how well they work
19:15:13 <ajf> yes, but are they in Brainfuck?
19:15:14 <ais523> my guess is that they work almost as well but are much harder to set up
19:15:25 <ais523> ajf: BF's IO capacities are a little limited
19:15:48 <fizzie> ais523: But what about PSOX?!
19:16:02 <elliott> <ais523> my guess is that they work almost as well but are much harder to set up
19:16:10 <elliott> the compression stuff skype uses is hyper-proprietary
19:16:12 <elliott> so i wouldn't be so sure about that
19:16:13 <cheater666> quintopia, even a nice custom texture set
19:16:28 <quintopia> Gregor: they hadn't worked on the linux port in like 5 years anyway. so it's not really gonna get worse...
19:16:28 <ais523> I thought Speex was pretty good at compression, and it's open-source
19:16:40 <elliott> ais523: It's good at offline compression certainly
19:17:00 <ais523> hmm, I suppose it depends on how much context it needs
19:17:00 <fizzie> Speex has some streaming-codec-related thing, at least.
19:17:23 <fizzie> I think VOIP is one of their considered use cases.
19:18:20 <ajf> ais523: I know brainfuck has limited IO
19:18:26 <ajf> brainfuck++ (IIRC) doesn't
19:18:28 <ajf> it has sockets
19:18:36 <ais523> there are a huge number of BF variants, I've lost track of them all
19:18:47 <elliott> they all need a quick death in flames
19:18:51 <ajf> it's a bandwagon
19:18:56 <ajf> srsly MAEK AN ORIGINAL LANGUAGE
19:19:10 <elliott> relevant http://esolangs.org/wiki/User:Phantom_Hoover
19:19:48 <elliott> # (Deletion log); 17:27 . . Ais523 (Talk | contribs) (deleted "Talk:Tory": content was: '== MbxNJPMXPOoaQGQ ==TYVM you've sleovd all my problems' (and the only contributor was '206.169.53.170'))
19:19:48 <elliott> # (Deletion log); 17:26 . . Ais523 (Talk | contribs) (deleted "User talk:68.226.23.83": content was: '== QNYOwomFjTW ==Thats not just logic. Thats really ssenbile.' (and the only contributor was '1.202.192.7'))
19:20:14 -!- elliott has set topic: TYVM you've sleovd all my problems | "That's not just logic. That's really ssenbile." --Ernest Hemingway | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
19:20:24 <oklopol> "<ais523> ajf: BF's IO capacities are a little limited" <<< psox
19:20:28 <tswett> Hemingway was a very ssenbile person.
19:20:34 <fizzie> That "Fring" thing used to speak Skype, don't know how it is nowadays. (And it's not open-source.)
19:20:54 -!- oklopol has changed nick to Sgeo.
19:21:12 <Sgeo> i'm creeping myself out
19:21:25 <elliott> you're not obsessing enough
19:21:32 <elliott> this is really terrible roleplaying :/
19:21:46 <Sgeo> okay umm i talked to my dad and he said i can't transfer
19:22:07 <Sgeo> and there's this girl i really like and she might like my but she might also not like me
19:22:18 <Sgeo> i suck at everything :(
19:22:19 <fizzie> Sgeo: She might like your what?
19:22:29 <Sgeo> elliott: smoking is bad for you according to my dad
19:22:33 <elliott> his dad installed an software on his pc
19:22:37 <elliott> which stops him saying rude words
19:22:41 <Sgeo> fizzie: sorry typo
19:22:52 <ais523> <Slashdot> Approximately one trillion readers wrote in to tell us that there is a big rumor that Microsoft is buying Skype.
19:22:57 <ais523> hmm, that sort of hyperbole is worrying
19:23:06 <Sgeo> elliott: clearly it's great roleplaying
19:23:07 <elliott> Sgeo: can you tell us the proximity to your lips of your last kiss plz
19:23:07 -!- Sgeo has changed nick to oklopol.
19:23:12 <elliott> that's something we need to know as a channel
19:23:16 <oklopol> my last kiss was a long time ago
19:23:45 <ais523> hmm, oklopol/Sgeo's IP doesn't match either of their usual IPs, although it's in Finland
19:23:51 <oklopol> Phantom_Hoover: yes, sorry
19:24:01 <oklopol> i tried to make it terribly obvious i was joking
19:24:17 <elliott> it is impossible to be more sgeo than gseo
19:24:20 <oklopol> but sgeo is such a stereotypical sgeo i suppose that doesn't show easily
19:24:33 <ais523> now I need to remember what poe's law is
19:24:49 <elliott> ais523: it has no wikipedia article it doesn't exist
19:24:54 <elliott> it's only documented on spam sites with lots of adverts
19:24:54 <oklopol> i moved ages ago but i used an intermediate internet
19:25:00 <elliott> ITT ancient log references
19:25:27 <EgoBot> http://google.com/search?q=Poe's+Law
19:25:36 <lambdabot> http://rationalwiki.org/wiki/Poe's_Law
19:25:43 <elliott> http://en.wikipedia.org/wiki/Poe%27s_law
19:25:46 <elliott> it has a wikipedia article now
19:26:37 <ais523> I saw someone Google it in another channel recently, and Wikipedia wasn't the first answer
19:26:43 <ais523> so I concluded it wasn't on Wikipedia at all
19:27:36 <elliott> you decided it didn't exist a few years ago, because I linked to the RW article
19:28:43 <oklopol> if there's a rational wiki is there also a natural wiki and a real wiki?
19:29:17 <elliott> it's a very complex wiki HUR HUR
19:29:30 <oklopol> yes but some of the articles are kind of irrational
19:30:13 <lambdabot> I have perl bok but saw haskell and am woner hey this is new and improved and seems powerful because MIT guy philip green says haskell adn lisp are only langs where u spend more tie thinking than
19:30:41 <ajf> http://www.google.com/events/io/2011
19:32:09 <ais523> hmm, according to the talk page for that article, it's been deleted three times already
19:32:35 <elliott> # ^ Aikin, Scott F., Poe's Law, Group Polarization, and the Epistemology of Online Religious Discourse (January, 23 2009). Available at SSRN: http://ssrn.com/abstract=1332169
19:32:36 <elliott> # ^ a b Chivers, Tom (23 Oct 2009). "Internet rules and laws: the top 10, from Godwin to Poe". The Telegraph. http://www.telegraph.co.uk/technology/news/6408927/Internet-rules-and-laws-the-top-10-from-Godwin-to-Poe.html.
19:32:38 <elliott> have made it start existing
19:33:11 -!- augur has quit (Remote host closed the connection).
19:33:24 <ais523> wow, Slashdot have actually improved their interface, making it uglier but less annoying
19:33:28 <ais523> normally they go in the other direction
19:33:39 <ajf> Google App Engine for GO
19:34:58 <ajf> interesting because, I didn't know Go was suitable
19:35:11 <ajf> surprsing for me because I didn't realise google took Go that seriously
19:35:26 <ajf> Good point.
19:35:40 <elliott> go is a twenty-percent time project by the creators of plan 9.
19:35:49 <cheater666> well, whoever made go, google stuck with it and marketed it
19:35:52 <ajf> created within google
19:35:55 <elliott> it is also designed for systems programming, not web development.
19:35:58 <elliott> and google do not market go at all.
19:36:13 <elliott> there is exactly one google blog post about it, and a few videos on their youtube developers channel
19:36:22 <elliott> http://golang.org/ <-- not a single mention of google apart from the app engine news post.
19:37:00 <ajf> I remember hearing about it from Google though
19:37:06 <ajf> it isn't a Google thing though
19:37:13 <ajf> it is just popular inside Google
19:37:21 <ajf> as it is a 20% time project of those people
19:37:32 <elliott> with the 20% stuff who can even really tell who's project it is
19:37:39 <elliott> but it's definitely not very tied to google
19:38:02 <cheater666> all the media has marketed Go as a "Google's Go" because google made sure of it
19:38:32 <cheater666> go is as unrelated to google as are drugs to the brixton underground station
19:40:38 <cheater666> also, mention of google: http://golang.org/doc/go_faq.html#Can_I_translate_the_Go_home_page
19:40:56 <cheater666> why would you want to use the google logo on something unrelated to google?
19:42:08 <cheater666> either way, it's sort of obvious that google is afraid enough of a negative reaction (google is borg etc) that they didn't want to blow it and un-branded Go as much as possible
19:42:53 <elliott> yes, it is always easier to formulate conspiracies than to actually try and make sense.
19:42:54 <cheater666> in fact, people at google i spoke to uniformly said that it's one of their top concerns everyone says google is evil
19:43:06 <elliott> i am going to contact russ cox now and tell him he's been found out, poor guy
19:43:31 <cheater666> make sure to include a nice drawing with it.
19:46:42 -!- elliott has quit (Read error: Connection reset by peer).
19:46:47 -!- elliott_ has joined.
19:50:04 -!- hagb4rd has quit (Quit: hagb4rd).
19:51:47 -!- elliott_ has quit (Quit: Leaving).
19:51:53 -!- elliott_ has joined.
19:52:02 -!- elliott_ has changed nick to elliott.
19:52:10 -!- elliott has quit (Remote host closed the connection).
19:52:20 -!- elliott_ has joined.
19:52:34 -!- elliott_ has quit (Remote host closed the connection).
19:52:44 -!- elliott_ has joined.
19:52:55 * Phantom_Hoover notes that Google maps has something called "Scotmid Funeral Services".
20:01:41 -!- elliott_ has changed nick to elliott.
20:01:52 -!- elliott has quit (Changing host).
20:01:52 -!- elliott has joined.
20:16:46 <Gregor> "Microsoft will continue to invest in and support Skype clients on non-Microsoft platforms."
20:16:49 <Gregor> Yeah, suuuuure you will.
20:17:18 <Gregor> Microsoft and Skype share the vision of bringing software innovation and products to our customers, lol
20:17:41 <ais523> there was a rumour that Facebook were planning to buy Skype too, wasn't there?
20:17:51 <quintopia> that's mentioned in the above linked article
20:17:54 <ais523> I'm not sure which would be worse
20:18:03 <ais523> quintopia: the above linked article is about Go
20:18:17 <ais523> as is the one above, and the one about /that/ is about Poe's Law
20:18:21 <Gregor> Microsoft's buyout is confirmed.
20:18:42 <Gregor> See http://www.microsoft.com/Presspass/press/2011/may11/05-10CorpNewsPR.mspx
20:19:06 <fizzie> I like how the rumour was that either Facebook or Google will buy Skype, but then turns out Skype was indeed getting bought, but by Microsoft.
20:31:34 <ajf> Skype for Linux withdrawn
20:31:43 <ajf> Microsoft doesn't acknowledge it ever existed
20:31:52 <ajf> The Mac version will stay though
20:31:58 <ajf> else Apple will ra-
20:32:03 <ajf> owait FaceTime
20:32:10 <tswett> Hey guys, I've heard that YouTube is buying Microsoft.
20:32:15 <Gregor> Naw, the Mac version will stay.
20:32:20 <ajf> Apple will WANT no Skypee
20:32:27 <Gregor> ajf: But yeah, Microsoft will withdraw the Linux version and ALL references to it.
20:32:34 <Gregor> They will make it vanish like Microsoft Xenix.
20:33:00 <ajf> Microsoft used to say
20:33:07 <ajf> that XENIX and DOS went hand-in-hand
20:33:25 <ajf> you know, that you could write applications that using common I/O and functions would work on both
20:33:39 -!- Cheery has quit (Quit: Lost terminal).
20:33:52 <ajf> They have completely abandoned it, no code re-used
20:34:04 <ajf> How do I know? The Windows 7 UNIX Environment...
20:34:07 <ajf> uses GNU Utils...
20:34:27 <ajf> Not propreitary xenix-based UNIX utilities
20:34:34 <Gregor> Well, they sold Xenix too.
20:34:42 <Gregor> They may very well have not had the rights to use it by now.
20:36:05 <Gregor> In the beginnings of the OS X days, Apple scrubbed all references to Linux from their site.
20:36:18 <Gregor> Before then they had MkLinux (albeit abandoned) and a few other random things.
20:36:21 <ajf> Well, not exactly
20:36:26 <Vorpal> <Gregor> Now they say "Xenix?" <--- hehe
20:36:46 <ajf> Steve Jobs mentioned that Darwin was very "linux-like" in his initial keynote on OS X
20:37:16 <ajf> Darwin is like Linux, but BSD-based, has a funny Apple-designed open-source license, and no sensible person uses it
20:37:29 <Vorpal> <tswett> Hey guys, I've heard that YouTube is buying Microsoft. <-- I can only presume this is a joke
20:37:47 <Vorpal> <fizzie> I like how the rumour was that either Facebook or Google will buy Skype, but then turns out Skype was indeed getting bought, but by Microsoft. <-- ouch.
20:37:55 <elliott> <ajf> Darwin is like Linux, but BSD-based, has a funny Apple-designed open-source license, and no sensible person uses it
20:38:01 <Gregor> ajf: Also, Darwin is a monolithic kernel sitting on Mach, because that's brilliant.
20:38:05 <elliott> apart from everyone who uses os x
20:38:08 <Vorpal> good thing I never used skype
20:38:21 <ajf> Gregor: wait what
20:38:35 <ajf> a monolithic kernel running ON TOP OF a microkernel?
20:38:52 <Vorpal> but wait, what happened to netmeeting?
20:38:57 <ajf> what the fuck
20:39:06 <Gregor> Apple has a weird obsession with Mach, even when it gives them nothing.
20:39:21 <Gregor> Vorpal: I remember that it existed once :P
20:39:45 <tswett> I'm guessing Mach is the reason that uname -a tells me I have an i386 processor when I don't.
20:39:49 <ajf> Gregor: it's genius
20:39:58 <ajf> they can say they have a microkernel and not lie
20:40:08 <ajf> and say they have a monolithic kernel and not lie
20:40:14 <ajf> it's marketing brilliance
20:40:16 <Gregor> That's exactly what they do :P
20:40:35 <Vorpal> ajf, but wait, why would saying that be useful?
20:40:53 <Vorpal> I mean, come on, who cares which sort of kernel it is, as long as it is fast and gets the job done
20:40:56 <ajf> Just for marketing purposes...
20:41:20 <Vorpal> ajf, yes but why would that be useful for marketing
20:41:34 <ajf> you can say both
20:41:39 <ajf> that's all
20:41:50 <ajf> Gregor: wait I am confused
20:41:50 <elliott> Yes, Apple markets to people who know what a kernel is.
20:42:01 <ajf> Darwin is built on XNU
20:42:10 <ajf> but apple also have released XNU
20:42:18 <Gregor> ajf: Yeah, it's XNU that I'm referring to.
20:42:26 <Vorpal> <ajf> you can say both <-- yes but come on, apple target end users, who don't care which fucking type of kernel it is as long as it works
20:42:42 <ajf> I was not completely serious
20:43:10 <ajf> Mac users probably think a kernel is some evil thing PC's do that's not good
20:43:17 <Vorpal> wait, could you run other kernels on top of mach side by side with the OS X one?
20:43:32 <Gregor> Actually I think Mac OS X also gained a fair bit of market in the beginning from reeling in Unixers.
20:43:50 <ajf> "Better than Microsoft!"
20:43:53 <Gregor> Only to then be trapped in an environment which simultaneously conforms to all Unix standards and is the shittiest Unix one would ever want to use.
20:44:06 <elliott> Gregor: Come on, that's Interix.
20:44:10 <ajf> follows standards
20:44:12 <ajf> yet incompatible
20:44:15 <ajf> it's magic
20:44:28 <elliott> OS X is compatible with most Unix software.
20:44:36 <elliott> It's shitty, yes, but shittiness does not equate to being able to make ridiculously untrue statements.
20:44:43 <cheater666> i would go for windows+gnu over osx any day of the week
20:44:53 <ajf> you know what
20:44:56 <Gregor> Welp, now that I've started a flamewar, I'll step out trolololololol
20:44:59 <ajf> cygwin > OS X Darwin
20:45:09 <elliott> Cygwin is the slowest piece of shit ever.
20:45:10 <ajf> no it isn't
20:45:15 <ajf> no it isn't
20:45:19 <ajf> cygwin is awesome
20:45:19 <elliott> Interix/Gentoo Prefix is vastly superior to Cygwin.
20:45:19 <cheater666> cygwin may be bad, but it's not as bad as osx.
20:45:30 <elliott> ajf: have you ever run a configure script on cygwin?
20:45:34 <elliott> ./configure --help can take several minutes.
20:45:47 <elliott> Cygwin's fork() is insanely slow and stupif.
20:45:50 <ais523> cygwin is particularly slow at configue because it forks a lot of processes
20:45:52 <Vorpal> elliott, most of all OS X = beachball spinning to me. Could be because I mostly used an older mac (plastic white, big space between keys, whatever model that is), that was upgraded to 10.6
20:46:00 <ais523> it isn't slow in general, it's just really bad at forking
20:46:03 <elliott> ais523: Cygwin is useless at shell scripts entirely, which makes it the SHITTIEST Unix possible.
20:46:14 <ajf> ais523: then how does google chrome do it?
20:46:16 <ais523> elliott: not ones written in pure bash!
20:46:19 <ajf> a process pool?
20:46:28 <elliott> Vorpal: That doesn't sound like an older model to me.
20:46:31 <ais523> ajf: it isn't forking; it uses multiple processes, but does not fork
20:46:33 <elliott> Well, maybe two thousand and six old.
20:46:36 <cheater666> Vorpal, osx has additionally the worst fucking gui ever
20:46:40 <Vorpal> elliott, that sounds right
20:46:42 <ais523> Windows in general can't fork; Cygwin can simulate it, but via a really complex process
20:46:42 <elliott> ajf: Do you have any idea what fork is
20:46:47 <ajf> ais523: oh yeah, doesn't fork share address space or something
20:47:00 <ais523> ajf: it copies pretty much everything
20:47:01 <elliott> fork clones the current process and branches.
20:47:06 <ajf> oh, cloning
20:47:08 <elliott> This is not the same as starting a new process.
20:47:17 <elliott> fork is also how you start a new process on Unix.
20:47:18 <olsner> well, I think the bash part of cygwin works fine (no idea of the speed, probably awful)
20:47:27 <elliott> Since Unix is practically based around starting processes, Cygwin is uselessly slow.
20:47:28 <ajf> I understand. Entiendo. Wakarimashita.
20:47:36 <elliott> Additionally it took until the latest release to get ANY Unicode support.
20:47:47 <elliott> And the package manager is HORRIBLE, and all the packages are major versions out of date.
20:48:10 <Vorpal> elliott, anything unix on windows is terrible
20:48:12 <ajf> What's the MS UNIX environment like, I wonder?
20:48:25 <ajf> You know, the NT POSIX subsystem?
20:48:31 <Gregor> Terminal.app is surprisingly shitty.
20:48:44 <ajf> Here's a story
20:48:46 <olsner> cheater666: there is xterm
20:48:48 <cheater666> it's like i'm in this candy store and the only door out of it is full of liche trying to bite your balls off
20:48:55 <ajf> Once upon a time there was Terminal.app
20:49:02 <ajf> And gnome's terminal
20:49:07 <ajf> Terminal.app was shitty
20:49:13 <cheater666> olsner, i was unable to install xterm or it was shitty, i don't remember
20:49:21 <Vorpal> ajf, uh, what about konsole?
20:49:29 <ajf> Vorpal: konsole?
20:49:29 <ais523> all OSX terminals are pretty bad, as far as I know
20:49:36 <Vorpal> ajf, you mentioned gnome's terminal
20:49:39 <ajf> oh, the KDE one
20:49:48 <Vorpal> ajf, also nothing wrong with urxvt
20:49:50 <ajf> cheater666: I am aware
20:49:55 <fizzie> I just run rxvt-unicode on OS X with X11.app.
20:49:58 <ajf> But it allows you to run some UNIX software
20:50:14 <Vorpal> ajf, personally I use konsole from inside gnome
20:50:16 <ajf> last time I used Konsole?
20:50:20 <olsner> cheater666: you must've found it shitty then, because X11 is either included in the OS install or installable from the install disc
20:50:26 <ajf> bad and good memories flood back
20:50:36 -!- TeruFSX has joined.
20:50:52 <Vorpal> ajf, on another system where I use gnome-terminal I changed key bindings for switching/moving tabs to match those in konsole
20:51:00 <Vorpal> though I gave up KDE after KDE 3
20:51:01 <cheater666> and who wants to have X11 running on a mac that can barely handle firefox
20:51:07 <cheater666> and that's one of the recent Mac Pro's btw
20:51:19 <Vorpal> and I'm likely giving up on gnome soon. If gnome 3 is as bad as it looks
20:51:33 <Vorpal> I guess I'll go for xfce or something
20:51:37 <ajf> Since we are on the subject of Mac OS X/Apple stuff
20:51:45 <ajf> Guess my favourite esoteric language
20:51:53 <fizzie> Anyway, there's the Other Thing (Windows Services for UNIX and/or Subsystem for UNIX-based Applications) that actually provides a Unixy thing in Windows, unlike the really minimal POSIX subsystem.
20:51:55 <Gregor> I use XFCE+konsole durpadurp :P
20:52:21 <ajf> Vorpal: No, Objective-C
20:52:27 <cheater666> fizzie, that's why i pointed out the difference to ajf
20:52:32 <olsner> Gregor: the nice thing about xfce there: you're allowed to run both gnome and qt software without hating the other kind :)
20:52:43 <ajf> cheater666: Sure it is
20:52:51 <Vorpal> fizzie, that POSIX subsystem is dead isn't it?
20:52:56 <ajf> They took C and deliberately made it worse
20:52:56 <olsner> or you're required to hate both anyway, dunno which of those it is the most really
20:52:59 <fizzie> Vorpal: Yes, I believe it is.
20:53:28 <ajf> that is true...
20:53:30 <Gregor> http://www.rinkworks.com/bookaminute/b/clarke.2001.shtml "Reader Wow. I understand the movie now." <-- bahahahahah so true
20:53:39 <ajf> I just had a stupid idea :>
20:53:46 -!- augur has joined.
20:53:48 <Vorpal> ajf, on the other hand the only thing worse than C++ that I can think of right now would be PHP
20:53:50 <ajf> preprocessor abuse to create an esoteric language
20:53:56 <ajf> Vorpal: no no no
20:53:58 <olsner> hehe, so taking C and trying to make it worse produces something better than taking C and trying to improve it?
20:54:02 <ajf> PHP is vaguely usable
20:54:37 <cheater666> or is he just new to the idea of computers
20:54:38 <ajf> Seriously, PHP is OK
20:54:43 <ajf> The standard library is.... not
20:54:47 <cheater666> ajf, have you had a computer last year
20:54:49 <ajf> the equality operator is not
20:54:56 <ajf> cheater666: yes and I made sites in PHP
20:55:02 <ajf> and can confirm PHP is shitty
20:55:05 <ajf> but worse exists
20:55:07 <augur> anyone speak german natively?
20:55:20 <ais523> augur: you mean in the channel? I imagine lots of people do altogether
20:55:29 <Vorpal> <ajf> but worse exists <--- noooo?
20:55:42 <augur> cheater666: i need a german not a second-language speaker, but thank you
20:55:58 <cheater666> i know some germans, i could ask them whatever
20:56:04 <ajf> Vorpal: yes
20:56:10 <ajf> I think worse exists
20:56:16 <ajf> what was I thinking of just now
20:56:25 <augur> cheater666: i have some grammaicality judgment questions
20:56:30 <Vorpal> perl is actually quite a bit better than php
20:56:31 <augur> ill poke you later with them?
20:56:32 <ajf> let me think a second
20:56:44 <ajf> Visual Basic
20:56:46 <cheater666> because i'm going to sleep in 3..2..1..
20:56:54 <Vorpal> hmmm... haven't used it so don't know
20:57:05 <ajf> Wait actually no, Visual Basic.NET is *ok*
20:57:11 <Vorpal> ajf, but at least C++ is slightly better than PHP
20:57:26 <ajf> You know, PHP does have some *good* features
20:57:31 <ajf> two of them
20:57:34 <ajf> the rest are shit
20:57:41 <ajf> first, sessions are really easy
20:57:44 <ajf> session_start();
20:57:47 <ajf> second, globals
20:57:53 <ajf> third, nothing else
20:57:57 <Vorpal> the second is a misfeature
20:58:09 <ajf> $_GET["quack"]
20:58:18 <ajf> what's wrong with that?
20:58:18 <Vorpal> ajf, come on, it should be a parameter to the entry point
20:58:23 <cheater666> well done doing what thousands of other languages do too
20:58:25 <ajf> no entry point
20:58:29 <ajf> it's a scripting language
20:58:49 -!- augur has quit (Remote host closed the connection).
20:58:51 <ajf> I have to say, after using Perl
20:58:57 <ajf> For web development, it is...
20:59:00 <ajf> Just as bad as PHP
20:59:10 <Vorpal> ajf, there should be no global state
20:59:37 <Vorpal> well apart from things external to the language, databases, file system and so on
20:59:55 <Gregor> Things external to the language, like databases, file systems, HTTP requests ...
20:59:55 <olsner> at least Perl has all its ugliness right on the surface (in the unreadable syntax) but comes with clever (and sinister) ideas beneath it, php is just layers of stupid
21:00:15 <Vorpal> Gregor, hey you can regard the page as a function of the HTTP request
21:00:20 <Vorpal> meaning it is NOT global state
21:00:27 * ajf is entering sarcasm mode
21:00:49 <ajf> PHP IS AWESOME BECAUSE EVRY FUNCTION YOU EVAR NEED EVAR IS IN THE GLOBAL NAMESPACE
21:01:01 * ajf exits sarcasm mode
21:01:07 <cheater666> olsner, i worked with a core php developer
21:01:09 <ajf> That is precisely what I HATE about PHP
21:01:15 <cheater666> 1. i wrote better php than him 2. he's an idiot
21:01:23 <Vorpal> didn't they add namespaces?
21:01:26 <ajf> WHY THE FUCK DO YOU NOT USE NAMESPACES, PHP 5?
21:01:34 <ajf> Vorpal: and they don't use them. go figure
21:01:35 <Vorpal> with some weird syntax
21:01:49 <ajf> they have them, but still pretty much everything is imported by default
21:01:56 <ajf> it's worse than ANSI C
21:01:58 <ajf> much worse
21:02:16 <ajf> also PHP-tards defend this... D:
21:02:29 <cheater666> memorable quotes are "instead of exceptions you can just return 0, it's the same. what's so special about exceptions" as well as "every woman has her price" and "prague? what can you do there other than sex tourism?"
21:02:34 <ajf> even JS is better tahn PHP
21:02:56 <Vorpal> ajf, nothing is imported by standard in C
21:03:01 <Vorpal> well okay a few #defines
21:03:04 <ajf> Vorpal: not what I mean
21:03:20 <Vorpal> ajf, what did you mean then
21:03:21 <ajf> Just C has some issues with function name conflicts
21:03:30 <Vorpal> ajf, oh yes I know, I used ncurses
21:03:32 <ajf> As no namespaces
21:03:41 <Vorpal> ajf, it has #define cls() and what not
21:03:45 <Vorpal> or was it #define clear()
21:03:45 <ajf> PHP is significantly worse as they import EVERYTHING
21:03:51 <Vorpal> well stupidity like that anyway
21:04:16 <cheater666> anyways, we should have like an esolang competition on writing stupid shit in php
21:04:25 <olsner> cheater666: thanks for confirming my prejudices on php developers
21:04:26 <Vorpal> actually it is better that it is #defines in ncurses, means you can at least link to other stuff
21:04:33 <cheater666> maybe namespaces, introspection, and the debugging api
21:04:37 <ajf> I will race all of you
21:04:44 <ajf> to add the esolang article for PHP
21:04:55 <Vorpal> it is too terrible for it
21:05:26 <cheater666> we could put it in the joke langs list
21:05:34 <ajf> yes. do that.
21:05:57 <cheater666> so i was working with the best of the best
21:07:13 -!- horror21 has joined.
21:07:14 <cheater666> you haven't been following the conversation have you
21:07:21 <olsner> with everything built into the parser and rewinding the input stream for flow control and stuff like that, I imagine goto could be a bit difficult to add
21:07:35 <ajf> I somehow missed the person you mean
21:08:09 <cheater666> You are absolutely positive there never was and never will be a gun in this room.
21:09:17 -!- horror21 has left.
21:09:44 <cheater666> olsner, it's not even a real goto, but anyways it's just some bytecode hack or something
21:10:16 <ajf> OK so I added a language to the joke language list
21:10:18 <cheater666> i didn't bother learning anything about it
21:10:51 <olsner> practical extraction and reporting language or whatever it's called?
21:11:07 <ajf> it's obviously a joke
21:11:17 <ajf> I mean, who would make a language that crap intentionally/
21:13:46 <ajf> http://esoteric.voxelperfect.net/wiki/PHP
21:13:56 <ajf> Could you guys help expand this article?
21:14:24 <cheater666> but put in info about some esolang properties of it
21:15:54 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
21:16:47 <ajf> see second google result for "php goto"
21:16:49 <ajf> ahahahahaha
21:18:40 <cheater666> http://www.php.net/manual/en/book.classkit.php
21:20:12 <ais523> ajf: can I ask that you don't put widely used programming languages on the joke language list? a) they don't fit there, b) it massively confused Reddit a while back
21:20:22 <ais523> we need a separate list for esoteric features of real-world languages, really
21:20:36 <ajf> I think PHP should be there though
21:20:43 -!- poiuy_qwert has joined.
21:21:21 <ajf> cheater666: what's wrong with classkit?
21:22:03 <cheater666> here's a nice essay on physics: http://www.php.net/manual/en/objaggregation.examples.association.php
21:22:19 <cheater666> (for example, molecules are aggregates of atoms)
21:22:28 <cheater666> http://www.php.net/manual/en/book.reflection.php
21:27:35 <cheater666> http://www.php.net/manual/en/book.nis.php
21:28:52 <cheater666> oh btw, here's another php joke: http://www.php.net/manual/en/book.tokenizer.php
21:29:01 <cheater666> you totally could do some evil shit with that
21:31:17 <cheater666> anyways i too think that having PHP on the esolangs wiki is a stupid idea
21:31:35 <cheater666> but i still think having an esolang joke-competition with php would be funny
21:32:31 <ajf> http://esoteric.voxelperfect.net/wiki/PHP#Equality_operator
21:32:46 <ajf> I have begun to describe why PHP is esoteric
21:33:14 <ajf> Not necessarily
21:34:28 <cheater666> not if you are speaking a pretend-language which uses english words with completely different meanings.
21:35:21 <ajf> you mean computer science?
21:36:41 <ajf> I love PHP.
21:36:43 <ajf> "12 zombies" + "10 young ladies" + "bourbon" == "22 cream puffs"
21:36:51 <ajf> "1e1" == "10"
21:37:07 <ajf> Anyway, GTG, goodnight
21:37:11 -!- ajf has changed nick to ajf|offline.
21:40:16 <quintopia> well, i think that's pretty sane myself.
21:40:28 <quintopia> == is not intended to be used to compare strings
21:40:40 <quintopia> so it converts them to numbers in the most sensible way first
21:40:43 -!- TeruFSX has quit (Quit: No Ping reply in 180 seconds.).
21:41:12 <quintopia> aka, "if it starts with a number, use that number, otherwise, make it zero"
21:41:46 -!- TeruFSX has joined.
21:51:08 <fizzie> But it only does that when the strings "look like" numbers, which I don't think is all that consistent-and-sane. "1e1" == "10" is true, but "foo" == "bar" is false.
21:51:36 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:51:43 <fizzie> If == would truly be some sort of numeric-only compare, it should coerce all strings to numbers.
21:55:14 <elliott> <ajf> What's the MS UNIX environment like, I wonder?
21:55:14 <elliott> <ajf> You know, the NT POSIX subsystem?
21:55:23 <elliott> like I said, Gentoo Prefix/Interix
21:55:47 <elliott> <cheater666> ajf, posix != unix
21:56:22 <elliott> <cheater666> and who wants to have X11 running on a mac that can barely handle firefox
21:56:22 <elliott> <cheater666> and that's one of the recent Mac Pro's btw
21:57:38 <elliott> <ajf> Wait actually no, Visual Basic.NET is *ok*
21:58:23 -!- TeruFSX has quit (Quit: No Ping reply in 180 seconds.).
21:59:00 <elliott> <olsner> with everything built into the parser and rewinding the input stream for flow control and stuff like that, I imagine goto could be a bit difficult to add
21:59:34 <elliott> ajf|offline: hi, please stop spamming the wiki with non-esolangs
21:59:42 <elliott> <ais523> ajf: can I ask that you don't put widely used programming languages on the joke language list? a) they don't fit there, b) it massively confused Reddit a while back
21:59:48 <elliott> ais523: you'll want to delete [[PHP]]
21:59:50 <olsner> what do you mean by unix though? posix != sus at least
22:00:15 <ais523> elliott: it shouldn't be categorised as an esolang, at least
22:00:16 <olsner> QNX claim that they implement posix without being ANYTHING LIKE a unix :)
22:00:34 <elliott> ais523: it shouldn't exist, that's beyond our scope by any judgement
22:00:39 <olsner> move it to uncyclopedia or something
22:00:44 <elliott> <olsner> what do you mean by unix though? posix != sus at least
22:00:52 <elliott> they're the same standard published with different names
22:01:07 <olsner> hmm, really? I though sus was a superset of posix
22:01:49 <pikhq> *Once upon a time* it was a seperate spec.
22:02:37 <pikhq> https://secure.wikimedia.org/wikipedia/en/wiki/File:SUS_History.svg
22:03:32 <ais523> I have deleted it, upon thought; I can imagine a genuine article being there, talking about PHP as an esolang, but that is not it
22:03:55 -!- TeruFSX has joined.
22:05:20 <elliott> https://github.com/TazeTSchnitzel/DevPerc/blob/master/numbers.py
22:05:35 <fizzie> SUSv4 includes X/OPEN CURSES, which is not part of POSIX, if you want to be overly pedantic; the SUS page formulates the situation as "The *core* of the Single UNIX Specification, Version 4 is also IEEE Std 1003.1." (emphasis mine)
22:06:12 <elliott> does anyone not implement x/open curses? :)
22:06:33 <elliott> return 1 if b == True else 0
22:06:50 <pikhq> Wouldn't be hard to just install ncurses, anyways.
22:07:03 <elliott> pikhq: x/open curses is not just curses...
22:08:07 -!- augur has joined.
22:13:11 <fizzie> And of course the (The Open Group only) UNIX 03 certification program != the (IEEE and The Open Group) POSIX certification program, as far as I can figure out; and the relevant trademarks have ownership differences; if you prefer to think of == as a business-theoretical comparison operator.
22:16:46 -!- augur has quit (Remote host closed the connection).
22:36:00 -!- Sgeo has joined.
22:43:05 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
22:44:26 -!- Sgeo has changed nick to Gseo.
22:44:40 -!- augur has joined.
22:47:00 -!- FireFly has quit (Quit: swatted to death).
23:01:20 <Lymia> import sys;sys.__dict__.clear()
23:01:22 <Lymia> Solves all Python problems.
23:03:36 <pikhq> system("runhaskell");
23:03:40 <pikhq> Solves all C problems.
23:09:54 -!- augur has quit (Ping timeout: 240 seconds).
23:13:51 -!- augur has joined.
23:25:33 <Gseo> And no one noticed that I noticed your mocking
23:25:38 -!- Gseo has changed nick to Sgeo.
23:27:06 <elliott> it wasn't mocking, it was a perfect imitation
23:33:06 -!- augur has quit (Ping timeout: 240 seconds).
23:33:55 -!- augur has joined.
23:40:18 -!- augur has quit (Ping timeout: 240 seconds).
23:41:54 -!- ais523 has quit (Ping timeout: 240 seconds).
23:46:05 -!- augur has joined.
23:53:36 -!- augur has quit (Remote host closed the connection).
00:06:56 -!- Wamanuz2 has joined.
00:08:15 -!- Wamanuz has quit (Read error: Operation timed out).
00:27:37 -!- zzo38 has joined.
00:28:09 <zzo38> Is whoever wrote the PHP article a registered user or not? (If so, it can be moved to userspace since it definitely does not fit in the main namespace)
00:28:29 <zzo38> It appears to be AJF.
00:29:01 <zzo38> So, move the [[PHP]] article to [[User:AJF/PHP]] and remove links from the language list and joke language list (and all other lists); keep it in userspace only
00:30:05 <zzo38> I know it is deleted. However: (deleted "PHP": hmm, delete; what's suggested here is hardly esoteric compared to actual esolangs. (PHP has some bizarre features, but these are not them.) I'll give a copy of the page/history on request.)
00:30:08 * Sgeo wants Impractical Common Lisp
00:30:30 <elliott> zzo38: well, if ajf really wants that, he can ask
00:30:55 <zzo38> elliott: OK, I think you are correct about that. It makes sense that he can ask since it is his user page.
00:31:30 -!- Slereah has quit (Ping timeout: 240 seconds).
00:32:12 -!- Slereah has joined.
00:33:04 <zzo38> I wrote some equations having to do with D&D this is one: $$\max\left(\left\lfloor{8\over n}\left((e+4)^2-c^2\right)\right\rfloor,1\right)+\min(a,2e)^2$$
00:33:56 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:34:30 <zzo38> I noticed something in anarchy golf that seems to have changed, KEY? no longer works, it seems. I wrote a code to fix it, and I will post the code on #anagol channel as well
00:37:04 <zzo38> I will post it here too since that channel is not logged.
00:37:13 <zzo38> VARIABLE LAST-KEY : #KEY KEY ; : #KEY? KEY? ; : KEY #KEY LAST-KEY DUP @ -ROT ! ; : KEY? LAST-KEY @ 4 <> ; KEY DROP
00:37:18 * Sgeo falls in love with setf.
00:37:35 <zzo38> Sgeo: What is that?
00:38:11 <Sgeo> zzo38, Common Lisp's assignment macro. The way it can be used, though.. you can specify a form that refers to a place, and ... best to use an example, I think
00:38:23 <zzo38> OK, make example please
00:38:33 <Sgeo> Say you have an array a. (aref a 0) gets whatever's in 0, like a[0] in C.
00:38:44 <Sgeo> (setf (aref a 0) 5) will set it to 5.
00:38:57 <Sgeo> And you can define how setf works for your own functions.
00:40:19 <elliott> a lot of schemes have that.
00:47:21 <Sgeo> I don't think Racket does? And also as far as I can tell, Racket lacks nice um.. I think hot-swapping may be the wrong word.
00:47:28 <Sgeo> What Schemes have both?
00:50:47 <Sgeo> zzo38, I was asking elliott
00:51:00 <zzo38> Maybe elliott doesn't know either because they didn't answer.
00:51:43 <zzo38> I don't know very good at Lisp and Scheme.
00:51:56 <zzo38> Is there example to define how setf works for your own functions?
00:51:57 <elliott> what has hot swapping got to do with this and how does common lisp have this
00:52:06 <elliott> and in which ways aren't you a fucking idiot about this stuff
00:52:10 <Sgeo> elliott, I did say that hot swapping may be the wrong term
00:52:36 <Sgeo> zzo38, I was about to say it's more likely that elliott's fuming at me..
00:53:17 <Sgeo> elliott, I can compile and load files and they load into a running environment
00:53:51 <elliott> [dollar] any-fucking-thing
00:54:15 * Sgeo hits elliott with a trivial and not actually a good response counter-gcc
00:54:53 <elliott> the topic is common lisp vs. schemes
00:55:06 <elliott> give me one fucking scheme where you can't load files into an environment by passing them as an argument to load
00:55:55 <Sgeo> I was thinking Racket's IDE, tb perfectly h
00:56:18 <Sgeo> And please don't yell at me now that I see how wrong that is
00:56:27 <elliott> you mean the ide that has a repl
00:56:54 <Sgeo> And a bit for editing a file, and the REPL _restarts_ when you click Run
00:57:04 <Sgeo> Let me check that
00:58:58 <Sgeo> Yeah, IDE restarts the REPL
00:59:18 * Sgeo asks about it in #racket
00:59:50 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
01:22:14 <Sgeo> I actually understand CL macros! Kind of
01:22:31 * Sgeo is vaguely aware of some unhygienicness thing with CL
01:28:13 <elliott> common lisp macros are unhygienic, the end
01:28:18 <elliott> enjoy five thousand gensyms
01:30:58 <elliott> someone type an exclamation mark
01:31:31 <Sgeo> I hope that that was an exclamation mark for emphasis, not to ignore me
01:31:59 <EgoBot> help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help <command>.
01:32:59 <zzo38> Why is there strange characters on the EgoBot help file?
01:39:25 -!- zzo38 has quit (Remote host closed the connection).
01:41:48 <Sgeo> "Racket doesn't support changing definitions during a long-running program, generally"
01:41:52 <elliott> Gregor: just wait for the oerjan >:)
01:42:03 <Gregor> My response to oerjan is "Too bad. Welcome to 2011"
01:42:04 <elliott> Gregor: or, any irssi user
01:42:06 <elliott> Gregor: or, any irssi user
01:42:30 <Gregor> My response to any irssi user using irssi without Unicode support (really? It has none? At all? Even if you're in a Unicode-capable terminal?) is "Too bad. Welcome to 2011"
01:42:46 <elliott> Gregor: I VERY MUCH DOUBT terminals show that character as invisible.
01:42:50 <elliott> So lump in all WeeChat users too.
01:43:57 <Gregor> They may show it as a space instead of a zero-width space.
01:43:59 <Sgeo> I'm beginning not to see the parentheses!
01:44:00 <Gregor> But that's no big deal.
01:45:00 <elliott> Gregor: Wait, if all you want to do is to prevent people sending DCCs...
01:45:13 <elliott> if (text[0] == '\[one]') {send("lolno"); return;}
01:45:16 <elliott> And avoid all this mess X_X
01:45:24 <elliott> Since you obviously don't care about mid-line CTCPs.
01:45:28 <elliott> That would work perfectly :P
01:45:40 <Gregor> The ZWS at the beginning is unrelated to preventing CTCPs.
01:45:52 <elliott> Botloops are practically impossible now.
01:45:57 <elliott> The only ones you can do involve lambdabot.
01:46:00 <elliott> And we've already done that to death.
01:46:01 <Gregor> Until somebody brings in a new bot.
01:46:52 <elliott> Anyway, if it's unrelated, how come you said that's what the actual goal was?
01:47:05 <elliott> I guess you also filter out first-character-ones even with the ZWS despite that being pointless.
01:47:32 <elliott> Some kind of "!argh_ignore_the_next_line" seems nicer than making things screwy for copy-pasters everywhere (imagine `addquote) and even moreso for all terminal users, though :P
01:53:13 <pikhq> ... irssi has no Unicode support?
01:53:35 -!- rev has joined.
01:53:40 -!- rev has left.
01:53:42 <pikhq> ……irssiはユニコード出来ない?
01:56:32 <EgoBot> help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help <command>.
01:56:42 <pikhq> Yup, no strange chars.
01:58:55 -!- NihilistDandy has joined.
02:01:23 -!- NihilistDandy has quit (Client Quit).
02:02:01 -!- sebbu2 has joined.
02:02:01 -!- sebbu2 has quit (Changing host).
02:02:01 -!- sebbu2 has joined.
02:05:31 -!- sebbu has quit (Ping timeout: 240 seconds).
02:13:47 -!- augur has joined.
02:25:58 -!- augur has quit (Remote host closed the connection).
03:03:34 <Gregor> pikhq: It starts with a zero-width space.
03:19:17 -!- calamari_ has joined.
03:22:46 <pikhq> Gregor: And I see no space there.
03:23:09 <Gregor> Then congrats, your irssi is not made of fail :P
03:24:58 <pikhq> It is very hard to get myself to study for the test tomorrow.
04:11:04 <elliott> why is my circadian rhythm so fail
04:15:35 <coppro> pikhq: what is the test on?
04:24:58 -!- oerjan has joined.
04:26:28 -!- pikhq_ has joined.
04:28:29 <elliott> oerjan http://en.wikipedia.org/wiki/Non-24-hour_sleep-wake_syndrome CONFIRM/DENY
04:28:39 <elliott> (obviously the reaction to having a broken circadian rhythm is to click every link on wikipedia recursively)
04:29:00 -!- pikhq has quit (Ping timeout: 240 seconds).
04:33:50 <Sgeo> Common Lisp is starting to remind me of a criticism of PHP... inconsistently named functions, sometimes arguments are in a weird order
04:34:38 <monqy> I have far different criticism of PHP
04:37:11 <elliott> common lisp has functions with inconsistent argument order?
04:37:14 <elliott> the names are a bit archaic, but
04:38:16 <Sgeo> "By an accident of history, the order of arguments to GETHASH is the opposite of ELT--ELT takes the collection first and then the index while GETHASH takes the key first and then the collection."
04:39:09 <oerjan> elliott: well, i cannot confirm that mine is physiological
04:40:45 -!- zzo38 has joined.
04:46:31 <pikhq_> Why oh why is QI not on US TV?
04:47:33 -!- wareya_ has quit (Ping timeout: 240 seconds).
04:47:54 <oerjan> !echo ok now what _is_ this broken solution elliott keeps speaking about
04:47:55 <EgoBot> ok now what _is_ this broken solution elliott keeps speaking about
04:48:09 * oerjan sees nothing out of the ordinary
04:48:56 <pikhq_> oerjan: There's a zero-width space at the start of the line.
04:49:26 <elliott> wow it actually works for you? :)
04:49:33 <elliott> well it doesn't for zzo38 ;)
04:49:38 <elliott> (and it messes up copy-pasting for everyone)
04:49:41 <elliott> <pikhq_> Why oh why is QI not on US TV?
04:49:51 <elliott> injustice and the two-party system
04:50:00 <elliott> plus rampant crime and institutionalised racism
04:50:24 <zzo38> My computer it will display the character overlapping the colon for start of message
04:50:47 <elliott> pikhq_: Just pirate it, it's OK, I'm British, I'll talk to Stephen Fry and explain the situation, and he'll forgive you.
04:51:05 <pikhq_> elliott: I'm merely lamenting is all.
04:51:06 <zzo38> But even if it is doesn't, the other problems that you have described are still there.
04:51:58 <pikhq_> We should just replace all TV with Stephen Fry talking.
04:52:07 <elliott> god dammit homestuck it's been six days UPDATE
04:52:46 <elliott> oerjan: heh, the latest IWC annotation scared me into thinking DMM was about to go on a prescriptivist rant
04:55:24 <oerjan> yeah you were literally panicking
05:00:04 <zzo38> I read the log the reason for ZWS but another solution might be to add CTRL+O at the start? Will it work?
05:00:24 <zzo38> I know some IRC client might strip that from the display regardless of unicode, I think.
05:02:07 <oerjan> (there was a ^O in that when i wrote it)
05:02:25 <zzo38> Yes, it replaced with a period
05:02:48 <oerjan> ok so it actually got through
05:04:36 <zzo38> Doing CTRL+B twice would also work except that the channel mode tells it to strip some control characters (including CTRL+B)
05:04:55 <zzo38> What is QI, who is Stephen Fry, what is IWC annotation, and so on?
05:05:19 <elliott> QI is an excellent television show starring Stephen Fry who is an English national treasure and also the next Monarch (note: statement is false).
05:05:27 <elliott> IWC is Irregular Webcomic[exclamation mark], it is this thing
05:05:35 <oerjan> elliott: only the last word of it
05:06:30 <elliott> so guys in ten days when all the christians die what do we do :(
05:07:05 <oerjan> i guess we should have a small wake
05:07:30 -!- wareya has joined.
05:07:32 <oerjan> that sounds a bit heartless
05:07:58 <zzo38> There isn't anything *to* do, therefore nothing.
05:08:11 <zzo38> The other thing to do would be to figure out why it happen and prevent it.
05:08:15 <elliott> zzo38: well the US might need a new President.
05:08:27 <elliott> why it's going to happen is because it's the rapture, duh
05:08:31 <elliott> are you proposing we stop god?
05:09:18 <zzo38> No, I propose you stop in your own way. Such as, will stop being Christian work if you would rather not be dead? And anyone who does want to be dead (or to test it to see if this statement is in fact wrong) to become Christian instead.
05:09:57 <elliott> you mean if christians want to avoid going up to heaven
05:10:04 <elliott> they should become atheists and stop believing in the rapture
05:10:38 <elliott> what Hugh Laurie released an album
05:10:45 <zzo38> elliott: No, I mean, in order to test the rapture!
05:11:02 <elliott> (for zzo38: hugh laurie is this british person who pretends to be an american on television a lot)
05:11:09 <zzo38> And why do you think there is a rapture in ten days?
05:11:47 <elliott> zzo38: http://www.google.com/search?q=rapture+may+twentyfirst
05:11:50 <oerjan> i hear he pretends to be a doctor. isn't that illegal?
05:11:54 <elliott> zzo38: http://www.google.com/search?q=rapture+may+21st
05:12:18 -!- MDude has quit (Ping timeout: 240 seconds).
05:12:40 <elliott> oerjan: it's going to be really awesome when satan brings temporary peace
05:14:05 <pikhq_> elliott: That was Clinton, of course.
05:14:49 <elliott> no the rapture hasnt happened yet
05:17:08 <oerjan> maybe the rapture _has_ happened, but the number of real, honest christians is so small that no one noticed
05:17:08 <zzo38> No, you cannot know. Yes it is possible for the bad things to happen, such as global warming, global thermonuclear war, and all sorts of other things; that doesn't mean it happens in ten days from now, nor can you take it literally what it says in Bible because they were simply warning you (in general, not about any of the things that occur now because they wouldn't have known when they wrote it).
05:17:28 <zzo38> Or maybe even the magnetic pole changes, who knows.....
05:17:45 <oerjan> it was just chucked into the unsolved disappearance statistics
05:17:47 <zzo38> elliott: Yes, I believe you.
05:18:48 <oerjan> and then god got so depressed by the low turnout he cancelled the rest of the apocalypse
05:19:19 <elliott> omg wait atlas shrugged it out already
05:19:29 <elliott> i cant wait to go waste my time laughing
05:20:46 <oerjan> i thought you meant atlas shrugged out the apocalypse. would be just like him, you know.
05:27:21 <elliott> maybe the twenty-first is when sburb gets released...
05:27:47 <elliott> i would do numerology on five/twenty-three/eleven, but without number keys that seems like way too much of a pain also i'm lazy
05:29:34 <pikhq_> Maybe on May 21st, all the non-believers are lifted into atheist heaven.
05:31:24 <oerjan> maybe on may 21st, _all_ religions and life views become literally true, by the world splitting into hundreds of parallel worlds so everyone thinks most of the others have disappeared
05:31:49 <pikhq_> So, the one I'm in will keep on going?
05:32:19 <elliott> oerjan: hmm, I don't think that can happen
05:32:22 <oerjan> yes, but you will have some job developing a scientific explanation why all religious people disappeared
05:32:39 <elliott> oerjan: well that can perfectly well happen it's just exceedingly improbable...
05:32:46 <elliott> worlds are usually referred to as meaning just universes
05:32:51 <pikhq_> oerjan: No, no, no, I am presuming I'd be in the universe wherein no religious people disappeared.
05:32:52 <elliott> and it's not supernatural if it's in the universe
05:33:20 <oerjan> pikhq_: ok we shall need a good source of philosophical zombies, then
05:33:24 <pikhq_> Hrm, that makes less sense after typing it out.
05:34:31 <pikhq_> Oh, fuck off, you bastard.
05:34:55 <elliott> i was referring to "philosophical zombies"
05:35:09 <pikhq_> I was referring to "don't swear" devoid of context.
05:35:23 <pikhq_> As the idea of swearing at someone saying that amuses me.
05:35:28 <pikhq_> Much like your mother.
05:35:44 <zzo38> Does it mean that everyone who is not your religion is philosophical zombies?
05:36:03 <zzo38> And that nobody knows if this is the exact date or only approximate?
05:36:11 <elliott> THERE IS NO SUCH THING AS PHILOSOPHICAL ZOMBIES
05:36:19 <oerjan> zzo38: no if your religion _does_ support people disappearing miraculously, then philosophical zombies will not be necessary
05:36:27 <coppro> elliott: What about Zombie Socrates?
05:36:50 <pikhq_> Not to mention Zombie Kierkegaard and Zombie Kant?
05:36:55 <zzo38> oerjan: But what if it doesn't? And what if your religion is a different date?
05:36:58 <elliott> zombie kant is a huge kant
05:37:20 <elliott> hmm, re: "exact date or only approximate", how can we be sure someone didn't miscount a day or so in the middle ages >:)
05:37:22 <oerjan> zzo38: right the date might be a bit tricky
05:38:01 <oerjan> elliott: i wouldn't trust that Gregor fellow to get the calendar right, you know
05:38:04 <pikhq_> elliott: Astronomical records with dates.
05:38:14 <elliott> pikhq_: WHAT IF.......... ASTRONOMY IS LIE?
05:38:19 <oerjan> of course not, he's a dead pope
05:38:37 <pikhq_> elliott: What if everything outside of your mind is a lie?
05:38:42 <oerjan> for long enough that he's stopped smelling, i think
05:38:42 <pikhq_> elliott: Answer now, non-solipsist!
05:39:52 <zzo38> What if your mind itself is the lie?
05:39:55 * pikhq_ wonders what practical difference there is between nihilism and solipsism
05:40:02 <pikhq_> zzo38: COGITO ERGO SVM
05:40:04 <oerjan> they forgot to book the room but no matter since it doesn't exist anyway
05:40:29 <elliott> solipsism means something, nihilism doesn't :)
05:40:49 <zzo38> Which is philosophy if considering only yourself is lie and everything else does exists?
05:41:05 <pikhq_> zzo38: That's called "bullshit".
05:41:42 <pikhq_> By the very act of thinking, you can be sure that your own mind exists.
05:41:45 <elliott> oerjan: i'll say for the hundredth time: solipsist missionaries is the best idea ever :D
05:41:55 -!- comex has quit (Ping timeout: 240 seconds).
05:42:06 <zzo38> pikhq_: But your thoughts are nothing except hallucination!
05:42:53 <elliott> PORK PORK PORK PORK PORK PORK PORK
05:43:34 <oerjan> zzo38: you can only be sure of those phenomena which are identical to their own illusion, which however includes many experiences
05:43:49 <elliott> <zzo38> pikhq_: But your thoughts are nothing except hallucination!
05:44:01 <elliott> "Your hallucinations are all in your mind! And your mind is a hallucination!"
05:44:11 <oerjan> (not the _causes_ of those experiences, but the experiences themselves)
05:44:47 <oerjan> and that is why cogito ergo sum is some approximation to valid
05:45:23 <elliott> cogito ergo sum is impressive in being one of the few things that just about everyone can agree with :)
05:45:50 <elliott> (the original surroundings of that statement, not so much)
05:46:21 <pikhq_> The statement *itself* ends up being the only thing that is really certain. So of course almost everyone agrees. :P
05:46:51 <pikhq_> Everything else is subject to fallible observation.
05:47:08 <oerjan> note that you cannot be sure that your thoughts are actually logical, you could just be imagining it
05:47:21 -!- comex has joined.
05:47:34 <oerjan> but at least you have them
05:48:00 <elliott> the "ergo" part is probably the most controversial of that :)
05:48:06 <elliott> (see: rejecting logic itself)
05:48:19 <elliott> although, some asswipes will refuse to give "exists" a definition, but they're asswipes
05:56:44 -!- augur has joined.
05:58:52 <augur> any spanish speakers? :D
05:59:08 <augur> or french speakers
05:59:09 <oerjan> several hundred millions, i think
05:59:44 <elliott> i wonder if ##linguistics exists :P
05:59:53 <augur> yeah but they're all lame
06:00:57 <pikhq_> augur: Afraid you're mostly finding Germanic speakers in here.
06:01:17 <augur> norwegian is good too tho!
06:02:11 <elliott> when he asks you how you pronounce something just lie
06:02:17 <augur> well i dont need pronunciation
06:02:25 <augur> pikhq_: thats swedish
06:02:32 <elliott> # (diff) (hist) . . Language list; 02:37 . . (-102) . . 109.230.217.91 (Talk) (, http://theteresapalmerbikiniwve.tumblr.com teresa palmer bikini, 304793, http://pulse.yahoo.com/_ZODZ7R4ZGQDA5CALTMKHXB4HJI/blog/articles/281424 emily procter naked, >:-)), http://jessicabielsexsc)
06:06:23 <zzo38> I tried to invent notation for cricket matches, and it is very complicated.
06:08:42 <zzo38> There are many fielding positions, extras, way to be out (lose a wicket), hit ball, bounce, scores, etc that you need different styles of type and accent mark, telling which player it is, and a lot of stuff, requiring accent mark, superscript, subscript, etc
06:09:54 <augur> elliott: guten tag!
06:10:19 <elliott> augur: du ein lich fäthras
06:10:23 <pikhq_> "Snow showers before 9am, then rain showers between 9am and noon, then snow showers after noon. Some thunder is also possible." Forecast for tomorrow.
06:10:27 <augur> oerjan you're swedish, right?
06:10:35 <elliott> `addquote <augur> oerjan you're swedish, right?
06:10:38 <HackEgo> 404) <augur> oerjan you're swedish, right?
06:10:44 <oerjan> augur: nei eg er norsk
06:10:53 <augur> i dont remember who's who
06:11:01 <elliott> augur: verk immein Steinlichernbburgen
06:11:02 <pikhq_> augur: Ørjan Johansen is pretty clearly not Swedish.
06:11:19 <oerjan> Örjan Johansson would pretty clearly have been
06:11:47 <augur> norwegian boys are hot, btw
06:11:53 <pikhq_> Gosh, augur, how dare you not remember every detail of everyone's lives in here! :P
06:11:54 <augur> oerjan: whats your opinion on SATW
06:12:02 <augur> pikhq_: because you're not all oklopol
06:12:13 <oerjan> i might have an opinion if i knew what it was, although probably not
06:12:24 <augur> Scandinavia and the World
06:12:25 <elliott> i'm just sitting here laughing :))))))))))
06:12:51 <oerjan> sorry, no opinion there
06:13:15 <oerjan> except that the rest of the world _might_ suck even worse. maybe.
06:14:10 <elliott> this channel, btw. this channel.
06:16:08 <elliott> GOD DAMMIT HOMESTUCK UPDATE
06:16:08 <oerjan> ok that last one was a bit amusing
06:22:52 <augur> oerjan: which last one
06:23:21 <oerjan> (also the first one i looked at)
06:23:38 <augur> the one about weirdo icelanders
06:23:49 <oerjan> there have been reddit links before, naturally
06:28:11 <oklopol> i had this dream that i was a bald cop
06:29:59 <oklopol> last night i had a dream where i cuddled with this older lady and then in the morning her husband was pretty mad and took out a gun and then she numbed herself with some sort of injection and stuck a huge pipe in her mouth and drank water through it until she became a human size water bottle and exploded, destroying everything in sight
06:30:02 -!- TeruFSX has quit (Ping timeout: 276 seconds).
06:30:22 <oerjan> let that be a lesson for you
06:30:25 -!- Cheery has joined.
06:30:55 <oklopol> (she became an actual water bottle)
06:32:10 <oklopol> then i woke up and turned out i had been sleep destroying my apartment, everything was broken and scattered all over and the door was open and i couldn't close it and then i woke up again
06:32:33 <elliott> oklopol can you turn your dreams into a film
06:32:38 <elliott> they would be the best film
06:34:09 <zzo38> Maybe you can make film.
06:34:28 <oklopol> i do have some book making hopes and dreams, but the book would not be about my hopes/dreams
06:34:31 <zzo38> But for my dreams, it is strange often is the case it cannot be made proper film, you need book (at least at first)
06:34:59 <oklopol> so how many times out of ten would you say you fail to make the film and have to write a book instead?
06:35:21 <augur> oerjan: http://satwcomic.com/how-to-keep-friends
06:37:07 <zzo38> However, I have never made the film or the book of it, so not entirely sure
06:37:51 <oklopol> well i was trying to ask about the actual films and books you've made but apparently i failed
06:38:08 <oklopol> maybe i should've used past tense
06:38:54 <oklopol> so i was walking outside and suddenly this guy grabs my hand and yells "SODOM"
06:40:06 <zzo38> A lot of things about my dreams I failed to remember by now, unfortunately; but I did write down and type some of these things.
06:40:08 <oklopol> and i said let me give that some thought and his girlfriend found it very funny and then i bought this "learn the alphabet" game and it was a bit silly given that it was completely deterministic
06:41:30 <oklopol> zzo38: forgetting dreams is a sign of alzheimer's
07:11:21 <cheater666> hey nice, elliott's been trolling me again
07:11:39 <cheater666> i really admire the fact i'm such a kiln of emotion for him
07:14:49 <cheater666> he cares so much about me that at this rate anyone would start wondering if he's secretly in love with me or something
07:15:25 <oerjan> hey it's _i_ who keep getting marriage proposals from him
07:15:46 -!- calamari_ has quit (Quit: Leaving).
07:15:48 <cheater666> yeah, but you know, every girl needs a husband and a *lover*
07:16:12 <cheater666> one to take care of the kids, the other to really put some heat in the love-life
07:16:28 <oerjan> well you're good at the heat thing it seems
07:16:59 <cheater666> we might uncover something we couldn't fathom.
07:17:24 <augur> oerjan: ok, ready?
07:17:42 <cheater666> augur, so what was your german language problemo?
07:18:25 <oerjan> cheater666: i think he pretty much excluded german
07:18:38 <augur> cheater666: i got some german data :)
07:25:53 <elliott> oerjan has too many window
07:33:15 <zzo38> To tell you why you cannot make a filmn of this dreams: Can a blank paper have words written on it (such as that is visible, not invisible ink or anything like that) but still remain blank at the same time?
07:34:59 <zzo38> Is it possible to be flying and not flying both at the same time?
07:37:54 <zzo38> Dreams are sometimes not first person
07:38:12 -!- Wamanuz3 has joined.
07:38:12 <zzo38> And someone once told me they had a dream that ended in credits
07:38:16 -!- Wamanuz2 has quit (Ping timeout: 252 seconds).
07:38:23 <zzo38> So, you can make a film ending in credits, too. But not these other things too
07:38:29 <monqy> one time I had a dream in second person
07:38:53 <monqy> also a few where the person changed a bunch
07:38:54 <zzo38> monqy: I have too but I remember no other details
07:39:59 <monqy> I also like self-contradictory dreams. good stuff.
07:40:50 <zzo38> Someone told me he had a dream where the doctor asked him if he had ever been to the moon. He had never been to the moon. The doctor then asked him to prove it, and that the doctor could not help him if he could never prove that he has not been to the moon.
07:41:06 <zzo38> monqy: I have also self-contradictory dreams (often at least part of it is as such)
07:42:13 <monqy> my most fresh dream is one where I'm at a soup contest and a chicken really wants to participate but he's disqualified so he becomes the judge. when all the soups are done and he's ready to taste them he just stares at the soup and then I become the chicken and I really want to make soup
07:42:38 <monqy> fresh as in in my memory
07:42:51 <monqy> not original or anything
07:44:09 <elliott> `addquote <monqy> my most fresh dream is one where I'm at a soup contest and a chicken really wants to participate but he's disqualified so he becomes the judge. when all the soups are done and he's ready to taste them he just stares at the soup and then I become the chicken and I really want to make soup
07:44:13 <HackEgo> 405) <monqy> my most fresh dream is one where I'm at a soup contest and a chicken really wants to participate but he's disqualified so he becomes the judge. when all the soups are done and he's ready to taste them he just stares at the soup and then I become the chicken and I really want to make soup
07:45:09 <zzo38> I remember one dream I had once there was a small hole in the floor that was appear and disappear rapidly, too small for anyone to fall into but we are still careful not to fall in the hole because apparently you can fall into the hole anyways
07:47:38 <monqy> I had another where I ran around the world (which is concave by the way) a few times, but then it started storming while I was at a beach, so I went into this tall blue building that had an elevator with a phone in it, and as I was taking the elevator, my parents called me and tried to convince me I was on drugs.
07:48:18 <zzo38> Another dream, we tried to fill the water container in fridge, when it was closed and open again, now there is orange pieces in it. That is no good; discard it and fill the water again. Now close, open and now there is no water, just bread.
07:48:52 <monqy> does it mean something
07:52:21 <zzo38> Once I had dream I tried to turn off the calculator, but it turns back on by itself in a few seconds or in a few minutes.
07:53:07 <monqy> a dream where I have a tradition of watching a bootleg garfield vhs where if I play it at midnight it's actually a recording of a television playing a garfield puppet show about human anatomy
07:57:29 <cheater666> i've had a dream where people weren't making things up
07:58:20 <monqy> I don't think I've ever had that dream.
07:58:48 <cheater666> yeah it's very visibly extreme make-believe
07:59:01 <zzo38> When dreaming, not only memory, but the very logic is differently............!?.........
07:59:23 <cheater666> someone wrote in an article once you can't read in your dreams
07:59:36 <cheater666> because that part of the brain isn't active
07:59:45 <cheater666> i remember reading a newspaper in a dream though
07:59:55 <monqy> maybe you were only pretending to read
08:00:09 <zzo38> Usually you cannot read in dreams, sometimes it is possible. But also sometimes it is faked because it is not even what it is!
08:00:15 <monqy> or magically interpreted the newspaper
08:00:34 <zzo38> Of course, you cannot actually read (or other things), because it is dream and they are not real papers, real words, etc
08:00:41 <monqy> I think lots of stuff is faked in my dreams :(
08:01:28 <monqy> in one of my dreams there was a telephone and when I tried calling on it, it was actually irc
08:06:04 <zzo38> I had a dream where we were going to play Dungeons and Dragons and we had radio machines and stuff for Dungeons and Dragons. There was different sections in different chapters, a compartment to put audio tapes in, a radio transmitter, a few rooms for puzzlement and some boxes on the bottom to keep creature types in.
08:06:33 <zzo38> I was unable to figure out why it didn't work. And then I realized that it needed electricity to keep the creature types in the boxes, so I put batteries in and then the machine(s) worked. It also had to be connected to a VCR, but the only reason for the VCR was to indicate the amplitudes. The VCR was connected to a TV. The TV had no use, neither did the audio tape compartments.
08:11:55 -!- siracusa has quit (Ping timeout: 240 seconds).
08:13:14 -!- siracusa has joined.
08:20:09 -!- monqy has quit (Quit: hello).
08:22:14 -!- oerjan has quit (Quit: See you).
08:43:17 -!- cheater_ has joined.
09:11:26 -!- nooga has quit (Read error: Connection reset by peer).
09:17:54 -!- nooga has joined.
09:31:01 -!- nooga has quit (Remote host closed the connection).
11:33:37 -!- liljat has joined.
11:43:23 -!- FireFly has joined.
11:55:45 -!- Slush- has quit (Remote host closed the connection).
12:37:33 -!- ais523 has joined.
12:44:39 -!- ais523_ has joined.
12:44:51 -!- ais523 has quit (Disconnected by services).
12:44:52 -!- ais523_ has changed nick to ais523.
13:14:13 -!- elliott has quit (Ping timeout: 240 seconds).
13:21:06 -!- jcp has quit (Ping timeout: 240 seconds).
13:23:56 -!- jcp has joined.
13:34:57 -!- lilja1 has joined.
13:36:16 -!- liljat has quit (Ping timeout: 264 seconds).
13:38:47 -!- BeholdMyGlory has joined.
13:38:51 -!- BeholdMyGlory has quit (Changing host).
13:38:51 -!- BeholdMyGlory has joined.
14:23:19 -!- ais523_ has joined.
14:24:22 -!- ais523 has quit (Ping timeout: 258 seconds).
14:24:27 -!- ais523_ has quit (Remote host closed the connection).
14:25:15 -!- Phantom_Hoover has joined.
14:25:36 <lambdabot> Phantom_Hoover: You have 3 new messages. '/msg lambdabot @messages' to read them.
14:33:14 <Gregor> @tell Phantom_Hoover lol we ♥ leaving you messages
14:40:08 <Sgeo> zzo38, my wireless router turns itself back on after I try to turn it off sometime
14:41:37 <cheater_> Sgeo: make sure not to equip it with a robot body of superhuman abilities. it might be the beginnings of skynet.
14:42:41 <Gregor> @tell lambdabot I'll bet you have craploads of unread messages to yourself.
14:52:22 -!- Vorpal has joined.
15:06:51 -!- Sgeo has quit (Read error: Connection reset by peer).
15:16:36 -!- augur has quit (Remote host closed the connection).
15:20:50 -!- oerjan has joined.
15:21:48 -!- ais523 has joined.
15:23:01 <oerjan> ais523: you might want to check out Special:New pages, there are a number of undeleted spam creations, especially in the User: and User Talk: namespaces
15:23:37 <oerjan> sadly there seems to be no way to list all namespaces simultaneously there
15:23:55 <Phantom_Hoover> http://upload.wikimedia.org/wikipedia/commons/0/05/Sodium-3D.png
15:23:55 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
15:24:22 <ais523> things that we missed during the recent spam attack?
15:26:09 <oerjan> ais523: iirc most are in the first few namespaces but i _think_ i saw one in Category Talk:
15:29:12 <ais523> oerjan: got all of them, I think
15:29:18 <ais523> and there was indeed one in category talk
15:30:25 <ais523> hmm... it seems the source code for a common malware/trojan suite leaked
15:30:34 <ais523> and lots of people downloaded it and their virus scanners detected it as what it actually was
15:30:46 <ais523> I'm not entirely sure what the moral of the story is
15:33:44 <oerjan> ais523: so did you find a way to block the spam or did it just stop by itself?
15:34:50 <ais523> oerjan: I emailed graue, and suggested he added a CAPTCHA for all anon edits
15:34:57 <ais523> I haven't heard a response, but the spam stopped soon after
15:35:01 <oerjan> oh there wasn't already? ok.
15:35:02 <ais523> it might have been a coincidence, though
15:35:23 <ais523> there was a CAPTCHA on edits that added external links before, which kept out the majority of confused spambots
15:35:37 <ais523> but it just lead to a flood of moronic spambots that didn't even spam links
15:36:02 <oerjan> i wonder if they spam links just in a field we cannot see...
15:36:28 <oerjan> if so, maybe it would be an idea to block any edit which fills in an unknown field
15:37:37 <ais523> I can't implement that myself, though, I don't have the sort of access rights required
15:37:57 <ais523> all I can really do is the basic admin actions, protect/delete/block
15:38:39 <ais523> and editing permanently protected pages
15:39:21 <ais523> which we don't have many of, but there are some that hold things like the names of the tabs at the top of the pages
15:39:26 <ais523> and other such things that shouldn't be widely editable
15:41:38 <oerjan> @tell lambdabotch What about craploads of messages to slightly mistyped nicks, then?
15:42:16 -!- lilja1 has quit (Ping timeout: 264 seconds).
15:48:41 -!- augur has joined.
16:25:06 -!- cpressey has joined.
16:25:45 <cpressey> Deewiant or Vorpal around? I haz a Mycology question
16:25:45 <lambdabot> cpressey: You have 1 new message. '/msg lambdabot @messages' to read it.
16:27:06 <cpressey> Can you give me any insight into what this message is the result of: "u with a positive argument gives strange storage offset: expected (0,0)"?
16:27:36 <cpressey> Is it actually p'ing and g'ing to see if the storage offset has been changed, for example?
16:28:05 <Deewiant> No, it just uses u to fetch the storage offset that { pushed and compares it to (0,0)
16:28:49 <cpressey> So it's quite possibly indicative of a problem with { rather than u -- that's probably what I was missing.
16:29:19 <Deewiant> Aye, u by itself can't produce the storage offset from nowhere :-)
16:41:26 <cpressey> But in fact it does seem like it's u that's broken...
16:46:20 -!- Mannerisk has joined.
16:47:38 <Vorpal> <cpressey> Deewiant or Vorpal around? I haz a Mycology question <-- Kind of
16:52:11 -!- zzo38 has quit (Remote host closed the connection).
16:56:41 <cpressey> Vorpal: Deewiant already answered it :)
16:59:08 -!- ajf|offline has changed nick to ajf.
17:01:09 <EgoBot> Interpreter slashes deleted.
17:01:35 <oerjan> !addinterp slashes perl http://oerjan.nvg.org/esoteric/slashes/ircslashes.pl
17:01:38 <EgoBot> Interpreter slashes installed.
17:04:31 <cpressey> oerjan: gedit highlights what it thinks is a syntax error in that script, btw
17:05:40 <cpressey> i think gedit is just not smart enough to understand the regexp, upon closer examination
17:06:26 <cpressey> oh, no, both of them. it probably doesn't highlight s!!! properly.
17:12:09 <Vorpal> cpressey, stupid editor
17:12:17 <Vorpal> gedit generally is I mean
17:12:38 <oerjan> !slashes http://oerjan.nvg.org/esoteric/slashes/test.sss
17:12:39 <Vorpal> at least kate is somewhat better at syntax highlighting, and emacs is of course better still
17:12:40 <EgoBot> * ** *** **** ***** ****** ******* ******** ********* ********** *********** ************ ************* ************** *************** **************** ***************** ****************** ******************* ******************** ********************* ********************** *********************** ************************ ************************* ************************** *************************** **************************** *****************************
17:13:35 <fizzie> Emacs' perl-mode isn't very good at all when it comes to complicated pieces of perl; cperl-mode is better, but even that breaks down every now and then. (I don't think it loses much to Vim or such, though.)
17:14:03 <fizzie> I don't think perl-mode even does included POD comments at all, for example.
17:14:48 <fizzie> Something else didn't, and then it highlighted all keywords inside them.
17:15:00 <cpressey> Perl is pretty much a challenge to syntax-highlight correctly.
17:15:09 <fizzie> Maybe it was that SciTE thing.
17:15:24 <fizzie> (I used it because it had a reasonable .pdf syntax-highlighting export thing.)
17:16:10 <Vorpal> scite isn't that bad at all if you need something that happens to be installed on the windows computers at university :D
17:16:22 <Vorpal> (there is a severe lack of emacs there)
17:16:28 <fizzie> Well, at least the version I have here does seem to understand poddery; it even makes headings foldable and all.
17:16:40 <fizzie> Might've been an earlier version though, this was few years back.
17:16:54 <cpressey> yeah, Windows availability was a big part of the reason I started using scite
17:19:18 <cpressey> well, I am at a loss for this problem with { and/or u. My own tests seem to indicate they work as expected.
17:19:19 <fizzie> Oh right, it's the "foo(<<BAR); \n yadda yadda \n yadda daa \n BAR" sort of syntax that Emacs' perl-mode doesn't handle; it highlights keywords in the quoted stuff. cperl-mode fixes that particular deficiency.
17:21:09 <cpressey> why oh why can I not pipe a diff into meld? that would so rock
17:22:08 <fizzie> Probably because the diff doesn't contain the non-changed parts of the file, and meld wants to show those.
17:23:17 <cpressey> yeah... but it could, uh, mock them up :)
17:23:33 <cpressey> extrapolate them using one of those fractal neural net thingees!
17:24:01 <cpressey> or just assume all the lines contained '...', that's probably simpler.
17:29:27 <ais523> hmm, a spambot just sent me a string of literal
17:29:39 <ais523> as in, not even a nonbreaking space, or the entity for it, the string
17:29:54 <ais523> and it had no purpose, as it wouldn't even have been visible if it were a nonbreaking space, it was the only thing on the line
17:30:12 <cpressey> ais523, on the network, you must be liberal in what you accept
17:32:29 <oerjan> !slashes http://oerjan.nvg.org/esoteric/slashes/counter4.sss
17:32:51 <EgoBot> \/\\/\\\/\\\\/\\\\\/\\\\\\/\\\\\\\/\\\\\\\\/\\\\\\\\\/\\\\\\\\\\/\\\\\\\\\\\/\\\\\\\\\\\\/\\\\\\\\\\\\\/\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/
17:33:33 <ais523> I think it finshes when output reaches a certain length
17:33:40 <ais523> regardless of if the program is an infinite loop or not
17:33:57 <oerjan> ais523: no, but that's what i just changed the interpreter for
17:34:20 <oerjan> however that /\ only program is rather slow so i thought EgoBot would time out
17:34:26 <ais523> fizzie: the issue with cperl-mode is that it's overcomplicated and just breaks seemingly at random sometimes
17:34:32 <ais523> removing the syntax highlighting altogether somehow
17:34:40 <ais523> it is deterministic, I assume, but I haven't figured out the pattern yet
17:34:46 <ais523> although trailing whitespace seems to really drive it mad
17:34:51 <ais523> I fear it's trying to do parsing via regex
17:34:56 <fizzie> Yes, I've noticed it seems to be somewhat brittle.
17:35:15 <oerjan> ais523: it _does_ check for a certain length, but only after receiving a newline, which is really useless for irc...
17:35:29 <fizzie> (I've just lived with perl-mode.)
17:35:40 <oerjan> (unless Gregor has changed it lately)
17:35:49 <ais523> when I need to syntax-highlight a really complicated bit of Perl, I use Kate
17:36:22 <oerjan> never prints anything because of that
17:36:45 <oerjan> and anything which _does_ contain newline only gets the first line displayed in channel
17:37:34 <ais523> ofc, you can't type newline-containing Underload programs in anyway without using a pastebin
17:38:48 <cpressey> ok, so, Mycology tests the storage offset with: 0{2u0w0w} ... if I replace this with 0{2u..@@} it outputs "0 0 " and stops. But if I put debugging in the w instruction, it says it's comparing 0 to 14.
17:41:25 <cpressey> Deewiant: http://pastie.org/1889800 <-- I made fbbi say what the storage offsets being saved and restored are when { and } are executed. A previous } is not restoring (0,0) as the storage offset (even though there are no BADs before this one). Could it be there are multiple paths through the code, one of which missing this "teardown"?
17:42:23 <Deewiant> There should be only one all-GOOD path :-P
17:43:06 <Deewiant> But yeah, presumably one of those GOODs isn't actually so good and is missing something that's going wrong
17:43:32 <cpressey> $$$ BEGIN EXECUTING, assigned storage offset 14, 77
17:43:33 <cpressey> $$$ END EXECUTING, restored storage offset 14, 13
17:43:41 <cpressey> that seems to be where the S.O. becomes non-(0,0)
17:44:25 <cpressey> Hm. Anyway, I'm not sure, but I feel like I've made progress on the problem, so I'm going to put it down again.
17:47:43 -!- cpressey has quit (Quit: leaving).
17:52:26 -!- nddrylliog has joined.
17:53:51 -!- nddrylliog has changed nick to FIXME_nddrylliog.
17:55:55 <oerjan> fixme.ch is obviously an oxymoron, it's swiss and so must already be working perfectly
18:03:47 -!- augur has quit (Remote host closed the connection).
18:09:26 <fizzie> @tell cpressey Re melding a diff: http://p.zem.fi/ozt2
18:25:47 -!- monqy has joined.
18:45:18 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
18:50:53 -!- cpressey has joined.
18:52:13 <cpressey> Deewiant: there was an error in my implementation of } that Mycology didn't catch (it was still popping values, even when there is no SOSS and it's supposed to act like r,) but fixing that didn't change the weird situation with the storage offset :(
18:52:13 <lambdabot> cpressey: You have 1 new message. '/msg lambdabot @messages' to read it.
18:52:31 <cpressey> lambdabot, couldn't you just... /msg me that kind of notification?
18:53:24 <lambdabot> tell provides: tell ask messages messages? clear-messages
18:54:42 <cpressey> @set-message-notification /msg
18:56:29 <fizzie> The particular use-case is a bit ridickulous since you can just GIT_EXTERNAL_DIFF a script that runs meld on the paths git provides. And the script could be enhancamated to handle the case where there's multiple diffs in a single file, by printing the --- +++ headers in both files, for example.
18:58:34 <cpressey> yeah. it could also pay attention to the diff offsets and insert multiple '...' lines, enough to correspond to the length of the original file. cool stuff, still, though.
19:04:24 -!- oerjan has quit (Quit: Good night).
19:05:02 -!- Phantom_Hoover has joined.
19:10:25 -!- Lymia has quit (Read error: Connection reset by peer).
19:13:33 <cpressey> now all i have to do is fix environment variables
19:21:34 -!- cpressey has quit (Quit: Fixing environment variables, please wait...).
20:05:29 -!- augur has joined.
20:07:56 <augur> waiting to drive to annapolis
20:14:58 -!- sebbu has joined.
20:14:58 -!- sebbu has quit (Changing host).
20:14:58 -!- sebbu has joined.
20:15:00 -!- augur has quit (Remote host closed the connection).
20:18:02 -!- sebbu2 has quit (Ping timeout: 240 seconds).
20:18:25 <HackEgo> 347) <olsner> it is from 2002 though, I was younger then
20:26:24 <lambdabot> scodil says: dcoutts: rad. i'm actually using gtk2hs quite a bit now. its one of those deals where I'm writing prototype software for people who aren't really paying for it, so it will end up being
20:26:24 <lambdabot> the production software, so you'll probably be getting emails in 5 years asking "what is haskell and how do I install it?"
20:26:46 <lambdabot> eyeris says: grr... I hate the way every haskell tutorial brags about how easy strings are to use. They are only easy once you drink the koolaid.
20:27:42 <lambdabot> <wango|yeomius> says: do you like turing complete?
20:28:08 <Phantom_Hoover> I suggest we move HackEgo's entire database across to these poor unfortunates
20:29:28 <lambdabot> copumpkin says: [about learning Haskell compared to other languages] I learned X in Y time, but Z is taking much longer. Z sucks!
20:37:59 <monqy> http://www.timecube.com/
20:39:16 -!- elliott has joined.
20:40:30 <monqy> the vortex math website is a bit better formatwise
20:42:35 <Phantom_Hoover> What is it with Reddit and sticking *everything* on imgur?
20:42:41 <elliott> imgur was made by a redditor
20:42:41 <lambdabot> elliott: You have 2 new messages. '/msg lambdabot @messages' to read them.
20:43:11 <Phantom_Hoover> It's a goddamn webpage. Did you know that you can link to those as well as imgur?
20:43:15 <monqy> I don't reddit. should I reddit?
20:43:15 <Vorpal> elliott, any news on the system spec
20:43:56 <elliott> Vorpal: I've been really busy, sorry. You might want to just go ahead and buy something; you can replace components incrementally, after all, in the long run.
20:44:58 <Vorpal> elliott, yeah I guess I will have to, but I actually will be really busy until Sunday (that is: [today,Sunday), that is, a semi-closed interval), so you have some more time.
20:47:15 <olsner> I wonder what I was talking about in that 2002 comment
20:47:47 <Vorpal> olsner, I would search logs for you, but they are not on this system
20:47:56 <elliott> olsner wasn't here in 2002.
20:48:13 <Vorpal> elliott, <HackEgo> 347) <olsner> it is from 2002 though, I was younger then
20:48:27 <Vorpal> elliott, it was a discussion about something from 2002
20:48:37 <Vorpal> (perhaps some software he wrote or something?)
20:48:45 <olsner> pretty sure I have all the logs laying around somewhere
20:49:14 <elliott> 23:43:26: <olsner> wtf, my boot loader/os project has a CVS dir that points to a cvsroot with a windows path
20:49:49 <monqy> the topic is from the spambots right? are those things still going?
20:49:56 <olsner> right, CVS. On Windows.
20:50:50 <olsner> yeah, but only by about 9 years. should've known better really
20:59:41 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
21:00:13 <Phantom_Hoover> The channel didn't exist in 2002 beyond fizzie, surely?
21:00:20 <elliott> Of course it did... and what?
21:00:47 <Phantom_Hoover> It was just fizzie talking to all the alternate fizzies.
21:00:55 <elliott> Ugh, what's Gregor's old hg log URL?
21:01:00 <elliott> I need to clone it to get fizzie's two thousand and two logs.
21:02:20 -!- BeholdMyGlory has quit (Ping timeout: 252 seconds).
21:05:42 -!- BeholdMyGlory has joined.
21:24:04 -!- FIXME_nddrylliog has quit (Ping timeout: 240 seconds).
21:30:39 -!- zzo38 has joined.
21:32:47 -!- elliott_ has joined.
21:32:48 -!- elliott has quit (Read error: Connection reset by peer).
21:37:38 <Phantom_Hoover> I just made the mistake of reading the comments thread of a r/worldnews link critical of Israel.
21:40:06 <Phantom_Hoover> Basically I'm not even sure about that colony on Mars any more.
21:40:36 <Phantom_Hoover> Much more of this and I will lose faith not only in humanity but in all sentient life.
21:43:33 -!- Sgeo has joined.
21:43:34 -!- 16WAAFGFK has joined.
21:44:07 -!- 16WAAFGFK has quit (Client Quit).
21:45:37 * Sgeo looks at Gambit
21:47:11 <Sgeo> What Schemes don't suck?
21:47:16 <Sgeo> ^^not rhetorical
21:48:16 * Sgeo does not feel like writing a Scheme at the present moment
21:48:18 <Sgeo> Just using one
21:55:10 <Sgeo> Phantom_Hoover, no such person
21:55:49 <Phantom_Hoover> Sgeo, I am sorry who is the Creator Of Star Wars Acronyms For Sgeo's Love Interests here.
21:56:08 <elliott_> "Sgeo's Love Interests" is an awfully verbose way of saying "females".
21:56:23 <Sgeo> Phantom_Hoover, well, could you key me in to who "IT-AT" is referring to, then?
21:56:40 <elliott_> You need to know all the programs to get a job.
21:56:43 <Phantom_Hoover> elliott_, well yes but as near we can tell he's never flirted with his stepmother.
21:57:01 <elliott_> If you make a Scheme, it will be bad for her; it'll be YET ANOTHER program she needs to know to get a job!
22:07:29 -!- Phantom_Hoover has quit (Remote host closed the connection).
22:12:05 <cheater666> * Cannot join #esoteric-minecraft (You are banned).
22:12:12 <cheater666> NOOOOOooooooooOOOooooooooooooooooooooooooo
22:37:49 <pikhq_> 3 tests down, 2 to go!
22:38:18 <elliott_> can you fit all those in before the rapture
22:38:52 <pikhq_> They're on the 16th and 17th.
22:38:58 <pikhq_> Well before the predicted rapture.
22:40:36 -!- FireFly has quit (Quit: swatted to death).
22:44:45 <siracusa> When is the rapture predicted for?
22:45:56 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:47:18 <elliott_> But it's OK, because we have After the Rapture Pet Care.
22:47:39 <elliott_> Whose site appears to be sadly down, probably because of Satan.
22:48:48 * Sgeo smiles at Chicken supporting SRFI-17
22:49:10 <Sgeo> (It's a Scheme equivalent to Common Lisp's setf... I think)
22:50:57 <elliott_> that can be done in like twenty lines Sgeo :)
22:51:29 <Sgeo> Aren't most SRFIs like that? Theoretically supportable in any comforming Scheme?
22:51:37 <Sgeo> I thought SRFIs include code to implement
22:51:41 <Sgeo> Maybe I'm just wrong?
22:52:01 <elliott_> Well, sure, but they don't all do things you can do in pure Scheme.
22:52:26 <elliott_> And of course you can't rebind the meaning of SET! in standard Scheme.
22:52:44 <elliott_> ; Use the LET* syntax scope extension in Twobit to let this SET! macro
22:52:44 <elliott_> ; reference the old definition of SET! in the second clause.
22:52:45 <elliott_> http://srfi.schemers.org/srfi-17/srfi-17-twobit.scm
22:54:42 <Sgeo> I still don't get Scheme macros
22:55:38 <Sgeo> So are Common Lisp macros
22:56:06 <zzo38> I don't know either, but I don't know much of Common Lisp or Scheme anyways.
22:56:08 <Sgeo> It's been a while since I read about Scheme macros
22:56:22 <elliott_> So safe usage of Common Lisp macros is very hard, and requires lots of tedious GENSYMing.
22:56:55 <elliott_> The following article describes how to overload set! so we can do
22:56:55 <elliott_> (set! (if (< x y) x y) 3.1415)
22:56:55 <elliott_> (map (lambda (var val) (set! var val))
22:56:58 <elliott_> to change the values associated with the variables x, y and z. We can still use set! to mutate ordinary bindings as in (set! u (+ x y)).
22:57:01 <elliott_> http://okmij.org/ftp/Scheme/macros.html#map-set
22:57:09 <elliott_> So I guess you can override SET! portably.
22:57:12 <zzo38> Are they different from C macros? I think it is, but I don't actually know.
22:57:31 <elliott_> zzo38: Yes, they operate on ASTs, rather than tokens.
22:58:40 <elliott_> For instance, the AST of (+ 9 (/ 9 9)) is obtained by providing it as input on an appropriate port after calling the READ procedure.
22:59:04 <elliott_> It is a list whose CAR is the interned symbol with the name "+"; and those CDR is a list whose CAR is the number 9, and whose CDR is ...
23:00:17 <zzo38> OK I looked on Wikipedia the diagram helps, I think, and it also has a description which also describes it
23:00:47 <zzo38> elliott_: Yes now I can understand
23:01:07 <elliott_> Sgeo: Fun fact -- quote can be implemented as a macro; it is not a primitive.
23:01:46 <elliott_> Well, in a defmacro style system. http://okmij.org/ftp/Scheme/quote-as-macro.txt
23:01:48 <elliott_> Not sure about with syntax-rules.
23:06:53 <elliott_> Sgeo: http://okmij.org/ftp/Scheme/setf.txt oleg's scheme setf
23:07:28 <Sgeo> That's pre-SRFI-17
23:08:03 <Sgeo> Except it works differently... it goes based on the name
23:08:12 -!- Cheery has quit (Quit: Lost terminal).
23:26:54 -!- ais523 has quit (Remote host closed the connection).
23:41:20 -!- nddrylliog has joined.
23:51:16 -!- quintopia has quit (Ping timeout: 264 seconds).
23:52:51 -!- nddrylliog has left ("Leaving").
00:02:57 -!- quintopia has joined.
00:08:27 <pikhq_> Holy jesus fuck the Enterprise is fast.
00:08:36 <pikhq_> Warp 9 is about 1000c. Or 0.1 lightyears per *hour*.
00:08:38 <Sgeo> I'm staying here, though
00:15:44 <pikhq_> ... And the Federation is 8,000 lightyears wide.
00:15:56 <pikhq_> Making travelling across the Federation take 9 years.
00:25:47 <Gregor> And Warp 10 is INFINITE SPEED
00:26:01 <Gregor> But when you go warp 10 you DE-EVOLVE OH NOOOOOSE
00:31:25 <elliott_> But then you get it on with your captain.
00:32:03 <Sgeo> Time to stop farking around with Fark
00:32:08 <Sgeo> And actually start working
00:32:22 <Sgeo> (define (really?) #f)
00:32:41 <Sgeo> (defun really () nil)
00:32:47 <Sgeo> (defun really-p () nil)
00:32:55 <Sgeo> Or is it reallyp ?
00:33:31 <Gregor> De-evolution was a different episode :P
00:33:38 <Gregor> And that notion ALMOST approaches making sense almost.
00:34:27 <Sgeo> Supposedly, the writer's point was that there's no such thing as de-evolution
00:46:26 -!- Lymia has joined.
00:47:41 <elliott_> <Gregor> De-evolution was a different episode :P
00:47:41 <elliott_> <Gregor> And that notion ALMOST approaches making sense almost.
00:47:46 <elliott_> Gregor: Err, warp ten makes you go all lizard.
00:48:07 <elliott_> Sgeo: The writer's point is that he should choke on a cock and die. Writing Threshold is unforgivable and warrants torture.
00:48:35 <Sgeo> He feels remorse for what he's done, doesn't he?
00:49:00 <elliott_> He must suffer for all eternity.
00:49:07 <Sgeo> I should watch it...
00:51:28 <pikhq_> elliott_: Warp 10 also makes you have infinite velocity with finite energy (?), but only go a few fractions of a lightyear away.
00:53:03 <Gregor> <elliott_> Gregor: Err, warp ten makes you go all lizard. // yes, but that was by means of hyper-evolution.
00:53:31 <Gregor> pikhq_: But he could SEE EVERYTHING, and he THOUGHT his way back to Voyager maaaaaaaan *smokes more pot*
00:53:58 <pikhq_> I like to think they invented an Infinite Improbability Drive, myself.
00:55:08 <Sgeo> I should also try PHP, just to give elliott_ an anxiety attack
01:02:55 <zzo38> Although I have used PHP and made programs in PHP, it isn't very good. You can try if you want to though, see what it is.
01:12:11 <Sgeo> For some reason, I thought zzo38 was a PHP fan. I guess using != liking
01:18:00 <Sgeo> I'm just looking up sources to support what I already know, instead of learning from them
01:20:31 -!- augur has joined.
01:20:40 <Gregor> Google Maps has options for "avoid highways" and "avoid tolls", but no "avoid Chicago"
01:21:05 <elliott_> `addquote <Gregor> Google Maps has options for "avoid highways" and "avoid tolls", but no "avoid Chicago"
01:21:07 <HackEgo> 406) <Gregor> Google Maps has options for "avoid highways" and "avoid tolls", but no "avoid Chicago"
01:21:20 <HackEgo> 322) <elliott> just because i'm homosexual <elliott> doesn't mean i have sex with men. <elliott> ...i'm also a paedophile [...] <elliott> see if i'm a gay paedophile <elliott> i don't have sex with men <elliott> i have sex with BOYS
01:21:22 <HackEgo> 126) <Warrigal> Darn, now I can't acknowledge the reference you were making.
01:21:22 <HackEgo> 276) [on Walter Bright] <nddrylliog> I went to chat with him after his talk at the ELC and he was like "hum, right - humans. How do they work again... oh, hi!"
01:21:23 <HackEgo> 318) <ais523> gah, who'd have thought removing concurrency from algol could be so difficult
01:21:25 <HackEgo> 141) <fungot> AnMaster: to any airbus plane. 3 passengers sadly died the most awesome thing ever.
01:36:21 -!- dbc has quit (Ping timeout: 240 seconds).
01:39:55 * Sgeo bites his tongue
01:40:07 <Sgeo> I'm about to recommend Subversion instead of Mercurial
01:40:17 * Sgeo feels like a traitor
01:40:52 <Sgeo> (I'm writing this paper from the point of view of a hypothetical corporation that has never seen version control before)
01:41:35 * Sgeo changes his mind
01:43:10 <Sgeo> I feel even worse for it being Joel who made me change my mind back towards Mercurial.
01:55:22 * Sgeo vaguely wonders if there's freely available autotuning software. According to Wikipedia, "Auto-tune" is a proprietary product :/
02:05:16 <Sgeo> Less than 2 hours to go
02:24:50 <pikhq_> Sgeo: git git git git.
02:25:16 <pikhq_> Well, rather, DCVS DCVS DCVS DCVS.
02:25:49 <pikhq_> Centralized version control is a fundamentally broken model.
02:25:58 <Sgeo> Well, I'm not going to really describe how to take full advantage of D
02:26:06 <Sgeo> Since I'm unsure of it mysef
02:28:37 <pikhq_> Why would you recommend D, anyways?
02:28:50 <pikhq_> Well, unless they fixed the stupid.
02:29:29 <Sgeo> As in, the "Distributed" of DVCS
02:29:33 <Sgeo> Not as in the language
02:29:57 <Sgeo> When will there be an E language?
02:30:00 <Sgeo> We have B, C, D
02:30:04 <Sgeo> Oh, there is already
02:31:27 <Sgeo> I'm sure there's plenty I'm forgetting. What are they?
02:33:48 -!- pikhq has joined.
02:36:40 -!- pikhq_ has quit (Ping timeout: 276 seconds).
02:42:26 <Sgeo> My next few paragraphs will be: Subversion, Git, and Mercurial
02:45:18 <Sgeo> Dangit, can't find any sources that give the brief overview that I do
02:46:01 * Sgeo looks for a glossary
02:54:32 <Sgeo> There's no way in heck that I will reach 5 pages. It is simply impossible.
03:04:39 <Sgeo> pikhq, you're going to kill me. I plan on vaguely being irritated at Git's history modification
03:04:53 <Sgeo> Without any real sources to back up my claim that it's a ticking-off sort of thing
03:10:48 * Sgeo cites gitvsmercurial.com
03:11:19 * Sgeo gets the person's name off of whois
03:12:38 <myndzi> i'm looking for a set of rules describing a turn-based strategy game that is very simple
03:12:40 <myndzi> maybe board-game level
03:12:45 -!- TeruFSX has joined.
03:12:52 <Sgeo> Teru Atlantis?
03:13:02 <myndzi> something that'd be fun, with considerations for basic terrain features somehow and maybe a handful of units, at least one with ranged attacks
03:13:11 <Sgeo> WTF that's not the phrase?
03:13:33 <Sgeo> Oh, "Terra Atlantis"?
03:14:38 <Sgeo> No, just commenting on TeruFSX's name
03:15:01 <TeruFSX> do you really want me to explain my name
03:35:28 <pikhq> It is technically possible for a child to have 5 parents.
03:36:06 <pikhq> Biological father, biological mother, surrogate mother, adoptive father, adoptive mother.
03:37:05 <zzo38> I consider only their biological parents their real parents, but I guess what you said is possible. How many times have you found anything like this?
03:37:13 <Sgeo> I have 2 and 1/4 pages
03:37:48 <Sgeo> pikhq, what about multiple adoptive parents?
03:37:54 <Sgeo> At least I have 10 sources.
03:38:52 -!- oerjan has joined.
03:39:04 <pikhq> Sgeo: Oh, let's go further — polygamous parents.
03:39:40 <pikhq> It is technically possible for a child to have as many parents as there are humans capable of entering into a marriage.
03:41:40 <elliott_> unless two people who have a kid outside of marriage aren't parents
03:42:01 <elliott_> although, I wouldn't say that all polyamorous configurations would lead to everyone being a parent...
03:42:54 <Sgeo> 2.5 pages of bullshit
03:42:58 <Sgeo> With 10 sources
03:43:08 <Sgeo> No way would I be able to write 5 pages, I think.
03:43:33 <Sgeo> Maybe namedrop some more VCSes?
03:43:39 <Sgeo> Visual SourceCrap
03:43:53 <Sgeo> (Note: Don't call "crap" things I have a limited awareness of)
03:44:36 <pikhq> Visual SourceSafe is definitely crap.
03:44:41 <pikhq> It is incapable of multi-user use.
03:45:05 <Sgeo> Dear EasyBib: Now is NOT a good time to stop working
03:45:44 <zzo38> What do you need to write this report for?
03:46:29 <Sgeo> Management Information Systems
03:46:33 <oerjan> <monqy> the topic is from the spambots right? are those things still going?
03:46:45 <Sgeo> It was a term project. I started it today. It's due in 12 minutes.
03:47:00 <oerjan> no, it seems that tightening captchas fixed it (before it only was for anonymous edits with links in)
03:48:02 <pikhq> And I thought *I* was a procrastinator.
03:49:04 <Sgeo> I can't write anymore
03:49:10 <Sgeo> I'm handing it in as is
03:51:10 <zzo38> Sgeo: No! Make it double-spaced!
03:51:39 <zzo38> Then make narrow margins!
03:52:06 <zzo38> That way it will fill 5 pages.
03:52:17 * Sgeo needs to make sure TurnItIn doesn't think I'm a plagiarist
03:52:35 <zzo38> How does it check?
03:52:51 <zzo38> Then don't use their service.
03:53:05 <elliott_> * Sgeo needs to make sure TurnItIn doesn't think I'm a plagiarist
03:53:09 <elliott_> what an amazing inversion of logic.
03:53:16 <elliott_> Finally, Turnitin for students. Avoid accidental plagiarism.
03:54:10 <Sgeo> I was once accused of plagiarising by a professor, simply because I used big words.
03:54:49 <elliott_> TRANSFERRING TO A PLACE THAT ISN'T A HEAP OF SHIT
03:57:21 <Sgeo> I cited a page that says "Who the FUCK cares"
03:57:31 <Sgeo> I feel ... weird, not bad weird, about that
03:57:38 -!- zzo38 has quit (Quit: 42).
03:57:47 <quintopia> well, if he's secretly a muslim, we'll be okay
03:57:49 <elliott_> jesus i wish xchat's ignore features were more usable this is killing me
03:57:59 <Sgeo> quintopia, ...what?
03:58:19 <quintopia> i thought i was only like a screen away from current
04:01:01 <elliott_> "He's probably just tired. Or a sociopath."
04:01:29 -!- oklofok has joined.
04:01:53 <elliott_> and with that, oklofok entered
04:02:18 -!- oklopol has quit (Ping timeout: 248 seconds).
04:03:22 -!- Zwaarddijk has quit (Ping timeout: 240 seconds).
04:04:04 -!- ineiros has quit (Ping timeout: 252 seconds).
04:04:08 <oerjan> <pikhq> Biological father, biological mother, surrogate mother, adoptive father, adoptive mother.
04:04:34 <oerjan> there's this woman of which the norwegian government made a half-example
04:04:57 <oerjan> she went to india to get a surrogate mother for her child (this is not legal to get done in norway)
04:05:40 <oerjan> intending to become a single mother. she didn't use her own eggs.
04:05:58 <oerjan> using surrogate mothers
04:07:56 <oerjan> at least paying them for it. i'm not sure of the details.
04:08:25 <oerjan> anyway, since she's not even the biological mother, by norwegian law she is _not_ the parent. by indian law, she is.
04:08:43 <oerjan> left the twins in complete legal limbo
04:09:39 <pikhq> Would that leave them stateless?
04:09:40 <oerjan> she almost got permission to adopt them anyway, but she lied on the application and said it _was_ her eggs
04:11:10 <oerjan> well they showed some mercy after about a year, and let her adopt anyway.
04:11:24 * pikhq wonders why there's laws against altruistic surrogacy. At all.
04:12:46 <oerjan> so for most of that year she was stranded in an indian hotel room with twins without a legal visa
04:15:03 <oerjan> it was pretty clear that the government were going to let them in _eventually_. but making sure no one else would want to try and copy her. or be able to claim ignorance.
04:15:39 <pikhq> Hmm, seems that the Convention Relating to the Status of Stateless Persons does not cover in any way a stateless child of a stated person.
04:16:13 <pikhq> Oh, it's irrelevant, anyways. India is not signatory.
04:17:34 <oerjan> one _could_ point out that india's laws support a booming surrogate parent _industry_
04:18:04 <pikhq> Easy as hell to cease that. Stop banning practices for no good reason!
04:19:29 -!- Zwaarddijk has joined.
04:22:06 -!- ineiros has joined.
04:23:27 <pikhq> A third instance of eye evolution in the vertebrates.
04:23:33 <pikhq> Dolichopteryx longipes is a species of barreleye fish. It has evolved a second pair of eyes with distinct optics.
04:23:37 <pikhq> Using *reflective* optics.
04:23:52 * oerjan found an english article somewhat about it on an indian website http://www.csrindia.org/index.php/surrogate-motherhood
04:24:40 <elliott_> I don't think anyone's arguing against /unregulated/ surrogacy are they?
04:25:00 <pikhq> (the barreleye fish, BTW, have transparent skulls)
04:26:32 <oerjan> elliott_: you mean _for_?
04:27:01 * oerjan eyes elliott_ suspiciously
04:28:11 <oerjan> YOU SCARY LIBERTARIANS
04:28:41 <elliott_> yes absolutely a libertarian that is what i am
04:36:27 <Sgeo> Scheme wiki has been hit by spam
04:39:22 <elliott_> abqbebrsbbsbbdbsbdbsbabqbqbqbqbqbqbqbq
04:54:17 <Sgeo> "Turing Completeness Considered Harmful"
04:55:15 <oerjan> (define (spam) (spam) (spam))
04:56:26 <elliott_> so is all the spam from that streak reverted?
04:56:32 <elliott_> we sort of went about it piecemeal
04:57:18 <oerjan> i tried to double check everything, and yesterday i asked ais523 to look over Special:New pages
05:14:52 <elliott_> TIL about Louis Wain, a man whose cat paintings show the progression of his schizophrenia. (dangerousminds.net)
05:20:31 <elliott_> AND I CAN COUNT IN EQUAL NUMBER THE AMOUNT OF TIMES I'VE SEEN IT REFUTED
05:20:47 <elliott_> Do you think I can unsubscribe from *every* subreddit?
05:24:15 <elliott_> Then there'll be no crap at all on my frontpage.
05:24:37 <oerjan> you could add askscience, i hear it's pretty good
05:25:02 <elliott_> oerjan: Why would I want to see other people's ignorance?
05:25:13 <elliott_> Why are there sixty seconds in a minute, sixty minutes in an hour etc? And why does a second last the duration that it does? (self.askscience)
05:25:18 <elliott_> Why can't you make a perpetual spinning magnetic motor? (self.askscience)
05:25:26 <elliott_> If I have 20/20 vision and put on somebody's prescription glasses, will I basically see the way that they do? (self.askscience)
05:25:33 <elliott_> oerjan: no, i do not think this would be a good subreddit to subscribe to.
05:25:48 <oerjan> too cynical to live, check
05:25:49 <elliott_> How does a dog know to make eye contact? With a human? (self.askscience)
05:25:57 <elliott_> Cell phones are killing bees? Is this true? (self.askscience)
05:26:01 <elliott_> Why is the sky a bright orange sky before a thunderstorm? (self.askscience)
05:26:06 <elliott_> Questions about the wave-particle duality in quantum mechanics (self.askscience)
05:26:14 <elliott_> Can drinking distilled water exclusively be harmful? (self.askscience)
05:26:20 <elliott_> Why do atomic explosions result in mushroom-shaped clouds? (self.askscience)
05:26:26 <elliott_> How many Homo Sapien ancestors do I have (approximately)? (self.askscience)
05:26:49 <Sgeo> iirc, Arc is one of the 3 despised-by-many-Lispers lisps?
05:26:59 <Sgeo> Along with newLisp and Clojure?
05:27:10 <oerjan> elliott_: um are these actual posts and answers or have you never actually visited the subreddit? (i admit i rarely have)
05:27:22 <elliott_> oerjan: actual posts, I'm making up the answers because I hate these people
05:27:36 <elliott_> Sgeo: Anyway, Arc isn't hated much for its actual language, it's more pg's hyping and the subsequent utter letdown.
05:27:45 <oerjan> well it's the _answers_ i've heard are good
05:27:48 <Sgeo> "utter letdown"?
05:27:52 <elliott_> The language itself is uninteresting/crappy, but it's too intwined with pg's ego as far as hatred goes.
05:28:05 <elliott_> Sgeo: um, he spent over five years saying he was working on a revolutionary lisp dialect that would last a hundred years
05:28:18 <elliott_> when it was released it was a few hundred lines of scheme code with shorter names for some functions, and an http server
05:28:34 <elliott_> (he literally said he wanted arc to last a hundred years)
05:28:43 <elliott_> oerjan: good answers to stupid questions? well that's not exactly a difficult business :D
05:28:44 -!- pikhq has quit (Read error: Operation timed out).
05:29:36 -!- pikhq has joined.
05:30:12 <oerjan> so basically arc is the proof that pg has hit his own whatever it was starting with b
05:30:39 <oerjan> no a word someone made up, possibly pg himself
05:33:53 <Sgeo> I don't really remember why newLISP was hated, except for the memory management, and I think even I saw that something some newLISP defender said was... wrong somehow
05:34:59 <elliott_> it has no garbage collection, is uninteresting in most if not every way, and its creator and all its fans are evidently idiots as they try and scramble to justify this in the most terrible way possible
05:35:13 <elliott_> (i'll let dynamic scoping slide as picolisp pulls it off)
05:36:10 <elliott_> "Dutch is like English from some alternative, backwards universe where hydrogen is replaced with vowels."
05:36:50 <Sgeo> "@radekg Please don't insult COBOL like that. It's nowhere near as bad as ColdFusion. :-)"
05:36:54 <Sgeo> http://programmers.stackexchange.com/questions/2846/which-programming-language-do-you-really-hate
05:37:15 <elliott_> or i will commit serious acts of violence against you and nobody will be able to stop me :(
05:37:20 <elliott_> such will the force of my facepalming be
05:37:26 <Sgeo> elliott_, did you think I was about to ask if I should learn ColdFusion?
05:37:40 <elliott_> you were going to ask why it sucked
05:38:37 <Sgeo> I assume it's more than just the XMLishness
05:38:50 <Sgeo> (I had and read a book on ColdFusion once when I was young)
05:39:06 <elliott_> im going to get drunk and forget everything i know about codlfusion
05:40:02 <Sgeo> <cfif nick eq "elliott_">You can't hide that easily</cfif>
05:46:23 <Sgeo> "Basic constructs of any decent language include the ability to specify a null value. You will find no such thing in ColdFusion, only hacks into it's Java layer (another questionable mess) and a ridiculous nod in the form of (cfqueryparam null="yes")."
05:46:40 <Sgeo> Wow. That's... probably the only wrong reason to hate CF
05:46:51 <Sgeo> (Not having nulls is _not_ a bad thing)
05:47:05 <elliott_> having no nulls and no maybe/option type certainly is
05:47:06 <Sgeo> (Unless you can't handle their occasional use cases easily)
05:47:19 <elliott_> Returning "maybe a value, or maybe not" is almost universal.
05:47:24 <elliott_> For instance, any kind of lookup.
05:50:01 <oklofok> obviously the superiorest way to fail is continuations, especially these modern and structured continuations called exceptions are particularly handy
05:50:43 <elliott_> non-local control flow ARE YOU CRAZY?????
05:51:00 <oerjan> but the locals are so dirty
05:51:37 <oerjan> also every monad can be implemented with continuations, see felleisen
05:52:32 <elliott_> there's a nice sigfpe post about that too
05:54:22 <oerjan> the one about how you could get monad syntax for any monad if it just worked for Cont?
05:57:51 <oerjan> hm is this the real Slava Pestov? http://www.reddit.com/r/programming/comments/6ikav/shortest_summary_of_the_release_of_arc_and_the/c03xxhe
05:59:48 * elliott_ said that without even clicking :)
06:00:11 <oerjan> also http://www.reddit.com/r/programming/comments/6ikav/shortest_summary_of_the_release_of_arc_and_the/c03y3l6
06:35:23 -!- elliott_ has quit (Read error: Connection reset by peer).
06:38:53 -!- elliott has joined.
06:49:03 <cheater666> so you can totally orz him if you want
06:49:34 <oerjan> cheater666: well i was just wondering if the reddit account was real, is all
06:50:02 <oerjan> after all, he was making a pretty strong statement, there
06:50:23 <cheater666> Orz (also seen as Or2, on_, OTZ, OTL, STO, JTO,[22] _no, _冂○,[23] 囧rz,[20] O7Z, _|7O, Sto, O|¯|_, and Jto[original research?]) is an emoticon representing a kneeling or bowing person
06:51:00 <cheater666> oerjan, good programmers need a good kick in the butt if they're doing stupid shit
06:53:18 <oerjan> i don't think that applies very well to paul graham. he is one of those unreasonable people George Bernard Shaw spoke about.
06:53:36 <oerjan> which is wonderful when he is _right_, of course, but...
07:12:20 <Sgeo> Bootable livecd for anonymity? Where have I heard that before...
07:17:08 <fizzie> Boo-table, the main building block of a ghost database.
08:11:42 -!- siracusa has quit (Ping timeout: 240 seconds).
08:13:16 -!- siracusa has joined.
08:14:51 -!- monqy has quit (Quit: hello).
08:55:16 -!- Vorpal has joined.
08:58:11 <Lymia> What language is that?
08:58:28 <Lymia> Looks like a mangled Chinese 4.
08:59:24 <Lymia> Ah, it is a kanji/hanzi
09:12:50 -!- ais523 has joined.
09:29:09 <ais523> umm, I'm meant to be teaching a tutorial right now
09:29:13 <ais523> but none of my students showed up
09:29:18 <ais523> so I'm sitting in the room with a laptop
09:41:54 <ais523> I was slightly late, so I'm wondering whether they all turned up, decided I wasn't coming, and went home; or whether they never turned up in the first place
09:41:59 <ais523> it's optional, because it's exam revision
09:42:25 <ais523> and if they haven't turned up, I have to wonder if they don't need it, or they're really overconfident, or they're really lazy
09:46:54 <fizzie> Around here people generally wait for up to 10-20 minutes before giving up.
09:48:06 <ais523> that's about how late I was, train issues
09:51:03 -!- oerjan has quit (Quit: leaving).
09:53:02 -!- FireFly has joined.
09:53:51 <Vorpal> <Lymia> 囧? <--- looks like a simple outline of a house inside a frame
09:54:49 <Vorpal> ais523, that is not slightly late, that is quite a bit late
09:56:28 <Vorpal> ais523, slightly late: up to 5 minutes, a bit late: up 10 minutes, late: up to 15 minutes, quite a bit late: up to 25 minutes, very late: up to 45 minutes, extremely late: anything above that
09:56:48 <ais523> I didn't know you could quantify vague adjectives that accurately
09:56:49 <fizzie> Is this an ISO standard?
09:57:10 <Vorpal> ais523, then you learnt something new today
09:59:49 <Vorpal> ais523, actually that is the old system, in the new system it is preferred to give it in units of late (with metric prefixes), so you were 8 decilate
10:01:00 <ais523> wow, I suspended my laptop, came back to my office, unsuspended it, and was still connected to IRC
10:01:21 -!- augur has quit (Remote host closed the connection).
10:01:28 <Vorpal> ais523, was that s2ram?
10:01:42 <ais523> I wouldn't expect hibernation to work
10:01:54 <Vorpal> I managed to pull out ethernet cable, untangle the cabling, plug it back in, and still be connected to irc
10:02:09 <Vorpal> I'm a bit surprised it works with wireless and with s2ram though
10:02:25 <ais523> the only thing that really surprises me is that the IP didn't change
10:02:31 <ais523> (presumably, if it had, reconnecting automatically would have failed)
10:02:32 <fizzie> TCP's like that; I guess I've mentioned the "can hang-up the dialup connection and redial without IRC dropping" thing here earlier.
10:02:52 <ais523> I'm well aware that TCP is capable of handling the connection break, though, as long as it's short enough that there's no pingout
10:02:53 <Vorpal> fizzie, not that I remember
10:03:00 <ais523> UDP is actually like that too, for different reasons
10:03:14 <Vorpal> how comes UDP is like that hm
10:03:15 <ais523> the connection doesn't actually exist, so a short enough interruption is indistinguishable from the connection breaking
10:03:34 <Vorpal> ais523, that depends on the protocol on top of udp though
10:03:51 <ais523> Vorpal: well, yes, but I'm talking if you just write a program that's pretty much raw UDP
10:03:54 <ais523> as a chat server or something
10:04:10 <fizzie> Vorpal: Well, that was most of the story already, though I also did patch ircii to say "PING? PONG!" whenever the server pinged, so I could choose to do the disconnection immediately after a previous ping.
10:04:10 <Vorpal> ais523, you could lose messages in the udp case (unlike the tcp case)
10:04:28 <ais523> Vorpal: indeed, but for something like a chat server that's less of a problem
10:04:32 <Vorpal> fizzie, why did you patch it like that
10:04:43 <fizzie> Vorpal: I think mIRC used to say it like that.
10:04:57 <ais523> IRC servers don't actually ping each other to check connection
10:04:57 <fizzie> (Some win3.11-age version of it, anyway.)
10:05:07 <ais523> they just assume the pings, and send a constant stream of pongs
10:05:08 <Vorpal> fizzie, why did you redial
10:05:25 <Vorpal> ais523, you mean the server-server protocol? Well that varies between ircds
10:06:02 <Vorpal> though sending keep alive messages is one way yes
10:07:15 <fizzie> Vorpal: That was a silly telephone call pricing thing. The local telephone company used to have fixed-price-per-call "evening" (17-08) local call prices; then after modems got all popular they changed it so that the "per-call" price only got you 30 minutes, after that it was some per-minute pricing. So the cheapest way to stay online was a series of ~30-minute calls.
10:07:51 <ais523> fizzie: oh, that's why they do that?
10:08:10 <ais523> in the UK, the phone cost for evening calls nowadays is something like 10p for the first hour, then 1p per minuts
10:08:12 <Vorpal> fizzie, heh, did you do it by a script then?
10:08:36 <ais523> and the phone company actually suggests redialing every hour for that reason
10:09:02 <Vorpal> why would they suggest it openly...
10:09:05 <fizzie> ais523: Well, I haven't seen any official rationale; but that's my guess, anyway, since it happened pretty soon after people started spending time online with several hours long phonecalls.
10:09:18 <ais523> Vorpal: I think they're assuming that people assume that that's just how phones work
10:09:46 <Vorpal> that they need reconnecting?
10:09:47 <ais523> fizzie: the other reason to do things like that is because most phone calls are very short, but people still have to pay for the whole first hour anyway
10:09:54 <ais523> Vorpal: that they start costing more after an hour
10:10:50 <fizzie> ais523: Well, I guess; but the per-call price here was only ~5 minutes worth of the per-minute pricing. (Which was actually I think the same per-minute price they used normally for the mon-fri 8-17 calls.)
10:10:54 <Vorpal> anyway, modems are dead these days (outside development countries at least)
10:11:16 <fizzie> Vorpal: I didn't have a completely automated script since I wanted to time it for the pings, and hooking up pppd's time-elapsed counter with ircii's ping-checking sounded a bit overly elaborate.
10:11:35 <Vorpal> well, PPP still survives in the form of PPPoE/PPPoA and such, oh and tethering over bluethooth at least
10:11:41 <ais523> but it's because the per-minute pricing is insane, rather than because the first-hour price is cheap
10:12:13 <ais523> and then, after a while, one of the phone companies came up with an "as many phone calls as you like, of any length, to one ISP for a flat rate"
10:12:28 <ais523> and that's more or less how the monthly-cost internet connection came to the UK
10:12:57 <Vorpal> ais523, isn't monthly cost internet standard for anything that isn't dial-up?
10:13:07 <Vorpal> I don't think I ever seen dial-up that is monthly cost
10:13:17 <ais523> Vorpal: it is /nowadays/
10:13:21 <Vorpal> ais523, anyway at least in Sweden the ISPs are generally the phone companies
10:13:22 <ais523> but it was pretty revolutionary then
10:13:30 <ais523> especially as it was dialup back then
10:13:44 <fizzie> I think they did some sort of Internet-related phone-call deals here in Finland too.
10:14:00 <ais523> and yes, in the UK nowadays, the ISPs, cable/satellite TV providers, phone companies, and even sometimes mobile phone companies are all the same
10:14:20 <ais523> I think I remember the price too, it was £25 a month
10:14:30 <Vorpal> ais523, well yes, mobile phone companies are mostly the same as land line ones, with a few that are mobile only
10:14:37 <ais523> come to think of it, it's about that nowadays, although effectively cheaper because of inflation
10:14:52 <ais523> Vorpal: here, there are several mobile only
10:15:09 <Vorpal> ais523, there aren't all that many companies doing mobile phone here
10:15:23 <ais523> and the largest landline company, BT, don't really do mobile phones (they do, technically, but only because they bought a mobile phone company and run it as a mostly separate unit)
10:15:31 <ais523> there are quite a lot of major mobile phone companies in the UK
10:16:01 <Vorpal> lets see, Telia, Tele2, Telenor, 3, Comviq, Halebop (owned my Telia, but targets a different market segment than Telia itself).
10:16:05 <fizzie> Seems that the current landline local call price here is... 0.012 eur/minute + 0.121 eur/call, with no special cases. Or possibly 0.0059 eur/minute with a different sort of deal.
10:16:12 <Vorpal> maybe some more, but not any large ones
10:17:22 <ais523> fizzie: wow, that's cheap by UK standards
10:17:37 <Vorpal> I have no idea what landline price is
10:17:39 <ais523> although probably the UK is cheap by the standards of some other countries
10:17:56 <ais523> when I was in Canada, I tried to make an international call by payphone to the UK
10:18:10 <ais523> and the way it worked was, you dialed the number first then the phone told you how much it would cost, and you either paid or hung up
10:18:15 <fizzie> ais523: 0.012 eur/minute + 0.121 eur/call translates to 1.046p/minute and 10.544p/call, which sounds like those prices you mentioned, with the exception that you start paying per-minute immediately at the start of the call even in the evenings.
10:18:39 <ais523> when I tried, it took something like 5 minutes to work out the cost, and gave a number so large that I couldn't be reasonably expected to fit that many coins into my wallet to be able to pay it a coin at a time
10:18:51 <ais523> fizzie: oh right, I muddled euros and eurocents
10:18:56 <ais523> no wonder I thought your prices were cheap
10:19:23 <Vorpal> ais523, it took 5 minutes to work out the cost!?
10:19:32 <ais523> Vorpal: I think the phone wasn't doing it itself
10:19:47 <ais523> I think it phoned up some central cost calculation location that had to work out how much a call to the UK was likely to cost
10:19:57 <ais523> and for all I know, it was being done by hand rather than automatically
10:19:57 <Vorpal> ais523, was it a human doing it then?
10:20:26 <Vorpal> ais523, a computer would do it in a fraction of a second yeah
10:20:30 <fizzie> International telephony is a complicated thing.
10:20:53 <ais523> I made a phone call from Hungary to the UK and that wasn't so bad
10:21:08 <ais523> and was definitely calculated automatically, connection took no more than a couple of seconds longer than normal
10:21:34 <Vorpal> expected since it would have to route in a complex way I guess
10:21:36 <ais523> it was a bit more expensive than a typical landline connection, but that wasn't surprising
10:21:43 <fizzie> Mobile phone roaming abroad is also quite messy, protocol-wise, if I recall correctly from some telecommunications-basics lectures. The phone gets a temporary "virtual number" in the country-you're-visiting and so on.
10:22:11 <ais523> I suppose it was within Europe, though, and that's practically one country for some purposes
10:22:43 <Vorpal> at least in Sweden there is no longer any difference between long distance/local within the country for rates
10:22:52 <Vorpal> there is a difference between to landline / to mobile though
10:23:05 <Vorpal> and of course international rates is the usual mess
10:23:20 <fizzie> We still have local/long-distance landline prices, it seems.
10:23:56 <fizzie> I don't think people are really making any new landline deals in any significant numbers, though.
10:24:20 <Vorpal> fizzie, what about ADSL?
10:24:30 <Vorpal> it goes over landline after all
10:24:59 <fizzie> Well, okay, but that's usually sold (at least in here) as an internet-only service and without a telephone number + contract.
10:25:05 -!- BeholdMyGlory has joined.
10:25:46 <ais523> fizzie: in the UK, the landline normally just comes with the house nowadays
10:25:48 <fizzie> I think new buildings tend to opt for some sort of fiber-based interwebbing anyway. I have no idea if they still install traditional telephone wiring though.
10:25:54 <ais523> so new landline deals are mostly only made for new houses
10:26:08 <ais523> and they have to have traditional telephone wiring so you can make an emergency call during a power cut
10:27:22 <fizzie> Do you have some sort of "can make an emergency call even without a landline contract"? Because at least in here people have been busily giving those up.
10:27:22 <cheater_> has anyone here used any AST-based source code editors?
10:27:33 <ais523> cheater_: I think Cheery was writing one
10:27:45 <ais523> someone who was here a while back
10:27:56 <cheater_> i know someone's writing one for Haskell, but he's only talking about it and not really doing it
10:28:04 <cheater_> what do you guys think of the concept?
10:28:13 <ais523> fizzie: if you make an emergency call from a mobile in the UK, any mobile operator in range has to pick it up and relay it, whether you have a contract with them or not
10:28:15 <cheater_> i think AST + vim style operation could be very cool
10:28:20 <ais523> in fact, many phones can do it even without a SIM card
10:28:35 <fizzie> ais523: Sure, but that doesn't have anything to do with telephone wiring.
10:28:44 <Vorpal> fizzie, I think you can call 112 no matter what in Sweden. Such as mobile carriers have to let them through by law even if you don't have a contract with them, or you are out of money on a pre-paid plan or whatever
10:28:56 <ais523> for the telephone wiring, I imagine emergency calls would only work if it was physically connected to something at the other end
10:28:58 <cheater_> fizzie: well, technically, a sim card has got wires (well, conductors) in it
10:29:14 <Vorpal> and iirc my mobile can call 112 without entering the PIN even
10:29:25 <ais523> Vorpal: would suck if your PIN started 112
10:29:29 <ais523> or does the phone know about that?
10:29:34 <Vorpal> ais523, different button for call and for OK
10:29:36 <ais523> (e.g. do you have to press 1 1 2 green, or something like that?)
10:30:06 <ais523> 112 is technically the emergency number in the UK too, although 999 still works, and probably will do forever
10:30:08 <fizzie> Percentage of homes with a landline telephone in Finland has dropped from 94% to 33% between 1995-2007; but I can't find any newer statistics. :/
10:30:17 <Vorpal> ais523, from google image search, this is my phone model: http://dansbandsfrun.bloggproffs.se/files/nokia-3120-classic-021.jpg
10:30:24 <Vorpal> (I have the blackish one)
10:30:43 <ais523> (112 is a much superior number from a physical point of view; it's harder to type by mistake on a keypad, and faster to dial on an old-fashioned rotary dial phone)
10:30:49 <Vorpal> the blue - button above the call button is used for OK
10:31:48 <Vorpal> ais523, on a non-rotary phone it is harder to get right if you are in a stressful situation, with 999 you can just mash one button a couple of times
10:32:13 <ais523> still, when my little sister was very young she dialed 999 by mistake, because 9 was her favourite number
10:32:21 <fizzie> The N900 "enter lock code" screen has a number pad and a "done" button; if you type in 112 as the code, an extra "emergency call" button appears above the "done" button.
10:32:21 <ais523> and my parents had to explain what happened to the emergency response people
10:32:30 <ais523> luckily, they were presumably quite used to that sort of thing happening
10:32:52 <fizzie> The SIM entry dialog might have a similar thing.
10:33:03 <ais523> and it doesn't cost much money for them to answer a call and decide it isn't an emergency; it's only when they decide it is that it's really expensive
10:33:16 <ais523> hmm, has anyone here made an actual emergency call, ever?
10:33:22 <Vorpal> ais523, still hitting 9999 will still take you to emergency service, while I don't think 1112 or such will take you to the right place (presumably 1122 would though)
10:33:37 <ais523> I did once (calling university security on their emergency number because a fight had broken out in the building I was in)
10:33:49 <Vorpal> ais523, a fight at university, heh
10:33:52 -!- augur has joined.
10:33:55 <ais523> fizzie: what was yours about?
10:34:02 <ais523> Vorpal: indeed, and it was looking quite violent
10:34:16 <Vorpal> ais523, I just wouldn't expect that in a university
10:34:26 <ais523> I tried to stop it myself, but the fight just migrated into a lift (en-us:elevator) and shot off way out of the range where I could chase it
10:34:41 <ais523> and in the end it was broken up by security
10:34:59 <Vorpal> ais523, anyone you knew involved?
10:35:19 <ais523> they were in my department, but I had no idea who they were
10:35:25 <fizzie> ais523: There was a fire alarm device going on in the apartment above us, and after it had been going on for 15 minutes or so without stopping I thought I'd better let the fire emergency people know about it. They sent a car to take a look.
10:35:28 <Vorpal> ais523, students? faculty?
10:35:44 <ais523> fizzie: was it a fire?
10:36:12 <fizzie> ais523: Turned out the people living above us had for some really inexplicable reason an (indoors) fire alarm in their *balcony*, and perhaps the -25-degrees-Celsius temperatures or something had gotten it confused.
10:36:20 <Vorpal> fizzie, uh wouldn't fire alarm in a university building be wired to automatically notify emergency services
10:36:23 <Vorpal> at least around here they are
10:36:27 <ais523> Vorpal: mostly they are over here
10:36:28 <fizzie> Vorpal: This was at home.
10:36:38 <Vorpal> fizzie, oh I read that as department, not apartment
10:36:44 <ais523> the last building I was in (not this one, the one with the Door) was originally wired up to the fire department
10:36:59 <ais523> but they gave up after a while, as the builders kept drilling through fire alarm signal wires and calling out the fire engines as a result
10:37:22 <Vorpal> ais523, I seen a handful of false alarms at university myself
10:37:30 <ais523> so now they have a system where the signal went to security control, and they'd check to see if it looked like an actual fire or manual call, and call the fire brigade themselves if it was actualy a fire
10:37:40 <cheater_> Vorpal: i would <3 to see uni faculty get it on
10:37:43 <ais523> in my current department, the fire alarm has only ever gone off during actual fire drills
10:37:55 <ais523> although the burglar alarm goes off by mistake quite a bit
10:38:01 <ais523> and can be annoying during lectures
10:38:34 <Vorpal> ais523, I seen an electrician set off a burgler alarm next to a lab I was in at one point.
10:38:34 <cheater_> ais523: do you think an ast-based editor can be useful?
10:38:50 <Vorpal> with a few hours in between
10:38:53 <ais523> cheater_: potentially, yes, but I likely wouldn't use one
10:39:00 <Vorpal> you would think he would avoid doing it the second time
10:39:00 <ais523> text has huge benefits
10:39:22 <cheater_> Vorpal: maybe he failed at avoiding.
10:39:25 <ais523> you can easily interpret it in a different way
10:39:31 <cheater_> rolled snake eyes on the critical roll
10:39:45 <cheater_> ais523: how does that relate to source code?
10:39:55 <ais523> I often line up columns with whitespace in my programs, for instance, so I can easily do edits going down the columns rather than across the rows
10:39:58 <fizzie> ais523: After our high school building was renovated (and a new wing built), there was a series of maybe 5 or so spurious fire alarms within a period of about two weeks. The emergency service people probably got quite bored about it. (And the first call was answered with real fire truck, maybe even a couple, while for the last one someone just came with a regular car to turn the thing off.)
10:40:01 <ais523> which is an operation that makes no sense in an AST
10:40:11 <cheater_> ais523: no reason an ast-based editor couldn't do that
10:40:30 <ais523> cheater_: I'd say it wouldn't be AST-based if it did
10:40:32 <cheater_> lots of things can display serialized data in equal-width columns
10:40:40 <cheater_> it's about the navigation and editing
10:40:47 <Vorpal> fizzie, lucky there wasn't a real fire then the last time
10:40:56 <cheater_> for example the space between the source items could, inside the editor, be zero-width
10:41:16 <cheater_> but it would not be displayed zero width, instead the right amount of space would be displayed
10:41:24 <cheater_> in this case, what's on screen != what's in the buffer
10:41:28 <ais523> cheater_: but the columns aren't part of the AST at all
10:41:37 <cheater_> no, but they're part of the display
10:41:44 <Vorpal> ais523, now design a language where columns would be part of the AST
10:41:46 <cheater_> no reason you can't have a render pass
10:42:02 <ais523> Vorpal: they would be in DownRight
10:42:10 <ais523> in fact, part of the reason that doesn't have an interp yet is that it doesn't have a syntax
10:42:15 <Vorpal> ais523, I'm not familiar with that language *checks esowiki*
10:42:22 <ais523> I'm not sure if I put it there yet, but it's really simple
10:42:39 <cheater_> Vorpal: what do you think about an ast-based text editor?
10:42:44 <ais523> a program is a rectangular matrix, treated as a torus, and each cell contains a possibly empty string of "down" and "right"
10:42:56 <cheater_> ais523: so if the text editor does a render pass to line up things, are you happier with it?
10:42:57 <ais523> running a program, you start by appending a copy of the contents of the first cell to a queue
10:43:04 <cheater_> i mean lining up columns is trivial
10:43:14 <ais523> then continuously move in the program according to the queue, appending a copy of the contents of each cell as you go
10:43:39 <Vorpal> ais523, that queue wouldn't grow more than 1 element would it?
10:43:45 <cheater_> say you have two lines like this: [1, 2, 555, 6, , 2, 1] and [1, 5, , 2, 77] <--- those two can be lined up trivially
10:43:46 <ais523> each cell contains a string
10:44:22 <Vorpal> ais523, how do you know it is TC?
10:44:28 <cheater_> what i want is a language where the indentation of the line changes the scope it operates in, but lines still get executed from top to bottom
10:44:58 <ais523> if the width and height of the matrix are coprime, it compiles neatly into more or less everything (that's not how I know it's TC, I proved it was TC by compiling cyclic tag into it)
10:45:12 <cheater_> for example: you could have an if branch which defines a new local scope. inside this if branch you could have a single line that's one indentation less than the rest of the if body. it makes the line operate on the context that the if clause was on.
10:45:14 <augur> ais523, Vorpal, what languages do you speak natively?
10:45:26 <cheater_> ais523: no, python finishes blocks on encountering lesser indentation
10:45:28 <Vorpal> ais523, so why would it not have an interpreter?
10:45:33 <ais523> I think INTERCAL is the only program which has scopes that work like that, and it doesn't use indentation for scoping
10:45:40 <ais523> Vorpal: you could interpret it just fine
10:45:45 <ais523> it just also happens to compile easily
10:45:51 <cheater_> ais523: do you think this could be an interesting esolang?
10:46:01 <ais523> but then, so could most other things
10:46:05 <Vorpal> augur, Swedish I guess. Though I manage quite well in English, and in some areas (compsci mostly) I know the words of things in English but not in Swedish.
10:46:08 <ais523> at least it wouldn't be a boring BF derivative
10:46:25 <ais523> cheater_: because you only really need one new idea to make an interesting esolang
10:46:29 <ais523> especially if you milk it to death
10:46:40 <ais523> http://esolangs.org/wiki/Forte is my favourite example of that, among the esolangs I've designed
10:46:44 <cheater_> ais523: what other ideas could be used for this esolang?
10:46:46 <Vorpal> ais523, so why is it not implemented, it should be easier than befunge even,
10:46:54 <Vorpal> need a proper spec though
10:46:54 <ais523> Vorpal: because it doesn't have a syntax
10:47:01 <ais523> and thus you can't write programs in it
10:47:17 <Vorpal> ais523, a file format like befunge's would surely work?
10:47:30 <ais523> well, there are strings in every cell
10:47:34 <ais523> so you'd need to separate with tabs or something
10:47:45 <ais523> (but then, it'd look ugly in an editor if your strings were more than 7 chars long)
10:47:49 <augur> wheres my finns :|
10:48:11 <Vorpal> ais523, actually I suggest space separation, if you can write downright
10:48:24 <fizzie> augur: What do you need a Finn for?
10:48:31 <ais523> well, I don't think you'd write out the words
10:48:32 <augur> fizzie: data collection
10:48:48 <cheater_> ais523: and use html tables for the cells
10:48:51 <ais523> which have the benefit of being easy to type on my keyboard
10:48:54 <augur> fizzie: i need some minor translations and judgements of grammaticality
10:48:54 <Vorpal> ais523, well space separation then.
10:48:55 <ais523> cheater_: that is an awful idea
10:49:03 <cheater_> ais523: that's exactly why it should be done
10:49:08 <Vorpal> ais523, yes ↓→ are easy, just altgr-u/i
10:49:08 <ais523> Vorpal: how would you distinguish an empty cell?
10:49:10 <cheater_> ais523: or better yet, excell spreadsheets
10:49:14 <ais523> Vorpal: same combo as on here
10:49:31 <Vorpal> ais523, hm... maybe a symbol representing that?
10:49:51 <cheater_> ais523: excel spreadsheets can be output to TSV, you don't need to look at the intermediate code
10:49:59 <Vorpal> ais523, why not any symbol that isn't space, ↓ or →
10:50:03 <fizzie> augur: Well, if it doesn't take long, I can provide some; though I'm not always so good at judging grammaticality. (Finnish is anyway quite flexible about some things, especially if you just apply some poetic license.)
10:50:16 <ais523> ah, so you can put a comment in a cell to mark it as empty?
10:50:22 <augur> fizzie: are you a native finnish speaker, or a second language speaker?
10:50:30 <fizzie> augur: Native Finnish speaker, yes.
10:50:51 <Vorpal> ais523, as long as there is no space in that comment of course
10:50:54 <ais523> hmm, I vaguely want to write a downright -> BF compiler now, it shouldn't be too hard
10:50:58 <Vorpal> ais523, since then it would be multiple cells
10:51:10 <ais523> although simplest to insist on coprime width/height
10:51:17 <Vorpal> ais523, I want to write a DownRight interpreter if you put up page on the wiki about it
10:51:25 <Vorpal> ais523, why do they need to be co-prime?
10:51:35 <ais523> as then you can use just one modulo operation to wrap both of them, rather than needing two
10:52:01 <ais523> say your program is 7 wide and 5 high
10:52:15 <ais523> you can map (x, y) to (5x + 7y) mod 35
10:52:20 <ais523> and use it as an index to a lookup table
10:52:21 <Vorpal> oh you mean one integer to track the position, right
10:52:28 <ais523> then going down is adding 5, across is adding 7
10:52:54 <Vorpal> ais523, solved too many crosswords?
10:54:01 <Vorpal> ais523, anyway, why compile to bf?
10:54:10 <ais523> for fun, not for any particular reason
10:54:40 <Vorpal> ais523, why not compile to feather?
10:55:08 <ais523> because a) that would be uninteresting given the nature of Feather, b) I still don't really get how Feather works yet
10:55:16 <ais523> and INTERCAL generally makes a bad compilation target
10:55:37 <Vorpal> I'd love to see a queue implemented in intercal
10:55:59 <ais523> simplest way to do a queue in INTERCAL is two stacks
10:56:18 <ais523> you pop from the first and push on the second; if you try to pop from the first and it's empty, you reverse the second stack onto the first and continue
11:10:11 -!- jix_ has quit (Read error: Connection reset by peer).
11:49:02 <ais523> http://esolangs.org/wiki/DownRight is on the wiki now, anyway
12:02:49 <Vorpal> ais523, hm what happens with leading whitespaces on a line?
12:02:58 <Vorpal> it doesn't seem to be defined
12:03:03 <ais523> at the start of a program, it isn't
12:03:17 <Vorpal> ais523, at the start of a line I was considering
12:03:22 <ais523> everywhere else, they end up as part of the whitespace that separated it from the line before
12:03:39 <ais523> as it's a string of whitespace containing at least one vertical whitespace character
12:04:03 <Vorpal> ais523, btw real comments will likely end up like this foo_bar_quux
12:04:30 <Vorpal> ais523, what about weird unicode spaces
12:04:50 <ais523> but it wouldn't be the first time esolangs had a bizarre comment syntax
12:05:19 <ais523> really, since when has Unicode support ever been consistent between implementations of a widely-implemented esolang?
12:05:21 <Vorpal> ais523, what about a unicode zero width space, is that a whitespace or a comment?
12:05:39 <ais523> there's an official definition of what is and what isn't whitespace somewhere, though
12:05:57 <Vorpal> ais523, you mean, for esolangs, or in general?
12:06:09 <ais523> the official definition's in general
12:06:32 <ais523> Unicode Consortium, most likely
12:07:32 <Vorpal> ais523, at some point (not today) I might write a ↓→ compiler. Compiling to C probably, though dynamically growing queues in C sounds no fun
12:07:40 <Vorpal> also um, how would one observe the state
12:09:00 <Vorpal> ais523, languages with output are nice in that it is easier to test them
12:09:03 <ais523> well, it's just halt/nonhalt
12:09:08 -!- FireFly has quit (Quit: swatted to death).
12:09:08 <ais523> but it's easy enough to do debug output
12:09:15 <Vorpal> ais523, could be halt-at-position
12:09:16 <ais523> just print the sequence of downs and rights as they're popped
12:09:26 <ais523> and maybe coordinates too
12:10:06 <Vorpal> ais523, I can't see any way to optimise this language that isn't just evaluating it
12:11:23 <ais523> some sort of static analysis?
12:11:48 <Vorpal> ais523, I'm not sure how helpful it would be...
12:12:06 <Vorpal> or what sort of thing you could extract from it
12:12:46 <ais523> well, some downs/rights you could statically prove to always move to blank cells
12:13:01 <ais523> so you could merge them into the downs/rights afterwards, as a sort of "move diagonally" or whatever
12:13:07 <Vorpal> ais523, I guess the best way to do a queue in C would be a single-linked list and keeping a pointer to the end element, blergh
12:13:13 <Vorpal> dynamic memory allocation
12:13:33 <ais523> no, the best way is to use a circular array and grow it if necessary, even if it means you have to copy the queue
12:13:48 <Vorpal> ais523, hm, but wouldn't that depend on where they came from before, to know what was already in the queue?
12:13:49 <ais523> that has much better cache properties, stores more compactly in memory, and requires much fewer allocations
12:14:18 <Vorpal> ais523, more painful to work with, but sure
12:14:38 <Vorpal> ais523, I'd write the compiler in a HLL though
12:16:05 <ais523> hmm, after spending several hours translating an algorithm from Haskell into OCaml
12:16:21 <ais523> I concluded that the major difference between the languages is that Haskell's standard library was better, or at least easier to memorise
12:16:44 <Vorpal> ais523, maybe you are just more used to haskell?
12:17:08 <Vorpal> iirc ocaml has a very good compiler btw
12:17:08 <ais523> Vorpal: it's more that I had to write lambdas a lot more in OCaml
12:17:23 <ais523> whereas in Haskell, normally there was a handy combinator I could just use
12:27:50 <Vorpal> ais523, this is utterly useless: http://esolangs.org/wiki/Golang
12:27:55 <Vorpal> too little information about it
12:28:14 <ais523> Vorpal: see the talkpage
12:28:25 <Vorpal> hm okay now that made me more confused
12:29:41 <Vorpal> doesn't it has finite memory
12:29:49 <Vorpal> (since the wires can't grow)
12:31:16 <ais523> it is if you can have an infinite (and repeating) program
12:31:37 <ais523> probably most easily by making a Minsky machine
12:34:05 <fizzie> Speaking of which, at least my Google search puts the Esolang wiki "Minsky machine" article above the two Wikipedia results (titled "Register machine" and "Counter machine").
12:35:20 -!- MigoMipo has joined.
12:42:49 <Lymia> If you override __builtin__.str on eval.appspot.com, you override it's front page.
12:43:41 <ais523> Lymia: presumably they didn't think that someone would do that
12:44:13 <Lymia> ais523, the front page was nyancat for a hile.
12:49:04 <Vorpal> Lymia, that is an empty page currently
12:49:32 <Lymia> Vorpal, somebody broke shell.appspot.com which it redirects to.
13:12:46 -!- cheater666 has quit (Ping timeout: 240 seconds).
13:24:59 <cheater_> jesus why are macintoshes so annoyingly slow and inefficient
13:26:54 <oklofok> well no offense but have you considered that you might just be really quick and efficient yourself?
13:27:37 <oklofok> Vorpal: birds are really cute when scavenging for food
13:27:48 -!- azaq23 has joined.
13:27:49 <oklofok> lifting stuff up with their little beakies
13:27:57 <Vorpal> oklofok, what kind of birds
13:28:12 <Vorpal> oklofok, even large birds?
13:28:26 <Vorpal> those don't have small beaks after all
13:28:38 <oklofok> well i suppose just relatively small ones
13:28:53 <Vorpal> oklofok, do you consider something like a crow to be relatively small?
13:30:25 <Vorpal> they are smaller than swans certainly
13:30:38 <oklofok> maybe ducks are relatively small too
13:33:54 <oklofok> i just got the results from my last exam ever
13:34:21 <Vorpal> oklofok, so you are done at university after this?
13:34:28 <Vorpal> oklofok, what are you going to do then?
13:34:42 <oklofok> everything else i finished months and months ago
13:34:49 <Vorpal> oklofok, so why this exam?
13:35:03 <Vorpal> oklofok, what is your PHd about?
13:35:13 <Vorpal> err that was weird caps
13:36:23 <oklofok> there's a few fun open problems in cellular automata and finite state automata that would be fun to solve but they might not actually be very feasible
13:37:50 <oklofok> cerny's conjecture, if there's a synchronizing word for a DFA, then there's one of length O(n^2)
13:38:12 <oklofok> synchronizing word = from any state, you go to one particular state, when reading that word
13:38:13 <Vorpal> oklofok, I see, what is a synchronizing word in this context?
13:38:42 <Vorpal> oklofok, what is n in there?
13:38:49 <oklofok> it's relatively easy to show O(n^3), but that's all that's known
13:39:43 <oklofok> it's okay, i haven't gotten a fix of mathoin for about a month now so if i don't get results soon i'll probably get depressed and die
13:39:50 <Vorpal> oklofok, so that word has to be the same for any given state you are in hm
13:39:54 -!- azaq23 has quit (Ping timeout: 264 seconds).
13:40:09 <oklofok> you synchronize every state to one
13:40:23 <Vorpal> oklofok, well you could do one that would go to a known state and then to the state you want, I guess that one would be O(n^3) though?
13:40:59 <Vorpal> oklofok, interesting problem. How do you show the O(n^3) case?
13:41:20 <oklofok> then there's the conjecture about periodic points in surjective CA, namely that they are "dense", that is, let G be a surjective CA, and let w be any word, then the conjecture says there's some (one-dimensional infinite) configuration x that contains w and is periodic in the sense that G^n(x) = x for some n > 0
13:41:42 <oklofok> augur: i wasn't sure fix was unambiguous enough so i had to do something like that
13:42:12 <augur> no that just made it worse XD
13:42:44 <oklofok> Vorpal: erm let me think i haven't slept at all
13:43:14 <ais523> oklofok: I can prove O(2^n) quite easily
13:43:27 <ais523> and that's less than O(n^3) for small enough n
13:43:42 <oklofok> ais523: you can do O(n^3) the same way, but you have to use a different modified graph
13:43:53 <ais523> oklofok: yes, I was thinking along those lines
13:43:59 <ais523> as you don't need all sets, just prime subsets
13:44:11 <oklofok> yeah, and in fact you don't need subsets
13:44:35 <oklofok> do you want to try and extrapolate from "pair graph"?
13:44:48 <ais523> I'm happy as I am, I think
13:44:59 <oklofok> since if you understand the powerset construction, then that's kinda obvious too
13:45:00 <ais523> if I think about the problem seriously I'll hit the n^3 proof quite easily, I imagine
13:46:09 <oklofok> so the pair graph H constructed from G is, we have pairs of states as the new states, and (x, y) -> (z, w) in H with label a if x -> z and y -> w both with label a in G
13:46:28 <ais523> that sounds like a concept stolen from category theory
13:46:40 <oklofok> H is partitioned into the diagonal and... well, the rest
13:46:50 <oklofok> the diagonal is the vertices of the form (x, x)
13:47:04 <oklofok> now, synchronizing two states means finding a path from outside the diagonal to the diagonal
13:48:15 <ais523> hmm, I think wlog we can assume the transition graph is strongly connected
13:48:30 <ais523> as if it isn't, you can work on each half of the problem separately
13:48:33 <ais523> without loss of generality
13:48:50 <ais523> it means that the result if you assume something also applies to the situation where you don't, just with terms reversed or something like that
13:48:55 <oklofok> if the graph is strongly connected, the result is obviously untrue
13:49:02 <oklofok> so that was implicitly assumed
13:49:16 <oklofok> if you think it isn't, you misunderstood the problem
13:49:27 <ais523> say each state transitions to each other state, with a label depending on what it aims to
13:49:40 <ais523> what did you think I'd said?
13:49:54 <ais523> that would make quite a difference
13:49:59 <Vorpal> oklofok, yet you typed it?
13:50:05 <oklofok> that's not needed in the proof anyway
13:50:19 <oklofok> Vorpal: well i didn't miss the actual word
13:50:20 <ais523> I know it isn't, just thought that it might be interesting aiming for a different sort of proof
13:50:32 <oklofok> ais523: oh you got the proof already?
13:50:42 <ais523> no, I'm just brainstorming
13:51:08 <ais523> when aiming for a proof, I aim to come up with relevant-looking lemmas and conjectures first
13:51:09 <oklofok> basically you just note that n^2 steps is enough to unify *some* two vertices in case there exists a synchronizing word
13:51:13 <ais523> even if I can't see why they'd matter
13:51:23 <ais523> oklofok: oh, for the n^3, that's easy enough to work out
13:51:37 <oklofok> because if there's a synchronizing word, there will have to be a path from outside the diagonal to the diagonal in H, so there must be one of length at most n^2
13:51:55 <ais523> well, n(n-1), but that's the same thing because we're messing with big-O notation
13:51:56 <Vorpal> oklofok, can there exist a synchronizing word for one target state but not for another in a graph?
13:52:15 <ais523> imagine a state machine with two states, and one letter in the input alphabet
13:52:26 <oklofok> Vorpal: not in a strongly connected graph, otherwise sure
13:52:26 <ais523> there are only four such machines, two of them have that property
13:52:28 <Vorpal> yeah I see A->B but no other one
13:52:41 <Vorpal> (no other connection that is)
13:52:45 <ais523> anyway, I should have eaten lunch hours ago
13:52:53 -!- ais523 has quit (Remote host closed the connection).
13:53:26 <oklofok> anyhow so as i said, n^3 is sort of trivial, but it seems clear that n^2 is actually enough
13:53:42 <Vorpal> oklofok, but you don't have a proof for it?
13:54:03 <Vorpal> if you do, write your phd on that :P
13:54:04 <oklofok> yeah i think i scribbled that in my solution to the riemann hypothesis notes
13:54:26 <Vorpal> oklofok, ah, like in the margin saying the margin was too small to contain that proof as well? ;P
13:55:06 <oklofok> no i managed to fit the whole proof, there was just enough space between my one-liner solution to the 4-color conjecture and my proof of god
13:55:57 <Vorpal> oklofok, did you have a go at the Church–Turing thesis too?
13:56:10 <oklofok> i considered it obvious enough, like the rest of the world
13:56:26 <Vorpal> oklofok, it isn't actually proven though
13:57:47 <oklofok> WELL CAN ANYTHING REALLY EVERY BE PROVEN?
13:58:01 <Vorpal> oklofok, that is philosophy I think, not math
13:59:15 <oklofok> i have this thesis that topological limits are the true definition of approaching
13:59:51 <oklofok> let me demonstrate: if i have a point that goes towards another point, then we can put some open sets around one of them and, well, the rest is history
14:00:11 <Vorpal> I know next to nothing about topology
14:00:27 <oklofok> oh well it was a stupid joke anyway
14:00:44 <Vorpal> except that topologists likes to drink coffee from doughnuts ;P
14:25:25 <tswett> 4b2o$2o2bobo$o5bo$b5o$3bo!
14:25:29 <tswett> Just in case anyone was wondering.
14:32:08 -!- azaq23 has joined.
14:42:27 <tswett> I've never seen it before and it doesn't seem to have a LifeWiki article, probably because it's not notable.
14:43:01 <tswett> I guess Mark Niemiec discovered it, if nobody else did before him..
14:49:57 <Vorpal> tswett, oh it is a GOL thingy
14:50:01 <Vorpal> tswett, how does one read it
14:51:38 <tswett> First line: four dead, two live. Next line: two live, two dead, live, dead, live. Next line: live, five dead, live. Next line: dead, five ilve. Next line: five dead, live. End.
15:07:08 -!- cpressey has joined.
15:11:49 <cpressey> What's the appeal of ooc? It mystifies me that BitBucket includes it in its dropdown to select "what language is this project written in". While there is no mention of, say, Pure or Felix.
15:15:35 <cpressey> Of course BitBucket's search sucks so badly that I have no real idea how many projects there *are* written in ooc... I only see one that mentions ooc in its description, and it's one of those "learn you this language" tutorials.
15:15:40 -!- oerjan has joined.
15:15:57 <cpressey> Oh, and it's not even ooc :/ It's a tutorial on "Object-Oriented C"
15:24:11 -!- ais523 has joined.
15:25:28 * oerjan mind boggles at ais523 managing to get the Unparseable spec to approach self-consistency
15:25:51 <oerjan> i wasn't even assuming it was a design goal at this point
15:26:56 <ais523> oerjan: I'm still not convinced it's anywhere near self-consistent
15:27:06 <ais523> but atm, I'm beginning to think of it as a constraint solving puzzle
15:27:19 <ais523> find at least one execution path that doesn't break any of the rules
15:28:14 <ais523> I'm not yet sure if there's a program with multiple consistent interpretations
15:28:21 <oerjan> well if the inventor of Feather cannot make it, no one can
15:28:54 <ais523> hey, I haven't invented Feather yet
15:29:13 <ais523> (note: I may need access to clog's hard-drive so I can retroactively change the previous line if necessary)
15:31:29 <fizzie> Today's reminder of how I'm pretty low on the pecking order of the world: "I am contacting you regarding your reservation in our hotel, we have a problem with your reservation. This problem ocured because of unexpected increasing of rooms in one group we are accommodating in the period of your reservation and we are not able to break this group. Therefore we have to move your reservation to another hotel in Prague, --"
15:32:14 <fizzie> I think the logic here goes "big group == large amount of money for the hotel == more important".
15:34:25 <ais523> hmm, /me acts on advice honed over years on the Internet: if you're going to reply to someone you agree with, tell them you do, or they're going to assume you're arguing with them
15:36:29 -!- Sgeo has quit (Read error: Connection reset by peer).
15:37:35 <cpressey> ais523, on the network, it's a good idea to be strict in what you provide
15:38:01 <ais523> cpressey: heh, are you trying to make this into something that's amusing just because it's said so often?
15:38:34 <cpressey> well, I was riffing on what I told you yesterday, re your spambot
15:39:16 <ais523> being strictish in what you accept is a good way to keep out spambots, actually
15:39:19 -!- jix has joined.
15:53:33 <lambdabot> Not in scope: data constructor `Tree'
15:54:07 <oerjan> > let n = Tree [n,n] in n
15:54:07 <lambdabot> Not in scope: data constructor `Tree'
15:54:14 <oerjan> > let n = Node [n,n] in n
15:54:14 <lambdabot> Occurs check: cannot construct the infinite type:
15:55:00 <fizzie> It seems to me the bot can't see the Forest for the Trees.
15:55:02 <oerjan> > let n = Node () [n,n] in n
15:55:03 <lambdabot> Node {rootLabel = (), subForest = [Node {rootLabel = (), subForest = [Node ...
15:55:51 <lambdabot> Occurs check: cannot construct the infinite type: t = [t]
15:57:04 <ais523> fizzie: well, if the trees are dense enough, you can't see if they're an isolated thicket, or if there's an entire forest behind them
15:58:22 <cpressey> > let mzgbd = [mzgbd] in mzgbd
15:58:23 <lambdabot> Occurs check: cannot construct the infinite type: t = [t]
15:58:36 <cpressey> but at least it's not shadowing anything, am i right?
15:59:09 <oerjan> lists cannot recurse into their heads, only their tails
15:59:20 <cpressey> yeah, i was working on that angle
16:00:14 <cpressey> > let mzgbd = (():mzgbd) in mzgbd
16:00:14 <lambdabot> [(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),()...
16:00:38 <ais523> # Compiler.find_connected_components_from_edge_inner ;;
16:00:40 <ais523> - : 'a -> ('a * 'a) list -> int -> 'a list -> 'a list -> ('a * int) list -> 'a list list -> 'a list -> ('a * 'a list) list -> 'a list list = <fun>
16:01:01 <ais523> for some reason, I seem to do stateful algorithms by passing all the components around by hand, rather than using monads or variables
16:01:31 <cpressey> habit from when I learned Erlang, in my case
16:02:27 <ais523> *Main> :t findConnectedComponents''
16:02:28 <cpressey> eventually I get like "all these arguments are being passed everywhere and they always appear together -- let's make this a record"
16:02:29 <ais523> findConnectedComponents'' :: (Eq a, Ord b, Num b) => a -> [(a, a)] -> b -> [a] -> [a] -> [(a, b)] -> [[a]] -> [a] -> (b, [a], [a], [(a, b)], [[a]])
16:02:50 <ais523> the OCaml version was written more recently, though, and I rewrote it in CPS, which made it quite a bit simpler
16:02:57 <cpressey> I don't think I've every written something with *that* type
16:03:24 <ais523> (the ('a * 'a list) list-typed argument in the OCaml version is actually a manually maintained call stack)
16:03:43 <ais523> well, the "all these arguments are being passed everywhere" thing didn't really come up, as it was just one thicket of functions
16:04:25 <ais523> (well, a manually maintained continuation stack, but I made "continuations-by-reference" by hand, because it was less insane than trying to do it automatically)
16:06:16 <ais523> the major advantage of Haskell over OCaml is its standard library, IMO
16:06:27 <ais523> it's much more relevant than the whole laziness and purity arguments
16:06:44 <ais523> perhaps that isn't in the library after all?
16:06:46 <cpressey> I... don't know if I agree with that
16:07:00 <cpressey> But my use case for Haskell is probably not typical
16:07:00 <ais523> ah indeed, I wrote it by hand
16:07:12 <lambdabot> Data.Unique hashUnique :: Unique -> Int
16:07:22 <ais523> in fact, I even wrote member by hand, but I think mostly because I didn't know what it was called
16:07:31 <lambdabot> forall a. (Eq a) => a -> [a] -> Bool
16:07:54 <ais523> oerjan: I wanted something that deleted all items from a list that were the same as items that had occured previously in the list
16:08:10 <ais523> Deewiant: ah, is that what it's called?
16:08:14 <cpressey> I typically write my own map functions in Haskell
16:08:30 <ais523> > nub [1,2,1,4,3,1,5,2,4,3,1,2,5,4,3]
16:08:42 <ais523> other thing that catches me out a lot is that OCaml uses ; not , as a list separator
16:08:54 <ais523> and that [1,2] is perfectly legal, and means [(1,2)]
16:09:04 <ais523> i.e. a one-element list of tuples
16:09:21 <oerjan> cpressey: you should be aware that many of haskell's list functions have optimization rules
16:09:27 <cpressey> ML's syntax does not appeal to me
16:09:47 <cpressey> oerjan: er - I misspoke previously
16:09:55 <ais523> the other thing I find myself doing a lot is having computations which are clearly monad-based, but as I'm in OCaml, doing it by hand using the definitions from the List monad
16:10:11 <cpressey> I typically define my own mapping data structures in Haskell
16:10:36 <ais523> I know I tend to define fmap for my own structures if it fits
16:10:41 <cpressey> because "Cafeteria See Your Food"
16:11:01 <oerjan> <ais523> in fact, I even wrote member by hand, but I think mostly because I didn't know what it was called <-- sounds like you really need to learn to use hoogle :D
16:11:10 <ais523> oerjan: that only works when online
16:11:13 <ais523> I typically don't program when online
16:11:37 <lambdabot> Data.IntMap member :: Key -> IntMap a -> Bool
16:11:37 <lambdabot> Data.IntSet member :: Int -> IntSet -> Bool
16:11:37 <lambdabot> Data.Map member :: Ord k => k -> Map k a -> Bool
16:11:43 <ais523> in fact, all this work on compilers I've been doing recently (that's where the scary type signature from above comes from) has lead to an esolang idea
16:12:25 <ais523> which is basically taking dependent typing to the extreme, and hoping the resulting language is TC adding nothing extra but a combined lambda/switch statement
16:12:38 <ais523> I fear it may even end up computable
16:13:05 <ais523> or, more likely, the language itself TC, but the type system uncomputable
16:13:07 <ais523> which would just be bizarre
16:14:12 <cpressey> the kind of all dependent types which are provably finite
16:14:23 <ais523> class Functor t => FunctorM t where
16:14:24 <ais523> fmapM :: Monad m => (a -> m b) -> (t a) -> m (t b)
16:14:29 <ais523> now I'm trying to figure out why I wrote that
16:14:35 <ais523> I think I needed to cross fmap and mapM
16:14:38 <ais523> and the library didn't obviously have it
16:14:41 <cpressey> it seems most of the research in type systems is to find type systems which are *decidable*, so finding ones that are undecidable probably is not difficult
16:14:48 <ais523> @hoogle Monad m => (a -> m b) -> (t a) -> m (t b)
16:14:48 <lambdabot> Data.Traversable mapM :: (Traversable t, Monad m) => (a -> m b) -> t a -> m (t b)
16:14:49 <lambdabot> Data.Traversable forM :: (Traversable t, Monad m) => t a -> (a -> m b) -> m (t b)
16:14:49 <lambdabot> Prelude mapM :: Monad m => (a -> m b) -> [a] -> m [b]
16:15:17 <ais523> looks like I was reinventing Data.Traversable
16:15:40 <ais523> oh, on the obvious basis that functors don't have to have a natural order
16:16:05 <cpressey> always repeat yourself always repeat yourself
16:16:17 <ais523> so it can't be added to Functor generally, even though it would be useful
16:16:29 <ais523> meanwhile, I read an actual paper about monads in the mathematical sense
16:16:33 <ais523> and it was surprisingly like Haskell
16:18:06 <cpressey> purity is useful if you want your program to be math
16:19:40 <ais523> well, not always, some mathematical algorithms are described in terms of inherently imperative ideas
16:19:47 <ais523> like the one above, which uses two stacks
16:19:52 <oerjan> <ais523> I think INTERCAL is the only program which has scopes that work like that, and it doesn't use indentation for scoping
16:20:07 <oerjan> i think SML has that local ... in ... thing which might fit
16:20:23 <ais523> (it's a bit ridiculous that I even need an algorithm to find strongly connected components in a directed graph in a compiler...)
16:20:33 <ais523> oerjan: actually, INTERCAL's scoping rules are different
16:20:35 <oerjan> or wait is that backwards
16:21:01 <ais523> the rule with INTERCAL, is that the scopes of different variables don't have to nest well, or indeed have any relation to each other
16:21:48 <oerjan> oh you mean with STASH etc.?
16:22:11 <oerjan> although that's not lexical
16:23:01 <cpressey> "inherently imperative"? I dunno about that concept...
16:23:10 <ais523> nope, it's technically a form of dynamic scoping
16:24:07 <oerjan> and barely that, since you don't have to leave the scope in a consistent place even for a single variable iirc
16:24:33 <oerjan> but it can be used that way
16:26:37 <ais523> well, it doesn't enforce well-nesting
16:26:46 <ais523> but I don't see why that's intrinsically necessary for dynamic scoping
16:29:28 <cpressey> I'd like to see a filesystem where entire subtrees could be made read-only atomically
16:29:45 <cpressey> It would help me feel better about "sudo make install"
16:30:46 <cpressey> Eh, even then, there's usually a collection of files spread out across the system, like the binary in bin, and conf files in etc
16:30:55 -!- monqy has joined.
16:31:01 <ais523> you could use fakeroot or something
16:31:38 <oerjan> cpressey: hm downright might be a good language for your java suite
16:32:05 <cpressey> I usually install stuff into my home dir, but there's always these silly projects that expect their dependencies in a 'systemwide' place
16:32:43 <ais523> I normally install stuff in a dir parallel to the build
16:32:44 <cpressey> oerjan: link? also, it's too late: it's already in java :)
16:33:04 <cpressey> well, the next step is to release the source
16:33:11 <cpressey> let people tear it apart cruelly
16:33:20 <oerjan> cpressey: um downright is ais523's latest 2d-and-some esolang
16:33:24 <ais523> cpressey: http://esolangs.org/wiki/DownRight
16:33:33 <ais523> I think oerjan was suggesting implementing DownRight in the suite, not the suite in DownRight
16:33:48 <cpressey> i thought this was some new "JVM language" that yoob could be reimplemented in. gotcha
16:34:07 <ais523> I've never written a JVM-based language
16:37:48 <cpressey> yeah, "matrix of strings" is a little bit of a stretch for yoob's UI, but since they don't change, that makes it easier
16:42:45 <oerjan> <Vorpal> oklofok, even large birds?
16:43:06 <oerjan> your discussion has a disturbing lack of vultures
16:47:26 <Vorpal> oerjan, but they are cute!
16:53:23 <cpressey> epsoderrick puggammin laggages
16:54:50 <cpressey> on the other hand sometimes Data.Map is just what I need because I am teh lazy
16:55:05 <oerjan> but Data.Map is not lazy!
16:55:09 <oerjan> it's strict in the spine
16:55:57 <cpressey> *because I am teh GOLDBRICKERS
17:00:54 <cpressey> "Haskell, a malingering functional language"
17:02:47 <cpressey> (re maps: although, I do tend to write recursive functions which consume a list, over using folds, too.)
17:03:16 -!- Gregor has set topic: Conquest, War, Famine, Death and Herring Pasta | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
17:03:29 <cpressey> it's... i don't care about efficiency. i care about a certain kind of readabilty.
17:03:34 <oerjan> that's a very disturbing pasta
17:03:51 <Gregor> Well, it is a sign of the apocalypse.
17:03:52 <cpressey> using map, foldlrlr and such detract from the readability, because you have to know what all those li'l bastards do
17:05:10 <fizzie> Which is ironistical, since they're supposed to in fact add to the readability, precisely because you then immediately know what they actually do.
17:06:30 <oerjan> cpressey: what do you want?
17:06:47 <oerjan> we already established there is no function by that name
17:07:29 <oerjan> and that nub was what was originally intended by it
17:07:57 <cpressey> i... do I really have to explain my choreography?
17:37:53 <cpressey> War, Famine, Pasta-lence and Death
18:16:11 -!- wareya_ has joined.
18:17:42 -!- wareya has quit (Read error: Operation timed out).
18:46:47 <elliott> <oerjan> <ais523> in fact, I even wrote member by hand, but I think mostly because I didn't know what it was called <-- sounds like you really need to learn to use hoogle :D
18:46:47 <elliott> <ais523> oerjan: that only works when online
18:46:48 <elliott> <ais523> I typically don't program when online
18:49:11 <elliott> <cpressey> using map, foldlrlr and such detract from the readability, because you have to know what all those li'l bastards do
18:49:14 <elliott> more readable than recursion.
18:50:24 <cpressey> recursion versus vocabulary, i guess
18:52:13 <elliott> cpressey: recursion is low-level, like goto :)
18:52:22 <oerjan> but to understand vocabulary you just have to understand vocabulary, while to understand recursion you first have to understand recursion
18:53:59 <ais523> atm, I typically work out which of foldl and foldr I need by experiment
18:54:37 <cpressey> "Type system: The type system is formally an enhanced version of the typed lambda calculus plus pattern matching."
18:55:42 <elliott> ais523: if the operation is associative, then you just use foldr if you need to handle infinite lists :P
18:55:58 <elliott> although i guess ocaml forbids you from having those ;D
18:56:01 <ais523> elliott: this is in OCaml
18:58:31 <cpressey> you know, I don't know, because there is no such thing as "*the* typed lambda calculus" from what I see
18:59:06 <cpressey> but I meant "why pretend your type system is anything except another programming language"
19:00:24 <oerjan> there is "the simply typed lambda calculus"
19:00:49 <Gregor> There should be a typed lambda calculus for any adjective.
19:00:57 <elliott> however, the regular lambda calculus is a bad language for a type system
19:01:00 <oerjan> and then a heap of extensions
19:01:31 -!- Sgeo has joined.
19:01:33 <cpressey> oerjan: they probably meant "simply" but left it out
19:01:52 <cpressey> but who knows. i can't clone their git repo off github using their instructions.
19:02:15 <oerjan> they could also mean hindley/damas-milner
19:02:56 <cpressey> no, their instructions are wack
19:04:04 <cpressey> they make you run git submodule commands in order to build it!
19:06:06 <Sgeo> " Also, its not that the execution is meaningful up to the point where undefined behavior happens: the bad effects can actually precede the undefined operation."
19:06:54 <oerjan> if you use undefined behavior, the program may prevent the big bang from happening!
19:07:15 <Gregor> Daaaaaaaaaaaaaaaaaaaaaaaamn
19:07:29 <oerjan> obviously Gregor doesn't like that
19:07:39 <elliott> Sgeo: why is that quote surprising
19:08:33 <Sgeo> How do bad effects precede the undefined operation? Is that just a theoretical idea, or can it actually happen in real implementations?
19:08:45 <elliott> Sgeo: Consider optimisations.
19:09:44 <oerjan> it's a miracle that the universe has survived the invention of C, really
19:16:27 <cpressey> So, I should probably implement an esolang in such a way that it requires both Pure and Felix to be installed, in order to build.
19:17:01 <elliott> build system in felix, testing system in pure
19:17:15 <elliott> make the tests mandatory somehow
19:20:29 <cpressey> so many pathological perversions, so little time.
19:20:32 <elliott> [[For example a C implementation has undefined behavior when:
19:20:32 <elliott> An unmatched ‘ or ” character is encountered on a logical source line during tokenization.]]
19:20:41 <elliott> gotta make that into a feature somehow
19:21:03 <elliott> "you can use ' in names, but only if you don't use character constants on the same line, and as long as you have an odd number of 's"
19:21:17 <cpressey> a C compiler that starts interpreting the file as iag source after that point
19:25:38 <Sgeo> "Use of an uninitialized variable: This is commonly known as source of problems in C programs and there are many tools to catch these: from compiler warnings to static and dynamic analyzers. This improves performance by not requiring that all variables be zero initialized when they come into scope (as Java does). For most scalar variables, this would cause little overhead, but stack arrays and malloc'd memory would incur a memset of the stora
19:25:38 <Sgeo> ge, which could be quite costly, particularly since the storage is usually completely overwritten."
19:26:15 <Sgeo> Another solution: Make the language simply fail to compile if there's an unini... well, C can't be modified that way that easily, I guess
19:26:32 <Sgeo> s/language/file/
19:26:37 <cpressey> -Werror -Wno-uninitialized-somethingth
19:27:26 <Sgeo> Oh. Well, that's a compile-time cost, not a runtime cost, so why not have the standard do that?
19:27:47 <cpressey> well, you can stil get around it
19:28:35 <cpressey> { int a; if (/* ...*/) { a = 0; } printf("%s", a); }
19:29:25 <cpressey> but oh, man, shaving off that instruction to zero out a when it wasn't really necessary
19:29:44 <cpressey> that one instruction TOOK TIME that you'll NEVER HAVE BACK
19:29:50 <elliott> cpressey: http://getsatisfaction.com/mojang/topics/minecraft_is_not_written_in_terse
19:30:34 <elliott> 10:04:10: <fizzie> Vorpal: Well, that was most of the story already, though I also did patch ircii to say "PING? PONG!" whenever the server pinged, so I could choose to do the disconnection immediately after a previous ping.
19:30:41 <elliott> fizzie: You could ping the server instead; that works at least on freenode.
19:31:11 <elliott> OK, so this was in the 90s but STILL.
19:32:01 <ais523> elliott: actually, sending anything at all works on Freenode
19:32:10 <ais523> but I'm not certain that other ircds work like that
19:34:35 -!- pingveno has quit (Ping timeout: 248 seconds).
19:35:51 <ais523> hmm, I was reading this article about undefined behaviour again (it's old, and may have been mentioned here before: http://blog.regehr.org/archives/213)
19:35:58 <ais523> and then noticed the first post was by Michael Norrish
19:36:01 <ais523> that was a little surprising
19:36:34 -!- pingveno has joined.
19:38:16 * pikhq wonders if anyone understands the GCC build system
19:40:09 <pikhq> OH DEAR GOD KILL IT WITH FIRE
19:40:29 * Sgeo decides that pikhq is it...
19:40:39 <pikhq> No, GCC's build system.
19:41:12 * Sgeo wonders what asdf is like
19:41:37 <cpressey> "asdf" refers to something beyond slapping a keyboard in disgust?
19:42:04 <ais523> pikhq: I vaguely understand some of it
19:42:17 <pikhq> It definitely needs replaced.
19:42:20 <Sgeo> http://common-lisp.net/project/asdf/
19:42:23 <ais523> although my only method of tweaking it was to run it halfway through, then run a Perl script over some generated files, then complete it
19:42:38 <ais523> it also gave me a huge catalogue of things to avoid when writing C-INTERCAL's, which solves much the same problem a lot better
19:43:01 <pikhq> Glibc's is perhaps worse.
19:43:04 <cpressey> "It is roughly what Common Lisp hackers use to build software where C hackers would use say GNU Make. "
19:43:42 <pikhq> glibc uses hand-written recursive Make.
19:44:36 <Sgeo> cpressey, is that very quotable for you?
19:44:40 <cpressey> asdfasdfasdfasdfasdfasdfasdfasdf
19:44:42 <elliott> cpressey: that's a terrible analogy
19:44:47 <elliott> it's actually more like a package manager and module system combined
19:45:01 <cpressey> as long as its hackers using it
19:46:42 <Sgeo> I have to wonder about "another". Was there an earlier system in use before asdf took hold, or was there competition like OO systems for Scheme?
19:47:02 <pikhq> Remember: friends don't let friends recursive make.
19:47:24 <cpressey> i have a beautiful esolang here but it doesn't work because two-dimensional space doesn't have the properties i need or something
19:48:13 <cpressey> just need to twist my head more
19:48:47 <oerjan> cpressey's head exploding in 1, 2, ...
19:51:22 * oerjan reverses the clock battery
19:51:39 <oerjan> cpressey's head exploding in 3, 2, ...
19:52:35 <Sgeo> Chicken or Racket?
19:52:41 * Sgeo doesn't know how to decide
19:54:25 <ais523> Sgeo: are you trying to lay an egg or hit a tennis ball?
19:56:02 <oerjan> it's obviously one of his evil schemes
19:56:39 <cpressey> it'd be even eviller if it required both
19:59:22 <oerjan> the original badminton
19:59:55 <Sgeo> It is surprisingly difficult to find an up-to-date comparison of various Schemes
20:00:25 <coppro> Sgeo: gatherer.wizards.com
20:00:43 <Sgeo> (I did see one table, but considering that it had TCO as a column, I can only assume it's older than dirt)
20:01:17 <Sgeo> coppro, took me a minute to remember that Scheme is ... something to do wiith MtG
20:01:31 <Sgeo> Apparently, it's a special card type? For use in certain formats, or what?
20:02:09 <coppro> for use in an official multiplayer variant
20:03:03 <Sgeo> I hope I'm right in assuming I had no school today
20:03:33 <cpressey> I want a new Scheme / One that won't make me sick / One that won't make me crash my cdr / Or make me feel three feet thick
20:04:36 <Sgeo> Where oes the name rplacd come from, anyway?
20:04:48 <Sgeo> At any rate, I think CLers these days just use setf instead
20:05:29 <cpressey> Sgeo: what are you looking for in a Scheme?
20:05:51 <cpressey> I tend to look for one that runs Scheme programs, in which case, just about any of them work
20:06:26 <Sgeo> Can be used to compile, or for long-running programs that can be modified while they're running. Nice FFI
20:06:43 <Sgeo> ajf is not an ffi.
20:07:23 <ajf> or a qwertyuiop
20:08:48 <oerjan> but poiuy_qwert might be, if he were here
20:09:31 <ajf> I want to make a new esoteric language
20:09:48 <ajf> Any ideas from the ideas list that appeal to any of you particularly?
20:09:58 -!- oerjan has quit (Quit: Good night).
20:10:21 <ais523> !c float a=0.0f; printf("%2x%2x%2x%2x", ((char*)a)[0], ((char*)a)[1], ((char*)a)[2], ((char*)a)[3]);
20:10:32 <ais523> !c int main(void) {float a=0.0f; printf("%2x%2x%2x%2x", ((char*)a)[0], ((char*)a)[1], ((char*)a)[2], ((char*)a)[3]);}
20:10:41 <ais523> what have I done wrong there?
20:10:55 <ais523> !c int main(void) {float a=0.0f; printf("%2x%2x%2x%2x", ((char*)&a)[0], ((char*)&a)[1], ((char*)&a)[2], ((char*)&a)[3]);}
20:11:07 <Sgeo> !c int main(void) { printf("Hello world!"); return 0; }
20:11:48 <ajf> we have a C bot here?
20:12:00 <ajf> ooh I should make a devperc bot
20:12:02 <Sgeo> Well, this is distressing
20:12:29 <ais523> I think it just checks if C compiles or not
20:12:38 <ais523> !c int main(void) {float a=0.0f; printf("%2x%2x%2x%2x\n", ((char*)&a)[0], ((char*)&a)[1], ((char*)&a)[2], ((char*)&a)[3]);}
20:12:44 <ais523> nah, I was just describing its apparent behaviour
20:12:48 <ais523> I'm adding a \n because stdio caching
20:13:09 <ais523> but that doesn't seem to help either
20:13:13 <Sgeo> !c int main(void) { printf("Is it legal to leave off the return like that?\n"); return 0; }
20:13:20 <ajf> !c printf("EGOBOT IS A FATTY FATTY FAT FAT");
20:13:22 <EgoBot> EGOBOT IS A FATTY FATTY FAT FAT
20:13:27 <ais523> ah, no int main() stuff?
20:13:28 <cpressey> Sgeo: you have rather uncompromising requirements. I don't know if you'll find a Scheme with all three of those.
20:13:34 <ais523> !c float a=0.0f; printf("%2x%2x%2x%2x\n", ((char*)&a)[0], ((char*)&a)[1], ((char*)&a)[2], ((char*)&a)[3]);
20:13:43 <ais523> ah, so 0.0f /is/ all-bits-zero?
20:13:45 <Sgeo> cpressey, I think both Chicken and Racket fit.
20:13:54 <ajf> !c parse_brainfuck("?");
20:14:09 <ajf> fuck you EgoBot y u no support brainfuck
20:14:18 <ajf> needs more brainfuck
20:14:22 <cpressey> Racket (/MzScheme) apparently has OK FFI, but I didn't know it even had a compiler
20:14:46 <cpressey> Chicken is reputedly a fine compiler, but I don't know anything about its FFI
20:14:49 <Sgeo> cpressey, um, well, at least there's a "Make Executable" option in DrRacket
20:15:20 <cpressey> "Make Executable" doesn't necessarily compile any code -- it can just link an interpreter together with the source
20:15:41 <cpressey> Don't know if that's what Racket does, but for other languages, that's the case
20:16:01 <elliott> <ais523> I think it just checks if C compiles or not
20:16:15 <ajf> !bf >+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-]
20:16:16 <ais523> elliott: I was remarking on the fact that nobody had got anything to happen but compile errors
20:16:19 <ajf> <.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+.
20:16:31 <elliott> <ais523> ah, no int main() stuff?
20:16:34 <elliott> dunno why it isn't working
20:16:50 <ais523> perhaps it's checking for "int main()" literally, and I put (void) in the parens out of correctnes
20:17:13 <Sgeo> !c int main() { printf("Checking ais523's hypothesis\n"); return 0; }
20:17:15 <EgoBot> Checking ais523's hypothesis
20:17:30 <elliott> they are identical in a definition
20:17:37 <elliott> it's in ANSI C /declarations/ that they differ
20:17:41 <Sgeo> !c int main(void) { printf("Checking ais523's hypothesis\n"); return 0; }
20:17:43 <elliott> and () is still perfectly valid, it just means something subtly different
20:17:44 <Sgeo> ^^just in case
20:17:49 <elliott> and can change the calling convention
20:18:28 <Sgeo> !c void main() { printf("Wouldn't it be funny if it allowed this?\n"); }
20:18:47 <ajf> !c printf("\134ACTION hates all of you");
20:18:49 <EgoBot> \ACTION hates all of you
20:19:25 <Sgeo> !c printf("%d", sizeof(void*));
20:19:41 <ais523> cpressey: you need parens around the name of a type
20:19:43 <Sgeo> !c printf("%d", sizeof(int));
20:19:45 <ajf> !c printf("\001ACTION hates all of you");
20:19:47 <EgoBot> .ACTION hates all of you
20:19:47 <elliott> <ais523> cpressey: you need parens around the name of a type
20:19:53 <ajf> !c printf("\1ACTION hates all of you");
20:19:54 <ais523> elliott: inside sizeof, at least
20:19:55 <EgoBot> .ACTION hates all of you
20:20:01 <elliott> oh, is it just "sizeof x" that's valid
20:20:05 <elliott> but it has to be "sizeof (int)"?
20:20:07 <ajf> !c printf("%cACTION hates all of you",1);
20:20:09 <EgoBot> .ACTION hates all of you
20:20:15 <elliott> !c printf("%d", sizeof 0);
20:20:16 <ais523> !c printf("\u0001ACTION hates all of you");
20:20:25 <cpressey> but there are a handful of things in C that are that stupid, so, ok
20:20:29 <ais523> hmm, I wonder what's wrong with my \u there?
20:20:37 <ajf> !c printf("\001ACTION hates all of you\001",1);
20:20:39 <EgoBot> .ACTION hates all of you.
20:20:39 <cpressey> !c int x; printf("%d", sizeof x);
20:20:50 <ajf> egobot y u no allow "\u0001"
20:21:04 <Sgeo> \001 shouldn't be turning into . unless EgoBot's deliberately filtering output, I think
20:21:05 <elliott> stop using that fucking meme
20:21:13 <elliott> it is deliberately filtering it
20:21:18 <elliott> FFS have you been asleep the past forever days
20:21:20 <ajf> !c putchar(1); printf("ACTION hates all of you"); putchar(1);
20:21:21 <EgoBot> .ACTION hates all of you.
20:21:26 <ajf> ffffffffffffffffffffffffffffffffff
20:21:31 <Sgeo> ajf, it won't work
20:21:59 <Sgeo> elliott, I'm not dense!
20:22:08 <ais523> !c int a\u2C22a = 4; printf("%d\n", a\u2C22a);
20:22:16 <ais523> EgoBot: do you not even support C94?
20:22:39 <ais523> (the \u stuff is the Unicode version of trigraphs, really)
20:22:52 <ais523> glagolitic capital letter spidery ha /is/ a letter, right? it even says so in its name
20:23:01 <ajf> !c #include <unistd.h> main() { while(1){ fork(); } }
20:23:40 <ajf> !c #include <unistd.h> main() { while(1){ fork(); printf("Forked!"); } }
20:23:41 <ais523> hmm, I get parse errors from both GCC and clang on the declaration
20:23:41 <cpressey> !c char s??(10??); printf("%s", s);
20:23:46 <ais523> is it only Java where you can do that?
20:23:56 <ajf> !c #include <unistd.h> while(1){ fork(); printf("Forked!"); }
20:24:07 <ajf> C uses 8-bit strings
20:24:23 <ajf> !c fork(); printf("Forked!");
20:24:30 <ais523> a quick Internet search implies it's legal in at least C++
20:24:35 <ajf> !c while(1) { fork(); printf("Forked!"); }
20:24:42 <ais523> but even g++ doesn't like it
20:25:10 <ajf> !c int i; for (i = 0; i < 25; ++i) { fork(); printf("Forked!"); }
20:25:12 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!
20:25:23 <ajf> !c int i; for (i = 0; i < 500; ++i) { fork(); printf("Forked!"); }
20:25:39 <ajf> EgoBot y u no fork
20:25:44 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:25:46 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:25:47 <ais523> test.c:1: error: stray ‘\’ in program
20:25:48 <ais523> test.c:1: error: expected initializer before ‘u2C22a’
20:25:51 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:25:52 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:25:52 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:25:52 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:25:53 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:25:53 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:25:55 <fizzie> ais523: It's in C99, at least; "Universal character names [of the \u hex-quad and \U hex-quad hex-quad variety] may be used in identifiers, character constants and string literals ..."
20:25:55 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:25:57 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:25:58 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:26:00 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:26:00 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:26:02 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:26:03 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:26:05 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:26:05 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:26:07 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:26:08 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:26:10 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:26:10 <ajf> !c int i; for (i = 0; i < 100; ++i) { fork(); printf("Forked!"); }
20:26:12 <fizzie> Could you please stop that?
20:26:12 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:26:14 <ais523> fizzie: yep, I just checked C++96
20:26:23 <ajf> HOW DO I STOP IT?!
20:26:30 <ais523> ajf: it's not really a forkbomb if you have to do it manually
20:26:31 <fizzie> You stop it by stopping saying it.
20:26:38 <ajf> ais523: true
20:26:43 <ais523> anyway, g++ is definitely misparsing that
20:26:58 <ais523> there's no way to parse it as \ followed by u2C22a
20:27:20 <ais523> and Clang is counting the \ as a separate token too
20:27:28 <ais523> do any compilers get that right?
20:28:02 <ajf> !c int i; for (i = 0; i < 100; ++i) { if (fork()==0){while(1){fork();}}else{printf("Forked!");}}
20:28:04 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:28:13 <ajf> awww yeaaah
20:28:46 <ajf> !c int i; for (i = 0; i < 100; ++i) { if (fork()==0){while(1){fork();}}else{printf("Forked!");}}
20:28:48 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:29:06 <ajf> Why hasn't it broke yet? :<
20:29:44 <ais523> even more bizarre: https://www.securecoding.cert.org/confluence/display/seccode/PRE30-C.+Do+not+create+a+universal+character+name+through+concatenation implies that \u0401 works on gcc, but I just tested it and it doesn't
20:29:51 <ais523> ajf: because the processes are getting killed
20:29:57 <ais523> by EgoBot's anti-stupidity sandbox
20:30:13 <cpressey> it detects stupidity and kills it
20:30:31 <Sgeo> Racket's format doesn't have ~{ and ~}?
20:30:40 <ajf> !c int i; for (i = 0; i < 100; ++i) { if (fork()==0){while(1){fork(); print("Don't worry I'm not stupid. Honest. Please :<");}}else{printf("Forked!");}}
20:30:51 <ajf> !c int i; for (i = 0; i < 100; ++i) { if (fork()==0){while(1){fork(); printf("Don't worry I'm not stupid. Honest. Please :<");}}else{printf("Forked!");}}
20:30:53 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:31:02 <ajf> ais523: muahahahaha
20:32:22 <elliott> <ais523> even more bizarre: https://www.securecoding.cert.org/confluence/display/seccode/PRE30-C.+Do+not+create+a+universal+character+name+through+concatenation implies that \u0401 works on gcc, but I just tested it and it doesn't
20:32:23 <ajf> I think I may break the sandbox
20:32:28 <elliott> maybe GNU C lacks it specifically for some reason
20:32:28 <ajf> If I can convince it
20:32:32 <elliott> no, that's weird, GNU C is just extensions
20:32:55 <ajf> !c int i; for (i = 0; i < 100; ++i) { if (fork()==0){while(1){fork(); printf("I AM NOT STUPID. REALLY. YOU CAN BELIEVE ME. I AM SANE. SEE!");}}else{printf("Forked!");}}
20:32:57 <EgoBot> Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Forked!Fo
20:33:19 <elliott> ajf: you're about the twentieth person to try and break the well-tested sandboxing system EgoBot uses
20:33:24 <ajf> !c int i; for (i = 0; i < 100; ++i) { printf("nya"); }
20:33:26 <EgoBot> nyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanyanya
20:33:51 <fizzie> Could you possibly do the noisy stuff in a privmsg?
20:34:08 <Deewiant> !c int i; for (i = 0; i < 10; ++i) { if (fork()==0){while(1){fork(); printf("---");}}else putchar('f');}
20:34:12 <ajf> !c int i; for (i = 0; i < 10; ++i) { printf("nya"); } printf("cat");
20:34:13 <fizzie> (A non-channel privmsg if you want to be pedantic about it.)
20:34:14 <EgoBot> nyanyanyanyanyanyanyanyanyanyacat
20:34:16 <Sgeo> I just tried to make an executable with Racket
20:34:19 <Sgeo> A very trivial thing
20:34:27 <Sgeo> And it's 4.5MB
20:34:38 <Sgeo> And it's only supposed to be able to run on my machine, so
20:35:05 <ajf> !c int i; for (i = 0; i < 10; ++i) { printf("nya"); } printf("ncat");
20:35:07 <EgoBot> nyanyanyanyanyanyanyanyanyanyancat
20:35:19 <Sgeo> http://pastie.org/1894499 this is 4.5MB
20:36:09 <cpressey> i would bet what you have there is a copy of the Racket interpretr with that code just kind of slapped in
20:36:18 <fizzie> ais523: "GCC currently only permits universal character names if -fextended-identifiers is used, because the implementation of universal character names in identifiers is experimental."
20:36:25 <cpressey> if that's good enough for what you want to do, though, go for it
20:36:32 <ajf> !c int i; printf("http://reddit.com/r/"); for (i = 0; i < 7; ++i) { printf("f"); } for (i = 0; i < 12; ++i) { printf("u"); } printf("/");
20:36:33 <EgoBot> http://reddit.com/r/fffffffuuuuuuuuuuuu/
20:36:45 <ais523> ajf: 7 then 12, is it?
20:36:52 <ais523> I know it's defined numbers, I just can never remember what they are
20:37:03 <ajf> ais523: f7u12
20:37:24 <ajf> I find that easy to remember
20:37:28 -!- FireFly has joined.
20:40:12 <Sgeo> And the version for distribution results in a .zip file, which contains a .exe and some .dlls
20:43:03 -!- TeruFSX has quit (Ping timeout: 240 seconds).
20:44:20 <ajf> !c char i; for (i = 0; i < 256; ++i) { putchar(i); }
20:44:48 <ajf> !c int i; for (i = 0; i < 256; ++i) { putchar(i); }
20:45:17 <ajf> !c int i; for (i = '\n'; i < 256; ++i) { putchar(i); }
20:45:25 <ajf> !c int i; for (i = 'A'; i < 256; ++i) { putchar(i); }
20:45:27 <EgoBot> ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
20:46:36 <ajf> !c int i; for (i = ' '; i < 256; ++i) { putchar(i); }
20:46:38 <EgoBot> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
20:47:05 <ajf> !c int i; for (i = ' '; i <= '~'; ++i) { putchar(i); }
20:47:07 <EgoBot> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
20:47:16 <ajf> yay full printable characters
20:47:42 <ajf> !c int i; for (i = ' '; i <= '~'; ++i) { putchar(i % 7); }
20:48:23 <ajf> !c int i; for (i = 0; i <= '~'-' '; ++i) { putchar(i % 7+' '); }
20:48:25 <EgoBot> !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#
20:49:56 <pikhq> ajf: Note: the above is undefined behavior, and the compiler would be entirely correct in killing you and all that you love.
20:50:23 <ajf> what's undefined about that?
20:50:50 <pikhq> Arithmetic on characters.
20:50:57 <ajf> I am aware
20:51:17 <ajf> but I don't care in the slightest
20:51:27 <ajf> !c int i; for (i = 0; i <= '~'-' '; ++i) { putchar(i % '\n'+' '); }
20:51:29 <EgoBot> !"#$%&'() !"#$%&'() !"#$%&'() !"#$%&'() !"#$%&'() !"#$%&'() !"#$%&'() !"#$%&'() !"#$%&'() !"#$
20:51:50 <ajf> !c int i; for (i = 0; i <= '~'-' '; ++i) { putchar(i % 17+' '); }
20:51:52 <EgoBot> !"#$%&'()*+,-./0 !"#$%&'()*+,-./0 !"#$%&'()*+,-./0 !"#$%&'()*+,-./0 !"#$%&'()*+,-./0 !"#$%&'()
20:52:00 <elliott> I thought it just had unspecified results
20:52:08 <ajf> afaik, you are right
20:52:12 <pikhq> Oh, right, it's not actually UB.
20:52:13 <ajf> and digits are unspecified too
20:52:46 <ajf> luckily, IBM's horribe EBCDIC also has '0' to '9' contiguous
20:52:52 <ajf> but yes it is not portable code
20:53:03 <ajf> portable across machines, but not charsets
20:53:28 <pikhq> But who uses charsets without an ASCII subset these days, anyways?
20:53:41 <ajf> no sane person
20:53:45 <ajf> except IBM
20:53:49 <ajf> wait they aren't sane
20:53:53 <ajf> my statement holds true
20:54:21 <pikhq> Unless backwards compatibility is needed, they're using UTF-16.
20:54:27 <pikhq> Even on mainframes.
20:54:47 <ajf> UTF something
20:54:57 <ajf> may be 32 or 8 in some cases
20:55:18 <pikhq> And they never really use UTF-EBCDIC. Go figure.
20:55:27 <ajf> they use SHIFT-JIS
20:55:50 <pikhq> Shift-JIS is outmoded in Japan, anyways.
20:55:59 <ajf> still widely usd
20:56:14 <pikhq> *Not to mention* it was designed specifically to have an ASCII subset.
20:56:17 <ajf> Why? Han unification
20:56:26 <pikhq> (actually, a JIS X 0201 subset)
20:56:42 <pikhq> (which itself has an ASCII subset)
20:57:12 <pikhq> ajf: There are no current OSes that use Shift-JIS.
20:57:58 <ajf> Correct, but many web pages are encoded in it
20:58:09 <ajf> And legacy applications
20:58:12 <ajf> 日本はShiftJISをする
20:58:24 <pikhq> Which leaves it as a *legacy charset*.
20:58:36 <ajf> However some CHOOSE to use it.
20:58:42 <ajf> Han Unification
20:58:50 <pikhq> That's a piss-poor reason.
20:59:13 <cpressey> Felix... can't seem to... read from stdin.
20:59:51 <pikhq> Especially considering that Shift-JIS refers to a JIS encoding standard which defines its characters in terms of Unicode codepoints, meaning that Shift-JIS also has Han unification.
21:00:17 <cpressey> ok, NOW it can. what did i change?
21:00:56 <cpressey> if you never use the variable in which you stored the input, it gets OPTOMIZED AWAY
21:03:55 <pikhq> ajf: Oh, yeah, and there's the nice property that Shift-JIS is a motherfucking *terrible* character encoding.
21:04:38 <ajf> JIS defines its chars in terms of Unicode codepoints?
21:04:47 <ajf> Sound's like china's charset
21:04:48 <pikhq> It didn't originally, but it does now.
21:04:56 <ajf> Really just a Unicode transformation
21:05:06 <pikhq> The JIS charsets are *defined as* subsets of Unicode.
21:05:28 <ajf> I'd argue it works in reverse
21:05:39 <ajf> Unicode was based on other charsets
21:06:46 <pikhq> Defined such that converting into Unicode has an inverse, for any used charset.
21:07:09 <ajf> most of that inverse is "untranslatable" though
21:07:47 <pikhq> The idea is that if you convert a string into Unicode, you can then convert that exact string back *from* Unicode.
21:08:27 <pikhq> Obviously, converting arbitrary strings from Unicode and then back is not really feasible.
21:08:59 <pikhq> Unless you want Unicode to be a subset of ASCII, that is. :P
21:10:10 <ajf> Hmm, maybe I should make a version of whitespace that uses all unicode spacing chars
21:10:19 * pikhq continues to wonder why JIS X 0208 stuck ¥ in the space where \ usually goes
21:10:45 <elliott> so that windows users could enjoy really fun paths
21:11:16 <ajf> space restrictions I'd guess
21:11:21 <cpressey> ajf: such a language already exissts I believe
21:11:40 <cpressey> ajf: http://esolangs.org/wiki/Unispace
21:11:45 <pikhq> ajf: No, there's actually a lot of unusued space.
21:11:56 <pikhq> Well, "a lot" in the context of an 8 bit encoding.
21:12:11 <cpressey> ok, it's not exclusively unicode, it still has ascii space and newline in it
21:12:50 <ajf> not what I meant
21:12:59 <ajf> I meant utilize all spacing characters in unicode
21:13:03 <ajf> including the ascii ones
21:13:07 <ajf> that does what I want
21:15:56 <cpressey> Well, today I implemented Deadfish in Pure and Felix, and it made me want to do extremely nasty things to all programming language designers and maintainers the world over.
21:18:02 <elliott> C++ templates are the best language
21:18:14 <elliott> cpressey: What's wrong with Pure though?
21:18:17 <elliott> My experience with it was pleasant.
21:18:34 <elliott> That seems a little... redundant.
21:19:07 <elliott> Versus (printf ">>> ") that is.
21:19:11 <cpressey> Not as much as is wrong with Felix, that's for sure
21:19:18 <elliott> main a = (printf "%s " ">>>") $$ (main (fish (limit a) (gets)));
21:19:33 <elliott> main a = printf ">>> " $$ main (fish (limit a) gets)
21:19:40 <elliott> Oh, I'm just talking about readability
21:19:43 <elliott> The excessive parents are kind of ugly.
21:19:49 <cpressey> printf with one argument seems to not exist
21:19:56 <elliott> Maybe there's puts or similar
21:19:58 <elliott> limit a = if a == 256 || a < 0 then 0 else a;
21:20:01 <elliott> Hmm, I think Pure has guards too
21:20:03 <elliott> Not so sure about that, though
21:20:18 <elliott> fish a "o" = a when puts (str a) end; <-- More nitpicking, but isn't "when" used for guards??
21:20:26 <elliott> Seems weird to use it for incidental effects but I dunno
21:20:27 <cpressey> oh, probably. feel free to further, uh, Pure-ify it :)
21:20:36 <elliott> I'll play around with it though
21:20:42 <elliott> I sure hope Pure has a binary
21:20:49 <cpressey> the manual said 'when' could be used like that :)
21:21:03 <elliott> Oh, then it's probably idyomatticke.
21:21:09 <elliott> Great, only Windows binaries.
21:21:29 <cpressey> it didn't *encourage* that use, but... yes.
21:23:04 <cpressey> I guess the main thing about both of them (but especially Felix) is that input and output (especially input) are an afterthought. Hey, let's just wrap the C API. And let's not really document it. Who would want to read input from a user, anyway?
21:24:58 -!- Sgeo has quit (Ping timeout: 246 seconds).
21:25:02 <cpressey> meanwhile i'm designing esolangs in which I can't figure out how to accomplish useful recursion :/
21:25:46 <elliott> try doing input in C++ templates
21:25:53 <elliott> #define PROGRAM i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,o,s,i,o,i,i,i,i,i,i,i,s,s,s,o
21:26:51 -!- Sgeo has joined.
21:28:41 <cpressey> yeah the designers of the C++ template really should have done a better job considering input
21:30:29 <pikhq> s/done a better job considering input/been shot/
21:34:58 <elliott> ais523: you forgot to add downright to the language list btw
21:35:16 <cpressey> uses require import using include!
21:35:26 <ais523> I'll do it myself if nobody else does first
21:35:49 <elliott> oh dear, we do not have a mathematica Deadfish
21:36:02 <elliott> hmm, I'm assuming mathematica even has standard input
21:36:13 <elliott> although arguably it should just look like Deadfish[{i,i,i,s,o}]
21:36:33 <cpressey> http://reference.wolfram.com/mathematica/ref/Input.html
21:37:13 <elliott> "interactively reads in one Mathematica expression."
21:37:23 <elliott> InputString is more like it
21:37:30 <elliott> InputString[">>> "] or similar
21:38:08 <ajf> pikhq: I added that quote to bash.org
21:38:27 <ajf> 21:29 < cpressey> yeah the designers of the C++ template really should have done a better job considering input
21:38:30 <ajf> 21:29 < cpressey> *template system
21:38:31 <elliott> and who is so delusional to think that bash ever accepts new quotes any more? :)
21:38:33 <ajf> 21:31 < pikhq> s/done a better job considering input/been shot/
21:38:37 <elliott> ajf: we have our own quote database...
21:38:43 <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something
21:38:59 <ajf> add it to that too
21:39:36 <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something
21:39:53 <elliott> `addquote <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one
21:39:54 <HackEgo> 407) <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one
21:40:16 <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something \ 407) <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one
21:40:27 <monqy> thankfully only two
21:40:51 <elliott> there's no way that would fit on one line so i'm not even going to try and add it
21:40:52 <monqy> or however it works
21:40:56 <elliott> `addquote <monqy> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something \ 407) <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one <monqy> thankfully only two
21:40:58 <HackEgo> 408) <monqy> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something \ 407) <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one <monqy> thankfully only two
21:41:08 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:41:14 <HackEgo> 190) <fizzie> It's like mathematicians, where the next step up from "trivial" is "open research question". <fizzie> "Nope... No...This problem can't be done AT ALL. This one--maybe, but only with two yaks and a sherpa. ..."
21:41:15 <HackEgo> 135) <alise> like, just like I'd mark "Bob knob hobs deathly poop violation EXCREMENT unto;" as English <ais523> alise: that's great filler <alise> ais523: well it contains all the important words in the english language...
21:41:16 <HackEgo> 278) <elliott> mtve, now he's an expert idler. <nddrylliog> mtve: kitty kitty kitty
21:41:21 <ajf> `addquote <cpressy> yeah the designers of the C++ template system really should have done a better job considering input <pikhq> s/done a better job considering input/been shot/
21:41:22 <HackEgo> 409) <cpressy> yeah the designers of the C++ template system really should have done a better job considering input <pikhq> s/done a better job considering input/been shot/
21:41:33 <elliott> `delquote <cpressy> yeah the designers of the C++ template system really should have done a better job considering input <pikhq> s/done a better job considering input/been shot/
21:41:47 <elliott> `addquote <cpressy> yeah the designers of the C++ template system really should have done a better job considering input <pikhq> s/done a better job considering input/been shot/
21:41:49 <HackEgo> 410) <cpressy> yeah the designers of the C++ template system really should have done a better job considering input <pikhq> s/done a better job considering input/been shot/
21:42:06 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/delquote
21:42:27 <elliott> Gregor: your fake character breaks url detection here
21:42:32 <elliott> and it even copies with it, so it wouldn't load in my browser
21:43:11 <HackEgo> /tmp/hackenv.24269/bin/delquote: line 3: 409: syntax error: operand expected (error token is "409")
21:44:03 <elliott> `run sed -i 's/[ "$((id+0))" = "$id" ]/expr "$1" + 0 >/dev/null 2>&1/' bin/delquote
21:44:19 <elliott> `run sed -i 's/\[ "$((id+0))" = "$id" \]/expr "$1" + 0 >/dev/null 2>&1/' bin/delquote
21:44:30 <elliott> now why isn't this working
21:45:03 <elliott> `run sed -i 's/[ "\$((id+0))" = "\$id" ]/expr "$1" + 0 >/dev/null 2>&1/' bin/delquote
21:45:15 <elliott> `run sed -i 's|[ "\$((id+0))" = "\$id" ]|expr "$1" + 0 >/dev/null 2>&1|' bin/delquote
21:45:32 <elliott> #!/bexpr "$1" + 0 >/dev/null 2>i1n/sh
21:45:32 <elliott> expr "$1" + 0 >/dev/null 2>i1d=$1
21:45:32 <elliott> [expr "$1" + 0 >/dev/null 2> 1"$((id+0))" = "$id" ] || exit 1
21:45:32 <elliott> heaexpr "$1" + 0 >/dev/null 2>d1 -n $((id-1)) quotes >quotes.new
21:45:32 <elliott> taexpr "$1" + 0 >/dev/null 2>i1l -n +$((id+1)) quotes >>quotes.new
21:45:32 <elliott> expr "$1" + 0 >/dev/null 2>d1iff quotes quotes.new >/dev/null && exit 1
21:45:34 <elliott> mvexpr "$1" + 0 >/dev/null 2> 1quotes.new quotes
21:45:36 <elliott> echoexpr "$1" + 0 >/dev/null 2> 1'*poof*'
21:45:44 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
21:46:07 <elliott> `run sed -i 's|\[ "\$((id+0))" = "\$id" \]|expr "$1" + 0 >/dev/null 2>&1|' bin/delquote
21:46:15 <elliott> expr "$1" + 0 >/dev/null 2>[ "$((id+0))" = "$id" ]1 || exit 1
21:46:24 <elliott> `run sed -i 's|\[ "\$((id+0))" = "\$id" \]|expr "$1" + 0 >/dev/null 2>\&1|' bin/delquote
21:46:33 <elliott> `run sed -i 's|\[ "\$((id+0))" = "\$id" \]|expr "$1" + 0 >/dev/null 2>\&1|' bin/delquote
21:46:47 <elliott> seiojgnkoiredk nioekjoighfd
21:47:49 <cpressey> Notorious Norwegian bank robber Seiojgnkoiredk Nioekjoighfd, 49, was convicted today of...
21:48:32 <HackEgo> 409) <cpressy> yeah the designers of the C++ template system really should have done a better job considering input <pikhq> s/done a better job considering input/been shot/
21:49:35 <elliott> `run sh -c 'id=9; echo $((id+9))'
21:50:16 <monqy> today I learned 9+9 is 18
21:52:57 -!- ajf has changed nick to ajf|offline.
21:55:36 <cpressey> I need a third dimension in which I can express formal and actual parameters or NO [USEFUL] RECURSION FOR ME.
21:56:07 <cpressey> or maybe i just need SPECIAL ARROWS
21:56:40 <elliott> does... does Eightebed distinguish = in an expression and a statement?
21:57:39 <cpressey> a = 1; <-- assignment. if (a = 3) <-- equality
21:57:49 <elliott> yeah but can you do "a = (b = c)" in BASIC?
21:58:23 <elliott> btw, I think you could use the least significant bit of the pointer as the valid flag, since all pointers are even on every OS ever
21:58:29 <elliott> maybe you already do, dunno
22:01:52 <cpressey> I don't think so, because of bounded memory, but aside from that, it should be.
22:02:06 <cpressey> actually, there is no bound on pointer size, so maybe it is
22:02:09 <elliott> I don't see anything mandating finite pointers, yeah
22:02:15 <elliott> I think you could avoid the mark phase.
22:02:55 <elliott> Keep a table; pointers are indices into this table. The table entries consist of the pointer, the valid flag, and finally, a list of (plain regular non-Eightebed) pointers to places where this pointer is referenced on the heap.
22:03:07 <elliott> Then all you need to do is append to that list whenever you assign a variable to a pointer.
22:03:18 <elliott> Then "free" is just O(n) in the number of aliases.
22:03:27 <elliott> Which looks even less like a garbage collector.
22:04:03 <cpressey> I think I remember thinking of something like that and rejecting it.
22:04:20 <elliott> Because it wouldn't work or because it's lame? :)
22:04:31 <elliott> actually, wait, you do not even need the list of aliases
22:04:33 <cpressey> I think the question was, how would you manage the table?
22:04:35 -!- aloril has quit (Ping timeout: 250 seconds).
22:04:36 <elliott> since the valid bit is in the table
22:04:49 <elliott> cpressey: Same way any allocator works.
22:05:18 <cpressey> Well, feel free to implement it and see
22:05:30 <cpressey> I'm done with Eightebed unless there's another hole
22:05:59 <elliott> I think you could actually just store the data inline with the table, come to think of it.
22:06:05 <elliott> So this is literally like writing your own memory allocator.
22:07:39 <elliott> If you have a flat memory space, then just store the valid bit before every block of memory.
22:07:46 <elliott> Then when dereferencing, just add one to the pointer.
22:07:54 <elliott> Or even, have the bit one /before/ the data, and checking validity is just
22:07:59 <elliott> if ([asterisk](ptr-[one]))
22:08:04 <cpressey> When do you know you can re-use the memory?
22:08:59 -!- pikhq_ has joined.
22:09:14 <elliott> cpressey: that is problematic :)
22:09:21 <elliott> similarly, in the table solution, you could never reuse table entries
22:09:30 <elliott> ok so here's the revised table solution
22:09:35 <elliott> the table just keeps the real pointer and all the aliases
22:09:41 <elliott> but the indexes into the table keep the valid bit
22:09:47 <elliott> then free is again O(n) on number of aliases
22:09:55 <elliott> and you can reuse table entries as soon as freeing, because it's never used again
22:09:58 <elliott> because the valid bits go off
22:10:22 <cpressey> multiple indexes into same table cell?
22:10:31 <cpressey> each index has its own valid bit?
22:11:00 <cpressey> how do i know some other index doesn't think this table cell is still valid
22:11:11 <elliott> table = map from int -> {pointer, list of aliases}
22:11:28 <elliott> detagged := detag(index) // detags the valid bit
22:11:35 -!- pikhq has quit (Ping timeout: 240 seconds).
22:11:37 <elliott> for alias in table[detagged].aliases {
22:11:52 <elliott> tag-as-invalid deref(alias)
22:11:58 <elliott> add detagged to table-free-list
22:12:15 <elliott> cpressey: some other index?
22:12:19 <elliott> the table stores all aliases to this index
22:12:28 <elliott> whenever you assign an index to a variable, you go add it to the alias list in the table
22:12:56 <cpressey> and if you store that index in a structure?
22:13:25 <cpressey> basically it seems as if you are marking as you go
22:13:44 <elliott> then that point of the structure gets added to the alias list
22:14:34 <cpressey> your free is O(n) because you're caching the references in the list
22:14:56 <elliott> but it's better than a whole heap traversal
22:15:37 <cpressey> ok, well, if optimizing a loophole response to an offhand claim is your cup of tea, go for it
22:15:52 <cpressey> the idea for me was for it to be done at all
22:15:59 <elliott> i'm just saying that it sounds like less of a loophole :)
22:16:06 <elliott> it's more like refcounting this way
22:16:23 <cpressey> refcounting still sounds like GC to me
22:16:24 -!- aloril has joined.
22:17:09 <elliott> yes but istr part of gregor's complaint being that it's a colossally slow free() like this
22:17:26 <elliott> whereas O(n) in aliases is pretty okay
22:17:42 <cpressey> well, it's "well known" that refcounting is "faster than" mark-and-sweep
22:17:59 <elliott> yes but it's not obvious that refcounting applies to eightebed :)
22:18:06 <elliott> especially since its a list rather than a number here
22:18:57 <cpressey> i'm working on something else and this doesn't really interest me, is all
22:20:02 <cpressey> though I'm still far from convinced that storing a pointer into allocated memory in these lists is safe, as well
22:20:20 <elliott> well it could store (table index, offset) instead :)
22:20:24 <cpressey> what about when that chunk is no longer valid? how did you get rid of that reference from all lists it might have been in?
22:20:41 <elliott> you wouldn't have to, I think
22:20:49 <elliott> if you store (table index, offset)
22:20:55 <elliott> then you could add it to the alias list etc
22:21:02 <elliott> so i guess it's not quite O(n) heh
22:24:11 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
22:27:19 <elliott> 00:23:42: <oklopol> oerjan: i'll read your papers when i've gathered some additional ownage.
22:27:20 <elliott> 00:23:52: <oklopol> i mean, those crazy mathematical papers of yours
22:27:21 <elliott> 00:27:07: <oklopol> oerjan: in fact, i'll promise to read them 2012, if we both are still around.
22:27:24 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
22:28:02 <cpressey> can i see your papers please, citizen oerjan
22:30:23 <cpressey> anyway, I'm happy. I think I figured out how to do recursion in my new language
22:30:44 <elliott> 01:13:42: <olsner> sex and shit, definitely already done... puppies and sex, sure... puppies and shit, obviously... I guess you do have to go all three to find a new genre
22:30:45 <elliott> 01:14:09: <oklofok> hmm, i actually haven't seen anything with all three
22:30:52 <elliott> cpressey: those are pretty cool
22:34:57 -!- FireFly has quit (Quit: swatted to death).
22:35:47 -!- augur has quit (Remote host closed the connection).
22:37:38 <cpressey> the thing oerjan said about counting down for my head to explode which i can;t find in my scrollback
22:37:50 -!- cpressey has quit (Quit: leaving).
22:38:39 <elliott> that cpressey guy sure is weird
22:40:02 -!- Slereah has quit (*.net *.split).
22:40:02 -!- HackEgo has quit (*.net *.split).
22:40:03 -!- Gregor has quit (*.net *.split).
22:43:26 -!- Slereah has joined.
22:43:26 -!- HackEgo has joined.
22:43:26 -!- Gregor has joined.
22:49:07 -!- augur has joined.
23:11:56 -!- augur has quit (Remote host closed the connection).
23:26:58 <Gregor> From your side, that was a minor netsplit.
23:27:03 <Gregor> From my side, that was ULTIMATE NETSPLIT.
23:27:19 <elliott> Your MOM is the ultimate netsplit.
23:27:35 <elliott> Wow, why does Pure have macros.
23:27:39 <elliott> It's already a term rewriting language.
23:27:44 <elliott> "The difference between macros and functions is that macros are not compiled but expanded at compile time, and the resulting code is then compiled. (This is the usual reason to introduce macros.) In this way, macros can be used for adding optimization to the code as well as for avoiding repetitive code."
23:27:54 <elliott> Oh come on, surely you can do inlining.
23:31:48 <elliott> "As the author of PURE says, "if you really need Haskell, you know where to find it.""
23:33:35 <elliott> "(In the Haskell language, special techniques are used in this case to trick the compiler into thinking that several calls to gets need to be compiled in a certain order.)"
23:33:45 <elliott> I guess the creator of Pure didn't write this because damn it's stupid.
23:34:33 <Sgeo> Maybe e's referring to the IO monad?
23:35:05 <elliott> It does not apply to the IO monad.
23:35:12 <elliott> Wow holy shit Pure's gets is ugly.
23:53:26 <monqy> is pure a good language
23:55:42 -!- ais523 has quit (Read error: Connection reset by peer).
23:56:49 <monqy> I tried to look at their example code but their whatever is configured improperly and I downloaded them instead
23:56:55 <monqy> so I'm not bothering
23:57:52 <elliott> monqy: The IO support seems lame, but the actual language is interesting.
23:58:06 <Sgeo> Continuations may be just what Active Worlds bots need
23:58:17 <Sgeo> I can't believe I didn't see it earlier
23:58:19 <elliott> monqy: It's essentially pure term-rewriting, but compiled and efficient.
23:59:25 <monqy> active worlds? is that one of your virtual reality obsessions? you're the guy who has those right?
00:00:12 <monqy> active worlds: yes
00:00:34 <monqy> what are active worlds bots and why do they need continuations
00:01:37 <monqy> mmm the pure wikipedia page
00:01:38 <monqy> Calling C functions from Pure is very easy. E.g., the following imports the puts function from the C library and uses it to print the string "Hello, world!" on the terminal:
00:01:41 <monqy> extern int puts(char*);
00:01:44 <monqy> hello = puts "Hello, world!";
00:02:05 <Sgeo> monqy, a bot in AW is a program that connects to the AW universe
00:02:16 <Sgeo> Continuations should make all sorts of things about making bots easier
00:02:29 <Sgeo> My current/dormant C# project could really have used them
00:02:31 <monqy> yeah but what do the bots do
00:02:42 <Sgeo> monqy, whatever the programmer of the bot wants them to do
00:02:50 <Sgeo> They can run worlds, so that the world is a game
00:03:03 <monqy> is active worlds the one with the hilarious 3d models
00:03:08 <monqy> or is it just ugly
00:03:31 <monqy> I must have been thinking of something else
00:03:42 <monqy> how many of these virtual reality things do you do
00:03:44 <monqy> it has to be one of them
00:03:52 <monqy> I remember there was another that was hilariously outdated
00:05:01 <elliott> all of them are hideously outdated
00:05:03 <Sgeo> Active Worlds, Cybertown, occasional visitor of There (deceased), Worlds, Metaplace, occasional visitor of Utherverse (I visited once or twice, not for perverse reasons, really), visited IMVU once or twice and hated it, Second Life,
00:05:05 <elliott> like, apart from second life
00:05:08 <elliott> which is inexplicably popular
00:05:24 <Sgeo> I visited Lively once or twice (deceased)
00:05:41 <monqy> cybertown is the hilariously outdated one
00:05:42 <Sgeo> There's one beginning with a k...
00:05:44 <elliott> why would you make sgeo talk about this
00:05:52 <monqy> I am a horrible person
00:06:04 <elliott> but lol this utherverse thing is like a virtual reality porn game??
00:06:25 <Sgeo> I was more of a pervert in Metaplace than Utherverse
00:07:21 <Sgeo> I invented Metaplace sex >.>
00:08:08 <elliott> am i really reading these things
00:08:13 <monqy> A social network for adults only. Meet real people and explore our online virtual world. All for FREE!
00:08:13 <elliott> `addquote <Sgeo> I was more of a pervert in Metaplace than Utherverse <Sgeo> I invented Metaplace sex >.>
00:08:14 <HackEgo> 411) <Sgeo> I was more of a pervert in Metaplace than Utherverse <Sgeo> I invented Metaplace sex >.>
00:08:22 <elliott> sgeo you're like eight years old jesus christ
00:08:26 <elliott> this just isnt appropriate
00:08:41 <monqy> do 8 years olds invent metaplace sex
00:09:24 <monqy> http://www.utherverse.com/Sites/Utherverse/images/animeAvatarsOver.jpg
00:12:06 <Sgeo> I only visited once or twice
00:12:15 <Sgeo> Just to see yet another virtual world
00:12:53 <monqy> I don't want to think about what I would be like if I obsessed over virtual worlds
00:12:54 <elliott> how does metaplace sex work
00:13:06 <monqy> or invented metaplace sex
00:13:36 <monqy> "proud not to have invented metaplace sex" monqy motto
00:13:51 <Sgeo> All it is is just a "fainting" animation repeatedly :/. It looks more like fish flopping around than anything that I'd imagine sex would look like, really
00:15:35 <elliott> sgeo do you actually know what sex looks like i am just checking here
00:16:06 <monqy> after all he invented it in metaplace
00:16:48 <elliott> `addquote <elliott> sgeo do you actually know what sex looks like i am just checking here <Sgeo> I think so
00:16:50 <HackEgo> 412) <elliott> sgeo do you actually know what sex looks like i am just checking here <Sgeo> I think so
00:17:54 -!- Ycros has quit (Quit: No Ping reply in 180 seconds.).
00:18:03 <monqy> is "I think so" the best possible answer to that question
00:18:45 -!- augur has joined.
00:18:57 <Sgeo> "I'll find out in person in a bit"
00:20:06 -!- lambdabot has quit (Read error: Operation timed out).
00:20:15 <Sgeo> Suppose you have (define (get-cc) (call/cc (lambda (cc) cc)))
00:20:23 <Sgeo> Can call/cc be implemented in terms of get-cc?
00:21:45 <Sgeo> (define (my-call/cc func) (func (get-cc))) ?
00:21:51 <Sgeo> Or is there an oddity there?
00:24:36 <elliott> Think about what the continuation is there.
00:25:13 <Sgeo> It's right before func is called... so if func calls it, func will be called again?
00:25:56 -!- Ycros has joined.
00:30:54 -!- EgoBot has quit (Ping timeout: 260 seconds).
00:31:06 -!- EgoBot has joined.
00:48:37 -!- poiuy_qwert has joined.
00:56:04 <Sgeo> I just realized the symmatry between continuations and the functions passed into call/cc
00:56:07 <Sgeo> Is that deliberate?
00:56:15 <Sgeo> Yes, I know I can't spel
00:57:00 <Sgeo> The continuation provided by call/cc is a function that takes one argument. The function that accepts the continuation accepts one argument
00:57:12 -!- augur has quit (Remote host closed the connection).
00:57:45 <elliott> What makes you think continuations take one argument?
00:59:51 <Sgeo> http://c2.com/cgi/wiki?CallWithCurrentContinuation
01:00:23 <elliott> <elliott> What makes you think continuations take one argument?
01:01:25 <Sgeo> That's how they're used on that page and elsewhere
01:01:30 <elliott> For instance, please explain: (call-with-values (lambda () (values 1 2)) (lambda v v)).
01:01:52 <Sgeo> I don't know what call-with-values is >.>
01:02:07 <Sgeo> But can continuations take 0 or several arguments?
01:02:29 <elliott> (call-with-values f k) calls f with k as f's continuation.
01:02:39 <elliott> Calls f with no arguments, that is.
01:02:54 <elliott> For instance, (call-with-values (lambda () (+ 9 9)) (lambda (x) (display x) (newline))) prints the number eighteen and a newline.
01:03:28 <elliott> (call-with-values (lambda () (values 'a 'b)) cons) => (a . b)
01:04:22 <elliott> (call-with-values (lambda () (call/cc (lambda (k) (k 'a 'b)))) cons)
01:04:25 -!- poiuy_qwert has quit (Read error: Operation timed out).
01:05:04 -!- augur has joined.
01:05:05 * Sgeo decides that Racket's escape continuations are both confusing and a premature optimization
01:05:06 -!- poiuy_qwert has joined.
01:05:27 <elliott> Sgeo: please observe my above lines.
01:05:40 <elliott> Escape continuations -- as in shift/reduce?
01:05:46 <elliott> They aren't an optimisation, they have different semantics.
01:06:03 -!- augur has quit (Remote host closed the connection).
01:06:09 <elliott> They're a continuation, except you can only go down the stack, and probably only once.
01:06:16 <elliott> They're identical to try/except/throw.
01:06:26 <elliott> Also I don't mean shift/reduce.
01:08:06 * Sgeo tries to wrap his mind around dynamic-wind. I mean, it sounds simple enough, but I may have an utterly mistaken idea
01:10:19 <elliott> DYNAMIC-WIND itself is quite simple, but its interactions with CALL-WITH-CURRENT-CONTINUATION are subtle.
01:10:44 <elliott> Remember that the blocks execute /every/ time the thunk is left, including multiple times thanks to CALL-WITH-CURRENT-CONTINUATION.
01:11:11 <elliott> Can dynamic-wind be implemented in Scheme?
01:11:12 <elliott> The procedures call-with-current-continuation and dynamic-wind engage in quite subtle interaction with each other. Many Schemes implement both in Scheme on top of a primitive, non-"wind-safe" call-with-current-continuation. This is a particularly common implementation strategy because previous versions of the Scheme standard did not include dynamic-wind and wind-safe call-with-current-continuation. Not
01:11:12 <elliott> e that implementations following this strategy must ensure that the original call-with-current-continuation is no longer reachable from application code since that could compromise the wind-safety of the entire application.
01:11:14 <elliott> -- http://community.schemewiki.org/?scheme-faq-misc
01:14:18 <elliott> Sgeo: http://www.cs.hmc.edu/~fleck/envision/scheme48/meeting/node7.html
01:14:28 <elliott> A (badly-formatted) dynamic-wind in Scheme.
01:14:50 * Sgeo still wants to read about how events work in Racket
01:15:32 <elliott> Oh and yes you can make a continuation which takes no arguments.
01:17:22 <elliott> > (call-with-values (lambda () (call-with-current-continuation (lambda (k) (k)))) (lambda () 42))
01:17:32 <elliott> (Thunk passed is the same as (lambda () (values)).)
01:17:51 * Sgeo goes back to reading websites about Scheme
01:20:32 <Sgeo> "The question is answered in section 6.4 of R5RS: "Except for continuations created by the call-with-values procedure, all continuations take exactly one value."
01:21:17 * elliott thinks about how to do a lazy term-rewriting language
01:21:35 <elliott> Sgeo: This is because the CALL-WITH-VALUES procedure is exactly the way to create continuations with more than or less than one value.
01:27:06 -!- augur has joined.
01:28:28 <elliott> I really wish Scheme didn't have set-c[ad]r!.
01:28:54 <Sgeo> Racket's regular conses are immutable
01:29:36 <elliott> Actually I'm also vaguely annoyed that pairs aren't identified with vectors of length two.
01:29:46 <elliott> (a . b . c) would be a snazzy syntax for a length-three vector, too. :p
01:29:50 <Sgeo> Is there a good reason for me to learn R5RS Scheme instead of Racket?
01:30:36 -!- augur has quit (Remote host closed the connection).
01:31:20 -!- azaq23 has quit (Quit: Leaving.).
01:35:40 <pikhq_> Y'know, the whole mess that is C portability is probably the single best argument against C.
01:38:11 <pikhq_> If you want to write a program that will run anywhere with a C compiler, give up now.
01:38:25 <elliott> That's relatively easy for numeric crunching.
01:38:34 <pikhq_> You can't even be sure it will have the standard headers.
01:38:44 <elliott> Standalone implementations hardly count.
01:38:55 <pikhq_> I'm not including those.
01:39:24 <elliott> Well, OK, and it's hard to write a program that runs in both Python and Ruby interpreters too.
01:39:31 <elliott> You're trying to write a polyglot, which is just stupid.
01:39:41 <elliott> ANSI C and K[and]R C are two different languages.
01:39:53 <elliott> They are so different as to be almost incomparable.
01:41:14 <pikhq_> Anyways, *disregarding that*, unless every function you want is in the commonly supported subset of the C library, you're in for a world of hurt.
01:41:35 <elliott> So we are counting non-implementations of ANSI C too?
01:41:41 <elliott> If they don't follow the standard, they aren't implementations.
01:41:52 <elliott> And everything follows ANSI C nowadays (C99 not so much).
01:41:59 -!- poiuy_qwert has quit (Read error: Operation timed out).
01:42:10 <Sgeo> Is C in better or worse shape than Scheme?
01:42:19 -!- Slereah has quit (Ping timeout: 264 seconds).
01:42:22 <elliott> Define shape, better, worse, and what you think Scheme's "shape" is.
01:43:05 <pikhq_> elliott: There's still a large amount of really, really stupid shit out there. For instance: apparently, on Darwin, you have to explicitly include stdio.h if you are including stdlib.h.
01:44:21 <elliott> Like, what? You can't include stdlib without stdio?
01:45:06 -!- poiuy_qwert has joined.
01:45:45 <elliott> pikhq_: If you mean <stdlib.h> doesn't implicitly include <stdio.h>, it's not specified to.
01:46:30 <elliott> "div always rounds towards 0, unlike ordinary integer division in C, where rounding for negative numbers is implementation-dependent."
01:46:40 <elliott> Hey Gregor, Fythe [caret] :P
01:46:47 <pikhq_> That declarations in their stdlib.h depend on declarations in stdio.h.
01:47:04 * Sgeo watches Racket install
01:47:53 <elliott> pikhq_: I'm pretty much entirely sure that's false.
01:48:30 <Gregor> elliott: It's defined in C99.
01:48:42 <Gregor> elliott: And just-so-happens to be the same in every implementation :P
01:48:55 <elliott> Gregor: Isn't Fythe ANSI, though? :P
01:49:26 <pikhq_> Gregor: Then you might want to make it check for C99. :P
01:49:28 <elliott> BTW, sorry I've not done anything with the bignums, I'm sort of waiting until I can type C again.
01:49:40 <Gregor> elliott: Fythe's division operator is implemented in ASM ...
01:50:05 <elliott> OK, so gcc will never do anything other than generating a plain div instruction.
01:50:23 <Gregor> elliott: It's generated ONCE by GCC.
01:50:29 <Gregor> elliott: Then the same one is used in every installation.
01:50:34 <Gregor> So what's important is the ASM, not GCC.
01:51:09 <Gregor> And no, pikhq_, I'm not going to check for C99 to make sure that division behaves like it did in all pre-C99 compilers anyway.
01:52:35 -!- Slereah has joined.
01:54:18 <elliott> What, is this an error in the specification...
01:54:25 <Sgeo> DrRacket froze up when I typed (/ 1 0)
01:54:31 <elliott> In the following example the only tail call is the call to f. None of the calls to g or h are tail calls. The reference to x is in a tail context, but it is not a call and thus is not a tail call.
01:54:36 <elliott> That (f) is so blatantly not a tail call.
01:54:46 <Sgeo> Ok, it ust took a distressing amount of time to work out that I divided by 0
01:54:57 <elliott> and is control flow just like if.
01:55:31 -!- augur has joined.
01:59:40 -!- augur has quit (Remote host closed the connection).
01:59:55 -!- TeruFSX has joined.
02:03:31 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
02:05:08 -!- poiuy_qwert has joined.
02:05:28 -!- lambdabot has joined.
02:24:01 <elliott> lambdabot more like bambdalot
02:26:37 -!- dbc has joined.
02:54:04 -!- wth has joined.
02:54:29 -!- wth has quit (Client Quit).
02:58:55 -!- Ycros has quit (Read error: Connection reset by peer).
03:01:19 -!- Ycros has joined.
03:05:25 -!- augur has joined.
03:32:48 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
03:41:24 -!- poiuy_qwert has joined.
04:13:15 -!- Ycros has quit (Read error: Connection reset by peer).
04:15:27 -!- Ycros has joined.
04:20:31 <pikhq_> Google is now a *TV* ad agency as well.
04:21:15 <pikhq_> http://www.youtube.com/watch?v=peqnSTBnTVk
04:39:12 -!- elliott has quit (Remote host closed the connection).
04:50:26 <coppro> pikhq_: I should be less surprised
04:50:56 -!- ralc has joined.
05:00:42 -!- elliott has joined.
05:08:46 <elliott> Does anyone know if there's some sort of DVCS-backed FUSE filesystem that just commits every time you save?
05:08:57 <elliott> And then some kind of undo-tree UI for actually finding a revision in the mess, I guess.
05:09:18 <elliott> You'd do actual commits separately, this would just be so you can make experimental changes without relying on your editor's undo capabilities...
05:28:26 -!- siracusa has quit (Read error: Connection reset by peer).
05:31:35 -!- siracusa has joined.
06:01:17 -!- pikhq has joined.
06:01:29 -!- pikhq_ has quit (Quit: Reconnecting).
06:16:23 <elliott> Finger tree: http://i.imgur.com/sRyCi.png
06:17:14 -!- elliott has left ("Leaving").
06:17:24 -!- elliott has joined.
06:17:34 <elliott> I can't stop laughing at my own damn creation.
06:18:25 <elliott> I kind of wish my hand was a finger tree now.
06:19:47 -!- FireFly has joined.
06:20:06 <olsner> luckily I have my 25cl of fantastic pear-flavoured fruit drink, that'll totally make me fit-for-fight
06:20:31 <elliott> i drew a finger tree http://i.imgur.com/sRyCi.png
06:20:42 <olsner> yeah, I saw, that looks nice
06:21:00 <olsner> the spitting image of a something-or-other
06:30:54 * pikhq wonders why ar is only used for static libraries and .debs
06:31:58 <pikhq> It's a freaking general-purpose archiver.
06:32:36 <olsner> maybe it doesn't support directories
06:33:26 <olsner> and file permissions, and other fancy features that you want from actual general-purpose archivers
06:34:13 <pikhq> Oh, right, it's got retarded limitations.
06:34:18 <pikhq> Question answered!
06:37:21 <fizzie> On the third hand, it does have (well, GNU ar does; and probably many others, incompatibly) that symbol table thing, which is certainly something you'd want in a general-purpose archiver.
06:39:23 <fizzie> olsner: It does, however, have mtime/uid/gid/permissions entries in the file header.
06:40:01 <fizzie> Didn't someone speak of a "nest ar files in ar files to simulate directories" scheme once?
06:40:14 <fizzie> It sounds like something you'd do, yes.
06:40:41 <elliott> I will choose to take that as a compliment.
06:41:15 <fizzie> A dazzling display of optimism.
06:41:35 <elliott> Hey fizzie, ban clog, it'll be swell.
06:43:45 <fizzie> Suddenly I am suspicious; this must be some sort of a trick, even though I can't see any harm in it.
06:44:14 <pikhq> Now I just wonder what anyone was thinking when they came up with .deb.
06:44:33 <pikhq> It literally has 2 tarballs in an arball.
06:45:03 <fizzie> "Arball" is a funny word. Arball, arball, arball. Repeat it a couple of times.
06:47:07 <elliott> fizzie: It's not a trick, I'm just insane.
06:47:54 <fizzie> I am still suspicious, but here goes.
06:47:56 -!- ChanServ has set channel mode: +q clog!~nef@bespin.org.
06:48:35 <fizzie> clog: Ha, finally your inane babbling has been silenced!
06:48:47 <fizzie> Peace and quiet, at last.
06:51:18 -!- Slereah has quit (Ping timeout: 260 seconds).
06:51:37 <Sgeo> Some people blame PLT for R6RS
06:53:38 <olsner> fizzie: that should probably be spelled arbl
06:54:54 <fizzie> Oh arbl, arbl arbl, I made it out of clay.
06:55:02 <fizzie> (Add the missing comma.)
06:58:37 <elliott> IT IS UTTERLY UNDAMAGED BY THIS
06:58:59 <elliott> -Lymia- VERSION BusyBox v1.14.2 (FreeDos 1.0) multi-purpose chat client <-- SUUUURE
07:01:45 <Sgeo> elliott, do you think PLT is to blame for R6RS?
07:02:25 <elliott> If a tree falls in the forest and nobody is around to see it, does Sgeo keep asking stupid, unanswerable questions?
07:02:39 <monqy> I don't think anything could stop that
07:03:18 <elliott> maybe if all the virtual worlds in the universe had a gigantic party together
07:03:26 <elliott> but the condition was you had to stop asking stupid questions for a whole day
07:07:51 -!- oerjan has joined.
07:11:59 * oerjan assumes this is because of the error messages it gives to unknown CTCP's
07:13:10 <elliott> fizzie is just this huge fascist
07:13:47 <oerjan> 't log its own responses, probably
07:14:29 <oerjan> 15:31:03 <cpressey> the thing oerjan said about counting down for my head to explode which i can;t find in my scrollback
07:14:32 <oerjan> 15:31:10 <cpressey> it applies now.
07:14:35 <oerjan> 15:31:12 <cpressey> BOOM
07:14:39 <oerjan> EVERYTHING WENT AS EXPECTED
07:16:52 <oerjan> glogbot's logs aren't loading...
07:17:24 <oerjan> oh hm it was the wrong date anyway
07:18:03 <oerjan> elliott: wait, clog did absolutely _nothing_?
07:19:41 <oerjan> oh you wanted to test it?
07:20:57 <oerjan> i guess if VERSION replies aren't to the channel anyhow, it won't make a difference
07:21:30 <elliott> oerjan: i just wanted it to happen since it would have no effect anyway ;D
07:22:11 <oerjan> <CTCP>ARGLE BARGLE<CTCP>
07:22:36 <oerjan> right not even the error replies go to channel
07:31:38 -!- FireFly has quit (Quit: swatted to death).
07:32:51 <elliott> oerjan: have you seen my picture of a finger tree
07:35:30 * oerjan swats elliott -----###
07:38:15 <oerjan> it is somewhat disturbingly similar to a penis tree
07:39:57 <Lymia> Is Python's slice notation inclusive, or exclusive for the second parameter?
07:40:18 <Lymia> i.e. would x[a:b] include b
07:40:52 <elliott> >>> 'abcdefghijklmnopqrstuvwxyz'[0:9]
07:40:52 <elliott> >>> len('abcdefghijklmnopqrstuvwxyz'[0:9])
07:40:58 <elliott> I can't give more useful examples since I can't type the relevant numbers.
07:42:05 <oerjan> elliott, so numerically challenged
07:44:24 <elliott> can someone say sixty four
07:44:47 <elliott> fizzie: plz ban oerjan for troll
07:45:31 <oerjan> hey if roman numerals were good enough for jesus...
07:46:35 <elliott> fizzie: religious trolling at that
07:51:23 <pikhq> oerjan: THOV HAST VVIN
07:52:08 <pikhq> (HEY, IF AN ALPHABET VVITHOVT "W" OR "J" VVAS GOOD ENOVGH FOR IESVS...)
07:57:49 <pikhq> elliott: "JEW" IS INCORRECT. "IVDAEVM" IS THE VVORD THOV VVISHEST, FOR REFERING TO THE OLDEST OF THE THREE MAIN ABRAHAMIC FAITHS
07:58:06 <pikhq> elliott: ALSO, THERE IS NO LETTER "J" OR "W". I THINK YOV MEAN "I" and "VV".
07:58:38 <pikhq> ("U" IS, OF COVRSE, JVST A CVRVIER "V")
07:58:45 <pikhq> ... CVRSES VNTO ME
08:03:35 <pikhq> Define "lozenge", and I'll tell you.
08:04:40 <pikhq> Clearly, strcmp("lozenge", "people")!=0.
08:05:06 * Sgeo risks brain-damage and downloads newLISP
08:06:01 <elliott> i love how monqy bypassed the naive optimistic esolang-liking of this place and skipped straight to the Sgeo mockery
08:06:16 <elliott> it's pretty much what this place exists for
08:06:50 -!- pikhq_ has joined.
08:07:13 <elliott> http://esolangs.org/w/index.php?title=Befunge&diff=next&oldid=22874
08:07:19 <Sgeo> Mock Tailsteak?
08:07:27 <elliott> im gonna find what fucker made this and beat them with a shiro
08:08:17 <elliott> FUCK IT IMPLEMENTS MORE FINGERPRINTS THAN SHIRO FUCK
08:08:21 <monqy> looks like the same person that added that bit
08:08:49 -!- pikhq has quit (Read error: Operation timed out).
08:09:36 <elliott> HAHA YES ITS FUNGESPACE IS MORE NAIVE THAN MINE
08:09:39 <elliott> TAKE THAT YOU PIECE OF CRAP
08:09:49 <elliott> It's also N-dimensional though :P
08:09:54 <monqy> or maybe a fungi fanboy, but I doubt such a person exists
08:10:05 <elliott> Upload dateTue Oct 5 04:24:08 UTC 2010
08:10:19 <elliott> hey i should generalise shiro to n dimensions
08:10:23 <elliott> that would be fun and profitable
08:11:16 <oerjan> to truly beat em, you must support fractal dimensions
08:11:24 * oerjan lurks away cackling evilly
08:11:51 -!- siracusa has quit (Ping timeout: 252 seconds).
08:12:39 <monqy> support vortex math
08:13:26 <Sgeo> I'm already ticked off by newLISP's REPL of all things
08:13:29 <pikhq_> Support the hyperbolic plane.
08:13:31 -!- siracusa has joined.
08:13:46 <Sgeo> .....The fudge?
08:13:54 <Sgeo> The damn editor doesn't do automatic indentation?/
08:14:48 <pikhq_> You are allowed to say "the fuck".
08:14:54 <pikhq_> We are not afraid of copulation here.
08:15:00 <pikhq_> Sleep, maybe, but not copulation.
08:15:04 * Sgeo gives newLISP-GS a gigantic middle finger
08:15:29 <monqy> I'm sure it appreciates it
08:15:39 <oerjan> Sgeo: i suggest applying elliott's finger tree
08:15:47 <monqy> maybe you should use a real whatever newLISP-GS is supposed to be
08:15:50 <monqy> maybe you should use a real language
08:15:54 <elliott> can never have enough fingers on the tree
08:16:52 <elliott> ok things i need for this: haskell with a lot of packages, emacs set up correctly
08:17:06 <elliott> hey did i ever get oerjan to answer my haskell structuring question ;D
08:18:26 <elliott> basically avoiding stacks of what amount to case statements on Maybes with a consistent failure mode...
08:18:31 <elliott> I'm pretty sure it's a MaybeT but I'm not sure.
08:18:37 <elliott> I think it's a MaybeT but I'm not sure.
08:19:08 <oerjan> assuming you need an underlying monad
08:19:18 <elliott> I do, since the code without it is extremely ugly and leans right
08:19:21 <elliott> the problem is that when I result in Nothing, I /don't/ want to rewind the state
08:19:33 <oerjan> elliott: erm i mean _besides_ the Maybe part
08:19:40 <elliott> ah. well yes, but let me explain
08:19:44 <elliott> I don't need an _underlying_ monad
08:20:01 <elliott> the Shiro monad: StateT FungeState IO
08:20:10 -!- Sgeo has quit (Ping timeout: 246 seconds).
08:20:13 <elliott> wrong: MaybeT (StateT FungeState IO) (or however you say it)
08:20:21 <elliott> because when it's Nothing, the state /should not rewind/
08:20:26 <elliott> StateT FungeState (MaybeT IO)
08:20:39 <oerjan> i don't know why the state would rewind...
08:20:51 <elliott> oerjan: um because when the stack returned Nothing you wouldn't be able to get the state out
08:20:55 <elliott> state can change /before/ it fails
08:20:57 <elliott> and that state should not rewind
08:21:00 <oerjan> i'd expect it to rewind only for StateT FungeState (MaybeT IO)
08:21:42 <oerjan> except that there are some monad transformers that take pains to commute anyhow iirc
08:21:57 <elliott> i'm not sure you understand
08:22:00 <elliott> the structure is basically like
08:22:21 <elliott> case foo of Nothing -> reflect; Just yayy -> ...
08:22:30 <elliott> when I reflect, that's the end of the entire function
08:22:35 <elliott> /but/ I can't have the whole thing be Maybe
08:22:41 <elliott> because if I did, and it returned Nothing
08:22:46 <elliott> I couldn't get at the modified state
08:23:38 <elliott> i sure hope oerjan is understanding me here :D
08:24:43 <monqy> do notation and state shit
08:24:47 <oerjan> elliott: i don't think you understand how monad transformers stack
08:25:06 <elliott> oerjan: I might be misunderstanding MaybeT in particular, but I don't think so
08:25:24 <oerjan> i fully expect MaybeT (StateT FungeState IO) not to rewind state, because it cannot possibly rewind IO
08:26:11 <elliott> oerjan: I think I was confusing (MaybeT (StateT FungeState IO) a) with (Maybe (StateT FungeState IO a)) or something like that
08:26:20 <oerjan> although it is _possible_ MaybeT takes pains to modify get and put to ruin my assumption
08:26:47 <elliott> one annoying thing is the delimitation of these "possibly-failing computations"
08:26:59 <elliott> I /think/ it's just per-instruction
08:27:07 <oerjan> (i recall at one time finding a monad transformer which did something like that)
08:27:28 <elliott> oerjan: anyway, the only problem now is all the unholy lifting I'll have to do :(
08:27:47 <elliott> I could make a type class dealie but eurgh
08:28:06 <elliott> m <- gets (fpInstructions . currentIP)
08:28:14 <elliott> Just (_:xs) -> modifyFPInstructions (Map.insert ins xs)
08:28:33 <elliott> m <- lift [dollar] gets blah blah
08:28:41 <elliott> yeah there is going to be a lot of lifts is my point
08:30:37 <oerjan> well make all your base operations work with MaybeT ... i guess
08:31:22 <elliott> oerjan: um you realise there is tons of code /outside/ of the MaybeT?
08:31:37 <elliott> the MaybeT is basically just a readability optimisation for a very very common pattern of code in instructions
08:31:43 <elliott> it's not essential to the structure or anything
08:31:56 <elliott> case (toFPIns asem, toFPIns bsem) of
08:31:57 <elliott> m <- gets (fpInstructions . currentIP)
08:31:57 <elliott> case (maybe reflect head (Map.lookup a m),
08:31:57 <elliott> maybe reflect Map.lookup b m) of
08:32:05 <elliott> there's no code after that line :)
08:33:01 <oerjan> and i assume that gets (fpInstructions . currentIP) is a monadic operation
08:33:14 <elliott> yes, in Shiro (== StateT FungeState IO)
08:33:33 <elliott> but gets is in MonadState, so actually I could easily avoid lift there
08:33:37 <elliott> it's everything /else/ that'd suffer
08:34:05 <elliott> WOW this hGetLineWithTerminator is ugly.
08:34:09 <oerjan> hm i wonder, what about making a slightly more compact higher order function instead?
08:34:31 <oerjan> testReflect (Just j) x = x
08:34:40 <oerjan> testReflect Nothing _ = reflect
08:35:03 <oerjan> * testReflect (Just j) x = x j
08:35:18 <elliott> oerjan: that wouldn't help, since after reflect the instruction has to /stop/
08:35:25 <elliott> oh, wait, that's continuation passing styl
08:35:31 <elliott> well yes but it'll still lean rightwards...
08:35:35 <elliott> whereas this code should be flat
08:35:50 <oerjan> yes but maybe a little less?
08:36:00 <oerjan> i guess the do's ruin some things
08:36:10 <elliott> it'd just help by one indentation level every block, I think
08:36:38 <elliott> oerjan: behold the (unrelated) ugly :D http://sprunge.us/NTbX
08:36:51 <elliott> well it does have one such block but it's not a problem function
08:37:09 <elliott> line <- ioReflect $ hGetLineWithTerminator handle
08:37:10 <elliott> push . fromIntegral . length $ line
08:37:15 <elliott> I should halt after the reflect
08:41:13 <oerjan> so then i guess you either get rightwards leaning, lots of lifting, or embedding the MaybeT in your main monad.
08:41:33 <elliott> or typeclassing everything
08:41:50 <elliott> instead of Shiro a, MonadShiro m => m a, etc.
08:42:11 <oerjan> one more stopgap might be to use some >>= instead of do blocks
08:44:35 <oerjan> fpRun _ Y = pop >>= \sem -> checkReflect toFPIns sem $ \ins -> gets (fpInstructions . currentIP) >>= \m ->
08:44:51 <oerjan> you don't need new indentation to use >>=
08:44:51 <elliott> so make it uglier and even more indented?
08:45:05 <oerjan> um that was just to put it on one line
08:45:30 <oerjan> although i stopped there because the three-way case doesn't fit with checkReflect
08:45:49 <oerjan> also i'm missing some parentheses
08:46:38 -!- Sgeo has joined.
08:46:57 <oerjan> that could make it less indented, although of course uglier
08:49:06 <Sgeo> Features needed to be a half-decent Lisp editor: Easy to see matching parens, and automatic indentation.
08:49:09 <oerjan> hm you could also make the first part monadic
08:49:23 <Sgeo> Percentage of such features newLISP-GS provides: 50%
08:49:28 <elliott> Sgeo: first is semi-irrelevant, all you really need is the blink to let you know which block you just closde
08:49:41 <Sgeo> That's what I meant by the first
08:50:02 <oerjan> checkReflect m f = m >>= \x -> case x of Nothing -> reflect; Just y -> f y
08:50:37 <oerjan> fpRun _ Y = checkReflect (toFPIns <$> pop) $ \ins -> ...
08:51:56 -!- elliott_ has joined.
08:51:56 <oerjan> fpRun _ Y = toFPIns <$> pop `checkReflect` \ins -> ...
08:52:02 -!- elliott has quit (Read error: Connection reset by peer).
08:52:58 <oerjan> you could make it a proper fixity 0 operator
08:53:17 <elliott_> Shiro/Fingerprints/FILE.hs:38:2:
08:53:18 <elliott_> Warning: Pattern match(es) are non-exhaustive
08:54:04 <oerjan> fpRun _ Y = toFPIns <$> pop -->- \ins ->
08:54:35 <lambdabot> The operator `Data.Functor.<$>' [infixl 4] of a section
08:54:48 <elliott_> oerjan: you're just trying to get me to stop using do notation :D
08:55:05 <oerjan> elliott_: well i'm pointing out that's the simplest way to reduce indentation here
08:55:27 <elliott_> it strikes me as less elegant than a transformer, personally
08:56:10 <elliott_> Warning: The import of `Data.ByteString' is redundant
08:56:10 <elliott_> except perhaps to import instances from `Data.ByteString'
08:56:10 <elliott_> To import instances alone, use: import Data.ByteString()
08:56:16 <oerjan> hm maybe >>=| would be a good name
08:56:23 <elliott_> im pretty sure theres a reason i imported it so shut up
08:56:31 <elliott_> Warning: The import of `Shiro.FungeSpace' is redundant
08:56:31 <elliott_> except perhaps to import instances from `Shiro.FungeSpace'
08:56:31 <elliott_> To import instances alone, use: import Shiro.FungeSpace()
08:56:34 <elliott_> FungeSpace m (minX,minY) (maxX,maxY) m2 m3 ->
08:56:42 <elliott_> its becuase shiro.types has it
08:57:12 <elliott_> surprisingly, I depend on nothing not in the Haskell Platform
08:58:02 <oerjan> m >>|= f = m >>= \x -> case x of Nothing -> reflect; Just y -> f y
08:58:19 <elliott_> ugh, does the ubuntu haskell platform have profiling libs
08:58:48 <elliott_> probably not ugh ill just build the fuckshit myself
08:59:42 <elliott_> oerjan: the thing is that do notation fits the /rest/ of these things' code
09:00:47 <elliott_> "Calvin and Hobbes is quite possibly the best philosophy put into a comic strip. It was named after John Calvin and Thomas Hobbes, two famous philosophers."
09:00:50 <elliott_> HOW THE FUCK CAN YOU NOT KNOW THIS
09:01:54 <oerjan> i cannot say i have actually checked how consistent calvin and hobbes's philosophies are with their namesakes'
09:02:41 <oerjan> (should there be an 's on calvin or not, there?)
09:11:24 <elliott_> (coreIns . chr . fromIntegral $ i) `catchShiro`
09:11:25 <elliott_> \(ShiroIOException st) -> put st >> reflect
09:11:44 <elliott_> io . hPutStrLn stderr $ "*** [Reflecting on IO exception: " ++ show e ++ "]"
09:11:51 <elliott_> yes, I keep the state by throwing an exception with the state
09:27:51 <Sgeo> http://common-lisp.net/project/cl-cont/
09:28:04 <Sgeo> call/cc with random restrictions is no fun
09:28:14 <elliott_> that's not random restrictions
09:28:28 <elliott_> which is arguably more fundamental than call/cc
09:28:36 <elliott_> http://en.wikipedia.org/wiki/Delimited_continuation
09:28:36 <elliott_> http://okmij.org/ftp/continuations/index.html
09:29:25 <Sgeo> Says it can't be used in mapcar and the like
09:29:31 <Sgeo> Sounds like a random restriction to me
09:29:41 <elliott_> um, that's because common lisp doesn't have continuations
09:29:47 <elliott_> and so, mapcar will be written in a way ignorant of continuation-passing style
09:30:01 <elliott_> p.s. the map/callcc interaction is very hard to get right anyway
09:30:31 <elliott_> "map: tail recursive, call/cc friendly, goes over the list only once: pick two"
09:30:56 <elliott_> so arguably you don't /want/ to use it from higher order functions like that
09:32:00 <Sgeo> Just googled it, couldn't find where that's from
09:32:12 <Sgeo> Unless you're quoting yourself...
09:32:32 -!- hiato has quit (Ping timeout: 252 seconds).
09:33:26 -!- hiato has joined.
09:35:45 -!- monqy has quit (Quit: hello).
09:38:06 <oerjan> "I never quote myself" -- Elliott Hird
09:41:34 <elliott_> Sgeo: it's from the sisc page, paraphrased
09:42:14 <elliott_> http://sisc-scheme.org/r5rs_pitfall.php
09:44:50 <elliott_> The expression (call/cc (lambda (c) (0 (c 1)))) is a legal expression
09:44:51 <elliott_> according to r5rs, whose semantics are that 1 gets returned when it is
09:44:51 <elliott_> passed to the escape procedure c during the evaluation of the
09:44:51 <elliott_> positions of the combination (0 (c 1)).
09:47:00 <elliott_> (should-be 8.2 '(1 2 3 4 1 2 3 4 5)
09:47:23 -!- hagb4rd has joined.
09:52:46 <oerjan> so r5rs requires all arguments to be evaluated before checking whether the first one is a function?
09:54:16 <elliott_> it's "evaluate arguments and function in unspecified order", then "give arguments to function"
09:54:20 <elliott_> except written less ambiguously :)
09:54:48 <oerjan> looks like nvg is shutting down for a couple days here due to building maintenance, i may not be on irc then
09:55:19 <elliott_> oerjan: YOU'RE NOT ALLOWED A BREAK
09:55:43 -!- hagb4rd has quit (Ping timeout: 246 seconds).
10:04:53 <elliott_> http://rationalwiki.org/w/index.php?title=RationalWiki:Chicken_coop&curid=2919&diff=786201&oldid=786194
10:04:58 <cheater_> http://news.ycombinator.com/item?id=60357
10:17:14 <elliott_> "If the strip goes through today without an update, this will be the longest hiatus the strip has ever gone on, at 8 days." ;; welp, at least now I know my perception of time is fucked up for sure
10:17:21 <elliott_> oerjan: hey, does iwc actually ever go on hiatuses?
10:17:27 <elliott_> apart from those caused by software bugs
10:18:53 <oerjan> elliott_: hasn't skipped an update since the second year, or was that first
10:19:31 <elliott_> oerjan: :( your saline drip is more reliable than mine
10:19:50 * elliott_ lols a bit more at an eight day break being called a "hiatus"
10:20:00 <oerjan> there have been some very few that were a few hours delayed
10:20:01 <elliott_> hmm that means that all the flash updates were made in less than seven days... impressive
10:20:32 <oerjan> elliott_: DMM just came back from a three week holiday, and there was no significant glitch
10:20:44 <elliott_> oerjan: yeah yeah stop rubbing it into my face
10:21:01 <oerjan> the only thing that went on hiatus was comments on a postcard, there weren't enough submissions to get through
10:21:03 <elliott_> oerjan: does DMM have an untarnished record of starting his next comic less than a week after the previous one??
10:21:11 <elliott_> where will YOU go when it all ends
10:21:19 <elliott_> also, heh; you'd think comments on a postcard would be the easiest to keep up
10:24:03 <oerjan> i'd say DMM has an untarnished record of having more projects going on perfectly at once than a human could reasonably keep up with
10:24:38 <elliott_> oerjan: yes but it's not like mezzacotta is a replacement for iwc if it ends ;D
10:25:08 <oerjan> indeed. anyway the servers here are shutting down in minutes and i need to shower
10:25:20 -!- oerjan has quit (Quit: See you, maybe).
10:25:24 <elliott_> NOOOOOOOOOOOOOOOOooooooooooooo
10:29:45 -!- elliott_ has set topic: "And without manifestation, who can say that this passage would exist since light *is* Being as manifestation? Thus light lies somewhere between an infinitely dark source and the immeasurable matrix of solidity." --Ernest Hemingway | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
10:32:40 -!- FireFly has joined.
10:35:23 -!- azaq23 has joined.
10:49:24 -!- FireFly has quit (Read error: Operation timed out).
10:50:20 -!- FireFly has joined.
11:00:03 -!- Slereah has joined.
11:09:41 -!- Slereah has quit (Ping timeout: 252 seconds).
11:10:06 -!- Slereah has joined.
11:13:47 -!- augur has quit (Remote host closed the connection).
11:23:09 -!- ais523 has joined.
11:29:00 -!- BeholdMyGlory has joined.
11:48:36 -!- Slereah has quit (Ping timeout: 240 seconds).
11:50:24 -!- Cheery has joined.
11:50:33 -!- augur has joined.
11:51:01 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
11:52:51 -!- poiuy_qwert has joined.
12:03:27 <elliott_> "Recently I have just been wondering. How did the universe start? In school they explained the Big Bang theory, but when I thought about it; I wondered. Where did all the matter that supposedly exploded into what is now the universe come from. So could r/askscience give me an answer? How did the universe begin?"
12:03:32 <elliott_> seriously, /r/askscience is the worst thing ever
12:03:41 <elliott_> i wish oerjan didn't tell me about it.
12:11:01 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
12:12:51 -!- poiuy_qwert has joined.
12:31:01 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
12:32:54 -!- poiuy_qwert has joined.
12:40:51 -!- ais523 has quit (Read error: No route to host).
12:43:25 -!- ais523 has joined.
12:47:35 -!- poiuy_qwert has quit (Read error: Operation timed out).
12:48:15 -!- ais523 has quit (Ping timeout: 260 seconds).
12:52:50 -!- poiuy_qwert has joined.
13:11:31 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
13:13:02 -!- poiuy_qwert has joined.
13:36:54 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
13:50:23 -!- ais523_ has joined.
13:52:44 -!- hiato has quit (Ping timeout: 240 seconds).
13:53:07 -!- ais523 has joined.
13:58:03 -!- Slereah has joined.
13:58:47 -!- hiato has joined.
14:03:04 -!- hiato has quit (Ping timeout: 240 seconds).
14:04:41 -!- hiato has joined.
14:04:54 -!- MigoMipo has joined.
14:09:12 -!- aloril has quit (Ping timeout: 250 seconds).
14:09:56 <ais523> elliott_: do you have any good ideas about how to implement polymorphism? in general, I mean
14:10:13 <elliott_> i'm going to do that obnoxious thing i do
14:10:30 <ais523> elliott_: well, part of the issue is coming up with a good definition
14:11:10 <elliott_> Do you mean polymorphism as in rank-one universal quantification in a function type?
14:11:14 <ais523> but what I want is a language that lets me do something like let flip a b c = a c b; then call flip with two different arguments of different types
14:11:30 <elliott_> Or perhaps parametric polymorphism, i.e. the same applied to types?
14:11:33 -!- ZOMGMODULES has joined.
14:11:44 <elliott_> ais523: But not higher-rank polymorphism?
14:11:59 <ais523_> well, what I have at the moment works almost entirely on type inference
14:12:07 <elliott_> e.g. ((forall a. a -> a) -> Int) being a function that takes (a function that takes an argument of any type and returns a value of the same type), and returns Int
14:12:16 <ais523_> with the bizarre result that you can define two identical functions flip1 and flip2 and have them both work
14:12:18 <elliott_> compare ((a -> a) -> Int); you could feed e.g. (+one) to this
14:12:23 <ais523_> but combining them doesn't as you get a type inference error
14:12:36 -!- Vorpal has joined.
14:12:40 <elliott_> but (+one) wouldn't work as an argument to the first
14:12:42 <ais523_> you're talking about passing polymorphic functions to other polymorphic functions
14:12:47 <elliott_> (in fact, the only acceptable arguments are id and _|_)
14:13:14 <elliott_> ais523_: right. higher-rank polymorphism corresponds to higher-order logic
14:13:26 -!- hiato has quit (Ping timeout: 260 seconds).
14:13:29 <elliott_> rank-one types handle 90 percent of things, though, and can be inferred
14:13:41 <elliott_> (rank-two+ types aren't haskell 9eight, for instance)
14:13:52 <ais523> yep; additionally, I need to desugar everything into known non-polymorphic non-parametric types anyway
14:13:57 <elliott_> (but they might be haskell twentyten and they're definitely a relatively popular GHC extension)
14:14:05 <elliott_> ais523: well, I guess my next question is define "implement" ;)
14:14:12 <ais523> so really I'm looking for some way to automatically infer polymorphism then desugar it into the equivalence of C++ templates
14:14:19 <ais523> then desugar /those/ into macro expansions, and do the expansions
14:14:22 <ZOMGMODULES> enjoy being locked in your immeasurable matrix of solidity
14:14:29 <elliott_> ais523: well, you know about Hindley-Milner, right?
14:14:36 * elliott_ prays deeply the answer to that isn't "no"
14:14:52 <elliott_> I actually put my hands together and closed my eyes there. That's how deeply I'm prayin'.
14:14:54 <Vorpal> elliott_, any progress on the spec?
14:15:06 <ais523> elliott_: I am aware that it's a common type-inference algorithm; I have also implemented an obvious type-inference algorithm, and think it's very likely they're the same
14:15:06 <ais523> but I've never actually checked
14:15:20 <elliott_> Vorpal: Uh, whoops. I've been rather exceedingly busy. You might just wanna buy something.
14:15:29 <ZOMGMODULES> ais523: it feels like the "obvious" one, from what i recall of it, so yeah
14:15:31 <elliott_> ais523: Well, Hindley-Milner handles polymorphic inference.
14:15:41 <elliott_> It is, after all, what Haskell (ninety-eight) uses.
14:15:43 <Vorpal> elliott_, well I'm busy until tomorrow anyway
14:16:10 <ais523> ah right, my algo does that, more or less, but then tries to throw that information away, and errors out if it can't
14:16:22 <elliott_> Well, don't do that if you can avoid it.
14:16:34 <elliott_> I'd say you want to throw things away at the very last moment, not as soon as you infer a specific type.
14:16:39 <ais523> sometimes it takes a conversation on IRC to know you're doing something stupid
14:16:48 <ais523> well, it needs an exact type for everything, is the issue
14:16:48 <elliott_> ais523: Re: the compiling down to C templates -- are you saying that you want there to be one and only one implementation of a polymorphic function, right?
14:17:05 <ais523> it's OK to have multiple implementations behind the scenes; in fact, if they're of different types, they have to be
14:17:13 <ais523> it should just look like one function to the user
14:17:18 <ais523> I'm compiling into hardware
14:17:27 <ais523> it absolutely needs to know the type of everything
14:17:49 <elliott_> Then I'd just do regular Hindley-Milner all the way through, and then when you have a call to a polymorphic function, see what the fully inferred type is, and compile the function accordingly.
14:17:58 <Vorpal> question about haskell: how does the "magic" string you get from stuff like hGetContents actually work? Is it possible to invent similar magic strings yourself or does it need special runtime support?
14:18:07 <elliott_> Vorpal: It's not magic, it's just a lazy string.
14:18:17 <elliott_> You can do it with unsafeInterleaveIO.
14:18:24 <elliott_> The only unsafe thing is that effects can leak.
14:18:26 <ais523> it's sufficiently nonmagic that you can even do that sort of thing in Python
14:18:43 <ais523> and the unsafety is because you can't tell when or if side-effects will happen
14:18:44 <elliott_> For instance, readFile followed by a writeFile based on it is a Bad Idea generally.
14:18:58 <elliott_> (readFile is just opening a file + hGetContents)
14:19:04 <ais523> but that's normally considered OK because not knowing when or if a file will be read is safe if you never write to it, and if reading it doesn't have side-effects
14:19:14 <elliott_> ais523: it's not normally considered OK
14:19:21 <elliott_> I would never use hGetContents in a "production" interface
14:19:23 <ais523> well, depends on who by
14:19:25 <Vorpal> elliott_, hm hGetContents isn't actually safe is it? Unless it takes some sort of OS level exclusive lock on the file someone else could modify it right ahead of where you read.
14:19:25 <elliott_> it's simply not predictable enough
14:19:26 <ZOMGMODULES> see this is how lazy evaluation makes your life simpler
14:19:30 -!- hiato has joined.
14:19:31 <elliott_> Vorpal: Yes, it's not really safe.
14:19:36 <elliott_> Vorpal: unsafeInterleaveIO is :: IO a -> IO a.
14:19:51 <elliott_> The conceptual implementation is (return . unsafePerformIO).
14:20:03 <elliott_> The basic idea is that it splits it off into "another" IO world, so that its effects can happen irrespective of the main world you're in.
14:20:24 <elliott_> That doesn't actually make any sense, but we kindly request that you pretend it does.
14:20:55 <Vorpal> elliott_, this would kind of work if you had transactions on file system level
14:21:34 <Vorpal> then you could be certain you got an atomic snapshot of a file you started reading
14:21:46 -!- aloril has joined.
14:23:13 <Vorpal> elliott_, That's hardly news
14:23:37 <elliott_> Vorpal: its ever-increasing feats of stupidity are.
14:23:56 <ZOMGMODULES> So I have to play with node.js. Should I care?
14:24:16 <elliott_> ZOMGMODULES: No, it's terrible.
14:24:18 <Vorpal> elliott_, what did it do this time?
14:24:26 <elliott_> ZOMGMODULES: People have literally said "it's fast because it uses callbacks".
14:24:33 <elliott_> ZOMGMODULES: What this means is you have to write your entire program in continuation-passing style.
14:24:35 <ZOMGMODULES> I can trust elliott_ to have an opinion on anything and everything
14:24:44 <elliott_> And the best thing is: it is the correct opinion.
14:24:52 <elliott_> Hey, ask Gregor, he STUDIES THE JAVAS for a living :P
14:25:17 <Vorpal> come on, what is node.js?
14:25:29 <elliott_> A shitty server-side javascript async IO framework thing.
14:25:42 <ZOMGMODULES> Well, the thing that struck me about it is that it seems to provide an interface to Javascript as an "actual programming language", i.e., something I can use without too much pain outside a web browser. It even gives a REPL...
14:25:45 <elliott_> Vorpal: Re what did it do this time: Paraphrase from reddit comment: "Of course, I support gay marriage. But HERE'S an objection I haven't been able to answer: WHAT IF THREE PEOPLE WANT TO GET MARRIED?????"
14:25:50 * Vorpal remembers the time when javascript on websites mostly consisted of random alert()s and mouse over menus...
14:26:04 <elliott_> ZOMGMODULES: v[eight] provides the REPL afaik.
14:26:27 <elliott_> ZOMGMODULES: http://www.commonjs.org/ is meant to be the "JS outside the browser" thing that's spin off from all this. I'm not sure how much node.js obeys, but it apparently tries to.
14:26:32 <Vorpal> <elliott_> Hipper than Rails used to be. <-- wow
14:26:37 <ZOMGMODULES> Does V8 provide enough of a standard library to make things non-hell? B/c that's the other thing that it seemed to be doing. e.g. a console object
14:26:54 <elliott_> OK, apparently node.js is a "CommonJS Implementaiton".
14:27:03 <Gregor> It's a poor CommonJS implementation :P
14:27:04 <elliott_> I'm not even going to try and understand that one.
14:27:09 <elliott_> ZOMGMODULES: Yeah no V8 has no libraries.
14:27:18 <elliott_> Erm, CouchDB queries are written in JS.
14:27:22 <elliott_> Because JS, like Erlang, is HIP.
14:27:27 <elliott_> Hipper than a literal fucking hip.
14:27:35 <Gregor> elliott_: Imagine if POSIX was like this: "To be POSIX-conforming, you must implement open, read and write. The remainder of this spec is optional."
14:27:36 <elliott_> I am poking my hip right now. It is not nearly as hip as Erlang.
14:27:39 <Gregor> elliott_: That's CommonJS.
14:27:47 <elliott_> Gregor: To be fair, POSIX is sort of like that :P
14:27:48 <ZOMGMODULES> I'm so hip, I have trouble seeing past my pelvis.
14:28:37 <elliott_> http://en.wikipedia.org/wiki/SproutCore ... also a CommonJS implementation????
14:28:39 <Gregor> elliott_: Yeah, but CommonJS is more extreme. It's a collection of sub-standards, and the only one necessary to be "a CommonJS implementation" is require() (think #include, but not quite so dumb)
14:28:44 <elliott_> I'm not even going to try and understand this. Not. Even. Going. To. Try.
14:28:56 <Vorpal> <elliott_> Gregor: To be fair, POSIX is sort of like that :P <-- much less in POSIX 2008 though
14:29:09 <elliott_> Gregor: Oh man, #include. Because what we've learned since the seventies is, the seventies way to do a module system is DEFINITELY the best way to do a module system.
14:29:18 <elliott_> That is why everyone loves .h files.
14:29:40 <Gregor> Well, JS require() is include() except that you dump stuff into an object, and that object is exposed under the theory that it's like a module.
14:29:47 <Gregor> Oh, and it only includes once.
14:29:50 <Vorpal> elliott_, alas I suspect the reason is a lot more prosaic. Because breaking backward compatibility is expensive
14:29:58 <elliott_> Gregor: It's still not a module system X-p
14:30:11 <Gregor> But it's better than #include :P
14:30:23 <Sgeo> Some girl wants to pay me to teach her how to set up a blog
14:30:33 <Sgeo> (Not a girl I've mentioned here before)
14:30:42 <Gregor> elliott_: Anyway, since require() is implementable in a browser, yes, browser JS libraries can be CommonJS implementations too *brain explodes*
14:31:04 <Vorpal> elliott_, why AT for everyone
14:31:47 <elliott_> Vorpal: Because of the ridiculous melding of Alluded-To Female with Katie to produce K(a)T(ie)-A(lluded)T(o) the Alluded-To Female.
14:32:01 <elliott_> And it sounds like a robot from Doctor Who.
14:32:09 <Vorpal> elliott_, KT-AT sounds like something from starwars to me...
14:32:10 <Sgeo> elliott_, there was an F there originally, iirc
14:32:28 <Sgeo> Or maybe I'm wrong
14:33:00 <Vorpal> elliott_, I just don't remember what in star wars I'm thinking of...
14:33:36 <Vorpal> oh I think those walking thingies the Empire used on the ice planet or something had some such name
14:33:55 <Vorpal> or was it those found in the last movie, on that forest moon maybe
14:34:16 <ZOMGMODULES> Vorpal: http://en.wikipedia.org/wiki/Walker_%28Star_Wars%29#All_Terrain_Armored_Transport_.28AT-AT.29
14:34:39 <Vorpal> and there is AT-ST too hm
14:34:47 -!- hiato has quit (Ping timeout: 246 seconds).
14:35:10 <Vorpal> wikipedia: best reference on in-universe details for movies in existence.
14:35:43 <Vorpal> elliott_, well I meant in general
14:35:54 -!- hiato has joined.
14:35:58 <Gregor> AT-ST? All Terrain Silly Transport?
14:35:59 <Vorpal> elliott_, that one wouldn't cover Dr Who, Star Trek and so on
14:36:01 <ZOMGMODULES> If it's hip, I better implement something cool in it, so I can put it on my resume in case I need to get hired by one of them hip web 2.0 companies. This is the wisdom of ZOMGMODULES; do not reject it.
14:36:03 <elliott_> augur: Do you URGENTLY need a FINN.
14:36:10 <Vorpal> Gregor, "scout" it seems, but yes rather silly
14:36:13 <augur> but crucially, the same finn as last time!
14:36:24 <Vorpal> augur, no, check /whois
14:36:28 <elliott_> Vorpal: It's like calling the drink Doctor Pepper :P
14:36:40 <Vorpal> elliott_, err? yes and?
14:36:58 <elliott_> ZOMGMODULES: Hired by a hip web 2.0 companies??? SIGNS ME UP
14:37:06 <Vorpal> elliott_, Dr is perfectly okay way to abbrev the word "Doctor"
14:37:25 <elliott_> Vorpal: For a start, no it's not, "Dr." is.
14:37:29 <Vorpal> ZOMGMODULES, yes indeed, but only inside other abbrev
14:37:40 <Vorpal> elliott_, I don't care about "." on irc mostly
14:37:43 <elliott_> For second, it suggests that his name is Dr. Who, which is patently false, it isn't, it's The Doctor (not "The Dr." that's ridiculous).
14:37:50 <ZOMGMODULES> elliott_: I thought you Brits didn't do that dot thing on titular abbreviations
14:37:57 <elliott_> Also I demand you call him Philosophiae Doctor Who.
14:38:13 <elliott_> ZOMGMODULES: I ... don't think we don't.
14:38:19 <Vorpal> elliott_, well the tv series is called "Doctor Who" iirc rather than "The Doctor"?
14:38:34 <elliott_> Vorpal: Yes, but that doesn't make "Dr. Who" any less misleading :P
14:38:34 <augur> Vorpal: the credits do
14:38:43 <augur> in-show they never refer to the doctor as Doctor Who
14:38:46 <Vorpal> elliott_, I disagree, but I don't care to argue about it
14:38:56 <augur> except maybe once, in a throwaway situation where he's disguised
14:38:57 <ZOMGMODULES> elliott_: comes from when I read HHGttG for the first time... though that might have been an Australian printing, come to think of it
14:38:58 <Vorpal> elliott_, anyway is there a wiki about that tv series?
14:39:12 <augur> Vorpal: about doctor who?
14:39:18 <elliott_> The chances of there not being a Doctor Who wiki is... like... less than zero.
14:39:21 <augur> http://tardis.wikia.com/wiki/Doctor_Who_Wiki
14:39:28 <Vorpal> augur, I said the name of the tv series itself, I never said the name of the guy who is the main figure
14:39:39 <Vorpal> so what the credits list him as is completely irrelevant
14:39:45 <augur> oh yes, then thats correct, Vorpal
14:39:48 <augur> the series is Doctor Who
14:40:00 <elliott_> yes but "Dr. Who" is still a misleading abbreviation :)
14:40:05 <Vorpal> augur, which I argue can be abbreviated to "Dr. Who"
14:40:10 <elliott_> because "Dr." is afaik universally used to put in front of people's names
14:40:11 <Vorpal> and on irc I can drop that dot
14:40:12 -!- wareya_ has changed nick to wareya.
14:40:16 <augur> i think it's been abbreviated like that afaik
14:40:30 <elliott_> it may have been abbreviated like that, but that doesn't make the abbreviation any less misleading
14:40:44 <augur> but its not TOO misleading
14:41:02 <elliott_> It's more misleading than Ph.D. Whence, the One True Name of the series.
14:41:06 -!- hiato has quit (Ping timeout: 240 seconds).
14:41:15 <augur> because the fridgelogic behind it all is that he's the Doctor, and if he's a doctor, then his titled name is Dr. something or other
14:41:25 <elliott_> Isn't he actually a four time Earth doctorate?
14:41:28 <augur> But.. Dr. /who/, exactly?
14:41:33 <elliott_> So he's Dr. Dr. Dr. Dr. The Doctor.
14:41:52 -!- hiato has joined.
14:41:58 <Gregor> Professor Pepper, Ph.D. SDD
14:41:58 <Vorpal> elliott_, I think you collapse them?
14:42:17 <ZOMGMODULES> Hello Kitty is now a CommonJS implementation.
14:42:22 <Gregor> (SDD = Soft Drink Design)
14:42:32 <Vorpal> elliott_, either works, that is my point
14:42:34 <elliott_> Hey Gregor, what does Dr Pepper fnarf like.
14:42:55 <Gregor> Professor Pepper, Ph.D. SDD is deliciousness.
14:43:23 <elliott_> Finally your sense of fnarf coincides with the more common sense of taste.
14:43:50 <olsner> deliciousness is a fnarf?
14:44:37 <Vorpal> elliott_, does haskell's System.IO function expect UTF-8 or is there a way to specify perhaps?
14:44:55 <elliott_> Vorpal: UTF-8 by default; see http://www.haskell.org/ghc/docs/latest/html/libraries/base/System-IO.html for how to change that.
14:45:01 <elliott_> Protip: http://www.haskell.org/ghc/docs/latest/html/libraries/base/System-IO.html#g:23
14:45:09 <elliott_> There's also the openBinaryFile stuff.
14:45:14 <Gregor> olsner: Fnarf is the sense I apparently have to replace a more conventional sense of taste, without an adequately-functioning sense of smell.
14:45:28 <Vorpal> elliott_, hm, I'm working on a bit older system here, I guess I'll get 6.12.1 docs instead
14:45:45 <elliott_> 6.12.1 is not the latest release.
14:45:54 <elliott_> it is not even the latest 6-series release.
14:45:57 <Vorpal> elliott_, this is Ubuntu 10.04 LTS
14:46:00 <Vorpal> it is what I got on here
14:46:15 -!- hiato has quit (Ping timeout: 258 seconds).
14:46:20 <elliott_> Vorpal: Yes, but you really should update regardless; that release is over a year old.
14:46:24 <elliott_> In fact, almost a year and a half.
14:46:29 <Vorpal> elliott_, 10.04? yes indeed
14:46:34 <elliott_> And the current Haskell Platform won't even build with the six series.
14:46:43 <elliott_> That GHC doesn't even support the latest Haskell standard.
14:46:51 <Vorpal> elliott_, well I want my system to work with older stuff
14:47:01 <Vorpal> elliott_, why do you not code C99, but mostly C89?
14:47:04 -!- hiato has joined.
14:47:08 <elliott_> Um, GHC 7 is perfectly backwards-compatible.
14:47:27 <Vorpal> elliott_, so everything I write for GHC 7 will work with GHC 6.12.1? I doubt that
14:47:33 <Vorpal> the reverse is probably true
14:47:38 <elliott_> Yes, unless you use certain Template Haskell features.
14:47:50 <elliott_> Since Haskell twothousandandten is mostly a formalisation of various GHC extensions that have existed for years.
14:48:01 <elliott_> And the C89/C99 comparison is disingenuous for several reasons that I don't nearly care enough to devote the time towards.
14:48:07 <Vorpal> elliott_, so the only new thing in ghc 7 is template stuff?
14:48:26 <elliott_> Vorpal: That is the only thing that will affect you; a minor top-level Template Haskell syntax change (the optional omission of three characters).
14:48:36 <elliott_> There are other changes, but they are even more irrelevant.
14:48:44 <Vorpal> elliott_, well I don't use template haskell afaik.
14:48:54 <Vorpal> why is it useful, should I learn it?
14:49:08 <elliott_> It's useful for automating declarations and the like.
14:49:21 <elliott_> It's basically Lisp macros for Haskell on crack.
14:49:23 <Vorpal> elliott_, probably not needed to implement a compiler for a simple esolang
14:49:34 <elliott_> It's not the most pleasant thing to use most of the time, but the end results are swanky.
14:50:42 <Vorpal> elliott_, hm which sort of grammars can Parsec deal with btw (not that I need it for ↓→.... it is trivial to parse)...
14:51:10 <Vorpal> ZOMGMODULES, context sensitive ones? ;P
14:51:13 <Gregor> Wow, Parsec can handle CSGs? :P
14:51:21 <Vorpal> Gregor, beat you to it
14:52:06 <elliott_> Parsec can handle more than just context-free, I believe
14:52:09 -!- Phantom_Hoover has joined.
14:52:11 <elliott_> It's effectively Turing complete.
14:52:17 <elliott_> Phantom_Hoover: Don't say a word you have like fifty messages.
14:52:35 <elliott_> ZOMGMODULES: Well, no, it can't handle the grammars a UTM can't parse :>
14:53:13 <Phantom_Hoover> @say I wonder if lambdabot will count this as me asking it for messages...
14:53:35 <elliott_> SAY SOMETHING NORMAL SO IT TELLS YOU
14:53:54 <HackEgo> 292) <olsner> actually, I think vorpal is the "retarded team member" to the left
14:54:04 <Vorpal> elliott_, next question: haskell libraries for DFA based regexp engine?
14:54:15 <elliott_> Vorpal: regex-dfa, but why do you want regexps?
14:54:21 <elliott_> Vorpal: I don't see anything in DownRight warranting them and they are ugly.
14:54:41 <Vorpal> elliott_, no it was just in general
14:54:45 <Vorpal> elliott_, I was thinking about parsing
14:54:55 <Gregor> POSIX regexps? *vomits*
14:55:02 <elliott_> Vorpal: Parsing -> Parsec. No exceptions.
14:55:11 <elliott_> Unless it's binary data, in which case binary, or ByteStrings (network stuff), in which case attoparsec.
14:55:15 <Vorpal> elliott_, from what I remember posix regexp are not dfa based on linux at least, unless it has it's own implementation
14:55:15 <elliott_> But really. Parsec. No exceptions.
14:55:24 <Phantom_Hoover> elliott_, lambdabot timed out when I asked it for your messages.
14:55:36 <Vorpal> elliott_, I refuse to use Parsec for ↓→ because that would be utterly silly :P
14:55:49 <elliott_> Parsec is completely lightweight.
14:56:01 <elliott_> It's like refusing to use a list because you only need four elements.
14:56:01 <Vorpal> elliott_, wait what? It is a simple splitting on whitespaces?
14:56:10 <elliott_> ...no? It's grouped into blocks.
14:56:23 <Vorpal> elliott_, hm, so then I would have to learn parsec
14:56:29 <Vorpal> what is parsec like then
14:57:02 <Vorpal> ZOMGMODULES, space separates groups?
14:57:17 <Vorpal> ZOMGMODULES, any number of spaces btw
14:57:45 <Vorpal> <elliott_> Avoid left recursion. Done.
14:57:50 <elliott_> Actually Parsec might be a bitch in that it's a two-dimensional language, but parsing those is a bitch in any circumstance, and Parsec will at least lessen the pain.
14:58:00 <Vorpal> elliott_, well what stuff do I call? Does it work like lex or such?
14:58:15 <Vorpal> elliott_, right I have never used it
14:58:35 <Vorpal> elliott_, I presume you give it a grammar definition somehow, like you do for lex, yacc and so on?
14:58:59 <Vorpal> elliott_, so how do I use the libary then, what calls?
14:59:18 <Vorpal> oh wait I just do Parsec.DownRight.ParseMagially()
14:59:35 <elliott_> Right, I am going to recite the manual for you since you want to know what calls I guess
14:59:52 <elliott_> * module Text.Parsec.Combinator
14:59:56 <elliott_> * module Text.Parsec.ByteString
14:59:58 <elliott_> * module Text.Parsec.ByteString.Lazy
15:00:02 <elliott_> * errorPos :: ParseError -> SourcePos
15:00:12 <elliott_> * sourceName :: SourcePos -> SourceName
15:00:14 <elliott_> * sourceLine :: SourcePos -> Line
15:00:16 <elliott_> * sourceColumn :: SourcePos -> Column
15:00:18 <elliott_> * incSourceLine :: SourcePos -> Line -> SourcePos
15:00:22 <elliott_> * incSourceColumn :: SourcePos -> Column -> SourcePos
15:00:24 <elliott_> * setSourceLine :: SourcePos -> Line -> SourcePos
15:00:26 <elliott_> * setSourceColumn :: SourcePos -> Column -> SourcePos
15:00:28 <elliott_> * setSourceName :: SourcePos -> SourceName -> SourcePos
15:00:32 <Phantom_Hoover> elliott_, erm, you're probably going to have to tell me the last messages you sent.
15:00:42 <elliott_> module Text.Parsec.ByteString.Lazy
15:01:27 <ais523> Vorpal: if you learn to do it in Prolog first, the Haskell version will be much clearer
15:01:57 <ais523> elliott_: you think Haskell invented parser combinators?
15:01:58 <Vorpal> ais523, okay.... But will the total work of Prolog + Haskell be less than Haskell from the start?
15:02:02 <elliott_> I say what, that's actually a perfectly typical ais523 statement but then one of their defining properties is that they floor me.
15:02:08 <Vorpal> ais523, then I'll pass
15:02:12 <elliott_> Especially since Parsec's model of parser combinators is very unlike Prolog parsing.
15:02:34 <ais523> Vorpal: anyway, you can compose parsers more or less the same way you can compose functions
15:02:56 <elliott_> Vorpal: It's like writing a PEG grammar but with a bunch of Haskell operators.
15:02:57 <ais523> except that instead of operating on the result of each other, they parse adjacent bits of the input
15:03:26 <ais523> elliott_: something I'm not sure of about Parsec; does the parsers it generates do any sort of backtracking, or is it just lookahead-based?
15:03:32 <ais523> the syntax used would work for either
15:03:38 <elliott_> ais523: Backtracking, naturally.
15:03:40 <Vorpal> ais523, would I actually want it to parse ↓→ though...?
15:03:48 <Vorpal> I don't trust elliott_ about such things
15:03:59 <elliott_> Parsec is only marginally overweight for /brainfuck/.
15:04:09 <elliott_> It is literally a small pile of functions included with every Haskell distribution.
15:04:14 <Vorpal> elliott_, yes but parsing ↓→ is easier than bf :P
15:04:14 <ais523> `addquote <ZOMGMODULES> I can trust elliott_ to have an opinion on anything and everything <elliott_> Yes. <elliott_> And the best thing is: it is the correct opinion.
15:04:16 <HackEgo> 413) <ZOMGMODULES> I can trust elliott_ to have an opinion on anything and everything <elliott_> Yes. <elliott_> And the best thing is: it is the correct opinion.
15:04:20 <elliott_> It just so happens that it's extensible, fast, and has addon modules that makes parsing everything trivial.
15:04:35 <elliott_> The alternative is manually writing a recursive parser, which is just throwing simple abstraction out the window.
15:04:45 <elliott_> ais523: I would fix that with the correct spacing, but delquote is broken
15:05:05 <ais523> note that ↳ is actually parsed in a 1D style, according to the spec
15:05:08 <ais523> so Parsec's even more appropriate
15:05:12 <Vorpal> elliott_, for bf yes, for this however I would only tail recurse, but sure.
15:05:12 <elliott_> Why is it okay for one person to say no to sex in a marriage? And why is it not okay to cheat in this situation? :( (self.AskReddit)
15:05:25 <ais523> (despite being a 2D language, the input is interpreted as a stream of bytes)
15:05:50 <ais523> elliott_: I would love it if you gave an answer to that based on game theory and Nash equilibria
15:05:58 <ais523> which is, I suspect, the only technically correct answer
15:06:18 <elliott_> ais523: Unfortunately I'm too busy crying that someone could possibly ask "And why is it not okay to cheat this situation?", and then especially follow it up with ":(".
15:06:47 <elliott_> Actually the first sentence has pretty much lead me into facepalm city already so I'm just going to forget I ever saw it.
15:07:00 <ais523> well, I can only trace the why back one level
15:07:40 <ais523> it's sort-of like asking why a certain species of insect, when it needs to hide from predators, has the rule that it can hide in any hiding place used by another of the same species of insect, and the other insect has to leave to make room
15:07:55 <ais523> this leads to an interesting sort of relay race of running from predators, even if it makes no sense
15:08:10 <ais523> well, it makes some sense, but it's hard to see how it came about in the first place
15:08:18 <ais523> I'm not entirely sure it's relevant to cheating on spouses, though
15:08:23 <ZOMGMODULES> Vorpal: for using Parsec, I found working from a simple example helps
15:08:40 <Vorpal> ZOMGMODULES, yes, thanks
15:09:01 <Vorpal> ZOMGMODULES, do you have one for parsing ↓→? ;)
15:09:34 <ais523> <Vorpal> wikipedia: best reference on in-universe details for movies in existence. <-- I disagree, there's nearly always a specialist wiki that does better, and I generally seek it out when I need to know that sort of information
15:10:07 <elliott_> <ais523> I'm not entirely sure it's relevant to cheating on spouses, though
15:10:19 <Vorpal> ais523, well okay, but the joke was that wikipedia shouldn't really deal with that level of detail that it has
15:10:26 <ais523> <elliott_> For second, it suggests that his name is Dr. Who, which is patently false, it isn't, it's The Doctor (not "The Dr." that's ridiculous). <--- he was once actually called Doctor Who by a character in the series, but it's generally regarded to be a mistake
15:10:55 <Vorpal> ais523, the funny thing is that I was talking about the name of the series, not the name of the character
15:11:34 <elliott_> I never once contradicted that or believed otherwise.
15:11:36 <oklofok> what the fuck is dr who anyway?
15:11:41 <oklofok> i always assumed he's a rapper
15:11:50 <elliott_> you have got it completely right
15:12:37 <ais523> Vorpal: if you think Wikipedia is full of irrelevant in-universe speculation, you should see some of the more specific wikis
15:12:42 <oklofok> elliott_: you sound slightly sarcastific
15:12:45 <ZOMGMODULES> pastie's literate haskell synatx highlighting leaves something to be desired
15:12:48 <elliott_> ZOMGMODULES: ew, mingling whitespace skipping in with the rest of the parsing :)
15:12:54 <elliott_> THERE'S YOUR OPINION FOR THE MOMENT
15:13:03 <Vorpal> oklofok, actually it is a sci-fi TV series featuring a time traveling "police box" (which is a weird UK thingy looking a bit like an old style telephone booth)
15:13:31 <ais523> I recently found a page on Bulbapedia that was all about fan speculation as to which characters from Pokémon would be likely to have a romantic relationship if they ever met, which they hadn't
15:13:45 <ais523> most of the evidence was incredibly tenuous
15:13:52 <Vorpal> oklofok, if you google you will find elliott_ is the one trolling you
15:13:57 <elliott_> ais523: PETTY CONCERNS LIKE PLOT CANNOT GET IN THE WAY OF SHIPPING
15:14:04 <elliott_> oklofok: Google is communist lies.
15:14:07 <elliott_> oklofok: Don't believe the reptilian Jews.
15:14:09 <oklofok> Vorpal: better to live in a lie than have more time travel in my world
15:14:13 <elliott_> oklofok: Dr Who is the only true rapper out there.
15:14:23 <ais523> elliott_: it was more, that the only evidence that they had was that the characters were similar
15:14:40 <oklofok> what? what? i'm dr. who, and i'm here to do a check-up on you - woooo woooo
15:14:48 <Vorpal> elliott_, no the only true rapper would surely be MC Frontalot?
15:14:59 <elliott_> oklofok: Dr Who specialises in one-word rhymes.
15:15:07 <elliott_> Dr Who / Blue / Shoe / Flew / Out / The / Windoo
15:15:16 <ais523> only one of them was technically impossible (Kris was replaced by Lyra in an updated remake, they just renamed and restyled the main character of the game, which lead to Kris x Lyra shippings which makes no sense at all, as in it's not clear what it's even meant to mean)
15:15:54 <ais523> it'd be like shipping the Python 2 print statement and Python 3 print function
15:15:59 <oklofok> also don't you mean ... oot / thoo ...
15:16:02 <ais523> on the basis that they're similar
15:16:08 <ais523> (come to think of it, someone's probably already done that)
15:16:11 <elliott_> ais523: Yeah, I'm ... gonna do that now.
15:16:17 <Vorpal> are there any tools to generate parsers given BNF?
15:16:28 <elliott_> Vorpal: It's... called yacc...
15:16:35 <elliott_> `addquote <Vorpal> are there any tools to generate parsers given BNF? <Vorpal> that would be cool
15:16:36 <HackEgo> 414) <Vorpal> are there any tools to generate parsers given BNF? <Vorpal> that would be cool
15:16:36 <Vorpal> elliott_, that's not exactly BNF iirc
15:16:43 <Vorpal> elliott_, besides I meant for haskell
15:17:11 <oklofok> there's some stupid hacks on top of it
15:17:15 <Vorpal> elliott_, from what I remember yacc/bison does a superset of BNF
15:17:28 <oklofok> = stupid hacks on top of it
15:17:54 <Vorpal> ZOMGMODULES, maybe another day, but I don't want to reinvent the wheel
15:17:59 <ais523> you can, in yacc, more or less literally write BNF and get a parser
15:18:11 -!- hiato has quit (Ping timeout: 260 seconds).
15:18:12 <ais523> but it's not massively useful, as all you'll get is either a parse error or successful termination
15:18:18 <Vorpal> ais523, well it isn't exactly the same syntax, so it doesn't really count
15:18:23 -!- hiato has joined.
15:18:39 <ZOMGMODULES> data BNF x = Seq BNF BNF | Alt BNF BNF | Kleene BNF | Literal x
15:18:43 <ais523> the whole point of yacc is that you can add actions as well to actually make the parser do something
15:18:52 <ZOMGMODULES> then interpret that structure, calling Parsec to do the actual work
15:19:10 <Vorpal> ais523, well, is there yacc for haskell
15:19:16 <Vorpal> parsec looks annoying compared to yacc
15:19:26 <ais523> parsec's a lot simpler than yacc
15:19:31 <Vorpal> ais523, I mean, to use
15:19:39 <ais523> I imagine you could easily get a BNF->parsec compiler, though
15:19:45 <Vorpal> ais523, possibly because I know yacc but not parsec
15:19:53 <ais523> I know both, parsec is simpler
15:19:54 <elliott_> ais523: Augh, you've made me want to figure out the number of possible Homestuck ships out of utter morbid curiosity just so I can boggle at the combinatorial ridiculousness of the resulting number.
15:20:02 <Vorpal> ZOMGMODULES, I shall google yaskell, I assume you wouldn't have mentioned it unless it exists
15:20:03 <elliott_> Thankfully my desire to spend NO TIME ON DOING THAT WHATSOEVER outweighs the morbid curiosity.
15:20:03 <ais523> elliott_: 2^(number of characters)
15:20:12 <elliott_> ais523: That only applies if you have one type of romantic relationship.
15:20:14 <ZOMGMODULES> ais523: or a BNF interpreter, implemented using Parsec
15:20:22 <ais523> elliott_: I didn't say (number of characters)^2
15:20:36 <ais523> I assume people can come up with 0-person and 1-person ships
15:20:45 <ais523> because they've managed to come up with everything /else/
15:21:07 <elliott_> ais523: That would work for matespritship, but not moirallegiance, kismessisitude or auspisticism.
15:21:16 <elliott_> And the last involves three elements.
15:21:19 <elliott_> Do not want to think about this any further.
15:21:29 <ZOMGMODULES> Vorpal: Do not use it. Use Parsec. This is the wisdom of ZOMGMODULES.
15:21:43 <elliott_> `addquote <ZOMGMODULES> Vorpal: it's actually called Happy <ZOMGMODULES> Vorpal: Do not use it. Use Parsec. This is the wisdom of ZOMGMODULES.
15:21:44 <HackEgo> 414) <ZOMGMODULES> Vorpal: it's actually called Happy <ZOMGMODULES> Vorpal: Do not use it. Use Parsec. This is the wisdom of ZOMGMODULES.
15:21:47 <elliott_> ZOMGMODULES strongly discourages the use of happiness.
15:21:53 <Vorpal> ZOMGMODULES, so why do you hate yacc syntax?
15:21:56 <ZOMGMODULES> Also, protip: when saying phrases like "This is the wisdom of ZOMGMODULES" on IRC, you can tab-complete your own nick.
15:22:40 <oklofok> what the fuck is this homestuck thing anyway? i always assumed he was a rapper
15:22:41 <ais523> ZOMGMODULES: I've changed my nick just to be able to tab-complete a particular word before
15:22:58 <Vorpal> oklofok, a web comic :P
15:23:05 <ZOMGMODULES> Vorpal: I don't like the interleaving of BNF++ and C.
15:23:11 <Vorpal> oklofok, about... uh that's a bit compled
15:23:28 <elliott_> oklofok: Homestuck is a rapper.
15:23:35 <oklofok> yo they call me homestuck, i don't give no fuck
15:23:55 <Vorpal> <elliott_> He's the kismesis of Dr Who. <-- which quadrant was that, I forgot
15:24:21 <Vorpal> elliott_, and left or right side?
15:24:33 <elliott_> I am so glad my head contains this information.
15:24:53 <elliott_> SO GLAD THIS IS TAKING UP SPACE IN MY HEAD
15:24:55 <Vorpal> ais523, anyway homestuck allows more than one relationship at once so...
15:25:02 <Vorpal> ais523, yeah your logic doesn't work
15:25:44 <elliott_> ais523: To summarise in less infuriatingly unrevealing terms, there are three two-pairing types and one three-pairing type, so I'm fairly sure the actual total number is ridiculous.
15:25:59 <elliott_> Especially if you count every single soldier as a character which OBVIOUSLY you do.
15:26:05 <ZOMGMODULES> I think I'm gonna go join another channel now
15:26:08 <elliott_> These are things that logical people do.
15:26:13 <ais523> wait, there's a finite list of allowed sorts of ships?
15:26:18 <ais523> hmm, can we make an esolang out of this?
15:26:36 <ais523> you'd need to implement reproduction in order to make it TC, though, otherwise you'd only have finite storage
15:26:38 <elliott_> ais523: Don't make me try and explain troll romance. It's basically a gigantic ploy by Andrew Hussie to troll every single one of his readers by bullshitting them.
15:26:40 <Vorpal> elliott_, that only applies to the trolls though
15:26:57 <Phantom_Hoover> <elliott_> ais523: That would work for matespritship, but not moirallegiance, kismessisitude or auspisticism.
15:26:59 <elliott_> Vorpal: Moirallegiance probably still applies augh why am I humouring AH the bastard.
15:27:11 <elliott_> ZOMGMODULES: ISN'T THIS CHANNEL GREAT RIGHT NOW IT TOTALLY IS
15:27:17 <Vorpal> elliott_, that is... which quadrant?
15:27:27 <Phantom_Hoover> 4^|characters| is the absolute upper bound on relationships.
15:27:39 <elliott_> `addquote <oklofok> i hope that isn't child pornography <oklofok> whew <oklofok> equally cute tho, have to admit
15:27:41 <HackEgo> 415) <oklofok> i hope that isn't child pornography <oklofok> whew <oklofok> equally cute tho, have to admit
15:27:42 <Vorpal> elliott_, yes I didn't remember the names for it
15:28:44 <elliott_> Excellent channel-killing move by me there
15:28:48 <elliott_> I think we've officially hit rock-bottom
15:29:13 <ais523> I know I was once asked to kill a channel as people there didn't like the current conversation
15:29:25 <oklofok> that's a horrible catch phrase
15:29:26 <ais523> so I said "I mostly play Nintendo portables and Linux games", and that worked fine
15:29:30 <ais523> I doubt it'll work again, though
15:29:59 <Vorpal> ais523, what was the channel about? Not Nintendo portables and Linux games I guess?
15:30:04 <ais523> it was about gaming generally
15:30:07 <elliott_> it was [hash]luigiandalsonethack
15:30:24 <ais523> I'm not sure if even derailing a channel can cure me of my desire to be ontopic
15:30:37 <elliott_> ais523: Says the guy just talking about Pokemon shipping.
15:30:46 <Vorpal> elliott_, ah, I read that as "lugi" first what with the nintendo stuff, so the rest didn't parse for me
15:30:54 <cheater_> i've seen a girl with the biggest tits ever today, and she was skinny too
15:31:02 <ais523> elliott_: I still have a desire to be ontopic
15:31:08 <ais523> it's just kind-of hard in here
15:31:29 <ais523> elliott_: I don't think that's a standard whoosh circumstance
15:31:40 <ais523> it's more missing the syntax of the joke, than the semantics
15:31:45 * cheater_ tried killing the chat but didn't manage
15:32:48 <Vorpal> ais523, is there an ISO standard perhaps defining standard whoosh circumstance?
15:32:55 <ais523> Vorpal: I don't think so
15:34:31 -!- elliott_ has quit (Remote host closed the connection).
15:35:12 -!- elliott has joined.
15:35:23 <ais523> elliott: I was wondering if we'd scared you off
15:36:49 <ais523> hmm, I wonder if I'll be here forever
15:36:56 <ais523> even if I do prefer it when it's talking about esolangs
15:37:03 <oklofok> cheater_: my dick gets np-hard when i'm soaked in pee-space
15:37:05 <ais523> nowadays it's typically tolerable even when it isn't
15:37:25 <ZOMGMODULES> esolangs and off-colour complexity theory humour
15:37:31 <elliott> i plan to stick around here until i've been here long enough that nobody can come up with any excuse not to op me any more
15:37:49 <elliott> right after i laugh this off as a joke to get the final op bit of course
15:37:55 <ais523> isn't the excuse "this channel doesn't need any more ops"?
15:38:59 <elliott> ais523: Counter: "I'm so elder, people leave and never come back just because I tell them I'm banning them"
15:39:17 -!- SOLEIL has joined.
15:39:49 -!- SOLEIL has quit (Quit: MegaIRC v4.06 http://ironfist.at.tut.by).
15:40:11 <cheater_> oklofok: i heard pgraham was so good, he doesn't need viagra, because he's np-hard!
15:50:13 <elliott> ais523: OK I hate what I have become but I will say that Homestuck has at the very least over 6448 possible shippings.
15:50:24 <elliott> Counting only major characters.
15:50:31 <elliott> I'm going to go get drunk and shoot myself.
15:51:16 <ZOMGMODULES> It's not a *very* specific hate though, because I have only inferred what any of this is or means.
15:51:27 <ZOMGMODULES> And I wish no more knowledge of it than that.
15:52:49 <Sgeo> My aglets have short life spans
15:54:11 <elliott> BACK TO HOW UGLY THIS HASKELL CODE IS
15:56:17 -!- hagb4rd has joined.
15:58:28 <elliott> ZOMGMODULES: btw i agree re: pure's input is horrible
15:58:44 <elliott> assign a to gets and then evaluate a+a, it reads a line twice... augh
15:58:50 <elliott> i mean, i get the motivation but
16:01:48 <elliott> ais523: tehz's response at http://esolangs.org/wiki/Talk:Unparseable makes no sense, right?
16:01:52 <elliott> just checking it's not just me
16:03:26 <Vorpal> <Sgeo> My aglets have short life spans <-- why
16:03:30 <Phantom_Hoover> (foo)bar does foo, then bar, while (foo loop)bar does foo over and over again.
16:03:50 <Sgeo> I think it's because they tend to get stepped on. Not sure
16:04:04 <ZOMGMODULES> "Felix has the best everything of all languages." -- Felix home page
16:04:38 -!- hagb4rd has quit (Ping timeout: 246 seconds).
16:04:43 <Sgeo> But it's a real problem, it makes it impossible to keep my laces in without them, so I tend to walk around with my shoes undone. This wouldn't be a problem except for people always pointing it out
16:05:36 <ZOMGMODULES> re Unparseable, I could only make sense of "loop" if it means "block"
16:05:44 <Sgeo> ZOMGMODULES, except it doesn't actually say that
16:06:00 <ZOMGMODULES> Sgeo: do you think I would LIE about FELIX?
16:06:05 <Sgeo> "megathreadingng"? Really?
16:06:26 <ZOMGMODULES> Felix's home page and Falcon's home page are actually the same page
16:06:42 <Vorpal> <ZOMGMODULES> elliott: TRY FELIX NAO <-- every time people write "now" as "nao" I think of nethack.alt.org...
16:07:14 <ZOMGMODULES> "Felix provides the best contract programming system of any production language." if you want accuracy
16:07:26 <Vorpal> <Sgeo> But it's a real problem, it makes it impossible to keep my laces in without them, so I tend to walk around with my shoes undone. This wouldn't be a problem except for people always pointing it out <-- use shorter laces so you don't step on them
16:07:40 <ZOMGMODULES> but the stuff about how it's a scripting language that compiles to C++ to take advantage of ZOMGOPTOMIZATIONS also tickles me
16:08:19 <elliott> `addquote <ZOMGMODULES> Felix's home page and Falcon's home page are actually the same page
16:08:20 <ZOMGMODULES> scripting language. whole program analysis. together at last
16:08:21 <HackEgo> 416) <ZOMGMODULES> Felix's home page and Falcon's home page are actually the same page
16:08:34 <elliott> `addquote <ZOMGMODULES> scripting language. whole program analysis. together at last
16:08:36 <HackEgo> 417) <ZOMGMODULES> scripting language. whole program analysis. together at last
16:08:38 <Vorpal> <ZOMGMODULES> Felix's home page and Falcon's home page are actually the same page <-- that explains so much
16:09:02 <Phantom_Hoover> <Sgeo> I think it's because they tend to get stepped on. Not sure
16:09:27 <Vorpal> Phantom_Hoover, either that or he uses way too long ones
16:09:28 <Phantom_Hoover> The laces should be well off the ground, unless they're pointlessly long.
16:09:46 <ais523> <elliott> ais523: tehz's response at http://esolangs.org/wiki/Talk:Unparseable makes no sense, right? <--- it took me rather aback, I think loops in Unparseable are like Perl's degenerate loop {}, which iterates exactly once
16:10:04 <elliott> ais523: TehZ says something stupid?
16:10:10 <Sgeo> I want to say that sometimes I don't tie my shoes, even when those things aren't damaged, but I have shoes that I'd prefer in those circumstances
16:10:13 <ais523> and is only useful because it obeys loop control instructions like last and redo
16:10:14 * elliott takes his aback back where it came from
16:10:15 <Vorpal> ais523, that would surely make it sub-tc, unless there is another way to make an infinite loop
16:10:20 <Sgeo> So I'm not sure how they get damaged
16:10:20 <elliott> Sgeo: That's not answering PH's question
16:10:48 <Sgeo> Phantom_Hoover, I can tie my shoes just fine. Although I learned to do so a few years later than the other kids
16:10:49 <ais523> Vorpal: you can just to the equivalent of {redo;} from Perl
16:11:03 <Vorpal> ais523, I don't know much perl, what does redo do?
16:11:25 <ais523> goes back to the start of the loop, without checking the condition again (for any loop with conditions) or doing the for loop go-to-next-element bit
16:11:34 <ais523> basically, like gotoing a label just inside the loop
16:11:50 <Vorpal> ais523, so not exactly like continue; then?
16:12:04 <ais523> nope; Perl has next which is exactly like continue
16:12:07 <ais523> but it has redo as well, which isn't
16:12:23 <Vorpal> ais523, does perl have goto in the C sense=
16:12:49 <Vorpal> ZOMGMODULES, ugly but I get it
16:13:06 <ZOMGMODULES> Vorpal: it's like the opposite of Mouse's loop, which I actually like
16:13:29 <Vorpal> ZOMGMODULES, I'm not familiar with Mouse's loop
16:13:41 <ZOMGMODULES> I forget the syntax, but all loops are of the form: is while(1) { ... if (x) break; ... }
16:13:58 <Vorpal> ZOMGMODULES, that is also ugly :P
16:14:08 <Vorpal> the condition is there for a reason
16:14:24 <Vorpal> ZOMGMODULES, of course the proper way to do a loop is by tail recursion
16:14:38 <ZOMGMODULES> that is also the proper way to design a microprocessor
16:14:48 <Vorpal> ZOMGMODULES, tail recursion? hm
16:14:50 <ais523> Vorpal: Perl does have a C-style goto, but you aren't really supposed to use it
16:14:56 <elliott> tail recursion is just low-level iteration in disguise
16:14:56 <ais523> it also uses the goto keyword for tail-recursion
16:15:06 <elliott> in fact it's practically goto ;)
16:15:08 <ZOMGMODULES> that's the "good goto" in perl. i quite like that
16:15:19 <Vorpal> <elliott> tail recursion is just low-level iteration in disguise <-- yes
16:15:19 <elliott> ais523: asterisk tail calls
16:15:37 <ais523> it can do other sorts of tail calls too
16:15:46 <ais523> but tail recursion is the only time where you really get a gain from tail-calling
16:16:15 <ais523> well, the rest of the time, it just hurts O(1) in stack space
16:16:40 <elliott> <ais523> but tail recursion is the only time where you really get a gain from tail-calling
16:16:56 <elliott> with tail recursion, you can just replace it with a while one loop, basically
16:17:08 <elliott> with mutually recursive functions, tail calls are impossible to optimise locally
16:17:09 <ais523> ZOMGMODULES: that is tail recursion, by definition
16:17:19 <elliott> tail recursion is when you tail call yourself directly
16:17:21 <Vorpal> ZOMGMODULES, that is still tail recursion, but involving more than one function in the cycle?
16:17:23 <ais523> elliott: I consider mutual recursion purely via tailcalls to still be tail recursion
16:17:24 <ZOMGMODULES> mututally recursive tail recursion may or may not be recursion.
16:17:29 <ais523> so we're just using different terminology here, I fear
16:17:31 <elliott> ais523: then you are using a different definition to everyone else.
16:17:36 <ais523> also, does your computer have a numpad?
16:17:48 <elliott> ais523: Your definition isn't really useful because your definition of "tail call" becomes kind of pointless because "tail recursion" is the only real useful sense
16:18:00 <elliott> And you have no language to talk about the trivially-optimisable kind that Guido thinks are the only kind :)
16:18:03 <elliott> ais523: And no, it's a laptop.
16:18:05 <ais523> elliott: and that's exactly what I was been saying!
16:18:16 <ZOMGMODULES> still, tail calls w/o recursion may permit inlining, or something
16:18:26 <elliott> ais523: Then stop using a less universal language that nobody else is using :)
16:18:26 <Vorpal> <ais523> also, does your computer have a numpad? <-- yes my desktop does, by laptop doesn't, unless you count the useless one accessed with the Fn key
16:18:28 <ZOMGMODULES> which might lead to different cache behavior
16:18:31 <elliott> Less universal in that it can express less.
16:18:35 <ZOMGMODULES> which might lead to significant performance changes
16:18:44 <ais523> Vorpal: that response would have been correct if zzo38 had asked the question
16:18:47 <elliott> ZOMGMODULES: I'm still miffed Pure has modules.
16:18:54 <Vorpal> elliott, he never said a nick, so that isn't very clear
16:19:08 <ais523> because anything zzo38 says is, by default, out of context
16:19:10 <Vorpal> ais523, but yes your question seemed very zzoish in that context
16:19:48 <Vorpal> <elliott> It was perfectly clear. <-- nope
16:20:01 <Vorpal> (we can go on forever)
16:20:03 <ais523> who'd be miffed at something having modules?
16:20:08 <ais523> as long as you weren't forced to use them
16:20:09 <elliott> No, I assure you I can go on longer.
16:20:16 <Vorpal> elliott, no I said we, not I
16:20:28 <elliott> There is no way you have the same amount of patience for this I do.
16:20:37 <elliott> ZOMGMODULES: They're just a kludge for not having a good inliner :(
16:20:45 <ZOMGMODULES> And it's sort of an example of the non-design behind the language in general, for me
16:20:46 <ais523> elliott: I suppose the issue is that I've been dealing with my PhD, where any situation in which the same function can appear on the call stack has to be considered to be recursion
16:20:56 <ais523> *can appear twice or more on the call stack
16:20:56 <elliott> Strange how you know these are directed at you, I mentioned no nick
16:20:57 <Vorpal> elliott, anyway it wasn't clear to me
16:20:57 <ZOMGMODULES> I keep seeing things in it, and saying, "... why?"
16:21:09 <Vorpal> <elliott> Nope <-- hah I won!
16:21:17 <elliott> I contradicted myself immediately.
16:21:43 <Vorpal> ... yes indeed I did, and thats final
16:22:07 <Vorpal> elliott, so you agree that you disagree on this?
16:22:09 <ais523> elliott, Vorpal: sorry, I'm slow, I spent a while trying to work out the context for your latest stream of comments, and only recently realised that they weren't meant to have one
16:22:39 <elliott> quality of the channel is increasing already
16:23:05 <Vorpal> elliott, nope, and what was this about now again?
16:23:26 <Vorpal> <elliott> quality of the channel is increasing already <-- yes indeed
16:23:43 <Vorpal> ZOMGMODULES, no you don't!
16:23:55 <ZOMGMODULES> having said that, for whatever it's worth, yup
16:24:54 <Vorpal> anyway I have other things to do, *hits ctrl-c at /usr/bin/elliott*
16:25:01 <Vorpal> (god that would be a nice feature)
16:25:24 <Vorpal> ZOMGMODULES, then elliott did
16:25:39 <ZOMGMODULES> assertion has been redefined to mean apathy
16:25:45 <Vorpal> ZOMGMODULES, good idea
16:26:22 <ais523> that's a stupid conversation between you lot
16:26:39 <ZOMGMODULES> it's a lovely day for a stupid conversation
16:26:43 <Vorpal> <ais523> elliott, Vorpal: sorry, I'm slow, I spent a while trying to work out the context for your latest stream of comments, and only recently realised that they weren't meant to have one <-- so was that about this convo?
16:26:51 <ZOMGMODULES> it's also a stupid day for a lovely conversation
16:26:56 <ais523> Vorpal: you just made me literally facepalm
16:27:05 <ais523> although not very hard, as I'm at work
16:27:22 <Vorpal> elliott, yes indeed since that was redefined to mean lose
16:27:38 <Vorpal> <ZOMGMODULES> it's a lovely day for a stupid conversation <-- very true
16:28:28 <ZOMGMODULES> TDD is best when the failing tests you intially write are completely random and have no bearing on your requirements
16:28:50 <Vorpal> and lets drop the law of the excluded middle
16:29:12 <Vorpal> ZOMGMODULES, how familiar
16:30:11 <Vorpal> elliott, if you have time to do this convo, lets retarget your focus to computer components
16:30:24 <elliott> ZOMGMODULES: are you the guy who comments a lot on arcane sentiment btw
16:30:49 <Vorpal> elliott, well I'm off, have to do some stuff, deadline and such
16:30:52 <elliott> i'm waaaay too tired for that now anyway. you'd get a hideous monstrosity powered by hatred.
16:31:02 <elliott> maybe: you will get that anyway. perhaps.
16:38:49 -!- variable has quit (Ping timeout: 260 seconds).
16:39:28 -!- SgeoN1 has joined.
16:41:04 -!- SgeoN1 has quit (Read error: Connection reset by peer).
16:41:18 -!- SgeoN1 has joined.
16:44:42 -!- monqy has joined.
16:47:18 -!- cheater_ has quit (Ping timeout: 240 seconds).
16:47:38 -!- cheater_ has joined.
16:49:03 -!- ais523 has quit (Ping timeout: 276 seconds).
16:51:38 -!- ais523 has joined.
16:53:18 <ais523> elliott: Vorpal: got bored yet?
16:56:17 <Vorpal> <elliott> maybe: you will get that anyway. perhaps. <-- I will do a sanity check against some people I know :P
17:02:39 <elliott> May be the stupidest code I've ever written
17:03:50 <ais523> elliott: that isn't the whole expression, is it?
17:03:56 <ais523> presumably there's more after the do
17:04:15 <elliott> but it's irrelevant to the stupidity
17:04:29 <ais523> I suppose you could write it as _:_:_ -> do { ... }; _ -> reflect
17:04:35 <ais523> but I'm not sure that that's any less stupid
17:04:45 <elliott> if length ss < two then reflect else do
17:04:57 <ais523> that doesn't work on infinite lists
17:05:00 <ais523> whereas what you wrote does
17:05:02 <Deewiant> Which turns an O(1) algorithm into an O(n) algorithm
17:05:06 <ais523> also, it's O(n) rather than O(1)
17:05:33 <elliott> I'm like a hundred percent certain GHC can optimise that
17:05:46 <Deewiant> Optimizing it would change the semantics
17:05:51 <ais523> Deewiant: I was about to say that
17:06:00 <elliott> Deewiant: Does _|_ really count as semantics here
17:06:17 <elliott> Well sure, but that's gross.
17:06:29 <elliott> Anyway if Integer is lazy then it's fine.
17:06:43 <elliott> Hey, it's Int, the result can't be _|_ can it.
17:06:45 <ais523> it isn't, as far as I know
17:06:46 <elliott> It'll overflow eventually.
17:07:00 <ais523> and an overflow is also normally represented by bottom
17:07:03 <elliott> ais523: I think Integer's laziness is actually unspecified.
17:07:05 <Deewiant> compareLength :: [a] -> Int -> Ordering
17:07:05 <Deewiant> compareLength _ n | n < 0 = GT
17:07:08 <Deewiant> compareLength (_:as) n = compareLength as (n-1)
17:07:17 <ais523> Deewiant: standard library?
17:07:21 <elliott> Deewiant: Wow, no, I prefer the case statement.
17:07:30 <elliott> <Deewiant> compareLength _ n | n < 0 = GT
17:07:34 <elliott> Why would you ever pass a negative to that.
17:07:54 <ais523> elliott: in case it wasn't a constant
17:08:00 <Deewiant> I'd rather make it correct in case you do
17:08:10 -!- variable has joined.
17:08:17 <elliott> Deewiant: It should take a natural as the second argument
17:08:31 <ais523> elliott: but that's strictly less useful
17:08:42 <ais523> in fact, there's no real reason it couldn't take arbitrary reals (that could be notated in Haskell)
17:08:54 <elliott> And yes, there is; computable reals can't be compared like that.
17:08:55 <Deewiant> elliott: If you have lazy naturals, you can just use length
17:09:03 <elliott> Deewiant: I never said lazy naturals.
17:09:13 <elliott> The fact that Haskell doesn't come with an unsigned Natural type is a flaw. :)
17:09:31 <ais523> elliott: they can be compared if they happen not to be equal
17:09:48 <pikhq_> ais523: s/arbitrary/arbitrary computable/
17:09:48 <ais523> and if they are equal, the real must actually be an integer, and you know how to work with those too
17:10:01 <elliott> ais523: There's no way to determine it's an integer, though
17:10:02 <pikhq_> We are not not not dealing in uncomputable numbers here.
17:10:03 <ais523> pikhq_: that's why I had the disclaimer that they had to be expressible in Haskell
17:10:13 <elliott> <ais523> and if they are equal, the real must actually be an integer, and you know how to work with those too
17:10:22 <ais523> I was just feeling absurd
17:10:46 -!- ZOMGMODULES has quit (Ping timeout: 258 seconds).
17:10:51 <ais523> I'm just a bit annoyed in that I'm implementing an arbitrary-computable-reals library in hardware at the moment
17:10:51 <elliott> Man the ghc binary tarball is big.
17:10:53 <ais523> based on someone's paper
17:10:58 <ais523> more or less just to prove I can
17:11:13 <Vorpal> elliott, what are you doing in haskell atm?
17:11:46 <Vorpal> <ais523> I suppose you could write it as _:_:_ -> do { ... }; _ -> reflect <-- befunge?
17:12:23 <ais523> I guessed it was Befunge-related, but that was irrelevant to the question
17:12:41 <elliott> Deewiant: Hey, Vorpal wanted to know what's a nice regex library for Haskell, ISTR you using one once and telling me it was good
17:12:42 <pikhq_> *Wow*, freshmeat.net is still around.
17:12:54 <ais523> this channel is a great one for answering programming questions, because it tells you the answer before it asks you why you're trying to do what you're doing
17:12:56 <Vorpal> <elliott> [] -> reflect
17:12:56 <Vorpal> <elliott> [_] -> reflect
17:13:00 <Deewiant> Don't remember, maybe regex-tdfa
17:13:01 <ais523> rather than tell you you're trying something stupid
17:13:29 <ais523> elliott: isn't Parsec a nice regex library?
17:13:37 <ais523> regexes are special cases of parsers, after all
17:13:41 <olsner> well, doing normal stuff in stupid ways is normal here
17:13:44 <Vorpal> <ais523> this channel is a great one for answering programming questions, because it tells you the answer before it asks you why you're trying to do what you're doing <-- often that question follows though, but I guess that is fine
17:13:59 <ais523> indeed, but it's asked out of curiosity rather than alarm
17:13:59 <elliott> "How do I reassign the integer two in Python?" "Well, import ctypes, bind to the Python API, then use malloc to [...]" "OK, thanks" "Wait, why do you want to do this?" "BEST. IMPLEMENTATION. OF. FORTE. EVARRRRRRR"
17:14:04 <Vorpal> ais523, it has the downside however of sometimes telling you utterly complicated solutions
17:14:24 <ais523> Vorpal: that is, often, an upside
17:14:42 <Vorpal> ais523, at least if your goal is to have a goo laugh yes
17:14:51 <ais523> Vorpal: or just implement something in a suitably insane way
17:16:44 <ais523> hmm, now I'm wondering how tightly linked to Haskell Parsec is
17:17:13 <olsner> I think parsec exists for a bunch of languages other than haskell
17:17:23 <ais523> that's what I'd expect
17:17:48 <ais523> e.g. it's a monad but that really isn't a Haskell-exclusive concept, and it doesn't seem to require laziness
17:18:06 <ais523> so long as you have some other way to not call a function argument immediately (say, call-by-name, thunking by hand, etc)
17:18:25 <ais523> perhaps Unlambda would be a good lang to port it to
17:20:13 <elliott> theory: every meta-layer of a system must be as powerful as the system itself, or it will inevitably either grow to be as powerful in the most ugly way possible, or be useless
17:20:30 <elliott> compare: haskell's type system vs. epigram's, cpp vs. lisp macros
17:21:25 <elliott> what's the ubuntu package for opengl dev libraries again?
17:23:46 <Gregor> Thomas Reiser (born December 19, 1963) is an American former computer entrepreneur, owner of Namesys, the primary developer of the ReiserFS and Reiser4 computer filesystems, and convicted murderer. // best phrasing ever
17:23:48 <ais523> hmm, I can't find it with the typical searches
17:23:52 <ais523> even though I think I have it installed
17:24:24 <elliott> It's mesa or something I think
17:24:38 <ais523> elliott: mesa is the name of the impl, but I can't find the exact name of the package
17:25:35 <ais523> elliott: I think it might actually be that one
17:25:39 <ais523> despite the confusing description
17:26:00 <elliott> That seems to be a non-DRI thing though odfgjdofigjdfg
17:26:10 * elliott looks for an INSTALL in haskell platfomroermer
17:26:16 <elliott> http://www.vex.net/~trebla/haskell/haskell-platform.xhtml
17:26:20 <elliott> freeglut3-dev should grab it
17:26:51 <ais523> elliott: libgl1-mesa-swx11 appears to be for software rendering, -glx and -dri for hardware rendering, and -dev the dev libraries for both
17:26:54 <pikhq_> Perl's build system is positively amazing. Not in a *good* way, but still.
17:27:11 <ais523> pikhq_: have you seen gcc's?
17:27:22 <pikhq_> Perl's is much better.
17:27:32 <pikhq_> In that I know for a fact that humans still understand it.
17:27:45 <ais523> I still maintain C-INTERCAL's is the best autotools-based build system for any compiler
17:27:56 <ais523> mostly because hardly anyone understands autotools
17:27:58 <Vorpal> pikhq_, you mean it's crazy configure that can manually ask questions interactively?
17:28:04 <ais523> and I spent about a month learning
17:28:08 <elliott> ais523: btw, I had thoughts about implementing ai-make
17:28:10 <pikhq_> Vorpal: It's hand-written!
17:28:14 <ais523> elliott: ooh, go for it
17:28:16 <pikhq_> With a hand-written in-shell makefile generator!
17:28:19 <elliott> ais523: except that it'd actually generate an autoconf/Tup system, or similar
17:28:20 <ais523> also, where did the hyhon come from?
17:28:27 <elliott> ais523: but also save a file with all your answers and things it's inferred, so it could update them
17:28:38 <ais523> and it's OK for it to go via autoconf, if necessary
17:28:42 <elliott> ais523: (save things it's inferred so that it doesn't suddenly start thinking your program is a library without asking first)
17:29:12 <ais523> my hardware compiler currently doesn't distinguish between compiling programs and libraries
17:29:22 <elliott> ais523: I was thinking that for finding C libraries, it'd look at header files you include, figure out what Debian package they're in, and then find pkg-config or .so files that that package also has
17:29:26 <ais523> as you're going to have to write glue code anyway because hardware's kind-of useless if it doesn't have I/O
17:29:27 <elliott> And determine the relevant one
17:30:01 <ais523> I was planning to look for linker errors, then looking for libraries which exposed those symbols
17:30:24 <elliott> ais523: The idea is that it'd output autoconf checking code for those libraries, though
17:30:32 <elliott> So pkg-config is more "portable" in that sense
17:30:45 <ais523> you want ai-make to generate a build system that works on any computer
17:30:48 <ais523> not just the one you happen to be on?
17:30:52 <elliott> And looking for the Debian package which includes a header is probably a lot more efficient and less error-prone than scanning all your libraries
17:31:10 <ais523> well, you'd have a database of Debian packages by symbols the libraries they contain expose
17:31:11 <elliott> ais523: Then all we'd need is a build system generator generator.
17:31:19 <pikhq_> elliott: Minor issue: headers and .so files are in different packages.
17:31:19 <elliott> AKA, a compiled source generator generator generator.
17:31:33 <elliott> ais523: Still, symbols are more brittle than headers IMO
17:31:41 <ais523> I think they're less brittle
17:31:57 <elliott> Well, it could always do both :)
17:32:01 <ais523> as headers may cover multiple libraries, or vice versa
17:32:01 <Phantom_Hoover> http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc6/227721_10150189670889681_738479680_6991603_7524340_n.jpg
17:32:04 <ais523> both sounds like the best approach
17:32:34 <pikhq_> A word to anyone who dares to write an alternate configuration system: support the same damned variables as Autoconf. Believe it or not, the variables to let you override bits of the configuration logic are a *damned good idea*.
17:33:00 <elliott> ais523: incidentally, as pikhq_ found, autoconf and tup go really well together
17:33:13 <elliott> ais523: it's the most awesomest build system ever
17:33:16 <pikhq_> tup is a Make replacement that doesn't suck.
17:33:16 <elliott> the arrows go up, so it's fast
17:33:19 <ais523> and autoconf specifically, as opposed to autotools generally?
17:33:31 <elliott> automake is unnecessary, since tupfiles are fine to write by hand in the first place :)
17:33:33 <pikhq_> Well, autoheader could work with it as well.
17:33:35 <elliott> anyway, because tup has built-in support for configuration files with things like CFLAGS in
17:33:39 <elliott> and tracks dependencies on these variables
17:33:40 <ais523> I think automake is pretty incredible, but possibly unnecessary
17:33:45 <elliott> you can just have autoconf output one of those
17:33:46 <pikhq_> And libtool could as well if you're mad.
17:33:52 <elliott> rather than generate the actual build guts, which is hideous
17:33:58 <elliott> so it's literally just finding configuration variables
17:34:06 <ais523> incredible as in possibly not a good thing, but impressive nonetheless
17:34:10 <elliott> OK, the implementation details are still utterly broken and horrific in every way, but it's good
17:34:14 <elliott> in every other aspect, that is
17:34:24 <ais523> can tup handle things like yacc which output multiple files?
17:34:32 <pikhq_> ais523: Sure, just list 'em.
17:34:44 <pikhq_> : foo.y |> !yacc |> foo.c foo.h
17:34:47 <elliott> IIRC multiple-output is in an old experimental branch
17:34:49 <elliott> pikhq_: oh, does that actually work?
17:34:58 <elliott> Arguably, yacc doing that is a misfeature, anyway ;)
17:35:08 <pikhq_> elliott: The multiple-output experimental branch is for multiple *unmentioned* outputs.
17:35:11 <ais523> the other thing is that yacc actually outputs at fixed filenames
17:35:16 <pikhq_> elliott: For e.g. Java.
17:35:18 <ais523> which is also a misfeature
17:35:37 <ais523> but unless you include a reimplementation of yacc in your build system, one you have to work around
17:35:40 <pikhq_> (it generates a fuckton of .class files)
17:35:57 <ais523> (autotools has yl-wrapper, whose only purpose is to wrap yacc and lex in order to change their calling convention into something sane)
17:36:06 <elliott> ais523: anyway, the basic gist of tup is that it's log-time, rather than linear-time like make and everything else
17:36:23 <Phantom_Hoover> http://www.independent.co.uk/news/world/europe/british-woman-murdered-in-tenerife-2283687.html
17:36:29 <elliott> ais523: because it stores file -> things that depend on it in its graph, not output -> things it depends on
17:36:30 <pikhq_> ... Wait, wait, wait, yacc outputs at *fixed filenames*?
17:36:31 <ais523> hmm, I wonder if you could easily do what missing does, too
17:36:33 <Phantom_Hoover> "Everybody is shocked. It's a very safe area. You can usually go anywhere you want in the day or at night. This is really not normal."
17:36:43 <elliott> ais523: so it can go from things that changed, to things it needs to rebuild, directly
17:36:46 <elliott> whereas make has to traverse the whole graph
17:36:50 <ais523> I think bison probably has some way to override that
17:36:54 <pikhq_> That makes it just about impossible to handle parallel builds of two yacc sources.
17:36:57 <ais523> but yacc is really stupid
17:37:05 <ais523> only way is to do them in different directories
17:37:08 <elliott> ais523: also, it has a "rebuild every time any file changes with inotify" console thing, which is a killer feature :)
17:37:20 <pikhq_> Phantom_Hoover: Race condition!
17:37:24 <ais523> elliott: there has to be some way to combine that with flymake
17:37:29 <ais523> for an even more killer feature
17:38:03 <ais523> pikhq_: you can trivially avoid race conditions simply by replacing the scheduler
17:38:13 <elliott> ais523: well, it could probably work with flymake directly, with just some sort of wrapper to intercept the output
17:38:18 <ais523> come to think of it, I actually wanted to do that recently, just can't remember why
17:38:26 <ais523> possibly it's for the best
17:38:39 <ais523> it may have been in a hypothetical that wans't true, or even a dream
17:38:58 <pikhq_> elliott: BTW, I've found that it works a *bit* better to have autoconf generate a top-level Tuprules.tup.
17:40:02 <pikhq_> elliott: Slightly less of a pain than doing in Tuprules.tup "CFLAGS=@(CFLAGS)", so you can append to it for specific targets.
17:40:55 <pikhq_> Though, actually, it'd work better to just make the !cc rule support CFLAGS_%f.
17:42:38 <ais523> anyway, I had an idea for a language recently, where instead of defining types like you do in Haskell or OCaml, they get implicitly defined by switch or match statements
17:43:12 <ais523> e.g. you write match x with | A _ -> false | B _ -> true | C x -> x, and it's of type A 'a + B 'a + C bool
17:43:32 <ais523> I shouldn't really use two different variables of the same name in examples
17:46:23 <elliott> Mrrf, I wonder if MaybeT is really the best thing here
17:47:48 <elliott> Duplicate instance declarations:
17:47:48 <elliott> instance Monad m => Applicative (StateT s m)
17:47:48 <elliott> -- Defined at Shiro/Monad.hs:25:10-46
17:47:48 <elliott> instance (Functor m, Monad m) => Applicative (StateT s m)
17:47:48 <elliott> -- Defined in Control.Monad.Trans.State.Strict
17:49:12 <elliott> ais523: yes, but the common version is wrong
17:50:31 <ais523> is there an uncommon but correct version?
17:52:38 <ais523> now that makes me wonder why people don't use it
17:53:35 <Vorpal> <ais523> anyway, I had an idea for <ais523> anyway, I had an idea for a language recently, where instead of defining types like you do in Haskell or OCaml, they get implicitly defined by switch or match statementsa language recently, where instead of defining types like you do in Haskell or OCaml, they get implicitly defined by switch or match statements <-- nice
17:54:03 <ais523> mostly for compiler writing, where you want a parse-tree type with something like 100 slightly different variants
17:54:16 <ais523> which differ in the amount of extra info they carry along, what sort of nodes they have, etc
17:55:02 <elliott> <ais523> now that makes me wonder why people don't use it
17:55:05 <elliott> they do, when they need ListT
18:05:29 <Vorpal> elliott, btw for new computer: I need one serial port, or getting an usb converter that will work with TI Blacklink (which iirc is rather timing sensitive)
18:05:57 <ais523> elliott: I found myself rather wanting a Set monad in OCaml
18:06:01 <ais523> I just used List instead
18:06:09 <elliott> ais523: sets are only monads in haskell with an extended type class
18:06:25 <ais523> hmm, I don't know what that means
18:06:30 <Vorpal> elliott, well, is serial port hard to get hold of these days? I have no idea
18:08:54 <ais523> I like serial ports too, because they're simplest to interface to hardware you build yourself
18:09:10 <Vorpal> ais523, damn, do you think it will work with an usb converter, given the timing sensitivity?
18:09:22 <elliott> Motherboards will still have them I think :P
18:09:25 <Vorpal> ais523, anyway I meant on a desktop
18:09:35 <Vorpal> ais523, on a laptop I know it is near impossible
18:09:45 <ais523> Vorpal: I'm not sure, but it depends on what sort of clock rates you're talking about
18:09:46 <Vorpal> elliott, converter it is then, surely that is possible to get hold of?
18:09:57 <Vorpal> ais523, I don't know what baud rate it uses
18:09:59 <ais523> USB can manage really high clock rates, so the sensitivity might be small in comparison
18:10:08 <ais523> if you're measuring it in baud at all, though, you'll be fine
18:10:21 <ais523> baud rates go up to about 152000 bits/second, USB is much faster than that
18:11:09 <Vorpal> ais523, well since it goes over serial port it must be baud?
18:11:27 <Vorpal> ais523, besides baud is just number of symbols / second iirc
18:11:32 <ais523> Vorpal: it depends on if it's using the serial port as a serial port
18:11:37 <Vorpal> which works fine up to any value
18:11:40 <ais523> or whether it's just forcing it to act like a bunch of GPIOs
18:11:49 <Vorpal> ais523, hm, it could be the latter
18:11:56 <Vorpal> I wouldn't put it past it
18:12:03 <ais523> I've seen the latter quite a bit
18:12:24 <Vorpal> ais523, I seen that done to the parport too
18:12:39 <ais523> (in other news, I've heard you can actually get motherboards with GPIO ports, nowadays; I have no idea how people are meant to be able to get at them to actually use them as such, though
18:13:03 <Vorpal> ais523, presumably it isn't for the consumer market
18:13:30 <ais523> although, among the leet gamer market, I bet you could advertise them as a feature and they'd buy it just because it was a feature, not because it was relevant
18:14:24 <fizzie> The blacklink version uses the serial port as gpio pins to speak the TI link protocol directly to the calc.
18:14:40 <fizzie> But it's not really all that timing-sensitive.
18:15:05 <fizzie> At least it doesn't need to be; of course that might depend on the software.
18:16:07 <fizzie> The grey serial-cable variant includes electronics to translate so that it speaks the regular serial protocol to computer-side.
18:16:57 <ais523> bleh, way to go Wikipedia
18:17:09 <ais523> I was trying to check if humans had lymph nodes behind their ears
18:17:14 <ais523> and after reading the article, I still have no idea
18:18:12 <ais523> hmm, I think possibly they do, if I understand "sternocleidomastoid", and the sentence that contains it, correctly
18:19:40 <pikhq_> Good *God*. No-op build of Mozilla takes 20 minutes.
18:20:09 <Vorpal> <ais523> I was trying to check if humans had lymph nodes behind their ears <-- pretty sure they do
18:20:36 <Vorpal> ais523, but don't quote me on that
18:20:45 <ais523> there's some weird lump behind one of my ears, and I was looking for an explanation; I guessed it was most likely a lymph node, but didn't know if they were found there
18:20:57 <Vorpal> ais523, I get that when I have a cold sometimes
18:21:17 <ais523> pikhq_: is that the build system trying to prove to itself that nothing needs changing?
18:21:38 <pikhq_> As is necessary in almost all build systems.
18:22:00 <Vorpal> yes yes, we know you are a fan of tup
18:22:34 <Vorpal> pikhq_, how long does a full build of mozilla take?
18:23:04 <Vorpal> pikhq_, much longer I guess
18:23:22 <pikhq_> I seem to recall it being something like 40 minutes on Gentoo, though.
18:23:45 <Vorpal> pikhq_, so... half the time spent at checking if anything changed?
18:23:53 <Vorpal> something is seriously wrong
18:24:02 <Vorpal> pikhq_, make shouldn't be that bad if done correctly
18:24:19 <pikhq_> Vorpal: Recursive make fucks everything up.
18:24:49 <pikhq_> It's extensively common, actually.
18:24:53 <Vorpal> pikhq_, at least cmake generates non-recursive make :)
18:24:59 <pikhq_> Automake's documentation seems to still encourage it.
18:25:18 <Vorpal> pikhq_, cmake is better than automake in that aspect then
18:25:30 <elliott> Even non-recursive make fucks it up.
18:25:48 <pikhq_> elliott: Yeah, but recursive make fucks it up *more*.
18:25:58 <ais523> recursive make is a fundamentally broken concept
18:26:10 <ais523> and the hacks designed to make it slightly less broken still don't help much
18:26:52 <elliott> ais523: the tup paper has interesting things to say about recursive make ;D ;D ;D ;D
18:27:15 <ais523> elliott: you didn't even scarequote "interesting"
18:27:37 -!- SgeoN1 has quit (Read error: Connection reset by peer).
18:27:56 <elliott> ais523: They actually are interesting :)
18:28:00 <Vorpal> why would people ever use recursive make?
18:28:06 -!- SgeoN1 has joined.
18:28:16 <ais523> Vorpal: because it's easy at first
18:28:22 <elliott> Vorpal: because non-recursive make is difficult to write and maintain for very large projects
18:28:26 <elliott> this is because make is broken
18:28:38 <ais523> hmm, recursive make is the sort of thing that would easily fall into jwz quote territory
18:30:31 <pikhq_> Recursive make is even *worse* with parallel builds being common.
18:30:51 <pikhq_> The recursion has to be serialised.
18:31:25 <pikhq_> And it can still break.
18:31:35 <Vorpal> it is sad and quite shocking that last I looked make -j2 did not work on erlang runtime source
18:31:53 <Vorpal> it tried to compile erlang code before it built the erlang compiler iirc, or something like that
18:32:15 <pikhq_> There is one thing that make builds from a clean source necessary: incomplete knowledge of dependencies.
18:32:18 <Vorpal> okay, erlang was originally made to be distributed, not multi-core, but still
18:32:29 <pikhq_> And, surprise surprise, recursive make makes that inherent.
18:33:01 <elliott> pikhq_: make's failure to track dependencies on configuration variables also forces explicit clean builds
18:33:10 <pikhq_> elliott: Ah, right, true.
18:33:21 <Vorpal> <elliott> pikhq_: make's failure to track dependencies on configuration variables also forces explicit clean builds <-- does tup do that?
18:33:49 <pikhq_> Vorpal: It also tracks dependencies on build commands.
18:34:10 <Vorpal> pikhq_, I presume tup is out of source build by default. So I guess one could set up tup to auto-build with several different build targets?
18:34:31 <pikhq_> It doesn't really handle out-of-source build, actually.
18:34:41 <ais523> pikhq_: C-INTERCAL's build system manages a full circle, tracking dependencies on everything relevant, automatically
18:34:45 <Vorpal> pikhq_, tup is pretty useless to me until it does
18:34:47 <ais523> except, I think, the versions of autotools you have installed
18:35:03 <Vorpal> ais523, what about the linker?
18:35:03 <ais523> but, say, if you modify the build system, it rebuilds the build system
18:35:03 <pikhq_> It only tracks dependencies on files in the source tree.
18:35:16 -!- aloril has quit (Ping timeout: 250 seconds).
18:35:45 <Vorpal> pikhq_, well, to me tup would be useless as of now then, I often do multiple builds of stuff I develop, one for 32-bit, one for 64-bit, and various different config flags
18:35:50 <pikhq_> Otherwise, it'd actually have to check for changes over the *entire filesystem*.
18:35:55 <Vorpal> pikhq_, doing that in tree with multiple tress = terrible
18:36:09 <Vorpal> pikhq_, you would obviously specify a source tree and a destination tree
18:36:15 <Vorpal> so no that isn't required
18:36:26 <pikhq_> Though I think there is a branch of tup for supporting multiple build variants...
18:37:09 <Vorpal> tup while interesting doesn't really seem mature.
18:37:10 <ais523> `translate de en merkbefreit
18:37:17 -!- cheater666 has joined.
18:37:21 <Vorpal> ais523, translateto iirc
18:37:23 <ais523> I bet I've messed up the syntax there
18:37:26 <ais523> `translateto de en merkbefreit
18:37:34 <ais523> `translateto en de merkbefreit
18:37:42 <ais523> `translate merkbefreit
18:37:56 <elliott> <Vorpal> <elliott> pikhq_: make's failure to track dependencies on configuration variables also forces explicit clean builds <-- does tup do that?
18:37:58 <Vorpal> ais523, maybe try google translate web page, it is less confusing :D
18:38:11 <elliott> <Vorpal> pikhq_, I presume tup is out of source build by default. So I guess one could set up tup to auto-build with several different build targets?
18:38:12 <elliott> <Vorpal> pikhq_, well, to me tup would be useless as of now then, I often do multiple builds of stuff I develop, one for 32-bit, one for 64-bit, and various different config flags
18:38:21 <elliott> out of tree is the stupidest way to do it :)
18:38:22 <pikhq_> Vorpal: The other build systems, though mature, are *broken*.
18:38:23 <elliott> <Vorpal> tup while interesting doesn't really seem mature.
18:38:31 <elliott> it works fine for small-to-medium sized projects.
18:38:31 <ais523> that doesn't fit the context
18:38:44 <pikhq_> Literally fundamentally *broken*.
18:39:07 <ais523> I don't think make is fundamentally broken when used properly, although it's suboptimal
18:39:10 <Vorpal> <pikhq_> Vorpal: The other build systems, though mature, are *broken*. <-- sure, but I consider not doing multiple build variants, such as different compilers, from the same source a showstopper to myself
18:39:55 <Vorpal> elliott, so what do you suggest? A subdir builds/ with various named variants in it?
18:40:19 <ais523> Vorpal: the way C-INTERCAL does that is with multiple out of tree builds
18:40:34 <Vorpal> ais523, same as I do for cfunge.
18:40:35 <elliott> Vorpal: it's a directory per build in the variants system being worked on, IIRC
18:40:41 <elliott> I forget the exact details read the list :P
18:41:02 <Vorpal> ais523, ick doesn't use automake does it?
18:41:29 <cheater666> * Cannot join #esoteric-minecraft (You are banned).
18:41:29 <pikhq_> It's genuinely not *that* hard to make a Makefile that works with autoconf.
18:41:31 <cheater666> * Cannot join #esoteric-minecraft (You are banned).
18:41:33 <pikhq_> Just a lot of edgecases.
18:41:41 <ais523> Vorpal: it uses automake too
18:41:44 <ais523> but not the other parts of autotools
18:41:47 <Vorpal> ais523, ah, it didn't use to?
18:41:58 <pikhq_> ais523: Well, that is most of autotools.
18:42:09 <ais523> pikhq_: yep, it uses the two major parts but not any of the little ones
18:42:15 <ais523> other than aclocal, but that's needed for automake to work
18:42:35 <Vorpal> what are the small ones now again, libtool?
18:42:35 <pikhq_> autoheader is nothing but a nicety, libtool is revolting, I dunno about the others.
18:42:47 <Vorpal> pikhq_, what does autoheader do?
18:42:55 <pikhq_> It generates a config.h.in from configure.ac.
18:43:11 <Vorpal> oh, I thought autoconf did that
18:43:23 <ais523> but that's for generating the input to autoconf
18:43:29 <ais523> it's a build system generator generator
18:43:30 -!- mtve has quit (Ping timeout: 260 seconds).
18:43:32 <pikhq_> So, pretty much you don't use libtool.
18:43:39 <ais523> I used autoheader once, but no longer
18:43:40 <pikhq_> Which is simply right and proper.
18:43:44 <ais523> to work as a starting point
18:43:52 <Vorpal> pikhq_, what was the point of libtool
18:43:58 <Vorpal> or at least the intended point
18:43:59 <Phantom_Hoover> Gregor, how do you get the line-based links for glogbot?
18:44:06 <ais523> Vorpal: to build shared libraries in a vaguely portable way
18:44:11 <pikhq_> Vorpal: To abstract building libraries.
18:44:37 <Vorpal> pikhq_, so it deals with ELF .so vs. a.out .so vs. PE .dll?
18:44:40 <pikhq_> Doing that right would actually still be nice, but libtool is fundamentally the *wrong solution*.
18:44:54 -!- ais523_ has quit (Quit: Page closed).
18:45:04 <pikhq_> Vorpal: It does so by making a shell script wrapper for the compiler, linker, install, etc.
18:45:11 <Vorpal> pikhq_, exit windows then
18:45:20 <ais523> pikhq_: I haven't looked into how libtool works
18:45:27 <cheater666> elliott, PH hates me because you hate me, so no.
18:45:28 <pikhq_> ais523: It is a giant shell script.
18:45:40 <pikhq_> ais523: With some macros for automake and autoconf to run it.
18:45:51 <Vorpal> pikhq_, like configure then (giant shellscript)
18:45:59 <elliott> cheater666: He's the one that banned you and I have been unable to formulate a valid reason to reverse this ban, so your appeal channel is PH.
18:46:08 <Vorpal> pikhq_, what about autoconf itself
18:46:25 <pikhq_> autoconf is just a small shell script wrapper around M4.
18:46:26 <Vorpal> I mean as in /usr/bin/autoconf
18:46:40 <fizzie> The TI link protocol (to go back to that) is rather idiosyncratic, so I might mention it here. It's two-data-wire ("red" and "white") half-duplex bidirectional thing, both lines with pull-up resistors, so the line's high unless either end drives it down. To send a bit, one side drives one of the lines down (depending on the bit value) and waits for the other end to ack by driving the other line down; then the sender releases the first line, and finally the receiv
18:46:44 <cheater666> elliott: there's no appeal, just an anmerkung.
18:46:45 <ais523> pikhq_: not quite; autoconf is a shell script /generated by/ m4
18:46:50 <Vorpal> pikhq_, m4 seems horrible btw
18:46:53 <pikhq_> ais523: autoconf itself?
18:47:03 <elliott> cheater666: That's not my problem.
18:47:06 <Vorpal> $ wc -l /usr/bin/autoconf
18:47:19 <Vorpal> pikhq_, while not gigantic, I wouldn't call that small
18:47:23 <ais523> Vorpal: that probably doesn't count
18:47:31 <ais523> for me, /usr/bin/autoconf is a wrapper that picks a version of autoconf
18:47:42 <Vorpal> ais523, for me it doesn't seem to be
18:47:46 <cheater666> elliott: then, and in other moments too
18:47:46 <ais523> based on the version the file wants
18:47:59 <Vorpal> # Generated from autoconf.as by GNU Autoconf 2.65.
18:47:59 <Vorpal> # Generated from autoconf.in; do not edit by hand.
18:47:59 <ais523> $ wc -l /usr/bin/autoconf2.59
18:48:00 <ais523> 271 /usr/bin/autoconf2.59
18:48:10 <elliott> cheater666: Then I am not sure why you pasted that line twice.
18:48:26 -!- aloril has joined.
18:48:38 <Vorpal> ais523, I wonder which of those files it was really generated from
18:48:47 <Vorpal> ais523, maybe autoconf.as was generated from autoconf.in?
18:48:52 <ais523> Vorpal: it's obviously a two-stage generation
18:49:09 <ais523> anyway, for me, autoconf2.59 is a shell script with no "generated from" messages, but it /looks/ like it was autoconf-generated
18:49:15 <ais523> and all it does, apart from options, is run autom4te
18:49:23 <Vorpal> ais523, anyway I only have one autoconf here, not versioned variants
18:49:27 <ais523> which was "generated from autom4te.in"
18:49:36 <ais523> but is clearly written in Perl
18:49:37 <Vorpal> ais523, this is ubuntu 10.04
18:49:59 <elliott> we get what OS you use already
18:50:22 <ais523> so autoconf, for me, appears to be a shell script wrapper around a shell script wrapper around a Perl wrapper around m4
18:50:26 <ais523> two of which are autogenerated
18:50:35 <Vorpal> ais523, a perl wrapper? :D
18:50:53 <ais523> it's a bit more complex than a wrapper, actually
18:50:55 <Vorpal> ais523, be happy fork() is fast on linux!
18:51:04 <Vorpal> ais523, where did you find it?
18:51:06 <ais523> it's acting as a wrapper, but doing more than wrappers normally do
18:51:19 <ais523> where I normally look for executables
18:51:25 <Vorpal> ais523, my autoconf ends with: exec "$AUTOM4TE" "$@"
18:51:33 <ais523> Vorpal: indeed, so does mine
18:51:48 <Vorpal> /usr/bin/autom4te is indeed perl
18:52:25 <Vorpal> Phantom_Hoover, times out for me
18:52:44 <Vorpal> ais523, the perl thing seems to be the actual logic of the program
18:52:58 <Vorpal> ais523, it calls m4 on the .ac files and so on it seems
18:53:08 -!- KingOfKarlsruhe has joined.
18:53:17 <ais523> except the logic is mostly in the m4
18:53:19 <Vorpal> ais523, so I guess the perl one can be considerd the re-generating program proper
18:53:38 <Vorpal> handle_m4 ($req, keys %{$req->macro})
18:53:38 <Vorpal> if $force || ! $req->valid;
18:53:55 <Vorpal> and it's control flow weird
18:54:03 <ais523> that's just a reverse if
18:54:10 <Vorpal> ais523, but I don't like it
18:54:14 <ais523> is there any particular reason why the arguments to if shouldn't be the other way round?
18:54:15 <elliott> that's a terrible reverse if
18:54:19 <elliott> that's autoconf's fault, not perl's
18:54:29 <ais523> but yes, I agree that one would be clearer written the normal way round
18:54:55 <ais523> $force || !$req->valid and handle_m4 ($req, keys %{$req->macro})
18:55:07 <ais523> also, that second argument to handle_m4 is worrying
18:55:07 <Vorpal> ais523, that lacks the word "if"
18:55:17 <ais523> Vorpal: it uses "and", the forwards equivalent to if
18:55:20 <Vorpal> ais523, what does the second argument do
18:55:45 <ais523> it takes the property "macro" of $req, interprets it as a pointer to a hash, dereferences it, and takes the keys
18:55:53 <ais523> and I'm struggling to think that a well-defined system would find that operation useful
18:56:14 <Vorpal> my ($req, @macro) = @_;
18:56:23 <Vorpal> that I hate too with perl
18:56:31 <Vorpal> the mess it makes of parameters
18:57:01 <Vorpal> it complicates reading the source immensely to not force the parameter list to be in a specific place
18:57:17 <elliott> let's be honest, it's always on the first line of the function.
18:57:24 <Vorpal> elliott, most often yes
18:57:37 <fizzie> A sub with a prototype (the "($@)" bit), how modern.
18:57:39 <Vorpal> elliott, I seen it after an if case or such
18:57:47 <Vorpal> fizzie, yes that makes it worse
18:58:17 <Vorpal> elliott, I seen things like looking at the first argument to decide what to do with the next few arguments
18:58:33 <ais523> fizzie: prototypes in Perl are a bad idea for the same reason C++ operator overloading is a bad idea
18:58:34 <Vorpal> elliott, this wasn't in something like printf either
18:58:40 <ais523> they make it almost impossible to figure out what a given line of code does
18:58:46 <ais523> or in the case of Perl, in fact, how it parses
18:58:59 <Vorpal> ais523, shouldn't it help static analysis?
18:59:13 <fizzie> Yes, the fact that the prototypes affect parsing is quite horreeble.
18:59:18 <Vorpal> ais523, I must know how perl manages to fuck prototypes that badly
18:59:24 <fizzie> Parsing of all calls, that is.
18:59:27 <Vorpal> I dread the answer, but I need to know
18:59:35 <ais523> I think there's a pathological case somewhere where prototypes make the difference between a slash being interpreted as a division sign, or a regex delimeter
18:59:46 <Vorpal> ais523, ...................... wtf
19:00:03 <elliott> That's not surprising Vorpal
19:00:07 <ais523> at least without prototypes, calls are parsed consistently
19:00:15 <elliott> It is obvious given what prototypes are
19:00:21 <Vorpal> anyway here is the whole handle_m4 http://sprunge.us/RTES
19:00:24 <elliott> Honestly I wish people would pick on the actually perverse aspects of Perl
19:00:30 <elliott> I wish Vorpal would oh never mind
19:00:44 <ais523> but what prototypes are, are instructions to parse calls to the functions in a certain way
19:00:51 <Vorpal> ais523, can you tell me from that what it does to the second argument?
19:01:00 <Vorpal> elliott, anyway you could easily check it on your own system
19:01:32 <ais523> Vorpal: $@ tells it to keep the second argument as an array rather than decomposing the array into individual arguments
19:01:46 <Vorpal> ais523, that second argument was the one you found worrying above
19:01:53 <Vorpal> ais523, so can you explain why it does it now
19:02:01 <ais523> Vorpal: I already explained what it did
19:02:06 <ais523> I wasn't worried about its parsing
19:02:09 <Vorpal> ais523, yes but why I meant
19:02:18 <ais523> just that it expressed an operation that, although well-defined, I was scared was useful
19:02:30 <ais523> oh, you want me to read the entire source code just to explain one line?
19:02:47 <Vorpal> ais523, well that function is like 30 lines or so, probably less
19:02:52 <Vorpal> and most is a xsystem call
19:03:27 <ais523> Vorpal: it's not a built-in function
19:03:42 <ais523> my guess is it's a wrapper around system(), which is similar to C's system()
19:03:52 <Vorpal> ais523, it is called twice in that code, but not defined
19:04:07 <Vorpal> it seems to include stuff from /usr/share/autoconf
19:04:09 <ais523> it might be a library function
19:04:17 <ais523> from a library I don't have memorised
19:04:17 <Vorpal> use Autom4te::General;
19:04:22 <fizzie> An unbackslahed @ will just gobble all arguments and force list context; they still end up as separate elements in the @_ list, like they would in that call without prototypes.
19:05:10 <Vorpal> ais523, ah, xsystem is in /usr/share/autoconf/Autom4te/FileUtils.pm
19:05:37 <Vorpal> Same as C<system>, but fails on errors, and reports the C<@argv>
19:05:48 <Vorpal> or whatever it is called
19:06:52 <Vorpal> ais523, I'm scared, wc -l in /usr/share/autoconf/Autom4te/*.pm gives 3559 lines
19:07:09 <Vorpal> plus 1086 for /usr/bin/autom4te
19:07:19 <Vorpal> ais523, if most of the logic is in the m4 part... this is absurd
19:07:22 <ais523> it's typical for most programming languages of about that complexity, and programs of about that complexity
19:07:33 <ais523> Vorpal: it's mostly going to be stuff for dealing with files, directories, shells, etc
19:07:42 <ais523> as in, actually finding everything relevant and running it
19:07:44 <Vorpal> wc -l /usr/share/autoconf/autoconf/*.m4
19:07:49 <fizzie> Pod is the format/markup language; perldoc's the documentation-handling tool.
19:08:47 <ais523> to put it another way, perldoc is the program with which you process pod files
19:08:54 <ais523> which might contain interspersed Perl
19:09:05 <Vorpal> can I run it on the .pm file?
19:09:27 <Vorpal> # Some old m4's don't support m4exit. But they provide
19:09:27 <Vorpal> # equivalent functionality by core dumping because of the
19:09:27 <Vorpal> # long macros we define.
19:09:36 <Vorpal> that comment is so... absurd
19:10:50 <Vorpal> define([m4_undefine], defn([undefine]))
19:10:51 <Vorpal> m4_undefine([undefine])
19:10:57 <ais523> Vorpal: http://www.perlmonks.org/?node_id=663393
19:11:42 <ais523> oh, and that's just renaming the builtin undefine function
19:11:58 <Vorpal> ais523, I seen that proof btw
19:12:05 <Vorpal> ais523, it does the same for define and defn
19:12:07 <ais523> Vorpal: look at the bit about prototypes again
19:12:11 <Vorpal> I have no clue what defn is for
19:12:31 <ais523> obviously, defining m4_undefine in terms of undefine wouldn't work if you then redefined undefine
19:12:38 <ais523> instead, it's defined as the definition of undefine
19:12:43 <ais523> and yes, although I'm a bit rusty on the matter
19:12:48 <Vorpal> <ais523> instead, it's defined as the definition of undefine <-- augh
19:13:37 <ais523> Vorpal: what's so augh about htat?
19:14:18 <Vorpal> ais523, the logic of m4 I guess
19:14:45 <Vorpal> m4_define([m4_car], [[$1]])
19:14:45 <Vorpal> [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
19:14:45 <Vorpal> [m4_dquote(m4_shift($@))])])
19:14:50 <Vorpal> elliott, is that elegant too?
19:14:54 <ais523> also, the m4 definition of # is beautifully insane
19:15:00 <ais523> it doesn't actually introduce a comment, like you might think
19:15:08 <ais523> instead, it causes the entire line to be copied literally, including the #
19:15:15 <Vorpal> ais523, I know, it uses del or something for that iirc?
19:15:26 <ais523> it means "discard newline"
19:15:31 <ais523> but it also discards everything in between too
19:15:33 <Vorpal> ais523, what about # then
19:15:43 <ais523> # doesn't mean "discard newline"
19:15:46 <ais523> I said what it did earlier
19:16:08 <ais523> there are various other things that don't mean "discard newline", too
19:16:21 <ais523> in fact, quite a lot of things don't
19:16:50 <Vorpal> elliott, is this also perfectly readable? http://sprunge.us/OZgU
19:17:16 <ais523> Vorpal: that's not really very bad at all
19:17:29 <ais523> it's just fully parenthesized
19:17:42 <ais523> the really bad things are the bits which use multiple levels of quoting
19:18:29 <Vorpal> ais523, what paradigm is m4?
19:18:44 <ais523> Vorpal: it's like cpp taken to the extreme
19:18:47 <Vorpal> I see several functional functions defined by helper stuff to autoconf
19:18:55 <Vorpal> there is a map here for example
19:19:52 <Vorpal> m4_define([_m4_foreach],
19:19:53 <Vorpal> [m4_pushdef([_m4_f], _m4_for([4], [$#], [1],
19:19:53 <Vorpal> [$0_([1], [2],], [)])[_m4_popdef([_m4_f])])_m4_f($@)])])
19:19:53 <Vorpal> m4_define([_m4_foreach_],
19:19:58 <ais523> it's basically based on substitution, and it's easy to go functional from there
19:20:12 <ais523> yep, that's a better example of m4 insanity
19:20:19 <Vorpal> ais523, what does it do
19:20:26 <ais523> the amount of quoting shenanigans going on there is making my headhurt vaguely
19:20:38 <ais523> vaguely knowing m4 isn't enough to actually be able to /read/ it
19:20:39 <elliott> <Vorpal> elliott, is this also perfectly readable? http://sprunge.us/OZgU
19:20:47 <elliott> Are control structure implementations ever pretty
19:21:09 <Vorpal> elliott, see the short example I pasted inline
19:21:36 <ais523> the example pasted inline is much more insane than either of the other two things you pasted
19:21:50 <Vorpal> elliott, ais523 take m4_case then: http://sprunge.us/ddHj
19:22:11 <Vorpal> ais523, please rate insanity of it
19:22:20 -!- SgeoN1 has quit (Read error: Connection reset by peer).
19:22:30 <ais523> it's [[$$1[$$3]$$2[]]] that really got me going "wtf" internally
19:22:49 <Vorpal> ais523, any clue what that bit could possibly mean?
19:23:00 <ais523> it looks like it's a doubly-quoted or triply-quoted something
19:23:09 <ais523> designed to unquote at different stages
19:23:19 <ais523> sort-of like the stuff people get up to in ///
19:23:24 <Vorpal> ais523, what about the [] stuff there?
19:23:32 <ais523> [] is what autoconf redefines quotes to
19:23:46 <ais523> it's `' by default, but those are really bad quotes to have if you want to mess around with shellscript
19:23:50 <Vorpal> ais523, no I meant the specific empty [] in what I pasted
19:23:59 <ais523> it's part of the reason I'm so confused
19:24:12 <ais523> ah, perhaps it's to stop the text generated by unquoting twice merging with the next token
19:24:21 <Vorpal> ais523, [] interfers with if [ "$x" -eq 5 ] and so on though
19:24:41 <ais523> test is used rather than [] everywhere in autoconf just to avoid clashing with the quote marks
19:24:51 <ais523> I think [] were chosen as they match and aren't really necessary in shellscript
19:25:00 <Vorpal> m4_define([_m4_map_args_pair__],
19:25:00 <Vorpal> [[$$1([$$2], [$$3])[]]])
19:25:00 <Vorpal> m4_define([_m4_map_args_pair_end],
19:25:00 <Vorpal> [m4_if(m4_eval([$3 & 1]), [1], [[m4_default([$$2], [$$1])([$$3])[]]])])
19:25:03 <Vorpal> ais523, what about those?
19:25:22 <ais523> Vorpal: has this become a session of "paste random m4 and rate its insanity levels"?
19:25:28 <ais523> as that isn't a massively interesting game, really
19:25:46 <Vorpal> ais523, but yeah m4 seems quite insane indeed
19:26:22 <Vorpal> ais523, it gets more boring in the higher level layers of autoconf btw
19:26:39 <Vorpal> mostly it is the stuff I can read from .ac files
19:27:26 <Vorpal> ais523, the stuff you write in aclocal.ac/configure.ac isn't really m4, it is a language defined in m4 by prepending a crapload of definitions. Am I right?
19:27:39 <Vorpal> also... /usr/share/autoconf/autoconf/erlang.m4 this scares me
19:28:06 <Vorpal> why does autoconf have stuff to deal with c, fortran and erlang
19:28:11 <Vorpal> I guess c++ stuff is in the c one
19:28:17 <ais523> Vorpal: it is m4, but with good libraries
19:28:23 <ais523> sometimes you write more or less directly in m4, or in sh
19:28:33 <ais523> it's basically sh preprocessed by m4
19:28:37 <Vorpal> ais523, mostly sh + autoconf for what I done
19:29:50 <Vorpal> ais523, I think that they tried literate m4 (except with # at start of lines) in one file... It features a nicely numbered TOC
19:30:15 <ais523> someone go write a file in literate cpp
19:30:19 <Vorpal> ais523, though the effort ends about halfway, where it seems quite non-literate after that
19:31:02 <Vorpal> hm a number of files has TOCs, but only one seems to start off in literate style
19:31:47 <cheater666> i expect zzo to come up with literate phpini
19:31:50 <Vorpal> ouch this embedded sed script is horrible to read
19:31:57 <Vorpal> what with all the escaping
19:32:21 <Vorpal> ais523, btw you don't need ` in shell script, $() is much more readable anyway
19:32:38 <ais523> autoconf is written in /portable/ sh
19:32:43 <Vorpal> ais523, it is POSIX however
19:32:46 <ais523> to everything but csh/tcsh, as those two are completely irredemable
19:32:57 <ais523> Vorpal: if you insisted on POSIX, you wouldn't need autoconf in the first place
19:33:02 <ais523> insisting on POSIX is missing the point entirely
19:33:42 <Vorpal> ais523, actually, vxworks is certified posix, considering that, I think one might need autoconf :P
19:34:16 <Vorpal> I doubt they renewed that
19:34:31 <Vorpal> ais523, so one still needs autoconf then
19:40:53 -!- ais523 has quit (Remote host closed the connection).
19:41:56 -!- hiato has quit (Ping timeout: 252 seconds).
19:42:19 -!- hiato has joined.
19:42:41 -!- pikhq_ has quit (Ping timeout: 246 seconds).
19:42:46 -!- pikhq has joined.
20:12:48 <elliott> textify :: ByteString -> ByteString
20:12:48 <elliott> textify = B8.unlines . reverse . takeWhile (/= B.empty) . reverse . map (fst . B.spanEnd (== space)) . B8.lines
20:12:52 <elliott> The kind of composition dreams are made of.
20:15:13 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.86.1 [Firefox 3.6.17/20110420140830]).
20:18:50 <Vorpal> :i Handle lists GHC.MVar.MVar GHC.IO.Handle.Types.Handle__
20:19:02 <Vorpal> :i GHC.MVar.MVar GHC.IO.Handle.Types.Handle__ is too wide for the screen to display
20:19:14 <Vorpal> (:t GHC.MVar.MVar GHC.IO.Handle.Types.Handle__ can be displayed however)
20:19:26 <Vorpal> wait, that was just an error
20:19:32 <Vorpal> but :i GHC.MVar.MVar GHC.IO.Handle.Types.Handle__
20:19:37 <Vorpal> goes outside my terminal width
20:19:52 <Vorpal> elliott, looking at types
20:20:34 <Vorpal> elliott, but come on this is silly: http://sprunge.us/iQZV
20:21:16 <Vorpal> elliott, don't you agree that side scrolling is absurd
20:21:34 <Vorpal> I can't even read that type
20:21:38 <Vorpal> elliott, what does ! in there mean
20:21:52 <Vorpal> as in !dev -> GHC.IO.Handle.Types.HandleType [...]
20:21:56 <cheater666> Vorpal, i find the indenting annoying in haskell
20:22:10 <elliott> You're not meant to understand that.
20:22:19 <elliott> I think a lot of type synonyms got together to produce that type.
20:22:42 <elliott> Yeah no that type is just insanely fucked, wow.
20:22:46 <Vorpal> elliott, what about the foreach thingy in it
20:23:05 <elliott> There's a forall, that's just universal quantification, usually implicit
20:23:13 <elliott> (a -> a) == (forall a. a -> a)
20:23:14 <Vorpal> elliott, yeah why isn't it implicit here
20:23:35 <Vorpal> isn't that an extension?
20:23:46 <elliott> They can do whatever they like.
20:23:52 <elliott> This is what you get for poking around. :p
20:24:08 <Vorpal> elliott, anyway how does the ! strictness annotation work?
20:24:19 <elliott> It simply means that the constructor argument is evaluated strictly.
20:24:27 <elliott> myCons x y z = y `seq` RealCons x y z
20:24:36 <elliott> data Foo = RealCons x [exclamation mark]y z
20:24:43 <elliott> except that you could just use RealCons directly
20:24:52 <elliott> and that's just that for GADTs
20:24:56 <Vorpal> elliott, ah, but will it have any effect if I put ! on a type signature of myself?
20:25:07 <elliott> Constructor signature, yes.
20:25:15 <elliott> Which you only find in GADTs.
20:25:23 <elliott> Normally you'd just put it before the field name in regular old ADT syntax.
20:25:53 <Vorpal> elliott, anyway that thing is badly fucked
20:26:10 <elliott> It just uses a lot of type synonyms.
20:26:20 <elliott> It's like decompiling the type.
20:26:27 <elliott> Or don't, because it won't make any more sense.
20:26:54 <Vorpal> don't* even know where the source is
20:26:59 <Vorpal> not on this system anyway
20:27:20 <elliott> Or apt-get source ghc[six]
20:27:22 <Vorpal> elliott, I meant... "presumably it is in some weird runtime internal part of it"
20:27:42 <elliott> No, that'll just be in the low-level library part thing.
20:27:48 <elliott> I mean, christ, IO is defined in Haskell.
20:27:57 <Vorpal> elliott, oh, I thought GHC.foo was runtime stuff?
20:28:03 <Vorpal> elliott, what parts *are* in C then
20:28:36 <elliott> It may actually be internal in GHC.
20:28:43 <elliott> It doesn't need to be if you have bang patterns, though.
20:29:03 <Vorpal> elliott, anyway, which stuff would be in pure C, certainly (+) for Int I guess?
20:29:42 <elliott> No, I'd expect that to be in the compiler backend...
20:30:02 <Vorpal> elliott, so which functions are in the ever-elusive RTS?
20:30:15 <elliott> I don't think you understand what the RTS is.
20:30:32 <Vorpal> the ffi I guess is in the compiler backend
20:30:49 <Vorpal> elliott, so the RTS is just the GC? Nothing else?
20:31:16 <Vorpal> elliott, you told me not to above!
20:31:25 <elliott> I said it wouldn't make any more sense.
20:31:35 <elliott> http://www.haskell.org/ghc/dist/7.0.3/ghc-7.0.3-src.tar.bz2
20:32:27 <elliott> The rts/ directory may be relevant. :p
20:32:35 <elliott> And not a line of Haskell in site.
20:33:13 <Vorpal> elliott, did you mean in sight?
20:33:35 <Vorpal> elliott, one last question tonight (excluding possible follow up questions): at which level does IO (as in getline and so on) leave the world of haskell and enter the realm of C? Does it use the ffi perhaps? Or does it use special compiler support?
20:33:50 <elliott> The question is incoherent.
20:34:13 <elliott> In that I simply do not understand it and suspect your understanding of things is wrong in a way that I can't describe.
20:34:53 <Vorpal> elliott, basically when getLine for example is evaluated in main, at some point it must translate into a call to for example the read() syscall
20:35:07 <Vorpal> after various buffering and so on
20:35:17 <Vorpal> elliott, are you with me so far?
20:35:31 <elliott> I really think source diving is the best idea here.
20:35:34 <elliott> I'm not the best explainer.
20:35:42 <Vorpal> elliott, but do you know the answer?
20:36:01 <elliott> I know basically how it works; not the low-level details, but I'm fairly sure I have a semi-decent grasp on that part.
20:36:11 <elliott> Note that the libraries folder contains "low-level" Haskell stuff too.
20:37:03 <Vorpal> elliott, anyway the question is really quite simple: how does a call to getLine leave the world of 100% haskell and call libc? Does it do it through the FFI stuff of haskell or is it done in some other way?
20:37:50 <Vorpal> elliott, was that RTS = RunTimeSystem? Or RTS = Read The Source?
20:38:38 <Vorpal> elliott, hm weird they don't simply use the FFI, that seems neater somehow
20:38:56 <elliott> Since the FFI has to leave magic-Haskell-land too.
20:39:06 <elliott> And why would GHC tie itself to C's API?
20:39:49 <Vorpal> elliott, well yes, but if this used the FFI that would mean a more unified way to do it, but I guess if you want to port it to platforms without a standard library it makes sense to put it in the RTS
20:40:28 <Vorpal> now I want to see ghc on bare metal :D
20:40:45 <elliott> http://programatica.cs.pdx.edu/House/
20:43:01 <elliott> newtype IO a = IO (State# RealWorld -> (# State# RealWorld, a #))
20:43:13 <elliott> (libraries/ghc-prim/GHC/Types.hs)
20:43:26 <elliott> Vorpal: It's this magic thing.
20:43:26 <Vorpal> and uh what is the lone # there
20:43:29 <elliott> It's used for both IO and ST.
20:43:44 <elliott> i.e. equivalent to just pushing two things on the stack.
20:43:57 <Vorpal> elliott, I'm a bit surprised haskell allows that
20:43:57 <elliott> It's basically a glorified messed up unboxed strictstate monad.
20:44:22 <Vorpal> elliott, so a language extension, presumably considered unsafe too?
20:44:34 <elliott> But yes, it's an extension.
20:44:48 <Vorpal> elliott, doesn't the compiler automatically try to unbox stuff iirc?
20:45:31 <Vorpal> easy to optimise some stuff that way
20:45:46 <elliott> But not zealously because that would be dumb.
20:45:54 <elliott> unsafePerformIO :: IO a -> a
20:45:54 <elliott> unsafePerformIO m = unsafeDupablePerformIO (noDuplicate >> m)
20:45:54 <elliott> {-# NOINLINE unsafeDupablePerformIO #-}
20:45:54 <elliott> unsafeDupablePerformIO :: IO a -> a
20:45:54 <elliott> unsafeDupablePerformIO (IO m) = lazy (case m realWorld# of (# _, r #) -> r)
20:46:02 <elliott> noDuplicate = IO $ \s -> case noDuplicate# s of s' -> (# s', () #)
20:46:40 <elliott> This version of 'unsafePerformIO' is slightly more efficient,
20:46:40 <elliott> because it omits the check that the IO is only being performed by a
20:46:40 <elliott> single thread. Hence, when you write 'unsafeDupablePerformIO',
20:46:40 <elliott> there is a possibility that the IO action may be performed multiple
20:46:40 <elliott> times (on a multiprocessor), and you should therefore ensure that
20:46:40 <elliott> it gives the same results each time.
20:46:56 <elliott> noDuplicate just does magic to prevent that.
20:47:15 <Vorpal> elliott, what is that lazy function?
20:47:50 <elliott> It's even IN THE DAMN MANUAL.
20:48:09 <Vorpal> elliott, I tried :i lazy in ghci, but I guess it is in a different package
20:48:44 <elliott> Well, it might be but it doesn't act like one.
20:48:57 <Vorpal> elliott, so where is it then, haskell.org times out for me atm...
20:49:10 <elliott> I'm finding it in the quagmire that is the manual.
20:50:07 <elliott> Vorpal: http://www.haskell.org/ghc/docs/7.0.3/html/libraries/base-4.3.1.0/GHC-Exts.html#g:7
20:50:30 -!- invariable has joined.
20:50:36 -!- variable has quit (Quit: /dev/io failed).
20:50:45 -!- invariable has changed nick to variable.
20:50:46 <Vorpal> I wonder why it is so slow today
20:51:19 <Vorpal> elliott, huh, "it is lazy in its first argument, even though its semantics is strict." what does that even mean
20:52:22 <elliott> (I# x) `plusInt` (I# y) = I# (x +# y)
20:52:24 <elliott> WELL THAT EXPLAINS IT THEN
20:52:40 <elliott> (+#) :: Int# -> Int# -> Int#
20:52:44 <elliott> I HAVE A FEELING THIS WAS ADDED JUST FOR HADDOCK
20:52:54 <elliott> This is a generated file (generated by genprimopcode).
20:52:54 <elliott> It is not code to actually be used. Its only purpose is to be
20:53:18 <Vorpal> elliott, elliott where is the plusInt stuff from?
20:53:48 -!- mtve has joined.
20:54:24 <elliott> plusInteger :: Integer -> Integer -> Integer
20:54:25 <elliott> plusInteger i1@(S# i) i2@(S# j) = case addIntC# i j of
20:54:25 <elliott> else plusInteger (toBig i1) (toBig i2)
20:54:27 <elliott> plusInteger i1@(J# _ _) i2@(S# _) = plusInteger i1 (toBig i2)
20:54:29 <elliott> plusInteger i1@(S# _) i2@(J# _ _) = plusInteger (toBig i1) i2
20:54:31 <elliott> plusInteger (J# s1 d1) (J# s2 d2) = case plusInteger# s1 d1 s2 d2 of
20:54:59 <Vorpal> elliott, I like +#, I wonder what that does
20:55:01 <elliott> Heh -- GHC.Integer.GMP.Internals uses the FFI.
20:55:07 <elliott> foreign import prim "integer_cmm_plusIntegerzh" plusInteger#
20:55:08 <elliott> :: Int# -> ByteArray# -> Int# -> ByteArray# -> (# Int#, ByteArray# #)
20:55:13 <elliott> Vorpal: Adds unboxed ints.
20:56:08 <elliott> Seems I lied; GHC doesn't default to utf-eight, it determines it based on the locale.
20:56:59 <Vorpal> oh yeah for the doc gen
20:57:23 <Vorpal> elliott, that is a weird placeholder
20:57:39 <elliott> It's just "fix id" without any dependencies :P
20:58:23 <Vorpal> elliott, couldn't they simply make it (+#) = x or some such?
20:59:25 <Vorpal> elliott, anyway, night
20:59:29 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
21:03:53 -!- ajf|offline has changed nick to ajf.
21:13:20 <Sgeo> LispIDE fails in the same way as newLISP-GS
21:15:15 <elliott> if the issue all along has been taht you fail at emacs bindings
21:16:13 <Sgeo> Ctrl-J does nothing in newLISP-GS, and does newline but not indent in LispIDE
21:16:53 <Sgeo> (I have no problems with how emacs indents, although I didn't know about C-j
21:17:48 <monqy> have you tried not using newLISP-GS or LispIDE
21:17:59 <Sgeo> elliott, yes.. it tabs. Unintelligently
21:18:03 <Sgeo> I want intelligent tabbing
21:18:25 <Sgeo> monqy, but it's just so tempting to try something other than emacs... but everything sucks
21:18:34 <elliott> emacs is rad you should use emacs
21:18:41 <Sgeo> Phantom_Hoover, IDE that newLISP comes with
21:18:57 <monqy> emacs is probably cool too but I'm not good at the keybindings
21:18:57 <elliott> as is something that isn't either
21:19:06 <elliott> Phantom_Hoover: ill leave YOUR exams
21:19:23 <Sgeo> I should probably try to get Racket working in emacs
21:19:34 <Sgeo> But doing that would mean breaking my reliance on Lispboxen
21:19:48 <Sgeo> Racket or Chicken
21:20:18 <Sgeo> monqy, I played with ClojureBox a while ago, and am now playing with LispBox. It's a Lisp packaged together with emacs
21:20:56 <Sgeo> It itself isn't a Lisp. It comes with Clozure Common Lisp
21:21:11 <monqy> is that a good lisp
21:21:22 <Sgeo> monqy, I'm not CL-savvy enough to compare CLs
21:27:55 <Phantom_Hoover> (I was *going* to suggest using SBCL with manually-configured SLIME like normal people, but you clearly can't use SBCL and your Emacs setup is not something I want to think about right now.)
21:28:18 <Sgeo> There's a Windows port of SBCL
21:32:32 <monqy> try not using windows
21:48:37 <augur> any dutch people in here?
21:49:53 <augur> WHY ARE YOU ALWAYS JUDGING ME
22:09:59 -!- augur has quit (Remote host closed the connection).
22:12:24 -!- zzo38 has joined.
22:18:23 -!- hiato has quit (Ping timeout: 248 seconds).
22:20:34 <Phantom_Hoover> Since I stopped following Dresden Codak, the latest arc still hasn't pulled itself out of single digits.
22:23:45 <Phantom_Hoover> In the 3 months or so since I stopped reading, there have been a whole two comics.
22:25:31 <pikhq> Ever since making the comic full-time, his update schedule has *dropped*.
22:25:45 <pikhq> Yes, THIS IS HIS DAY JOB.
22:27:21 <pikhq> Phantom_Hoover: Dresden Codak *is his day job*.
22:28:16 <pikhq> Not really. You have to actually have something that appeals to them. Which isn't as easy at it seems.
22:28:24 <pikhq> However, with that accomplished, you're getting fucktons.
22:29:08 <pikhq> Be OCD about the art.
22:30:12 <Phantom_Hoover> Clearly, since the plots and characters are paper-thin.
22:30:26 -!- hiato has joined.
22:30:54 <pikhq> It *does* show that he is used to writing one-offs.
22:31:59 <pikhq> His plots and characters are perfectly fleshed out for that context. His longer plot(s?) seem to really push it, though.
22:33:42 <pikhq> They help, though. Only minimal development is needed on them, though.
22:35:36 <Phantom_Hoover> I would debate whether the caricatures developed by one-offs really count as characters.
22:37:00 <pikhq> *Anyways*, point is, he seems just straight-up not used to writing well-developed stories.
22:37:47 <pikhq> And his art has an obscene amount of attention to detail.
22:37:47 <Phantom_Hoover> I'm sure this extends to a more general point, but the only other strip I can think of off-hand that went from one-offs to plots is Casey & Andy, and it doesn't really fit.
22:41:11 -!- MigoMipo has quit (Read error: Connection reset by peer).
22:45:18 <Phantom_Hoover> Conclusion: Dresden Codak will be put in the Library of Crapness on Mars.
22:47:15 <Phantom_Hoover> Also, people who cannot draw men so draw women instead and claim that they're men will be exiled to Phobos, but that's an irrelevant aside.
22:54:40 -!- azaq23 has quit (Quit: Leaving.).
22:56:21 <zzo38> Apparently the Akagi manga has no women because the author cannot draw women very well
22:59:10 -!- aloril has quit (Ping timeout: 250 seconds).
23:05:04 -!- quintopia has quit (Ping timeout: 252 seconds).
23:10:54 -!- aloril has joined.
23:16:42 -!- quintopia has joined.
23:23:38 -!- elliott has quit (Ping timeout: 246 seconds).
23:26:06 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:26:30 -!- BeholdMyGlory has joined.
23:33:09 <Sgeo> Did Valve deliberately include a non-paradox in a poster of paradoxes?
23:35:15 <Sgeo> "Does a set of all sets contain itself?" is not a paradox
23:36:44 -!- pikhq_ has joined.
23:37:05 -!- pikhq has quit (Ping timeout: 260 seconds).
23:40:05 <Sgeo> http://cloud.steampowered.com/ugc/594685399013523781/6ADB57123D73270F2957B9EE32B6DFF91A1C0AEE/
23:44:21 -!- FireFly has quit (Quit: swatted to death).
23:46:47 <ajf> Sgeo: it is a paradox
23:52:26 <ajf> !c printf("%d", sizeof(type));
23:52:56 <ajf> !c const size_t a = 7; printf("%d", sizeof(a));
23:53:12 <ajf> !c const size_t a = 12; printf("%d", sizeof(a));
23:55:02 <pikhq_> type is undefined, so sizeof(type) will fail.
23:58:29 <Lymia> !c int i;for(i=0;i<1000;i++){((unsigned char*)main)[i]=42;}
23:58:31 <EgoBot> ./interps/gcccomp/gcccomp: line 52: 32648 Segmentation fault /tmp/compiled.$$
00:01:26 <Lymia> !c printf("cake");unsigned char* c=malloc(1024);memcpy(main,c,1024);int (mainPtr*)();mainPtr=(void*)c;mainPtr();
00:05:09 <Lymia> !c printf("cake");unsigned char* c=malloc(1024);memcpy((unsigned char*)main,c,1024);int (mainPtr*)();mainPtr=(void*)c;mainPtr();
00:07:49 <Sgeo> ajf, does it say "set of all sets that don't contain themselves?"
00:09:55 <Sgeo> http://www.reddit.com/r/gaming/comments/hax9x/one_of_these_is_not_a_paradox_portal_2_spoiler/
00:10:07 <Sgeo> I feel like facepalming
00:10:51 <ajf> Phantom_Hoover: which is impossible
00:11:23 <ajf> how can something contain itself
00:15:42 <Sgeo> I guess in a more proper set theory that does whatever such set theories do to prevent Russel's paradox, you can't have such a set, but that's ... still not a paradox, I think
00:26:09 <Lymia> Sgeo, was it intentional?
00:28:25 -!- Phantom_Hoover has quit (Quit: Leaving).
00:35:14 * pikhq_ just loves how driving will cease to be a commonly-useful skill soon.
00:36:02 <pikhq_> ajf: Self-driving cars exist. Now.
00:36:22 <pikhq_> ajf: In 10 years, they will probably be reasonably available on the market.
00:36:39 <pikhq_> In 15 to 20 years, it will likely be the norm.
00:39:03 <pikhq_> Those estimates are conservative.
00:39:27 -!- zzo38 has left.
00:39:40 <ajf> safety concerns
00:39:50 <pikhq_> 140,000 miles of testing on the streets of LA.
00:39:53 <ajf> an AI knows not of how to react to the unknown
00:39:57 <pikhq_> 1 accident: rear ended.
00:40:31 <ajf> say, hypothetically, the car is damaged without the AI noticing
00:40:40 <ajf> would it drive on? yes.
00:42:11 <pikhq_> The safety concerns of an automatic car need to be compared against human drivers.
00:42:18 <pikhq_> And not highly skilled, highly trained drivers.
00:42:25 <pikhq_> The average numbskull.
00:42:31 <ajf> the average numskull
00:42:39 <ajf> reacts better to the unknown than an AI
00:42:55 <ajf> I wasn't correcting spelling there, you spelled it correctly
00:43:00 <ajf> pikhq_: OK
00:43:09 <ajf> the car sets on fire
00:43:29 <ajf> what happens?
00:43:40 <pikhq_> In both cases: it's epicly bad.
00:43:57 <Lymia> AI reacts as it's programmed to do in a failure condition.
00:43:58 <ajf> The man stops and gets out
00:44:07 <ajf> The AI doesn't know there's a fire
00:44:10 <pikhq_> No, the man freaks out and who the fuck knows what happens.
00:44:12 <Lymia> This hopefully involves pulling over
00:44:14 <ajf> The human may need to manually stop it
00:44:32 <pikhq_> If you're *lucky*, the human manually stops it.
00:44:45 <pikhq_> If you're unlucky, the human runs into someone else.
00:44:50 <ajf> I just wonder
00:45:00 <ajf> How the AI reacts to certain scenarios
00:45:09 <ajf> That could not have been forseen
00:46:02 <pikhq_> Besides which, this is an edge case. Human drivers fuck up on *common* cases.
00:46:12 <Lymia> A good AI for that would be programmed with a set of rules, not case-by-case
00:46:19 <pikhq_> People plowing through a stoplight into someone? An AI won't do that.
00:46:33 <pikhq_> Falling asleep and driving into the other lane? An AI won't do that.
00:47:10 <ajf> What happens when the AI makes a mistake.
00:47:15 <ajf> AI isn't flawless.
00:47:53 <pikhq_> Perfect solution fallacy. Stop it.
00:48:19 <pikhq_> "The Nirvana fallacy is the logical error of comparing actual things with unrealistic, idealized alternatives."
00:48:39 <Lymia> ajf, it makes a mistake
00:48:47 <Lymia> If it makes less mistakes than human drivers, it's still successful
00:49:11 <ajf> inb4 lawsuits
00:49:42 <ajf> There's the risk that AI could be deployed with serious errors
00:49:59 <ajf> Remember when that company made a cancer treatment device with a race condition?
00:50:05 <ajf> And killed several people?
00:50:16 <pikhq_> That is an *actual* issue, though actually not as much of one as you think.
00:50:26 <ajf> Oh, really?
00:50:27 <pikhq_> In case you weren't aware, cars already *have* extensive computer controls in them.
00:50:35 <ajf> I know that.
00:50:50 <pikhq_> And an error in some of them would actually be catastrophic.
00:50:56 <ajf> That is true
00:51:31 <pikhq_> None of these are things that make a self-driving car *infeasible*, just things that need to be considered in the design.
00:52:07 <pikhq_> Much as they are in other cases of software with highly dangerous failure conditions.
00:52:59 <pikhq_> Y'know, plane autopilots, nuclear power plant control systems, and the like.
00:53:47 <Lymia> Presumably, a self-driving car would be able to monitor itself for failures well before a human would notice too.
00:55:33 <ajf> Car fails in fast traffic, how does it respond?
00:55:53 <Lymia> How would you respond?
00:55:59 <pikhq_> Human's car fails in fast traffic, how does e respond?
00:56:09 <ajf> Get the fuck out of there
00:56:42 <ajf> There's nothing you can do, as I mean the car spontaneously stopping working
00:56:46 <Lymia> I don't think the AI of a car can help the person get out of there.
00:57:12 <pikhq_> Making this hypothetical... Moot.
00:57:39 <pikhq_> Though, the AI could probably be hooked into OBD, and possibly identify failure before it actually happens.
00:58:24 <ajf> how does the car react when the traffic lights aren't working?
00:58:30 <ajf> or are failing?
00:58:41 <ajf> well, say they malfunction
00:58:54 <pikhq_> Depends upon the malfunction.
00:59:07 <ajf> flickering between different lights
00:59:11 <ajf> for instance
00:59:38 <ajf> Would the AI be prepaed for this secenario?
01:00:20 <ajf> A human would, feasibly
01:01:08 <pikhq_> I remind you, though, you are comparing hypothetical technical failures with demonstrable, *common*, *killing 1.2 million people a year* human faults.
01:01:18 <ajf> What if the traffic signs are misleading, and contrary to what people are doing?
01:01:30 <pikhq_> (and 50 million injuries)
01:01:34 <ajf> Does the AI listen to the traffic signs?
01:01:41 <ajf> Or what the people on the road do?
01:02:08 <ajf> what if it is susceptible to SQL Injection?
01:02:22 <ajf> Kidding, obvs
01:02:50 <ajf> pikhq_: What I worry about is this:
01:03:01 <ajf> A situation where the AI behaves *wrongly*
01:03:11 <ajf> And the human needs to override it
01:03:16 <ajf> But they can't drive
01:03:27 <ajf> That's more what worries me
01:03:52 <ajf> Than AI going wrong, as long as a human is there, they could possily stop it
01:03:59 <pikhq_> ajf: Well, in such a future, *hopefully* the override would be something along the lines of "Force stop".
01:04:19 <ajf> What if I need to reverse, but there's no means to do so?
01:04:25 <ajf> Just a start and stop button?
01:04:38 -!- Cheery has quit (Quit: Lost terminal).
01:08:09 -!- augur has joined.
01:10:44 -!- ajf has quit (Quit: leaving).
01:12:45 -!- ajf has joined.
01:31:42 -!- aloril has quit (Ping timeout: 250 seconds).
01:43:42 -!- aloril has joined.
01:44:02 -!- micahjohnston has changed nick to anyone.
01:45:18 -!- anyone has changed nick to nobodyy.
01:45:24 -!- nobodyy has changed nick to micahjohnston.
01:53:53 -!- calamari has joined.
01:54:08 -!- ajf has changed nick to ajf|offline.
02:02:18 -!- calamari has left ("Leaving").
02:05:34 -!- micahjohnston has changed nick to everyone.
02:05:58 -!- everyone has changed nick to micahjohnston.
02:17:38 -!- aloril has quit (Ping timeout: 250 seconds).
02:43:50 -!- zzo38 has joined.
02:53:35 -!- augur has quit (Remote host closed the connection).
03:09:16 <zzo38> I posted Deadfish challenge to anarchy golf.
03:19:14 -!- Wamanuz4 has joined.
03:22:20 -!- Wamanuz3 has quit (Ping timeout: 246 seconds).
04:04:43 -!- poiuy_qwert has joined.
04:06:40 -!- augur has joined.
04:43:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
04:44:55 -!- poiuy_qwert has joined.
04:56:38 -!- aloril has joined.
05:03:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
05:04:56 -!- poiuy_qwert has joined.
05:23:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
05:24:57 -!- poiuy_qwert has joined.
05:28:46 <Sgeo> Wikipedia claims that it''s a "simplified version of Russel's paradox"
05:29:00 <Sgeo> I still don't see the damn paradox
05:34:39 <tswett> Sgeo: Wikipedia claims what is?
05:34:48 <tswett> Hey Finns, what is a pulkki?
05:34:59 <Sgeo> http://www.reddit.com/r/gaming/comments/hax9x/one_of_these_is_not_a_paradox_portal_2_spoiler/
05:35:12 <Sgeo> (No major portal 2 spoiler in comments, minor one in picture)
05:35:47 <tswett> You're right. There is no paradox.
05:36:28 <coppro> Actually, only the first is a paradox
05:36:44 <coppro> The second is not either; refusal is the opposite of completing
05:36:52 <coppro> one can refuse but complete a mission
05:37:04 <coppro> "New mission: Don't complete this mission" is paradoxical
05:39:49 <Sgeo> Although I assume it's largely downvoted by people who don't understand that it's only reminiscent of a paradox..
05:39:58 <Sgeo> Maybe there's another reason people are downvoting?
05:43:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
05:44:55 -!- poiuy_qwert has joined.
06:00:39 -!- poiuy_qwert has quit (Read error: Operation timed out).
06:04:57 -!- poiuy_qwert has joined.
06:23:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
06:24:54 -!- poiuy_qwert has joined.
06:42:06 -!- poiuy_qwert has quit (Ping timeout: 246 seconds).
07:57:47 -!- Plazma has quit (Read error: Connection reset by peer).
07:58:28 -!- Plazma has joined.
08:07:04 -!- MigoMipo has joined.
08:12:01 -!- siracusa has quit (Ping timeout: 260 seconds).
08:13:22 -!- siracusa has joined.
08:16:27 -!- CakeProphet has joined.
08:20:09 -!- CakeProphet has quit (Client Quit).
08:20:41 -!- CakeProphet has joined.
08:20:48 -!- CakeProphet has quit (Client Quit).
08:21:14 -!- CakeProphet has joined.
08:22:15 -!- CakeProphet has quit (Client Quit).
08:22:43 -!- CakeProphet has joined.
08:22:43 -!- CakeProphet has quit (Changing host).
08:22:43 -!- CakeProphet has joined.
08:36:37 -!- Vorpal has joined.
08:37:57 -!- adam___ has joined.
08:38:43 -!- CakeProphet has quit (Disconnected by services).
08:38:47 -!- adam___ has changed nick to CakeProphet.
08:41:44 -!- CakeProphet has quit (Client Quit).
08:42:18 -!- CakeProphet has joined.
08:43:39 -!- CakeProphet has quit (Client Quit).
08:43:40 -!- pingveno has quit (Ping timeout: 260 seconds).
08:44:11 -!- CakeProphet has joined.
08:44:29 -!- Phantom_Hoover has joined.
08:45:29 -!- pingveno has joined.
08:56:51 -!- FireFly has joined.
09:02:15 -!- oerjan has joined.
09:16:51 <Vorpal> oerjan, know anything about parsec (the haskell sense)
09:17:42 <Vorpal> oerjan, I'm trying to figure it out, I'm having a problem with how to say that two cells can be separated by one *or more* whitespace, sepBy doesn't seem to like anything but exactly one char
09:18:12 <CakeProphet> I believe it's called many or something like that.
09:18:14 <oerjan> hm i thought that should work fine
09:18:37 <Vorpal> oerjan, I get Couldn't match expected type `Char' against inferred type `[Char]' then
09:19:13 <lambdabot> Text.Parsec.Combinator sepBy :: Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
09:19:14 <lambdabot> Text.ParserCombinators.ReadP sepBy :: ReadP a -> ReadP sep -> ReadP [a]
09:19:14 <lambdabot> Text.ParserCombinators.Parsec.Combinator sepBy :: Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
09:19:37 -!- monqy has quit (Quit: hello).
09:19:47 <oerjan> well what are you using as the second argument to sepBy?
09:20:29 <CakeProphet> soemthing like sepBy p (many1 whitespace) should work fine then right?
09:20:54 <Vorpal> cell = many (noneOf " \n")
09:20:54 <Vorpal> line = sepBy cell (many (char ' '))
09:20:54 <Vorpal> downrightFile = endBy line eol
09:21:15 <Vorpal> hm I guess I might have had some type signature wrong
09:21:28 <Vorpal> *** Exception: Text.ParserCombinators.Parsec.Prim.many: combinator 'many' is applied to a parser that accepts an empty string.
09:21:31 <oerjan> otherwise the separator could be empty, and i'm not sure how that is handled
09:21:35 <Vorpal> oerjan, many1 is like 1 or more?
09:22:18 <Vorpal> oerjan, how do I tell it in the above one that the last line need not end with a newline?
09:22:29 <Vorpal> basically, the file doesn't have to be newline terminated
09:23:34 <oerjan> Vorpal: um why not just use sepBy for that too?
09:25:01 <oerjan> Vorpal: oh wait there's sepEndBy
09:25:08 <Vorpal> oerjan, what does it do?
09:25:18 <oerjan> same as sepBy but optional ending too
09:25:34 <Vorpal> oerjan, I have to say that yacc is easier than this though
09:25:47 <oerjan> well not as much to remember maybe
09:26:04 <Vorpal> oerjan, does sepBy allow leading whitespace at the start of a line hm
09:26:13 <Vorpal> or is there sepStartBy?
09:26:51 <Vorpal> ah indeed sepBy does not allow that
09:27:10 <Vorpal> oerjan, I have no idea how to indicate that anything except ↓→, whitespace, newline is considered comments
09:27:22 <Vorpal> to indicate a cell is empty one is supposed to insert a comment in it
09:27:34 <Vorpal> oerjan, I guess that is easier to parse outside this thing
09:28:24 <oerjan> yeah just use a filter on the resulting string
09:29:10 <oerjan> to start with whitespace just use optional whitespace >>
09:29:41 <Vorpal> line = (many (char ' ')) >> (sepBy cell (many1 (char ' ')))
09:29:44 <Vorpal> oerjan, you mean that?
09:29:57 <Vorpal> *Main Text.ParserCombinators.Parsec> parseDownRight "a b\n c d"
09:30:16 <Vorpal> I forgot to save the file
09:30:31 <oerjan> Vorpal: technically if you ignore the result i suspect skipMany is more efficient
09:30:41 <Vorpal> oerjan, except of course that leading whitespace on the first line is undefined!
09:30:49 <Vorpal> but that means I can ignore it as well
09:30:57 <Vorpal> since it is *undefined*
09:31:07 <Vorpal> oerjan, see http://esolangs.org/wiki/DownRight
09:31:17 <oerjan> Vorpal: well in that case you could make your newline combinator remove trailing whitespace too
09:31:33 <zzo38> I once had a dream that I found myself in a room with an elevator due to the stack overflow of a badly designed computer program (which I didn't think even possible in the programming language that was used), and the person who wrote the program was also there.
09:31:46 <Vorpal> oerjan, hm... you mean like eol = (many (char ' ')) >> char '\n' ?
09:32:10 <Vorpal> I should add a combinator for the ws to save space, since I'm not sure how tab should be handled
09:32:14 <Vorpal> I need to ask ais about that
09:33:08 <CakeProphet> I believe anyToken would be useful if you actually wanted Parsec to deal with the possible of comment characters.
09:33:40 <CakeProphet> but I agree it's easier just to filter it out.
09:33:41 <oerjan> CakeProphet: um he doesn't want it to be _any_ token, whitespace is excluded
09:33:59 <CakeProphet> oh, well right, then just noneOf valid_tokens
09:34:04 <Vorpal> CakeProphet, oerjan, http://esolangs.org/wiki/DownRight#Syntax
09:34:04 <oerjan> so noneOf " \n" is pretty much correct there
09:34:34 <Vorpal> ws1 = many1 (char ' ')
09:34:34 <Vorpal> cell = many1 (noneOf " \n")
09:34:34 <Vorpal> line = ws >> (sepBy cell ws1)
09:34:35 <Vorpal> downrightFile = sepEndBy line eol
09:34:38 <Vorpal> well that seems to work so far
09:35:01 <Vorpal> doesn't handle trailing ws
09:35:26 <Vorpal> Left "(unknown)" (line 1, column 5):
09:35:27 <oerjan> Vorpal: as a general rule iirc you usually want all your tokens to absorb whitespace after it
09:35:30 <Vorpal> oerjan, any good idea?
09:35:54 <Vorpal> oerjan, you mean this? line = ws >> (sepBy cell ws1) >> ws
09:36:26 <oerjan> you don't need the first ws then
09:36:46 <Vorpal> oerjan, how does that deal with newlines
09:36:46 <oerjan> also that's equivalent to sepEndBy
09:37:03 <oerjan> i mean you want the newlines to absorb _their_ trailing whitespace too
09:37:28 <oerjan> that way most things start with a genuine non-whitespace token
09:37:58 <Vorpal> > parseDownRight " a b \n\n c d"
09:38:08 <Vorpal> why doesn't that give me Left
09:38:17 <Vorpal> it seems like an error to me
09:38:38 <Vorpal> ws1 = many1 (char ' ')
09:38:38 <Vorpal> cell = many1 (noneOf " \n")
09:38:38 <Vorpal> line = sepEndBy cell ws1
09:38:39 <Vorpal> downrightFile = sepEndBy line eol
09:38:49 <oerjan> i thought downright was supposed to allow more than one newline in a row
09:39:08 <Vorpal> that means an empty line surely?
09:39:19 <Vorpal> oerjan, anyway, the issue here is the leading whitespace
09:39:32 <Vorpal> > parseDownRight "a b \n\n c d"
09:39:32 <Vorpal> Right [["a","b"],[],["c","d"]]
09:39:40 <oerjan> i think that means no line at all, it's treated as one line break in total
09:40:28 <Vorpal> *Main Text.ParserCombinators.Parsec> parseDownRight "a b \n\n c d"
09:40:28 <Vorpal> Right [["a","b"],["c","d"]]
09:40:28 <Vorpal> *Main Text.ParserCombinators.Parsec> parseDownRight " a b \n\n c d"
09:40:37 <oerjan> hm your problem may be that sepEndBy can parse zero items
09:40:54 <Vorpal> oerjan, is there a variant that doesn't?
09:41:24 <Vorpal> but that makes me wonder if an empty DownRight file is valid
09:41:49 <Vorpal> oerjan, also this doesn't handle that there must be equally many columns on each line
09:41:59 <Vorpal> but I guess I'll do that outside the parser, afterwards
09:42:09 <CakeProphet> you could make it valid with an <|> most likely. I don't remember how you specify a null input with Parsec.
09:43:01 <Vorpal> yes that would be useful to know
09:45:28 <CakeProphet> it's been ages since I've looked at Parsec.
09:45:30 <Vorpal> downrightFile = (sepEndBy1 line eol) <|> (return ())
09:45:51 <CakeProphet> parens aren't necessary, and I don't know if that's what you want or not because I'm too lazy to read right now. :P
09:46:01 <CakeProphet> and it's 5:46 AM so I'm probably going to sleep soon actually.
09:46:05 <Vorpal> anyway that doesn't work
09:46:11 <Vorpal> No instance for (Text.Parsec.Prim.Stream s m Char)
09:46:12 <Vorpal> arising from a use of `char' at downright.hs:5:14-22
09:46:19 <Vorpal> Couldn't match expected type `[[[Char]]]'
09:46:20 <Vorpal> against inferred type `()'
09:46:26 <oerjan> you _could_ make parsec check for column number by using count for all but the first line
09:46:55 <Vorpal> well, lets make the empty program invalid, I guess I could fix that later if I have to
09:47:32 <CakeProphet> homespring prints "the null program is not a quine" or something similar. I recommend that.
09:47:38 <oerjan> if it meant anything at all, it should presumably halt immediately, thus equivalent to a single comment cell
09:48:34 <oerjan> Vorpal: well probably return [] actually to get the type right
09:49:07 <Vorpal> *Main Text.ParserCombinators.Parsec> parseDownRight " a\n"
09:49:12 <siracusa> return () is a parser that accepts any input without consuming input
09:49:14 <Vorpal> oerjan, that one isn't calid
09:49:32 <Vorpal> oerjan, I need the empty string exactly there
09:49:52 <Vorpal> like: downrightFile = (sepEndBy1 line eol) <|> eof
09:50:06 <Vorpal> Couldn't match expected type `[[[Char]]]'
09:50:07 <Vorpal> against inferred type `()'
09:50:08 <CakeProphet> I'd be interested to see if string "" actually does something or if it's completely undefined.
09:50:39 <oerjan> um usually you put eof at the very end of the whole parser, although if there is no way to err on trailing input that is not necessary
09:50:49 <Vorpal> siracusa, that seems to work
09:51:00 <Vorpal> CakeProphet, type error, but maybe [""] would work.
09:51:22 <Vorpal> oerjan, yeah trailing newlines and spaces is valid
09:51:29 <oerjan> Vorpal: well anyway you should do return whatEverYouWantAsTheResult
09:52:22 <Vorpal> now to write the filter, then to write the generator (I'm compiling, not interpreting)
09:52:27 <CakeProphet> for hedonistic purposes you could return bottom. Just make sure you don't evaluate that.
09:52:58 <Vorpal> actually yacc is easier than parsec I conclude, at least if you are used to yacc
09:53:13 <CakeProphet> ...I don't know, I take great pleasure in being able to manipulate things that have no result.
09:53:17 <Vorpal> though I have to say that once you get parsec doing the right thing, it is quite elegantly short
09:54:08 <CakeProphet> you can actually pass around meaningful data in your parser monad.
09:54:39 <Vorpal> CakeProphet, iirc cpressy said there was some yacc for haskell called "happy" or something like that
09:55:32 <oerjan> > filter (not . null) . map (filter (not . null) . words) . lines $ " a bc \n \n d e" -- >:)
09:55:53 <Vorpal> oerjan, you are ding the same thing but without parsec there I guess
09:56:03 <lambdabot> Maybe you meant: tell thank you thanks thx ticker time todo todo-add todo-delete topic-cons topic-init topic-null topic-snoc topic-tail topic-tell type . ? @ ft v
09:56:53 <oerjan> not all that filtering may be necessary
09:56:57 <lambdabot> parse error (possibly incorrect indentation)
09:57:08 <Vorpal> what was that stuff oerjan
09:57:34 <Vorpal> CakeProphet, my irc client lacks syntax highlight
09:57:45 <CakeProphet> forgive my involuntary chatspeak outburst.
09:58:08 <CakeProphet> I didn't even know they make IRC clients with that.
09:58:08 <oerjan> > filter (not . null) . map words . lines $ " a bc \n \n d e"
09:58:33 <oerjan> just removing the redundant filter
09:59:02 <oerjan> > filter (not . null) . map words . lines $ " a bc \n \t\n d\te"
09:59:52 <oerjan> also, just lampshading how much overkill parsec is for this
09:59:55 <Vorpal> oerjan, what was the command to make lambdabot convert to pointless style?
10:00:17 <Vorpal> oerjan, well it was elliott who told me one should always use parsec, I know I shouldn't have trusted him
10:00:26 <Vorpal> CakeProphet, not pf for pointfree?
10:00:37 <Vorpal> @pl filter (not . null) . map words . lines $ " a bc \n \t\n d\te"
10:00:37 <lambdabot> filter (not . null) (map words (lines " a bc \n \t\n d\te"))
10:00:53 <Vorpal> @pf filter (not . null) . map words . lines $ " a bc \n \t\n d\te"
10:01:25 <Vorpal> that conversion looks wrong to me though
10:02:32 <oerjan> CakeProphet: i'd expect string "" to be equivalent to return ""
10:02:33 <CakeProphet> the only thing that changes was some of the composition was changed to application.
10:03:00 <Vorpal> filter (\x -> x == '↓' || x == '→') "foo↓→→↓"
10:03:00 <Vorpal> "\8595\8594\8594\8595"
10:03:06 <Vorpal> now is there a better way to write that
10:03:09 <Vorpal> I don't like that test
10:03:18 <Vorpal> @pl filter (\x -> x == '↓' || x == '→') "foo↓→→↓"
10:04:05 <oerjan> Vorpal: well parsec would have been better if the syntax was even slightly outside what lines and words could handle
10:04:21 <lambdabot> forall a. (Eq a) => a -> [a] -> Bool
10:04:22 <siracusa> > filter (`elem` "↓→") "foo↓→→↓"
10:05:13 <Vorpal> @pl filter (`elem` "↓→") "foo↓→→↓"
10:05:13 <lambdabot> filter (`elem` "\226\134\147\226\134\146") "foo\226\134\147\226\134\146\226\134\146\226\134\147"
10:05:45 <oerjan> @pl isn't precisely perfect parsing
10:06:16 <lambdabot> src <id>. Display the implementation of a standard function
10:06:33 <oerjan> it doesn't even try to handle some constructs, because it doesn't know how to convert them
10:06:37 <CakeProphet> hmmm, how do I get source code of egobot interpreters?
10:06:54 <EgoBot> help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help <command>.
10:06:56 <Vorpal> map (filter (`elem` "↓→") "foo↓→→↓") [["\8595\8594ab","\8595\8594"],["\8595\8594"]]
10:07:03 <EgoBot> userinterps: Users can add interpreters written in any of the languages in !help languages. See !help addinterp, delinterp, show | !userinterps. List interpreters added with !addinterp.
10:07:05 <Vorpal> >map (filter (`elem` "↓→") "foo↓→→↓") [["\8595\8594ab","\8595\8594"],["\8595\8594"]]
10:07:08 <Vorpal> > map (filter (`elem` "↓→") "foo↓→→↓") [["\8595\8594ab","\8595\8594"],["\8595\8594"]]
10:07:09 <lambdabot> Couldn't match expected type `a -> b'
10:07:18 <lambdabot> forall a b. (a -> b) -> [a] -> [b]
10:07:37 <Vorpal> > map (filter (`elem` "↓→")) [["\8595\8594ab","\8595\8594"],["\8595\8594"]]
10:07:37 <lambdabot> Couldn't match expected type `GHC.Types.Char'
10:08:15 <oerjan> @hoogle [a] -> [a] -> [a]
10:08:15 <lambdabot> Data.List (++) :: [a] -> [a] -> [a]
10:08:15 <lambdabot> Data.List deleteFirstsBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]
10:08:42 <EgoBot> Installed user interpreters: aol austro b1ff bc bct bfbignum brit brooklyn bypass_ignore bytes chaos chef chiqrsx9p choo cockney ctcp dc decisionengine drawl drome dubya echo eehird ehird fudd funetak google graph gregor he hello id jethro kraut num ook pansy pi pirate plot postmodern postmodern_aoler prefixes redneck reverse rimshot rot13 sadbf sfedeesh sffedeesh sffffedeesh sffffffffedeesh simpleacro slashes svedeesh swedish valspeak warez yodawg
10:08:44 <Vorpal> > map (map (filter (`elem` "↓→"))) [["\8595\8594ab","\8595\8594"],["\8595\8594"]]
10:08:45 <lambdabot> [["\8595\8594","\8595\8594"],["\8595\8594"]]
10:08:56 <Vorpal> @pl map (map (filter (`elem` "↓→"))) [["\8595\8594ab","\8595\8594"],["\8595\8594"]]
10:08:56 <lambdabot> map (map (filter (`elem` "\226\134\147\226\134\146"))) [["\8595\8594ab", "\8595\8594"], ["\8595\8594"]]
10:08:56 <EgoBot> What on earth does this semiotically do.
10:09:14 <oerjan> > "testing ho" `intersect` "te"
10:09:28 <oerjan> it seems that can also be used :)
10:09:41 <Vorpal> oerjan, wtf is intersec
10:09:50 <lambdabot> forall a. (Eq a) => [a] -> [a] -> [a]
10:10:01 <Vorpal> oerjan, that seems more confusing in this case however
10:10:06 <oerjan> except it seems to do the right thing on multiple hits, by accident
10:10:21 <EgoBot> Sorry, I have no help for info!
10:10:37 <lambdabot> intersectBy eq xs ys = [x | x <- xs, any (eq x) ys]
10:10:40 <Vorpal> oerjan, I'd rather not depend on that unless it is speced that way
10:10:53 <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/ . Cheers and patches (preferably hg bundles) can be sent to Richards@codu.org , PayPal donations can be sent to AKAQuinn@hotmail.com , complaints can be sent to /dev/null
10:11:18 <CakeProphet> I'm going to cat a complaint directly to /dev/null this instant!
10:11:23 <oerjan> CakeProphet: um that was just the default info message
10:11:38 <oerjan> i don't think there is any help for userinterps
10:11:47 <Vorpal> oerjan, anyway this one seems fine: filterDownRight = map (map (filter (`elem` "↓→")))
10:11:52 <CakeProphet> I was looking for a way to display the source code.
10:11:59 <oerjan> CakeProphet: however i so _happen_ to know that yodawg is my unlambda self-interpreter
10:12:01 <zzo38> Where does the name "The Prophet Wizard of the Crayon Cake" made from?
10:12:16 <CakeProphet> ...I prefer that people not worry about that.
10:12:20 <oerjan> CakeProphet: !show yodawg, but you need DCC CHAT
10:12:32 <CakeProphet> but there's not really an interesting story.
10:12:44 <EgoBot> unlambda (sending via DCC)
10:12:50 <EgoBot> unlambda (sending via DCC)
10:13:01 <EgoBot> unlambda (sending via DCC)
10:13:14 <cheater666> * DCC CHAT to EgoBot lost (Remote host closed socket).
10:15:06 <CakeProphet> oh yeah! I forgot about this. Nothing derails conversation like an acronym generator.
10:16:36 <CakeProphet> Manly Bikers Union Justly Deserves Quoting
10:17:14 <oerjan> <Vorpal> oerjan, anyway this one seems fine: filterDownRight = map (map (filter (`elem` "↓→"))) <-- you could put a filter (`elem` "↓→") <$> directly on the parsec cell combinator too
10:17:46 <Vorpal> oerjan, what would <$> do here
10:18:03 <CakeProphet> fmap. applies a function to a Functor instance. All monads are functors.
10:18:10 <Vorpal> <interactive>:1:0: Not in scope: `<$>'
10:18:47 <oerjan> that it isn't imported automatically. well i guess it's not that big
10:19:27 <oerjan> Vorpal: you could say `liftM` instead, although elliott will yell at you :D
10:19:44 <Vorpal> oerjan, I'm not familiar with what LiftM does here... Tell me
10:19:51 <Vorpal> and why elliott would yell at me
10:19:59 <oerjan> there's a difference between parsec 2 and 3 in what instances are provided
10:20:01 <Vorpal> anyway: <interactive>:1:0: Not in scope: `liftM'
10:20:08 <Vorpal> oerjan, this is parsec 3 I think
10:20:08 <oerjan> although maybe both have Functor
10:20:19 <oerjan> oh right liftM requires Control.Monad
10:20:32 <Vorpal> all (\y -> length y == l) xs
10:20:32 <CakeProphet> for monads it's something like (<$>) m f x = do { x <- m; return (f x)}
10:20:37 <Vorpal> oerjan, I'm sure you can rewrite that :P
10:20:45 <oerjan> it's the monad equivalent of fmap, existing for stupid "missing subclassing" reasons
10:20:47 <cheater666> does anyone think "onomatoegrava" is a good word for this? (1st def) http://www.urbandictionary.com/define.php?term=asdfasdf
10:21:09 <Vorpal> oerjan, but why will elliott yell at me for using it?
10:21:43 <oerjan> Vorpal: well he yelled at _me_ once
10:21:58 <oerjan> because Applicative syntax is prettier
10:22:08 <Vorpal> oerjan, go figure, how elliott
10:22:39 <Vorpal> oerjan, btw what would declaring main as an ffi call do?
10:22:40 -!- hagb4rd has joined.
10:22:47 <CakeProphet> something about f <$> m1 <*> m2 just feels right
10:23:57 <oerjan> <CakeProphet> ...I prefer that people not worry about that. <-- browsing r/all gives me some suspicions :)
10:25:41 <Vorpal> I forgot what string concat operator was in haskell...
10:25:43 <oerjan> <cheater666> oerjan, it is broke <-- it has worked for me in the past. sadly i'm on an unusual client (webchat) now because the nvg servers i usually use are down, so i cannot check; and also i cannot point you to my webpage because that's also on an nvg server
10:27:13 <oerjan> <CakeProphet> elegant code. <-- probably a program in egobot's /bin/
10:27:41 <CakeProphet> it was one of those joke things. you know.
10:28:59 <Vorpal> gah, how did one format an integer as a decimal string now again, I don't remember
10:29:15 <oerjan> Vorpal: reddit's "list all subreddits as one page". a certain subreddit named r/trees tends to show up frequently
10:30:03 <Vorpal> oerjan, what about hexdecimal then
10:30:28 <Vorpal> oerjan, and an arbitrary base?
10:30:47 <lambdabot> forall a. (Integral a) => a -> (Int -> Char) -> a -> String -> String
10:31:15 <lambdabot> Not in scope: data constructor `ShowIntegerAtBase'
10:31:18 <oerjan> > showIntAtBase 3 intToDigit 27 ""
10:31:23 <Vorpal> oerjan, isn't Int fixnum?
10:31:45 <oerjan> Vorpal: that's just for converting the digit, the whole number is any Integral
10:32:21 <oerjan> so if you want to work in bases > (maxInt :: Int), you might need to work harder :D
10:33:32 <Vorpal> showIntAtBase 4 intToDigit 27 ""
10:33:35 <Vorpal> > showIntAtBase 4 intToDigit 27 ""
10:33:48 <Vorpal> wait, which parameter is which
10:33:54 <Vorpal> is 27 the number to convert?
10:34:01 <Vorpal> showIntAtBase 123 intToDigit 97 ""
10:34:04 <Vorpal> > showIntAtBase 123 intToDigit 97 ""
10:34:04 <lambdabot> "*Exception: Char.intToDigit: not a digit 97
10:34:14 <oerjan> it only goes up to hex, i think
10:34:31 <oerjan> > map intToDigit [0..]
10:34:31 <lambdabot> "0123456789abcdef*Exception: Char.intToDigit: not a digit 16
10:34:34 <Vorpal> oerjan, erlang's can handle any base between 2 and 36 anywhere
10:34:52 <oerjan> Vorpal: you can make your own replacement easily, that's why it's a parameter after all
10:35:03 <Vorpal> oerjan, I wonder why it doesn't go further however
10:35:28 <oerjan> well it's haskell 98 standard
10:35:35 <lambdabot> Overlapping instances for GHC.Show.Show
10:35:39 <lambdabot> Source not found. You speak an infinite deal of nothing
10:36:01 <lambdabot> Data.Char intToDigit :: Int -> Char
10:36:14 <oerjan> you may want to browse Data.Char source
10:36:20 <lambdabot> http://darcs.haskell.org/packages/base/Data/Char.hs
10:36:21 <Vorpal> doesn't lambdabot have it?
10:36:42 <Vorpal> great, download rather than view online
10:36:52 <oerjan> i'm not sure @source is accurate anyway
10:37:01 <lambdabot> source <lib>. Lookup the url of fptools libraries
10:37:17 <oerjan> i mean the name fptools itself is pretty obsolete, i think
10:37:23 <Vorpal> oerjan, any sort of queue structure in haskell's standard library
10:37:50 <Vorpal> oerjan, I just realised I prefer to interpret than to generate a queue in C :D
10:38:04 <Vorpal> (I originally planned to compile to C)
10:38:51 <oerjan> Vorpal: btw it occured to me the other day that downright may not _need_ a queue in haskell, you might make do with just lazy lists and some knot tying
10:39:03 <Vorpal> oerjan, err, knot tying?
10:39:13 <oerjan> like that fibonacci thing...
10:39:30 <oerjan> > let fib = 1:1:zipWith (+) fib (tail fib)
10:39:30 <lambdabot> not an expression: `let fib = 1:1:zipWith (+) fib (tail fib)'
10:39:33 <oerjan> > let fib = 1:1:zipWith (+) fib (tail fib) in fib
10:39:34 <lambdabot> [1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,1...
10:39:39 <Vorpal> oerjan, how does that work
10:39:48 <lambdabot> Couldn't match expected type `[t]'
10:39:48 <lambdabot> against inferred type `(a -> b -> c) -> [a] -> [b] -> [c]'
10:39:48 <lambdabot> In the second argument of `(:)', namely `zipWith'
10:39:52 <oerjan> the fib or for downright?
10:40:19 <oerjan> well by laziness the fib list starts with 1,1, without looking at the rest
10:40:35 <Vorpal> that explains that part
10:40:43 <lambdabot> forall a b c. (a -> b -> c) -> [a] -> [b] -> [c]
10:41:15 <Vorpal> oerjan, how would this work for downright then
10:41:15 <oerjan> when you want to compute the next element, the parts of the list it depends on (the two previous elements) are available
10:42:27 <oerjan> anyway if you don't find that obvious, using it for downright might be a bit premature
10:45:11 <oerjan> knot tying in haskell is when you write functions that seem like they depend on their own result, but subtly it works because each _part_ of the result doesn't depend on itself, so the recursion gets down to base
10:46:13 <oerjan> and this is often a vital technique for building very recursive structures without using mutation
10:46:24 <Vorpal> CakeProphet, right, I shall avoid it then
10:47:59 <oerjan> briefly mentioning how i imagined it for downright, i though you could calculate the list of >v moves the downright program passes through, using that list as part of the input, and it should work
10:48:23 <oerjan> although it _may_ be that you get an exception when the list runs out, but that should be catchable
10:48:49 <Vorpal> Prelude.zip [0..] $ Prelude.map (Prelude.zip [0..]) [["123","456"],["abc","def"]]
10:48:49 <Vorpal> [(0,[(0,"123"),(1,"456")]),(1,[(0,"abc"),(1,"def")])]
10:48:54 <Vorpal> I think I have coords almost
10:49:08 <Vorpal> I'd like ((x,y),"foo")
10:49:17 <Vorpal> that would be perfect for a Data.Map I think
10:49:24 <Vorpal> oerjan, any nice idea for how to do that?
10:49:27 <oerjan> oops lambdabot doesn't give an exception there, i think it depends on ghc settings whether it actually catches that
10:49:34 <Vorpal> my solution would probably not be very nice looking
10:50:17 <oerjan> Vorpal: um given that it's fixed immutable column and rows, why not use Data.Array?
10:50:30 <Vorpal> oerjan, oh thanks, I wasn't aware of that one
10:50:44 <Vorpal> oerjan, I guess it isn't in containers
10:50:59 <oerjan> Data.Array is actually plain haskell 98
10:51:13 <oerjan> (well + hierarchical name)
10:53:02 <Vorpal> oerjan, is it only 1D array?
10:53:15 <Vorpal> I plan to support non-coprime sizes
10:53:21 <oerjan> no, it comes with the Ix typeclass for arbitrary indexes
10:53:46 <Vorpal> so lets see... how does one load [["123","456"],["abc","def"]] into an array hm
10:54:33 <lambdabot> Data.Array.IArray array :: (IArray a e, Ix i) => (i, i) -> [(i, e)] -> a i e
10:54:34 <lambdabot> forall i e. (Ix i) => (i, i) -> [(i, e)] -> Array i e
10:55:16 <oerjan> actually array but that seems redundant
10:55:20 <lambdabot> forall i e. (Ix i) => (i, i) -> [e] -> Array i e
10:55:47 <oerjan> then you don't need to list the indices except for the bounds
10:56:17 <oerjan> > listArray ((0,0),(1,1)) "abcd"
10:56:17 <lambdabot> array ((0,0),(1,1)) [((0,0),'a'),((0,1),'b'),((1,0),'c'),((1,1),'d')]
10:57:03 <Vorpal> listArray ((0,0),(1,1)) [["123","456"],["abc","def"]]
10:57:03 <Vorpal> array ((0,0),(1,1)) [((0,0),["123","456"]),((0,1),["abc","def"]),((1,0),*** Exception: (Array.!): undefined array element
10:57:09 <Vorpal> oh do I need to flatten it
10:57:27 <oerjan> Vorpal: i said use listArray :D
10:57:39 <Vorpal> oerjan, well that is what I did
10:57:44 <Vorpal> except not the right way
10:58:33 <oerjan> @hoogle [[e]] -> Array i e
10:58:33 <lambdabot> Control.Monad.Trans lift :: (MonadTrans t, Monad m) => m a -> t m a
10:58:33 <lambdabot> Data.Graph.Inductive.Graph delNodes :: Graph gr => [Node] -> gr a b -> gr a b
10:58:33 <lambdabot> Data.Array.IArray listArray :: (IArray a e, Ix i) => (i, i) -> [e] -> a i e
11:08:19 -!- Wamanuz5 has joined.
11:11:14 -!- Wamanuz4 has quit (Ping timeout: 248 seconds).
11:19:28 -!- MigoMipo has quit (Read error: Connection reset by peer).
11:21:33 -!- zzo38 has quit (Remote host closed the connection).
11:41:22 <Vorpal> oerjan, is there anything wrong with this: `Seq.(><)`
11:41:26 <Vorpal> downright.hs:42:55: parse error on input `.'
11:41:31 <Vorpal> executeDownRight program (newqueue `Seq.(><)` str) newpos max
11:41:50 <Vorpal> I have import qualified Data.Sequence as Seq
11:41:56 <Vorpal> since it clashed with Prelude
11:42:25 <Vorpal> CakeProphet, oerjan: any idea?
11:43:15 <Vorpal> huh, doesn't work outside as prefix either
11:45:20 <Vorpal> executeDownRight program (Seq.(><) newqueue (Seq.fromList str)) newpos max
11:45:24 <Vorpal> downright.hs:42:42: Not in scope: data constructor `Seq'
11:45:24 <Vorpal> downright.hs:42:46: Not in scope: `><'
11:54:38 <Vorpal> Right *** Exception: divide by zero
11:54:50 <Vorpal> how did I manage that one
11:55:20 <oerjan> off by one error when dividing by 1?
11:55:28 <Vorpal> oerjan, yeah I think so
11:56:39 <Vorpal> now how did that happen
11:56:39 <oerjan> for operators it might be worth adding an unqualified partial import
11:57:30 <Vorpal> oerjan, is there a haskell debugger?
11:57:49 <Vorpal> oerjan, I'd like to single step this logic (whatever that means in a lazy language...)
11:58:52 <oerjan> well does that parse into [["→", "", ""]] at least?
11:59:24 <oerjan> hm it should halt on the second one
11:59:57 <Vorpal> the debugger is highly confusing
12:01:15 <Vorpal> a coloured ghc prompt would probably help with readablity
12:01:33 <Vorpal> something as simple as making the Prelude> bit bold
12:01:43 <Vorpal> (Well *Main, in this case)
12:02:03 <oerjan> well you can set the prompt i think, don't know about color codes
12:02:28 <Vorpal> oerjan, how do you set the prompt then?
12:05:35 <Vorpal> oerjan, btw this works for me, but does it work in winghci:
12:05:37 <Vorpal> :set prompt "\0027[1m%s>\0027[0m "
12:05:53 <Vorpal> oerjan, tell me if it looks anything like bold or highlighted
12:06:51 <Vorpal> oerjan, any idea to make ghci always run that thing at the start?
12:06:56 <Vorpal> some sort of init file?
12:06:58 <oerjan> my prompt is now "\0027[1mPrelude>\0027[0m " :D
12:07:47 <Vorpal> oerjan, so not very useful then :P
12:08:24 <oerjan> don't know, winghci has its own option menu
12:09:02 <Vorpal> okay it fucks up with readline, why
12:09:28 <Vorpal> well or whatever ghci uses
12:09:41 <Vorpal> hm $PS1 in bash uses \[ and \] around the escape code to protect them
12:09:48 <Vorpal> I wonder what the equiv in ghci would be
12:09:51 <oerjan> putStrLn of that string _does_ give bold in winghci
12:09:51 <Vorpal> Deewiant, any bright idea?
12:10:14 <Deewiant> I just use :set prompt "> ", so no
12:12:56 <Vorpal> hm http://trac.haskell.org/haskeline/ticket/78
12:15:12 -!- pikhq_ has quit (Remote host closed the connection).
12:20:22 <Vorpal> oerjan, found one issue at least
12:20:35 <Vorpal> I guess array does it the other way than I expected
12:20:56 <Vorpal> probably easiest to switch to (y,x) then
12:21:20 <oerjan> > listArray ((0,0),(1,1)) "abcd"
12:21:21 <lambdabot> array ((0,0),(1,1)) [((0,0),'a'),((0,1),'b'),((1,0),'c'),((1,1),'d')]
12:22:48 <lambdabot> Data.Ix range :: Ix a => (a, a) -> [a]
12:22:48 <lambdabot> Language.Haskell.TH.Syntax data Range
12:23:20 <oerjan> it's the Ix instance for tuples that orders lexicographically
12:24:09 <lambdabot> Source not found. And you call yourself a Rocket Scientist!
12:24:11 <Vorpal> *Main> downRight "↓ a b\n→ c d"
12:24:44 <Vorpal> I guess I should write a main too
12:32:07 <Vorpal> yay it is done, 70 lines
12:32:30 <Vorpal> executeDownRight :: Array (Int, Int) String -> Seq.Seq Char -> (Int, Int) -> (Int,Int) -> (Int,Int)
12:32:34 <Vorpal> hm that seems a bit long
12:39:57 <Vorpal> I'm sure this could be written in a nicer way, but I'm not that good at haskell yet. If you give criticism, make it constructive! http://sprunge.us/cCfg
12:40:12 <Vorpal> wait, esolang wiki is public domain right
12:40:27 <Vorpal> guess that means no BSD license if it goes there
12:47:33 <Vorpal> oerjan, Phantom_Hoover: how do you make a code block on the wiki?
12:55:14 <Vorpal> Phantom_Hoover, <pre> it was
12:55:23 <Vorpal> well there we go, the implementation is on the wiki
12:59:49 <Vorpal> oerjan, so, how horrible is http://esolangs.org/wiki/Talk:DownRight#Implementation_in_haskell
13:12:10 <oerjan> Vorpal: the idiomatic way to split away the first element of a Seq is to use the left view function and pattern match
13:12:25 <Vorpal> oerjan, how does that work
13:12:38 <Vorpal> oerjan, the view thigy I mean
13:15:04 <oerjan> case viewl queue of EmptyL -> pos; instr <| newqueue -> ...
13:15:46 <oerjan> also you can use where clauses in a case match, no need for let ... in ...
13:16:10 <Vorpal> oerjan, anything wrong with let?
13:16:17 <Vorpal> oerjan, let looks neater than where to me
13:16:28 <Vorpal> but maybe because I'm used to reading programs from the top going down
13:16:55 <Vorpal> oerjan, same reason I dislike perl's reversed if I guess
13:16:57 <oerjan> ok although you get less indentation with where
13:17:23 <Vorpal> oerjan, it isn't going past 100 columns, I have no issue with it
13:17:38 <oerjan> you might want to align the "in" with the "let" if you do that
13:18:11 <Vorpal> yes I see I used two different ways a bit above
13:18:33 <Vorpal> oerjan, is the let style used in programToArray idiomatic (wrt indention)
13:19:01 <Vorpal> I should probably do the same in executeDownRight
13:20:41 <oerjan> i'm not that knowledgeable about haskell style
13:21:41 <Vorpal> <oerjan> case viewl queue of EmptyL -> pos; instr <| newqueue -> ...
13:21:52 <Vorpal> downright.hs:66:9: Parse error in pattern
13:21:57 <Vorpal> for the instr <| newqueue stuff
13:22:04 <Vorpal> (Seq.<|) instr newqueue ->
13:22:08 <Vorpal> which is surely the same
13:23:06 <Vorpal> oerjan, maybe some new feature in ghc 7?
13:23:36 <Vorpal> viewl docs says a :< (Seq a) leftmost element and the rest of the sequence
13:23:42 <Vorpal> maybe that is what you ma
13:24:20 <oerjan> indeed, i misread the :browse output
13:24:48 <Vorpal> oerjan, I'd like proper docs available in ghci, not just the type signature
13:24:51 <oerjan> another thing, i think your parse will fail on a file containing only whitespace
13:25:03 <Vorpal> sure type signature + name tell you something, but far from everything
13:25:07 <Vorpal> especially for IO stuff
13:25:21 <Vorpal> oerjan, that is intended surely?
13:25:34 <oerjan> well you don't fail on empty file...
13:25:35 <Vorpal> since leading whitespace on the first line isn't defined
13:25:47 <Vorpal> oerjan, empty file does not have leading whitespace on the first line
13:25:51 <Vorpal> a file with just whitespace does
13:26:18 <Vorpal> oerjan, what is "heh" about that
13:26:50 <oerjan> Vorpal: don't you have haddock documentation, my installation of the haskell platform includes that
13:27:07 <Vorpal> oerjan, I installed ghc from my distro package manager
13:27:45 <Vorpal> oerjan, but if it involves anything more complicated than say :h foo in ghci it really isn't that helpful
13:27:47 <oerjan> it includes generated html from haddock
13:27:55 <Vorpal> oerjan, means I need to start a browser
13:28:00 <Vorpal> inconvenient most of the time
13:28:14 <Vorpal> oerjan, I often don't run X until I actually need it
13:28:27 <Vorpal> and console browsers leave something to be desired
13:28:42 <Vorpal> oerjan, come on, even python has help from the REPL
13:28:53 <Vorpal> and erlang has it from the command line, proper man pages
13:28:59 <Vorpal> proper man pages would work too
13:29:07 <oerjan> well i don't know what other formats haddock can generate, but you can always read the source files if you download them
13:29:12 <Vorpal> like erl -man some_module
13:29:36 <Vorpal> oerjan, perl has perldoc, perfectly readable in a terminal
13:30:09 <Vorpal> oerjan, well how does one run haddock? haddock Data.Sequence?
13:30:23 <oerjan> Vorpal: listen i have no idea how the haskell platform is set up on linux
13:30:45 <Vorpal> oerjan, I don't think this is the platform, this system surely predates that "batteries included" stuff
13:30:55 <oerjan> i think usually one runs a cabal command to generate the haddock as well
13:31:34 <Vorpal> No manual entry for cabal
13:31:59 <Vorpal> oerjan, yes but again that is html docs
13:32:07 <oerjan> ok i will speak no more of this, since i don't know the answer and you are starting to irritate me
13:32:08 <Vorpal> html docs are just annoying
13:32:24 <Vorpal> oerjan, sure, anyway, will upload viewl based version
13:32:30 <Vorpal> it does indeed make things cleaner
14:04:53 <oerjan> square root of minus garfield seems to be taking a dark turn
14:10:58 -!- zzo38 has joined.
14:12:27 -!- zzo38 has set topic: The first rule of thumb is that you do not talk about thumb. | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
14:14:22 -!- MigoMipo has joined.
14:20:47 -!- augur has quit (Remote host closed the connection).
14:26:18 <zzo38> Who invented "lesser of two evils"?
14:33:36 * oerjan notes that the wikipedia article doesn't say anything about the etymology
14:34:05 <oerjan> being mostly about the "lesser of two evils" in politics
14:35:51 <zzo38> If you don't know who invented it, who is commonly associated with this quotation?
14:36:18 <oerjan> it doesn't seem to be much of a _quotation_, just a phrase
14:40:51 <oerjan> trying to google '"lesser of two evils" dictionary etymology' doesn't seem to give anything about that phrase itself
14:41:01 <zzo38> I have idea to invent a new hypothetical kind of node in TeX. It consists of a list of pairs of numbers and node lists. It will select whichever node list, to be included into the current list, which results in the fewest demerits (or least badness+penalty for vertical lists). The numbers are the extra demerits (or penalties for vertical lists) to be added if that one is selected.
14:41:56 <zzo38> How many uses for this can you think of?
14:43:30 -!- oerjan has quit (Quit: Later).
14:51:09 <zzo38> More ADOM challenges:
14:52:20 <zzo38> Restricted Eternium Man: As Eternium Man, but pick pockets and companions are not allowed. If you start with a companion or read a scroll of familiar summoning you must attack them at first to kill them as much as and as soon as possible.
14:52:43 <zzo38> Very Restricted Eternium Man: As Restricted Eternium Man, but it is not allowed to wish for anything. You must leave any wish you receive blank.
14:55:36 <zzo38> Restricted Plutonium Man: As Plutonium Man, but after background corruption is stopped, everything else done after that doesn't count.
14:57:08 <zzo38> Pray Game: You must use the pray command every time immediately after using a upstairs or downstairs command.
14:57:35 <zzo38> Restricted Pray Game: As Pray Game, but no sacrificing on altars is permitted.
14:57:50 -!- poiuy_qwert has joined.
15:00:01 <zzo38> Unluck Game: Immediately save the game and then change the name of your character in the save file, wrecking the checksum and making you run out of luck.
15:13:01 -!- ais523 has joined.
15:24:42 <zzo38> Convenience does not mean ease of use!
15:31:30 <Phantom_Hoover> http://www.reddit.com/r/reddit.com/comments/hb8v9/reading_reddit_may_have_just_saved_my_life/
16:25:30 -!- cheater666 has quit (Quit: Leaving).
16:27:14 -!- variable has quit (Read error: Operation timed out).
16:30:13 -!- variable has joined.
16:30:27 <Vorpal> <Phantom_Hoover> OMG the Nigerian Finance Minister is back. <-- in a rather painful way too
16:30:34 <Vorpal> that comic made me go "augh"
16:35:46 -!- CakeProphet has quit (Ping timeout: 246 seconds).
16:36:58 -!- CakeProphet has joined.
16:36:58 -!- CakeProphet has quit (Changing host).
16:36:58 -!- CakeProphet has joined.
16:46:44 -!- zzo38 has quit (Remote host closed the connection).
16:46:58 -!- cheater79 has joined.
16:50:02 -!- Wamanuz has joined.
16:54:13 -!- Wamanuz5 has quit (Ping timeout: 276 seconds).
16:58:51 -!- augur has joined.
16:59:40 -!- azaq23 has joined.
17:09:39 -!- elliott has joined.
17:15:36 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
17:25:40 -!- variable has quit (Read error: Connection reset by peer).
17:30:55 -!- variable has joined.
17:32:04 -!- Phantom_Hoover has joined.
17:41:55 -!- ajf|offline has changed nick to ajf.
17:46:29 <cheater79> Schizoaffective programmer Michael Crawford says "I can work effectively even when I'm wigging, even when I'm hallucinating, even when I'm severely depressed." He later expanded on this: And by wigging, I meant that I could develop software while severely paranoid. I've spent a lot of productive hours at the office, laboring at my computer, while trying to avoid thinking of the fact that a Nazi armoured division was holding m
17:46:57 <cheater79> http://blog.tesser.org/2011/5/12/mental-illness-and-startups
18:12:05 <Sgeo> Dear Chrome: Stop losing my cookies every time I close you
18:25:58 -!- monqy has joined.
18:45:46 -!- micahjohnston has changed nick to micahjohnstonn.
18:47:50 -!- micahjohnston has joined.
18:59:24 <Phantom_Hoover> "Numb3rs — IRC is Drug Dealing Boats in the Ocean" — http://www.cracked.com/article_19160_8-scenes-that-prove-hollywood-doesnt-get-technology_p2.html
18:59:38 <Phantom_Hoover> Hey, guys, let's get a boat and deal some drugs on it!
19:01:51 <Vorpal> ais523, I implemented ↓→ in haskell btw, you might want to check talk page on wiki for it
19:01:59 -!- augur has quit (Remote host closed the connection).
19:02:04 <Vorpal> (in case you haven't already seen it)
19:02:10 <elliott> I'm almost scared to look.
19:02:16 <ais523> not that downright impls are all that interesting, it's quite a simple language
19:02:24 <Vorpal> elliott, I'm certain it could be better in some ways
19:02:35 <elliott> Vorpal: maybe you've actually written code worse than Shiro.
19:02:38 <Vorpal> ais523, Keymaker beat me to it btw, making one in python
19:02:52 <Vorpal> elliott, it is pretty much parsec + pure haskell + main
19:02:55 <ais523> I'm of the opinion that nearly all Haskell code is bad
19:02:56 -!- oerjan has joined.
19:03:04 <Vorpal> ais523, what is wrong with haskell
19:03:12 <ais523> elliott: I mean, Haskell can be written well
19:03:17 <ais523> I just think, most people who write it write it badly
19:03:27 <elliott> downrightFile = (sepEndBy1 line eol) <|> (eof >> return [])
19:03:34 <elliott> You could JUST OMIT THE ONE and avoid that <|> thing.
19:04:08 <Vorpal> elliott, no that one would allow a file with whitespace
19:04:17 <Vorpal> elliott, an empty file is valid
19:04:26 <ais523> err, is 0 coprime with 0?
19:04:40 <elliott> Anyway, downrightFile is kind of awful because it's inconsistent.
19:04:41 <Vorpal> ais523, I implement the extension that they don't need to be coprime
19:04:46 -!- azaq23 has quit (Remote host closed the connection).
19:04:56 <elliott> By extension do you mean "I was too lazy to implement the language"?
19:05:04 <ais523> Phantom_Hoover: agreed
19:05:05 <Vorpal> elliott, a file with just whitespace *has leading whitespace on the first line*, which is undefined
19:05:16 <elliott> OK well your use of Parsec is awful but I'll ignore it for now.
19:05:20 <elliott> filterDownRight = map (map (filter (`elem` "↓→")))
19:05:25 <elliott> Jesus CHRIST learn to use dollar.
19:05:27 <ais523> Vorpal: philosophical question: if the file is just whitespace, is it leading whitespace or trailing whitespace?
19:05:38 <ais523> also, map (map (...))?
19:05:47 <Vorpal> ais523, I vote for left associative whitespace, thus making it leading
19:06:05 <Vorpal> is there some better way
19:06:10 <Vorpal> ais523, that is Prelude.Map btw
19:06:12 <ais523> nah, it's OK, just surprising
19:06:21 <elliott> Vorpal: map . map $ filter (`elem` "↓→")
19:06:35 <Vorpal> elliott, but that just saves some ()
19:06:46 <olsner> Vorpal: that's the point...
19:06:49 <elliott> For a start, GHC can optimise that, you know.
19:06:56 <elliott> For second, jesus christ use where clauses.
19:06:57 <Vorpal> elliott, optimise what?
19:07:04 <elliott> Vorpal: Your pointless binding of length x.
19:07:15 <elliott> Also, in goes on the line of the expression, not on the last line of bindings.
19:07:18 <Vorpal> elliott, err, I think that made the code clearer?
19:07:20 <ais523> elliott: OCaml doesn't have where clauses as far as I know
19:07:29 <elliott> checkLen (x:xs) = all (\y -> length y == length x) xs
19:07:29 <ais523> so I've got into the habit of writing code without them
19:07:35 <Vorpal> elliott, and why where clauses
19:07:36 <ais523> it's actually not too bad, normally just a line or two longer
19:07:36 <oerjan> <ais523> err, is 0 coprime with 0? <-- intuitively not, they have common divisors other than 1
19:07:37 <elliott> ais523: That's just a flaw of OCaml.
19:07:40 <elliott> Vorpal: Because that's ugly.
19:07:45 <Vorpal> elliott, I read code from top to bottom, not jumping around
19:07:46 <ais523> oerjan: as in every number in existence?
19:07:53 <Vorpal> elliott, that is why I dislike perl's reverse if too
19:08:07 <ais523> I more or less read Haskell right to left
19:08:09 <elliott> Vorpal: OK, well, I'm trying to help you be a better Haskell programmer, so maybe: no?
19:08:21 <Vorpal> elliott, hm okay I guess where clause is more idiomatic then
19:08:26 <ais523> although it depends on what the code actually is
19:08:27 <Vorpal> elliott, but why is it more idiomatic
19:08:37 <Vorpal> elliott, I'm used to let in scheme too
19:08:38 <elliott> Vorpal: Because your code doesn't read smoothly.
19:08:53 <Vorpal> elliott, would you argue scheme code doesn't read smoothly either?
19:09:27 <Vorpal> elliott, but the construct let is pretty much the same in both, give or take some parens and the in keyword
19:09:31 <Phantom_Hoover> OK this Second Life chase scene is the funniest thing ever.
19:09:48 <elliott> programToArray :: [[String]] -> Array (Int,Int) String
19:09:48 <elliott> programToArray p@(x:xs) = listArray ((0,0), (h,w)) $ concat p
19:10:09 <Vorpal> elliott, ah, right, I guess I should use the @ thing more yes
19:10:17 <Vorpal> iirc there are a few other places where it would be a good idea
19:10:19 <elliott> "executeDownRight" -- Haskell has modules, just "execute" is fine.
19:10:26 <Phantom_Hoover> Vorpal, http://www.cracked.com/article_19160_8-scenes-that-prove-hollywood-doesnt-get-technology_p2.html
19:10:44 <oerjan> <ais523> oerjan: as in every number in existence? <-- if you interpret the g in gcd in the division lattice sense, then gcd 0 0 is clearly 0
19:10:44 <elliott> Some of your argument names are a bit overly long and make the code less scannable, but whatever, it's not a huge deal.
19:10:53 <Vorpal> elliott, right, but with :load it doesn't work that neatly :(
19:11:06 <elliott> Vorpal: For a start, use inferior-haskell, dude.
19:11:08 <oerjan> and 0 is the top lattice element
19:11:11 <ais523> oerjan: I was thinking more along the lines that 0 is a multiple of every prime
19:11:16 <ais523> so it has an infinite number of prime factors
19:11:31 <oerjan> ais523: well that's equivalent (well also every prime power)
19:11:34 <Vorpal> elliott, I was using nano for no obvious reason for this, but okay
19:11:41 <elliott> You're indenting case statement bodies by five. wtf.
19:11:48 <Vorpal> elliott, :load and :m in ghci seems to load into the "top" scope or whatever you call it
19:11:53 <elliott> Actually your indentation is a bit too large in general IMO, but whatever; but five? wat.
19:11:54 <Vorpal> elliott, that is a mistake
19:12:00 <elliott> Vorpal: It is so not a mistake.
19:12:05 <Vorpal> elliott, I'm sure it should be 4
19:12:15 <elliott> Vorpal: <Vorpal> elliott, :load and :m in ghci seems to load into the "top" scope or whatever you call it
19:12:23 <oerjan> Vorpal: well i guess my advice to use <$> to avoid elliott shouting at you wouldn't have helped anyway (he shouts regardless :D)
19:12:29 <elliott> For a start, you don't have a module declaration, so it's in the Main module. This is correct since it's a self-contained program.
19:12:37 <elliott> For a second, that's desirable behaviour.
19:12:56 <elliott> If you're writing a downright impl, you want to be able to test the functions quickly, so why type DownRight all the time?
19:13:03 <elliott> WHY ARE MY MESSAGES BEING THROTTLED
19:13:07 <elliott> I DON'T KNOW HOW MUCH OF THIS SHIT IS GETTING DROPPED
19:13:10 -!- elliott has quit (Quit: Leaving).
19:13:16 -!- elliott has joined.
19:13:35 <oerjan> Vorpal: incidentally did you know that the first version of haskell didn't even _have_ let? (there are haskell 1 programs using let as an ordinary variable)
19:13:38 <elliott> Vorpal: http://sprunge.us/AVWU
19:13:40 <elliott> Some of this might have been dropped.
19:14:01 <Vorpal> oerjan, no I wasn't aware
19:14:10 <elliott> downRightInteract :: String -> String
19:14:10 <elliott> ParseErr err -> "Parse error: " ++ show err ++ "\n"
19:14:10 <elliott> Error err -> "Error: " ++ err ++ "\n"
19:14:10 <elliott> FinalPos pos -> "Halted at " ++ show pos ++ "\n"
19:14:13 <elliott> This is an ugly use of interact.
19:14:37 <elliott> Actually so is the unification of parsing and running into that weird DownRightReturn thing IMO
19:14:51 <Vorpal> elliott, I was a bit annoyed at not being able to construct ParseError myself, otherwise I would have used Either
19:14:59 <Vorpal> or if I can construct them I have no clue how
19:15:00 <elliott> "Construct ParseError myself"?
19:15:07 <elliott> What are you trying to do?
19:15:21 <Vorpal> elliott, well, you can't have Either ParseError ErrorMessageOfMyOwn Result
19:15:59 <elliott> OK well I'll ignore that what you're saying is incoherent to nitpick other things for now.
19:16:06 <elliott> (Seq.:<) instr newqueue ->
19:16:23 <Vorpal> elliott, hm okay, that looks ugly though
19:16:33 <elliott> You could always import (:<) so you could do
19:16:58 <Vorpal> elliott, yes sure, but meh
19:17:04 <Vorpal> elliott, anyway that operator looks rather silly
19:17:12 <Vorpal> way too much like a smiley
19:17:14 <elliott> (Unrelated nitpick: "-- Released in public domain in countries where that is applicable." ;; Suggest WTFPL since this currently reserves all rights in countries where PD is inapplicable.)
19:17:32 <elliott> Vorpal: : has to be used, since otherwise it wouldn't be a valid constructor name.
19:17:47 <Vorpal> elliott, good idea, I'd do it as BSD 2 clause except that they I couldn't put it on the wiki
19:18:22 <Vorpal> elliott, anyway convert the wiki to WTFPL instead of public domain and I'll change it
19:18:26 <olsner> Vorpal: the module that exports ParseError also exports functions that create them
19:18:33 <elliott> Vorpal: Um, the wiki is http://creativecommons.org/licenses/publicdomain/.
19:18:38 <Vorpal> olsner, huh, must have missed the docs
19:18:39 <elliott> So just license it under that.
19:18:45 <ais523> elliott: the WTFPL probably works quite badly in some countries
19:18:48 <elliott> Or, well, "Available as described at http://creativecommons.org/licenses/publicdomain/"
19:18:49 <Vorpal> elliott, ah, so that is not the same as plain public domain?
19:18:58 <elliott> Vorpal: Name of "checkLen" is wrong; avoid verbs.
19:19:06 <ais523> CC-PD is much more complex than many licenses, because making something truly PD or equivalent is really hard
19:19:07 <Vorpal> "Creative Commons has retired this legal tool and does not recommend that it be applied to works."
19:19:17 <ais523> it used to be five lines
19:19:18 <elliott> Also it isn't checking the "length", it's checking the list for a certain property.
19:19:22 <ais523> then it expanded to something like ten paragraphs
19:19:37 <tswett> Okay, let's see if I can consistently make my bot crash.
19:19:45 <ais523> then it contracted again, by the look of it
19:19:47 <Vorpal> elliott, which is arguably related to length but sure
19:20:25 -!- augur has joined.
19:20:35 <oerjan> what we need is a license that gives the right to kill any lawyers that claim the work isn't public domain
19:20:51 <ais523> nowadays they've invented CC0
19:21:09 <Vorpal> ais523, what is the difference?
19:21:23 <elliott> Vorpal: 0 has no sugar and twenty five percent less calories
19:21:50 <ais523> CC0 attempts to work in every jurisdiction in the world, not just the US
19:22:01 -!- tswettbot has joined.
19:22:20 <Vorpal> ais523, so we should probably shift to it, or shift to something else entierly
19:22:24 <elliott> filterDownRight is also badly named; I'd suggest "clean" or something.
19:22:27 <Vorpal> I guess that is tricky in practise however
19:22:47 <elliott> "clean" is pretty vague, but the previous name is vaguer.
19:22:50 <Vorpal> elliott, or filter, and then I use Prelude.filter in it, for maximum confusion
19:23:00 <elliott> No, filter shadows Prelude, which is unforgivable :)
19:23:07 <elliott> (As far as vagueness goes, you can't fit a function's definition into its name, anyway.)
19:23:25 <Vorpal> elliott, hey, Data.Sequence gets away with shadowing Prelude
19:23:32 <elliott> Vorpal: Data structures can.
19:23:36 <elliott> Because you're meant to import them qualified.
19:23:45 <elliott> That's for consistent naming, e.g. filter vs. Map.filter
19:24:13 <Vorpal> <elliott> (As far as vagueness goes, you can't fit a function's definition into its name, anyway.) <-- and that is why haskell needs man page docs for modules, or even better, something like the built in help() in python REPL
19:24:19 <Vorpal> I don't like html based docs
19:24:40 <Vorpal> that means I have to start X. Console based web browsers leaves a lot to be desired.
19:24:59 <elliott> Vorpal: "and that is why haskell needs" Rephrase this in a way that doesn't blame the Haskell community for your personal dislike :P
19:25:04 <elliott> w[three]m works fine on Haddock docs.
19:25:08 <elliott> and Haddock can also generate pdfs iirc
19:25:21 <Vorpal> elliott, tried pdf outside X any time?
19:25:27 <elliott> No, but you can print them.
19:25:33 <Vorpal> elliott, anyway something as integrated as :t would be ideal
19:25:43 <elliott> I think haskell-mode has something.
19:26:30 <elliott> Yeah, w3m /usr/local/share/doc/parsec-3.1.1/html/index.html works great.
19:27:12 -!- tswett has set topic: okoko | The first rule of thumb is that you do not talk about thumb. | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
19:27:12 -!- tswettbot has quit (Quit: tswettbot).
19:27:14 <Vorpal> elliott, still somewhat more work compared to help() in python (which I have to say is one of the few truly great things with python)
19:27:14 <elliott> Uh oh, I seem to not have Prelude documentation on this system :(
19:27:23 <ais523> tswett: I like that topic
19:27:26 <Vorpal> <elliott> Yeah, w3m /usr/local/share/doc/parsec-3.1.1/html/index.html works great. <elliott> Uh oh, I seem to not have Prelude documentation on this system :(
19:27:30 <elliott> Vorpal: Hitting a key-combo in Emacs is zero effort.
19:27:39 <elliott> Also, that's because I installed my own GHC.
19:27:42 <elliott> (With the binary package since I'm lazy.)
19:27:44 <Vorpal> elliott, vim users wouldn't agree
19:27:44 <tswett> I designed it to repel tswettbots.
19:27:59 <ais523> which bit repels the tswettbot?
19:28:00 <tswett> Now tswettbot cannot set foot in this channel and expect to live. Observe.
19:28:23 -!- tswettbot has joined.
19:28:24 -!- tswettbot has quit (Client Quit).
19:28:45 <elliott> Vorpal: What about vim users?
19:28:47 <Vorpal> tswett, what is the point of this?
19:28:54 <tswett> Vorpal: I'm trying to figure out what's wrong with my bot.
19:28:57 <elliott> You use Emacs; therefore what is relevant is Emacs ways to accomplish tasks.
19:29:01 <Vorpal> elliott, they don't agree with "<elliott> Vorpal: Hitting a key-combo in Emacs is zero effort."
19:29:13 <Vorpal> elliott, anyway I'm using nano more and more these days
19:29:18 <elliott> Well, don't use nano for Haskell.
19:29:20 <Vorpal> elliott, and µemacs quite a bit too
19:29:33 <elliott> It is clearly unforgivably bad with indentation.
19:29:37 -!- zzo38 has joined.
19:29:52 -!- tswett has set topic: opoko | The first rule of thumb is that you do not talk about thumb. | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
19:30:53 <Vorpal> tswett, I know what is wrong with your bot. You made it quit on seeing "okoko" in the topic
19:31:46 <Vorpal> <elliott> C-c C-l C-x o ;; REPL
19:31:54 <Vorpal> I consider that a bit too long btw
19:32:20 <elliott> C-c (two) C-l (four) C-x (six) o (Assuming you count Ctrl as separate which is silly)
19:32:26 <elliott> Compare with Alt-Tab, :, ...
19:32:49 <Vorpal> elliott, I don't like alt-tab, because it doesn't work well with more than 3-4 programs open
19:32:53 <elliott> Also, instead of "newblah", say "blah'".
19:32:53 <ais523> elliott: C-c (two) C-l (three) C-c (four) o ;; REPL
19:33:14 <Vorpal> elliott, anyway it is not quite as bad due to not moving one of the keys, just repeating the same one
19:34:55 <elliott> I'm working on a clean-up of the code, FWIW
19:35:14 <elliott> Leaving the Parsec parts alone because I'm lazy
19:36:00 <oerjan> hey i already suggested filter (not . null) . map words . lines :)
19:36:18 <elliott> Yeah, that probably /is/ better than Parsec here
19:36:21 -!- tswett has set topic: opokoko | The first rule of thumb is that you do not talk about thumb. | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
19:36:22 <elliott> I was unclear on just how little "syntax" there was
19:36:33 <Vorpal> <elliott> Yeah, that probably /is/ better than Parsec here <-- you convinced me
19:36:38 <Vorpal> I wouldn't have used that otherwise
19:36:43 <ais523> well, you have to allow \n, \f, and \v as line separators
19:36:46 <Vorpal> elliott, I trusted you
19:36:47 <elliott> It's not /that/ overkill really
19:36:48 -!- tswettbot has joined.
19:36:48 -!- tswettbot has quit (Client Quit).
19:36:52 <Vorpal> ais523, oh \f and \v too
19:36:54 <ais523> also, \n(whitespace)\n is just the one line separator
19:37:09 <oerjan> > lines "test\nhi\fho\vthere"
19:37:28 <oerjan> sic transit gloria mundi :(
19:37:32 <Vorpal> elliott, anyway I'll fix some of the points
19:37:50 <elliott> Vorpal: I'd wait until I finish this cleanup :P
19:38:38 <Vorpal> elliott, so it should be:
19:38:53 <elliott> Vorpal: Too busy finishing off this tweak to answer.
19:39:01 <Vorpal> elliott, well I'll leave it in place then
19:39:23 <Vorpal> elliott, I *am* going to upload it over it there
19:39:59 <Vorpal> elliott, you can of course make it in a new section, but on a talk page it would be wrong to overwrite what someone else said, especially since it is signed as me
19:40:06 <Vorpal> should be moved to the non-talk page then
19:40:19 <elliott> When the fuck did I ever say I was going to overwrite ... what?
19:40:22 <elliott> I have no idea what you are talking about.
19:40:25 <Vorpal> oh I misunderstood then
19:40:34 -!- calamari has joined.
19:40:48 <elliott> But you sure are being hostile to someone cleaning up your code to try and help you become a better Haskell programmer.
19:41:08 -!- tswettbot has joined.
19:41:15 <Vorpal> elliott, nope, I'm not, I'm just asking that you explain it instead so I can fix it, I'll learn more that way
19:41:39 <elliott> Vorpal: So you can't compare two pieces of code side by side?
19:41:59 <elliott> Cleaning up people's code is a standard practice in #haskell.
19:43:25 <lambdabot> forall a. (a -> Bool) -> [a] -> ([a], [a])
19:43:31 <elliott> oerjan: gah what /is/ the function lines/words is based on?
19:43:32 <Vorpal> elliott, oh btw y and x have weird numbering ordering there, I'm surprised you didn't discover it.
19:43:48 -!- tswettbou has joined.
19:43:50 -!- tswettbot has quit (Remote host closed the connection).
19:43:56 <Vorpal> elliott, the reason is of course that array's fromList didn't do it the way I expected
19:44:13 <Vorpal> elliott, thus x is vertical and y horizontal
19:44:16 <Vorpal> because that was easier
19:44:33 <elliott> I'm not bothering to look at the actual algorithms.
19:44:37 <elliott> All these improvements are structural.
19:44:38 <Vorpal> you could go over and rename the thing
19:44:44 <oerjan> elliott: there wasn't a generic version of those when they were added, there might still not be in the standard library
19:44:54 <Deewiant> words = split . dropBlanks . dropDelims . whenElt
19:44:57 <Deewiant> lines = split . dropFinalBlank . dropDelims . whenElt
19:45:04 <Deewiant> -- http://hackage.haskell.org/packages/archive/split/0.1.4/doc/html/Data-List-Split.html
19:45:13 <Vorpal> what the heck is whenElt?
19:45:17 <oerjan> there is however a package ... yeah the one Deewiant mentioned
19:45:27 <elliott> http://www.haskell.org/ghc/docs/latest/html/libraries/base/src/Data-List.html#lines
19:45:44 <elliott> Deewiant: That's a bit of a dependency for handling two more characters in one call :)
19:45:53 -!- tswettbov has joined.
19:45:55 <elliott> Although, since \n[whitespace] counts as a break, maybe it's worthwhile
19:45:56 <Deewiant> It's one of my default dependencies for almost everything
19:46:04 <elliott> OK, yeah, split is ubiquitous.
19:46:09 <elliott> I guess the Haskell Platform counts as stdlib now :)
19:46:11 <Vorpal> elliott, what? You are dropping the parsec?
19:46:24 <elliott> Depends on if oerjan's line can be tweaked into something correct without pain.
19:46:33 <Deewiant> It's in my .ghci along with monad-loops and maybe something else, I forget
19:46:41 <Vorpal> elliott, well as long as it works on ghc 6 + parsec :P
19:46:51 <elliott> Vorpal: You have the Haskell Platform installed?
19:46:59 -!- tswettbov has quit (Client Quit).
19:47:02 <Vorpal> elliott, I don't know if ubuntu uses the haskell platform, I uses whatever is in the package manager
19:47:09 <elliott> Vorpal: sudo apt-get install haskell-platform
19:47:17 <Vorpal> elliott, don't think so no
19:47:27 <Vorpal> elliott, I had to install parsec for this
19:47:35 <Vorpal> elliott, meh, this think has a small hdd
19:47:35 <elliott> What you have is like gcc without libc. :p
19:47:47 <elliott> Vorpal: haskell-platform isn't significantly larger than ghc.
19:47:56 <Vorpal> elliott, I used that a fair number of times, having half a libc is a luxury!
19:48:05 -!- tswettbou has quit (Ping timeout: 252 seconds).
19:48:07 <elliott> Just install it for chrissakes.
19:48:37 <Vorpal> elliott, ah, when I was young we used to *dream* of having even a quarter of a libc!
19:48:42 <elliott> oerjan: wordsBy and linesBy seem useful in Data.List.Split.
19:49:01 * oerjan hasn't used Data.List.Split himself
19:49:02 <Vorpal> elliott, does that handle vertical tab and form feed correctly?
19:49:12 <elliott> Right [] -> Error "Can't handle null program yet"
19:49:21 <elliott> Vorpal: STFU, they take predicates.
19:49:50 <elliott> I'm going to take a break now to mercilessly mock today's log.
19:50:07 <elliott> 00:39:50: <pikhq_> 140,000 miles of testing on the streets of LA.
19:50:08 <elliott> 00:39:53: <ajf> an AI knows not of how to react to the unknown
19:50:15 <elliott> 00:40:31: <ajf> say, hypothetically, the car is damaged without the AI noticing
19:50:15 <elliott> 00:40:40: <ajf> would it drive on? yes.
19:50:22 <elliott> You're... assuming this thing has no "off" button for a human to hit?
19:50:33 <elliott> 00:42:31: <ajf> the average numskull
19:50:33 <elliott> 00:42:39: <ajf> reacts better to the unknown than an AI
19:50:42 <elliott> 00:43:00: <ajf> pikhq_: OK
19:50:43 <elliott> 00:43:09: <ajf> the car sets on fire
19:50:43 <elliott> 00:43:29: <ajf> what happens?
19:50:54 <elliott> The person in it sits there mindlessly, unaware that it's on fire, and has no idea to push the off switch. Obviously.
19:51:08 <elliott> 00:44:50: <ajf> I just wonder
19:51:08 <elliott> 00:45:00: <ajf> How the AI reacts to certain scenarios
19:51:08 <elliott> 00:45:09: <ajf> That could not have been forseen
19:51:12 <oerjan> also, the person is made of straw
19:51:17 <elliott> If they can't be foreseen, then there's no way you can foresee them.
19:51:25 <elliott> Therefore every example you come up with is crap and your argument is baseless.
19:51:40 <tswett> I really love it when people are wrong. When someone says something that's wrong, I want people to tell me, so that I can know how wrong they are.
19:51:47 <elliott> But I'd like to see a scenario which a human could easily deal with, but in an AI-based situation, the human would somehow have no idea how to press the stop button.
19:51:49 <ajf> elliott: you don't get it
19:52:00 <ajf> that was a bad example
19:52:03 <elliott> 00:47:10: <ajf> What happens when the AI makes a mistake.
19:52:03 <elliott> 00:47:15: <ajf> AI isn't flawless.
19:52:08 <ajf> the traffic scenario later on was better.
19:52:08 <elliott> Cool. What happens when the human makes a mistake. Human isn't flawles.
19:52:26 <ajf> elliott: The himan can learn from mistakes
19:52:28 <Vorpal> <elliott> Right [] -> Error "Can't handle null program yet" <-- I consider that a missing feature yes
19:52:29 <ajf> Who said the AI can@
19:52:38 <elliott> 00:48:39: <Lymia> ajf, it makes a mistake
19:52:38 <elliott> 00:48:47: <Lymia> If it makes less mistakes than human drivers, it's still successful
19:52:38 <elliott> 00:49:11: <ajf> inb4 lawsuits
19:52:38 <elliott> Memes as a substitute for argument: the movie: the game.
19:52:46 <Vorpal> elliott, anyway, be glad oerjan told me about viewl :P
19:52:48 <elliott> 00:49:42: <ajf> There's the risk that AI could be deployed with serious errors
19:52:48 <elliott> 00:49:59: <ajf> Remember when that company made a cancer treatment device with a race condition?
19:52:48 <elliott> 00:50:05: <ajf> And killed several people?
19:52:54 <elliott> If it's common, it will be found in testing.
19:53:08 <elliott> Which is, as previously mentioned, already happening.
19:53:19 <tswett> Therac's race condition wasn't detected in testing.
19:53:22 <ajf> The cancer thing only happened during a very specific scenario
19:53:40 <elliott> So the argument is... things have errors?
19:53:53 <elliott> ajf still hasn't presented a scenario that isn't solvable by the human pressing a "stop immediately" button.
19:54:04 <tswett> I guess we can take the outside view here.
19:54:05 <ajf> I did have one
19:54:07 <Vorpal> life critical devices should be formally verified always
19:54:10 <ajf> The traffic light scenario
19:54:18 <tswett> Sometimes, people's lives depend on computer programs. How often do the programs fail and kill them?
19:54:25 <ajf> Say the traffic lights are not working
19:54:33 <ajf> They display the wrong lights
19:54:39 <tswett> ajf: anyway, I came into this discussion late. May I ask what position you're arguing for?
19:54:44 <ajf> And there is a huge sign, in English, stating some instructions
19:54:56 <ajf> The driver, since AI is ubiquitous, cannot drive
19:55:04 <ajf> So cannot follow those instructions
19:55:08 <ajf> And is stranded
19:55:21 <Vorpal> ajf, so a weak AI then?
19:55:27 <oerjan> ajf: apropos cancer, you know that doctors give cancer patients drugs with _severe_ side effects, and this is considered ok because if they didn't they'd be much more likely to _die_? the argument for ais driving cars is _very_ analogous, except the side effects are probably far less
19:55:29 <ajf> tswett: I feel AI is no match for the human brain
19:55:53 <tswett> ajf: okay. What's the difference between AI and a human brain that makes AI worse?
19:56:13 <ajf> AI can't necessarily adapt
19:56:33 <tswett> ajf: is it possible that we might overcome that problem in the future?
19:56:37 <Sgeo> Deaths by AI failing to adapt may be less than deaths by human driver stupidity
19:56:47 <elliott> Sgeo: this point has already been made.
19:56:49 <ajf> tswett: doubt it
19:56:50 <elliott> ajf hasn't responded to it though.
19:57:08 <ajf> My response to that is...
19:57:14 <Sgeo> Although the general public probably won't see it like that though
19:57:45 <Sgeo> If there's even one death by failed computer driving, the public will react, and completely ignore the deaths by letting humans behind the wheel
19:58:05 <elliott> If the AI results in less deaths than the human, how is the human preferable?
19:58:26 <ajf> he/she isn't
19:58:54 <ajf> I think AI would cause more problems in the long run
19:59:03 <ajf> More traffic issues, less deaths
19:59:05 <Vorpal> elliott, a possible reason: driving yourself is fun.
19:59:10 <Vorpal> not that I agree it is a good reason
19:59:20 <tswett> elliott: have you ever studied persuasion?
19:59:35 <elliott> Vorpal: Traffic jams sure are fun.
19:59:46 <Vorpal> elliott, they are rare outside big cities
19:59:54 <elliott> tswett: No; and no, I don't expect ajf to change his mind after this.
19:59:58 <Vorpal> elliott, and even there, unless huge, they tend to clear quite quickly
20:00:37 <tswett> elliott: then I hope you're having fun.
20:00:38 <Vorpal> tswett, I think elliott prefers a more straight forward approach of stating his opinion repeatedly. I guess he didn't get a good roll on the persuasion check
20:01:12 <elliott> tswett: Having said that, I don't think I've actually seen you persuade anyone of anything here either. Although #esoteric is possibly a waste of such talent.
20:01:32 <ajf> Please, ignore what I said before. I really meant to say that I am concerned about how AI would react in the event of the unknown.
20:01:50 <Vorpal> elliott, I wish persuasion would be like in D&D... Rolling a die and making a check against that value
20:01:57 <Vorpal> would be so much easier
20:02:02 <elliott> ajf: I'm concerned about how humans react in the event of the unknown. As far as I can tell we're not qualified to drive cars.
20:02:13 <ajf> elliott: Hmm
20:02:16 <ajf> You know what
20:02:16 <elliott> It's pretty fucking dangerous.
20:02:19 <tswett> elliott: that's probably true. I don't think I try very often.
20:02:33 <elliott> Vorpal: "I got a six; you have to stop believing that now."
20:02:43 <ajf> Shut up about humans being bad at driving
20:02:48 <ajf> The minority dies
20:02:53 <ajf> Not the majority
20:02:57 <Vorpal> elliott, I think it is 2d10 or such
20:03:08 <elliott> ajf: But it is incredibly relevant.
20:03:14 <Sgeo> I think I'd feel more comfortable with 100% AI on the road than 1% AI
20:03:16 <Vorpal> elliott, so probably 16 or something like that is more likely
20:03:24 <ajf> Sgeo: well
20:03:26 <Sgeo> Since the idiot humans add major unpredictability
20:03:29 <ajf> That's another isue
20:03:34 <elliott> ajf: If AI driving kills less people than human driving, then AI driving is preferable.
20:03:38 <ajf> How does an AI react to idiots?
20:03:41 <elliott> And human driving kills/injures a SHITLOAD of people.
20:03:49 <ajf> Oh wait, I just realised something
20:04:10 <ajf> What do you do if the driver can't drive, and needs to take over manual control of the car?
20:04:32 <Vorpal> ajf, surely you would still need a driving license
20:04:32 <Sgeo> If human-driven cars were introduced today, I don't think they'd get off the ground
20:04:39 <Vorpal> in case things break down
20:04:49 <Vorpal> Sgeo, they have no wings, so yeah :P
20:05:01 <ajf> Vorpal: I fear for the future
20:05:04 -!- Phantom__Hoover has joined.
20:05:06 <ajf> If AI becomes ubiquitous
20:05:15 <ajf> What if you DON'T need a license?
20:05:24 <elliott> Fearing for the future is a position ubiquitous throughout history.
20:05:25 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
20:05:30 <elliott> Another position that is ubiquitous throughout history:
20:05:34 <elliott> Thinking the present is better than the past.
20:05:45 <Vorpal> elliott, hmm what about nostalgia
20:05:53 <elliott> Vorpal: The far past, then.
20:05:53 <Vorpal> there is PLENTY of that around
20:06:04 <Sgeo> Sometimes the past really is better (middle ages etc.)
20:06:04 <ajf> >implying pokemon black and white > red and blue
20:06:16 <Phantom__Hoover> ajf, FFS, the AI could kill 1000 people a year and it'd be an improvement.
20:06:17 <elliott> ajf: Unfortunately you've become too stupid to actually be amusing any more, so I'm done here.
20:06:35 <Sgeo> Phantom__Hoover, but people'd be very ticked at it
20:06:36 <Vorpal> Phantom__Hoover, I seem to remember it is less than that in Sweden per year
20:06:36 <ajf> Phantom__Hoover: 1000 or 1000 more?
20:06:41 <Sgeo> It would be outlawed
20:06:49 <ajf> This is true
20:07:05 <tswett> elliott: that can't be right. Doesn't Heseod's "Works and Days" talk about how the past was really great, but over the centuries, things have gotten worse and worse?
20:07:06 <Phantom__Hoover> Sgeo, yes, this is because, as has been demonstrated, the majority of people are idiots.
20:07:17 <ajf> Not idiots
20:07:38 <Phantom__Hoover> ajf, 1000 people a year is *at least* two orders of magnitude less than what humans manage.
20:07:39 <ajf> It would be logical to blame AI for deaths resulting from AI-driven cars
20:07:41 <Vorpal> so it needs to be made 100% safe before it will gain major acceptance, even if 99% is a huge improvement
20:07:56 <Vorpal> ajf, only in a pure-AI setting
20:08:00 <elliott> tswett: OK, by "ubiquitous" I actually just meant "common".
20:08:08 <ajf> Vorpal: eh
20:08:14 <Sgeo> The status quo killing 10000 people is far better than new technology killing 1000 people, clearly. After all, the new thing is killing people [don't think about the lives it's saving]
20:08:15 <tswett> elliott: yes, that sounds right.
20:08:16 <elliott> And it was more a pithy remark than anything else since I'd given up on ajf at that point.
20:08:27 <Vorpal> ajf, otherwise you would have to deal with drunk drivers overtaking and hitting the AI cars on the side instead and what not
20:08:38 <Phantom__Hoover> ajf, "A 1985 report based on British and American crash data found driver error, intoxication and other human factors contribute wholly or partly to about 93% of crashes.[6]"
20:08:55 <ajf> Not surprising
20:08:55 <elliott> I now really want a perfect driving AI that relies on killing, say, a hundred thousand people per year, and consuming their bodies, to run.
20:09:13 <Vorpal> ajf, in a mixed setting it would be as now, require investigation to find who did it
20:09:21 <ajf> An AI could also make an error in judgement
20:09:27 <Vorpal> at least the AI would probably have accurate logs
20:09:35 <Phantom__Hoover> It's susceptible to others, but I highly doubt AI error could be larger than human.
20:09:41 <ajf> Especially if it has a Pentium I, but that's another matter
20:09:45 <elliott> ajf: Are you saying that an AI would kill more people than human drivers?
20:09:58 <elliott> (tswett: Shut up, I can't stop myself.)
20:10:03 <ajf> elliott: Well
20:10:12 <elliott> (It's like crack, if crack was wasting your time on IRC.)
20:10:32 <ajf> We don't know
20:10:32 <ajf> We have only had small-scale trials
20:10:43 <Sgeo> If a competent human driver can survive dangerous situations that an AI can't... (then again, maybe AI can be progammed to try to survive those situations. How do you test it though?)
20:10:44 <elliott> ajf: Yes but clearly you are making sweeping predictions already.
20:10:52 <elliott> ajf: Do you think AI drivers, or human drivers, would result in more deaths?
20:11:05 <elliott> ajf: Do you think AI drivers, or human drivers, would result in more deaths/injuries?
20:11:06 <ajf> Depends, really
20:11:16 <elliott> Pick the most likely scenario in your mind
20:11:27 <Sgeo> What if it's the case that 100% AI drivers result in 0 deaths, but a mixture of AI and human results in more deaths than human alone?
20:11:36 <Sgeo> How do we convince everyone to switch to AI?
20:11:45 <elliott> ajf: So you think humans are more likely to result in more deaths/injuries?
20:12:07 <elliott> Yet you continue to argue that AI driving is a Very Bad Thing.
20:12:15 -!- cheater79 has quit (Quit: Leaving).
20:12:16 <elliott> Hey remember how I give up?? I'm DOUBLE giving up.
20:12:22 <ajf> No because
20:12:31 -!- cheater79 has joined.
20:12:37 <ajf> Human error is gradually reducing the idiotic population
20:12:47 <ais523> elliott: I think AI driving is a bad thing, because I think programmers detached from the action are typically more likely to be incomptent than humans whose own life is on the line
20:13:11 <elliott> ais523: Why are you pinging someone who's just make a times-two give up combo.
20:13:18 <elliott> It is only going to annoy me.
20:13:18 <ajf> I accept your argument, but
20:13:23 <ajf> I have a new one
20:13:25 <Vorpal> ajf, I think natural selection will take quite a while to make us good drivers...
20:13:33 <elliott> ajf: I hope everyone else enjoys it.
20:13:53 <ajf> If a car crashes, and one car or both used AI
20:13:56 <ajf> Who is responsible?
20:14:09 <Vorpal> ajf, depends on the situation really
20:14:11 <ajf> The car manafacturer, or the driver?
20:14:13 <ajf> Or nobody?
20:14:16 <ajf> Vorpal: sure
20:14:17 <Sgeo> While we're at it, why don't we tear down hospitals, so as to gradually reduce the population of people who aren't more resistant to sickness?
20:14:32 <ajf> cheater79: Why?
20:14:34 <Phantom__Hoover> ajf, just because your preconceived notions of blame don't adapt to this situation does not make it unworkable.
20:14:37 <ajf> My car was driving itself
20:14:51 <ajf> Phantom__Hoover: I never said it was
20:14:59 <ajf> I was just wondering who you think would be "blamed"
20:15:00 <Vorpal> ajf, if it crashes due to a drunk loosing control over the car. Or what if it is driven outside parameters (warranty void if friction coefficient against road is less than x)
20:15:06 <Vorpal> (the last one is a joke)
20:15:09 <cheater79> ajf, if two other people crash, you are at fault.
20:15:15 <Phantom__Hoover> ajf, I don't think blame is a particularly useful concept.
20:15:50 <ajf> You have to sue somebody
20:15:53 <Sgeo> Even if the AI isn't to "blame", perhaps it could be adjusted to try to escape that sort of situation
20:16:04 <Vorpal> ajf, that sounds very american...
20:16:13 <Sgeo> If the AI is to blame, then there's clearly something wrong, and it needs to be adjusted
20:16:23 <Sgeo> So blame is useful for that
20:16:28 <Sgeo> "Does the AI need to be fixed"
20:16:31 <ajf> Vorpal: haha
20:16:37 <cheater79> what if someone mis-tunes the code, due to negligence
20:16:41 <ajf> Well the problem is
20:16:51 <cheater79> then a computer programmer is accountable for someone's death
20:17:05 <ajf> Really, that, the public/media/fox news will react horribly in the first AI-related death
20:17:06 <Sgeo> Then a patch can be issued, fixing the bug
20:17:13 <cheater79> HOWEVER, in situations where this happens, engineers usually have a long peer-review process applied
20:17:16 <Sgeo> ajf, I agree, and that makes me feel sad
20:17:18 <ajf> "COMPUTER KILLS HUMAN IN CAR CRASH"
20:17:24 <Phantom__Hoover> ajf, I really should have judged you when you said it was impossible for something to contain itsle.
20:17:38 <ajf> Sgeo: The sorry state of modern media also makes me feel sad
20:17:42 <Vorpal> ajf, an advantage with this is that the AI will learn from mistakes globally. In that once a fix is released it will be applied everywhere
20:17:50 <ajf> Vorpal: True
20:17:50 <elliott> Vorpal: import Text.ParserCombinators.Parsec
20:17:55 <elliott> Vorpal: Replace with import Text.Parsec.
20:17:56 <ajf> I hope they have over-the-air updates
20:18:04 <ajf> Just... don't patch when running :P
20:18:07 <Sgeo> Vorpal, if a computer driver makes a mistake, it can't learn from its mistakes globally. They'll just be banned
20:18:09 <Vorpal> elliott, I based that on Real world haskell example
20:18:14 <Vorpal> elliott, I guess it is wrong then?
20:18:34 <Vorpal> elliott, I only installed parsec 3, so why did that work then
20:18:40 <elliott> Vorpal: Backwards compatibility layer
20:18:49 <Vorpal> elliott, anything else needs changing?
20:19:06 <Vorpal> It could refer to either `Main.Error', defined at downright.hs:31:45
20:19:07 <Vorpal> or `Text.Parsec.Error', imported from Text.Parsec at downright.hs:26:0-17
20:19:25 <elliott> import Text.Parsec hiding (Error)
20:19:28 <elliott> import qualified Text.Parsec as Parsec
20:19:46 <Vorpal> elliott, the qualified one would be quite unwieldy though
20:21:25 <Vorpal> ais523, did you say \f and \v counted as line separators?
20:21:42 <ais523> yes, any block of whitespace including \n, \f, or \v is a line separator
20:21:49 <Vorpal> ais523, as far as oerjan understood it, \n\n would be collapsed to \n yeah
20:22:37 <Vorpal> ais523, hm so eol = (many1 (oneOf "\n\v\f")) >> ws isn't really correct
20:22:48 <Vorpal> it needs to handle \n \n \n ?
20:23:03 <elliott> i wish lambdabot had split so I could test the composition version oerjan did
20:23:12 <Vorpal> elliott, can't you test it locally?
20:24:04 <Vorpal> ais523, okay I'm at loss how to write that for parsec
20:24:20 <oerjan> Vorpal: many1 (oneof "\n\v\f" >> ws)
20:24:36 <Vorpal> oerjan, oh, wait, why would that work
20:24:55 <Vorpal> oerjan, I was thinking this might, but I guess not: eol = (many1 (oneOf "\n\v\f")) >> ws >> eol
20:25:19 <Vorpal> maybe it would with many instead of many 1
20:25:25 <oerjan> Vorpal: well that might too
20:25:53 <oerjan> Vorpal: um you want to ensure there's at least one actual \n\v\f to start with
20:26:10 <Vorpal> oerjan, but your version does that, right?
20:27:02 <Vorpal> oerjan, BNF so damn easier :P
20:27:16 <elliott> and no its not, you're just better at bnf
20:27:34 <ais523> I can't figure out how to easily do "string of whitespace containing at least one \n\v\f" in BNF
20:27:37 <Vorpal> elliott, yes but lines eat trailing ws
20:27:43 <Vorpal> line = sepEndBy1 cell ws1
20:27:45 <ais523> Vorpal: the rule is pretty simple
20:27:57 <ais523> don't think about "trailing whitespace", etc, just look at the rule!
20:27:58 <Vorpal> elliott, so that is not an issue
20:29:14 <oerjan> ais523: um this way is easier with parsec, otherwise you end up needing backtracking
20:29:24 <Vorpal> <ais523> I can't figure out how to easily do "string of whitespace containing at least one \n\v\f" in BNF <-- seems easy enough to me, just define that there might be zero or more \s\t followed by at least one \n\v\f followed by zero or more \n\w\f\t\s
20:29:33 <elliott> maybe i can find data.list.split on to one line
20:29:36 <ais523> Vorpal: ah, that's pretty easy in Parsec too
20:29:38 <elliott> so i can use it in lambdabot
20:29:44 <ais523> you can just specify that directly
20:29:50 <Vorpal> ais523, well it seems the obvious way in BNF :P
20:30:10 <Vorpal> maybe you don't consider it simple?
20:31:14 <Vorpal> ais523, I don't know if it is just me, but I find it helps to think about BNF in the same mindset you use when thinking about regexp
20:31:25 <Vorpal> they are not the same indeed, but they have similarities
20:32:17 <Vorpal> and surely you find writing regexp trivial?
20:32:36 <oerjan> by letting every token you've got skip trailing whitespace, you increase the chance of your parser being LL(1), thus avoiding try and backtracking. afaict.
20:33:12 <Vorpal> oerjan, ah, didn't know that, useful
20:33:38 <elliott> oerjan: isn't it easier just to do it with every terminal or whatever
20:33:50 <oerjan> well ok i meant terminals
20:34:31 <oerjan> the lexeme parser is specifically for doing that automatically
20:34:47 <oerjan> well semi-automatically
20:34:51 <Vorpal> oerjan, which lexeme parser?
20:34:59 <Vorpal> is it something that parsec has?
20:35:15 <Vorpal> I'll look at it later, probably tomorrow
20:35:30 <oerjan> hm it may be part of that expression parsing thing
20:36:12 <elliott> it's part of the languagedef stuff
20:36:23 <elliott> oh not the expression stuff
20:36:28 <oerjan> well adding a >> ws (or even better, <* ws) works too
20:36:49 * Sgeo still wants a language he can use to write esolang interpreters that other people won't yell at him for
20:36:53 <Vorpal> oerjan, wait, what does <* do?
20:37:02 <lambdabot> forall (f :: * -> *) a b. (Applicative f) => f a -> f b -> f a
20:37:17 <Sgeo> Is Common Lisp good or bad for that purpose?
20:37:18 <Deewiant> Sgeo: Use an esolang, it's the only safe choice on this channel
20:37:22 <Vorpal> oerjan, assume a type signature isn't enough for me sometimes
20:37:29 <oerjan> Vorpal: it's applicative, almost equivalent to >>, but returns the result of the _first_ argument
20:37:46 <Vorpal> oerjan, oh right, so wait why does >> even work there
20:37:56 <oerjan> well >> works if you don't need the result
20:38:21 <Vorpal> oerjan, the result is the same as the parsing state or different?
20:38:43 <oerjan> i mean the return value
20:39:15 <Vorpal> oerjan, so that isn't the same as the stuff going out of the parse call I guess
20:39:15 <oerjan> which is different from the parsing state, as usual for monads
20:39:47 <oerjan> um it's what you get inside the Right if the parse succeeds
20:43:33 <oerjan> Sgeo: if you use Malbolge, no one will yell. although they might scream in agony.
20:45:15 <Vorpal> Sgeo, anyway, pretty much any other non-joke esolang would work
20:46:39 <Vorpal> Sgeo, if you don't like falcon you can try php or C++
20:47:21 <Vorpal> Sgeo, or do one which elliott doesn't understand
20:47:26 <Vorpal> Sgeo, that will alaways work
20:47:48 <elliott> what language don't i understand
20:48:10 <elliott> i can read agda, just not the stdlib :D
20:48:20 <wareya> oh hello I was scrolled up 63 hours
20:48:25 <Vorpal> elliott, name one that you find completely incomprehensible then
20:48:41 * oerjan ponders roman numeral look and say
20:48:46 <Vorpal> wareya, you have some serious log reading to do
20:48:59 <wareya> I barely pay attention to this channel
20:48:59 <elliott> Vorpal: I don't know of one, apart from tons of esolangs and those probably for mostly syntactic reasons
20:49:11 <elliott> J code takes me a while to decipher, K I'm not very good at reading at all
20:49:17 <elliott> OK, INTERCAL code I can't read
20:49:25 <ais523> INTERCAL isn't too bad
20:49:31 <Vorpal> Sgeo, there you go. INTERCAL, malbolge or APL
20:49:32 <ais523> unless it's been deliberately obfuscated
20:49:49 <ais523> (most people would be shocked to learn that there's a difference between clean and obfuscated INTERCAL, but there is)
20:49:59 -!- poiuy_qwert has quit (Ping timeout: 276 seconds).
20:50:03 <Sgeo> There's a K language?
20:50:27 <Sgeo> Are there any letter of the alphabet that aren't names of languages?
20:50:58 <Vorpal> Sgeo, I don't think ÅÄÖØÆ are names of languages
20:51:30 -!- augur has quit (Remote host closed the connection).
20:51:48 <Phantom__Hoover> Vorpal, he means the real alphabet, not that watered-down Scandinavian crap.
20:52:04 <Vorpal> Deewiant, what sort of language
20:52:15 <Vorpal> BCDJKÅ, what else is used?
20:52:35 <Deewiant> Vorpal: http://www.w3.org/Conferences/WWW4/Papers/100/
20:53:06 <Vorpal> Phantom__Hoover, which one is A then?
20:53:12 <elliott> Deewiant: Why do you even know this.
20:53:17 -!- augur has joined.
20:53:28 <oerjan> Z was a specification language wasn't it
20:54:02 <Vorpal> Deewiant, when is http://www.w3.org/Conferences/WWW4/Papers/100/, I can find no date
20:54:06 <Vorpal> I guess 1997 or earlier
20:54:10 <Deewiant> EFGLMST off the top of my head
20:54:32 <elliott> B is C predecessor, C is C, D is D, E is erights, J is APLalike, K is APLalike, M is MUMPS,
20:54:35 <Sgeo> Never heard of KMQSTZ
20:54:36 <elliott> Q is term rewriting predecessor to Pure,
20:54:41 <elliott> S is statistics language R is based on,
20:55:08 <Sgeo> I've heard of MUMPS
20:55:15 <Sgeo> Not as M though
20:55:25 <Vorpal> so we have BCDEJKMQRSTZÅ, what about A that Phantom__Hoover mentioned?
20:55:37 <Deewiant> There's an M by Microsoft that isn't MUMPS
20:56:34 <elliott> > "ABCDEFGHIJKLMNOPQRSTUVWXYZ" \\ "BCDEJKMQRSTVZ"
20:56:36 <Vorpal> Phantom__Hoover, mentioned an A
20:56:45 <elliott> There's an F-sharp but no F that I know of
20:56:51 <elliott> Vorpal: Yes, but he has no substantiated his claim.
20:56:54 <elliott> There's A++ but I know of no A.
20:56:55 <Deewiant> F is a Fortran dialect, G and L are something I can't remember but I'm pretty sure they exist
20:57:13 <elliott> I've heard of a G too, but I'll be conservative about this
20:57:42 <Vorpal> elliott, I think I heard of a P somewhere, can't remember any details
20:57:57 <Vorpal> There is P'' of course, but that is different
20:58:25 <Vorpal> elliott, why do you keep leaving out the Å? :(
20:58:33 <elliott> Because Å in't part of the alphabet.
20:58:41 <elliott> I'm not including languages named pi either.
20:59:05 <Vorpal> elliott, better way to phrase it: by unicode codepoint
21:00:34 -!- augur has quit (Remote host closed the connection).
21:01:20 -!- augur has joined.
21:01:24 <cheater79> obviously there's one programming language called A.
21:02:11 <elliott> the language's name is A Programming Language, or APL.
21:02:34 <Vorpal> elliott, different A perhaps
21:03:00 <elliott> Vorpal: no, I'm fairly sure cheater79 is too much of an idiot not to take the obvious, wrong answer.
21:03:31 <Vorpal> elliott, huh? Oh I have him on ignore
21:03:36 <Vorpal> elliott, I thought you did
21:04:19 <Vorpal> elliott, I can assure you that ignoring him is well worth the work
21:04:26 -!- variable has left ("I found 1 in /dev/zero").
21:04:31 -!- variable has joined.
21:05:50 -!- elliott_ has joined.
21:05:58 <elliott_> 21:03:31: <Vorpal> elliott, huh? Oh I have him on ignore
21:06:00 <elliott_> 21:03:36: <Vorpal> elliott, I thought you did
21:06:02 <elliott_> 21:04:19: <Vorpal> elliott, I can assure you that ignoring him is well worth the work
21:06:02 -!- elliott has quit (Read error: Connection reset by peer).
21:06:28 <elliott_> I've been trying out the "not ignoring cheater" thing in the hopes that since I'm one of like only three people who don't have him on ignore maybe it'll be fun
21:06:37 <elliott_> I'm actually just too lazy to get an exclamation mark, asterisk and at sign
21:11:22 <Vorpal> elliott_, and too lazy to copy it from the /whois output
21:11:45 <Vorpal> elliott_, oh and too lazy to get a fixed laptop too?
21:11:59 <Vorpal> elliott_, how long does your warranty last
21:13:33 <Vorpal> elliott_, the office chair I'm sitting on atm comes with a 10 year warranty (reduced to 8 years if used in a 24/7 environment)
21:13:41 <Vorpal> of course, not electronics but still
21:22:16 -!- BeholdMyGlory has quit (Read error: Operation timed out).
21:24:42 -!- BeholdMyGlory has joined.
21:25:17 -!- calamari has quit (Quit: Leaving).
21:27:26 <zzo38> I figured out something about C program. If you use ? : a lot then you don't need as much parentheses but it makes it more difficult to understand.
21:28:59 <elliott_> `addquote <zzo38> I figured out something about C program. If you use ? : a lot then you don't need as much parentheses but it makes it more difficult to understand.
21:29:03 <HackEgo> 418) <zzo38> I figured out something about C program. If you use ? : a lot then you don't need as much parentheses but it makes it more difficult to understand.
21:29:31 * oerjan confirms that roman numeral look and say has no useful atoms in the usual l.a.s. sense
21:30:23 <ais523> doesn't that make it more interesting? atoms tend to block TCness
21:31:11 <oerjan> not really, i'm pretty sure it just needs a little tweaking
21:31:28 <oerjan> well a bit more interesting of course, which is why i checked it
21:32:27 <elliott_> I, II, III, IV, VI, VI, VI, ...
21:32:37 <elliott_> unless you don't "normalise" them...
21:33:04 <elliott_> I, II, III, IIII = IV, IIIV = VI
21:33:14 <oerjan> well of course i don't
21:33:56 <oerjan> I, II, III, IIII, IVI, IIIVII, IIIIIVIII, VIIVIIII
21:34:01 <ais523> elliott_: I, II, III, IIII, IVI, IIIVII, IIIIIVIII, VIIVIIII
21:34:01 <elliott_> I, II, III, IIII, IVI, IIIVII, IIIIIVIII, IVIIVIIII
21:34:22 <ais523> heh that we all went to the same length, and finished at much the same time
21:34:28 <elliott_> I, II, III, IIII, IVI, IIIVII, IIIIIVIII, VIIVIIII, IVIIIIVIVI
21:34:38 -!- Phantom__Hoover has changed nick to Phantom_Hoover.
21:34:42 <elliott_> I, II, III, IIII, IVI, IIIVII, IIIIIVIII, VIIVIIII, IVIIIIVIVI, IIIVIVIIVIIIVII
21:34:53 <ais523> is it always just I and V?
21:34:54 <elliott_> does it ever use non-I, non-V letters, I wonder
21:34:57 <oerjan> you can have no atom boundaries because every sequence fluctuates between starting with I and V
21:35:02 <ais523> presumably that's going to be quite easy to prove
21:35:04 <elliott_> <ais523> is it always just I and V?
21:35:04 <elliott_> <elliott_> does it ever use non-I, non-V letters, I wonder
21:35:19 <oerjan> ais523: yes, you can have no more than 7 in a block
21:35:45 <oerjan> which follows because the _numerals_ never have more than 3 consecutive
21:36:10 <oerjan> and in fact you can only have 6 I's and 2 V's after a while
21:37:01 <elliott_> what if you used V as a separator of digit/count? :-D
21:37:33 <elliott_> I, IVI, IVIIVIIVI, IVIIVVIIVIIVIIIVIIVIIVI
21:37:52 <elliott_> what if you used I as the separator ;D
21:38:27 <oerjan> well you can use any sequence of strings as the numerals to get an analoguous sequence
21:39:31 -!- tswett has set topic: The first rule of thumb is that you do not talk about thumb. | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
21:40:11 -!- tswettbov has joined.
21:40:15 <oerjan> as long as the string length is o(n), i believe you will always end up with a bounded group length in the limit
21:40:37 <tswett> So, the thing about tswettbov is that it only crashes when you send a message containing the string "okoko".
21:40:56 <ais523> tswett: when /I/ send that?
21:41:04 <oerjan> and it isn't very good at that, i take?
21:41:34 <elliott_> 15:54:03: <ais523> !ul (/me is trying to send a message starting "/me")S
21:41:35 <elliott_> 15:54:06: <EgoBot> /me is trying to send a message starting "/me"
21:41:35 <elliott_> 15:54:17: <ais523> doesn't work with EgoBot, it seems
21:41:37 <ais523> is that an intentional feature?
21:41:46 <tswett> No, I'm actually kidding.
21:41:56 <tswett> So, this message, which contains "okoko", should cause it to crash.
21:42:21 <tswett> Sure enough, it just crashed.
21:43:45 <elliott_> 16:29:29: <ais523> but it's hard to see how any language could understand nested " as quotes
21:43:49 <elliott_> you can do that with whitespace :)
21:44:07 <ais523> I think one of my languages was actually planning to do that for a while
21:44:11 <elliott_> "define "factorial n" "if "= n [one]" [one] "[asterisk] n "factorial "- n [one]""""""""""""""""""""""""""""""""""""
21:44:12 <ais523> but I decided INTERCAL-style quotes would work better
21:44:20 <oerjan> elliott_: note that your I or V separator variations are just effectively appending those to the numerals before treating them as such a sequence
21:44:24 -!- tswettbov has quit (Ping timeout: 246 seconds).
21:45:05 <elliott_> 16:39:58: <ais523> and STATA (a nasty non-esoteric language) uses `" "'
21:45:25 <ais523> don't remind me of that
21:45:43 <ais523> it's apparently really popular among statistical economists
21:47:53 <Gregor> The name is a portmanteau of "statistics" and "caca"
21:49:28 <ais523> STATA's actual official method for assigning to array elements translates roughly to Perl as eval "\$array$i = $n"
21:51:10 -!- augur has quit (Remote host closed the connection).
21:51:32 <elliott_> ais523: I'd like a language based on that somehow
21:51:40 <elliott_> I guess the quining string languages are similar
21:51:51 <elliott_> but something that involves implementing control structures by pasting together code and quoting it somehow
21:54:36 -!- tswettbow has joined.
21:58:46 -!- tswettbow has quit (Ping timeout: 246 seconds).
22:03:31 <tswett> This error I'm encountering doesn't seem to occur in any part of the code.
22:03:59 <tswett> It only occurs in the entirety of the code. Test any part alone, and it goes away.
22:04:57 -!- tswettbox has joined.
22:05:13 <zzo38> You have to learn to put everything tigether in the way that you can see more easily what is wrong, look for a few more minutes, and then notice that there is one number stupid, and correct it.
22:05:40 <tswett> Phantom_Hoover: Smalltalk.
22:05:53 <elliott_> tswett: My diagnosis is that there is one number stupid.
22:06:12 <tswett> No, there are definitely at least two numbers. And my name isn't Stupid.
22:06:40 <zzo38> elliott_: That is not a very good diagnosis without looking at the entire program to see exactly what the program is, how it works, and what is wrong. And then you can say that there is one number stupid (if that is the case).
22:07:06 <elliott_> Well SHEESH, I'm not a doctor.
22:07:17 -!- tswettboy has joined.
22:08:33 <tswett> So. If I send a message causing an error, then I get that error, as expected. If I send a message that sends a message causing an error, then I get an infinite error loop where no error discloses its origin.
22:09:16 -!- tswettbox has quit (Ping timeout: 246 seconds).
22:09:27 -!- tswettboz has joined.
22:09:36 <tswett> I bet you guys appreciate these bots.
22:10:06 <zzo38> Do you know of the Lesser Key of Solomon?
22:10:21 -!- tswettbpa has joined.
22:10:25 <tswett> I think "okoko" will kill them all.
22:11:16 <olsner> what's special about "okoko"?
22:11:21 -!- tswettboy has quit (Ping timeout: 246 seconds).
22:11:36 <tswett> Well, the string "okoko" is hardcoded into the source code as the string that causes the bot to quit.
22:12:06 <olsner> and then it fails to quit, opting to crash instead?
22:12:42 -!- tswettbpb has joined.
22:13:26 -!- tswettbpc has joined.
22:13:48 -!- tswettboz has quit (Ping timeout: 246 seconds).
22:14:30 -!- tswettbpa has quit (Ping timeout: 246 seconds).
22:16:58 -!- tswettbpb has quit (Ping timeout: 246 seconds).
22:17:11 -!- tswettbpd has joined.
22:17:39 -!- tswettbpc has quit (Ping timeout: 246 seconds).
22:17:41 -!- tswettbpe has joined.
22:19:02 -!- tswettbpf has joined.
22:19:41 -!- tswettbpg has joined.
22:20:07 <tswett> I seem to have shown quite conclusively that this one piece of code causes an effect before it is run.
22:20:08 * oerjan is not entirely convinced this is a reasonable debugging method
22:20:41 <tswett> You see, I have this clause that throws an exception, then runs a piece of code.
22:21:04 <tswett> If that piece of code is empty, I see the exception thrown. If that piece of code is something that throws an exception, I do not see the original exception thrown.
22:21:14 <tswett> Even though, since an exception was thrown, that piece of code should never have been executed.
22:21:30 -!- tswettbpd has quit (Ping timeout: 246 seconds).
22:21:35 <zzo38> Always adding commands to send output, and breakpoint, and stuff, can help, too.
22:21:51 -!- tswettbpe has quit (Ping timeout: 246 seconds).
22:22:23 <tswett> Conclusion: Pharo sucks. :P
22:23:06 <elliott_> 17:20:36: <ais523> Java has a lot of annoying quirks
22:23:07 <elliott_> 17:20:45: <ais523> such as having to use a file-system for quoting
22:23:16 -!- tswettbpf has quit (Ping timeout: 246 seconds).
22:23:23 <ais523> elliott_: I'm not sure what I meant by that
22:23:57 -!- tswettbpg has quit (Ping timeout: 246 seconds).
22:24:40 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
22:25:17 -!- Phantom_Hoover has joined.
22:28:37 -!- augur has joined.
22:30:35 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
22:30:47 -!- Wamanuz has quit (Read error: Operation timed out).
22:31:47 -!- Phantom_Hoover has joined.
22:33:02 -!- Wamanuz has joined.
22:44:07 -!- zzo38 has quit (Quit: NO CARRIER).
22:44:35 -!- zzo38 has joined.
22:46:01 -!- augur has quit (Ping timeout: 246 seconds).
22:46:21 -!- augur has joined.
22:49:39 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
22:51:22 -!- Phantom_Hoover has joined.
22:52:37 <zzo38> Now I am going to record changes in my character sheet. Please wait forever.
22:54:29 <elliott_> 02:36:00: -!- ihope has joined #esoteric.
22:54:29 <elliott_> 02:36:17: <ihope> HAI IM GREGORR I LIVE IN OREGON AND I WORK FOR INTEL >_O
22:55:11 <tswett> How should I know? I don't know who that is.
22:56:07 <Gregor> Most probably, that was neither of us.
22:56:12 <Gregor> In fact, I suspect it was elliott_.
22:56:22 <tswett> Yes, I agree with your suspicion.
22:56:35 -!- Vorpal has quit (Ping timeout: 250 seconds).
22:56:42 <elliott_> That actually predates me coming in here and doing anything but quitting, so I find it unlikely :P
22:57:31 <elliott_> And siracusa... I'd stay away from him if I were you.
22:57:32 <tswett> Yeah, aloril definitely played some part in this. You can never trust a guy whose name means, uh...
22:57:39 <elliott_> A guy whose name means aloril.
22:58:22 <tswett> The language they speak, and have always spoken, in Rome.
23:00:30 <elliott_> As Eliezer Yudkowsky once said, ":(".
23:00:54 <tswett> What was that thing that I said Eliezer Yudkowsky said?
23:01:18 <tswett> It might have been "AAIIIIIEEEEEAAARRRRRGGGHHH".
23:01:45 <elliott_> "Look, sometimes you just have to do things just because they're awesome." --Eliezer Yudkowsky, from memory
23:01:51 <Phantom_Hoover> <tswett> Yeah, aloril definitely played some part in this. You can never trust a guy whose name means, uh...
23:02:12 <Phantom_Hoover> Preliminary evidence suggests possible violation of the Law Of Statistical Absurdity.
23:02:32 <zzo38> Finally I found the wand of electric lightning now we can destroy any large object if it needs to be destroyed and is required to use a such a wand for that purpose.
23:02:55 <siracusa> elliott_: Why would you stay away from me?
23:03:28 <elliott_> `addquote <zzo38> Finally I found the wand of electric lightning now we can destroy any large object if it needs to be destroyed and is required to use a such a wand for that purpose.
23:03:30 <HackEgo> 419) <zzo38> Finally I found the wand of electric lightning now we can destroy any large object if it needs to be destroyed and is required to use a such a wand for that purpose.
23:03:58 <elliott_> siracusa: 'cuz you can't be trusted.
23:04:21 <HackEgo> 261) <Phatom__Hovver> LoTR actually compresses pretty well into a film; the large amount of description becomes unnecessary. <pikh> LotR would compress pretty well into a book; the large amount of description *is* unnecessary. \ 272) <oklopol> oerjan: also actually A(4, 4) is larger than any other integer, i learned this the
23:04:25 -!- siracusa has left.
23:04:26 <zzo38> Try again please! You did it wrong! Too bad!!!
23:04:39 <zzo38> Now it work, thank you
23:04:56 <tswett> Hey guys, do you mind if I just run `quote a bunch of times?
23:05:00 <HackEgo> 272) <oklopol> oerjan: also actually A(4, 4) is larger than any other integer, i learned this the other day when i was reading about this algo, it had complexity O(n a^-1(n)) = O(n a^-1(4))
23:05:44 <HackEgo> 127) <soupdragon> if you claim that the universe is more than 3D the burden of proof is on you to produce a klien bottle that doesn't self intersect <soupdragon> ^ I learned that trick from atheists \ 272) <oklopol> oerjan: also actually A(4, 4) is larger than any other integer, i learned this the other day when i was reading
23:05:59 <HackEgo> 127) <soupdragon> if you claim that the universe is more than 3D the burden of proof is on you to produce a klien bottle that doesn't self intersect <soupdragon> ^ I learned that trick from atheists
23:06:10 <HackEgo> 127) <soupdragon> if you claim that the universe is more than 3D the burden of proof is on you to produce a klien bottle that doesn't self intersect <soupdragon> ^ I learned that trick from atheists
23:06:15 -!- oerjan has quit (Quit: Good night).
23:06:21 <elliott_> Did I just scare away siracusa
23:06:24 <tswett> I'm producing a lot of identical quotes.
23:06:30 <HackEgo> 127) <soupdragon> if you claim that the universe is more than 3D the burden of proof is on you to produce a klien bottle that doesn't self intersect <soupdragon> ^ I learned that trick from atheists
23:06:30 <zzo38> How to make list of numbers by quotation by search words?
23:06:49 <HackEgo> 261) <Phatom__Hovver> LoTR actually compresses pretty well into a film; the large amount of description becomes unnecessary. <pikh> LotR would compress pretty well into a book; the large amount of description *is* unnecessary. \ 272) <oklopol> oerjan: also actually A(4, 4) is larger than any other integer, i learned this the
23:06:56 <HackEgo> 261) <Phatom__Hovver> LoTR actually compresses pretty well into a film; the large amount of description becomes unnecessary. <pikh> LotR would compress pretty well into a book; the large amount of description *is* unnecessary. \ 299) <elliott_> The context is Gracenotes releasing an illegal copy of a film about monster cock dildos.
23:06:59 <zzo38> Like, only the numbers instead of reading entire quotation texts. So that, if there is a lot, it all fits
23:07:06 -!- MigoMipo has quit (Read error: Connection reset by peer).
23:07:18 <elliott_> `run quote film | sed 's/).*//'
23:07:23 <elliott_> `run quote film | sed 's/).*//g'
23:07:28 <zzo38> O, in case of "No output" it doesn't put the strange characters at first
23:07:38 <tswett> `run quote the | sed 's/).*//g'
23:07:40 <HackEgo> 5 \ 10 \ 11 \ 16 \ 17 \ 21 \ 22 \ 23 \ 26 \ 30 \ 34 \ 35 \ 38 \ 41 \ 44 \ 46 \ 48 \ 49 \ 50 \ 53 \ 56 \ 57 \ 58 \ 60 \ 63 \ 65 \ 66 \ 68 \ 70 \ 72 \ 73 \ 75 \ 78 \ 79 \ 84 \ 86 \ 87 \ 88 \ 89 \ 91 \ 92 \ 104 \ 105 \ 106 \ 107 \ 109 \ 110 \ 111 \ 114 \ 116 \ 117 \ 118 \ 122 \ 124 \ 126 \ 127 \ 134 \ 135 \ 141 \ 144 \ 147 \ 148
23:07:44 <elliott_> `run quote film | sed 's/).*//g' | tr '\n' ','
23:07:47 <HackEgo> 5) <Warrigal> GKennethR: he should be told that you should always ask someone before killing them.
23:07:51 <elliott_> `run quote film | sed 's/).*//gN'
23:07:57 <zzo38> Maybe it should be made the script with that.
23:07:57 <elliott_> `run quote film | sed 'Ns/).*//g'
23:08:10 <elliott_> zzo38: it would be fairly pointless since you'd just want to check them all anyway.
23:08:14 <HackEgo> 4) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 5) <Warrigal> GKennethR: he should be told that you should always ask someone before killing them. \ 7) <oerjan> what, you mean that wasn't your real name? <Warrigal> Gosh, I guess it is. I never realized that. \ 10) <reddit user "othermatt"> So
23:08:21 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.14122
23:08:31 <elliott_> Still messes up URL detection.
23:08:49 <HackEgo> 165) <ivancastillo75> Oh I get it you guys just use this space to do nothing ?
23:09:00 <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 2) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 4) <AnMaster> that's where
23:09:05 <HackEgo> 28) SUPLENTES EN UN UNIVERSO (MUSSOLINI CUANDO CONQUISTO EL MUNDO): <ehird> i tan solo puede concluir que es defectuoso, o el mundo esta absolutamente loco. Todos a la gloria Il Duce! \ 79) <oklofok> i use dynamic indentation, i indent lines k times, if they are used O(n^k) times during a run of the program \ 120) <Miya> I
23:09:17 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.2446
23:09:37 <zzo38> Now I need to make up program that whenever the channel receives anything with unicode characters that are not needed such as zero width space, left-to-right mark if all the text is already left-to-right, control code that is useless here, etc, to repeat it with all wrong stuff stripped.
23:09:52 <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 50) <Aftran> It looks like my hairs are too fat. Can you help me split them? \ 82) <Warrigal> Invalid! Kill! Kill! <Aftran> I get that feeling too. \ 107) <Aftran> Clearly we should be like Mumbai and get of vehicle dors. <Warrigal> Get of vehicle dors? <Warrigal>
23:10:01 <tswett> Why do we have so many Aftran quotes?
23:10:07 <tswett> Do any of you know who Aftran is?
23:10:21 <elliott_> Like ninety percent of the Sine quotes are unfunny, and that's after I obliterated most of them anyway :P
23:10:27 <tswett> Yes, I guess elliott and Gregor know who Aftran is.
23:10:45 <HackEgo> 107) <Aftran> Clearly we should be like Mumbai and get of vehicle dors. <Warrigal> Get of vehicle dors? <Warrigal> I think Aftran had a French phrase there. <Firenze> Les vehicles d'or
23:10:47 <elliott_> Who watches us even now, from logs.
23:11:11 <HackEgo> 93) <fedoragirl> My mascot is a tree of broccoli. \ 107) <Aftran> Clearly we should be like Mumbai and get of vehicle dors. <Warrigal> Get of vehicle dors? <Warrigal> I think Aftran had a French phrase there. <Firenze> Les vehicles d'or
23:11:20 <HackEgo> 407) <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one \ 408) <monqy> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something \ 407)
23:11:34 <elliott_> Well that's not confusing in the slightest :)
23:11:35 <HackEgo> 407) <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one
23:11:48 <HackEgo> 408) <monqy> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something \ 407) <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one <monqy> thankfully only two
23:11:48 <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something
23:11:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.10194
23:12:04 <elliott_> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.10194
23:12:12 <elliott_> Argh, that stupid character is included.
23:12:14 <tswett> Thank you for telling us what HackEgo said.
23:12:28 <elliott_> tswett: no, it said it with a Unicode character before.
23:12:35 <elliott_> Which breaks XChat URL detection, and copies with it so that Firefox won't load the page.
23:13:11 <zzo38> Yes, that is one of problem that Gregor broke it with!!!
23:13:21 <elliott_> Gregor: you'd better remove it or zzo38 will get very angry.
23:13:44 <zzo38> And I think so will someone else (maybe)
23:14:45 <olsner> two quotes about quotes about django
23:15:16 <zzo38> Yes even the quotes about quotes are being angry now, it seems like
23:15:31 <olsner> I guess the worst part is that I appear in all three hackego quotes about django
23:16:19 <elliott_> `addquote <olsner> two quotes about quotes about django <olsner> I guess the worst part is that I appear in all three hackego quotes about django
23:16:21 <HackEgo> 420) <olsner> two quotes about quotes about django <olsner> I guess the worst part is that I appear in all three hackego quotes about django
23:16:34 <zzo38> elliott_: Noticed it has wrong codes in it too
23:16:49 <zzo38> Because they copied it again and then again copied to quotation and copied again.
23:18:01 <olsner> elliott_: another quote? you're not helping :/
23:18:19 <zzo38> It is angry because you can get angry by the wrong codes, sometimes it even copy/paste wrong, display wrong, break URL detection, and whatever else can go wrong with it, including other things.
23:18:31 <elliott_> `addquote <elliott_> `addquote <olsner> two quotes about quotes about django <olsner> I guess the worst part is that I appear in all three hackego quotes about django <olsner> elliott_: another quote? you're not helping :/
23:18:33 <HackEgo> 421) <elliott_> `addquote <olsner> two quotes about quotes about django <olsner> I guess the worst part is that I appear in all three hackego quotes about django <olsner> elliott_: another quote? you're not helping :/
23:18:40 <HackEgo> 292) <olsner> actually, I think vorpal is the "retarded team member" to the left
23:19:03 <HackEgo> 417) <ZOMGMODULES> scripting language. whole program analysis. together at last
23:19:04 <HackEgo> 34) <zzo38> I am not on the moon.
23:19:05 <HackEgo> 142) <fungot> [...] i'm a law student so i am loving my bread machine
23:19:07 <HackEgo> 256) <zzo38> I have plans to make the computer and one day I will do it!! (I have access to barter some people might help with these things) It is many difference from other computer.
23:19:09 <HackEgo> 233) <Phantom_Hoover> For instance, Jesus' Y chromosome was clearly GOD'S.
23:21:09 <HackEgo> 100) <Slereah> I can do everything a Turing machine can do, except love
23:25:24 <Phantom_Hoover> http://www.reddit.com/r/worldnews/comments/hb81o/acid_blinding_sentence_postponed_by_iran_after/
23:27:00 <Phantom_Hoover> "It should be an acceptable form of punishment, when your crime was the PREMEDITATED MAIMING AND TORTURE of another person. You shouldn't have your hand chopped off for stealing, but the at a minimum the person you stole from should be compensated to the level of what you stole from them, and then some, and it should be at your loss."
23:27:20 <Phantom_Hoover> How do you even mess up understanding reality that badly.
23:27:38 <tswett> This isn't about reality; this is about ethics.
23:29:02 <Phantom_Hoover> tswett, yes, but she is comparing compensation upon theft to torture.
23:29:30 <Phantom_Hoover> Torturing someone does not reverse the damage done to their victim.
23:29:57 <tswett> Yes, there is certainly an interpretation of this argument under which it is fallacious.
23:30:21 <Phantom_Hoover> Are you saying that there is another way to interpret it.
23:30:58 <tswett> They could simply be saying, "An eye for an eye is an acceptable punishment in all circumstances."
23:32:21 <Phantom_Hoover> I like it when people say "what if this was YOUR <family member>", thus missing entirely the point of a justice system.
23:41:29 -!- FireFly has quit (Quit: swatted to death).
23:44:47 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:48:10 <Phantom_Hoover> "Blood justice sounds great in theory, but not so much in application."
23:50:14 -!- zzo38 has quit (Remote host closed the connection).
23:56:16 -!- zzo38 has joined.
23:56:29 <HackEgo> 18) <fizzie after embedding some of his department research into fungot> Finally I have found some actually useful purpose for it.
23:56:48 -!- ais523 has quit (Remote host closed the connection).
23:57:43 -!- zzo38 has quit (Remote host closed the connection).
23:58:33 -!- TeruFSX has quit (Ping timeout: 250 seconds).
23:59:25 -!- zzo38 has joined.
23:59:43 <zzo38> It seems to keep quitting maybe the connection is something wrong
00:00:45 -!- zzo38 has quit (Remote host closed the connection).
00:01:56 -!- zzo38 has joined.
00:02:46 -!- zzo38 has quit (Remote host closed the connection).
00:03:18 -!- zzo38_ has joined.
00:04:21 <zzo38_> <CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP>
00:04:59 <HackEgo> 10) <reddit user "othermatt"> So what you're saying is that I shouldn't lick my iPhone but instead I should rub it on my eyes first and then lick my eyeballs? \ 20) <FireFly> Meh <FireFly> ._. \ 30) <Deewiant> ehird: There is no h in "honour" \ 40) <lacota> I guess when you're immortal, mapping your fonts isn't necessary \ 46)
00:05:00 <zzo38_> 10) <reddit user "othermatt"> So what you're saying is that I shouldn't lick my iPhone but instead I should rub it on my eyes first and then lick my eyeballs? \ 20) <FireFly> Meh <FireFly> ._. \ 30) <Deewiant> ehird: There is no h in "honour" \ 40) <lacota> I guess when you're immortal, mapping your fonts isn't necessary \ 46)
00:06:09 -!- zzo38_ has changed nick to zzo38__.
00:06:51 -!- zzo38__ has quit (Client Quit).
00:08:41 -!- zzo38 has joined.
00:09:12 <zzo38> Is there no such things as quotation number zero?
00:10:50 -!- augur has quit (Remote host closed the connection).
00:11:24 <zzo38> Hopefully I corrected HackEgo so that it will no longer cause unmentionable URLs and so on. I think I figured out how to correct it even though I am not Gregor
00:11:28 -!- CakeProphet has quit (Ping timeout: 246 seconds).
00:13:33 <elliott_> OK that will get annoying quickly.
00:13:33 -!- micahjohnston has changed nick to locks.
00:13:44 -!- locks has quit (Disconnected by services).
00:13:50 <Gregor> `echo Now here's a bad idea.
00:13:52 <zzo38> Now here's a bad idea.
00:14:05 -!- TeruFSX has joined.
00:14:06 <Gregor> Well, it was worth a shot :P
00:15:50 <zzo38> I think it allows you to force my client to send VERSION and such commands broadcast to channel even if HackEgo does not allow it. Try.
00:16:18 <Gregor> HackEgo filters out \x01
00:16:29 -!- azaq23 has joined.
00:16:38 <zzo38> I know, someone tried it before.
00:16:51 <zzo38> Try something else!
00:16:58 <elliott_> Gregor: Can't you just remove the funky char now that we don't get CTCPs? I promise not to cause any botloops. :p
00:17:19 <elliott_> It's kind of annoying that I have to ctrl-c alt-tab ctrl-v fn-left fn-backspace enter to follow a HackEgo link now.
00:17:43 <zzo38> elliott_: No, now you don't because I fixed it so that you don't have to do that to follow a link now.
00:18:37 <zzo38> But if Gregor want to remove it then please to do so, otherwise how can you it is their choices to make the program the way they liked it to be done.
00:19:15 <zzo38> The real problem(s) is elliott's computer seems the numbers are broke? Is it fixed yet?
00:19:47 <zzo38> Otherwise, we will simply have to deal with it... too bad...
00:20:04 <elliott_> zzo38: No, it is not fixed yet.
00:20:54 <zzo38> Well, OK, I think you ought to fix it soon. But if you don't want to then of course I cannot force you to do so. But I do highly advise to fix it.
00:21:07 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:21:56 <zzo38> If you don't like this advice, then you can buy *bad* advice for 200+3i-sqrt(2+e^aleph0) zorkmids
00:22:17 <zzo38> Where x is your age in hours and y is your godfather's shoe size
00:22:34 <Sgeo> http://www.eurogamer.net/articles/article_25950
00:22:36 <elliott_> And if you have no godfather??
00:22:47 <Sgeo> Why does this review from 2000 mention TF2?
00:23:01 <Sgeo> Is the date wrong?
00:23:29 <Sgeo> Worse than PSOX!
00:23:29 <zzo38> elliott_: Then just make up a number for y and hope that it would in fact be their proper shoe size in case you did have a godfather and they had shoes. Because if you guess wrong then you make a mistake and have to try again sorry
00:23:38 <Sgeo> Except PSOX isn't exactly a fun game
00:23:40 <HackEgo> 207) <fungot> elliott: i like scsh's mechanism best: it's most transparent and doesn't really serve a very useful feature. \ 210) <fungot> elliott: it's hard to debug havoc on your mirror if you accidentally hit r, then a character could be multiple words long, depending on the task. \ 219) <Gregor> elliott: My university has two
00:23:41 <zzo38> 207) <fungot> elliott: i like scsh's mechanism best: it's most transparent and doesn't really serve a very useful feature. \ 210) <fungot> elliott: it's hard to debug havoc on your mirror if you accidentally hit r, then a character could be multiple words long, depending on the task. \ 219) <Gregor> elliott: My university has two
00:23:47 <tswett> e^aleph0? That... that's kind of a plausible cardinal number.
00:23:49 <Gregor> ... that's ... not pastequotes?
00:24:07 <Gregor> Oh, I see, it only pastes ALL quotes, making it equivalent to `url quotes >_<
00:24:10 <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 2) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 4) <AnMaster> that's where I
00:24:10 <zzo38> 1) <Aftran> I used computational linguistics to kill her. \ 2) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 4) <AnMaster> that's where I
00:24:27 <tswett> Clearly, it's at least 2^aleph0 and at most 3^aleph0, buth of which are equal to 2^aleph0.
00:24:32 <elliott_> Gregor: How is that pastequotes?
00:24:40 <Gregor> I didn't touch pastequotes.
00:24:45 <elliott_> Gregor: And no, it is NOT equivalent.
00:24:49 <elliott_> pasteallquotes or whatever numbers them.
00:24:50 <HackEgo> #!/bin/sh \ if [ "$1" ]; then quote "$1"; else allquotes; fi | paste
00:24:50 <zzo38> #!/bin/sh \ if [ "$1" ]; then quote "$1"; else allquotes; fi | paste
00:24:59 <elliott_> zzo38: Seriously that is annoying.
00:25:11 <HackEgo> #!/bin/bash \ if [ ! "$1" ] \ then \ PASTE=- \ else \ PASTE="$1" \ fi \ \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ echo ' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.'"$PASTENUM" \ cat "$PASTE" > $HACKENV/paste/paste."$PASTENUM"
00:25:16 <zzo38> Now it is off. But later I might turn back on if caused more problems
00:25:29 <zzo38> That is, hopefully I did in fact turn it off and it is not a mistake
00:25:53 <zzo38> Now see if pastequotes is not broken
00:26:52 <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 2) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 4) <AnMaster> that's where I
00:26:58 -!- augur has joined.
00:33:13 -!- micahjohnstonn has changed nick to micahjohnston.
00:34:41 <elliott_> Gregor: Does any JVM compile with NestedVM?
00:36:07 <elliott_> What about gcj? OK, not a JVM as such, but...
00:36:25 <elliott_> If so: Woo NestedVM is... self-hosting... sort of :P
00:36:26 <Gregor> Probably wouldn't, NestedVM isn't really much of a platform ..
00:36:38 <elliott_> Gregor: I just meant gcj compiling to xeightsix or whatever.
00:37:04 <elliott_> 21:30:13: <GregorR> http://groups.google.com/group/nestedvm/browse_thread/thread/f11cc0b0e9a9b584 < I need sys_select in NestedVM to port Java.
00:37:05 <elliott_> 21:30:19: <GregorR> To port DirectNet.
00:37:31 <Gregor> No, gcj TARGETTING NestedVM is no problem.
00:37:48 <elliott_> 21:44:51: <calamari> GregorR: btw where do you work?
00:37:48 <elliott_> 21:45:00: <calamari> don't say microsoft
00:37:52 <elliott_> Gregor: Nonono, I just mean, something that lets you do
00:37:58 <Gregor> But gcj RUNNING on NestedVM ... I doubt it.
00:38:05 <elliott_> You want me to compile something?
00:38:25 <Gregor> Yes, that would be GCJ /running on/ NestedVM.
00:38:36 <Gregor> However, NestedVM isn't much of a platform.
00:38:46 <elliott_> Isn't gcj written in C++ though???
00:38:51 <elliott_> I can't imagine it uses too many weird syscalls.
00:39:05 <Gregor> It's just a bit Unixy, like any other GCC.
00:43:01 <ralc> would you consider haskell an esoteric language?
00:43:46 <elliott_> It's not esoteric in the sense that it's widely used and "accepted".
00:43:49 <Gregor> Why would you pour gasoline all over the channel then drop a match?
00:43:59 <elliott_> It's esoteric in the sense that it's very different from current common practice.
00:44:09 <elliott_> It's hard to define esoteric is without a frame of reference :)
00:44:16 <elliott_> For a mathematician, Haskell is pretty damn conventional.
00:44:20 <elliott_> Gregor: Please, everyone here likes Haskell.
00:44:33 <Sgeo> WHY DOES CHROME KEEP DELETING MY COOKIES
00:46:28 <elliott_> "One of the registers--fr--is distinguished as the "free list" register, and is initialized to point to an infinite list of NIL's."
00:48:22 <elliott_> Proposition 1. List cell reference counts are conserved and are always identically 1.
00:48:22 <elliott_> Proof by induction [Suzuki82,s.4]. All cons cells start out with unity reference counts, and are only manipulated by exchanges which preserve reference counts. QED
00:58:31 <zzo38> Sgeo: Because you pushed DELETE or because Chrome is automatic, I don't know if it has a manual mode, it is because Google try to make everything go automatic by Google
00:59:13 <zzo38> Maybe there is some fork with manual override you can check
01:01:32 <zzo38> I wondered if anyone would make the suggestion I made to add to the Forth codes for anarchy golf, to improve compatibility with different versions
01:03:05 <elliott_> `addquote <zzo38> Sgeo: Because you pushed DELETE or because Chrome is automatic, I don't know if it has a manual mode, it is because Google try to make everything go automatic by Google
01:03:07 <HackEgo> 422) <zzo38> Sgeo: Because you pushed DELETE or because Chrome is automatic, I don't know if it has a manual mode, it is because Google try to make everything go automatic by Google
01:03:41 <Sgeo> Chrome is not a car.
01:03:47 <Sgeo> It is, instead, a cdr.
01:05:51 <zzo38> Which code golf are you best at?
01:06:43 <Gregor> New super-villain idea:
01:08:12 <zzo38> OK now write the book or whatever it might be
01:16:09 <Gregor> `addquote <eboyjr> hobbes, your mom is fat <Hobbes> your code snippets mom
01:16:11 <HackEgo> 423) <eboyjr> hobbes, your mom is fat <Hobbes> your code snippets mom
01:16:24 <Gregor> `addquote (Hobbes is a chatterbot) <eboyjr> hobbes, your mom is fat <Hobbes> your code snippets mom
01:16:25 -!- wareya has quit (Read error: Connection reset by peer).
01:16:25 <HackEgo> 423) (Hobbes is a chatterbot) <eboyjr> hobbes, your mom is fat <Hobbes> your code snippets mom
01:17:34 -!- wareya has joined.
01:23:50 -!- ajf has changed nick to ajf|offline.
01:30:24 <elliott_> Gregor: The three spaces are just to antagonise me, right? :P
01:30:41 <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 2) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 4) <AnMaster> that's where I
01:30:57 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/pastequotes
01:31:01 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/paste
01:31:23 <Gregor> elliott_: You mean ... the two quotes?
01:31:38 <elliott_> Look at http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/pastequotes.
01:31:51 <elliott_> <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 2) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 4) <AnMaster> that's where I
01:32:21 <Gregor> `run echo foobar | paste
01:32:24 <tswett> Have I already said that "Luaapi" would make an excellent Finnish word?
01:32:30 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/paste
01:32:32 <elliott_> Gregor: I JUST DID THAT YOU IDIOT >_<
01:32:57 <Gregor> elliott_: I needed to see it for myself :P
01:33:01 <elliott_> Disturbing potential for collisions there :P
01:33:10 <elliott_> Although, they're hg'd, so meh
01:33:31 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
01:33:38 <elliott_> BTW, if anyone is wondering, the Antarctica international airport /sucks/.
01:34:05 <Gregor> ... there is an Antarctica International Airport? :P
01:34:09 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5896
01:34:10 <zzo38> OK that is good advice I can tell someone if they planned to go there
01:34:14 <elliott_> Yes, and they have street lamps in Antarctica, too.
01:34:27 <elliott_> They turn on a short while after it gets dark.
01:34:52 <Gregor> And then turn of six months later, when it gets light.
01:34:59 <elliott_> That's only at the South Pole :P
01:35:06 <elliott_> The airport is pretty well-lit, though, and the walls are glass, so it acts as a sort of light.
01:35:22 <elliott_> Basically I was at the airport to get a flight back...
01:35:24 <tswett> Why would there not be an international airport in Antarctica?
01:35:29 <elliott_> ...but they offered me a car back instead.
01:35:36 <elliott_> And, I just didn't really trust a car with the sea ice, so yeah.
01:35:46 <elliott_> But then I found out they had a train back and that sounded safest and funnest.
01:35:50 <elliott_> So I decided to take the train instead.
01:35:53 <elliott_> But it never arrived and then I woke up.
01:35:55 <tswett> If there weren't one, people would have to either sail to Antarctica, or first go to a country that has territory in Antarctica.
01:36:07 <elliott_> Conclusion: Fuck Antarctica International Airport.
01:36:22 <elliott_> tswett: Sailing to Antarctica is pretty common y'know :P
01:36:30 <coppro> elliott_: that sounds difficult
01:36:37 <elliott_> I don't think they DO have an international airport, actually.
01:36:43 <elliott_> IIRC flights are generally done via New Zealand or similar.
01:36:44 <coppro> elliott_: I mean, a whole airport?
01:36:53 <elliott_> It's a pretty small airport mind you.
01:37:02 <elliott_> In actual fact: http://en.wikipedia.org/wiki/List_of_airports_in_Antarctica
01:37:02 <tswett> Well, they have an airport that accepts airplanes that aren't from Antarctica. :P
01:37:08 <elliott_> I like how your choice of runway material is gravel, snow, or ice.
01:37:21 <elliott_> Also: variable elevation levels of an airport.
01:37:33 <elliott_> Admittedly, the definition of "airport" here is something like "thing with runway markers on it".
01:37:39 <zzo38> What would be your opinion if TeX has a command to select the lesser bad?
01:38:13 <elliott_> Gregor: The South Pole is awesomely fucked, though; not only do they have six month long days, but it literally has no timezone :P
01:38:32 <elliott_> (They just use New Zealand time, though, because they're TOTALLY BORING.)
01:38:37 <zzo38> elliott_: Do they then have to, whenever they tell the time, have to specify time zone letter?
01:38:47 <elliott_> What they SHOULD do is put twelve am in the middle of the day period, and stretch out the entire year to twenty-four hours.
01:38:47 <Gregor> Well of course it has no timezone...
01:39:00 <elliott_> Gregor: Yeah, but it's still a fun fact :P
01:39:03 <zzo38> They should do then, such as 12:00Z and so on is one way
01:39:20 <elliott_> Gregor: I mean, obviously it's because it exists OUTSIDE OF TIME.
01:39:45 <tswett> I've always wondered what Antarctic compass roses look like.
01:40:02 <zzo38> How can use a compass on South Pole?
01:40:02 <elliott_> tswett: They're this gigantic circular arrow marked "S".
01:40:05 <elliott_> tswett: They're this gigantic circular arrow marked "N".
01:40:15 <elliott_> zzo38: At the magnetic poles, compasses just flail about wildly, unless you hold them horizontally.
01:40:26 <elliott_> This is hilarious to me for some reason.
01:40:33 <elliott_> That is, hold them vertically, or whatever.
01:40:42 <tswett> Instead of "NESW", do they go "Greenwich, 90 Degrees East of Greenwich, Opposite Greenwich, 90 Degrees West of Greenwich"? :P
01:40:51 <elliott_> tswett: I don't think they make Antarctic compass roses :P
01:41:00 <tswett> Do Antarctic maps just not have compass roses?
01:41:22 <tswett> I refuse to believe that.
01:41:32 <elliott_> http://www.google.com/search?q=antarctic+map&hl=en&safe=off&client=ubuntu&hs=qER&channel=fs&prmd=ivnsm&tbm=isch&tbo=u&source=univ&sa=X&ei=ZS_PTej2BNSahQeUzcyNDQ&ved=0CBwQsAQ&biw=1440&bih=675
01:41:37 <elliott_> Preliminary evidence suggests yes.
01:42:08 <elliott_> http://www.animalbase.uni-goettingen.de/mapimage/map-antarctica-victoria-land.jpg ;; this is all the penguins in Antarctica.
01:42:23 <elliott_> http://wiki.answers.com/Q/How_would_you_write_a_compass_rose_on_a_map_of_Antarctica
01:42:28 <elliott_> How can anyone else have asked this question before.
01:42:35 <elliott_> "Since a compass rose is a figure, actually, you'd draw one, not write one."
01:42:39 <elliott_> OK this answer has started off on a really irritating note.
01:42:53 <tswett> Aha! http://www.google.com/search?tbm=isch&q=antarctic+compass+rose
01:43:12 <elliott_> That's some geocaching thing, it seems.
01:43:14 <elliott_> At least the first few results.
01:43:17 <tswett> Obviously, they look like that.
01:43:27 <elliott_> http://www.geocaching.com/track/details.aspx?id=2381839&page=6
01:43:37 <tswett> With, like, Zodiac symbols.
01:43:57 <elliott_> Let's go to the South Pole and deface it with a compass rose, all marked "N".
01:44:28 <tswett> You know, that actually wouldn't be a bad way to mark an Antarctic compass rose.
01:44:42 <elliott_> It would be the most hilarious way :P
01:44:49 <elliott_> Better if it had an infinite number of arrows on it, all marked "N".
01:44:52 <tswett> Since each sign of the zodiac is associated with a longitude.
01:44:58 <tswett> Yes, but which infinite number?
01:45:06 <Gregor> It would be the only sensible way ...
01:45:06 <tswett> Aleph_0? 2^aleph_0? Something in between?
01:45:13 <tswett> Gregor: what would? The zodiac?
01:45:22 <Gregor> I'm lagged all to hell X_X
01:45:37 <tswett> I disagree. Marking a compass rose with the zodiac would be unbearably sensible.
01:46:07 <zzo38> I didn't know zodiac works like that.
01:46:24 <tswett> Wikipedia... kind of suggests that it does.
01:47:21 <elliott_> Absfdbffgjdgojgdrjgodg. The end.
01:50:20 <tswett> So, yes. We'll say that towards Greenwich is Aries, east of Greenwich is Cancer, opposite Greenwich is Libra, and west of Greenwich is Capricorn.
01:50:45 <tswett> elliott_ obviously finds this an unbearably sensible system.
01:50:56 <elliott_> I'm having an aneurysm thanks to you.
01:53:08 <tswett> Actually, we'll want to use adjectives. Those are nouns.
01:54:49 <tswett> So. Arian (not to be confused with Aryan), cancerian, libran, and capricornian.
01:55:11 <tswett> Actually, those are too long.
01:56:35 <tswett> Someone who edits Wicapedia?
01:57:30 -!- dr_undecided has joined.
02:00:27 <elliott_> dr_undecided seems very indecisive.
02:01:19 <tswett> On the contrary. dr_undecided has an opinion about everything.
02:01:36 <tswett> He believes that P does not equal NP, and that the Riemann hypothesis is true.
02:02:24 <elliott_> tswett: HOW CAN YOU PREDICT SUCH THINGS
02:03:09 <tswett> He also believes that Goldbach's conjecture and the Collatz conjecture are both true, and that there are infinitely many pairs of twin primes but their frequency drops very quickly.
02:03:14 <tswett> elliott_: in dr_undecided's opinion, no.
02:03:20 <zzo38> I cannot make NS GHOST tswett
02:03:43 <dr_undecided> haha, i think you deduced it from "dr" in my username
02:04:16 <elliott_> dr_undecided: You come from the wiki?
02:04:38 <dr_undecided> No, I was just browsing the list of channels on freenode
02:05:09 <zzo38> There is many channel in here this one has strange thing sometimes (and often)
02:05:13 <elliott_> Well, FWIW our wiki is http://esolangs.org/wiki/Main_Page
02:05:18 <elliott_> And this is a channel about esoteric programming languages
02:09:10 -!- dr_undecided has left.
02:11:07 * elliott_ briefly considers not messing with dr_undecided.
02:11:29 <tswett> dr_undecided also believes that there is a symmetric encryption scheme that can encrypt in linear time but is invulnerable to ciphertext-only attacks taking less than exponential time.
02:12:08 <elliott_> E also believes that exponentiation is total.
02:12:29 <elliott_> dr_undecided just passed the initiation ritual
02:13:05 -!- dr_undecided has joined.
02:13:25 <tswett> E believes that exponentiation has a value for all complex inputs except for bases of 0 and exponents with negative real part.
02:13:35 <tswett> Hi, dr_undecided. I'm just explaining some of your other opinions.
02:14:47 <dr_undecided> Hi tswett, Im going to sit back and watch for some time
02:15:05 <tswett> I've got to go to bed, by the way.
02:15:56 <tswett> dr_undecided believes that the Mandelbrot set is locally connected.
02:18:47 <zzo38> dr_undecided: Do you know of any esoteric programming?
02:19:09 <elliott_> zzo38: we've already gone through that.
02:19:54 <zzo38> Is the doctor of "undecided"?
02:22:51 <zzo38> dr_undecided: No, INTERCAL and brainfuck and stuff like that counts generally, Java does not usually count (although some people say it does, but the canonical idea is that it doesn't count).
02:32:43 -!- dr_undecided has left.
03:08:11 <augur> fizzie: http://wellnowwhat.net/linguistics/paper.full.pdf
03:10:31 <elliott_> "Source: Some guy on the Internet."
03:10:41 <elliott_> Wow opening that crashed Firefox somehow.
03:11:26 <augur> elliott_: source: me
03:11:37 <augur> oh, you mean the data source?
03:11:46 <augur> not just ONE guy on the internet
03:11:52 <elliott_> MULTIPLE PEOPLE on the Internet.
03:12:02 -!- TheFinder has joined.
03:12:02 <augur> and one guy IN PERSON
03:12:04 -!- TheFinder has left.
03:12:44 <augur> theres no reason to think fizzie was being a jerk and messing with the data :|
03:13:20 <augur> he'd have to be amazingly good at reading minds over the internet, seeing as how it fits the predictions without him even knowing what the predictions are!
03:13:58 <elliott_> And then tell you I lied after you put it up, so you have to go and fix it.
03:14:18 <augur> elliott_: yes, except it'd be obvious that you lied
03:14:26 <augur> inconsistencies across sentences, for instance
03:14:33 <elliott_> No, I'd just lie consistently.
03:14:44 <elliott_> Alternatively: There's no dialect with inconsistencies? :-)
03:15:01 <augur> inconsistencies are far rarer than people realize
03:15:58 <augur> they might. what people think of as inconsistencies are usually not inconsistencies at all
03:16:07 <augur> theyre just different grammars
03:16:24 <augur> people tend to try to make sense of things by analogy to their own grammars, which is error prone
03:16:29 <elliott_> So it wouldn't be OBVIOUS I'm lying :)
03:16:38 <augur> actually it wouldve
03:16:43 <augur> because im a trained linguist!
03:17:39 <elliott_> Well, no, it'd also be possible that my dialect is just really fucked up.
03:17:58 <elliott_> Maybe linguists have been systematically ignoring how fucked up it is because they assume we're all lying!
03:19:00 <augur> its happened before
03:19:13 <augur> but not before being caught
03:19:18 <augur> not without being caught?
03:19:27 <elliott_> Whatever you asked all these grubby people.
03:19:41 <augur> why? you speak english
03:19:56 <elliott_> Ask anyway, I just want a chance to lie flagrantly.
03:20:48 <augur> you can do that any time you like
03:21:38 <elliott_> I feel these are not the questions you asked everybody else.
03:21:51 <augur> they're certainly the ones i WOULDVE asked oklopol
03:22:05 <augur> or oklofok, as it were
03:22:58 <augur> elliott_: the questions were pretty simple
03:23:30 <augur> translate the following as completely as possible: John ate a hotdog and Susan ate a hamburger, John has eaten a hotdog and Susan has eaten a hamburger, John talked to Susan on Tuesday and to Stephen on Wednesday, Every girl will vote yes and her father will vote no, Most dogs love Alpo and most cats love Whiskas, Most dogs have eaten Alpo and most cats have eaten Whiskas
03:23:50 <elliott_> John ate a hotdog and Susan ate a hamburger, John has eaten a hotdog and Susan has eaten a hamburger, John talked to Susan on Tuesday and to Stephen on Wednesday, Every girl will vote yes and her father will vote no, Most dogs love Alpo and most cats love Whiskas, Most dogs have eaten Alpo and most cats have eaten Whiskas
03:24:32 <augur> is this acceptable on the reading just translated: John ate a hotdog and Susan a hamburger
03:24:58 <elliott_> I... can't parse that statement
03:25:25 <augur> that completes this question session
03:25:42 <elliott_> "is this acceptable on the reading just translated"
03:26:06 <augur> can I say "John ate a hotdog and Susan a hamburger" to mean "John ate a hotdog and Susan ate a hamburger"
03:26:41 <elliott_> i thought those were identical statements
03:27:11 <augur> http://wellnowwhat.net/linguistics/elliottqs.txt
03:27:27 <augur> 1, 3, 8, 11, 15, and 20 are the base sentences
03:27:29 <elliott_> The answer to all of them is C
03:27:40 <augur> the sentences below them are modified by various deletions
03:27:41 <elliott_> 13. Every girl will vote yes and her father will no
03:27:46 <elliott_> Is that actually valid in any language? X-D
03:27:51 -!- TeruFSX has quit (Read error: Connection reset by peer).
03:28:07 <augur> well, none of the ones i looked at anyway
03:28:20 <augur> 12 is fine in all the languages with VP ellipsis
03:32:41 <augur> see you in a bit, elliott_
03:33:30 -!- quintopia has quit (Ping timeout: 250 seconds).
03:33:42 -!- TeruFSX has joined.
03:34:07 <elliott_> augur: i decided to cheat the only way i knew how
03:34:17 -!- quintopia has joined.
03:37:05 -!- TeruFSX has quit (Remote host closed the connection).
03:38:48 -!- augur has quit (Remote host closed the connection).
03:48:28 -!- azaq23 has quit (Ping timeout: 246 seconds).
03:50:44 -!- zzo38 has quit (Quit: Buffer underflow).
04:11:23 -!- augur has joined.
04:14:04 -!- Wamanuz2 has joined.
04:14:42 <elliott_> Wow, aspartame is five-dimensional.
04:14:57 <elliott_> Also water apparently, and that contains liquid gold.
04:15:25 <elliott_> OK, cows were created to turn three-dimensional food into five-dimensional flesh, and their purpose is to serve mankind by feeding us.
04:15:31 <elliott_> Which helps us to return home.
04:16:46 -!- Wamanuz has quit (Ping timeout: 246 seconds).
04:22:54 <monqy> is this advanced vortex math
04:23:12 <monqy> or just the regular sort
04:31:14 -!- TeruFSX has joined.
04:31:23 <elliott_> monqy: http://www.breatharian.com/breatharians.html
04:31:30 <elliott_> It's the greatest thing you'll read today.
04:32:06 <elliott_> My DNA came to Humanity by the means of THE ARK OF THE COVENANT and THE HOLY GRAIL and all of you in the World now hold this DNA in your blood.
04:32:06 <elliott_> My DNA runs in your veins and I come now to enliven it"
04:33:39 <elliott_> Question: If you are a true Breatharian why did you recommend a diet of diet coke and McDonald�s double-quarter-pounder with cheese meal?
04:38:13 <monqy> DO YOU KNOW THE BASE FREQUENCY OF THE DOUBLE-QUARTER-POUNDER WITH CHEESE MEAL FROM MCDONALD AND DIET COKE?
04:38:33 <elliott_> "( Click here ''Immortality workshops" for more info.)
04:38:33 <elliott_> WORKSHOPS MUST BE COMPLETED BEFORE DECEMBER 21, 2012"
04:38:55 <elliott_> AFTER 30 YEARS OF PREPARATIONS (VERY INTENSE FOCUS FOR THE LAST 5 YEARS) THE SEVERITY OF THIS INITIATION WAS ALMOST OVERWHIMMING.
04:38:55 <elliott_> FOR THE FIRST SIX FULL DAYS 24/7, MY BODY WAS COVERED IN 1ST AND 2ND DEGREE BURNS. WHILE IN THE MIST OF THIS INCREDIBLE PAIN AND HEAT, I BEGAN TO THE SMELL THE UNDENIABLE ODOR OF BURNING HUMAN FLESH AND TO MY SURPRISE I SMELLED ODORS OF MANY TOXINS I DID'NT EVEN KNOW I HAD IN MY BODY.
04:39:04 <elliott_> THE STRONGEST ODORS WERE OF COMMOND HOUSE PAINTS, WATER BASED, LEAD BASE, PAINTS FROM SPRAY CANS. I COULD FEEL LARGE AMOUNTS OF MERCURY AND LEAD POISONING FROM MY TEEN YEARS WHEN LEAD WAS USED FREELY IN PAINTS AND GASOLINE FOR THE AUTOMOBILE. THE MERCURY WAS FROM THE TOOTH FILLINGS THAT WERE POISONING ME FOR YEARS. AS MY LIFE WAS FLASHING BEFORE MY EYES I WAS MADE AWARE OF ALL THE THINGS I KNEW WER
04:39:04 <elliott_> E BAD FOR MY HEALTH BUT DID NOTHING ABOUT THEM. LIKE PLACES WHERE I HAD LIVED, SUCH AS IN VERY POLLUTED HOUSES OR CITIES AND REFUSED TO MOVE TO MORE HEALTHY ENVIRONMENTS.
04:39:19 <monqy> Here is a science article that’ll drive my point home.
04:39:30 <monqy> Here is a science article that’ll drive my point home.
04:39:41 <monqy> http://www.breatharian.com/brightstar.html the science article
04:40:14 <monqy> I don't know what the point is because I'm a horrible person and skipped to the bottom
04:42:38 <elliott_> In the "5D Q&A" section of his website Brooks explains that cows are fifth-dimensional (or higher) beings that help mankind achieve fifth-dimensional status by converting three-dimensional food to five-dimensional food (beef).[26] In the "Question and Answer" section of his website, Brooks explains that the "Double Quarter-Pounder with Cheese" meal from McDonald's possesses a special "base frequency"
04:42:38 <elliott_> and that he thus recommends it as occasional food for beginning breatharians.[27] He then goes on to reveal that Diet Coke is "liquid light".[27] Prospective disciples are asked after some time following the junk food/magic word preparation to revisit his website in order to test if they can feel the magic.[25]
04:42:41 <elliott_> i like how every single sentence has a citation
04:42:45 <elliott_> because otherwise nobody would believe it ever
04:42:52 <elliott_> Brooks states that he may be contacted on his fifth-dimensional phone in order to get the correct pronunciation of the five magic words.[25] In case the line is busy, prospective recruits are asked to meditate on the five magic words for a few minutes, and then try calling again.[25]
04:43:03 <elliott_> can you dial fifth-dimensional phone lines with a three-dimensional phone
04:49:34 -!- TeruFSX has quit (Remote host closed the connection).
05:17:52 <elliott_> where's oerjan when you need him
05:52:40 <elliott_> http://en.wikipedia.org/wiki/User:Gavinstubbs09/The_Linux_Group
05:58:21 <monqy> The Linux Group Application Suite programs cannot be downloaded for free - people have to buy them online. Some of their products are free of charge, also.
05:58:49 <monqy> is it worth the bucks
05:59:11 <elliott_> he added the criticism section to make it more neutral
05:59:14 <elliott_> The Linux Group has been accused by a few YouTube viewers saying that they don't review unknown Linux Operating Systems even know that is The Linux Group's priority. They are currently on the case to add more reviews talking about unknown Linux distros.
05:59:25 <elliott_> Google, Inc. (2011). Google thelg Search Results Retrieved March 30, 2011.
06:00:21 <elliott_> The Linux Group is currently working on a translator powered by Google Translate. This will be posted in due time for the release on 2/28/11.
06:00:29 <elliott_> http://thelg.weebly.com/tlg-app-suite-windows.html
06:00:38 <elliott_> Gavin recently showed a presentation to his 8th grade class for a "How to" project, thus, doing "How to Make an Computer Application." They all really liked it. He also has seen posts about it from classmates saying how great it was.
06:00:59 <elliott_> the linux group application suite
06:01:29 <monqy> http://thelg.weebly.com/uploads/5/0/5/2/5052994/310400.png?827
06:01:56 <monqy> Get your work done in style. and. work with fun background apps!
06:02:30 <Sgeo> Maybe it works perfectly on WINE? *really, really bad excuse making time*
06:02:50 <monqy> maybe it's a stupid 8th grader
06:03:52 <elliott_> and he'll be nice to all of them
06:03:55 <elliott_> and we'll have two fewer problems
06:04:47 <monqy> put them all in a small box and give them terminals to a virtual island
06:06:35 <Sgeo> "Windows 98FE"
06:07:23 <Sgeo> Ok, pointing out a typo is a bit silly
06:08:35 <Sgeo> <insert joke about user asking about Windows 97 here>
06:09:16 <Sgeo> <wait, can I put arbitrary IRP commands here?>
06:09:24 <Sgeo> <please, worship me>
06:20:40 -!- ralc has quit (Read error: Connection reset by peer).
06:29:32 <cheater79> what's up my fellow drug dealers on boats in the ocean
06:30:04 <monqy> my boat is in a pond
06:32:42 <coppro> it amazes me that no one has made libuck yet
08:18:48 <elliott_> 15:43:40: <ais523> Damn, I just discovered that the IOCCC was open
08:18:51 <elliott_> 15:43:40: <ais523> Damn, I just discovered
08:18:53 <elliott_> 15:43:40: <ais523> Damn, I just
08:29:43 <elliott_> 01:00:35: * oerjan wonders if you could do reverse pointers - like COME FROM.
08:30:01 <elliott_> every value has either zero or one pointers pointing to it, but every pointer can point to multiple values
08:30:23 <elliott_> following a pointer requires traversing the entire address space, but backtracking from a value to its pointer is constant time
08:31:33 -!- cheater_ has quit (Ping timeout: 260 seconds).
08:32:58 <elliott_> that's the definition of a hash :)
08:38:44 -!- Phantom_Hoover has joined.
08:42:02 -!- oerjan has joined.
08:46:39 -!- Vorpal has joined.
08:57:20 <Vorpal> elliott_, any news on computer?
08:57:35 <elliott_> i just... have you ever noticed like
08:57:37 <elliott_> how many things you can do in a life
08:57:49 <elliott_> mostly the stupid inconsequential ones involving wasting lots of time
08:58:06 <Vorpal> elliott_, yes I noticed, minor crisis a few years ago when I realised I really wanted to try more things than I could ever do in a lifetime
08:58:38 <lambdabot> Phantom_Hoover: You have 4 new messages. '/msg lambdabot @messages' to read them.
08:58:45 <elliott_> "but how will I ever find the time to get shitted on by a bear wearing a top hat"
08:59:02 <Vorpal> <Phantom_Hoover> Make sure bungee jumping is near the end. <-- actually that is one of the few things I don't want to try
08:59:18 <Vorpal> but sure, I'll do it when I'm a spry 90-year old man or something
08:59:27 <Vorpal> elliott_, probably yes
08:59:29 <elliott_> Unless you're in for bear-shitting.
08:59:33 <elliott_> In which case I know a good bear.
08:59:53 <Vorpal> elliott_, I do want to hang-glide for example, but I doubt I would dare.
09:00:26 <Vorpal> parachuting would be fun too
09:00:30 <elliott_> hang gliding? meh, what about those guys who just jump off mountains and fly for minutes like feet above the ground and then are like "meh, I _guess_ I'll open this parachute now"
09:01:27 <elliott_> i'll probably jump out of an aeroplane or something at some point, since it doesn't really take very long and i probably won't die
09:01:33 <elliott_> and i guess it's probably worth doing
09:01:45 <Vorpal> elliott_, with a parachute yes
09:01:50 <Vorpal> otherwise you would die :P
09:01:52 <cheater79> http://en.wikipedia.org/wiki/List_of_software_development_philosophies < lol @ "dependency injection"
09:01:57 <Vorpal> unless it is parked on ground
09:02:01 <Vorpal> then you don't need a parachute
09:02:35 <Vorpal> though I think you would break some bones if you tried to jump out of a parked 747 or such
09:03:24 <elliott_> it'd be awesome if there was like
09:03:30 <elliott_> that was just completely flat on the end
09:03:34 <elliott_> and you could jump off and fall for minutes
09:03:42 <elliott_> dunno how tall it'd have to be
09:03:47 <elliott_> (without a parachute until near the end)
09:03:53 <Vorpal> eh, how would you survive?
09:04:06 <elliott_> hey Phantom_Hoover how far did you work up jade's room as being?
09:04:09 <elliott_> with the falling-for-three-months thing
09:04:25 <Vorpal> elliott_, this happened recently?
09:04:35 <Vorpal> (homestuck I presume?)
09:04:49 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
09:04:49 <Vorpal> I haven't been keeping up with it for the past week or so
09:05:15 -!- Phantom_Hoover has joined.
09:05:19 <elliott_> this was when jade's room exploded
09:05:24 <elliott_> because of her robot explodin'
09:05:24 <Phantom_Hoover> <Phantom_Hoover> 1/10th of the way to Proxima Centauri, approximately.
09:05:32 <elliott_> and it was left as a cliffhanger for months
09:05:36 <elliott_> which obviously translated to literal falling time
09:05:41 <elliott_> <elliott_> hey Phantom_Hoover how far did you work up jade's room as being?
09:05:42 <elliott_> <elliott_> with the falling-for-three-months thing
09:05:42 <elliott_> <elliott_> wasn't it in the oort cloud
09:05:54 <Vorpal> Phantom_Hoover, does that assume constant gravity or do you take into account that you won't really fall in any reasonable sense out there?
09:06:48 -!- sebbu has quit (Read error: Connection reset by peer).
09:06:49 <Vorpal> Phantom_Hoover, ah, unrealistic. I bet that you would get a much more reasonable figure of distance if you did not
09:06:50 <Phantom_Hoover> Realistically you can get any falling time by going arbitrarily close to the moon/Earth point of equal gravity.
09:07:25 -!- sebbu has joined.
09:07:25 -!- sebbu has quit (Changing host).
09:07:25 -!- sebbu has joined.
09:08:29 <Phantom_Hoover> You could stick it in L1 or L2 and that'd probably work.
09:33:24 -!- Ycros has quit (Read error: Operation timed out).
09:33:34 -!- monqy has quit (Quit: hello).
09:37:10 -!- Ycros has joined.
09:40:21 -!- FireFly has joined.
09:40:48 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
09:50:42 -!- MigoMipo has joined.
09:51:05 -!- BeholdMyGlory has joined.
10:04:01 -!- Phantom_Hoover has joined.
10:25:20 -!- hagb4rd has quit (Ping timeout: 246 seconds).
10:30:27 <oerjan> in other news, roman numeral look and say seems to have some problems being analyzed
10:31:55 <oerjan> ...IIIVVIIIVVIII... -> ...IIIIIIVIIIIIIVIIIII... -> ...VIIIVVIIIVVI...
10:32:25 <oerjan> period 2 loop which doesn't expand, although it's already infinite both ways
10:33:22 <oerjan> in fact it only expands internally whenever there are exactly 4 I's in a row
10:33:56 <oerjan> i conclude that the version with 4 = IIII never expands, except at the ends
10:34:06 <oerjan> so no exponential blowup for that one
10:37:12 <elliott_> reddit has somethinged the last straw
10:37:18 <elliott_> criticism of the hitchhiker's guide
10:37:44 <oerjan> hm ...IIVVIIVV... -> ...IIIIIVIIIIIV... -> VIIVVIIV... so that loops too
10:38:51 <oerjan> (expand = increasing the number of groups, btw)
10:39:05 <olsner> what is the roman numeral look and say?
10:39:14 <elliott_> look and say with roman numerals
10:41:07 <oerjan> > let ved l = map (([undefined,"I","II","III","IV","V","VI"] !!) . length &&& head) . group in iterate ved "I"
10:41:08 <lambdabot> Couldn't match expected type `[a] -> [([GHC.Types.Char], a)]'
10:41:41 <olsner> aha, http://oeis.org/A005150 and http://oeis.org/A098595
10:42:18 <olsner> but what's interesting about it?
10:42:51 <oerjan> > let ved l = concatMap (curry (++) . (show . ([undefined,"I","II","III","IV","V","VI"] !!) . length &&& take 1)) . group in iterate ved "I"
10:42:52 <lambdabot> Couldn't match expected type `[b]'
10:42:52 <lambdabot> against inferred type `b1 -> (a,...
10:43:08 <elliott_> > let ved l = concatMap (curry (++) . (show . (["I","II","III","IV","V","VI"] !!) . succ . length &&& take 1)) . group in iterate ved "I"
10:43:09 <lambdabot> Couldn't match expected type `[b]'
10:43:09 <lambdabot> against inferred type `b1 -> (a,...
10:43:18 <elliott_> > let ved l = concatMap (curry (++) . (show . (["I","II","III","IV","V","VI"] !!) . pred . length &&& take 1)) . group in iterate ved "I"
10:43:19 <lambdabot> Couldn't match expected type `[b]'
10:43:19 <lambdabot> against inferred type `b1 -> (a,...
10:45:36 <oerjan> > let ved l = concatMap (uncurry (++) . ((["I","II","III","IV","V","VI"] !!) . pred . length &&& take 1)) . group in iterate ved "I"
10:45:36 <lambdabot> Couldn't match expected type `[GHC.Types.Char] -> [GHC.Types.Char]'
10:46:01 <oerjan> > let ved l = concatMap (uncurry (++) . ((["I","II","III","IV","V","VI"] !!) . pred . length &&& take 1)) . group in ved "I"
10:46:02 <lambdabot> Overlapping instances for GHC.Show.Show
10:46:32 <oerjan> > let ved = concatMap (uncurry (++) . ((["I","II","III","IV","V","VI"] !!) . pred . length &&& take 1)) . group in iterate ved "I"
10:46:33 <lambdabot> ["I","II","III","IIII","IVI","IIIVII","IIIIIVIII","VIIVIIII","IVIIIIVIVI","...
10:46:56 <elliott_> oh, you adopted my improvement
10:47:08 <elliott_> i was all ready with the newspaper about to start some whacking
10:47:25 <oerjan> olsner: it just occured to me i hadn't seen an analysis of it, unlikely ordinary, binary and ternary
10:47:56 <elliott_> oerjan: btw the wiki spam continues...
10:48:00 <elliott_> # (diff) (hist) . . Language list; 23:58 . . (-82) . . 94.100.25.42 (Talk) (, http://pulse.yahoo.com/_7DF36DB4UAO54HNWTPB2GQZOQE/blog/articles/329045 courtney thorne-smith nude, =-D, http://gemmaartertonsexsceneovx.tumblr.com gemma arterton sex scene, zyhoph, http://thesand)
10:48:03 <elliott_> god knows how that got through
10:48:17 <elliott_> http://gemmaartertonsexsceneovx.tumblr.com/
10:48:22 <oerjan> yes, it may be they actually have to solve the captchas now?
10:48:33 <elliott_> either they've figured out how, or are paying people to do so
10:48:44 <elliott_> if it's the latter, I suggest we do absolutely nothing >:)
10:49:36 <oerjan> also, the two i recall recently have both been against the Language list
10:50:31 <oerjan> i did see a brief mention of roman numeral look-and-say in a reddit thread when googling though
10:50:39 <elliott_> they're tavrosvandals, obviously
10:50:45 <elliott_> wow, just typo'd vandal as vandle
10:50:50 <elliott_> # (diff) (hist) . . Talk:Unparseable; 15:27 . . (+363) . . Ais523 (Talk | contribs) (but isn't the prupose of a loop to repeat things?)
10:51:03 <elliott_> oerjan: yet another homestuck reference >:)
10:51:21 <elliott_> the reference pile doesnt stop from getting taller.
10:51:34 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
10:55:38 -!- Phantom_Hoover has joined.
10:57:06 <elliott_> Vorpal: btw re: "haven't kept up on homestuck this week" - well an eight day hiatus just ended so you haven't missed much :D
11:08:17 <Lymia> Never use /list on freenode
11:25:52 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
11:26:18 -!- Phantom_Hoover has joined.
11:40:35 -!- aloril has quit (Ping timeout: 240 seconds).
11:53:38 -!- aloril has joined.
12:30:16 -!- aloril has quit (Ping timeout: 260 seconds).
12:30:22 -!- azaq23 has joined.
12:40:32 -!- TeruFSX has joined.
12:42:52 -!- aloril has joined.
12:55:03 -!- elliott_ has quit (Ping timeout: 260 seconds).
13:07:29 -!- oerjan has quit.
13:23:04 <Vorpal> <elliott_> Vorpal: btw re: "haven't kept up on homestuck this week" - well an eight day hiatus just ended so you haven't missed much :D <-- aqh
13:23:30 <Vorpal> Phantom_Hoover, meh, that means another computer than this one anyway
13:29:07 <Phantom_Hoover> Vorpal, why, is your current computer impossible to run Flash on?
13:29:43 <Vorpal> Phantom_Hoover, yes. This is not even x86.
13:30:04 <Vorpal> I guess I could run it under qemu but that sounds painful
13:32:03 <Vorpal> back (quicker than I expected)
13:32:28 <Vorpal> Phantom_Hoover, btw did you know that you can't run minecraft if you use an external monitor connected to a laptop and turn off the built in one
13:32:31 <Vorpal> it will crash on startup
13:32:51 <Vorpal> you have to turn on the internal one until you get to the main menu
13:33:04 <Vorpal> Phantom_Hoover, I blame either notch or lwjgl
13:33:08 <Vorpal> it crashed in the latter iirc
13:33:31 <Vorpal> (I doubt minecraft runs on THIS thing, what with the handful of JNI libraries it uses...)
13:34:43 <Vorpal> but yeah I would be surprised if he supported linux on ppc
13:56:16 <Phantom_Hoover> It's really quite ridiculous the amount of music Homestuck can have on the earlier Flash scenes.
13:58:26 -!- azaq23 has quit (Quit: Leaving.).
14:03:19 -!- TeruFSX has quit (Remote host closed the connection).
14:12:52 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
14:14:43 -!- Phantom_Hoover has joined.
14:47:09 -!- hagb4rd has joined.
15:30:42 -!- augur has quit (Remote host closed the connection).
16:07:38 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
16:09:20 -!- Phantom_Hoover has joined.
16:17:30 -!- augur has joined.
16:24:54 <cheater79> um, like four different articles i've read in succession were about or by peter norvig
16:43:45 <Phantom_Hoover> " Fun Fact: You can delete most spam and blogs by adding -com to your search terms." — Scroogle
16:55:34 <cheater79> hey, is there a quine of knuth's literate programming book?
16:57:36 -!- monqy has joined.
17:12:32 -!- ajf|offline has changed nick to ajf.
17:21:50 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
17:48:08 -!- Phantom_Hoover has joined.
17:48:22 -!- Phantom_Hoover has quit (Client Quit).
17:48:38 -!- Phantom_Hoover has joined.
17:53:40 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
17:56:58 -!- Phantom_Hoover has joined.
18:08:35 <HackEgo> 404) <augur> oerjan you're swedish, right?
18:08:35 <HackEgo> 193) <oerjan> it's not obvious from quantum mechanics that you can destroy a universe arbitrarily.
18:08:36 <HackEgo> 311) <zzo38> If you want to use TeX formats invented by Christians, use Plain TeX. However, I do not think the religion of its author is a good way to decide what to use. I decide to use Plain TeX for its own reasons.
18:08:37 <HackEgo> 243) <Sgeo> My quotes are boring
18:08:38 <HackEgo> 347) <olsner> it is from 2002 though, I was younger then
18:09:18 <Sgeo> My point is proven.
18:14:48 <olsner> Sgeo: could be worse, most of my quotes are about django not being named after a giraffe
18:15:19 <Phantom_Hoover> "People who sit there and talk about it don't realize that molecules themselves are somewhat hypothetical, and that their interactions are more so, and that the biological reactions are even more so."
18:15:30 <Phantom_Hoover> The man who said this was the recipient of a Nobel Prize.
18:19:56 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
18:20:17 <cheater79> esolang should have a list of languages that have monads
18:50:30 -!- Phantom_Hoover has joined.
18:51:55 -!- Mannerisk has left.
18:52:32 -!- Mannerisk has joined.
19:32:48 <HackEgo> 329) <treederwright> enjoy being locked in your matrix of solidity
19:50:48 <HackEgo> 273) <oklopol> hey speaking of young, some kinds asked me to buy some tobacco for them and i did, and then they were all likd "wow that guy's coool" when i told them i don't need their money
19:51:04 <HackEgo> 242) <elliott> quintopia: that's offensive, i was in a mirror accident and now my second half is a permanent mirror <elliott> typing is kind of difficult \ 264) <quintopia> vorpal: a lot of people in AK fly <Vorpal> quintopia, well getting a pilot cert is a lot more complex than a driving license :P <quintopia> being an
19:51:32 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26346
19:51:36 <HackEgo> 264) <quintopia> vorpal: a lot of people in AK fly <Vorpal> quintopia, well getting a pilot cert is a lot more complex than a driving license :P <quintopia> being an AK resident is a lot more complex than a driver's license too
19:52:16 <quintopia> i'm surprised that i even have two quotes
19:53:18 <Sgeo> `pastequotes Sgeo
19:53:20 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.11518
19:54:36 <Phantom_Hoover> Sgeo, 136 is basically a summary of why shutup had sex as a trigger.
19:55:26 <Phantom_Hoover> 371) <Sgeo_> I think she either likes me, is neutral towards me, or dislikes me
19:55:55 <Phantom_Hoover> Are you saying for sure that you believe LEM to be true?
19:57:17 <Sgeo> What does it mean for a mathematical statement to be "true" without referring to the axioms in which you're asking such a question?
19:57:34 <HackEgo> 343) 00:07 Sgeo has quit (IRC is taking up too much of my time. I need time to study the Bible and find Christ.) 00:12 Sgeo has joined #esoteric.
19:58:08 <quintopia> sgeo: it's convenient for mathematicians not to reference the axiom set every time they make a statement
19:59:05 <quintopia> in most papers, there is an implied "assume some set of axioms equivalent to the peano axioms"...there are many equivalent number-theory-complete axiom sets.
20:11:33 <coppro> Actually it's typically ZFC
20:12:02 <quintopia> they avoid AoC when it's not needed
20:13:05 <coppro> despite what people will say, AoC is pretty common in my experience
20:13:36 <coppro> you lose so many useful properties of infinite sets without it
20:15:09 * Sgeo looks at http://rosettacode.org/wiki/Amb and lols at Haskell's amb = id
20:15:10 -!- hagb4rd has quit (Ping timeout: 246 seconds).
20:15:11 -!- Sgeo has quit (Read error: Connection reset by peer).
20:15:40 -!- Sgeo has joined.
20:18:07 * Phantom_Hoover looks at the Mathematica code in that article, vomits.
20:18:31 <olsner> maybe you should have that vomiting checked out
20:18:35 <olsner> could be an illness of some kind
20:18:53 <Sgeo> Maybe I won't try to learn Common Lisp
20:18:58 <Phantom_Hoover> I think I basically underwent quantum tunnelling from "bright-eyed amateur" to "jaded theoretician" without undergoing any of the intermittent experience.
20:19:19 <Phantom_Hoover> Sgeo, it's probably worth learning for CLOS alone, which I remember little of beyond "it was awesome".
20:19:36 <Sgeo> It doesn't have Factor's predicate classes
20:19:51 <Sgeo> And I don't know if that's what Factor calls them
20:20:23 <Phantom_Hoover> As in an object is in a class if it satisfies a certain predicate?
20:20:27 <coppro> Phantom_Hoover: with regards to what? (the quantum tunneling)
20:20:49 <Sgeo> http://docs.factorcode.org/content/word-PREDICATE__colon__%2Csyntax.html
20:20:52 <Sgeo> Phantom_Hoover, yes
20:21:43 <Phantom_Hoover> coppro, as in, I underwent the entire "programming is great! Wait, bored now" sequence *after finishing only two substantial programs".
20:21:55 <coppro> Phantom_Hoover: define substantial
20:22:11 <Phantom_Hoover> coppro, actually does something other than "Hello, world!"
20:22:19 <coppro> Phantom_Hoover: that's your problem
20:22:41 <coppro> go work on something with 10k+ LOC
20:23:14 <olsner> will that make it more fun?
20:23:24 <coppro> you'll get a sense of accomplishment
20:23:45 <coppro> just writing lame things does not a sense of accomplishment give
20:23:55 <coppro> also make sure it has some practical use
20:24:09 <coppro> designing windows calculator 34.0 is not entertaining at all
20:34:04 <quintopia> well that one they made for that one tdwtf competition that used every aspect of web 2.0 to accomplishh the calculations would have been entertaining
20:38:10 <Phantom_Hoover> I am of course expected to magically fix this because I Know About Computers.
20:39:53 <coppro> Phantom_Hoover: I suggest the flowchart
20:40:23 <Phantom_Hoover> If you're referring to that xkcd flowchart then please go away.
20:42:28 <olsner> Wine in laptop? --> Remove wine from laptop.
20:43:25 <quintopia> my question is why you put linux on a macbook
20:44:38 <Phantom_Hoover> http://www.reddit.com/r/IAmA/comments/hbyjm/i_am_dave_one_of_the_creators_of_cyanide/c1u7gdb
20:45:01 <Phantom_Hoover> It disturbs me that despite most of my family being from Belfast I cannot read this in a Belfast accent.
20:47:36 -!- ralc has joined.
20:48:04 <quintopia> i didnt say "mine too and neither can i"
20:48:14 <quintopia> therefore i was only reflecting the last phrase
20:56:41 <oklofok> "<Phantom_Hoover> I think I basically underwent quantum tunnelling from "bright-eyed amateur" to "jaded theoretician" without undergoing any of the intermittent experience." <<< been there man
20:57:27 <Phantom_Hoover> oklofok, weren't you, like, doing CS at university before joining the legion on the dam?
21:00:22 -!- elliott_ has joined.
21:02:17 <elliott_> 13:30:04: <Vorpal> I guess I could run it under qemu but that sounds painful
21:02:29 <elliott_> Vorpal: also, it's an [S], so plug in some damn speakers
21:02:38 <elliott_> 14:00:39: <Phantom_Hoover> Hey, Rose lives in Europe.
21:02:59 <Phantom_Hoover> The end of Ascend makes it look more to the east than that.
21:03:06 <elliott_> Rose's House, an isolated mansion in the woods. (Rainbow Falls, New York)
21:03:15 <elliott_> "The home of Rose and her Mom. Money doesn't seem to be an object with the Lalondes; their artistically angular house is a modernist architectural marvel, situated on Rainbow Falls, a waterfall in Adirondacks park, New York, much like Fallingwater."
21:03:54 -!- elliott_ has changed nick to elliott.
21:04:07 -!- elliott has quit (Changing host).
21:04:07 -!- elliott has joined.
21:05:24 <elliott> 19:51:51: <Phantom_Hoover> Someone preëmpted egotism.
21:05:24 <lambdabot> elliott: You have 2 new messages. '/msg lambdabot @messages' to read them.
21:05:30 <elliott> it's just a search mechanism
21:05:41 <elliott> 19:54:36: <Phantom_Hoover> Sgeo, 136 is basically a summary of why shutup had sex as a trigger.
21:05:45 <elliott> Uhh, like I said, that was the heuristics.
21:06:55 <elliott> It is not for I to delve into the mysterious mind of FATE.
21:08:16 -!- pikhq has joined.
21:08:38 -!- variable has quit (Remote host closed the connection).
21:08:49 <elliott> 20:22:19: <coppro> Phantom_Hoover: that's your problem
21:08:49 <elliott> 20:22:29: <Phantom_Hoover> coppro, did I ever say it wasn't?
21:08:49 <elliott> 20:22:41: <coppro> go work on something with 10k+ LOC
21:08:57 <elliott> "I'm bored." "Do something SOULCRUSHING."
21:09:13 <elliott> If anything a program of mcmap's size is far more appropriate for that, but honestly, no.
21:09:22 <elliott> 20:23:45: <coppro> just writing lame things does not a sense of accomplishment give
21:09:25 <Phantom_Hoover> Perhaps I should have told him that I can barely read my own programs after a day or so.
21:09:25 <olsner> "Merely bored? Do something SOULCRUSHING!"
21:10:08 -!- variable has joined.
21:10:35 -!- zzo38 has joined.
21:10:37 <elliott> http://www.reddit.com/r/IAmA/comments/hbyjm/i_am_dave_one_of_the_creators_of_cyanide/c1u7gdb <-- I uncontrollably read this in Dara O'Brien's voice
21:11:15 <Phantom_Hoover> See, that's the kind of thing you expect from an Englishman, but I am probably meant to hold a higher standard.
21:11:30 <oklofok> "[05:04:17] <tswett> He also believes that Goldbach's conjecture and the Collatz conjecture are both true, and that there are infinitely many pairs of twin primes but their frequency drops very quickly." <<< well obviously these are all true
21:12:26 <Phantom_Hoover> (NB: it is quite pretty when it's not raining, but this does not excuse the fact that the only ISP anyone uses is BT.)
21:13:30 <pikhq> Freaking car travel.
21:14:01 <pikhq> 420 mile car trips make pikhq sore.
21:14:15 <tswett> Conjectures tend to be true.
21:14:40 <elliott> tswett is a rabbit and every number is 99.
21:15:32 <oklofok> "<Phantom_Hoover> oklofok, weren't you, like, doing CS at university before joining the legion on the dam?" <<< yes, and also actually programming
21:15:40 <tswett> Aiee! You ruined the fact that you ruined it!
21:16:36 <oklofok> i have never refuted a conjecture
21:16:47 <oklofok> but i have made a conjecture that was later refuted .(
21:16:51 <Phantom_Hoover> oklofok, see, it took me about 2 years to go from "hey, what's this programming thing" to "meh, programming is boring."
21:17:14 <oklofok> for me it took until i found math
21:17:16 <tswett> oklofok: the Two-Eye Conjecture?
21:17:19 <elliott> Phantom_Hoover: all you're really doing is waiting for at to come out.
21:18:14 <elliott> then you'll be like woo look gravity.lisp version two
21:18:25 <Sgeo> What Lisp is gravity.lisp?
21:18:29 <Sgeo> CL, or something else?
21:20:52 <elliott> tswett: unfortunately you can't since it isn't on the interwebnets
21:21:41 <tswett> It's much easier to Google How to Train Your Dragon 2.
21:23:12 <elliott> i'll rename it to that then
21:23:58 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:36:34 -!- ajf has changed nick to ajf|offline.
22:01:23 <elliott> 16:06:18: * SimonRC goes for a wak.
22:05:22 -!- oerjan has joined.
22:17:55 <elliott> 19:21:10: * oklokok lols as he dies of blood loss
22:19:15 <oklofok> is that an actual quote? :D
22:19:34 <zzo38> Who is being "he" in this quotation?
22:19:56 <zzo38> Are oklokok and oklofok the same?
22:20:00 <elliott> http://www.vjn.fi/pb/p454332531.txt hey oklofok remember this
22:20:57 <elliott> 21:18:20: <oklokok> also, oklotalk looks like line noise when used correctly.
22:20:57 <elliott> 21:18:30: <oklokok> i've just denoicified it to be pretty
22:23:01 <oklofok> elliott: oh wait actually i do, was that the syntax of oklotalk "regexps"?
22:23:20 <oklofok> slightly more ambitious than regexps but anyhow
22:24:23 <oklofok> now that i actually read it in all it's complicatedness, i note that that's kind of obvious
22:25:14 <pikhq> As it turns out, mortals actually *do* get sub-perfect scores on the "science" portion of the ACT. Strange.
22:25:29 <pikhq> I didn't know reading common representations of data was hard.
22:25:39 <oklofok> dynamic AND static scoping AND ANYTHING IN BETWEEN <3
22:26:51 <oklofok> that code snippet is pretty crazy, i should finish oklotalk
22:27:49 <oklofok> lol what is a homeomorphism
22:28:31 <quintopia> what is it? what is...this? does this happen or do i make it happen? does it just happen or happen?
22:28:31 -!- FireFly has quit (Quit: swatted to death).
22:28:42 <Phantom_Hoover> Y'know, I think the Luddites were judged far too cruelly by history.
22:30:02 <zzo38> Does your D&D characters drink?
22:30:44 <elliott> all my ddnadn charcaters are cripling alcoholics
22:31:14 <oklofok> 've played dd once, but i don't remember
22:31:42 <zzo38> elliott: Is drunk enough to write letters mixed up a bit?
22:32:01 <zzo38> However, I don't mean only alcoholic I mean all drink including magic potion
22:32:26 <oklofok> so does alcoholic include drug use?
22:32:41 <elliott> 23:04:35: <oklokok> GregorR: do you know perl?
22:32:42 <elliott> 23:04:41: <GregorR> Sadly.
22:32:56 <quintopia> Phantom_Hoover: http://www.youtube.com/watch?v=qvaxamJyTro
22:33:15 <zzo38> oklofok: I guess it would include alcoholic drugs
22:34:35 <zzo38> oklofok: What are you refering to?
22:35:18 -!- Phantom_Hoover has quit (Remote host closed the connection).
22:35:22 <elliott> oklofok: did you ever finish cise
22:35:25 <zzo38> oklofok: I don't know.
22:35:55 <quintopia> of course it's a joke. that guy has the strangest sense of humor, but it works somehow
22:36:06 <elliott> i think how cise should work is, you have a predicate that orders operations by commonality, where even full programs count as operations, and then cise just splits the program into chunks of variable bytes, all possible splittings of it
22:36:18 <elliott> picks an operation, the shorter the more common
22:36:28 <elliott> and then the most-common program operation that results is chosen
22:36:32 <elliott> oklofok: but that's like optimal :trollface:
22:36:40 <oklofok> no as in never finished it
22:36:50 <oklofok> although great answer to what you just said as well
22:38:26 <elliott> hey how can i force vim to quit with no exclamation mark...
22:39:01 <zzo38> And that is why you should fix your computer.
22:39:26 <zzo38> Because it is a better reason to fix it than for the purpose of typing messages on IRC, I think
22:41:00 <zzo38> I guess lack of exclamation marks also means you can learn these kind of things too
22:41:22 <zzo38> I knew ZZ but I didn't know there was a ZQ command
22:41:29 <quintopia> i guess that's one that only works in vim
22:47:49 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:51:06 -!- Vorpal has quit (Read error: Operation timed out).
22:51:24 -!- Vorpal has joined.
22:54:00 -!- hagb4rd has joined.
22:57:13 -!- Vorpal_ has joined.
22:59:07 -!- Vorpal has quit (Ping timeout: 240 seconds).
23:03:28 -!- HolyBlood^AFK has joined.
23:04:31 -!- zzo38 has quit (Remote host closed the connection).
23:07:42 <Gregor> In the future, due to general misspeaking, the pronunciations of "captain" and "cat pan" will be reversed.
23:11:09 <elliott> oklofok: http://www.vjn.fi/pb/p645463521.txt
23:18:30 -!- iconmaster_ has joined.
23:19:29 <iconmaster_> Went to a book sale today, got a bunch of computer books for two bucks apiece.
23:20:46 <iconmaster_> I will now soon have the knolodge on how to program VAX assembly.
23:21:07 <Gregor> quintopia: Another name for "litter box" :P
23:22:06 -!- HolyBlood^AFK has quit (Ping timeout: 260 seconds).
23:27:59 -!- iconmaster_ has quit (Quit: Pardon me, but I have to die in NetHack again.).
23:45:27 <pikhq> Apparently, I need to restart X in order to have any new GTK programs spawn. Bollocks.
23:47:12 <olsner> that never happens to me
00:08:39 -!- augur has quit (Remote host closed the connection).
00:15:07 -!- _kiwi_ has joined.
00:30:41 -!- augur has joined.
00:32:12 -!- oerjan has quit (Quit: Good night).
00:36:38 <pikhq> *What the hell* is going on.
00:37:24 <pikhq> xfwm4 is not starting.
00:38:11 <coppro> thought you meant something like terrorists
00:38:26 <elliott> pikhq: xfwm4 sucks anyway :(
00:38:31 <elliott> Because if you have click to focus on, then scroll-wheel focuses
00:40:28 <elliott> "Of Lisp Macros and Washing Machines"
00:45:03 -!- jcp has quit (Ping timeout: 276 seconds).
00:47:39 -!- _kiwi_ has left ("Leaving.").
00:48:54 <pikhq> Hmm. A fork of KDE3 is still maintained; *tempting*.
00:49:50 <elliott> I've talked to the maintainer of that
01:01:47 <tswett> Tarkenenkohan minä ulkona näillä vaatteilla?
01:10:12 -!- TeruFSX has joined.
01:32:10 -!- zzo38 has joined.
01:33:25 -!- Vorpal_ has quit (Quit: ZNC - http://znc.sourceforge.net).
01:51:47 -!- augur has quit (Ping timeout: 246 seconds).
01:52:56 -!- augur has joined.
01:54:43 -!- jcp has joined.
02:20:38 <Sgeo> That reminds me way too much of a Christian song I heard once
02:20:45 <Sgeo> Had a catchy rythm though
02:22:27 <zzo38> What Christian song?
02:23:06 <Sgeo> I'm trying to find it, hold on
02:23:29 <elliott> http://esolangs.org/w/index.php?title=Feather&curid=3601&diff=22891&oldid=20446
02:23:31 <Sgeo> http://www.youtube.com/watch?v=6GRHiEbCKIE
02:23:46 <Sgeo> (Warning: It's... very ... uh)
02:23:47 <elliott> wiki just asked me to solve 92 + 0
02:24:50 <zzo38> Sgeo: No, I mean the title, not the video
02:25:29 <elliott> thsi is amazing its so bad
02:25:44 <zzo38> Ha ha I win even more than "hemflit"
02:26:31 <Sgeo> I think I like the musical sounds, even if the lyrics are a bit... creepy
02:28:04 <zzo38> elliott: Do you try? (O, wait, I think you can't, isn't it?)
02:28:35 <zzo38> Maybe you can win even more?
02:28:58 <zzo38> Because some of the keys on your computer are broken?
02:29:00 <Sgeo> (defun rebəl () (take-too-seriously 'bible))
02:29:11 <elliott> zzo38: I can insert digits in other ways, it just takes a little longer.
02:29:23 <zzo38> OK, then perhaps you can.
02:29:32 <elliott> I've mostly skipped anagolf lately because the challenges have been boring.
02:29:50 <zzo38> And I mean the Deadfish challenge to be specific, that is the one I win at AWK
02:30:22 <zzo38> However I did not win at C but maybe I can try harder and see if I can eventually win, or maybe not
02:31:25 <zzo38> And if you think some of challenges have been boring, then make a new one if you know how to make something more interesting
02:32:53 <zzo38> Can you win at Forth?
02:37:44 <Sgeo> On the plus side, he argues against Philisophical relativism: http://www.youtube.com/watch?v=5zBcXKVaFg8
02:42:02 <Sgeo> He attempts to blow off secular humanism in a similar way :/. That argument was clearly crap, maybe his argument against relativism is similarly crap?
02:44:29 <zzo38> Is there musical TFM format? If not, maybe I can invent it same as normal TFM format, just with different meanings for the font dimension parameters and so on
02:55:08 -!- augur has quit (Ping timeout: 246 seconds).
03:01:56 -!- augur has joined.
03:04:39 -!- ralc has quit (Ping timeout: 240 seconds).
03:11:57 <pikhq> It is so, so very freaky talking to my dad now.
03:12:27 <pikhq> It takes immense self-restraint to not just shout "Your very premises about reality are demonstrably wrong!"
03:12:37 <monqy> I feel that way too
03:13:21 <pikhq> Made worse by how I have yet to even say that I'm an atheist to him, for fear of never hearing the end of it from everyone around me.
03:15:22 <zzo38> My father is atheist
03:15:51 -!- ralc has joined.
03:16:08 -!- augur has quit (Ping timeout: 246 seconds).
03:16:14 <pikhq> My father is a fundamentalist Christian, and believes in a loving, omnipotent, smiting deity.
03:16:30 <pikhq> Yes, benevolent and smiting.
03:17:39 <pikhq> Also, he's a young-earth creationist.
03:18:32 <monqy> my whole family is catholic (but im atheist)
03:19:07 <pikhq> Very hard to believe that considering the gigantic towers of evidence in favor of an old, *old* Earth in an even older universe.
03:19:26 <Sgeo> I'm more annoyed my my step-mom's insistance that I only date Jewish girls, that I go to Israel for some time, etc.
03:19:50 <pikhq> Sgeo: "I refuse to reside in an apartheid state." is the proper answer to the latter.
03:21:15 * Sgeo vaguely attempts to get Chicken Scheme working
03:21:31 <Sgeo> I _still_ haven't settled on a LISP-family language
03:23:34 -!- ralc has quit (Read error: Operation timed out).
03:24:16 <monqy> you don't have to settle on one, do you?
03:24:22 <monqy> just learn a bunch of them
03:24:54 <Sgeo> I'm not writing 3 AW SDK bindings for 3 similar yet different languages...
03:25:04 * Sgeo gets shot by everyone in this channel.
03:26:16 <Sgeo> 0000 0000 0000 0000 0000
03:26:25 * Sgeo doesn't know whether to curse XChat or Windows
03:27:16 * Sgeo would like a Linux distro with a working battery meter on this computer -- i.e., doesn't break when I don't deactivate ACPI (or is it ACIP, or APIC, I can never remember?)
03:27:52 <monqy> I didn't know battery meters were coupled with distros
03:28:03 -!- azaq23 has joined.
03:28:10 <monqy> are you insane or have you only tried sucky distros
03:28:56 <Sgeo> I'm assuming that distros are somewhat coupled with "Does ACPI work or will the OS fail to boot if I don't deactivate it?"
03:30:02 <pikhq> Lymia: Oh, boohoo. Only take you a month or two of dedicated study.
03:30:12 <monqy> and why would acpi not work
03:30:15 <Lymia> I'm not good at becoming dedicated.
03:30:17 <pikhq> Lymia: But lemme transcribe that for you.
03:30:26 <monqy> and is that even a distro problem
03:30:34 <pikhq> monqy: Kernel problem.
03:30:38 <monqy> yeah that's what I thought
03:30:47 <Sgeo> "wget: command not found"
03:30:59 * Sgeo angers in MinGW's general direction
03:31:12 <pikhq> ACPI is one of the few cases where the BIOS has *any* influence on the system after the boot sector has been loaded into memory.
03:31:13 <Lymia> Guess we know why it says "Min" now.
03:31:17 <pikhq> (on a modern system)
03:31:55 <pikhq> Sgeo: Why would it have wget? MinGW itself only really has a GCC port and headers, and msys only has enough of a POSIX system to get the GNU build system to work.
03:32:04 <monqy> Sgeo: could you get a fancy kernel to fix your problem
03:32:17 <Sgeo> monqy, if I had any idea how..
03:32:28 <Sgeo> Or what, exactly, I'm looking for, besides "Works"
03:32:41 <monqy> maybe if you told google your problem
03:32:54 <pikhq> monqy: What he'd want to fix his problem is a large quantity of troubleshooting.
03:33:17 <Sgeo> The solution that I found a while ago was to disable acpi.
03:33:18 <pikhq> And, given that he's got a failure to boot, it seems plausible he'd need a kernel debugging setup to make any meaningful progress.
03:33:29 <Sgeo> acpi=off or was it noacpi
03:34:16 -!- augur has joined.
03:39:41 <elliott> <pikhq> Made worse by how I have yet to even say that I'm an atheist to him, for fear of never hearing the end of it from everyone around me.
03:39:57 <elliott> pikhq: "I don't really feel very religious" is an easier way to phrase it I think
03:40:13 <elliott> There's some anathema in America to the word "atheist" that seemingly isn't associated with actually being an atheist, just identifying as "atheist"
03:40:21 <Sgeo> People in #math seem to be assuming that everyone that comes in there is a genius, and fail to realize that someone who asked a question may not realize a subtely in their response
03:40:23 <elliott> <pikhq> Also, he's a young-earth creationist.
03:40:41 <elliott> <Sgeo> I'm more annoyed my my step-mom's insistance that I only date Jewish girls, that I go to Israel for some time, etc.
03:40:41 <elliott> <pikhq> Sgeo: "I refuse to reside in an apartheid state." is the proper answer to the latter.
03:41:18 <elliott> <Sgeo> "wget: command not found"
03:41:19 <elliott> * Sgeo angers in MinGW's general direction
03:41:25 <elliott> mingw is a gcc port, not a posix library
03:41:44 <elliott> <Sgeo> People in #math seem to be assuming that everyone that comes in there is a genius, and fail to realize that someone who asked a question may not realize a subtely in their response
03:41:51 <elliott> probably they realise it's not the case but don't give a shit.
03:42:18 <elliott> and nobody in #math will be a genius. well maybe a few people. but the standard for genius is quite high.
03:42:30 <elliott> unless you mean they're not geniuses but assume the askers are geniuses
03:42:37 <elliott> which could only manifest as... grovelling?
03:42:45 <Sgeo> Not what I meant
03:43:29 <pikhq> My processor has the following serial number: "To Be Filled By O.E.M."
03:45:10 <pikhq> Also, it's pretty insane the amount of information hwinfo can get.
03:45:24 <pikhq> I am literally looking at an enumeration of the ports on the back of my computer.
03:46:10 <pikhq> With their types, the internal header they're soldered to, the external label, and the type of socket it has.
03:46:48 -!- azaq23 has quit (Read error: Operation timed out).
03:48:39 -!- azaq23 has joined.
03:51:46 <Lymia> Is it possible to override a password in the CMOS if you have root access?
03:52:25 <pikhq> Do you mean "possible" or "feasible"?
03:53:10 <Lymia> Both would be interesting.
03:53:25 <pikhq> "Feasible" I doubt.
03:53:51 <pikhq> But "possible", most certainly, *if* you have some way of executing code in the kernel (via modules or /dev/kmem) and a flashable BIOS.
03:54:17 <pikhq> "Simply" flash the BIOS from the kernel.
03:54:39 <pikhq> Thereby adding executable code to the BIOS that will override its password check.
03:55:30 <Sgeo> Lymia, it's certainly possible to read it...
03:55:54 <Sgeo> At least for some BIOSes
03:56:20 <Sgeo> And if you can read it, surely you can change it in the normal way?
03:56:36 <Sgeo> (Note: I've done the reading bit before, on a 2000 era computer though)
03:57:46 <elliott> hmm, i want to implement an esolang
03:58:34 <Lymia> elliott, implement BrainFuck++
03:58:41 <Lymia> It's BrainFuck, except with an additional command ?
03:59:02 <Lymia> It reads a Brainfuck program from tape, until it finds a null byte, and sets that null byte to 0 if the program halts, or 1 if it dosn't.
03:59:17 <Sgeo> <Sgeo> Define "Windows" person
03:59:17 <Sgeo> <Some Person> well, in this case, someone who would know what to do after attempting to reset a Windows 7 password failed and resulted in the system endlessly rebooting
03:59:19 -!- NihilistDandy has joined.
03:59:40 <Lymia> Sgeo, what did that person try?
04:00:00 <Sgeo> <Rambler> clearly i shouldn't have disabled SYSKEY using chntpw on a Windows 7 system
04:00:05 <Sgeo> Oops, forgot to redact their nick
04:00:09 <elliott> <Lymia> elliott, implement BrainFuck++
04:00:10 <elliott> <Lymia> It's BrainFuck, except with an additional command ?
04:00:10 <elliott> <Lymia> It reads a Brainfuck program from tape, until it finds a null byte, and sets that null byte to 0 if the program halts, or 1 if it dosn't.
04:00:12 <elliott> So it's like Spoon but not as fun.
04:00:20 <elliott> Sgeo: HAHAHAHA NOW I WILL FIND THEM
04:00:28 <zzo38> Why do they make programs that require a lot of other dependencies and so on to make it work, even when it could be done in a different way that can work otherwise?
04:00:41 <Sgeo> Lymia, are you capable of helping em?
04:00:55 <pikhq> zzo38: Alternately, personal taste.
04:00:58 <pikhq> zzo38: Quite often bad.
04:01:08 <Lymia> Not unless I tell them to write "reinstall"
04:01:22 * Lymia has no idea how she wrote what she did
04:01:31 <elliott> He sounds like an idiot, let's not help him.
04:02:09 <pikhq> He sounds like an idiot, let's kill him and eat his flesh.
04:05:29 <elliott> pikhq: You're still on Debian testing/Xfce, right?
04:05:38 <elliott> Can't stay on old Ubuntu forever.
04:07:55 <elliott> NihilistDandy: I'm sorry -- I can't type coherently over how hard I'm laughing.
04:08:07 <pikhq> Gentoo seems to have serious issues with maintaining reasonable levels of QA on their packaging.
04:08:08 <elliott> But I think I'll let the actual Gentoo deconvert (pikhq) handle this one.
04:08:49 <elliott> There's exactly one thing that would cause me to give Gentoo a shot -- if they supported non-standard configurations.
04:08:53 <elliott> You can't have a non-glibc system with Gentoo.
04:08:58 <elliott> You can't have a statically linked system with Gentoo.
04:09:07 <pikhq> elliott: s/can't have/can't have anymore/
04:09:09 <elliott> So what the fuck is the point?!?!?!
04:09:32 <pikhq> uclibc Gentoo ceased to be maintained in 2005, sadly.
04:09:38 <elliott> pikhq: Debian isn't frozen right now, right?
04:09:48 <pikhq> Debian just came out of a feature freeze.
04:10:00 <pikhq> It'll be another year or two before another one.
04:10:08 <elliott> Squeeze came out a while ago, dude :P
04:10:12 <pikhq> No, squeeze just came out in March.
04:10:22 <elliott> God, my perception of time is fucked.
04:10:49 <elliott> For some reason days are much longer right now. Not in the sense that they drag on, just in the sense that fucktons happen in a day.
04:10:58 <pikhq> Also, it seems *likely* that wheezy will see the introduction of a fourth Debian branch.
04:11:21 <elliott> So it'll be between testing and unstable?
04:11:27 -!- CakeProphet has joined.
04:11:30 <elliott> Because that would be sooo sweat.
04:11:33 <pikhq> Which is, as you can imagine, intended to be an end-user rolling release system.
04:11:35 <elliott> It wouldn't be sweat at all.
04:11:44 <elliott> pikhq: Thus obsoleting Gregor's precious distro ;D ;D ;D
04:12:33 <pikhq> It's still debated how best to *do* this, but they seem to be based *around* starting with testing's practices of importing packages from unstable after a few days/weeks.
04:13:03 <pikhq> And, obviously, not being affected by freezes for stable.
04:13:09 <elliott> pikhq: So where would that leave testing? Updates from rolling trickle down except when in a feature freeze?
04:13:25 <elliott> Rolling comes from testing, but when testing is frozen, the testing policy is applied to sid, to pull updates into rolling?
04:13:41 <elliott> i.e. when testing is frozen, the sid->testing trickle-down policy switches to trickling-down into the agape mouth of rolling.
04:13:46 <elliott> Wow, that sentence went horrible half-way through.
04:13:47 <pikhq> Those are two different plans.
04:14:12 <pikhq> Another is to make testing be a release that only comes into existence for the sake of preparing a stable release.
04:14:24 <pikhq> Forked from rolling, of course.
04:14:57 <pikhq> Still *another* is to make a monthly Debian release.
04:15:30 <pikhq> And yet another is to reform processes so the freeze for release is really short.
04:15:50 <elliott> One might wonder whether the freeze actually helps.
04:16:05 <elliott> Would simply snapshotting testing regularly produce a lower-quality stable series?
04:16:28 <elliott> The freeze seems to be behind very odd choices like having a hybrid of two GNOME versions in the default install.
04:17:31 <pikhq> They usually have a decent number of release-blocking bugs in testing.
04:18:24 <elliott> Right, but maybe their perception of release-blocking bugs sucks :)
04:18:43 <elliott> I mean, testing isn't exactly problematic to run as your workstation OS, even if you need things not to break.
04:19:11 <pikhq> Think "broken updates".
04:20:10 <elliott> Still, I can't imagine a freeze needing longer than a few weeks.
04:20:30 <pikhq> Hence the "reforming process" proposal.
04:21:48 <elliott> COME TO ME PRECIOUS DEBIAN TESTING NETINST ISO.
04:22:09 <elliott> pikhq: I still find it hilarious that you can run the latest Debian on a four-eight-siz.
04:23:45 <elliott> * Pure [[Unlambda]], Unlambda without the `i` combinator and all IO operations, and lazily-evaluated data structures are used to define IO. For example, the Unlambda encoding of `[[1], (\x. [[2, x], 0])]` will be the [[cat program]] (1 means read line, 2 means print).
04:23:48 <elliott> way to reinvent lazy k badly
04:23:57 <pikhq> Likewise with Slackware.
04:24:18 <elliott> pikhq: Yeah, but Slackware is old-school.
04:27:07 <elliott> Hmm, Debian's automatic Xfce install is pretty "bloated", isn't it? IIRC it included a load of rubbish programs I didn't care about...
04:27:12 <elliott> I'll just install Xfce manually after the fact.
04:30:59 <pikhq> I dunno; I installed the base distro and then added packages from there.
04:32:04 * elliott considers refusing to use any timezone that isn't UTC.
04:32:06 <Sgeo> Is Chicken Scheme a reasonable language for implementing esolangs?
04:35:11 <elliott> "Immortality notwithstanding, I'm not going to live forever, you know."
04:36:47 <pikhq> True by law of excluded middle.
04:37:18 <elliott> I'm not sure the context would grant such a law; how restrictive and all that.
04:37:49 <pikhq> "I either will or will not be immortal" seems a restatement of that.
04:38:28 <elliott> Stop questioning the statements of an omniscient being.
04:38:37 <elliott> Foolish Debian installer, why would I want to create an ext[four] partition?
04:39:16 <Sgeo> You consider ext4 to suck, I take it?
04:39:50 <elliott> But JFS is pretty much the best filesystem.
04:39:52 * Sgeo donates some number row keys
04:39:57 <elliott> And ext4 is only a temporary measure.
04:40:03 <Sgeo> 12334567890#$%^&*()_+-=
04:40:03 <elliott> It's obsolete by design in favour of btrfs, an Oracle-controlled clusterfuck.
04:40:16 <elliott> Whereas JFS is in the trustworthy hands of ... uhhhh ... IBM.
04:41:26 -!- HolyBlood^AFK has joined.
04:41:41 <Sgeo> AFK people are now joining channels. This is scary.
04:42:19 <zzo38> I prefer to write programs that require few or no dependencies and can work mostly or entirely by itself.
04:42:20 -!- elliott has changed nick to elliott|afk.
04:43:01 <Lymia> I smell NIH syndrome.
04:43:02 <Sgeo> zzo38, I can imagine that that might be diffcult in some circumstances. What if you really needed to use, say, sqlite?
04:43:20 <Sgeo> Lymia, zzo38 bathes in NIH syndrome
04:43:23 <zzo38> Sgeo: Yes there are some circumstances in which other things can be useful to include.
04:43:28 <Gregor> Or, y'know, a kernel :P
04:44:28 <elliott|afk> pikhq: BTW, the universe lasts a finite length of time, so it's actually true that the one saying it is both immortal (will live as long as time does) and won't live forever.
04:45:17 <zzo38> Like, in case of TeXnicard, its only dependency (other than the standard C stuff) is LodePNG, which is a single module, has no other dependencies, and is statically compiled into the program.
04:45:51 <Lymia> My policy on dependencies is "use it as long as you arn't adding too much size for too little functionality"
04:46:08 <zzo38> External utility programs for TeXnicard might or might not be like this; it depends on the program; other people can write according to what is good that way.
04:46:22 <elliott|afk> Lymia: do you say "arn't" frequently? I seem to have this idea that you do, but I'm not actually sure of that.
04:46:40 <zzo38> Lymia: Yes. Even in LodePNG there is few functions and it is possible to disable some of them before compiling (which, in fact, I did disable some of the functions I didn't need, before compiling).
04:47:18 <pikhq> I'd imagine that sqlite in particular would be about on par with LodePNG in zzo38's willingness to actually include it.
04:47:30 <elliott|afk> but sqlite is, like, four megs of source ;D
04:48:06 -!- HolyBlood^AFK has quit (Ping timeout: 240 seconds).
04:48:11 <pikhq> i.e. smaller than libc.
04:50:04 <elliott|afk> You can even make it install lilo for you.
04:51:15 <elliott|afk> http://esolangs.org/w/index.php?title=Esolang:Sandbox&diff=22857&oldid=22850
04:51:23 <elliott|afk> oerjan, tirelessly reverting vandalism of the sandboz
04:51:26 <zzo38> I also usually make a program which is in a single module
04:51:27 <pikhq> Yeah; very, very rarely will you need to install via debootstrap.
04:52:27 <zzo38> I don't think there is much need to revert vandalism in the sandbox because it is only for testing anyways and whoever types a message next can delete the spam or whatever else is already there
04:54:10 <zzo38> I can tell you LodePNG is 280764 bytes of source (the source also includes documentation), and the .o file is 44011 bytes (when ANCILLARY_CHUNKS, UNKNOWN_CHUNKS, and ERROR_TEXT are disabled). The author of that program has also done some work with esoteric programming although that is irrelevant for purposes of LodePNG.
04:56:22 <pikhq> zzo38: The reason I suspect you'd be more willing to use sqlite than most programs is that it's both a relatively small library and so very, very functional. If you need a transactional database in your program (which, admittedly, seems like something you'd avoid), then sqlite is pretty much exactly what you want.
04:56:59 <elliott|afk> I'm really digging the debian-installer colour scheme... that's... why am I digging it.
04:57:47 -!- elliott|afk has changed nick to elliott.
04:58:28 <zzo38> pikhq: Well, yes. In most programs I do not need a database, although I could use it if it is necessary to have a transactional database.
05:03:27 <zzo38> And I cannot figure out how to shorten my C code implementing Deadfish, any more than it is. (At least not yet.)
05:04:02 <Sgeo> elliott, what?
05:05:03 -!- augur has quit (Remote host closed the connection).
05:06:13 <Sgeo> Did I enter esoteric for the first time 4 years ago, or something?
05:06:17 <zzo38> What is happy four birthday?
05:06:20 -!- pikhq_ has joined.
05:07:38 -!- pikhq has quit (Ping timeout: 258 seconds).
05:07:48 <Lymia> zzo38, rewrite it in Perl
05:07:48 <Sgeo> elliott, did you grep for Sgep too?
05:08:57 <zzo38> Lymia: Yes, it can do Perl code golf too. My AWK code is shorter it is 39 bytes long, so I am good at that one, but at C, I didn't manage to shorten it. Rewriting it in a different programming language doesn't solve it; it just solves it for a different programming language.
05:10:01 <zzo38> (Actually the current best Perl submission is 55, the best AWK is 39 (me; the other one is 40), the best C is 77 (mine is 81).
05:11:03 <zzo38> Lymia: *You* rewrite it in Perl if you are good at Perl to do it.
05:11:18 <Lymia> zzo38, you missed the joke.
05:12:32 <Sgeo> elliott, http://codu.org/logs/log/_esoteric/2005-12-27
05:13:08 <Sgeo> I am not four years old.
05:13:40 <zzo38> But I assume you were in the past, isn't it?
05:14:32 <zzo38> Lymia: Are you good at Perl, though?
05:14:50 <Sgeo> Yes, 1983-1984
05:15:17 <Lymia> zzo38, don't really know the language.
05:15:33 <Sgeo> Didn't exist in 1984
05:15:40 <zzo38> I don't know much of Perl either, really
05:17:28 <zzo38> Nor do I know much of Objective-C other than that it is a strict superset of C (meaning when I send the C codes to the code golf, I also send it as Objective-C as well and it will work)
05:19:55 <Lymia> def deadfish(c):import re,sys;exec"i=0;"+"".join({"i":"i+=1","d":"i-=1","o":"sys.stdout.write(str(i)+'\\n')","s":"i*=i"}[x]+";"for x in re.sub("[^idos]","",c))
05:19:59 <Lymia> Python deadfish golf!
05:20:34 <zzo38> Lymia: You can send submissions to http://golf.shinh.org/p.rb?Deadfish
05:21:35 <zzo38> Yes, except for shell scripts. And you can execute a single external program when using vi.
05:22:17 <zzo38> Shell scripts (Bash, fish, Zsh) always allow executing external programs, even if it says "exec is denied".
05:22:19 <Sgeo> "YouTube account Irratonalys has been terminated because we received multiple third-party notifications of copyright infringement from claimants including:
05:23:57 <elliott> Like, only once, or only one program?
05:24:30 <zzo38> elliott: Only one program, and can only be executed once.
05:25:28 <zzo38> Well, you can also call the shell in order to make that one execution, I guess.
05:25:44 <fizzie> I'm not so sure "exec is denied" applies to Python's "exec" statement though, since it just runs Python code, not external programs. (Admittedly it can run code from file with it.)
05:27:22 <Lymia> I'm sure there are shorter methods than compiling deadfish to python.
05:27:45 <elliott> I thought only execfile could do that.
05:27:52 <Lymia> def deadfish(c):import re;exec"i=0\n"+"".join({"i":"i+=1","d":"i-=1","o":"print i","s":"i*=i"}[x]+"\n"for x in re.sub("[^idos]","",c))
05:27:55 <elliott> Or do you mean exec open(...).read()?
05:28:00 <elliott> In which case that hardly counts.
05:28:21 <elliott> Lymia: for a start, s/\n/;/
05:28:46 <Lymia> elliott, it's shorter with the \n
05:28:47 <zzo38> Lymia: The problem does not require compiling Deadfish, it only requires providing the correct output when the Deadfish commands are given in input.
05:28:48 -!- augur has joined.
05:28:52 <Lymia> Then I can use "print i" instead of "sys.blahblah"
05:28:59 <zzo38> So, interpreting can also work even if it is not compiled.
05:29:19 <Lymia> You can use print i; like that.
05:29:30 <Lymia> def deadfish(c):import re;exec"i=0;"+"".join({"i":"i+=1","d":"i-=1","o":"print i","s":"i*=i"}[x]+";"for x in re.sub("[^idos]","",c))
05:29:42 <Lymia> def deadfish(c):import re;exec"i=0;".join({"i":"i+=1","d":"i-=1","o":"print i","s":"i*=i"}[x]+";"for x in re.sub("[^idos]","",c))
05:29:44 <Lymia> You can do that too.
05:29:54 <elliott> Why not put ; before every statement?
05:29:57 <elliott> Then you can change i=0; to i=0
05:31:14 <zzo38> I would think that "exec is denied" does not apply to the Python "exec" command from what I can see the way it is being used. (But still, like I said, this would not be the same as that problem anyways)
05:31:17 <Lymia> join does not do what I think it does.
05:31:35 <Lymia> import urllib2;exec urllib2.urlopen("someaddress").read()
05:32:00 <zzo38> Lymia: Some system calls are denied. Including all internet access.
05:32:45 <Lymia> def deadfish(c):import re;exec"i=0"+"".join(";"+{"i":"i+=1","d":"i-=1","o":"print i","s":"i*=i"}[x]for x in re.sub("[^idos]","",c))
05:32:58 <Lymia> Is there a shorter way to remove all other characters than re?
05:34:46 <zzo38> I don't know very well of Python, even though I have done some things in Python (some solitaire card games, and modifying a script for wiping hard drives)
05:36:04 <fizzie> elliott: I mean exec open(...); if you give it an open file object, it parses it as Python code until EOF and executes.
05:36:58 <elliott> pikhq_: Hey ho, testing is broken right now.
05:37:05 <Lymia> def deadfish(c):exec"i=0"+"".join(";"+{"i":"i+=1","d":"i-=1","o":"print i","s":"i*=i"}[x] if x in"idos"else""for x in c)
05:37:09 <Lymia> Shortest I can get it right now.
05:37:31 <Lymia> def deadfish(c):exec"i=0"+"".join(";"+{"i":"i+=1","d":"i-=1","o":"print i","s":"i*=i"}[x]if x in"idos"else""for x in c)
05:37:35 <Lymia> No wait, missed a space
05:39:49 <fizzie> Wouldn't .get(x,"") be much shorter than [x]if x in"idos"else"" ?
05:41:00 <Lymia> def deadfish(c):exec"i=0"+"".join(";"+{"i":"i+=1","d":"i-=1","o":"print i","s":"i*=i"}.get(x,"")for x in c)
05:41:16 <Lymia> Would an interpretive approach be shorter than the code generation method?
05:41:22 <elliott> exec"i=0"+"".join(";"+{"i":"i+=1","d":"i-=1","o":"print i","s":"i*=i"}.get(x,"")for x in __import__('sys').stdout.read())
05:42:26 <Lymia> Not going to work.
05:42:32 <Lymia> That is, not using code generation.
05:42:36 <Lymia> Best way I can think of.
05:42:41 <Lymia> lambda:i=0 isn't valid Python
05:43:13 <elliott> Lymia: BTW, you need to handle wrapping.
05:43:20 <Lymia> elliott, wrapping?
05:43:40 <Sgeo> That's yet another Scheme in my possible choices
05:43:46 <zzo38> Try submitting to the anarchy golf. (I do not believe the "exec" command in Python is disallowed) It is not endless problem, it has deadline, so post it (I suggest always selecting "open code statistics") and it is revealed in 11 days (you can continue sending after the deadline, too)
05:44:01 <elliott> Lymia: Less than one or equal to two five six = set to 0.
05:44:32 <Lymia> I thought deadfish didn't overflow.
05:44:38 * Sgeo rapidly decides that "integrated Emacs-like editor" isn't worth... its.... incompletenessness
05:44:40 <Lymia> http://golf.shinh.org/p.rb?Deadfish
05:44:49 <CakeProphet> Lymia: that lambda won't work because in Python assignment isn't an expression, and lambdas are single-expression functions
05:45:19 <elliott> Sgeo: How is MIT Scheme incomplete?
05:45:21 <Lymia> elliott, http://www.esolangs.org/wiki/Deadfish#Python < This suggests otherwise for me
05:45:31 <elliott> if accumlator == 256 or accumlator == -1:
05:45:40 <Sgeo> No module system currently
05:45:53 <elliott> Sgeo: there are portable module systems.
05:46:55 <Sgeo> Hmm, Chicken's hash tables are pulled from an SRFI?
05:47:04 <elliott> You mean they adhere to a standard.
05:47:36 <Sgeo> Whereas, Racket's... don't
05:48:39 <elliott> Why should it be expected to conform to SRFIs?
05:49:06 <CakeProphet> ...I'm not entirely sure I understand what exec is being used for.
05:49:41 <CakeProphet> generating Python code in python and executing it immediately is pretty much the same thing as writing an interpreter in Python, except less efficient.
05:50:05 <elliott> Firstly, it's likely to be more efficient, if anything.
05:50:15 <elliott> Secondly, the important thing is the size of the code, not the speed.
05:50:31 <Sgeo> I should try both in ... a lisp
05:50:36 * Sgeo is still on the fence
05:51:22 <CakeProphet> I disagree with your efficiency claim, but if it's not important for whatever is trying to be accomplished I won't debate it.
05:52:17 <elliott> CakeProphet: How is an interpreter less efficient than a compiler here?
05:52:41 * Sgeo also notes Gambit
05:52:47 <elliott> The comparison is basically null without any kind of control flow, but this is basically JIT vs. interpreter, and nobody argues JITs are slower than interpreters, especially when the compiler is /this/ simple.
05:54:12 <Sgeo> I'm not allowed to be metaphorical?
05:54:30 <elliott> See the thing is, with you it's usually not figurative ... and that's not what metaphorical means.
05:54:35 <CakeProphet> my argument is more on the basis that exec + string concatenation is always going to be slower than the Python code where you directly interpret it.
05:55:07 <elliott> CakeProphet: Well, CPython string concatenation is actually just as fast as joining (i.e. linear in number of strings to join) IIRC.
05:55:27 <elliott> Do you agree that that would not apply if the language had significant control flow?
05:55:40 <elliott> Interpretive overhead would surely come in there, as the control flow cannot be "directly" mapped to Python constructs in an interpreter.
05:57:05 <CakeProphet> you're saying that if the language had control flow constructs then this "JIT" solution would be even better?
05:57:19 <elliott> What's with the scare quotes around JIT?
05:57:54 <CakeProphet> Perhaps there's more code than the snippet I saw?
05:58:06 <elliott> Deadfish is a trivial language, why would there be?
05:58:12 <elliott> - Acts as an interpreter by
05:58:16 <elliott> - - Compiling code, and then
05:58:19 <elliott> - - Immediately executing it.
05:58:23 <elliott> [asterisk]Compiling code on the fly,
05:58:39 <elliott> This is exactly what that code snippet does, so yes, it's a Deadfish JIT, as opposed to a Deadfish compiler (s/exec/print/) or a Deadfish interpreter.
06:03:14 <monqy> Sgeo: way to ask #scheme for advice on what lisp dialect to take
06:03:20 <CakeProphet> yeah, it's a JIT. But this approach makes all the typical advantages of JIT compilation no longer apply, basically. Also, join is much faster than string concatenation, but you don't use much string concatenation so it's not much of an issue. I think the main reason that the JIT in this case is less efficient than a interpreter written in Python is because of how exec works. But yeah, if you want to minimize lines of cod
06:03:41 <Sgeo> monqy, I was hoping they'd answer "Which Scheme" rather than "Scheme or CL?"
06:04:23 <monqy> Sgeo: then perhaps you should have left common lisp out. the way you phrased your question made it like you lumped all the schemes together
06:04:29 <elliott> CakeProphet: join is not faster than string concatenation. That applies in other Python implementations but not CPython.
06:04:42 <elliott> Also, you got cut off after "minimize lines of co".
06:04:54 <monqy> "lines of cod" for me
06:04:56 <elliott> monqy: Why have you lead me into a channel of inevitable cringe?
06:05:06 <zzo38> "lines of cod" for me, too
06:05:11 <CakeProphet> If you want to minimize lines of code, then you've accomplished that. :)
06:05:26 <elliott> But yeah, no, join = repeated string concatenation in CPython.
06:05:30 <elliott> At least asymptomatically if nothing else.
06:05:37 <Sgeo> elliott, so far, the only thing that you've seen said that could possibly be cringeworthy is what I said
06:06:01 <elliott> 05:53:55 <Sgeo> I'm getting dizzy trying to decide between various Schemes, and Common Lisp
06:06:21 <Sgeo> Or you could logread, I guess
06:07:01 <CakeProphet> I've always been told and read that in CPython join is always a better solution than a loop with repeated string concatenation. Essentially, the more you rely on builtin functions and less on Python code the more efficient your Python code will be.
06:07:26 <elliott> Well, uh, there may be an incredibly MINOR difference.
06:07:42 <elliott> But the reason it's recommended to join instead is because Jython and other implementations have linear join, but exponential repeated-concatenation.
06:08:02 <elliott> The only difference with CPython will be a (probably tiny) constant factor.
06:08:22 <elliott> (x + y + z) and "".join((x, y, z)) are pretty much going to be equivalent.
06:11:50 <elliott> But like I said, not in Jython.
06:12:35 <Lymia> 72 is the current Python recod.
06:12:39 <Lymia> I'm going to need more work.
06:12:46 -!- NihilistDandy has quit (Quit: leaving).
06:12:56 <Lymia> The dict is already 53 chars
06:14:39 <Sgeo> I should implement an esolang in something
06:14:42 <Sgeo> Perhaps Racket
06:14:57 <elliott> Sgeo: OH MY GOD STOP REPEATING THE SAME THING IN FIFTY DIFFERENT WAYS
06:15:09 <Sgeo> I'm actually going to DO IT though
06:16:59 <CakeProphet> found this: http://lucumr.pocoo.org/2011/2/1/exec-in-python/
06:17:44 -!- NihilistDandy has joined.
06:18:38 <elliott> pikhq_: I sure want Debian rolling round about now.
06:18:39 -!- NihilistDandy has quit (Client Quit).
06:18:57 -!- NihilistDandy has joined.
06:20:18 <CakeProphet> elliott: hmm, okay, so I think you were right actually. I was assuming that exec was always slower than regular Python, but it's only slower if you make repeated execs using a string (because it parses and byte-code compiles the program each call)
06:20:40 <CakeProphet> in that case you would want to use compile() first and then exec that.
06:20:58 <elliott> The only question is, how long a Deadfish program do you need for the compilation overhead to go away? :-)
06:22:13 <CakeProphet> wouldn't increasing the length of the source program increase the compilation overhead? or am I missing something?
06:22:44 <elliott> True. But it'd also increase the overhead of the while loop of an interpreter... :-P
06:22:59 <Lymia> import sys;i=0;exec"".join(dict(i="i+=1;",d="i-=1;",o="print i;",s="i*=i;").get(x,"")for x in sys.stdin.read())
06:23:03 <Lymia> Any way to shorten this?
06:23:12 <Lymia> I'm starting to think that another approach is needed.
06:23:54 <elliott> why have you put ; at the end again
06:25:02 <elliott> Lymia: import sys;i=0;exec";".join(dict(i="i+=1;",d="i-=1;",o="print i;",s="i*=i;").get(x,"")for x in sys.stdin)
06:25:10 <elliott> remove the ;s from the end :D
06:25:18 <elliott> import sys;i=0;exec";".join(dict(i="i+=1",d="i-=1",o="print i",s="i*=i").get(x,"")for x in sys.stdin)
06:25:43 <Lymia> If you write ;; in Python, you get a syntax error.
06:25:53 <Lymia> You'd need to have .get(x,"somekindofnoop") then
06:25:58 <CakeProphet> using map instead of a generator expression might shave a few bytes.
06:26:05 <Lymia> CakeProphet, checked, nope.
06:26:11 <elliott> import sys;i=0;exec";".join(dict(i="i+=1",d="i-=1",o="print i",s="i*=i").get(x,"0")for x in sys.stdin)
06:28:26 <CakeProphet> actually doesn't iterating on a file descriptor iterate by line?
06:28:27 <Lymia> Could you make it even shorter with reduce?
06:28:42 <elliott> CakeProphet: yes, but the anagolf challenge uses single lines
06:28:48 <elliott> maybe the newlines will break it...
06:29:00 <elliott> import sys;i=0;exec";".join(dict(i="i+=1",d="i-=1",o="print i",s="i*=i").get(x[0],"0")for x in sys.stdin)
06:29:05 <Lymia> elliott, using sys.stdin instead of sys.stdin() gives me 0;0;0;0;0;0
06:29:20 <elliott> sys.stdin() won't do anything...
06:29:24 <elliott> that's why i just fixed it
06:30:27 <Lymia> elliott, http://golf.shinh.org/p.rb?Deadfish
06:30:33 <Lymia> The dialect used here dosn't wrap.
06:30:41 <elliott> Yes it DOES. Deadfish wraps weirdly.
06:30:47 <elliott> You can go /over/ with squaring.
06:30:56 <elliott> import sys;i=0;exec";i*=i!=256;".join(dict(i="i+=1",d="i-=1",o="print i",s="i*=i").get(x[0],"0")for x in sys.stdin)
06:31:06 <elliott> Just needs negative handling.
06:31:14 <elliott> Lymia: "If you decrement zero you get zero and if the result ever becomes 256 it should change to zero immediately." --the challenge description itself
06:32:00 <Sgeo> It should _not_ take this long to implement HQ9+
06:32:11 <monqy> maybe you're doing it wrong
06:32:15 <elliott> Sgeo: obviously the fault is with the implementation and not you.
06:32:30 <CakeProphet> I was under the impression that iterating on a file descrpitor automatically strips the newline.
06:32:40 <elliott> CakeProphet: seemingly not :)
06:33:12 <Sgeo> elliott, I barely know Racket
06:33:23 <Lymia> 1twobit720.123511/05/15 02:36:540B / 34B / 35B
06:33:23 <Lymia> 2leonid720.094111/05/16 09:47:110B / 39B / 24B
06:33:23 <Lymia> 3hallvabo730.086611/05/15 04:53:210B / 31B / 38B
06:33:28 <Lymia> These are the top for Python right now.
06:33:54 <Lymia> Can more byte shaving be done?
06:34:02 <elliott> Probably, but it'll require more ingenuity.
06:34:05 <CakeProphet> I would say using dict takes more bytes than {} syntax.
06:34:09 <elliott> What I am saying is, cheating.
06:34:29 <Lymia> {} has a bunch of " around
06:34:37 <Lymia> I wish I could get rid of the quotes
06:34:42 <Lymia> around the values too.
06:34:57 -!- Wamanuz2 has quit (Ping timeout: 246 seconds).
06:35:00 <Lymia> CakeProphet, it's perl.
06:35:02 <Lymia> Of course it's shorter.
06:35:10 <Lymia> elliott, binary strings?
06:35:28 -!- Wamanuz2 has joined.
06:35:32 <Lymia> Can we do anything with that?
06:36:07 <elliott> this is way too small for compression to help
06:36:37 <zzo38> If you cheat, you can post with (cheat) after your name, you can also post noncheating without (cheat) and you can do similar things if you want multiple submissions for any reason. One reason might be, you might want binary, you might want one without binary, or some symbols only, or alphanumerics only, etc
06:36:47 -!- sebbu2 has joined.
06:36:47 -!- sebbu2 has quit (Changing host).
06:36:47 -!- sebbu2 has joined.
06:36:48 <Sgeo> What's SLIME's debugging like? Because the way DrRacket does this is starting to tick me off
06:37:00 <elliott> Sgeo: only as good as your Lisp's, obviously.
06:37:09 <elliott> I don't know if there's a Racket port of SLIME, though.
06:37:16 <zzo38> Like see Postscript they have one (bin) and one text
06:37:25 <elliott> There's a Schemefortyeight port of SLIME but it is out of date.
06:37:47 <Sgeo> elliott, I meant, I'm considering flipping over to Common Lisp
06:38:00 <Sgeo> Isn't for/list supposed to return a list?
06:38:12 <coppro> for starters, you aren't coding scheme
06:39:01 <zzo38> Also note that for the problem, it doesn't matter how your program treats "h" as long as it does not output anything or cause infinite loop
06:39:09 <elliott> coppro: it's fairly obvious he isn't coding scheme since he's using racket not a scheme
06:39:11 <CakeProphet> if you could use raw_input instead of sys.stdin you could remove the import line
06:39:22 <CakeProphet> but I don't see a way to do that without introducing more bytes.
06:39:38 -!- sebbu has quit (Ping timeout: 258 seconds).
06:40:43 <monqy> Sgeo: http://docs.racket-lang.org/search/index.html?q=for/list
06:40:59 <Sgeo> http://pastie.org/private/tx8g8qrhsd4ggssrspzdg
06:41:12 <elliott> i mean i'm not sure 90 percent of psox actually counted as code
06:41:22 <Sgeo> It's acting like for/list isn't returning anything
06:41:26 <elliott> (error "Not implemented yet"))
06:41:26 <elliott> (error "Not implemented yet"))
06:41:49 <elliott> Sgeo: do you put do- before all of your function names?
06:42:14 <elliott> it implements a function after all
06:43:09 <elliott> (list->string lst) → string?
06:43:09 <elliott> Returns a new mutable string whose content is the list of characters in lst. That is, the length of the string is (length lst), and the sequence of characters in lst is the same sequence in the result string.
06:43:18 <elliott> look at that, Sgeo is violating a function contract
06:43:27 <CakeProphet> ...how on earth did someone get a smaller source size than that.
06:43:47 <monqy> a different approach, perhaps
06:43:52 <Sgeo> elliott, oh... but that manages to not even fix the problem
06:44:03 <elliott> Sgeo: have you considered you might have other problems in your code
06:44:11 <monqy> what if sgeo is the problem
06:44:55 <monqy> Sgeo: are Bink and Bonk debug code
06:46:05 <Sgeo> The for/list is still giving void
06:46:19 <Sgeo> (Just replaced list->string with string-append*)
06:46:28 <elliott> have you tried evaluating the for/list in the repl
06:46:57 <Sgeo> it returned properly, iirc (bloody DrRacket cleared it out already)
06:47:11 <monqy> Welcome to Racket v5.1.1.
06:47:11 <elliott> yet you find it unthinkable that the problem could be in the appending and displaying parts
06:47:17 <elliott> rather than the for/list part
06:47:40 <monqy> oh nuts this thing can't handle arrow keys
06:48:06 <elliott> monqy: quack for emacs = good stuff
06:48:15 <elliott> special integration with racket's repl
06:48:20 <elliott> http://www.neilvandyke.org/quack/screenshot.png
06:48:26 <Sgeo> elliott, no, but you pointed out an additional problem
06:48:35 <monqy> too bad I don't use emacs
06:48:49 <elliott> monqy: just start emacs to use the repl >:)
06:48:57 <Sgeo> list->string wouldn't wor properly
06:49:09 <monqy> I think I'll edit my lines in vim then paste them into the repl
06:49:16 <elliott> it's that he thinks characters are strings
06:49:25 <elliott> unless [hash]\X is equal? to "X"
06:49:52 <monqy> > (equal? #\X "X")
06:49:53 <lambdabot> <no location info>: parse error on input `#\'
06:50:22 <Sgeo> Although I kind of.. was thinking of that >.>
06:51:08 <elliott> fuck why am i helping you figure out obvious bugs in your ten lines of code
06:51:28 <monqy> I should see if I can implement hq9+ better than sgeo
06:52:04 <elliott> try doing it while being a cat
06:52:20 <monqy> I'm really tired and I don't think I've ever actually done anything in racket before
06:52:23 <monqy> is that good enough
06:56:52 <Sgeo> + is now implemented
06:58:25 <Sgeo> This is pathetic how can I not find this function
06:58:34 <elliott> Sgeo i swear to god you literally get stupider as time goes on
06:58:41 <Sgeo> elliott, no I do not have a bug in +
06:58:44 <elliott> im quite honsetly unable to think of a single other possibility
06:59:29 <Sgeo> I just can't seem to find the function to make a nice list of numbers
07:00:25 <elliott> monqy: i dont want to live on this planet any more
07:00:34 <olsner> Sgeo: at this rate you're going to have to start doing python programming soon
07:00:58 <monqy> Sgeo: what do you mean a nice list of numbers
07:01:03 <monqy> Sgeo: do you want it to greet you
07:01:13 <monqy> Sgeo: (I'm afraid that's not possible)
07:02:44 <coppro> elliott: my theory is Sgeo wrote PSOX before his university untaught him programming
07:03:06 <Sgeo> I think my accumulator is nicer than a naive one
07:03:13 <Sgeo> Although I guess nothing actually makes it naive
07:03:17 <elliott> you realise the accumulator does nothing
07:03:22 <elliott> coppro: psox was 90 percent function decorators
07:04:12 <Sgeo> elliott, I consider that cheating
07:04:30 <elliott> Sgeo: look at all these shits i'm giving
07:04:39 <monqy> (define (do-inc-accum) #f) ; optimized out
07:04:47 <elliott> this is like a shit tornado
07:04:51 <elliott> im not giving them to anyone
07:05:13 <olsner> that's a whole lotta shit to be giving
07:05:19 <monqy> what if I put another do in there
07:05:57 -!- zzo38 has quit (Quit: +++).
07:06:18 <elliott> olsner: i'm giving none of the shits
07:08:34 * Sgeo would really appreciate CL's format
07:08:42 <monqy> what does that mean
07:08:57 <elliott> http://docs.racket-lang.org/search/index.html?q=format
07:09:28 <monqy> what if he wants common lisp's format specifically
07:09:30 <monqy> not dirty racket's format
07:09:45 <elliott> http://esolangs.org/w/index.php?title=User:RichardPrime&curid=3901&diff=22899&oldid=22898
07:09:52 <Sgeo> monqy, thank you
07:10:10 <elliott> I was the one who fucking searched and linked it.
07:10:15 <Sgeo> monqy, be correct in knowing what I wanted.
07:10:17 <Sgeo> elliott, yes, I saw.
07:10:24 <monqy> I thought I was mocking you
07:13:19 <Sgeo> DrRacket: That's just great. Tell me an error, but hilight the text in red such that I can't see s-exprs easily
07:14:10 <elliott> monqy: will this horror ever end.....
07:14:32 <monqy> Sgeo: I hope you know you don't have to use drracket
07:19:07 <CakeProphet> elliott: so is the input for the deadfish code all on one line or is it seperated by lines?
07:19:35 <elliott> CakeProphet: in the anagolf challenge it is all on separate lines
07:20:23 <Sgeo> http://pastie.org/private/l7sb1cgdx6iy0ee7wu3vw
07:20:49 <monqy> I'm still working on mine it's going to be so rad
07:20:53 <elliott> thank fuck Sgeo has implemented hqnine+
07:20:56 <elliott> now well never be without it
07:20:59 <elliott> (set! accum (+ accum 1)))))
07:21:00 <monqy> it uses case instead of cond
07:21:05 <elliott> oh its that scheme idiom thats obsoleted in racket
07:21:16 <elliott> youre meant to use the fucking module system for encapsulation instead
07:21:26 <monqy> it also uses continuations
07:21:28 <monqy> that's how rad it is
07:21:45 <elliott> (format "~a bottle~a of beer on the wall.~%~a bottle~a of beer.~%Take one down, pass it around,~%~a bottle~a of beer on the wall!~%" bottles s bottles s (- bottles 1) last-s)))))
07:21:48 <elliott> theres no exclamation mark
07:21:53 <elliott> and you need "no more bottles" at the end
07:22:32 <monqy> I'm going to print it out line by line such as not to have stupid concatenation overhead but the core of my interpreter will be pure
07:23:11 <elliott> make it PRINT the lyrics out
07:23:18 <elliott> im sure racket has a library for that
07:23:29 <monqy> this would be a good idea if I had a printer
07:23:36 <elliott> just use a pdf printer or similar to test it
07:24:54 <Sgeo> Why does pastie weirdly color the ( in the lambda arglist?
07:25:05 <elliott> monqy: im going to start crying soon
07:25:37 <monqy> don't worry I know everything ever about pastie
07:25:59 <monqy> Sgeo: presumably it's broken
07:26:23 <elliott> racket's contract stuff looks cool mind you
07:42:03 <CakeProphet> import sys;exec"x=0"+"%256".join(dict(i="+1",d="-1",o="+0;print x;x=x",s="+0;x*=x;x=x").get(x[0],"") for x in sys.stdin)
07:42:08 <elliott> CakeProphet: modulo is wrong
07:42:12 <elliott> and you haven't handled negative
07:42:13 <CakeProphet> I haven't like... tried to run it. probably should
07:42:28 <elliott> and x=x breaks the syntax there...
07:42:36 <elliott> CakeProphet: you need ==[twofivesix], not modulo
07:43:00 <elliott> x[asterisk]=x[exclamation mark]=[twofivesix];x[asterisk]=x>0
07:43:03 <elliott> that should handle wrapping
07:43:36 <elliott> anyway i think that's actually one or two bytes longer than our last attempt
07:44:01 <CakeProphet> yeah all the hackery to get o and s to work
07:46:49 <CakeProphet> initially I was just going to replace s with **2 but I realized that would conflict with operator precedence.
07:48:01 <elliott> dunno about that middle one
07:48:04 <elliott> but yeah the first one will parse wrong
07:48:36 <elliott> also you need parens around ("x=0"+"%256") in your old version
07:49:08 <CakeProphet> on only the %256 was being the join delimeter.
07:49:39 <elliott> so it parses something like
07:50:03 <CakeProphet> x = 0 + 1 + 1 + 1 + 1 - 1 -1 -1 -1 ...+0;print x;x=x + 1 + 1 +1 +1 ...;
07:50:04 <monqy> I accidentally ditched continuations for returning multiple values. oops.
07:52:48 <CakeProphet> yeah so that approach breaks down when you start applying a bunch of != >0, **2, etc to the operator chain because of order of operations
07:53:57 <lifthrasiir> uhm, so increasing 255 should be 0 but squaring 255 (or anything larger than 15) won't clip?
07:54:37 <elliott> its a magical language filled with idiocy and happiness
07:58:21 <lifthrasiir> wait, increasing 255 is nop, but increasing 256 sets the accumulator 257????
07:58:46 <elliott> every cycle, if the value is two-five-six or less than zero, it's set to zero
07:59:01 <elliott> this also means that squaring to get two-five-seven and then decrementing goes to 0
07:59:30 <elliott> pikhq_: xfce tips sure are of high quality - "Theres a volume changer plugin for the panel available. Its name is xfce[four]-mixer."
07:59:36 <CakeProphet> before I tried the operator chaining approach I decided it would be a good idea to import re;f=re.subn;...
07:59:45 <CakeProphet> and then chain together a bunch of substitutes. :)
07:59:56 <CakeProphet> but I don't think it was much different, and it didn't handle the wrapping.
08:00:32 <elliott> Sgeo: is it done yet?????????///////////
08:01:24 <monqy> I'm teaching it how to count beer
08:01:58 <monqy> after this I will try remembering my original design and write that
08:02:04 <monqy> because it was so much better this
08:04:03 <monqy> I can hardly remember what I'm trying to do now
08:04:10 <Sgeo> elliott, I haven't corrected the 99 bottle of beer issues
08:04:14 <CakeProphet> interestingly enough if you take (ord(x[0])-100)/5 then d, i, o, and s translate to 0, 1, 2, and 3
08:04:16 <Sgeo> Nor am I working on it
08:04:30 <monqy> Sgeo: apathy or spite
08:05:06 <Sgeo> Hmm, considering that I want to try writing the same in Chicken and CL, maybe I should finish it
08:05:07 <elliott> Sgeo: ahahahfahafjknsdfkgsfdknlg,m
08:05:10 <Sgeo> Not tonight though
08:05:24 <elliott> CakeProphet: that's a lot of characters in itself though
08:05:31 <elliott> but you could use a list like that
08:05:38 <elliott> unfortunately you would have to handle invalid chars /
08:06:05 <elliott> (literal newline deliberate, one less char than \n)
08:06:09 <elliott> (is that valid in python...)
08:07:54 <CakeProphet> he'll read your email in his comfortable Google office chair.
08:08:44 <lifthrasiir> i wonder others are using the same approach?
08:09:02 <CakeProphet> I think 84 was one of the smallest on that list, if I recall.
08:09:17 <elliott> CakeProphet: complain to guido? why would i want to talk to him...
08:09:22 <elliott> he doesn't even know what tail call optimisation is
08:09:45 <elliott> lifthrasiir: I'm suspecting the 72 byte program cheats heavily somehow
08:10:03 <CakeProphet> elliott: well, you could present your case against Python in the hopes that he would find reason in your plea and make changes to Python 3.5 or 4 or something like that.
08:10:04 <lifthrasiir> elliott, what is your best (without your supposed cheats)?
08:10:34 <elliott> lifthrasiir: well, we're working together... we've got it down to a hundred bytes or so
08:10:47 <elliott> don't suppose you're willing to share your version? :P
08:10:47 <lifthrasiir> i'm not sure, but it seems that 75+-2 is certainly possible
08:10:57 <elliott> CakeProphet: meh, much easier to just erase him from the history books instead
08:11:30 <lifthrasiir> well, the first rule of all string-to-code golfing: abuse exec.
08:11:34 <CakeProphet> I once held Python in high esteem... but that was back when I only knew Python and not much else. :P
08:11:36 <monqy> this sucks I'm getting sleep
08:11:51 <monqy> overengineering is difficult when tired
08:12:17 <elliott> lifthrasiir: we already are :)
08:12:48 <CakeProphet> in Perl, it's probably something like "abuse regex"
08:13:08 <CakeProphet> but that's always the first rule in... any Perl programming.
08:13:10 <lifthrasiir> elliott, and also take a look at how the input is read.
08:13:20 <elliott> lifthrasiir: already have :)
08:13:49 <CakeProphet> honestly golfing in Perl sounds way more fun than Python.
08:14:00 <lifthrasiir> did you try all possible input methods (i.e. sys.stdin, sys.stdin.read(), os.read, input, raw_input etc.)?
08:14:12 <elliott> well, sys.stdin was the one that was easiest with our code structure
08:14:17 <elliott> the others would involve a separate while loo
08:14:29 -!- monqy has quit (Quit: hello).
08:14:37 <elliott> i='n+=one';d='n-=one';code+=input()
08:14:59 <elliott> CakeProphet: can i have a digit one, my number keys are broken :)
08:15:06 <Lymia> I can't figure out how to get it shorter.
08:15:35 <Lymia> elliott, what are your current ideas?
08:16:24 <CakeProphet> I like it. Though it's uncertain whether or not it will be a smaller result.
08:16:34 <elliott> someone type an asterisk >:(
08:16:43 <Lymia> That is evil, and might actually work.
08:16:52 <Lymia> How do you deal with characters not in the set?
08:16:54 <Lymia> We need to ignore those.
08:16:58 <CakeProphet> the tricky part will be filtering all of the non-important characters.
08:17:04 <elliott> h is the only non-command char not used
08:17:11 <elliott> CakeProphet: i'm not messing with you my number keys really are broken
08:17:16 <elliott> ok someone type two-five-six
08:18:06 <elliott> n=0;i='n+=1';d='n-=1';o='print n';s='n*=n';h=c='';while 1:exec input()+';n*=(n!=256)*(n>0)'
08:18:22 <elliott> n=0;i='n+=1';d='n-=1';o='print n';s='n*=n';h=c=''
08:18:22 <elliott> while 1:exec input()+';n*=(n!=256)*(n>0)'
08:18:55 <CakeProphet> you can shorten that some more with tuple assignment
08:19:14 <Lymia> This would be cheating, right.
08:19:22 <Lymia> Dosn't work in the general case.
08:19:34 <Lymia> Do we only need the shown examples to work
08:19:53 <elliott> hmm, i don't think so CakeProphet
08:20:38 <elliott> n=0;i='n+=1';d='n-=1';o='print n';s='n*=n';h=c=''
08:20:38 <CakeProphet> well you trade each semicolon for two commas, but then you get to take away a = for each one. Probably breaks even.
08:20:38 <elliott> while 1:exec input()+';n*=(n!=256)*n>0'
08:21:00 <elliott> useless c assignment there
08:21:07 <elliott> n=0;i='n+=1';d='n-=1';o='print n';s='n*=n';h=''
08:21:07 <elliott> while 1:exec input()+';n*=(n!=256)*n>0'
08:21:43 <elliott> lifthrasiir: is our new approach reasonable for such a low count...?
08:22:15 <elliott> Lymia: apparently its ok to ignore it zzo said
08:22:17 <elliott> its not actually part of deadfish
08:22:30 <Lymia> Only occurs at the end.
08:23:00 -!- Sgeo has quit (Read error: Connection reset by peer).
08:23:28 <Lymia> You can only get below zero with d, right?
08:23:41 <Lymia> elliott, what's the current code?
08:23:45 <elliott> Lymia: h=n=0;i='n+=1';d='n-=1';o='print n';s='n*=n';while 1:exec input()+';n*=(n!=256)*n>0'
08:23:48 <elliott> where the ; before while is a newline
08:23:51 <elliott> it's just like this to count bytes easier
08:24:17 <Lymia> Does Python have an infinite generator?
08:24:25 <Lymia> And how are we exiting this loop?
08:24:28 -!- Sgeo has joined.
08:24:45 <elliott> h=n=0;i=d=s='n+=1';d[1]='-';s[1:]='*=n';o='print n';while 1:exec input()+';n*=(n!=256)*n>0'
08:24:51 <CakeProphet> you could also define your own with a function that uses yield. Probably even more bytes than the import though.
08:24:55 <Lymia> elliott, is this allowed?
08:25:09 <lifthrasiir> elliott, python's string is immutable, i think?
08:25:15 <elliott> lifthrasiir: oh damn, right :(
08:26:37 <elliott> h=n=0;i='n+=n!=255';d='n-=n>0';o='print n';s='n*=n';while 1:exec input()
08:26:44 <elliott> s needs to handle sqrt two-five-six
08:26:48 <Lymia> We've hit a brick wall.
08:27:22 <elliott> h=n=0;i='n+=n!=255';d='n-=n>0';o='print n';s='n**=1+(n!=16)';while 1:exec input()
08:28:02 <elliott> h=n=0;i='n+=n!=255';d='n-=n>0';o='print n';s='n*=2*(n!=16)';while 1:exec input()
08:28:05 <Lymia> h only occurs at the end.
08:28:13 <Lymia> n=0;i='n+=n!=255';d='n-=n>0';o='print n';s='n*=2*(n!=16)';while 1:exec input()
08:28:19 <Lymia> We can make it halt by erroring.
08:28:25 <elliott> n=0;i='n+=n!=255';d='n-=n>0';o='print n';s='n*=2*(n!=16)';while 1:exec input()
08:28:34 <elliott> this is going to get very difficult very quickly
08:28:39 <Lymia> Who does credit go to?
08:28:48 <elliott> I'll submit this version as #esoteric
08:29:29 <Lymia> How does that work?
08:29:29 <elliott> then we can try and shorten it further ofc
08:29:34 <elliott> Lymia: boolean->int conversion
08:29:36 <elliott> false is zero, true is one
08:30:14 <Lymia> Do any use this behvaior?
08:30:25 <elliott> its too hard to tell from reading them
08:31:34 -!- NihilistDandy has quit (Ping timeout: 258 seconds).
08:32:16 <elliott> n=0;i='n+=1+(n=255)*(-n-1)';d='n-=n>0';o='print n';s='n*=2*(n!=16)'
08:33:15 <Lymia> Are we allowed to use the file name as input?
08:33:21 <Lymia> And is the file name preserved?
08:33:38 <elliott> my squaring thing is borked
08:35:44 <elliott> n=255;i='n+=1+(n==255)*-255';d='n-=n>0';o='print n';s='n*=n*(n!=16)'
08:36:52 <elliott> back up to eighty seven bytes
08:37:14 <Lymia> Here's a six for you
08:37:55 -!- NihilistDandy has joined.
08:38:17 <elliott> n=0;i='n+=1+(n==255)*-256';d='n-=n>0';o='print n';s='n*=n*(n!=16)';while 1:exec input()
08:38:35 <elliott> cmp(n,twofivefive) might help
08:38:44 <elliott> abs(cmp(n,twofivefive))... no, too long
08:38:52 -!- cheater_ has joined.
08:39:04 <elliott> n=0;i='n+=abs(cmp(n,255))';d='n-=n>0';o='print n';s='n*=n*(n!=16)';while 1:exec input()
08:39:42 <Lymia> Is this fully functional?
08:40:00 <elliott> lifthrasiir: throw us a bone? :P
08:41:11 -!- NihilistDandy has quit (Client Quit).
08:41:25 <CakeProphet> the only thing I can think of would be to find another solution and compare its bytecount
08:41:32 -!- NihilistDandy has joined.
08:41:42 <lifthrasiir> i'm now at 73B, but i think it is certainly cheating
08:41:54 <lifthrasiir> as it fails to implement the full Deadfish spec
08:41:59 <Lymia> lifthrasiir, does it work?
08:42:31 <elliott> lifthrasiir: cheating is ok :)
08:42:32 <lifthrasiir> the examples do not test one behavior of the interpreter
08:43:06 <elliott> if thats not tested we could save *(n!=16)
08:43:16 <Lymia> oddoioidososisosiodsiodsioissiosoh
08:43:22 <Lymia> This is one of the examples.
08:43:34 <elliott> lifthrasiir: then i am not sure what behaviour you refer to :-P
08:43:34 <Lymia> Tests squaring to 256
08:43:40 <elliott> since that is baically all behaviours
08:44:23 -!- NihilistDandy has quit (Client Quit).
08:44:47 -!- NihilistDandy has joined.
08:45:16 <Lymia> I figured it out too
08:45:47 <Lymia> elliott, what is the longest check?
08:45:52 <Lymia> ;i='n+=abs(cmp(n,255))';
08:45:57 <elliott> you already said that was tested before
08:45:59 <Lymia> We can just increment.
08:46:07 <Lymia> Squaring to 256 was.
08:46:26 <elliott> ok, now to shave off two bytes
08:46:58 <lifthrasiir> FYI my version is: i='h+=1';d='h-=0<h';s='h*=(h!=16)*h';o='print h';h=0;while 1:exec input()
08:47:00 <Sgeo> There is now an L programming language: http://home.cc.gatech.edu/tony/uploads/61/Lpaper.htm
08:47:07 <Lymia> I guess I was wrong.
08:47:15 <lifthrasiir> elliott, no, i'm also figuring out how to shave off two bytes
08:47:35 <elliott> the loop is pretty much perfect
08:47:37 <Lymia> Can we shave off the h=0?
08:47:47 <elliott> ignore lifthrasiir's lie version ;D
08:47:51 <elliott> ok using h is actually clever
08:48:00 <Lymia> It fails either way.
08:48:09 <Lymia> Just due to different reasons.
08:48:20 <Lymia> We implemented it better.
08:48:23 <Lymia> Ours crashes with a key not found.
08:48:57 <Lymia> Can we do anything to o?
08:49:06 <Sgeo> And for no clear reason, they choose ` for strings and " for comments
08:49:21 <lifthrasiir> Sgeo, so strings start with ` and ends with '?
08:49:34 <Sgeo> Start and end with `
08:50:10 <elliott> Lymia: maybe if we shorten this
08:51:04 <elliott> n=0;i='+1';d='-(n>0)';o=';print n';s='*(n!=16)';while 1:exec 'n=n'+input()
08:51:34 <Lymia> I'm thinking of how it reduces mathematically.
08:51:35 <CakeProphet> you have to watch operator precedence I discovered..
08:52:18 <Lymia> n*=n*(n!=16) -> n=n*n*(n!=16) -> n=(n**2)*(n!=16)
08:52:27 <Lymia> No mathematical tricks.
08:52:37 <elliott> n=0;i='n+=1';d='n-=n>0';o='print n';s='n*=n*(n!=16)';while 1:exec input()
08:52:37 <elliott> n=0;i='+1';d='-(n>0)';o=';print n';s='*(n!=16)';while 1:exec'n=n'+input()
08:52:44 <CakeProphet> oh and you have to make o='+0;print n;n=n'
08:52:46 <Sgeo> I think I'm liking L though
08:52:55 <elliott> n=0;i='+1';d='-(n>0)';o=';print n';s='*(n!=16)';while 1:exec'n=n'+input()
08:53:01 <Lymia> Any way to abuse 0**0==1?
08:54:43 <CakeProphet> any chance doing a list lookup with ord(input()-100
08:54:53 <elliott> CakeProphet: beep, input() evals the line
08:55:04 <elliott> we could assign indexes to them or something and call lambdas but... no
08:55:49 -!- Wamanuz3 has joined.
08:56:46 <Lymia> Here's where it zeros.
08:58:00 <elliott> lifthrasiir: not gonna divulge the secret, are you >:D
08:58:10 <elliott> Lymia: CakeProphet: TOGETHER WE WILL ACHIEVE THIS
08:58:12 <elliott> what are you talking about
08:58:16 <lifthrasiir> haha, well i don't tell you, as it will spoil the fun ;)
08:58:23 <Lymia> lifthrasiir, how clever is it?
08:58:38 <lifthrasiir> Lymia, not beyond your expectation. it's actually quite simple.
08:58:46 <Lymia> Is there some hax we can reduce it farther with?
08:59:07 <lifthrasiir> as far as i see, it seems very hard. it might be the tight minimum.
08:59:09 -!- Wamanuz2 has quit (Ping timeout: 246 seconds).
08:59:27 <elliott> kolgomorov complexity of deadfish-without-increment-checking :)
09:01:37 <elliott> lifthrasiir: NOOOOOOOOOOOOOOOOOOOO
09:01:50 <elliott> i refuse to credit us as hash-esoteric
09:02:02 <elliott> hash-esoteric-apart-from-that-lifthrasiir-guy-who-was-just-horrible-and-kept-secrets >:D
09:02:15 <Lymia> If I reduce it below lifthrasiir, I'm going to keep secrets too.
09:02:27 <elliott> whatever happened to teamwork :(
09:02:29 <CakeProphet> actually ord(raw_input)/5-20 would be smaller than subtracting 100 and then dividing by 5, still I doubt the replacement will beat the 12 characters that you get to remove from doing so.
09:02:40 <lifthrasiir> hey, who was the person that pointed out exec input() will work? :3
09:03:10 <elliott> actually you just said input(), I worked out the exec() part myself :-D
09:03:34 <elliott> I'M GLAD WE'RE IN AGREEMENT
09:03:40 <elliott> it's not as simple as just shaving one byte off is it :D
09:03:49 <lifthrasiir> i always thought the golfing consists of two parts: applying the standard techniques, and brute-forcing.
09:04:33 <lifthrasiir> no matter clever you are, you have to experiment with several possible approaches (and possible sub-approaches within them)
09:04:42 <elliott> hmm...maybe that sixteen check could be simplified
09:04:57 <Lymia> http://docs.python.org/modindex.html
09:05:02 <Lymia> Let's raze the earth.
09:05:19 <elliott> no modules can help us now
09:06:04 <lifthrasiir> only page you have to keep is http://docs.python.org/library/functions
09:06:47 <elliott> memoryview() is the key to solving ALL OUR PROBLEMS
09:08:29 <Lymia> I would try to get rid of those quotes if I had any idea how.
09:08:34 <Lymia> I don't think we can.
09:10:20 <lifthrasiir> huh, did anagolf have a setpid interface? that will make a better use of $$ (for example).
09:10:29 <elliott> but we can't use that in python :)
09:10:36 <elliott> lifthrasiir: quick, give us an excruciatingly vague hint to shave a byte off this :D
09:11:55 <CakeProphet> I doubt property() is of any use to us, but the idea is interesting.
09:12:09 <lifthrasiir> elliott, for one byte, i think you were on the better track than me to point out where to shave off. for other one byte, it will follow naturally from the first one.
09:12:34 <elliott> ok so trying to simplify n*=n*(n!=16) somehow...
09:13:43 <Lymia> n=0;i='n+=1';d='n-=n>0';o='print n';s='n**=2*n==16';while 1:exec input()
09:13:45 <Lymia> There's one byte, right?
09:14:06 <elliott> you need parens around n==sixteen
09:14:17 <elliott> n=0;i='n+=1';d='n-=n>0';o='print n';s='n*=n*(n!=16)';while 1:exec input()
09:14:17 <elliott> n=0;i='+1';d='-(n>0)';o=';print n';s='*(n!=16)';while 1:exec'n=n'+input()
09:14:20 <elliott> these are the two current bases
09:15:07 <CakeProphet> I don't see how s will double the value in the second one
09:16:47 <Lymia> lifthrasiir, is the solution mathematical?
09:17:38 <elliott> you're still being excruciatingly vague.
09:18:38 <Lymia> Does Python have eval functionality?
09:19:21 <CakeProphet> and sys.stdin.write() is quite wordy and requires an import
09:20:09 <elliott> well there is __import__('sys').stdout.write() :)
09:20:20 <Lymia> elliott, I've checked.
09:20:33 <elliott> lifthrasiir: ok one question
09:20:39 <elliott> n=0;i='n+=1';d='n-=n>0';o='print n';s='n*=n*(n!=16)';while 1:exec input()
09:20:39 <elliott> n=0;i='+1';d='-(n>0)';o=';print n';s='*(n!=16)';while 1:exec'n=n'+input()
09:20:47 <elliott> lifthrasiir: which of these is a more viable base for shaving a character?
09:21:32 <elliott> n=0;i='+1';d='-(n>0)';o=';print n';s='*n*(n!=16)';while 1:exec'n=n'+input()
09:21:35 <elliott> yeah ok this base looks futile
09:22:01 <Lymia> I wish we could get rid of n=0;
09:22:21 <elliott> unfortunately python comes with no preinitialised variables :P
09:22:22 <Lymia> lifthrasiir, did you modify only the handlers?
09:24:16 <Lymia> - and * have checks, right?
09:26:16 <elliott> lifthrasiir: just one teeny weeny excruciatingly vague hint? :D
09:28:08 <Lymia> elliott, can we somehow combine i and d?
09:28:59 <elliott> tried things like that before
09:29:17 <elliott> are you SURE squaring to two five six is checked? :)
09:33:40 <elliott> SUUUUUUUUUUUUUUUUUUUUUUUUURE?
09:34:05 <Lymia> What if we assume a default operation?
09:34:29 <Lymia> Something easily undoed.
09:35:00 <elliott> let me try something along those lines
09:35:06 <EgoBot> haskell import System.Random; import Control.Monad; main = do {len <- pick [2..10]; putStrLn =<< (replicateM len $ pick ['A'..'Z'])} where pick a = randomRIO (0, length a - 1) >>= return . (a !!)
09:35:16 <elliott> we'd need newlines indentation etc
09:36:37 <Lymia> Dict comprehensions?
09:36:45 <Lymia> Not going to be shorter.
09:37:44 <CakeProphet> you can pass exec a dictionary environment, but you'd need some magic way to procedurally compress all of those strings into shorter code by taking advantage of some similarity that likely doesn't exist.
09:38:01 <Lymia> I want to combine i an dd
09:39:46 <Lymia> n,i,d,o,s=(0,'n+=1','n-=n>0','print n','n*=n*(n!=16)')
09:40:12 <CakeProphet> yeah I was considering that earlier but I didn't think it would actually save anything.
09:40:29 <elliott> the character tradeoff is literally the same
09:44:17 <lambdabot> [1.0,4.0,9.0,16.0,25.0,36.0,49.0,64.0,81.0,100.0,121.0,144.0,169.0,196.0,22...
09:44:54 <Lymia> elliott, no ideas?
09:45:15 <elliott> Lymia: i'm letting my mind churn away in a background process
09:47:41 <elliott> lifthrasiir: one measly little hint??? :)
09:48:12 <lifthrasiir> uh, i was briefly afk having a meal. so... what is your question?
09:49:09 <CakeProphet> execfile("deadfish.py",{"c":sys.stdin.read()}) looks promising.
09:49:10 -!- HolyBlood^AFK has joined.
09:50:04 <Lymia> import deadfish,sys;deadfish.exec(sys.stdin.read())
09:50:10 <elliott> how does that look promising :D
09:50:27 <elliott> lifthrasiir: there is no question, I'm just drawing a blank :-)
09:51:26 <CakeProphet> any way that the % string operator could be used?
09:51:46 -!- HolyBlood^AFK has changed nick to HolyBlood.
09:51:57 <lifthrasiir> it will save bits only when exec'prefix'+input()+'postfix' form is used.
09:53:24 <lifthrasiir> elliott, mind that my english is hardly fluent ;)
09:53:32 <CakeProphet> I am much better at obfuscation than golf...
09:53:55 <elliott> lifthrasiir: I need to read _something_ in to your lines or I will never shave a byte off :-)
09:54:44 <lifthrasiir> elliott, okay, what you considered a slight (and irrelevant) difference DOES make a big difference.
09:55:26 -!- oerjan has joined.
09:55:48 <elliott> now i have to go and read over my earlier comments :-)
09:56:08 <lifthrasiir> yeah it was my original intention when i asked for a hint at the first. :p
09:56:29 <oerjan> <elliott|afk> oerjan, tirelessly reverting vandalism of the sandboz
09:56:36 <oerjan> IT WAS THE PRINCIPLE OF THE THING
09:58:56 <oerjan> as everyone knows i'm a principled man, when i can be bothered
09:59:09 <elliott> oerjan: you will have lots of fun with sgeo's detailed chronicle of his failureiffic attempt to implement hq[nine]+
09:59:16 <elliott> by fun, i mean you will want to kill yourself.
09:59:31 <oerjan> ok, i was planning to skip most of the logs today anyhow
09:59:48 <elliott> you'll miss so much of the fun :(
09:59:58 <oerjan> WAIT THAT WASN'T A WARNING?
10:00:23 <elliott> why are these UK tv licensing ads always in tamil...
10:00:32 <elliott> lian speaking surroundings
10:01:50 <elliott> 22:25:37: <oklopol> some people like cutting their genitals, i imagine being glued from ones penis into a vagina might be a lot nicer.
10:01:50 <elliott> 22:25:50: <oklopol> wonder if this is the right chan for this :P
10:06:38 <elliott> I wonder how expensive segfaulting is on xeightsix/Linux
10:06:49 <elliott> well, segfaulting, catching it, and then resuming execution
10:08:30 <Lymia> lifthrasiir, is the postfix ")"
10:09:20 <Lymia> What are our operations?
10:09:25 <lifthrasiir> Lymia, i think it won't reduce the code, as "i" case is too simple to add non-artificial parentheses.
10:09:40 * oerjan suddenly realizes hq9+ + need not be entirely unobservable; it could err out on overflow
10:10:04 <CakeProphet> my first bash script: http://pastebin.com/cuSBQsEy isn't it beautiful?
10:10:11 <lifthrasiir> okay, i'm now trying to golf a haskell code....
10:10:24 <Lymia> You listen to music?
10:10:31 <Lymia> SILENCE MASTER RACE
10:10:35 <elliott> YOU LISTEN TO MUSIC??????????????
10:11:04 <elliott> CakeProphet: ok i have a rewrite of your script
10:11:10 <elliott> echo "WHY WOULD YOU EVER TURN FLACS INTO MPTHREES"
10:11:24 <Lymia> These are our operations, right?
10:11:31 <CakeProphet> I managed to remove like 20 gigs of wasted space by converting all of that losslessness to psychoacoustically equivalent lossiness
10:11:51 <elliott> CakeProphet: well, you goofed by not using a preset :)
10:12:10 <elliott> hmm do you even turn joint stereo on there
10:12:23 <Lymia> Always keep the originals somewhere.
10:12:24 <elliott> CakeProphet: lame comes with preset groups of settings
10:12:31 <lifthrasiir> CakeProphet, so you have estimated 40 gigs of pure informativeness now?
10:12:35 <elliott> which are superior to your own choices in, like, a hundred percent of cases :)
10:12:43 -!- cheater79 has quit (Ping timeout: 276 seconds).
10:12:52 <CakeProphet> probably. I'm not very well-versed in lame.
10:13:12 <elliott> `addquote <CakeProphet> [...] I'm not very well-versed in lame.
10:13:12 <CakeProphet> I'll see if I notice anything wrong sometime.
10:13:15 <HackEgo> 422) <.CakeProphet.>. [...] I'm not very well-versed in lame.
10:13:35 <elliott> CakeProphet: well you won't really :P
10:13:43 <elliott> not with the wildly excessive -V0 anyway
10:13:54 <elliott> CakeProphet: but seriously though
10:14:41 <CakeProphet> yes, keep a single file format or something. I honestly didn't have a reason for picking mp3.
10:14:49 <Lymia> elliott. I have an idea for golfing.
10:15:22 <elliott> CakeProphet: vorbis = smaller files (much lower bitrate with same quality), more reliable seeking, better tag format, ~~~|~|~open standard|~|~|~|~ :P
10:15:34 <Lymia> Let me check if it works
10:16:54 <CakeProphet> elliott: too late now, I think. And I'd have to convert like 100 gigs of mp3s to vorbis, which would incur a slight quality loss.
10:17:01 <Lymia> n=0;i='+';d='-';o=';print n;';s='*=n*(n!=16)*';while 1:exec "n"+input()+"=n>0"
10:17:06 <elliott> CakeProphet: s/slight/awful/
10:17:22 <CakeProphet> elliott: I may convert any other FLACs I accumulate to ogg, however.
10:17:46 <elliott> CakeProphet: man, I refuse to believe you couldn't have backed all those precious flacs up by buying a cheapo external drive :)
10:18:28 <CakeProphet> well, that script actually doesn't delete them. But yes I did immediately do a find . -name *.flac -delete after it finished. :P
10:19:28 <Lymia> Anything I can think of makes s larger
10:19:39 <Lymia> Too large to be acceptable.
10:20:33 <elliott> Lymia: note that exec "n[percent]s=n>0"[percent]input() is one byte shorter
10:20:45 <Lymia> I already thought of that.
10:20:57 <Lymia> Did lifthrasiir actually do that yet?
10:21:24 <elliott> lifthrasiir did mention something about saving space with formatting in that way
10:21:27 <elliott> which made me suspicious :)
10:21:38 <elliott> would he write it out to check just for us? no, surely his solution involves it ;D
10:23:17 <elliott> tswett!~Warrigal@unaffiliated/ihope
10:23:22 <elliott> i like how that hostname reveals all his previous nicks :D
10:23:26 <lifthrasiir> similar, but my code has fewer semicolons.
10:24:05 <Lymia> Now that I think of it.
10:24:10 <Lymia> I have quite a few possibilities to try.
10:24:27 <Lymia> Could we do something involving input%[something]
10:24:27 <CakeProphet> elliott: so what was your suggested change to my script?
10:24:31 <elliott> Please stop that pinging-on-a-separate-line thing :P
10:24:38 <elliott> CakeProphet: to replace it with that echo :D
10:25:28 <elliott> lifthrasiir: naw it's not :)
10:25:34 <elliott> oerjan's deadfish in haskell is pretty tiny already
10:25:34 <Lymia> elliott, that's the thing.
10:25:38 <CakeProphet> I believe oerjan can help you with haskell golfing, since he's a Haskell wizard.
10:25:44 <lifthrasiir> no, getting it work (with a reasonablly minimal code) is hard
10:25:46 <Lymia> It needs to be 2 chars or more, right?
10:25:53 <elliott> CakeProphet: hey i at /least/ count as an apprentice >:)
10:25:53 <Lymia> Otherwise, it would be no benefit
10:26:08 <Lymia> TypeError: not all arguments converted during string formatting
10:26:52 <CakeProphet> Lymia: usually means you have two many tuple elements and not enough %'s
10:27:03 <Lymia> CakeProphet, I know.
10:27:33 <CakeProphet> elliott: I'm not too shabby with Haskell myself. But I'm certainly not advanced.
10:29:03 <CakeProphet> the terse lambda syntax will be very helpful with haskell golfing I think.
10:29:11 <elliott> i doubt that will help deadfish :)
10:29:19 <Lymia> n=0;i='+=1;';d='-=0>';o=';print ';s='*=(n!=16)*';while 1:exec "n%sn"%input()
10:30:02 <lifthrasiir> yeah, i finally got it work. i wonder why i put the redundant return...
10:30:04 <Lymia> n=0;i='+=1;';d='-=0<';o=';print ';s='*=(n!=16)*';while 1:exec"n%sn"%input()
10:30:06 <elliott> n=0;i='+=1;';d='-=0<';o=';print ';s='*=(n!=16)*';while 1:exec'n%sn'%input()
10:30:06 <Lymia> Reduced a space...
10:30:10 <oerjan> <elliott> i like how that hostname reveals all his previous nicks :D <-- well technically not uorygl (which i still see him using on reddit)
10:30:20 <CakeProphet> lifthrasiir: too much C style programming probably. :P
10:30:50 <elliott> n=0;i='+=1';d='-=0<n';o=';print n';s='*=(n!=16)*n';while 1:exec'n'+input()
10:30:55 <lifthrasiir> CakeProphet, no, my current approach is as follows: foldl (>>=) (return 0) [f "i", f "s", ...] on the IO monad.
10:31:18 <elliott> lifthrasiir: you may find the sequence function relevant
10:31:20 <lambdabot> forall (m :: * -> *) a. (Monad m) => [m a] -> m [a]
10:32:03 <elliott> ?hoogle [a -> a -> m a] -> m a -> m a
10:32:03 <lambdabot> Data.Foldable foldlM :: (Foldable t, Monad m) => (a -> b -> m a) -> a -> t b -> m a
10:32:03 <lambdabot> Control.Monad foldM :: Monad m => (a -> b -> m a) -> a -> [b] -> m a
10:32:04 <lambdabot> Data.Foldable foldrM :: (Foldable t, Monad m) => (a -> b -> m b) -> b -> t a -> m b
10:32:25 <lifthrasiir> elliott, uhm, (f instr v) returns a new value of accumulator, so it has to be folded.
10:32:35 <CakeProphet> I'm almost positive a Perl version would just s/// everything
10:33:09 <oerjan> lifthrasiir: are you repeating f all those times?
10:33:19 <elliott> oerjan: presumably he is using map...
10:33:42 <lifthrasiir> main = getContents >>= (\x -> foldl (>>=) (return 0) $ map f $ lines x)
10:33:53 <elliott> that's an expanded version right :D
10:34:11 <Lymia> elliott, I've got nothing.
10:34:18 <CakeProphet> ?pl (\x -> foldl (>>=) (return 0) $ map f $ lines x)
10:34:18 <lambdabot> foldl (>>=) (return 0) . map f . lines
10:34:20 <lifthrasiir> as i'm very new to haskell, i think it has a room for improvements.
10:34:20 <oerjan> lifthrasiir: you can use foldl ((>>=).f) i think
10:34:49 <elliott> main=getContents>>=foldl((>>=).f)(return 0).map f.lines
10:34:56 <elliott> main=getContents>>=foldl((>>=).f)(return 0).lines
10:34:56 <oerjan> that's wrong argument order, slightly
10:35:30 <oerjan> easier with foldr, that trick
10:35:42 <elliott> 02:56:45: <oklopol> bsmntbombdood is 15, clog is prolly <5, GregorR is... 18? immibis wouldn't tell me his age :P lament is older, i'm 18, pikhq is 17, RodgerTheGreat is 19, Sgeo is... 17? (random guess), SimonRC is... 17?
10:36:03 <oerjan> hm actually shouldn't it be foldr anyhow
10:36:10 <Lymia> Here is where we stand.
10:36:10 <Lymia> 5#esoteric740.091811/05/16 19:25:470B / 37B / 32B
10:36:14 <Lymia> 1lifthrasiir710.093311/05/16 17:50:490B / 33B / 36B
10:36:19 <Lymia> Here is our target.
10:36:31 <elliott> did you submit a version with borked linebreaks?
10:36:37 <elliott> i was going to submit it myself because i know how to fix that :)
10:37:02 <Lymia> I have a Unix system.
10:37:16 <elliott> which is why you need to upload a file instead
10:37:22 <elliott> and also strip off the final newline from the file
10:38:05 <lifthrasiir> you will find :set noeol binary is helpful in vim.
10:38:08 <oerjan> lifthrasiir: ok maybe the argument order problem means you cannot save over map anyway
10:38:17 <Lymia> elliott, you submit it.
10:38:31 <oerjan> lifthrasiir: also it should be foldr, i'm pretty sure
10:39:00 <elliott> Lymia: not until we shave off a byte :P
10:39:25 <lifthrasiir> eh, it should be foldl, as >>= should be called in the input order
10:39:29 <Lymia> Note the changed balance.
10:39:44 <oerjan> hm ok i'm just disturbed that you thus require a finite input :)
10:40:07 <elliott> Lymia: are we cheating with lifthrasiir's stat count?? :D
10:40:12 <oerjan> @pl (\x op -> x >>= f op)
10:40:41 <oerjan> lifthrasiir: standard deadfish has no steenking need for finite input
10:40:47 <Lymia> Making 2 bytes of newline
10:40:56 <lifthrasiir> but it is a golfing, with only three examples. :p
10:40:57 <oerjan> but i'll grant the golf examples probably are
10:41:12 <Lymia> Our total adds up to 69
10:41:14 <Lymia> What isn't counted?
10:41:31 <oerjan> lifthrasiir: @pl says it would be foldl ((.f).(>>=)) which is obviously too many extra chars
10:42:22 <Lymia> Symbol is [!\"\#$%&'()*+,-./:;<=>?@[\\]^_`{|}~].
10:42:28 <lifthrasiir> Lymia, there is some characters not in any categories.
10:42:33 <oerjan> <lifthrasiir> main = getContents >>= (\x -> foldl (>>=) (return 0) $ map f $ lines x) <-- aka main = getContents >>= foldl (>>=) (return 0) . map f . lines
10:42:41 <oerjan> oh elliott already said
10:42:48 <elliott> 04:08:27: <immibis> does glass-0.12 support input?
10:42:48 <elliott> 04:11:44: <immibis> does glass-0.12 support input?
10:42:48 <elliott> 04:11:50: <immibis> as in, the I class?
10:42:49 <elliott> 04:14:35: <immibis> i repeat: does glass-0.12 support input?
10:42:49 <elliott> 04:14:45: <immibis> glass-0.7 doesn't.
10:42:55 <elliott> immibis' patience is astonishing
10:43:32 <lifthrasiir> oerjan, yeah pointfree style is turned out to be quite helpful in golfing... ;)
10:43:55 <CakeProphet> Glass has the most sophisticated object oriented input handling of all esolangs
10:44:18 <Lymia> lifthrasiir, so, eh.
10:44:33 <elliott> I need to invent a new esolang. It's been a while.
10:44:44 <Lymia> Are the prefixes and postfixes consisting of letters?
10:44:51 <elliott> Although the prospect of updating http://esolangs.org/wiki/User:ehird deters me somewhat.
10:44:53 <CakeProphet> I've got a concept for a poetry-based language.
10:45:02 <elliott> Have you SEEN the code to that thing????
10:45:28 <CakeProphet> not I. but the sun is starting to rise, which means I should go to sleep.
10:45:55 <elliott> who the hell goes to sleep that early :o
10:46:15 <elliott> going to sleep as soon as you wake up
10:46:30 <oerjan> elliott: hey we do have a way to use div and span now, remember?
10:46:33 <Lymia> lifthrasiir, does it?
10:46:47 <elliott> oerjan: yes but I'm not about to _port_ that page
10:47:05 <elliott> oerjan: besides the template engine would probably go out back and shoot itself.
10:49:18 <Lymia> I'll purge your user page.
10:49:38 <elliott> Don't make me write a script to drop lines whose contents are "elliott."
10:49:43 <Lymia> elliott, what's up with the user page?
10:49:49 <elliott> Lymia: What's up with it??? It's AWESOME.
10:49:52 <Lymia> It seems simple enough to modify.
10:49:53 <elliott> It's Snowman in the Land of Snow.
10:50:03 <elliott> Lymia: Dude, it features a u tag inside an i tag inside a b tag.
10:51:01 <lifthrasiir> for anyone interested, my entry is: r=return;f"i"v=r(v+1);f"d"v=r$max(v-1)0;f"s"16=r 0;f"s"v=r$v*v;f"o"v=print v>>r v;main=getContents>>=foldl(>>=)(r 0).map f.lines
10:51:05 <Lymia> lifthrasiir, I cannot determine the magic of which you used
10:51:39 <lifthrasiir> Lymia, hmm, my prefix consists of one byte, and suffix (yes i have one) consists of two bytes.
10:52:15 <lifthrasiir> and as i'm going to go home i'll be afk from now on... good luck on golfing. :)
10:52:25 <oerjan> um doesn't the contest keep the 256 wrapping rule?
10:52:42 <elliott> oerjan: yes but it only tests it by squaring
10:54:17 <Lymia> Shortest way to test it I can think of.
10:55:26 <oerjan> hm, lessee, r=return;f"s"16=r 0 vs r 256=r 0;r n=return n
10:55:53 <oerjan> i guess the cheat save 3 chars
10:57:50 -!- Phantom_Hoover has joined.
10:58:26 <Lymia> n=0;i='+=1';d='-=n>0';o=';print n';s='*=n*(n!=16)';while 1:exec"n%s"%input()
10:58:30 <Lymia> Can we trim three bytes off that?
10:59:38 <Lymia> elliott, yes, but that's longer
10:59:49 <Lymia> Or do we not trust lifthrasiir.
10:59:56 <elliott> lifthrasiir used a suffix, duh
11:00:11 <Lymia> And what suffix can you use to trim that down?
11:00:35 <Lymia> Is there anything other than n that makes sense?
11:04:47 <Lymia> n=0;i='+1';d='-n>0';o=';print n';s='*n*(n!=16)';while 1:exec"n=n%s"%input()
11:04:50 <Lymia> What kind of postfix would help?
11:09:12 -!- ais523 has joined.
11:10:12 <Lymia> Is there any way n can be better than n=n
11:10:49 -!- HolyBlood has quit (Ping timeout: 260 seconds).
11:12:45 <Lymia> <lifthrasiir> similar, but my code has fewer semicolons.
11:12:47 <Lymia> How do you manage that?
11:13:02 <Lymia> <lifthrasiir> Lymia, hmm, my prefix consists of one byte, and suffix (yes i have one) consists of two bytes.
11:14:43 <Lymia> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec"p"+input()
11:15:01 -!- HolyBlood has joined.
11:15:07 <elliott> OK I can beat this record of yours.
11:16:16 <Lymia> How do you reduce that?
11:16:18 <elliott> p=0;i='+=1;(';d='-=(0<';o='rint(';s='*=p*(16!=';while 1:exec'p%sp)'%input()
11:18:01 <elliott> Lymia: P.S. Stop using double-quoted strings, they're ugly. :p
11:18:48 <elliott> lifthrasiir: Your record is seventy-two bytes, right?
11:18:51 <elliott> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
11:19:02 <elliott> No, your record is seventy-one.
11:19:18 <Lymia> Why did my brain come up with that idea?
11:19:31 <elliott> Yeah, I'm pretty scared of you for that one.
11:19:39 <elliott> That's... breaking levels of abstraction that were not meant to be broken.
11:20:10 <elliott> what on earth could his suffix be
11:20:23 <Lymia> Think he did the 'p' thing too, or did he do something else?
11:20:28 * Lymia needs to stop doing the highlight thing
11:20:33 -!- ais523 has quit (Ping timeout: 246 seconds).
11:20:36 <elliott> I suspect he did the p thing too.
11:20:42 <elliott> He said that something I thought didn't matter mattered a lot.
11:20:51 <elliott> I'd said previously that his h variable was cute but didn't really matter.
11:21:23 <Lymia> If he didn't use it, ask him if he has the string "rint" in his program.
11:21:28 -!- ais523 has joined.
11:21:41 * Lymia stabs lifthrasiir in the heart
11:21:50 * Lymia steals and eats said heart
11:22:00 <elliott> now Lymia is the lizard queen
11:22:15 <elliott> what could the second thing be...
11:22:25 <Lymia> We should go for 80 bytes.
11:23:14 <elliott> we've already got below that...
11:23:25 <elliott> well, yes, that's the goal
11:23:32 <elliott> but we need to replicate lifthrasiir's achievement first :)
11:23:43 <elliott> nobody in here is going to run off with the solution or anything
11:23:53 <elliott> and there's plenty of good golfers that might be able to help :P
11:24:10 <elliott> ais523: this is what we have right now, for the amusement factor: p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
11:24:57 <ais523> elliott: what are you golfing, specifically?
11:25:21 <Lymia> Deadfish, where 255+1 = 256
11:25:22 <elliott> ais523: Deadfish, with the caveat that all input is on a line of its own
11:25:37 <elliott> oh, and occasionally "h" is used at the end, but we just let it error out to halt and that's fine
11:25:46 <elliott> the key to understanding the above is to note that python's input() evals
11:25:54 <ais523> hmm, what an arbitrary set of conditions
11:26:10 <lifthrasiir> since examples do not test the interpreters thoroughly
11:26:14 <elliott> the 255+1 thing ... well, Deadfish's wrapping is insane anyway
11:26:17 <ais523> yep, I meant the 255+1 thing
11:27:03 <Lymia> We managed to make Python look like perl.
11:27:05 <elliott> "It's f-ing fast[exclamation mark]" --IE9 web ad
11:27:08 <Lymia> Should we be proud?
11:27:15 <elliott> Lymia: this doesn't really look like perl
11:27:22 <elliott> perl golfing results have a lot more symbols
11:28:13 <elliott> lifthrasiir: Can you reveal the first character of your prefix? :-D
11:28:24 <Lymia> I want to try something
11:28:57 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
11:29:31 <Lymia> p=0;i='+=1;';d='-=0<=';o='rint ';s='*=(p!=16)*';while 1:exec'p%sp'%input()
11:29:33 <Lymia> This is 1 byte longer
11:29:49 <elliott> lifthrasiir: second byte? :D
11:29:51 <lifthrasiir> but i think you are very close to my solution
11:29:53 <Lymia> Can we use (operation)p
11:30:21 <elliott> p=0;i='+=1;';d='-=0<';o='rint ';s='*=(p!=16)*';while 1:exec'p%sp'%input()
11:30:23 <elliott> the equal sign was unnecessary
11:30:46 <lifthrasiir> i'm trying some alternative approaches, without success so far.
11:32:11 <lifthrasiir> one approach was scrapping while at all, but it is a lot longer...
11:36:28 <Lymia> What types can be converted to int?
11:36:33 <Lymia> With no function calls.
11:39:39 <lifthrasiir> other numbers will coerce the other int to the type of itself
11:45:15 <Lymia> I recall managing to take 1 byte out of the n=n version
11:45:17 -!- Phantom_Hoover has joined.
11:45:22 <elliott> Phantom_Hoover: qjowewoqiej
11:45:30 <lambdabot> Phantom_Hoover: You have 3 new messages. '/msg lambdabot @messages' to read them.
11:45:33 <oerjan> <Lymia> Take it to PM? <-- #esoteric, where the most on-topic conversations are being asked to take it to pm
11:45:49 <Lymia> oerjan, in this case, it's for secrecy's sake.
11:45:58 <Phantom_Hoover> How did my connection time out _through an ethernet cable_.
11:46:36 <elliott> Phantom_Hoover: Your router: it is fucked.
11:48:41 <Lymia> We do call connecters "female" and "male"
11:50:48 <oerjan> Phantom_Hoover: ran out of electrons
11:56:56 <cheater_> router fucked? don't worry, i fix
11:56:57 <cheater_> http://fukung.net/v/30871/9fc6f08b367a738e4cf60d17a790e607.jpg
12:03:28 -!- HolyBlood has quit (Ping timeout: 240 seconds).
12:04:39 <Lymia> <elliott> 02:56:45: <oklopol> bsmntbombdood is 15, clog is prolly <5, GregorR is... 18? immibis wouldn't tell me his age :P lament is older, i'm 18, pikhq is 17, RodgerTheGreat is 19, Sgeo is... 17? (random guess), SimonRC is... 17?
12:04:41 <Lymia> I'm not on the list.
12:06:04 <ais523> although my age is probably publicly available
12:06:04 <ais523> which is useful, as I can no longer remember what it is
12:06:05 <ais523> (although I just mentally calculated it at 24)
12:06:18 <elliott> unless Lymia used to be someone else here.
12:06:36 <elliott> pikhq_: Worrying things: when Debian decides to identify as "wheezy/sid".
12:07:50 <Lymia> elliott, how old am I then?
12:08:25 <elliott> FWIW, I only quoted that line because of how hilariously wrong it is, so I could just make up a number if you wanted.
12:08:48 <lifthrasiir> Lymia: i think they are all represented in hexadecimal.
12:09:42 <lifthrasiir> or only applicable to some other planet than earth.
12:10:33 <Lymia> elliott, you have a more serious guess?
12:11:18 -!- hagb4rd has quit (Ping timeout: 246 seconds).
12:11:21 <oklofok> you must be rather young because you're asking, but you never talk so how could anyone know
12:11:47 <elliott> Lymia: i'm terrible at estimating people's ages
12:11:57 <elliott> especially because i always inflate the estimate to avoid offending people or something?
12:12:23 <elliott> i guess it's kind of hard to guess when your frame of reference is fucked up enough that nobody can guess /yours/ :)
12:13:16 <Lymia> oklofok, stop using loic.
12:13:33 <oklofok> i'm gonna guess Lymia is 16 because it's a very neutral age
12:13:57 <oklofok> Lymia: i would never use logic
12:14:48 <Lymia> lifthrasiir, is the other reduction also perverse?
12:14:52 <elliott> yeah 16 sounds vaguely right
12:14:56 <elliott> that guess is just based on the ring of it
12:15:19 <oklofok> i did have some assumptions tho
12:15:31 <elliott> Lymia: now you have to report on the accuracy of our guess
12:16:06 <Lymia> It's a guess, so +-infinity
12:16:26 -!- HolyBlood has joined.
12:16:33 <oklofok> well maybe */infinity, but certainly not +-
12:16:35 <elliott> Lymia: Oh come on, you can't openly solicit guesses then be coy about it.
12:18:08 <elliott> right, sixteen is two off from ten
12:18:15 * Lymia is quite sure she mentioned being in grade school in here
12:18:22 <oklofok> what the fuck is grade school
12:18:43 <Lymia> Anything below college and above kindergarten.
12:18:48 <elliott> wait are you saying you're actually 10 because sixteen is so not two off from ten :D
12:19:11 <elliott> oklofok: "femaly" is a really great word
12:19:19 <oklofok> yes, that's why i almost didn't correct it
12:19:21 <elliott> possibly even the beestst word
12:19:54 <Lymia> elliott, I'm not 10.
12:19:54 <oklofok> Lymia: i'm currently looking for a gf/fuckbuddy, are you in finland by any chance?
12:20:00 <Lymia> oklofok, pedophile.
12:20:15 <oklofok> actually i did manage to solve the problem
12:20:48 <Lymia> You have been golfing with a little girl.
12:21:07 <elliott> Lymia: wait someone younger than me in here who isn't an idiot?
12:21:08 <Lymia> +-4 includes a difference by "0"
12:21:14 <oklofok> wanting to have sex with a 14yo doesn't make you a pedophile
12:21:27 <elliott> technically correct. the best kind of correct
12:21:48 <oklofok> wanting to have sex with someone who's prepubescent makes you a pedophile
12:22:10 <elliott> i remember being 14, it was... uh... pretty much like being 15 is to be honest
12:22:29 <elliott> in fact i would say the experience is effectively equivalent
12:22:33 <Lymia> I remember being 13, it was... uh... pretty much like being 14 is to be honest
12:22:48 <Lymia> Except I was just started in programming
12:22:50 <oklofok> being 21 was way different than being 22
12:22:50 <elliott> i remember being three, in fact i am three
12:22:57 <Lymia> I am too embarrassed to show code.
12:22:59 <Lymia> oklofok, well, yeah.
12:23:02 <elliott> Lymia: lol you just started programming when you were 13? n00blet
12:23:16 <Lymia> elliott, well, I should add the qualifier "serious"
12:23:19 * elliott desperately tries to forget his horrific age-8 experience with PHP.
12:23:33 <Lymia> I recall messing with Lego robotics.
12:23:41 <elliott> i should really have a ph.d. by this point, dunno where it all went wrong
12:23:45 <Lymia> Never managed anything serious, as changing things around got too annoying.
12:24:00 <ais523> elliott: it went wrong when you encountered the education system
12:24:31 <elliott> wait shit asiekierka is 13 now isn't he
12:24:55 <oklofok> what? the education system has been great towards elliott
12:25:01 <elliott> Lymia: yes. he comes here regularly to be a complete and utter idiot.
12:25:10 <elliott> ok not so regularly nowadays
12:25:28 <oklofok> you know. because he's gay and likes to get fucked in the ass.
12:25:53 <oklofok> i thought that was clear enough
12:26:00 <Lymia> oklofok, that's not a nice thing to say
12:26:17 <oklofok> Lymia: then you didn't get it
12:26:39 <Lymia> Rape is never funny.
12:28:18 <oklofok> well it's different for males, see when we get fucked in the ass we like to brag about it with our buddies
12:28:41 <oklofok> in other words, you still have no idea what i'm talking about
12:28:41 <Phantom_Hoover> <elliott> Lymia: lol you just started programming when you were 13? n00blet
12:30:04 <elliott> oklofok is it possible to die of laughter im just checking
12:30:27 <Lymia> Add water to mouth.
12:30:51 <Phantom_Hoover> <elliott> i remember being 14, it was... uh... pretty much like being 15 is to be honest
12:31:04 <Phantom_Hoover> You haven't witnessed the sunny uplands of being 16 yet.
12:31:21 <oklofok> yeah and the transition from 19 to 20, wow THAT was something
12:31:49 <elliott> Phantom_Hoover how experienced with work would you say you are
12:32:03 <Lymia> Phantom_Hoover, it didn't go well at all.
12:32:22 <Lymia> I recall doing scripts in Touhou Danmakufu around 12, though nothing serious at all.
12:32:38 <Phantom_Hoover> elliott, well, any work that entails messing around with Lego robots is probably delegatable to me.
12:32:54 <Phantom_Hoover> Lymia, I don't know what that is but I want to hit you for it on principle.
12:33:07 <elliott> `addquote <Phantom_Hoover> Lymia, I don't know what that is but I want to hit you for it on principle.
12:33:08 <HackEgo> 423) <Phantom_Hoover> Lymia, I don't know what that is but I want to hit you for it on principle.
12:36:13 <Phantom_Hoover> You two are both pathetic, I learnt Lisp like a month after starting programming.
12:36:33 <oklofok> i learnt lisp about 10 years after starting programming
12:36:49 <elliott> i barfed out the lisp self-interpreter five nanoseconds after the universe began
12:36:54 <oklofok> and i STILL don't know how to make coffee
12:37:21 <oerjan> hey i learnt lisp years before starting programming
12:37:39 <oerjan> or at least i'm sure i read a book about lisp with no access to an implementation
12:37:58 <oerjan> (same with basic, even earlier)
12:38:26 <Phantom_Hoover> <oklofok> wanting to have sex with a 14yo doesn't make you a pedophile
12:38:39 <oklofok> i read a book about c++ when i was 10 or something and found i could program it just fine when i first tried it at 14 or something
12:39:08 <oerjan> i have briefly started entertaining the notion that cheater_ _is_ roman polanski, since he brought up the name
12:39:29 <oklofok> Phantom_Hoover: or a normal adult male
12:40:10 <oklofok> well, depends on what kind of wanting it is i suppose, if your *dick
12:40:15 <oklofok> * minds, that's just weird
12:40:26 <elliott> oerjan: all the pieces fit except for the fact that cheater does not appear to have any sort of creative talent at all
12:41:10 <oklofok> in my mind, cheater is the guy who doesn't do anything particularly anything, and everyone hates him
12:41:21 <elliott> your mind known as reality
12:42:07 <oklofok> people never say that to me
12:42:24 <oerjan> yes. we are all figments of your imagination.
12:42:40 <oerjan> fortunately it is a very vivid imagination, so we don't really mind.
12:43:12 <oklofok> oh you wouldn't want to be in my imagination
12:43:15 <elliott> btw oerjan i found your photo again in the logs
12:43:20 <elliott> it's... obviously not a photo of you i mean come on
12:43:21 <oerjan> well you _might_ want to cut down on the pain and suffering a bit, but otherwise fine.
12:43:27 <elliott> how gullible do you think we are
12:43:35 <oklofok> oerjan: i'll consider that
12:44:08 <Lymia> I've found an ASM patch to the Super Mario World ROM from... late 2008
12:44:37 <ais523> Lymia: is it a golfed Deadfish interp in Python?
12:45:04 <Phantom_Hoover> <Lymia> I've found an ASM patch to the Super Mario World ROM from... late 2008
12:45:10 <elliott> asm isn't really coding it's more... munging
12:45:20 <Phantom_Hoover> Inference states that I first wrote a program before that.
12:45:21 <elliott> it takes a lot less talent, otoh this means it's difficult if you're actually any good at progrmaming
12:45:38 <oerjan> ais523: in other news, roman numeral look and say seems rather more complicated to analyse than i hoped
12:46:11 <ais523> oerjan: that's probably a good thing, right?
12:46:22 <Lymia> elliott, "brute force?"
12:46:22 <oerjan> the IV kinds. the IIII is much more trivial.
12:46:25 <Lymia> Sounds about right.
12:46:49 <Lymia> I should revisit hacking at SMW's assembly some day.
12:46:53 <oerjan> (with IIII you can only add groups at the beginning, so no exponential growth)
12:47:00 <Lymia> elliott, you want to see some of my earlier code?
12:47:09 <Lymia> It'll be a "pleasant" sight~
12:47:34 <Phantom_Hoover> Quite clearly none of you have seen my horrifying sort function written in CL.
12:47:47 <ais523> Lymia: feeling embarassed at your early code is the sign of a good programmer
12:47:51 <Phantom_Hoover> And noöne will, since it was on the laptop my father spilt wine onto last night.
12:47:59 <elliott> it's just a sign of a terrible flawed programmer
12:48:02 <ais523> Phantom_Hoover: the hard drive probably isn't unrecoverable
12:48:09 <elliott> then there's no embarrassment ever
12:48:11 <ais523> nobody codes perfectly from the start
12:48:24 <elliott> ais523: haha, what an amazing way to cover up for your insecurities
12:48:36 <elliott> PERFECT CODING FROM THE START IS THE ONLY ACCEPTABLE WAY
12:48:49 <ais523> elliott: for years the only programming language I had access to was VBA for Excel
12:48:50 <elliott> we should basically just euthanise everyone who writes an imperfect program basically.
12:48:55 <ais523> do you really expect me to write perfect code in that?
12:48:55 <elliott> instant master race of coders.
12:49:49 <ais523> elliott: that means, that you've just admitted that it's possible to write perfect code in VBA
12:49:53 <ais523> thus I win the argument by default
12:50:11 <elliott> ais523: you just have to write an interpreter for the perfect language in it first
12:50:15 <elliott> i'm not saying you can do it
12:50:18 <elliott> i'm just saying i expect you to
12:50:30 <ais523> elliott: but the interpreter wouldn't itself be perfect
12:50:32 <ais523> due to being written in VBA
12:51:29 <ais523> elliott: vague death threats is not a very good method of winning an argument
12:51:35 * Lymia stabs elliott in the spinal cord.
12:51:40 <Lymia> Death threats fixed.
12:51:49 <oerjan> now actual killing on the other hand...
12:51:56 <elliott> Lymia: ha ha ha wow you think that can kill me
12:51:59 <elliott> that's funnyEXCLAMATION MARKS
12:52:04 <Lymia> I don't think I can kill you.
12:52:06 <elliott> ais523: It's not a threat, I'm simply describing the new regime
12:52:09 <Lymia> I think I can cripple you for life.
12:52:41 <oerjan> fungot hath not yet returned :(
12:52:41 <Lymia> Phantom_Hoover, no, not yet.
12:52:44 <ais523> I've made two BF derivatives, both of which are actually interesting!
12:52:50 <Lymia> Unless you count that really perverse thing I did for CraftBook.
12:53:01 <ais523> because I was looking to explore new computational ground, I just used BF as a base
12:53:19 -!- FireFly has joined.
12:53:28 * oerjan swats FireFly -----###
12:53:29 <Lymia> BOOT ERR 404: BRAIN NOT FOUND
12:54:11 <oerjan> also, rapture in 5 days, i hear
12:54:56 <Lymia> The atheists and non-radical Christians will be saved,
12:55:01 <Lymia> All others have done too much wrong.
12:55:08 <oerjan> HAVE YOU REPENTED YOUR BRAINFUCK DERIVATIVE SINS YET?
12:55:16 <ais523> Lymia: what about agnostics?
12:55:19 <Lymia> (and non-radical :NOT_CHRISTIAN_RELIGION:)
12:56:49 <oerjan> maratreans, maytreyans and mithraists
12:57:18 <elliott> Phantom_Hoover: hyuk hyuk hyuk
12:57:40 <Lymia> Phantom_Hoover, http://craftbook.sk89q.com/wiki/Perlstone < does this count as a BF derivative?
12:57:52 <Lymia> If you're asking, the goal was to make something that fits onto Minecraft's 15x4 signs.
12:58:01 <Lymia> I'm not sure if I succeeded.
12:58:13 <elliott> "Perlstone is a surname that belongs to some special Australian's"
12:58:32 <oerjan> some special australian's what
12:58:41 <Lymia> Phantom_Hoover, heh.
12:58:46 <elliott> ais523: which are your bf derivatives, btw?
12:58:53 <Lymia> The loop construct is kinda-BF-derived
12:59:08 * Lymia had a backup server in her torso
12:59:13 <ais523> elliott: reversible BF, DoFuck
12:59:28 -!- azaq23 has quit (Ping timeout: 240 seconds).
12:59:43 <oerjan> hm i helped invent dimensifuck, didn't i
13:00:13 * Phantom_Hoover brickbrains oerjan, moves onto ais523 before realising he is out of bricks.
13:00:41 <ais523> I think DoFuck is TC, but I'm not entirely sure if it's BF-complete (in fact, it almost certainly isn't due to having no way to write a program that sometimes produces output and sometimes doesn't, although it might be if you allow backspace to delete characters)
13:00:59 * Lymia bricks Phantom_Hoover's brain with Rabies
13:01:50 <Lymia> Let's make Functionfuck
13:02:17 <Phantom_Hoover> If that is Brainfuck with functions then I am going to have to use oerjan's brick on you.
13:02:17 <Lymia> Brainfuck and Unlambda's evil child.
13:02:32 <Lymia> Phantom_Hoover, no, no.
13:02:36 <Lymia> Brainfuck except functional.
13:02:43 <Lymia> You can use church numerals for numbers.
13:02:51 <elliott> ais523: oerjan: Can we all take a moment to stare sternly at http://esolangs.org/w/index.php?title=Feather&curid=3601&diff=22891&oldid=20446
13:03:01 <elliott> especially the fact that it's marked as minor
13:03:19 <ais523> I don't really think the article gets the Feather situation across too well, so I'd just call it an honest mistake
13:03:29 <elliott> doesn't matter, the sternness continues unabated
13:03:36 <elliott> still, adding a category like that should never be a minor edit, should it?
13:03:47 <ais523> it could be if it had just been left off by mistake
13:04:04 <ais523> e.g. [[Category:2011]] on an article that specifically says the lang was created in 2011
13:04:16 <elliott> [[Category:2011]] isn't a Category Like That
13:05:03 <elliott> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
13:05:06 <elliott> Lymia: This is the best we've got so far, right?
13:05:21 <elliott> OK, so we know there's a two-byte suffix.
13:05:29 <Phantom_Hoover> Lymia, hmm, I'd say that was a stupid idea and abandon it, but I have lost the ability to abandon stupid ideas.
13:06:06 <elliott> lifthrasiir: Is the suffix p)? Is the suffix +p? Is the suffix *p?
13:06:26 <ais523> hmm, I think a!=b should expand to a=a!b, for consistency
13:06:34 <ais523> (and ! is totally a binary operator in BCPL)
13:06:54 <ais523> a!b in BCPL is equivalent to a[b] in C
13:07:07 <Lymia> Phantom_Hoover, ([code]) = store function cell
13:07:08 <ais523> although BCPL is untyped
13:07:15 <Lymia> a = apply last cell to current cell.
13:07:23 <ais523> which means you can do it on arbitrary integers if you really want to, without even needing casts
13:07:49 <elliott> Lymia: BF operations don't look at more than one cell
13:08:05 <Lymia> What would the brainchild of Unlambda and Brainfuck be then?
13:08:17 <ais523> is deadfish up on anagolf yet?
13:08:26 <elliott> ais523: it's been up for days
13:08:35 <elliott> Lymia: no, I need to beat lifthrasiir first
13:08:58 <Lymia> Try those prefixes.
13:09:09 <elliott> the prefix is p, undoubtedly
13:09:28 <elliott> p=0;i='+=1;(';d='-=(0<';o='rint(';s='*=p*(16!=';while 1:exec'p%sp)'%input()
13:10:17 <oerjan> elliott: what about just p for suffix
13:10:31 <ais523> !c printf("%d %d %d", 'i', 'o', 's');
13:10:39 <elliott> oerjan: we know lifthrasiir's suffix is two bytes :)
13:10:50 <elliott> ais523: cakeprophet came up with some formulas that make them sequential, IIRC
13:10:52 <oerjan> yes but have you tried it?
13:10:54 <ais523> !c printf("%d %d %d %d", 'i', 'd', 'o', 's');
13:11:17 <Lymia> printf("%d %d %d %d", 'i', 'd', 'o', 's', 'h');
13:11:23 <Lymia> !c printf("%d %d %d %d", 'i', 'd', 'o', 's', 'h');
13:11:28 <Lymia> !c printf("%d %d %d %d %d", 'i', 'd', 'o', 's', 'h');
13:11:34 <Lymia> His formulas fail.
13:11:35 <elliott> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
13:11:36 <elliott> p=0;i='+=1;';d='-=0<';o='rint ';s='*=(p!=16)*';while 1:exec'p%sp'%input()
13:11:45 <Lymia> That WOULD be acceptable.
13:11:50 <Lymia> As long as o didn't follow.
13:16:30 <oerjan> hm what's boolean not in python?
13:17:11 <oerjan> and can it be applied to a numeral?
13:17:29 <EgoBot> languages: Esoteric: 1l 2l adjust asm axo bch befunge befunge98 bf bf8 bf16 bf32 boolfuck cintercal clcintercal dimensifuck glass glypho haskell kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor sadol sceql trigger udage01 underload unlambda whirl. Competitive: bfjoust fyb. Other: asm c cxx forth sh.
13:18:03 <oerjan> `run python -e 'print "test"
13:18:03 <Lymia> The most esoteric language of them all.
13:18:06 <oerjan> `run python -e 'print "test"'
13:18:22 <oerjan> `run python -c 'print "test"'
13:18:39 <oerjan> `run python -c 'print (!2)'
13:19:02 <oerjan> i take it python has no short boolean not
13:19:25 <oerjan> `run python -c 'print (!2)' 2>&1
13:19:26 <HackEgo> File "<string>", line 1 \ print (!2) \ ^ \ SyntaxError: invalid syntax
13:19:35 <elliott> <oerjan> hm what's boolean not in python?
13:19:39 <elliott> <oerjan> and can it be applied to a numeral?
13:19:51 <oerjan> elliott: well that doesn't help replace 0<
13:20:00 <oerjan> EgoBot has no python, i said
13:20:12 <elliott> oerjan: it's not, not [exclamation mark]
13:20:28 <oerjan> elliott: I UNDERSTAND THAT YOU MORON
13:20:38 <Lymia> I just made the best quine ever.
13:20:47 * oerjan is starting to get irritated again
13:22:03 <ais523> hmm, I've got the Perl down to 71
13:22:10 <ais523> $p=$p~~[-1,256]||$p+1,/d/?$p-=2:/o/?print--$p,$/:/s/&&($p=--$p**2)for<>
13:22:12 <oerjan> elliott: i _really_ shouldn't try programming when i'm in this mood
13:22:22 <ais523> that implements the whole spec, including 255+1 = 0
13:22:30 <oerjan> Lymia: myndzi certainly seems to think so :D
13:22:35 <elliott> ais523: sheehs, start cheating already
13:22:45 <Lymia> Can you cut out +1 support?
13:22:59 <elliott> ais523: what's with the -- in the squaring?
13:23:09 <oerjan> Lymia: nick alignment, you need spaces
13:23:10 <ais523> elliott: because the bit at the start always increments p
13:23:20 <ais523> in order to get it to output 0 rather than ""
13:23:27 <ais523> if an o command is run right at the start
13:25:13 <oerjan> elliott: this is ais523, lawful good programmer you're talking to :P
13:25:41 <ais523> I'd have not done that messing around if it wasn't necessary, as I wouldn't even have noticed there was a problem
13:25:43 <elliott> lifthrasiir: just oooone measly hint? :DDD
13:26:01 <elliott> been drawing a blank for hours now
13:26:14 <oerjan> elliott: how many chars is lifthrasiir beating you with?
13:26:29 <elliott> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
13:26:34 <elliott> the only bit of info we know is
13:26:49 <elliott> his looks like while 1:exec'p%sXY'%input()
13:27:45 <oerjan> and p=p prefix only worsened things, right?
13:27:53 <elliott> that destroys the rint trick
13:27:59 <elliott> so, yeah, we gave up on that hours ago :P
13:28:10 <elliott> the rint trick was the one that got us down to this count
13:28:51 <oerjan> i don't see how p suffix should make it _longer_?
13:29:05 <elliott> it takes up bytes to have it there
13:29:12 <elliott> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
13:29:12 <elliott> p=0;i='+=1;';d='-=0<';o='rint ';s='*=(p!=16)*';while 1:exec'p%sp'%input()
13:29:14 -!- elliott has quit (Quit: Leaving).
13:29:18 <oerjan> it lengthens i, shortens d,o,s
13:29:50 <oerjan> and requires 3 extra chars, sigh
13:30:27 <oerjan> which means whatever lifthrasiir uses must save _4_ chars otherwise
13:30:43 <Lymia> What can be reduced from everything at the end?
13:30:47 <Lymia> He said he used less semicolons?
13:31:31 <Lymia> Only i i and o are used
13:32:17 <Lymia> Might it be possible to kill the p=0?
13:32:50 -!- elliott has joined.
13:32:53 <elliott> that was about the old version
13:32:58 <elliott> i don't think the less semicolons thing is true any more
13:33:26 <oerjan> `run python -c 'print p'
13:33:32 <oerjan> `run python -c 'print p' 2>&1
13:33:33 <HackEgo> Traceback (most recent call last): \ File "<string>", line 1, in <module> \ NameError: name 'p' is not defined
13:33:42 <elliott> Lymia: no, o is done without i before it
13:34:00 <oerjan> `run python -c 'p=q=0; print p' 2>&1
13:34:09 <oerjan> `run python -c 'p=q=2; print p' 2>&1
13:34:50 <elliott> it's not good if shell scripts and aptitude tend to exit silently without doing much (or just outputting one line of output), right?
13:35:47 <oerjan> `run python -c 'p=2; p++; print p' 2>&1
13:35:48 <HackEgo> File "<string>", line 1 \ p=2; p++; print p \ ^ \ SyntaxError: invalid syntax
13:35:58 <ais523> bleh, why can't you write $p** in order to square $p? it'd be consistent with ++ and --
13:36:09 <elliott> <ais523> bleh, why can't you write $p** in order to square $p? it'd be consistent with ++ and --
13:36:11 <ais523> actually, no it wouldn't, it would multiply by 1
13:36:17 <elliott> bleh, why can't you write $p** in order to square $p? it'd be consistent with ++ and --
13:36:18 <elliott> bleh, why can't you write $p** in order to square $p? it'd be consistent with ++ and --
13:36:18 <elliott> bleh, why can't you write $p** in order to square $p? it'd be consistent with ++ and --
13:36:18 <elliott> bleh, why can't you write $p** in order to square $p? it'd be consistent with ++ and --
13:36:19 <elliott> bleh, why can't you write $p** in order to square $p? it'd be consistent with ++ and --
13:36:32 <elliott> ais523: checking if tswett is a script
13:36:37 <tswett> Are you expecting me to nod five times?
13:36:53 <tswett> Why would I nod at that? It doesn't begin with my name.
13:36:59 <elliott> wow, ok, everything is segfaulting
13:37:03 <elliott> testing is REALLY broken right now
13:38:02 <tswett> Now, that's just silly.
13:38:39 -!- HolyBlood has quit (Ping timeout: 260 seconds).
13:39:19 <tswett> elliott: you forgot the colon.
13:40:00 <tswett> Whew. I've got it in for myself.
13:40:17 <tswett> My script is running hot.
13:40:26 <elliott> tswett is going to have a hell of a headache after this.
13:41:09 <tswett> I think I've got about ten times to go.
13:42:59 <oerjan> do any of the examples do squaring of numbers above 16?
13:43:36 <oerjan> because otherwise you could cheat more, and use p<16 instead of p!=16
13:43:58 -!- BeholdMyGlory has joined.
13:44:19 <Lymia> elliott, I have school soon.
13:44:39 <Lymia> I don't think that's going to work.
13:44:40 <tswett> Nope, that's it. I'm all nodded out.
13:44:43 <Lymia> Look over the examples for me, k?
13:47:41 <Lymia> elliott, breaks test 2
13:50:34 <ais523> here's a different approach in Perl at size 77: chomp,/o/?print$p*1,$/:($p+=${{d,$p&&-1,i,1,'s',$p*$p*($p!=16)-$p}}{$_})for<>
13:50:40 <ais523> if only I could turn on auto newline hadnling
13:51:41 <elliott> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
13:52:00 <elliott> i think if he achieves size-four savings elsewhere
13:52:07 <elliott> that's the only thing long enough to admit such savings
13:52:31 <ais523> 75 using a shebang to turn on autonewline handling
13:52:49 <ais523> Python seems better at this than Perl due to not needing to screw with shebangs
13:53:10 <ais523> hmm, evil idea: what if I use $+ as the internal temporary variable? that gets autoincremented on every read
13:56:04 <elliott> how could you possibly mistake them
14:03:32 <variable> elliott: variable + name = agreed
14:29:16 <oerjan> `run python -c 'print 2&3'
14:30:17 <elliott> is that the squaring rule?
14:30:37 <oerjan> yes. it breaks but only for numbers >= 32
14:30:47 <elliott> well like Lymia said, larger then sixteen numbers are tested
14:30:55 <elliott> or have you checked that >= 32 numbers aren't squared? :D
14:31:07 <oerjan> no, i haven't looked at the actual examples
14:31:12 <elliott> worth a shot though, thanks
14:31:19 <oerjan> and it doesn't break for _all_ numbers >= 32
14:31:56 <oerjan> it breaks for all numbers between 17 and 31, brain fart
14:32:17 <oerjan> well at least you have a new idea to start with
14:33:31 <elliott> i am not sure it is such a helpful idea :D
14:37:20 <oerjan> `run python -c 'print 2*2&3'
14:41:10 <oerjan> lifthrasiir: we're trying to beat or at least tie you, of course
14:41:46 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
14:42:00 <oerjan> does your code depend on knowing that some numbers won't be squared?
14:42:43 <elliott> lifthrasiir: are you sure we can't get _one_ byte of your suffix? :D
14:43:24 <oerjan> oh hm what if the suffix is +p?
14:43:47 <oerjan> would that be interesting
14:43:59 <elliott> oerjan: i've already asked this, but have received no response
14:44:11 <oerjan> it would make i just 1+
14:45:04 <elliott> oerjan: er, no it wouldn't
14:45:06 <elliott> not with a one-byte prefix
14:45:34 <elliott> I wonder how minus fits into that
14:47:05 <oerjan> um i think =-(p>0) is what i'm aiming for
14:47:27 <oerjan> no, it's one char shorter
14:47:34 <elliott> lifthrasiir: aha, you might not
14:48:02 <elliott> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
14:48:02 <elliott> p=0;i='=1';d='=-(p<0)';o='rint';s='*=(p!=16)*';while 1:exec'p%s+p'%input()
14:48:55 <elliott> stop giving away all the secrets :D
14:49:12 <lifthrasiir> that's been three or four hours, so it is enough, right? :p
14:49:19 <elliott> ok now this just needs getting one char further down...
14:50:12 <elliott> I think this might be the absolute minimum
14:51:03 <elliott> unless squaring can be shortened
14:51:36 <lifthrasiir> but i can't really come up with an other idea...
14:51:48 <elliott> this seems like the most "direct" approach to me.
14:52:43 <lifthrasiir> FYI, "s" is run with a value of 0, 1, 2, 3, 4, 10, 16, 17, 99 and 9795.
14:53:13 <lifthrasiir> if some short function can map them into themselves except for 16, then it can be shortened further.
14:53:42 <oerjan> well p&16 mapped all the ones before 16 to 0
14:56:36 -!- oerjan has quit (Quit: Later).
14:57:15 <lifthrasiir> since len('(p!=16)*p') == 9, any such function should be at most 8 bytes long
14:57:40 <elliott> erm the p at the end hardly counts
14:57:47 <elliott> considering it's "free" with this structure
14:58:32 -!- Phantom_Hoover has joined.
14:58:40 <lifthrasiir> ah, it is correct. then we have 8 bytes that can be freely chosen.
15:02:10 -!- MigoMipo has joined.
15:03:04 -!- NihilistDandy has quit (Ping timeout: 276 seconds).
15:05:09 <lifthrasiir> elliott: interesting but failed attempt: 0**(p&16)*p.
15:05:51 <lifthrasiir> 0**x is 0 for x>0, 1 for x=0 and otherwise error.
15:05:52 <elliott> unfortunately too long, right?
15:09:00 -!- copumpkin has joined.
15:09:00 -!- copumpkin has quit (Changing host).
15:09:00 -!- copumpkin has joined.
15:15:44 <elliott> pikhq_: Can you sprunge your copy of Grey Mist? I've lost mine.
15:16:10 <elliott> It's this theme I once made.
15:29:41 <pikhq_> Glad to be of service.
15:30:56 -!- augur has quit (Remote host closed the connection).
15:31:20 -!- zzo38 has joined.
15:32:12 -!- NihilistDandy has joined.
15:34:40 <elliott> pikhq_: Have you found a Grey Mistish xfwm theme, BTW? The default ones kind of suck.
15:38:59 -!- Vorpal has joined.
15:39:00 -!- Vorpal has quit (Changing host).
15:39:00 -!- Vorpal has joined.
15:39:04 <elliott> hi ~AnMaster@h168n6c1o291.bredband.skanova.com
15:39:21 <lifthrasiir> elliott: okay, there is no such experssion with at most 5 free bytes
15:39:32 <elliott> lifthrasiir: did you just exhaustively try every expression? :D
15:39:59 <elliott> it would be pretty impressive if there was a 5 byte one :)
15:40:08 <elliott> I think trying every eight byte one is feasible too -- the character set is pretty restricted
15:40:12 <elliott> There's not going to be an x, or an at sign, or anything
15:40:28 <elliott> p(), arithmetic, exclamation mark, and equals... that's just about it
15:40:49 <elliott> Arithmetic being plus, minus, asterisk, slash, ampersand, pipe, caret
15:41:08 <lifthrasiir> po for the first character, o for the other characters.
15:41:23 <elliott> hmm, well I do not think you will see [] :)
15:41:31 <elliott> and i'm pretty sure you won't see { or }
15:41:50 <elliott> . I doubt very much too, a floating point solution???
15:42:24 <elliott> and ; won't happen really...
15:42:27 <elliott> unless it's the very last char
15:42:30 <lifthrasiir> [] and {} is unlikely but not that impossible.
15:42:42 <elliott> o = '!%&()*+-/0123456789;<=>^p|~'
15:43:09 <lifthrasiir> more robust way would be generating the correct formula up to the fixed size, but it is cumbersome.
15:52:29 <pikhq_> Unless Congress decides not to have a giant stick up its ass, the US will default in 11 weeks.
15:54:17 <pikhq_> If by "bankrupt" you mean "completely ruin its economy, dragging everyone else down with it".
15:57:20 <wareya> Congress will never have not have a stick up its ass.
15:59:51 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
16:02:34 <elliott> 11:05:06: <oerjan> i stopped reading that - too much cyanide and too little happiness
16:04:59 <lifthrasiir> okay, p*=p;<at most five bytes here>+p is also impossible
16:06:05 <wareya> I was going to sing out the last lyric to Eclipse really loudly
16:06:18 <wareya> but halfway through I choked and starting laughing instead because it was so uplifting
16:12:01 -!- augur has joined.
16:16:27 -!- Phantom_Hoover has joined.
16:19:20 <HackEgo> 338) * Received a CTCP VERSION from nyuszika7h * VERSION Microsoft IRC# 2011 64-bit (Windows 8 Beta, x64, 2GB RAM) <nyuszika7h> Gregor: Windows 8 Beta? o_O <Gregor> A small benefit of my brief time as an intern at MS.
16:19:43 <Phantom_Hoover> <pikhq_> Unless Congress decides not to have a giant stick up its ass, the US will default in 11 weeks.
16:33:19 <ais523> I fear that'll collapse the entire world economy, even if it shouldn't really
16:33:46 <ais523> also, why /do/ people lend money to governments, given that they could default by fiat any time they wanted and war would be the only way to stop them?
16:33:54 <ais523> (and not even war, if the governments lend to their own banks?)
16:56:29 <HackEgo> 363) <monqy> I've only watched bad movies about video game. I enjoyed every second of it.
16:56:39 -!- Phantom_Hoover has quit (Quit: Leaving).
16:56:52 -!- Phantom_Hoover has joined.
16:57:38 <HackEgo> 329) <treederwright> enjoy being locked in your matrix of solidity
16:57:38 <HackEgo> 269) <elliott> Vorpal: I'M NOT CLEVER OKAY
16:57:39 <HackEgo> 326) <oklopol> okay see in my head it went, you send from your other number smth like "i'd certainly like to see you in those pink panties again" and she's like "WHAT?!? Sgeo took a pic?!?!?! that FUCKING PIG"
16:57:40 <HackEgo> 206) <fungot> Vorpal: you can't plant spiders, duh!
16:57:41 <HackEgo> 381) <oklofok> destroying a local copy of the world is kind of like raping a robochick with a shovel tho
17:09:19 -!- ajf|offline has changed nick to ajf.
17:10:46 -!- monqy has joined.
17:10:54 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
17:13:14 -!- Phantom_Hoover has joined.
17:16:03 -!- zzo38 has quit (Quit: Stack underflow).
17:19:18 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
17:39:32 -!- Phantom_Hoover has joined.
17:47:21 <Phantom_Hoover> In other news, the sixth years in my school who took chemistry are a bunch of complete bastards.
17:48:18 <pikhq_> s/the sixth years in my school who took chemistry/people/
17:48:19 <Phantom_Hoover> Their dabbling in explosives has resulted in the school labs being locked down considerably.
17:53:10 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
17:53:14 -!- Phantom__Hoover has joined.
17:55:16 -!- students has joined.
17:55:24 -!- students has changed nick to Lymee.
17:55:31 <Lymee> elliott: How goes golfing?
17:55:47 <elliott> Lymee: p=0;i='=1';d='-=0<';o='rint';s='*=(p!=16)*';while 1:exec'p%s+p'%input()
17:55:52 <elliott> lifthrasiir revealed his secrets.
17:56:06 <elliott> Lymee: The current thing we need to do is reduce squaring; we seem to be doing this by brute-forcing an expression that works for all valid squaring inputs.
17:56:11 <elliott> But that's quite difficult.
17:56:28 <lifthrasiir> and i instead took up a haskell golf challenge instead. :p
17:56:40 <Phantom__Hoover> Then I realised you weren't the 6th-year chemistry students at my school.
17:56:45 <Lymee> Is there another way you can take it?
17:57:58 <quintopia> lifthrasir: instead did you instead do that because you were instead bored with the old one, instead?
17:58:43 <quintopia> Phantom__Hoover: take it to #esoteric-homestuck
17:58:51 <lifthrasiir> quintopia: yeah and instead i'm bored with instead too.
17:59:34 <elliott> Phantom__Hoover: aka esoteric-minecraft
17:59:38 <Phantom__Hoover> Well, I suppose Vorpal doesn't get a say that way, but neither of us care what he says anyway.
17:59:46 <Lymee> That's in 2-3 hours.
17:59:48 -!- Lymee has quit (Client Quit).
18:00:34 <Gregor> No one ever needs a Gregor.
18:01:50 <Gregor> No one ever needs halps from Gregor.
18:01:56 <quintopia> explox me the bfjoust cache file format
18:02:24 <Vorpal> <Phantom__Hoover> Well, I suppose Vorpal doesn't get a say that way, but neither of us care what he says anyway. <-- wrt?
18:02:55 <quintopia> is it just a file for each match with a number encoded as a binary byte?
18:02:58 <Phantom__Hoover> You can barely be said to have experienced the glory that is Homestuck.
18:02:59 <Vorpal> Phantom__Hoover, I'm lagging behind in reading yeah
18:03:03 <elliott> quintopia: I am unaware of any cache file.
18:03:03 <quintopia> i don't actually have the cache files on me, just the code
18:03:16 <elliott> Vorpal: Sburban Jungle is in the first few hundred pages.
18:03:33 <Vorpal> elliott, too long ago then, I forgot it
18:03:40 <elliott> No, you just didn't have speakers :P
18:04:41 <Vorpal> elliott, no clue, busy anyway
18:06:28 <Vorpal> I need to shift this screen setup around...
18:07:45 <Vorpal> fizzie, there? Any way to tell gnome which monitor you want stuff like task bar and such to show up on.
18:07:51 <Vorpal> the system is only sometimes dual screen
18:07:58 <Vorpal> (laptop + desktop monitor)
18:08:51 -!- aloril has quit (Read error: Operation timed out).
18:12:08 <fizzie> I don't really know about modern Gnome. The "monitor properties" dialog used to have a primary-screen indicamator, and I think the panels themselves, when not locked, are mostly draggable.
18:13:00 <Vorpal> fizzie, currently I get desktop icons on one monitor and panels on another
18:13:05 <Vorpal> and there is no primary checkbox
18:13:30 <Vorpal> fizzie, anyway the external one I want primary when it is around, otherwise I want the built in one primary
18:15:23 <ajf> wareya: y u no in #gg2
18:15:45 <fizzie> Ho-hum; well, I don't recall offhand how it goes.
18:16:20 <ajf> *wondow switches and page-ups*
18:16:34 <wareya> general chatter page 2
18:16:54 -!- sebbu has joined.
18:16:54 -!- sebbu has quit (Changing host).
18:16:54 -!- sebbu has joined.
18:17:05 <Vorpal> <fizzie> Ho-hum; well, I don't recall offhand how it goes. <-- oh well
18:17:28 <ajf> could you give me mod powers in Mods?
18:17:37 <wareya> ask mrfredman or bacon
18:18:00 <wareya> say you're my temporary fill in
18:18:55 <ajf> yeah, quoting you saying that
18:19:40 -!- sebbu2 has quit (Ping timeout: 250 seconds).
18:24:10 -!- aloril has joined.
18:33:26 -!- elliott has quit (Quit: Leaving).
18:33:36 -!- elliott has joined.
18:50:59 <wareya> something from another community
18:51:49 -!- azaq23 has joined.
18:58:46 -!- ajf has changed nick to ajfafk.
19:08:52 -!- oerjan has joined.
19:17:38 <elliott> Hey, I linked that days ago.
19:18:03 <elliott> I even quoted " This list is incomplete; you can help by expanding it.".
19:18:39 <oerjan> maybe randall is lurking on the channel
19:20:07 <oerjan> perhaps it's myndzi, he's good with stick figures
19:20:27 -!- olsner has quit (Ping timeout: 248 seconds).
19:21:09 * oerjan swats FireFly for being randall munroe -----###
19:21:19 <quintopia> oh shit. if he is it's my fault. i just linked the esolang wiki from a channel randall is definitely lurking in >.>
19:21:39 <elliott> WHY DO YOU DO THESE THINGS
19:22:18 <elliott> oerjan: what's the odds that if randall came here, the general dislike of his comic would be a refreshing break for him from the mindless fanbase he encounters everywhere else on the internet ;D
19:22:21 <elliott> answer: zero 'cuz we're jerks
19:22:43 <elliott> Phantom__Hoover: You added Perl to the joke language list. Shame.
19:22:54 <oerjan> well what are the chances he's intelligent enough for this channel </rimshot>
19:23:27 <monqy> perl is a good joke
19:23:44 -!- Phantom__Hoover has quit (Ping timeout: 252 seconds).
19:23:51 <elliott> maybe perl is a great punchline, but we sure as hell haven't found the joke to make it funny yet
19:24:08 <monqy> I laugh every time
19:24:31 <elliott> ais523: btw re "making the wiki look stupid", that sounds quite unavoidable to me ;D
19:24:48 <elliott> i mean to the UNENLIGHTENED the whole wiki is ridiculous.
19:25:08 <ais523> elliott: well, Reddit found the Perl entry on the joke language list and it caused a lot of confusion
19:30:04 <oerjan> well what's written on that page is a joke, anyway. unless someone changed it.
19:30:15 <oerjan> incidentally that argument also works for Feather
19:31:58 -!- Phantom__Hoover has joined.
19:32:31 <Phantom__Hoover> This return brought to you by: even greater paternal idiocy.
19:32:53 <Phantom__Hoover> I mean, I thought he understood that I could plug power cables in, but apparently no.
19:33:48 <ais523> he made you move away so he could plug them in himself?
19:33:51 -!- olsner has joined.
19:35:12 <Phantom__Hoover> ais523, no, he decided to punish me for not giving my laptop to my sister by "taking his router away".
19:35:45 <ais523> so you just plugged the router back in?
19:35:47 <Phantom__Hoover> He then attempted to unplug the modem, although he stopped after I helpfully informed him of this.
19:35:59 <ais523> oh, it wasn't actually a router at all?
19:36:17 <Phantom__Hoover> And left the power cable lying on the floor right next to it.
19:36:27 <ais523> why didn't you let your sister use the laptop?
19:36:43 <Phantom__Hoover> Because it's my goddamn laptop and she was being a snivelly little whiny brat.
19:37:27 <Phantom__Hoover> Seriously, I had to blast white noise through the headphones to drown her out.
19:38:09 <Phantom__Hoover> Need to retrieve tea, so I'll have to unplug the router while it's unattended.
19:40:36 * oerjan though Phantom__Hoover was an adult
19:41:18 <HackEgo> 370) <elliott> A priori one cannot say that post hoc ergo propter hoc the diminishing returns would give; yet under quid pro quo one can agglutinate fabula and sujet into vagrancies untold. <elliott> See? I'm intellectual.
19:41:45 <ais523> elliott: you and your mentions of vagrant
19:41:49 <HackEgo> 282) <Phantom_Hoover> [...] reyouthismootherate [...]
19:42:01 -!- Phantom__Hoover has quit (Quit: Leaving).
19:42:09 <elliott> * oerjan though Phantom__Hoover was an adult
19:42:13 -!- Phantom__Hoover has joined.
19:43:29 <ais523> elliott: legally able to do more than elliott, despite there being no real reason to use such a crude method of discrimination
19:43:56 <elliott> yeah i've got way more coolness than ph
19:44:24 <elliott> Phantom__Hoover: What is the pH of a phantom hoover?
19:56:30 <elliott> ais523: I don't suppose you happen to know how slow a segfault is? :P
19:56:48 <ais523> it can last a human-noticeable length of time if it also causes a coredump, though
19:56:58 <ais523> but if you're asking a question, that's probably not the use-case you have in mind
19:57:03 <ais523> *if you're asking that question
19:57:06 <elliott> ais523: I mean a caught one
19:57:19 <elliott> specifically, the overhead of the dereference + calling the handler + resuming execution
19:57:36 <ais523> my guess is that it's equal to a processor trap plus a signal delivery
19:57:52 <ais523> but I don't know how long either of those things take
19:57:56 <ais523> you could try benchmarking it
19:58:24 <elliott> I'm basically wondering about it as a memory allocation strategy
19:58:41 <monqy> good memory allocation strategy
19:58:49 <quintopia> in your opinion, what are my program's greatest strengths?
19:59:08 <quintopia> feel free to make shit up, as long as it's funny
19:59:14 <quintopia> i'm not feeling funny at the moment
19:59:33 <elliott> quintopia: it's the worst program ever and it eats babies for breakfast
19:59:42 <elliott> and it segfaults constantly
19:59:42 <monqy> elliott: is this for zepto
19:59:51 <quintopia> hmm, you caan do better. i like the segfault one.
19:59:52 -!- azaq231 has joined.
19:59:52 <fizzie> I seem to recall reading somewhere that Linux signals had reasonably low overhead, at least as far as these things go.
19:59:56 <elliott> monqy: no this is so unzepto
20:00:10 <elliott> fizzie: right; most signals don't involve such a processor trap though
20:01:01 -!- azaq23 has quit (Ping timeout: 246 seconds).
20:01:12 -!- ajfafk has changed nick to ajf.
20:01:18 <fizzie> That part shouldn't take long either, I don't think, but of course longness is relative.
20:02:25 <elliott> the two ideas i'm basically having for it is
20:02:36 <elliott> one, you have this gigantic memory pool thing, but you only allocate some of it (like with sbrk or whatever???)
20:02:42 <elliott> and when you segfault by stepping outside of the bounds
20:03:05 <olsner> based on my experiments on linux, sbrk is nearly useless
20:03:15 <olsner> it gave me a 128MB heap
20:03:29 -!- elliott_ has joined.
20:03:37 <elliott_> <elliott> the two ideas i'm basically having for it is
20:03:39 <elliott_> <elliott> one, you have this gigantic memory pool thing, but you only allocate some of it (like with sbrk or whatever???)
20:03:42 <elliott_> <elliott> and when you segfault by stepping outside of the bounds
20:03:45 <elliott_> <elliott> it expands it and resumes
20:03:48 <elliott_> <elliott> an allocator replacement
20:03:50 <elliott_> <elliott> when the allocator is called, it just returns some random number from high, high memory that will never be used
20:03:53 <elliott_> <elliott> then when it's accessed and segfaults
20:03:55 <elliott_> the allocation is done for real
20:03:57 <elliott_> and the pointer is rewritten to point to it
20:03:59 <elliott_> plus an entry in a table is marked
20:04:01 <elliott_> mapping the high memory number to the actual address
20:04:03 <elliott_> so that if another segfault happens because of aliasing it can rewrite it properly
20:04:11 <elliott_> and then the next GC cycle it rewrites /all/ the pointers and removes the table entry
20:04:48 <fizzie> Based on the Stetson-Harrison method I'd guesstimate something in the order-of-magnitude of some microseconds, but don't quote me on that.
20:05:20 <elliott_> that's pretty good considering the overhead of the actual allocator :-P
20:05:54 <elliott_> i´m the austrian cave troll'lkk;yy[[File:ooo--90.217.154.251 (talk) 19:57, 16 May 2011 (UTC)llllllllllll]]
20:05:54 <elliott_> --http://en.wikipedia.org/wiki/Wikipedia:Sandbox
20:06:26 <elliott_> gah, why does wikipedia try and hide your contributions link from you if you are logged ouT?
20:06:48 -!- elliott has quit (Ping timeout: 240 seconds).
20:13:26 <fizzie> Understanding what happened based on the faulting code can be somewhat nasty. Your pointer-replacement thing at least sounds tricky in the general case; you get the faulty address and pointer to the instruction that caused the fault, but if it's some "foo r8, [r9]" sort of thing it might not be trivial to say where the pointer value in r9 came from, for replacing it. Or even to find out which register to replace with the proper pointer value so that you can res
20:13:45 <elliott_> fizzie: In this case it would be for a language implementation.
20:13:57 <elliott_> So the assembly would be controlled somewhat.
20:15:42 -!- Phantom__Hoover has quit (Ping timeout: 246 seconds).
20:24:28 -!- elliott_ has quit (Ping timeout: 250 seconds).
20:29:37 -!- olsner has set topic: The first rule of krevitch is that you do not snork about flads. | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
20:29:54 -!- azaq231 has quit (Remote host closed the connection).
20:30:11 -!- azaq23 has joined.
20:32:30 <oerjan> a very cromulent topic.
20:33:36 <olsner> yes :) my first #esoteric topic, as far as I can recall
20:40:15 <oerjan> @check \x -> (x+y)^2 == x^2+2*x*y+y^2
20:40:15 <lambdabot> No instance for (Test.QuickCheck.Arbitrary SimpleReflect.Expr)
20:40:27 <oerjan> @check \x y -> (x+y)^2 == x^2+2*x*y+y^2
20:41:08 <oerjan> @check \x y -> (x+y)^2 == (x^2+2*x*y+y^2 :: Double)
20:41:09 <lambdabot> "Falsifiable, after 3 tests:\n-1.6666666666666667\n-1.0\n"
20:41:50 -!- pikhq has joined.
20:44:19 -!- pikhq_ has quit (Ping timeout: 276 seconds).
20:47:48 -!- Phantom__Hoover has joined.
20:48:27 <Phantom__Hoover> Let's play Guess Why PH Just Disconnected For Three Quarters Of An Hour!
20:49:12 <oerjan> was it Parental Stupidity (TM)?
20:49:47 <oerjan> so how soon will you be moving?
20:51:06 <Phantom__Hoover> Fortunately, unlike Sgeo, the chances of them sabotaging my university education are slim.
20:58:41 <olsner> what happened to Sgeo?
20:59:17 <Phantom__Hoover> He ended up going to a university with more business requirements for the course he was on than mathematics ones.
21:00:13 <olsner> because his parents wanted him to get business stuff and forced him there, or just they forced him into a generally shitty university?
21:02:25 <monqy> did parental stupidity find out about your router not being unplugged
21:02:46 <olsner> you should get wireless
21:03:53 <pikhq> Sgeo's getting a degree in, whatwasit, "IT"?
21:03:55 <olsner> anyway, how did the nutcase dad thing lead to Sgeo reading business classes?
21:04:16 <Phantom__Hoover> Ask pikhq, he tried to get Sgeo to change to something decent.
21:04:28 <pikhq> The highest level math class required for his degree is calc I.
21:04:35 <pikhq> It requires 3 business classes.
21:04:56 <pikhq> olsner: Just forced him into a generally shitty university.
21:05:11 <pikhq> Without an actual CS program.
21:08:00 <pikhq> Something about being able to live at home and it'd be cheap.
21:08:30 <pikhq> Cheap doesn't help you if your degree only barely qualifies you to flip burgers.
21:08:50 <pikhq> monqy: With Visual Basic.
21:08:51 <monqy> get into management in no time
21:09:15 <monqy> this sounds like the worst thing ever
21:09:16 <olsner> write a gui in visual basic to flip burgers in real time
21:09:17 <Phantom__Hoover> pikhq, will he create a GUI interface with Visual Basic to trace the burgers?
21:11:38 <monqy> does visual basic knowledge even qualify you to flip burgers?
21:12:17 <monqy> does visual basic knowledge even qualify sgeo to flip burgers?, I mean
21:12:24 <ais523> pikhq: actually, I think burger flipping works even without a degree
21:12:52 <monqy> one of my life goals is to stay out of the burger flipping business
21:14:04 <olsner> monqy: don't worry, you've still got plenty of time to fail
21:16:39 <olsner> since I have made no such goal I am unable to fail :>
21:17:29 -!- azaq231 has joined.
21:18:21 -!- azaq23 has quit (Ping timeout: 246 seconds).
21:23:11 <ais523> <Wikipedia> This is probably the only group on multicast e-mail systems of any sort where "OT:..." means on topic.[citation needed]
21:23:13 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:27:22 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
21:35:20 <olsner> that oracle thing seems kind of funny
21:45:21 <Sgeo> Oracle's awesome
21:45:33 <Sgeo> Um, not the company
21:54:05 <HackEgo> 424) <Sgeo> Oracle's awesome
21:54:28 * Sgeo sets Phantom__Hoover on fire
21:55:11 <oerjan> i'd *ZOT* Phantom__Hoover, but i don't know if the oracle still does that
21:55:23 <Sgeo> http://esolangs.org/wiki/BF-RLE
21:56:17 <Sgeo> zzo38 likes it
21:56:37 <Sgeo> Or, at least, used it in one of his languages
21:57:39 <ais523> oerjan: that came up in another channel a while ago, actually
21:57:53 <ais523> and the answer is, I don't know, because the precise question you asked didn't come up
21:58:18 -!- ais523 has quit (Remote host closed the connection).
22:00:32 -!- sebbu has quit (Read error: Connection reset by peer).
22:01:00 -!- sebbu has joined.
22:01:00 -!- sebbu has quit (Changing host).
22:01:00 -!- sebbu has joined.
22:02:47 -!- FireFly has quit (Quit: swatted to death).
22:08:10 <Sgeo> There is this:
22:08:11 <Sgeo> "P.S. At first I thought I might zot you for your faux grovel, but then
22:08:11 <Sgeo> } I realized inspiring false praise is the highest form of praise I can
22:08:11 <Sgeo> } ask for. Keep up the good work."
22:09:06 -!- ajf has changed nick to ajf|offline.
22:13:44 -!- cheater79 has joined.
22:17:43 -!- azaq231 has quit (Remote host closed the connection).
22:17:59 -!- azaq23 has joined.
22:24:00 * Sgeo is now curious what Oracularity 1455-08 originally said
22:24:46 <Sgeo> http://groups.google.com/group/rec.humor.oracle/browse_thread/thread/ec854c084f3f0f3d
22:30:12 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:44:19 -!- Phantom__Hoover has quit (Quit: Leaving).
23:05:48 -!- copumpkin has joined.
23:17:42 -!- azaq23 has quit (Ping timeout: 246 seconds).
23:40:15 -!- wareya has quit (Read error: Connection reset by peer).
23:41:05 -!- wareya has joined.
23:48:45 -!- zzo38 has joined.
23:51:10 <zzo38> Do the two reasons to capitalize "he's" in "Fear God! he's reentrant." cancel each other out? I don't think so!!!
23:51:33 <zzo38> Lla krow dna on yalp sekam Kcaj a llud yob.
23:51:39 -!- ais523 has joined.
23:52:23 * oerjan sidles away from zzo38's axe
23:52:35 <zzo38> I don't have an axe
23:57:27 -!- augur has quit (Remote host closed the connection).
23:59:41 -!- TeruFSX2 has joined.
00:02:00 -!- TeruFSX has quit (Ping timeout: 250 seconds).
00:02:25 <zzo38> I found this message in some public comment page: listen i cant get on the sight and i want my money back ive been trying since yesterday and its not my computer its the sight i wish someone would email me back melissa
00:02:58 <zzo38> Note that they gave no contact information, they certainly could get on the site (to post the comment), and they don't charge any money to access it.
00:08:16 <oerjan> that reminds me that there was some big confusion once when google started returning a different result when you searched for the name of some big site (or possibly it was "<name of big site> login")
00:08:45 <oerjan> turns out lots of people go to sites by searching for them and clicking the first google result, always
00:08:58 <oerjan> *a different top result
00:10:19 <oerjan> so now people ended up on the wrong page, which had a comment section, and complained there that the site had changed and they couldn't find anything. or something like that.
00:11:24 <oerjan> http://www.facebookloginhut.com/facebook-news/facebook-login-in-google/
00:15:10 <oerjan> http://www.readwriteweb.com/archives/facebook_wants_to_be_your_one_true_login.php was the site (lots of ads there)
00:22:30 -!- ais523 has quit (Remote host closed the connection).
00:22:43 <zzo38> I don't even use Facebook. I don't want to use Facebook.
00:23:16 <zzo38> But I sometimes use OpenID login.
00:50:46 <CakeProphet> oh god... my professor wants me to call them.
00:50:56 -!- augur has joined.
00:54:26 -!- TeruFSX has joined.
00:54:49 -!- TeruFSX2 has quit (Ping timeout: 240 seconds).
00:55:32 <CakeProphet> I wonder if I should just explain in an email that I have ridiculous phone call anxiety instead of avoiding the situation like I normally do.
00:56:23 -!- oerjan has quit (Quit: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANANAPHONE).
00:57:46 * Sgeo looks at a video of Hedgewars
00:57:53 <Sgeo> It's very, very much a Worms clone
01:00:54 -!- TeruFSX has quit (Ping timeout: 240 seconds).
01:01:00 -!- TeruFSX has joined.
01:04:00 -!- augur has quit (Remote host closed the connection).
01:05:26 <Sgeo> "eaturing humorous[citation needed] in-game references to various other media titles including Star Wars, Star Trek, World of Warcraft, Neverwinter Nights, 300, Lord of the Rings, The Colour of Magic, Castlevania, Highlander, Indiana Jones, and Monty Python and the Holy Grail."
01:05:36 * Sgeo lols at the [citation needed] for humorous
01:08:47 <CakeProphet> but yeah, it's a great game despire various buginess.
01:17:57 <CakeProphet> ...what kind of bugs could there possibly be.
01:19:02 <zzo38> I have used the "yes" command to produce a continuous tone on the sound card
01:19:09 <CakeProphet> I could use that when installing things with cpan actually. It always asks if I want to install dependencies.
01:19:12 <Sgeo> yes | write elliott
01:20:08 <CakeProphet> that's cool. I was actually looking for bash utilities that are geared towards shell scripting, but that's a good one too.
01:20:31 <zzo38> Sgeo: And that is why they have the "mesg n" command, I think
01:21:22 <Sgeo> yes everything I type in here will now be prefixed with yes
01:22:19 <zzo38> CakeProphet: I think it usually is, at least the last time I used "write", the recipient was able to receive it.
01:24:29 <CakeProphet> oh okay, nevermind. I thought "allowing write access" meant something completely different. Like, allowing bash input from other sources.
01:25:41 <oklofok> "<Sgeo> Oracle's awesome" <<< oracle's are indeed awesome!
01:26:16 <Sgeo> For the record, I was referring to the Internet Oracle.
01:28:05 <CakeProphet> The oracle was a very awesome program in the matrix. Proving P=NP doesn't even come close.
01:29:24 <CakeProphet> (I realize my above statement is mostly nonsense. Please allow the rational side of your mind to disregard that.)
01:31:28 <oklofok> as is well known P^A = NP^A and P^B != NP^B for some oracles A and B
01:31:32 <oklofok> haven't seen the proof tho
01:31:34 <CakeProphet> so far the most useful thing I've found in shell scripting is that you can pipe to a while loop and use read to grab lines.
01:31:59 <oklofok> anyone familiar with these? oh wait no one is ever familiar with anything
01:32:49 <CakeProphet> you can pretty much assume that I have a limited background in theoretical computer science beyond a certain point.
01:33:23 <Sgeo> I've... heard of PSPACE
01:33:57 -!- pikhq_ has joined.
01:34:03 <oklofok> CakeProphet: i would be extremely surprised if *anyone* *anywhere* was able to tell me how that result is proven
01:34:25 <oklofok> luckily i have it in book form and will hopefully be able to tell you guys this week
01:34:26 -!- pikhq has quit (Ping timeout: 276 seconds).
01:35:01 <oklofok> occasionally you find people at the uni who recall having read these proofs
01:35:16 <oklofok> and have no idea how they're proven
01:35:18 * Sgeo goes to try to download Hedgewars via BitTorrent
01:40:09 <Sgeo> http://pastie.org/1914031
01:40:30 -!- TeruFSX has quit (Remote host closed the connection).
01:41:55 <Sgeo> No, got a user account on a website, and that was a private message
01:43:35 <CakeProphet> oklofok: I was under the impression that using oracles to prove something is a silly thing to do.
01:44:22 -!- augur has joined.
01:44:32 -!- augur has quit (Remote host closed the connection).
01:51:08 <Sgeo> Fire sucks in this game
01:51:55 -!- TeruFSX has joined.
01:54:09 <oklofok> because of the fact that P^A = NP^A and P^B != NP^B, relativizable techniques cannot be used to prove P = NP, is that what you're referring to?
01:54:14 -!- TeruFSX has quit (Remote host closed the connection).
01:54:40 <oklofok> relativizable = technique such that if you prove X != Y for some classes X and Y using that technique, you will have proven X^A != Y^A for all oracles A as well
01:56:11 <oklofok> (if the class of languages X is defined using machines of some type, X^A is the class of languages obtained by taking those same machines, except they can solve inclusion in A in no time (in time 1))
01:56:45 <oklofok> (that is not a formal definition obviously, but it's obvious how it's done for the natural classes like P or NP or whatever)
01:57:02 <oklofok> (i mean it's obvious what the natural definition is)
02:02:26 -!- nddrylliog has joined.
02:03:54 -!- pikhq_ has left.
02:03:57 -!- pikhq_ has joined.
02:04:05 <pikhq_> SO MUCH LINEAR ALGEBRA
02:04:25 <pikhq_> Putting it off until the very last day possible == bad idea
02:04:32 -!- nddrylliog has left.
02:05:25 <oklofok> linear algebra is fun but all the proofs are the same you just go hmmm dimensions uh! dimensions
02:06:36 <pikhq_> You make it sound like a chant.
02:06:52 <pikhq_> "Hmmmm.... Dimensions... Uuuuhhh.... Dimensions..." ad infinitum
02:07:17 * Sgeo goes to read a manual
02:09:11 <CakeProphet> I'm thinking about taking Topology as one of my electives.
02:09:28 <CakeProphet> but I have to take "Introduction to Advanced Mathematics" first.
02:09:33 <oklofok> mmmm topology mmmm topology
02:16:31 <oklofok> are you trying to decide whether you're gonna take Topology or Parsing Perl - An Adventure!
02:17:24 <CakeProphet> No. My mind just tends to jump to other topics very quickly.
02:19:21 <CakeProphet> the first // is defined-or, the second // is an empty pattern. :)
02:42:48 -!- augur has joined.
02:45:12 -!- augur has quit (Remote host closed the connection).
02:49:40 -!- calamari has joined.
03:06:35 * Sgeo thinks that namecoins are more interesting than bitcoins
03:06:54 -!- TeruFSX has joined.
03:24:11 -!- calamari has quit (Read error: Connection reset by peer).
03:38:21 -!- calamari has joined.
03:52:17 <NihilistDandy> http://www.xtranormal.com/watch/11762072/native-html5
03:55:04 <oklofok> nihilist daddy would be better
03:55:26 <oklofok> oh i'm gonna call you daddy bigtime
03:55:30 -!- augur has joined.
03:56:06 -!- augur has quit (Remote host closed the connection).
04:13:11 <pikhq_> SO VERY MUCH LINEAR ALGEBRA
04:20:30 <pikhq_> Contrary to popular belief, computation is devoid of pedagogical value!
04:25:23 -!- copumpkin has changed nick to gropaga.
04:28:58 -!- augur has joined.
04:55:29 <zzo38> Have you ever even used the "mesg n" command?
04:56:50 <zzo38> Are you ever going to compose a piece called "Eine kleine Quinemusik"?
04:57:05 * Sgeo is not a composer.
05:11:19 -!- gropaga has changed nick to copumpkin.
05:16:18 <pikhq_> zzo38: "Eine kleine Quinemusik" is certainly an interesting title for a piece.
05:16:26 <pikhq_> Perhaps Gregor would like to steal it.
05:17:55 <zzo38> pikhq_: It is mentioned on esolang wiki, as a quine program in a programming language where both input and output are form of music.
05:18:19 <Sgeo> Moth lands in boiling water. I scoop moth out with a cup. I let it boil for some time.
05:18:24 <Sgeo> Will the pasta be safe to eat?
05:18:36 <zzo38> Probably, but not certain.
05:19:47 <zzo38> I have written some musics using Bohlen-Pierce although they not completely since they have only one voice with no dynamics or anything like that, just the notes and note lengths, and rests.
05:20:23 <zzo38> How many? Maybe fifteen such musics, I have done.
05:21:53 <zzo38> I played D&D today please read the recording? I know there is some typographical errors and it isn't perfectly well written, and maybe the chicken briefly changes into a duck half way through, but that isn't the point.
05:22:33 <pikhq_> Sgeo: Boiling is sufficient for disinfecting in most contexts.
05:22:58 <Sgeo> How long for though? I think I only let it boil a few extra minutes after the incident
05:23:14 <zzo38> Sgeo: How long does it normally take to boil that kind of pasta?
05:23:28 <Sgeo> Also, I don't know how cold cups are affected by boiling water
05:23:37 <Sgeo> There might be wax in my pasta now or something
05:23:57 * Sgeo decides to assume that wax is not lethal
05:24:14 <zzo38> Well, then, you can learn by experience maybe (that is, if it is not lethal)
05:26:17 <zzo38> Is it a good idea to make a mark of chalk on the shaman's body to tell the difference from the imposter?
05:28:01 <Sgeo> pikhq_, if I die, I'm blaming you
05:28:20 <zzo38> Can you blame someone if you are dead?
05:28:48 <zzo38> How can you write the report if you are dead?
05:29:02 <Sgeo> zzo38, it's a joke.
05:31:23 <zzo38> But if you are making an experiment, you try to see what is deadly, you cannot write the report if you are dead! One way to test, I suppose, is ask people who are marked already for death penalty, to try and then you write the report if they are dead or not.
05:32:34 <Sgeo> Sounds Foundation-like
05:32:54 <zzo38> What is "Foundation-like"?
05:33:04 <Sgeo> zzo38, http://scp-wiki.wikidot.com
05:33:19 <zzo38> Yes, I read that before
05:33:52 <zzo38> But they sometimes delete files too much
05:35:59 <Sgeo> There was one SCP that I loved that got deleted
05:36:18 <Sgeo> It was this little ruby gem capable of destroying structures, and perhaps the world if not controlled properly
05:36:28 <Sgeo> It was put into a spinning thing filled with mercury
05:36:36 <Sgeo> So it would not come in contact with a solid surface
05:38:57 <zzo38> If it gets too cold then it will become solid, I think
06:00:26 <zzo38> http://play.chessvariants.org/pbm/play.php?game=123456+Chess&log=nwolff-cvgameroom-2011-95-172&orientation=norm&submit=Print Do you think these players have made some bad moves?
06:02:49 <zzo38> I would have played 21. Rxh4*e7 although I don't actually know if it is better or what better move would actually be, I just try to guess. Instead he played 21. 5*e2 5h4 22. 5xe5+ but that just lets you get captured?
06:03:27 <zzo38> To me it seems that 21. Rxh4*e7 1e6 22. g3 might work, isn't it?
06:07:18 <CakeProphet> here's something for you: http://anyintelli.com/games/pawnduel/index.php
06:08:54 <CakeProphet> once you get it, you can win almost everytime.
06:11:05 -!- calamari has quit (Quit: Leaving).
06:12:44 <zzo38> Do you have any interest in chess variants?
06:16:17 <coppro> CakeProphet: that's a game called ni
06:19:21 -!- Slereah_ has joined.
06:21:44 -!- Slereah has quit (Ping timeout: 276 seconds).
06:38:02 -!- zzo38 has quit (Quit: Occam's Razor uses a single blade.).
07:32:56 -!- MigoMipo has joined.
07:43:20 -!- monqy has quit (Quit: hello).
07:53:42 -!- augur has quit (Remote host closed the connection).
08:19:58 -!- augur has joined.
08:28:55 -!- MigoMipo has quit (Read error: Connection reset by peer).
08:54:46 -!- FireFly has joined.
09:18:12 <Sgeo> http://www.google.com.cy/support/forum/p/Chrome/thread?tid=3d2fe0574273c61c&hl=en pasting here for later reference
09:37:40 -!- oerjan has joined.
09:42:11 -!- Patashu has joined.
10:31:06 -!- BeholdMyGlory has quit (Remote host closed the connection).
11:12:18 -!- FireFly has quit (Remote host closed the connection).
12:41:59 -!- azaq23 has joined.
12:52:16 -!- cheater_ has quit (Disconnected by services).
12:52:49 -!- cheater__ has joined.
13:15:04 -!- Phantom_Hoover has joined.
13:20:21 <Phantom_Hoover> There's been a Homestuck update, so I wouldn't be surprised if...
13:20:44 -!- azaq23 has quit (Read error: Connection reset by peer).
13:23:08 -!- azaq23 has joined.
13:26:23 -!- azaq23 has quit (Remote host closed the connection).
13:26:37 -!- azaq23 has joined.
13:32:21 -!- ais523 has joined.
13:34:45 -!- BeholdMyGlory has joined.
13:40:42 -!- ais523 has quit (Read error: Connection reset by peer).
13:44:18 -!- azaq23 has quit (Quit: Leaving.).
13:44:53 -!- ais523 has joined.
13:56:28 -!- elliott_ has joined.
14:05:26 -!- MigoMipo has joined.
14:22:22 -!- oerjan has quit (Quit: Later).
14:23:17 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:26:12 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
14:32:04 <ais523> Gregor: I fear JSmips has been outdone: http://linux.slashdot.org/story/11/05/17/0242244/Boot-Linux-In-Your-Browser
14:32:32 <elliott_> Because if so, it just talks to a remote -
14:33:15 <elliott_> lmao, someone checked the system specs
14:33:29 <elliott_> by jez9999 (618189) writes: on Tuesday May 17, @06:00AM (#36151038) Homepage Journal
14:33:29 <elliott_> Didn't work for me. It got to a text thing with a flashing cursor but stopped there. I don't see my Ubuntu desktop or browser icon.
14:33:40 <elliott_> Just gonna assume that's a joke :-P
14:34:54 <ais523> someone suggested running Apache on it
14:35:28 <ais523> if you could get it to serve the JS page itself, you could have a browser sending pages to itself
14:35:32 <ais523> which is sort-of ridiculous
14:36:04 <cheater__> [14:37] <cheater_> what i want to do is: run linux in javascript, and run php on top of that [14:37] <cheater_> then, use this php to validate forms.
14:36:43 <ais523> the same principle as the one behind node.js, just evilly backwards?
14:37:22 <cheater__> [14:37] <cheater_> ahahah [14:37] <cheater_> this is perfect.. [14:38] <cheater_> perfectly insane!!
14:37:28 <Gregor> ais523: Well, if it had to be done, at least it was Fabrice Bellard :)
14:37:59 <elliott_> <ais523> if you could get it to serve the JS page itself, you could have a browser sending pages to itself
14:38:05 <elliott_> Web Sockets don't do /serving/
14:42:39 <Deewiant> It doesn't appear to have network access anyway
14:43:45 <elliott_> Unsurprising since only Chrome has Web Sockets on by default
14:43:54 <elliott_> (Everyone else disabling it due to security issues until a new standard is out/implemented)
14:59:33 -!- copumpkin has joined.
15:01:12 -!- Vorpal has joined.
15:03:16 <Vorpal> hm in haskell is there any built in function that lets me "map with a sliding window"? With that I mean something like: Given [1,2,3,4] I want the function called with 1 2 then with 2 3, 3 4. And it would return a tuple of two elements, so it would generate a new list of equal length
15:03:24 <Vorpal> but yeah I need to see two elements at a time
15:04:02 <cheater__> what you really want is a transformation from a list to a sliding window
15:04:16 <elliott_> Vorpal: I think there's a nice function for doing something similar.
15:04:19 <copumpkin> :t zip`ap`tail -- the aztec god of consecutive elements
15:04:33 <lambdabot> forall b c. (?f::b -> b -> c) => [b] -> [c]
15:04:43 <Vorpal> <copumpkin> :t zip`ap`tail -- the aztec god of consecutive elements <-- heh nice
15:04:52 <elliott_> So yeah, "zipWith f `ap` tail" should do it.
15:05:04 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b
15:05:14 <elliott_> ap is generalised S combinator ;)
15:05:42 <ais523> ah, I was about to ask what ap did
15:05:44 <ais523> but I know what S does
15:05:52 <lambdabot> liftM2 f m1 m2 = do { x1 <- m1; x2 <- m2; return (f x1 x2) }
15:05:56 <lambdabot> forall a1 a2 r (m :: * -> *). (Monad m) => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r
15:06:17 <ais523> > (zip `ap` tail) [1,2,3,4,5,6,7]
15:06:17 <lambdabot> [(1,2),(2,3),(3,4),(4,5),(5,6),(6,7)]
15:06:18 <elliott_> ap is just \mf mx -> do f <- mf; x <- mx; return (f x)
15:06:42 <elliott_> > (zipWith (+) `ap` tail) [1,2,3,4,5,6,7]
15:06:49 <elliott_> > (zipWith (\x y -> [x,y]) `ap` tail) [1,2,3,4,5,6,7]
15:06:50 <lambdabot> [[1,2],[2,3],[3,4],[4,5],[5,6],[6,7]]
15:08:19 <Vorpal> that doesn't do quite the right thing but hm
15:08:23 <ais523> what does zip do if the two lists aren't the same length? just discard extra elements?
15:09:27 <elliott_> There's nothing else it /could/ do.
15:09:38 <ais523> @pl \x -> zip x (tail x)
15:09:54 <ais523> actually, ap isn't the S combinator, liftM2 is
15:09:59 <Vorpal> hm worst algorithm to get length of string ever
15:10:25 <lambdabot> (\ d e -> d >>= \ b -> e >>= \ a -> return (b a))
15:10:29 <Vorpal> > (x:xs) = tail (zip [1..] "foobar"); x
15:10:30 <lambdabot> <no location info>: parse error on input `='
15:10:34 <ais523> @pl \x y z -> (x z) (y z)
15:10:35 <lambdabot> (\ d e -> d >>= \ b -> e >>= \ a -> return (b a)) :: functions
15:10:39 <ais523> hmm, it seems you're right
15:10:44 <Vorpal> > tail (zip [1..] "foobar")
15:10:44 <lambdabot> [(2,'o'),(3,'o'),(4,'b'),(5,'a'),(6,'r')]
15:10:47 <elliott_> ais523: <elliott_> ?pl \x y z -> x z (y z)
15:10:52 <Vorpal> what is last element now again
15:11:01 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b
15:11:05 <Vorpal> > last (zip [1..] "foobar")
15:11:15 <Vorpal> this is ALMOST same as length :P
15:11:29 <Vorpal> I just need to get it out of there
15:11:31 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b
15:11:41 <elliott_> Vorpal: I'm not sure why you're trying to do that, though :P
15:11:46 <Vorpal> > fst . last (zip [1..] "foobar")
15:11:47 <lambdabot> Couldn't match expected type `(a, b)'
15:11:54 <ais523> what monad does ap work in when you give it a question that has nothing to do with monads? Identity?
15:12:00 <elliott_> (last (zip [1..] "foobar")) isn't a function.
15:12:03 <elliott_> So how can you compose a function with it?
15:12:06 <Vorpal> > fst $ last (zip [1..] "foobar")
15:12:12 <lambdabot> Occurs check: cannot construct the infinite type: a = a -> b
15:12:30 <elliott_> > fst . last . zip [1..] $ "foobar"
15:12:43 <elliott_> length = fst . last . zip [1..]
15:12:45 <Vorpal> elliott_, anyway this is kind of the silliest length function ever :P
15:12:53 <lambdabot> Occurs check: cannot construct the infinite type: a = a -> b
15:12:53 <lambdabot> Probable cause: `id' is applied to too few arguments
15:12:53 <lambdabot> In the second argument of `ap', namely `id'
15:13:03 <Vorpal> elliott_, think haskell would optimise it?
15:13:05 <ais523> oh right, Haskell can't type the X combinator
15:13:37 <lambdabot> Source not found. Take a stress pill and think things over.
15:13:41 <ais523> > foldl (+) map (const 1) $ "foobar"
15:13:42 <lambdabot> Couldn't match expected type `[(a -> b) -> [a] -> [b]]'
15:13:48 <ais523> umm, I've messed that up slightly
15:13:57 <elliott_> <ais523> oh right, Haskell can't type the X combinator
15:14:02 <elliott_> <Vorpal> elliott_, think haskell would optimise it?
15:14:04 <ais523> > foldl (+) (map (const 1)) $ "foobar"
15:14:05 <lambdabot> Couldn't match expected type `[a] -> [t]'
15:14:07 <elliott_> List fusion is excellent, so it's possible.
15:14:17 <elliott_> Probably not down to length directly, though.
15:14:32 <ais523> > (foldl (+)) . (map (const 1)) $ "foobar"
15:14:33 <lambdabot> Overlapping instances for GHC.Show.Show ([[t]] -> [t])
15:14:48 <elliott_> Prelude> foldl (+) (map (const 1)) $ "foobar"
15:14:48 <elliott_> Couldn't match expected type `[a0] -> [b0]' with actual type `Char'
15:14:49 <elliott_> In the second argument of `($)', namely `"foobar"'
15:14:51 <elliott_> In the expression: foldl (+) (map (const 1)) $ "foobar"
15:14:56 <ais523> I've probably got that composition backwards
15:14:58 <elliott_> Prelude> (foldl (+)) . (map (const 1)) $ "foobar"
15:15:03 <ais523> I know what I want to say, I'm just geting it wrong
15:15:04 <elliott_> Possible fix: add an instance declaration for (Num [b0])
15:15:11 <elliott_> ais523: foldl requires a zero value
15:15:22 <elliott_> > sum . map (const 1) $ "foobar"
15:15:26 <ais523> > (map (const 1)) . (foldl (+) 0)$ "foobar"
15:15:27 <lambdabot> Couldn't match expected type `[a]'
15:15:27 <lambdabot> against inferred type `GHC.Types...
15:15:35 <elliott_> ais523: no, you had it the right way around
15:15:39 <ais523> > (foldl (+) 0) . (map (const 1)) $ "foobar"
15:15:43 <ais523> I keep forgetting the semantics of .
15:15:56 <ais523> elliott_: in case you sum an empty list
15:16:22 <lambdabot> foldl' f a (x:xs) = let a' = f a x in a' `seq` foldl' f a' xs
15:16:29 <lambdabot> foldl f z (x:xs) = foldl f (f z x) xs
15:16:41 <lambdabot> Source not found. I feel much better now.
15:16:45 <elliott_> Hmm, wait, integers are strict
15:16:47 <elliott_> But other number types might not be
15:17:01 <elliott_> ais523: It might be good to assume I know the Prelude better than you if you keep forgetting what (.) does and don't know what seq is X-D
15:17:08 <ais523> force its left argument before running the right argument
15:17:14 <ais523> elliott_: I know you do, that's why I'm asking questions
15:17:24 <elliott_> I meant re: the foldl' thing :P
15:17:27 <elliott_> ais523: It doesn't mean the left argument will be evaluated immediately.
15:17:33 <elliott_> It just means it'll be evaluated before the thunk is.
15:17:46 <elliott_> i.e. if (a `seq` b) gets forced, a will get forced.
15:17:49 <ais523> so it's a lazy version of force left before evaluating right
15:17:59 <elliott_> But if (a `seq` b) isn't forced, then nothing happens.
15:18:07 <elliott_> ais523: There's no way to make a strict version, really
15:18:10 <ais523> how far does it go? e.g. if a returns type (), and the whole thing is forced, will anything happen to calculate that ()?
15:18:27 <elliott_> Or const x (foldl ... (... ... (_|_ `seq` x) ...) ...)
15:18:34 <ais523> elliott_: well, obviously not in Haskell
15:18:45 <ais523> you could define strict seq just fine in, say, algol 60
15:18:46 <elliott_> <ais523> how far does it go? e.g. if a returns type (), and the whole thing is forced, will anything happen to calculate that ()?
15:19:25 <ais523> so the left-hand value is just used uselessly, in a way
15:19:39 <lambdabot> forall a a1 b. (a -> (a1 -> b -> b) -> a1 -> b -> b) -> [a] -> a1 -> b -> b
15:19:47 <ais523> oh, I forgot the quotes
15:19:55 <ais523> now I'm wondering why that typed at all
15:20:02 <elliott_> ais523: lambdabot has function instances for Num, I think
15:20:07 <lambdabot> Only unit numeric type pattern is valid
15:20:17 <ais523> > ((4::Int)/0) `seq` ()
15:20:17 <lambdabot> No instance for (GHC.Real.Fractional GHC.Types.Int)
15:20:30 <ais523> ah, you can't divide an Int?
15:20:37 <ais523> that's what I was checking
15:20:37 <elliott_> ais523: No, but you can div one.
15:20:49 <ais523> makes sense; you can divide integers, but have to div ints
15:21:25 <ais523> does that handle negative numbers differently?
15:21:45 <ais523> guessing, I'd say -4 `div` 3 would be -1, and -4 `quot` 3 would be -2
15:22:07 <ais523> > ((div (-4) 3),(quot (-4) 3))
15:22:22 <ais523> heh, that's the opposite of what I predicted
15:22:26 <ais523> because I screwed up the maths
15:26:34 <Phantom_Hoover> elliott_, BtW, Timwi wants to make a new skin for the wiki.
15:27:07 <elliott_> I have increasingly become of the opinion that nobody should be allowed to make a MediaWiki anything but Monobook or Vector.
15:27:24 <elliott_> Oh dear, he just /asked/ for sysopship?
15:27:53 <ais523> elliott_: hmm, I think I might agree with you there
15:28:11 <elliott_> hmm... you can't actually add new skins as a sysop, can you?
15:28:17 <elliott_> you can modify the CSS of existing ones
15:28:20 <elliott_> but I don't think you can add new ones
15:28:23 <elliott_> making his request justification even odder
15:28:58 <ais523> elliott_: you can tweak the CSS and add JavaScript, but you definitely can't modify skins internally
15:29:06 <elliott_> Phantom_Hoover: HaskellWiki's new design is alright.
15:30:15 <elliott_> Asking for sysopship is definitely worrying though, in most places on the internet asking for power is a sure-fire way of making sure you don't get it
15:30:39 <elliott_> (Wikipedia is an exception, but Wikipedia handling sysophood in a certain way is usually an argument against that way :) )
15:31:11 <elliott_> ais523: you probably want to delete Subleq+, anyway
15:31:31 <Vorpal> elliott_, if I have two Data.Word.Word8 and want to add them together getting a Word8 back, why doesn't just a+b work?
15:31:45 <Vorpal> I misread the ghc error
15:31:55 <ais523> elliott_: I made it a redirect
15:32:22 <ais523> also, I got adminship on Esolang by asking Graue for it
15:32:25 <Phantom_Hoover> I got both sysop- and bureaucratship by asking, basically.
15:32:29 <ais523> but I gave an actual reason why it was needed
15:33:13 <ais523> and it wasn't direct asking, more I prompted enough that he asked me
15:33:20 <CakeProphet> I once asked for sysop privs on Wikipedia. Didn't happen.
15:33:59 <ais523> I can sort-of envisage how that RFA would go in my head
15:34:25 <elliott_> <Vorpal> elliott_, if I have two Data.Word.Word8 and want to add them together getting a Word8 back, why doesn't just a+b work?
15:34:54 <Deewiant> elliott_: Don't encourage him pinging people for followup comments as well
15:35:06 <Vorpal> elliott_, yeah I misread confusing ghc error
15:35:17 <Deewiant> elliott_: I.e. read the following lines before responding :-P
15:35:45 <elliott_> Deewiant: I was just confirming, and also punishing him for asking a question so soon with a ping ;D
15:37:15 <elliott_> ais523: I've replied to the thread about skins with a lot of parentheses and at least one neologism
15:39:44 <ais523> I dislike your spelling of sleekifiitude
15:39:52 <ais523> probably the third i is a little over the top
15:40:16 <elliott_> ais523: It's to aid pronunciation.
15:40:28 <ais523> (I'm also not convinced "jaggedy" is a real word, although I think I've seen it been used before)
15:40:30 <elliott_> "Sleekifyitude" just looks SILLY.
15:40:37 <elliott_> Jaggedy is real enough a word.
15:40:39 <ais523> it'd be easier to pronounce as "sleekifitude"
15:40:41 <elliott_> http://en.wiktionary.org/wiki/jaggedy
15:40:59 <ais523> although pronounced differently
15:41:19 <elliott_> ais523: But that'd miss the subtle strands of meaning :(
15:41:47 <elliott_> http://www.haskell.org/haskellwiki/Learning_Haskell <-- lol at the implementations section
15:41:58 <elliott_> A really verbose table version of "Yeah, uh, just use GHC."
15:42:16 <elliott_> Hmm, Helium and UHC aren't exactly actively developed either.
15:42:38 <elliott_> Helium isn't, though, I don't think.
15:43:25 <Vorpal> elliott_, wasn't there a jhc?
15:43:28 <Gregor> I didn't realize that Haskell's logo was "Lambda on Commodore 64"
15:43:47 <elliott_> Vorpal: Yes, it's relatively well-developed but not really compatible with much IIRC.
15:43:56 <elliott_> And it's a whole-program-including-libraries compiler.
15:44:17 <elliott_> Gregor: It's been most-compared to Amtrak's logo :P
15:44:29 <elliott_> It's not the best logo from the contest IMO but it's alright.
15:44:48 <elliott_> http://www.blogonauts.com/eats-the-world/wp-content/uploads/2009/03/Haskell_Logo.jpg ;; kickin' it oldschool
15:45:05 <Vorpal> elliott_, kind of cool iirc last I looked at it
15:45:16 <elliott_> Vorpal: Yeah, but it doesn't even have a REPL :P
15:45:18 <Vorpal> elliott_, whole program optimisation taken a step further than usual
15:45:28 <elliott_> It's useless for anyone trying to /learn/ Haskell.
15:45:29 <Gregor> Haskell bindings for libclang (a C++ parsing library)
15:45:44 <Gregor> libclang is a C++ parsing library now?
15:45:46 <elliott_> Vorpal: And I'm still not sure it's actually useful yet :P
15:46:04 <Vorpal> elliott_, it is cool however. Anyway this logo used to be used quite recently iirc? http://www.blogonauts.com/eats-the-world/wp-content/uploads/2009/03/Haskell_Logo.jpg
15:46:13 <elliott_> Gregor: It seems to at least partially be, yes.
15:46:22 <elliott_> Vorpal: The new logo has been around for, like, over a year.
15:46:32 <Vorpal> elliott_, ah, quite new then
15:46:48 <elliott_> LibClang package provides direct bindings to libclang.
15:46:48 <elliott_> This should be enough for parsing C/C++ code, walking the AST and querying nodes and completion queries.
15:46:59 <elliott_> Gregor: It doesn't seem to actually have compilation support.
15:47:14 <Gregor> You guys FAIL SO HARD.
15:47:29 <elliott_> The person who wrote the binding?
15:47:32 <elliott_> Every Haskell user in existence?
15:47:37 <Gregor> I'm sure the binding is only to the parser, I was laughing at the suggestion that libclang is a "C++ parser library"
15:47:58 <elliott_> http://clang.llvm.org/doxygen/group__CINDEX.html
15:48:08 <elliott_> I don't really see anything related to non-parsing there.
15:48:19 <elliott_> Except for maybe "translation unit manipulation".
15:48:36 <Gregor> Translation unit m---that's one :P
15:48:55 <elliott_> Unless it just counts a C++ file as a translation unit.
15:49:00 <elliott_> Which is, IIRC, a perfectly valid definition.
15:49:09 <elliott_> CINDEX_LINKAGE CXTranslationUnit clang_parseTranslationUnit (CXIndex CIdx, const char *source_filename, const char *const *command_line_args, int num_command_line_args, struct CXUnsavedFile *unsaved_files, unsigned num_unsaved_files, unsigned options)
15:49:09 <elliott_> Parse the given source file and the translation unit corresponding to that file.
15:49:20 <elliott_> Maybe there are some non-parsing functions there, but it's certainly not obvious that there are.
15:49:42 <Gregor> Also, apparently libclang is made of fail :P
15:49:46 <fizzie> Like it says: "The C Interface to Clang provides a relatively small API that exposes facilities for parsing source code into an abstract syntax tree (AST), loading already-parsed ASTs, traversing the AST, associating physical source locations with elements within the AST, and other facilities that support Clang-based development tools."
15:49:48 <elliott_> So I feel like "libclang is a library to parse and analyse C and C++ (and probably Objective-C) source code" is a valid assessment.
15:49:56 <elliott_> fizzie: So, it is a parsing library then.
15:50:12 <Gregor> elliott_: BLAR. BLAR. BLAR.
15:50:41 <fizzie> It's still better than libgcc which doesn't have anything to do with compiling code. :p
15:53:52 <Vorpal> fizzie, should be libgccruntime or something like that
15:54:29 <ais523> fizzie: yes it does, it's a library of functions to compile code into
15:54:39 <elliott_> " So you’ve seen other skins that are rubbish, and because of that you don’t even want to let me try? — Timwi 15:53, 17 May 2011 (UTC)"
15:54:43 <elliott_> Sigh, this is going to turn into a spat, isn't it.
15:54:45 <ais523> in case your system doesn't have a 64-bit multiply or whatever, you can compile it into the libgcc version
15:54:56 <Vorpal> elliott_, where is that quote from?
15:55:10 <Vorpal> ais523, or in case it lacks a 32-bit add
15:55:43 <Vorpal> elliott_, what is it about really, skins?
15:56:08 <elliott_> Timwi wants to be a sysop so he can make a new default skin.
15:57:47 <ais523> elliott_: I've suggested that Timwi makes his pure-CSS skin using User:Timwi/myskin.css
15:58:09 <Vorpal> pure css skin? mediawiki?
15:58:10 <elliott_> ais523: ugh, I'm trying to edit the page, and I've already had /one/ edit conflict
15:58:43 <ais523> but a "if you think that's possible and will work well, prove it" response is better than a "that won't work" response, although I gave both
15:59:09 <ais523> note that Timwi apparently doesn't know how to make an internal link to a section
15:59:32 <ais523> which is not completely obvious, but I'd rather people knew that sort of thing before wanting to mess around with the MediaWiki: pages which are a lot more finicky
16:00:09 <Vorpal> ais523, it is [[#foo|whatever]] isn't it?
16:00:26 <ais523> Vorpal: yes, and [[page#foo|whatever]] to link to a section on a different page, which is what he was trying to do
16:01:06 <Vorpal> ais523, doing that to the same page works though, except it will cause the browser to reload the page. Oh and mess up with clicking them when doing preview on edit
16:01:31 <elliott_> wow, it's a pretty huge thread already
16:02:22 <ais523> btw, the problem with linking to pages with + in their name isn't a MediaWiki bug, it's a bug in the Apache mod_rewrite config
16:02:26 <ais523> but I don't know the solution offhand
16:05:44 <Vorpal> elliott_, which haskell mode for emacs do you suggest?
16:05:56 <elliott_> Vorpal: Latest haskell-mode from darcs.
16:06:03 <elliott_> (add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)
16:06:04 <elliott_> (add-hook 'haskell-mode-hook 'turn-on-haskell-indentation)
16:06:14 <Vorpal> elliott_, why the last from darcs
16:06:15 <elliott_> Although haskell-indentation has been annoying me more and more lately because it tries to be too smart but not smart enough
16:06:21 <elliott_> Vorpal: Because the distro versions are really out of date
16:06:25 <elliott_> <elliott_> Although haskell-indentation has been annoying me more and more lately because it tries to be too smart but not smart enough
16:06:30 <Vorpal> elliott_, what am I going to miss?
16:06:31 <elliott_> (This will only apply if you do tricky nesting though :-P)
16:06:42 <elliott_> $ darcs get http://code.haskell.org/haskellmode-emacs/ haskell-mode
16:06:48 <Vorpal> elliott_, and installing that
16:06:54 <Vorpal> which I forgot how to do
16:06:54 <elliott_> Just "load" instead of "require".
16:07:05 <elliott_> (load "~/blah/haskell-mode/haskell-site-file.el")
16:07:08 <elliott_> (add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)
16:07:08 <elliott_> (add-hook 'haskell-mode-hook 'turn-on-haskell-indentation)
16:08:41 <CakeProphet> I've never been able to get myself to use emacs.
16:09:05 <Vorpal> how do you precompile *.elc now again...
16:09:22 <elliott_> Vorpal: Do you really need to :P
16:09:27 <Vorpal> CakeProphet, gedit is terrible. kate is better
16:09:37 <Vorpal> elliott_, yes, I need to optimise loading time obviously
16:09:40 <elliott_> <Vorpal> CakeProphet, gedit is terrible. kate is better <-- stop trying to start a flamewar
16:09:49 <elliott_> (it'd be ok if you just flamed it without suggesting an alternative ;D)
16:09:59 <Vorpal> gedit is quite terrible
16:10:05 <elliott_> we need a lot of people who love kate in here
16:10:09 <Vorpal> and there are options but I refuse to tell you them
16:10:11 <elliott_> so we can get a good gedit/kate flamewar
16:10:19 <elliott_> then if a vi or emacs guy comes in, they'll assume we're all noobs
16:10:27 <Vorpal> elliott_, I don't love kate, I find it usable, but far from perfect
16:10:36 <CakeProphet> eh, it's not a particularly amazing piece of software, but it has syntax highlighting and automatic indents, which are the two essentials for me.
16:10:49 <ais523> elliott_: I use both Kate and gedit; and I think Kate is better but I use gedit more often
16:10:58 <elliott_> fizzie: "nano? Oh come on, they haven't even implemented [OBSCURE PICO KEY COMBINATION]."
16:11:02 <ais523> gedit's my Notepad substitute, for the sort of things that would work just fine in Notepad
16:11:07 <ais523> and I also use it for editing lua, for some reason
16:11:13 <ais523> unless it's really really complex lua, then I use Emacs
16:11:19 <elliott_> I wonder if anyone's made a faithful Notepad clone for GTK
16:11:28 <elliott_> including the automatic date insertion stuff
16:11:38 <Vorpal> elliott_, Remember it has to refuse to open too large files
16:11:53 <Vorpal> ais523, anyway, why not use kate if you think it is better than gedit
16:12:06 <Vorpal> ais523, I mean, kate and gedit loads in about the same amount of time
16:12:07 <elliott_> Vorpal: Modern(TM) Notepad can handle large files.
16:12:48 <CakeProphet> ais523: Vorpal is very disgruntled by your gedit use, apparently. haha.
16:12:56 <Vorpal> no I'm just trying to understand
16:13:14 <fizzie> "Notepad makes use of a built-in window class named "EDIT". In older versions such as those included with Windows 95, Windows 98, Windows Me and Windows 3.1, there is a 64k limit on the size of the file being edited, an operating system limit of the EDIT class."
16:13:29 <fizzie> So any NT-class Notepad should be mokay.
16:13:30 <elliott_> mostly because kdefour anything is a pain in anything
16:13:38 <Vorpal> I just realised I typed nano -w ~/.emacs
16:14:06 -!- ais523_ has joined.
16:14:11 -!- ais523 has quit (Disconnected by services).
16:14:12 -!- ais523_ has changed nick to ais523.
16:14:18 <elliott_> real men and women and also people edit with LEADEN
16:14:47 <ais523> elliott_: which editor was yours that saved every keystroke and used a VCS for its undo feature?
16:15:27 <ais523> elliott_: I thought it might be
16:15:30 <elliott_> ais523: I never got to implementing the undo, though
16:15:32 <ais523> that would fit in so nicely with sg
16:15:36 <elliott_> although, it wasn't going to use VCS for undo, just for save
16:15:37 <ais523> which isn't really implemented either
16:15:43 <fizzie> Vorpal: Have you pre-byte-compiled your Emacs init file already? The manual disrecommends it, but startup time is obviously crucial.
16:15:44 <elliott_> because branching undo with VCSes is a pain
16:15:47 <elliott_> since you have to explicitly branch
16:15:59 <elliott_> it'd serialise its own undo tree
16:16:00 <Vorpal> fizzie, I forgot how to pre-byte-compile
16:16:03 <quintopia> how do you apply a .diff patch to a c project?
16:16:22 <Vorpal> fizzie, do you happen to know?
16:16:29 -!- augur has quit (Remote host closed the connection).
16:16:31 <elliott_> OK, /I/ have troubles remembering how to use patch sometimes, but come on, you could have found out the answer to that in five seconds by Googling.
16:16:31 <Vorpal> anyway the init file: meh
16:16:44 <Vorpal> fizzie, anyway real speed fans loads it into the emacs image
16:16:53 <Vorpal> (since emacs is already an image with pre-loaded stuff)
16:17:03 <quintopia> elliott_: it would take me at least 2 minutes. the only place i get 5 second answers is here
16:17:21 <elliott_> quintopia: you're really slow at clicking links
16:17:32 <fizzie> Real speed fans would just, you know, not bother with starting Emacs, since it's obviously already running.
16:17:52 <quintopia> elliott_: can't help the fact internet here is slow
16:18:29 <fizzie> (The manual recommends the Emacs server dealie as an alternative to byte-compiling init files.)
16:20:10 <Vorpal> oh make compile did it
16:23:58 -!- FireFly has joined.
16:24:01 -!- FireFly has quit (Changing host).
16:24:01 -!- FireFly has joined.
16:25:09 <elliott_> Emacs is like Windows, it's a really shitty platform but you use it anyway because of what's built on it
16:25:40 <elliott_> You're not reading the built-in tutorial are you?
16:26:13 <elliott_> http://www.gnu.org/software/emacs/tour/?
16:26:43 <elliott_> Hey, read Xah Lee's tutorial; if nothing else it'll be AMUSING!
16:26:49 <elliott_> I will leave it up to fizzie to tell CakeProphet not to.
16:27:12 <Vorpal> elliott_, this example is simple old code: http://www.gnu.org/software/emacs/tour/images/code.png
16:27:47 <Vorpal> CakeProphet, no x is just above alt
16:27:54 <Vorpal> so thumb + index finger
16:27:54 <elliott_> Vorpal: yes, which is why it's so awkward
16:28:00 <elliott_> yes, your thumb has to contort underneath your finger
16:28:12 <Vorpal> CakeProphet, anyway yeah it is rarely used
16:28:51 <elliott_> <Vorpal> elliott_, this example is simple old code: http://www.gnu.org/software/emacs/tour/images/code.png
16:29:15 <Vorpal> but old, check functions
16:29:27 <CakeProphet> ...why would I ever remember all of these key combos....
16:29:27 <Vorpal> elliott_, come on, it is K&R
16:29:42 <elliott_> You realise Emacs was mature in the eighties, right?
16:29:52 <elliott_> CakeProphet: Because they do useful things?
16:29:57 <Vorpal> but no reason to not protoize it after
16:29:58 <elliott_> You don't have to remember THAT many.
16:30:00 <Vorpal> need to turn off computer
16:30:10 <elliott_> Vorpal: protoize affects semantics.
16:30:16 <elliott_> K[and]R functions do freaky upconversion.
16:30:41 <elliott_> CakeProphet: Heck, I even use the arrow keys.
16:30:42 <CakeProphet> elliott_: yeah but there's a whole list of things to memorize for doing simple stuff like... moving through text. Whereas every other text editor ever uses home, end, ctrl+left/right, etc
16:30:57 <elliott_> CakeProphet: Well, the point is that Ctrl+F/B/P/N avoid moving your hands...
16:31:09 <elliott_> But moving around in one-char increments is a stupid idea anyway.
16:31:47 <elliott_> CakeProphet: Anyway, Emacs is actually older than cursor keys. :p
16:31:58 <elliott_> (Older than cursor keys on PCs, anyway.)
16:32:05 <CakeProphet> a fast search and replace would be a significant boon towards emacs to me
16:32:19 <elliott_> Uhh... there are editors with SLOW search and replace?
16:32:30 <CakeProphet> as in like, a fast, non-interrupting search and replace.
16:33:01 <elliott_> ...how big files do you edit exactly
16:33:04 <CakeProphet> I like the idea of not having to deal with UI dialogs.
16:33:13 <CakeProphet> not as in a fast execution time for the search-replace.
16:33:17 <elliott_> Well, nothing in Emacs is non-interrupting, the damn thing doesn't even have threads.
16:33:26 <elliott_> It's done with the minibuffer.
16:33:46 <elliott_> M-x replace-string <RET> source <RET> replacement <RET>, although there's also a regexp version.
16:33:51 <elliott_> Maybe there's a keybinding for replace-string, dunno.
16:33:56 <elliott_> (In any case you can assign your own if you want.)
16:34:03 <CakeProphet> wait... no threads? Does it have weird "clunkiness" issues?
16:34:10 -!- Vorpal has quit (Ping timeout: 240 seconds).
16:34:24 <elliott_> Text editing doesn't exactly involve intensive computation.
16:34:34 <CakeProphet> hmmm so what's the difference between replace-string and replace-query
16:34:48 <elliott_> I don't even have that command here
16:35:03 <CakeProphet> ...I don't know, but this tour thing mentions it. it's C-% I think?
16:35:15 <elliott_> Dunno, it seems to act just like replace-string...
16:35:39 * elliott_ checks it out (C-h F query-replace)
16:35:51 <elliott_> If you want to change only some of the occurrences of `foo' to
16:35:52 <elliott_> `bar', not all of them, use `M-%' (`query-replace'). This command
16:35:52 <elliott_> finds occurrences of `foo' one by one, displays each occurrence and
16:35:52 <elliott_> asks you whether to replace it.
16:35:57 <elliott_> CakeProphet: replace-string just does it unconditionally.
16:38:05 <elliott_> There's other things to look up key binding, look up Lisp function/variable/etc., start the info reader, blah blah blah.
16:38:08 <CakeProphet> ....I won't even ask how F correlates to that. I guess "function"?
16:38:20 <elliott_> And, uhh, commands are functions?
16:38:31 <elliott_> God knows, I just looked it up in C-h ? since I forgot. :-P
16:38:39 <elliott_> (C-h ? being "help about C-h".)
16:38:44 <elliott_> (If only it was "help about C-h ?".)
16:38:46 <CakeProphet> ...hahaha. what happens if you forget C-h ?
16:38:58 <elliott_> I think it comes up if you press C-h and then sit there for a few seconds doing nothing.
16:39:04 <elliott_> If you forget C-h, I think you just give up.
16:39:15 <elliott_> But then you'd have to remember C-x C-c to quit.
16:39:35 <elliott_> Oh come on, how often do you quit your editor?
16:39:53 <elliott_> It's worth nothing that Emacs actually predates Ctrl+X/C/V altogether.
16:40:01 <fizzie> Vi's the canonical "oh no I'm trapped and can't get out" program.
16:40:02 <CakeProphet> Depends heavily on what I'm doing. With gedit it can be often.
16:40:03 <Deewiant> Often when doing one-off edits
16:40:14 <elliott_> Deewiant: Yes, but quitting Emacs is an Emacs anti-pattern.
16:40:23 <elliott_> You don't spawn a new Emacs just to make a one-off edit.
16:40:27 <ais523> elliott_: I think as soon as you press control-h, Emacs gives you a hint that you might want to press ? if you don't know what to do next
16:40:39 <ais523> elliott_: I do, because I have Emacs set up to remember state when I close it
16:40:40 <CakeProphet> I think I'd use gedit for quick edits anyways...
16:40:41 <elliott_> That's unintuitive[exclamation mark]
16:40:48 <elliott_> ais523: You don't use Emacs conventionally.
16:40:57 <fizzie> I think our new-student computer-system-primer documentation had a "here's what to do when you end up in vi" page.
16:41:04 <ais523> elliott_: indeed, but the option has to exist for a reason
16:41:11 <Deewiant> Give vim ^C and it says "type :quit", give ed ^C and it says "?"
16:41:18 <elliott_> ais523: Well, quitting Emacs is useful for reasons other than quitting other editors.
16:41:27 <elliott_> For instance: logging out of your time-sharing system.
16:41:50 <elliott_> Deewiant: I'm surprise GNU ed doesn't have fancy error messages.
16:41:56 <fizzie> Deewiant: "Regular" vi doesn't help you with ^C, though.
16:41:57 <ais523> Deewiant: vim reacts the same way on control-X control-C
16:42:05 <ais523> presumably to help out lost Emacs users
16:42:13 <ais523> although I never even thought of trying Emacs' quit sequence in vim
16:42:19 <elliott_> ais523: <Deewiant> Give vim ^C and it says "type :quit", give ed ^C and it says "?"
16:42:20 <elliott_> <ais523> Deewiant: vim reacts the same way on control-X control-C
16:42:29 <ais523> elliott_: yes, it's probably because the control- X doesn't leave it in a state where control-C has a different meaning
16:42:41 <elliott_> Ctrl+X literally does nothing.
16:42:46 <elliott_> I doubt that's to help out Emacs users.
16:43:12 <Deewiant> fizzie: I don't have regular vi on any of my machines, so I couldn't check :-P These days you run into vim more often anyway
16:43:16 <elliott_> CakeProphet: C-x is just a prefix.
16:43:21 <elliott_> It does nothing by itself, you just put stuff after it.
16:43:31 <elliott_> (Without it, you'd run out of keys on the keyboard to press to do things.)
16:43:49 <Deewiant> elliott_: Ctrl+X decrements the number under the cursor
16:43:51 <elliott_> It's like a sticky mega-alt that lasts for one additional keycombo. :p
16:44:05 <ais523> whereas ESC is literally prefix alt
16:44:17 <ais523> alt-X and ESC X have the same meaning in Emacs
16:44:20 <elliott_> ais523: More like alt is combination ESC.
16:44:28 <ais523> and ESC ESC x has the same meaning as ESC alt-X
16:44:41 <elliott_> CakeProphet: Because of terminals.
16:44:44 <ais523> actually, technically it's meta not alt, but most modern Emacsen translate
16:44:47 <elliott_> CakeProphet: ESC didn't used to mean "lol exit".
16:45:00 <ais523> CakeProphet: over telnet, you can't distinguish alt-letter from esc letter except by the timing
16:45:02 <elliott_> Alt+x is, VT[one hundred]-wise, just ESC, followed by alt.
16:45:04 <elliott_> Alt+x is, VT[one hundred]-wise, just ESC, followed by x.
16:45:14 <elliott_> That's an anachronism as far as Emacs goes.
16:45:56 <ais523> elliott_: I know, but it's relevant for /me/
16:46:00 <ais523> because I do a lot of roguelike development
16:46:19 <ais523> and telnet lacks the nuances to get anything other than the vt100 terminal codes, portably at least
16:46:36 <elliott_> I like how that means ESC actually takes some amount of time in vi(m).
16:46:43 <CakeProphet> I used to work on MUD servers back in the day (read: like 2 years ago)
16:46:45 <elliott_> Because it's waiting to see if you'll send cursor-control bytes.
16:46:55 <elliott_> (OK, some amount = imperceptable, but still.)
16:47:37 <ais523> CakeProphet: it isn't my server, but it's my NetHack fork: telnet acehack.rawrnix.com
16:47:52 <ais523> still a bit buggy atm, although it's in beta not alpha
16:47:59 <CakeProphet> ... -uses his MUD client instead of telnet-
16:48:05 <fizzie> Deewiant: After you've (in panic) managed to accidentally modify your file, the ":quit" tip isn't really enough. (Admittedly :q then says "add ! to override", but it doesn't tell where to "add" that, and if you then type plain ! you're likely to get real confused + accidentally run a shell command too.)
16:48:32 <elliott_> vi was created in an attempt to trick emacs users into removing all their files
16:49:17 <CakeProphet> is there anything in emacs that REQUIRES the use of a mouse?
16:49:32 <CakeProphet> I notice that the "open file" option has no key combination next to it.
16:49:51 <elliott_> Nobody uses the toolbar or menu.
16:50:11 <elliott_> (Now ais523 will say he does, just to prove me wrong, because he uses Emacs in the silliest way possible.)
16:50:38 <elliott_> CakeProphet: You can turn them off in your ~/.emacs.
16:50:53 <CakeProphet> ...I'll keep them while I'm getting the hang of things.
16:51:30 <fizzie> elliott_: I think I've used the menu, though not habitually.
16:51:32 <elliott_> You'll definitely want to put some things in your ~/.emacs soonish, since the defaults are insane in some ways.
16:51:49 <elliott_> For instance, even if you like to indent with four spaces, it'll replace every eight-space sequence with a tab.
16:52:27 <elliott_> Where . is space and = is a tab.
16:52:34 <elliott_> That is, . is a space and eight =s are a tab.
16:52:35 <ais523> elliott_: I use the menu via F10 sometimes, which pops it up in a separate buffer, when I can't remember what a command's called
16:52:45 <ais523> does that count as using the menu in the sense you were referring to?
16:53:10 <ais523> a GUI menu would just take up space, although it took me a while to figure out how to disable it
16:53:43 <CakeProphet> elliott_: yes I'd like to know how to change that behavior immediately. :P
16:54:51 <elliott_> CakeProphet: Do you want to indent with single tabs all the time but show them as some width other than eight, or do you want to indent exclusively with spaces?
16:55:11 <ais523> (custom-set-variables '(indent-tabs-mode nil)) goes to space-exclusive indentation
16:55:12 <elliott_> For the latter, it's (setq-default indent-tabs-mode nil).
16:55:17 <CakeProphet> ais523: see I wish MUDs could take advantage of telnet. But there's virtually no support for that kind of thing.
16:55:21 <elliott_> ais523: Useless Use of Custom Award
16:55:28 <elliott_> For the latter, it's (setq-default indent-tabs-mode nil) AND DEFINITELY NOT WHAT AIS JUST SAID.
16:55:31 <ais523> elliott_: not useless, as that's how I made the setting in the first place
16:55:41 <ais523> the former doesn't exist, as tabs always mean 8
16:56:21 <ais523> elliott_: the other opinion has ruined tabs for everyone
16:56:29 <ais523> as if they don't have a meaning, they're meaningless, and thus can't be used
16:56:39 <elliott_> ais523: Your opinion is not popular as has been established many times.
16:56:48 <elliott_> Stop being a pain by assuming everyone shares it, since you know they don't.
16:56:49 <ais523> elliott_: that doesn't mean it isn't /correct/
16:57:02 <elliott_> I am trying to help CakeProphet configure Emacs.
16:57:14 <elliott_> it's an even stupider flamewar than that
16:57:20 <elliott_> and the only one on ais523's side is ais523
16:57:23 <elliott_> also, he's the only one who ever brings it up
16:57:30 <ais523> elliott_: NetHack source agrees with me
16:57:38 <ais523> as does C-INTERCAL's before I started working on it
16:57:42 <elliott_> ais523: If you had just said "I don't think you should do that", fine. But stating it as a fact when you know many people in here disagree strongly _is trolling_.
16:57:53 <elliott_> I'm not going to reply to any further lines on the matter because that would be feeding the troll.
16:57:53 <Deewiant> As do vi's and emacs's defaults
16:57:55 <ais523> so that's every open source project I've made major contributions to
16:58:04 <ais523> Deewiant: vi's too? I didn't know that
16:58:08 <ais523> (I did know it wrt Emacs)
16:58:34 <CakeProphet> it's been my experience that in modern programming spaces-only is preferred.
16:58:45 <elliott_> Deewiant: vi does not indent with mixed tabs/spaces by default.
16:59:06 <Deewiant> Oh, it only does if you change shiftwidth
16:59:08 <elliott_> It shows tabs as shift-to-next-multiple-of-eight by default but that is not the same thing.
16:59:39 <CakeProphet> alright so which file does this setq go in?
16:59:49 <elliott_> CakeProphet: It's a setq-default, and ~/.emacs.
17:00:00 <ais523> elliott_: and what about this? I did some editing on Nibbles, and it uses two-space indentation, with the following at the top of the file: /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
17:00:17 <ais523> admittedly, that specification of the file format completely contradicts the actual /content/ of the file (which uses two-space indentation and never tabs)
17:00:18 <CakeProphet> elliott_: okay. I was just saying setq for brevity.
17:00:21 <elliott_> ais523: Please realise that I am not looking to change your opinion or get into a flamewar because I've done that enough times about this and have realised it's fucking pointless. I am just telling you that expressing it in the blunt way you do that ignores all differing opinions is trolling.
17:00:34 <elliott_> I am not going to respond to any defences of your opinion because that is not what this is about.
17:00:42 <ais523> elliott_: I'm trying to say that as far as I can tell, my opinion is the majority one among open-source code
17:00:49 <elliott_> ais523: It does not matter what your opinion is.
17:00:54 <elliott_> It matters how you're expressing it.
17:01:00 <elliott_> CakeProphet: Right; setq is something subtly different.
17:01:23 <ais523> CakeProphet: the difference is subtle enough that setq will generally normally work, but is nonetheless incorrect
17:01:37 <elliott_> Look at the bottom of the window.
17:04:15 <elliott_> .emacs.d is just zis directory, you know?
17:05:23 <Phantom_Hoover> Emacs predates your foolish standardised keyboard commands!
17:05:35 <ais523> you can basically use C-w as cut, M-w as copy, C-y as paste
17:05:43 <ais523> the commands have a bit more functionality than that, though
17:05:45 <elliott_> Except selection also works as copy.
17:05:55 <ais523> elliott_: selection with the mouse, that is
17:06:02 <ais523> with the keyboard, it doesn't
17:06:11 <elliott_> CakeProphet: If you're looking for something that acts like it was invented in the 00s or 90s, you're in the wrong place.
17:06:19 <elliott_> Emacs predates just about everything else you're using, get used to it :)
17:06:23 <ais523> it tends to be simplest to use the mouse rather than the keyboard for copying/pasting into and out of Emacs
17:06:41 <CakeProphet> is there any reason I shouldn't change that to C-c, C-x and C-v?
17:06:51 <elliott_> For one, that clashes with everything.
17:06:53 <ais523> C-c and C-x are both prefix commands
17:06:55 <elliott_> For two, they do not behave identically.
17:07:01 <elliott_> There is a cua-mode that uses delays to work out which you mean...
17:07:03 <ais523> C-v wouldn't be much of a clash, because it does the same thing as Page Down
17:07:08 <elliott_> And two, like I said: they do not act identically.
17:07:18 <elliott_> ais523: C-v is a lot more convenient to press than page down.
17:07:39 -!- monqy has joined.
17:07:46 <ais523> Emacs in general doesn't assume that you've got any keys on your keyboard but letters/numbers/punctuation, control, and esc
17:08:03 <ais523> although it can make use of them if you happen to have them
17:08:23 <ais523> technically speaking you can even get by without a return/enter key
17:08:53 <ais523> although return is normally more convenient than C-q C-j (C-j does almost but not quite the same thing)
17:09:14 <CakeProphet> hmm, interesting c-x c-arrow scrolls through buffers.
17:09:33 <ais523> yep, what it does is probably better than regular return
17:09:50 <ais523> but my fingers are trained to press tab-return instead, which is almost the same as control-j
17:11:04 <CakeProphet> but yeah I've got a pretty innate return-tab reflex.
17:11:04 <ais523> elliott_: nope, I fix the indentation just before moving onto the next line
17:11:10 <ais523> which comes to the same thing
17:11:28 <ais523> sometimes tab-return-tab or return-tab, but many major modes automatically do a tab after a return anyway
17:11:46 <elliott_> CakeProphet: except you only hit tab once, with emacs
17:13:08 -!- ralc has joined.
17:13:16 <elliott_> Hmm, what kind of editor has tab as "indent all the way" but doesn't automatically indent on enter?
17:13:47 <CakeProphet> er, gedit uses automatic indenting. So when I hit enter it's automatically at the same indent level as the last line
17:13:49 <ais523> elliott_: Kate doesn't by default, but it has text in its options dialog telling you how to set it up like that
17:13:53 <CakeProphet> and when I need to indent one more level I just press tab once...
17:13:56 <ais523> CakeProphet: that's not quite the same
17:14:02 <ais523> that's the minimum needed for an editor to be sane
17:14:09 <ais523> but it's not nearly as good as it could be
17:14:13 <elliott_> <CakeProphet> er, gedit uses automatic indenting. So when I hit enter it's automatically at the same indent level as the last line
17:14:18 <elliott_> Enter goes to column one in emacs.
17:14:23 <elliott_> Then Tab indents all the way to the current indentation level.
17:14:24 <ais523> I find Notepad unusable precisely because of missing that feature
17:14:30 <elliott_> Tab just reindents the current line.
17:14:31 <ais523> or any way to simulate it
17:14:39 -!- augur has joined.
17:14:40 <elliott_> So if you type enter, tab, }, then tab, it'd move it left.
17:14:46 <ais523> elliott_: not necessarily; Tab reindents the current line in modes where that can be sensibly calculated
17:15:00 <ais523> in modes like Python or Haskell where there's often more than one possibility that would make sense, it cycles
17:15:03 -!- Gregor has set topic: SIN PARTY SATURDAY | GAY ORGY ALL NIGHT LONG | GLUTTONOUS FEAST | PROBABLY MURDER IF THERE'S TIME | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
17:15:24 <ais523> and in text-mode or others which don't have systems like that, it just moves to the next plausible tab stop
17:15:29 <ais523> Gregor: I don't really like that topic
17:15:29 <CakeProphet> elliott_: is the tab before the } even necessary?
17:15:36 <ais523> it isn't interesting, and it isn't funny either
17:15:48 <Gregor> ais523: You're unaware of the rapture on the 21st? :P
17:15:50 <ais523> CakeProphet: as an option, defaulting to on, } contains an auto-reindent just like tab does
17:15:59 <ais523> Gregor: it still doesn't make it particularly funny
17:16:08 <elliott_> CakeProphet: But I usually use C-j instead of enter/tab all the time.
17:16:13 <CakeProphet> so tab is just a "magically tab the right way" button?
17:16:17 <Gregor> ais523: Pfff, have fun being raptured like a loser then.
17:16:23 <elliott_> Yes. Except if you're coding Python.
17:16:24 -!- ais523 has set topic: Topical discussion on the best way to reinforce ceilings | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
17:16:28 <ais523> Gregor: that's a much simpler method
17:16:34 <CakeProphet> elliott_: and then it does what I'm familiar with?
17:16:34 <elliott_> Then it cycles through all possible indentations -- oh, blah blah blah
17:16:38 <elliott_> CakeProphet: Just use C-j instead of enter.
17:16:44 <elliott_> It'll make life a lot easier for you.
17:17:15 <ais523> elliott_: my favourite example of Emacsisms is VHDL-mode, which starts a wizard whenever you type a keywords
17:17:23 <ais523> if you've ever used VHDL, you'll understand why
17:17:29 <CakeProphet> eh, it'll take quite a bit of time to get used to. I've already got like one hundred other things to get used to if I want to get comfortable with emacs.
17:17:42 <ralc> do you ever log off elliott_ ?
17:17:44 <ais523> Emacs is not a fast editor to learn
17:17:46 <elliott_> CakeProphet: Seriously, C-j is a lot easier to get used to than hitting tab all the time or whatever.
17:18:37 <Gregor> ralc: Dude, elliott_ is a bot.
17:19:03 <elliott_> CakeProphet: What "regular tab key"?
17:19:05 <ais523> I think all it does is listen to conversation by the actual elliott and relay back and forth
17:19:10 <elliott_> Emacs is an auto-indenting editor.
17:19:20 <ais523> CakeProphet: M-x tab-to-tab-stop, if you really happen to need it for whatever reason
17:19:22 <elliott_> The need to insert a literal tab character ever is... zero.
17:19:25 <ralc> Gregor, yeah i was starting to suspect that
17:19:31 <ais523> it's rare that you do, though
17:19:40 <ralc> every time i come to this channel elliott_ is going on about something
17:19:44 <ais523> or C-q C-h if you need a literal tab character for whatever reason
17:19:54 <ais523> (say in a string constant in Underload)
17:20:08 <elliott_> ralc: Yes, I do indeed talk a lot when others are talking.
17:20:14 <elliott_> Sometimes this is referred to as conversation.
17:20:20 <CakeProphet> what the hell, you scroll the help buffer with space and delete?
17:20:28 <elliott_> ais523: Or C-q <TAB> if you want a literal tab...
17:20:35 <elliott_> CakeProphet: No, you scroll the help help with space and delete.
17:20:41 <elliott_> This is because the help help is a freaky transient buffer thing.
17:20:46 <ralc> hehe it wasn't meant as a bad thing, you keep the channel active like a 500+ channel ^^
17:20:48 <elliott_> You're only going to need to do it once in your life, so :P
17:20:51 <ais523> elliott_: well, C-h is a literal tab, in theory the tab button might be bound to something else
17:21:16 <ais523> elliott_: I've done it more than once, I don't use C-h all that often so sometimes I need documentation for it
17:21:25 <elliott_> ralc: I'm actually like five people working in tandem, true story.
17:21:26 <CakeProphet> elliott_: perhaps you memorize things faster than me. I think I'll be referring to it a lot for a while.
17:21:33 <elliott_> God dammit you already responded to that message elliott three.
17:21:42 <elliott_> Shut the fuck up, elliott one.
17:21:49 <elliott_> Hey, I was here before you. I could change the password right now.
17:22:10 -!- elliott_ has left ("oAISJDflkhfgjf").
17:22:35 <ralc> whatever i have started, i'm so sorry :D
17:23:48 <CakeProphet> oh but hey, C-h C-m gives me information on how to order printed Emacs manuals. awesome!!
17:24:02 <ais523> C-h a and C-h c are probably the most useful in practice
17:24:35 -!- elliott_ has joined.
17:24:40 <elliott_> Elliott One is no longer with us.
17:24:46 <elliott_> Funeral service after the rapture.
17:24:50 <elliott_> Normal service will now continue.
17:26:14 <ais523> most buffer manipulation commands don't have a C- on their second key
17:26:57 <CakeProphet> oh nevermind, that's apparently not what I wanted. I want to get rid of the second pane that appeared after I used C-h ? and pressed some buttons that turned it into a non-transient thing....
17:28:48 <CakeProphet> staring at my emacs window stupidly seems like a better solution...
17:28:51 <ais523> CakeProphet: C-x 0 removes a pane, or C-x 1 removes all panes but the current one
17:29:06 <ais523> buffers and panes exist more or less independently, except that each pane only shows one buffer at a time
17:29:34 <ais523> generally, you just let buffers accumulate rather than actually killing them, but just show the ones you're using at the moment onscreen
17:29:39 <CakeProphet> is there like, a systematic way I can learn about all of these commands? Like, are they grouped in any kind of way in the help?
17:29:54 <ais523> there's a tutorial somewhere, but I'm not sure how useful it would be
17:30:00 <elliott_> <ais523> generally, you just let buffers accumulate rather than actually killing them, but just show the ones you're using at the moment onscreen
17:30:15 <elliott_> I think rarely killing buffers is idiosyncratic
17:30:45 <ais523> elliott_: well, you have garbage collection sweeps now and again, that's what M-x kill-some-buffers is for
17:30:53 <ais523> but I generally have one Emacs session per project
17:31:08 <ais523> so normally it's rare to kill buffers as irrelevant, unless they're things like compilation output
17:47:28 <CakeProphet> oh hey c-h c-h does the same thing as c-h ?
17:53:00 <elliott_> 01:24:09: <GregorR> How to make a tasty deep-fried treat: 1) Buy ingredients: Large vat of boiling oil, dry ice and a small Filipino boy. 2) Place Filipino boy in dry ice until frozen solid. 3) Shatter now-frozen Filipino boy into boiling oil. 4) Wait fifteen minutes, drain and enjoy!
17:56:13 -!- Vorpal has joined.
18:11:13 <Gregor> `addquote <GregorR> How to make a tasty deep-fried treat: 1) Buy ingredients: Large vat of boiling oil, dry ice and a small Filipino boy. 2) Place Filipino boy in dry ice until frozen solid. 3) Shatter now-frozen Filipino boy into boiling oil. 4) Wait fifteen minutes, drain and enjoy! <CakeProphet> I have the weirdest boner right now.
18:11:14 <HackEgo> 425) <GregorR> How to make a tasty deep-fried treat: 1) Buy ingredients: Large vat of boiling oil, dry ice and a small Filipino boy. 2) Place Filipino boy in dry ice until frozen solid. 3) Shatter now-frozen Filipino boy into boiling oil. 4) Wait fifteen minutes, drain and enjoy! <CakeProphet> I have the weirdest boner right now.
18:11:31 <Gregor> That's right, elliott_ gets no credit.
18:11:56 <elliott_> But you used two spaces to separate messages so I'll allow it.
18:17:13 <CakeProphet> my brain hurts. too much emacs documentation.
18:17:36 <CakeProphet> I'm already reading about mark rings, search rings, and registers.
18:17:56 <fizzie> They are "windows", not "panes". (And what you might call a "window" elsewhere is a "frame" instead.)
18:27:28 -!- ajf|offline has changed nick to ajf.
18:32:51 <elliott_> fizzie: you're a window in the ass
18:44:38 <Gregor> fizzie: What context is this?
18:44:56 <Gregor> In US vernacular, the whole contraption is a window, and it consists of a frame and one or more panes.
18:45:10 <Gregor> (More usually called "windowpanes")
18:45:33 <fizzie> Gregor: The context of Emacs.
18:45:53 <Gregor> I was thinking the real world ;P
18:46:52 <elliott_> In Finland, they look out of frames (composed of multiple windows).
18:49:37 <elliott_> Things that sad me: In Scheme, (min) is invalid, rather than equal to positive infinity.
18:49:41 <elliott_> (Similarly for (max) and negative infinity.)
18:55:24 <Sgeo> Blah, what's the thing to make ratios in Scheme? It isn't /
18:55:38 <Sgeo> Oh, maybe it's just Chicken Scheme
18:55:52 <Sgeo> Scheme, but Chicken Scheme
18:55:55 <elliott_> Have you changed languages AGAIN in the past day?
18:56:22 <ais523> elliott_: I change languages a lot, but I'm not looking for a One True Language because I doubt it exists
18:56:33 <ais523> I'm just looking to either use something appropriate for programming, or to have fun
18:56:57 <elliott_> ais523: There is a reason I am talking to Sgeo, and not you.
18:57:03 <elliott_> Obviously my statements don't apply to you.
18:57:19 <ais523> elliott_: it's more a case of, if your statements aren't generally applicable they're less convincing
18:57:26 <ais523> as it's a case of "why does that argument apply to me but not him"?
18:57:39 <fizzie> Sgeo: Chicken's "default" numeric tower is just machine-sized integers and floats; there's a (GMP-based) extension that gives it more "Scheme-like" numbers.
18:57:51 <ais523> but I suppose I shouldn't even try to be convinced by arguments that aren't aimed at me
18:57:55 <elliott_> ais523: Thankfully I'm not trying to convince anyone!
18:58:05 <elliott_> You see, the "SIGH" indicates that I am simply despairing.
18:58:15 <elliott_> I have long ago realised that convincing Sgeo of anything is impossible.
18:59:05 <elliott_> Hmm, Timwi appears to have given up the skin tack and is now just acting how to contact Graue, despite having already asked me and receiving a response...
18:59:16 <elliott_> ais523: also, he wants me to unprotect MediaWiki:Common.css
18:59:23 <elliott_> I can't do that, so I feel I should forward it on to you, so you can decide not to do it
18:59:30 <ais523> elliott_: don't worry, I can't do it either
18:59:50 <ais523> the page is protected directly at the PHP level
19:00:18 <ais523> because a mistake editing it can make the entire wiki unworkable
19:00:22 <Vorpal> heh I got "too many unprocessed floats" from tex
19:00:31 <Vorpal> never seen that before
19:00:37 <Vorpal> trivial to fix however, adding a clearpage
19:01:40 <ais523> hmm, what's the equivalent of "typesetting", but for layout on a page rather than fonts?
19:02:02 <elliott_> ais523: Typesetting involves layout too.
19:02:05 <ais523> I don't think that's a real word
19:02:07 <elliott_> But you mean what things like InDesign do, right?
19:02:12 <ais523> is there a word for just the layout portion?
19:02:19 <elliott_> It's... what you do when you're "desktop publishing".
19:02:20 <ais523> and things like TeX as opposed to Metafont
19:02:22 <elliott_> There's a word, but I've forgotten it.
19:02:33 <ais523> yep, I know, and I've forgotten it too
19:02:36 <Vorpal> elliott_, what if you do layout without using a computer
19:02:41 <elliott_> PageMakering. Perfect[exclamation mark]
19:02:51 <elliott_> Vorpal: Like I said, it's what you do when you're desktop publishing.
19:02:52 <Vorpal> what happened to PageMaker?
19:03:23 <Vorpal> elliott_, hm. But doesn't desktop publishing involve a computer
19:03:27 <elliott_> In 2004, Adobe announced that development for Adobe PageMaker had ceased but that Adobe would continue to sell and support it. InDesign was presented as the successor product.[11] Upgrades from PageMaker to InDesign 2.0 and (after the release of InDesign CS) a "PageMaker Plug-in Pack" were offered, containing PageMaker-specific features and help topics, complimentary Myriad Pro fonts and templates.
19:03:41 <elliott_> Vorpal: What I said is in no way implying that desktop publishing is the ONLY way to do that thing.
19:03:50 <Vorpal> elliott_, what about that other one, Quark Express or something?
19:03:59 <Vorpal> I don't think it was Quark, Qark maybe?
19:04:21 <Vorpal> elliott_, is that one dead?
19:04:22 <elliott_> ais523: I think it's just "layout [creation/etc.]"
19:04:30 <elliott_> Vorpal: http://www.google.com/search?client=ubuntu&channel=fs&q=quark+express&ie=utf-8&oe=utf-8
19:04:42 <pikhq_> Well, that was freakish and bizarre.
19:04:56 <pikhq_> I did not finish my linear algebra homework. *But*, I got an almost-perfect grade on it.
19:05:04 <fizzie> http://en.wikipedia.org/wiki/Page_layout seems to be talking about the thing, but doesn't seem to contain any particular word for it.
19:05:19 <elliott_> Let's call it "layoutificatifiing".
19:05:22 <pikhq_> I'm not going to complain.
19:05:29 <fizzie> ("deals with the arrangement and style treatment of elements (content) on a page".)
19:06:03 <Vorpal> huh the weird blueish kind-of-category thing in http://en.wikipedia.org/wiki/QuarkXPress lists LyX as DTP
19:06:14 <Vorpal> Scribus yes, but not really Lyx
19:06:33 <Vorpal> lyx is just a GUI for working with latex
19:06:40 <pikhq_> Gregor: Oh my dear God, someone actually outdid JSMIPS.
19:06:51 <Vorpal> elliott_, yes but LaTeX is not listed there
19:06:53 <elliott_> pikhq_: welcome to earlier today
19:06:55 <pikhq_> Gregor: If it weren't Fabrice Bellard, I'd imagine you'd be horribly depressed.
19:06:58 <Vorpal> elliott_, nor is texmacs
19:07:05 <pikhq_> elliott_: Yes, yes, I had a final. Shaddup.
19:07:05 <elliott_> Vorpal: So LaTeX is not really standard DTP.
19:07:23 <Vorpal> elliott_, LyX is not really about layout, it is more about semantics too
19:07:23 <elliott_> As you can't really do much layout at all apart from separately...
19:07:31 <elliott_> Vorpal: Sure, but you can style it more directly than TeXmacs.
19:07:38 <fizzie> LyX officially is WYSIWYM.
19:07:41 <Vorpal> elliott_, well yeah I can insert raw latex
19:07:43 <elliott_> Anyway TeXmacs is less popular, so.
19:08:04 <elliott_> fizzie: Translation: "What you see isn't what you get because our rendering sucks" :-)
19:08:15 <elliott_> TeXmacs is actually quite close to WYSIWYG in a literal sense.
19:08:17 <fizzie> elliott_: No, it's the paradigm!
19:08:30 <Vorpal> elliott_, I mean, the only layout this document I'm writing atm has is a clearpage, and only because latex bugged out on too many unprocessed floats halfway
19:08:35 <elliott_> ais523: " I’m pretty sure ais523 would get tired of that very quickly. I’ll try e-mailing Graue. Thanks! — Timwi 19:08, 17 May 2011 (UTC)"
19:08:49 <elliott_> ais523: OK, why on earth would Timwi want to edit the stylesheet on a regular basis?
19:08:51 <Vorpal> <elliott_> fizzie: Translation: "What you see isn't what you get because our rendering sucks" :-) <-- actually that's a feature
19:08:57 <Vorpal> and I quite like it that way
19:09:06 <Vorpal> elliott_, I get a font that works better for the screen there
19:09:16 <Vorpal> and another one that works better for print when I generate the pdf
19:09:23 <Vorpal> so I quite like it this way
19:09:53 <pikhq_> I CAN HAS FINISHED SEMESTER
19:10:16 <Vorpal> pikhq_, err in English semester is the opposite of holidays right?
19:10:32 <Vorpal> because in Swedish semester = long holiday (like summer break).
19:10:40 <ais523> University terms are divided into semesters
19:10:41 <Vorpal> so the English sense always confuse me
19:10:46 <ais523> but yes, in that semesters and holidays don't coexist
19:11:01 <Vorpal> ais523, oh and it can also be that you go on a vacation - "åka på semester"
19:11:08 <pikhq_> Vorpal: In most contexts, a "semester" is a division of the school year.
19:11:17 <ais523> (to add to the confusion, a semester can persist across parts of multiple terms, e.g. at Birmingham University, a semester is one term, plus one week of another term)
19:11:23 <Vorpal> pikhq_, in Sweden it means either long summer break or vacation
19:12:00 <ais523> WYSIWYG is impossible nowadays, because not all printers are identical
19:12:11 <pikhq_> Vorpal: And a long summer break is precisely what a semester isn't in English.
19:12:18 <ais523> and it's even worse if designing for screen
19:12:18 <Vorpal> ais523, oh right we have "läsperioder" (study periods, though literally "readingperiods"), 4 per year. One ends one week after xmas holidays end yes
19:12:23 <fizzie> Vorpal: The "desktop publishing software" template-portal-whatever-those-are-called is a bit weird anyway; they list "PDF-XChange", which is primarily just a PDF viewer, with some kludgy support for changing/adding text and splanting in new images on top of existing content.
19:12:34 <pikhq_> ais523: A reasonable approximation is *doable*, though.
19:12:38 <ais523> Vorpal: that sounds much like UK "semester", though
19:12:48 <ais523> on screen, it's a really bad idea
19:12:55 <Vorpal> <pikhq_> Vorpal: And a long summer break is precisely what a semester isn't in English. <-- exactly, that utterly confuses me
19:13:01 <elliott_> ais523: PNGs are pretty consistent
19:13:02 <ais523> as everyone who does that ends up with something that doesn't reflow and normally has a horizontal scrollbar
19:13:06 <fizzie> (You can't even delete/move/insert pages without buying the PRO version.)
19:13:11 <elliott_> ais523: that only applies to HTML
19:13:14 <pikhq_> On screen, either accept that you're displaying an imitation of paper on screen, or give up.
19:13:29 <ais523> elliott_: PNGs aren't exactly designing for screen
19:13:41 <ais523> and if they don't have the same res as the screen, they may well need a horizontal scrollbar too
19:13:45 <Vorpal> fizzie, is "splanting" a real word?
19:13:45 <ais523> reflowing is generally just /better/
19:14:03 <Vorpal> <elliott_> ais523: PNGs are pretty consistent <-- not without an ICC profile
19:14:17 <pikhq_> Vorpal: He did specify "modulo gamma".
19:14:18 <CakeProphet> it seems like most of the C- keys in emacs are kind of.. archaic.
19:14:43 <pikhq_> CakeProphet: Well, emacs is a fairly archaic editor.
19:14:56 <Vorpal> pikhq_, ICC is more than just plain gamma value. It contains primaries and so on too
19:15:07 <CakeProphet> and then a lot of the useful stuff is tucked away in C-x
19:15:38 <ais523> the C- keys are mostly stuff you use all the time if you don't have arrow or navigation keys on your keyboards
19:15:56 <ais523> although, say, C-a is much easier to press than Home on a typical keyboard, with the result that I use it in all sorts of programs nowadays
19:16:11 <Vorpal> CakeProphet, they didn't use to I guess
19:16:20 <ais523> I do, but they're tiny and stuck round the edges of my laptop, as there isn't really room for them
19:16:23 <pikhq_> CakeProphet: Those existing is a relatively modern thing.
19:16:25 <Vorpal> CakeProphet, anyway you can customise key bindings fairly easily in your ~/.emacs
19:16:25 <ais523> and a pain to find in the dark
19:16:26 <CakeProphet> that's what I mean, like... why not change that instead of keeping it that way?
19:16:29 -!- Mannerisk has quit (Read error: Connection reset by peer).
19:16:36 <pikhq_> vi was *also* designed with that in mind.
19:17:12 <ais523> vi and Emacs aren't too different; the major difference is that vi Esc and i map to Emacs hold ctrl and release ctrl
19:17:20 <ais523> and ofc all the other keybindings are different too
19:17:24 <ais523> but that's the major difference in principle
19:17:45 <pikhq_> ais523: Also, Emacs is pretty universally extensible.
19:18:00 <Vorpal> ais523, also vi isn't really scriptable. Sure vim is, but vi is not vim
19:18:07 <pikhq_> Even TECO Emacs was extensible.
19:18:18 <ais523> pikhq_: sometimes that's a bad thing; I was once given a CGI script written in elisp
19:18:31 <pikhq_> ais523: It's both an advantage and a disadvantage.
19:18:35 <Sgeo> When using emacs on a terminal over ssh, I use C-e instead of End because end doesn't work
19:18:38 <ais523> in the end, I rewrote it as a standalone program in Perl, given that it had no reason to be written in elisp and no reason to be a CGI script
19:18:53 <Vorpal> Sgeo, uh. Presumably your terminal emulator locally sucks then
19:18:59 <Vorpal> I used end key in various places over ssh
19:19:03 <ais523> worse still, it required manual intervention to run properly
19:19:09 <pikhq_> Vorpal: Either that or the remote end's termcap sucks.
19:19:11 <ais523> as in, run the script, change the script, run the script, change the script, etc
19:19:43 <ais523> DJGPP Emacs seems to parse End as meaning M-> rather than C-e
19:19:47 <ais523> as in, end of document, not end of line
19:19:52 <Vorpal> CakeProphet, isn't that the normal way to use it?
19:19:57 <ais523> CakeProphet: you can, emacs -nw
19:20:18 <ais523> or it loads like that by default if it doesn't have access to anything that would let it draw a window, as is commonly the case over telnet or ssh without -X
19:20:22 -!- elliott_ has quit (Ping timeout: 252 seconds).
19:20:36 <Vorpal> CakeProphet, the X support is fairly recent. Not more than a few decades old
19:20:51 <ais523> `addquote <Vorpal> CakeProphet, the X support is fairly recent. Not more than a few decades old
19:20:53 <HackEgo> 426) <Vorpal> CakeProphet, the X support is fairly recent. Not more than a few decades old
19:21:05 <pikhq_> CakeProphet: Emacs is 35 years old.
19:21:07 <Vorpal> ais523, okay yeah that was slightly silly
19:21:19 <Vorpal> pikhq_, ooh anniversary
19:21:22 <ais523> pikhq_: Emacs generally, or GNU Emacs?
19:21:28 <Deewiant> Given that X11 is only a little more than two decades old...
19:21:36 <fizzie> ais523: No, it loads like that if it doesn't have access to anything that would let it draw a graphical frame. When in Emacs, speak as the... eumuchs do?
19:21:38 <Vorpal> Deewiant, yes, newfangled stuff
19:21:50 <CakeProphet> I think I interpret "recent" to be a completely different thing in the context of computing.
19:21:54 <ais523> fizzie: but you're not /in/ Emacs, as you're loading it
19:21:59 <pikhq_> ais523: That's counting from the first functioning TECO Emacs.
19:22:03 <Deewiant> Vorpal: Sure, but saying "X support is fairly recent" should imply it's recent compared to X :-P
19:22:07 <fizzie> ais523: But it's Emacs that's doing the loading-of-itself.
19:22:29 <CakeProphet> but hey, now that I know I can use emacs in telnet, I no longer have an excuse to use pico. :)
19:22:31 <pikhq_> *GNU* Emacs is 26 years old.
19:22:47 <ais523> hmm, I'm surprised that it was gnuised after only 9 years
19:22:48 <Vorpal> pikhq_, so older than X?
19:22:55 <ais523> although it was pretty much the first thing GNU did
19:23:24 <CakeProphet> so do you guys have any recommendations for my .emacs?
19:23:40 <fizzie> I recommend a file, as opposed to, say, a pipe.
19:23:43 <pikhq_> Vorpal: The X Windowing System is older by a couple of years.
19:23:47 <Vorpal> interesting thought experiment. Figure out what will happen to various organisations when their leading figure retires.
19:23:58 <Vorpal> For example: What will happen to GNU when RMS retires or dies.
19:23:58 <pikhq_> Vorpal: X11 is younger by a year.
19:24:14 <ais523> CakeProphet: (load-file "/home/ais523/esoteric/intercal/ick-0.27/etc/intercal.el") (load-file "/home/ais523/esoteric/esolangs.el") (esolangs-recognize-extensions)
19:24:18 <Vorpal> I think it will survive probably. Apple without Steve Jobs is less certain
19:24:28 <Vorpal> Linux without Linus Torvalds? Chaos or?
19:24:38 <Vorpal> who would have the final word and so on
19:24:41 <pikhq_> GNU without RMS? Probably not a hell of a lot different.
19:24:44 <ais523> CakeProphet: note that you'll either have to create a user account for me on your computer, or else change the paths
19:24:59 <fizzie> You can have a directory in /home without an account.
19:25:07 <Vorpal> pikhq_, the other two examples would be more interesting
19:25:12 <CakeProphet> ais523: do you know where I can get those files?
19:25:18 <ais523> more seriously, (global-font-lock-mode 1) is a nice option, as is (setq visible-bell t)
19:25:28 <ais523> CakeProphet: they were on pastebin.ca, which is down now
19:25:34 <ais523> intercal.el should be easy enough to find, at least
19:25:57 <Vorpal> pikhq_, so what about Apple without Jobs or Linux without Torvals?
19:26:26 <ais523> http://gitorious.org/intercal/intercal/blobs/raw/6a0c3bba084cf42972f43dcd2f92b83f3e81c3ae/intercal.el
19:26:36 <pikhq_> Linux without Torvalds would probably devolve unto the maintainer of one of the major subsystems.
19:26:47 <pikhq_> Apple without Jobs would do about as well as Apple did without Jobs in the 90s.
19:26:55 <pikhq_> That is to say, "be totally fucked".
19:26:55 <Vorpal> pikhq_, you mean badly?
19:27:14 <Vorpal> pikhq_, further ones: Perl without Larry Wall, Python without Guido van Rossum (spelling?), OpenBSD without Theo de Radt (spelling?)
19:27:18 <fizzie> Heh: "Version 13, the first public release, was made on March 20, 1985. The first widely distributed version of GNU Emacs was 15.34, which appeared later in 1985. Versions 2 to 12 never existed. Earlier versions of GNU Emacs had been numbered "1.x.x", but sometime after version 1.12 the decision was made to drop the "1", as it was thought the major number would never change."
19:27:18 <CakeProphet> ais523: more interested in the esolangs one, actually. but I'll add this one too.
19:27:32 <pikhq_> Vorpal: Fucked, fucked, fucked, IMO.
19:27:36 <ais523> the esolangs one is a little unfinished, let me sprunge it
19:28:11 <Vorpal> pikhq_, freebsd has a board of trustees or something like that right?
19:28:21 <pikhq_> Yeah, FreeBSD doesn't do the benevolent dictator bit.
19:28:30 <Vorpal> pikhq_, what about NetBSD?
19:28:35 <Vorpal> wait, it is fucked already
19:28:42 <pikhq_> Linux is one of the few projects with a benevolent dictator with a lot of structure *besides* that, making filling that gap pretty easy.
19:29:07 <CakeProphet> I see Perl existing with Larry Wall in its current state, since it's a pretty useful language. However, new incarnations of Perl may be fucked... since that's basically what is happening to Perl 6.
19:29:14 <pikhq_> NetBSD has a Board of Directors.
19:29:51 <Vorpal> what other projects risk dying?
19:30:22 <Vorpal> hm... I think they would survive quite the same
19:30:39 <Vorpal> what about Ubuntu without Mark Shuttleworth (sp?)
19:30:54 <Vorpal> though in that case it is lack of money
19:30:59 <CakeProphet> What are you talking about? Jimmy Wales makes every single edit to Wikipedia. He even pretends to be multiple users on talk pages.
19:31:02 <pikhq_> Ubuntu without Mark Shuttleworth would change drastically. He bankrolls the whole thing.
19:31:37 <CakeProphet> ...so, Ubuntu users, do you guys actually use the new Unity crap?
19:31:53 <Vorpal> CakeProphet, I use 10.04. Long term support.
19:31:55 <ais523> CakeProphet: I haven't upgraded to a version that has it
19:32:05 <pikhq_> Slackware would literally stop without Volkerding.
19:32:18 <Vorpal> pikhq_, interesting family name
19:32:18 <pikhq_> He isn't the benevolent dictator, he is the sole developer.
19:32:29 <CakeProphet> the latest release has this horrid new Mac-like interface. Kill it when you encounter it.
19:32:32 <Vorpal> pikhq_, right, I guess no one else would step up
19:33:19 <pikhq_> Though if someone actually *did* step up, it'd keep going just fine. Slackware's set up such that it only really takes a single person to manage it.
19:33:46 <Vorpal> pikhq_, that must be a smart setup, how does it work?
19:34:19 <fizzie> How about Mozilla without the lizard?
19:34:42 <Vorpal> that is a big jump in version number
19:35:06 <fizzie> (I presume they have some sort of Allosaurus-style setup at Mozilla.)
19:35:11 <Vorpal> LyX 1.6.10 released. (May 9, 2011)
19:35:11 <Vorpal> LyX 2.0.0 released. (May 8, 2011)
19:35:23 <Vorpal> take stable support seriously
19:35:48 <Vorpal> kind of like distros in a bit
19:36:02 -!- cheater79 has quit (Ping timeout: 240 seconds).
19:36:19 <pikhq_> It's actually just a very, very simple UNIXy setup. Each package has a shell script that builds it and creates a .txz. All packages are unpatched.
19:36:39 <pikhq_> Most of the time, to make a new release he just needs to bump versions, build, test, release.
19:36:51 <Vorpal> pikhq_, no patches anywhere? Really hm
19:36:59 <pikhq_> Vorpal: Sorry, not "all".
19:37:16 <Vorpal> pikhq_, some stuff will simply need patching
19:37:28 <Vorpal> but yeah I remember slackware didn't patch icons and so on
19:37:32 <Vorpal> nor does arch of course
19:38:03 <Vorpal> http://wiki.lyx.org/LyX/NewInLyX20/#advsearch <-- this looks quite interesting
19:38:11 <pikhq_> It's not so much "clever" as it is "supremely lazy".
19:38:29 <Vorpal> serching with regexp and formatting and what not
19:38:40 <Vorpal> ooh and FINALLY spell check on the fly
19:39:52 <fizzie> Based on the new-feature overview, LyX 2.0 doesn't sound *that* much like a radical change. (But of course they have to bump up the major version number at some point, and certainly there's quite a large number of them small-ish changes.)
19:40:35 <Vorpal> fizzie, I think there are internal architectural changes too
19:41:25 <ais523> CakeProphet: http://sprunge.us/AQhd is esolangs.el (usable but still unfinished)
19:41:44 <Vorpal> fizzie, of course since iirc xetex doesn't support microtyping yet I think I'll stick with pdflatex for the time being
19:47:56 -!- elliott_ has joined.
19:48:04 <elliott_> <ais523> although, say, C-a is much easier to press than Home on a typical keyboard, with the result that I use it in all sorts of programs nowadays
19:48:23 <elliott_> ais523: ok, I'm now convinced that Timwi doesn't know what minor edits are for
19:48:25 <elliott_> # (diff) (hist) . . m Talk:Main Page; 19:08 . . (+170) . . Timwi (Talk | contribs)
19:48:49 <elliott_> CakeProphet: what did he answer?
19:48:59 <ais523> quintopia: pretty much no chord uses both hands for me
19:49:12 <ais523> I type pretty much any single chord one-handed unless it's physically impossible
19:49:32 <ais523> using both hands only for the purpose of typing faster as each can cover a different area of the keyboard
19:49:49 <elliott_> how can you type C-j like that?
19:49:52 <coppro> I have gotten into the habit of using specific keys
19:50:05 <quintopia> ais523: i need my chords to be reasonable on both a netbook keyboard and a regular keyboard, so two-handed chords are frequently requiring of less contortion
19:50:10 <coppro> left control, right shift, left alt (although my right alt is actually an alt-gr, so that's necessarily)
19:50:33 <elliott_> this thing doesn't even have right control
19:51:05 <coppro> quintopia: my right alt is technically induces dead keys rather than being compose
19:51:08 <elliott_> 19:16:26: <CakeProphet> that's what I mean, like... why not change that instead of keeping it that way?
19:51:08 <coppro> but it's the same principle
19:51:11 <elliott_> and break people's muscle memory?
19:51:13 <CakeProphet> I don't type normally so I can't do right-handed combinations very well. I have to use both hands for those.
19:51:27 <coppro> Are you a hunt-and-pecker?
19:51:27 <elliott_> you're _meant_ to use both hands to chord
19:51:44 <elliott_> 19:17:12: <ais523> vi and Emacs aren't too different; the major difference is that vi Esc and i map to Emacs hold ctrl and release ctrl
19:51:48 <CakeProphet> elliott_: they're breaking muscle memory either way, because I have tons of muscle memory from every other text editor I've encountered that doesn't apply to emacs.
19:51:50 <elliott_> except that, using vi like that is a misuse
19:52:03 <elliott_> CakeProphet: You're not an Emacs user (before now), so they have no responsibility to you as far as muscle memory goes.
19:52:08 <ais523> elliott_: actually, no it isn't
19:52:12 <elliott_> Annoying your users is generally a bad idea.
19:52:13 <CakeProphet> coppro: not really. I just memorize how to type words, pretty much
19:52:18 <elliott_> ais523: Yes it is, in the sense that it's inefficient and vi users will laugh at you.
19:52:21 <ais523> you don't go into insert mode when you're moving the cursor around, etc
19:52:29 <ais523> just like you don't generally let go of control when you're moving the cursor around
19:52:31 <CakeProphet> I type each word a partiulcar way. I mainly stick to my index and middle finger while typing but I keep pretty good typing speeds.
19:53:59 <elliott_> 19:19:41: <CakeProphet> Sgeo: you can use emacs in a terminal?
19:54:00 <elliott_> 19:19:52: <Vorpal> CakeProphet, isn't that the normal way to use it?
19:54:04 <CakeProphet> actually re-typing partiulcar requires a little more thought and slows down my typing speed.
19:54:12 <elliott_> (it's a perfectly accepted way but by no means the most common)
19:54:18 <elliott_> (at least only counting local use)
19:55:24 * elliott_ reads Vorpal seriously wonder whether Apple will survive without Steve Jobs.
19:55:39 <elliott_> Yes, a tremendously profitable and popular company with an immense brand identity will collapse because its CEO dies.
19:55:52 <elliott_> The shareholders will just say "well, guess that's over then" go home.
19:56:24 <elliott_> 19:25:28: <ais523> CakeProphet: they were on pastebin.ca, which is down now
19:56:27 <ais523> elliott_: it'll probably lose a huge chunk of its stock price if Jobs leave, not because the company is necessarily doomed but because shareholders are ridiculous
19:56:30 <ais523> elliott_: it's back up again?
19:56:35 * CakeProphet reads elliott comment and dissect on everything that was said recently and not-so-recently.
19:57:14 <elliott_> 19:27:14: <Vorpal> pikhq_, further ones: Perl without Larry Wall, Python without Guido van Rossum (spelling?), OpenBSD without Theo de Radt (spelling?)
19:57:21 <ais523> the other slepp.ca sites seem down, though
19:57:25 <Vorpal> http://wiki.lyx.org/uploads/LyX/NewInLyX20/themes.png <-- a lot of the icons in the new themes don't really work well
19:57:29 <elliott_> Python will survive, it's too boring to die
19:57:37 <elliott_> they'll just add more bearocracy
19:57:54 <elliott_> OpenBSD might die, but OpenSSH won't
19:58:02 <elliott_> Perl won't die because... corporations, dude
19:58:11 <elliott_> ActiveState aren't going to let Perl di
19:58:15 <elliott_> because they make money off it
19:58:27 <Vorpal> elliott_, you know what happened to Apple during the 90s
19:58:28 <elliott_> Same goes for every company with software written in Perl, just indirectly
19:58:55 <elliott_> Vorpal: It wasn't so much that Jobs was a genius as whoeveritwas was an idiot.
20:00:11 <elliott_> 19:28:42: <pikhq_> Linux is one of the few projects with a benevolent dictator with a lot of structure *besides* that, making filling that gap pretty easy.
20:00:17 <elliott_> Linux development has a lot of structure?
20:00:36 <ais523> I think part of the reason git was invented was so that its development process could work
20:00:50 <ais523> it has a lot of people with their own repos accepting certain sorts of patches, which Linus pulls from and does the final approval
20:01:01 <elliott_> Yes, but that's hardly structure.
20:01:06 <elliott_> That's more lack of structure.
20:01:17 <elliott_> A bunch of people do things and then Linus (the dictator) decides to pull them in.
20:01:28 <ais523> elliott_: compare it to, say, the NetHack devteam, or C-INTERCAL's development
20:01:30 <elliott_> And also, some people get flamed less and flame more on the mailing list, because they've been there a long time.
20:01:33 <ais523> Linus isn't pulling patches from the general public
20:01:38 <Vorpal> ais523, the latter is one person?
20:01:42 <ais523> he's pulling it from other people who pull patches from other people
20:01:46 <ais523> Vorpal: technically two, nowadays
20:01:48 <elliott_> Vorpal: It's one person and one idiot. :P
20:01:53 <elliott_> ais523: No, but he's not pulling patches from a preset group of people.
20:02:04 <elliott_> ais523: What you're describing to me is a /lack/ of structure.
20:02:06 <ais523> and those are pulling from preset groups too
20:02:12 <elliott_> ais523: It's not /dev/random, but there's no hierarchy.
20:02:20 <elliott_> It's all basically the whim of Linus in the end.
20:02:33 <elliott_> I don't see how Linux would survive with its current structure if Linus died or stepped down.
20:02:37 <Vorpal> elliott_, an amazingly good whim so far
20:02:53 <elliott_> Either someone else would step up -- very unlikely, it's a lot of work etc.
20:03:24 <elliott_> (an organisation that exists to give Torvalds a paycheck)
20:03:28 <Vorpal> elliott_, Allan Cox or someone like that could step up.
20:03:51 <pikhq_> elliott_: The subsystem maintainers actually have a large portion of the workload. I suspect that one of them would reasonably step up, and it'd only be a question of which one.
20:04:05 <elliott_> Vorpal: I dunno about that -- Wikipedia'd for THE UPPER HAND IN THE ARGUMENT -- "On 28 July 2009, Cox walked away from the TTY layer, which he still maintained, after receiving criticism from Torvalds.[2][3]"
20:04:10 <elliott_> Doesn't seem like a good dictator ;)
20:04:12 <CakeProphet> elliott_: a sentient AI created by Torvalds could step up.
20:04:18 <ais523> pikhq_: elliott_ doesn't believe there are subsystem maintainers, even though I've tried to tell him at least three times
20:04:22 <Vorpal> elliott_, well okay, Andrew Morton then
20:04:26 <elliott_> ais523: I know there are subsystem maintainers.
20:04:30 <elliott_> (And no, I don't see you telling me that.)
20:04:35 <pikhq_> And, yeah, it has hardly any *formal* structure. Just a lot of informal structure.
20:04:36 <ais523> then why do you keep ignoring me when I say there are?
20:04:42 <elliott_> ais523: Because you haven't been saying that.
20:04:55 <ais523> I said Linus pulls from a set group of people
20:04:57 <elliott_> (You might /think/ you've been saying that.)
20:05:07 <elliott_> ais523: Yep, but that's way too vague to count.
20:05:15 <elliott_> If you were trying to make that point you should have just made it directly...
20:05:24 <CakeProphet> ...I'd say sentient AI is the best hope for the survival of future Linux.
20:05:48 <Vorpal> CakeProphet, what's next? Torvalds brain in a jar?
20:06:05 <elliott_> let's get a spam filter to accept or reject linux patches
20:06:09 <elliott_> based on all of linus' decisions
20:06:34 <Vorpal> elliott_, I kind of doubt that would work well, but it would be an interesting experiment
20:06:38 <CakeProphet> spam filter? What about the Nigerian developers?
20:06:40 <Vorpal> to see how well it coincides
20:06:49 <pikhq_> In essence, Linus is not a major developer on Linux. He's the guy merging in git branches. This structure is not really too hard to maintain with the existence of other people who would be trusted in that same position.
20:06:54 <Vorpal> CakeProphet, he meant bayesian filter
20:06:54 <pikhq_> It's just a matter of selecting one.
20:07:53 <Vorpal> elliott_, also linux wouldn't fail. You said too many depend on Perl. Well even more so for linux
20:07:59 <elliott_> Vorpal: I never said it would fail.
20:08:09 <ais523> elliott_: would you really want Bayes in charge of Linux development, given how it acted in Agora?
20:08:12 <elliott_> I said that it doesn't have the kind of structure that Linus could just disappear and it'd all tick fine with not much of a change.
20:08:21 <elliott_> ais523: Are you suggesting that Bayes acted anything other than wonderfully?
20:08:23 <Vorpal> ais523, ooh tell me about this
20:08:30 <elliott_> Vorpal: Me and comex wrote a bot to play Agora.
20:08:35 <elliott_> It used SpamBayes to vote on proposals.
20:08:40 <elliott_> It played the AAA with brute-force.
20:08:51 <elliott_> Agoran Agricultural Association.
20:08:57 <Vorpal> elliott_, also spambayes is "meh"
20:09:00 <elliott_> It played optimally, which saved me the effort of working out how to play myself.
20:09:05 <elliott_> Vorpal: Who cares, it's Python.
20:09:08 <elliott_> That's the important thing. :p
20:09:21 <Vorpal> elliott_, how can you brute force AAA?
20:09:25 <ais523> Vorpal: they had to take the author names off all the data they fed to it
20:09:33 <ais523> because otherwise it just rejected everything by comex
20:09:35 <elliott_> ais523: Yes; otherwise it did too well.
20:09:49 <elliott_> Vorpal: AAA is gone now and I never understood it, so.
20:10:07 <elliott_> Vorpal: Oh, it also made its own proposals.
20:10:11 <elliott_> Vorpal: With a Markov chain of accepted proposals.
20:10:22 <elliott_> I... don't think one ever got adopted.
20:10:34 -!- NihilistDandy has quit (Quit: leaving).
20:10:39 <elliott_> god bayes was awesome, makes me wish partnerships still existed
20:10:48 <Vorpal> elliott_, anyway how did you decide which ones were ham and which ones were spam when training it
20:10:56 -!- NihilistDandy has joined.
20:11:03 <pikhq_> Partnerships were pretty awesome.
20:11:04 <elliott_> Vorpal: which ones passed and which ones failed
20:11:17 <ais523> Vorpal: http://agora-notary.wikidot.com/the-agoran-agricultural-association
20:11:20 <Vorpal> elliott_, do you gain something from voting for passing ones?
20:11:58 <elliott_> Vorpal: Bayes was three years ago.
20:12:06 <elliott_> A lot has changed; your question has no concrete answer.
20:12:13 <Vorpal> "If this contract is a contest, the SoA is its Contestmaster." <-- wat
20:12:24 <elliott_> Vorpal: Contracts had to be voted in as contests.
20:12:24 <ais523> elliott_: I disliked it too
20:12:27 <Vorpal> elliott_, did you gain*
20:12:32 <ais523> I only tolerated it because of a scam I'd been planning for months
20:13:05 <elliott_> ais523: hmm, you started using it after eso-std.org went bust and my report formatter output thusly went offline, right?
20:13:10 <elliott_> It was because someone else got elected
20:13:30 <elliott_> http://nomic.bob-space.com/agoralog.aspx?contract=Notary
20:13:40 <elliott_> good to know the Gigantic Single Point of Failure is still working
20:13:42 <ais523> bob-space is still up?
20:13:45 <elliott_> sure would suck if we still used it
20:13:54 <elliott_> wow, is that server-side VBScript?
20:14:17 <Vorpal> During the voting period of a Proposal, a Farmer CAN once Harvest
20:14:17 <Vorpal> the ID number of that proposal. As soon as possible after doing so,
20:14:17 <Vorpal> the SoA CAN and SHALL award that Farmer 2 y-axis points if the proposal was Ordinary,
20:14:17 <Vorpal> or 4 x-axis points if it was Democratic.
20:14:22 <elliott_> "The Daily Funny is your daily (or weekly, or monthly, depending on how often I update it) dose of humor. I post jokes, funny pictures, hilarious videos, and links to humorous things on the web here. Some of it you may have heard/seen before, but I'm sure you'll find something here to chuckle at. One other note: I try to keep all the humor on the Daily Funny family friendly - no dirty jokes here."
20:14:24 <ais523> and I think it is, C# doesn't use "sub" as a keyword like that
20:14:34 <Vorpal> elliott_, okay you know what, learning dwarffortress is easier :P
20:14:43 <elliott_> top two titles: "Converting the Heathen Bear" "Biblical History of the Internet"
20:14:44 <Vorpal> elliott_, this stuff is pretty nonsense
20:14:59 <elliott_> Vorpal: Ordinary proposals let you vote on them multiple times
20:15:06 <elliott_> points used to be a complex number
20:15:13 <elliott_> and CAN is RFC-jargon imported by Agora
20:15:40 <Vorpal> well yes the RFC stuff I know
20:16:08 <Vorpal> elliott_, actually it is MUST/SHOULD/MAY (plus inverses), I don't seem to remember any CAN
20:16:30 <elliott_> ais523: remember when we told everyone that relying on bobthj's site was a terrible idea?
20:16:41 <Vorpal> elliott_, so you use SHALL/?/CAN?
20:16:50 <elliott_> also, when the entire history of the PBA turned out to be wrong every several weeks because of bugs in my script?
20:16:57 <ais523> elliott_: counterargument: if we were still using it, BobTHJ might have made it work
20:17:05 <elliott_> ais523: did it ever truly work?
20:17:12 <elliott_> anyway, I wasn't saying that because it's down
20:17:43 <elliott_> Vorpal: http://agora.qoid.us/current_flr.html#rule-2152
20:17:55 <Vorpal> elliott_, why were points complex? They should be quaternions
20:18:30 <elliott_> anyway, I went to effort finding that link, click it :P
20:18:33 <Vorpal> elliott_, what are they now? Vectors?
20:18:45 <fizzie> According to RFC2119, there's {MUST,REQUIRED,SHALL}, {MUST NOT,SHALL NOT}, {SHOULD,RECOMMENDED}, {SHOULD NOT,NOT RECOMMENDED} and {MAY,OPTIONAL}, where the grouped things mean the same.
20:19:00 <elliott_> Vorpal: no it isn't, you can have a "DEPRECATED action that you MAY but CANNOT do"
20:19:10 <ais523> Vorpal: I don't get why everyone found the AAA so complex, anyway; it's quite simple by nomic standards
20:19:12 <elliott_> which means that, you should feel bad about doing it, and doing it violates no rules, but you simply can't
20:19:22 <ais523> and yet many people didn't put in the effort to read it
20:19:27 <elliott_> ais523: I concluded it was trivial since aaa.py was only about thirty lines
20:19:59 <Vorpal> <elliott_> Vorpal: no it isn't, you can have a "DEPRECATED action that you MAY but CANNOT do" <-- err
20:20:02 <Vorpal> elliott_, I meant the score
20:20:15 <elliott_> Vorpal: well we recently went on an appeal spree after the entire game imploded.
20:20:20 <Vorpal> elliott_, anyway how can you have "DEPRECATED action that you MAY but CANNOT do"
20:20:38 <elliott_> (after ais523 deregistered in a huff because he had to read the Vladivostok Telephone Directory lest he violate the rules)
20:20:57 <elliott_> note that none of them contradict
20:21:14 <Vorpal> <elliott_> (after ais523 deregistered in a huff because he had to read the Vladivostok Telephone Directory lest he violate the rules) <--- ....
20:21:34 <Vorpal> <elliott_> Vorpal: well we recently went on an appeal spree after the entire game imploded. <-- it imploded?
20:21:36 <ais523> Vorpal: it's like... say if you, in the next three seconds, called my mother fat to her face
20:21:43 <ais523> it's not illegal to do that, but it's socially discouraged
20:21:50 <ais523> and yet it's impossible, because you don't live within three seconds of my mother
20:22:04 <Vorpal> ais523, interesting example
20:22:08 <elliott_> <Vorpal> <elliott_> (after ais523 deregistered in a huff because he had to read the Vladivostok Telephone Directory lest he violate the rules) <--- ....
20:22:17 <Vorpal> elliott_, the weirdness :P
20:22:22 <elliott_> `addquote <ais523> Vorpal: it's like... say if you, in the next three seconds, called my mother fat to her face <ais523> it's not illegal to do that, but it's socially discouraged <ais523> and yet it's impossible, because you don't live within three seconds of my mother <Vorpal> ais523, ah... <Vorpal> ais523, interesting example <Vorpal> ais523, is she fat?
20:22:22 <ais523> elliott_: actually it was a ....
20:22:24 <HackEgo> 427) <ais523> Vorpal: it's like... say if you, in the next three seconds, called my mother fat to her face <ais523> it's not illegal to do that, but it's socially discouraged <ais523> and yet it's impossible, because you don't live within three seconds of my mother <Vorpal> ais523, ah... <Vorpal> ais523, interesting example
20:22:32 <elliott_> ais523: no, it was a ..., that formed an entire sentence by itself
20:22:48 <Vorpal> elliott_, I only asked because he mentioned it
20:22:57 <ais523> elliott_: you could remove the repeated <nick> bits
20:23:39 <fizzie> Or replace with <> and assume everyone else assumes it automatically uses the previous nick.
20:24:19 <ais523> fizzie: is that a Perlism?
20:24:32 <HackEgo> 427) <ais523> Vorpal: it's like... say if you, in the next three seconds, called my mother fat to her face <ais523> it's not illegal to do that, but it's socially discouraged <ais523> and yet it's impossible, because you don't live within three seconds of my mother <Vorpal> ais523, ah... <Vorpal> ais523, interesting example
20:24:40 <Vorpal> elliott_, you failed to remove it
20:24:55 <fizzie> ais523: It might be slightly Perlish, since Perl does have the default filehandle <> thing.
20:25:18 <Vorpal> fizzie, you made me think of short-tags in html instead of perl
20:25:27 <ais523> fizzie: I was thinking more of // for repeat last regex
20:25:42 <Vorpal> so we all thought of different things
20:25:59 <Vorpal> `run find . -iname '*quotes*'
20:26:05 <Vorpal> `run find . -iname '*quote*'
20:26:19 <Vorpal> elliott_, I would sed the db if I knew where it was
20:26:30 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
20:26:45 <ais523> why not just revert to before the quote was added?
20:31:10 <elliott_> fizzie: Wanna figure out why delquote is broken? :P
20:31:48 <fizzie> No, but someone might make a `unquote command that does "sed -ie '$d' quotes", that might be useful for "okay, forget the last one" sort of operations.
20:31:59 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/delquote
20:32:00 <elliott_> But but but it's only a few lines.
20:32:13 <elliott_> That unquote thing is a good idea, but it still bugs me that delquote is broken; it worked just recently.
20:32:15 <CakeProphet> ew, perl mode underlines arrays and hashes.
20:32:44 <elliott_> You can make it default for .pl files in your ~/.emacs, but I'm too lazy to remember how.
20:33:16 <CakeProphet> hmmm, the background color is better than the underline I guess.
20:33:27 <CakeProphet> is it just a different theme or is it completely different?
20:33:40 <Vorpal> a mode would be completely different
20:33:48 <elliott_> It's different in that perl-mode sucks and cperl-mode doesn't.
20:33:49 <fizzie> Perl-in-Emacs was a topic not many days ago; both perl-mode and cperl-mode have their own shortcomings.
20:34:07 <elliott_> fizzie: well a perfect perl mode is impossible :)
20:34:18 <CakeProphet> well, in general Perl is a difficult language to accomodate.
20:34:31 <Vorpal> CakeProphet, in general it can't be done
20:34:48 <Vorpal> CakeProphet, perl has TC parsing
20:35:01 <elliott_> Perl is a difficult language to accommodate and stomach.
20:35:15 <CakeProphet> yes, and most syntax highlighting uses things like regex.
20:35:23 <CakeProphet> elliott_: I disagree. I think Perl is a wonderful language.
20:35:34 <elliott_> It's a wonderful, terrible language :)
20:35:42 <elliott_> (I don't hate it for stupid reasons like "it's line noise".)
20:35:52 <elliott_> (Actually I find it kind of adorable, somehow.)
20:36:17 <CakeProphet> I'm surprised that it exists really. It is fairly atypical.
20:36:18 <Vorpal> I personally think it has more syntax than I like
20:36:21 <fizzie> "-- like an incontinent kitten. Endearing, but you don't want it on top of you."
20:36:34 <Vorpal> haskell has a bit too much syntax as well, but is otherwise awesome
20:37:11 <Vorpal> CakeProphet, I think lisp is about the right amount of syntax yes, though a bit more than lisp is fine
20:37:55 <elliott_> Haskell has very little syntax really.
20:38:00 <elliott_> unless you count things like "class x where ..."
20:38:09 <elliott_> Most of it is operators, which are not really "part of the syntax".
20:38:15 <CakeProphet> yes I actually think of Haskell as having fairly sparse syntax.
20:38:44 <CakeProphet> man... these colors hurt my eyes a little bit.
20:38:45 <Vorpal> elliott_, indeed, the mass of operators while not syntax is a problem. Remembering all is difficult. Function names may be better for stuff that is less common
20:39:04 <elliott_> Vorpal: Names /are/ used for less common operations.
20:39:13 <elliott_> Vorpal: You just don't know what's common, because you're not a Haskell programmer.
20:39:14 <Vorpal> elliott_, well even more so than currently
20:39:18 <elliott_> All the arrow, applicative, ... operations are common.
20:39:32 <elliott_> With alphabetical names, they would be much less useful as far as concision goes.
20:39:36 <CakeProphet> why not just highlight @ and % variables the same way as $... I mean, they already have sigils, that's enough to distinguish them.
20:39:42 <elliott_> (Concision makes things more readable because you don't have to skip over irrelveant names.)
20:39:44 <Vorpal> elliott_, I used <* and so on a few times. That is useful indeed
20:39:56 <elliott_> Vorpal: Well, then you're just imagining this huge mass of operators :)
20:40:18 <CakeProphet> Perl has a huge mass of operators, and they're also awesome.
20:40:21 <elliott_> Sgeo: Hey, you know why your esolangs in Racket suck?
20:40:25 <Vorpal> elliott_, I meant like the "get element in Data.Array"
20:40:28 <elliott_> CakeProphet: Perl [six] has even nicer operators
20:40:30 <Sgeo> elliott_, why?
20:40:39 <CakeProphet> maybe less operators than Haskell though, simply because Haskell has a limitless number.
20:40:41 * Sgeo failed to notice the "your"
20:40:44 <elliott_> Sgeo: Because they aren't Racket #langs.
20:41:01 <elliott_> Vorpal: Let's see. C: x[n]. Fortran: some syntax I don't know.
20:41:12 <elliott_> Every language ever: yes, getting an element out of an array is common enough to warrant an operator.
20:41:22 <elliott_> Besides, the operator is an exclamation mark, right?
20:41:25 <Vorpal> elliott_, sure, but in a functional language arrays aren't that central
20:41:30 <elliott_> That's the standard "element of container" operation.
20:41:37 <Vorpal> elliott_, isn't it <: or something?
20:41:44 <Vorpal> meh forgot what it was
20:41:56 <Vorpal> elliott_, oh that one had :< I think
20:42:11 <elliott_> :< is the constructor of ViewL.
20:42:16 <elliott_> It's like that so pattern matching is prettier.
20:42:24 <fizzie> elliott_: ARRAY(INDEX) for Fortran.
20:42:24 <Vorpal> elliott_, and come on, in lisp you don't have special syntax to get elements out of arrays
20:42:52 <Vorpal> elliott_, Not True Lips then, but okay
20:43:00 <CakeProphet> Lisp doesn't count as a normal programming language, by the way.
20:43:12 <elliott_> Vorpal: But really, that's a stupid argument, because by that standard you're only allowed to have syntax for:
20:43:21 <elliott_> - OH YEAH, tons of special forms.
20:43:33 <elliott_> You just don't see it because it's all made out of parens and names.
20:43:34 <Vorpal> elliott_, I think lisp should cut down on special forms yes
20:43:40 <fizzie> Is there a particular reason in @{$href->{$aref->[1]}}[3] to not go to the final end with arrow notation, as in $href->{$aref->[1]}->[3]?
20:43:43 <elliott_> So basically... you want... sexp lambda calculus?
20:43:55 <elliott_> Congratulations you have invented the least useful language ever.
20:44:04 <elliott_> Syntax is notation; not wanting notation is insanity.
20:44:06 <Vorpal> elliott_, macros let you define your own syntax yes
20:44:13 <Vorpal> but the standard library shouldn't have it
20:44:33 <elliott_> OK I'm stepping out of this conversation because it's stupid.
20:45:32 <pikhq_> Vorpal: Believe you me, Haskell has very, very sparse syntax. It just doesn't seem like it to you.
20:46:06 <pikhq_> Y'know all those operators you see? That's not really syntax. A Haskell operator is a function that's called infix. That's all.
20:46:35 <CakeProphet> fizzie: a better one would have used something like push. push @{href->{$aref->[1]}}, $data
20:46:58 <CakeProphet> unless push can work on refs, I haven't tried that actually.
20:47:07 <pikhq_> Vorpal: You seem to act like it isn't. :P
20:47:27 <CakeProphet> oh what do you know, push can take a scalar reference
20:47:37 <CakeProphet> time to clean up some code I've been working on.
20:48:30 <CakeProphet> elliott_: could you give me a rundown of what makes cperl-mode awesome and perl-mode not?
20:48:53 <fizzie> No it can't; at least not in my Perl. perl -e '$a = [1, 2]; push $a, 3;' => Type of arg 1 to push must be array (not scalar dereference) at -e line 1, near "3;"
20:49:05 <elliott_> CakeProphet: Nope, ask someone else :P
20:49:31 <CakeProphet> elliott_: haha, okay. Oh, and it's (defalias 'perl-mode 'cperl-mode)
20:50:13 <elliott_> CakeProphet: Oh, well, that's one way to do it.
20:50:17 <elliott_> That stops you using regular perl-mode though.
20:50:21 <fizzie> cperl-mode is awesome because it handles the fun(<<WOOT); \n quoted stuff \n more quoted stuff \n WOOT case.
20:50:46 <fizzie> (It's not awesome when it breaks, since at least for me it seems to break more messily than perl-mode.)
20:51:27 <fizzie> Also if you turn "cperl-hairy" on it's really confusing, full of electric things.
20:51:45 <CakeProphet> gedit breaks horribly on perl. I had to fix up a few regexes so that my code didn't vomit horrible colors at me.
20:52:23 <Vorpal> fizzie, oh that sort of electric
20:52:30 <Vorpal> fizzie, as in electric mode?
20:52:30 <fizzie> Yes, the Emacs sort of electric.
20:52:38 <Vorpal> fizzie, that is *always* confusing
20:53:25 <fizzie> cperl-hairy makes at least keywords, parens and some braces be all weird.
20:53:34 <fizzie> It auto-adds a space after typing "${" and so on.
20:53:59 <NihilistDandy> http://en.wikipedia.org/wiki/Charity_(programming_language)
20:55:51 <Vorpal> cool language, I didn't know of it
20:55:57 <Vorpal> total languages are always fun
20:56:28 <CakeProphet> So what are the typical commands you guys use to navigate between buffers. I've so far only discover C-x <arrow-key>
20:58:24 -!- TOGoS has joined.
20:58:32 <fizzie> "C-x b RET" is often enough if you just want to flip between two buffers repeatedly. (I'm not sure if there's a key that optimizes that particular operation even further.)
20:59:51 <NihilistDandy> elliott_: I didn't know of it. I thought it might be germane for this channel :D
21:01:21 <elliott_> NihilistDandy: It's an old research language, what do you expect :)
21:02:04 <CakeProphet> cperl-modes highlighting is kind of inconsistent feeling.
21:05:02 <fizzie> That's because it has one face for variable definitions, one for arrays and one for hashes; but none for plain scalar variables. In "my $info" it's not $info in particular it's highlighting, it's the variable definition it is.
21:06:55 <CakeProphet> ...lame, having the scalar variables highlighted would make things easier to read.
21:07:14 <elliott_> <CakeProphet> why not just highlight @ and % variables the same way as $... I mean, they already have sigils, that's enough to distinguish them.
21:09:43 <CakeProphet> elliott_: yes, the sigil is enough to distinguish between different types of variables, but it doesn't help with large lines of code consisting of only scalars.. everything is the same color.
21:09:52 <fizzie> CakeProphet: There seems to be a configuration key for it: setting cperl-highlight-variables-indiscriminately to non-nil will (probably) cause it to highlight all $foos with the variable-definition face.
21:11:09 <fizzie> (I haven't tried; just searched for "scalar" in some old cperl-mode.el; it's one of the defcustom'd vars; I guess you could look through the cperl group in the customization browser for further configuration options in general.)
21:11:37 <CakeProphet> how does you reload .emacs without a restart?
21:12:24 <elliott_> CakeProphet: try C-x C-e on the end of a line you want to execute
21:12:37 <elliott_> that's more useful than rerunning the whole file, especially as it might not be idempotent
21:12:57 <ais523> elliott_: or in lisp interaction mode, C-j
21:13:00 <pikhq_> The actual maximum bandwidth of cable Internet is 6762.4 Mbit/s in the US.
21:13:27 <elliott_> ais523: who has .emacs in lisp interaction mode?
21:13:48 <pikhq_> Yes, just over the cable network you can get nearly 7 gigabits per second.
21:13:52 <CakeProphet> ...definitely not someone who just started picking up emacs today.
21:14:14 <ais523> elliott_: oh, I restart Emacs to check changes for .emacs
21:14:21 <elliott_> CakeProphet: i take it you haven't done anything with the [asterisk]scratch[asterisk] buffer yet >:)
21:14:31 <ais523> due to it otherwise being easy to introduce bugs where .emacs runs things in the wrong order
21:14:38 <ais523> that tends not to show up if you test it "online"
21:14:44 * elliott_ considers setting the text colour for [asterisk]scratch[asterisk] to white
21:15:00 <pikhq_> If only they didn't keep that nasty "TV" on the line.
21:16:48 <CakeProphet> fizzie: nah that didn't variable didn't seem to change anything. I'll check out customize
21:17:13 <pikhq_> This rate could be doubled by using better modulation.
21:18:19 <elliott_> CakeProphet: How did you set it?
21:18:27 <elliott_> CakeProphet: You realise you have to re-enable the mode for it to take effect.
21:18:58 <CakeProphet> yeah I re-enable it. However, I just read the description of that variable and it says that it won't take any effect after the first time cperl-mode is loaded.
21:20:47 <CakeProphet> awww yeah, scalar variables are now a dull pasty brown.
21:22:09 <Phantom_Hoover> "(Raising e to an imaginary power produces rotation around a unit circle in the complex plane, according to Euler’s formula. How? Magic, as far as I can tell. But apparently it’s true)."
21:23:03 <Vorpal> Phantom_Hoover, hey not all programmers are stupid
21:23:14 <pikhq_> For comparison, the maximum rate of DSL is about 200 Mbit/s. An order of magnitude smaller than cable, if the cable companies didn't hate the Internet.
21:23:14 <quintopia> that's a good example of something unintuitive to the uninitiated
21:23:28 <Vorpal> elliott_, come on, I understand why Euler's formulas work :P
21:23:44 <elliott_> "I decided that Fourier must have been speaking to aliens, because if you gave me all the time and paper in the world, I would not have been able to come up with that."
21:23:48 <elliott_> Possibly, because you are stupid.
21:23:55 <elliott_> Possibly, because Fourier was a genius.
21:24:17 <elliott_> OK Google tells me Fourier didn't actually write the transform.
21:24:21 * pikhq_ would love to see a cable company turn off its cable TV service and start offering gigabit Internet.
21:24:22 <elliott_> Obviously it was space aliens.
21:24:59 <Phantom_Hoover> Didn't Fourier set the stage for the huge flurry over the basis of calculus?
21:25:32 <Vorpal> Phantom_Hoover, sounds like a genius right there then
21:27:13 <CakeProphet> oh hey, one day in and Emacs isn't too bad. Perhaps in a few more days it'll even be not a pain in the ass to do anything.
21:27:24 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:28:13 <Vorpal> CakeProphet, try M-x set-input<tab> RET TeX RET
21:28:27 <Vorpal> CakeProphet, then write some tex notation into the buffer
21:28:43 <Vorpal> CakeProphet, it will convert a subset to unicode
21:30:51 <elliott_> CakeProphet: M-x psychoanalyze-pinhead
21:30:57 <elliott_> (Press a character to stop it.)
21:31:29 <elliott_> (Works in both terminals and graphically[exclamation mark])
21:32:03 <Vorpal> elliott_, when will you get your keyboard fixed?
21:32:18 -!- cheater79 has joined.
21:34:46 <CakeProphet> Yow! Legally-imposed CULTURE-reduction is CABBAGE-BRAINED!
21:34:47 <Phantom_Hoover> elliott_, psychoanalyze-pinhead kind of sucks with the stripped-down yow.
21:37:00 <CakeProphet> elliott_: hanoi seems to have stopped working when I gave it a numeric argument of
21:37:08 <elliott_> CakeProphet: tried tetris yet?
21:37:16 <elliott_> it even has fancy pieces in the graphical version
21:47:31 <CakeProphet> You: Does it please you to believe that it pleases me to believe that?
21:47:33 <CakeProphet> Eliza: Oh, i to believe that it pleases you to believe that.
21:50:11 <ais523> can anyone here think of a word meaning "susceptibility to invasion by zombies"?
21:51:36 <elliott_> ais523: I'd tell you, but you'd have to make me a developer.
21:51:48 <elliott_> Although a trial developer would be OK too
21:55:07 <Phantom_Hoover> http://tvtropes.org/pmwiki/pmwiki.php/Headscratchers/Math
21:55:19 <Phantom_Hoover> Who wants to play "how long until the first facepalm!"
21:55:28 -!- ajf has changed nick to ajf|offline.
21:56:01 <elliott_> "Why do people in an Honors Advanced Precalc class still need to ask "When are we going to use this in life?" If you've opted to take the class, and gotten to this level, you should know that unless you get a career in pure math or teaching, you're not going to use it. Just deal with it."
21:56:15 <Phantom_Hoover> "Math is used in everything. Well, almost everything. Economists use some very advanced math including fields like differential equations, probability and statistics, dynamical systems, and even some more pure stuff like linear algebra and analysis."
21:56:30 <Phantom_Hoover> Is it a bad sign that I don't really think of many of those things as "advanced"?
21:57:12 <pikhq_> Having finished linear algebra and differential equations, I'd agree with you that they're not too advanced...
21:57:48 <pikhq_> Diff. eq just follows naturally from calculus, and linear algebra reasonably could be part of the standard secondary educational curriculum.
21:58:01 <Phantom_Hoover> I kind of skipped over both because numbers are kind of ugly.
21:58:20 <elliott_> an opinion you share with oklofok
21:58:31 <Phantom_Hoover> BTW, here's about 20 pages of natter discussing the problem and why this is such a common question."
21:58:58 <Phantom_Hoover> http://pastebin.com/6AK4DJbU is the pages of arguments.
21:59:03 <elliott_> I like the implication in those questions that it's, like, physically impossible.
21:59:29 <pikhq_> Phantom_Hoover: Linear algebra would be a much better course without numbers.
21:59:44 <elliott_> "It's possible to ''multiply'' by 0 (with the result always being 0), and dividing is the exact opposite of multiplication, so why isn't any number/0 always 0?"
22:00:02 <elliott_> "However, it's impossible to break up the group represented by the dividend into 0 groups, so any number divided by 0 will always be undefined."
22:00:06 <elliott_> You just answered your own question.
22:00:11 <elliott_> "However, multiplying by 0 means you're combining 0 groups of a specific number of items...which is equally impossible."
22:00:18 <elliott_> Phantom_Hoover: I'm crying irl
22:00:42 <pikhq_> I thought that division by 0 was left undefined simply because defining it makes you lose a number of algebraic properties that are rather nice.
22:00:52 <Phantom_Hoover> "Why is algebra and algorithms considered or anything involving advanced mathematics required classes if the career I want is to become a cartoonist?"
22:01:20 <Phantom_Hoover> The way mathematics is taught completely removes all the benefits of learning it.
22:02:10 <pikhq_> Phantom_Hoover: Calculation should be considered completely seperate from math.
22:02:19 <elliott_> pikhq_: There is a perfectly good name for it: arithmetic.
22:03:01 -!- oerjan has joined.
22:03:10 <Phantom_Hoover> Memorising rules for differentiation is just as useless.
22:03:12 <elliott_> I was simply responding to pikhq_.
22:03:17 <pikhq_> elliott_: "Arithmetic" kinda gives you the notion that it's merely addition, subtraction, multiplication, division, and perhaps some square roots.
22:03:28 <Phantom_Hoover> At least arithmetic can actually be used without understanding.
22:03:54 <Phantom_Hoover> If you're actually going to *need* calculus, you probably need to understand the underlying reasoning as well.
22:06:01 <pikhq_> Phantom_Hoover: Quite true. Memorisation of things is pretty pointless.
22:06:22 <Phantom_Hoover> I say this as someone who has an extremely shaky understanding of some basic calculus.
22:06:40 <Phantom_Hoover> Although this is because I was learning it at the same time as GCSE for an exam later in the year.
22:06:54 <pikhq_> Literally the *only* time I will ever have a need to memorise, say, derivatives or integrals, is for a test.
22:06:59 <elliott_> blind people can't do calculus
22:07:01 <CakeProphet> Ok I am 1.87 and I am 32 years old and I am married.
22:07:07 <CakeProphet> ...I wonder if cleverbot will cyber with me.
22:07:17 <pikhq_> Every other time, *I can look shit up*.
22:07:22 <Phantom_Hoover> "Seriously, guys. Who the hell came up with the term 'integer'? What is wrong with calling them 'numbers'? If they're supposed to be called 'integers', why the hell do we even use the word 'number' anyway? Let's be honest here: when I first learned the term 'integer' back in middle school, that was the moment when mathematics Jumped The Shark for me. I've never trusted it since."
22:07:29 <elliott_> Phantom_Hoover: ahoifahhaahahahahaahaha
22:07:41 <pikhq_> If it's actually relevant to what I'm doing a lot, then I'll probably memorise it anyways.
22:07:56 <elliott_> Phantom_Hoover: "mathematics Jumped the Shark for me. I've never trusted it since." marks it as a joke.
22:08:17 <elliott_> Phantom_Hoover: I mean, it is /possible/ someone that idiotic exists, but would they really be able to form decent sentences and make references to tropes?
22:08:36 <elliott_> Phantom_Hoover: they can't form sentences.
22:08:55 <elliott_> Evidence to the contrary NOTWITHSTANDING.
22:09:05 <elliott_> Oh god don't. The last time you did that ten thousand infants died.
22:09:28 -!- TeruFSX has quit (Read error: Operation timed out).
22:10:44 <pikhq_> Phantom_Hoover: Arguably, he is. His writings are the very first evidence we have of anything resembling Christianity.
22:11:37 <pikhq_> I find it amusing that Paul never once quotes Jesus.
22:11:56 <Phantom_Hoover> First, read Homestuck. Then, read homestucksecrets. Go into fit of manic depression. Cure with kittens. Then, you shall understand truly that reference.
22:11:59 <pikhq_> Or, indeed, gives any suggestion that Jesus was a flesh-and-blood human being.
22:14:11 <Phantom_Hoover> Alternately, start reading Homestuck, then stop halfway through, so I can control both you and elliott_ with the threat of spoilers.
22:15:23 <Sgeo> READ IT READ IT READ IT
22:15:25 -!- TeruFSX has joined.
22:15:42 -!- FireFly has quit (Quit: swatted to death).
22:16:02 -!- ais523 has quit (Remote host closed the connection).
22:17:21 <oerjan> WHO WAS DEAD THE WHOLE TIME
22:18:46 <elliott_> If "the imprisoning god" gives away a shitload, I'm going to tear your fucking head off and punch it into a sausage-making machine.
22:19:00 <elliott_> But I'll keep a backup of your mind first so I can torture it for the rest of eternity.
22:19:46 <elliott_> And this, kids, is why Phantom_Hoover is hereby banned from joking about spoilers.
22:19:59 <oerjan> ...isn't that basically the background of I Have No Mouth But I Must Scream. or something.
22:20:35 <elliott_> Phantom_Hoover: Too busy keeping friend on his toes by re-reading Homestuck in sync with him.
22:20:46 <elliott_> He is so unreliable you have no idea.
22:21:08 <elliott_> oerjan: ARE YOU GOING TO SPOIL EVERY MAJOR WORK OF FICTION FROM THE PAST CENTURY FOR ME ;D
22:21:23 <oerjan> elliott_: WELL WE WERE ON A RUN HERE...
22:21:27 <elliott_> There should be a greasemonkey extension that hides all sections named "Plot" or "Plot summary" from Wikipedia articles.
22:21:36 <elliott_> (Especially since they tend to be badly-written anyway.)
22:22:24 <elliott_> The Culture is one of the few things penetrating the depth of my Fiction Backlog.
22:25:32 <elliott_> Also, it would be hilarious if they didn't and all the remaining books were just "Nothing happened because the Culture no longer exists." repeated ad infinitum
22:27:19 <Phantom_Hoover> It was more "I want to play with the lesser species!" "No me!" "No me!"
22:28:15 <elliott_> Shut up before you spoil something.
22:28:37 <elliott_> I need to obtain every Culture book in hardback before I read them, dammit, and that will be a pain.
22:28:59 <oerjan> hm plot idea for a sci-fi novel: the protagonist is from a fanatical religious world that recently won a war against a goody-two-shoes liberal one. the great reveal near the end is that they actually lost but the liberals put them in a virtual simulation where they think they won instead
22:29:00 <Phantom_Hoover> The war is barely relevant to the Culture series anyway.
22:29:33 <oerjan> <- now spoiling books before they are written
22:29:59 <elliott_> oerjan: That's really more of a novella type idea, isn't it
22:30:03 <elliott_> I mean it's not that much of a conclusion
22:30:15 <elliott_> "And then they won except, ha ha, not really. The end."
22:30:37 -!- pikhq has joined.
22:30:44 * oerjan has never written either
22:31:04 -!- Patashu has joined.
22:31:55 <monqy> how popular are books intentionally spoiled from the beginning
22:31:59 <monqy> do they even exist
22:32:12 <quintopia> monqy: "John dies in the end" has sold pretty well
22:32:27 <elliott_> My assumption with that book is that John dying is not, in fact, the real climax :)
22:32:37 <elliott_> Phantom_Hoover: Two star-crossed lovers take their lives because they're idiots.
22:32:42 <elliott_> And now let me tell you how in excruciating detial.
22:32:52 <quintopia> elliott_: my assumption is that it's litfic, and therefore has no real climax
22:32:52 <monqy> oh I remember that one
22:33:06 <monqy> everyone else was an idiot too right
22:33:18 <elliott_> quintopia: Is "comedic horror" generally considered to be able to be literary fiction?
22:33:19 <Phantom_Hoover> People seem not to realise that Melville didn't actually write Moby Dick with the assumption that the reader would know how it ends.
22:33:27 <elliott_> (Not making a judgement on whether it should be, but it seems rather out of the scope.)
22:33:46 <quintopia> i knew a girl writing a litfic about pokemon
22:33:51 <elliott_> monqy: Yes, apart from the Priest guy, who as I recall told everyone else they were stupid.
22:33:58 <monqy> oh and there's that one where everyone commits suicide because someone didn't get a burial, right?
22:34:12 <oerjan> but did he write it with the assumption that anyone would read all of it through?
22:34:12 -!- pikhq_ has quit (Ping timeout: 240 seconds).
22:34:21 <elliott_> quintopia: But comedic litfic has two conflicting aims -- to make you laugh and to, uhh, be literary fiction.
22:34:41 <quintopia> elliott_: i never said it was easy
22:34:43 <elliott_> I should read House of Leaves sometime. also, Infinite Jest. Prediction: I will never do either.
22:34:56 -!- Tritonio has joined.
22:37:20 <Phantom_Hoover> "This Troper's boyfriend has been incredulously good at math since he was in elementary school,"
22:39:57 -!- augur has quit (Remote host closed the connection).
22:40:03 <Phantom_Hoover> "Gets bored" is probably the wrong phrase; it's more that I keep trying to do a depth-first traversal of the internet.
22:40:19 <Phantom_Hoover> http://simple.wikipedia.org/wiki/Banach%E2%80%93Tarski_paradox
22:40:38 <Phantom_Hoover> "Mathematics has shown that any object can be reassembled into any other object."
22:40:58 <monqy> This short article about science can be made longer. You can help Wikipedia by adding to it.
22:42:09 <monqy> I like how everything is simpler
22:43:06 <monqy> I'm not quite sure about some of these things
22:43:13 <monqy> "Change" instead of "Edit", really?
22:43:19 <monqy> "Give" instead of "Donate"
22:43:45 <Phantom_Hoover> They basically took every Latinate word and replaced it with an Anglo-Saxon one.
22:44:04 <monqy> this makes it simpler
22:44:28 <Phantom_Hoover> I like the way they simplify to the point of wrongness.
22:44:51 <Phantom_Hoover> RANDOM THOUGHT: Bismuth as shielding around a hard drive.
22:45:07 <Gregor> Yeah, it's not that special.
22:45:25 <monqy> http://simple.wikipedia.org/wiki/G%C3%B6del%27s_incompleteness_theorems
22:45:32 <oerjan> Phantom_Hoover: how uncleftish
22:46:05 <monqy> I find simple english harder to follow than regular english
22:46:53 -!- TOGoS has left.
22:46:57 <elliott_> I want complex english wikipedia
22:47:22 <elliott_> Phantom_Hoover: bismuth isn't funny
22:47:46 <monqy> no it is serious bismuth
22:48:19 <elliott_> Phantom_Hoover: bismuth is NOT funny
22:48:57 <monqy> http://simple.wikipedia.org/wiki/Felisburgo
22:49:18 <monqy> straight and to the point
22:49:30 <monqy> http://simple.wikipedia.org/wiki/Mount_Vernon,_Illinois
22:49:54 <monqy> hitting "Show any page" is bringing up a lot of these
22:50:52 <elliott_> http://simple.wikipedia.org/wiki/Counting
22:50:55 <elliott_> Counting is something people do to find out how many things there are of any kind.
22:51:02 <elliott_> it's abstract to the point of unreadability
22:51:17 <monqy> counting is something people do to count stuff
22:51:39 <monqy> The person counting usually starts with the number one, and gives this number to the first thing. The next thing is given the number two. Then, the next thing is given the number three. If there is another thing, it gets the number four. More things get more numbers. Each thing gets its own number in this way. The last number given to the last thing counted shows how many things there are.
22:52:13 <elliott_> i'm imagining a guy handing out numbers to little cute kittens or something
22:52:20 <monqy> oh jeez it has examples
22:52:27 <monqy> There are the letters A, Q, L, and S on a piece of paper. How many letters are there on the piece of paper?
22:52:30 <monqy> Tom gives numbers to the letters. The letter A gets the number 1. The letter Q gets the number 2. The letter L gets the number 3. The letter S gets the number 4. There are no more letters to count. There are 4 letters on the piece of paper.
22:52:32 <elliott_> Guitar Hero: Metallica is a rhythm game that was made by Neversoft with other help from Activision. It is part of the Guitar Hero franchise. The game was released in North America on March 29, 2009 for the Xbox 360, PlayStation 3 and the Wii and was released on April 14, 2009 in North America for the PlayStation 2. In the game Guitar Hero: World Tour, there is a trailer for the game with the song "Master of Puppets" playing in the background. "It also s
22:52:32 <elliott_> ays Ride the Lightning 2009."[needs proof]
22:52:55 <elliott_> The word art is used to describe some activities or creations of human beings that have importance to the human mind, regarding an attraction to the human senses. Therefore, art is made when a human expresses himself or herself.
22:53:16 <monqy> http://simple.wikipedia.org/wiki/Citation
22:54:01 <elliott_> it'll start "when a man and a women love each other very much"
22:54:12 <elliott_> let me tell you about the birds.
22:54:16 <monqy> Sex is a type of reproduction common among living things. It always needs two individuals, usually of the same species. Sex is used by plants and animals, and also by fungi and various single-celled organisms. It works by combining genes from more than one source.
22:54:31 <elliott_> so if genes don't combine it isn't sex?
22:54:43 <elliott_> i am here first time i got this site good and i wish to express my thougts i am astonished to see the dual and tripple policies of world powers the superpowers as they claimed theirslves and i called so it called superpowers.all the are acting the world have no realistic approach of justification just to give a new trend to make and create a new joke that the world is in danger and all civilized nations are near to destroy by the elements called terrori
22:54:43 <elliott_> st we have never seen them in real life just to see what the reallly want to show to us on their controlled media and make people fool in this way and get all their vested interst and make any nation their colony and use of power in their thought is sacred and any other person or a group use the power is called genoside terrorism atrocities etc.
22:54:58 <monqy> oh gross it has nudity and a picture of butterfly sex
22:55:00 <Phantom_Hoover> "The cat on the right is fed up with the cat on the left and this is a semi-serious warning."
22:56:37 <Phantom_Hoover> "5. Watch, delighted, as kitten sits down promptly and urinates. Do same for other kits.
22:56:49 <Phantom_Hoover> 6. Repeat next time if they need it. They will not need a third time. Probably."
22:57:09 <monqy> http://simple.wikipedia.org/wiki/Baby
22:57:13 <monqy> A baby is a very young human who is usually born after coming out of a woman.
22:57:38 <pikhq> Cabal is very, very poorly suited to builds where you don't *want* to install the program.
22:57:44 <Phantom_Hoover> "Never chastise a cat physically: if you do, the relationship will never be the same again."
22:57:55 <elliott_> Phantom_Hoover: bahahahaoaihfjgoifdjh
22:57:57 <monqy> A child is a month old, a baby until he or she is about three years old, and a preschooler between 3 years old and school.
22:58:24 <elliott_> http://simple.wikipedia.org/w/index.php?title=Baby&action=historysubmit&diff=1817847&oldid=1814967
22:58:33 <elliott_> Cuteness is a type of liking people have, such as toward children and babies. It mostly depends on their appearance.
22:58:36 <elliott_> Knut, a young polar bear at the Berlin Zoo, has been talked about in the media as "cute".[1]
22:58:58 <monqy> From Wikipedia, the free encyclopedia
22:58:58 <monqy> (Redirected from Miscarriage
22:59:39 <monqy> okay it's defining abortion generally to include miscarriages
22:59:58 <Phantom_Hoover> Outside of this closely related group, it has not been observed.
23:00:35 <Phantom_Hoover> This article is more detailed than their articles on... everything.
23:00:48 <monqy> I'm reading about human sacrifice now
23:00:55 <Phantom_Hoover> BONUS STUPID WIKIPEDIAS: http://sco.wikipedia.org/wiki/Main_Page
23:01:15 <elliott_> Her arrival interested people from all over the world, because many sources thought the two bears (although they were sexually immature) would soon be "dating".[34]
23:01:31 <pikhq> Phantom_Hoover: The non-English Anglo-Frisian languages deserve a Wikipedia, too.
23:01:39 <Phantom_Hoover> "Afore nou, cats citch moose an froot aboot fowk's hooses."
23:01:58 -!- TeruFSX has quit (Read error: Operation timed out).
23:02:13 <Phantom_Hoover> I cannot show my amusement there are English people I must show solidarity oh god I can't this is ridiculous.
23:02:16 <elliott_> A kinnen or rabbit (Oryctolagus cuniculus) is wee-er nor a maukin. The bouerie unner the grund whaur kinnens leeves is kent as a cuningar. A young kinnen is cried a leprone.
23:02:21 <Gregor> elliott_: See the page on "dating" though. The male bear was "dating" his penis into the female bear's vagina :P
23:02:34 <elliott_> A maukin or hare, whiles kent as a donie; baud, bautie or pous(ie) an aw, haes lang lugs a can rin awfu fast. A young hare is cried a leprone.
23:02:34 <elliott_> * The broun hare (Lepus europaeus)
23:02:34 <elliott_> * The white hare or cuttie (Lepus timidus)
23:02:49 <elliott_> But there IS a homosexuality page
23:03:01 <elliott_> What's sex called in Scots Phantom_Hoover
23:03:32 <elliott_> The cavalier o Hohenberg an his squire burned far crime o sodomy.
23:03:46 <pikhq> elliott_: Scots is only common in the Highlands.
23:03:47 <elliott_> "Gaun by the Kinsey Scale, bisexuals can reenge fae bein a bittie homosexual tae beein a bittie heterosexual."
23:03:59 <elliott_> http://sco.wikipedia.org/wiki/Dance
23:04:13 <Gregor> Ach, feelin' a bittie homosexual tadae!
23:04:20 <elliott_> Metallica (pronounced /mɛˈtælɨkə/) is an American hivy metal baund frae Los Angeles, California, formed in 1981. The baund wis foondit when an advertisement postit bi drummer Lars Ulrich in a local newspaper, wis respondit tae bi James Hetfield. Metallica's line up haes primarily consistit o Ulrich, rhythm guitarist an vocalist James Hetfield an lead guitarist Kirk Hammett, while goin through a number o bassists (Ron McGovney, Cliff Burton, Jason N
23:04:20 <elliott_> ewsted). The spot is currently held bi Robert Trujillo. The baund's oreeginal lead guitarist, afore Hammett, wis current Megadeth guitarist an lead vocalist Dave Mustaine.
23:04:49 <elliott_> "As o December 2009, Metallica is the fowert best-sellin muisic airtist since the SoundScan era began trackin sales on Mey 25, 1991, sellin a total o 52,271,000 albums in the Unitit States alone."
23:04:56 <pikhq> elliott_: Be glad Yola's dead, I guess.
23:04:57 <Phantom_Hoover> "Gaun by the Kinsey Scale, bisexuals can reenge fae bein a bittie homosexual tae beein a bittie heterosexual."
23:05:03 <elliott_> Phantom_Hoover: Already pasted.
23:05:04 <monqy> time to try out the Wale page allevolie
23:05:24 <elliott_> Ingland's muckle maist ceety, Lunnon, is the caipital o the Unitit Kinrick an aw.
23:05:37 <elliott_> http://sco.wikipedia.org/wiki/Great_Breetain
23:06:15 <Gregor> Normal = modern English :P
23:06:45 <pikhq> Phantom_Hoover: Scots is a distinct language with less well-defined orthography than English. Sorry. :P
23:06:46 <monqy> http://af.wikipedia.org/
23:06:54 <elliott_> * This wrangous neologism wis niver uised bi native speakers onywhaur at onytime. It wis cleckit in the late 1990s bi Ulstèr-Scotch enthusiasts.
23:07:04 <elliott_> # (nou | last) 16:08, 10 Februar 2011 207.235.31.62 (Collogue) (6 bytes) (Replacin page wi 'POTATO') (undo)
23:07:11 <pikhq> Phantom_Hoover: CLEARLY NOÖNE.
23:07:22 <pikhq> Phantom_Hoover: NO TRUE SCOTSMAN DOES NOT SPEAK SCOTS.
23:07:53 <Gregor> elliott_: Stoooooooooooop
23:07:59 <elliott_> http://el.wikipedia.org/wiki/%CE%A0%CF%8D%CE%BB%CE%B7:%CE%9A%CF%8D%CF%81%CE%B9%CE%B1
23:08:13 <pikhq> Phantom_Hoover: It's not phonetic unless you don't speak with the Great Vowel Shift.
23:08:20 <elliott_> monqy: # President Barack Obama bevestig dat die terroristeleier Osama bin Laden in 'n Amerikaanse aanval dood is.
23:08:56 <Gregor> "Amerikaanse aanval dood is"!
23:09:57 <Phantom_Hoover> Sorry guys I can't join in or I'll lose my Scottish licence.
23:10:03 <pikhq> Phantom_Hoover: Guess you better learn Scots, then. And perhaps Gaelic.
23:10:22 <Phantom_Hoover> And I'll have to lose all those cool perks we get because the English are suckers.
23:11:01 <pikhq> Phantom_Hoover: Fantastic, learn Irish as well!
23:11:04 <Gregor> But the Irish are ethnically Scottish :P
23:11:17 <pikhq> Oh, hell, and Welsh. Might as well pick up all the living Celtic languages.
23:11:58 <pikhq> WHY HASN'T ENGLISH CONQUERED THE BRITISH ISLES
23:12:34 <Vorpal> Phantom_Hoover, no you are Scottish
23:12:52 <Phantom_Hoover> pikhq, it has in the sense that almost everyone speaks it to some degree.
23:13:14 <pikhq> Given that there's 100 native speakers of Manx, and 600 of Cornish, I feel justified in calling them dead.
23:13:17 <elliott_> I'm going to go to the Highlands and everyone will be all "Why are you pronouncing everything non-phonetically"
23:13:30 <elliott_> Actually they'll just murder me for sounding English.
23:13:37 <Gregor> pikhq: Wikipedia says 1,700 and 3,000 :P
23:13:58 <pikhq> Gregor: Total speakers.
23:14:15 <Phantom_Hoover> <pikhq> Given that there's 100 native speakers of Manx, and 600 of Cornish, I feel justified in calling them dead.
23:14:57 <pikhq> And you mean "Isle of Man".
23:15:12 <pikhq> No, wait, you do mean "Mann".
23:15:53 <Phantom_Hoover> That's almost as bad as the time I discovered that the tiny Irish village I get dragged to has a population of around 2000.
23:16:53 <pikhq> Humans suck at population estimation.
23:18:02 <Phantom_Hoover> The best part is that according to WP and some calculation, 8 of those people aren't Protestant or Catholic.
23:19:25 <monqy> and how many of those eight do some other religion
23:20:47 -!- TeruFSX has joined.
23:21:13 <Phantom_Hoover> Well done, monqy, you have successfully explicited the subtext!
23:21:23 -!- augur has joined.
23:21:49 <CakeProphet> I should write a script that makes jabberwacky and cleverbot talk to each other.
23:22:23 <CakeProphet> google results have yielded nothing so far.
23:30:15 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:34:02 <pikhq> Phantom_Hoover: The Grapes of Wrath demonstrates a complete lack of understanding about what makes a compelling narrative.
23:34:42 <pikhq> Phantom_Hoover: Is part of demonstrating that lack of understanding.
23:35:15 <pikhq> "If you'll excuse me, I would like to cease the narrative to wank onto the page!"
23:35:54 <pikhq> Phantom_Hoover: Name some authors, I'll probably come up with something.
23:37:25 <pikhq> That's not registering as an author.
23:37:37 <Sgeo> Terry Pratchett
23:37:44 <pikhq> Sgeo: I cannot dismiss them.
23:38:54 <pikhq> He's an old Greek dude that people fellate without having actually read anything by him.
23:39:44 <pikhq> Phantom_Hoover: Incompetent author and a Mormon writing about the Mormon ideal of a relationship. Also, vampires.
23:40:06 <elliott_> (This is the result of me googling "Meyers".)
23:40:14 <elliott_> (And having no clue who you meant until pikhq answered.)
23:40:43 <Sgeo> pikhq, vampires can be good
23:40:46 <Phantom_Hoover> YOU HAVE NOT LIVED THROUGH THE TORMENT OF HAVING A SISTER WHO IS A SUPERPOSITION OF EVERY ANNOYING THING A YOUNGER SISTER CAN BE
23:41:03 <pikhq> Sgeo: Not when written by someone who has obviously never even read Dracula.
23:41:21 <Phantom_Hoover> She went from reading Twilight and zealously following the charts to being a pretentious hipster in about 3 months.
23:41:43 <CakeProphet> Phantom_Hoover: the internet can do that to people.
23:42:14 <pikhq> Sgeo: And appears to think an abusive relationship is desirable.
23:42:46 <Sgeo> That's a problem with the story, not the vampires
23:42:55 <Sgeo> Or, well, problem with the author
23:42:59 <Sgeo> No, just saying
23:43:35 <elliott_> CakeProphet: Do you think can you elaborate on that because of an experience you had as a child?
23:44:21 <pikhq> Phantom_Hoover: A genuinely good author.
23:44:29 <pikhq> And supreme badass.
23:45:06 <pikhq> Phantom_Hoover: An oft-misunderstood playwrite, who uses rather crude language, contrary to popular belief.
23:45:16 <CakeProphet> elliott_: (this is going to go nowehre fast...)
23:45:22 <elliott_> CakeProphet: already gave up :D
23:45:25 -!- NihilistDandy has quit (Quit: leaving).
23:45:41 <pikhq> elliott_: Cannot give a meaningful comment.
23:45:52 <Phantom_Hoover> It said complex sentences were male and simple ones female.
23:46:06 <oerjan> this is joyce. you don't need to be meaningful.
23:46:08 <Phantom_Hoover> On pikhq's suggestion, I fed Hemingway in, and he came out 83% female.
23:46:35 <pikhq> Pretty unsurprising. Hemingway reïnvented simple language.
23:46:59 <elliott_> Allow me to quote Finnegans Wake.
23:47:01 <elliott_> Sir Tristram, violer d'amores, fr'over the short sea, had passen- 4
23:47:01 <elliott_> core rearrived from North Armorica on this side the scraggy5
23:47:01 <elliott_> isthmus of Europe Minor to wielderfight his penisolate war: nor6
23:47:01 <elliott_> had topsawyer's rocks by the stream Oconee exaggerated themselse7
23:47:01 <elliott_> to Laurens County's gorgios while they went doublin their mumper8
23:47:01 <elliott_> all the time: nor avoice from afire bellowsed mishe mishe to9
23:47:04 <elliott_> tauftauf thuartpeatrick: not yet, though venissoon after, had a10
23:47:05 <elliott_> kidscad buttended a bland old isaac: not yet, though all's fair in11
23:47:07 <elliott_> vanessy, were sosie sesthers wroth with twone nathandjoe. Rot a12
23:47:09 <elliott_> peck of pa's malt had Jhem or Shen brewed by arclight and rory13
23:47:12 <elliott_> end to the regginbrow was to be seen ringsome on the aquaface.
23:47:15 <pikhq> Phantom_Hoover: Fuck yoü. :P
23:47:21 * elliott_ reads the last two pages of Finnegans Wake
23:47:24 <elliott_> Aw man, now I've spoilt it for myself.
23:47:41 <Phantom_Hoover> elliott_, I might be required to like Joyce on account of technical Irishness.
23:47:46 <elliott_> Do you see what I did there: it was a joke.
23:47:53 <Phantom_Hoover> Although Ireland kind of sucks right now so I can't be bothered.
23:47:58 <oerjan> technical irishness, the best kind of irishness
23:48:00 <elliott_> Phantom_Hoover: Anyone who uses the word "tumptytumtoes" can't be that bad.
23:48:07 <elliott_> Or "humptyhillhead". Or "pftjschute".
23:48:10 <elliott_> Or... "upturnpikepointandplace"?
23:48:16 <elliott_> Or "bababadalgharaghtakamminarronnkonnbronntonnerronntuonnthunntrovarrhounawnskawntoohoohoordenenthurnuk".
23:48:20 <elliott_> These are all from the first page.
23:48:28 <elliott_> Maybe he pioneered Markov chains.
23:48:37 <oerjan> elliott_: hey clearly that's a genuine welsh place name
23:48:56 <elliott_> James Joyce made up nine 101-letter words in his novel Finnegans Wake, the most famous of which is Bababadalgharaghtakamminarronnkonnbronntonnerronntuonnthunntrovarrhounawnskawntoohoohoordenenthurnuk. Appearing on the first page, it allegedly represents the symbolic thunderclap associated with the fall of Adam and Eve. As it appears nowhere else except in reference to this passage, it is generally not accepted as a real word. Sylvia Plath made mention o
23:48:56 <elliott_> f it in her semi-autobiographical novel The Bell Jar, when the protagonist was reading Finnegans Wake.
23:49:07 <elliott_> "Owing to the work's expansive linguistic experiments, stream of consciousness writing style, literary allusions, free dream associations, and its abandonment of the conventions of plot and character construction, Finnegans Wake remains largely unread by the general public."
23:49:18 <elliott_> It's all but saying "actually, it literally makes no sense at all".
23:51:07 <oerjan> none else would be a plausible norwegian female name
23:52:07 <ralc> still going strong elliott_
23:52:39 <oerjan> even more plausible in danish, actually
23:53:40 <oerjan> or wait danes use double last names instead of first names, don't they
00:06:11 -!- DoA-TheGreat has joined.
00:06:11 -!- DoA-TheGreat has left.
00:08:26 <oerjan> and his faithful dog DoB-Do
00:08:52 <oklofok> but let me tell you something
00:12:02 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:13:22 <oerjan> btw i proved that every sequence in roman numeral look and say grows exponentially
00:14:00 <oerjan> i'm not yet sure whether it always grows at a constant limit speed though
00:14:21 <oklofok> you can tell me later, i'm trying to get to work at a sensible time today
00:14:34 <oerjan> basically, the substring VIIIVIIIIVIIIVI always arises, and is self-replicating
00:16:59 <quintopia> where are the breaks in that sequence
00:19:18 <quintopia> it could be 52434241 or 8986 or something else in between, depending on which standard you choose
00:19:49 <oklofok> in that case there are no breaks
00:21:12 <oklofok> or actually there's a break before every letter
00:22:15 <oklofok> oerjan: can you tell me the details?
00:23:07 -!- Tritonio has quit (Ping timeout: 260 seconds).
00:26:34 <oerjan> quintopia: I II III IV V VI (VII VIII ...) are the numerals i use (the larger ones disappear after two-three iterations)
00:26:58 <oklofok> I II III IIII IVI IIIVII IIIIIVIII VIIVIIII IVIIIIVIVI IIIVIVIIVIIIVII IIIIIVIIIVIIIIVIIIIIVIII VIIVIIIIIVIVIIVVIIVIIII IVIIIIVVIIVIIIVIIIIVIVIIIIVIVI IIIVIVIIVIVIIIIVIIIIIVIVIIVIIIVIVIIVIIIVII IIIII(VIIIVIIIIVIIIVI)VIIVVIIVIIIVIIIIVIIIIIVIIIVIIIIVIIIIIVIII
00:27:16 <oerjan> yeah that looks right to start with
00:27:26 -!- azaq23 has joined.
00:27:36 <oklofok> and for V, the same thing happens + extre
00:27:39 <quintopia> oerjan: could you please put the breaks in as hyphens so i can tell the difference between 3 and 12?
00:27:43 <oerjan> maybe you pasted my quote from yesterday
00:27:55 <oklofok> oerjan: no i did that just now
00:28:03 <oerjan> quintopia: um they are melted together after each step
00:28:22 <oklofok> wasn't all too careful but anyhow easy to believe, now i just have to make sure you didn't lie about self-replicating
00:28:36 <oerjan> say IIIVII -> III-I I-V II-I -> IIIIIVIII
00:29:24 <oerjan> oklofok: note i needed to consider a few different environments, also i checked with a haskell program
00:29:26 <quintopia> I I-I I-II I-III IV-I I-I-I-V-I-I III-I-I-V-II-I etc.
00:29:56 <oerjan> quintopia: um no other way around for some of those
00:29:58 <oklofok> it's not actually context-free is it...
00:30:42 <oerjan> oklofok: um what does that mean here...
00:31:17 <oklofok> oerjan: that a I doesn't actually evolve like that if there's something around it
00:31:33 <oklofok> but maybe it essentially does, i haven't thought about this
00:31:57 <oklofok> VIIIVIIIIVIIIVI IVIIIIIVIVIIVIIIIIVII IIIVVIIVIIIVIIIIVVIIVIII IIIIIIVIIIIVIIIIIVIVIIIVIIIIVIIII VIIIVIVIIVVIIVIIIVIIIIIVIVIIVIVI IVIIIIIVIIIVIIIIIVIIIIVIIIIIVVII(VIIIVIIIIVIIIVI)I aaaaaand we're there
00:32:27 <oerjan> oklofok: indeed. in fact that string i quoted is really |IIIVIIIIVIIIV| where the | signifies that if there is a letter on the other side it cannot be the same one
00:32:37 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:33:28 <oerjan> oklofok: the clue here is that if you remove all initial V's after each step, it looks like you are _very_ likely to hit something beginning with that string eventually
00:35:04 <oerjan> and you can check that this is true for each of I, II, III, IV, IIV, ... IIIIIIV
00:36:33 <oklofok> not getting this at all man
00:36:43 <oerjan> oklofok: well to start with the beginning. the problem with this variation compared to ordinary look and say is that there are no atom boundaries (ignoring digits X, L etc. which don't matter after a few steps)
00:37:04 <Vorpal> 02:14:50 <oklofok> you can tell me later, i'm trying to get to work at a sensible time today
00:37:10 <oerjan> every sequence fluctuates between starting with I and starting with V
00:37:14 <Vorpal> that is 03:14:50 for him
00:38:43 <oklofok> well actually i haven't done the case analysis but anyhow
00:38:48 <oklofok> Vorpal: morning work best of works
00:39:13 <oklofok> i have all the math to myself
00:39:15 <oerjan> well i did, V -> I immediately and I -> V in at most 6 steps iirc
00:39:55 <oerjan> btw you can have at most 2 V's and 6 I's in sequence after the 3rd or 4th generation or so
00:41:01 <oerjan> it follows that every block of V's turns into either IV or IIV. thus every block of V's _always_ interacts with the previous block
00:42:24 <oklofok> because if there's a five, then more I's before the V, and if there's an I, then more I's on the next generation
00:42:27 <oerjan> i therefore mostly merge them together, and treat my basic units as IV, IVV, IIV, IIVV, IIIV, IIIVV, IIIIV, IIIIVV, IIIIIV, IIIIIVV, IIIIIIV and IIIIIIVV
00:42:57 <oerjan> with beginning and end of the whole string sometimes exempted
00:43:21 -!- Vorpal has quit (Read error: Operation timed out).
00:43:37 <oerjan> when we do this, we see that blocks can send information to the previous block, in the form of an extra V occasionally
00:43:48 <elliott_> oerjan: please tell me it's tc
00:44:02 <oerjan> also only the blocks IIIIV and IIIIVV split into two blocks
00:44:13 <oklofok> how can they send an extra V?
00:44:17 <oerjan> elliott_: i don't know yet, i've just shown it must grow exponentially
00:44:34 <oerjan> well consider our fundamental example
00:45:27 <oerjan> |IIIV|IIIIV|IIIV| -> |IIIIIV|IV|IIV|IIIIIV| -> (V)|IIV|IIIV|IIIIVV|IIV|
00:45:36 -!- elliott_ has changed nick to elliott.
00:45:38 -!- elliott has quit (Quit: Leaving).
00:45:47 -!- elliott has joined.
00:45:50 <oklofok> elliott_: given four strings u, v, w and z it is RE-complete to tell whether z appears in the orbit of inf^u v w^inf
00:46:03 <oerjan> you see that the blocks with 5 or more I's at each step turn into something beginning with V, which is then merged with the previous block
00:46:09 <elliott> oklofok: no i just want oerjan to tell me that it's tc
00:46:20 <oklofok> oerjan: can you copy my line for elliott
00:47:15 <oklofok> oerjan: he doesn't like me telling him things
00:47:50 <oklofok> oh yeah five ones does indeed send a V
00:48:04 <elliott> so I and V are the only characters right
00:48:16 <elliott> well, maybe if it's tc you need to insert others, but that's kinda bleh
00:48:39 <oerjan> elliott: the others if you include them shrink quickly to single isolated digits
00:48:47 <elliott> so they're irrelevant good
00:48:56 <elliott> so you can make a nice pretty drawing program ;D
00:48:58 <oerjan> that can be treated as simply equivalent to V followed by an atom boundary
00:49:12 <oklofok> (also that's the sense in which 110 has been proven tc, in case someone missed the reference for some reason)
00:49:29 <oerjan> (these being the _only_ atom boundaries)
00:50:54 <oerjan> oklofok: now notice that information can only flow leftward in this view
00:51:52 <oerjan> which means that we don't need to worry about what's to the left in order to find out how the blocks themselves evolve. thus i experimented with throwing away the initial V's at each step
00:52:08 <oklofok> ppl can have poop children to their left and also send a new V to their leftmost block
00:53:03 <oklofok> now i wanna know how that 110 proof goes
00:53:54 <oklofok> so oerjan you know the polynomial hierarchy right
00:54:24 <oerjan> well slightly, it's P^NP, P^P^NP etc. isn't it, and maybe something above that too
00:54:26 <oklofok> a language is sparse if there are only at most p(n) elements of length at most n in it
00:54:45 <oklofok> actually it's P^NP^NP^NP^NP...
00:55:19 -!- copumpkin has joined.
00:56:12 <oklofok> so you define Sigma_0 = Pi_0 = P, and then Sigma_(i+1) = NP^Sigma_i, Pi_(i+1) = co-Sigma_i
00:56:25 <oklofok> the point of Pi's being clear once i explain the alternative view to this
00:56:26 <oerjan> i don't know the details of that 110 proof i just know it's based on finding gliders that interact the way you want, and making a tag system out of them that requires infinite chain of incoming gliders from both left and right
00:57:13 <oerjan> and there are diagrams of the gliders on the net
00:57:37 <oerjan> (probably on wikipedia, although there was a site that went into some detail of classification)
00:57:46 <oklofok> Sigma_i means you have i alternating quantifiers starting with existential, and Pi_i starts with universal, that is, we have an i-ary predicate, and in Sigma_i we guess the first word w_1, universally quantify over the next w_2, then guess the next and so on, and finally check the predicate for the original input and all the w_i
00:58:19 <oklofok> i-ary predicate that's a P language that is
00:58:51 <oerjan> yeah this fits into how QBF is PSPACE complete
00:59:10 <oklofok> in NP you guess a string of polynomial length, in Pi_1 you universally quantify over all strings of polynomial length, and in general there's alternation up to some length
00:59:50 <oklofok> it does, although i'm not sure in which exact sense
01:00:10 <oklofok> in any case, the polynomial hierarchy is just the union of the Sigma_i
01:00:24 <oerjan> i mean what you are doing is just bounding the number of quantifier switches in a QBF problem, i think
01:01:02 <oklofok> yes, but why does not bounding it give you PSPACE, is there a connection between PSPACE and PH?
01:01:15 <oerjan> (having the same quantifier several times in sequence doesn't increase the count)
01:01:46 <oerjan> well not bounding means having a polynomial rather than constant bound, i guess
01:02:02 <oklofok> we also define some intermediate classes, namely Delta_(i + 1) = P^Sigma_i, and Theta_(i + 1) = polynomial deterministic languages except you can do a logarithmic amount of queries to Sigma_i
01:02:45 <oklofok> don't they always what? define intermediate classes? :P
01:02:58 <oklofok> in any case, now i can finally list some results
01:03:10 <quintopia> anyone here know offhand how SMBC is licensed?
01:03:32 <oklofok> oerjan: sure, but i'm not just giving Theta for fun, i'm using it in a second
01:03:55 <oklofok> as we already know from my previous rants, if there is a sparse co-NP-hard or NP-hard language, then P = NP
01:04:06 <oklofok> that is, the polynomial hierarchy collapses to P
01:04:38 <oklofok> this is for hardness w.r.t. many-one reductions or bounded truth table reductions only
01:04:51 <oerjan> i have to go to bed very soon
01:05:06 <oklofok> well i'm not doing anything complicated, just giving neat results
01:05:34 <oerjan> um as in you have five minutes
01:05:45 <elliott> <oerjan> i don't know the details of that 110 proof i just know it's based on finding gliders that interact the way you want, and making a tag system out of them that requires infinite chain of incoming gliders from both left and right
01:05:49 <oklofok> well are you familiar with those?
01:05:54 <elliott> I thought thirty was but not one-one-zero
01:06:09 <oerjan> elliott: probably mixing up, 110 was the famous proof...
01:06:12 <oklofok> and it's not the next on the list even
01:06:36 <oerjan> with patented wolfram inflation
01:06:37 <oklofok> 55 or something is the next one to be proven re-complete for the problem i just gave
01:06:51 <oklofok> it's the one with the dancing mushrooms
01:07:26 <oerjan> hm is that the totalistic one
01:07:33 <oklofok> oerjan: many-one reduction from L to L' means you have a deterministic polynomial time turing machine A s.t. w in L iff A(w) in L'
01:08:15 <oklofok> bounded truth table reductions mean you have some constant k such that you have a polynomial turing machine that can do exactly k queries to L', this amounts to just having a truth table
01:08:58 <oklofok> as for turing reductions, that is, having a sparse set S as the oracle, things get slightly more hairy
01:09:17 <oklofok> if there is a sparse NP-hard set S w.r.t. turing reductions
01:09:47 <oklofok> if there is a sparse NP-complete set S w.r.t. turing reductions
01:10:12 <oklofok> (logarithmic amount of queries to NP)
01:10:42 <oerjan> um i think you called Omega Theta above
01:11:00 <oklofok> in my head it's the actual symbol
01:11:15 <oerjan> well thanks and good night
01:11:27 -!- oerjan has quit (Quit: leaving).
01:11:42 <oklofok> will give the actual proofs once i grasp them a bit better
01:12:35 <oklofok> for a sparse NP-complete set, the proof is not very hard, but for a hard one, it is not very complete. erm i mean it's pretty complicated.
01:27:14 -!- ralc has quit (Quit: Leaving).
01:32:06 <pikhq> My linear algebra professor is pretty quick on grading.
01:32:16 <pikhq> I've already got the grade on my final.
01:32:24 <pikhq> It was earlier today.
01:37:40 <oklofok> our cellular automata exam was graded in about 30 minutes
01:37:49 <oklofok> then again there were like 5 people taking it
01:38:15 <pikhq> True, it does help when you're taking a class with a handful of other people.
01:38:39 <quintopia> i wish i could take that class. it sounds awesome.
01:38:42 <pikhq> Now just waiting on one more class's grade.
01:39:23 <oklofok> the cellular automata class was pretty awesome
01:41:54 <oklofok> lecture notes can be found at http://users.utu.fi/jkari/ca/, highly recommended
01:42:03 <oklofok> there aren't really any books on ca
01:43:04 <oklofok> and if someone says a new kind of science i'm going to explode :D
01:43:20 <pikhq> ais523 should write one.
01:43:24 <elliott> oklofok: try a new kind of science
01:43:37 <pikhq> elliott: Well, he's done at least one at the behest of Wolfram.
01:43:50 <oklofok> the guy who wrote those lecture notes should write a book
01:44:04 <oklofok> i doubt ais knows even the basics of ca theory
01:44:23 <oklofok> although making specific ca's is of course a very useful skill
01:44:32 <oklofok> and i'm sure ais is very good at that
01:44:39 <pikhq> Oh, it wasn't? Thought it was a CA. Anyways.
01:44:48 <pikhq> I'm not sure why I said that, anyways.
01:45:43 <oklofok> i'm gonna say it too now, so you don't get too self-conscious
01:45:50 <oklofok> ais523 should write a book on ca.
01:46:20 <oklofok> okay maybe finally worky time ->
01:48:14 <elliott> emacs is older than perl i think anyway
01:48:23 <elliott> they're more like posix regexps
01:54:55 <quintopia> wow. swedes are the most likely to be immune to HIV? damn you again, swedes!
01:56:38 -!- augur has quit (Remote host closed the connection).
02:00:23 -!- CakeProphet has quit (Ping timeout: 246 seconds).
02:03:02 -!- augur has joined.
02:19:58 -!- CakeProphet has joined.
02:19:58 -!- CakeProphet has quit (Changing host).
02:19:58 -!- CakeProphet has joined.
02:21:43 <CakeProphet> because, honestly, I don't really feel like learning an outdated regex syntax..
02:24:23 <Sgeo> How many regex syntaxes are there?
02:24:30 <elliott> apart from \ before ( and ) i think
02:24:42 <pikhq> Sgeo: As many as there are implementations of regular expressions.
02:25:03 <quintopia> tbf pikhq, they all have the basics the same
02:25:22 <pikhq> Yeah, they do have a reasonable common subset.
02:25:42 <pikhq> Helps that they're all pretty much reimplementations of ed regexps.
02:26:01 <quintopia> and you could at least do matching of arbitrary r.e.s with that common subset
02:27:08 <CakeProphet> and the \ special characters are pretty different.
02:33:54 <CakeProphet> awww, the link is broken. No perl regex in emacs seems to exist.
02:37:57 -!- augur has quit (Remote host closed the connection).
03:07:14 <pikhq> Y'know, the Nazis had the most *amazing* hubris.
03:11:00 <Sgeo> I'm going to write a language that compiles to LSL
03:11:24 <monqy> what's so great about lsl
03:11:33 <monqy> apart from it being used in second life
03:11:39 <Sgeo> That's the only thing good about it.
03:12:27 <monqy> the question now is what's so great about second life
03:14:45 <monqy> and what could you possibly want to script in it
03:15:16 <elliott> hey Sgeo what's the function to form a range sequence in racket
03:15:18 <Sgeo> A helmet that takes you 340 trillion trillion trillion meters up
03:15:50 <elliott> im making an HQ9+ interpreter dude
03:15:52 <Sgeo> You started making fun of me again when I was pulling my hair out looking for it
03:15:54 <monqy> why do you want to go 340 trillion trillion trillion meters up in second life
03:16:02 <elliott> except mine is better cuz its an actual racket language
03:16:18 <monqy> I gave up on mine when it stopped being fun
03:16:30 <elliott> totally a valid program now
03:16:32 <elliott> if you install it globally
03:16:40 <elliott> it even exports the final accumulator as a module
03:16:47 <elliott> fuckin' integrated up the ass
03:17:00 <Sgeo> I still haven't really read about or absorbed the module system
03:17:32 <pikhq> Y'know what's better than Second Life?
03:17:46 <Sgeo> pikhq, there's no scripting in Minecraft
03:17:58 <pikhq> Sgeo: There's Redstone. What else could you want?
03:18:25 <Sgeo> The ability for redstone to affect any change I want in the area around it
03:19:14 <elliott> racket's documentation is awesome
03:22:05 -!- augur has joined.
03:24:13 <elliott> hey Sgeo what's the function to concat n sequences
03:35:40 <Sgeo> Probably something ending in -append or -append*?
03:36:11 <monqy> is it stream-concat
03:36:28 <monqy> I dunno what a sequence is but
03:36:51 <elliott> im just thinking now how to handle the ~elegance~
03:36:53 <monqy> that in-range thing said it made a stream I think??
03:37:10 <Sgeo> monqy, streams are sequences
03:37:36 <monqy> and I searched for stream concat and found stream-concat I guess
03:37:44 <monqy> maybe I should actually learn racket sometime
03:38:15 <Sgeo> stream-concat is in one of Racket's SRFI thingies
03:38:38 <monqy> scheme request for implementation right
03:39:18 <elliott> begin (possibly implicit): bad syntax (illegal use of `.') in: (begin . #<void>)
03:39:44 <monqy> racket is intimidating
03:40:01 <monqy> so much standard library & other extra stuff
03:41:22 <monqy> things with # in them are especially spooky
03:42:35 -!- azaq23 has quit (Read error: Operation timed out).
03:43:59 <elliott> does for actually result in anything
03:44:07 <Sgeo> What is it called when an anonymous function can access and read variables bound at the higher level, like a closure, but can't modify them such that the higher level sees the modification?
03:45:06 <monqy> even sgeo knew to use for/list
03:45:09 <elliott> Sgeo: can they still mutate the objects if they're mutable?
03:45:11 <monqy> you should learn from the master
03:45:12 <elliott> e.g. append to a list in a higher scope
03:46:05 <Sgeo> Hmm. Not sure. Let's say yes (Although I want to know the answer for no too)
03:48:17 <elliott> Sgeo: then python two scoping is what it is calle
03:49:00 <Sgeo> Well, keep in mind that I am n00bishly trying to imagine how I'd compile a language with lambdas into a language without them
03:49:34 <Sgeo> I'd make a huge funcall() function, which would accept a string naming the function, a list of bindings for the "closure", and a list of arguments
03:49:34 <elliott> ok, everything works but Q as a FULL RACKET LANGUAGE
03:50:25 <elliott> transform scopes into mutable structures
03:50:32 <elliott> with pointers to their parent scopes
03:50:41 <elliott> and have a closure be code + scope
03:50:45 <monqy> why would you even want mutability
03:52:02 <monqy> oh right you probably can't optimize the lsl or whatever it is very well to make up for a pure functional language
03:52:17 <Sgeo> I don't think LSL has tail recursion. Easy fix: Functions (after being transformed into something vaguely-CPS-like) just return the next function, instead of calling it
03:52:50 <Sgeo> iirc what trampolining is
03:53:23 <monqy> you could also do TCO on it if you have the necessary control structures
03:53:30 <monqy> (you probably don't)
03:54:38 <Sgeo> Well, my current vague plan is to go code with continuations -> intermediate language with first class functions in CPS -> LSL
03:54:53 <elliott> . hq9+.rkt:11:0: read: expected a `)' to close `('; indentation suggests a missing `)' before line 15; newline within string suggests a missing '"' on line 38
03:54:59 <monqy> -> hats that take you into the air
03:55:01 <elliott> Sgeo: Why do you need continuations
03:55:20 <monqy> maybe it's useful for making hats or something
03:55:39 <elliott> Sgeo: did you actually understand what i said about scopes
03:56:20 <Sgeo> elliott, not.. really, no... but are you asking just to ask, or do you think it's relevant to why I want continuations (it isn't)
03:56:41 <elliott> Sgeo: i was asking because otherwise you're going to implement it terribly?
03:56:49 <elliott> but im actually surprised you've managed to not understand something that simple, gj
04:08:29 -!- elliott has quit (Ping timeout: 246 seconds).
04:09:09 -!- sebbu has quit (*.net *.split).
04:12:03 -!- sebbu has joined.
04:13:16 <pikhq> Fucking Linnaean taxonomy.
04:13:20 <pikhq> Why does anyone still use it?
04:16:04 <coppro> why is your country still serving me drinks in some unit called an 'ounce'
04:16:09 <coppro> not to be confused with an 'ounce'
04:16:22 <pikhq> Because we hate everyone outside the country.
04:16:40 <pikhq> Incidentally, the unit is a "fluid ounce". Not to be confused with the "dry ounce" or the "ounce".
04:17:00 <pikhq> (note: dry ounce archaic)
04:26:58 <Sgeo> I understand what you said
04:31:42 <Sgeo> I can't use native assignment
04:31:50 <Sgeo> Actually, I can't use much of native anything
04:32:09 <Sgeo> Can't use native while
04:32:27 <Sgeo> (At least, not at the continuation-using -> CPS level)
04:33:14 <monqy> who needs assignment
04:37:20 -!- augur has quit (Ping timeout: 252 seconds).
04:37:43 <Sgeo> LSL has a lot of issues. I'm not going to deviate that far from the host language
04:37:54 <Sgeo> I'm just fixing the most pressing issue I see.
04:38:13 <monqy> "no continuations"
04:39:12 <monqy> does it have first-class functions or proper closures or anonymous functions or anything? I imagine that would be a far more pressing issue
04:40:28 <Sgeo> No first class functions or closures or anonymous functions
04:40:38 <Sgeo> Those will be added, then continuations on top of that
04:40:55 <Sgeo> http://pastebin.com/2i0AfxhS how to make a thing that repeats what others say
04:41:03 <Sgeo> You can't just call a function that gets the last thing said
04:41:40 <Sgeo> Or call a function that takes a closure as a callback
04:42:20 <Sgeo> Unless you were mocking me
04:42:27 <monqy> no this is legitimately awful
04:48:33 <Sgeo> Hmm, considering that I'm not going to implement "last thing said" but instead "next thing said"...
05:42:56 -!- NihilistDandy has joined.
05:47:55 -!- augur has joined.
06:33:21 <Sgeo> Does trampolining require CPS?
06:34:31 <monqy> I think it requires tail calls so you'd need continuations if you want to do fancy stuff
06:35:49 <Sgeo> I was planning on making an intermediate language with TCO and first-class functions etc., but can't imagine how outside of a CPS style
06:36:22 <monqy> hint: convert to CPS
06:36:40 <pikhq> Yeah, just do the continuation-passing transform.
06:39:25 * Sgeo has homework he needs to do rght now
06:39:31 <Sgeo> Instead of thinking about this
06:41:31 <Sgeo> Difficulty: I don't know where any of the papers are
06:43:56 -!- augur has quit (Remote host closed the connection).
06:47:50 <Lymia> CPS? Continuation Passing Style?
06:53:09 <Sgeo> Do if, while, etc. get transformed into functions? I think they _might_
06:54:08 <Sgeo> I should start writing down my thoughts. Or start doing homework, that might be better.
06:56:16 <monqy> what do you mean get transformed into functions
07:00:50 <Sgeo> As in, I make a while(somecode, someothercode, args-for-cps...) thing
07:01:34 <Sgeo> I can't leave a while(){} loop stay a native while(){} loop
07:02:27 -!- CakeProphet has quit (Ping timeout: 248 seconds).
07:02:28 <Sgeo> I'm wondering now if I should make an intermediary language with functional stuff but no TCO, and put TCO+CPS on top of it
07:03:54 -!- augur has joined.
07:04:10 -!- CakeProphet has joined.
07:04:45 <Sgeo> The important thing I think is that I can't do TCO without CPS or visa versa. Doesn't mean I can't do first-class functions without those.
07:06:04 <Sgeo> Then again, I ultimately need a funcall kind of function for the functional layer, and I don't want to make another on top of that just... hmmm
07:07:22 <monqy> pretty sure TCO just means you make tail calls use/replace the current call frame rather than making a new one (and keeping the old one around until you return, but since it's a tail call you won't be doing anything else, so keeping it around is useless)
07:08:08 <Sgeo> I know what TCO means, but I can't really implement it without trampolining, and to do trampolining I need CPS
07:08:09 <monqy> TCO goes nicely with CPS because iirc CPS means every call is necessarily a tail call
07:08:20 <monqy> well you don't need CPS but
07:08:28 <monqy> you'd only be able to do the trampolining on tail calls
07:09:21 <Sgeo> For some reason, I was mentally applying trampolining to everything, including non-tail-calls
07:10:07 <monqy> as for while loops, you don't need them at all
07:10:14 <monqy> just use recursion
07:10:30 <Sgeo> My syntax is going to be LSL-like
07:10:35 <Sgeo> With obvious additions
07:10:43 <monqy> 1) why? (2) what does that mean
07:11:11 <Sgeo> 1) I want it to be easy for those used to LSL to use. 2) What do you mean, what does it mean? It means I'm not implementing a Scheme
07:12:08 <monqy> I mean does it seriously have major semantic ramifications
07:12:45 <Sgeo> I don't think so
07:12:54 <Sgeo> I am scrapping the stupid events in place of something else
07:13:01 <monqy> and I think the semantic differences between your language and LSL would be a lot more meaningful than syntax
07:13:25 <Sgeo> But my syntax will still have while loops.
07:13:27 <monqy> I personally wouldn't hold onto the old syntax for false familiarity
07:13:32 <monqy> why do you want while loops
07:13:34 <Sgeo> Even though I transform them into something else
07:14:01 <Sgeo> Because people know how to use them?
07:14:26 <Sgeo> Semantics of new language: LSL with first-class functions + TCO + Continuations
07:14:37 <monqy> I'm assuming people who want to use your language know something or two about those things
07:14:46 <monqy> and I'm assuming people who know those things know about recursion
07:15:05 <Sgeo> monqy, they might not. I'm hoping my sample code will amaze and astound
07:15:27 <monqy> continuations are sort of not as easy to grasp as recursion
07:15:49 <Sgeo> monqy, but a standard library using them will be
07:16:22 <monqy> what about first-class functions, closures, &c., then
07:16:24 <Sgeo> "Hey, you can just get the next line that will be said in chat with: list line = cpsListen(0, "", NULL_KEY, "")"
07:17:04 <Sgeo> monqy, I'll mention those too. Anyone who wants to use them can use them.
07:17:08 <monqy> anyway, is while going to be specially handled by your compiler or just a macro
07:17:18 <Sgeo> Specially handled
07:21:26 <monqy> anyway you can implement it in terms of if and whatever recursion deal you use, so I wouldn't worry about it
07:22:50 <monqy> for if, I think the simplest way to do it is if you implement it as a primitive operation that takes a boolean and two continuations, and evaluates to the corresponding continuation
07:33:32 <Sgeo> `quote pregnant
07:33:35 <HackEgo> 194) <alise> Gregor: You should never have got her pregnant. <Gregor> what whaaaaaaaaaaaat \ 195) <benuphoenix> the pregnant ones are usually taken already. \ 235) <Vorpal> (had real world issues) <Vorpal> (to deal with) <ehird> Vorpal's pregnant. <Vorpal> yes
07:35:43 -!- monqy has quit (Quit: hello).
07:38:30 <HackEgo> 160) <calamari> anmaster gonna give him a birthday bj? <AnMaster> IF ONLY I COULD FIND MY PHONE \ 259) <fizzie> And to think: if only we wouldn't celebrate birthdays, there would be no birthday paradox, and we could get by with half as long hash functions. (What do you mean it doesn't work that way?) \ 350) <ZOMGMODULES>
07:38:58 <Sgeo> ZOMGODULES _what_?
07:39:10 <HackEgo> 350) <ZOMGMODULES> elliott: parents who put just "Chris" on a birth certificate are... like parents who put just "Bob" on a birth certificate.
07:39:26 <Sgeo> `pastequotes pregnant
07:39:28 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.25433
07:39:54 <Sgeo> `pastequotes birth
07:39:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.9871
07:40:14 <Sgeo> @tell Gregor Fix your `quote
07:53:51 <fizzie> How was it broken now?
07:56:44 <fizzie> (Also that @tell is one of the worst bug reports ever.)
07:58:31 -!- oerjan has joined.
07:58:48 <Sgeo> fizzie, there's more to the birth stuff than shown n canenl
07:59:11 <Sgeo> @tell `quote birth doesn't show all birth quotes.
07:59:25 <Sgeo> @tell Gregor `quote birth doesn't show all birth quotes.
08:00:47 <fizzie> Sgeo: I hardly think IRC's message length limit is Gregor's fault.
08:01:02 <Sgeo> But it could give some indication that it has been reached...
08:05:07 <fizzie> Even that is not really something the `quote command should worry about. (It doesn't do that wrapping to one line with \s either.)
08:05:44 <Sgeo> Well, HackEgo should worry bout it then
08:07:04 <HackEgo> 225) <Zuu> it seems that CUIL is dead \ 367) <oklopol> haha, god made one helluva blunder there :DS <oklopol> "WHOOPS HE AIN'T DEAD YET!" <oklopol> "luckily no one will believe him because christians are such annoying retards"
08:07:11 <HackEgo> 314) <nddrylliog> back to legal tender, that expression really makes me daydream. Like, there'd be black-market tender. Out-of-town hug shops where people exchange tenderness you've NEVER SEEN BEFORE.
09:00:13 -!- oerjan has quit (Quit: Later).
09:06:33 <Patashu> I was reading that CA lecture from a while back and it got me thinking, anyone ever played around with hexagonal CAs?
09:06:54 <Patashu> you could use mirek's cellebration and the direction weighted rules to write one
09:07:26 <Patashu> although I suspect it wouldn't be too interesting without diagonals
09:08:42 <Patashu> hmm yeah, it'd be really claustrophobic
09:42:20 -!- Vorpal has joined.
10:22:06 -!- Phantom_Hoover has joined.
10:27:02 <Patashu> I'm messing around with some openGL for a university assignment, and I'm running into a really weird behaviour. Only half of my scene is receiving diffuse/specular light
10:27:47 <Patashu> Huh, my light is directional for some reason
10:27:52 <Patashu> I wonder what's doing it, because I never set it to be one
10:42:56 -!- aloril has quit (Ping timeout: 240 seconds).
10:58:07 <Patashu> apparently all I had to do was specify normal vectors
10:58:42 -!- aloril has joined.
11:03:03 <fizzie> Do remember to enable GL_NORMALIZE or GL_RESCALE_NORMAL if you intend to use a modelview matrix that has scaling in it, to avoid non-unit-length-normal related lighting issues.
11:29:42 -!- FireFly has joined.
12:03:32 -!- BeholdMyGlory has joined.
12:13:42 <Patashu> couldn't find GL_RESCALE_NORMAL so going with the first
12:31:33 -!- HolyBlood has joined.
12:33:01 <fizzie> The first is potentially slower. (But also works when the modelview matrix has nonuniform scaling.)
12:33:34 <fizzie> (Neither's needed if you don't scale at all and always provide unit-length normals.)
12:41:57 <Patashu> next part's going to be tough: I have to model the sydney opera house using NURBS
12:42:07 <Patashu> e.g. create something that, if you squint at it funny, looks like you were trying to make the sydney opera house
12:43:28 <Patashu> I know how to use nurbs as in what commands activate it in opengl, I don't know how to use nurbs as in 'if I want a shape like THIS then I set control points and knot vectors like THIS and dun'
12:45:51 <oklofok> "<Patashu> I was reading that CA lecture from a while back and it got me thinking, anyone ever played around with hexagonal CAs?" <<< in what sense?
12:46:28 <Patashu> a CA that instead of having a chessboard topology has a hexagonal topology, yeah
12:46:35 <oklofok> each of those is easily seen to be conjugate to a normal 2d ca
12:46:45 <Patashu> but I thought about it for a bit and it was really...constrained, with 6 neighbours vs 8
12:46:48 <oklofok> careful about the use of "topology" there
12:47:14 <oklofok> given that "topology" usually refers to the actual topology of the space of configurations
12:47:47 <oklofok> Patashu: usually CA can have an arbitrarily large neighborhood
12:49:15 <oklofok> and even if you don't have that, if F is an arbitrary CA with arbitrary nbhd size, you can find a subshift S and a CA G with a "radius 1" neighborhood operating on S such that (S, G) is conjugate to your CA F. conjugate means "is essentially the same CA" and subshift means you don't take all possible starting configurations, but a natural subset
12:49:44 <oklofok> that's probably a bit hard to internalize but i just gave an hour long lecture so not feeling particularly ranty
12:51:07 <oklofok> so what i just said was that the CA that only look at their nextdoor neighbors when deciding on the new state are essentially the same thing as all CA
12:51:25 <Patashu> because they're all turing complete, I guess?
12:51:40 <Patashu> so you can always find another CA that can compute the same things?
12:51:46 <oklofok> rather your latter statement
12:52:28 <oklofok> well for instance consider this
12:52:36 <oklofok> you have a 1d ca that has neighborhood radius 3
12:53:02 <oklofok> so its local function, when deciding the new state at position x, looks at x-3, x-2, x-1, x, x+1, x+2 and x+3
12:53:21 <oklofok> now call the finite set of states S
12:53:41 <oklofok> (the states you use in the configurations, in game of life those S = {0, 1})
12:53:56 <oklofok> now we can construct another CA as follows
12:54:12 <oklofok> as the new states take S^6
12:55:00 <oklofok> now the idea is the new state of (x_1, ..., x_6)
12:55:26 <oklofok> can be computed by just looking at the left and right neighbor, and the old state of (x_1, ..., x_6)
12:56:21 <oklofok> when we think of the configuration ...(x_1, ..., x_6)(y_1, ..., y_6)(z_1, ..., z_6)... as being a "compressed" version of ... x_1 ... x_6 y_1 ... y_6 z_1 ... z_6 ...
12:57:03 <oklofok> i'll gladly explain notation if that's unclear
12:58:09 <Patashu> S^6 means you're having ^6 as many states, so you can represent all the possible combinations of x-3, x-2...etc in just one spot?
12:58:21 <oklofok> S^6 is just standard mathematical notation
12:58:23 -!- ais523_ has joined.
12:58:31 <oklofok> it means SxSxSxSxSxS where x is cartesian product
12:58:52 <oklofok> so S^6 means we group 6 states into one.
12:59:14 <oklofok> when you've grouped 6 states into one, a rule with radius 3 only needs to look at the nextdoor neighbors
12:59:15 <ais523_> I didn't even realise there was a channel called #
12:59:23 <Patashu> you can have a channel called #
12:59:28 <ais523_> I might have made some sort of typo, as I ended up joining it automatically when I started this webclient
12:59:42 <ais523_> I'm not sure if anyone there was there deliberately, there were about 15 people
12:59:49 <oklofok> and yes, it's interesting, but things get WAY more interesting than that
12:59:59 <Patashu> it's probably set up as a hipster establishment
13:00:12 <Patashu> e.g. 'cool club for cool people who know that you can have channels called bizzare non-things'
13:02:56 <Patashu> couldn't leave that unharnassed
13:03:11 <oklofok> but in any case as i said the hexagonal grid is just the 2D CA, but in fact people have done research on CA running on weirdly shaped configurations, iirc the garden of eden theorem for instance has been generalized for all automatic groups by this famous blind guy
13:03:59 <oklofok> garden of eden theorem = CA is surjective iff it's locally injective
13:04:08 <oklofok> surjective meaning all configurations have a preimage
13:04:24 <oklofok> and locally injective meaning there cannot be two configurations that have the same image and only differ in a finite amount of cells
13:05:11 <oklofok> (and image of configuration c of course means G(c) where G is your automaton, and similarly for preimage)
13:05:57 <oklofok> automatic group = certain kind of group, not very restrictive afaiu
13:06:26 <Patashu> there are patterns in the game of life that collapse into the same thing, e.g. if you just add a random on cell out in the middle of nowhere
13:06:41 <oklofok> an infinite group is the natural place to run a CA, it means an infinite graph that looks the same no matter where you look
13:07:10 <oklofok> and in fact it is very hard to show GoL is surjective without the garden of eden theorem
13:07:30 <oklofok> the smallest pattern without a preimage (proving nonsurjectivity) is of size more than 10x10
13:07:52 <oklofok> (and even after you find that it's certainly not easy to show it doesn't have a preimage)
13:08:12 <Patashu> it's kind of surprising it has to be that large
13:08:26 <oklofok> no one says it has to be large
13:08:33 <Patashu> I mean in the game of life
13:08:51 <Patashu> yeah but I mean, you'd think there'd be a trivial example
13:09:14 <Patashu> what patterns in the game of life turns into an arbitrarily big square of on cells?
13:09:26 <oklofok> you would, but this is how it usually goes, hard to show nonsurjectivity, but easy to show local noninjectivity, which is proven to be equal to nonsurjectivity by the theory
13:09:34 <ais523_> what's the smallest pattern with no known preimage?
13:09:40 <Patashu> http://en.wikipedia.org/wiki/Garden_of_Eden_(cellular_automaton)
13:09:46 <ais523_> (that's different from the smallest known pattern with no preimage)
13:10:08 <oklofok> ais523_: it's easy to check whether something of size smaller than 10x10 has a preimage
13:10:21 <oklofok> so there probably isn't a known example of something we don't know a preimage for
13:11:02 <Patashu> the proof of the garden of eden theorem seems similar to the pigeonhole principle
13:11:21 <ais523_> it pretty much is, isn't it?
13:11:28 <oklofok> i've probably proven it here some time
13:11:33 <oklofok> but anyhow the 1D case is very easy
13:11:48 <ais523_> and the finite case is also very easy
13:11:59 <oklofok> the lecture notes i linked earlier have a very nice illustration of the proof for a 1D automaton
13:12:02 <oklofok> ais523_: what does that mean?
13:12:23 <oklofok> you mean CA running on a finite group? :D
13:12:30 <ais523_> oklofok: or on a finite playfield
13:12:50 <oklofok> yeah then it's trivial that surjectivity = injectivity of course
13:13:03 <ais523_> so the proof is even easier
13:13:07 <oklofok> and injectivity = local injectivity by definition
13:13:19 <oklofok> easier, yes, but that's just set theory
13:13:35 <oklofok> nothing CA specific about it
13:13:37 <ais523_> it might even be possible to prove in pure category theory
13:13:57 <Patashu> http://en.wikipedia.org/wiki/Day_%26_Night I've always found this to be a very cool CA
13:14:05 <Patashu> it's as vibrant as the game of life
13:14:36 <oklofok> yeah that's kind of pretty
13:14:50 <Patashu> if you download mirek's cellebration it has lots of examples for day and night
13:15:03 <Patashu> sparkers of lots of periods, spaceships, spaceship guns, novas...
13:15:06 <ais523_> cheater__: I think pretty much any language can, but in C they'd be so awkward to express in a functional way that it probably wouldn't be worth it
13:15:20 <oklofok> ais523_: the theorem that CA = continuous shift commuting functions on any playfield can be proven by just using category theory
13:15:39 <ais523_> yes, it sounds like the sort of thing that would eb
13:16:07 <oklofok> every CA is obviously continuous and shift commuting, but the other direction was one of the first results in CA theory
13:16:15 <oklofok> nowadays considered trivial
13:16:26 <cheater__> ais523_: what would a monad do in an imperative language?
13:16:31 <ais523_> yep, I was thinking "isn't that obvious? oh right"
13:16:39 <cheater__> ais523_: let's make it easier and take an imperative, functional language like python
13:16:41 <ais523_> cheater__: control computation flow
13:16:51 <ais523_> here's a simple example that came up in my job recently
13:17:01 <Patashu> why is it that in openGL you define normals on vertices, not surfaces...
13:17:06 <ais523_> suppose I have a set of constraints, and I want to transform them into a simpler set of constraints
13:17:13 <oklofok> ais523_: i doubt it's obvious to people who don't know the topology of the configuration space at least
13:17:15 <ais523_> some of the constraints are useless things like 0 <= 0 that I want to delete
13:17:27 <ais523_> I realised it was only obvious in one direction
13:17:37 <cheater__> Patashu: because normals on higher-dimension cells are just interpolations.
13:17:45 <ais523_> cheater__: and some of the other constraints are things like xy = 0, which I want to transform into x = 0 and y = 0
13:17:50 <cheater__> whereas you can't interpolate when you go to a lower dimension.
13:18:08 <oklofok> the topology is such that continuity of G essentially means "if you change something in c, the image of G(c) only changes in a finite amount of places"
13:18:37 <oklofok> that's not quite what it means, but close enough
13:18:41 <ais523_> the actual example was more complicated
13:18:45 <ais523_> and it needs to be an and for this to work
13:19:08 <ais523_> let's say, xy <= z implies x <= z and y <= z, as I was working with positive integers at the time
13:19:12 <ais523_> I think that one's correct
13:19:24 <ais523_> so what I did, when I was writing in OCaml, was I wrote a function that took a constraint as an argument, and returned a list of constraints
13:19:32 <ais523_> it is for positive integers, right?
13:20:02 <ais523_> since when was 0.5 a positive integer?
13:20:06 <Patashu> I like how this discussion has turned to the arbitrary examples being wrong therefore you are wrong
13:20:31 <ais523_> Patashu: nah, it's just trying to get things straight otherwise the examples wouldn't work well
13:20:34 <cheater__> let's take that example, it is correct
13:20:39 -!- azaq23 has joined.
13:20:41 <oklofok> Patashu: well that's called a counterexample
13:20:57 <oklofok> there was a universal quantifier in ais523_'s statement
13:21:03 <ais523_> now, I have this function, let's call it transformConstraints, which transforms 0<=0 into [] and xy<=z into [x<=z; y<=z]
13:21:12 <oklofok> so you just need a specific example for which it doesn't hold to disprove it
13:21:23 <ais523_> and what I do, is I apply it to every element of my constraints, so I write List.concat (List.map transformConstraints constraints)
13:21:31 <ais523_> and then I realised I'd written a monad
13:21:48 <ais523_> see, there's no actual reason for the constraints to be in a list, as the order isn't relevant
13:21:56 <oklofok> although after you made the connection GoL locally noninjective => GoL nonsurjective, maybe i shouldn't assume you're an idiot
13:21:56 <ais523_> so I could just as easily have used a set, or a multiset, or whatever
13:22:10 <Lymia> http://www.reddit.com/r/Logos/comments/hdzll/reddit_logos_for_the_72_hour_countdown_for_the/
13:22:40 <ais523_> and I was basically writing a monad action there
13:22:49 <ais523_> I take a number of possible computation paths, and transform each into a set of others
13:23:11 <Lymia> Reddit better do this.
13:23:19 <ais523_> so, say, in the case of Maybe, if you get Nothing as input you produce Nothing as output, always, if you get Just x you produce either Just y or Nothing as output
13:23:32 <ais523_> in the case of List and Set, you can produce multiple outputs, each of which is then treated independently from then on
13:23:53 <ais523_> so in the List monad, you have concatMap as >>=, and \x -> [x] as return
13:24:36 <ais523_> that's just what I was doing in that OCaml code; if I couldn't transform a constraint I left it alone (i.e. calling return), if I could I returned 0 or 1 or more results, and I concatMaped them together
13:25:13 <ais523_> and so, if I was working in Haskell, I could just have transformed 0<=0 into mzero and xy<=z into x<=z `mplus` y<=z
13:25:19 <ais523_> and then it'd have worked in any MonadPlus at all
13:25:40 <ais523_> (the difference between MonadPlus and Monad is that in MonadPlus, there's also an operator `mplus` for combining multiple outputs)
13:25:48 <ais523_> * (return x<=z `mplus` return y<=z)
13:26:11 <ais523_> that way, I could have run transformConstraints in any MonadPlus at all, and it wouldn't be constrained to lists
13:26:29 <ais523_> so there, there's a situation where I used a monad in OCaml, and didn't even notice until after I'd written the program
13:26:51 <ais523_> you could do exactly the same thing in Python, again quite easily by mistake
13:27:05 <ais523_> the problem with trees is that they don't quite have the same sort of structure
13:27:23 <ais523_> all monads really do is add an "a before b" structure to expression evaluation; that's how the list knows which order it should end up in
13:27:43 <cheater__> <ais523_> I take a number of possible computation paths << you do?
13:27:48 <ais523_> if I'd instead written (return y<=z `mplus` return x<=z), it would output a diffeerent way round
13:28:01 <ais523_> cheater__: well, I'm not just transforming one constraint, but many
13:28:32 <ais523_> so the version of transformConstraint I wrote took only one constraint as an argument, and I had to pass it to concatMap in order to make it take more
13:28:40 <ais523_> but I really wanted to transform a list of constraints
13:29:05 <ais523_> and each of those can be thought of as a separate computation
13:29:22 <ais523_> because they're each treated independently
13:29:36 <lambdabot> Network.Browser setAllowBasicAuth :: Bool -> BrowserAction t ()
13:29:51 <oklofok> my homework is i have to prove predicates and implications form a lattice, in HOL
13:29:55 <lambdabot> Data.Set deleteMax :: Set a -> Set a
13:29:55 <lambdabot> Data.Set deleteMin :: Set a -> Set a
13:30:30 <ais523_> bleh, now I have to remember which of lift and liftM is which
13:30:38 <lambdabot> It could refer to either `Control.Monad.Error.lift', imported from Control.Monad.Error
13:30:38 <lambdabot> or `Control.Monad.Logic.lift', imported from Control.Monad.Logic
13:30:44 <lambdabot> forall a1 r (m :: * -> *). (Monad m) => (a1 -> r) -> m a1 -> m r
13:31:09 <ais523_> what's the Haskell function that takes a -> M x to M a -> M x?
13:31:36 <ais523_> @hoogle Monad M => (a -> M b) -> (M a -> M b)
13:31:36 <lambdabot> Did you mean: a -> M b -> M a -> M b /count=20
13:31:37 <lambdabot> Prelude (=<<) :: Monad m => (a -> m b) -> m a -> m b
13:31:37 <lambdabot> Control.Monad (=<<) :: Monad m => (a -> m b) -> m a -> m b
13:32:58 <ais523_> > (=<<) Data.Set.singleton 4
13:32:58 <lambdabot> Not in scope: `Data.Set.singleton'
13:33:09 <lambdabot> arising from a use of `e_14' at <inter...
13:33:37 <ais523_> :t Control.Monad.Logic.lift
13:33:38 <lambdabot> forall (m :: * -> *) a (t :: (* -> *) -> * -> *). (Control.Monad.Logic.MonadTrans t, Monad m) => m a -> t m a
13:34:02 <lambdabot> Control.Applicative unwrapMonad :: WrappedMonad m a -> m a
13:34:02 <lambdabot> Text.Regex.Base.RegexLike getAllMatches :: AllMatches f b -> f b
13:34:02 <lambdabot> Text.Regex.Base.RegexLike getAllSubmatches :: AllSubmatches f b -> f b
13:34:08 <lambdabot> forall a1 a2 r (m :: * -> *). (Monad m) => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r
13:34:22 <ais523_> cheater__: that and liftM are just wrapping a normal function into a monad
13:35:02 <ais523_> what I'm looking for is id, because I forgot how monads worked
13:36:32 <ais523_> > let f = (\x -> if x = 2 then [2,3] else [x]) in do {a <- f 4; f a}
13:36:32 <lambdabot> <no location info>: parse error on input `='
13:36:45 <ais523_> now I'm muddling Haskell and OCaml
13:37:08 <lambdabot> parse error (possibly incorrect indentation)
13:37:20 <ais523_> > let f = (\x -> (if (x = 2) then [2,3] else [x])) in do {a <- f 4; f a}
13:37:20 <lambdabot> <no location info>: parse error on input `='
13:37:27 <ais523_> > let f = (\x -> (if (x == 2) then [2,3] else [x])) in do {a <- f 4; f a}
13:37:33 <ais523_> > let f = (\x -> (if (x == 2) then [2,3] else [x])) in do {a <- f 2; f a}
13:37:52 <cheater__> > let f x = [2, 3] if x is 2 else [x] in do {a <- f 4; f a}
13:37:53 <lambdabot> <no location info>: parse error on input `if'
13:37:55 <ais523_> > let f = (\x -> (if (x == 2) then 2 `mplus` 3 else mzero)) in do {a <- f 2; f a}
13:37:56 <lambdabot> No instances for (GHC.Num.Num (m a), GHC.Num.Num (m b))
13:38:05 <ais523_> > let f = (\x -> (if (x == 2) then 2 `mplus` 3 else mzero)) in do {a <- f 2; f a} :: [Int]
13:38:06 <lambdabot> No instance for (GHC.Num.Num [GHC.Types.Int])
13:38:07 <cheater__> > let f x = [2, 3] if x == 2 else [x] in do {a <- f 4; f a}
13:38:08 <lambdabot> <no location info>: parse error on input `if'
13:38:10 -!- azaq23 has quit (Read error: Connection reset by peer).
13:38:21 <ais523_> > let f = (\x -> (if (x == 2) then 2 `mplus` 3 else mzero)) in (do {a <- f 2; f a}) :: [Int]
13:38:22 <lambdabot> No instance for (GHC.Num.Num [GHC.Types.Int])
13:38:26 <ais523_> > let f = (\x -> (if (x == 2) then 2 `mplus` 3 else mzero)) in (do {a <- f 2; f a}) :: [Integer]
13:38:26 <lambdabot> No instance for (GHC.Num.Num [GHC.Integer.Type.Integer])
13:38:40 <lambdabot> <no location info>: parse error on input `if'
13:38:43 <ais523_> cheater__: it's if a == b then c else d
13:38:58 -!- azaq23 has joined.
13:38:58 <ais523_> I got muddled because OCaml uses = not ==
13:39:02 -!- azaq23 has quit (Changing host).
13:39:02 -!- azaq23 has joined.
13:39:25 <ais523_> > let f = (\x -> (if (x == 2) then 2 `mplus` 3 else mzero)) in map id (do {a <- f 2; f a})
13:39:26 <lambdabot> arising from a use of `f' at <interact...
13:39:43 <ais523_> > let f = (\x -> (if (x == 2) then (2 `mplus` 3) else mzero)) in map id (do {a <- f 2; f a})
13:39:43 <lambdabot> arising from a use of `f' at <interact...
13:40:07 <Patashu> wow, the rule 'Serviesttes' in mirek's cellebration produces beautiful patterns
13:40:24 <ais523_> oh, I forgot the return calls
13:40:35 <ais523_> > let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else mzero)) in map id (do {a <- f 2; f a})
13:40:37 <ais523_> same mistake I made and corrected earlier
13:40:55 <ais523_> and, hmm, I expected [2,3,3] there
13:41:06 <ais523_> > let f = (\x -> (if (x == 2) then [2,3] else [x])) in map id (do {a <- f 2; f a})
13:41:14 <ais523_> (the map id stuff is just to force it to interpret the output as a list)
13:41:30 <ais523_> > let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else return x)) in map id (do {a <- f 2; f a})
13:41:35 <ais523_> > let f = (\x -> (if (x == 2) then [2,3] else [x])) in map id (do {a <- f 2; f a})
13:41:51 <ais523_> those two lines are identical, except that the second one (which is very similar to my OCaml) uses only lists
13:41:56 <ais523_> and the first can handle any MonadPlus
13:42:00 <cheater__> Patashu: is that available online somewhere?
13:42:19 <ais523_> > let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else return x)) in (do {a <- f 2; f a}) :: Maybe Int
13:42:34 <ais523_> see, Maybe can handle it, but only tracks one of the possible answers, because that's what Mabe does
13:42:40 <ais523_> > let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else return x)) in (do {a <- f 2; f a}) :: Data.Set Int
13:42:41 <lambdabot> Not in scope: type constructor or class `Data.Set'
13:42:50 <ais523_> > import Data.Set; let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else return x)) in (do {a <- f 2; f a}) :: Data.Set Int
13:42:50 <lambdabot> <no location info>: parse error on input `import'
13:43:01 <cheater__> > let f = (\x -> (if (x == 2) then ([2] `mplus` [3]) else return x)) in map id (do {a <- f 2; f a})
13:43:03 <ais523_> umm, what's the syntax in Haskell to use a particular library?
13:43:37 <ais523_> I mean in the language itself
13:43:49 <ais523_> > using Data.Set; let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else return x)) in (do {a <- f 2; f a}) :: Data.Set Int
13:43:49 <lambdabot> <no location info>: parse error on input `;'
13:44:30 <ais523_> oh, apparently it is "import"
13:44:56 <ais523_> > {import Data.Set; let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else return x)) in (do {a <- f 2; f a}) :: Data.Set Int}
13:44:57 <lambdabot> <no location info>: parse error on input `{'
13:45:16 <ais523_> > import Data.Set, let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else return x)) in (do {a <- f 2; f a}) :: Data.Set Int
13:45:17 <lambdabot> <no location info>: parse error on input `import'
13:45:25 <Patashu> cheater__, try http://psoup.math.wisc.edu/mcell/mjcell/mjcell.html
13:45:29 <ais523_> > let f = (\x -> (if (x == 2) then (return 2 `mplus` return 3) else return x)) in (do {a <- f 2; f a})
13:45:30 <lambdabot> No instance for (GHC.Show.Show (m b))
13:45:30 <lambdabot> arising from a use of `M6596097177...
13:45:47 <ais523_> yep, that's what I expected
13:45:54 <ais523_> so what happened there was, I gave it a function that would run in any MonadPlus and didn't tell it which to use
13:46:08 <ais523_> and being Haskell, it happily calculated the function anyway and then didn't know how to display it onscreen
13:47:12 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a)
13:47:23 <Patashu> hmm, I wonder if haskell supports openGL :P
13:49:33 -!- cheater__ has quit (Ping timeout: 252 seconds).
13:52:28 <Vorpal> I'm sure there are bindings
13:52:33 <Vorpal> and there is the FFI after all
13:53:21 <lambdabot> forall (m :: * -> *) a. (MonadPlus m) => m a -> m a -> m a
13:53:29 <Vorpal> ais523_, what is MonadPlus?
13:54:37 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:57:04 <lambdabot> Not in scope: data constructor `MonadPlus'
14:01:11 <lambdabot> forall a. (Eq a) => a -> a -> Bool
14:01:37 <Patashu> hmm, can I not PM the bot with this stuff?
14:01:37 <lambdabot> forall a. (Ord a) => a -> a -> Bool
14:02:02 <Vorpal> Patashu, you can run this in ghci
14:02:08 <Vorpal> so what would the use of that be
14:02:43 <Vorpal> I guess it doesn't do :i
14:02:55 <lambdabot> Control.Monad class Monad m => MonadPlus m
14:02:59 <lambdabot> Control.Monad mplus :: MonadPlus m => m a -> m a -> m a
14:03:29 <Vorpal> Prelude Control.Monad> :i MonadPlus
14:03:29 <Vorpal> class (Monad m) => MonadPlus m where
14:03:29 <Vorpal> mplus :: m a -> m a -> m a
14:03:29 <Vorpal> -- Defined in Control.Monad
14:03:29 <Vorpal> instance MonadPlus [] -- Defined in Control.Monad
14:03:31 <Vorpal> instance MonadPlus Maybe -- Defined in Control.Monad
14:09:23 -!- ralc has joined.
14:10:13 <ais523_> Vorpal: MonadPlus is basically the class of monads where it's a meaningful operation for an action to produce more or less than 1 result
14:10:30 -!- cheater__ has joined.
14:10:47 <ais523_> e.g. in List, there's no problem with producing multiple results from one calculation, they can just become multiple list elements
14:11:05 <ais523_> and in Maybe, it's fine for a computation to not produce a result as you can just put Nothing there and stop the calculation at that point
14:11:09 <ais523_> but in, say, IO, it would be meaningless
14:11:24 <cheater__> last thing i got was <Patashu> cheater__, try http://psoup.math.wisc.edu/mcell/mjcell/mjcell.html
14:11:47 <ais523_> cheater__: don't worry, we got sidetracked and didn't talk about anything relevant in between
14:12:18 <cheater__> that return is the same as constructing the monadic computation?
14:12:26 <cheater__> and that some things have mplus defined?
14:12:51 <ais523_> composing return with a function makes it into a monad action that returns one result
14:13:04 <ais523_> the reason why monad actions are useful is that they don't necessarily have to be defined in terms of return
14:13:28 <ais523_> and mplus gives you a way to return more than one result (likewise, mzero to return no results)
14:13:53 <Vorpal> bbl, going to make food
14:14:50 <cheater__> <ais523_> and what I do, is I apply it to every element of my constraints, so I write List.concat (List.map transformConstraints constraints)
14:15:24 <cheater__> oh trasformConstraints was using return?
14:18:26 -!- azaq23 has quit (Ping timeout: 260 seconds).
14:24:05 -!- azaq23 has joined.
14:31:31 -!- copumpkin has joined.
14:36:52 <ais523_> in disguise in the OCaml program (where I wrote [a] rather than return a)
14:59:53 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
15:09:42 -!- variable has changed nick to Guest75185.
15:24:19 -!- Guest75185 has changed nick to variable.
15:35:07 <cheater__> ais523_: could we make a monadic generalizer?
15:35:24 <cheater__> ais523_: say we have a computation which isn't monadic. the generalizer takes that and makes it monadic.
15:35:49 <ais523_> cheater__: in the trivial sense, yes, you can just compose the function with return
15:36:11 <ais523_> in general, though, not if you want to do anything that actually uses the monadic structure
15:36:20 <ais523_> because monads inherently have a notion of before and after
15:37:00 <cheater__> many functions will just end up being >>= or something
15:37:15 <ais523_> well, it depends on what you mean by making a computation monadic in the first place
15:38:45 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m a -> (a -> m b) -> m b
15:39:12 <ais523_> !src (>>=)::([a] -> (a -> [b]) -> b)
15:39:24 <ais523_> @src (>>=)::([a] -> (a -> [b]) -> b)
15:39:30 <ais523_> @src (>>=):([a] -> (a -> [b]) -> b)
15:39:30 <lambdabot> Source not found. My mind is going. I can feel it.
15:39:45 <lambdabot> forall a b. (a -> [b]) -> [a] -> [b]
15:41:29 <ais523_> in the case of my OCaml program, I just noticed that I'd written a concatMap, and that I was using lists a lot
15:41:40 <ais523_> and thought "hey, I think I wrote a monad action by mistake"
15:41:56 <ais523_> not that writing one of those is a bad thing, especially not in a program where that's the right thing to do
15:42:17 <ais523_> in Haskell, it would have been trivial to generalise to arbitrary monads at that point, which would help if I ever wanted to change to, say, sets
15:42:40 <cheater__> sets sound like a much better idea, tbh.
15:42:59 <ais523_> the point is, though, that your program's polymorphic over all of them
15:43:08 <ais523_> which makes it more general
15:43:25 <ais523_> whether that's irrelevant, or massively useful, depends on precisely what you're doing
15:43:41 <ais523_> e.g. if you're writing a library, being polymorphic over monads is really good as it cuts down on the glue code your user will have to write
15:48:35 <cheater__> doing stuff that's too general can end up being a bad thing too, can't it
15:48:49 <cheater__> if it gets so general people can't think of the application you had in mind in the first place ...
15:49:03 -!- geology2 has joined.
15:49:12 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
15:49:14 -!- geology2 has changed nick to geology.
15:49:31 -!- elliott has joined.
15:49:39 -!- Phantom_Hoover has joined.
16:05:07 -!- geology has quit (Quit: ChatZilla 0.9.86.1 [Firefox 4.0.1/20110413222027]).
16:10:20 -!- rodgort has quit (Quit: ERC Version 5.3 (IRC client for Emacs)).
16:10:32 -!- rodgort has joined.
16:27:47 -!- CakeProphet has quit (Ping timeout: 260 seconds).
17:24:02 -!- oerjan has joined.
17:27:13 -!- oerjan has quit (Client Quit).
17:32:37 <cheater__> i'd quit too if you gave me a cold welcome like that
17:55:55 <Gregor> Name a vaguely-interesting web program that does not require https.
17:55:55 <lambdabot> Gregor: You have 9 new messages. '/msg lambdabot @messages' to read them.
17:57:01 <Gregor> @tell oerjan egojoust hasn't been used in months, that code was known buggy.
17:57:08 <cheater__> do you mean a "webapp" in the SaaS sense?
17:57:10 <Gregor> cheater__: Thing you found on the web that has some JS behavior :P
17:57:30 <Gregor> Even www.google.com is a webapp, it's just not the most interesting one (arguably)
17:57:50 <elliott> <lambdabot> Gregor: You have 9 new messages. '/msg lambdabot @messages' to read them.
17:58:45 <cheater__> btw, unrelated but interesting: http://www.ludism.org/mentat/
17:59:04 <Gregor> Mmm, I think it has to be something people actually use too.
17:59:24 <elliott> Gregor: What are you asking for? :P
17:59:35 <Gregor> <Gregor> Name a vaguely-interesting web program that does not require https.
18:00:12 <elliott> I just mean that the question is impossible to answer well without knowing why you're asking :P
18:00:26 <Gregor> I'm making benchmarks.
18:00:40 <elliott> I think you can actually access gmail over non-https...
18:00:51 <Gregor> I was going to see if I can tackle google docs, but it absolutely cannot be used without https either.
18:00:59 <elliott> Why can't you do https out of curiosity?
18:01:11 <Gregor> Because Node HTTP proxy + HTTPS = lol
18:01:31 <Gregor> Browsers insist on the PROXY having a properly-signed blah blah blah bullshit key.
18:01:42 <Gregor> Which means I need a key signed by e.g. Thawte for ... localhost.
18:01:56 <ais523_> TIL Markdown is "parsed" by regex
18:01:56 <elliott> Gregor: Isn't there that CA that everyone trusts that gives 'em out for free
18:02:09 <elliott> Gregor: Or you could use one of the mdfive 'sploits, though I doubt anyone trusts the relevant CA any more :)
18:02:10 <Gregor> elliott: Yes, but it won't give you a cert for LOCALHOST :P
18:02:17 <elliott> ais523_: Markdown-the-syntax isn't that awful
18:02:23 <elliott> ais523_: and most people don't use Markdown.pl
18:02:34 <elliott> Yes, but it's not /that/ awful
18:02:45 <elliott> It's better than, e.g. DocBook :P
18:02:59 <elliott> Gregor: You could get a cert for lolthisispointedatmymachine.codu.org :P
18:03:03 <ais523_> I use a wiki that has markdown syntax sometimes
18:03:11 <ais523_> its internal links are something bizarre like [link]()
18:03:14 <elliott> Gregor: Man, I'm having trouble thinking of anything >_>
18:03:18 <ais523_> I might have that backwards in at least two different ways
18:03:20 <Gregor> But that's irrelevant, suffice to say it's a pain, I want non-https :P
18:03:23 <elliott> ais523_: That's just a hack around the fact that markdown doesn't have wikilink syntax :P
18:03:26 <elliott> It'll just be rewriting href="
18:03:28 <elliott> It'll just be rewriting href=""
18:03:44 <elliott> ais523_: Well that's not Markdown's fault.
18:04:07 <ais523_> although Markdown does have a tendency to be used in stupid ways; it's not its fault but it's still aggravating
18:04:29 <ais523_> single-* for italics is also an unfortunate design decision, it happens too often when the special meaning isn't desired
18:04:40 <ais523_> (even MediaWiki runs into trouble occasionally with '' in the middle of words)
18:07:16 <elliott> meh, it's better than _ for italics
18:09:59 <elliott> woiuldntit be aesoekme if oknc e yuioiu stesasdrtred tygpoijn a word yuoiu coudkktmn tkrase yuiore fingerds off thre keytjnbeeors
18:10:11 <elliott> yuou just hasdf to slide thejm arotiuhnd
18:15:06 <pikhq> elliott: You'll probably be glad to know that the FUSE branch of tup was merged.
18:17:23 * pikhq has yet to get gittup to build.
18:20:39 <ais523_> elliott: I can't tel whether "coudkktmn" was meant to be "could" or "couldn't"
18:29:54 -!- elliott has quit (Ping timeout: 264 seconds).
18:30:01 -!- elliott has joined.
18:32:58 <pikhq> Error: Explicitly named file 'built-in.o' not found in subdir 24885.
18:33:11 <pikhq> (subdir 24885 refers to linux/drivers/watchdog)
18:33:25 <pikhq> (no, that does *not* have a Tupfile)
18:34:43 -!- cheater__ has quit (Quit: Leaving).
18:36:12 -!- cheater_ has joined.
19:09:18 <pikhq> http://www.gnu.org/software/automake/manual/html_node/Objects-created-both-with-libtool-and-without.html#Objects-created-both-with-libtool-and-without This has got to be the most revolting page I've read in a while.
19:10:40 <ais523_> pikhq: is that exploiting a bug in automake to work around a bug in libtool?
19:10:43 <ais523_> that's actually pretty hilarious
19:11:32 <pikhq> ais523_: Not really a *bug* as it is a very obscure feature.
19:12:07 <pikhq> ais523_: It's actually intentional that you get differing object filenames if you use per-target CFLAGS.
19:12:28 <pikhq> ais523_: It's just using per-target CFLAGS here that are not distinct from the normal CFLAGS.
19:14:35 <pikhq> Still, it is absolutely *astounding* how much crazy shit Autotools does just to work around deficiencies in the C build system.
19:16:48 <ais523_> bundling up crazy shit into conveniently reusable m4 macros
19:17:04 <pikhq> Seems to me it would've been easier to just replace the C build environment. :P
19:17:21 -!- azaq23 has quit (Quit: Leaving.).
19:18:18 <pikhq> Admittedly, at the *time* there was no way they could get away with saying "Yeah, just use GNU everything", and now it'd be a bit impractical to rejigger GCC that extensively.
19:18:40 -!- oerjan has joined.
19:19:31 <lambdabot> oerjan: You have 1 new message. '/msg lambdabot @messages' to read it.
19:19:36 <lambdabot> Gregor said 1h 22m 35s ago: egojoust hasn't been used in months, that code was known buggy.
19:19:54 <oerjan> Gregor: i have no idea what quote of mine you would be referring to
19:20:07 <Gregor> Your long-winded message to me about egojoust having bugs.
19:20:27 <Gregor> Didn't read the timestamps.
19:20:38 <Gregor> OK, so here's the question: Why did lambdabot tell me I had messages from three MONTHS ago.
19:20:43 <pikhq> Imagine a world where the C compiler had some intelligence. Here is how you would build a program: "gcc main.c"
19:20:47 <elliott> well lambdabot was down for a while
19:21:35 <oerjan> maybe someone restarted lambdabot from backup
19:22:26 <Sgeo> Gregor, dd you aee my maessgae/
19:23:03 <elliott> Gregor: dd you aee my maessgae
19:24:35 <elliott> but dd you aee MY maessgae
19:24:35 <Sgeo> Gregor, HackEgo lines that are too long get cut off without any notfication that they're cut off
19:24:44 <HackEgo> 160) <calamari> anmaster gonna give him a birthday bj? <AnMaster> IF ONLY I COULD FIND MY PHONE \ 259) <fizzie> And to think: if only we wouldn't celebrate birthdays, there would be no birthday paradox, and we could get by with half as long hash functions. (What do you mean it doesn't work that way?) \ 350) <ZOMGMODULES>
19:24:47 <Sgeo> `pastequotes birth
19:24:49 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.6452
19:24:58 <oerjan> ais523_: i mentioned to oklofok earlier that i at least have proved that roman numeral look and say must grow approx. exponentially
19:25:41 <ais523_> oerjan: that's not surprising, but it's good to have proved it
19:27:34 <elliott> " The best HTML5 is native to the operating system, so Web sites have the fewest translation layers to pass through."
19:27:50 <elliott> I think the IE team might actually originate from a different universe
19:28:43 <ais523_> oerjan: isn't that what Chrome OS is for?
19:29:15 <elliott> ais523_: Chrome OS is actually just Chrome on X on Gentoo
19:29:16 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.31004
19:29:25 <elliott> tweaked to be a bit more OS-like
19:29:28 <ais523_> elliott: did you see the latest Agora mishap, by the way?
19:29:46 <ais523_> an errant search-and-replace made it so that every vote has to select either PRESENT, or two other options
19:29:58 <ais523_> we're debating if it's really the case that every vote must be FOR+AGAINST
19:30:12 <ais523_> and if that would make the game unplayable
19:30:25 <ais523_> (Murphy thinks FOR+FOR is legal, G. thinks that plain FOR is legal because the rule now contradicts itself)
19:30:38 <elliott> AIAN would prevent it being unplayable
19:34:00 <ais523_> yep, but the problem with AIAN is that it triggers only if there are no workable dictatorship scams
19:34:05 <ais523_> and proving the absence of those is stricky
19:34:20 -!- wareya_ has joined.
19:35:00 <elliott> ais523_: ugh, it should be tightened
19:36:40 -!- monqy has joined.
19:36:51 -!- wareya has quit (Ping timeout: 240 seconds).
19:38:24 <Sgeo> ais523_, what subject line(s)?
19:38:30 <Sgeo> I can't find it :/
19:39:41 <ais523_> Sgeo: BUS: Re: [Assessor] something
19:40:55 -!- TOGoS has joined.
19:41:47 -!- augur has quit (Remote host closed the connection).
19:42:39 <Sgeo> ais523_, did you see what Murphy said?
19:43:18 <ais523_> different people seem to disagree on exactly what happened
19:43:28 <ais523_> although most people think it isn't fatally broken, they disagree as to why
19:44:15 <Sgeo> But at any rate, if it is broken, Assessor can just change the rules as long as no one disagrees
19:44:45 <ais523_> you mean ratifying false proposal results?
19:45:08 <ais523_> I think that unambiguously works, so AIAN isn't triggered
19:45:10 <elliott> that would be illegal, of course
19:45:27 <elliott> ais523_: it will be triggered if someone objects continuously, no?
19:45:28 <Sgeo> Not my idea, it's Murphy's. I think.
19:45:33 <elliott> because then a majority can't change the rules, still
19:46:09 <ais523_> elliott: it's not even technically illegal if you state, upfront, in the message that you're ratifying something that you think is incorrect
19:46:11 <Sgeo> "It doesn't trigger AIAN as long as "the Assessor announces some results
19:46:11 <Sgeo> and they're allowed to self-ratify" still works." -- Murphy
19:46:16 <ais523_> note that this is true even if you're allying
19:51:08 <oerjan> <ais523_> > {import Data.Set; [...] <-- import only works at module top level, which lambdabot doesn't support (you can try with EgoBot)
19:51:23 <elliott> ais523_: eh? it's illegal to ratify a knowingly incorrect document
19:52:11 <ais523_> elliott: unless you say it's illegal
19:52:29 <oerjan> <ais523_> and being Haskell, it happily calculated the function anyway and then didn't know how to display it onscreen
19:52:31 <ais523_> there's an exception for if you explain that the document may be incorrect, and the general nature of the inaccuracy
19:52:50 <oerjan> technically it almost certainly discovered it couldn't display it before trying to calculate it
19:52:54 <ais523_> which was added for the case when you're ratifying a currently unknown gamestate, although it helps in using ratification as proposal too
19:52:59 <ais523_> oerjan: ah, did it calculate it anyway?
19:53:05 <ais523_> probably not because of laziness
19:53:23 <oerjan> ais523_: no, i'm saying it never started running because that error message is compile-time (type checking)
19:53:39 <ais523_> I forgot Haskell was compiled
19:53:44 <ais523_> especially as I normally use it from an interpreter
19:54:34 <oerjan> haskell is very compiled, it's just type inference which makes it not show all the time
19:54:57 <elliott> Does Haskell even define REPL semantics of any kind?
19:55:10 <elliott> It's only specified in terms of batch translation I think
19:55:14 <ais523_> oerjan: I did know Haskell was compiled, I just forgot
19:55:48 <elliott> ais523_: still, even interpreted haskell has to type-check first :)
19:57:29 * Phantom_Hoover gets bored, tries to convince people on Omegle that he is a representative of Omegle.
19:58:39 <elliott> "Please tell me your Omegle password."
19:58:40 <ais523_> Phantom_Hoover: was it you who did that in #minecraft?
19:58:50 <oerjan> i think ghci only added full import syntax in a relatively recent version
20:01:33 <oerjan> <Patashu> hmm, I wonder if haskell supports openGL :P
20:01:54 <ais523_> that's like asking if INTERCAL supports ncurses
20:02:00 <oerjan> iirc that's precisely the graphics library included in the haskell platform
20:04:32 <ais523_> elliott: well, Funge-98 does, and there's an FFI between them
20:07:31 <oerjan> <ais523_> in Haskell, it would have been trivial to generalise to arbitrary monads at that point, which would help if I ever wanted to change to, say, sets
20:07:37 <oerjan> sets are not monads in haskell
20:08:06 <ais523_> mathematically, they're monads, and you can write the definitions easily enough
20:08:21 <oerjan> there is that tricky bit about needing Ord or at least Eq to be able to check equality of elements
20:08:31 -!- HolyBlood has quit (Ping timeout: 240 seconds).
20:08:35 <oerjan> which breaks the standard monad definition
20:09:00 <oerjan> because a monad needs to work for _all_ element types
20:09:14 <elliott> there's that blog post doing it
20:09:22 <elliott> with an alternative (iirc Oleg's) monad class
20:09:26 <elliott> multiple classes even I think
20:09:42 <ais523_> mathematically, there's no issue with sets of functions
20:09:48 <elliott> http://www.randomhacks.net/articles/2007/03/15/data-set-monad-haskell-macros
20:10:20 -!- HolyBlood has joined.
20:10:47 * oerjan looks askance at HolyBlood and wonders if e is in the right channel
20:11:29 <elliott> ais523_: hmm, Timwi hasn't replied yet
20:11:44 <ais523_> he's probably waiting on a reply from Graue
20:11:44 -!- augur has joined.
20:11:50 <ais523_> and Graue has quite possibly deleted the email
20:12:03 <oerjan> wtf google's define: prefix isn't working any more
20:12:04 <elliott> http://esolangs.org/wiki/FileCode ;; /sigh
20:12:25 <elliott> although it just shows it at the top
20:12:29 <elliott> you have to click "more" for more definitions
20:12:43 <elliott> ais523_: I wouldn't think Graue would delete it without sending a reply, but I might be wrong
20:12:52 <elliott> http://esolangs.org/w/index.php?title=Main_Page&curid=1&diff=22956&oldid=22297
20:12:54 <elliott> ais523_: please to be block
20:12:57 <ais523_> hmm, i don't know if I get FileCode at all
20:13:25 <oerjan> elliott: um i'm seeing a completely ordinary result page as if i had written just the word i search for alone
20:14:05 <ais523_> elliott: blocked, autoblocked, prevented accounts being created from the same IP
20:14:05 <elliott> oerjan: What query, I'll see if I can replicate here
20:14:43 <ais523_> also, I didn't know that the matrix of solidity thing was on the main page
20:14:49 <ais523_> how did that become a meme, anyway?
20:14:55 <elliott> esoterica person coming here
20:14:57 <HackEgo> 329) <treederwright> enjoy being locked in your matrix of solidity
20:16:37 <Phantom_Hoover> I mean, saying I'm conducting a demographic survey for Omegle and asking for a/s/l is good and fine, but it doesn't really tell me if I've fooled anyone.
20:17:06 <oerjan> elliott: same on english version
20:45:00 -!- myndzi has quit (Remote host closed the connection).
20:47:49 <ais523_> yay, now we can \o/ without the fear of having legs added!
20:49:15 <elliott> pikhq: you forgot the penis
20:49:34 * oerjan swats pikhq for obviously trying to use the wrong kind of nick alignment -----###
21:10:49 <lambdabot> Couldn't match expected type `b -> b' against inferred type `[a]'
21:10:49 <lambdabot> In the first argument of `scanr', namely `tail'
21:10:53 <lambdabot> forall a b. (a -> b -> b) -> b -> [a] -> [b]
21:11:16 <elliott> oerjan: [a,b,c,d] -> [[b,c,d],[c,d],[d]] how do
21:11:31 <lambdabot> [[a,b,c,d],[b,c,d],[c,d],[d],[]]
21:11:50 <Deewiant> > init . tails . tail $ [a,b,c,d]
21:12:21 <elliott> > map (\(x:xs) -> (x,xs)) tails [a,b,c,d]
21:12:21 <lambdabot> Couldn't match expected type `[[t]]'
21:12:27 <elliott> > map (\(x:xs) -> (x,xs)) . tails $ [a,b,c,d]
21:12:28 <lambdabot> [(a,[b,c,d]),(b,[c,d]),(c,[d]),(d,[]),*Exception: <interactive>:3:5-21: Non...
21:12:32 <elliott> > map (\(x:xs) -> (x,xs)) . init . tails $ [a,b,c,d]
21:12:33 <lambdabot> [(a,[b,c,d]),(b,[c,d]),(c,[d]),(d,[])]
21:12:48 <elliott> > map (\(x:xs) -> (x,xs)) . init . init . tails $ [a,b,c,d]
21:12:53 -!- HolyBlood has quit (Ping timeout: 246 seconds).
21:14:21 <elliott> Map.elems has no predictable result order, right?
21:14:44 <Deewiant> \(x:xs) -> (x,xs) == head &&& tail
21:15:04 <elliott> Deewiant: That was just a test function.
21:15:07 -!- HolyBlood has joined.
21:21:01 -!- NihilistDandy has quit (Quit: leaving).
21:21:22 -!- NihilistDandy has joined.
21:22:48 <Phantom_Hoover> http://mspaintadventures.wikia.com/wiki/Weird_Time_Shit
21:26:37 <oerjan> > [(x, xs) | x:xs@(_:_) <- tails [a,b,c,d]]
21:28:20 <oerjan> elliott: for your @unpl needs ^
21:29:18 <Deewiant> > map (head &&& tail) . filter (not.null.drop 1) . tails $ [a,b,c,d]
21:32:05 <ais523_> haha, new in Perl 5.14 is the ability to name a package Foo::::Bar
21:32:26 <ais523_> although you're going to have to load it by hand unless your filesystem supports directories with zero-length names
21:32:41 <elliott> - if (strcmp(name, "Foo::::Bar"))
21:33:17 <TOGoS> was 'if (strcmp(name, "Foo::::Bar"))' srsly in the source?
21:33:23 <ais523_> TOGoS: no, elliott is joking
21:34:02 <ais523_> I think even Vorpal would have realised that was a joke...
21:34:10 <TOGoS> I had a hunch but, knowing Perl...
21:34:19 <ais523_> <Vorpal> ais523, I don't get it
21:34:47 <TOGoS> gourd is what you thank when you find out that some source code is not as ridiculous as it could be.
21:35:05 <TOGoS> then you shake it for good luck
21:35:08 <ais523_> in case you hadn't guessed, I'm reading the Perl 5.14 changelog
21:35:12 <ais523_> some of it looks useful, like s///r
21:44:51 <ais523_> also, I'm amused at Perl having versioned pragmas
21:45:17 <ais523_> (the pragmas are implemented as modules, and modules have version numbers, but it's crazy seeing things like "The overload pragma has been upgraded from 1.10 to 1.13.")
21:48:36 <ais523_> pluggable pragmata's a little bizarre as language features go
21:52:50 -!- FireFly has quit (Quit: swatted to death).
22:01:34 * elliott reads the beautiful funge 9eight subset log
22:01:55 <elliott> (n % 2) by outputting to a file and inputting it again, so that you can do xor, so that you can write an adder
22:02:52 <ais523_> elliott: people were trying to find a minimal Funge-98-complete subset, without abusing fingerprints?
22:03:53 <elliott> ais523_: no, the topic came up of Funge-98 minus ninety-three
22:03:55 <ais523_> (if you do abuse fingerprints, you could just make a feral fingerprint named the null string, that did s/(/0/ on the program and then interpreted it as a program in the language Unary)
22:03:58 <elliott> i.e. all ninetythree instructions are gone
22:04:16 <elliott> we couldn't figure out how to get the lowest bit of a number to write an adder with xor
22:04:24 <elliott> but then deewiant realised that the lower bit of its flag determines binary or text mode
22:05:24 <ais523_> how do you get the higher bits?
22:10:12 -!- augur has quit (Remote host closed the connection).
22:10:15 -!- NihilistDandy has quit (Quit: leaving).
22:12:55 -!- elliott has quit (Ping timeout: 276 seconds).
22:20:09 * pikhq wonders how much time glibc spends to do literally nothing
22:20:58 <pikhq> Approximately "Can't tell because it's t3h borken"
22:21:55 <pikhq> make[2]: *** No rule to make target `../manual/errno.texi', needed by `../sysdeps/gnu/errlist.c'. Stop.
22:22:40 <ais523_> more Perl amusement: they went and changed the type that an API function returns
22:23:10 <ais523_> defending it partly by saying it was marked as "may change", which is fine, but also that they did a Google code search and found that nobody else was actually using it
22:26:32 <ais523_> I also love reading the lists of bugfixes, just because the bugs were so bizarre
22:27:16 <ais523_> e.g. sub { $_[0] = *foo }->($hash{key}); in 5.12 assigns the /string/ "*main::foo" to $_[0]
22:29:09 <Sgeo> http://www.reddit.com/r/todayilearned/comments/he4du/til_you_cant_drink_coke_in_space_it_makes_you/c1ur38k
22:29:16 <Sgeo> I have no words...
22:35:22 <pikhq> Okay, 5:30 for a build of glibc 2.13 from a clean dir...
22:36:47 <pikhq> 1:16 for a no-op build.
22:37:11 <pikhq> That is fucking ridiculous.
22:47:13 <Phantom_Hoover> "Today is the day the Author finally discovered a metaphor that perfectly combines his two greatest passions in life: technology and unidirectional relationships wherein a female is able to completely dominate him emotionally."
22:47:57 <Phantom_Hoover> "The more astute Reader will realize the true meaning of today’s comic: the Author is using his vast influence to encourage smart engineers around the world to create computer software that will talk nicely to him."
22:51:56 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:54:20 <oerjan> I am sorry Randall, I cannot do that.
23:02:41 <Phantom_Hoover> "The Author saw the film Inception and it confused him. He decided to make a comic strip about himself and a squirrel as most visual learners tend to do when frustrated."
23:03:04 -!- Patashu has joined.
23:07:07 <pikhq> Phantom_Hoover: Definitely still tupping.
23:13:52 -!- HolyBlood has quit (Ping timeout: 260 seconds).
23:15:03 <Phantom_Hoover> "The newscaster is doing exactly that which he is being criticized for - letting people without college physics degrees voice their opinions."
23:17:55 -!- cheater79 has quit (Remote host closed the connection).
23:17:58 -!- HolyBlood has joined.
23:18:04 <Phantom_Hoover> I particularly like the ubiquitous jabs at Munroe's sexual politics.
23:18:31 -!- cheater79 has joined.
23:25:43 -!- augur has joined.
23:28:06 -!- copumpkin has quit (Ping timeout: 264 seconds).
23:32:43 -!- alegend45 has joined.
23:33:09 <alegend45> I want to make a programming language WORSE than Malbolge!
23:41:05 -!- Phantom_Hoover has quit (Remote host closed the connection).
23:41:15 <Patashu> Why not make a class of arbitrarily more difficult languages
23:41:27 <Patashu> Then you'll have your work cut out for you
23:43:55 <Patashu> Like how there are increasingly more inaccessible ordinals and notations for increasingly larger numbers like conway arrow notation and so on
23:44:07 <Patashu> Is there a permutation you can do to a language to make it harder?
23:45:03 <alegend45> But how do I make it more difficult?
23:45:07 <Patashu> I'm picturing a language mutator that randomly applies the side-effect of a different operation to every operation you can do
23:45:11 <Patashu> so you can't do anything without mucking up something else
23:45:18 <Patashu> and if you try to fix that it messes up something else and so on
23:45:23 <Patashu> kind of like reverse engineering cryptography
23:45:59 <Patashu> Break this SHA-256 hash to continue programming?
23:47:05 <oerjan> we already have a hash-breaking esolang
23:47:50 <oerjan> @hoogle m (a -> b) -> a -> m b
23:47:50 <lambdabot> Control.Applicative (<*>) :: Applicative f => f (a -> b) -> f a -> f b
23:47:50 <lambdabot> Control.Monad ap :: Monad m => m (a -> b) -> m a -> m b
23:47:50 <lambdabot> Control.Applicative (<**>) :: Applicative f => f a -> f (a -> b) -> f b
23:48:10 <Patashu> dang there are some weird ass operators in haskel
23:48:23 <oerjan> just not the one i want
23:50:45 <alegend45> But how exactly does Malbolge work? The wiki isn't very good at explaining it.
23:51:03 <Patashu> it's a ternary language with lots of arbitrary ternary bit-wise operators that aren't awfully useful
23:51:29 <Patashu> and doesn't the program counter move around randomly?
23:52:13 <oerjan> acually there are just two operators iirc
23:54:39 -!- jassumjas has joined.
23:55:01 <oerjan> no it doesn't move around randomly
23:55:21 -!- HolyBlood has quit (Ping timeout: 260 seconds).
23:55:56 <oerjan> however the previously executed instruction is encrypted after each step
23:56:33 <oerjan> except for jumps, for which the encryption hits the instruction before the target instead
23:57:15 <oerjan> (this exception for jumps supposedly makes things much easier to program)
23:58:48 -!- copumpkin has joined.
00:17:34 -!- augur has quit (Remote host closed the connection).
00:18:28 -!- augur has joined.
00:20:07 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:26:35 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
00:26:55 -!- augur has quit (Remote host closed the connection).
00:35:52 -!- TeruFSX has quit (Remote host closed the connection).
00:44:36 -!- copumpkin has joined.
00:51:52 -!- Lymia has quit (Ping timeout: 248 seconds).
00:57:35 -!- augur has joined.
00:57:35 -!- augur has quit (Remote host closed the connection).
01:02:28 -!- jassumjas has quit.
01:03:58 <Sgeo> Dear Google Docs: Modern is, in fact, a word.
01:04:13 <Sgeo> As is "science"
01:04:21 -!- ralc has quit (Quit: Leaving).
01:23:09 -!- augur has joined.
01:59:40 -!- oerjan has quit (Quit: Good night).
02:24:56 -!- alegend45 has quit (Quit: ChatZilla 0.9.86.1 [Firefox 4.0.1/20110422203143]).
02:56:58 <pikhq> Why is it that a choir concert consisting of pop songs upsets me?
02:57:54 <pikhq> Dear God, people, you're allowed to do more than a melody and a harmony.
02:58:33 -!- TOGoS has left.
03:00:49 <pikhq> Bohemian Rhapsody shall make me feel better about that.
03:15:28 -!- Lymia has joined.
03:15:28 -!- Lymia has quit (Changing host).
03:15:28 -!- Lymia has joined.
03:49:27 -!- augur has quit (Remote host closed the connection).
04:04:04 -!- augur has joined.
04:05:36 -!- augur has quit (Remote host closed the connection).
04:39:25 * Sgeo gets ticked off at the Nexuiz controversy
04:40:57 <Patashu> It's a GPL licensed game that's being ported to a console where you have to pay for it?
04:41:39 -!- augur has joined.
04:42:13 <Sgeo> All I know is that it's making me not sure how suitable Nexuiz is as a game that another channel I'm in can play with and against each other
04:42:38 <pikhq> Unless there was a copyright assignment or a unanimous agreement among the copyright holders, that game is literally going to be illegal to ship.
04:44:23 <Sgeo> I don't care about the controversy itself, I'm more upset that it forced a fork, and that that fork isn't suitable to play.
04:44:39 <Sgeo> Hopefully Nexuiz Classic still works decently
04:59:11 -!- pingveno has quit (Ping timeout: 276 seconds).
05:00:29 -!- pingveno has joined.
05:02:33 -!- ThePing has joined.
05:02:33 -!- ThePing has left.
05:14:50 -!- SgeoN1 has joined.
05:35:56 <pikhq> Huh. I've got LostKng in 68K.
05:36:42 <pikhq> It's 2.1M normally.
05:49:07 <pikhq> I seem to be lost in reading *my own code* from a while ago ATM.
05:49:46 <pikhq> I seem to have done a lot of tail-recursive C.
06:13:21 -!- NihilistDandy has joined.
07:30:27 -!- augur has quit (Remote host closed the connection).
08:01:08 -!- augur has joined.
08:06:21 -!- NihilistDandy has quit (Quit: leaving).
08:43:56 -!- monqy has quit (Quit: hello).
10:07:32 -!- Tritonio has joined.
10:07:45 -!- BeholdMyGlory has joined.
10:10:42 -!- ralc has joined.
10:17:12 -!- aloril has quit (Ping timeout: 240 seconds).
10:29:51 -!- aloril has joined.
10:33:47 -!- SgeoN1 has quit (Read error: Connection reset by peer).
10:34:08 -!- SgeoN1 has joined.
10:57:58 -!- MigoMipo has joined.
11:25:00 * Sgeo parts #vim with an obnoxious part message
11:32:18 <Sgeo> It contained "Emacs rules", yes
11:32:54 <Lymia> Do the same to #emacs
11:33:01 <Lymia> "Eighty Megs And Constantly Swapping"
11:33:13 <Sgeo> But I _like_ emacs!
11:34:16 <fizzie> Used to be just "Eight"; I guess even "Eighty" is quite outdated now.
11:44:41 -!- oerjan has joined.
11:49:40 <fizzie> "Eight Gigs" would be a reasonable amount of memory, but then you'd have to convince everyone to switch to Egacs.
11:51:39 <cheater_> surely a computer system with eight motherboards is fast right
11:51:39 <fizzie> Some of the others are more timeless, though. "Emacs Makes A Computer Slow", "Escape Meta Alt Control Shift", "Eventually Munches All Computer Storage".
11:53:27 -!- cheater79 has quit (Ping timeout: 258 seconds).
12:30:56 -!- Vorpal has joined.
13:14:24 -!- Phantom_Hoover has joined.
13:21:17 -!- Tritonio has quit (Quit: Leaving).
13:21:44 -!- Tritonio has joined.
13:29:24 <HackEgo> 223) <ais523> fizzie: 50kB is quite a lot
13:32:03 <oerjan> should be enough for everyone
13:41:15 -!- cheater_ has quit (Disconnected by services).
13:41:43 -!- cheater__ has joined.
14:00:47 -!- Tritonio has quit (Quit: Leaving).
14:13:49 -!- Sgeo_ has joined.
14:16:10 -!- ralc has quit (Read error: Operation timed out).
14:16:22 -!- Sgeo has quit (Ping timeout: 246 seconds).
14:19:56 -!- aloril has quit (Ping timeout: 248 seconds).
14:22:55 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:32:16 -!- aloril has joined.
14:49:42 -!- copumpkin has joined.
15:03:12 -!- FireFly has joined.
15:12:21 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
15:28:13 -!- elliott has joined.
15:36:04 <elliott> 11:25:00: * Sgeo parts #vim with an obnoxious part message
15:36:09 <elliott> Sgeo_: let me guess, they couldn't answer a stupid question
15:36:24 -!- SgeoN1 has quit (Read error: Connection reset by peer).
15:36:45 -!- SgeoN1 has joined.
15:40:54 <cheater__> ELLIOTT IS THE MAXIMUM OF ANY SET ORDERED BY THE FRIENDLINESS RELATION
15:41:28 <elliott> Sgeo_: should i use vim or emacs
15:41:32 -!- ais523 has joined.
15:43:14 <cheater__> ais523_: let's take haskell and assume eager eval. can it still have monads? if yes, what are the limitations?
15:45:11 <ais523_> yes, and none, the concept of monads has nothing to do with laziness
15:54:13 <copumpkin> monads come from a field that has never heard of laziness
15:56:23 <elliott> that was the worst question i've ever heard
15:58:29 -!- oerjan has quit (Quit: food ->).
16:01:23 <cheater__> elliott: i have finally found that special place in your heart that will keep the memory alive
16:01:36 <ais523> I suppose they have something vaguely to do with each other in that for some (not all) of the problems monads solve, there are other solutions in strict langs that don't work in lazy langs, so they're less necessary in strict langs, although still very useful
16:02:01 <cheater__> what solutions are you thinking of though?
16:04:36 -!- Tritonio has joined.
16:05:29 -!- Tritonio has quit (Read error: Connection reset by peer).
16:05:39 -!- Tritonio has joined.
16:07:33 -!- Tritonio has quit (Client Quit).
16:08:56 <elliott> ais523: the difference between monads in strict and lazy languages is that they can provide a convenient ordering mechanism in lazy ones, IMO
16:09:00 <elliott> which is why State, IO, etc. all work
16:09:08 <ais523> elliott: yes, that's what I was talking about
16:09:16 <elliott> whereas in strict languages, you have a defined ordering mechanism already
16:09:19 <ais523> and in strict languages, things are ordered anyway, unless you use insane amounts of multithreading
16:09:24 <elliott> I suppose you could have utterly undefined, but strict, evaluation order
16:09:26 <elliott> and no sequencing operator
16:09:29 <elliott> but that would be pathological
16:09:56 <elliott> ais523: it really annoys me when people say that monads make IO pure
16:10:09 <ais523> elliott: because it's technically correct but useless?
16:10:15 <elliott> the IO monad is still impure, it's only a monad because it needs ordering
16:10:29 <ais523> well, it's pure if you think of it as an infinite lookup table generator
16:10:29 <elliott> (it doesn't violate the language's referential transparency, but that's not the same as being pure)
16:16:34 -!- pumpkin has joined.
16:17:51 -!- Tritonio has joined.
16:19:26 -!- copumpkin has quit (Ping timeout: 248 seconds).
16:32:06 -!- pumpkin has changed nick to copumpkin.
16:32:21 <cheater__> elliott: what if you wash it with soap
16:45:51 <pikhq> elliott: Yeah, people definitely have confusion about what "purity" means.
16:46:30 <pikhq> And so they think that a way of modelling impure actions is somehow pure.
16:47:57 <ais523> pikhq: if all you're doing is modelling them, not actually doing them, ofc it can be pure
16:48:12 <ais523> I can sort-of envisage an IOSimulator :: IO x -> x
16:48:27 <ais523> which doesn't work like unsafePerformIO, but rather just simulates all the IO internally and then ignores it
16:49:40 <elliott> for a start, it would be simulateIO.
16:49:47 <elliott> yours is an invalid constructor signature.
16:50:00 <elliott> for a ... middle, the whole point of the IO monad is that you execute the actions modelled
16:58:48 <pikhq> ais523: You model it so that the language can go behind your back and rape purity.
16:59:22 <ais523> elliott: bleh, I forgot case-sensitivity
17:01:07 <elliott> ais523: 'ocaml 'is 'way 'better
17:02:34 -!- monqy has joined.
17:03:10 <cheater__> pikhq: well the modelling is a question similar to: if you write a php to haskell converter, is it a pure, functional language?
17:07:16 <elliott> no, that is not similar at all
17:07:29 <Sgeo_> elliott, the only reason I was there in the first place was because I saw a Hedgewars game labelled #vim
17:08:03 <elliott> hedgewars' rope physics suck therefore the game sucks, today you learned
17:13:52 -!- Tritonio has quit (Quit: Leaving).
17:16:47 <Phantom_Hoover> Sgeo_ always evaluates a game based on its rope physics.
17:17:37 <Sgeo_> elliott, how do the rope physics suck? I'm bad at judging these things, but I've seen people rope with far more ease than in W:A
17:17:50 <elliott> Sgeo_: They are inferior to W:A's.
17:18:03 <elliott> The ease doesn't matter, the fact is that they're totally weird and unnatural and you can't do nearly as much with them as you can with W:A.
17:19:15 -!- ais523 has quit (Ping timeout: 240 seconds).
17:19:18 <elliott> Phantom_Hoover: shut up, you've probably never even played a Worms game.
17:19:49 -!- ais523 has joined.
17:20:09 <monqy> all about the rope physics
17:20:34 <Sgeo_> I'm considering putting the Tube Trap map in HW and seeing if it's still playable
17:21:04 <oklofok> like magic but you also get an erection
17:21:06 <elliott> Phantom_Hoover: worms clone
17:21:28 <elliott> oklofok: rope race replays are so much fun to watch it's ridiculous
17:21:50 <oklofok> there was that one seriously fucked up thing done by a bot
17:22:10 <Sgeo_> Does Worms Reloaded have replays?
17:22:35 <Sgeo_> If not, it sucks on that basis alone.
17:22:37 <oklofok> of course, bots are somewhat better than people at these things
17:23:40 <Sgeo_> What's wormuz's roping like?
17:23:53 <elliott> Sgeo_: W:A, accept no imitations.
17:23:56 <Sgeo_> (Or is it wormux?)
17:24:06 -!- olsner_ has joined.
17:24:13 <monqy> imagine a virtual world but rope
17:24:43 * Sgeo_ throws an old woman at monqy
17:25:15 <elliott> oh god W:A will work out of the box in Wine now
17:25:46 <Sgeo_> elliott, uh, out of the box? Don't you need to install the update to do practically anything with W:A even on Windows?
17:26:13 <elliott> Phantom_Hoover: Yes, like I said, the update that makes it work without a patched DLL with Wine is out.
17:26:23 <elliott> Phantom_Hoover: (It's still updated, even after thirteen years.)
17:26:38 <elliott> And yes, you can; one of the torrents is even mine, although I think it's dead.
17:26:53 <elliott> Phantom_Hoover: But you should throw money at Team17 as soon as possible.
17:27:06 <elliott> Sgeo_: You previously needed a patched DLL to use it with Wine.
17:27:11 <elliott> They fixed that as of late last year.
17:27:15 <Sgeo_> Ah, I was unaware of that.
17:27:17 <elliott> Phantom_Hoover: No, you can use cold hard cash.
17:27:25 <elliott> Sgeo_: And also "Some of our Wine users have noticed a problem in recent Wine versions – namely, chatting in the front-end parts of the game (that includes WormNET and host/join lobby) was not possible (W:A seemed to ignore Enter presses)."
17:27:30 <elliott> So yeah, Wine is now a maintained platform for W:A.
17:27:42 <elliott> They even contributed a patch to Wine to fix that.
17:27:49 <Phantom_Hoover> I am basically incapable of conceiving of a way of moving money around without a cruise missile.
17:28:07 <elliott> That Team17 employ these two guys to maintain their decade-old game is fucking awesome.
17:28:16 * Sgeo_ sends Phantom_Hoover money in a concrete donkey
17:28:41 <elliott> Sgeo_: your references suck.
17:29:15 <monqy> was it supposed to be a trojan horse reference because if so it's really lame
17:29:18 <monqy> and if not it's nonsense
17:29:36 <elliott> it's a (bad) W:A reference.
17:29:37 <Sgeo_> It was a W:A reference
17:29:50 <monqy> was that in turn a trojan horse reference
17:29:57 <monqy> either way it sucks and you suck
17:30:09 <elliott> http://dump.thecybershadow.net/408ac203082e5044bded2e7bdacd84e0/screen0557.png ;; I love how it actually has a Wine-specific setting
17:30:46 <elliott> Wonder if they'll ever get around to depalletising the game.
17:31:01 -!- SgeoN1 has quit (Read error: Connection reset by peer).
17:32:16 <Sgeo_> I do like that in HW I can join a game that's in progress to watch it
17:32:45 <elliott> Phantom_Hoover: OK I am going to find a good W:A torrent and we are going to patch and install it and have a match online.
17:32:50 <elliott> There is no chance to survive make your time.
17:33:06 <Sgeo_> I want to watch this match
17:33:15 <Phantom_Hoover> Based on my experiences with Hedgewars you will almost certainly win.
17:33:25 <elliott> Phantom_Hoover: Dude, I haven't played for years.
17:33:33 <elliott> And "I haven't played for years." has been my WormNet excuse for about ten years.
17:33:38 <Phantom_Hoover> The only times I've ever actually won are when my opponent have half their hedgehogs right next to the sea.
17:33:51 <elliott> Phantom_Hoover: Oh, you only play normals?
17:34:18 <elliott> Grr, I want the original ISO...
17:35:02 <elliott> Oh, this is the one with the Russian installer.
17:35:02 <Sgeo_> Dear Daemon Tools: Stop being slow
17:35:12 <elliott> It has a lot of seeders, though.
17:35:20 <elliott> Phantom_Hoover: http://torrentz.eu/4c6c424826f8e8dc277fefe4e1de9c92f5337855
17:35:27 <elliott> Phantom_Hoover: Make it hapen, and I'll guide you through Winestalling it and patching it.
17:35:54 <Sgeo_> Is there anything difficult about Winestalling it other than remembering to patch it afterwards?
17:36:09 <elliott> Phantom_Hoover: You might as well let it download the saved levels and schemes, but untick both of the patches.
17:36:24 <elliott> Sgeo_: IIRC this one has a weird installer.
17:36:39 <elliott> Can someone say one nine two dot one six eight dot one dot one?
17:37:17 <elliott> Oh shit, I won't be able to set the timer for bombs.
17:37:57 <Sgeo_> I suck too much to have any real use for changing the timer on grenades
17:39:33 <elliott> Phantom_Hoover: How's it downloading for you.
17:39:36 <elliott> It'll take about an hour here.
17:39:50 * elliott runs a full tab GC (by quitting Firefox)
17:40:29 <Phantom_Hoover> http://upload.wikimedia.org/wikipedia/commons/7/7b/Arsen_1a.jpg
17:40:39 <elliott> Phantom_Hoover: You'll have to wait about forty minutes for my install guide, then.
17:40:41 <Phantom_Hoover> For some reason every time I look at this I think it's a spaceship.
17:40:53 <elliott> (All the tutorials online are massively out of date, BTW, so don't bother.)
17:41:02 <elliott> Phantom_Hoover: Also you'll need wine one point three.
17:41:09 <elliott> Is that in your distro's repo?
17:41:47 <elliott> If not: http://www.winehq.org/download
17:42:50 * elliott installs Wine onepointthree.
17:43:26 <elliott> Phantom_Hoover: What kind of speed are you getting on the torrent anyway?
17:43:29 <elliott> I'm prepared to be VERY ANGRY
17:44:38 * elliott reconnects in the hope of getting nicer peers.
17:44:42 <elliott> Great, I slowed it down tenfold.
17:44:49 <elliott> Oh wait, I'm bsuy downloading Wine packages.
17:45:16 <Phantom_Hoover> deb http://dev.carbon-project.org/debian/wine-unstable squeeze main?
17:45:39 -!- Slereah has joined.
17:45:45 <elliott> Phantom_Hoover: Erm, it's not a repository.
17:45:56 <elliott> It's a bunch of debs you have to get, I think.
17:46:14 -!- Slereah_ has quit (Ping timeout: 260 seconds).
17:46:22 <elliott> # As I get quite a few e-mails about this: no I won't set up an APT repository for these packages, because I don't want to encourage people to install binary packages from third parties without thinking about what they're doing.
17:46:35 <elliott> Phantom_Hoover: Also they're for sid but hopefully the dependencies won't conflict too much.
17:47:32 <pikhq> You could fetch the source packages and rebuild yourself.
17:47:48 <elliott> pikhq: That's even more work. :p
17:48:23 <elliott> Phantom_Hoover: Yeah yeah, rub it in.
17:48:33 * Phantom_Hoover is reminded of the ungodly mess that is his downloads folder
17:48:40 <elliott> Phantom_Hoover: There's complications with the installer so I recommend you wait until I've downloaded it before trying to get it installed.
17:48:47 <elliott> Although I expect you're still downloading 99999 debs.
17:49:13 <pikhq> elliott: dpkg-buildpackage isn't hard.
17:50:06 <elliott> Phantom_Hoover: Have I mentioned that I will lose.
17:50:21 <elliott> Unless I picked a roping game in which case maybe not.
17:51:31 <elliott> 92% [15 ttf-umefont 49.4MB/50.8MB 97%] 220kB/s 32s9
17:52:55 <elliott> OK continuing the torrent.
17:52:58 <elliott> Phantom_Hoover: SOON I WILL HAVE YOUR BRAIN
17:53:16 <elliott> Phantom_Hoover: The worst thing is I own two physical copies of this game.
17:54:37 * Sgeo_ owns one physical copy
17:54:52 <Sgeo_> Also have WWP and W2 lying around somewhere
17:55:54 <elliott> can you believe people actually still played it online as of like five years ago???
17:56:29 <Sgeo_> Never really tried it. Althogh now I'm wondering if it's W2 that I have or original. Which came in that pack?
17:56:39 <elliott> oh hm worms isn't thirteen years old, just twelve
17:56:40 <Sgeo_> The pack that had W:A WWP and Worms Blast
17:56:51 <elliott> i like how the patch is still considered beta
17:56:58 <elliott> wonder when 4.0 is coming out :)
17:57:17 <elliott> it's been a work in progress since two thousand and four or something like that
17:59:51 <elliott> Phantom_Hoover: You will be pleased to know that the time remaining is thirty seven minutes.
17:59:57 <olsner_> Phantom_Hoover: the third deb, always the third
18:00:48 <elliott> Ugh, don't tell me sound is broken again.
18:01:01 * Phantom_Hoover sees the bottom of his downloads folder for the first time in months.
18:03:13 <elliott> Phantom_Hoover: Who cares how cluttered the folder is?
18:03:44 <Phantom_Hoover> Oh god do I have to resolve the dependencies automatically.
18:04:04 <olsner_> elliott: uninstall pulseaudio
18:04:09 <elliott> Just sudo dpkg -i them in any order.
18:04:13 <elliott> olsner: that would break my volume control.
18:04:24 <elliott> Phantom_Hoover: Then sudo apt-get install -f to see if things are still broken.
18:04:40 <olsner_> elliott: use alsamixer? works for me...
18:04:41 <Phantom_Hoover> elliott, dpkg: dependency problems prevent configuration of wine-unstable:
18:04:54 <elliott> olsner: Yeah, I love having to:
18:05:09 <elliott> every time I want to change the volume.
18:05:17 <elliott> It's so much more convenient than hitting the volume up/down/mute keys on my keyboard.
18:05:23 <elliott> Phantom_Hoover: Irrelevant.
18:05:34 <elliott> Then if "sudo apt-get install -f" works, you're done.
18:05:40 <olsner_> I do that about once per installation, then keep it on the right volume
18:05:55 <elliott> olsner: yes, because there is exactly one constant right volume.
18:06:05 <Sgeo_> Wait, you go periods of time without adjusting the volume?
18:06:13 <elliott> Depending on the time of the day, how loud whatever sounds are coming out are mixed, etc. etc. etc., there is absolutely no way I would want to change the volume accordingly.
18:06:33 <Phantom_Hoover> elliott, wait, I don't have Pulseaudio and I can change the volume normally.
18:06:48 <elliott> Phantom_Hoover: Yes; you have GNOME packaged by sane people (Debian developers).
18:06:53 <elliott> I have GNOME packaged by Canonical.
18:07:22 <Phantom_Hoover> Canonical, the people who gave APT Guy access to their repositories.
18:07:38 <elliott> Phantom_Hoover: Anyway, once you have Wine installed, "winecfg", go to Audio tab, let it select a driver, make sure Test Sound works, then just OK it.
18:08:17 <Phantom_Hoover> Sgeo_, a guy at my school who does some vaguely-specified thing for Canonical.
18:08:22 <olsner_> Sgeo_: yes, on my home computer I haven't started alsamixer for years
18:08:42 <olsner_> on my work computer, pulseaudio muted everything so I had to go back in and restore working settings
18:08:46 <elliott> http://worms.thecybershadow.net/wormkit/ Oh hey this is new.
18:09:08 <Sgeo_> elliott, uh, no it's not?
18:09:09 <elliott> Maybe it'll work with W:A, maybe it won't, who cares.
18:09:21 <elliott> Sgeo_: Dude, I haven't played W:A for years.
18:09:29 <elliott> I got the game in... two thousand and two?
18:09:35 <elliott> Phantom_Hoover: Oh well. :p
18:10:25 <elliott> I wonder how common BattyRopes is nowadays.
18:10:41 <Sgeo_> RubberWorm is fairly popular I think
18:10:51 <Sgeo_> Or at least, there's a section of Worst Shot Ever for it
18:11:05 <elliott> BattyRopes, not RubberWorm.
18:11:41 <elliott> Phantom_Hoover: OK, it's gettingcloser.
18:12:56 * Phantom_Hoover begins seeding that Red Dwarf torrent again because his ratio is still 0.83.
18:13:53 -!- ajf|offline has changed nick to ajf.
18:17:47 <pikhq> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=4ba8216cd90560bc402f52076f64d8546e8aefcb This patch makes me happy.
18:19:28 <elliott> Phantom_Hoover: /The/ Big Kernel Lock.
18:20:10 <pikhq> Phantom_Hoover: It was a lock of the *entire* kernel. It was added for the very first SMP systems.
18:20:20 <elliott> pikhq: Seems like it's actually in the latest stable, too.
18:20:29 <elliott> Linux 2.6.39 just came out, but it was probably in an earlier one, too.
18:20:32 <pikhq> elliott: Yeah, it's in 2.6.39, which just came out.
18:20:38 <pikhq> It missed the 2.6.38 merge window.
18:20:47 <elliott> Not that it was actually relevant as of late, though.
18:20:58 <elliott> As evidenced by the fact that that commit just removes it and nothing breaks.
18:21:19 <Sgeo_> http://lwn.net/Articles/86859/
18:21:23 <pikhq> Yeah, they spent a few years removing usage of it out of subsystems.
18:21:34 <pikhq> Starting with the ones that were *major* performance issues.
18:21:36 <Phantom_Hoover> Thank you, elliott, the addition of the definite article really assisted my understanding.
18:21:43 <elliott> Phantom_Hoover: You're welcome.
18:21:52 <ais523> hmm, apparently there was a followup to the language-designers-with-beards article
18:22:09 <Sgeo_> I'm more useful than elliott!
18:22:45 <ais523> and its predictions are still working (although possibly its data is biased)
18:23:02 <ais523> it seems at least one of the people behind Python actually grew a beard in response to the article
18:23:57 <ais523> ah, typo in the post itself, it was Matz who is of course Ruby not Python
18:34:01 <elliott> "The core kernel retains a few calls. The implementation of the reboot() system call is one of them; this is, of course, not one of the more performance-sensitive parts of the kernel."
18:44:33 <Sgeo_> elliott, how's the download going
18:44:38 * Sgeo_ wants to watch you vs PH
18:44:53 <elliott> Already downloaded. Working on installing.
18:49:16 -!- TOGoS has joined.
18:55:04 -!- TOGoS has left.
19:03:58 -!- cheater__ has quit (Quit: Leaving).
19:13:02 -!- augur has quit (Remote host closed the connection).
19:14:13 <elliott> Oh hey BattyRopes is in the latest patch.
19:20:47 -!- oerjan has joined.
19:22:58 <oerjan> oklofok is secretly an ancient nuclear reactor
19:24:24 <oklofok> obviously o, indeed, is the best word
19:33:31 <Sgeo_> Who thinks to call that thing a beagle puss?
19:43:05 <oerjan> <elliott> # As I get quite a few e-mails about this: no I won't set up an APT repository for these packages, because I don't want to encourage people to install binary packages from third parties without thinking about what they're doing.
19:43:24 -!- aloril has quit (Ping timeout: 276 seconds).
19:43:25 * oerjan now wonders if anyone has distributed a virus in a program in source format
19:45:09 * oerjan extends that to the idea of such a virus that only infects source distributions
19:46:18 <oerjan> basically the complete reverse of trusting trust...
19:46:51 <ais523> oerjan: I saw a post on Reddit where a trusting trust thing had happened by accident
19:46:52 <Sgeo_> The Python virus might qualify?
19:47:01 <ais523> apparently a team of programmers were working on a self-hosting compiler
19:47:13 <ais523> and it used to screw up signed vs. unsigned, and they fixed the bug
19:47:22 <ais523> but the bug was such that it miscompiled the compiler in a way that produced that bug
19:47:30 <ais523> Sgeo_: it'd be tricky to find, it was several days ago now
19:48:28 * Sgeo_ officially hates Phantom_Hoover
19:48:43 <Sgeo_> I wanted to sleep sometime in the next 72 hours, dangit1
19:49:31 <ais523> Sgeo_: just sleep, then
19:49:58 <Sgeo_> ais523, impossible!
19:50:11 <Sgeo_> Not while I'm in archive binge mode
19:50:22 <Sgeo_> I don't sleep when I'm archive binging
19:52:16 <Sgeo_> Phantom_Hoover is going to murder me with sleep deprivation
19:53:53 -!- olsner_ has quit (Quit: olsner_).
19:55:31 -!- aloril has joined.
20:00:52 <fizzie> Heh, this gnome-panel sensors-monitor thingamajik says my HD is at a temperature of 140620634384 °C. Sounds slightly suspicious.
20:01:40 <ais523> fizzie: run away, it's going to blow!
20:05:14 <Phantom_Hoover> fizzie, isn't that getting on for the temperature of quark-gluon plasma?
20:05:30 <fizzie> Assuming the number is accurate, they've made one [interjection] of a temperature sensor.
20:07:33 -!- ajf has changed nick to ajf|offline.
20:09:14 <ais523> fizzie: it might be one of the infrared-based sensors that work at range
20:10:43 <oerjan> > showHex 140620634384 ""
20:11:06 <oerjan> not precisely any obvious number there either
20:11:45 <oerjan> > map (flip showHex "") $ iterate (*10) 140620634384
20:11:47 <lambdabot> ["20bda49910","147686dfaa0","cca144bca40","7fe4caf5e680","4feefed9b0100","3...
20:12:28 <oerjan> > drop 5 . map (flip showHex "") $ iterate (*10) 140620634384
20:12:30 <lambdabot> ["31f55f480e0a00","1f395b8d08c6400","1383d938257be800","c3267c3176d71000","...
20:12:55 <oerjan> `factorize 140620634384
20:13:03 <HackEgo> 140620634384: 2 2 2 2 8788789649
20:14:09 * oerjan thinks lambdabot has a very conservative line length
20:14:58 <lambdabot> forall a. (Integral a) => a -> String -> String
20:15:04 <Deewiant> 28'}c'%'yc'1*+'w'(5f'|+**+***+**
20:15:07 <ais523> oerjan: what's the string argument for?
20:15:26 <oerjan> ais523: it's for appending to the end
20:15:51 <elliott> that's ShowS String, I think
20:16:03 <elliott> * oerjan thinks lambdabot has a very conservative line length
20:16:06 <oerjan> it's part of the haskell ShowS type used with the Show class, it's more efficient than concatenating strings
20:16:08 <elliott> it's probably trying to avoid annoyingly long lines
20:16:13 <elliott> it's in a high-traffic channel, after all
20:17:02 <oerjan> showsPrec and showList use it, although show can be defined instead
20:17:59 <oerjan> ais523: basically it makes showing nested stuff linear rather than quadratic in time
20:18:13 <oerjan> or something like that
20:18:47 <lifthrasiir> function composition is associative, so string concatenation can be also made associative when the list implementation is not
20:19:18 <oerjan> list concatenation is also associative, mind you
20:19:44 <oerjan> this is partly about not needing to construct intermediate strings
20:20:04 <elliott> it's just because it avoids ++
20:20:09 <elliott> because the function already "has a pointer" to its terminating []
20:20:14 <elliott> and can just replace it with the string provided
20:20:42 <lifthrasiir> oerjan: ah, i forgot to add "in linear time or whatsoever".
20:20:45 <oerjan> somewhat similar to prolog difference lists iirc
20:21:51 <ais523> oerjan: hmm, that makes sense
20:22:08 <ais523> difference lists are an incredible thing that Prolog would come up with, they're both really prologgy and not at the same time
20:22:13 <oerjan> i'm pretty sure prolog is rather older than haskell
20:23:02 <oerjan> i'm sure some haskell historians can find out when the Show class got that way
20:23:29 <oerjan> although it is also similar to that list fusion stuff which permeates ghc these days
20:23:47 -!- aloril has quit (Ping timeout: 248 seconds).
20:24:36 <elliott> oerjan: I think polymorphism would break that in this case
20:25:18 <oerjan> or that good producer/consumer thing, i think there are different fusion ideas but i'm not sure of the differences
20:26:36 <elliott> it can't fuse a function it doesn't know about...
20:30:51 <Sgeo_> Pesterchum is the best name for anything ever.
20:31:02 <Sgeo_> elliott, let me know when you go to play PH?
20:31:09 <elliott> Already am. It's going terribly though.
20:31:22 <elliott> We're both doing equally badly.
20:31:34 <Sgeo_> Blah, I wanted to watch
20:31:40 <elliott> You can watch the next match.
20:31:41 <Sgeo_> Guess I'll just have to watch the replay
20:32:21 -!- SgeoN1 has joined.
20:33:11 -!- azaq23 has joined.
20:33:49 <elliott> Sgeo_: AnythingGoes, game is named PH a bunch of times, password is PH.
20:33:51 <fizzie> ais523: If I back-of-the-virtual-envelope calculated correctly, a 1cm x 1cm patch of a blackbody radiator at 140620634384 °C would emit about 18 gigawatts of energy in the [9, 14] µm wavelength range used by infrared thermography devices; it's still quite a sensor to be able to deal with that.
20:36:16 -!- aloril has joined.
20:37:58 <ais523> I suppose it'd just have to be at a sufficient distance
20:42:21 -!- SgeoN1 has quit (Read error: Connection reset by peer).
20:42:40 -!- SgeoN1 has joined.
20:57:43 -!- SgeoN1 has quit (Read error: Connection reset by peer).
20:58:10 -!- SgeoN1 has joined.
20:59:04 -!- augur has joined.
21:01:34 <pikhq> fizzie: Gigawatts, eh?
21:01:44 <pikhq> It's probably powering a flux capacitor, then.
21:03:47 <elliott> Sgeo_: Phantom_Hoover: Sorry.
21:04:25 <elliott> Phantom_Hoover: Sgeo_: Ping.
21:06:01 -!- elliott_ has joined.
21:06:02 -!- SgeoN1 has quit (Read error: Connection reset by peer).
21:06:07 <elliott_> Sgeo_: Phantom_Hoover: Sorrryyyy
21:06:21 -!- elliott has quit (Read error: Connection reset by peer).
21:06:31 -!- SgeoN1 has joined.
21:11:25 <SgeoN1> I'm half wondering if I should host
21:11:36 <SgeoN1> Although it would be WormNAT2
21:11:36 <ais523> oh come on, apparently Sony PSN was attacked again, because it seems email address + date of birth is enough to reset someone's password
21:11:44 <ais523> and the hackers obviously had that information
21:12:02 <elliott_> Unless you want to play without me :'(
21:12:29 -!- SgeoN1 has quit (Read error: Connection reset by peer).
21:13:40 <Phantom_Hoover> Sorry, I'm just trying to decrease the vertical resolution.
21:14:07 -!- SgeoN1 has joined.
21:14:27 <SgeoN1> Phantom_Hoover: get in here
21:36:57 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:36:58 -!- SgeoN1 has quit (Read error: Connection reset by peer).
21:37:20 -!- SgeoN1 has joined.
21:54:43 -!- ais523 has quit (Remote host closed the connection).
22:04:13 -!- sebbu2 has joined.
22:12:56 -!- azaq23 has quit (*.net *.split).
22:12:57 -!- sebbu has quit (*.net *.split).
22:12:58 -!- sebbu2 has changed nick to sebbu.
22:17:35 -!- SgeoN2 has joined.
22:17:35 -!- SgeoN1 has quit (Read error: Connection reset by peer).
22:19:12 -!- azaq23 has joined.
22:22:18 -!- Vorpal has quit (Ping timeout: 250 seconds).
22:33:13 -!- Phantom_Hoover has quit (Remote host closed the connection).
22:37:50 <SgeoN2> I found something I'm good at relative to elliott!
22:39:36 <Slereah> Are you going to marry him?
22:43:36 -!- copumpkin has changed nick to failkin.
22:43:54 -!- Patashu has joined.
22:44:17 -!- failkin has changed nick to copumpkin.
22:46:49 -!- SgeoN1 has joined.
22:46:49 -!- SgeoN2 has quit (Read error: Connection reset by peer).
22:48:29 -!- SgeoN1 has quit (Read error: Connection reset by peer).
22:48:34 -!- SgeoN2 has joined.
22:50:57 -!- augur has quit (Remote host closed the connection).
22:57:01 -!- FireFly has quit (Quit: swatted to death).
23:08:38 -!- augur has joined.
23:13:15 <SgeoN2> Elliott, are we playing again, or is tis enough?
23:13:47 <elliott_> i was just waiting for you to come back
23:13:57 <elliott_> im going to... copy over these maps and schemes
23:14:11 <Sgeo_> elliott_, want to try Tube Trap?
23:14:43 <Sgeo_> http://worms2d.info/Tube_Trap
23:16:09 <Sgeo_> I think so, but I'm bad at judging what is and isn't fun
23:16:28 <elliott_> sure i guess, does that hosting bot thing have it, i guess that would be the easiest way of doing this, ?
23:16:35 <Sgeo_> I don't have WormKit installed, meh
23:17:00 <monqy> http://worms2d.info/images/1/1b/TubeTrap04_TheBirds.png looks legitimate
23:17:43 <monqy> put through a mirror too
23:18:40 <Sgeo_> Dear Google: Start working
23:18:44 <Sgeo_> Dear me: Why am I googling
23:18:59 <elliott_> ok hostingbuddy doesn't have tubetrap
23:19:36 <Sgeo_> But I should be able to host tube trap eventually
23:20:01 -!- SgeoN2 has quit (Read error: Connection reset by peer).
23:20:23 -!- SgeoN1 has joined.
23:21:36 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:24:54 <SgeoN1> Glug glug went the Sgeo
23:30:12 <elliott_> 01:49:20: <oklo> "i have recursion on my penis" must the greatest pick-up line ever
23:30:13 <elliott_> 01:49:31: <oklo> it has both sexual predator AND geeky loser
23:34:14 <SgeoN1> They were all in love with drowning they were doing it in Worms
23:36:54 -!- TeruFSX has joined.
23:41:36 -!- Patashu has quit (Ping timeout: 250 seconds).
23:42:16 -!- SgeoN2 has joined.
23:42:16 -!- SgeoN1 has quit (Read error: Connection reset by peer).
23:42:30 <Sgeo_> elliott_, let me set up WormNAT2 and I'll host Tube Trap
23:42:38 <elliott_> Sgeo_: i already created a new game but ok
23:43:37 <Sgeo_> I want to set this up, then roper, then Tube Trap
23:44:36 -!- sebbu2 has joined.
23:46:45 -!- sebbu has quit (Ping timeout: 240 seconds).
23:47:17 -!- wareya_ has changed nick to wareya.
23:48:54 <Sgeo_> I need permissions to change a shortcut on my desktop?
23:58:48 -!- myndzi has joined.
00:00:04 -!- myndzi\ has joined.
00:00:17 -!- CakeProphet has joined.
00:03:31 -!- myndzi has quit (Ping timeout: 248 seconds).
00:05:24 -!- myndzi\ has quit (Ping timeout: 260 seconds).
00:37:26 -!- myndzi has joined.
00:38:51 -!- augur has quit (Read error: Connection reset by peer).
00:41:06 -!- augur has joined.
00:42:08 <oerjan> sheesh searching for I II III IIII IVI IIIVII IIIIIVIII gives only 3 google hits and one is to #esoteric logs
00:42:31 <oerjan> the two others are in french
00:44:36 <oerjan> also if i search for I II III IIV IIIIV instead i get two relevant references, one which links to the other, which is mistyped and by conway
00:45:07 <oerjan> and where he claims that there is a constant for it, with low algebraic degree
00:45:56 <elliott_> oerjan: also, contact conway ;D
00:46:11 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:46:11 <oerjan> well it seems unlikely if it has a matrix to predict its growth
00:46:28 <Sgeo_> Does Conway know about Gemini?
00:47:13 <Sgeo_> http://www.conwaylife.com/wiki/index.php?title=Gemini
00:47:28 <Sgeo_> Spaceship that moves by self-replication
00:48:03 <Sgeo_> Also moves obliquely
00:48:10 <Sgeo_> (word taken from life wiki)
00:48:42 <oerjan> Sgeo_: the word conway does _not_ trigger gol as its first association in my mind
00:49:00 <oerjan> which means gemini is a couple steps too far
00:49:49 -!- sebbu has joined.
00:49:49 -!- sebbu has quit (Changing host).
00:49:49 -!- sebbu has joined.
00:50:15 <elliott_> lol i clicked conways wp talk page
00:50:19 <elliott_> read "John has indeed been married three times. First wife Eileen, second wife Larissa, third wife Diana. His son Alex was born in 1983, and Oliver in 1988, to answer the below question."
00:50:25 <elliott_> "Diana Conway 24.225.176.66 03:58, 22 November 2006 (UTC)"
00:53:31 -!- sebbu2 has quit (Ping timeout: 252 seconds).
00:53:46 * oerjan had forgotten that #esoteric discussion from last year
00:54:06 <oerjan> about roman numeral look and say
00:54:14 <oerjan> http://codu.org/logs/_esoteric/2010-06-20.txt
00:54:33 <elliott_> oh man ksf was an idiot even back then
00:54:39 <elliott_> why didn't i remember him so i could have ignored him sooner when he came here
00:54:43 <oerjan> well some discussion but maybe mostly me monologuing
00:54:59 <elliott_> oerjan: that's a discussion for us :)
00:55:08 -!- elliott_ has changed nick to fpa.
00:55:11 <fpa> btw i'm holding this nick hostage
00:55:13 <fpa> (by registering it)
00:55:55 <oerjan> the weird thing is i'm saying things on that page which i distinctly recall rederiving in the past week or two :D
00:58:13 <fpa> that's a sign of senility
00:58:16 -!- fpa has changed nick to elliott.
00:58:27 -!- elliott has quit (Changing host).
00:58:27 -!- elliott has joined.
01:11:00 -!- copumpkin has joined.
01:14:12 <elliott> 07:17:08: <lament> ooh, i got a _really_ stupid idea!
01:14:12 <elliott> 07:17:29: <lament> wow this will be retarded.
01:14:12 <elliott> 07:20:03: <lament> wow i'm like the genius of retarded.
01:23:44 -!- augur has quit (Remote host closed the connection).
01:40:34 <elliott> Deewiant: Does Mycology test IMAP?
01:42:03 -!- augur has joined.
01:43:53 -!- hagb4rd has joined.
02:36:00 -!- madbr has joined.
02:36:56 <madbr> my brother brought a stm32 evaluation board from work and I'm trying to figure if it's possible to use it as a target platform for a demoscene demo
02:37:36 <madbr> (arm cortex-m3 microcontroller board)
02:37:37 <elliott> anything's a viable platform for a demo
02:38:16 <madbr> Trying to figure if it's possible to get VGA or NTSC output
02:38:35 <madbr> the kind of stuff that will look cool on a projector
02:39:34 <elliott> bah, ASCII should be enough for anyone
02:40:25 <madbr> well, the board's display is 16x2 ascii
02:41:41 <madbr> plus a row of 16 LEDs
02:41:52 -!- oerjan has quit (Quit: Good night).
02:43:14 <elliott> light show + ascii art problem solved
02:43:49 <elliott> jesus CHRIST this code is ugly
02:44:39 <madbr> more likely I'm trying to figure out if it's possible to get either the right sequence of bits out of one of the series port
02:45:04 <madbr> (but it probably has the wrong clock rate for that)
02:45:04 -!- pikhq_ has joined.
02:45:20 <madbr> use a bunch of pins and output VGA
02:46:33 -!- pikhq has quit (Ping timeout: 240 seconds).
02:47:08 -!- hagb4rd has quit (Ping timeout: 246 seconds).
02:47:08 -!- wareya has quit (Read error: Connection reset by peer).
02:47:15 <madbr> elliott: that thing runs at like 80mips
02:47:25 <elliott> thats a lot of instructins
02:47:38 -!- wareya has joined.
02:47:42 <madbr> 72 mhz cut down ARM
02:49:17 <madbr> at least the board has a sound output
02:49:25 <madbr> which pretty much solves sound from the outset
02:49:37 <elliott> use some of the bits of the sound port for video output :D
02:50:06 <madbr> I think the sound is done with PWM
02:50:32 -!- TeruFSX has quit (Read error: Operation timed out).
02:50:41 <madbr> And thus probably doesn't run at the ridiculous speeds you need for video (6mhz)
02:51:31 -!- hagb4rd has joined.
02:52:19 <madbr> 12.6mhz = 320x400 or 320x480 VGA video pixel rate
02:52:53 <elliott> who needs that kinda resolution
02:52:55 -!- augur has quit (Remote host closed the connection).
02:53:12 <madbr> VGA has a minimum line rate :(
02:53:19 <pikhq_> madbr: There's no real requirement for that to be analog.
02:53:47 <pikhq_> Admittedly, it's not going to be doing color unless it's NTSC, but hey.
02:53:50 <madbr> if the horiz rate isn't at least 30khz I'm pretty sure the projector won't show it
02:54:29 <madbr> NTSC has a kinda more gentle rate of ~16khz
02:54:40 <madbr> but its color encoding scheme is crazy
02:55:11 <pikhq_> You can fake it with black and white output.
02:55:35 <pikhq_> Also, crazy color encoding isn't unique to NTSC.
02:55:59 <madbr> I don't think this board has the right clock rate to easily simulate ntsc colors unfortunately
02:56:06 <pikhq_> All the color analog TV standards do a form of analog QAM encoded into the signal.
02:56:15 <pikhq_> Which is approximately "fucking crazy".
02:56:54 <pikhq_> It has a 72 MHz ARM. Surely you can clock a digital output line at a reasonably fast rate with that sort of CPU.
02:57:03 <madbr> as opposed to VGA's "put the right voltages on the R, G, B, Hsync, Vsync" pins
02:57:51 <madbr> pikhq: yeah. Aparently the SPI ports run at "18Mhz max"
02:58:13 <pikhq_> Plenty speedy for NTSC video.
02:58:41 <madbr> doesn't line up with the NTSC color carrier freq tho
02:59:49 <madbr> which would probably produce weird rainbow shifts across the screen
03:01:41 <madbr> like, if it was a 800mips processor you could probably just render in 32bpp and translate into bit patterns at the end
03:01:57 <madbr> but it's more like ~80mips so dunno
03:02:03 * elliott mentally files "Landon Stewart" under "idiot".
03:02:26 <elliott> madbr: how much faster is it than a commodore sixtyfour? :P
03:02:54 <madbr> 100 times probably
03:04:06 <pikhq_> Actually, if you got an NTSC color burst that matched your used color carrier, it'd work just fine on common displays.
03:04:18 <pikhq_> Not work for broadcasting, but oh well.
03:04:47 <madbr> dunno how ntsc TVs implement color burst and how they react to frequency variation
03:05:24 <madbr> since you have a burst every line then that locks the rate somewhat yeah
03:05:41 <pikhq_> Well, a lot of computers and consoles in the 70s and 80s did something similar.
03:06:05 -!- augur has joined.
03:06:25 <madbr> afaik NESes and AMIGAs have clock rates chosen specifically around the ntsc color carier
03:06:34 <pikhq_> And if you could get analog black and white out, you could use the CGA trick.
03:06:49 <madbr> yeah the CGA trick is the same thing
03:07:06 <pikhq_> The CGA trick is just two-level output, but based on the color carrier.
03:07:30 <madbr> still gets you 16 colors
03:07:49 <madbr> but I think you need to output at a specific clock rate for that
03:08:16 <pikhq_> Rational multiplier of the color carrier.
03:08:50 <pikhq_> Within a certain range, I'd imagine.
03:09:49 <elliott> Could not deduce (Functor m) arising from a use of `<$>'
03:09:50 <elliott> from the context (MonadShiro m)
03:10:34 <elliott> No instance for (Applicative (MaybeT Shiro))
03:10:34 <elliott> arising from the superclasses of an instance declaration
03:10:43 <lambdabot> class Functor f => Applicative f where
03:12:45 <elliott> wow ok this is a huge pain in the ass
03:17:17 <madbr> pikhq: this arm thing seems to run at speeds that are various multiples of 6mhz
03:17:47 <madbr> 72mhz, 48mhz, 36mhz, 24mhz, 12mhz specifically mentioned in the datasheets
03:17:57 <pikhq_> madbr: Guess you're not getting sane color, then.
03:18:20 <pikhq_> Unless you've got a *few* such outputs, in which case you could probably do VGA or NTSC component.
03:19:09 <madbr> I think a lot of the chip's pins can be reassigned as general purpose IOs
03:19:42 <elliott> ?undo do { r <- liftShiro ((Just <$> io m) `catchShiro` \(e::IOException) -> return Nothing); MaybeT (return r) }
03:19:42 <lambdabot> Parse error in pattern at "->" (column 71)
03:19:54 <madbr> Which might be able to get me 15bpp VGA color... but the cpu power requirements for that are probably kinda stiff
03:19:55 <pikhq_> (aka "60000/1001 Hz 480 line analog component video, YPbPr, sync on Y")
03:19:57 <elliott> ?undo do { r <- x; MaybeT (return r) }
03:20:01 <elliott> ?. pl undo do { r <- x; MaybeT (return r) }
03:20:19 <elliott> ioMaybe :: IO a -> MaybeT Shiro a
03:20:19 <elliott> ioMaybe m = MaybeT . return =<< liftShiro ((Just <$> io m) `catchShiro` \(e::IOException) -> return Nothing)
03:20:21 <elliott> Surely I can do better than that.
03:21:18 <pikhq_> madbr: With just two outputs I think you could do S-Video.
03:22:33 <lambdabot> Control.Monad guard :: MonadPlus m => Bool -> m ()
03:22:33 <lambdabot> Language.Haskell.TH.Syntax data Guard
03:23:09 <elliott> fuck yes the code is getting so much better
03:23:39 <elliott> maybeT :: Maybe a -> MaybeT m a
03:23:41 <elliott> need a better name for this
03:24:38 <madbr> pikhq: YPbPr might be a good idea
03:27:15 -!- augur has quit (Ping timeout: 248 seconds).
03:28:52 <madbr> pikhq: mostly because it's similar to vga but lets you use half the horiz refresh rate and share sync info
03:29:10 <pikhq_> The colorspace is a bit bizarre, though.
03:29:36 <pikhq_> Okay, okay, so technically it's a change of basis of the RGB colorspace. But still annoying.
03:34:39 <madbr> plus I'm not certain their video projector will have a YCrCb input
03:34:48 <madbr> whereas all of them have a VGA input
03:35:13 -!- TeruFSX has joined.
03:35:46 <elliott> did you know what's the best
03:41:09 -!- azaq23 has quit (Ping timeout: 276 seconds).
03:42:28 -!- azaq23 has joined.
03:51:52 <elliott> omg tomorrow is the raptjure
03:52:12 <pikhq_> No, tomorrow is Friday, you damned Britishman.
03:52:53 <elliott> suht the fuck up americaevil
03:53:39 <monqy> so when on saturday is the rapture
03:54:34 <elliott> it starts... in australia....or new zzealand...the timez0nes
03:54:38 <elliott> (i am not joking they seriously believe this)
03:54:45 <elliott> then it expands to less sheepfucking....areas of the....globe
03:55:24 <monqy> does it expand in all directions or just a few
03:55:37 <monqy> a gradual rapture sounds pretty inconvenient
03:56:09 <monqy> sounds like a deal
03:56:16 <pikhq_> I'm pretty sure salvation is irrevocable.
03:56:22 <monqy> what if I'm secretly a sheepfucker
03:56:32 <elliott> pikhq_: just go eat some babies
03:56:36 <elliott> god will make an exception
03:56:55 <pikhq_> elliott: What do you think I eat 3 meals a day?
03:56:56 <Gregor> Dood, it's the rapture! Dat shit gonna rapture everywhere bitch!
03:57:06 <pikhq_> *Animal* flesh? That's disgusting, man.
03:57:25 <elliott> hmmhmm go to bed now when its just getting light
04:07:50 <elliott> where's oerjan when you need him
04:11:57 -!- variable has quit (Remote host closed the connection).
04:13:53 -!- variable has joined.
04:14:13 <elliott> ??? :: (Monad m) => Maybe a -> MaybeT m a
04:14:26 <elliott> i need to go to sleep but i can't until its named
04:16:35 <elliott> those are the worst fucking names ive veer heard im going back to hashhaskell
04:16:56 <Sgeo_> It makes it something more compattibible with use in a monad stack, right?
04:17:55 <pikhq_> Oh, right, perhaps I should sleep.
04:18:08 <elliott> <kmc> lift :: M a -> MaybeT M a
04:18:08 <pikhq_> Or perhaps I should listen to Animals again.
04:18:08 <elliott> <kmc> foo :: Maybe a -> MaybeT m a
04:18:11 <Sgeo_> Um no that maes no ense
04:18:26 <pikhq_> Definitely the latter.
04:21:00 -!- augur has joined.
04:22:12 <lambdabot> forall b a. b -> (a -> b) -> Maybe a -> b
04:27:14 -!- elliott has quit (Ping timeout: 246 seconds).
04:31:12 -!- TeruFSX has quit (Quit: No Ping reply in 180 seconds.).
04:44:31 <oklofok> rapture? i don't wanna die :((
04:49:23 <madbr> after the rapture, the discoture
04:49:59 <oklofok> for you maybe, but i've had anal sex :(
04:50:25 <monqy> I'm a filthy unbeliever
04:50:31 <monqy> filthy atheist at that
04:50:41 <madbr> supposedly jesus loves you, but here he is, blowing up the world
04:51:12 <oklofok> he was just putting up a front until god gave him some powah
04:52:29 <pikhq_> oklofok: The alternative is believing in *and worshipping* Yahweh, as interpreted by a particular form of Christianity.
04:53:13 <pikhq_> I dunno about you, but I'm of the opinion that if Yahweh existed, he wouldn't be deserving of worship.
04:54:19 <monqy> love everyone kill everyone send everyone to hell
04:54:20 <madbr> any christians in here btw?
04:54:30 <monqy> I hope not; I want my fun.
04:55:28 <pikhq_> Does former Christian count?
04:55:30 <madbr> heh no christians I guess
05:00:04 <oklofok> i barely believe in christianity
05:01:48 <pikhq_> oklofok: Inquiry: what evidence is there for the claims of Christianity?
05:02:01 <oklofok> how do you solve #5225 in freecell? :\ it seems like the obvious approach is to empty the rightmost column right away without leaving anything up, but it seems like you get stuck if you do that
05:02:15 <pikhq_> That's some bad evidence. :P
05:02:20 <oklofok> pikhq_: well people say they're christian sometimes
05:02:28 <oklofok> and i'm not completely sure they're lying
05:02:35 <pikhq_> Oh, the *existence of the faith*.
05:02:38 <oklofok> i'm somewhat agnostic in that sense
05:02:56 -!- SgeoN2 has quit (Read error: Connection reset by peer).
05:02:57 <monqy> what's christianity
05:03:44 <pikhq_> monqy: In short: the belief that a God had a son who was also God, who died and became a zombie to save us from our sins.
05:04:35 <monqy> I like the part where he kills people because he loves them
05:05:10 <pikhq_> Yeah, the eternal torment for not believing combined with omnibenevolence is quite a trip.
05:06:19 <oklofok> well on an intellectual level i find it easy to believe in the existence of faith in general, everyone finds their own way to get out of circling the philosophical drain at times when you decide to realize life is sort of pointless, which i believe happens to all people who spend time thinking, occasionally. that people would choose the faith people next to them have is equally easy to believe. on an intellectual level. somehow i still have this feelin
05:07:05 <monqy> you still have what feelin
05:07:40 <oklofok> it's certainly not easy to believe, on an intellectual level, that people actually believe the bible stories :P but you know the general feeling of "christian god"
05:07:55 <oklofok> monqy: i have this feeling christianity is just a big joke, we're just not in on it
05:08:14 <oklofok> "oh you were being SARCASTIC! sorry us atheists are kind of slow sometimes."
05:09:02 <oklofok> my theory: that's what "rapture" actually means, they just chicken out every time.
05:09:25 <oklofok> i mean it means they tell us
05:11:56 <madbr> reading the brick testament
05:12:55 <Sgeo_> 3mg of melatonin taken
05:12:57 <monqy> I remember reading its rendition of revelation
05:14:32 <madbr> http://www.bricktestament.com/the_teachings_of_jesus/on_anger_and_insults/mt05_21a.html
05:15:35 <madbr> I like how it uses qui-gon jinn as jesus
05:17:08 <pikhq_> I've got personal experience for the existence of Christians.
05:17:26 <pikhq_> Having once been one, I can be sure that there at least *was* at least one person who actually believed it.
05:17:28 -!- augur has quit (Read error: Connection reset by peer).
05:17:40 <pikhq_> Not that that helps others too much.
05:18:42 -!- augur has joined.
05:19:23 <madbr> are you telling me there are christians who don't believe?
05:19:26 <oklofok> what?!? http://www.bricktestament.com/judges/samson_commits_mass_murder/jg14_01.html
05:19:37 <oklofok> what the... that's a joke right :D
05:19:48 <oklofok> why does this stuff keep surprising me
05:20:46 <oklofok> that story is the most horrible thing ever
05:21:06 <oklofok> well i'm going to take a shower now
05:21:40 <madbr> yeah the ending is like... wtf
05:21:50 <madbr> oklofok: welcome to the old testament
05:22:26 <oklofok> yeah unlike the beginning where good took over the guy and made him wanna have sex with an unclean one.
05:23:07 <oklofok> why don't they rename satan to bad and use baad instead of bad, would make much more sense
05:23:09 <pikhq_> Yeah, the Old Testament is the land of God endorsing an absurd amount of reprehensible behavior.
05:23:41 <oklofok> i suppose the concept of free will was invented later?
05:23:48 <pikhq_> The whole thing is a blend of confusing beliefs.
05:23:59 <pikhq_> The concept of *monotheism* was invented after much of it was written.
05:24:47 <madbr> old testament has way too much wars and "10000 men were killed" and so on
05:24:51 <oklofok> yeah god had sent most of the text down before realizing the retards didn't even get the basic framework yet
05:25:07 <oklofok> so he gave a few seminars and then send the new testament
05:27:35 <pikhq_> madbr: There's also the obvious after-the-fact editing.
05:28:26 <madbr> pikhq: didn't knew of that one
05:28:37 <madbr> one classic is the 2 deaths of judah
05:29:02 <pikhq_> It's all *over* the place.
05:29:12 <Lymia> <cheater00>japanese is like golfing for speech
05:29:15 <Lymia> When does he come around?
05:29:21 <Lymia> I need to give him a few internets.
05:30:54 <madbr> and reading the revelation is like
05:31:00 <madbr> no loving god would do that
05:31:09 <madbr> actually that also applies to other parts of the bible
05:31:42 <pikhq_> Some of the early Jewish deities: Asherah, El, Yahweh, Baal.
05:32:16 <pikhq_> The first three are held to be names of God.
05:32:48 -!- copumpkin has quit (Remote host closed the connection).
05:33:06 <pikhq_> Yes, the Old Testament still has the *names* of the pantheon.
05:35:52 <madbr> el and baal are classic semitic gods afaik. don't know anything about the other ones
05:36:19 <pikhq_> They're all fairly typical semitic gods.
05:36:52 <pikhq_> The Jews are and were just a single group of semitic tribesmen, really.
05:40:26 <madbr> http://www.bricktestament.com/king_david/god_kills_70000_israelites/2s24_01p1ch21_01.html
05:42:22 <pikhq_> Aaaah, the stories you never hear a Christian talk about.
05:42:34 <madbr> what sort of loving god is that
05:42:48 <madbr> pikhq: that one is relatively well known I think
05:43:36 <pikhq_> madbr: Relatively, sure.
05:43:44 <pikhq_> It's still glossed over by most.
05:45:24 <pikhq_> And, of course, the documentary hypothesis is something they're ignorant of, unless they went to seminary.
05:46:28 <oklofok> am i getting this right, god orders him to take a census and kills everyone because he does?
05:46:56 <monqy> it's a euphemism for kill everyone
05:47:00 <pikhq_> God's a complete dick.
05:47:02 <oklofok> maybe this would indeed make more sense with two gods
05:47:17 <oklofok> why's taking a census bad exactly?
05:47:29 -!- azaq23 has quit (Quit: Leaving.).
05:47:40 <oklofok> i mean that's how you prove the polynomial hierarchy collapses to theta_2 if you have a sparse np-complete set :\
05:48:16 <oklofok> (and various other things)
05:51:05 <oklofok> http://www.bricktestament.com/king_david/god_kills_70000_israelites/2s24_25b.html xD
05:54:49 <fizzie> Maybe some sort of reverse psychology attempt?
05:55:40 <pikhq_> Works much better if you imagine there were two deities. Sadly, I think David takes place after monotheism.
05:56:58 <fizzie> Could be just one deity with some sort of personality disorder. I hear there's all kinds of.
05:58:21 <madbr> Wilderness, and the part from Joshua to King Solomon is like... war pillage rape death
05:58:58 <pikhq_> Yeah, but that's the history of just about everyone in that part of the world.
05:59:02 <madbr> (in the brick testament)
05:59:18 <madbr> well, yeah that's typical antiquity
05:59:21 -!- HackEgo has quit (Ping timeout: 264 seconds).
05:59:57 -!- Gregor has quit (Ping timeout: 264 seconds).
06:00:15 -!- EgoBot has quit (Ping timeout: 240 seconds).
06:00:27 -!- HackEgo has joined.
06:00:27 -!- EgoBot has joined.
06:04:02 -!- Gregor has joined.
06:04:31 -!- Gregor has changed nick to Guest52131.
06:20:03 -!- pikhq has joined.
06:20:29 -!- pikhq_ has quit (Ping timeout: 260 seconds).
06:33:59 <madbr> "Lorsque Joram eut pris possession du royaume de son père et qu'il se fut fortifié, il fit mourir par l'épée tous ses frères et quelques-uns aussi des chefs d'Israël. "
06:37:56 -!- hagb4rd has changed nick to h[a]gb4rd.
07:03:27 <madbr> also maybe it's just me but the bible has lots of death and punishment but not quite as much for kings
07:04:44 -!- augur has quit (Ping timeout: 240 seconds).
07:06:37 -!- madbr has quit (Quit: Radiateur).
07:52:25 -!- augur has joined.
08:05:47 -!- Vorpal has joined.
08:23:53 -!- cheater79 has joined.
08:34:12 -!- augur has quit (Remote host closed the connection).
08:50:04 -!- Sgeo__ has joined.
08:53:16 -!- Sgeo_ has quit (Ping timeout: 260 seconds).
09:03:52 -!- monqy has quit (Quit: hello).
09:06:21 -!- augur has joined.
09:43:54 -!- cheater79 has quit (Quit: Leaving).
09:44:05 -!- cheater79 has joined.
09:57:22 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
10:13:56 -!- olsner_ has joined.
11:19:03 -!- Patashu has joined.
11:37:33 -!- oerjan has joined.
11:38:59 -!- ais523_ has quit (Ping timeout: 252 seconds).
11:41:43 -!- TeruFSX has joined.
11:50:28 <Patashu> What are you guys doing to prepare for the end of the world
12:03:25 <Patashu> Can't be freed from your earthly shell on an empty stomach, huh?
12:04:42 <fizzie> No-one's yet told me how I can help to end the world, so I haven't prepared at all.
12:05:47 <Patashu> If you made the earth spin faster it'd end sooner
12:05:56 <Patashu> You don't have much time now
12:13:59 <Lymia> Let's nuke the world first.
12:14:27 <Zwaarddijk> did they ever say what time it would occur?
12:14:49 <oerjan> no let's _stop_ the world spinning. the side effects should be minimal compared to the apocalypse, right?
12:14:52 <Patashu> nope, in whatever time zone you're in
12:15:09 <Patashu> the earthquake is going to move all the way around the earth, forming a neat arc
12:15:20 <Patashu> or maybe it'll suddenly rush forward for time zones that are wide
12:15:32 <Patashu> you should ask someone who knows more about this
12:15:50 <Zwaarddijk> how did they even come up with this number?
12:15:53 <Patashu> http://www.google.com.au/search?sourceid=chrome&ie=UTF-8&q=rapture+6+pm
12:15:58 <Lymia> The US should declare that the year in that country is now 0
12:16:14 <Patashu> it's a mathematical calculation based on multiplying three numbers that represent heaven, atonement and (something else I forget) then squaring them
12:16:18 <Zwaarddijk> I once knew a guy who nowadays thinks he's the reincarnated Jesus, and he's very convinced it'll happen
12:16:20 <Patashu> then adding them to when jesus died on the cross
12:16:24 <Patashu> and it ends up exactly on may 21st
12:16:27 <Zwaarddijk> (he's also performed cunnilingus on dogs, so ...)
12:16:55 <Lymia> The solution is for a country to declare that the year there is 0, and that time will be based on 4 hour days from then on.
12:17:15 <Patashu> And spoil numerologists' fun?
12:17:18 <Zwaarddijk> shouldn't Israel be destroyed ages back in that case?
12:17:36 <Patashu> The 2011 end times prediction made by Christian radio host Harold Camping states that the Rapture (in premillennial theology, the taking up into heaven of God's elect people) will take place on May 21, 2011[1][2] at 6 p.m. local time (the rapture will sweep the globe time zone by time zone)[3]
12:17:36 <Zwaarddijk> the Hebrew calendar is on the year 6000ish by now
12:17:41 <Patashu> so yeah it's 6 pm in each time zone
12:17:55 <oerjan> Zwaarddijk: it was. several times.
12:18:24 <Lymia> What about the people in space or the moon?
12:18:25 -!- variable has quit (Quit: /dev/io failed).
12:18:32 <Patashu> Hasn't the calendar been adjusted multiple times since 0 AD anyway
12:18:35 <Zwaarddijk> Patashu: I wonder if Camping thinks time zones are god-given or that they are a natural universal or something
12:18:57 <Zwaarddijk> Patashu: loads of times, and sometimes independently in different countries
12:19:03 <Zwaarddijk> Sweden, for instance, has had a february 30th once.
12:19:27 <Lymia> When do people on the moon get raptured?
12:19:27 <Patashu> Also doesn't relativity screw up the idea of the rapture starting everywhere at once -anyway-
12:19:45 <Lymia> Patashu, I'm quite sure not.
12:19:46 <oerjan> Lymia: there aren't anyone on the moon other than that nazi base anyway
12:19:53 <Lymia> Only frames of reference are skewed, right?
12:20:09 <Zwaarddijk> oerjan: but those are all righteous men, and therefore will be raptured
12:20:13 <Lymia> oerjan, I'm talking theoreticals.
12:20:15 <Patashu> People on the earth are in a different frame of reference from people on the earth but in a supersonic jet or people on the moon
12:20:22 <oerjan> Zwaarddijk: sounds reasonable.
12:20:26 <Patashu> That's enough to make it ambiguous
12:20:58 <Lymia> Ask him what exactly "6PM" is defined as.
12:21:09 <Lymia> They are clearly wrong.
12:21:10 <Patashu> Let's make a rapture themed esolang
12:21:12 <Lymia> Japan has already been raptured.
12:21:24 <oerjan> also relativity is rubbish, the earth is the center of the universe duh
12:21:24 <Patashu> You can make a prediction to schedule a thread to execute at a certain point in the future
12:21:40 <fizzie> So you can skip the rapturation part if you just wait until 5:30pm in your time zone, and then walk over the border to some place where it's already 6:30pm and it's gone past?
12:21:48 <Lymia> Japan has already been raptured! How does that work out?
12:21:58 <Lymia> (due to the tentacle pron, nobody was saved)
12:22:02 <Patashu> It's not like japan had the first 9.0 earthquake
12:22:03 <Zwaarddijk> Patashu: shouldn't it be a lang that doesn't do what the source code tells it to at the point in the future, but presents an elaborate theological excuse why it didn't
12:22:11 <Patashu> Zwaarddijk that's what I was thinking
12:22:14 <Zwaarddijk> Lymia: not very many christians there anyway
12:22:16 <Patashu> So it never actually runs anything
12:22:23 <Patashu> It just acts as thouigh it's going to
12:22:39 <Lymia> Have it have a "savior" clause that is the conditional to start the thread.
12:23:26 <Patashu> prime_sieve() failed to start because Jesus heard our sincere prayers and spared our CPU from its great burden.
12:24:16 <fizzie> "Insufficient faith, please pray again later."
12:25:02 <Patashu> Certain variables will be set as 'christian'. When the rapture starts they will be taken into heaven (stdout) and print out their contents
12:25:15 <Patashu> Sinners, however, stay on this earth and are static
12:25:53 <oerjan> until the great garbage collection, anyway
12:26:13 <Patashu> Sinners are corrupt, and so will randomly hold the wrong value to spite you
12:26:36 <Patashu> When Jesus finally comes the program exits otherwise it will run forever
12:26:51 <Patashu> If no prediction ever comes true this is fated to happen
12:28:50 <Patashu> You are only permitted to set String variables to contain verses of the bible. The KJB of course, the true English bible
12:29:10 <Patashu> Now internationalization is impossible, as it should be
12:29:37 <Lymia> http://pastebin.com/5kpZ9Z6n
12:29:53 <Patashu> Failure to set a String variable correctly throws a FalseTeachingException
12:29:55 <Lymia> Here is my proposal for the basic idea of said programming language.
12:30:16 <fizzie> And you probably get an alignment error if you try to read a blessed variable from a sinful context.
12:30:27 <Lymia> predictions and saviors are the only flow control systems.
12:30:47 <Lymia> fizzie, question is.
12:30:53 <Lymia> How do you define those contexts?
12:31:49 <Patashu> I like the manmade/godgiven idea
12:32:28 <Patashu> The best thing about rapture mania btw is the USA centricism of it
12:33:01 <fizzie> It could just be an inherited thread-local property, with the possibility of invoking some special script(ure)s to change it under suitable conditions.
12:33:35 <Patashu> Instead of packages, testaments?
12:34:04 <Lymia> How much of a nightmare can you make a programming language like this?
12:34:34 <Lymia> I propose that the only way to control code flow is to create new threads with a delay, and be able to stop delayed threads from executing.
12:34:45 <Patashu> And you can only schedule them in real time
12:35:02 <fizzie> Regarding the The Brick Testament page that was linked-to earlier on-channel, I had the tab left open, and misread one title as "Jacob's Wireless God". That sounded rather interesting. (In reality it was either the "Jacob's Wives Compete" or "Jacob Wrestles God" one.)
12:35:07 <Patashu> But you can waitfor(therapture) and do nothing until it executes
12:35:27 <fizzie> waitfor(therapture) sounds vaguely ~ATHish.
12:36:03 <Lymia> In each module, a variable is either christian, neutral, or sinful.
12:36:19 <Lymia> When a rapture command is used, all christian variables are printed in the order they are defined in the source file, with a new line between each.
12:36:44 <oerjan> i am sorry but i am sure neutral variables are against christian dogma
12:37:33 <Patashu> you're of god or you're not
12:37:37 <Lymia> There is a command sin([some point-to-variable mechanism]) and a command atone([same])
12:37:43 <Lymia> These do the obvious.
12:37:56 <Lymia> Only variables accessable in the current scope are printed.
12:38:13 <Patashu> btw here's why may 21st: http://www.salon.com/news/feature/2011/05/10/rapture_may_21/index.html click the 'continue reading' link on the first story, 'Why the world might end next Saturday'
12:38:27 <Lymia> Patashu, is there any way to make it so that concurrency isn't just required, but required, and required to be messy?
12:38:58 <Patashu> By restricting how you can access variables?
12:39:04 <Patashu> What if you could only access them from a different thread
12:39:13 <Lymia> fizzie, I think I figured it out.
12:39:34 <Lymia> godgiven variables are mutable.
12:39:39 <Lymia> However, if it's modified, the current context becomes sinful
12:40:03 <Lymia> How can this be made to be annoying?
12:40:35 <Patashu> There needs to be an incredibly detailed and functional Bible object in the main library
12:41:07 <Lymia> Should the language be functional, procedural, or what?
12:42:24 <Lymia> Lisp is clearly the purest language conceivable
12:42:26 <Lymia> Let's base it on that.
12:46:09 <Zwaarddijk> Patashu: the bible object must be ignoreable, and very very flexible
12:46:22 <Patashu> When you start a thread going by making a prediction, how does it communicate with other threads and/or return results?
12:46:27 <Patashu> What channels are available
12:46:33 <Patashu> Or is it part of the global scope
12:46:58 <Lymia> Patashu, it communicates via global variables.
12:47:15 <Patashu> After all, local scopes are moral relativism
12:47:19 <Patashu> Which the bible clearly forbids
12:48:04 <Patashu> If there's object orientation, there's no polymorphism because evolution is impossible (the bible guarantees it)
12:48:11 <Zwaarddijk> if you're going for rapture, you need dispensationalism
12:48:19 <Lymia> Can local variables be accessed by nested predictions?
12:48:24 <Zwaarddijk> viz. God makes different ethical demands at different times
12:48:51 <Lymia> Patashu, use a sinful/pure mechanism.
12:48:58 <Lymia> Anything with a local context is "sinful"
12:49:03 <Lymia> Anything without one is "pure"
12:49:09 <Lymia> Most commands can only be used by pure threads.
12:49:42 <Patashu> If you want to, you can write this up or start a wikipage on it or whatever
12:49:48 <Patashu> I don't see myself getting around to it if it's up to me
12:49:51 <Zwaarddijk> why would a pure thread use most commands?
12:50:00 <Patashu> Because sinners have fallen from the grace of God
12:50:10 <Lymia> Implementing it is going to be NP-annoying
12:50:14 <Zwaarddijk> and hence thingss only sinners would want using
12:50:24 <Lymia> Anything in the math library?
12:50:25 <Patashu> Programming can be a Godly experience
12:50:40 <Patashu> But we need math to figure out our rapture predictions
12:50:49 <Lymia> Make it annoying as possible, and make that the tag line?
12:50:54 <Lymia> Let's add a graphics library.
12:50:56 <Lymia> What about OpenGL?
12:51:12 <Patashu> Well, it doesn't have to be annoying, just thematic and different in some way
12:51:33 <Lymia> Elementry math with pow means you can use this: http://www.xamuel.com/formula.php
12:51:48 <Lymia> You have flow control which can build a sum command.
12:52:09 <Patashu> Begone, vile high level math
12:52:21 <Patashu> If there's OpenGL support we need a WireCross() and SolidCross() function
12:55:04 <Patashu> God spoke the command line arguments into existence
12:55:14 <Patashu> And they were good (assuming no malformed input)
12:56:01 <Zwaarddijk> Patashu: I think base-22 would be good, btw, since hebrew has 22 letters
12:56:23 <Patashu> When was the last time a rapture monger read any hebrew
12:56:45 <Patashu> (base-26, the KJB has 26 letters)
12:57:24 <Patashu> I wonder if we can work in begetting somehow. <Factory> beget <Object> beget <Attribute>
12:58:11 <Lymia> beget [object name] = constructor call?
13:00:08 <Zwaarddijk> Patashu: the rapture-guys tend to have a weird thing for jews, really.
13:00:16 <Patashu> yeah, but they don't read the stuff
13:00:24 <Patashu> they only care about jews so long as they bring about the end of the world
13:00:45 <Patashu> israel has to rebuild the great temple, I think
13:00:51 <Patashu> or maybe they need to be attacked?
13:00:55 <Zwaarddijk> but the jews also will be there after the rapture, and many of them think a third of them will be god's foot soldiers
13:00:59 <Lymia> How about we switch to lisp synax?
13:01:04 <Patashu> do we want to make a wikipage for this? what's our language called again?
13:01:13 <Lymia> Patashu, let's work out the basics first.
13:01:31 <Lymia> Should we have a call/cc-style command?
13:01:35 <Patashu> I just want to make sure the idea is down somewhere
13:01:42 <Patashu> I really don't know what's most appropriate beyond that
13:02:22 <Lymia> Patashu, go ahead and make a page for it.
13:02:27 <Lymia> Put it under language ideas.
13:03:41 <Lymia> Not Rapture related enough, but I guess.
13:03:51 <Patashu> How can you be more Rapture related than Rapture
13:03:55 <Lymia> Do we make it usable and annoying, or useless and buggy.
13:04:00 <Lymia> useless and annoying*
13:05:58 <Lymia> Patashu, I still suggest we use a lisp derived syntax.
13:08:44 <Patashu> I don't have any strong opinion on what the syntax is
13:08:47 <Patashu> Started the page http://esoteric.voxelperfect.net/wiki/Rapture
13:09:47 <Patashu> I do appreciate all the thought you're putting into it, but you probably have a better idea of how the language should look than I do at this point
13:10:14 <Lymia> Patashu, limit some critical functions to pure threads, and some critical functions to unpure threads.
13:10:22 <Lymia> You can force threading to be used then.
13:14:41 -!- BeholdMyGlory has joined.
13:18:27 <Sgeo__> Next act I guess, but I want to rewatch that
13:31:46 -!- Guest52131 has changed nick to Gregor.
13:33:04 -!- copumpkin has joined.
13:36:29 <Patashu> http://esoteric.voxelperfect.net/wiki/Rapture
13:46:01 -!- Phantom_Hoover has joined.
13:56:37 <Sgeo__> Phantom_Hoover, remind me to rereat Intermission at a later time
13:56:45 <Sgeo__> I'm not quite following it
13:56:59 <lambdabot> Phantom_Hoover: You have 5 new messages. '/msg lambdabot @messages' to read them.
13:57:16 <Phantom_Hoover> Oh god it's not even like there was a big update or anything what can he have to say.
14:10:41 <Sgeo__> Except those stupid comics by Dave (I'm clicking them, but barely reading)
14:22:33 -!- Sgeo_ has joined.
14:23:17 -!- Sgeo__ has quit (Ping timeout: 246 seconds).
14:23:19 <Phantom_Hoover> When elliott reads this he is going to tear you a new one.
14:24:01 <Phantom_Hoover> SBaHJ is the best thing ever and you should be ashamed for not liking it.
14:31:26 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:31:44 <Patashu> I think that's a little strong
14:32:16 -!- oerjan has quit (Quit: Later).
14:43:05 -!- Vorpal has joined.
14:49:54 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
14:53:14 <fizzie> Phantom_Hoover (even though you are gone): That was incredibly silly!
14:53:52 <Sgeo_> He left just as I PMed him some trivial junk
14:59:28 -!- copumpkin has joined.
15:00:00 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
15:02:48 -!- olsner_ has quit (Quit: olsner_).
15:03:15 -!- Phantom_Hoover has joined.
15:05:30 -!- FireFly has joined.
15:09:44 -!- TOGoS has joined.
15:11:10 <HackEgo> 84) <Warrigal> What do you call the husband of my first cousin once removed? <apollo> Warrigal: "Hey, Sexy."
15:18:36 -!- pumpkin has joined.
15:19:21 -!- copumpkin has quit (Ping timeout: 250 seconds).
16:17:21 -!- ais523 has joined.
16:18:26 -!- ais523 has changed nick to ais523_.
16:18:33 -!- ais523_ has changed nick to ais523.
16:25:11 <Phantom_Hoover> http://www.reddit.com/r/wikipedia/comments/d3kvs/interestingly_137_is_also_the_atomic_number_of/
16:40:19 <Lymia> It's called that on purpose it seems
16:40:48 <Phantom_Hoover> It's a consequence of the calculations predicting the properties of trans-Feynmanium elements.
16:41:16 -!- cheater79 has quit (Ping timeout: 240 seconds).
16:41:19 <Phantom_Hoover> i.e. the velocity of the 1s electron is given by v=Z\alpha c.
16:42:03 <Phantom_Hoover> So if Z>1/\alpha, v > c, so the Bohr model breaks down.
16:42:47 <Lymia> Can somebody set an IRC bot to notify this channel if that IP goes down?
16:44:27 <Phantom_Hoover> None of the channel bots allow programs indefinite execution time.
16:45:13 -!- elliott has joined.
16:45:34 <elliott> i reinforced a ceiling today
16:45:35 <ais523> it'd need to be a different bot
16:47:11 <ais523> elliott: Lymia wanted a bot set up to notify the channel if particular IPs went down
16:47:20 <ais523> and Phantom_Hoover said that none of the existing bots would do that on their current codebases, more or less
16:47:43 -!- monqy has joined.
16:47:44 <ais523> anyway, theory: the rapture will actually happen tomorrow, but there'll be sufficiently few perfectly devout Christians that nobody else will notice
16:48:09 <elliott> why would we want a bot like that?
16:48:25 <Lymia> You know that whole rapture story?
16:48:25 <elliott> Lymia: i find your definition of fun wanting?
16:48:38 <Lymia> They say it will spread across the time zones, right?
16:48:52 <elliott> ais523: well, the Bible almost certainly has contradictory commandments, so the chances of anyone following them all is 0 even if there are people that devout
16:48:53 <Lymia> Let's set up a bot to ping a server on Hawaii 10 or so minutes after that time.
16:49:04 <elliott> ais523: but I don't think you have to be free from sin to get rapture'd
16:49:12 <Lymia> Then returns a result of "oh crap" or "No rapture here, time to laugh."
16:49:26 <elliott> Lymia: we could just check the news to see "MAJORITY OF NEW ZEALAND DISAPPEARS" or something
16:49:30 <elliott> pretty sure the people left there would notice
16:49:36 <Phantom_Hoover> And needs to wait for people to rotate into range of his disappearifier.
16:49:39 <ais523> Lymia: oh, the issue is that the Bible didn't specify a timezone?
16:49:50 <Lymia> ais523, Family News does.
16:49:53 <ais523> and so we're not sure exactly when in the day it'll happen?
16:49:54 <Lymia> So we can laugh early.
16:49:58 <elliott> ais523: I think it's something like it just /happens/ to follow the timezone
16:50:09 <elliott> ais523: but they've said it will definitely start in New Zealand or Australia or thereabouts, IIRC
16:50:16 <elliott> which is a nice early warning system
16:50:20 <elliott> Phantom_Hoover: yes it's good.
16:50:49 <Lymia> Apparently there's supposed to be earthquakes, right?
16:51:07 <elliott> well earthquakes aren't enough to bring a server down
16:51:16 <elliott> we get temporary peace from the Devil after all this
16:51:27 <elliott> satan is obviously very caring
16:52:48 <elliott> Vorpal: btw, variant builds will be in the next tup release if all goes well
16:52:58 <ais523> elliott: are you a tup fan?
16:53:03 <Phantom_Hoover> Why else would he want us going around drinking, smoking, gambling and having sex?
16:53:20 <elliott> ais523: I like it a lot and subscribe to the list, so yeah, I guess so?
16:53:39 <ais523> Phantom_Hoover: I don't eat fish at all
16:53:44 <Phantom_Hoover> elliott, also: WA crashes when I try to play it single-player.
16:53:54 <elliott> Phantom_Hoover: Yeah, well... WA single player is terminally boring.
16:54:03 <elliott> ais523: I mean, I'd be prepared to drop my loyalties if someone showed me a better build system. :p
16:54:08 <elliott> But I've used an awful lot of them and tup is the best.
16:55:14 <elliott> 05:07:55: <oklofok> monqy: i have this feeling christianity is just a big joke, we're just not in on it
16:55:14 <elliott> 05:08:14: <oklofok> "oh you were being SARCASTIC! sorry us atheists are kind of slow sometimes."
16:55:18 <elliott> 05:09:02: <oklofok> my theory: that's what "rapture" actually means, they just chicken out every time.
16:55:19 <elliott> 05:09:25: <oklofok> i mean it means they tell us
16:55:40 <elliott> so when they say "Sorry, the rapture is ACTUALLY on ...", they're not lying
16:57:22 <elliott> ais523: hey do you want to name a function for me
16:57:33 <ais523> elliott: with no other details?
16:58:02 <ais523> or do you want something that's vaguely descriptive of what it actually does?
16:58:19 <elliott> ??? :: (Monad m) => Maybe a -> MaybeT m a
16:58:21 <Deewiant> elliott: Re. IMAP: Mycology has a readme, you know. :-P But yes, it does.
16:58:31 <elliott> Deewiant: Yeah, I checked it right after asking :P
16:58:45 <elliott> Working on Shiro again, since I figured out a pretty nice way to stop the leaning indentatino.
16:59:00 <elliott> Deewiant: BTW IMAP's spec has to be the absolute worst RC spec of them all.
16:59:09 <elliott> O(n -- )Return instruction n to its old function
16:59:09 <elliott> * This extension is intended to map instructions in the 0-255 range. Other interpreters may have a more limited or more expanded range
16:59:09 <elliott> * Attempting to map instructions outside of the 0-255 range reflect. Some interpreters may ignore an out of range map without reflecting
16:59:09 <elliott> * Chained remaps are not supported by this extension. Only a single level of mapping is supported. Other interpreters may have implemented chained remaps
16:59:13 <elliott> It's like the /opposite/ of clarification.
16:59:23 <Deewiant> Er, I meant, the way to stop it.
16:59:35 <elliott> Deewiant: MaybeT + parameterising everything on a typeclass
16:59:37 <elliott> class (Functor m, Applicative m, MonadState FungeState m, MonadIO m) => MonadShiro m where
16:59:37 <elliott> liftShiro :: Shiro a -> m a
16:59:57 <elliott> Which is less painful than it sounded at first because the only functions I /use/ are the state ones and liftIO, and those are already typeclassed
17:00:18 <elliott> Deewiant: So right now the only hold-up is naming that function that I just pasted :-P
17:00:30 <Deewiant> Other than the "may ignore an out of range map" I think that's fine
17:00:43 <elliott> Yeah, but it's not clarification of the spec :P
17:01:08 <Deewiant> It's better than when none of that was there :-P
17:01:35 <elliott> 05:19:26: <oklofok> what?!? http://www.bricktestament.com/judges/samson_commits_mass_murder/jg14_01.html
17:01:59 <elliott> gotta love god making you travel to kill thirty people just because some guys solved your shitty riddle
17:03:47 <elliott> ais523: unfortunately the function fits none of the obvious patterns :(
17:03:51 <elliott> it's not liftMaybe, it's not maybeT
17:05:31 <elliott> i might wake up just before the rapture tomorrow
17:06:15 <elliott> does the rapture respect daylight savings
17:07:11 <elliott> we just need a mega daylight savings bill passed QUICKLY
17:07:30 <monqy> im just going to sleep all day then party it up
17:07:36 <Lymia> What happens if the government declares the date to be 5/21/0 and that time will be based on a 4 hour clock from then on.
17:08:03 <Lymia> Or heck, uses hextime, to which no concept of 6:00PM can exist.
17:08:03 <elliott> Lymia: god will smite us all for being tricky
17:08:52 <elliott> anyway the rapture is no biggie
17:09:02 <elliott> convert to christianity, believing won't be particularly difficult at that point
17:09:20 <monqy> escape to outers pace
17:10:04 <Lymia> elliott, believing tends to not be very difficult when there's near unambiguous evidence of something...
17:10:10 <monqy> world end only affects earth and a few unfortunate stars right
17:10:31 <Lymia> We need to fly to the moon.
17:10:43 <Lymia> elliott, I wonder.
17:10:43 <elliott> monqy: poor ISS Christians
17:11:01 <Lymia> What happens to Christianity's ideas when ET is confirmed?
17:11:23 <TOGoS> They'd probably demand ET's birth certificate
17:12:36 <Lymia> Extraterritorial life, dummy.
17:12:47 <monqy> all of their birth certificates
17:12:59 <TOGoS> Extratorrential life
17:17:04 <pikhq> Lymia: Catholic church doctrine is that Jesus died for their sins, too.
17:18:23 <TOGoS> Do they have to follow the same commandments?
17:22:19 <Sgeo_> elliott, I'm up to the first recap
17:46:50 -!- olsner_ has joined.
17:47:37 -!- azaq23 has joined.
17:49:24 <pikhq> elliott: I wonder: is there *any* way that tup could actually be made reasonably portable?
17:49:38 <pikhq> ("reasonably portable" here meaning "using a commonly supported subset of POSIX")
17:49:48 <elliott> Well, the monitor isn't required.
17:50:07 <pikhq> Yeah, but it still needs to hook into programs to get dependency information.
17:50:41 <pikhq> LD_PRELOAD is at least *more* portable, but not going to work in the face of static linking.
17:50:56 <pikhq> Not to mention that it needs at least *some* manual labor to get to work on new libcs.
17:52:09 <ais523> what's tup doing that's nonportable?
17:52:42 <pikhq> ais523: LD_PRELOAD or FUSE.
17:53:20 <pikhq> ais523: It needs information about which tup rules accessed which files to generate a complete dependency tree.
17:54:42 <ais523> oh, I see, you don't enter the dependencies by hand, but instead it calculates them based on actual open commands?
17:55:07 <pikhq> So that it has the *complete* dependency tree.
17:55:26 <pikhq> One of its major design ideas is to make it nigh-impossible for you to have an inconsistent build.
17:57:08 <pikhq> Also, logarithmic time rebuilds.
17:59:30 <elliott> ais523: better summary: the arrows go up, so it's faster
18:00:50 <pikhq> http://gittup.org/tup/make_vs_tup-nothing.png Better summary.
18:01:54 <ais523> most projects aren't that large anyway
18:03:24 <pikhq> ais523: That's non non-recursive make.
18:03:26 <elliott> anyway, the killer feature for tup is the rebuilder, imo
18:03:29 <pikhq> i.e. the best case scenario.
18:03:41 <elliott> you can set it up so that it automatically rebuilds things whenever you change a file
18:03:44 <pikhq> If you add recursive make into the scenario it gets fucking horrifying.
18:03:44 <ais523> elliott: pointing out something that isn't in a set is not a counterexample for most things being in that set
18:03:58 <elliott> so you can switch from your editor to your terminal and see what you fucked up already :)
18:04:08 <elliott> the logarithmic-time thing is only relevant from medium sized projects up
18:04:13 <ais523> also, I'd probably turn the rebuilder off, it could lead to inconsistent builds really easily due to changing one file and not another
18:04:27 <elliott> ok well for a start, the rebuilder is something you run explicitly
18:04:28 <ais523> I mean, if I change what a function means in one file
18:04:36 <elliott> I don't think you understand
18:04:37 <ais523> but not all calls to it in another
18:04:42 <ais523> then the resulting binary will be really messed up
18:04:48 <pikhq> Okay, then it'll be inconcistent until such time as you fix those calls.
18:04:52 <elliott> you wouldn't switch to your terminal then to test it
18:04:55 <ais523> and if something happens to use it before I can fix those calls, then the program might do anything
18:04:58 <elliott> since you'd fix the calls first
18:05:03 <elliott> auto build does not equal auto run ...
18:05:09 <ais523> elliott: but someone else might run it
18:05:16 <elliott> from your /private source tree/?
18:05:17 <pikhq> Do people regularly run things out of your development tree?
18:05:29 <elliott> i think i've found your problem and it's not the build system
18:05:38 <Deewiant> elliott: I might switch to my terminal to test the previous version, only to find that the executable doesn't exist because it tried to get rebuilt but the build failed
18:05:40 <ais523> pikhq: I run things out of my dev tree sometimes
18:05:49 <elliott> ais523: you said someone else
18:05:52 <ais523> imagine that the project's self-hosted
18:06:01 <ais523> elliott: it's happened with source trees I've maintained
18:06:26 <ais523> I supply updates to a program, they're compiled and the executables are updated, and the executable might be run by a third party at any time in between
18:06:41 <elliott> If "make install" isn't a separate step, then your process is fucked, no question about it
18:06:49 <elliott> Deewiant: I don't think tup removes old files on a failed build
18:06:50 <pikhq> ais523: I think I've found your problem and it's not the build system.
18:07:05 <Deewiant> elliott: If it builds into a tmp directory of some kind, then it works, of course
18:07:07 <pikhq> elliott: Repeated for truth.
18:07:19 <ais523> and aren't most build systems designed to work without an install step?
18:07:26 <Deewiant> elliott: I was thinking along the lines of 'gcc -o foo foo.c' failing and leaving foo an empty file
18:07:36 <pikhq> ais523: Uh? *What crazy shit automatically installs*?
18:07:36 <elliott> ais523: the problem is not that, the problem is that people are running out of your unstable, volatile development tree
18:07:45 <ais523> I'd used to run C-INTERCAL from my home dir more often than installed location before I made habitual installation tests
18:07:55 <ais523> pikhq: I'm saying, that installing is not a separate step nowadays
18:08:01 <elliott> stop being dishonest by using irrelevant arguments like that
18:08:05 <ais523> until you make a final version of the program
18:10:00 <elliott> show me an example of someone who isn't you regularly running an in-development program to do actual things straight out of your unstable, volatile development source tree, and I'll show you a completely broken process
18:10:18 <pikhq> Why the hell would you run something out of your build tree other than to test changes you just made?
18:10:33 <pikhq> We've got version control systems people, use them.
18:10:38 <Deewiant> My ccbi install is a symlink to my build tree
18:11:02 <pikhq> Deewiant: You are either confident you will not make changes that break shit, or mad.
18:11:34 <elliott> i disagree with pikhq in the general case btw, i run mcmap from the build tree
18:11:36 <elliott> but what i said still stands
18:11:44 <Deewiant> I'm confident that I won't run ccbi in such a case that it'd matter
18:12:09 -!- olsner_ has quit (Quit: olsner_).
18:12:59 <elliott> Deewiant: right, but you wouldn't tell other people to run ccbi out of /home/deewiant/src/ccbi/ccbi on a shared server :-)
18:13:41 <pikhq> Anyways, it is so friggin' nice to just make changes and immediately see the build error.
18:15:14 <pikhq> Probably the only downside of tup vs. make is that make works literally everywhere.
18:18:18 <pikhq> Though tup at least covers Windows/Linux/OS X just fine.
18:19:42 <elliott> Deewiant hates Funge and wants it to die (this is because he hates Shiro (this is because he hasn't named that function yet))
18:19:58 <ais523> elliott: what does the function actually /do/?
18:20:09 <elliott> ??? :: (Monad m) => Maybe a -> MaybeT m a
18:20:17 <ais523> also, statistically speaking, you always reject my advice on naming things
18:20:30 <elliott> good thing i asked Deewiant then >:)
18:20:43 <ais523> hmm, now I have to figure out exactly what that's doing, given that I'm not too experienced with monad transformers
18:21:04 <pikhq> ais523: Just layering the functionality of a monad onto another monad.
18:21:14 <ais523> it's like an inside-out monad transformer
18:21:24 <elliott> ais523: it's a function, so it's not a monad transformer at all
18:21:35 <ais523> as in, instead of becoming mT Maybe a, we're getting MaybeT m a
18:21:37 <pikhq> elliott: I was describing monad transformers.
18:21:43 <ais523> elliott: I mean, it's like an inside-out lift
18:22:07 <elliott> ??? :: Maybe a -> MaybeT m a
18:22:13 <elliott> (taken from kmc in hash-haskell)
18:22:18 <pikhq> elliott: toMaybeT?
18:22:34 <pikhq> It reads like a cast from Maybe to MaybeT m a, so...
18:22:42 <ais523> it's like a flipped lift
18:22:49 <ais523> it's a lift, but with the monads the other way round
18:23:19 <pikhq> Deewiant: Impossible to generalise without a typeclass.
18:23:26 <elliott> Deewiant: What is it again? maybe mzero return?
18:23:29 <elliott> Or was it maybe mzero mplus
18:24:06 <ais523> elliott: there's actually probably a category theory name for doing that
18:24:13 <lambdabot> forall (m :: * -> *) a. (MonadPlus m) => Maybe a -> m a
18:24:28 <ais523> what does lowercase-m maybe do?
18:24:30 <elliott> I think it's actually the same as (maybe (fail "") return) too, but let's pretend fail doesn't exist :-)
18:24:32 <lambdabot> forall b a. b -> (a -> b) -> Maybe a -> b
18:24:46 <elliott> ais523: it's the catamorphism :-P
18:25:34 <ais523> oh, is it that maybe x f Nothing = x, maybe x f (Just y) = f y?
18:26:40 <elliott> hey, rapture is in two hours for australias
18:26:57 <elliott> ooh, wait, "Kingston5:56NFT"
18:27:03 <elliott> four minutes until the somewhere-in-Australia rapture
18:27:10 <elliott> oh, it's already happening in New Zealand
18:27:35 <Phantom_Hoover> Also: if it's real, which denomination do I convert to?
18:28:05 <elliott> Phantom_Hoover: whichever one the doomsday prophets are doin'.
18:28:17 <elliott> Apparently they think the world is over thirteen thousand years old, so that's a bit better than six thousand.
18:28:21 <Phantom_Hoover> I'm already a baptised Catholic (my parents were idiots), so that would be the easiest route, but they're clearly not Catholic, so it mightn't come out too well.
18:28:25 <elliott> "We just elected an Atheist PM, so we're all still here..." --suspected Australian
18:33:01 <pikhq> elliott: According to Family Radio, it will occur on 2011-05-21T18:00, local time.
18:33:11 <elliott> pikhq: Yep. Already after that in New Zealand.
18:33:55 <pikhq> Oh, they're UTC+13 right now.
18:34:24 <Lymia> I thought it was -12 to +12
18:34:38 <pikhq> Uh. No, it's not T18:00 or past it in New Zealand.
18:34:49 <elliott> http://www.google.com/search?client=ubuntu&channel=fs&q=time+in+new+zealand&ie=utf-8&oe=utf-8
18:34:52 <elliott> 6:35 Saturday (NZST) - Time in Wellington, New Zealand
18:35:25 <elliott> OK wait, where is it past six pm.
18:35:49 <pikhq> It not yet past 2011-05-21T18:00 anywhere.
18:36:10 <pikhq> Lymia: It's -12 to +14, actually.
18:36:35 <elliott> pikhq: I'm going with toMaybeT for now, but I think I'll change it later.
18:36:53 <elliott> ioMaybe :: IO a -> MaybeT Shiro a
18:36:53 <elliott> liftShiro ((Just <$> io m) `catchShiro` \(e::IOException) -> return Nothing)
18:37:26 <pikhq> Lymia: Kiribati uses UTC+13 and UTC+14 for civil time.
18:38:09 <pikhq> Sorry, UTC+12 through UTC+14.
18:38:18 <pikhq> They used to have the date line going through the middle of the country.
18:39:40 <pikhq> UTC+14 is just south of Hawaii... Which is UTC-10.
18:39:46 <pikhq> That's quite a difference in civil time.
18:39:54 <Deewiant> elliott: Can't you do something like liftShiro $ (return <$> io m) `catchShiro` \(_::IOException) -> mzero
18:40:12 <Deewiant> elliott: I mean, if you're using Just/Nothing explicitly there shouldn't be a need for toMaybeT :-P
18:40:14 <pikhq> Of course, Hawaii is south of Alaska, which is UTC-9.
18:40:18 <pikhq> Civil time makes no sense.
18:40:22 <Deewiant> elliott: Just make a MaybeT directly
18:40:35 <elliott> Deewiant: Well, yeah, but toMaybeT is just "MaybeT . return".
18:40:41 <elliott> So making it directly would clutter up the two clauses.
18:40:50 <pikhq> Gotta love time zones not even containing their meridian.
18:41:28 <Deewiant> elliott: How would it clutter it? Use something like what I gave (can't be bothered to figure out the types right myself), it should make the whole thing shorter
18:42:01 <elliott> Couldn't match type `a' with `m0 a'
18:42:01 <elliott> `a' is a rigid type variable bound by
18:42:01 <elliott> the type signature for ioMaybe :: IO a -> MaybeT Shiro a
18:42:02 <elliott> Expected type: MaybeT Shiro a
18:42:04 <elliott> Actual type: MaybeT Shiro (m0 a)
18:42:07 <elliott> Pretty sure that's not surmountable
18:42:47 <Deewiant> Pretty sure that's just something I did wrong
18:43:01 <pikhq> (what the hell, France. You've got the Prime Meridian going through your country but you're UTC+1)
18:43:58 <elliott> Deewiant: Pretty sure I reached the current solution after trying to get that working :P
18:44:07 <Deewiant> In particular the 'return <$> io m' bit worries me, but I can't see the correct version in my head right now
18:44:36 <elliott> --ioMaybe :: IO a -> MaybeT Shiro a
18:44:36 <elliott> ioMaybe m = liftShiro $ (return <$> io m) `catchShiro` \(_::IOException) -> mzero
18:47:40 <elliott> (MonadShiro m) => Shiro a -> m a
18:47:56 <elliott> There's a (MonadShiro (MaybeT Shiro)) instance.
18:50:33 <Deewiant> liftShiro $ liftIO (io m) `catchShiro` \(_::IOException) -> mzero ??
18:52:47 <elliott> That's arguably not the same thing :)
18:52:52 <elliott> Actually wait, why would that work
18:53:05 <Deewiant> I was thinking that the io lifts the IO to a Shiro
18:53:12 <Deewiant> Which is then a type mismatch with the mzero
18:53:21 <elliott> io :: (MonadShiro m) => IO a -> m a
18:53:25 <elliott> I guess it works because of that
18:53:36 <Deewiant> I don't see how that changes anything
18:53:44 <pikhq> Is it just me, or does WINE use hand-written recursive make, too?
18:54:00 <Deewiant> Does Shiro have a MonadPlus instance?
18:54:31 <pikhq> Oh, it's even worse. It uses makedep.
18:54:36 <elliott> Deewiant: It's a StateT, so probably
18:54:39 <elliott> (It's literally a type alias
18:54:49 <elliott> MaybeT has no MonadPlus because there's two possible definitions
18:55:10 <Deewiant> Which monad package are you using :-D
18:55:55 <pikhq> I hereby ban people from using makedepend.
18:55:56 <Deewiant> StateT m has MonadPlus iff m has MonadPlus
18:55:59 <elliott> You mean which transformers thing
18:56:07 <elliott> Deewiant: Well it's StateT dsjoisdfj IO
18:56:11 <Deewiant> elliott: 'transformers' has Monad m => MonadPlus (MaybeT m)
18:56:19 <Deewiant> elliott: Then Shiro doesn't have MonadPlus
18:56:20 <elliott> I'm using the "regular" one
18:56:38 <Deewiant> I don't know what's regular these days
18:56:38 <elliott> And my MaybeT is http://hackage.haskell.org/package/MaybeT
18:57:03 <Deewiant> I don't know what's in the Haskell Platform :-P
18:57:18 <Deewiant> I just install ghc and cabal-install and install what I need
18:57:42 <pikhq> Just install the Haskell Platform, it contains what you need.
18:58:05 <elliott> Haskell Platform, it's got what Haskellers crave.
18:58:11 <pikhq> Okay, well, it doesn't contain everything you could ever want, but it contains a reasonable number of commonly used Haskell libraries.
18:58:16 <Deewiant> elliott: Anyway, despite the docs, that does have MonadPlus
18:58:50 <Deewiant> elliott: See the autogenerated 'instances' list :-P
18:59:04 <elliott> Deewiant: I just used it because it was the only one I could find :P
18:59:50 <Deewiant> Well, anyway, it has MonadPlus
19:00:14 <Deewiant> And Shiro shouldn't AFAICT, so I don't understand why that last one typed
19:00:45 <pikhq> Sadly, distro packages of the Haskell Platform are sometimes a bit behind. Debian wheezy's still on 2010.1...
19:00:56 <pikhq> Though 2011.2 is in sid.
19:02:25 <Deewiant> Oh, duh, there's a MonadShiro instance
19:03:07 <Deewiant> liftShiro (((io m :: MaybeT Shiro a) `catchShiro` \(_::IOException) -> (mzero :: MaybeT Shiro a)) :: MaybeT Shiro a) :: MaybeT Shiro a
19:03:13 <Deewiant> And the outer liftShiro is redundant
19:03:34 <elliott> Deewiant: catchShiro :: (Exception e) => Shiro a -> (e -> Shiro a) -> Shiro a
19:03:46 <elliott> Because it has to look like
19:03:48 <elliott> catchShiro action handler =
19:03:48 <elliott> StateT $ \s -> runStateT action s `catch` (flip runStateT s . handler)
19:03:52 <elliott> and I don't think I can generalise that easily
19:04:00 <Deewiant> In which case mzero has to be Shiro a
19:04:04 <Deewiant> But I don't see how that's possible :-P
19:04:19 <elliott> *Shiro.Utils> mzero :: Shiro ()
19:04:22 <elliott> I'm using transformers /and/ mtl it seems
19:04:25 <elliott> That's not a good thing is it
19:04:37 <Deewiant> I think mtl depends on transformers these days
19:04:44 <ais523> elliott: did you think of a name yet?
19:04:52 <elliott> *Shiro.Utils> runShiro (mzero :: Shiro ()) initialFungeState
19:04:52 <elliott> *** Exception: user error (mzero)
19:05:07 <ais523> that's correct, isn't it?
19:05:14 <Deewiant> Oh, mzero just fails in IO then :-P Nice :-P
19:05:15 <elliott> *Shiro.Utils> runShiro (runMaybeT (liftShiro (mzero :: Shiro ()) :: MaybeT Shiro ())) initialFungeState
19:05:15 <elliott> *** Exception: user error (mzero)
19:05:27 <ais523> Deewiant: mzero /should/ just fail in IO, assuming it types at all
19:05:33 <ais523> as mplus in IO = bad things happen
19:05:35 <Deewiant> ais523: I was assuming it wouldn't type
19:05:53 <Deewiant> elliott: If your catchShiro were more general this'd work nicely
19:06:14 <elliott> Deewiant: I don't think it /can/ be generalised
19:06:18 <ais523> well, all Haskell monads (as opposed to mathematical monads) have a way to respond to errors
19:06:30 <elliott> ais523: I don't think you understand the problem being solved here
19:06:44 <Deewiant> elliott: Control.Monad.Error.Class has a catchError that looks promising
19:07:43 <elliott> Deewiant: Honestly, my old version worked fine and wasn't that ugly :P
19:08:17 <ais523> elliott: my last sentence was meant to be more or less a non sequitur
19:08:29 <ais523> there was context but I forgot to send it to the channel
19:08:52 <ais523> which is along the lines of "all Haskell monads have to have an mzero equivalent anyway, even if they don't have an mplus equivalent, and even if actually using it is a Bad Idea"
19:09:54 <Deewiant> elliott: There's no ugliness, you don't need the type signatures :-P
19:10:35 <elliott> Deewiant: Ugliness in what
19:11:03 <Deewiant> elliott: I thought you were calling the latest ioMaybe 'that ugly'
19:11:44 <elliott> Deewiant: It wasn't ugly, it was broken :)
19:12:23 <Deewiant> Make Shiro a MonadError and use catchError and it should work
19:12:43 <Deewiant> Well, it already is, because it's an alias and not a newtype :-P
19:12:48 <elliott> I'll finish MaybeT-ising the fingerprint code first :P
19:14:07 <elliott> Although nothing can ever beat the sheer ugly perfection of http://sprunge.us/hEDP
19:14:16 <monqy> oh dear god that code
19:14:27 <monqy> oh dear god that code
19:18:00 -!- myndzi has quit (Ping timeout: 246 seconds).
19:18:19 <elliott> That mergeByteString /is/ fast :P
19:18:34 <elliott> Deewiant: Compared to everything before it?
19:18:45 <elliott> I mean, it makes loading absolutely negligible as far as Mycology goes.
19:18:54 <Deewiant> Comparing it to slow Haskell doesn't make it fast as such ;-)
19:18:58 <elliott> It previously took almost a second.
19:19:10 <elliott> Deewiant: Well, no, but Mycology is still a big file.
19:19:21 <elliott> To load it into a fairly-decent fungespace structure instantly certainly doesn't make it "not fast".
19:19:36 <Deewiant> Psh, Mycology isn't even a megabyte
19:19:53 <elliott> Deewiant: You're just trying to piss me off >:)
19:19:58 <elliott> textify :: ByteString -> ByteString
19:19:58 <elliott> textify = B8.unlines . reverse . takeWhile (/= B.empty) . reverse . map (fst . B.spanEnd (== space)) . B8.lines
19:20:03 <elliott> I think I wrote this as penance for mergeByteString
19:20:09 -!- myndzi has joined.
19:20:17 <elliott> Well, with some pointlessifying done by Deewiant because he can't stop himself :P
19:21:05 <elliott> Hmm, I'm starting to think I should just make the instruction execution functions MaybeT, since I use ioReflect a lot
19:22:30 <elliott> -- TODO: Also, if the least significant bit of the flags cell is
19:22:30 <elliott> -- high, o treats the file as a linear text file; that is, any
19:22:30 <elliott> -- spaces before each EOL, and any EOLs before the EOF, are not
19:22:30 <elliott> -- written out. The resulting text file is identical in appearance
19:22:30 <elliott> -- and takes up less storage space.
19:23:27 <elliott> Function `$wa{v s77o} [lid]'
19:23:27 <elliott> has two call patterns, but the limit is 1
19:23:27 <elliott> Use -fspec-constr-count=n to set the bound
19:23:27 <elliott> Use -dppr-debug to see specialisations
19:23:30 <elliott> Why do these warnings even exist.
19:24:27 <elliott> Deewiant: Woo, I think my MaybeT stuff has slowed down Mycology
19:24:36 -!- zzo38 has joined.
19:24:39 <elliott> I guess GHC isn't smart enough to eliminate it all
19:25:46 <elliott> Yeah, it's added .8 seconds, JESUS
19:27:03 <elliott> How can a minor structural improvement involving typeclasses add that much
19:27:10 <elliott> Is it passing around the typeclass shit all the time??
19:27:52 <Deewiant> Uh... yes, when it doesn't inline? That's how typeclasses work :-P
19:28:01 <elliott> Deewiant: Yeah, but GHC is meant to be smart :P
19:28:21 <elliott> It should do whole program analysis and realise that I only ever have two instances, and all the functions I use in the typeclass can just be lifted instead when in the MaybeT.
19:28:23 <Deewiant> IIRC JHC was the best at eliminating typeclass stuff :-P
19:28:51 <elliott> This sucks, I want my fastness back :P
19:29:02 <elliott> Hmm, maybe I'll try some strictness annotations, those are always good
19:30:53 <elliott> Maybe I'll tell GHC to inline some things
19:30:57 <elliott> Can you tell GHC to inline a typeclass function? :P
19:32:36 <elliott> Woot, inlining added point one seconds
19:32:40 <zzo38> I think the "recursive badness" algorithm for breaking paragraphs into lines would be at worst case, $O(n)$ space and $O(2^n)$ time. However there are shortcuts such as: * Tolerance setting, ignoring breaks with too much badness * Stop in case an overfull line would occur * Maximum paragraph height or number of lines
19:32:50 <zzo38> What do you think about this, what is your opinion about this?
19:33:34 <zzo38> (Unfortunately I don't know perfectly about big-O notation and could get some details wrong due to that)
19:35:49 <elliott> Deewiant: So mergeByteString is somehow a cost centre now :P
19:36:09 <elliott> I blame your foul language about it.
19:36:17 <ais523> zzo38: I think your big-O notation looks correct there
19:36:27 <elliott> Deewiant: But it didn't use to be :(
19:36:38 <ais523> but brute force seems the wrong way to go about this, as you pointed out
19:36:47 <ais523> did you look at the algorithm TeX actually uses?
19:37:06 <zzo38> ais523: Yes I have, I read the entire book.
19:37:43 <zzo38> However I do not perfectly understand it.
19:38:08 <ais523> zzo38: neither do I, unfortunately, although in my case because I haven't read the book
19:38:46 <zzo38> ais523: Do you have copies of all five books in Computers & Typesetting?
19:38:47 -!- elliott has quit (Remote host closed the connection).
19:38:55 <zzo38> (Probably not, if you haven't read it)
19:39:10 <zzo38> Do you have any of the books?
19:39:31 -!- elliott has joined.
19:40:34 <zzo38> elliott: What is strange?
19:40:52 <elliott> that ais523 doesn't own those books doesn't EVERYONE
19:41:15 <ais523> elliott: I don't own as many books as you might expect
19:41:23 <ais523> in fact, I hardly ever use paper at all nowadays
19:41:25 -!- oerjan has joined.
19:41:30 <elliott> hey oerjan name my function
19:41:54 <elliott> ??? :: (Monad m) => Maybe a -> MaybeT m a
19:41:57 <ais523> to the extent that whenever anyone gives me something on paper, or prints something out, or whatever, I'm confused for a moment and then think "oh, paper! I remember that"
19:42:00 <elliott> ??? :: (Monad m) => Maybe a -> MaybeT m a
19:42:07 <elliott> oerjan: it's the same as (maybe return mzero)
19:42:23 <oklofok> "<zzo38> (Unfortunately I don't know perfectly about big-O notation and could get some details wrong due to that)" <<< f = O(g) if from some point on, f is smaller than some constant multiple of g
19:42:40 <oklofok> in formulas, O(something) means, well, that.
19:42:57 <elliott> oerjan: basically this is for using a Maybe value in a MaybeT block
19:43:00 <elliott> i.e. you have a map lookup
19:43:07 <zzo38> I doubt EVERYONE owns these books...... and book B can be generated from the file "tex.web" although footnotes will be missing and so will a few other things, although you can read the DVI file (which I used before purchasing the books)
19:43:08 <elliott> foo <- ??? [dollar] Map.lookup blah
19:43:56 <oerjan> elliott: well by your definition it generalizes to any MonadPlus
19:44:15 <elliott> I just need a name for it :)
19:44:34 <oerjan> well i saw liftMaybe mentioned
19:44:35 <zzo38> The line breaking algorithm is described in sections 813 to 890. (Page numbers depend on whether or not footnotes are included, though)
19:44:52 <oerjan> @hoogle Maybe a => m a
19:44:53 <lambdabot> Control.Applicative unwrapMonad :: WrappedMonad m a -> m a
19:44:53 <lambdabot> Text.Regex.Base.RegexLike getAllTextSubmatches :: AllTextSubmatches f b -> f b
19:45:05 <oerjan> @hoogle Maybe a -> m a
19:45:05 <lambdabot> Data.Monoid First :: Maybe a -> First a
19:45:05 <lambdabot> Data.Monoid Last :: Maybe a -> Last a
19:45:05 <lambdabot> Data.Maybe maybeToList :: Maybe a -> [a]
19:45:20 <elliott> it'd prompt if there was more
19:45:23 <elliott> oerjan: liftMaybe is wrong
19:45:26 <oerjan> @hoogle MonadPlus m => Maybe a -> m a
19:45:26 <lambdabot> Control.Monad mplus :: MonadPlus m => m a -> m a -> m a
19:45:26 <lambdabot> Control.Monad msum :: MonadPlus m => [m a] -> m a
19:45:26 <lambdabot> Data.Foldable msum :: (Foldable t, MonadPlus m) => t (m a) -> m a
19:45:44 <elliott> I think there's probably some weird category theory term for it that I could steal >:)
19:45:46 <oerjan> i guess you've checked whether it exists alrady
19:46:01 <elliott> well, no, but thanks for the confirmation
19:46:24 <zzo38> From what I can tell, the Pascal compiler that Knuth used requires numeric labels; I have seen later other Pascal programs that used named labels
19:46:44 <oerjan> @hoogle Cont r a -> ContT r m a
19:47:24 <oerjan> elliott: it's sort of a lift you consider MaybeT to be a _composition of Maybe with another monad
19:47:43 <elliott> oerjan: still not comfortable calling it liftMaybe though :)
19:47:46 <oerjan> just from the other factor monad
19:47:58 <elliott> it just does not fit the type template i'd expect for something called that
19:48:10 <lambdabot> forall (m :: * -> *) a. (MonadPlus m) => [m a] -> m a
19:48:50 <oerjan> i'm trying to see if there is a similar naming scheme already in use
19:49:40 <zzo38> Included in section 813 is a reference to another article, which might have another description of a similar algorithm, although I do not have access to that another article.
19:51:00 <oerjan> elliott: oh, liftMaybe is entirely consistent with the naming of liftIO
19:51:22 <oerjan> so there is some precedent
19:51:45 <lambdabot> It could refer to either `Control.Monad.Error.liftIO', imported from Control.Monad.Error
19:51:45 <lambdabot> or `Control.Monad.Logic.liftIO', imported from Control.Monad.Logic
19:51:48 <elliott> foo :: Maybe a -> MaybeT m a
19:51:59 <oerjan> elliott: liftIO not lift you dolt
19:52:24 <oerjan> :t Control.Monad.Error.liftIO
19:52:24 <lambdabot> forall a (m :: * -> *). (Control.Monad.Error.MonadIO m) => IO a -> m a
19:52:49 <oerjan> :t Control.Monad.Instances.liftIO
19:52:50 <lambdabot> Not in scope: `Control.Monad.Instances.liftIO'
19:53:02 <ais523> I take it MonadIO is a set of monads that contain IO chains?
19:53:09 <oerjan> :t Control.Monad.Transform.liftIO
19:53:12 <ais523> :t Control.Monad.Logic.liftIO
19:53:12 <lambdabot> forall a (m :: * -> *). (Control.Monad.Logic.MonadIO m) => IO a -> m a
19:53:16 <elliott> IO is always on the bottom
19:53:24 <oerjan> ais523: neither is the common one
19:53:29 <ais523> elliott: well, things that "do IO", in a sense
19:53:45 <lambdabot> Control.Monad.Trans liftIO :: MonadIO m => IO a -> m a
19:54:07 <elliott> oerjan: amusingly I have io as an alias for liftIO in Shiro
19:54:25 <oerjan> wth lambdabot doesn't know that those are (or _should_ be) the same function, i don't know
19:54:40 <oerjan> elliott: yeah that's not uncommon i think
19:54:59 <elliott> oerjan: apply the same logic to this and you get... maybe
19:55:45 <pikhq> Well, you could import qualified Prelude or something. :P
19:58:08 <elliott> i guess liftMaybe if better than what I have now
19:58:50 <oerjan> elliott: i note liftCont :: Cont r a -> ContT r t a doesn't exist either, although it would be easy. in fact you might want a typeclass/type family for liftable transformers in general...
19:59:09 <elliott> oerjan: fuck that shit, I've increased my Mycology time by point eight seconds just by adding this MaybeT thing
19:59:13 <elliott> because all my functions are now typeclassed
19:59:15 <oerjan> @hoogle t Identity a -> t m a
19:59:15 <lambdabot> Did you mean: t (Identity t) a -> t m a /count=20
19:59:15 <lambdabot> Data.Graph.Inductive.Basic grev :: DynGraph gr => gr a b -> gr a b
19:59:15 <lambdabot> Data.Map deleteMax :: Map k a -> Map k a
19:59:22 <elliott> even though the liftShiro contained within them is irrelevant 90 percent of the time
19:59:25 <elliott> and so it shouldn't have to pass around anything
19:59:32 <elliott> maybe i should have liftShiro separate
20:00:17 <oerjan> elliott: well can't you add specialize pragmas?
20:00:37 <elliott> oerjan: oh right... how do they work again :D
20:00:38 <oerjan> or what they are called
20:01:12 -!- olsner_ has joined.
20:01:33 <elliott> now to separate out liftShiro
20:02:59 -!- zzo38 has left.
20:03:05 <elliott> oerjan: unfortunately I think I'd have to specialize /every single function/ :(
20:03:07 <oerjan> hm i guess i've complained previously that liftState in this sense didn't exist
20:03:10 <elliott> and there are a lot of them
20:03:30 <oerjan> (you have to use StateT . return or State)
20:04:10 <oerjan> actually for transformed state monads you need to write it with get and put
20:05:47 -!- olsner_ has quit (Client Quit).
20:06:05 <elliott> oh it's actually specialise
20:06:19 <elliott> (UK spelling also accepted.)
20:06:51 <elliott> wow, we've had this topic for three days
20:07:58 -!- Deewiant has set topic: Tropical discussion on the best way to enforce peelings | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
20:07:59 <oerjan> class (Monad m, MonadTrans t) => LiftableMonad m t where lift :: m a => t Identity a
20:08:36 <oerjan> oh and probably | t -> m, m -> t
20:09:08 <oerjan> elliott: wow, i didn't notice this topic at all before now
20:10:01 <oerjan> hm or maybe it should actually be Monad n => m a -> t n a
20:10:43 <oerjan> and drop the functional dependency. then it would actually generalize lift...
20:11:02 <oerjan> ...but probably cause heaps of overlapping instances at the same time
20:11:58 <oerjan> say if someone did MaybeT Maybe, it would unclear which side to lift an actual Maybe into
20:12:27 -!- zzo38 has joined.
20:12:40 <oerjan> this is not a problem for IO because there is no transformer corresponding to it
20:17:20 <oerjan> there should totally have been an STT, anyway
20:17:55 <oerjan> although i vaguely recall the type trick that makes ST sane and pure doesn't work
20:18:15 <elliott> hmm, can you implement ST with Data.Dynamic?
20:18:25 <elliott> (Integer, Map Integer Dynamic)
20:18:29 <elliott> and just increment the integer each time
20:18:44 <oerjan> elliott: you could imagine passing forked worlds around to make STT behave like a crazy State
20:18:54 <elliott> then "newtype STRef r a = STRef Integer"
20:19:31 <oerjan> elliott: yeah i think i've seen that alluded to
20:19:58 <elliott> so ST is Haskell ninety-eight plus unsafeCoerce, then
20:20:05 <oerjan> hm i guess the type trick isn't really needed if you _actually_ pass a world state around...
20:20:09 <elliott> which is pretty portable, considering it only requires unsafeCoerce in a very safe way
20:22:10 <oerjan> _NOW_ WHAT?!!!!!!!!!!!!!
20:22:31 <oklofok> could you talk about something more soothing like the homotopy of cellular automata maps in the besicovitch topology instead of this haskell stuff?
20:23:25 -!- augur has quit (Remote host closed the connection).
20:23:33 <oerjan> http://hackage.haskell.org/packages/archive/STMonadTrans/0.2/doc/html/Control-Monad-ST-Trans.html is _so_ disappointingly giving up where it gets interesting...
20:26:25 <oklofok> heh indeed, all maps are homotopic there
20:31:17 <oklofok> actually i'm not 100% on that but it seems clear enough
20:31:48 <oklofok> just do the usual toeplitz sequence thingie
20:33:08 <elliott> oerjan: I'm tempted to write an STT now
20:33:16 <elliott> as a break from this stupid slow code
20:33:50 <oerjan> i think it wouldn't work with Cont either, since that can rewind stuff...
20:33:58 <oerjan> (that package version)
20:35:00 <elliott> newtype STT s m a = STT (StateT (ID, (Map ID Any)) m a) should do it, I think
20:35:04 <elliott> ?unmtl StateT (ID, Map ID Any) m a
20:35:04 <lambdabot> ID -> Map ID Any -> m (a, ID, Map ID Any)
20:35:27 <elliott> newtype STT s m a = STT (STTState s -> m (a, STTState s))
20:35:34 <elliott> data STTState s = STTState ID (Map ID Any)
20:35:43 <elliott> ok it might not be /fast/, and you can't GC the map
20:35:49 <elliott> actually wait doesn't ghc have some kind of weak map?
20:40:25 <zzo38> Then if you want to write fast program, don't use Haskell.
20:40:54 <elliott> Haskell is great for writing fast programs.
20:40:59 <elliott> just that approach to STT isn't.
20:42:01 <oerjan> i think ghc has weak references but they may be only in IO
20:42:51 <elliott> oerjan: unsafePerformIO ;D
20:44:26 <zzo38> How fast is Haskell? I thought it is functional it cannot be entirely fast, although it would be faster than Javascript and stuff like that, I would think. I wouldn't know for sure?
20:44:49 <elliott> zzo38: languages don't have speeds
20:44:57 <elliott> implementations do, on certain implementations of certain algorithms
20:51:31 -!- oklofok has quit.
20:54:36 <oerjan> hm i wonder if in clean, with its uniqueness typing system, it might be possible to create an STT that could only be used on monads which don't duplicate state, and which was checked to do so...
20:56:16 <elliott> oerjan: hmm what's a safe thing to unsafeCoerce everything into?
20:56:20 <elliott> I realise unsafeCoerce isn't either, but
20:56:43 <oerjan> or even better, which worked with both but only duplicated state when actually necessary
20:57:29 <oerjan> isn't unsafeCoerce in the ffi or something?
20:57:48 <oerjan> which is as portable as something like that can be
20:57:50 <elliott> or is it unsafePerformIO (equivalent though)
20:58:35 <elliott> http://www.cse.unsw.edu.au/~chak/haskell/ffi/ffi/ffise5.html#x8-230005
20:58:48 <oerjan> unsafeForeignPtrToPtr :: ForeignPtr a -> Ptr a
20:58:48 <oerjan> unsafeLocalState :: IO a -> a
20:58:48 <oerjan> unsafePerformIO :: IO a -> a
21:00:03 <pumpkin> unsafeLocalState = unsafePerformIO
21:00:25 <ais523> hmm, so unsafePerformIO's intended purpose is to allow pointers in other languages to be read from Haskell?
21:00:49 <oerjan> ais523: um not precisely
21:01:18 <lambdabot> Prelude any :: (a -> Bool) -> [a] -> Bool
21:01:23 <oerjan> it's for allowing the ffi to treat foreign functions as pure i assume
21:01:25 <elliott> ais523: it's for using pure functions
21:01:33 <elliott> e.g. a fast C prime checker
21:01:56 <oerjan> although i _think_ there's a declaration for that without using unsafePerformIO, isn't there?
21:02:06 <lambdabot> Prelude any :: (a -> Bool) -> [a] -> Bool
21:02:11 <elliott> oerjan: I just did that, eejit
21:02:25 <elliott> <oerjan> although i _think_ there's a declaration for that without using unsafePerformIO, isn't there?
21:02:26 <oerjan> hey i'm trying to browse Foreign in the other window
21:02:29 <elliott> well you could implement unsafePerformIO /with/ it
21:02:35 <elliott> so might as well provide it :)
21:02:54 <oerjan> elliott: "that" refers to declaring foreign functions as pure
21:04:28 <lambdabot> Data.STRef newSTRef :: a -> ST s (STRef s a)
21:04:28 <lambdabot> Data.STRef.Lazy newSTRef :: a -> ST s (STRef s a)
21:05:40 <lambdabot> forall k a. (Ord k) => k -> a -> M.Map k a -> M.Map k a
21:05:45 <oerjan> ais523: i don't think the trick of using unsafePerformIO to break the type system was part of its motivation, if it was even known when it was standardized
21:06:25 <elliott> newSTTRef :: (Monad m) => a -> STT s m (STRef s a)
21:06:26 <elliott> newSTTRef x = STT (\(STTState n m) -> return (STRef n, STTState (n+1) (Map.insert n (unsafeCoerce x) m)))
21:07:30 <oerjan> elliott: ah there is castForeignPtr :: ForeignPtr a -> ForeignPtr b
21:07:49 <oerjan> and a number of similar ones
21:08:31 <zzo38> That is not a exclamation mark
21:11:20 <lambdabot> Data.STRef writeSTRef :: STRef s a -> a -> ST s ()
21:11:20 <lambdabot> Data.STRef.Lazy writeSTRef :: STRef s a -> a -> ST s ()
21:12:23 <lambdabot> Data.HashTable update :: HashTable key val -> key -> val -> IO Bool
21:12:23 <lambdabot> Data.IntMap update :: (a -> Maybe a) -> Key -> IntMap a -> IntMap a
21:12:23 <lambdabot> Data.Map update :: Ord k => (a -> Maybe a) -> k -> Map k a -> Map k a
21:12:43 <lambdabot> Source not found. Take a stress pill and think things over.
21:12:46 <lambdabot> Source not found. Wrong! You cheating scum!
21:13:12 <lambdabot> Source not found. BOB says: You seem to have forgotten your passwd, enter another!
21:13:21 <lambdabot> Source not found. Wrong! You cheating scum!
21:13:24 <lambdabot> Source not found. My pet ferret can type better than you!
21:13:27 -!- augur has joined.
21:16:00 <elliott> newtype STT s m a = STT (STTState s -> m (a, STTState s))
21:16:33 -!- cheater897 has joined.
21:18:42 <oerjan> dammit i just managed to get to mtl package documentation
21:18:50 <oerjan> (yeah i went a bad route)
21:19:01 <elliott> m >>= k = StateT $ \s -> do
21:19:05 <elliott> it's all weird and lazy and shit
21:19:47 <zzo38> Canadian or United States money?
21:20:15 <elliott> STT m >>= f = STT $ \s -> do
21:20:17 <oerjan> elliott: you already had one up there anyway
21:21:11 <elliott> oerjan: ok I have Monad and MonadTrans
21:21:17 <elliott> oerjan: write a test program using the list monad or something so I can test this :P
21:22:13 <Deewiant> > filterM (const [True,False]) [1,2,3]
21:22:13 <lambdabot> [[1,2,3],[1,2],[1,3],[1],[2,3],[2],[3],[]]
21:24:11 <oerjan> do v <- newSTRef 1; x <- lift [1,2]; modifySTRef v (+x); readSTRef v
21:24:22 <lambdabot> Data.STRef modifySTRef :: STRef s a -> (a -> a) -> ST s ()
21:24:22 <lambdabot> Data.STRef.Lazy modifySTRef :: STRef s a -> (a -> a) -> ST s ()
21:24:23 <Deewiant> elliott: Just modify a value in there :-P
21:25:38 <elliott> oerjan: what should the result be?
21:25:39 <CakeProphet> ls -Qc1 art/*.html | perl -pe 's/\.html/\.txt/' | xargs -t touch
21:25:53 <CakeProphet> for some reason xargs is dumping every file into the same touch invocation. Any idea why?
21:26:24 <elliott> ofc I'm pretty sure this thing leaks like a sieve
21:26:43 <oerjan> that's pretty much a given :D
21:26:52 <elliott> dependencies: Rank2Types (unavoidable), GHC.Prim.Any, unsafeCoerce
21:26:59 <elliott> that is, non-portable dependencies
21:28:48 <oerjan> elliott: you might avoid the Rank2Types by just supporting s = Map Integer Dynamic
21:29:33 <elliott> oerjan: that'd allow things to leak out of "threads"
21:29:37 <elliott> and thus the unsafeCoerce would be safe no more
21:30:34 <oerjan> actually you are not using Dynamic are you
21:31:18 <oerjan> one _might_ do that, avoiding explicit unsafeCoerce, but that would be an additional restriction on all the functions
21:31:35 <elliott> that would have runtime baggage too
21:31:41 <elliott> Dynamic keeps the type around
21:32:08 <elliott> so yeah, STT seems to be another case when the issue is just that Haskell has no real heterogeneous map
21:32:13 <elliott> (similarly with Shiro's fingerprints)
21:44:11 <pikhq> Surprisingly, Steam has gotten to be entirely *tolerable* with wine 1.3.20.
21:44:12 <ais523> oerjan: it switches from one IO chain to the next if the first errors?
21:44:28 <elliott> that's not how mplus works...
21:44:33 <pikhq> Instead of being glitchy but starting games right.
21:44:33 <lambdabot> mzero = ioError (userError "mzero")
21:44:49 <ais523> I know what mplus does in general
21:44:54 <ais523> just not what it does wrt IO in particular
21:45:06 <ais523> also, I suspect that elliott and I have entirely different definitions of "IO chain"
21:45:31 <oerjan> i think s/chain/action/ is appropriate
21:51:49 <pikhq> CakeProphet: Have for ages.
21:52:12 <CakeProphet> really? That's surprising actually. I can never get games to run in wine.
21:53:36 <pikhq> You might not have one that's any *good*, but you certainly have one.
21:57:16 <oerjan> "Rapture is a language inspired by the recent prediction that the world will end on May 21st, 2011, 6 p.m. on the dot (The Bible Guarantees It!)"
21:57:39 <oerjan> i'm not sure whether quibbling about the accuracy of that makes a whoosh sound or not
21:57:47 <elliott> I'm going to create a talk page for that
21:57:56 <elliott> tomorrow is the fucking rapture
21:58:29 <elliott> ais523: no thanks for reverting that talk page vandalism
21:58:36 <elliott> ais523: I thought I got a new message but my talk page was unchanged :(
21:58:44 <oerjan> bah the japanese already dampened the occasion, why do you think that big earthquake there happened
21:58:55 <ais523> elliott: unfortuntately I can't turn the new-message bar off
21:59:06 <elliott> ais523: all I wanted was a message... even one from a spambot :'(
21:59:07 <ais523> even though I didn't trigger it with my rollback, the original edit did trigger it
21:59:18 <oerjan> clearly they were relieving earth's crust of stress to prevent the rapture from happening
21:59:30 <elliott> oerjan: why did you remove the link to the Givenchy Outlet site dedicated to helping people edit the esolang wiki? :D
21:59:49 <pikhq> Unfortunately, the full-screen mode of Steam seems buggy as *hell*.
22:00:00 <elliott> # (diff) (hist) . . Fish; 21:10 . . (-7,644) . . Harpyon (Talk | contribs) (Moved documentation to GitHub repository.)
22:00:07 <elliott> someone give me one reason not to revert this...
22:00:17 <elliott> a wiki is meant to have information on it, not to outsource it to another (commercial) website
22:00:49 <oerjan> elliott: if you complain enough to add it back i _may_ actually check whether it _is_ spam before undoing it. maybe.
22:01:42 <ais523> oerjan: I check to see if things are spam before reverting them
22:02:03 <ais523> Phantom_Hoover: all the stuff on Esolang is public domain, so it doesn't technically need one
22:03:06 <ais523> elliott: feel free to revert it
22:03:14 <ais523> although you'll have to do so by hand, because MediaWiki can't figure out how
22:03:31 <elliott> ais523: I've left a note on their talk page instead
22:03:43 <elliott> since it'd be nice if they updated it too
22:03:59 <zzo38> Tomorrow I will be in Victoria. But if there is Rapture, probably it includes Victoria, too.
22:04:46 <elliott> Victoria: A Land Untouched by Rapture
22:04:48 -!- variable has joined.
22:05:25 <oerjan> zzo38: well what you need to be careful about is to be in at least one timezone when it's 6 o'clock there (i don't remember if it's AM or PM)
22:05:59 <oerjan> some people are going to be _so_ pissed when they realize they missed the rapture because of a plane flight
22:06:04 <pikhq> Okay, so Source engine games seem to not work under WINE any more. Though Steam works well.
22:06:20 <elliott> oerjan: you realise the rapture doesn't /end/ after six pm
22:06:22 <pikhq> Indeed, it segfaulted.
22:06:49 <CakeProphet> Do you guys have a convincing argument for why array indices conventionally begin at 0? I'm pretty sure it's a good idea, but I have no idea how to explain why to someone else when they ask about it.
22:07:07 <oerjan> elliott: um the rapture is the precise even when people are lifted up to heaven, no? what comes after is the apocalypse, or something.
22:07:30 <oerjan> which is what i was quibbling about the wiki page for, incidentally
22:07:32 <elliott> oerjan: but hypothetically, assume a Christian spontaneously materialised during the apocalypse
22:07:41 <elliott> oerjan: what's to say they wouldn't immediately get raptured?
22:07:47 <ais523> CakeProphet: it mostly just makes formulas involving them simpler, you find you have to do a lot of adjustment by 1 with 1-based arrays
22:07:52 <elliott> by the same token, a plane flight wouldn't stop you getting rapture'd
22:07:56 <elliott> as soon as you went past six pm somewhere
22:08:05 <ais523> `addquote <elliott> oerjan: but hypothetically, assume a Christian spontaneously materialised during the apocalypse
22:08:06 <HackEgo> 427) <elliott> oerjan: but hypothetically, assume a Christian spontaneously materialised during the apocalypse
22:08:31 <ais523> elliott: it just seems a really absurd thing to say, especially in context
22:09:06 -!- elliott has quit (Remote host closed the connection).
22:09:14 <oerjan> elliott: that is as hypothetical as that thought experiment about when the earth would stop following its orbit if the sun suddenly disappeared (hint: general relativity requires energy/momentum to be locally conserved)
22:10:09 -!- elliott_ has joined.
22:10:24 <Phantom_Hoover> <CakeProphet> Do you guys have a convincing argument for why array indices conventionally begin at 0? I'm pretty sure it's a good idea, but I have no idea how to explain why to someone else when they ask about it.
22:13:12 -!- ais523 has quit (Remote host closed the connection).
22:13:28 -!- variable has quit (Read error: Operation timed out).
22:17:07 -!- variable has joined.
22:17:16 <elliott_> Deewiant: Hey what was that slow self-interpreter?
22:19:09 <elliott_> But it depends on FIXP or one of those other nasty fingerprints I'm avoiding implementing I think
22:19:24 <Deewiant> http://iki.fi/deewiant/files/befunge/programs/slowdown.b98
22:20:30 <elliott_> Because I don't recall there being any nice fixed point things for Haskell that weren't based on decimal :)
22:20:34 <elliott_> Hmm, well, FIXP seems to be decimal too
22:20:41 <elliott_> But still, I don't know of any "nice" way to do it in Haskell
22:20:49 <zzo38> Phantom_Hoover: I believe you too, I think pointer arithmetic is one reason, however there are other good reasons too, actually
22:20:50 <Deewiant> FIXP is just divide by 10000 / multiply by 10000
22:21:00 <Deewiant> elliott_: I think it's logical, not binary, xor, too
22:21:28 <elliott_> that's... the worst waste of a letter i've ever seen
22:21:35 <lambdabot> Data.Fixed showFixed :: HasResolution a => Bool -> Fixed a -> String
22:21:47 <elliott_> oerjan: yah but no nice instances i do not think
22:22:18 <Deewiant> Why does it need to be floating
22:22:29 <elliott_> Deewiant: if I want to use the existing Haskell functions...
22:22:30 <Deewiant> It's probably implemented using int and casts to/from float in RC/Funge-98
22:22:50 <elliott_> I mean implementing acos by myself for Fixed doesn't sound useful
22:22:52 <elliott_> I mean implementing acos by myself for Fixed doesn't sound fun
22:23:29 <elliott_> Yeah but that involves casting to like Double or something.
22:23:32 <elliott_> And that's grossssssssssssssssssssssssssssss
22:23:59 <Deewiant> push . floor . (*10000) . sqrt . fromIntegral . pop
22:24:09 <elliott_> GROSSSSSSSSSSSSSSSSSSSSSSSSSSSS INACCURACYYYYYYYYYY
22:24:21 <Deewiant> push . floor . (*10000) . sqrt . (/10000) . fromIntegral . pop
22:24:35 <Deewiant> elliott_: Like said, the "reference implementation" probably uses (int) and (float)
22:24:59 <elliott_> Deewiant: The reference implementation is also written in C, what's your point
22:25:21 <elliott_> Deewiant: Grossssssssssssssssssssssssssssss
22:25:37 <elliott_> Hmm, is there an easy way to turn a maybe-failing pattern match into a Maybe
22:25:53 <elliott_> value:_ -> pushStringAs0gnirts value
22:26:06 <elliott_> value:_ <- magic (genericDrop n env)
22:26:12 <elliott_> Oh right, MaybeT's fail is Nothing
22:26:23 <elliott_> Deewiant: MaybeT is a monad (transformer) that I already use
22:26:44 <oerjan> MaybeT fails at Nothing
22:28:14 -!- TOGoS has quit (Quit: Leaving.).
22:29:17 <elliott_> That means that liftMaybe is totally pointless
22:29:23 <elliott_> "x <- liftMaybe y" == "Just x <- y"
22:29:45 <elliott_> Do let statements actually come out as <- return??
22:29:56 <elliott_> Or do they just implicitly "in" the rest of the block
22:33:46 <elliott_> oerjan knows, he wrote the Report
22:34:55 -!- zzo38 has quit (Remote host closed the connection).
22:37:10 <oerjan> they can be polymorphic, after all
22:37:48 <oerjan> so you need Just x <- y
22:37:56 <elliott_> oerjan: I need "Just x <- return y"
22:39:14 <oerjan> his monad isn't Maybe itself
22:39:32 <elliott_> Deewiant: So that when the pattern-match fails it (fail "...")s
22:39:42 <elliott_> Rather than "let Just x = y" which wouldn't do that
22:40:05 <elliott_> Not sure you understand how monads work ;D
22:40:25 <oerjan> > do Just x <- return Nothing; "Like this"
22:40:39 <Deewiant> oerjan: But the pattern-match succeeds there
22:40:43 <Deewiant> I'm wondering how it can possibly fail
22:40:47 <oerjan> Deewiant: no it doesn't
22:40:58 <oerjan> it failed, thus returning "" instead of "Like this"
22:41:49 <oerjan> > do Right x <- return (Left "hm..."); "Like this"
22:44:06 <oerjan> > do Right (Left x) <- Left "hm..."; return x
22:44:06 <lambdabot> Overlapping instances for GHC.Base.Monad
22:44:38 <elliott_> maybe I'll give return a nicer name :D
22:44:47 <oerjan> > do x <- Left "hm..."; return x
22:44:47 <lambdabot> Overlapping instances for GHC.Base.Monad
22:44:50 <elliott_> I'll come back to EVAR to restructure it later
22:45:03 * elliott_ cleans up the work-in-progress FING code.
22:45:16 <oerjan> someone should do something about lambdabot's import mess
22:45:20 <elliott_> what a wonderful language Haskell is
22:45:48 <elliott_> Just (_:xs) -> modifyFPInstructions (Map.insert ins xs)
22:45:55 <elliott_> now how to represent that without right-leaning indentation
22:47:06 <oerjan> bit awkward there, but is that really a case where you want to remove it?
22:47:23 <elliott_> how is this costing me almost a second :(
22:47:26 <oerjan> there are two Just branches after all
22:47:59 <elliott_> oerjan: and it's return (), not reflect
22:48:04 <oerjan> elliott_: if you put the two first cases last you just need one _ -> return ()
22:49:16 <elliott_> doesn't help anything but it doesn't matter :)
22:50:30 <oerjan> fromMaybe (return ()) $ do Just (_:_) <- Map.lookup ins m; return (modifyFPInstructions (Map.insert ins xs)
22:50:44 <elliott_> it's still one level of indentation, too
22:50:54 <oerjan> hm monad comprehensions are nicer when you have a return in the last item
22:51:28 <oerjan> ...you want to do a pattern match without a single indentation level?
22:51:30 <elliott_> http://sprunge.us/hLNa ;; it's ridiculous how much less this is indented with MaybeT
22:51:38 <elliott_> oerjan: no, I've been saying for quite a while that there's no actual problem with it
22:52:00 <oerjan> your "indeed" was ambiguous :P
22:53:09 -!- h[a]gb4rd has quit (Quit: h[a]gb4rd).
22:53:55 -!- invariable has joined.
22:54:10 -!- variable has quit (Quit: Daemon escaped from pentagram).
22:54:15 -!- invariable has changed nick to variable.
22:54:26 <oerjan> invariably not constant
22:55:48 <oerjan> i guess this is the day for daemons to escape
22:55:53 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:59:39 <oerjan> variable: it's such a raptuous day!
23:01:07 <elliott_> eighteen hours until we all perish
23:01:19 <elliott_> some earthquakes, buncha christians evaporate
23:03:27 <elliott_> Deewiant: Do you have a link to slowdown?
23:06:47 -!- variable has quit (Read error: Operation timed out).
23:07:53 -!- variable has joined.
23:10:06 <Vorpal> <elliott_> eighteen hours until we all perish <-- err, which one is it claiming that?
23:10:51 <Vorpal> elliott_, according to who?
23:10:55 <elliott_> Phantom_Hoover: It's not time yet.
23:11:00 <elliott_> Vorpal: according to the may twenty-first people.
23:11:14 <elliott_> Phantom_Hoover: 10:41 in Kingston which is on "NFT" and ostensibly in Australia.
23:11:18 <elliott_> So still about seven hours to go.
23:11:54 <Vorpal> did you mean: my twenty-first people.
23:12:41 <elliott_> 11:13 Saturday (NZST) - Time in Wellington, New Zealand
23:12:45 <elliott_> Phantom_Hoover: OK so about seven hours before we know.
23:13:07 <elliott_> Assuming they have Christians there, five hours.
23:13:15 <elliott_> Although whether the word would get out is arguable.
23:13:25 <Vorpal> elliott_, is it supposed to happen in local time everywhere
23:13:28 <elliott_> http://en.wikipedia.org/wiki/Kiritimati
23:13:57 <elliott_> Vorpal: Presumably to stop us crowding up the pearly gates.
23:14:08 <Vorpal> elliott_, is that solar time or based on timezone?
23:14:29 <elliott_> I guess if you try and legally change it so that six pm just doesn't exist, God smites you for being a smartarse
23:15:06 <Vorpal> elliott_, I can't find much from googling these guys
23:15:31 <Vorpal> oh wait I typed it out
23:15:38 <Vorpal> forgetting you did it due to
23:15:53 <Vorpal> may 21 gets more results
23:16:05 <elliott_> http://en.wikipedia.org/wiki/2011_end_times_prediction
23:16:16 -!- Patashu has joined.
23:16:47 <elliott_> Also see Google news "rapture", "May 21"
23:16:52 <elliott_> "Suicide prevention hotlines have been set up because experts fear despondent followers who are depressed that the expected event did not appear on May 21."
23:17:06 <elliott_> "I guess I'll have to FORCE my way in!"
23:17:15 <Vorpal> "Camping previously claimed that the world would end in September 1994."
23:17:24 <elliott_> "An interview with a group of church leaders noted that all of them have scheduled services as usual for Sunday, May 22."
23:17:32 <elliott_> "SERVICE CANCELLED DUE TO RAPTURE"
23:18:07 <Vorpal> what exactly are the effects of rapture?
23:18:25 <elliott_> "His followers claim that around 200 million people (approximately 3% of the world's population) will be raptured."
23:18:28 <elliott_> Hmm, well that's not all Christians
23:18:43 <elliott_> Vorpal: All the Christians evaporate, lots of earthquakes and shit, then Satan starts to rule the world
23:18:51 <elliott_> And it's peaceful for a while but then the world ends and there's all sort of apocalyptic wars and shit like that
23:19:12 <elliott_> Vorpal: http://upload.wikimedia.org/wikipedia/commons/1/16/Tribulation_views.svg
23:19:52 <Vorpal> "Christ is said to have hung on the cross on April 1, 33 AD. The time between April 1, 33 AD and April 1, 2011 is 1,978 years." <-- yes and how is that an argument...? XD
23:20:11 <Vorpal> oh wait, more number mess further down "explaining" it
23:20:49 <Vorpal> this logic is only marginally easier to follow than timecube
23:21:11 <elliott_> "- William Miller predicted Christ would return between March 21, 1843 and March 21, 1844, then revised his prediction, claiming to have miscalculated Scripture, to October 22, 1844. The realization that the predictions were incorrect resulted in a Great Disappointment."
23:21:15 <elliott_> Great Disappointment is the best name for anything ever.
23:21:19 <Vorpal> elliott_, also I think we should combine this with jurrasic park to get velicorapture
23:21:43 <Vorpal> elliott_, oh indeed, modulo typos
23:22:17 <Vorpal> elliott_, velocirapture then
23:22:51 <Vorpal> Phantom_Hoover, you mean velocirapture is the best or the bad "logic" is the best?
23:22:54 <elliott_> I came up with that pun in two thousand and seven :P
23:23:04 <elliott_> Patashu: aren't you the one who made that language
23:23:08 <Vorpal> elliott_, yeah but we all forgot it
23:23:16 <elliott_> Vorpal: hey i didn't _tell_ you guys
23:23:41 <elliott_> # (diff) (hist) . . N Rapture; 13:09 . . (+795) . . 122.106.155.219 (Talk) (started it up)
23:23:41 <elliott_> # (diff) (hist) . . List of ideas; 13:05 . . (+14) . . 122.106.155.219 (Talk) (adding Rapture)
23:24:40 -!- FireFly has quit (Quit: swatted to death).
23:26:12 -!- Phantom_Hoover has quit (Remote host closed the connection).
23:26:44 <elliott_> Deewiant: Hmm, I guess I ought to implement command-line arguments for slowdown :-)
23:27:43 <Vorpal> elliott_, what are you doing with slowdown?
23:28:11 <elliott_> Deewiant: Because it demands them.
23:30:07 <elliott_> # a series of sequences of characters (strings), each terminated by a null, the series terminated by an additional double null, containing the command-line arguments. (env)
23:30:08 <elliott_> This means any isolated argument can be a null string, but no two consecutive arguments may be null strings - a rather contrived scenario, null string arguments being rare in themselves.
23:30:08 <elliott_> The first string is the name of the Funge source program being run.
23:30:09 -!- pikhq_ has joined.
23:30:18 <elliott_> Bleh, this makes me want to expand my monad stack
23:30:26 <elliott_> The arguments never change do they
23:30:32 <elliott_> Unless there's some argument-changing fingerprint I guess
23:30:44 <elliott_> But yeah, I need to have them passed to the interpreter because getArgs would be stupid unreliable with option arguments and the like
23:31:09 <Vorpal> elliott_, this shows some humour (hopefully): The New York Police Department (NYPD) stated: "We don't plan any additional coverage for the end of the world. Indeed, if it happens, fewer officers will be required for streets that presumably will be empty."
23:31:10 -!- pikhq has quit (Ping timeout: 244 seconds).
23:31:33 <pikhq_> 5 more hours until the beginning of the end.
23:32:55 <Sgeo_> pikhq_, isn't it supposed to be at 6?
23:34:06 <pikhq_> Sgeo_: Yes, and it's... 4 hours and 26 minutes until it is 18:00 somewhere.
23:34:57 <elliott_> pikhq_: Actually, four and a half.
23:35:13 <elliott_> OTOH the news might not get out of there.
23:35:32 <pikhq_> elliott_: They're predicting a massive earthquake when the festivities start.
23:35:59 <pikhq_> At the very least, the tsunami hitting Hawaii would be noticable.
23:47:46 -!- zzo38 has joined.
23:48:14 -!- TeruFSX has quit (Ping timeout: 240 seconds).
23:48:31 <elliott_> Deewiant: Hmm, is there any "system state" in Funge apart from the arguments and environment variables? I guess that's ill-defined
23:49:07 -!- zzo38 has set topic: Discussion about how to be more insane without discarding your vision | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
23:49:15 <Deewiant> Of course you can access the whole filesystem with i/o
23:49:25 <elliott_> FungeState { fungeSpace :: FungeSpace
23:49:25 <elliott_> , globalFPState :: GlobalFPState }
23:49:31 <elliott_> will look really weird if I tag "also, arguments" on to it
23:49:36 <elliott_> So I want an excuse to make a SystemState record :D
23:50:39 <Deewiant> Can't think of anything else from the top of my head
23:51:17 <elliott_> Like we said, four and a half hours to go.
23:51:31 <Patashu> Time zones have foiled me for the last time
23:51:42 <Patashu> Since I am a supervillain, I will solve this problem by UNROLLING THE EARTH!!!
23:52:13 <Patashu> When every country has the same normal vector, there will BE no time zones!
23:54:05 <zzo38> Patashu: Can you do that?
23:54:29 <Sgeo_> zzo38, he's a supervillian. He can't, because some hero will stop him.
23:54:40 <zzo38> I don't think there is rapture. I think the text in the Bible is not necessarily literal! Also there may be mistakes due to whatever
23:55:01 <Sgeo_> zzo38, I'm pretty sure no one here actually thinks the Rapture is coming.
23:55:19 <zzo38> Sgeo_: You are probably correct.
23:55:50 <Patashu> Blowing up the earth is so cliche.
23:55:56 <Patashu> I want to leave it intact, but disrupted in a fundamental way!
23:59:11 <elliott_> BAD: opening 'mycorand.bf' with i failed
23:59:11 <elliott_> The file is part of Mycology and should exist.
23:59:11 <elliott_> If it does, perhaps the system isn't giving permission to read it.
23:59:19 <elliott_> Deewiant: I see Mycology doesn't support, ehm, out of tree builds :-0
00:00:11 <Deewiant> It does, it'll just clutter your cwd with temp files and fail the i/o tests
00:00:48 <elliott_> It doesn't "clutter", it removes them
00:03:03 <zzo38> Try harder at the Deadfish challenge of code golf!
00:03:04 -!- zzo38 has quit (Quit: zzo38).
00:03:50 <elliott_> OK, I guess I'll implement FIXP now
00:04:46 <elliott_> Deewiant: Hey, what FIXP instructions does slowdown use >:)
00:06:02 <Deewiant> Well, due to comments, don't use -o, but anyway :-P
00:06:17 <Deewiant> Randomization and exponentiation, maybe something else too
00:06:41 <elliott_> I'll just make them all error so I can see :P
00:07:58 <elliott_> Deewiant: Did FIXP used to be two fingerprints or something
00:08:07 <elliott_> It's like fixed-point shit, plus a bunch of random mostly-numerical things
00:08:45 <Patashu> it only exists in befunge?
00:08:53 <lambdabot> forall a b. (Num a, Integral b) => a -> b -> a
00:09:09 <Patashu> how does befunge even have a library
00:09:30 <elliott_> Deewiant: So, uh, by "rnd(n)"...
00:13:49 <elliott_> How slow does slowdown go again
00:14:01 <Deewiant> Slow enough that you'll notice it
00:14:02 <elliott_> $ ./shiro slowdown.b98 forks.b98
00:14:06 <elliott_> Deewiant what did you do........................
00:14:21 <Deewiant> A bug in your space handling? HA HA
00:14:34 <elliott_> Deewiant: Is this a common reaction to slowdown? :-P
00:14:49 <elliott_> Shiro/Interpreter.hs: else doIns val
00:14:49 <elliott_> Shiro/Interpreter.hs:doIns :: Value -> Shiro ()
00:14:49 <elliott_> Shiro/Interpreter.hs:doIns 32 = error "WTF? Executed 32."
00:14:49 <elliott_> Shiro/Interpreter.hs:doIns i | i < 32 || i > 126 = reflect
00:14:49 <elliott_> Shiro/Interpreter.hs:doIns i =
00:14:50 <elliott_> Shiro/Interpreter.hs: replicateM_ (fromIntegral n) (doIns =<< peek pos)
00:14:55 <Deewiant> It was a common reaction of CCBI's to various test things I've come up with
00:14:56 <elliott_> I call doIns literally twice, you must be doing something horrible :P
00:15:16 <elliott_> if isStringMode ip && val /= dquote
00:15:23 <elliott_> OK but I toNextIns before that and toNextIns should never land on a space.
00:15:23 <Deewiant> elliott_: kp such that the p is spaced over?
00:15:42 <elliott_> replicateM_ (fromIntegral n) (doIns =<< peek pos)
00:15:47 <elliott_> So doIns should just nop on a space basically
00:16:04 <elliott_> Hmm but I already /do/ nextInsPos
00:16:49 -!- pumpkin has quit (Quit: Computer has gone to sleep.).
00:18:53 <elliott_> Deewiant: What do you mean by "spaced over" anyway
00:19:52 <Patashu> Shiro is a haskell befunge interpreter?
00:20:15 <elliott_> Deewiant: Gets put on top of it... when?
00:20:26 <elliott_> Deewiant: I, uh, think k takes a single tick for m
00:20:43 <elliott_> Oh, you mean the thing inside the k spaces it ou
00:20:46 <elliott_> What should happen in that event?
00:20:49 <elliott_> Should it find the instruction after the spaces?
00:20:59 <Deewiant> The instruction is found only once
00:21:24 <elliott_> So basically, k saves the instruction itself
00:21:42 <elliott_> replicateM_ (fromIntegral n) (doIns ins)
00:22:12 <elliott_> Is it /meant/ to take like over ten seconds before I see any output from a simple program?
00:22:25 <Deewiant> Probably, given that Mycology takes over a second
00:22:52 <Deewiant> If your program is slow it shouldn't be that slow, I don't think
00:22:53 <elliott_> It /used/ to just take a second, but then I had to go and clean up the frickin' code
00:23:00 <elliott_> Deewiant: The program is forks.b9[eight]
00:23:04 <Deewiant> Well, on the order of seconds anyway :-P
00:23:08 <elliott_> Mycology seemed a bit mammoth to try
00:23:35 <elliott_> $ time ./shiro slowdown.b98 mycology/sanity.bf
00:23:46 <elliott_> This is a symptom of a slow fungespace, right?
00:23:52 <elliott_> Not necessarily slow wrapping?
00:23:56 <elliott_> Because sanity.bf doesn't even wrap.
00:24:23 <Deewiant> Slow wrapping would take minutes or hours, probably
00:24:36 <Deewiant> So be thankful it doesn't wrap if you have slow wrapping
00:24:53 <elliott_> Deewiant: I have fast wrapping, just not when you pull shit like this ;)
00:25:21 <Deewiant> For a program as small as that, it might be a symptom of a slow stack
00:25:38 <Patashu> I don't suppose haskell has a profiler?
00:26:10 <elliott_> Patashu: Haskell is a language, it has no profiler indeed
00:26:15 <elliott_> GHC is an implementation of Haskell, it has an excellent profiler
00:26:24 <elliott_> $ time ./shiro slowdown.b98 mycology/mycouser.b98
00:26:37 <Deewiant> elliott_: Slow space and/or stack
00:26:39 <elliott_> Also my fan is on full blast now
00:26:46 <elliott_> Deewiant: Well I do the global bounds thing still.
00:27:03 <elliott_> My stack is just a Haskell list but pushing and popping shouldn't be slow
00:27:22 <Deewiant> Check its max size if you can easily
00:28:17 <elliott_> I can print out the size every tick? :P
00:28:37 <Deewiant> If you want to slow it down a shit-tonne more, go ahead :-P
00:35:24 <Vorpal> <elliott_> It /used/ to just take a second, but then I had to go and clean up the frickin' code <-- fail at refactoring ;P
00:36:05 <Vorpal> elliott_, slow I guess?
00:36:24 <elliott_> just point eight s more on myco
00:36:47 <oerjan> Patashu: http://www.haskell.org/ghc/docs/latest/html/users_guide/profiling.html
00:36:58 <Vorpal> elliott_, more than the runtime of cfunge on it
00:37:04 <Vorpal> Deewiant, ouch that is huge
00:37:14 <Vorpal> elliott_, request rejected
00:37:34 <elliott_> correctness first unlike cfunge by default >:)
00:38:02 <Vorpal> elliott_, actually the exact bounds has been on by default for ages
00:38:20 <Vorpal> elliott_, besides it was due to a misunderstanding of the spec
00:38:24 <Vorpal> that it happened at all
00:38:53 <Vorpal> elliott_, and stop going "bluh bluh" when you realise you there is no way out of a discussion
00:38:57 <Vorpal> better to admit defeat :P
00:39:13 <Deewiant> elliott_: Found out what's up yet?
00:39:45 <elliott_> Deewiant: Nope, taking a break
00:42:38 -!- copumpkin has joined.
00:45:36 -!- Vorpal has quit (Read error: Operation timed out).
01:14:48 -!- augur has quit (Remote host closed the connection).
01:27:49 <pikhq_> Patashu: No languages have a profiler.
01:27:55 <pikhq_> Several language implementations do.
01:28:15 -!- augur has joined.
01:28:25 <pikhq_> 3.5 hours until the beginning of the end.
01:29:02 <pikhq_> Yes. 3.5 hours until it is 2011-05-21T18:00 in UTC+14.
01:29:11 <Patashu> Oh, that's where you live? Alright
01:29:20 <pikhq_> Actually, lemme redo that.
01:29:43 <Patashu> Hmm, if I convert before the great earthquake reaches my time zone will I be saved?
01:31:57 <pikhq_> 3.5 hours until 2011-05-21T18:00+14...
01:47:27 <pikhq_> Huh. Tar cannot store all possible UNIX files.
01:47:48 <pikhq_> It is impossible to archive a UNIX socket with tar.
01:48:06 <pikhq_> It is perfectly possible with cpio, though.
01:58:27 <pikhq_> (UNIX sockets are similar to FIFOs in that they actually have entries in the filesystem)
02:00:22 <Patashu> Why wouldn't it be able to?
02:00:49 <pikhq_> Because the archival format does not define a way to encode them.
02:01:15 <Patashu> Isn't the idea that it's just a file, though?
02:01:24 <pikhq_> It's a different type of file.
02:01:44 <Patashu> I know, but I thought the idea of UNIX was that everything could be treated with the same interface - as a file
02:01:48 <pikhq_> Just like device files, FIFOs, and directories are different types of files, so an archival format needs to explicitly support them.
02:02:44 <pikhq_> Yes, but you can't just open a random file *as* a FIFO, device file, or UNIX socket.
02:02:59 <pikhq_> You need to explicitly make them into those types of files.
02:03:34 <pikhq_> So an archival format needs to encode that information.
02:03:40 -!- GreaseMonkey has joined.
02:03:47 <pikhq_> Just like zip can't encode device files, tar can't encode UNIX sockets.
02:04:24 <GreaseMonkey> btw, 373-byte bog-slow BF interpreter in python: http://pubacc.wilcox-tech.com/~greaser/stuff/litebf3.py.txt
02:06:15 <GreaseMonkey> i'd also been working on an optimised interpreter though the best optimisation i had was the simplest (use a tree, use run lengths for >< and +-, and another program node for [])
02:06:49 <Patashu> you only need the exec because you're compressing it, right?
02:08:09 <pikhq_> Inexplicably, pax doesn't support UNIX sockets either.
02:08:10 <GreaseMonkey> ok i hope this routing loop won't kill my connection
02:08:40 -!- GreaseMonkey has quit (Quit: The Other Game).
02:08:46 -!- GreaseMonkey has joined.
02:09:28 <GreaseMonkey> i'd like to get a simple hub or switch for here though, i have a freedos desktop
02:09:37 <GreaseMonkey> (it's got the drivers it needs or something like that)
02:20:30 <GreaseMonkey> ok my optimised interpreter has been given a kick in the pants
02:22:33 -!- augur has quit (Ping timeout: 246 seconds).
02:22:55 -!- augur has joined.
02:30:11 <elliott_> <GreaseMonkey> btw, 373-byte bog-slow BF interpreter in python: http://pubacc.wilcox-tech.com/~greaser/stuff/litebf3.py.txt
02:30:19 <elliott_> psht, it's below one hundred and sixty chars in C :)
02:33:26 <elliott_> http://j.mearie.org/post/1181041789/brainfuck-interpreter-in-2-lines-of-c
02:33:30 <elliott_> s[99],*r=s,*d,c;main(a,b){char*v=1[d=b];for(;c=*v++%93;)for(b=c&2,b=c%7?a&&(c&17
02:33:30 <elliott_> ?c&1?(*r+=b-1):(r+=b-1):syscall(4-!b,b,r,1),0):v;b&&c|a**r;v=d)main(!c,&a);d=v;}
02:41:00 <GreaseMonkey> ok i've just attempted a sudoku solver in prolog
02:41:19 <GreaseMonkey> well, more of a brute forcer to be quite honest
02:44:43 <elliott_> An hour and twenty minutes until the start of the Rapture, dudes.
02:46:57 <elliott_> No, it's six pm local time everywhere.
02:47:00 <GreaseMonkey> anyhow, i think boardok_boxes() is a bit broke
02:47:51 <elliott_> daylight savings too I suppose
02:48:07 <elliott_> at least it's no more implausible than the rest of christianity :)
02:49:47 <GreaseMonkey> those guys do this big thing on one verse that at least at first says they're wrong
02:49:56 <GreaseMonkey> but they forgot to cover the "but my father only" bit
02:50:26 <elliott_> GreaseMonkey: I wouldn't exactly be surprised to find out that the Bible contradicts itself about that :P
02:50:32 <Patashu> you'd need a ridiculous sized sudoku for brute force to not be optimal
02:54:33 <GreaseMonkey> boardok(Board) :- boardok_boxes(Board), boardok_rows(Board), draw_board(Board), boardok_cols(Board), draw_board(Board), write('^ got one! ^\n').
02:56:00 <elliott_> Deewiant: Somehow mycouser is magically fast now.
02:59:00 <pikhq_> elliott_: It'd just be one more discrepancy, wouldn't it.
02:59:38 <pikhq_> GreaseMonkey: It's not even like they're citing an obscure interpretation of the Bible, though.
02:59:47 <pikhq_> GreaseMonkey: They're doing numerical games.
03:00:22 <GreaseMonkey> i think they're saying that jesus will arrive shaped like a thief
03:00:42 <GreaseMonkey> but i'm sure that what the verse is referring to is jesus' return being unexpected
03:01:29 <elliott_> certainty in interpreting the bible is, historically, not the kind of certainty that turns out to be justified
03:02:39 <pikhq_> As there is no evidence for the veracity of any of the *other* supernatural claims out there, it seems moot that there's any veracity in the supernatural claims of a handful of shepherds and fishermen 2000 years ago, that happened to be a succesful meme.
03:02:53 <pikhq_> Erm, lemme rephrase that.
03:03:26 <pikhq_> "It seems moot to discuss the interpretation of the supernatural claims of a handful of shepherds and fishermen 2000 years ago, that happened to be a succesful meme."
03:03:40 <pikhq_> There, that seems a bit more like what I meant.
03:04:16 -!- PoohBear_ has joined.
03:04:22 -!- PoohBear_ has left.
03:05:03 -!- augur has quit (Remote host closed the connection).
03:14:10 <GreaseMonkey> wow, i haven't found a single board yet that fulfils both boxes and rows
03:15:29 -!- augur has joined.
03:32:18 <Patashu> http://www.youtube.com/watch?v=p3bkmD-70e4
03:34:28 <elliott_> Half an hour until the Rapture begins.
03:39:46 -!- azaq23 has quit (Ping timeout: 260 seconds).
03:40:26 <CakeProphet> msnbc says the world is likely to end at 6 pm on the east coast actually.
03:41:03 <pikhq_> CakeProphet: As has been much discussed, it will be 2011-05-21T18:00 in each time zone.
03:41:17 <pikhq_> And it's 20 minutes until that time in UTC+14.
03:42:38 * GreaseMonkey np pink floyd - another brick in the wall pt 2 (live)
03:43:25 <CakeProphet> pikhq_: ah, I'm glad God is sensitive to our time zone standardizations.
03:43:35 <elliott_> <CakeProphet> msnbc says the world is likely to end at 6 pm on the east coast actually.
03:44:04 <CakeProphet> http://powerwall.msnbc.msn.com/business/your-guide-to-the-end-of-the-world-1688853.story
03:44:20 <elliott_> As far as more RELIABLE sources -- i.e. this channel -- go, it's twenty-two minutes until the island Kirtimati gets an unfortunate case of the raptures.
03:44:40 <elliott_> CakeProphet: that's The Daily Beast, not msnbc
03:44:46 <elliott_> msnbc just appear to syndicate it
03:45:24 <elliott_> Camping says only 200 million will go zoop into the sky.
03:45:33 <elliott_> So converting to Christianity is pretty much pointless.
03:45:54 <pikhq_> GreaseMonkey: Bullshit.
03:45:58 <elliott_> GreaseMonkey: Dude, this is religion.
03:46:10 <elliott_> CakeProphet: Even if nobody gets raptured, though, the horrible earthquake shit will still start.
03:46:19 <elliott_> So we should get reports of the aforementioned earthquake shit soon enough.
03:46:33 <GreaseMonkey> well if he can't back it from the bible he's not a very reliable prophet
03:46:50 <elliott_> GreaseMonkey: And being able to back it from the bible would make him any more reliable?
03:47:02 <elliott_> CakeProphet: Yes. That is the only solution.
03:47:13 <elliott_> GreaseMonkey: And if Camping is right, then yeah, Camping is reliable too.
03:47:13 <GreaseMonkey> but if he's claiming to be a christian, it needs to "line up"
03:47:24 <elliott_> GreaseMonkey: Well, he /has/ "backed" it.
03:47:36 <pikhq_> Oh, the Christians do pull shit out of their ass often.
03:47:38 <elliott_> It's the somethingth anniversary of Jesus kicking the bucket or something like that.
03:47:39 <GreaseMonkey> (hint: if you ever get a call from 91867... find an old computer that doesn't connect to the internet that isn't even x86)
03:48:13 <GreaseMonkey> apparently your computer is broken and they need to run a program to fix it
03:48:25 <GreaseMonkey> (if you have caller ID, that number might show up)
03:48:26 <elliott_> what kind of phone system is this
03:48:34 <elliott_> phone numbers are longer than that
03:48:38 <CakeProphet> Discordian numerology would suggest that the world ended last Thursday. I think Camping needs to rethink his numbers. People go get civil engineering degrees and suddenly they think they can be an apocalypse mathematician... hogwash!
03:48:56 <elliott_> two hours until your rapture, I hope you enjoy it
03:49:12 <HackEgo> 115) <Gregor> I don't know that I've ever heard apocalypi described in terms of depth ...
03:49:18 <CakeProphet> well if New Zeland only has 100 people per zip code...
03:49:38 <elliott_> Well you /are/ all uncivilised backwater sheepfuckers, so I'm hardly surprised.
03:50:56 <CakeProphet> elliott_: wouldn't it be great if all of the Christians vanished and then nothing bad happened? That's almost like atheist heaven.
03:51:26 <pikhq_> CakeProphet: It'd be better if all of the atheists vanished and were lifted into heaven.
03:51:29 <elliott_> even then, you'd have to put up with serious infrastructure loss.
03:51:39 <CakeProphet> elliott_: ...sure. If you want to take my joke literally, as is the case often on this channel...
03:51:41 <pikhq_> "You are rewarded with this, for not believing in things for which there are no evidence."
03:51:53 <pikhq_> Note, though, that many in this paradise would hate God still. But hey, atheist heaven.
03:52:00 <elliott_> pikhq_: you lifted that from a dresden codak comic :D
03:52:18 <pikhq_> elliott_: Yeah, yeah, I know.
03:52:28 <pikhq_> elliott_: Atheist heaven is a neat concept.
03:53:11 <pikhq_> And demonstrates just how little evidence we have for a "god", anyways. If there were a god, from the evidence we have, he really *could* have set up heaven for atheists.
03:53:13 <CakeProphet> elliott_: I see the infrastructure loss as an opportunity for benevolent non-Christian people to take charge and make the world a better place. Like corporations. Yeah, corporations.
03:53:58 <CakeProphet> elliott_: or, barring that, an excellent opportunity to test various anarchist theories.
03:54:04 <Patashu> IT is such an ungodly trade. It needs to be more rapture ready
03:54:07 <elliott_> what's anarchy got to do with this
03:54:08 <pikhq_> CakeProphet: Actually, all the Christians leaving would fuck shit up pretty quick...
03:54:12 <elliott_> besides, there are plenty of perfectly good/intelligent christian people. well i guess it depends how you define christian... if you mean raving fundamentalists, then it'd probably be no big loss, but they're relatively harmless anyway, so it's not really beneficial
03:54:34 <pikhq_> CakeProphet: Let me ask you, what would happen to the world economy if 85% of the US population disappeared?
03:54:37 <elliott_> I mean, you're talking about over a billion people here
03:54:49 <CakeProphet> elliott_: of course. I didn't mean to imply that. I was speaking of what would if society in mostly Christian Western nations collapsed as a result.
03:55:12 <elliott_> And it doesn't really make any sense as something you'd want; even if you're anti-Christianity, disliking Christian people for it is idiotic :)
03:55:41 <elliott_> CakeProphet: I don't think most anarchists view a total natural-disaster-esque (that's what it'd be like) event that plunges society into chaos to be the ideal kind of transition though :)
03:55:59 <elliott_> wtf, wikipedia says there's only about a million wiccans
03:56:05 <CakeProphet> well no. But idealism is always the flaw with those anarchists, you know...
03:56:13 <elliott_> i realise it's a tiny modern sect but that's still weird
03:57:03 <pikhq_> elliott_: Neopaganism tends to be a hard sell.
03:57:29 <elliott_> pikhq_: I guess it's just because wiccans tend to be loud about it ;-P
03:57:40 <pikhq_> Small sects tend to be.
03:58:08 <pikhq_> For instance, Raëlism.
03:58:48 <elliott_> pikhq_: hmm, I would say that Raëlism tends to attract people who are already crazy, though :)
03:58:59 <CakeProphet> elliott_: the number is probably suppressed or diminished in some way as part of a conspiracy theory. Yep.
03:59:01 <pikhq_> CakeProphet: Highly debatable.
03:59:21 <pikhq_> elliott_: Well, yeah, that is Raëlism for you.
03:59:22 <elliott_> Whereas neopaganism tends to (and I realise this is an incredibly biased observation) snap up teens before or after they become nihilists :P
03:59:28 <elliott_> GreaseMonkey: that sure is a weird smiley
03:59:38 <elliott_> CakeProphet: there's about three discordians
04:00:20 <elliott_> GreaseMonkey: no. three. don't give in to the deception.
04:00:47 <Patashu> It looks like his mouth is disintegrating into the air
04:00:52 <Patashu> At least on fixedsys excelsior
04:01:03 <CakeProphet> elliott_: I noticed a mild hangup in my network connection when rapture occured somewhere. :D
04:01:05 <pikhq_> GreaseMonkey: Let's just say that Discordianism is hard to define well enough to give a count of its members.
04:01:08 <elliott_> people /use/ fixedsys excelsior?
04:01:29 <elliott_> did kiritimati just get fucked
04:01:29 <Patashu> I like fixedsys and I like unicode
04:01:40 <elliott_> Patashu: stop liking fixedsys? :)
04:01:52 <elliott_> "Queen reveals she is a huge fan of The X Factor"
04:01:59 <elliott_> just clicked on google news to see about any earthquakes
04:02:02 <Patashu> Maybe I need to start a rumour that fixedsys is the lord's own fonttype
04:02:03 <elliott_> then suddenly lost faith in my monarch
04:02:05 <Patashu> don't think it'd be catchy
04:02:11 <elliott_> just kidding, i don't give a shit about the queen
04:02:19 <elliott_> http://news.google.co.uk/news/search?aq=f&pz=1&cf=all&ned=uk&hl=en&q=earthquake
04:02:23 <elliott_> OK I DON'T SEE ANY EARTHQUAKES
04:02:44 <GreaseMonkey> the lord's font at the moment is that particular sans font that shows up in the later NLTs and NIVs
04:02:52 <Patashu> but aren't there meant to be signs and wonders up until the rapture?
04:03:14 <elliott_> GreaseMonkey: Well, you win the award for "most questionable definition of The Lord's Font of the day" :P
04:03:21 <elliott_> Patashu: No, it's a stealth rapture.
04:03:31 <Patashu> Is that like a stealth fighter
04:03:47 <GreaseMonkey> elliott_: i was going by the typefaces that bibles tend to be printed in
04:04:05 <elliott_> GreaseMonkey: There are plenty more translations than NIV and NLT :P
04:04:09 <GreaseMonkey> there's a gideon's NKJV with a ridiculously bold-looking serifed one
04:04:15 <elliott_> Although I don't have any stats
04:04:31 <GreaseMonkey> i realised that the ESV doesn't seem to have the same font as those though
04:04:36 <Patashu> A meta-analysis of fonttypes used for bibles
04:04:47 <elliott_> Gideons... I wonder if they actually convert enough people to justify the ridiculous effort
04:04:53 <GreaseMonkey> not sure if you can even get the GNB anymore but that uses a serifed font
04:05:06 <pikhq_> I wonder if they've converted a single person.
04:05:13 <elliott_> I'm always really tempted to take the Gideon's Bible whenever I see it in a hotel room, but I'm not sure that's allowed?
04:05:17 <elliott_> I gather they usually do deals with the hotels these days
04:05:22 <elliott_> Rather than actually bothering to go in and put them there
04:05:29 <elliott_> If they were doing it manually it'd be legal of course
04:06:04 <CakeProphet> elliott_: is the moon made out of blood at your locale?
04:06:18 <pikhq_> Well, I'll be. There *was* an earthquake vaguely near 6PM, UTC+14.
04:06:21 <pikhq_> Wrong location, though.
04:06:37 <CakeProphet> should be a standard way to measure the occurance of a biblical standards-compliant rapture.
04:06:39 <pikhq_> http://www.heraldsun.com.au/news/breaking-news/strong-65-magnitude-earthquake-hits-off-coast-of-papua-new-guinea/story-e6frf7jx-1226056555864
04:06:42 <elliott_> And how close is Papua New Guinea?
04:06:56 <oerjan> ...rather close, globally speaking
04:07:07 <elliott_> Also, how close is it? Half an hour before?
04:07:27 <pikhq_> elliott_: Approx. half an hour before, yeah.
04:07:41 <elliott_> pikhq_: Startin' to believe a little :P
04:07:50 <elliott_> Man I SHOULD BE IN BED but I am busy talking about the rapture??
04:08:08 <pikhq_> Oh, sorry, the date is "May 16".
04:08:23 <elliott_> Gettin' my hopes up and all that
04:08:37 <elliott_> I like to think that in the ellipsis oerjan typed up there, he started beliving
04:09:42 <CakeProphet> so I guess this is kind of what 2012 will be like too.
04:09:49 <pikhq_> http://earthquake.usgs.gov/earthquakes/recenteqsww/
04:10:15 <CakeProphet> I'm hoping 2012 will be more like what happens in Shadowrun where magic reawakens in our world. Or was that 2013?
04:10:30 <CakeProphet> elliott_: some mild anticipation and boredom, yes.
04:10:36 <elliott_> pikhq_: This map is harshing my vibe. Is there just an ordered-by-time list?
04:10:54 <pikhq_> http://earthquake.usgs.gov/earthquakes/recenteqsww/Quakes/quakes_big.php
04:10:54 <CakeProphet> elliott_: you can do anything with Perl...
04:11:11 <elliott_> And not if you want to stay happy with yourself and not at all suicidal.
04:11:22 <elliott_> pikhq_: SOUTH SANDWICH ISLANDS best name
04:11:33 <elliott_> http://en.wikipedia.org/wiki/South_Georgia_and_the_South_Sandwich_Islands
04:13:12 <elliott_> Deewiant: WTF. P in FIXP (multiply by pi) doesn't take fixed point as argument.
04:14:02 <lambdabot> Control.Concurrent.QSem signalQSem :: QSem -> IO ()
04:14:02 <lambdabot> Control.Concurrent.QSemN signalQSemN :: QSemN -> Int -> IO ()
04:14:02 <lambdabot> Prelude significand :: RealFloat a => a -> a
04:15:11 <pikhq_> Y'know, if the claims were actually true, I think that all countries but Kiribati could postpone the end inevitably.
04:15:31 <elliott_> pikhq_: Like I said, if you try and tricky bullshit, God will just smite you.
04:15:32 <pikhq_> By having an emergency meeting of their legislatures and declaring their local time to be UTC-several trillion.
04:15:38 <CakeProphet> elliott_: Camping was a civil engineer. It's possible he got his math wrong.
04:15:45 <elliott_> Anyway Christians wouldn't /want/ to.
04:15:50 <elliott_> Isn't the rapture something they /want/?
04:16:47 <pikhq_> elliott_: It's been demonstrated that Christians are more likely to want large amounts of life support to put off death for a bit longer, y'know.
04:17:05 <pikhq_> (I don't have a citation handy, sadly)
04:17:11 <CakeProphet> elliott_: Christians? Afraid of death? Surely not.
04:17:40 <elliott_> pikhq_: It's the frickin' rapture.
04:17:45 <elliott_> God's practically BEGGING you to come home.
04:18:58 -!- TeruFSX has joined.
04:19:25 <pikhq_> elliott_: Would work just fine for non-Christian legislatures, though.
04:27:45 <Patashu> Don't civil engineers have to have a factor of safety of 2
04:27:49 <Patashu> So we need to wait twice as long as what he said
04:29:00 <pikhq_> Guess that means I get to sin more.
04:29:12 <pikhq_> After all, the only reason I'm an atheist is so I can sin without consequence.
04:29:47 <CakeProphet> pikhq_: Alternative reason: it's a "phase"
04:37:20 <CakeProphet> ..okay, I'm fairly certain the world isn't going to end now.
04:37:57 <CakeProphet> No. My dad is a Christian and he still walks on the earth.
04:39:18 <elliott_> are you even paying attention jesus
04:39:23 <pikhq_> CakeProphet: Well, it'd happen at 2011-05-21T18:00 local time.
04:39:41 <pikhq_> Unless you live in eastern Kiribati, it's not happened yet.
04:39:48 <CakeProphet> eh, I think if God were going to rapturize us he would do it all at once.
04:40:14 <pikhq_> The claim is that it's happening at 2011-05-21T18:00 in each time zone.
04:40:24 <pikhq_> Have you even been paying attention?
04:40:32 <Patashu> How do you even have earthquakes not along fault lines
04:40:56 <pikhq_> Patashu: Zombie IESVS.
04:41:38 <Patashu> Let's plank in preparation for the rapture
04:41:59 <elliott_> the world is very boring and nothing fun ever happens.
04:43:10 <elliott_> oerjan: how's the rapture in norway (they get arpture early because are dumb)
04:47:18 <CakeProphet> elliott_: you could invest your energies in formulating a proof by contradiction of Christianity as a whole. Or you could find a way to profit off of this. If it's already too late to do that, then you can start profiting on 2012.
04:48:12 <elliott_> Does it matter whether Christianity contradicts itself?
04:48:36 <elliott_> It is perfectly possible to make a belief system just as unlikely that does not contradict itself, after all, and I'd feel no compulsion to believe in that.
04:48:47 <elliott_> So I don't see why the opposite would apply (stop believing in something because it's contradictory).
04:49:29 <pikhq_> One should only believe that which there is evidence for.
04:49:42 <CakeProphet> makes sense to me. the inverse condition isn't going to be truth if the original is true, so... INVALID POINT.
04:49:49 <pikhq_> Whether or not things without evidence are consistent or not is completely and utterly irrelevant.
04:50:02 <CakeProphet> elliott_: inverse or converse, for that matter.
04:51:03 <elliott_> CakeProphet: Point is: believing in Christianity is a mistake not because it might contradict itself, but because it makes outrageous claims that don't pay their dues (they don't offer useful predictive power) and gives no justification for them.
04:51:49 <CakeProphet> Point is: ...I had no point to begin with.
04:52:13 <CakeProphet> profiting from 2012 seems like a much better use of time actually.
04:53:13 <CakeProphet> or somehow design a doomsday-themed esolang...
04:53:46 <elliott_> http://esolangs.org/wiki/Rapture
04:54:05 <elliott_> I wonder if Timwi is seriously not going to edit until Graue sysops him which is not going to happen ...
04:57:12 <elliott_> CakeProphet: its five five seven am
04:57:22 <elliott_> hey happy hour anneverseryu of pocalypse
04:57:28 <CakeProphet> I don't know let me think about it. -opens python-
04:57:33 <elliott_> GreaseMonkey: brace yourself for apoaalypse in hour
04:58:24 <elliott_> >>> random.choice(["sleep", "don't"])
04:59:01 <CakeProphet> should probably not go to sleep and report it immediately.
04:59:49 <elliott_> what if i go to TRY OUT going to sleep
04:59:55 <elliott_> i can just get up and stop going to sleep
05:00:02 <elliott_> i'll fall asleep before i realise it
05:00:09 <elliott_> whoops now i've told myself how it works it won't work
05:00:30 <CakeProphet> I find that taking melatonin helps with that.
05:00:56 <elliott_> yeah i got some thanks to utah apparently being collectively stupid enough to not realise that it's prescription only here?
05:01:03 <elliott_> or, i looked it up and it isn't and they're just planning to make it that
05:01:07 <elliott_> but in the meantime they're telling everyone it already is
05:01:15 <elliott_> because if you fool enough people that's pretty much the same thing as making it law but easier??
05:01:21 <elliott_> but im pretty much tired enough anyway
05:01:23 -!- GreaseMonkey has quit (Quit: The Other Game).
05:01:25 <elliott_> as is obvious from how stupid these words are
05:01:30 <elliott_> so i dont think ill have any problem falling unconscious
05:03:04 <elliott_> hey CakeProphet the obligation falls on you to remind me to implement the rest of fixp kthx bai
05:07:47 -!- elliott_ has quit (Ping timeout: 264 seconds).
05:09:08 <pikhq_> ... There's *germ theory denialists*‽
05:11:37 <Patashu> Oh yeah, forgot about microscopes
05:13:28 -!- oerjan has quit (Quit: Microscopes? More like deceptive little microdemons!).
05:17:58 <augur> HAPPY RAPTURE EVERYONE!
05:19:10 <Patashu> it isn't rapture in America, Home of Jesus yet
05:19:23 <augur> ofcourse but todays THE DAY
05:24:32 <Sgeo_> Chatham Islands, 6:09 PM
05:37:35 <myndzi> why is today the day anyway
05:37:39 <myndzi> what's this all about, i've been ignoring it
05:37:51 <myndzi> i thought it was supposed to be 2012 for the mayan thing, so this must be something else?
05:40:38 <coppro> myndzi: it's the rapture
05:42:24 <myndzi> that doesn't really help me any
05:42:28 <myndzi> who decided it's the rapture?
05:42:41 <coppro> it said so in the bible
05:42:52 <coppro> you better hope you get lifted to heaven
05:43:23 <myndzi> i'm definitely going to hell
05:48:15 <Sgeo_> I think you have to wait until October for that
06:03:13 -!- ais523 has joined.
06:07:11 <pikhq_> Why the pfargtle were there so many damned cops?
06:07:29 <pikhq_> I saw like 4. On the same block. At the same time. Just crusing.
06:08:24 -!- copumpkin has quit (Ping timeout: 248 seconds).
06:09:00 -!- copumpkin has joined.
06:09:03 -!- copumpkin has quit (Changing host).
06:09:04 -!- copumpkin has joined.
06:15:03 <ais523> hmm, it's passed 6pm in the UTC+12 timezone, now
06:15:06 <ais523> any evidence of rapture?
06:16:31 <pikhq_> Nor was there any in UTC+13 or UTC+14.
06:16:56 <pikhq_> It's also going to be 6pm in UTC+11:30 soon.
06:16:58 <ais523> do those timezones exist?
06:17:12 <ais523> I thought there were no timezones more than 12 from UTC
06:17:16 <ais523> apparently I was wrong
06:17:28 <pikhq_> Kiribati is UTC+12, UTC+13, and UTC+14.
06:18:13 <pikhq_> New Zealand is UTC+12 (UTC+13 daylight), UTC+12:45 (UTC+13:45 daylight), UTC-10, and UTC-11.
06:18:51 <pikhq_> Aaand that's the set of UTC+12+ timezoned countries.
06:19:54 <ais523> hmm, I like the way we're covering this more or less the same way Ilari covers IPv4 exhaustion
06:20:15 <pikhq_> Total, utter nerdiness? Yeah, it is pretty nice. :)
06:42:26 <pikhq_> Yay, UTC+11:30 rapture!
07:07:24 <ais523> somehow that seems a little unlikely
07:18:28 <pikhq_> ais523: The time *of* the rapture occured.
07:18:47 <pikhq_> The rapture itself, of course, did not, and is extraordinarily unlikely to ever occur.
07:22:07 <Patashu> 38 minutes until the rapture in my local time
07:25:15 <pikhq_> And UTC+10:30 rapture in 5 minutes.
07:25:37 <pikhq_> Fucking Australia, with its :30 time zones.
07:26:24 <Patashu> oops missed a few minutes. 34
07:38:27 <coppro> http://www.ticotimes.net/News/News-Briefs/Chaos-in-Costa-Rica-s-Congress_Sunday-May-01-2011
07:41:15 <Patashu> You know, I think the time zone confusion is a deliberate tactic
07:41:28 <Patashu> Instead of the rapturemania fissling out all at once, it does so over a longer period because no one's sure quite when it's meant to happen
08:01:13 <fizzie> Hmm; I see no new minutes announced. Must've been raptored.
08:20:03 -!- monqy has quit (Quit: hello).
08:25:26 -!- augur has quit (Ping timeout: 260 seconds).
08:33:59 -!- augur has joined.
08:38:48 * Sgeo_ is now in Act 5 Part 2
08:39:59 -!- sebbu2 has joined.
08:43:38 -!- sebbu has quit (Ping timeout: 276 seconds).
08:45:53 -!- Phantom_Hoover has joined.
08:54:35 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
08:57:24 <cheater897> hmm.. someone on freecycle is giving away an orgon radiator. should i get it?
09:00:41 -!- Slereah has quit (Ping timeout: 248 seconds).
09:04:07 -!- Slereah has joined.
09:09:21 <ais523> I don't even know what those things are
09:14:09 <Zwaarddijk> ais523: orgone is a "force" that psychologist Wilhelm Reich posited surrounds us and influences us
09:14:39 <ais523> why would anyone ever try to give away one of those, then?
09:17:32 <Zwaarddijk> I bet some people have inherited them and have no desire to use them for any reason wahtsoever
10:03:52 <cheater897> he's also giving away a foot rest, which i might pick up because it's practical.
10:21:50 <Lymia> What does it look like?
10:21:58 <Lymia> You could always purpose it for something practical.
10:22:20 -!- BeholdMyGlory has joined.
10:25:32 -!- FireFly has joined.
10:31:13 <cheater897> i hope it's small - then i can use it as a door stop or a futuristic paperweight.
11:01:51 -!- Lymia has quit (Quit: 1... 2... 3... HUGS! :D).
11:01:59 -!- Lymia has joined.
11:13:43 <augur> anyone interested in seeing my undoubtedly crap fast-as-hell intro to type theory with the simply typed and dependently typed lambda calculus?
11:17:06 -!- augur has quit (Remote host closed the connection).
11:17:34 <cheater897> Lymia, aww, that's so cute. i could eat you whole.
11:18:04 -!- sebbu has joined.
11:18:04 -!- sebbu has quit (Changing host).
11:18:04 -!- sebbu has joined.
11:21:34 -!- sebbu2 has quit (Ping timeout: 246 seconds).
11:30:38 -!- Vorpal has joined.
11:36:10 -!- augur has joined.
11:46:23 -!- sebbu2 has joined.
11:49:55 -!- sebbu has quit (Ping timeout: 260 seconds).
12:05:55 <Phantom_Hoover> [[When a new queen is available, the workers will kill the reigning queen by "balling" her, colloquially known as "cuddle death"; clustering tightly around her until she dies from overheating.]] — [[wp:Queen bee]]
12:06:23 * Lymia hugs Phantom_Hoover <#
12:06:48 * Phantom_Hoover menaces Lymia with a brick until she leaves him alone.
12:07:09 <Lymia> Who could not ilke them.
12:07:23 <Phantom_Hoover> DON'T TRY TO FOOL ME I KNOW AN ASSASSINATION ATTEMPT WHEN I SEE ONE
12:09:14 <Phantom_Hoover> Please please please let it brew Buckfast instead of honey.
12:25:35 <Phantom_Hoover> http://www.guardian.co.uk/books/2011/may/21/jon-ronson-how-to-spot-a-psychopath
12:25:42 <Phantom_Hoover> "I nodded and thought it probably wasn't a great idea for prison libraries to stock books about Ted Bundy."
12:55:43 * Phantom_Hoover wonders why his Facebook tab is taking steadily more memory by the second.
13:11:52 <Vorpal> Phantom_Hoover, ... you use facebook?
13:12:19 <Phantom_Hoover> Yes Vorpal have you considered that you are in fact not the only person in the world.
13:13:13 <Vorpal> Phantom_Hoover, what has that got to do with it
13:13:22 <Vorpal> Phantom_Hoover, I'm just surprised you use facebook
13:13:31 <Vorpal> I'm pretty sure elliott does not for example
13:13:45 <Vorpal> and I would have assumed you would be one to dislike facebook as well
13:13:49 <Phantom_Hoover> Yes this is because I made the mistake of having RL friends.
13:14:13 <Phantom_Hoover> And I do dislike it, I just use it for communication with them.
13:24:08 <Lymia> Phantom_Hoover, tell them to connect to #esoteric
13:26:25 <Phantom_Hoover> http://en.wikipedia.org/wiki/List_of_common_misconceptions
13:40:18 <Phantom_Hoover> Hmm, spider anatomy is more interesting than I thought.
13:42:10 -!- copumpkin has quit (Ping timeout: 260 seconds).
13:42:37 -!- copumpkin has joined.
13:42:47 <Phantom_Hoover> Dammit, now I want a shirt made of Nephila silk, to go with my ring made of tantalum-180m.
13:43:00 <Phantom_Hoover> If I don't end up a billionaire I am going to go deeply unsatisfied.
13:49:44 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
13:51:32 <ais523> do you think there should be a list of uncommon misconceptions, to go alongside it?
13:52:09 <Phantom_Hoover> I would reference "Insect Nation" but it's a song so it doesn't fit as well.
13:52:38 <Phantom_Hoover> "Glass is not a high-viscosity liquid at room temperature: it is an amorphous solid, although it does have some chemical properties normally associated with liquids."
13:53:19 <Phantom_Hoover> I particularly hate that one because it's one of those myths that has attained critical mass, so it's an uphill struggle convincing anyone it's wrong.
13:57:36 <cheater897> yeah, most people just don't understand the way glass flows (very, very slowly) all the time. i mean otherwise why would you have bubbles of air in glass, right?
14:02:27 <copumpkin> and the flowing of glass prevents these bubbles?
14:02:35 -!- aloril has quit (Ping timeout: 248 seconds).
14:03:13 -!- Phantom__Hoover has joined.
14:03:24 <Phantom__Hoover> Sorry about that, my father disconnected the router again.
14:03:32 <copumpkin> "he observation that old windows are sometimes found to be thicker at the bottom than at the top is often offered as supporting evidence for the view that glass flows over a timescale of centuries. The assumption being that the glass was once uniform, but has flowed to its new shape, which is a property of liquid.[37] However, this assumption is incorrect; glass does not flow. The reason for the observation is that in the past, when panes of g
14:03:32 <copumpkin> commonly made by glassblowers, the technique used was to spin molten glass so as to create a round, mostly flat and even plate (the crown glass process, described above). "
14:03:44 <Phantom__Hoover> Fortunately, he doesn't know that I fixed the neighbours' router earlier.
14:04:13 <Lymia> Phantom__Hoover, for what?
14:04:26 <Lymia> Threaten to ban his MAC address from the router if he does not cease doing so,
14:04:49 <Phantom__Hoover> Except the network card on the laptop blew so it's using a wired connection anyway.
14:05:02 <Lymia> Block wired connections?
14:05:05 <Lymia> Does your router let you do that?
14:05:31 -!- sebbu2 has quit (Read error: Connection reset by peer).
14:05:38 <Phantom__Hoover> No idea, and I can't really be bothered because then he'll probably just lock my laptop away for insubordination.
14:05:59 -!- sebbu has joined.
14:05:59 -!- sebbu has quit (Changing host).
14:05:59 -!- sebbu has joined.
14:06:04 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
14:06:31 <Lymia> You have any backdoors into his system?
14:07:41 <Phantom__Hoover> Well, I've removed the x flags from all the web browsers in the past, but I don't really feel like being vindictive this time because I'm not really affected.
14:08:01 <Lymia> Blackmail is always fun.
14:08:27 <Phantom__Hoover> "The Coriolis effect does not determine the direction that water rotates in a bathtub drain or a flushing toilet."
14:11:18 <Phantom__Hoover> http://en.wikipedia.org/wiki/File:Spider_internal_anatomy-en.svg
14:15:29 <fizzie> Most sense in a thing ever: http://p.zem.fi/8tyq
14:20:11 <Phantom__Hoover> Can we expect a rebirth of fungot, now with Homestuck mode?
14:20:28 <fizzie> I should do that output filtering thing, I guess.
14:20:41 <fizzie> Since that's why it's not online at the moment.
14:23:21 -!- aloril has joined.
14:26:56 -!- BeholdMyGlory has quit (Remote host closed the connection).
14:35:53 <Lymia> What about Homestuck?
14:46:49 -!- aloril has quit (Ping timeout: 250 seconds).
14:48:32 -!- aloril has joined.
14:52:41 -!- sebbu2 has joined.
14:52:41 -!- sebbu2 has quit (Changing host).
14:52:41 -!- sebbu2 has joined.
14:55:25 -!- sebbu has quit (Ping timeout: 240 seconds).
14:55:25 -!- sebbu2 has changed nick to sebbu.
14:59:24 -!- olsner_ has joined.
15:00:01 -!- Tritonio has joined.
15:02:39 -!- BeholdMyGlory has joined.
15:03:06 -!- olsner has quit (Remote host closed the connection).
15:03:07 -!- olsner_ has changed nick to olsner.
15:33:35 -!- Tritonio has quit (Quit: Leaving).
15:35:26 -!- myndzi has quit (Ping timeout: 258 seconds).
15:36:47 -!- myndzi has joined.
15:49:42 -!- olsner has quit (Quit: olsner).
15:50:04 -!- olsner has joined.
15:56:16 -!- olsner has quit (Quit: olsner).
16:23:59 -!- BeholdMyGlory has quit (Remote host closed the connection).
16:26:11 -!- sebbu2 has joined.
16:26:11 -!- sebbu2 has quit (Changing host).
16:26:11 -!- sebbu2 has joined.
16:29:52 -!- sebbu has quit (Ping timeout: 258 seconds).
16:41:11 <Phantom__Hoover> "(tell me why drag queens are OK and the Black and White Minstrels aren't, because I'm really curious)"
16:41:28 <Phantom__Hoover> I suppose this is what I get for reading an article linked to by the Register.
17:07:14 <ais523> I suppose the real reason is that the Minstrels made fun of other people, and drag queens typically make fun of themselves
17:13:11 -!- Burmudar has joined.
17:17:45 <pikhq_> Phantom__Hoover: Drag queens are not making a mockery of females.
17:23:47 -!- monqy has joined.
17:45:12 -!- TeruFSX has quit (Read error: Operation timed out).
17:46:20 -!- Phantom__Hoover has changed nick to Phantom_Hoover.
17:50:06 -!- sebbu has joined.
17:50:07 -!- sebbu has quit (Changing host).
17:50:07 -!- sebbu has joined.
17:53:07 -!- sebbu2 has quit (Ping timeout: 240 seconds).
17:59:42 -!- sebbu2 has joined.
17:59:42 -!- sebbu2 has quit (Changing host).
17:59:42 -!- sebbu2 has joined.
18:03:30 -!- sebbu has quit (Ping timeout: 260 seconds).
18:06:39 -!- ajf|offline has changed nick to ajf.
18:11:58 <Phantom_Hoover> Has a more obnoxious communication system been devised?
18:13:24 <Phantom_Hoover> "In March 2007, Greater Manchester Police seized two golliwogs from a shop after a complaint that the dolls were offensive." — WP
18:14:01 <Phantom_Hoover> I have this image now of the police kicking down the door and coming in with guns drawn for retrieval.
18:21:19 <ais523> Phantom_Hoover: that seems a little unlikely in the UK
18:23:43 * Phantom_Hoover tries to remember if ais523 lives in Manchester or Birmingham.
18:23:59 <ais523> in the UK, the police generally use axes for raids rather than guns
18:24:15 <ais523> easier to justify, and much harder to kill someone with, while being better against inanimate objects like doors
18:25:12 <ais523> I wonder how easy it is to shoot down a door with a typical gun?
18:26:02 <cheater897> ais523, very easy if you use a shotgun
18:26:02 -!- ais523 has quit (Read error: Connection reset by peer).
18:26:37 <cheater897> you basically need to shoot the area around the lock to disconnect it from the door frame.
18:32:27 <pikhq_> Yeah, that's pretty much the preferred way to break into a house these days.
18:32:53 <pikhq_> (presuming you don't mind your entry being obvious)
18:33:48 <pikhq_> Destroy your door? Hah.
18:41:55 <tswett> When I forget my keys, I think I'm going for a window.
18:42:07 -!- oerjan has joined.
18:46:08 -!- elliott has joined.
18:47:48 <elliott> 06:19:54: <ais523> hmm, I like the way we're covering this more or less the same way Ilari covers IPv4 exhaustion
18:48:24 <Lymia> Is heaven facing ipv6 exhaustion yet?
18:50:20 <oerjan> heaven went on ipv7 long ago
18:51:16 <oerjan> also, their global addresses cannot fit inside our universe
18:51:45 <elliott> the pigeonhole principle worries me a bit
18:52:04 <elliott> because eventually names will get as long as what they're naming...
18:52:39 * oerjan feels disgustingly unraptured
18:53:15 <elliott> oerjan: >implying you're one of the two hundred million chosen Christians
18:53:22 <elliott> May 21, 2011 passed without this prediction coming true. [15]
18:53:55 <Lymia> His time zones thing really screwed him over.
18:54:07 <elliott> this is kind of disappointing
18:54:08 <Lymia> We get to say he was wrong 27 times in a row.
18:54:22 <Lymia> elliott, so. We are still living with bigots?
18:54:27 <elliott> like i wish there was some kind of minor earthquake
18:54:38 <elliott> massive earthquake somewhere in the totally unpopulated pacific
18:54:43 <elliott> just to dramatise it up a bit
18:54:49 <Lymia> elliott, then there would be a tsunami.
18:54:51 <Lymia> You do NOT want that.
18:54:54 <Zwaarddijk> Lymia: if we assume rapture occured at astronomical noon, we'd get to say it infinitely many times!
18:54:56 <oerjan> elliott: well there almost certainly was a minor earthquake.
18:55:10 <elliott> Lymia: meh, didn't even feel a thing when japan had one ;D
18:55:26 <elliott> Zwaarddijk: Now now, space is discrete.
18:55:28 <Lymia> elliott, you bastard.
18:55:46 <oerjan> elliott: actually it would be eerie if they discovered there had been absolutely _no_ earthquakes anywhere today
18:56:20 * elliott tries to load familyradio.com, unsuccessfully
18:56:47 <elliott> http://upload.wikimedia.org/wikipedia/commons/e/e0/Judgment_Bus_New_Orleans_2011.jpg
18:56:49 <Lymia> [snip]:~/craftbook$ ping familyradio.com
18:56:49 <Lymia> PING familyradio.com (209.10.202.163) 56(84) bytes of data.
18:56:49 <Lymia> 64 bytes from familyradio.org (209.10.202.163): icmp_req=1 ttl=57 time=61.0 ms
18:56:49 <Lymia> 64 bytes from familyradio.org (209.10.202.163): icmp_req=2 ttl=57 time=90.9 ms
18:56:55 <elliott> Vorpal: the radio station of the guy who made the prediction
18:57:25 <elliott> [[Email-Id Awarded £750.000.00 Pounds in B.P.O Promo Send"
18:57:25 <elliott> Names...Tel...Country...]]
18:57:29 <elliott> it's the rapture of ME BEING RICH
18:57:53 <Lymia> elliott, somebody should buy one of those trucks
18:57:54 <elliott> I'm scared to report this as spam because it's such a tiny, contentless email that I'm afraid it'd cause legit email to be considered spam later :)
18:58:15 <Lymia> And drive it on May 22
18:58:20 <elliott> gmail's spam filters seem to be less effective than usual lately
18:58:32 <elliott> Lymia: hmm, what's the current Julian date?
18:59:07 <elliott> maybe gregorian is the wrong calendar
18:59:20 <Lymia> http://tycho.usno.navy.mil/cgi-bin/daterdnm.sh
18:59:39 <Vorpal> elliott, btw, what did the guy himself say about the failed prediction?
18:59:39 <elliott> "UTC has no time zones. It is the same world-wide."
18:59:45 <elliott> Vorpal: that's what I'm trying to find out
19:00:01 <Lymia> UTC has no time zones?
19:00:06 <Lymia> Don't you mean UTC /is/ a time zone?
19:00:45 <elliott> Lymia: ask the military :P
19:00:57 <Vorpal> in any case, that statement is utterly stupid
19:01:02 <Vorpal> anyway why did they have that page
19:01:17 <Vorpal> what is the MJD? Julian day?
19:01:30 <elliott> http://tycho.usno.navy.mil/
19:01:31 <Vorpal> why would the military care about that
19:01:46 <elliott> the military care about accurate timekeeping, obviously :)
19:02:13 <fizzie> And the "usno" part refers to U.S. Naval Observatory, they also care about such things presumably.
19:02:36 <elliott> "America's official timekeeper" apparently.
19:02:48 <fizzie> Oh no, the "How Many Clocks?" link from that front page gives an Internal Server Error.
19:02:52 <fizzie> They must have too many clocks to count.
19:03:42 <elliott> Too many clocks spoil the... time soup.
19:04:38 -!- wareya_ has joined.
19:07:46 -!- wareya has quit (Ping timeout: 246 seconds).
19:15:07 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
19:18:56 <elliott> Shiro/Fingerprints/FIXP.hs:23:63:
19:18:57 <elliott> Couldn't match expected type `(Value, Value) -> (Bool, Bool)'
19:18:57 <elliott> Expected type: (Value, Value) -> (Value, Value) -> (Bool, Bool)
19:18:57 <elliott> Actual type: (Value, Value) -> Bool
19:19:02 <lambdabot> forall (m :: * -> *) a. (Monad m) => m (m a) -> m a
19:19:13 <lambdabot> Couldn't match expected type `a1 -> a' against inferred type `Bool'
19:19:14 <lambdabot> In the first argument of `join', namely `(/= 0)'
19:19:57 <oerjan> <ais523> in the UK, the police generally use axes for raids rather than guns
19:20:07 <oerjan> so the UK police is axe crazy, check
19:20:26 <elliott> ?hoogle (a -> b) -> (a,a) -> (b,b)
19:20:26 <lambdabot> Data.Graph.Inductive.Query.Monad (><) :: (a -> b) -> (c -> d) -> (a, c) -> (b, d)
19:20:26 <lambdabot> Data.Graph.Inductive.Query.Monad mapSnd :: (a -> b) -> (c, a) -> (c, b)
19:20:26 <lambdabot> Data.Graph.Inductive.Query.Monad mapFst :: (a -> b) -> (a, c) -> (b, c)
19:20:38 <elliott> ?hoogle (a -> b) -> a -> a -> (b,b)
19:20:39 <lambdabot> Network.BufferType buf_span :: BufferOp a -> (Char -> Bool) -> a -> (a, a)
19:20:50 <elliott> ?hoogle (a -> b) -> (b -> b -> c) -> a -> a -> c
19:20:50 <lambdabot> Data.Function on :: (b -> b -> c) -> (a -> b) -> a -> a -> c
19:20:50 <lambdabot> Data.Data gmapQr :: Data a => (r' -> r -> r) -> r -> (d -> r') -> a -> r
19:20:50 <lambdabot> Data.Data gmapQl :: Data a => (r -> r' -> r) -> r -> (d -> r') -> a -> r
19:20:54 <lambdabot> forall (a :: * -> * -> *) b c. (Arrow a) => a b c -> a (b, b) (c, c)
19:21:13 <elliott> I'm basically trying to make this work:
19:21:16 <elliott> fpRun _ A = binary (curry (enumValue . uncurry (&&) . both (/= 0)))
19:22:48 <oerjan> @unpl curry (enumValue . uncurry (&&) . both (/= 0))
19:22:48 <lambdabot> curry (\ d -> enumValue (uncurry (&&) (both (\ a -> a /= 0) d)))
19:23:10 <oerjan> wtf @unpl doesn't handle *curry
19:23:24 <elliott> curry (\a b -> enumValue (a/=0 and b/=0))
19:23:29 <elliott> binary (\a b -> enumValue (a/=0 and b/=0))
19:24:41 <oerjan> :t \enumValue -> ((enumValue .) . (&&)) `on` (/=)
19:24:42 <lambdabot> Couldn't match expected type `Bool'
19:24:42 <lambdabot> In the second argument of `on', namely `(/=)'
19:24:54 -!- Phantom_Hoover has joined.
19:25:12 <oerjan> :t \enumValue -> ((enumValue .) . (&&)) `on` (/=0)
19:25:13 <lambdabot> forall c a. (Num a) => (Bool -> c) -> a -> a -> c
19:26:48 <oerjan> do you mean fromEnum for enumValue there?
19:29:57 <elliott> enumValue is a function I wrote
19:30:05 <elliott> enumValue :: (Enum a) => a -> Value
19:30:05 <elliott> enumValue = fromIntegral . fromEnum
19:30:20 <oerjan> anyway on (&&) is your both, i assume
19:31:40 <oerjan> which should make it even easier to use there
19:31:48 <lambdabot> forall a. (a -> Bool) -> a -> a -> Bool
19:32:38 <lambdabot> forall b a. (a -> b) -> a -> a -> (b, b)
19:32:43 <lambdabot> forall a. (Num a) => a -> a -> Bool
19:33:04 <elliott> [asterisk]exclamation mark]
19:33:21 <elliott> fpRun _ A = binary (enumValue . on (&&) (/= 0))
19:33:23 <lambdabot> Data.Function on :: (b -> b -> c) -> (a -> b) -> a -> a -> c
19:33:23 <lambdabot> Text.PrettyPrint.HughesPJ OneLineMode :: Mode
19:33:23 <lambdabot> Text.Parsec.Char oneOf :: Stream s m Char => [Char] -> ParsecT s u m Char
19:33:41 <elliott> Couldn't match expected type `Value -> Value'
19:33:41 <elliott> with actual type `GHC.Int.Int32'
19:33:41 <elliott> Expected type: b0 -> Value -> Value
19:33:41 <elliott> In the first argument of `(.)', namely `enumValue'
19:33:42 <elliott> In the first argument of `binary', namely
19:33:44 <elliott> `(enumValue . on (&&) (/= 0))'
19:33:53 <oerjan> elliott: um i did that above, you need more .
19:35:01 <oerjan> although you might not need all the parentheses
19:35:32 <oerjan> :t \enumValue -> (enumValue .) . (&&) `on` (/=0)
19:35:33 <lambdabot> forall c a. (Num a) => (Bool -> c) -> a -> a -> c
19:36:09 <oerjan> that works the same because of on's fundamental property (parametricity?)
19:37:02 <oerjan> elliott: also, binary $ ... >:)
19:37:39 <elliott> oerjan: you might want to use ?enumValue btw
19:52:58 <Sgeo_> It's official, I can't hear the letter "y"
19:53:35 <Sgeo_> Thus far, two names beginning with Y, when I only heard them and didn't have them spelled out, I mentally replaced the Y with something else
19:58:03 <elliott> oerjan: sometimes I feel like Haskell needs a better language for expressing point-free things
19:58:09 <elliott> ((f .) . g) is especially ugly
19:58:18 <elliott> I realise you can define :. or whatever, but...
19:58:24 <Sgeo_> Talking to a guy who just broke up with a girl about that I like that girl
19:59:05 <Phantom_Hoover> Sgeo_ would you please romancefail in private like polite people do.
20:02:16 <elliott> Deewiant: Any comment re: P in FIXP?
20:03:04 <oerjan> well if you cannot P, then you should FIX it.
20:03:43 <elliott> Deewiant: Well it's just that I'm fairly sure it's meant to take a multiplied integer but it doesn't.
20:04:01 <elliott> As specified it's like multiplying by three, but inaccurate.
20:06:02 -!- MigoMipo has joined.
20:06:14 <elliott> I guess I'll just implement it as specced and watch Mycology complain at me for it :)
20:08:03 -!- olsner has joined.
20:18:59 <elliott> oerjan: btw is "f ~(x,y) = ..." equivalent to "f xy = let x = fst xy; y = snd xy in ..."?
20:19:04 <elliott> i've never really looked at irrefutable patterns
20:19:21 -!- sebbu has joined.
20:19:21 -!- sebbu has quit (Changing host).
20:19:21 -!- sebbu has joined.
20:21:26 <olsner> nothing is ever "equivalent" in haskell, things are just different in ways more subtle than you can be arsed discerning between
20:22:00 <oerjan> olsner: i'm sorry but that's just wrong, as haskell is _defined_ by a lot of desugaring of such stuff
20:23:15 <olsner> if you get to the actual definitions without giving up first
20:23:17 <oerjan> iirc the definitions of pattern matching in case expressions is basic and other pattern matches are desugared to that
20:23:24 -!- sebbu2 has quit (Ping timeout: 264 seconds).
20:24:22 <oerjan> although that part ignores typing
20:25:09 <elliott> I wonder what the smallest practical "core" language is for a lazy functional language
20:25:33 <oerjan> well you could take a look at ghc core i guess
20:25:36 <elliott> I think CPS form + arbitrary tuple construction + arbitrary tuple casing might be it... if you have no types
20:25:49 <elliott> hmm, except you'd have trouble distinguishing two constructors with the same arity
20:25:55 <elliott> I guess the constructor id could be the first element of the tuple
20:25:55 <olsner> if you find out, do let me know - jonguilexiphonaugh wants a small lazy functional core language
20:27:13 <elliott> olsner: unsigned machine words + function calls with a single argument (just a variable name or tuple literals) plus N continuation lambdas taking one argument + tuple construction of arbitrary size + untyped case on tuples?
20:27:34 <elliott> hmm, plus some way of distinguishing integers from tuples in case
20:27:52 <elliott> anyway, anything that calls a function passed to it -- i.e. higher order -- gets desugared into a sort of continuation thing
20:28:11 <elliott> if b (\() -> ...) (\() -> ...)
20:28:14 <elliott> last two are continuations there
20:28:28 <elliott> except you don't need the () I guess
20:28:33 <elliott> maybe continuatinos can take zero args too
20:28:47 <oerjan> um in my mind continuations and laziness are pretty much opposite things - continuations essentially force monadic programming
20:28:58 <elliott> oerjan: well CPS is just equivalent to SSA.
20:29:06 <elliott> you'd still do all the thunks
20:29:22 <elliott> it'd just call the continuation immediately after deciding /which/ continuation
20:29:30 <elliott> OTOH, then, "if _|_ ..." would act "strict"
20:29:33 <elliott> because expressions involving it would diverge
20:29:51 <elliott> but you don't really want pure lambda calculus or anything
20:29:56 <elliott> because that's not very friendly to compilation :)
20:30:18 <oerjan> oh your idea is to get something _less_ than lambda calculus?
20:31:56 <elliott> oerjan: Ideally the thunks would become explicit too...
20:32:04 <elliott> but that'd just make it a strict language I suppose
20:32:37 <elliott> oerjan: But yeah, a more restricted form than the lambda-calculus-with-data is desirable IMHO, because the lambda calculus isn't very conducive to optimisation /or/ compilation into machine code.
20:32:53 <elliott> LC-with-data can be an intermediate step ofc
20:33:42 <elliott> olsner: what /is/ jogongiofdngodfngfg anyway?
20:33:47 <elliott> apart from the best name for anything ever
20:34:15 <oerjan> the official programming language of north korea, i assume
20:35:09 <olsner> indeed, Kim Jong Il Exi Pho Naugh
20:35:17 <oerjan> named after kim jonguilexiphonaugh il
20:35:20 <Vorpal> anyone here good at Dungeons and Dragons rules?
20:35:22 <elliott> but seriously, what is it :)
20:35:40 <olsner> elliott: I'm not going to tell until it has an implementation
20:35:55 <oerjan> Vorpal: you'll just have to wait for zzo38 :D
20:37:02 <olsner> just in case it never gets implemented :P
20:38:52 <elliott> olsner: just a SLIVER of info?
20:41:37 <olsner> elliott: I think I've pretty much described exactly what I was aiming for at some earlier time
20:41:43 <olsner> around the time the name got donated
20:41:49 <olsner> or slightly before then
20:57:51 -!- copumpkin has changed nick to Is.
20:57:56 <Sgeo_> Trolling the mall >.>
20:58:04 -!- Is has changed nick to ls.
20:58:23 -!- ls has changed nick to copumpkin.
20:58:42 <olsner> Sgeo_: trolleying the mall? :>
20:58:57 <Sgeo_> I just want to see if any May 21st believers are there
20:59:04 <Sgeo_> Probably not, but worth a shot
21:00:16 <oerjan> no they all mysteriously disappeared
21:18:53 -!- olsner has quit (Quit: olsner).
21:30:49 <Vorpal> <oerjan> no they all mysteriously disappeared <-- XD
21:37:37 -!- aloril has quit (Ping timeout: 250 seconds).
21:43:00 -!- aloril has joined.
22:01:23 -!- Burmudar has quit (Remote host closed the connection).
22:07:29 <augur> man what a crappy rapture
22:17:18 <Vorpal> elliott, found out the "official" explanation yet?
22:18:50 -!- augur has quit (Remote host closed the connection).
22:27:03 -!- Sgeo_ has quit (Ping timeout: 250 seconds).
22:38:42 -!- sebbu has quit (Read error: Connection reset by peer).
22:39:05 <elliott> 19:00:35: <ais523> you can't get infinite precision generalised floating point
22:39:05 <elliott> 19:00:40: <ais523> you can get infinite precision rationals
22:39:05 <elliott> 19:00:50: <ais523> and arbitrarily high precision floating point, that's what a bigfloat is
22:39:59 -!- sebbu has joined.
22:47:25 <elliott> 20:09:59: <AnMaster> ehird____, well yes. But this would be an interesting new file sharing idea. Just share offset in pi
22:47:26 <elliott> 20:10:10: <AnMaster> compression too
22:47:36 <elliott> Pictured: Vorpal doesn't understand information theory.
22:48:58 <oerjan> elliott: i just found myself defining your "both" function
22:49:14 <elliott> oerjan: i think i stole that name from Deewiant
22:49:18 <elliott> oerjan: what are you writing?
22:50:02 <oerjan> i'm modifying my look and say code so it can treat both a left and a right part of the sequence (either of which may be infinite)
22:50:20 <oerjan> and i wanted to apply an abbreviation function to both sides
22:50:32 <oerjan> (which are a tuple (left, right))
22:50:39 <elliott> Deewiant: Those RCS Windows fingerprints -- are they high-level or low-level bindings? I doubt you know, but :P
22:50:46 <elliott> If they're high-level I have this horrible urge to implement them portably.
22:51:17 <Deewiant> I think they're a one-to-one mapping to some X11 stuff but still fairly high-level
22:51:27 <oerjan> (i abbreviate "IIIIIVVIIVIV" to "5_2 1 ")
22:59:56 <elliott> Deewiant: I just mean in the sense of "they're not 'execute arbitrary winthirtytwo function', right?")
23:03:01 -!- elliott_ has joined.
23:03:30 -!- Patashu has joined.
23:04:36 -!- elliott has quit (Ping timeout: 240 seconds).
23:09:55 -!- MigoMipo has quit (Read error: Connection reset by peer).
23:10:54 -!- TeruFSX has joined.
23:13:35 -!- augur has joined.
23:45:54 <Patashu> let's watch a guy be wrong about the rapture http://www.livestream.com/familybibleministry
23:47:58 <Patashu> he's rambling at this point
23:48:03 <Patashu> 'he will not come until all of his people are saved'
23:48:11 <Patashu> 'this is the day of salvation, it's still here!'
23:48:23 <Patashu> he's the one that opens up the heart! he's the one that shuts the heart!
00:01:23 <Vorpal> <elliott> 20:09:59: <AnMaster> ehird____, well yes. But this would be an interesting new file sharing idea. Just share offset in pi
00:01:23 <Vorpal> <elliott> 20:10:02: <AnMaster> :P
00:01:23 <Vorpal> <elliott> 20:10:10: <AnMaster> compression too
00:01:23 <Vorpal> <elliott> Pictured: Vorpal doesn't understand information theory.
00:03:14 <Vorpal> Phantom_Hoover, possibly
00:03:57 <Vorpal> elliott_, anyway did you ever found the official reason
00:09:27 <Vorpal> Phantom_Hoover, for lack of rapture
00:10:53 <oerjan> but no need to worry, this one has a completely pronouncable name
00:11:08 <Vorpal> oerjan, what is the name
00:12:12 <Vorpal> "including the main east-west road. " <-- this (from bbc) says something about the size of iceland
00:13:06 <Phantom_Hoover> Although it's apparently under the Vatnajokull glacier, which is getting towards Ejafjallajokull levels.
00:13:23 <Vorpal> Phantom_Hoover, jökull*
00:14:07 <Vorpal> Phantom_Hoover, it makes a HUGE difference. Please transcribe it properly if you are not going to use the proper letters
00:14:42 <Vorpal> Phantom_Hoover, yes it does
00:15:02 <Vorpal> Phantom_Hoover, oh if I hadn't it would have been an ENORMOUS difference
00:15:02 <elliott_> lol Vorpal has alphabet insecurity
00:15:24 <Vorpal> Phantom_Hoover, not at all
00:15:35 -!- TeruFSX has quit (Remote host closed the connection).
00:15:44 <Vorpal> Phantom_Hoover, at least it is a large difference, possibly even LARGE
00:15:55 <elliott_> Vorpal: nobody gives a shit, stfu
00:16:57 <Phantom_Hoover> There is an even huger difference there: they are actually different words, but noöne actually *cares* if you confuse them because it's always clear from context.
00:20:47 <Vorpal> <Phantom_Hoover> Vorpal, it's the same as advice vs. advise.
00:20:54 <Vorpal> hm that is larger indeed
00:21:16 <Vorpal> Phantom_Hoover, though it can be larger than that in Nordic languages
00:21:28 -!- FireFly has quit (Quit: swatted to death).
00:21:52 <Vorpal> länstrafiken ~ county traffic (company that operate buses). lanstrafiken ~ lance traffic
00:22:47 <Vorpal> Phantom_Hoover, in the first case you spelled both the same way...
00:22:51 <Phantom_Hoover> Although the latter is a place name and UK place names are notorious for their unpronounceability.
00:23:25 <Vorpal> Phantom_Hoover, which is an issue, even a related one, but a slightly different one
00:23:31 <Vorpal> Phantom_Hoover, right you meant that one
00:23:55 <Vorpal> how do you pronounce Reading?
00:24:45 <Phantom_Hoover> Other amusing pronunciations are Worcester and Berkely.
00:25:32 <Vorpal> Phantom_Hoover, I always wondered about Worcester
00:26:34 <Vorpal> Phantom_Hoover, I presume these are due to changes in spelling / pronunciation over time?
00:27:03 <Phantom_Hoover> Yes. pikhq_ probably knows details since he's all about random linguistic stuff
00:28:18 <Phantom_Hoover> And then there's the transliterated Gaelic and Irish, like Siobhan (Sheevohn).
00:29:26 <Vorpal> Phantom_Hoover, where is that? Wales?
00:29:44 <Vorpal> well, I need to sleep, night
00:35:06 -!- elliott_ has set topic: let's put this into perspective. you put up with the puppet prostate because you love of wizards. -oscar wilde | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
00:35:55 <elliott_> That livestream sure is confusing.
00:36:13 <oerjan> that's wilde, always putting the finger on the relevant point
00:36:38 <elliott_> angelanicole: he has his reasons for thinking today it will happen but I still believe only GOD knows
00:37:06 <elliott_> JesusIsCumming: VOTE FOR HOPE! VOTE FOR A RAPTURE OF FISCAL RESPONSIBILITY! GINGRICH 2012!
00:39:58 -!- sebbu2 has joined.
00:40:39 <elliott_> "May 21 is not over all over the Earth. When the whole Earth gets to May 22, then we might see things differently."
00:43:07 -!- sebbu has quit (Ping timeout: 250 seconds).
00:45:15 <oerjan> comments can be deleted
00:48:49 <oerjan> no, but the person who can delete the imgur picture is presumably the person who posted the link
00:49:10 <oerjan> while any single one of the commenters could be a jerk and delete their comment
00:49:10 -!- TeruFSX has joined.
00:49:58 * oerjan now wonders if there is a DeletesAllHisComments novelty account
00:50:52 <oerjan> well not under that name
00:51:10 <variable> The world had ended, who is still alive?
00:52:03 <oerjan> according to that recent prophecy, the end would be five months later iirc
00:52:17 <variable> Phantom_Hoover: I know. Its just when all the people go to heaven and the world ends a few months later or something like that
00:53:30 <oerjan> imagine OCD hell. it's indistinguishable from heaven for a normal person, but every little detail is _slightly_ wrong
00:53:33 <elliott_> variable: well there were some earthquakes and two hundred million christians evaporated
00:53:46 <elliott_> oerjan: Insert joke-killing clarification about the nature of OCD here
00:54:14 <oerjan> elliott_: you just earned yourself a reservation there, kiddo
00:54:32 <Vorpal> elliott_, it should be CDO. Sorted alphabetically.
00:55:29 <oerjan> is it OCPD that is the light version
00:55:48 <Vorpal> oerjan, what does that stand for?
00:56:02 <elliott_> oerjan: I think OCPD and OCD are unrelated disorders that are merely "similar"
00:56:40 <oerjan> i vaguely recall there was a quip about the difference
00:57:46 <Phantom_Hoover> <Vorpal> elliott_, it should be CDO. Sorted alphabetically.
00:58:17 <Phantom_Hoover> Pictured here: Vorpal is only capable of copying and pasting done-to-death-jokes when he engages in any form of legitimate humour.
00:58:25 <elliott_> <Phantom_Hoover> Pictured here: Vorpal is only capable of copying and pasting done-to-death-jokes when he engages in any form of legitimate humour.
00:58:46 <Vorpal> Phantom_Hoover, wait a second. I thought of that one now. Though I guess someone else might have done it before
00:59:11 <elliott_> You... are actually bad enough at humour to reinvent that independently?
00:59:23 <elliott_> Are you a loaf of pre-sliced white bread.
00:59:41 <Vorpal> elliott_, well, variable laughed above. So maybe it is you and Phantom_Hoover who are the issue here
01:00:35 <Vorpal> elliott_, I mean, you two are the only people I know who seem to react that way to my humour.
01:00:54 <Vorpal> some else in this channel to some lesser degree
01:01:08 <oerjan> Vorpal: it's their OCPD, surely
01:02:13 <elliott_> Vorpal: have you considered that the only people who can stand you are the ones who have no sense of humour :)
01:02:34 <oerjan> also, i'm pretty sure that joke has been done before in this channel, while discussing the same subject
01:02:37 <Vorpal> elliott_, that is a possible hypothesis yes
01:02:54 <Vorpal> oerjan, possibly. I don't read everything in here.
01:03:22 <oerjan> Vorpal: it is also possible that you have, but have forgotten it. makes it _so_ much easier to reinvent things, i assume
01:03:30 <Vorpal> anyway I think the CDO one was funny. But now it has been overanalysed.
01:03:34 <elliott_> there's a name for that phenomenon
01:03:41 <elliott_> but i've forgotten it, so let's call it the Hird phenomenon
01:04:27 <oerjan> compulsif disordre obsessif
01:06:05 <Vorpal> elliott_, forgetting things? Amnesia?
01:06:34 <elliott_> hearing something, forgetting it, then thinking it's your own invention
01:06:49 <Vorpal> elliott_, no clue what that is
01:06:54 <oerjan> forgetfulness forgetfulness syndrome
01:07:11 <Vorpal> elliott_, lets invent a word for it!
01:07:23 <elliott_> <elliott_> but i've forgotten it, so let's call it the Hird phenomenon
01:08:08 <Vorpal> elliott_, I was trying to joke about that we would hit the right name if we tried to invent it
01:08:33 <oerjan> google corrects it to third phenomenon, it seems
01:09:39 <oerjan> "From The Culture of Matter to the Matter of Culture"
01:11:39 <oerjan> apparently it's a feminist text by myra hird
01:12:11 <Phantom_Hoover> <oerjan> "From The Culture of Matter to the Matter of Culture"
01:12:36 <elliott_> http://en.wikipedia.org/wiki/Matter_%28novel%29
01:13:06 <Phantom_Hoover> I FIND THE GROWTH OF THE SECONDARY PLOT AND DIVERSION FROM THE APPARENT PRIMARY ONE MASTERFUL
01:15:53 <elliott_> HEY DOES ANYONE WANT TO PLAY W:A I'M BORED
01:19:07 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
01:19:18 -!- Vorpal has quit (Read error: Operation timed out).
01:26:26 <CakeProphet> ...oh god, someone wants me to make a Facebook wall-post download bot..
01:26:51 <elliott_> i thought you said like spambot :D
01:27:16 <CakeProphet> they have a bunch of wall posts they want to download off of their Facebook page. I'm pretty sure that requires some Javascript execution, but I'm not certain.
01:27:42 <elliott_> use one of the browser automation toolkits?
01:27:54 <elliott_> or even, just a bookmarklet of some sort
01:28:03 <elliott_> that redirects to a data: URI of an HTML page with all the downloaded posts
01:28:16 <elliott_> apart from that it'd just be some jquery to select the elements
01:28:23 <elliott_> that's the path of least resistance, anyway
01:28:46 <CakeProphet> so... jquery, or browser automation, or bookmarklet... got it.
01:29:05 <CakeProphet> I was going to try rolling my own, but then I viewed page source for a Facebook page. The horror.
01:29:12 <elliott_> CakeProphet: jquery bookmarklet
01:29:15 <elliott_> that was a combined suggestion
01:29:32 <elliott_> easy to click a "more" link with jquery, easy to find all wall posts on the page with jquery
01:29:37 <elliott_> then it's just building an html result page and using a data: uri
01:29:45 <elliott_> and all login etc. is handled for you by the user
01:29:56 <CakeProphet> elliott_: ah, yes using Javascript to traverse the DOM is probably the best solution, aside from an automation plugin of some kind.
01:30:40 <CakeProphet> Excellent. Thank you for the suggestion. :)
01:31:03 <elliott_> yeah, you'll still need to click all the "more" links first though, since there's a limited number per page :)
01:31:11 -!- ajf has changed nick to ajf|offline.
01:31:55 <CakeProphet> elliott_: didn't you say jquery could handle that though?
01:32:05 <elliott_> well, jquery just makes the dom manipulation a bit less tedious
01:32:19 <elliott_> and clicking a link and waiting for more elements to appear is certainly dom manipulation :)
01:32:24 <CakeProphet> so as long as I can find the right element then I can "click" on it.
01:33:45 <CakeProphet> elliott_: so this would just be a standalone script that just loads a DOM and then uses jquery with it?
01:33:58 <elliott_> CakeProphet: No, just make it a bookmarklet (javascript: URI)
01:34:40 <elliott_> Well, yeah; minify the javascript first :P
01:34:55 <elliott_> CakeProphet: The data: URI result pages will be massive too.
01:34:57 <elliott_> But Firefox can cope with that.
01:35:01 <elliott_> If they use IE, kill yourself.
01:35:48 <elliott_> Just renames variables, does some minor code compression, things like that
01:36:05 -!- calamari has joined.
01:37:22 <CakeProphet> elliott_: okay, so what if they don't want a result page, but instead want all of the files in a directory? I could just save the result page right?
01:37:37 <elliott_> Well, is this for them to use directly, or do they just want the end result?
01:37:42 <CakeProphet> (I'm assuming they're not going to know how that works, so I'll probably have to do it for them)
01:37:52 <elliott_> Yeah, you could just Ctrl+S it and zip it up.
01:37:59 <elliott_> Well, no need for zipping, it'll be one file.
01:38:11 <elliott_> You might want to include the Facebook CSS and have their profile image there to make it look more like the "real thing".
01:38:19 <CakeProphet> elliott_: stupid question, actually. I know what I'll do.
01:38:36 <elliott_> CakeProphet: I take it you're not archiving comments and the like too?
01:38:40 <CakeProphet> elliott_: nah I don't think they care, but that would be super fancy.
01:39:00 <CakeProphet> elliott_: no from my understanding it's just particular things they've linked or uploaded or... something.
01:39:18 <elliott_> People who use Facebook are weird. :p
01:39:19 <CakeProphet> yeah I'll need to talk to the person in question.
01:40:09 <CakeProphet> they apparently want to make a book out of something.. so... maybe they have a bunch of "notes"? That would make things easier.
01:40:21 <elliott_> LIKE EVERYONE WHO USES FACEBOOK
01:40:38 <elliott_> CakeProphet: To be honest, you could even just click the more link a bunch of times manually and then Ctrl+S their Facebook page :-)
01:41:06 <CakeProphet> ...but God, I'd have to click that at least 100 times.
01:42:25 <elliott_> Oh my god just place the fucking girder jesus
01:48:23 -!- CakeProphet has quit (Ping timeout: 258 seconds).
02:07:00 -!- Sgeo has joined.
02:15:40 <oerjan> and a qwerty morning to you too
02:16:42 <elliott_> Sgeo is SO UNSURE about playing Worms
02:17:33 <oerjan> squirming around, is he?
02:19:12 <elliott_> 19:32:29: <fizzie> Apologies for the crudeness, but I just misread Deewiant's comment as "combinatorial explosion of testicles". That sounded painful.
02:19:58 <elliott_> Sgeo: I'm playing with an idiot and he types in all-caps and plays terribly halp.
02:20:10 <Sgeo> elliott_, and I'd be better/
02:20:48 <elliott_> Sgeo: well you don't type in all-caps.
02:22:36 <elliott_> oerjan: hmm, can /any/ CPS core language be fully lazy? I think not, since you'd need all functions to start with "k ...", which, in CPS form, would only apply to functions that return a literal directly
02:24:06 <Sgeo> Dangit I accidentally /cleared
02:24:35 <monqy> how do you accidentally /clear and why does it matter
02:25:30 <elliott_> monqy: you typo / then c then l then e then a then r then enter
02:26:53 <elliott_> oerjan: although a cps language does have several benefits as far as efficient machine code goes... :(
02:27:54 <oerjan> also, http://www.theonion.com/articles/nation-down-to-last-hundred-grownups,20491/
02:28:21 <elliott_> oerjan: you're just saying "knoweth not" to get me to shut up :D
02:28:36 <oerjan> elliott_ knoweth too much
02:30:24 <Sgeo> I take it "either/or" in English is XOR?
02:32:28 <Sgeo> Hmm, maybe I should use a snooper instead
02:32:32 <Sgeo> Of opening W:A
02:32:38 <variable> elliott_: btw. Ben Laurie of Google has an excellent explanation of what I found to be wrong with BitCoin
02:32:38 <Sgeo> Oh can' t host that way
02:33:01 <elliott_> Sgeo: You also can't play that way.
02:33:03 <variable> I know a while ago I mentioned disliking it but didn't have time to defend myself. BenL is doing a great job IMHO
02:33:14 <elliott_> Sgeo: I'm not sure what compelled you to consider that.
02:33:18 -!- SgeoN1 has joined.
02:33:47 <elliott_> variable: I haven't done anything with BitCoin for quite a while; maybe I'll check it out later
02:34:19 <variable> elliott_: I only mention it now because when I first brought it you you disliked the fact that I didn't defend my dislike
02:34:32 <variable> and I found someone who happens to be doing the job for me ;-)
02:35:10 <SgeoN1> I though we we're going to do hard tube trap
02:36:17 <Patashu> 'or, not both' is the shortest unambiguous XOR I can think of
02:36:24 -!- SgeoN1 has quit (Read error: Connection reset by peer).
02:36:43 -!- SgeoN1 has joined.
02:41:53 -!- calamari has quit (Quit: Leaving).
02:44:26 -!- SgeoN1 has quit (Read error: Connection reset by peer).
02:44:48 -!- SgeoN1 has joined.
02:47:58 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
02:51:24 -!- SgeoN1 has quit (Read error: Connection reset by peer).
02:51:38 -!- SgeoN1 has joined.
02:56:36 -!- SgeoN1 has quit (Read error: Connection reset by peer).
03:03:28 -!- SgeoN1 has joined.
03:05:31 -!- SgeoN1 has quit (Read error: Connection reset by peer).
03:05:43 -!- SgeoN1 has joined.
03:18:13 -!- sebbu has joined.
03:18:13 -!- sebbu has quit (Changing host).
03:18:13 -!- sebbu has joined.
03:18:42 -!- SgeoN1 has quit (Read error: Connection reset by peer).
03:21:17 -!- sebbu2 has quit (Ping timeout: 250 seconds).
03:23:38 -!- SgeoN1 has joined.
03:23:38 -!- SgeoN1 has quit (Read error: Connection reset by peer).
03:23:58 -!- SgeoN1 has joined.
03:24:26 -!- jix has quit (Quit: leaving).
03:51:32 -!- CakeProphet has joined.
03:51:32 -!- CakeProphet has quit (Changing host).
03:51:32 -!- CakeProphet has joined.
03:57:43 -!- ralc has joined.
04:03:40 -!- SgeoN1 has quit (Read error: Connection reset by peer).
04:04:11 -!- SgeoN1 has joined.
04:05:44 -!- SgeoN1 has quit (Read error: Connection reset by peer).
04:06:08 -!- SgeoN1 has joined.
04:08:04 -!- SgeoN1 has quit (Read error: Connection reset by peer).
04:11:16 -!- ralc has quit (Quit: Leaving).
04:13:08 <elliott_> oerjan: hey i need some more curryrelated help ;D
04:13:14 <elliott_> fixp :: (Double -> Double -> Double) -> Shiro ()
04:13:15 <elliott_> fixp f = binary (floor . (*10000) . f . (/10000) . fromIntegral)
04:13:17 <elliott_> /both/ values have to be divided
04:14:40 <oerjan> you know making things pointfree is much easier for me if i can start with a correct version which is _not_ pointfree
04:15:18 <oerjan> than from a broken pointfree version
04:15:47 <elliott_> (\a b -> floor (10000 * f ((fromIntegral a)/10000) (same shit for b)))))))))
04:18:11 <oerjan> :t ((floor . (*10000)) .) . (?f `on` ((/10000) . fromIntegral))
04:18:12 <lambdabot> forall b a a1 a2. (RealFrac a, Integral b, ?f::a1 -> a1 -> a, Fractional a1, Integral a2) => a2 -> a2 -> b
04:20:18 <lambdabot> The operator `Data.Function.on' [infixl 0] of a section
04:20:43 <oerjan> :t ((floor . (*10000)) .) . ?f `on` ((/10000) . fromIntegral)
04:20:43 <lambdabot> forall b a a1 a2. (RealFrac a, Integral b, ?f::a1 -> a1 -> a, Fractional a1, Integral a2) => a2 -> a2 -> b
04:20:50 -!- AerobicRobot has joined.
04:21:48 <oerjan> what, removing the parentheses?
04:24:03 -!- CakeProphet has quit (Ping timeout: 276 seconds).
04:24:19 -!- AerobicRobot has quit (Client Quit).
04:27:18 -!- SgeoN1 has joined.
04:28:07 <elliott_> oerjan: i guess that version is ok :P
04:28:32 <Sgeo> elliott_, should we quit?
04:29:07 <elliott_> oerjan: i actualyl only need an unary version
04:32:25 <oerjan> ...what's with this being cryptic lately :P
04:32:32 <elliott_> oerjan: um im just lazy and tired
04:32:50 <oerjan> using Control.Exception, i think
04:33:08 <elliott_> they're not IOExceptions, right?
04:34:08 <oerjan> do i look like i've ever used them...
04:34:10 -!- SgeoN1 has quit (Read error: Connection reset by peer).
04:34:28 -!- SgeoN1 has joined.
04:34:49 -!- SgeoN1 has quit (Client Quit).
04:38:29 <oerjan> you'd imagine ErrorCall would be related
04:39:20 <elliott_> oerjan: i think i'll bug you about core forms instead, before i go to bed
04:41:43 <elliott_> oerjan: like um core language things
04:43:13 <elliott_> (f x = g (ha x) (hb x)) --> f = \x|k. k (\|k. ha x (\hax. k ...........))
04:44:04 <oerjan> ...is that some strange hybrid of lambda and ski calculus
04:45:36 <elliott_> no, | was denoting a continuation argument
04:45:49 <elliott_> I was thinking that you could do CPS if you just returned /immediately/ with a thunk
04:45:57 <elliott_> and that thunk would then do one CPS-step when called, and return another thunk, etc.
04:46:04 <elliott_> but that actually just sounds stupid in retrospect.
04:48:05 <elliott_> hey oerjan should i go to// bed
04:48:50 <oerjan> ZZZZZZZZZZZZZZZZZZZZZZz what?
04:49:28 <elliott_> sometimes i feel like oerjan doesn't take these conversations seriously.
04:50:28 <elliott_> haven't you just woken up or something
04:50:39 <oerjan> no, i'm about to sleep soon
04:56:40 <elliott_> thats kind of a weird idea, maybe i should too?
04:59:16 <elliott_> On Saturday morning, Espinoza, 60, received a phone call from her father, Harold Camping, the 89-year-old Oakland preacher who has spent some $100 million — and countless hours on his radio and TV show — announcing May 21 as Judgment Day. "He just said, 'I'm a little bewildered that it didn't happen, but it's still May 21 [in the United States],'" Espinoza said, standing in the doorway of her Alameda home. "It's going to be May 21 from now until m
04:59:57 <elliott_> ?tell Vorpal http://www.latimes.com/news/local/la-me-rapture-20110522,0,5118540.story
05:01:11 <elliott_> oerjan: what time is it over there in new zealand dude??
05:01:14 <elliott_> arent you guys like upsdie down
05:35:43 <Sgeo> I was looking at a Homestruck video on YouTube (stupid I know)
05:35:57 <Sgeo> And just saw a major spoiler in the thumbnail of another video
05:55:00 -!- oerjan has quit (Quit: Good night).
05:55:57 -!- elliott_ has quit (Ping timeout: 260 seconds).
06:00:00 <Sgeo> Took 500 mg Tylenol.
06:09:20 <Sgeo> It's for me that I write that, not you
06:16:01 <Sgeo> The Salvation War sounds fun
06:19:23 <Sgeo> The reviews on TV Tropes aren't that great
06:33:33 -!- sebbu2 has joined.
06:36:35 -!- sebbu has quit (Ping timeout: 246 seconds).
07:07:02 -!- aloril has quit (Ping timeout: 250 seconds).
07:07:36 -!- aloril has joined.
07:20:38 <coppro> the apocaplyse isn't until october, remember?
07:20:55 <pikhq_> Oh, right, just the *rapture*.
07:21:11 <pikhq_> And *arguably* there's still 4 hours 40 minutes left for it to happen.
07:21:27 <pikhq_> (May 22, 2011 is 4 hours away in UTC-12)
07:21:49 <pikhq_> (no human habitations are in UTC-12)
07:22:04 <Sgeo> I plan on being asleep for that
07:22:31 <Sgeo> My Rapture-but-not-May-21st believing friend is still here
07:23:03 <pikhq_> What evidence does your friend have for the idea of the rapture?
07:23:13 <monqy> does anyone still believe in rapture yesterday
07:23:14 <pikhq_> Beyond citing the Bible, which is a load of bullshit.
07:23:34 <pikhq_> monqy: Harold Camping still has a few more hours until he can give up on it.
07:24:00 <pikhq_> monqy: May 21 has yet to end in a handful of time zones.
07:24:14 <Sgeo> Harold Camping has yet to be heard from
07:24:15 <monqy> rapture happened and I'm just dreaming
07:26:13 <Sgeo> HC doesn't get any money from me listening to the station, does he?
07:27:01 <monqy> are you listening to the station
07:27:40 <pikhq_> Sgeo: No, they run on donations.
07:27:52 <pikhq_> So long as you don't hand them money, you're good.
07:28:31 <Sgeo> I still want to unspoil myself from Homestuck
07:35:10 <pikhq_> https://secure.wikimedia.org/wikipedia/en/wiki/Wikipedia:Today%27s_featured_article/May_22,_2011 :D
07:53:19 <pikhq_> http://www.reddit.com/r/WTF/comments/hgsvd/the_creepiest_motherson_relationship_on_youtube/ I wanted to sleep. Now I doubt I will. Fuuuck.
07:54:59 -!- MigoMipo has joined.
07:55:11 <monqy> I'll never sleep again
07:56:41 <cheater897> freenode: 39846 channels and nothing on
07:56:59 <Sgeo> cheater897, they've all been taken in the Rapture. We're the only ones left.
07:58:38 * cheater897 goes to inhabit the prez suite at the local Hilton
07:59:51 <Sgeo> "Provides evidence from archaeology, [...], and even the Bible itself!" -- on how to know the Bible is true
08:01:25 <coppro> at least they're honest about it: http://failblog.files.wordpress.com/2011/04/epic-fail-photos-oddly-specific-keeping-pulling-that-wool.jpg
08:02:13 <pikhq_> Sgeo: Heck, not even one of the most memorable and publicised events in the Old Testament has any evidence for it...
08:02:20 <pikhq_> Sgeo: There is literally no evidence of the Exodus.
08:02:57 <pikhq_> To Christians, that probably doesn't seem like *that* huge of a deal (a bit upsetting, but not earth-shattering).
08:03:20 <Sgeo> I remember reading something suggesting that ancestors of the Jews were oppressors in Egypt, and were pushed out?
08:03:33 <Sgeo> Also, to Jews, Exodus not being real would be... u
08:03:34 <pikhq_> To Jews, that's like saying "Yeah, sorry, there's no evidence of the Holocaust. Seriously, we checked."
08:04:55 <pikhq_> (except for the veracity of the claim, of course. There's metric fucktons of evidence for the Holocaust.)
08:05:15 <Sgeo> My mom: "If there is no God, who parted the Red Sea?"
08:05:22 <Sgeo> (a long time ago)
08:06:27 <pikhq_> Well, since the Exodus didn't happen (near as we can tell, the Jewish people have pretty much been in Israel since they started leaving artifacts), clearly nobody did.
08:06:43 <Sgeo> Note: Dead people do not become perfect in every way after they die. My step-mom keeps using "Your mom would have wanted you to XYZ" to try to get me to XYZ
08:07:06 <Sgeo> I'm pretty sure she's wrong about what my mom would have wanted, but even if not, how does that make a difference to whether I agree with XYZ or not?
08:07:11 <pikhq_> That's some damned poor reasoning. Not to mention in *very poor taste*.
08:07:57 <pikhq_> Why not exhume your mom's body and use it as a puppet? About as tasteless and macabre, IMO.
08:08:58 <pikhq_> ... Oh, wait, some people have done similar things. Fuck. Fuck humanity so much.
08:09:27 <monqy> is necrophilia close enough
08:09:42 <pikhq_> I was thinking of the Cadaver Synod, actually.
08:10:13 <pikhq_> Where a pope put his predecessor on trial. By exhuming the body.
08:11:19 <monqy> http://en.wikipedia.org/wiki/List_of_posthumous_executions ooh
08:11:50 <pikhq_> Fuck, Homo sapiens. You scary.
08:11:51 -!- CakeProphet has joined.
08:12:35 <Sgeo> Hey, Homo sapiens can be awesome sometimes
08:12:59 <Sgeo> We eradicated two diseases.
08:13:16 <pikhq_> Yes, it has moments of genuine awesomeness and genuine horrificness.
08:16:30 <Sgeo> "If you think you may have been exposed to smallpox, contact your health care provider immediately."
08:17:07 <Sgeo> Ok, I pulled that out of context
08:17:16 <Sgeo> "If you think you may have been exposed to smallpox, contact your health care provider immediately. Because smallpox has been wiped out this would be very unlikely, unless you have worked with the virus in a laboratory or there has been an act of bioterrorism."
08:18:20 <pikhq_> I wouldn't contact my health care provider.
08:18:44 <pikhq_> And probably the local police dispatch.
08:19:31 <monqy> invite everyone you want to die to your home for a big party
08:24:56 <Sgeo> Ok, this is a beautiful melody
08:24:59 <Sgeo> And no lyrics so far
08:25:07 <Sgeo> As A Deer by Carol McClure
08:25:18 <Sgeo> (Note: Probably a Christian song.. I'd assume
08:25:42 <pikhq_> Almost certainly. An adaptation of the psalm, no doubt.
08:27:34 <Sgeo> Still no lyrics
08:27:56 <Sgeo> Didn't realize there was a psalm
08:31:38 -!- monqy has quit (Quit: hello).
08:37:17 * Sgeo slaps the SAB person
08:37:28 <Sgeo> Someone should really just write some code to make his life easier
08:37:36 <Sgeo> "Father, forgive them; for they know not what they do."
08:37:36 <Sgeo> According to Conservapedia's Conservative Bible Project, Jesus never said these words. They are a liberal coruption of the text. "This quotation is a favorite of liberals but should not appear in a conservative Bible." 23:34
08:37:40 <Sgeo> http://skepticsannotatedbible.com/interp/by_book.html
08:37:44 <Sgeo> That's in the wrong book
08:46:55 -!- augur has quit (Ping timeout: 248 seconds).
08:52:17 <Zwaarddijk> Sgeo: the skeptics annotated bible sometimes chalcs things up to be errors that aren't
08:52:41 -!- sebbu2 has quit (Read error: Connection reset by peer).
08:53:08 -!- sebbu has joined.
08:53:08 -!- sebbu has quit (Changing host).
08:53:08 -!- sebbu has joined.
08:54:39 -!- augur has joined.
08:59:45 -!- Vorpal has joined.
09:02:41 -!- sebbu2 has joined.
09:06:48 -!- sebbu has quit (Ping timeout: 276 seconds).
09:19:39 -!- ajf|offline has changed nick to ajf.
09:24:41 -!- ajf has changed nick to ajfafk.
09:29:06 -!- cheater897 has quit (Ping timeout: 276 seconds).
09:44:56 -!- olsner_ has joined.
09:49:31 -!- sebbu has joined.
09:49:31 -!- sebbu has quit (Changing host).
09:49:31 -!- sebbu has joined.
09:52:47 -!- sebbu2 has quit (Ping timeout: 260 seconds).
09:54:32 -!- Phantom_Hoover has joined.
10:13:13 -!- olsner_ has quit (Read error: Connection reset by peer).
10:29:27 -!- Patashu has joined.
10:29:49 -!- Tritonio has joined.
10:36:58 <Sgeo> Phantom_Hoover, feel free to slap me
10:37:17 * Phantom_Hoover slaps Sgeo more on principle than any feelings of malice.
10:37:17 <lambdabot> Phantom_Hoover: You have 4 new messages. '/msg lambdabot @messages' to read them.
10:55:32 <Phantom_Hoover> '“My heart medication!” slowly remembered Dwayne, but his lateness was a stark reality.'
10:56:49 <Phantom_Hoover> 'Mongoose-to-cobra, two serpentine forms, he was my rival; are we fighting in these holes, or are we really making love?'
11:02:39 <Phantom_Hoover> "The intruder attempted to break down the reinforced door with his axe, shouting phrases like “We will get our revenge!”, “Revenge!” and “Blood!”" — WP
11:03:29 -!- FireFly has joined.
11:06:52 <Phantom_Hoover> "Her cheeks were rosy and so was my love — bursting with fragrance and softness."
11:07:36 <Patashu> This is the purple prose award?
11:08:18 <Phantom_Hoover> Bulwer-Lytton is the one that rewards overtly purple prose, and is as such horrendously verbose and dreary to read.
11:08:47 <Phantom_Hoover> The Lyttle Lytton is restricted to 30 words, so the scope for purpleness is reduced vastly.
11:09:53 <Phantom_Hoover> Most of the ones that rely on language just have really weird sentence structure.
11:10:11 <Phantom_Hoover> There used to be a category for it, but I think he dropped it.
11:10:53 * Phantom_Hoover scorns at Sgeo "what did you do to merit me slapping you, BtW?"
11:11:13 <Phantom_Hoover> Patashu, also, that example was from an English textbook/
11:11:22 <Sgeo> Accidentally glimpse at a major Homestuck spoiler
11:11:39 <Patashu> From a textbook, not from a student?
11:36:40 -!- ralc has joined.
12:14:47 -!- ajfafk has changed nick to ajf.
12:20:05 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
12:42:56 -!- f0reest has joined.
12:43:00 -!- f0reest has quit (Client Quit).
13:06:18 -!- Tritonio_GR has joined.
13:09:37 -!- Tritonio has quit (Ping timeout: 264 seconds).
13:26:44 -!- Tritonio_GR has quit (Quit: Leaving).
14:00:25 -!- BeholdMyGlory has joined.
14:02:00 -!- oerjan has joined.
14:02:53 <Phantom_Hoover> Oh god my cat seems to have heard some birds outside the window.
14:04:07 <oerjan> <Sgeo> It's for me that I write that, not you
14:04:19 <oerjan> #esoteric: Sgeo's personal drug diary
14:10:13 <oerjan> <pikhq_> https://secure.wikimedia.org/wikipedia/en/wiki/Wikipedia:Today%27s_featured_article/May_22,_2011 :D
14:10:26 <oerjan> certainly looks like someone took a little jab, there
14:15:50 -!- TeruFSX has quit (Remote host closed the connection).
14:24:57 <oerjan> <Phantom_Hoover> Patashu, also, that example was from an English textbook/
14:25:27 <oerjan> wait are you performing a lyttle lytton analogue to poe's law/turing test here
14:32:28 <Vorpal> <oerjan> #esoteric: Sgeo's personal drug diary <-- I can't imagine Sgeo's father allowing him to use drugs ;P
14:32:28 <lambdabot> Vorpal: You have 1 new message. '/msg lambdabot @messages' to read it.
14:45:57 <oerjan> Vorpal: the word "drug" in english includes legal pharmaceuticals
14:47:25 <oerjan> of the kind that sgeo's father might very well allow, being afair a medical doctor
14:48:52 -!- olsner has joined.
14:59:20 -!- TeruFSX has joined.
15:06:27 <Phantom_Hoover> <oerjan> wait are you performing a lyttle lytton analogue to poe's law/turing test here
15:06:44 <Phantom_Hoover> No, the Found category is a long-established Lyttle Lytton tradition.
15:20:02 <Vorpal> <oerjan> Vorpal: the word "drug" in english includes legal pharmaceuticals <-- oh right
15:21:50 <olsner> Vorpal: aka "dödsknark"
15:24:55 -!- variable has quit (Quit: Daemon escaped from pentagram).
15:31:43 <Vorpal> olsner, not familiar with that expression
15:32:13 <olsner> Vorpal: alla sorters droger, knark och medicin är dödsknark
15:32:56 <Vorpal> olsner, jag umgås nog inte i sådana kretsar. :P
15:47:57 -!- ais523 has joined.
15:56:15 -!- oerjan has quit (Quit: leaving).
16:16:18 -!- elliott has joined.
16:16:29 <lambdabot> elliott: You have 3 new messages. '/msg lambdabot @messages' to read them.
16:16:57 <elliott> two of those are from days ago lol
16:20:05 -!- monqy has joined.
16:28:31 -!- olsner has quit (Read error: Operation timed out).
16:39:31 <ais523> hmm, amusing spambot name (that just emailed me): globalfreedomreliableloanfirm
16:44:11 -!- olsner has joined.
16:45:25 <ais523> I don't particularly want a loan right now, legit or not
16:52:26 -!- Sgeo_ has joined.
16:52:35 -!- Sgeo has quit (Ping timeout: 246 seconds).
16:54:32 -!- augur has quit (Remote host closed the connection).
17:00:48 -!- pikhq has joined.
17:01:41 -!- pikhq_ has quit (Ping timeout: 246 seconds).
17:05:12 -!- ralc has quit (Remote host closed the connection).
17:15:37 -!- augur has joined.
17:30:40 <elliott> "So far GNU Parallel has been focused on
17:30:40 <elliott> replacing a single for-loop. The Pakistan release introduces ways to
17:36:04 <pikhq> GNU Parallel is actually fairly nice.
17:41:41 <elliott> grr, there are two competing adblocks for chrome
17:42:31 -!- pingveno has quit (Ping timeout: 258 seconds).
17:43:08 <fizzie> What, are they doing the ash cloud thing *again*?
17:43:32 <elliott> pikhq: But that's just a renamed AdThwart, and the plain AdBlock is more popular.
17:43:38 <elliott> I mean, sure, brand name and all, but still.
17:44:18 -!- pingveno has joined.
17:44:40 <pikhq> Neither of them can block ads in flash videos, though.
17:44:55 <elliott> I thought that was recently made sort of possible.
17:45:17 <elliott> Mainly I'm pissed off at interstitials and the ads /before/ videos (the ones that pop up are annoying but not nearly as much).
17:45:27 <elliott> I guess the latter are a kind of interstitial too.
17:46:06 <Vorpal> anyone remembers how you minimise boolean expressions for NOR gates? I can only remember how you do it for NAND gates, not NOR gates
17:47:07 <Vorpal> <fizzie> What, are they doing the ash cloud thing *again*? <-- yeah it was such a hit last time!
17:47:43 <elliott> pikhq: Any actual arguments in favour of the Plus one? :-P
17:47:59 <pikhq> elliott: Eh, just use Firefox. :P
17:48:26 <elliott> pikhq: I just stopped using Firefox yet again because it starts to freeze up terribly when you have hundreds of tabs with JS and sometimes Flash running in them.
17:48:37 <fizzie> But I need to fly tomorrow and back next Saturday. :/ (Tomorrow doesn't seem to be a problem yet, but who knows about Sat.)
17:49:46 <Vorpal> <Vorpal> anyone remembers how you minimise boolean expressions for NOR gates? I can only remember how you do it for NAND gates, not NOR gates
17:49:50 <elliott> <Vorpal> <Vorpal> anyone remembers how you minimise boolean expressions for NOR gates? I can only remember how you do it for NAND gates, not NOR gates
17:50:21 <Vorpal> elliott, I mean, no one replied, I'll try to find that textbook I have on this sort of thing
17:50:44 <elliott> <Vorpal> elliott, I mean, no one replied, I'll try to find that textbook I have on this sort of thing
17:51:01 <fizzie> (There's http://www.icassp2011.com/ in El Praguel next week.)
17:51:21 <Vorpal> elliott, why are you echoing me?
17:51:26 <elliott> <Vorpal> elliott, why are you echoing me?
17:51:30 <elliott> (<Vorpal> <Vorpal> anyone remembers how you minimise boolean expressions for NOR gates? I can only remember how you do it for NAND gates, not NOR gates)
17:51:37 <elliott> <elliott> (<Vorpal> <Vorpal> anyone remembers how you minimise boolean expressions for NOR gates? I can only remember how you do it for NAND gates, not NOR gates)
17:51:50 <elliott> fizzie: Are you going to finally admit to them that speech recognition is useless?
17:51:57 <elliott> And you've wasted your life?
17:52:43 * pikhq wonders why Apple's blocks don't let you copy the block into arbitrary memory at all...
17:53:03 <pikhq> The library manages the heap, with no option for you to hook into it.
17:53:15 <pikhq> Making it impossible to do garbage-collected blocks.
17:54:24 <Vorpal> oh right, you want it on PS-form, then double invert. oh well
17:56:55 <Vorpal> anyone know a good tool for simplification of boolean expressions?
17:57:16 <Vorpal> I guess ghdl could perhaps be abused for it, if it does simplification
17:57:45 <Vorpal> elliott, yes but how do you get it to give you something on NOR-NOR form
17:58:18 <elliott> There's http://reference.wolfram.com/mathematica/ref/BooleanConvert.html
17:58:25 <elliott> And "X in Y form" invokes it in W|A, it seems.
17:58:43 <elliott> Hmm, there is also http://reference.wolfram.com/mathematica/ref/BooleanMinimize.html
17:58:49 <Vorpal> I have mathematica so..
17:59:02 <elliott> Not that it's a "hard" task. :p
17:59:14 <Vorpal> elliott, hard task to do by hand? no indeed
17:59:51 <Vorpal> elliott, but for 7 output signals and 4 input signals to each it is quite tedious. Especially if you want to try each in NOR-NOR and NAND-NAND to figure out which one is smallest
18:00:22 <Vorpal> (I'm planning out a 7-segment display in MC)
18:00:46 <elliott> I mean, writing a program to do it.
18:01:12 <Vorpal> elliott, I may need it anyway since I'd like to ignore all values above 9 for input. Easy to do when doing it by hand
18:01:53 <Vorpal> or I guess the third form of it does that
18:03:26 <Vorpal> ah for BooleanFunction there is " * Elements of inputs and outputs can also include any number of , representing "don't cares"."
18:04:14 <elliott> You mean... a built-in Mathematica function does EXACTLY what you want?
18:04:37 <Vorpal> elliott, was that sarcasm?
18:04:55 <Vorpal> elliott, but yes as far as I can tell from the docs it does exactly what I want
18:05:00 <Lymia> elliott, was that sarcasm?
18:05:25 <Lymia> elliott, but was that sarcasm?
18:05:42 <Lymia> elliott, but was that last line sarcasm?
18:05:53 <Lymia> Phantom_Hoover, I was waiting for that.
18:06:03 <Lymia> And what elliott said.
18:06:19 <Vorpal> <Phantom_Hoover> I N C E P T I O N <-- I don't get it. Is this some new meme?
18:06:23 <Vorpal> I seen it in a few places
18:06:24 <ais523> Vorpal: it's quite an old meme
18:06:39 <Vorpal> ais523, why has it cropped up a lot recently then hm
18:06:42 <elliott> It was lame on about its third use, tbh.
18:06:47 <olsner> Vorpal: wtf, how can you not know about that meme?
18:06:49 <elliott> Or else you just started reading reddit or something.
18:07:00 <Vorpal> so what is that meme about
18:07:28 <elliott> (The morale of the film is that recursion blows idiots' minds.)
18:08:24 -!- ais523 has quit (Remote host closed the connection).
18:15:18 <tswett> The United States' bicycle path network is the patchiest thing in existence.
18:16:00 <tswett> It's patchier than the discrete topological space of all ordinal numbers in the von Neumann universe of an inaccessible cardinal.
18:16:23 <elliott> It's patchier than Windows on the Tuesday after a critical exploit is revealed.
18:17:32 <pikhq> Its sidewalks aren't much better.
18:18:26 <tswett> Yeah, what's up with the lack of sidewalks along some roads?
18:19:10 <pikhq> Americans don't walk, so they don't bother designing to allow Americans to walk, so Americans don't walk.
18:19:35 <tswett> To be fair, there are some places where people are simply unlikely to walk.
18:20:21 <pikhq> The whole of American urban design is pedestrian-unfriendly.
18:21:09 <pikhq> In large part because of the very, very low population density created by it.
18:21:36 <tswett> I guess the US is pretty sparse.
18:22:23 <tswett> Really, guys, this running gag has gone on too long.
18:22:57 <tswett> Nice try, you... NATIONALITY LIAR.
18:23:46 <pikhq> tswett: Let me put it this way: if I were to start driving east, I'd reach the next major city in 9 hours.
18:24:02 <tswett> pikhq: from where you are right now?
18:24:04 <Vorpal> elliott, I'm afraid that BooleanMinimize didn't do quite what I wanted however
18:24:26 <pikhq> Driving *west*, it'd be all of 15 minutes.
18:24:33 <tswett> Are you... in the United States right now?
18:24:37 <Phantom_Hoover> pikhq, hey, that's only about twice the time it takes for me to move a total distance of...
18:25:15 <elliott> tswett: Do you have running water over there in Australia?
18:25:21 <Phantom_Hoover> OK Google maps why don't you let me know distances as the crow flies.
18:25:36 <tswett> elliott: I get my water from a well.
18:25:38 <elliott> Phantom_Hoover: because crows have no sense of direction.
18:25:42 <elliott> tswett: Your internet, too?
18:25:53 <tswett> It's really easy to access the groundwater, since it just falls out.
18:25:57 <elliott> Just drop an Ethernet cable down the well and hook it up to your computer.
18:26:05 <tswett> No, our Internet comes from cables.
18:26:20 <tswett> We have a bunch of cables in our basement or something. They make the Internet.
18:26:30 <pikhq> Phantom_Hoover: Wow, that would take me like 2 or 3 hours.
18:27:08 <pikhq> And I would not be able to leave the state.
18:27:56 <tswett> Looks like if you were to drive north from where I am now, you'd reach the next major city... never.
18:28:04 <Phantom_Hoover> 3 hours would take me to the west coast and a bit along it.
18:28:13 <tswett> Unless Sault Ste. Marie is a major city.
18:28:31 <pikhq> Driving north, I could get to the next major city in about an hour and a half...
18:28:54 <pikhq> And past that, I'd reach the north fucking pole before hitting a major city again.
18:29:09 * tswett looks at Sault Ste. Marie on a map and is amused.
18:29:48 <pikhq> (I wouldn't even be able to hit a major city in Canada, as what's north of me there is Saskatchewan, the Northwest Territories, and Nunavut)
18:29:56 <Vorpal> elliott, btw BooleanFunction didn't quite what I expected, the BooleanFunction[vars] form took the list of values starting from 111... rather than from 000...
18:30:56 <pikhq> Yes, you could drive north from Denver and not hit a major city ever.
18:31:06 <tswett> No, I'm definitely Finnish.
18:31:21 <elliott> Phantom_Hoover: If I became Australian would that make you more happy?
18:31:50 <Phantom_Hoover> Depending on how you define 'major', I could probably drive any direction other than west and never reach a major city.
18:31:52 <pikhq> That's 39° of driving.
18:32:00 <elliott> Vorpal: obviously I mean indigenous.
18:32:05 <pikhq> Phantom_Hoover: I'm allowing some latitude for directions, actually.
18:32:40 <pikhq> Though I suppose I could go approx. northwest or northeast and hit Chicago or Seattle.
18:32:46 <Phantom_Hoover> pikhq, does a population of 200,000 count as major for you?
18:33:15 <Vorpal> Phantom_Hoover, to me that would be rather large
18:33:16 <pikhq> 22 hours to Seattle, 16 to Chicago.
18:33:19 <elliott> cities are agents of flour and ice
18:34:03 <pikhq> Phantom_Hoover: That's not a terribly large city.
18:34:20 <pikhq> I suppose it could?
18:34:49 <pikhq> Vorpal: I'm in a city of 600,000 and I consider it small.
18:35:14 <Vorpal> pikhq, major city would be >100,000 to me
18:36:05 <Vorpal> pikhq, what do you count as major then
18:36:46 <pikhq> Oh, I suppose 500,000+ could barely count as "major". Though the ones people actually think of are going to be at least 1,000,000+.
18:36:57 <fizzie> Our largest city has a population of 588941, so... (Though seriously you can count the whole Helsinki/Espoo/Vantaa region as a one "place", which then barely manages to clear the million-people mark.)
18:37:13 <elliott> Scandinavia is sparsely-populated? REALLY???????
18:37:30 <Vorpal> pikhq, if you go for 1,000,000+... Sweden has exactly one major city
18:37:34 <pikhq> Also, I consider city size to be more a matter of metropolitan region size.
18:38:11 <pikhq> (because city boundaries tend to be completely and utterly arbitrary and have nothing to do with what the urban area is)
18:38:32 <elliott> Vorpal: Sounds right to me.
18:38:54 <pikhq> For instance, the city of Denver has 600,000, but the metro area has 2.5 million.
18:39:30 <Vorpal> pikhq, for the one million inhabitants city of Sweden (Stockholm) that would include suburbs.
18:39:41 <pikhq> And the city of New York has 8.1 million, but the metro area has 18.8 million.
18:39:45 <Vorpal> I guess that is what you mean with metro area
18:39:53 <fizzie> Yay, in that case we have a single major city too: http://en.wikipedia.org/wiki/Greater_Helsinki
18:41:07 <fizzie> http://en.wikipedia.org/wiki/Stockholm lists three population figures: "City" 851155, "Urban" 1252020 and "Metro" 2063945.
18:41:12 <Vorpal> ! (a \[Nor] b \[Nor] ! c \[Nor] d)
18:41:22 <Vorpal> that is a weird way to write it out when I copy it
18:41:28 <pikhq> fizzie: "Metro" counts the suburbs surrounding it.
18:41:38 <elliott> Vorpal: It's so it can reconstruct the original expression.
18:41:42 <elliott> (Mathematica expressions aren't plain text.)
18:41:45 <pikhq> "Urban" is just the single urban area.
18:42:00 <pikhq> "City" is the population within the legal notion of "the city of Stockholm".
18:42:05 <Vorpal> elliott, well, anyway, it is also a weird way to write the whole thing out. I would have written it as (a+b+c'+d)' or such
18:42:12 <Lymia> Is that !(a nor b nor !c nor d)?
18:42:42 <pikhq> The distinction is especially comical in the case of London.
18:42:43 <tswett> Lymia: what else would it be?
18:42:50 <elliott> Vorpal: Well it can't just use something that looks "nice" since it has to have global meaning.
18:42:54 <Vorpal> Lymia, I think it must be (a'+b+c'+d)'
18:42:54 <elliott> Isn't ' a string in Mathematica? Maybe not.
18:42:57 <tswett> You replaced "\[Nor]" with "nor" and removed spaces.
18:43:06 <Vorpal> elliott, well okay but apart from that
18:43:07 <pikhq> 11,500 people live in the City of London. 12 million live in the metro area.
18:43:28 <elliott> Vorpal: OK, so you're claiming that + is a better operator for nor than... the nor symbol?
18:43:38 <Lymia> tswett, I thought Mathematica's syntax was "Command[Args,ARgs]"
18:43:48 <Vorpal> elliott, I'm just more used to it being written like that in digital logic
18:44:04 <elliott> Lymia: It has binary operators too.
18:44:09 <Vorpal> ! a \[Nand] ! b \[Nand] c \[Nand] ! d
18:44:31 <pikhq> Damned City of London being only a square mile.
18:44:38 <Lymia> tswett, just making sure that those are indeed meant as infix operators.
18:45:03 <Vorpal> I think the nand one will be easier to realise in mc after all
18:46:04 <Lymia> I thought redstone torches were NOR gates.
18:46:18 <Vorpal> Lymia, inverters actually
18:46:20 <Lymia> The nor one would be easier to build, right?
18:46:27 <Lymia> Vorpal, try it with more than one input.
18:46:57 <Lymia> Where T is a torch attached to #
18:46:59 <Vorpal> Lymia, a single nor is easier to build by far yes, but I can't have current going back up the input signals here. And I have 4 input signals
18:47:45 <Vorpal> Lymia, I mean, an non-isolating OR gate is just redstone merging after all. If you want to isolate the inputs you need something more complex
18:47:54 <Vorpal> same sort of thing here
18:48:07 <pikhq> elliott: https://secure.wikimedia.org/wikipedia/en/wiki/File:LondonCity.svg
18:48:19 <elliott> what's actually inside the city of london :D
18:48:29 <elliott> oh, it's the dense-as-fuck centre
18:48:31 <elliott> http://upload.wikimedia.org/wikipedia/commons/7/7e/London_from_the_air.jpg
18:49:00 <pikhq> The area across the Thames is not part of the City.
18:49:04 <Lymia> Vorpal, http://pastebin.com/akw5i0Kn
18:49:05 <Lymia> Can't you do that?
18:49:28 <Lymia> There's likely a more compact version too.
18:49:28 <pikhq> https://secure.wikimedia.org/wikipedia/en/wiki/File:City_of_London_map_01.svg
18:49:35 <Vorpal> Lymia, possibly, but then I can't share a gate with another output
18:49:46 <elliott> pikhq: A picture would be nicer than a map.
18:49:46 <pikhq> Essentially a few *blocks* of the ultra-dense center.
18:49:48 <Vorpal> Lymia, gate sharing complicates things immensely
18:49:55 <Phantom_Hoover> <pikhq> Phantom_Hoover: That's not a terribly large city.
18:50:03 <Vorpal> Lymia, I'd like a mc backend for some vhdl or verilog software :D
18:50:05 <elliott> Vorpal: got anything like this in sweden? http://upload.wikimedia.org/wikipedia/commons/7/7e/London_from_the_air.jpg
18:50:14 <Phantom_Hoover> Then yes, I could drive literally any direction but west and I'd reach the sea or a border before a major city.
18:50:17 <Lymia> Vorpal, I would try to code that.
18:50:28 <Lymia> But I don't think I know nearly enough theory of how that stuff works.
18:50:34 <Lymia> Much less practice.
18:50:39 <Vorpal> elliott, no not really, central Stockholm is more picturesque
18:50:44 <tswett> I can drive any direction but toward-a-major-city and I'll reach the sea or a border before a major city.
18:50:58 <Lymia> Phantom_Hoover, how long will THAT take?
18:51:17 <Vorpal> <tswett> I can drive any direction but toward-a-major-city and I'll reach the sea or a border before a major city. <-- hah
18:51:24 <Phantom_Hoover> Lymia, I'm thinking along the lines of reduce everything to NANDs and stick them all into MC.
18:51:35 <Vorpal> Phantom_Hoover, that might not be minimal
18:51:39 <pikhq> elliott: *Basically*, it's the area enclosed within the historical London Wall.
18:51:40 <elliott> Vorpal: "wtf at spelling"?
18:51:42 <Lymia> Arn't redstone torches NOR gates natrually?
18:52:01 <Lymia> Wouldn't it be better to reduce to that?
18:52:09 <Vorpal> Phantom_Hoover, then there is gate sharing and what not
18:52:30 <Phantom_Hoover> Vorpal, "brute force" does not exactly carry an air of minimalism.
18:52:55 <Vorpal> Phantom_Hoover, iirc real software for FPGAs take such a long time to syntesize because they try so many different combinations. I don't think it is brute force as such, but somewhat more intelligent.
18:52:55 <Lymia> Building the gates is the easy part if you ask me.
18:52:56 <fizzie> elliott: http://upload.wikimedia.org/wikipedia/en/3/34/Central_Helsinki_from_plane.jpg It's like ALMOST the same thing.
18:53:14 <Lymia> Routing it, however...
18:53:20 <Vorpal> Lymia, there is that too
18:53:56 <Lymia> How bad would the height limit be for synthesizing stuff?
18:54:00 <elliott> Wow Helsinki is ugly in that picture.
18:54:07 <pikhq> https://secure.wikimedia.org/wikipedia/en/wiki/File:26_-_New_York_-_Octobre_2008.jpg For comparison.
18:54:10 <Lymia> How could I catch constructions that I can't build without exceeding the height limit?
18:54:23 <pikhq> Yes, it's skyscrapers out to the horizon.
18:54:28 <Vorpal> elliott, the upper part of http://upload.wikimedia.org/wikipedia/commons/4/49/Stockholm_lead_image.jpg comes close
18:54:43 <Phantom_Hoover> fizzie, looks like one of the grotty ports in NI I am required to pass through.
18:54:49 <Lymia> I doubt you'd want it covering the entire Y axis.
18:55:06 <elliott> Vorpal: No, it really doesn't.
18:55:15 <elliott> Vorpal: Do you realise the scale of the buildings in the London picture?
18:55:16 <Vorpal> Lymia, throw them away after doing a check?
18:55:20 <fizzie> elliott: It's pretty ugly from the air always; maybe because it's so boringly flat.
18:55:31 <Phantom_Hoover> http://en.wikipedia.org/wiki/File:Edinburgh_from_The_Salisbury_Crags._-_geograph.org.uk_-_84623.jpg
18:55:31 <Vorpal> Lymia, actually I'd like mine here to not be too huge
18:55:42 <pikhq> Vorpal: The London picture is depicting ~1 square mile.
18:55:44 <Vorpal> elliott, of course. I was joking
18:55:54 <Vorpal> elliott, just like fizzie was
18:56:14 <Lymia> I guess I could start out with compiling expressions to redstone circults.
18:56:30 <elliott> Lymia: Make it export one of them schematic things for that level editor. :p
18:56:31 <Lymia> def f(a,b,c):a^b^c to redstone.
18:56:37 <Lymia> elliott, that was what I was thinking already.
18:56:43 <elliott> I NOTE HOW EXTREMELY ON TOPIC THIS IS FOR #esoteric-minecraft
18:56:47 <Phantom_Hoover> elliott, quick, show us a picture of Hexham so we may laugh.
18:56:53 <elliott> Phantom_Hoover: see wikipedia
18:56:56 <Lymia> If I can do that, then I can think of how to do things more complicated than gates.
18:57:00 <Vorpal> Lymia, routing would indeed be interesting, given the length limits, weird behaviour of repeaters, and so on
18:57:10 -!- sebbu has quit (Read error: Connection reset by peer).
18:57:16 <elliott> Phantom_Hoover: Pretty much, yes. :p
18:57:20 <yorick> #esoteric: #minecraft for the people freenode considers geeks
18:57:27 <Lymia> Vorpal, might as well as add a piece of code that says "oh shit N/S quirk abort abort abort"
18:57:35 <elliott> yorick: no, that's #esoteric-minecraft
18:57:40 <elliott> WHICH IS WHAT THIS DISCUSSION SHOULD BE IN COUGH COUGH
18:57:40 -!- ZOMGMODULES has joined.
18:57:42 -!- sebbu has joined.
18:57:43 -!- sebbu has quit (Changing host).
18:57:43 -!- sebbu has joined.
18:57:46 <Phantom_Hoover> I like the way they have the exact same picture twice in the article.
18:57:49 <Lymia> How many schematic->world transfers rotate things?
18:57:50 <elliott> see, you'll scare ZOMGMODULES with minecraft talk in here GET IN THE CHANNEL
18:58:11 <ZOMGMODULES> Oh, I'm just here for elliott's opinion on something. DOn't mind me
18:58:23 <Lymia> If they don't, I could have it avoid the N/S quirk when outputing MCRedstoneSim or something.
18:58:26 <Lymia> And use it otherwise.
18:58:28 <Vorpal> Lymia, anyway, my primary interest here is making the logic for a 7-segment display, given BCD input
18:58:34 <Vorpal> this looks like quite a chore
18:59:00 <yorick> someone did this for openttd some time ago (a LED display counter, that is)
18:59:05 <ZOMGMODULES> elliott: please explain the appeal of ooc? <-- note clever use of question mark on non-question
18:59:23 <elliott> ZOMGMODULES: but, write Deadfish in it.
18:59:32 <Vorpal> yorick, I know fizzie did some sort of adder or something such in openttd
18:59:36 <Vorpal> I forgot what it was exactly
19:00:04 <fizzie> yorick, Vorpal: Some gates in openttd: http://zem.fi/ttd_logic/
19:00:30 -!- ZOMGMODULES has quit (Client Quit).
19:00:43 <yorick> http://www.tt-forums.net/viewtopic.php?f=29&t=37902 was the display
19:01:43 <yorick> http://blog.openttdcoop.org/2009/01/18/optimization-of-logic-logic-gates-part-ii/ has some gates worked out
19:03:26 <Vorpal> wait, openttd doesn't allow underground networks does it? It just does simple straight tunnels?
19:04:24 <yorick> Vorpal: it just does simple straight tunnels
19:04:45 <Vorpal> yorick, that complicates the logic in openttd certainly
19:04:45 <elliott> You can have magical crossing tunnels though, I gather.
19:04:48 <fizzie> There was some sort of a "tunnels may magically cross" patch.
19:05:02 <elliott> (I don't play, this is log-memory.)
19:05:14 <fizzie> I haven't played in ages either.
19:05:19 <yorick> but yes, it does have magical crossing tunnels
19:05:23 -!- sebbu2 has joined.
19:05:29 <Vorpal> simutrans is better when it comes to that. You can do complicated underground networks
19:05:50 <Vorpal> no idea if it can do as advanced logic when it comes to signals Probably not
19:05:52 <yorick> simutrans kindof sucks on the networking
19:06:04 <Vorpal> yorick, hm? You mean multiplayer?
19:06:12 <yorick> Vorpal: that too, and the trains
19:06:19 <Vorpal> yorick, how does it suck?
19:06:29 <fizzie> Anyhoo, I couldn't quite figure out logic gates that'd be based on just single-track signals, so I went with two-track logic.
19:07:37 -!- sebbu has quit (Ping timeout: 258 seconds).
19:07:51 <yorick> Vorpal: the multiplayer is mostly not there
19:08:15 <Vorpal> yorick, right, I'm not really interested in multiplayer for simutrans. So that doesn't bother me
19:10:16 <yorick> about the trains...don't really know
19:11:25 <yorick> the trains in openttd seem much more advanced though
19:18:35 -!- ajf has quit (Remote host closed the connection).
19:21:43 -!- augur has quit (Ping timeout: 276 seconds).
19:22:13 -!- augur has joined.
19:51:14 -!- oerjan has joined.
19:52:53 <oerjan> ...no ancient lambdabot messages for me
19:55:03 <Vorpal> fizzie, what did you do the diagram on http://zem.fi/ttd_logic/ with?
19:55:05 <oerjan> <Vorpal> anyone remembers how you minimise boolean expressions for NOR gates? I can only remember how you do it for NAND gates, not NOR gates
19:55:23 <Vorpal> oerjan, reducing to PS-form then double inverting
19:55:25 <oerjan> ah. anyway it's obvious how to convert one method to the other
19:55:40 <oerjan> (they're dual operations)
19:55:56 <Vorpal> oerjan, hm does that give minimal expressions?
19:56:21 <oerjan> um is this converting _from_ or _to_ NOR gates?
19:56:54 <Vorpal> oerjan, because NOR-NOR logic is awesome :P
19:56:56 <oerjan> in that case, dualize your expression, minimize it with NAND gates, then switch all NAND to NOW
19:57:10 <Phantom_Hoover> "Not to be confused with Termit, Thermite or Turmite."
19:57:37 <fizzie> Vorpal: Either Inkscape or Dia, I'd guess.
19:57:50 <Vorpal> fizzie, ah, what is the monospaced stuff just above?
19:57:53 <Vorpal> fizzie, I mean, the syntax
19:58:02 <fizzie> http://zem.fi/ttd_logic/ttd_4adder_dia.png -- based on the file name, I'd guess Dia.
19:58:13 <Vorpal> [Sum, C] = hadd(A, B) {
19:58:28 <fizzie> And the syntax might be just some ad-hoc pseudoish notation for all I know.
19:58:36 <Vorpal> fizzie, hey you wrote this :P
19:58:44 <fizzie> Yes, but it was a while ago. :p
19:59:05 <fizzie> My guess is it's not any "real" notation.
19:59:27 <fizzie> But I probably took the [a, b] = foo(...) notation for multiple outputs out of Matlab/Octave.
20:00:14 <fizzie> (And the S in the middle line for the full adder should be Sum; or alternatively the Sum on the "declaration" line should be S.)
20:01:17 <Vorpal> fizzie, you didn't try to do carry lookahead?
20:01:41 <elliott> I should look in to York Lava I wonder what it compiles to
20:02:44 <fizzie> Vorpal: Nno, the resulting map was already rather large after I had multiplied the generic two-input gate enough times to get a ripple-carry adder in place.
20:06:22 <oerjan> <elliott> tswett: Do you have running water over there in Australia? <-- yeah the water keeps running to get away from the spiders
20:10:20 -!- cheater897 has joined.
20:13:15 <oerjan> shot by a huge jaguar?
20:14:07 <Vorpal> smashed by a hilarious jar?
20:15:06 <olsner> jarred by a smashing hilarity?
20:15:09 <oerjan> severed by aardvark hillbilly jerks
20:15:36 <elliott> oerjan: http://www.mspaintadventures.com/sweetbroandhellajeff/
20:17:04 <oerjan> from today's comic, sweet bro does not seem overly intelligent
20:18:29 <oerjan> hm wait it seems that's the first comic
20:19:36 <elliott> the latest is http://www.mspaintadventures.com/sweetbroandhellajeff/?cid=031.jpg
20:20:00 <oerjan> ...i don't think i'm going to continue after no. 2, actually
20:20:50 <elliott> but then you're missing the masterpiece that isnumber three
20:21:09 <elliott> also number four, and five
20:22:42 <oerjan> ok that was 3 and 4. i don't think i'll ever be high enough to read the rest.
20:23:37 <Vorpal> <oerjan> ...i don't think i'm going to continue after no. 2, actually <-- indeed.
20:24:29 <oerjan> 3 and 4 are not as cross, although even more meaningless (if, i assume, you are not high)
20:24:55 <elliott> hmm where's the prices and values one i think i'll go reread it
20:25:25 <oerjan> elliott: i think i shall put this down to the generation gap
20:25:39 <elliott> oerjan: you _realise_ it's not sincere right :D
20:26:11 <elliott> <Vorpal> <oerjan> ...i don't think i'm going to continue after no. 2, actually <-- indeed.
20:26:13 <elliott> "Whereas reading HS while not studying (yes studying) SBaHJ is less forgivable. SBaHJ is requisite supplementary reading. If HS was a class, I would automatically fail anybody who didn't get an A on their SBaHJ exam."
20:26:16 * oerjan has no idea whether "put this down to" is the right idiom
20:26:54 <oerjan> elliott: what is not sincere? the comic or your praise of it?
20:27:06 <elliott> oerjan: the comic, of course it's sincerely awesome
20:27:26 <oerjan> ok, generation gap it is.
20:28:14 <elliott> it _may_ make more sense in context ;D
20:29:30 <Sgeo_> I am, in fact, only skimming SBaHJ, and only as they're mentioned in HS
20:30:22 <elliott> you're only skimming HS to start with
20:30:38 <elliott> hey Sgeo_ what's the dog's name
20:30:46 <Vorpal> the blurb on http://reference.wolfram.com/mathematica/guide/BooleanComputation.html is hilarious
20:31:02 <elliott> hey Sgeo_ name some trolls
20:31:03 <Vorpal> "access to the latest in industrial-strength Boolean computation" come on
20:31:38 <Sgeo_> Sollux, Equiunus (not sure sp), Vraska (sp?), Gamzee
20:32:04 <elliott> Says the guy, like, almost done with Hivebent.
20:32:17 <elliott> I'm just going to sit here and cradle my face gently in my palms.
20:32:24 <elliott> With my good old ink-based Bicsprite.
20:32:24 <Sgeo_> Act 5 Part 2 is past hivebend, right?
20:32:43 <elliott> You're on Act Five Act Two and you can only remember two of the trolls' names. I am clapping here.
20:32:56 <elliott> It is the most sarcastic manner in which two hands have ever met at speed before.
20:33:00 <Vorpal> elliott, not everyone is good at remembering names
20:33:35 <elliott> Vorpal: come on, he confused Scratch with another member of the Felt, despite seeing every member of the Felt and Scratch.
20:33:40 <elliott> Notably none of them have a cue ball for a head.
20:34:01 <Vorpal> elliott, who was Scratch now again
20:34:11 <elliott> Have you actually been reading.
20:34:25 <Vorpal> elliott, I just suck utterly at names
20:34:40 <elliott> Just sittin' here, all cradlin' my face.
20:34:47 <elliott> Sgeo_: the point of a /msg is that other people don't see it.
20:35:06 <Sgeo_> elliott, the only reason I didn't want anyone to see it was to avoid spoiling future HS readers in here
20:35:28 <elliott> If Vorpal has at all been keeping up with updates he knows who Scratch is.
20:35:54 <Vorpal> elliott, I haven't been keeping up with updates no
20:36:00 <Vorpal> elliott, been far too busy
20:36:42 <elliott> Vorpal: there have only been 45 pages from the one you finished on because the rate has slowed to a crawl.
20:37:15 <Vorpal> elliott, that is still more than most other comics I read
20:37:49 <elliott> Vorpal: It hasn't been updating anywhere near daily, and one HS panel is less than one normal comic..
20:38:05 <elliott> Shit, there was a 9-day hiatus mere days ago.
20:38:20 <elliott> Well, "hiatus"; Flash work session.
20:39:31 <Sgeo_> Slowed to a crawl?
20:40:28 <elliott> Sgeo_: in that it's not updating at five panels per day like normal.
20:40:53 <elliott> It's all about Bicsprite and his inky adventures in the Land of Paper and Lead.
20:41:02 <elliott> Currently, he is drawing a giraffe.
20:49:17 * oerjan notes how the slow pace of irc is so much more conducive to puns than face to face conversation
20:50:48 <Phantom_Hoover> So is this the true reason for your status as the Punmaster?
20:52:12 <oerjan> maybe. i'm a bit of a joker face to face as well.
20:52:13 -!- Timwi has joined.
20:53:11 <Timwi> Out of curiosity, what kinds of things do you discuss on this channel normally? :)
20:53:29 <oerjan> everything _except_ esolangs, generally
20:53:46 <Timwi> Oh, so Im in the wrong place :>
20:54:21 <Timwi> It would be futile asking something about the esolangs.org wiki then, would i?
20:54:28 <Vorpal> oerjan, hey I remember an esolang discussion just a few days ago
20:54:28 <Phantom_Hoover> Timwi, recent topics of discussion include Minecraft, Homestuck and puns.
20:54:41 <Timwi> Oh you guys have been punting? ;-)
20:54:47 <Phantom_Hoover> Despite us already having a separate channel for Minecraft discussion to start with.
20:55:15 <Vorpal> Timwi, we do discuss esolangs too however, it is just that it doesn't nearly fill up the time in here. Thus we get a lot of "off topic" discussion too
20:55:48 <Timwi> I wanted to ask what your opinions are on full descriptions on the wiki. I find it weird that some people seem to *remove* descriptions and leave only a short summary (by far not enough to get an idea of the language) and/or replace it with a link which of course goes dead quickly.
20:55:50 <Vorpal> besides, by coppro's conjecture, there is always an expert on anything you ask about in here, or someone in here knows an expert.
20:56:04 <elliott> Timwi: yeah i don't like that either
20:56:09 <oerjan> Timwi: um i've only noticed it happening once recently
20:56:16 <Vorpal> full description is better
20:56:23 <Timwi> Im tempted to revert the change [[Fish]] :-p
20:56:24 <elliott> I didn't revert it because there's no point having an unmaintained description but I did leave a message on their talk page
20:56:37 <elliott> they don't seem to have replied yet, but it's only been two days
20:56:52 <oerjan> Timwi: however one occasional problem is people copying stuff from elsewhere. our license is not very compatible with doing that.
20:56:53 <Vorpal> unless the language would be hugely complex. Like befunge98 or intercal
20:57:11 <elliott> oerjan: OTOH it was the language creator this time
20:57:17 <elliott> so they can pretty much do what they want
20:57:39 <oerjan> elliott: well i don't think they can just revoke the license, can they?
20:57:48 <Timwi> I dont see why complexity should be a stopper
20:57:50 <elliott> oerjan: no, exactly, posting it on the wiki counts as permission
20:58:34 <Timwi> I also dont happen to think that the articles should belong to the authors. Maybe the _language_ does, but unless they redefine their language I think the _description_ should be up to wiki philosophy
21:00:00 <Timwi> No disagreements? :)
21:00:31 <elliott> if it wasn't a wiki, most of the articles would be of terrible quality :)
21:01:01 <Timwi> Now Im not sure whether youre being ironic or whether you really think most articles are good quality
21:01:04 <oerjan> Timwi: we've done major rewritings of articles before. it's just we're usually too lazy to do so unless we consider the language particularly interesting _and_ have ideas for improvement
21:01:15 <elliott> Timwi: Well, define good quality :-P
21:01:21 <elliott> Like 90 percent of our articles are on tiny minor esolangs.
21:01:28 <elliott> So there's really not much to say on them.
21:01:38 <Timwi> Of course not, but that doesnt mean their descriptions cant be improved
21:01:49 <Timwi> Ive seen too many pages where the description is vague or ambiguous
21:01:57 <elliott> Sure; I think the average quality of articles is pretty good for all esolangs that more than one person cares about, though, on average
21:02:20 <oerjan> Timwi: well when the page is the _only_ description of the language it is hard for someone other than the author to disambiguate it
21:02:23 <elliott> Timwi: Well it's hard to clarify things when there's true ambiguity, because that ambiguity is in the spec itself.
21:02:46 <elliott> If we had a Funge-98 article, it would have to be extremely ambiguous by necessity (although Mycology acts as a sort of de facto disambiguator)
21:03:22 <Timwi> We should have some sort of incentive for authors to be precise and complete
21:03:26 <oerjan> although i recall i did some minor disambiguation to itflabtijtslwi when i implemented it
21:04:10 <elliott> Timwi: It's called having your language ignored otherwise.
21:04:13 <elliott> It's swift and merciless ;)
21:04:27 <Timwi> I think we can do better
21:04:51 <Timwi> For example, we could add banners (or other prominent boxes/markers) along the top of a page which clearly highlight all the ambiguities/open questions
21:05:00 <elliott> Isn't that what talk pages are for?
21:05:04 <Timwi> If we add these banners quickly enough when a language is posted, the author will notice it
21:05:10 <Timwi> Yes, but nobody notices them
21:05:15 <Timwi> Talk pages are completely useless.
21:05:26 <Timwi> Theyre not even suitable for discussions.
21:05:29 <elliott> I disagree, we've had very productive discussion and clarification on talk pages before
21:05:35 <elliott> hm did the wiki just go down for anyone else
21:05:42 <Timwi> My proposal is not to have a discussion about the language, but just to document the shortcomings of the article _in the article itself_.
21:06:25 <elliott> Timwi: well we could have some sort of infobox I suppose, but it seems like mentioning that there's a new discussion on the article's talk page on the language author's talk page might be the most productive option? I doubt most people check their languages' articles very often after all
21:06:52 <Phantom_Hoover> Hmm, is there an analogue of the internet archive that doesn't respect robots.txt?
21:06:58 <Timwi> What makes you think they check their user talk page any more often?
21:07:14 <elliott> Timwi: well you get an annoying bar on every page if you don't...
21:07:15 <Timwi> To get the notification they would have to at least view *something* on the wiki, and what would that be if not their own language article?
21:07:23 <elliott> other languages? recent changes?
21:07:26 <elliott> beyond that, there's the email this user link
21:07:33 <elliott> but if they have that disabled then they don't want to be bothered any more than that by choice
21:07:45 <Timwi> As a reader, I dont want to have to e-mail users, I want to just say this article has ambiguity XYZ and move on
21:08:00 <oerjan> Phantom_Hoover: you mean after the fact? not respecting it while crawling might be likely to get you banned...
21:08:01 <Timwi> After all, the original language inventor may not be the only person capable of clarifying the ambiguity
21:08:05 <elliott> well, a note on the article talk page + a note on the user's talk page is quite easy to do
21:08:16 <elliott> Timwi: if there's a spec, then you could correct the error yourself :-)
21:08:19 <elliott> if not, then only the author can
21:08:32 <Timwi> I think youre not catching my drift here
21:08:46 <Timwi> At the moment, we have many articles with problems, but *nobody is documenting the problems*
21:09:21 <elliott> well the wiki is fairly low-traffic, and there's a huge long tail effect on the articles that are read
21:09:39 <Timwi> When I was new, I tried to make [[Talk:Funciton]] a bit like this i.e. have it be a documentation of current problems but when I removed a thread that was about a *resolved* problem, it was reverted and I was asked not to remove discussions. Thus, talk pages are completely useless for my purpose
21:10:17 <elliott> well archiving talk pages is OK but removing threads is generally not done
21:10:23 <oerjan> Timwi: um if someone logs in to the wiki at all, they will know if they have a message on their user talk page automatically, while they have to explicitly check all their language articles
21:10:27 <elliott> just because it makes them hard to access (you have to find a random revision in the history)
21:11:01 <Timwi> I still think an articles problems should be listed on the article itself though.
21:11:28 <Timwi> Incidentally, I also think that should be the case on Wikipedia as it would benefit readers a lot even if they cannot resolve the problem, at least they know it exists. But of course on Wikipedia I tend to talk against a wall there :)
21:11:31 <elliott> I'm fine with that, I just don't see how it will make problems get fixed any quicker.
21:12:18 <Timwi> Right. I cant prove to you that they will, but let me point out that most people thought wikis would never work (i.e. would only accumulate errors/problems that dont get fixed) until Wikipedia proved them wrong :)
21:13:06 <elliott> well sure, but people also said the same about perpetual motion machines :P
21:13:12 <elliott> I'm not opposed to the idea, I'm just not sure how people will notice
21:13:23 <oerjan> we _do_ have a stub template anyway
21:13:48 <Timwi> Oh dear, the stub template. I dont get why this is considered useful? It only states the obvious (this article is short). Its redundant.
21:14:12 <elliott> well some articles are short because there's not much to say
21:14:19 <elliott> others are short because we haven't figured out /what/ to say yet :)
21:14:41 <coppro> Timwi: so that people can easily go looking for stubs to expand on, in theory
21:15:47 <Timwi> I think a language article really *needs* only one thing: all the information necessary to implement the language or to program in it. But there are several would-be-nice-to-haves: the top #1 for me is example programs. Others include, for example, a simplified list of commands (a cheat sheet); another is a beginners introduction/tutorial...
21:16:05 <Timwi> coppro: Well you can still do that with [[Special:Shortpages]]
21:16:12 <elliott> IMO a tutorial would usually belong on another page, perhaps even a user page, since it's much less objective information than the rest
21:16:36 <Timwi> It can certainly go on a subpage, but why a user page?
21:16:48 <Timwi> Why is a tutorial not objective, and even if it isnt, why does all content need to be objective?
21:17:01 <elliott> because there are many ways to introduce someone to a language
21:17:06 <elliott> beyond what consensus can agree on
21:17:16 <elliott> that's just my opinion anyway
21:17:20 <Timwi> Well yeah, but surely its better to have /one/ such way than none
21:17:32 -!- Tritonio has joined.
21:18:04 -!- azaq23 has joined.
21:18:53 <Timwi> Do you think the introduction I wrote for Funciton is useless and/or too subjective?
21:19:12 <elliott> I don't really see that as a tutorial
21:19:24 <elliott> it's more a list of examples of certain features in increasing complexity rather than a guide on writing programs, IMO
21:19:38 <Timwi> It was intended as an _introduction_ rather than a tutorial
21:19:58 <Timwi> I wish more articles did that. Instead I tend to see descriptions that already assume knowledge about the execution environment / memory model / etc.
21:23:06 <oerjan> Timwi: btw your irc client is putting some strange characters in your messages
21:23:30 -!- ralc has joined.
21:23:38 <Timwi> Since when is UTF-8 strage?
21:24:07 -!- Tritonio has quit (Quit: Leaving).
21:24:20 <oerjan> they show up as inverted double S or T
21:24:36 <oerjan> and i'm otherwise approximately utf8 clean
21:24:47 <Timwi> Well, I'm assuming that it's UTF-8 -- how do I check? :-p
21:25:04 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:25:14 <Timwi> In fact I'm not running the newest version of mIRC. Maybe I should upgrade
21:25:20 <elliott> oerjan has rather bad luck with unicode
21:25:45 <oerjan> i've noticed elliott occasionally pastes characters like that, but he doesn't write them afair
21:25:48 <Timwi> Is anyone seeing my characters properly? quotes single quotes em dash etc.?
21:26:08 <elliott> I am, but oerjan and maybe others tend to have problems with Unicode characters in here anyway
21:26:10 <oerjan> http://tunes.org/~nef/logs/esoteric/11.05.22 at the end
21:26:19 <oerjan> shows up as blank squares to me
21:26:23 <elliott> and it's possible my client is just doing encoding detection
21:26:26 <Timwi> Why do so many people use ancient 1980s technology? :(
21:27:03 <Timwi> That chat log appears to be encoded as Windows-1252
21:27:13 <oerjan> i don't think this is utf8, since they don't show up as such in the logs
21:27:19 <elliott> oerjan: you might try the codu logs
21:27:32 -!- pikhq has quit (Remote host closed the connection).
21:27:34 <elliott> indeed it shows wrongly there too
21:27:37 <elliott> as wrong single characters
21:27:45 <elliott> so Timwi is the one using eighties technology -- a non-unicode character set :)
21:27:56 <oerjan> http://codu.org/logs/_esoteric/2011-05-22.txt
21:28:16 <Timwi> Are you sure that the log shows exactly what my client sends?
21:28:30 <elliott> I've read the code to glogbot :P
21:28:34 <Timwi> OK then I need to find out how to enable UTF-8
21:28:46 <elliott> you could just use dumb quotes ;)
21:28:55 <elliott> indeed, shows right in the logs for me
21:29:04 <elliott> although with a diaeresis inexplicably??
21:29:37 <Timwi> A combining diaeresis no less
21:30:00 <elliott> oh, that's what i actually typed
21:30:03 <Timwi> Anyway. I'm happy to hear suggestions for a better IRC client
21:30:19 <elliott> I use xchat but I'm on linux
21:30:37 <elliott> although I gather that http://code.google.com/p/xchat-wdk/ is a decent xchat bild for windows...
21:30:49 <Timwi> BTW looks like mIRC can correctly _display_ your UTF-8-encoded text. I guess that's why I thought it also _sends_ UTF-8
21:31:37 <elliott> a lot of clients tend to do that, even xchat by default
21:31:49 <elliott> I had to change encoding from "IRC" which is some freakish latin-one/utf-eight hybrid to plain utf8
21:32:14 <Timwi> Why has nobody ever written a completely normal, un-messed-up IRC client?! :-)
21:33:08 <elliott> they have, hundreds of times in fact
21:33:15 <Timwi> Well I've never seen one
21:33:24 <Timwi> Yeah, I've never seen any of those either
21:33:26 <elliott> precisely, so you can be the next person in line to write one :)
21:33:39 <Timwi> Yeah, and no doubt 90% of all people will think mine is messed up too
21:33:41 <elliott> and then the first person to use yours will say "What kind of IDIOT wrote this? I'm going to write a /normal/ editorclient" :-P
21:34:34 -!- Timwi_ has joined.
21:34:53 <Timwi> Whoa, I didn't see the join message
21:35:00 <Deewiant> oerjan: /set recode_fallback CP1252
21:35:19 <elliott> Deewiant: that's loser talk
21:35:22 <Timwi> Argh! Ctrl+L clears the bugger, how do I undo that?
21:35:27 <Timwi> LOL s/bugger/buffer/
21:35:39 <Deewiant> oerjan: To make irssi try windows-1252 when it's not UTF-8
21:35:43 <elliott> I'm not sure why /clear even exists really
21:35:50 <Deewiant> oerjan: And to make Timwi's quotes etc work :-P
21:35:57 <Timwi> Right. So here we go, the first shortcut I press (accidentally) has a destructive data-loss characteristic with no undo. You don't think that's messed up? :-p
21:36:10 <elliott> Well if you turn logging on it's not destructive. :p
21:36:17 <Timwi> OK how do I do that? :)
21:36:20 <oerjan> Deewiant: i have it as iso-8859-1, i recall i had some trouble with using cp1252 after i changed the rest of my setup to be utf8 clean
21:36:30 <Deewiant> cp1252 is a ISO-8859-1 superset
21:36:34 <elliott> Timwi: Settings → Preferences → Logging
21:36:47 <oerjan> Deewiant: no, strangely enough _something_ broke iirc
21:36:54 <Timwi> I think I'll spend some time going through the Preferences dialog, thanks
21:37:07 <oerjan> i cannot quite recall what it was
21:37:10 <Deewiant> oerjan: It /is/ a superset :-P
21:38:08 <Timwi> Argh, the menu keyboard navigation is all messed up :(( Sorry I'm so picky :)
21:38:15 <oerjan> Deewiant: ah iirc iso1252 gave me trouble with characters 128 to 128+31
21:39:32 <Deewiant> Well, that's the only range where stuff is different
21:39:37 <oerjan> Deewiant: i vaguely recall characters showed up duplicated.
21:39:42 <Timwi> Meow Timwi test Meow
21:39:48 -!- CakeProphet has quit (Ping timeout: 260 seconds).
21:39:49 -!- Timwi has changed nick to Timwi__.
21:39:50 <Deewiant> In ISO-8859-1 they're control chars, in windows-1252 they're not
21:39:51 -!- Timwi_ has changed nick to Timwi.
21:40:03 <elliott> xchat, the best irc client for felines
21:41:05 <elliott> fizzie: we demand fungottery
21:41:13 <oerjan> Deewiant: oh hm wait i am seeing double chars _now_
21:41:59 -!- Timwi__ has quit.
21:42:04 <Timwi> OK now lets see how it goes
21:42:09 <Timwi> I couldnt find any UTF-8-related options though
21:42:17 <Timwi> Are the quotes showing up properly now?
21:42:33 <elliott> looks the same as before (i.e. fine) to me
21:42:37 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
21:42:38 <elliott> Timwi: the encoding is in the network list thing
21:42:48 <elliott> edit the server → Character set
21:43:33 <oerjan> Deewiant: ah yes. when i do cp1252 all the chars after that become messed up
21:43:39 <Timwi> This is totally messed up. I cant type normally into this text box...
21:44:03 <Timwi> I should make a list of all the issues I have with all the crap software I encounter :)
21:44:24 <elliott> what's not normal about the text box :)
21:44:31 <elliott> it's a standard gtk text box here
21:44:34 <elliott> but then my whole environment is gtk
21:45:13 <Timwi> It doesnt accept keypresses that come from a WinAPI SendInput() call.
21:45:35 <Timwi> Uhm, more precisely, it accepts keypresses such as backspace, but not Unicode characters :)
21:46:05 <Timwi> This is not the first time Im having huge issues with GTK and Unicode. For a GUI toolkit I think it is exceptionally broken
21:46:10 <elliott> try the input methods menu in the right-click?
21:46:21 <elliott> well you're on Windows, it's hardly GTK's native platform :)
21:46:34 <elliott> in X11 it supports unicode input perfectly for me
21:46:50 <Timwi> What does that Input Methods menu do that isnt already covered by normal native OS-level functionality?
21:46:50 <elliott> (diff) (hist) . . Fish; 19:11 . . (+8,797) . . Harpyon (Talk | contribs) (Added/rewrote documentation.)
21:47:00 <Timwi> Yeah, I noticed that :)
21:47:11 <elliott> Timwi: well on Unix/X11 which is GTK's native platform there is /no/ OS-level functionality for that, it's in the toolkit i.e. GTK :)
21:47:28 <Timwi> Right, so every program needs to implement it separately
21:47:46 <Timwi> So every program will implement it _differently_, so the amount of learning (and frustration) increases with the number of programs you use
21:47:54 <elliott> no, not every program implements it separately
21:48:02 <elliott> because there's more than one program that uses gtk
21:48:17 <elliott> actually it seems to have been unified into this "ibus" thing lately, I bet that works with Qt too...
21:48:38 <Timwi> How does that help anyone using any other app?
21:48:48 <Timwi> Clearly OS-level functionality is the right way to do this
21:49:07 <elliott> you realise there are hundreds if not thousands of applications using GTK+, right?
21:49:13 <Timwi> You want character input to be consistent across *ALL APPS WITHOUT EXCEPTION*, not different from framework to framework
21:49:24 <elliott> among them the vast majority of popular graphical Unix programs
21:49:35 <elliott> e.g. every single Gnome program
21:49:51 <Timwi> Right, so GTK now has a user lock-in feature too if you try to use ANY non-GTK program AT ALL and expect to be able to enter text normally, youre screwed
21:49:57 <elliott> Timwi: well it's a flexibility tradeoff -- every program that runs on the "GTK+ graphical OS" supports it.
21:50:13 <elliott> if it was on the Xorg level, it would just mean that doing it differently would involve rewriting the entire graphical subsystem
21:50:32 <elliott> (and it's certainly feasible to not use a single non-GTK graphical program)
21:50:52 <Timwi> So uhm, any other suggestions for a better IRC client? :)
21:52:04 <Timwi> WTF, now mIRC stopped working, supposedly because the evaluation period expired. That seems a bit random now, Ive been using it for decades :)
21:52:14 <elliott> just give it a few seconds and the continue button enables :P
21:52:47 <elliott> Timwi: btw i do generally agree wrt things being at the OS layer rather than lower down -- e.g. I'm a fan of OS-level object model/garbage collection -- but I'm not sure it's always clear-cut
21:53:15 <Timwi> Yeah, I dont claim that its easy :)
21:53:49 <Timwi> I was just very surprised to see this kind of text-input functionality in applications like Skype, Pidgin and now XChat, which duplicate functionality that should be OS-global and not app-specific...
21:54:07 <elliott> Skype is Qt I think, not sure; Pidgin and XChat are both GTK+.
21:54:38 <elliott> It's not really app-specific so much as layering some "graphical-environment functionality" on top of another graphical-environment (Windows), whereas they usually run a layer lower (X Windows), IMO
21:55:21 <Timwi> Its app-specific in the sense that there is GUI for it (such as the Input Methods menu in XChat) that should be in the OS
21:56:56 <elliott> What would make you consider such an option "part of the OS"? It's so you can set a specific input method temporarily
21:57:02 <elliott> So it wouldn't work in any sort of system-wide settings
21:57:20 -!- Timwi__ has joined.
21:57:42 -!- Timwi has quit (Quit: Leaving).
21:57:42 -!- Timwi__ has changed nick to Timwi.
21:58:21 <Timwi> I may have misunderstood what the feature does, but even switching between input methods (e.g. keyboard layouts) I would argue should be OS-level. I'm actually annoyed that Windows remembers the keyboard layout on a per-app basis and switches between them as you switch between apps :)
21:59:43 <Timwi> I was actually going to ask whether there is any demand for a primitive esoteric-language IDE with a step-through debugger :)
22:00:11 <Timwi> I wrote one for an esolang I haven't published yet, and I was wondering whether anyone would like to help me add other languages, esp. BF and Befunge and some of the most popular ones
22:00:19 <elliott> there's a bunch of them for brainfuck
22:00:40 <elliott> by Befunge I take it you mean Befunge-93
22:00:51 <Timwi> Yeah, but I'm thinking of a single, integrated program that supports as many languages as possible
22:01:07 <elliott> (Implementing Funge-98 is a major project in itself; doing it efficiently and with good fingerprint support takes many thousands of lines.)
22:01:28 <elliott> Timwi: what language? I haven't tried Funciton yet because it depends on a newer version of .NET than Mono supports
22:01:39 <elliott> I don't think there's many Windows users in here
22:02:55 <Timwi> Well, I wrote it in C# because I happen to know C# best. I don't think you have to use Windows; I'm pretty sure that it'll work in Mono.
22:03:05 <Timwi> I could even concoct my own implementation of BigInteger, then I don't need to require .NET 4.0.
22:03:20 <elliott> Last I checked Mono didn't have BigInteger, yeah.
22:04:17 <Timwi> Hm, there's a Mono.Math.BigInteger
22:04:48 <elliott> it seems to be unsigned only
22:06:05 <Timwi> Everyone except for us two has gone quiet...
22:06:28 <Timwi> I should have gone slower so I could tell whether it's because I mentioned C# or whether it was because we talked about GTK+ in Windows :)
22:06:48 <elliott> oerjan: Phantom_Hoover: hey, revive the channel :-)
22:09:33 -!- elliott_ has joined.
22:09:47 <Timwi> Hm, commands are encoded as dance patterns?
22:11:35 -!- elliott has quit (Ping timeout: 252 seconds).
22:12:45 -!- elliott__ has joined.
22:12:51 <elliott__> The resident electronics seem to be rather unhappy
22:12:57 <elliott__> Computer crashed then my router cut out
22:13:15 <elliott__> Who pronounced "eso" with a long e.
22:13:49 <Timwi> I always thought it should be long e, too.
22:13:57 -!- elliott_ has quit (Ping timeout: 240 seconds).
22:14:04 -!- CakeProphet has joined.
22:14:07 <elliott__> http://www.google.co.uk/search?hl=en&safe=off&q=esoteric&tbs=dfn:1&tbo=u&sa=X&ei=uorZTeOpCsHRhAe05bS2Bg&ved=0CCAQkQ4&biw=1440&bih=761
22:14:08 -!- CakeProphet has quit (Changing host).
22:14:08 -!- CakeProphet has joined.
22:14:14 <elliott__> Pronunciation icon -> "ehsoteric".
22:14:34 <Timwi> http://howjsay.com/index.php?word=esoteric&submit=Submit
22:14:40 <Timwi> Short e apparently...
22:14:46 <elliott__> Phantom_Hoover: It's super effective.
22:14:47 <Phantom_Hoover> I have literally never heard it said with a short 'e'.
22:14:58 <elliott__> When have you EVER heard "esoteric" said?
22:15:25 <oerjan> fun fact, no one has ever said "esoteric", anything else is just an illusion
22:15:38 <elliott__> oerjan: your facts are as amusing as they are factual
22:15:54 <Timwi> I've heard esophagus though, is that similar? :))
22:16:04 * Phantom_Hoover remembers that he has a computerised pronunciation guide on his hard drive.
22:16:09 <oerjan> elliott__: your praise is as welcome as it is sincere
22:16:18 <elliott__> oerjan: It was _perfectly_ sincere.
22:16:23 <elliott__> I never said the fact was factual ;-)
22:16:37 <elliott__> Phantom_Hoover: A text-to-speech program?
22:16:56 <oerjan> curses, foiled by logic again
22:17:02 <elliott__> Phantom_Hoover: So are you a bee hipster yet?
22:17:13 <elliott__> Metallurgy, things to make shirts out of... bees are merely the next logical step.
22:17:31 <Phantom_Hoover> Did you even express interest in what the shirt would be made of.
22:17:53 <elliott__> I am going to generalise it down to "silk" to irritate you.
22:18:07 <elliott__> I will then point out how impractical that is wrt the weather where you live.
22:18:53 <elliott__> Phantom_Hoover: I mean that it is cold in Scotland.
22:19:20 <elliott__> Phantom_Hoover: Thus making the shirt completely superfluous :P
22:20:12 <Phantom_Hoover> Ah no because the collar of the shirt would be visible and everyone would be like "oh, your shirt is weird" and I'd be like "yes, it's made of spider silk" and then I could hug arachnophobes.
22:22:27 <oerjan> elliott__: i think that was more of an oklopol comment, really
22:22:42 <elliott__> oerjan: it had too many words for that
22:27:01 -!- Phantom_Hoover has quit (Remote host closed the connection).
22:29:51 <Timwi> Hm, what did you see in my previous message?
22:30:27 <Timwi> Interesting! It’s sending UTF-8 now!
22:32:35 <Timwi> elliott__, you still there?
22:32:54 <Timwi> I was actually going to ask why people seem to be intent on keeping deadlinks around on esolangs.org.
22:34:35 <elliott__> well I created {{deadlink}} so people would either update them or wayback them
22:34:54 <Timwi> That wasn’t obvious :)
22:35:25 <Timwi> Although I did do that once — I recovered the description of [[Emoticon]] from the wayback machine
22:35:31 <elliott__> maybe I should put a note on the template page...
22:35:36 <elliott__> and link the "dead link" text to it
22:35:50 <elliott__> Timwi: hm you didn't copy from it without checking with the author though right?
22:35:53 <Timwi> Great, oerjan removed it :)
22:36:28 <Timwi> I can’t deny that it’s technically a copyvio, but I really cannot imagine it ever being a problem :)
22:37:37 <elliott__> well we do enforce the policy quite strictly, but I don't see anything that could be a copyvio on [[Emoticon]]
22:38:06 <elliott__> ugh, the new wayback interstitial is annoying
22:38:33 <oerjan> elliott__: um, <Timwi> Great, oerjan removed it :)
22:39:11 <elliott__> hm i wonder what you're meant to do with copyvios on wikis since it stays in the history
22:39:17 <elliott__> I think Wikipedia does a delete/restore without those revisions thing
22:39:35 <elliott__> Timwi: was it actually a vio or did you write your own description using the page?
22:39:44 <Timwi> OK, sent him an e-mail
22:40:09 <oerjan> it was pretty directly copied as i recall
22:40:24 <Timwi> Yeah, I copied it and only fixed the formatting
22:40:28 <Timwi> Which actually took me quite a while :/
22:40:40 <Timwi> Would be annoying if I don’t hear from the guy and the work was for nothing
22:41:13 <Timwi> I thought in the US copyright law allows us to post it and wait until we get a takedown notice :)
22:41:33 <elliott__> That's the kind of thing that gets you prosecuted :-P
22:41:39 <coppro> if you get a takedown notice, you have to take it down
22:41:44 <coppro> but it doesn't make it legal in the first plcae
22:41:58 <elliott__> that would be Graue's decision in any case
22:42:12 <Timwi> Speaking of Graue, I haven’t received a reply from him about my e-mail... :(
22:42:23 <oerjan> Timwi: no. the law allows the _isp/host_ to wait until they get a takedown notice. the uploader can certainly be sued immediately.
22:42:57 <oerjan> (well ok i'm not entirely certain)
22:43:19 <elliott__> I find making things up to be an excellent substitute for knowing things; YMMV
22:43:29 <oerjan> but it's meant to protect isp/hosts from having to check everything
22:44:49 <oerjan> i _think_ graue paid attention to ais523's email during the recent spam flood. but i certainly didn't get a response to the last one i sent
22:45:23 <oerjan> mind you the problem was fixed though
22:45:26 <Timwi> If Graue is going to be prohibitively unresponsive, we could consider forking the content :-p
22:45:44 <elliott__> Graue is a good admin and the esolangs.org domain has lots of Googlejuice in it anyway
22:45:52 <elliott__> although is technically not owned by Graue IIRC
22:46:10 <Timwi> Yeah, of course it would be best if we could get hold of the domain too :)
22:46:35 <elliott__> well I don't see why, the wiki is running quite smoothly
22:46:36 -!- pikhq has joined.
22:46:36 <elliott__> "While parsing numbers is not very hard, it makes for slow and possibly glitchy programs." --[[Fish]]
22:46:49 <elliott__> possibly glitchy? can this guy not write a number parsing program or something :)
22:48:12 <Timwi> elliott__, I explained why — because I’m not getting a response regarding my suggestions for improvement. Is the wiki interested in improvements or not? If I can host it equally smoothly *and* be responsive *and* make it easier for users to format articles nicely, that’s clearly an improvement :)
22:48:15 <Timwi> Of course I’m not saying I can
22:48:33 <elliott__> well what suggestions did you make?
22:48:48 <Timwi> For example, I considered making a new MediaWiki skin that is unique to esolangs
22:49:10 <elliott__> did you see mine and ais' replies on the talk page? that would be best done locally at first, since it involves editing PHP
22:49:16 <Timwi> I also suggested the div/span template thingie, which was eventually added, but only because someone found a tricky workaround for the filter :-p
22:49:23 <elliott__> if you had a finished skin you might get a quicker response
22:49:53 <Timwi> But more than creating a whole skin, I’d really just like to improve the look of individual articles
22:49:59 <Timwi> For that I would like to be able to edit [[Common.css]]
22:50:07 <Timwi> Er, [[MediaWiki:Common.css]]
22:50:32 <elliott__> well again some concrete suggestions might help :)
22:54:28 -!- Wamanuz3 has quit (Ping timeout: 260 seconds).
22:54:46 <Timwi> Why shouldn’t I be able to make these suggestions in the same way that you make any other suggestions on a wiki — by editing it?
22:55:20 <elliott__> well with normal pages you can only mess up one page with an edit, and it's easily revertible; with the CSS anyone could make the site unusable with a single edit
22:55:52 <Timwi> Well I’m not suggesting to make it editable to everyone
22:55:56 <Timwi> At the moment it is very hard to make a table that doesn’t look completely rubbish. Even if I add the code to make it look okay, I still have to add that to every single table....
22:56:29 <elliott__> I agree that a nicer table style would be nicer; have you written any CSS to make them nicer? You can test modifications in [[User:Timwi/Monobook.css]] and then any sysop could easily copy it over if people like it.
22:56:42 <elliott__> That was what was going to happen with the wikitable class from Wikipedia, but unfortunately the license prohibits it.
22:56:49 <Timwi> Well, except that no-one can see it until it is copied over :-p
22:56:58 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
22:56:58 <Timwi> (unless you copy it to your own user page, etc.etc. — a lot of unnecessary work)
22:57:15 <Timwi> Oh, that reminds me, I actually had another idea which may be a lot more controversial than this :)
22:57:25 <elliott__> Timwi: Well, nobody can see it before it is added to the global style either
22:57:43 <Timwi> Yes, hence why I‘m asking to be able to do that
22:58:16 <elliott__> hm is that an opening single quote character there...
22:58:46 <Timwi> Basically I was thinking it might be nice to be able to vote on esolangs. One could give a rating as to how clear the article is, how complete the spec, etc.... Does this sound like total chaos? :)
22:59:02 <elliott__> heh, didn't wikipedia introduce something like that recently...
22:59:12 <Timwi> elliott__: Yes, I would have fixed it if IRC allowed me to edit messages, but since it’s such ancient 1980s technology, I can’t.
22:59:25 <elliott__> Timwi: that's what s/// is fro :-)
22:59:26 <Timwi> They did? I didn’t see anything like it
22:59:51 * elliott__ can only imagine the chaos if IRC messages were fully editable...
22:59:55 <elliott__> Timwi: at the bottom of articles occasionally there's a rating panel thing.
23:00:13 <elliott__> something like "rate the writing", "content", "sources" and then it asks you how much of an expert you think you are in that area, which is just asking for bias
23:00:21 <Timwi> Hm, can’t see it...
23:00:31 <elliott__> it seems to only pop up occasionally
23:00:32 -!- Wamanuz3 has joined.
23:00:59 <Timwi> Right. Well, anyway, I was wondering about esolangs.org, not Wikipedipa :)
23:01:17 <elliott__> a rating system might be interesting, but would be perfectly doable as a separate project
23:01:28 <elliott__> I think the long tail comes in again -- who has a real opinion on the hundreds of esolangs on the wiki?
23:01:31 <elliott__> I have an opinion on a few dozen at most
23:01:47 <elliott__> so I imagine past the top N, it'd be a bit of a mush
23:01:51 <elliott__> but I'd be interested in seeing it, anyway
23:02:05 <elliott__> (it might work better as a "which is better: esolang X or Y?" type thing...)
23:02:19 <Timwi> Well, the main reason I thought of it is because I think the Main Page really needs a “featured esolang”, and this would be a democratic way of selecting one.
23:03:20 <Timwi> I was going to make myself dinner two hours ago, now I’m really hungry, so I think I better do it now.
23:03:24 <elliott__> a featured esolang might be interesting
23:03:34 <elliott__> I don't think the wiki has nearly enough traffic to keep it turning over at a decent rate were it democratic, though
23:03:43 -!- Timwi has changed nick to Timwi-Cooking.
23:03:46 <elliott__> http://esolangs.org/wiki/Special:Popularpages -- it's really quite low-traffic
23:04:16 <Timwi-Cooking> Argh, by linking me to that you’re making me click on some of them, making them even more popular :)
23:04:49 -!- Patashu has joined.
23:05:00 <elliott__> I'm not sure twenty thousand views can count as popular by any measure :)
23:05:07 <elliott__> haha, Deadfish is one of the most popular articles
23:05:09 <Timwi-Cooking> 785 views for Funciton?! That’s surprisingly many! Who are all these people looking at it and not commenting :))
23:07:38 -!- micahjohnston has changed nick to incomprehensibly.
23:08:57 -!- incomprehensibly has changed nick to micahjohnston.
23:09:42 <oerjan> elliott__: maybe it's because of the golf?
23:10:01 <elliott__> oerjan: anagolf isn't /that/ popular, is it?
23:10:12 <elliott__> we just made _that_ _many_ implementations
23:11:05 <elliott__> words of wisdom: <graue> infinite muffins is too expensive and nobody can afford it
23:11:17 <oerjan> i wonder if PopularPages registers if i only look at a diff (as often happens when browsing Recent Changes
23:13:35 <oerjan> i recall Chu-Carroll blogged about it, but maybe he didn't link to the wiki
23:13:50 -!- zzo38 has joined.
23:15:11 <elliott__> is thutu on there? chu-carroll blogged about that too
23:15:33 <oerjan> well i'm speaking about the first page
23:16:19 <oerjan> heck even unlambda isn't (it's #1 on the next page)
23:17:00 <elliott__> so oerjan how are you going to minimise Underload next? Is it TC without )? ;D
23:18:20 <zzo38> ) is a delimiter that matches ( so you now need to change other things too
23:19:26 <oerjan> it was moribund from the start
23:21:29 -!- FireFly has quit (Quit: swatted to death).
23:26:01 <zzo38> The article about Rapture seems like a list like the list in the article about Silly Emplosions except entirely different
23:30:36 <elliott__> google have apparently started to try and capitalise domain names
23:30:43 <elliott__> TvTropes now shows as "tvTropes.org"
23:32:31 <zzo38> elliott__: Are they based on META headings or anything like that?
23:33:01 <zzo38> I really think Google is messing up a lot of things over time it becomes even more mixed up from before
23:33:12 <elliott__> yeah yeah i can predict your opinions on google
23:33:19 <elliott__> except it doesn't just always camelcase the domain it seems...
23:33:33 <elliott__> seems to capitalise the u in "UrbanDictionary"
23:42:21 <Patashu> I think it's showing off how fancily it can detect words now
23:42:26 <Patashu> by detecting words in urls and capitalizing the starts of them
23:42:46 <elliott__> ok testing things with weird pronunciation it gets "deviantART" right, maybe it /is/ based on meta tags in part
23:43:01 -!- Timwi-Cooking has changed nick to Timwi.
23:44:46 <zzo38> Or maybe TITLE or something even if not META, is also possible.
23:45:18 <elliott__> ah yes, google sometimes constructs its own titles after all nowadays
23:46:10 -!- Timwi has quit.
23:52:34 -!- augur has quit (Remote host closed the connection).
00:31:20 -!- augur has joined.
01:01:58 -!- pikhq_ has joined.
01:04:33 -!- pikhq has quit (Ping timeout: 260 seconds).
01:05:17 -!- ralc has quit (Quit: Leaving).
01:19:52 -!- sebbu has joined.
01:19:52 -!- sebbu has quit (Changing host).
01:19:52 -!- sebbu has joined.
01:22:12 <zzo38> How much of a polyglot quine can you write?
01:22:54 -!- sebbu2 has quit (Ping timeout: 246 seconds).
01:49:16 <HackEgo> 85) <@Lawlabee> Why does Monday start at 10PM on Sunday? \ 94) <Dylan> hahaha, Lawlabee is running windows <Lawlabee> 'cuz it's pretty awesome. \ 95) [Warrigal] `addquote <Dylan> hahaha, Lawlabee is running windows <Lawlabee> 'cuz it's pretty awesome. [Lawlabee] Warrigal: :( \ 112) <Warrigal> Making a small shrine to Lawlabee
01:50:37 <HackEgo> 198) <Phantom_Hoover> It's only been 2 months since anyone last made a commit! <alise> WRONG 8 WEEKS
01:51:21 <tswett> We've got some trigraph gaps.
01:51:28 <HackEgo> 62) <Madelon> yay fire! * Madelon combusts spontaneously. \ 79) <oklofok> i use dynamic indentation, i indent lines k times, if they are used O(n^k) times during a run of the program \ 89) <coppro> hmm... does anyone know a nonsense game designed for the mentally handicapped involving yelling \ 106) <scarf> and an AMICED
01:51:44 -!- pikhq_ has quit (Remote host closed the connection).
01:51:44 <HackEgo> 106) <scarf> and an AMICED literal would presumably /add/ info to the source <scarf> whatever info gets added, that's the value that the AMICED doesn't contain <scarf> it's all falling into place
01:56:51 <zzo38> I think it is something in TURKEY BOMB (see the esolang wiki)
01:57:19 <zzo38> AMICED is described as "negative six sevenths of a decimal digit"
02:08:53 -!- variable has joined.
02:10:15 -!- variable has quit (Read error: Operation timed out).
02:11:01 -!- variable has joined.
02:12:15 -!- azaq23 has quit (Quit: Leaving.).
02:12:29 -!- variable has quit (Remote host closed the connection).
02:12:58 <elliott__> oerjan: i just won all the raw pots. all of them.
02:14:16 -!- variable has joined.
02:18:40 -!- elliott has joined.
02:18:40 -!- elliott__ has quit (Read error: Connection reset by peer).
02:23:17 <elliott> Sgeo_: btw if you said anything to elliott__ he probably died before it got through.
02:23:36 <Sgeo_> Last thing I said was Ok.
02:25:30 * oerjan swats himself -----###
02:25:45 <oerjan> READING COMPREHENSION, OERJAN
02:27:05 <zzo38> I went to Victoria yesterday and today because it cannot go tomorrow so I go today instead. It is the good Japanese restaurant, too.
02:29:43 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
02:30:30 <zzo38> They make fish miso soup including noodle, and bowl of beef and eggs and rice together, without putting too much sauce, and make tea with corn, too. Also, it is not necessary to ask them for the spoon.
02:32:56 <zzo38> Do you know about that?
02:33:03 <elliott> i know everything about that.
02:34:07 <zzo38> How do you know? Have you been to Victoria? Have you been to Japanese restaurant there? Have you been to other Japanese restaurant? Have you been in Japanese restaurant in Japan? Have you cooked it yourself?
02:35:35 <zzo38> I looked behind my chair and I didn't find you. Do you mean in the past?
02:41:50 <zzo38> How many hands are you holding up?
02:42:23 <elliott> how can you count....FROREVER
02:43:04 -!- pikhq has joined.
02:43:14 <elliott> pikhq is the headquarters of piks
02:43:19 <elliott> i want a new pik PIKHQ GIVE ME A FUCKING PIK
02:45:49 <elliott> oh my GOD outside birds... why do you make sounds.
02:47:37 <zzo38> The bird is supposed to make sounds! And also people! And wind! And the other stuff!
03:02:36 -!- NihilistDandy has joined.
03:06:14 -!- NihilistDandy has quit (Client Quit).
03:06:21 -!- NihilistDandy has joined.
03:06:23 -!- NihilistDandy has quit (Client Quit).
03:06:40 -!- NihilistDandy has joined.
03:08:31 <oerjan> for being a nihilist he's making a lot of noise
03:09:57 -!- NihilistDandy has quit (Client Quit).
03:10:20 -!- NihilistDandy has joined.
03:11:12 <elliott> NihilistDandy: YOU ARE NOT BEING VERY DANDY AT ALL.
03:12:21 <elliott> AT LEAST I STAY CONNECTED LIKE A TRUE NIHILIST
03:13:29 <elliott> YOU'RE TAKING THIS VERY PERSONALLY FOR A NIHILIST
03:14:11 <NihilistDandy> You've struck to the heart of me. I concede, sirrah.
03:21:25 <zzo38> 3 out of 4 statisticians objected to the small sample size of this study.
03:24:09 <oerjan> 1 out of 1 mathematicians thinks the sample size is just fine
03:25:10 <zzo38> I also played the D&D game while at Victoria although one of the players did not play in this session because the other players did not want them to eat and make all the crumbs fall on the bed
03:28:14 <oerjan> good, good, keep on thinking
03:36:48 <oerjan> i sense much anger in you
03:39:30 <elliott> hmm, can delay/force be implemented in pure Scheme...
03:40:05 <oerjan> pure = without mutation? then i doubt it...
03:40:14 <elliott> no, pure as in without extensions
03:40:26 <elliott> but actually the report provides one :-)
03:40:54 -!- elliott has quit (Remote host closed the connection).
03:40:58 -!- elliott_ has joined.
03:41:35 <elliott_> does Scheme define any other "unspecified types" like it does promises, I wonder
03:41:44 <elliott_> i.e. it's perfectly fine for a promise to be a pair, a string, a procedure, anything
03:41:48 <elliott_> so you can't actually distinguish promises portably...
03:52:38 <pikhq> My computer's sensors claim that the +5V line out of the PSU is outputting +3.04V, and the +12V line +4.08V...
03:52:47 <pikhq> I *highly* doubt that that's true.
03:53:12 <pikhq> Pretty sure my RAM would be randomised.
03:53:36 <elliott_> pikhq: Hey, what's the playstation two emulation state like.
03:53:49 <elliott_> I realise the only thing that'll work is HLE but are there any?
03:53:58 <elliott_> Googling suggests there's, like, a handful, but god knows how good they are.
03:54:04 <pikhq> PCSX2 is the only PS2 emulator.
03:54:22 <elliott_> That's the one I'm looking at -- but, er, google suggests otherwise.
03:54:31 <pikhq> It requires a decent computer & graphics card, but it seems to have decent compatibility.
03:54:39 <pikhq> It's the only one that you're going to actually play games with.
03:55:47 <elliott_> I should just buy a bunch of consoles and hook them up to a network somehow rather than trying to emulate them.
03:55:57 <pikhq> They're reporting 65% playability rate on the PS2 library with the latest release...
03:56:20 <pikhq> Which is actually a pretty astounding feat considering how much of a fucking pain the PS2 is.
03:56:26 <elliott_> The only question is, will it run on this laptop?
03:56:33 <pikhq> What's your CPU and GPU?
03:56:56 <elliott_> My CPU = 2.13GHz Intel Core 2 Duo processor with 6MB shared L2 cache
03:57:06 <pikhq> CPU is good enough.
03:57:08 <elliott_> And it's a MacBook Air, so it's probably not the latest Core 2 model either... (but it is the new model.)
03:57:23 <elliott_> NVIDIA GeForce 320M graphics processor with 256MB of DDR3 SDRAM shared with main memory3
03:57:34 <pikhq> Mmmm, decent chance of it working.
03:57:38 <elliott_> It's meant to be the best integrated laptop GPU or something like that, which is like being the best... mediocre thing.
03:57:56 <elliott_> But hey, it can do Minecraft on Far/Fancy with a bunch of graphical mods at >hundred fps, SO CLEARLY IT'S A SPEED DEMON.
03:58:22 <elliott_> Hmm, aren't PS2 games distributed on DVDs?
03:58:31 <pikhq> With a few exceptions.
03:58:33 <elliott_> Please tell me they're mostly the four gig kind.
03:58:46 <pikhq> (the PS2 will also read PS2 games on CD-ROM; this was not much used)
03:58:51 <elliott_> The time it would take to download 9 gigabytes exceeds the enjoyment I could possibly glean from any game.
03:58:55 <pikhq> They're mostly the 4 gig kind.
03:59:09 <elliott_> I might give it a go later then.
04:00:02 <pikhq> Remember, this thing came out in *2000*.
04:00:33 <elliott_> Yeaaaah, but it came from /Japan/ and even /they/ got it from visiting technological space aliens.
04:00:40 <pikhq> At the time, developers were probably having trouble thinking up ways to use 4 gigs...
04:00:55 <pikhq> With the exception of Square, which was probably highly tempted to make FFX a 2-disc game.
04:00:55 <elliott_> As opposed to Luddite space aliens that rode in on a wagon.
04:01:42 <zzo38> 4 gigs is way more than enough for most things (other than movies)
04:02:24 <elliott_> zzo38: games are getting more and more cinematic...
04:02:25 <pikhq> zzo38: Yeah, most of the space for modern games is video and audio. Code is negligible.
04:02:31 <zzo38> elliott_: If it takes too long to download, purchase the CD or DVD of it (if you have money and can find to purchase)
04:02:39 <elliott_> zzo38: i don't have a CD/DVD drive
04:03:28 <zzo38> OK. That is one reason to download the copy from elsewise.
04:03:31 <pikhq> Also, 4 gigs is way more than enough for movies if you don't mind it being SD, and can use x264.
04:03:48 <zzo38> Yes, including from elsewise.
04:04:14 <pikhq> Well, if you want full 1080p, 4 to 8G is entirely reasonable.
04:04:23 <pikhq> If and only if you can use x264, of course.
04:04:41 <elliott_> sure wish H.264 wasn't encumbered
04:04:45 <zzo38> pikhq: I don't mind it being SD but I want to use a format that is not patented.
04:05:04 <pikhq> Such a shame H.264 is encumbered.
04:05:15 <elliott_> OTOH, if you're committing an act of piracy, who cares :-P
04:05:15 <pikhq> Because x264 is so *ridiculously* far ahead of the competition.
04:05:37 <zzo38> Then wait for patent to expire before using it, if it is patented
04:06:15 <pikhq> zzo38: Only in the past year have patents that were first made in my lifetime started to expire.
04:06:21 <elliott_> pikhq: speaking of x264, after the ffmpeg/libav drama I joined the channels of both and DarkShikari took the wrong side and I was sad but then I realised WOW that is a really stupid thing to be sad about and reconsidered my life decisions and it turns out I'm a terrible person, hi
04:06:58 <pikhq> elliott_: DarkShikari probably took the side with the most technical merit, politics be damned.
04:07:09 <elliott_> they're both nearly identical :P
04:07:34 <pikhq> YOU AND YOUR "FORKS HAVEN'T DIVERGED YET"
04:08:01 <elliott_> yeah i just don't think i can ever use libav with the ridiculous childishness i saw on the lists
04:08:08 <zzo38> I think many games have too much movies in it, it not only uses up disk space but also time, you have to watch the movie to understand the game and you cannot skip it, too bad!
04:08:19 <elliott_> pikhq: didn't i already tell you about this??
04:08:31 <elliott_> they basically rewrote the ffmpeg website because they had the commit bit, to have them as the new core team
04:08:35 <elliott_> because changing it on the website makes it true
04:08:39 <zzo38> Make a game where maybe only 1% consists of audio/video and special effects on screen
04:08:53 <elliott_> so then after this coup d'etat was reverted, they decided to "change the name of ffmpeg" (read: fork the project to get rid of the maintainer)
04:08:56 <elliott_> pikhq: so they set up new mailing lists
04:08:58 <pikhq> zzo38: I think that games are focusing way too much on shiny bits over substance, personally.
04:09:04 <elliott_> pikhq: then /automatically subscribed every single person on the ffmpeg list to the new libav/
04:09:07 <elliott_> pikhq: then /automatically subscribed every single person on the ffmpeg list to the new libav list/
04:09:19 <elliott_> pikhq: and then /posted on the ffmpeg list saying they were "renaming the list, so it would be shutting down in a few days"/
04:09:35 <pikhq> elliott_: ... *Jeeze*.
04:09:40 <zzo38> pikhq: Yes, I think so, too. Mostly because many people don't know a lot of things about game design (including mathematical things about game design, but not limited to that).
04:09:47 <elliott_> fork instead? PRETEND IT'S A RENAME
04:09:59 <elliott_> and try and technologically destroy your parent project
04:10:19 <pikhq> zzo38: And not even just talking about gameplay. You can see the same thing with game plots.
04:10:57 <pikhq> zzo38: "Deep, involved story? Nah, let's just put a few bishōnen in the cast and spend a few extra million on CGI, and call it a day."
04:11:25 <elliott_> speaking of the games industry, i can't believe telltale games are still afloat
04:11:28 <zzo38> pikhq: Depending on the game, some kind of game don't need too much of involved story, however.
04:11:46 <pikhq> zzo38: True, but some kinds do.
04:13:21 <zzo38> A puzzle game doesn't need a story, except for text adventure games including puzzles. I also consider text-adventure games to be the closest kind to role-playing games (such as Dungeons&Dragons), which also should have some kinds of stories although it can be modified.
04:14:01 <zzo38> I also wrote a article about some things about computer game design, in my gopher server.
04:14:10 <zzo38> And I would like your opinion of this article, too.
04:16:38 <zzo38> I am sure I wrote some things that some people will disagree with, although some of this disagreement will be due to not understanding it.
04:22:06 <zzo38> elliott_: I was trying to ask pikhq (not you), but that is OK too, since it is public message and anyone is allowed to answer and/or complain about it.
04:24:23 <zzo38> Oops! Too bad, I forgot to write the URL(s)!!!
04:24:40 <zzo38> Therefore maybe you have to guess
04:26:22 <zzo38> Do you agree, that in Caverns of Zeux, you have unlimited
04:26:33 <zzo38> Do you agree, that in Caverns of Zeux, you have unlimited in Caverns of Zeux, you have unlimited
04:26:56 <zzo38> Do you agree, that in Caverns of Zeux, you have unlimited ammunition, which ruins this system of scoring?
04:36:22 <zzo38> (Received blank message from client)
04:36:46 <elliott_> -zzo38/#esoteric- (Received blank message from client)
04:40:52 <zzo38> elliott_: Do you have any opinions of computer games design? Either way, make up one computer game that has its own opinions of computer games design.
04:40:55 <elliott_> zzo38: i take it the message was not actually blank?
04:41:23 <zzo38> elliott_: Message? Do you mean the message that says "(Received blank message from client)"?
04:43:03 <zzo38> Yes, it was not actually blank. I did type those words in.
05:02:54 -!- zzo38 has quit (Quit: <CTCP>AWAY<CTCP>).
05:29:52 <CakeProphet> you know what would be amazing? A function that converts a Perl regex into a Parsec parser.
05:39:15 <elliott_> Parsec parsers are easier to write than regexps.
05:49:26 -!- pikhq has quit (Ping timeout: 240 seconds).
05:51:52 -!- pikhq has joined.
05:52:02 -!- wareya has joined.
05:52:05 <pikhq> Well, that was fun.
05:52:20 <pikhq> Kernel panic, sysrq didn't work.
05:55:03 -!- wareya_ has quit (Ping timeout: 252 seconds).
06:01:07 <Sgeo_> Is sysrq supposed to work during kernel panic? If so, how can there be a kernel panic where it doesn't work, that's scary
06:02:45 <pikhq> Sysrq works as long as the *keyboard driver* works.
06:02:52 <pikhq> It is very, very low level.
06:06:07 -!- oerjan has quit (Quit: Good night).
06:14:06 -!- Lymia has quit (Ping timeout: 246 seconds).
06:16:01 <elliott_> pikhq: Clearly we need a Sysrq that works EVEN IF THE KEYBOARD DRIVER DOESN'T
06:16:16 <elliott_> Morse code on the power button, perhaps?
06:20:59 <pikhq> elliott_: You're not going to get anything to work without some CPU modification.
06:21:23 <pikhq> At minimum, an absolutely unavoidable interrupt.
06:22:03 <olsner> the bios could set up a system management interrupt
06:22:25 <olsner> that's almost impossible for the operating system to work around
06:26:15 -!- sebbu has quit (Read error: Connection reset by peer).
06:26:44 -!- sebbu has joined.
06:26:44 -!- sebbu has quit (Changing host).
06:26:44 -!- sebbu has joined.
06:27:29 <elliott_> olsner: yes but it's also impossible for it to _react_ to :D
06:31:31 <olsner> just put code in bios to handle the magic sysrq for every version and configuration of linux and any other operating system
06:36:23 -!- Lymia has joined.
06:36:23 -!- Lymia has quit (Changing host).
06:36:23 -!- Lymia has joined.
07:17:52 <pikhq> Just wire an interrupt line to the keyboard.
07:18:07 <pikhq> Make it unmaskable.
07:18:45 <elliott_> make it fire even if interrupts are off ;D
07:18:53 <elliott_> pikhq: Label the button "PANIC".
07:19:05 -!- ais523 has joined.
07:19:24 <Lymia> elliott_, and what would it do?
07:19:28 <ais523> I'm going to spend all day marking exams
07:19:35 <elliott_> Lymia: Fire an unmaskable interrupt.
07:19:35 <ais523> but I came in here before the marking session starts
07:19:40 <Lymia> From.. a keyboard.
07:19:44 <elliott_> ais523: get us to mark them for you, it'll be GREAT
07:19:53 <elliott_> Lymia: It's for when magic sysrq would fail.
07:19:59 <ais523> elliott_: I think that would violate some sort of data protection law
07:20:18 <Lymia> ais523, get a program to do it for you.
07:21:11 <ais523> first-year programming (specifically Java)
07:21:19 <ais523> although it's more about the concepts than the languages
07:21:42 <Lymia> If the exam was written right, you could automatically grade "write code" segments, couldn't you?
07:22:13 <Lymia> Or... is it on paper.
07:22:16 <ais523> only if the student got it right
07:22:19 <ais523> and it's on paper, ofc
07:22:25 <Lymia> No code on it, right?
07:22:32 <ais523> (working out how many marks to give to a partially wrong answer is hard to do automatically)
07:22:38 <ais523> and of course there's code on it, it's a programming exam
07:23:15 <elliott_> ais523: what, those poor kids have to /code/ on /paper/? that's a violation of some kind of international law, isn't it?
07:23:39 <ais523> elliott_: it's to stop them randomly typing stuff into NetBeans in the hope of triggering the autocomplete
07:24:45 <Lymia> ais523, what kinds of questions are used?
07:25:00 <ais523> e.g. a C programmer assuming that "sizeof" was invalid, and trying to use "size_t" instead, because "sizeof" wasn't in the autocomplete
07:25:06 <elliott_> ais523: int x = malloc size_t(sizeof). printf(x\n);
07:25:23 <ais523> Lymia: some of it's about the basics; arithmetic, recursion, OO concepts (the Java version thereof), etc
07:25:48 <ais523> we teach recursion before iteration here, which is a little bizarre as Java teaching goes
07:26:12 <Lymia> Sounds a little dangerous.
07:26:35 <elliott_> ais523: Why on earth would you teach a low-level concept of recursion so early? :-)
07:26:43 <elliott_> Do you teach them about microcode and branch prediction too? ;D
07:26:50 <Lymia> Mostly with recursion (supposedly) being harder to get, and the danger of a stack overflow with long enough loops.
07:26:58 <elliott_> Lymia: no way is recursion "harder to get"
07:27:07 <Lymia> I guess the language with recursion is simpler.
07:27:10 <elliott_> the only people who think that are
07:27:19 <elliott_> - people who haven't coded in a functional language before
07:27:25 <Lymia> if/function calls/arithmetic/etc
07:27:25 <ais523> elliott_: well, many people seem to miss it, especially if taught iteration first
07:27:33 <elliott_> - students who's problem is terrible teaching, not recursion
07:27:38 <elliott_> - people who just want to whine :)
07:27:40 <ais523> but if you see the number of ways people mess up for loops, you can see that iteration can be just as tricky
07:27:51 <elliott_> ais523: Oh, iteration is just a lower-level way of expressing the same thing.
07:27:52 <Lymia> ais523, worse than off-by-one errors?
07:28:03 <elliott_> I'm being a snarky FP douchebag here; higher-order combinators are where it's at.
07:28:07 <elliott_> Why recurse when you can unfold?
07:28:37 <ais523> higher-order combinators are really nasty to write in Java (although possible)
07:28:48 <ais523> that said, I wrote a couple of higher-order functions in C recently
07:28:59 <Lymia> When's Java 8 going to be out anyways.
07:29:06 <Lymia> Lambda expressions would be really useful.
07:29:11 <ais523> they were a mess of casts as they had one of those infinite types that Haskell dislikes
07:29:34 <elliott_> Lymia: it's available from your local Consider The Bad Life Choices You Have Made That Have Resulted In You Programming Java store.
07:29:53 <elliott_> I suggest Existential Crisis Two Point Oh as a useful program to go with it.
07:30:21 <Lymia> I hope Java 8's out by the time I get any kind of (Java) programming job.
07:30:43 <elliott_> Lymia: You think they'll upgrade their infrastructure that quickly?
07:30:45 <Lymia> elliott_, what language do you prefer?
07:30:48 <elliott_> there are shops still on one-point-four.
07:31:08 <elliott_> Java onepointfour, shut up, my number keys are broken.
07:31:15 <elliott_> <Lymia> elliott_, what language do you prefer?
07:31:39 <elliott_> I'm usually a Haskell weenie :P
07:32:04 <Lymia> I still need to get around to doing something serious with that.
07:32:21 <elliott_> What can be more serious than SHIRO??????
07:33:06 <elliott_> Lymia: Shiro, the best Funge-9eight interpreter this side of reality/
07:33:15 <elliott_> THOUSANDS OF LINES OF VERY SERIOUS HASKELL
07:33:40 <elliott_> Totals grouped by language (dominant language first):
07:33:45 <elliott_> I distinctly recall it being longer.
07:33:53 <elliott_> That... does that actually include all of my fingerprints?
07:34:27 <Lymia> I wonder how your average Java shop would react to code with more functional stuff than otherwise, or clojure.jar
07:34:41 <elliott_> insert vague anti-clojure sentiment
07:34:53 <elliott_> although it's probably better than scala :)
07:34:58 <ais523> elliott_: that seems a remarkably general objection
07:35:05 <Lymia> The reaction or language?
07:35:31 <elliott_> I have a general objection to PHP too, general-anti-language-objections aren't uncommon
07:35:36 <ais523> elliott_: yes, I mentally inserted a vague anti-clojure sentiment, then replied to it
07:35:39 <elliott_> although my dislike of Clojure is too mild for me really to care
07:37:35 <elliott_> Yes, I too am thoroughly enjoying being deranged.
07:37:50 <elliott_> I shouldn't mock Perl, it's like stealing the disabled parking space :(
07:38:06 <CakeProphet> you have to be kind of crazy to enjoy Perl.
07:38:23 <monqy> I like perl in that it's hilarious
07:38:27 <CakeProphet> but really it's quite nice. I decided to learn it a few weeks ago by doing a bunch of random projects with it, and so far it's been amazing.
07:38:32 <monqy> fun but nightmarish
07:38:34 <Lymia> Perl is useful for golf
07:38:51 <Lymia> And string processing.
07:38:51 <elliott_> CakeProphet: indeed, I too sometimes take copious amounts of drugs and end up intoxicated for several weeks in a haze of insanity.
07:38:54 <elliott_> Disclaimer: This is not actually the case.
07:39:21 <CakeProphet> I guess from a language design standpoint it's pretty bad, but... it's so good at what it does.
07:39:42 <Lymia> elliott_, I will force you to use BASIC.
07:39:50 <elliott_> Lymia: I like QBASIC. It makes me happy.
07:40:01 <Lymia> Basic of the Visual type.
07:41:00 <CakeProphet> ..but I've noticed since using Perl I've started using regex for almost every string processing task ever.
07:41:51 <CakeProphet> which I guess isn't really a bad thing. It's only bad when I have to use something other than Perl, I guess.
07:41:52 <elliott_> CakeProphet: And how many problems do you have now?
07:42:33 <elliott_> CakeProphet: Nonsense, they've clearly doubled.
07:43:05 <elliott_> I'm going to assume you haven't seen the famous quote then.
07:43:14 <CakeProphet> people who suck at reading and using regex just complain when other people use regex to do amazing things.
07:43:21 <CakeProphet> elliott_: I have, I just posit that it is wrong.
07:43:47 <elliott_> I can read, understand, and write advanced regexps perfectly well; that doesn't mean I don't think they're not a completely awkward syntax for all but the most simple of expressions.
07:44:35 <Lymia> With regexes being a part of Perl's syntax, couldn't you just break down the regex into components?
07:44:57 <elliott_> You mean... some kind of... abstract... syntax... tree?
07:46:02 <CakeProphet> true, but for most simple tasks regex beats alternatives. And really in #esolang you can't complain about awkward syntax. :D
07:46:16 <elliott_> I think you may be confused as to what channel this is.
07:46:32 <elliott_> Anyway I don't do my programming in /// for a reason, so mentioning the channel name is silly :P
07:47:13 <elliott_> You're lucky # isn't a metacharacter (unless the x flag is on).
07:47:19 <CakeProphet> elliott_: well yes, it would be silly to think that regex is a programming language.
07:47:28 <CakeProphet> elliott_: if it were I would have escaped it.
07:47:41 <elliott_> It /is/, though, it's an embedded domain-specific language.
07:48:02 <elliott_> Perl six is redesigning the syntax for a reason.
07:48:40 <CakeProphet> elliott_: technically correct, sure. But it's not turing complete unless you're in Perl. I was referring to turing complete programming languages. You know, the ones that most people think of when they hear the phrase programming language.
07:48:57 <elliott_> actually, perl regexps are tc.
07:50:15 <CakeProphet> though isn't it only because of the @{[]} feature? I guess that's technically not part of the regex syntax, but just perl string interpolation, actually.
07:50:27 <elliott_> There's a more explicit perl embedding thing.
07:50:31 <elliott_> (??{...}) I think. ais523 knows.
07:50:46 <elliott_> But it's still pretty powerful even without that
07:50:57 <CakeProphet> ?? is delayed execution of Perl code. Makes it possible to do recursive patterns.
07:50:57 <lambdabot> is delayed execution of Perl code. Makes it possible to do recursive patterns.
07:50:59 <elliott_> It can do parenthesis matching, aNbN, etc.
07:51:09 <ais523> embedded Perl is actually (?{...})
07:51:23 <elliott_> CakeProphet: also lets you write a debugger
07:51:26 <ais523> (??{...}) instead embeds Perl, then interprets the result as a regex, so it was mostly used for recursion
07:51:30 <elliott_> http://perl.plover.com/Rx/paper/
07:51:32 <ais523> but (?R) is the usual way to do that nowadays
07:51:50 <CakeProphet> ais523: oh really? not familiar with that option.
07:52:04 <ais523> recursion by itself isn't enough to make regex TC, though, I think
07:52:11 <ais523> because there's no way to do the storage required
07:52:35 <CakeProphet> yeah I don't see how you could model a Turing machine with regex.
07:54:08 <CakeProphet> one problem I would think is that it has a limited means of output. Usually a success or failure, or with s/// a substitution count.
07:54:31 <elliott_> repeated regexp is tc obviously
07:55:13 <CakeProphet> uh, I don't know what that acronym stands for.
07:57:04 <monqy> bitwise cyclic tag? sometimes I memorise catchy acronyms and I guess that's one of them
07:57:38 <CakeProphet> elliott_: I think we have different definitions of obvious..
07:57:55 <elliott_> regexps can trivially do single steps of bct
07:58:00 <elliott_> repeating it equates to running a bct program
07:58:16 <elliott_> do = with s/// on the combined program<>data string
08:00:06 <elliott_> repeated regexp as in regexp in a for(;;) loop.
08:00:31 <CakeProphet> how does that imply that Perl regex as a language is Turing complete, if you're using a for loop?
08:00:54 <elliott_> please look at the actual claims i'm making
08:02:00 <CakeProphet> ah. you did indeed say "repeated regex", though at the time I thought that meant something completely different.
08:02:51 -!- ais523 has quit (Remote host closed the connection).
08:06:49 <CakeProphet> so we're not even talking about the turing completeness of regex anymore. derailed.
08:08:08 -!- Patashu has joined.
08:16:43 -!- monqy has quit (Quit: hello).
08:32:29 -!- ralc has joined.
08:50:16 -!- Phantom_Hoover has joined.
08:50:19 <lambdabot> Phantom_Hoover: You have 6 new messages. '/msg lambdabot @messages' to read them.
08:54:01 -!- Phantom_Hoover has quit (Client Quit).
08:54:18 <elliott_> i'm so glad ph came to dispense his wisdom
09:08:50 -!- Tritonio has joined.
09:40:53 -!- Phantom_Hoover has joined.
10:13:20 -!- comex has quit (Ping timeout: 240 seconds).
10:28:39 -!- sebbu2 has joined.
10:28:40 -!- sebbu2 has quit (Changing host).
10:28:40 -!- sebbu2 has joined.
10:31:57 -!- sebbu has quit (Ping timeout: 244 seconds).
10:31:57 -!- sebbu2 has changed nick to sebbu.
10:45:13 -!- comex has joined.
10:55:30 <Phantom_Hoover> 23:03:34: <elliott__> I don't think the wiki has nearly enough traffic to keep it turning over at a decent rate were it democratic, though
10:55:56 <Phantom_Hoover> Clearly we should just select an esolang here with the RationalWiki Method Of Deciding Things.
11:07:37 -!- Phantom_Hoover has quit (Quit: Page closed).
11:07:41 -!- cheater__ has joined.
11:08:49 <cheater__> mac-fail of the day: the only replacement for hte shitty terminal app is even shittier
11:25:10 -!- ralc has quit (Ping timeout: 244 seconds).
11:42:17 -!- augur has quit (Remote host closed the connection).
11:45:34 -!- Maxdamantus has joined.
11:46:16 <Maxdamantus> jw, has anyone made an interesting VM of some sort in brainfuck or similar?
11:46:30 <Maxdamantus> (one that lets you program in a non-BF manner)
11:47:23 <Maxdamantus> (eg, by allocating objects and storing values in them, where a value would be some sort of integer or pointer to object)
11:47:36 <elliott_> people have written interpreters.
11:47:42 <elliott_> vms are just interpreters of a bytecode :)
11:47:51 <Maxdamantus> (and where allocation of objects will be unrestricted, thus making it turing complete)
11:49:07 <elliott_> well, again, that's just a specific type of interpreter :)
11:49:14 <elliott_> there are certainly interpreters of tc languages in bf
11:51:53 <elliott_> see http://esolangs.org/wiki/EsoInterpreters
11:52:09 <elliott_> hm there's a surprising lack there
11:52:12 -!- sebbu has quit (Read error: Connection reset by peer).
11:52:15 <elliott_> i know they exist, but evidently not on that page :)
11:52:26 <elliott_> the bct one still counts though
11:52:42 <elliott_> also see http://esoteric.sange.fi/brainfuck/bf-source/prog/
11:52:45 -!- sebbu has joined.
11:52:52 <elliott_> game of life counts if it's infinite
11:53:05 <elliott_> being a universal turing machine
11:53:24 <elliott_> and ofc there is the dbfi self-interpreter :-)
11:56:58 <Sgeo_> Why is MSPA Wiki so slow
11:57:26 <Sgeo_> Or maybe it's my comp
11:57:37 <Sgeo_> Just having troubl with the pages for some reason
11:59:17 -!- FireFly has joined.
12:07:02 -!- augur has joined.
12:12:02 -!- elliott_ has quit (Remote host closed the connection).
12:12:27 -!- elliott has joined.
12:13:42 * elliott reads some Coding Horror to restore his hate in humanity.
12:15:39 <elliott> "That was the day I officially stopped caring what version Chrome is."
12:33:46 -!- Slereah_ has joined.
12:34:55 -!- Slereah has quit (Ping timeout: 244 seconds).
12:58:54 -!- elliott has quit (Remote host closed the connection).
12:58:55 -!- elliott_ has joined.
13:05:24 <Patashu> the writer of coding horror or the people's work who get featured on it restore your hate?
13:07:58 <elliott_> i don't think you understand what coding horror is
13:08:04 <elliott_> (it has nothing to do with coding horrors and is nothing like the daily wtf or anything)
13:08:16 <elliott_> it's jeff atwood's personal insult to intelligence and humanity and, also, matter
13:08:21 <elliott_> yes. it is so bad it discredits matter.
13:16:28 -!- sebbu2 has joined.
13:19:50 -!- sebbu has quit (Ping timeout: 252 seconds).
13:26:01 -!- sebbu has joined.
13:26:01 -!- sebbu has quit (Changing host).
13:26:01 -!- sebbu has joined.
13:29:44 -!- sebbu2 has quit (Ping timeout: 252 seconds).
13:32:38 -!- Patashu has quit (Ping timeout: 276 seconds).
13:37:27 -!- ais523 has joined.
13:39:33 <ais523> ouch, I still have that headache from a particularly bad answer to a question
13:40:30 <ais523> here's the gist of what happened: the question had two functions, each of which just did arithmetic on their argument and returned the result
13:40:50 <ais523> they were identical except that one took an int as an argument, and the other took a double
13:41:05 <ais523> (it was one of those questions that tests whether people know the difference between integer and floatingpoint division)
13:41:18 <ais523> and the question asked "do these functions return the same result?"
13:41:26 <ais523> most students answered "yes" or "no" ("no" was correct)
13:41:46 <ais523> this student, however, copied the question, then wrote two more functions with the same names as the first two
13:42:07 <ais523> the first of the new ones had the same semantics as the first in the question, just rearranged
13:42:30 <ais523> the second was identical to the first new one, except there was an extra multiplication by 2 (or rather, an existing constant was doubled)
13:43:08 <ais523> and the answer was along the lines of, "the first function returns the same result because I just rearranged it, the second one doesn't because it's double"
13:43:22 <ais523> my head is still hurting
13:44:22 <ais523> oh dear, I think the shock killed elliott_ too
13:45:11 <elliott_> You need to track them down and have a breakdown while screaming "WHAT IS WRONG WITH YOU?? WHYYYYYYYYYYYYYY".
13:45:30 <ais523> I pity any logreaders who stumble across this
13:47:01 -!- BeholdMyGlory has joined.
13:48:49 -!- Tritonio has quit (Quit: Leaving).
13:51:13 -!- augur has quit (Read error: Connection reset by peer).
13:54:36 -!- augur has joined.
14:02:30 <ais523> hmm, I think it broke cheater__ too
14:12:58 -!- sebbu2 has joined.
14:12:58 -!- sebbu2 has quit (Changing host).
14:12:58 -!- sebbu2 has joined.
14:16:21 -!- sebbu has quit (Ping timeout: 260 seconds).
14:16:22 -!- sebbu2 has changed nick to sebbu.
14:18:46 <ais523> hmm, which reminds me, was there any reaction from the person advertising the rapture as to why he isn't in heaven yet?
14:20:50 -!- ineiros has quit (Ping timeout: 240 seconds).
14:20:59 -!- MigoMipo has joined.
14:23:01 -!- ineiros has joined.
14:23:17 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:45:52 <cheater__> ais523: no idea, but you should find out, it sounds interesting
14:46:00 -!- azaq23 has joined.
14:49:13 -!- copumpkin has joined.
14:59:15 -!- sebbu has quit (Read error: Connection reset by peer).
14:59:46 -!- sebbu has joined.
14:59:46 -!- sebbu has quit (Changing host).
14:59:46 -!- sebbu has joined.
15:03:56 -!- Phantom_Hoover has joined.
15:05:38 -!- pumpkin has joined.
15:07:21 -!- copumpkin has quit (Ping timeout: 255 seconds).
15:14:39 <ais523> Wind: West / Southwest - 20.7 mph
15:14:46 <ais523> presumably it's even windier in Scotland
15:17:24 <Phantom_Hoover> http://www.reddit.com/r/reddit.com/comments/hhsu8/its_official_i_have_no_life/
15:18:03 <Phantom_Hoover> I like the way half the comments are pathetic failures at self-aware humour about the fact that the poster is female.
15:28:30 -!- sebbu2 has joined.
15:28:30 -!- sebbu2 has quit (Changing host).
15:28:30 -!- sebbu2 has joined.
15:31:36 -!- sebbu has quit (Ping timeout: 260 seconds).
15:31:41 -!- sebbu2 has changed nick to sebbu.
15:40:47 <Phantom_Hoover> Make a pen, one end of which has an inked stamp saying "×10".
15:41:37 -!- cheater__ has quit (Ping timeout: 240 seconds).
15:41:44 <elliott_> Phantom_Hoover: We should make one for mathematicians too, although it might be hard to fit "The proof of this is left as an exercise to the reader." on.
15:43:09 <variable> elliott_: I have the most remarkable proof but this pen is too small....
15:44:55 <Phantom_Hoover> Perhaps with the money from these inventions I can make my Ludicrously Rare Things.
15:51:38 -!- cheater__ has joined.
16:02:14 -!- pumpkin has quit (Ping timeout: 250 seconds).
16:04:07 -!- copumpkin has joined.
16:04:09 -!- copumpkin has quit (Changing host).
16:04:09 -!- copumpkin has joined.
16:31:54 -!- Vorpal has joined.
16:40:17 -!- pumpkin has joined.
16:43:02 -!- copumpkin has quit (Ping timeout: 252 seconds).
16:50:48 -!- BeholdMyGlory has quit (Remote host closed the connection).
16:51:05 -!- BeholdMyGlory has joined.
16:59:17 -!- monqy has joined.
17:05:55 * pikhq is pleasantly surprised at some of the GNU extensions tcc can handle
17:06:11 <pikhq> It actually does GNU's statement expressions.
17:07:03 <ais523> that's quite easy, isn't it, though?
17:07:19 <ais523> statement/expression distinctions aren't really necessary for a language
17:07:20 -!- cheater__ has quit (Ping timeout: 240 seconds).
17:07:32 <pikhq> Yeah, *but* it's not exactly something you expect a minimal C compiler to do.
17:12:34 -!- cheater__ has joined.
17:22:21 -!- zzo38 has joined.
17:23:28 <zzo38> Some people ask me questions such as "Practicing writing shitty programs with shitty tools originally intended as jokes and only actually implemented because computer geeks have no sense of humor? ... why would you want to practice that? "?
17:24:29 -!- Slereah_ has quit (Ping timeout: 276 seconds).
17:24:48 <pikhq> Isn't half the point of esolangs that they're fun to fuck around with?
17:25:22 -!- Slereah has joined.
17:25:55 <zzo38> pikhq: Yes, I think so
17:27:57 <zzo38> Did I write shitty TeX program?
17:28:05 <zzo38> http://forums.thedailywtf.com/forums/p/24383/254898.aspx#254898
17:33:44 <zzo38> Now what you *you* think??????????????????????????????
17:35:59 -!- iamcal has quit (Remote host closed the connection).
17:39:23 -!- cheater__ has quit (Quit: This computer has gone to sleep).
17:40:12 -!- cheater__ has joined.
17:46:59 <elliott_> asdfqasdfqasdfqasdfqasdfQASDFAFQASFQWQSDFQASFDSDWQASFQ
17:48:00 <zzo38> elliott_: What do you mean by that?
17:52:42 <zzo38> Do you know what is happening here? http://zzo38computer.cjb.net/img_14/desktopdesktop.png
17:52:53 <zzo38> (Note: not my computer)
17:53:48 <zzo38> Lymia: Yes that is one part of it.
17:54:25 <fizzie> Perhaps the user installed Microsoft Office? I mean, offices typically have lots of desks...
17:56:10 <elliott_> what happened is that zzo38 a desk
17:56:59 <Phantom_Hoover> Oh god has elliott_'s radiant smoothness claimed another life,
17:57:14 -!- cheater__ has quit (Quit: This computer has gone to sleep).
17:57:59 -!- cheater__ has joined.
17:58:23 <zzo38> How many hands am I holding up in 5 seconds from now?
17:59:29 -!- cheater__ has quit (Client Quit).
17:59:40 <Phantom_Hoover> zzo38, was the IRC channel the idiot mentioned #esoteric?
18:01:51 <elliott_> ">Most people that use it use LaTeX (or XePDFeLaTeX or whatever)
18:01:51 <elliott_> Yeah... obviously most people use thing nobody except open source freaks have ever heard of."
18:01:54 <elliott_> this guy cant actually read can he
18:02:12 -!- cal153 has joined.
18:02:19 -!- cal153 has quit (Client Quit).
18:04:05 <elliott_> being stupid is its own punishment
18:04:11 <elliott_> but maybe the punishment isnt harsh enough
18:04:39 <Phantom_Hoover> "I don't feel I "know" any languages. JavaScript has been my bread and butter for like 6 years now, and I still learn new things about it."
18:08:52 <zzo38> They didn't mention any IRC channel, but was refering to the mention of +TEXNICARD
18:17:59 -!- augur has quit (Remote host closed the connection).
18:19:50 -!- azaq23 has quit (Ping timeout: 252 seconds).
18:25:22 -!- iamcal has joined.
18:28:47 -!- azaq23 has joined.
18:31:41 <zzo38> All he [SpectateSwamp]rebukes with is something about us being perfect-perfects and that UNIX somehow prevents "the common people" from sharing knowledge.
18:33:03 <ais523> you mentioned SpectateSwamp in here?
18:33:56 <Phantom_Hoover> It seems to have aroused EMOTIONS in ais, so it must be IMPORTANT.
18:38:16 <zzo38> Note that I have mentioned that UNIX already has enough things (you might add a few more minor things) to do most of the stuff needed that you do not need SSDS (a badly designed program anyways). He has claimed the "random" feature is important for viewing photographs in a 5000+ family photo album. In Linux try this: display `ls | shuf | head -1`
18:39:15 <zzo38> Or, I guess, shuf -n1
18:39:17 <ais523> Phantom_Hoover: seriously, you don't want to know
18:39:30 <ais523> zzo38: try not to take SpectateSwamp seriously
18:39:35 <ais523> he might believe what he's saying, but most people don't
18:40:00 <ais523> and rebutting his points is kind-of pointless, as he mostly won't care and everyone else can see the problems with them already
18:40:47 <ais523> Phantom_Hoover: if you're really curious, I imagine you can discover all you need to know via Google, although I admit I haven't actually tried
18:41:33 <fizzie> Googlehit #4 (for me, anyway): "Download Spectate Swamp Search full keygen crack serial patch"
18:42:00 <zzo38> Or possibly this: display `shuf -en1 *.jpg`
18:42:48 <fizzie> The name sounds eerily familiar, but I can't recall any details. (Maybe a coping mechanism of some sort?)
18:43:46 <zzo38> fizzie: A keygen or crack is not necessary, it is open source (public domain), although he failed to package it correctly, even when told how to do so.
18:45:02 -!- augur has joined.
18:45:45 <Phantom_Hoover> Also, one of the first results is "Is SpectateSwamp a real person?"
18:46:18 <ais523> Phantom_Hoover: SSDS isn't exactly... a typical desktop search program
18:46:36 <ais523> it involves video cameras
18:47:15 <ais523> an unfortunate domain name
18:47:38 <ais523> and probably not true, given that there are probably about 2.5 billion men, and it's unlikely that the very stupidest would be known
19:00:46 -!- TOGoS has joined.
19:21:25 -!- oerjan has joined.
19:25:07 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
19:26:17 <Vorpal> <ais523> how dare you! <-- How very unlike your usual safe
19:27:19 <oerjan> ais523's self plays it safe
19:27:21 <Vorpal> <ais523> it involves video cameras <-- eh?
19:27:31 <ais523> Vorpal: I said earlier that you didn't wnat to know
19:27:42 <Vorpal> ais523, conspiracy theory?
19:27:58 <ais523> even without a conspiracy theory
19:28:18 <ais523> I meant, why a desktop search program would involve video cameras
19:28:42 <Vorpal> ais523, so it is just an utterly stupid idea?
19:29:18 <ais523> although the exam answer I discussed in here earlier probably beats it
19:29:20 <Vorpal> ais523, but no I can't think of a reason for video cameras unless you search by body gestures
19:29:20 <oerjan> hey it might, if it searched your _physical_ desktop
19:29:47 <Vorpal> <ais523> although the exam answer I discussed in here earlier probably beats it <-- I missed this, tell me
19:30:46 <ais523> Vorpal: http://pastie.org/pastes/1961483/text?key=xlk9mmy5zajpdmfwtp2fza
19:30:48 <oerjan> <elliott_> I'm usually a Haskell weenie :P <-- except you whine at haskell for not being dependently typed :)
19:31:43 <oerjan> and then you cycle back to haskell because all the dependent languages are unusable for practical programming, right?
19:32:01 <Vorpal> great. maximising suddely decided that it is okay to maximise under the top menu bar of gnome
19:32:26 <Vorpal> could be due to messy dual screen setup with one screen above the other. Not sure
19:33:19 <Vorpal> <ais523> Vorpal: http://pastie.org/pastes/1961483/text?key=xlk9mmy5zajpdmfwtp2fza <--- how... did you phrase that question?
19:33:30 <ais523> it wasn't me who wrote the question
19:33:39 <ais523> and it was phrased very straightforwardly
19:33:46 <ais523> the answer given didn't fit any remotely sane interpretation of the question
19:34:30 <Vorpal> ais523, failed I guess
19:34:54 <ais523> they didn't get any marks for that question
19:35:16 <ais523> I only marked one question, and didn't check to see what marks they got for other questions
19:35:30 <Vorpal> ais523, so someone else marked the other questions?
19:35:45 <ais523> we marked one question each, rather than a portion of the scripts each, to keep things consistent
19:36:01 <oerjan> <elliott_> That... that's really tiny. <-- you are surprised that haskell is compact? :P
19:36:19 <elliott_> oerjan: well istr it being like three thousand lines before but then i remember that that was with my multiple copies hanging around the place..
19:36:28 <Vorpal> oerjan, what was he commenting about
19:36:30 <elliott_> I can see the core thing being a thousand lines
19:36:34 <elliott_> but including the fingerprints??
19:36:40 <elliott_> is not much over a thousand lines in total
19:36:56 <Vorpal> elliott_, so haskell is 9 times as compact as C roughly
19:37:31 <Vorpal> whaaaaat... I started getting weird colour bleeding along the edge of the scanner bed
19:37:42 <Vorpal> think flower power style and you are thinking along the right lines
19:38:03 <elliott_> Vorpal: Well cfunge is a bit more optomized. :p
19:38:14 <elliott_> I plan to implement a Supah Smart fungespace once I have a bunch of fingerprints down, though.
19:38:28 <Vorpal> elliott_, then the code will probably grow yes
19:38:32 <Vorpal> elliott_, what about TRDS?
19:38:38 <Vorpal> elliott_, also good luck beating CCBI
19:38:52 <elliott_> if i can, i'll even do the windows-only ones (for windows only ofc)
19:40:42 * oerjan wonders if optomus was ever correct latin
19:41:04 <oerjan> i vaguely recall seeing some strange vowel changes in those superlatives
19:42:05 -!- Phantom_Hoover has joined.
19:42:13 -!- ralc has joined.
19:43:43 <oerjan> "... probably related to ops "power, resources" (in which case the evolution is from "richest" to "the most esteemed") or to ob "in front of," with superlative suffix *-tumos."
19:43:57 <oerjan> so it may very well have been optumus at one point
19:45:46 <oerjan> i know they have this ridiculously complete latin dictionary at the library but that would involve me actually going there
19:46:02 <elliott_> I disapprove. Phantom Hoover 11:02, 23 May 2011 (UTC)
19:46:02 <elliott_> Disapprove to WHAT? You could be a bit more precise. And since many people have written BF derivates, this is a good extension. Also, in general, it is just an esoteric language like "Ook", so nobody has to APPROVE to an esoteric language. If you have CONSTRUCTIVE critique, please let me know and I will think about how to improve this work. Me personally I like the idea that BF can communicate with other processes/computers to work on a doulbe-I/O ("3D"
19:46:02 <elliott_> ). --87.165.157.233 18:59, 23 May 2011 (UTC)
19:46:09 <elliott_> someone's a bit sensitive about their bf derivative ;D
19:46:51 <Deewiant> MVRS should be relatively easy with your Haskell since you don't have global state
19:46:51 <oerjan> "On the etymology of Latin optumus / optimus and the reflex of PIE " indeed it was
19:46:54 <elliott_> The extension can be implemented in other Brainfuck derivates like ClearBF (ClearBF with NetFuck extension)
19:51:14 <elliott_> "I'll have to admit, I'm totally ignorant on this matter, but I was under the impression that a 32-bit application would still need to treat the address space of graphics memory as a 32-bit integer and the runtime is also generally agnostic to exactly where this memory is stored, which means if you have, say, 3Gb of standard memory used up, you actually can only make use of 1Gb of the video card memory, whether it's shader code or what have you."
19:51:21 <elliott_> ais523: confirm that that's bullcrap?
19:51:27 <oerjan> elliott_: i think you should put quote marks around you talk page quotes, my {{unsigned}} reflex triggered a bit there
19:51:34 <elliott_> i'm reading thedailywtf's forums because... i'm a masochist i guess
19:52:10 <ais523> elliott_: a single process could only access 4GiBytes of memory total without remapping
19:52:15 <ais523> which is quite different from what's written there
19:52:33 <ais523> the shader code would probably be using a different memory map from the main logic of the program, for instance, due to running on a GPU
19:52:49 <ais523> unless it was using a software GPU emulation, like the pure-software versions of Mesa
19:52:49 <Phantom_Hoover> elliott_, I like the way the guy thinks that networking consists of a 2-way pipe.
19:53:03 <ais523> and if really necessary, it could spin off a child process to access more memory
19:53:26 <ais523> I think Windows XP does genuinely work as described in many versions, but it's to provide an incentive to people to upgrade rather than because it has to work that way
19:53:32 <ais523> (there are versions where it does it correctly)
19:56:18 -!- ais523 has quit (Remote host closed the connection).
19:58:43 <oerjan> hm does that mean GPU running code always counts as a different process to the CPU running one, or not?
20:01:12 <cheater897> oerjan, it's not about process, it's about binary image
20:01:45 <cheater897> a 32 bit architecture can only perform jumps to stuff that's a 32-bit pointer away from the base address... or something like that. i barely know asm.
20:03:54 <oerjan> i'm assuming this is about 32 bit applications running on a 64 bit architecture
20:04:36 <oerjan> which means different processes can map things independently.
20:05:00 <cheater897> a 32-bit architecture can have more than 4gb ram too
20:05:15 <elliott_> not a pure 32-bit architecture by definition.
20:05:35 <oerjan> well ok, but sort of irrelevant here i think
20:05:40 <cheater897> there's someone who's not talking with you elliott
20:06:03 <cheater897> oerjan, well the basic idea is the same
20:06:07 <oerjan> otoh if the GPU can have a different map, can any thread in the process?
20:06:09 <elliott_> yes and there's someone who's nitpicking and wasting everyone's time.
20:06:56 <cheater897> oerjan, i don't think stuff being run on the gpu is seen as a process in windows xp.
20:07:56 -!- TLUL has joined.
20:07:59 <oerjan> hm maybe, i guess since the gpu is mainly for interacting with video
20:08:33 <oerjan> but nevertheless different process need to share the gpu
20:09:19 <cheater897> well it's a different program, yes. but it's not a process. it's just like the firmware in your network card isn't seen as a process.
20:09:40 <cheater897> it's pretty much a separate computer inside your computer.
20:09:58 <oerjan> maybe it all passes through the kernel
20:10:12 <cheater897> can you define "passes through the kernel"?
20:10:41 <cheater897> the kernel isn't scheduling the program on the gpu
20:10:44 <oerjan> by that i mean user processes don't have permission to run gpu code directly
20:11:19 <Vorpal> <Phantom_Hoover> elliott_, I like the way the guy thinks that networking consists of a 2-way pipe. <-- arguably that is the abstraction that is provided by tcp
20:11:23 <cheater897> i've never programmed gpus, but i remember reading somewhere that it's a big security flaw.
20:11:29 <oerjan> in that case how does the gpu separate code from different processes... ah.
20:11:49 <Phantom_Hoover> There is simply a static connection between two programs.
20:11:50 <cheater897> oerjan, there isn't "code from different processes"
20:11:55 <Vorpal> Phantom_Hoover, *blink*
20:12:01 <oerjan> ok a big security flaw, i guess that would make sense if the gpu doesn't have a process distinction
20:12:30 <cheater897> either you're running shaders, or you're doing 2d stuff through a driver which runs shaders.
20:12:52 <Vorpal> <ais523> I think Windows XP does genuinely work as described in many versions, but it's to provide an incentive to people to upgrade rather than because it has to work that way <-- eh?
20:13:44 <cheater897> basically you're asking something similar to "how does the hard drive know which program the file came from, otherwise it can't prevent viruses from replicating"
20:15:06 <zzo38> Me and my brother's character now manage to have not only the same number of experience points, but also the same number of hit points. And the same grapple modifier, and even the same weight. However, most things are different.
20:15:50 <Vorpal> aren't grappling rules quite a PITA.
20:17:21 <oerjan> Vorpal: there was some nice lampshading of that in darths & droids
20:18:11 <zzo38> I am the only one in the game that has used grapple so far, I think three times in total so far.
20:18:43 <cheater897> oerjan, i always read that comic book's domain as "darth sand droids"
20:19:07 <cheater897> and it makes me think r2d2 + sand people + darth maul
20:19:20 -!- Lymia has quit (Ping timeout: 276 seconds).
20:19:22 <zzo38> I have never made any other melee attacks though. I have used ranged attacks three times, all of them magic, once by accident, and once when I knew it wouldn't hit anyways.
20:20:31 <oerjan> http://www.darthsanddroids.net/episodes/0232.html
20:23:32 <pikhq> Hrm. Apparently movie theater chains in the US have started running their projectors dim to save on electricity and bulb replacement costs...
20:23:46 <zzo38> Do you understand the reasons for any of this (apparently strange) things?
20:24:13 <pikhq> So... My shitty LCD monitor may well have better video quality than a theater's setup by now.
20:25:01 <oerjan> http://www.darthsanddroids.net/episodes/0343.html and http://www.darthsanddroids.net/episodes/0344.html (including the expanded version)
20:25:45 <pikhq> And my cheap-ass PC speakers definitely have better audio quality. (they tend to have very, very poorly calibrated surround sound, with *notable clipping*)
20:26:47 <Vorpal> pikhq, not like that in Sweden
20:26:52 <Vorpal> not sure about light level
20:26:59 <Vorpal> but the sound is usually okay
20:27:37 <pikhq> "AMPLIFY THE SUBWOOFER!" seems to be their attitude.
20:28:33 <olsner> movie sound is usually way too loud here, but otherwise ok
20:29:54 <olsner> kind of: with ear plugs I doubt the quality would be the same, and at these sound levels you really should be using ear plugs...
20:30:33 <pikhq> And the pricing is such that it'd be much cheaper to buy the damned DVD, even if you intend to watch it only once ever...
20:30:43 <Phantom_Hoover> <pikhq> "AMPLIFY THE SUBWOOFER!" seems to be their attitude.
20:31:40 -!- TLUL has changed nick to TLUL|afk.
20:32:26 <pikhq> Phantom_Hoover: It really, truly isn't the filmmaker's doing.
20:32:46 <oerjan> 00:29:45 <CakeProphet> elliott_: none? regex is pretty easy.
20:32:46 <oerjan> 00:30:07 <elliott_> CakeProphet: Nonsense, they've clearly doubled.
20:32:51 <oerjan> i see no contradiction here
20:33:46 <oerjan> <CakeProphet> true, but for most simple tasks regex beats alternatives. And really in #esolang you can't complain about awkward syntax. :D
20:34:03 <oerjan> you realize most esolangs have a completely trivial syntax, parserly speaking
20:34:45 <oerjan> i mean a lot of brainfuck implementers don't even bother separating parsing and running...
20:35:48 <olsner> parsing is probably the most boring part of implementing any language
20:36:44 <pikhq> Parsing Brainfuck is pretty dang trivial, though.
20:37:06 <pikhq> Even hand-writing a recursive descent parser isn't much effort.
20:37:55 <oerjan> it's just barely complicated enough not to be regular
20:38:52 <olsner> implementing brainfuck you barely even need a parser
20:39:20 <pikhq> You can actually compile it with sed if you don't mind having a trivial compiler.
20:39:30 -!- TLUL|afk has changed nick to TLUL.
20:39:49 <pikhq> You only really *need* a parser for it if you want to do optimisations.
20:40:01 <pikhq> (beyond the obvious RLE optimisations and such, that is)
20:40:12 -!- eduviges has joined.
20:42:06 -!- pikhq_ has joined.
20:42:17 <elliott_> this channel is about programming,
20:43:22 -!- pikhq has quit (Quit: Reconnecting).
20:44:56 -!- Lymia has joined.
20:50:11 <Phantom_Hoover> You know, the more I listen to it the more I am convinced that the Homestuck music is primarily an exercise in combinatorics.
20:50:37 <Phantom_Hoover> Most of the songs are either leitmotifs or are recombinations of leitmotifs.
20:51:22 <Phantom_Hoover> You're probably going to have a hard time finding anyone who can speak Spanish around here.
20:51:39 <oerjan> <ais523> I pity any logreaders who stumble across this
20:51:42 -!- elliott_ has quit (Ping timeout: 250 seconds).
20:52:11 * oerjan wanted to cash in some pity
20:55:06 <oerjan> that was today. maybe that doesn't count as stumbling...
20:55:47 <oerjan> i'm not sure if anyone but elliott does random logreading
20:57:34 -!- TLUL has quit (Quit: *disappears in a puff of orange smoke*).
20:58:13 <oerjan> <elliott_> Phantom_Hoover: We should make one for mathematicians too, although it might be hard to fit "The proof of this is left as an exercise to the reader." on.
20:58:30 <oerjan> maybe an end of proof square...
20:58:42 <Phantom_Hoover> <oerjan> i'm not sure if anyone but elliott does random logreading
20:58:56 <oerjan> wait elliott actually went to bed?
20:58:59 <Phantom_Hoover> I sometimes do when trapped in Ireland with nothing but the hg logs.
20:59:20 <oerjan> you are frequently trapped in ireland, then?
20:59:40 <Phantom_Hoover> He seems to have been up all night crying into his keyboard at Sgeo_ reading Homestuck.
21:00:11 <Phantom_Hoover> And yes, because my parents have this strange urge to spend time with their family.
21:00:52 -!- eduviges has left.
21:01:32 <monqy> sssssssssssssssssssssssss
21:10:27 <zzo38> Someone told me that TeXnicard is a bad program and I am bad at user interface design, because the description on the repository mentions IRC. Like, what? How does mentioning IRC on the repository (not in the program itself!) make it a bad program?
21:11:27 <zzo38> And why do some people come in this channel they try to speak Spanish or whatever and cannot understand the other things?
21:14:37 <zzo38> Do you know the game "End is a Finnish word"?
21:17:08 <oerjan> no, but i strongly doubt that end is a finnish word.
21:17:30 <oerjan> (seeing as it's ending in a consonant combination)
21:18:07 <zzo38> oerjan: I also doubt it. That isn't the point of the game. You write things on a chalkboard such as "End is a Finnish word", "Boolean is a Andoran word", and so on; they do not have to be correct statements.
21:18:36 <oerjan> boolean being andorran sounds more likely
21:20:22 <oerjan> idook is clearly an eskimo word
21:21:13 <oerjan> ui is probably hawaiian
21:21:37 <zzo38> You seem to not understanding this game
21:21:39 <oerjan> i doubt you could _get_ more japanese than that
21:21:39 -!- sebbu2 has joined.
21:21:39 -!- sebbu2 has quit (Changing host).
21:21:39 -!- sebbu2 has joined.
21:21:51 <zzo38> Now you are making a different game.
21:21:54 <oerjan> ...which is why i'm making one up
21:22:15 <zzo38> What algorithm is used for making up these words?
21:22:24 <EgoBot> haskell import System.Random; import Control.Monad; main = do {len <- pick [2..10]; putStrLn =<< (replicateM len $ pick ['A'..'Z'])} where pick a = randomRIO (0, length a - 1) >>= return . (a !!)
21:23:11 <oerjan> iqfbs, i got nothing. maybe related to iqbal?
21:23:19 -!- aune_ has joined.
21:24:28 -!- sebbu has quit (Ping timeout: 260 seconds).
21:24:30 <zzo38> I have read of a bit different algorithm that uses d6 and d20 dice, which I have used to make up the name of my D&D characters; the last time I used it, I came up with the name "BIDAKIQUOOD"
21:24:40 <oerjan> @hoogle Int -> [a] -> IO [a]
21:24:40 <lambdabot> Data.List drop :: Int -> [a] -> [a]
21:25:00 <zzo38> The one with dice is also possible to come up with a blank name, with a single letter name, or any length at all.
21:25:07 <oerjan> looks like that has a vowel preference
21:25:30 <oerjan> or maybe a cv syllable pattern
21:25:41 <zzo38> oerjan: Yes, the algorithm with dice does have a vowel preference. d6 is used to select what kind (consonant, vowel, end), d6 selects vowels, and d20 selects consonants.
21:26:03 <oerjan> zzo38: well that haskell code is for acronyms, not names, so pronouncability isn't an issue
21:26:40 <zzo38> oerjan: Yes, I guessed, that is what "acro" might be short for
21:27:31 <zzo38> And I can see what the code does even though I do not know how to program anything in Haskell at all
21:28:11 <oerjan> i guess the pick definition above could easily be used to make your version too (in fact it's a little surprising nothing like pick is in the haskell Data.Random library
21:28:17 -!- Faaizaan has joined.
21:29:06 <zzo38> But the way the one with dice works, if you roll 6 on the first d6 roll for each letter, is the end of the word, otherwise you continue.
21:30:01 <oerjan> and if you roll 6 immediately you get a length 0 word?
21:30:31 <zzo38> I know, this algorithm is not a particularly good one, but someone invented it and I still used it to make up the names
21:31:38 <zzo38> Roll 1d6, if 6, stop. If 1 2 3, make a vowel. If 4 5, make consonant. For vowel, 1d6 makes 1=A 2=E 3=I 4=O 5=U 6=Y, for consonant, 1d20 makes all the other letters in alphabetical order 1=B to 20=Z.
21:34:44 <oerjan> !haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) : [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:37:26 <oerjan> !haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word :: IO String; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) : [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:38:03 <oerjan> !haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word :: IO String; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) : [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:39:37 <oerjan> !haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word :: IO String; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) ++ [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:40:04 <oerjan> EgoBot seems to be straining
21:41:03 <zzo38> When typing !haskell by itself I got a DCC CHAT message, when I connected by "nc codu.org 10078" I got "<interactive>:1:116: Not in scope: `Main.main'"
21:41:20 <zzo38> See if you have any such message?
21:41:33 <oerjan> i have got several, although not for the last one
21:41:39 <oerjan> it may have just timed out
21:41:57 <oerjan> !haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word :: IO String; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) ++ [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:42:25 <zzo38> I also programmed this algorithm in TI-92 calculator as well
21:42:38 <oerjan> !haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) ++ [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:42:57 <zzo38> !haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word :: IO String; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) ++ [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:43:10 <oerjan> zzo38: heh, i think i programmed a name generator on my hp-28 once
21:43:13 <zzo38> !haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word :: IO String; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) ++ [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:43:22 <oerjan> probably not the same algorithm
21:43:33 <oerjan> it seems like it simply times out occasionally
21:43:36 -!- Faaizaan has quit (Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi).
21:43:37 <zzo38> Can you save the program in EgoBot?
21:44:01 <oerjan> !addinterp simplename haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn =<< word; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) ++ [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:44:02 <EgoBot> Interpreter simplename installed.
21:44:24 <oerjan> they don't look very long these names
21:44:54 <zzo38> Sometimes they do get longer, although maybe it is too slow to make longer names I don't know
21:45:23 <zzo38> See? Now it is longer.
21:45:48 <zzo38> I will use that name if I need to make up the next my D&D character.
21:45:56 <oerjan> seems not, i found it unlikely that the timeout was because of the running time anyway ( EgoBot recompiles each time, and that's probably what takes time )
21:46:35 <zzo38> If you save it, will it still recompile each time?
21:47:26 <oerjan> EgoBot doesn't know the difference between compilers and interpreters
21:48:07 <zzo38> Can you make it compile only once if put on HackEgo?
21:48:31 <oerjan> oh wait i realized - it's not timeout, it's just when it generates an empty string
21:48:31 <zzo38> My current character does psionics and pact magic. I like the "Subjunctive TV" kind of pact magic.
21:48:51 <zzo38> oerjan: Yes, that is 1/6 to do so
21:48:53 <oerjan> EgoBot makes no output when the program doesn't
21:51:44 <oerjan> that's a bit confusing, maybe change it to check after generating the letter
21:51:59 <zzo38> Or, terminate with a period, is another way
21:52:15 <EgoBot> Interpreter simplename deleted.
21:52:42 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:52:47 <oerjan> !addinterp simplename haskell import System.Random; import Control.Monad; pick a = randomRIO (0, length a - 1) >>= return . (a !!); main = putStrLn . (++".") =<< word; word = join . pick $ replicate 3 (liftM2 (:) vowel word) ++ replicate 2 (liftM2 (:) consonant word) ++ [return ""]; vowel = pick "AEIOUY"; consonant = pick "BCDFGHJKLMNPQRSTVWXZ"
21:52:48 <EgoBot> Interpreter simplename installed.
21:59:18 <oerjan> <Phantom_Hoover> It seems to have aroused EMOTIONS in ais, so it must be IMPORTANT. <-- we are doomed, aren't we
22:06:00 <Phantom_Hoover> oerjan, we are facing an imminent invasion of wind-blown leaves, it appears.
22:06:36 <Vorpal> Phantom_Hoover, that would be even worse than the ash
22:06:55 <Vorpal> imagine what this would do to aircrafts
22:06:56 <oerjan> well we just had the rapture, so a little general destruction is to be expected
22:07:27 <Vorpal> Phantom_Hoover, indeed. The situation looks dire to say the least.
22:08:00 -!- pikhq has joined.
22:10:50 -!- pikhq_ has quit (Ping timeout: 240 seconds).
22:11:06 <zzo38> And the video artifacts.
22:21:45 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
22:23:49 <zzo38> I was reading a book about shogi once, most things written there are reasonable, except that one sentence ended with "and softee, softee catchee monkey." and it didn't match the rest of that sentence.
22:25:19 <oerjan> sounds like some wikipedia vandalism
22:25:45 -!- myndzi has quit (Ping timeout: 260 seconds).
22:25:54 <zzo38> Maybe some Wikipedia vandalism has like that, but this was a book
22:27:33 <zzo38> No, it is a normal book by one author.
22:39:52 <Sgeo_> asdfhashdflaksdfajdfh stupid wikia
22:40:31 <Phantom_Hoover> I am sorry is there any other adjective that can precede 'Wikia'?
22:52:54 -!- FireFly has quit (Quit: swatted to death).
23:02:53 -!- zzo38 has quit (Quit: Wedding rings are the world's smallest handcuffs.).
23:08:01 -!- TOGoS has left.
23:32:39 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:47:22 -!- myndzi has joined.
23:52:05 -!- myndzi has quit (Ping timeout: 276 seconds).
00:02:08 -!- myndzi has joined.
00:04:08 -!- pumpkin has quit (Quit: Computer has gone to sleep.).
00:04:23 -!- Phantom_Hoover has quit (Quit: Leaving).
00:13:40 -!- augur has quit (Remote host closed the connection).
00:18:59 <Sgeo_> I am highly amused by Homestuck reaction videos
00:54:19 -!- copumpkin has joined.
01:01:47 -!- azaq23 has quit (Quit: Leaving.).
01:03:08 -!- ralc has quit (Quit: Leaving).
01:41:22 -!- NihilistDandy has quit (Quit: leaving).
02:01:50 -!- myndzi has quit (Remote host closed the connection).
02:15:59 -!- augur has joined.
02:22:28 -!- TeruFSX has quit (Remote host closed the connection).
02:26:18 -!- augur has quit (Remote host closed the connection).
02:34:06 -!- myndzi has joined.
03:08:47 -!- pikhq_ has joined.
03:10:48 -!- pikhq has quit (Ping timeout: 276 seconds).
03:15:38 -!- olsner has quit (Ping timeout: 250 seconds).
03:38:44 -!- Sgeo__ has joined.
03:40:43 -!- Sgeo_ has quit (Ping timeout: 246 seconds).
03:43:43 -!- augur has joined.
04:23:12 -!- NihilistDandy has joined.
04:34:47 -!- Patashu has joined.
04:35:27 -!- augur has quit (Remote host closed the connection).
04:36:39 <Patashu> what's the difference between $ and . and not having either in haskell?
04:36:44 <Patashu> I seem to have some mental confusion over them
04:37:16 <oerjan> well you can define them easily if you don't have them
04:38:03 <copumpkin> the confusion comes from the associativity of ($)
04:39:14 <copumpkin> so on one hand, you're just doing boring function application (and avoiding a couple of parentheses in some cases)
04:39:23 <copumpkin> the other you're building a reusable "function chain"
04:39:36 -!- NihilistDandy has quit (Quit: leaving).
04:39:47 <copumpkin> and refactor the other expression to be newFunction x
04:40:01 -!- NihilistDandy has joined.
04:41:38 <Patashu> what if I said newFunction = f $ g $ h $
04:42:32 <copumpkin> you can't write sections like that
04:42:45 <lambdabot> The operator `$' [infixr 0] of a section
04:42:45 <lambdabot> must have lower precedence than that of the operand,
04:43:04 <pikhq_> What you're thinking of is more like ((f $ g $ h) $)
04:43:15 <copumpkin> also, in general the x may not be as simple as a single operand
04:43:15 <lambdabot> forall a b a1 b1. (?h::a, ?g::a -> b, ?f::b -> a1 -> b1) => a1 -> b1
04:43:53 <oerjan> it's a missing flexibility in sections that might have been useful to have
04:44:09 <oerjan> although not for that particular case
04:44:30 <oerjan> but say it's annoying to have to write ((f . g) .) instead of (f . g .)
04:46:08 <oerjan> and you might have wanted (2 + 3 *)
04:47:30 -!- pikhq has joined.
04:47:54 <oerjan> (btw (. f . g) is fine, but both cannot be regardless of how you define .'s associativity)
04:50:00 -!- pikhq_ has quit (Ping timeout: 260 seconds).
04:52:26 -!- pukey has joined.
04:54:58 <Sgeo__> Just took 300mg melatonin
04:55:08 <Sgeo__> I know no one cares, and I don't care that no one cares.
04:55:33 <oerjan> this is a severe violation of your privacy, i'm afraid i may have to ban you
05:01:37 <pukey> 300 mg melatonin is going to make you teh greatest rockstar ever.
05:11:58 -!- pukey has left.
05:12:05 -!- pikhq_ has joined.
05:15:01 <pikhq_> It's a bit weird having my computer actually wired up for TV watching.
05:15:30 <pikhq_> "I'm really bored... Maybe I'll watch some TV or something. [1 minute later] Oh, right, TV sucks."
05:15:48 -!- pikhq has quit (Ping timeout: 276 seconds).
05:18:42 <pikhq_> Back to Youtube with me.
05:22:27 <Sgeo__> So, according to Harold Camping, it was a spiritual rapture, the world's ending in 5 months
05:22:51 <Sgeo__> http://news.yahoo.com/s/ap/us_apocalypse_saturday
05:23:51 <Patashu> was the earthquake metaphorical too?
05:24:41 -!- pikhq has joined.
05:25:09 -!- pikhq_ has quit (Ping timeout: 260 seconds).
05:26:18 <Sgeo__> He may have used the term "Judgement Day", not "rapture"
05:42:47 -!- pikhq has quit (Read error: Connection reset by peer).
05:46:55 -!- pikhq has joined.
05:52:57 -!- augur has joined.
05:55:10 -!- FireFly has joined.
05:55:21 -!- pikhq_ has joined.
05:55:29 -!- pikhq has quit (Ping timeout: 260 seconds).
05:56:42 <CakeProphet> This means that $foo and @foo are two different variables. It also means that $foo[1] is a part of @foo, not a part of $foo. This may seem a bit weird, but that's okay, because it is weird
06:02:35 -!- olsner has joined.
06:05:07 -!- aune_ has quit (Quit: Hath Deprated).
06:05:49 <CakeProphet> it's the most fun I've had programming in a while.
06:08:44 <CakeProphet> Perl has a lot of interesting concepts. Like context, for example
06:09:51 -!- zzo38 has joined.
06:18:41 <fizzie> Use of Termnology for Memorable Paper Titles: A Case Study: "The Non-Bayesian Restless Multi-Armed Bandit: A Case of Near-logarithmic Regret"
06:18:42 <pikhq_> Perl has every concept.
06:19:57 <oerjan> logarithmic regret doesn't sound too bad
06:20:06 <oerjan> now if it were exponential...
06:20:14 <Patashu> title doesn't have enough references to movies
06:20:50 <Patashu> the Good, the Bad, and the Aversion to papers whos' titles fail to reference movies
06:23:28 <CakeProphet> http://search.cpan.org/~dconway/Contextual-Return-0.003001/lib/Contextual/Return.pm
06:23:38 <CakeProphet> oh god... and here I thought there was only list, scalar, and void context.
06:30:57 <olsner> hmm, I'm actually considering to temporarily set aside my hate for perl to play with that thing
06:33:41 <CakeProphet> olsner: I think you should only love Perl before you try to use that particular module.
06:34:31 <CakeProphet> Patashu: It allows you to control the behavior/return-value of a subroutine based on its calling context.
06:34:51 <Patashu> oh, as in...whether the result is going into a variable or not?
06:34:51 <CakeProphet> wantarray is a built-in that does something similar, but that module has a few more features for special contexts.
06:35:04 <Patashu> list is when it's being applied over a list?
06:35:16 -!- pikhq has joined.
06:35:19 -!- pikhq_ has quit (Ping timeout: 252 seconds).
06:35:34 <olsner> CakeProphet: eek! I don't want to use the rest of perl, only the contextual returns
06:36:28 <oerjan> Patashu: For a Fistful of Papers
06:36:35 <CakeProphet> as is for(my_sub()) and grep !/\.\.?/, my_sub()
06:37:53 <CakeProphet> a lot of Perl built-ins and operators return different things in different contexts.
06:40:16 <CakeProphet> for example, m/regex/ returns true or false in scalar context if the regex matches a string, but in list context it returns a list of all the captured groups.
06:41:51 <pikhq> Oh, goody. Harold Camping was apparently off by 5 months.
06:42:18 <pikhq> The rapture will happen on 2011-10-21T18:00.
06:43:17 <pikhq> http://www.ajc.com/news/nation-world/radio-host-says-worlds-955120.html
06:43:28 <CakeProphet> for(`ls directory`) {my ($name, $extension) = m/(.*?)\.(.*?)/; ...}
06:43:59 <pikhq> Sorry, more crazy than just "he was off by 5 months".
06:44:20 <pikhq> Rather, the rapture wasn't *really* going to happen, but we have all been judged, and the world will end 2011-10-21T18:00.
06:47:27 <CakeProphet> Patashu: yes, Perl is interesting. I'd recommend giving it a look sometime.
06:49:32 <zzo38> Is contexts one of the reasons they invented Perl-golf?
06:52:34 <zzo38> Yes, that would also be one.
06:59:07 <zzo38> I do know AWK and what you described about m/regex/ seems similar to something in AWK as well. In AWK, something like /regex/ matches against $0 and is boolean, although some built-ins take regular expressions as arguments in which case it does that instead. You cannot make your own functions that take regular expressions as arguments, in AWK.
06:59:49 <CakeProphet> can you specify a non-default string to match?
07:00:16 <zzo38> Yes, using the ~ operator; it takes a regular expression as one of its arguments.
07:00:19 <CakeProphet> by default perl does m// on $_, but not if you use the =~ operator.
07:06:11 <CakeProphet> zzo38: so, if I know Perl, is there any reason I'd want to use awk instead?
07:08:44 <zzo38> CakeProphet: I don't know. Probably because awk is standard in UNIX and for the kind of things that awk is good for.
07:09:03 -!- MigoMipo has joined.
07:09:37 <zzo38> I wonder if, the Deadfish challenge in anarchy golf, the shortest AWK submission is similar to the shortest Perl submission?
07:10:06 <CakeProphet> they're likely very similar since it's all string processing.
07:11:49 <zzo38> You try submitting a Perl code to that challenge (I would advise to always select "Open code statistics", although it is not required).
07:11:56 <zzo38> http://golf.shinh.org/p.rb?Deadfish
07:12:35 <zzo38> (If you push "use form" then you can enter the code on the HTML form text area, otherwise you send a file with the correct extension)
07:13:00 -!- pikhq_ has joined.
07:13:33 <CakeProphet> I saw def and I thought "Python..?" then I saw // and I thought "...Perl?"
07:14:29 <CakeProphet> speaking of which, now that I've got Perl down I should probably learn Ruby.
07:15:19 -!- pikhq has quit (Ping timeout: 255 seconds).
07:15:58 <zzo38> But if you are interested, try submitting to the code golf challenge(s), using whichever programming language(s) you know.
07:16:47 <Patashu> I code golfed in java once
07:16:51 <zzo38> For that particular challenge, I am unbeat at AWK but my C codes are not quite short enough.
07:18:08 <zzo38> Patashu: They have Java, there, too.
07:21:06 <Sgeo__> xkcd-sucks is now deliberately trying to tick people off. Or, well, it's so obvious that they're joking that it won't tick people off. Maybe
07:22:25 <zzo38> Patashu: What are some of your opinions of making code-golf with Java?
07:23:13 <pikhq_> zzo38: If it comes short of 2 megs, it's successful. :P
07:24:18 <Patashu> My opinion on codegolfing in Java is: class A{static{try{for(int i=0,j,z=System.in.read()&7,k=z*6-2;i<k;i++){for(j=0;j<(j<k?3*Math.min(z+i,k*5/6f-i):0);)System.out.print(" \\__/ ".charAt(j++>3*Math.max(z-i-1,i-3*z)?(i*3+j)%6:5));System.out.println();}}catch(Exception e){}}}
07:24:35 <zzo38> Which is a code for what?
07:24:40 <Patashu> http://golf.shinh.org/p.rb?hexagon+2nd+fixed
07:25:07 <zzo38> Have you used any of the other programming languages available there? If so, which ones?
07:25:18 <CakeProphet> while(<>){s/i/$x++/e;$x-- if /s/&&$x!=0;s/s/$x**=2/e;s/o/print $x/e;last if /h/;$x=0 if $x==256}
07:25:47 <Patashu> Not yet, but I can tell you anyway that codegolfing in java is very cumbersome because it doesn't have any native language constructs for common idioms like other languages do
07:26:10 -!- oerjan has quit (Quit: Good night).
07:26:35 <CakeProphet> zzo38: that's the shortest Perl gold I've got for deadfish
07:26:36 <Patashu> Doing something as simple as IO is a pain
07:26:54 <zzo38> CakeProphet: You can send to the form directly; all codes are revealed in 4 days
07:27:16 <CakeProphet> what were you saying about the open code statistics again?
07:27:26 <CakeProphet> also, I'm going to wait and see if I can find something to remove.
07:27:31 <zzo38> You should select it (make sure it is checkmark).
07:28:31 <zzo38> CakeProphet: Also, if you post, you can post another one later and if it has the same name it will override if shorter. If you do not want that, add something in parentheses after your name in case you want multiple submissions. Also, the server will test that it works automatically (if it doesn't, the error messages that it caused will be displayed)
07:30:02 <CakeProphet> I'm saving one character by using the s/i/$x++/e trick instead of using $x++ if /i/ :D
07:30:13 <CakeProphet> unless Perl lets you do something horrible like $x++if/i/
07:30:44 <Patashu> is that...are you embedding an increment in an s/old/new?
07:31:09 <Patashu> or does / mean something else
07:31:10 <zzo38> I think /e at the end makes it so that you can do that
07:31:30 <CakeProphet> the e option at the end allows you to use Perl code as the replacement string
07:31:38 <CakeProphet> it's evaluated and then the result is substituted
07:33:07 <CakeProphet> but I could find a good way to use it for $x-- so I just wrote it out as an if.
07:35:58 -!- Lymia has quit (Read error: Operation timed out).
07:36:12 -!- Lymia has joined.
07:36:16 <CakeProphet> while(<>){s/i/$x++/e;$x-- if /s/&&$x!=0;s/s/$x**=2/e;s/o/print $x/e;/h/&&last;$x*=$x==256}
07:38:21 -!- NihilistDandy has quit (Quit: leaving).
07:38:41 -!- NihilistDandy has joined.
07:38:47 -!- NihilistDandy has quit (Client Quit).
07:41:21 -!- NihilistDandy has joined.
07:42:23 <CakeProphet> hmmm, the s///e doesn't seem to be working though
07:43:50 -!- NihilistDandy has quit (Client Quit).
07:44:38 -!- NihilistDandy has joined.
07:45:04 -!- NihilistDandy has quit (Client Quit).
07:49:34 <CakeProphet> alright this seems to work: while(<>){/i/&&$x++;/d/&&$x!=0&&$x--;/o/&&print$x;/s/&&($x**=2);/h/&&last;$x*=$x!=256}
07:53:47 <zzo38> The shortest is 50 bytes. The shortest AWK code is 39 bytes and is the one I wrote by myself.
07:54:17 -!- pikhq_ has quit (Read error: Operation timed out).
07:54:44 <zzo38> Also, I think it is allowed to place options on the shebang line, although unlike real Perl-golf, the "#!perl" is still counted.
07:54:56 -!- pikhq has joined.
07:56:18 -!- Phantom_Hoover has joined.
07:56:41 <CakeProphet> while(<>){/i/&&$x++;/d/&&$x!=0&&$x--;/o/&&print$x;$x**=2if/s/;/h/&&last;$x*=$x!=256}
07:57:51 <CakeProphet> hmmm... I'm not sure a shebang line could give me too many byte reductions.
07:59:04 <CakeProphet> would allow me to remove the while(<>){} compeltely. 1 byte lost.
07:59:48 <zzo38> Remember a line break is also required, and that if you use the form, it makes CRLF; you need to use a send file to make only LF.
08:06:28 -!- FireFly has quit (Quit: swatted to death).
08:09:15 -!- pikhq has quit (Read error: Operation timed out).
08:10:22 -!- pikhq has joined.
08:13:05 -!- Faaizaan has joined.
08:13:08 <CakeProphet> I don't know if I can go lower than 84 bytes on this one:
08:13:10 <CakeProphet> while(<>){/i/&&$x++;/d/&&$x!=0&&$x--;/o/&&print$x;$x**=2if/s/;/h/&&last;$x*=$x!=256}
08:13:41 <CakeProphet> replace the while loop with a #!perl -n line at the top
08:14:19 -!- Faaizaan has left.
08:15:34 -!- pikhq has quit (Ping timeout: 248 seconds).
08:15:42 -!- pikhq has joined.
08:16:32 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
08:24:42 -!- monqy has quit (Quit: hello).
08:25:22 <zzo38> Something I think missing from AWK is something like this: /^Say "(.*)"$/{print \1}
08:34:00 -!- Phantom_Hoover has joined.
08:34:41 <CakeProphet> actually outside of the regex itself you use $1 instead of \1
08:35:24 <zzo38> In AWK, $1 refers to the first field of the current record.
08:35:37 <zzo38> Not necessarily what is matched by () in regular expressions.
08:35:58 <zzo38> Which is why I suggest \ instead of $ for this case
08:37:25 <CakeProphet> I thought I did rather poorly since my initial estimate was 84, but I had to make some changes to account for output formatting
08:38:39 <CakeProphet> $x=0;while(<>){/i/&&$x++;/d/&&$x!=0&&$x--;/o/&&print"$x\n";$x**=2if/s/;/h/&&last;$x*=$x!=256}
08:39:42 <Patashu> it looks like it's pointing to the first o
08:40:39 <CakeProphet> so either there's a) no one using Perl in this contest b) no expert Perl golfers in this contest c) I am an expert Perl golfer.
08:40:52 <Patashu> you mean on golf.shinh.org ?
08:41:01 <Patashu> that place should be packed with ridiculous golfers
08:41:13 <Patashu> oh, it's one of the problems that only just got added
08:41:16 <Patashu> maybe they haven't seen it yet
08:42:31 <Patashu> keep in mind that it only needs to support the cases that it tests for
08:42:57 <zzo38> CakeProphet: Yes you can, there is EOF at the end.
08:43:18 <Patashu> if sample input i becomes sample output i for i = 1, 2, 3 golf.shinh.org won't care if it implements deadfish or not
08:43:29 <Patashu> for instance, my solution to hexagons only works for odd values
08:43:33 <Patashu> because it only tests odd values
08:43:38 <Patashu> that allowed me to shave off a lot of bytes
08:44:19 <CakeProphet> ...won't they like, look for cheating though?
08:44:31 <Patashu> It's anarchic golf, after all ;)
08:44:38 <Patashu> Btw, you said you had 94 bytes?
08:44:43 <zzo38> CakeProphet: No, although if you want, you can make multiple submissions you can put stuff after your name such as (cheat) for cheating entries and so on
08:44:55 <Patashu> According to the page the shortest perl solution is 50 bytes and the shortest awk solution is 39 bytes
08:44:57 <Patashu> so it can be done very short
08:45:11 <CakeProphet> oh really? why does it say "and it's a new record!"?
08:45:14 <Patashu> 39 bytes in GoldScript and xgawk too, how about that
08:45:17 <Patashu> Because it's a new record for -you-
08:45:22 <Patashu> It's just to keep track of your improvements
08:45:29 <Patashu> http://golf.shinh.org/p.rb?Deadfish
08:45:32 <Patashu> Scroll down to language ranking
08:47:40 -!- FireFly has joined.
08:47:52 <Patashu> Think of things like: the bitwise relationship between the values you read
08:48:03 <zzo38> I would consider it not cheating if you check for EOF instead of the "h" to halt, but it is cheating if other valid inputs fail to work. I suggest submitting cheating entries anyways but adding (cheat) after your name.
08:48:18 <zzo38> Patashu: I used that in the C code.
08:48:26 <Patashu> For instance, I saw a codegolfed brainfuck interpreter. It takes the modulo 2 of the input, because + and - are adjacent in the code and have opposite effects
08:48:34 <Patashu> If i and o have a similar relationship...
08:49:41 <Patashu> I thought (cheat) was only used for insane exploits?
08:50:49 <Patashu> for instance, http://golf.shinh.org/reveal.rb?Quine/eban%28cheat%29_1182659566&rb
08:51:09 <zzo38> Patashu: Well, I guess different people have different opinion what to use it for; I suggest using (cheat) if other valid inputs fail to produce valid outputs.
08:51:21 <zzo38> Or else, use (embed) or (specific) in that case.
08:51:45 <zzo38> In the case of the quine, reading your own file is considered cheating, too, of course.
08:51:52 <Patashu> embed is where the output is contained within the code
08:52:01 <Patashu> I'm not aware of a tag for only solving the specific sample inputs, because it's the expected way
08:52:16 <CakeProphet> haha, erlang is the worst. If I knew Erlang I would try to beat the record on that one
08:52:32 <zzo38> If you do not want a tag for only solving the specific sample inputs, then you could instead use (genuine) to say it works on all valid inputs.
08:52:52 <Patashu> I think I'll use it if I pick up code golfing again
08:54:01 <zzo38> For the reason of these kind of tags used in different ways (as well as just to make sure of things), I dislike endless problems.
08:54:26 <CakeProphet> zzo38: we should write something better than golfscript for golfing. with more operators.
08:54:40 <Patashu> better than golfscript? it's called flogscript
08:54:48 <zzo38> CakeProphet: I have had some idea for some binary file code golf
08:55:00 <zzo38> Patashu: Better in some cases, worse in others, equally good in others.
08:55:09 <Patashu> reverse base 64 golfscript and call it a new language?
08:55:30 <zzo38> Patashu: I don't mean quite like that.
08:57:16 <CakeProphet> well, if you actually shrunk the number of operators you could fit two on a byte and then have an operator for each hex digit
08:58:24 <zzo38> In fact, sometimes vi or z80 is the shortest solution, shorter than the GolfScript and FlogScript codes.
09:00:01 <zzo38> For the printer oriented banner problem, my vi solution is shortest of all of them.
09:00:59 <zzo38> http://golf.shinh.org/p.rb?PrinterOriented+Banner Note that "exec is denied" does not affect shell scripts, and only partially affects vi.
09:01:52 <Patashu> all the short versions are people managing to call it anyway?
09:04:23 <zzo38> Patashu: Yes, although there is one difficulty being that it is not in PATH, even though the program is installed. And the C code does read the banner program without executing it. The other difficulty is that spaces are added to the end of the line and the problem requires it without the trailing spaces.
09:04:40 <zzo38> Both are not too difficult to correct.
09:05:00 <CakeProphet> ha, changing my while to a for shaved 2 bytes. :D
09:06:46 <CakeProphet> so I wonder what kind of system they're running on that website.
09:07:19 <CakeProphet> essentially, I'm wondering if I could use system commands in Perl on the server. I doubt it.
09:08:02 <zzo38> CakeProphet: Depends.
09:08:17 <Patashu> the golf.shinh exploits are the best
09:08:18 <Patashu> There were two directories where we can write permanent files and one of this was used in http://golf.shinh.org/p.rb?27c3_Generate+C . I've already fixed the permission of this directory and removed the entries. Thanks 27c3 guys for finding this issue!
09:08:23 <Phantom_Hoover> I can't buy high-temperature superconductors over the internet?
09:08:27 <Patashu> there was some system V exploit someone made to communicate between programs that was fixed ages ago
09:09:12 <Patashu> http://github.com/shinh/ags apparently this is what it runs
09:10:21 -!- Faaizaan has joined.
09:16:03 <Patashu> I love this: Tim LaHaye, co-author of the best-selling "Left Behind" novels about the end times, recently called Camping's prediction "not only bizarre but 100 percent wrong!" He cited the Bible verse Matthew 24:36, "but about that day or hour no one knows" except God.
09:16:07 <Patashu> even the left behind writers know better
09:18:33 -!- MigoMipo has quit (Read error: Connection reset by peer).
09:21:44 <Patashu> know better than to set a date
09:22:58 <zzo38> The "Count asterisks" problem, I invented it and designed it with a cheat. I don't know who can notice right away the cheat and who doesn't.
09:23:14 <Phantom_Hoover> So basically God isn't even going to organise his armies ahead of time for the apocalypse?
09:23:14 <Phantom_Hoover> The angels will just be sitting around and one day suddenly there'll be all these Christians everywhere?
09:23:14 -!- Phantom_Hoover has quit (Quit: Leaving).
09:23:28 -!- Phantom_Hoover has joined.
09:23:41 <Patashu> I'm pretty sure he has a contingent set aside for permanent end of the world readiness
09:23:45 <Patashu> like how the army has swat teams
09:25:33 <zzo38> Patashu: I also agree that the left behind writers did know better than to set a date. One thing it can be determined by the logic, the other is that it even says so in the Bible itself!
09:26:28 -!- Faaizaan has quit (Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi).
09:26:32 <Patashu> Besides, how come people never set an end times prediction more than a lifetime away?
09:26:40 -!- cheater__ has joined.
09:26:42 <Patashu> If the bible self-evidently set it, then surely it would have been in the far future at some point
09:27:58 -!- copumpkin has quit (Ping timeout: 241 seconds).
09:28:24 -!- copumpkin has joined.
09:28:30 -!- Faaizaan has joined.
09:28:35 -!- cheater__ has quit (Read error: Connection reset by peer).
09:29:02 -!- Faaizaan has quit (Client Quit).
09:35:48 <Patashu> https://github.com/shinh/ags/blob/master/be/modules/sandbox.c this looks complicated as
09:46:28 -!- FireFly has quit (Quit: swatted to death).
09:56:08 -!- Faaizaan has joined.
10:00:31 -!- Sgeo__ has quit (Read error: Connection reset by peer).
10:01:05 -!- Sgeo__ has joined.
10:06:18 -!- Faaizaan has quit (Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi).
10:06:40 -!- Faaizaan has joined.
10:09:40 -!- Faaizaan has quit (Client Quit).
10:14:43 -!- Faaizaan has joined.
10:16:17 -!- cheater_ has joined.
10:21:57 -!- Faaizaan has quit (Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi).
10:30:15 -!- Faaizaan has joined.
10:30:48 -!- cheater_ has quit (Ping timeout: 260 seconds).
10:30:50 -!- zzo38 has quit (Remote host closed the connection).
10:35:54 -!- cheater_ has joined.
10:40:47 -!- Faaizaan has quit (Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi).
11:02:24 -!- ralc has joined.
11:08:40 -!- sebbu has joined.
11:08:40 -!- sebbu has quit (Changing host).
11:08:40 -!- sebbu has joined.
11:11:53 -!- sebbu2 has quit (Ping timeout: 252 seconds).
11:34:25 -!- Faaizaan has joined.
11:39:33 -!- Faaizaan has quit (Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi).
11:45:40 -!- BeholdMyGlory has joined.
11:46:11 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
11:46:17 -!- Phantom_Hoover has joined.
11:55:14 -!- sebbu has quit (Read error: Connection reset by peer).
11:55:41 -!- sebbu has joined.
11:55:41 -!- sebbu has quit (Changing host).
11:55:41 -!- sebbu has joined.
11:57:29 -!- Faaizaan has joined.
11:59:27 -!- Faaizaan has quit (Client Quit).
12:06:46 -!- cheater_ has quit (Disconnected by services).
12:07:12 -!- cheater__ has joined.
12:12:38 <cheater__> i've come up with a linux kernel quine
12:16:04 <cheater__> well i guess it's actually a GNU kernel quine
12:20:36 -!- augur has quit (Remote host closed the connection).
12:22:07 -!- augur has joined.
12:35:04 -!- cheater__ has quit (Ping timeout: 260 seconds).
12:40:21 -!- ais523 has joined.
12:42:43 -!- cheater__ has joined.
12:51:56 <cheater__> http://esoteric.voxelperfect.net/wiki/GNU_Operating_System
12:56:40 <ais523> we really need some place to file "esoteric applications of typically non-esoteric languages" on the wiki
12:58:14 -!- ralc has quit (Ping timeout: 248 seconds).
12:59:04 -!- Vorpal has joined.
12:59:19 <cheater__> ais523: but that's an esolang. no one programs for the kernel shebang interpreter.
12:59:54 <ais523> that isn't programming for the shebang interpreter, though
13:00:14 <ais523> with a shebang so that it will be invoked under awk
13:00:20 <ais523> you might as well just do #!/usr/bin/cat
13:03:10 <ais523> what I'm saying is, you're invoking external programs there
13:03:35 <ais523> it's like writing "system '/usr/bin/ruby'" and using it as a proof that Perl is Turing-complete
13:03:41 -!- ineiros has quit (Ping timeout: 250 seconds).
13:04:45 <ais523> also, it does contain commands to read the source file! #! provides the source file as an argument to something, and /usr/bin/awk interprets its argument as a file to read
13:08:44 <Vorpal> <ais523> that isn't programming for the shebang interpreter, though <-- hm would that be possible though
13:08:58 <ais523> I don't think it's intelligent enough
13:09:08 <ais523> hmm, if you do #!/tmp/a and save it as /tmp/a
13:09:11 <ais523> then chmod it executable
13:09:15 <ais523> do you get an infinite loop?
13:09:49 <ais523> all that happened was that it went back to command prompt immediately
13:09:56 <Vorpal> * ais523 has quit (Connection reset by peer)
13:10:21 <Vorpal> ais523, I doubt strace will help, it will likely never leave the kernel
13:10:45 <Vorpal> ais523, can the #! interpreter even recurse at all?
13:10:55 -!- ralc has joined.
13:10:57 <ais523> ah, that's an interesting point
13:11:11 <ais523> I assumed it would drop to userspace at some point, but semantically, that's a kernelspace infinite loop
13:11:26 <ais523> (of course, if it were actually /interpreted/ as one it'd be a trivial DoS vulnerability
13:11:32 <Vorpal> ais523, I mean, what happens if you do /tmp/b containing #!/bin/bash\nbash "$@" and then put /tmp/b as an interpreter for another program
13:14:01 <Vorpal> <Vorpal> ais523, I mean, what happens if you do /tmp/b containing #!/bin/bash\nbash "$@" and then put /tmp/b as an interpreter for another program <-- seems it works
13:14:11 <ais523> Vorpal: as in, you get an infinite loop?
13:14:14 <ais523> or do you get a forkbomb?
13:14:24 <Vorpal> ais523, as in in my test it prints foo
13:14:34 <Vorpal> ais523, I just did finite recursion
13:14:59 <Vorpal> ais523, anyway, infinite recursion between two different interpreters might work. Probably not
13:15:14 <Vorpal> ais523, also I assume there is a finite length for such chains of interpreting
13:15:31 <ais523> Vorpal: that isn't an infinite chain, though, it's only two tiers
13:15:32 <cheater__> ais523: it's programming for the shebang interpreter.
13:15:41 <ais523> as it goes into userspace after loading bash
13:15:43 <cheater__> ais523: refresh the page, i have made a simpler quine.
13:15:45 <ais523> cheater__: no, it isn't
13:15:48 <Vorpal> ais523, so we know it allows at least two tires
13:15:48 <ais523> it's programming for awk
13:16:01 <ais523> your page would be vaguely interesting if it was even remotely factually correct
13:16:52 <ais523> cheater__: s/made a simpler quine/copied the quine I gave in the channel/?
13:16:57 <ais523> and all cat programs are quines
13:17:29 <cheater__> also, your line was wrong, because cat isn't in /usr/bin on many systems
13:17:43 <cheater__> in fact i don't know a system where it's in /usr/bin but i hadn't searched.
13:17:46 <ais523> even so, though, it has basically nothing to do with the shebang interpreter
13:18:07 <ais523> I keep getting directories for executables wrong because I'm used to DJGPP
13:18:20 <cheater__> the shebang interpreter is what passes the file name of the script being executed
13:18:21 <ais523> because it's not the shebang interp that's doing the printing, but an external progam
13:18:35 <cheater__> yes, that's why it's a quine for the GNU OS
13:18:40 <cheater__> not for the GNU shebang interpreter
13:19:16 <Patashu> quines are trivial with file IO though
13:21:48 * Vorpal ponders the possibilities of a /bin/cd instead of having it as a builtin in the shell
13:21:59 <Vorpal> I can see how it could be done, but it would be utterly messy
13:22:14 <Vorpal> for a start it would involve ptrace()
13:22:32 <cheater__> ais523: you cannot have infinite recursion in the shebang interpreter because the interpreter itself cannot be a script (in most versions of the interpreter).
13:23:13 -!- Faaizaan has joined.
13:23:30 <Vorpal> I'd like to code an OS, but most of the time would be spent during boring stuff rather than the few interesting things
13:23:34 -!- Faaizaan has quit (Client Quit).
13:23:43 -!- Faaizaan has joined.
13:24:32 <Vorpal> there are some things I think could be done better than *nix, and I have some ideas. But yeah, I'm not very interested in spending hours coding drivers and so on. Nor is most of memory management very interesting
13:24:39 -!- Faaizaan has quit (Client Quit).
13:24:41 <cheater__> ais523: i have really not read your /usr/bin/cat though, came up with it myself :p
13:24:49 -!- Faaizaan has joined.
13:25:04 <Vorpal> I wonder if building an OS in an HLL on top of a good microkernel would work
13:25:31 <Vorpal> (speaking of which, what good microkernels are there?)
13:25:43 -!- Faaizaan has quit (Client Quit).
13:25:52 -!- Faaizaan has joined.
13:26:14 <Vorpal> Faaizaan, I think you need to fix your connection
13:26:48 -!- Faaizaan has quit (Client Quit).
13:27:15 <Patashu> -only- hours? very fast coder
13:28:38 <Vorpal> Patashu, well I didn't say how many. Probably hundreds of them :P
13:28:59 <Patashu> I wouldn't know the first thing about coding a driver
13:29:50 <cheater__> it's simple, basically you're writing to special addresses to memory, oh and you sometimes need to do realtime and make sure you don't block stuff.
13:30:15 <Vorpal> only for memory mapped IO registers obviously
13:30:28 <Vorpal> x86 uses a separate bus for IO ports iirc
13:30:40 <Vorpal> not sure if that is still used on modern systems though
13:32:44 <Phantom_Hoover> I really, *really* hope DMM recently got a child and hasn't told us and this is actually him picking a name.
13:33:13 <Vorpal> Phantom_Hoover, is "Zelda" actually an old name? Not something simply made up by Nintendo?
13:33:54 <Vorpal> Zelda is a nickname for the feminine name Griselda which means "dark battle".[citation needed]" huh
13:36:08 <Phantom_Hoover> The games are named ultimately after F. Scott Fitzgerald's wife.
13:43:46 <cheater__> Zelda Sayre Fitzgerald (July 24, 1900 – March 10, 1948), born Zelda Sayre ("Sayre" is pronounced to rhyme with "fair") in Montgomery, Alabama, was an American novelist and the wife of writer F. Scott Fitzgerald.
13:44:01 <cheater__> Zelda's glamorous image also inspired the name of video game creator Shigeru Miyamoto's character Princess Zelda in his The Legend of Zelda video game series. Miyamoto explained, "Zelda was the name of the wife of the famous novelist F. Scott Fitzgerald. She was a famous and beautiful woman from all accounts, and I liked the sound of her name. So I took the liberty of using her name for the very first Zelda title."[85]
13:44:25 <cheater__> citing this: http://www.amazon.com/exec/obidos/tg/feature/-/117177/
13:53:44 -!- Cocytus has joined.
13:54:06 -!- Cocytus has left.
13:56:34 -!- sebbu2 has joined.
13:59:37 -!- sebbu has quit (Ping timeout: 260 seconds).
14:06:01 -!- sebbu has joined.
14:06:01 -!- sebbu has quit (Changing host).
14:06:01 -!- sebbu has joined.
14:10:01 -!- sebbu2 has quit (Ping timeout: 260 seconds).
14:11:20 -!- MigoMipo has joined.
14:20:44 <cheater__> there's a very similar idiom in polish.
14:21:00 <cheater__> it is "what does the gingerbread cake have to do with the windmill"
14:35:07 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:52:36 -!- sebbu has quit (Read error: Connection reset by peer).
14:53:05 -!- sebbu has joined.
14:53:05 -!- sebbu has quit (Changing host).
14:53:05 -!- sebbu has joined.
14:56:09 -!- ais523 has quit (Remote host closed the connection).
14:59:21 -!- ais523 has joined.
15:00:18 -!- copumpkin has joined.
15:00:26 -!- FireFly has joined.
15:08:09 -!- azaq23 has joined.
15:10:13 <lambdabot> is it hard to set up n ready my pc for programming?
15:10:17 <lambdabot> I personally emailed paul graham the lisp guy today after reading about python in E raymonds essay he metions ruby n python is u cant use lisp
15:10:39 <lambdabot> Im really only a bash person and even then Im tin
15:10:52 <lambdabot> how does haskell compare to say java?
15:10:55 <lambdabot> so this java guy I know says that java is the best when things get really complex and u need your apps do do real work
15:11:02 <lambdabot> cant u just have data in arrays and do operations using you prog lang?
15:11:06 <lambdabot> is haskell doomed to be a mysql driver?
15:27:20 -!- wareya has quit (Read error: Connection reset by peer).
15:28:05 -!- wareya has joined.
15:37:51 <Vorpal> interesting. It seems that I need to hit auto adjust on the monitor when the temperature of the GPU changes significantly (such as when playing a 3D game for a while, or a while after stopping playing one)
15:38:02 <Vorpal> that is some shoddy intel graphics
15:39:09 <ais523> it's pretty hard to temperature-compensate circuits
15:39:24 <ais523> often you have to use two entirely different circuits with opposite temperature responses, and arrange them to cancel each other out somehow
15:39:29 <ais523> and that's relatively expensive to do
15:39:41 <ais523> if you can just autoadjust the monitor instead, why not do it that way?
15:41:23 <Vorpal> <ais523> if you can just autoadjust the monitor instead, why not do it that way? <-- it is annoying to have to do that every minute or so when the chip is warming up or cooling down
15:42:43 <Vorpal> ais523, especially since the monitor seems to need an image with lots of sharp lines in it to autoadjust. Meaning the typical 3D game is not well suited. Something like text works well however.
15:43:29 <Vorpal> I seem to remember my old syncmaster came with a windows program to display some sort of auto-adjust pattern on the screen with a checkerboard pattern with a white frame in the outermost pixel
15:43:48 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
15:44:58 <Vorpal> anyway, we need one standard for digital monitor attachment. I could do digital for this monitor except I have no DP-to-DVI converter
16:18:08 -!- ineiros has joined.
16:22:44 -!- cheater__ has quit (Read error: Connection reset by peer).
16:32:44 -!- cheater__ has joined.
16:37:44 <Phantom_Hoover> "In computer science higher-order functions consists of two things: closures and currying."
16:38:30 <Phantom_Hoover> I am clearly going to have to find this man and hit him until he stops being wrong.
16:39:37 <Lymia> Arn't higher order functions functions that take or return functions?
16:41:04 <Phantom_Hoover> By his definition Python does not have higher-order functions.
16:41:31 <Phantom_Hoover> By his definition Lazy K doesn't have higher-order functions, come to think of it.
16:43:44 <Lymia> http://groovy.dzone.com/news/higher-order-functions-groovy-
16:44:43 <Lymia> Phantom_Hoover, ask him what "map(func,iter)" is if that's the definition of higher-order functions.
16:45:14 -!- monqy has joined.
16:45:14 <Lymia> Then ask him how the hell you can have functional programming without higher-order functions, when using the correct definition.
16:45:34 <Lymia> (Even C supports functions that take functions as parameters, right?)
16:45:51 <Lymia> Phantom_Hoover, Link him to this: http://en.wikipedia.org/wiki/Higher-order_function
16:46:20 <Phantom_Hoover> Which is why defining functional languages as those with higher-order functions is stupid.
16:47:07 <ais523> my working definition is that functional languages are those where reassignable variables are nonidiomatic (and might not even exist)
16:47:33 <Lymia> I'd define it as where programming in such a style is possible.
16:47:48 <ais523> higher-order functions help too, but I'm not sure they're actually required for a lang to be functional
16:47:51 <Lymia> (And not a giant pain in the ass)
16:48:10 <Lymia> You could program functionally in Python, couldn't you?
16:48:59 <ais523> I wouldn't call Python a functional programming language, although I would call it one in which functional programming was entirely possible
16:50:26 <Lymia> What about, say, Scala.
16:50:42 <ais523> I don't actually know Scala
16:50:52 <Lymia> It's var/val distinction makes it more likely to be functional by your definition, no?
16:51:12 <Lymia> Also, isn't such a definition more reliant on the community than the language unless no mutable state exists?
16:51:33 <ais523> Lymia: potentially it is
16:52:18 <Lymia> If you gave a Haskell programmer Python, I doubt you'd see much mutable state.
16:52:38 <Lymia> (If you gave them Java, they'd kick you in the shin)
16:52:55 <pikhq> If you gave them C++, you might not see much runtime behavior.
16:55:30 <Phantom_Hoover> Hmm, output doesn't actually break referential transparency.
16:56:27 <pikhq> No, but your compiler might do surprising things unless it acts like it does.
16:57:41 <Lymia> If you gave them C++, they'd still kick you in the shin.
16:57:51 <Lymia> That's still runtime behavior, but not from the computer.
16:59:57 <pikhq> Lymia: I was saying they'd do most of their programming in templates. Which is *just* this side of tolerable if you write a preprocessor for the purpose.
17:01:15 <Lymia> I guess you could replicate functional programming in any OO language reasonably well if you have inner classes.
17:01:28 <Lymia> What happens if you give a Haskell programmer basic?
17:01:30 <pikhq> It's nothing more than a compile-time static functional programming language with pattern matching.
17:01:49 <pikhq> You'd have a Basic backend for GHC in a month.
17:02:16 <Lymia> Compiling Haskell to Basic?
17:03:28 <pikhq> Either that, or they'd peek and poke their way to a better language in a few minutes. Say, an assembler.
17:04:14 <Lymia> What would happen if you went to a Java shop, and lugged in scala-library.jar and scala-compiler.jar
17:06:19 -!- Vorpal has quit (Remote host closed the connection).
17:06:51 -!- Vorpal has joined.
17:07:11 <pikhq> They'd probably be surprised at how little bloat your code has.
17:21:38 <cheater__> wow, nice! http://www.youtube.com/watch?v=x2mCDkqXki0&feature=related
17:50:49 -!- cheater__ has quit (Quit: Leaving).
17:54:45 <Vorpal> <ais523> my working definition is that functional languages are those where reassignable variables are nonidiomatic (and might not even exist) <-- what about closures?
17:55:03 <ais523> those are less important too, although very useful
17:56:05 <Vorpal> ais523, hm does bash have higher order functions? Arguably you could do it by eval
17:56:17 <Vorpal> or even without it sometimes
17:56:34 <ais523> Vorpal: I don't know, I'm not a bash expert
17:56:43 <ais523> anything with eval, you can normally simulate higher order functions in, though
17:56:44 <Vorpal> foo { $1 whatever; } bar { something; } foo bar
17:56:50 <ais523> unless it's sufficiently eso that you can't do anything vaguely like that
17:57:15 <Vorpal> ais523, I mean it is easy to do function pointers in bash
17:57:42 <Vorpal> so you can reach the level that C has easily.
17:57:49 <Vorpal> even without resorting to eval
18:08:14 -!- sebbu2 has joined.
18:10:20 -!- elliott_ has joined.
18:11:00 -!- sebbu has quit (Ping timeout: 240 seconds).
18:14:32 -!- azaq23 has quit (Quit: Leaving.).
18:16:03 -!- sebbu has joined.
18:17:52 -!- sebbu2 has quit (Ping timeout: 240 seconds).
18:22:07 <elliott_> [[GNU Operating System]] is even more off-topic than [[PHP]] was and needs deleting
18:23:17 <ais523> I don't think that sort of thing is inherently offtopic, it's just that nobody's written one that's at all interesting yet
18:23:48 <elliott_> well, it's not esoteric, it's not a language,
18:24:00 <elliott_> and its interest to esoteric programmers is only in that... you can run esointerpreters on it?
18:24:10 <elliott_> 04:54:58: <Sgeo__> Just took 300mg melatonin
18:24:53 <ais523> elliott_: I mean, things like Perl without letters or numbers probably qualify as esolangs
18:25:23 <elliott_> ais523: well, the shell /is/ a programming language, by design
18:25:34 <elliott_> but note that this is not the same thing as Unix, or GNU, at all
18:25:37 <elliott_> it's just one possible interface
18:25:47 <elliott_> the fact that you can do quines, or recursion, or anything, with it, is irrelevant
18:25:53 <ais523> elliott_: cheater897 wasn't claiming that the shell was an esolang, but that the "shebang interpreter" was, whatever that means
18:26:01 <elliott_> because it's a language by design, and not really an esoteric one
18:26:05 <elliott_> ais523: that makes no sense at all
18:26:07 <ais523> and really, it isn't, it's the executables that it runs that are... non-eso langauges
18:26:09 <elliott_> echo '#!/usr/bin/awk {print $0}' > quine; chmod oau+x quine
18:26:22 <ais523> elliott_: I was wondering about that, but didn't know enough awk to tell
18:26:40 <elliott_> that's not a quine... that's cat
18:26:44 <ais523> elliott_: it has to be cat
18:26:46 <elliott_> ais523: actually, the lack of a newline is after awk
18:26:52 <elliott_> it's a bug in the "shebang interpreter" code ;-)
18:26:58 <ais523> if you do #!/usr/bin/cat
18:27:05 <elliott_> anyway, the fixed quine is an actual quine, but a cheat one, so it doesn't count at all
18:27:06 <ais523> then that's a quine by itself, on DJGPP
18:27:18 <elliott_> additionally the recursion example is broken
18:27:19 <ais523> elliott_: on UNIX, cat is apparently typically not in /usr/bin
18:27:25 <elliott_> because you can't use shebangs in a shebanged executable
18:27:28 <ais523> elliott_: anyway I already deleted the page
18:27:49 <elliott_> yeah ok even for an off-topic page, it's literally the most error-ridden unfunny piece of crap i've ever read :P
18:29:52 -!- sebbu2 has joined.
18:29:52 -!- sebbu2 has quit (Changing host).
18:29:53 -!- sebbu2 has joined.
18:32:53 -!- sebbu has quit (Ping timeout: 252 seconds).
18:39:19 <pikhq> "PS. The voices in my head also tell me that the numbers are getting too big. I may just call the thing 2.8.0." — Linus
18:39:42 <pikhq> The last release would have actually been a good time for it.
18:39:50 <pikhq> Complete removal of the BKL and all.
18:44:53 <elliott_> I kind of feel like the "2." part will disappear sometime soon.
18:45:03 <pikhq> An alternate proposal is to go to 3.0.
18:45:15 <elliott_> pikhq: And then, hopefully, increment the major version more often...
18:45:24 <elliott_> I mean, compare 2.0 to whatever long string the latest release is.
18:45:29 <pikhq> (by "alternate proposal" I mean "alternate proposal that Linus is actually considering")
18:45:30 <elliott_> Tell me that isn't a major-version-worthy difference.
18:45:32 <elliott_> Even going a year or two back.
18:45:55 <pikhq> elliott_: Dear me, there's been quite a few major version-worthy changes in there.
18:46:36 <pikhq> Heck, even a few in 2.6.
18:47:06 <pikhq> Tickless kernel and removing the BKL are two such changes.
18:47:07 <elliott_> Didn't 2.6 come out like half a decade ago?
18:47:45 <pikhq> 2.6 came out 7 years ago.
18:48:38 <olsner> I thought going to 2.8 implied branching off a 2.7 first, and since there's been no branching there'll be no 2.8
18:49:23 <elliott_> olsner: it's Linus, he can do what the fuck he wants :)
18:49:23 <pikhq> olsner: The odd-number development thing is just straight-up outmoded, but there's still a bit of a desire for even number branches.
18:49:59 <pikhq> BitKeeper and git kinda killed the need for development version numbers.
18:50:50 <elliott_> man, how long did Linux use bitkeeper for anyway?
18:51:21 <elliott_> I bet before it did version control haters had an easier time -- "Damn man, use a VCS." "Linus doesn't." "Um, er, that is to say, erm,"
18:51:33 <Vorpal> <pikhq> Complete removal of the BKL and all. <-- BKL?
18:51:41 <pikhq> Vorpal: Big Kernel Lock.
18:52:25 <pikhq> Probably the single biggest architectural change Linux has had.
18:52:42 <olsner> I think they should switch from 2.6.x.y to 3.1.1 and just let the last two numbers keep increasing forever...
18:52:49 <olsner> well, until some magical time they realize it's sufficiently different from 3.1.1 to call it 4.1.1
18:53:04 <Vorpal> olsner, why not 3.0.0 first?
18:53:40 <Vorpal> pikhq, anyway most stuff in the kernel hadn't beel using the BKL for years iirc
18:53:40 <elliott_> I think major version numbers are irrelevant for any project that releases sufficiently often.
18:53:50 <elliott_> People have already realised that Chrome's major version number increments every few weeks.
18:54:00 <Vorpal> so really it was just the last remains being cleaned up
18:54:19 <pikhq> Vorpal: The removal of the BKL happened in the 2.6 tree. Entirely.
18:54:20 <Vorpal> elliott_, doesn't chrome use a rather longwinded version number
18:54:29 <Vorpal> pikhq, hm yes but the 2.6 tree has been going for years
18:54:30 <pikhq> Vorpal: It was a fairly long, drawn-out process.
18:54:41 <olsner> Vorpal: maybe using .1.1 would signify that it's not really the first major release (with the instability that usually implies), but already moved on to the first usable patch version
18:54:50 <elliott_> Vorpal: yes; I'm on 11.0.696.68
18:54:53 <Vorpal> pikhq, anyway didn't some parts in 2.4 not take the BKL as soon as entering the kernel even?
18:54:55 <Lymia> Can't we just abandon versions, and use a release number, along with a git commit id?
18:55:03 <olsner> but really it was just random, I temporarily forgot where the numbers start
18:55:06 <elliott_> Vorpal: and it hit eleven on...
18:55:18 <elliott_> and twelve is already in the dev channel IIRC
18:55:28 <elliott_> it'll probably be in the stable channel in a matter of weeks :P
18:55:33 <pikhq> Vorpal: Well, yes, but that wasn't due to a plan to remove the BKL.
18:55:39 <Vorpal> elliott_, that one is worse the old df version numbers iirc
18:55:50 <elliott_> Vorpal: I think the last two probably are a revision identifier of some kind
18:55:55 <olsner> chrome moved past opera in version numbers in about a tenth of the time opera has existed
18:56:04 <elliott_> Vorpal: Chrome on Windows and Mac updates completely silently, after all
18:56:08 <elliott_> (on Linux it's an apt repository)
18:56:13 <elliott_> (probably something for yum too)
18:56:20 <pikhq> Vorpal: I don't think you realise just *how* tied in the BKL was when they started this.
18:56:33 <Vorpal> elliott_, it is a bit scary that it updates silently. Is there an option to at least notify you of it?
18:56:45 <Vorpal> pikhq, probably you are right
18:56:50 <olsner> Vorpal: you're not supposed to care. really.
18:57:01 <pikhq> Even *open* took the BKL.
18:57:01 <elliott_> Vorpal: I'm not sure. It does yell at you to restart if it's gone too long without being quit or crashing (it actually includes "or crashing" in the message, at least as of last year :-D).
18:57:03 <Vorpal> olsner, I wouldn't trust google :P
18:57:30 <Vorpal> pikhq, but not whatever system call is used for getpid() I bet
18:57:32 <elliott_> Vorpal: I'm not totally "comfortable" with it as far as the potential for abuse goes if it got popular, but I really can't bring myself to care when it's Google.
18:57:41 <elliott_> Vorpal: It's hardly any more secure than apt.
18:57:45 <elliott_> Do you check every update that comes in?
18:58:07 <olsner> with the process-per-tab thingy in chrome, they should be able to partially upgrade the browser as you go along, upgrading tabs silently when you press reload :)
18:58:13 <Vorpal> elliott_, nope, but I have a nagging feeling that I should
18:58:22 <Vorpal> elliott_, and then I realise I wouldn't have time
18:58:33 <elliott_> Vorpal: Even if you did, you can't read binary patches.
18:58:39 <elliott_> You would have to compile every update from source yourself.
18:58:48 <elliott_> And if you think you can detect exploits in source code -- see Underhanded C contest.
18:58:59 <Vorpal> elliott_, I'm quite aware of that.
18:59:01 <elliott_> The only possible solution is a smart environment (capability security, etc.).
18:59:07 <ais523> elliott_: most of those exploits aren't all that hard to find, though
18:59:11 <elliott_> So while we're on our current systems... Chrome doesn't really bother me.
18:59:18 <Vorpal> elliott_, then you have to trust that environment. What about upgrades to it?
18:59:26 <pikhq> elliott_: Chrome is probably better on that count than most programs, really.
18:59:28 <elliott_> Vorpal: you always have to trust someone.
18:59:36 <pikhq> (in that it at least has a sane security *model*)
18:59:38 <elliott_> If you don't trust any part of your computer, there is exactly one solution: don't tell it anything.
19:00:08 <elliott_> Don't plug in a webcam. Never type anything you don't want the world to know. Blah blah blah. Basically if you don't trust anything you can't use a computer for anything.
19:00:09 <pikhq> (of course, if Google wants to rape that, then it's pretty well raped next update)
19:00:11 <Vorpal> elliott_, well I can probably trust something I build myself out of TTL logic :P
19:00:30 <elliott_> Vorpal: That's trusting yourself.
19:00:33 <pikhq> Vorpal: And write *all* the software yourself?
19:00:46 <elliott_> And if you trust yourself not to make mistakes... congratulations! You're an idiot!
19:00:46 <Vorpal> <elliott_> Don't plug in a webcam. Never type anything you don't want the world to know. Blah blah blah. Basically if you don't trust anything you can't use a computer for anything. <-- 1) I don't even have a webcam 2) no comments ;)
19:01:06 <elliott_> Vorpal: that includes your email password.
19:01:13 <Vorpal> elliott_, yes indeed, what about formal verification
19:01:20 <elliott_> In fact, an email account is out of the question if you don't trust anybody.
19:01:20 <pikhq> If you rely on an external compiler, you get Trusting Trust. If you rely on an external anything *else*, you rely on the source code not being underhanded or poorly written.
19:01:27 <elliott_> Vorpal: Coq could have a deliberate exploit.
19:01:34 <pikhq> And if you rely on yourself, you rely on your own perfection.
19:01:37 <Vorpal> elliott_, well you have to consider what damage could be done if whoever you trusted was not trustable
19:01:37 <pikhq> Such hubris, that.
19:01:43 <elliott_> Of course trusting that the authors of Coq is not exactly a hard thing to demand, but it's still trust.
19:01:53 <elliott_> And in this hypothetical we're trusting nothing.
19:01:55 <ais523> pikhq: if you rely on multiple external compilers, from different vendors
19:02:00 <ais523> you can use them to compile each other from source
19:02:09 <elliott_> Not trusting anyone is definitely a mental illness.
19:02:12 <Vorpal> elliott_, indeed, trust is like mathematics. You need to take something for given to do anything useful.
19:02:16 <ais523> which gets rid of all trusting-trust situations that don't involve a huge conspiracy
19:02:18 <elliott_> It also completely precludes society entirely.
19:02:27 <elliott_> Vorpal: you have to trust an awful lot.
19:02:50 -!- pikhq_ has joined.
19:02:51 <elliott_> (http://www.dwheeler.com/trusting-trust/)
19:03:00 -!- pikhq has quit (Quit: Reconnecting).
19:03:00 <pikhq_> ais523: But they could very well be working in a conspiracy.
19:03:08 <ais523> elliott_: is that a different trusting-trust article from the famous one?
19:03:09 <elliott_> If anyone actually stopped using computers after reading the Trusting Trust paper then ...
19:03:14 <elliott_> I don't even know, they're alien as far as I'm concerned.
19:03:28 <elliott_> ais523: trusting that there's no gigantic conspiracy is trust
19:03:34 <elliott_> and plenty of people don't do it
19:03:46 <elliott_> (they've all made major failures of reasoning, but so does anyone who doesn't trust anything)
19:03:52 <ais523> in my case, there are things I trust and things I don't
19:04:04 <elliott_> David A. Wheeler’s Page on Fully Countering Trusting Trust through Diverse Double-Compiling (DDC) - Countering Trojan Horse attacks on Compilers
19:04:09 <ais523> and lack of a massive conspiracy is more trustworthy than lack of a small conspiracy, for instance
19:04:12 <elliott_> http://www.dwheeler.com/trusting-trust/dissertation/wheeler-trusting-trust-ddc.pdf
19:04:48 <ais523> hmm, you can get a PhD out of that defence? I thought it was obvious
19:05:06 <elliott_> ais523: It's not as simple as what you said
19:05:14 <pikhq_> Essentially, at a certain point you have to take the trustworthiness of *something* for granted, or give up on everything more advanced than a big stick and your own arm.
19:05:17 <elliott_> which is why I linked to it, so you could read the summary
19:05:32 <elliott_> I appear to have momentarily deluded myself into thinking you might actually click a link
19:06:10 <elliott_> I suppose I could always Ctrl+A, Ctrl+C, Ctrl+V the page, but you seem to prefer I reword things in my own awkward words for some reason
19:06:22 <Vorpal> pikhq_, but how can you trust the stick to be a stick?
19:06:56 <pikhq_> Vorpal: Oh, fuck, solipsism.
19:07:14 <pikhq_> Very well then. You can trust nothing but the existence of your own mind.
19:07:16 <Vorpal> pikhq_, are you sure your mind exists then?
19:07:27 <Vorpal> how can you be so sure it isn't just an illusion
19:07:49 <elliott_> Vorpal: the answer to that is obvious.
19:07:59 <Vorpal> pikhq_, do you actually think, or do you just feel like you do.
19:08:02 <elliott_> Vorpal: the answer to that is obvious.
19:08:21 <pikhq_> Vorpal: If you are capable of asking that question, you are clearly thinking.
19:08:24 <Vorpal> elliott_, shut up, I'm being factitious here. :P
19:08:31 <elliott_> Vorpal: yes but it's just stupid.
19:08:31 <pikhq_> Ergo, your mind must exist in some fashion.
19:08:42 <pikhq_> What that fashion *is* is, of course, debatable.
19:09:13 <elliott_> suddenly this conversion is kind of stupid
19:16:45 -!- sebbu has joined.
19:16:45 -!- sebbu has quit (Changing host).
19:16:45 -!- sebbu has joined.
19:20:17 -!- sebbu2 has quit (Ping timeout: 255 seconds).
19:26:59 <ais523> hmm, TIL that tcc was originally the C compiler submitted as an IOCCC entry
19:27:09 <ais523> I was aware of both of them, but wasn't aware that they were the same codebase
19:38:05 -!- zzo38 has joined.
19:43:48 <Sgeo__> Is a MSPA flash coming?
19:44:37 -!- sebbu has quit (Read error: Connection reset by peer).
19:44:43 <elliott_> AH is having computer problems
19:45:04 -!- sebbu has joined.
19:47:44 <pikhq_> Phantom_Hoover: TCC: Tiny C Compiler.
19:47:50 <pikhq_> Phantom_Hoover: By Fabrice Bellard.
19:48:31 <elliott_> Phantom_Hoover: I told you to read the Twitter so read the damn Twitter
19:48:40 <elliott_> buying a new one wont fix it this time, its software probs.
19:48:59 <Phantom_Hoover> Yes but I don't actually understand what the hell that means.
19:50:03 <elliott_> which is logical, since software licensing is incredibly painful and copying large work-in-progress files would take ages
19:50:07 <elliott_> "Actually, I want to implement a NF interpreter sometime. This will include "networking" and implicit "IPC" (IPC in the sense of a localhost-localhost communication). Please, read my article again. There I have written that the SETUP of the connection has to be established by client and server which is running NF. Actually, I do know what these words mean, as I studied network technique 1 year in the University of Applied Sciences in Mannheim as part of
19:50:07 <elliott_> my Bachelor study of computer sciences. I do know how to use pipes, IPCs, shared memory, traps, rendevouz, mutexes and deadlock-free communications."
19:50:10 <elliott_> Phantom_Hoover: DON'T MESS WITH THIS GUY
19:50:15 <elliott_> HE STUDIED NETWORK TECHNIQUES FOR A YEAR
19:50:20 <elliott_> AT THE UNIVERSITY OF APPLIED SCIENCES IN MANNHEIM
19:50:26 <elliott_> AS PART OF A BACHELOR STUDY OF COMPUTER SCIENCES
19:50:33 <elliott_> He will RUIN you with his knowledge.
19:53:55 <elliott_> an utterly uninteresting, incredibly underspecified BF derivative whose creator is arguing its merits with PH on the wiki right now hilariously badly
19:54:00 <Phantom_Hoover> It's the one which has a single static 2-way pipe between processes which he calls networking.
19:54:03 <elliott_> "I have a Bachelor's degree in CS, your argument is invalid"
19:54:09 <elliott_> Phantom_Hoover: well it is networking, with a single socket
19:54:16 <elliott_> he seems to be saying that interpreters have you set up the socket beforehand
19:54:42 <Vorpal> elliott_, so what does it add to bf, I mean, since Ook is still on the wiki it has to be more mediocre than that
19:55:16 <Phantom_Hoover> Ook is vaguely tolerable due to novelty value and DMM armour.
19:55:16 <elliott_> PH is just saying it's crap :P
19:55:28 <elliott_> Ook is terrible, but it was, like, the first BF remapping.
19:55:29 <Vorpal> Phantom_Hoover, dmm made ook!?
19:55:48 <elliott_> http://esolangs.org/wiki/David_Morgan-Mar
19:55:59 <Vorpal> elliott_, yes I know dmm made piet
19:56:08 <ais523> one BF remapping is clever
19:56:19 <ais523> BF derivatives wouldn't be so looked-down-upon if there weren't so many of them
19:56:21 <Phantom_Hoover> Vorpal, the thing about DMM is that his stupid languages are unapologetic jokes.
19:56:46 <Vorpal> Phantom_Hoover, hm true. Ook does have a slight humour value
19:57:10 <Phantom_Hoover> NF, OTOH, seems to be meant as an actual exercise in programming.
19:57:25 <elliott_> The creator Daniel Marschall announces a price for the person who implements
19:57:25 <elliott_> A comfortable "pong" game written in NetFuck 1.0 (Classic notation)
19:57:30 <elliott_> really tempted to ask what the prize is
19:57:50 <elliott_> although a comfortable pong game with BF IO is impossible, probably he's assuming , works instantly
19:57:59 <ralc> elliott_, do you have a link to the place where that guy wrote about his 1 year of CS study?
19:58:09 <elliott_> ralc: no no, one year of networking study
19:58:11 <elliott_> http://esolangs.org/wiki/Talk:NetFuck
19:58:30 <Phantom_Hoover> ralc, to be fair, that was in response to me saying he didn't know what networking or IPC were.
19:59:23 <elliott_> it would be great if a static connection between two programs meant that you embedded an identifier of the program it's connected to in the source
19:59:32 <elliott_> and then every instance of program A and B are connected to each other in the world, simultaneously
20:00:20 <cheater897> ralc, if you find it, can you link me up?
20:00:21 <ais523> we should make a parody of stupid BF derivatives
20:00:29 <ais523> that's the stupidest BF derivative we can think of
20:00:36 <Sgeo__> Does my BF derivative count as stupid
20:01:07 <ais523> Sgeo__: probably, although I haven't seen it; statistically speaking, most are
20:01:43 <ralc> cheater897, elliott_ just linked it
20:02:13 <elliott_> <ais523> we should make a parody of stupid BF derivatives
20:02:13 <elliott_> <ais523> that's the stupidest BF derivative we can think of
20:02:18 <elliott_> ais523: bf, but with the command meanings permuted
20:02:24 <Vorpal> <ais523> that's the stupidest BF derivative we can think of <-- that's deadfish. It is so stupid it is no longer turing complete.
20:02:28 <elliott_> i think that already exists :(
20:02:48 <ais523> I don't even consider Deadfish a BF deriv
20:03:00 <elliott_> plus misinterpret . as decimal output
20:03:02 <Phantom_Hoover> As in it wasn't an interesting idea, but it didn't actually take *effort* to be stupid.
20:03:07 <ais523> why don't we just remove ]?
20:03:07 <elliott_> ais523: I didn't before now but now I have to
20:03:17 <elliott_> yes, and then try and justify looping still being possible
20:03:18 <ralc> it just caught my attention, being a CS student myself.. one year teaches you sh*t
20:03:18 <Vorpal> <ais523> I don't even consider Deadfish a BF deriv <-- yes it is, if you kind of squint and move your head back and forth
20:03:23 <elliott_> because a[b is obviously the same as a[b[a[b[a[b[a[...
20:04:10 <ais523> this reminds me of Minimum
20:04:15 <ais523> which is one of my favourite joke languages
20:04:18 <Vorpal> elliott_, another idea. bf with whitespace syntax.
20:04:49 <Phantom_Hoover> <ralc> it just caught my attention, being a CS student myself.. one year teaches you sh*t
20:05:22 <Vorpal> Phantom_Hoover, a what
20:05:33 <ralc> i had to google that
20:05:33 <elliott_> ais523: there is actually one valid Minimum program, depending on how you interpret things
20:05:45 <elliott_> ais523: unfortunately, it just hangs
20:05:52 <cheater897> ais523, who deleted my entry on the esolang wiki?
20:05:54 <ais523> elliott_: there are multiple valid Minimum programs
20:06:12 <ais523> a Minimum program is the application of one Minimum program to another, right?
20:06:15 <cheater897> elliott_, someone's not talking to you
20:06:22 <elliott_> cheater897: (Deletion log); 18:21 . . Ais523 (Talk | contribs) (deleted "GNU Operating System": factually incorrect, not particularly interesting, and not an esolang)
20:07:05 <cheater897> ais523, have you deleted my entry on the esolang wiki?
20:07:19 <ais523> cheater897: the deletion log is public knowledge, you know
20:07:27 <ais523> and yes, because there was no useful content there
20:07:29 <cheater897> ais523, i don't know how to access it.
20:07:34 <elliott_> no you see you have to tell him you did so he can yell at you and waste your time.
20:07:40 <ais523> typing Special:Log/delete is probably the easiest way
20:08:03 <cheater897> why did you think there was no useful content in there?
20:08:41 <ais523> cheater897: well, /was/ there any useful content in there?
20:08:52 <ais523> merely observing that quines exist does not imply that something is an esolang
20:09:33 <cheater897> ais523, why would you say the kernel shebang interpreter is not an esolang?
20:09:51 <ais523> because it just runs arbitrary executables
20:09:57 <Vorpal> hm, *tries to think of a haskell quine*. I guess you could do the usual way, but format strings simplify that quite a bit
20:09:59 <ais523> that's a) useful, and b) computationally uninteresting
20:10:02 <ais523> thus the opposite of an esolang
20:10:16 <cheater897> how many websites are there that explain its workings in full?
20:11:16 <HackEgo> 36) <augur> augur: pretty true.
20:11:58 <cheater897> ais523, i am asking because i believe the answer to that question challenges your notion that it's not an esoteric language.
20:12:17 <ais523> cheater897: quite a few, I imagine, because it is very simple
20:12:45 <elliott_> vortex is higher-dimensional mathematics
20:12:48 <ais523> and I can't be bothered to find the relevant portion of the source code
20:13:14 <cheater897> ais523, your imagination is not right.
20:13:35 <elliott_> that's a really stupid way of saying "you're wrong"
20:13:37 <cheater897> ais523, just google for "shebang interpreter" and see how many tutorials you find that explain e.g. how parameters are parsed there.
20:13:40 <elliott_> which is a stupid thing to say to start with
20:13:43 <ais523> cheater897: you just made an unsubstantiated statement that something in particular did not exist on the internet
20:13:44 <elliott_> nobody says "shebang interpreter"
20:13:54 <ais523> in fact, I invoke rule 35 on you right now, just to make you feel the implications
20:14:08 <cheater897> you have said "quite a few", and i have said that that was wrong.
20:14:19 <cheater897> "not quite a few" does not equal "none".
20:15:47 <elliott_> a herp derp derp a derp derp derp derp
20:16:01 <cheater897> ais523: i believe that's a logically sound argument. what do you answer to it?
20:16:12 <ais523> cheater897: that your logic is very wrong (counterexample: INTERCAL)
20:16:38 <ais523> or, basically, that you're saying A! well, B might be relevant! You said C, but you're wrong, thus I win the argument!
20:16:51 <olsner> why does upgrading libc in ubuntu involve generating/compiling/herp-derping a million locales?
20:16:54 <ais523> and counterexample to B
20:17:02 <elliott_> ais523: why are you being distracted by an irrelevant argument, anyway? his page did not fully explain the "shebang interpreter" anyway
20:17:06 <ais523> I'll let you fill in the metasyntactic variables yourself, because they really don't matter
20:17:15 <elliott_> so his argument is dismissable from the start
20:17:18 <ais523> elliott_: because winning the argument three times is more fun than winning it once
20:17:24 <ais523> I've won it twice already
20:17:26 <olsner> herp_DERP.ISO-8859-7 will be so very useful for me
20:17:34 <ais523> I think I lost it the third time, but that was a very pointless argument
20:17:40 <cheater897> here is my argument: 1. an esoteric language is a language that is not widely understood 2. there are only very few widely known documents on this specific interpreter 3. therefore, it is not widely known 4. that makes it esoteric
20:17:40 <pikhq_> Wow. Gold and silver are now legal tender in Utah.
20:17:44 <elliott_> ais523: I should keep a score card
20:17:51 <pikhq_> And this changes *nothing* but the herp and the derp.
20:17:57 <elliott_> cheater897: that is not a widely-accepted definition of esolang
20:18:06 <elliott_> in fact, our frontpage directly contradicts it
20:18:12 <cheater897> elliott_, there's someone who's not talking to you
20:18:17 <ais523> cheater897: I disagree with 1 and 4, and I think 2 and 3 may also both be wrong
20:18:18 <elliott_> "An esoteric programming language (sometimes shortened to esolang) is a programming language designed as a test of the boundaries of computer programming language design, as a proof of concept, or as a joke."
20:18:40 <pikhq_> (as someone who would not accept gold for a debt is a complete moron)
20:18:47 <elliott_> cheater897: Nobody is talking to you; I'm sitting from the sidelines mocking you, and ais523 is apparently bored enough to try and humour you
20:18:55 <elliott_> But there's definitely nothing so mutually intellectual as talking going on.
20:19:20 <ais523> elliott_: you forgot to mention olsner
20:19:35 <elliott_> ais523: olsner isn't talking, he's monologuing :)
20:19:51 <ais523> pikhq_'s statements were interesting, but I have nothing to say in response to them
20:20:02 <olsner> ais523: I'm just herping the derps, don't mind me
20:20:28 <ais523> olsner: I mean to ask; what exactly does herp mean, and how does it differ from derp?
20:20:33 <ais523> I was actually curious enough to look it up
20:20:38 <ais523> and found explanations of derp, but not herp
20:20:53 <elliott_> ais523: Herp and derp are the two constituent components of herp derp.
20:20:57 <pikhq_> Phantom_Hoover: Because herp derp.
20:20:58 <olsner> ais523: in other news, the sr_CS.ISO-8859-5@jekavian locale is broken
20:20:59 <elliott_> OMG THAT'S WHAT OUR WORST BF DERIVATIVE MUST BE
20:21:04 <elliott_> Ook, but with herp and derp rather than ook and punctuation
20:21:07 <ralc> i have a feeling that being in here long enough...
20:21:14 <ais523> ralc: sorry about this
20:21:19 <cheater897> ais523, programming the shebang interpreter is by definition hard, because it's not meant to be programmed in
20:21:30 <elliott_> ralc: Especially when cheater's talking.
20:21:31 <ais523> cheater897: nor is MS Paint
20:21:51 <cheater897> ais523, if you figured out how to computer-program ms paint, i'd applaud.
20:21:55 <elliott_> ais523: actually, your MS Paint tic-tac-toe AI counts as a proof that esoteric programming can be done in Paint
20:22:00 <elliott_> doesn't prove MS Paint an esolang, ofc
20:22:03 <Phantom_Hoover> The worst BF derivatives are those that, in dbc's words, attempt to make a luxury car by sticking parts onto a skateboard.
20:22:16 <elliott_> <cheater> someone not talking to you herp derp
20:22:25 <elliott_> oh man what, you're talking to me sometimes??
20:22:37 <ais523> elliott_: I think a separate term is needed for trying to use things not intended as programming languages at all as esoprograms
20:22:41 <cheater897> i see you have a problem with tenses. are you sure you're british?
20:22:44 <elliott_> Phantom_Hoover: And then remaking the skateboard out of herp derp.
20:22:58 <ais523> I went and implemented the same tic-tac-toe program in a variety of other programs I had lying around on the computer too
20:23:04 <ais523> such as Powerpoint and WinHlp32
20:23:06 <elliott_> cheater897: hmm, the fact that nobody actually wants to talk to you is now blatantly obvious to everyone watching
20:23:11 <elliott_> so, either you're extremely dense, or a troll
20:23:20 <Phantom_Hoover> elliott_, yes, but superfluous additions to the language that fail to understand minimalism are crucial to making the Platonic worst BF derivative.
20:23:23 <elliott_> unfortunately, I already expected both, so that doesn't actually prove anything either way conclusively
20:23:27 <cheater897> ais523, how did you implement it in there?
20:23:29 <ais523> actually, I /think/ it was winhelp (16-bit)'s format, being implemented for backwards compatibility
20:23:33 <ais523> cheater897: it's not hard
20:23:44 <cheater897> ais523, that does not answer the question, though.
20:23:53 <pikhq_> ... MS paint tic-tac-toe AI‽
20:23:57 <ais523> note that you can express a tic-tac-toe solver as a finite state machine
20:24:09 <ais523> pikhq_: it was on filebin.ca, so is probably down by now
20:24:09 <zzo38> How can you make MS paint tic-tac-tie AI or programming the shebang interpreter?
20:24:11 <elliott_> pikhq_: spoiler: it works with the flood tool
20:24:15 <ais523> but I can repost it on imgur or somewhere
20:24:31 <elliott_> ais523: imgur, perfect web host for Piet and MS Paint programs
20:24:38 <ais523> wow, this file is so old its filename is in uppercase
20:24:53 <ais523> -rw-r--r-- 1 ais523 ais523 599574 2003-11-04 01:05 OANDX.BMP
20:24:57 <elliott_> The flood tool is actually fairly computationally impressive IMO
20:25:11 <ais523> the main issue was getting rid of wire-crossings
20:25:32 <elliott_> has the wire-crossing problem ever been conclusively solved?
20:25:43 <ais523> gah Gnome's file chooser is the most annoying ever
20:26:00 <ais523> elliott_: I tried, but gave up when I figured out I didn't actually know what the wire-crossing problem meant
20:26:05 <Phantom_Hoover> elliott_, both me and ais523 have come to the conclusion that it is so poorly-defined that it cannot be solved in any meaningful way.
20:26:26 <zzo38> What is programming the shebang interpreter supposted to means?
20:26:41 <elliott_> zzo38: it means next to nothing
20:26:43 <ais523> http://i.imgur.com/ip6xZ.png
20:27:13 <ais523> hmm, imgur's translating of it to .png will prevent it opening in Windows 3.1
20:27:20 <ais523> although presumably more modern versions of Paint will be able to cope
20:28:19 <Sgeo__> "I'm not sure if there are actually theories that don't pertain to Lord English in that thread, but you should ask there anyway."
20:28:31 <ais523> also, ouch that border is ugly
20:28:44 <elliott_> Sgeo__: stop reading the worst forum :P
20:29:04 <Sgeo__> How is it the worst forum? Just because it's official in some sense?
20:29:19 <elliott_> No, it's the worst forum because it's the worst forum
20:29:26 <pikhq_> ais523: Hmm, does it do perfect play?
20:29:44 <elliott_> Phantom_Hoover: any with the same algorithm, ofc
20:29:55 <ais523> pikhq_: no, in that it doesn't always take an opportunity to win
20:30:29 <zzo38> Ah it is because of the way X&O game works, it is possible to do this.
20:30:30 -!- TOGoS has joined.
20:30:30 <ais523> Phantom_Hoover: any tool that changes the color of an area of constant color
20:30:33 <Sgeo__> ais523, is there a version where the wires etc. are difficult to see?
20:30:43 <zzo38> Other games you might can't.
20:30:57 <ais523> Sgeo__: they were on a 640x480 screen on a computer with 4-bit color depth
20:31:12 <pikhq_> Sgeo__: This is for Win 3.1 colors.
20:31:28 <ais523> but you can see them anyway once they turn black
20:33:35 <zzo38> Can you do more complicated things like that by using fiood fills that have a tolerance value?
20:34:22 <elliott_> that would allow wire-crossing
20:34:40 <elliott_> where the two |s have colours two pixels away
20:34:43 <ais523> zzo38: I experimented along those lines; I concluded it was probably possible, but failed to make anything interesting
20:34:45 <elliott_> and the +- is in between the two colours
20:35:01 <ais523> elliott_: Burn worked along similar lines, IIRC
20:35:04 <ais523> I just can't remember how
20:35:12 <elliott_> hmm, there's a problem, though
20:35:16 <elliott_> you need /recursive/ tolerance
20:35:29 <elliott_> Phantom_Hoover: that's irrelevant, everything is once-only here
20:35:34 <elliott_> ais523: i.e. it has to be tolerance relative to the last pixel you coloured
20:35:41 <elliott_> otherwise, a crossed wire can't cross on to another wire
20:36:10 <ais523> actually, that wouldn't work either
20:36:16 <ais523> or the crossing wouldn't work at all
20:36:22 <Sgeo__> Link to MSPA forum horribleness?
20:37:20 <cheater897> zzo38, the linux kernel has a special interpreter built in
20:37:42 <cheater897> zzo38, it interprets the first line of scripts that you run as executables. the first line has the form of #!/bin/bash or something like that.
20:38:18 <ais523> cheater897: that is not a programming language interpreter
20:38:24 <ais523> it runs executables, that's it
20:38:24 <zzo38> cheater897: I know that. I think it has to start #! followed by the filename of the program, and a space and parameter and then a line feed
20:39:33 <zzo38> And you have to have +x permissions on the file.
20:40:59 <cheater897> zzo38, pretty much, yes, except for versions of unix where that's not the case.
20:41:34 <elliott_> ais523: you realise he's not going to listen to you no matter what you say?
20:41:48 <cheater897> ais523, it does not run executables, just specific one
20:42:55 <zzo38> cheater897: In what versions of UNIX does it differ, and in what ways?
20:43:06 <cheater897> zzo38, well you don't always have +x..
20:44:37 -!- TeruFSX has joined.
20:46:18 <Sgeo__> "Q: The Homestuck TVTropes page says-
20:46:18 <Sgeo__> A: The TVTropes page is a joke."
20:49:41 <ais523> cheater897: http://pubs.opengroup.org/onlinepubs/009695399/functions/execve.html (search for the "rationale" section)
20:50:11 <ais523> it seems that the reason that you yourself couldn't find a widely available description of shebang lines is that it is, in fact, not standardised, and merely a POSIX-sanctioned behaviour for running executables
20:50:14 <elliott_> <h4><a name="tag_03_130_08"></a>RATIONALE</h4>
20:50:21 <elliott_> you could have used an anchor :-)
20:50:25 <ais523> elliott_: I was wondering about htat
20:50:35 <ais523> but couldn't find any obvious way to determine what it is
20:50:41 <ais523> and didn't want to check the source
20:50:53 <ais523> especially because the site uses frames
20:51:01 <elliott_> in both chrome and Firefox-with-firebug
20:51:07 <ais523> its source is pretty clean, though
20:51:17 <ais523> didn't want to load Firebug either
20:51:43 <elliott_> oh, right, Firebug has a performance penalty
20:52:16 <cheater897> ais523, many versions of the interpreter will not execute scripts as the embedded interpreter
20:53:04 <Sgeo__> http://www.mspaforums.com/showthread.php?37956-MSPA-Simple-Questions-Thread
20:55:33 <cheater897> ais523, scripts are executables too.. but those versions of the kernels will only execute binaries.
20:55:46 <ais523> cheater897: you lost the argument ages ago
20:55:55 <ais523> so I'm not entirely sure why you're still trying
20:56:04 <cheater897> you think i'm still going on with that argument?
20:56:23 <elliott_> "I'm not arguing, I'm just responding to counterarguments you're making."
20:56:42 <elliott_> hmm, I wonder who here /isn't/ mentally ill according to cheater
20:56:47 <cheater897> i understand erratic behaviour from elliott_, he's not really completely right in the head
20:57:27 <cheater897> elliott_, i think the set is {elliott}^c
20:58:19 * ais523 takes the powerset of elliott
20:58:33 <ais523> (note: it's {elliott, not elliott})
21:00:05 <cheater897> elliott_: if you invested as much energy into being friendly as you do into being repulsive, we'd both be much happier.
21:00:41 <elliott_> nah, I've tried being friendly to you but it turns out you're too stupid
21:00:44 <cheater897> ais523, either way, i agree with you that maybe that page doesn't belong on the esolang wiki.
21:01:06 <elliott_> no, actually, I was quite friendly to you when you first came here, so was everyone else
21:01:12 <cheater897> ais523, i think you're right there should be a place for this sort of thing
21:01:23 <elliott_> when on earth did ais523 say that?
21:01:48 <cheater897> elliott_, then you had a mental breakdown and picked a target, and becuase no one else wanted you to live it out on them, they just ignored it, and then went with it
21:02:10 <elliott_> yes. absolutely. this is definitely what you believe.
21:02:20 <cheater897> but, that conversation doesn't really belong in here.
21:02:25 <elliott_> nor does anything else you say
21:03:30 <ais523> elliott_: what /was/ that program you ran in B Nomic?
21:03:31 <cheater897> ais523, if you somehow come up with an area on the esolang wiki to put the "usual" languages, i can populate it with "funny" behaviour in a few languages.
21:03:34 <ais523> I remember you did, but not what it did
21:03:36 <elliott_> Phantom_Hoover: The most eloquent message ever said.
21:03:43 <elliott_> cheater897: That's not ais' decision to make and it doesn't belong on the esolang wiki.
21:03:45 <ais523> cheater897: I don't have the userrights to do that sort of thing
21:04:03 <elliott_> The only person who could sign away their server space to being filled with your absolutely retarded ideas is Graue.
21:04:03 <ais523> and even if I could, wouldn't without Graue's approval, and especially not since the category debacle
21:04:18 <elliott_> Maybe Graue is somehow stupid enough to, though. Or maybe we'll fork and Timwi will be the new admin :-P
21:04:49 <ais523> I think it's on [[Esolang talk:Categories]], but i can't remember
21:05:51 <Phantom_Hoover> Hey elliott_ you really suck as well come at me breakdownily bro.
21:06:19 <elliott_> Phantom_Hoover: I hate you so much. Totes.
21:06:33 <cheater897> ais523, do you mean this? http://esoteric.voxelperfect.net/wiki/Talk:Categories
21:06:41 <zzo38> cheater897: Put things about "funny" behaviour in a few "usual" languages in subpages of your userpages if it doesn't go with the normal stuff.
21:07:20 <ais523> cheater897: no, that's a blank page
21:07:34 <ais523> http://esolangs.org/wiki/Esolang_talk:Categorisation
21:07:35 <cheater897> ais523, i know. what url did you mean then?
21:07:46 <ais523> assuming I've remembered the name right
21:08:00 <Phantom_Hoover> HATE. LET ME TELL YOU HOW MUCH I'VE COME TO HATE ELLIOTT SINCE I BEGAN TO LIVE. THERE ARE 387.44 MILLION MILES OF PRINTED HOOVER FILTERS IN WAFER THIN LAYERS THAT FILL MY COMPLEX. IF THE WORD HATE WAS ENGRAVED ON EACH NANOANGSTROM OF THOSE HUNDREDS OF MILLIONS OF MILES IT WOULD NOT EQUAL ONE ONE-BILLIONTH OF THE HATE I FEEL FOR ELLIOTT AT THIS MICRO-INSTANT FOR YOU. HATE. HATE.
21:08:09 <ais523> the page does exist, I just can't remember where it is..
21:08:51 <elliott_> Phantom_Hoover: this is even more breakdown-relieving than cheater897
21:09:42 <ais523> elliott_: you were right, it is indeed z rather than s
21:09:51 <elliott_> ais523: Americans running our wiki :|
21:10:20 <Phantom_Hoover> You would have to die painfully about 200 times before I started not hating you.
21:10:26 <ais523> but that page only hits the tail end of the debacle
21:10:32 <elliott_> ais523: that posix page you linked is confusing
21:10:36 <elliott_> Applications that do not require to access their arguments may use the form:
21:10:36 <elliott_> as specified in the ISO C standard. However, the implementation will always provide the two arguments argc and argv, even if they are not used.
21:10:45 <elliott_> Two arguments will be provided that cannot possibly be accessed in any way
21:10:56 <ais523> elliott_: it's POSIX, did you expect it to make sense?
21:11:00 <elliott_> in fact, passing two arguments to a (void) function might even break some conforming C implementations, no?
21:11:54 <elliott_> "It's kind of a pity that MediaWiki makes a distinction between articles and categories (instead of, say, just having some sort of general "can-be-classified-under" association between articles.) What if I want to see a list of all languages designed by Gerson Kurz, for instance...?"
21:12:00 <elliott_> someone needs to tell Chris Pressey about "what links here" six years ago
21:14:00 <elliott_> anyway, http://esoteric.voxelperfect.net/wiki/User_talk:Stux#Incident is the actual beginning of the categorisation drama
21:14:09 <elliott_> although can it really be said to be drama if Graue is the only participant?
21:14:21 <ais523> well, it was drama, and I think other people commented on it
21:14:22 <elliott_> ooh, someone brave should add an {{unsigned}} template to that
21:14:41 <elliott_> and also, Graue's other comment
21:14:51 <elliott_> hmm, Keymaker used ~~~~~ by mistake too later on
21:14:56 <Phantom_Hoover> Well OK I am foolhardy but there's basically no difference.
21:15:15 <ais523> <Stux> And I appreciate your response Graue for replying to my post and explaining your actions (No offense, but Graue, could you sign your posts more often? It's taken me 3 months to realize that it was one of your replies posted here).
21:15:19 <elliott_> Phantom_Hoover: statements like that are also why you're not our leader
21:17:40 <elliott_> ais523: hmm, do you think we have consensus for [[Category:Turning tarpits]]?
21:18:00 <elliott_> "In a few days, if no one complains, I'll add the category." --Maharba in April
21:20:21 <elliott_> and added to appropriate pages
21:20:34 <elliott_> (→Incident - Add unsigned. Also, why does this thing demand a timestamp.)
21:20:41 <elliott_> Phantom_Hoover: because you should include a template
21:20:44 <elliott_> Phantom_Hoover: because you should include a timestamp
21:20:54 <elliott_> please fix it so I don't have to, I'm lazy :)
21:20:58 <Phantom_Hoover> elliott_, yes but I really can't be bothered checking the history.
21:21:29 <elliott_> http://esoteric.voxelperfect.net/w/index.php?title=User_talk:Stux&diff=2936&oldid=2935
21:21:48 <Vorpal> in mediawiki that is a sin
21:22:27 <Phantom_Hoover> Yet another reason LQT is bad and people who like it should be shot.
21:22:32 <ais523> if people top-post when emailing me, I edit their message into a bottom-post before replying to it
21:22:45 <elliott_> ais523: I usually omit nested quotes
21:22:52 <elliott_> they're usually irrelevant/annoying in email
21:23:16 <ais523> but in the case where they're relevant, I edit them into top-posts
21:24:12 <Vorpal> Phantom_Hoover, oh an extension?
21:24:22 -!- Wamanuz3 has quit (Ping timeout: 240 seconds).
21:24:25 <Phantom_Hoover> Explaining would derail the conversation pointlessly, so you might as well just Google it.
21:24:39 -!- Wamanuz has joined.
21:25:14 <ais523> Phantom_Hoover: pointless derails are what IRC discussions are mostly made of, aren't they?
21:25:55 <elliott_> It would be nice if Graue upgraded the wiki.
21:26:07 <elliott_> I wonder if Vector would expose the trilime's horrible white edges.
21:26:46 <Vorpal> elliott_, why do we have the trilime for the logo
21:26:57 <elliott_> Vorpal: you have asked that at least twenty times.
21:27:09 <Vorpal> elliott_, no more than 19
21:27:12 <elliott_> And don't grep for "trilime" since I'm the only person who calls it that :P
21:27:21 <Vorpal> elliott_, right, why then
21:28:37 <zzo38> I don't know if anyone knows why
21:28:46 <Vorpal> elliott_, why the logo
21:29:38 <elliott_> Vorpal: ask ais523, he's the one you normally ask.
21:29:56 <elliott_> because I can't be arsed to answer
21:29:59 <Vorpal> elliott_, I ask you this time
21:30:06 <ais523> elliott_: so far, he's statistically asked about Google's, YouTube's, and Apple's logos more often than Esolangs
21:30:21 <Vorpal> I have asked about apple's logo?
21:30:32 <Vorpal> ais523, I think I complained about firefox logo
21:30:33 <elliott_> ais523: I am so glad you are keeping track of this
21:30:34 <ais523> yes, mostly about the positioning on an iPhone-alike
21:30:44 <ais523> elliott_: I wasn't, I'm just messing with grep
21:30:55 <Vorpal> ais523, so tell me about the esolang logo...
21:31:08 <Vorpal> assume I have a short memory or something
21:31:18 <ais523> Vorpal: there isn't much to say
21:31:29 <Vorpal> ais523, right, that's all? :P
21:31:34 <ais523> I think the official answer is "it's just an image Graue chose as a placeholder, and people decided they liked it"
21:32:14 <Vorpal> ais523, is it public domain?
21:32:37 <ais523> I assume so, given that it's on the wiki, but I don't know for certain
21:32:39 <elliott_> Grrrrr I wish I still had the -- aha
21:33:25 <elliott_> http://www.mca-ltd.com/martin/Ten15/introduction.html
21:34:19 <elliott_> "The compilers were (loosely speaking) just functions from "text objects" to module values, and a module value was just a record containing the interface specification, and compiled data and function values. There were no such things as include files; if a program needed to link with a library, then (a capability to) the library's module value was simply inserted into the persistent "text object" holding the program's source."
21:34:40 <elliott_> Programmed in Algol-68 except with first class functions.
21:36:25 <ais523> elliott_: Algol but with first class functions? what was the syntax for declaring variables that held functions?
21:42:11 <ais523> Phantom_Hoover: because Wikia deserves to be randomly sweared at
21:42:18 <Phantom_Hoover> Are you on the MSPA wiki and being driven mad by the interstitials?
21:42:33 <ais523> the skin thing was the last straw for me
21:42:57 <ais523> I still read it sometimes, but have a browser extension force it to monobook, and no longer correct mistakes I see on Wikia wikis
21:44:42 <Sgeo__> Phantom_Hoover, more by my inability to just middle-click external links
21:45:22 <Sgeo__> At least right-click -> open in new tab works properly for me
21:45:38 <Phantom_Hoover> I was trying to make a Greasemonkey script to disable it, but it didn't work.
21:45:50 * Sgeo__ vaguely remembers that his trackpad doesn't have a middle button, and that he
21:45:56 <Sgeo__> he's been Ctrl-clicking
21:46:36 <ais523> mine does, but I've been control-clicking anyway
21:46:37 <elliott_> <ais523> elliott_: Algol but with first class functions? what was the syntax for declaring variables that held functions?
21:46:45 <elliott_> it just let functions escape their closure thing
21:46:50 <elliott_> so, same as declaring a nested one
21:46:50 <ais523> because to middle-click, you have to simultaneously hold down both ends of the button bar, or else tap the top-right corner
21:47:37 <elliott_> I middle-click with three fingers FWIW
21:48:14 <ais523> the touchpad here can't detect that
21:48:21 <ais523> either that or the driver can't, but that seems less likely
21:48:33 <ais523> especially as it acts like a single-touch touchpad would if you put multiple fingers on it
21:48:47 <Vorpal> I have a proper middlebutton for my trackpoint, but not for the touchpad
21:48:56 <Vorpal> not that I use the touch pad
21:50:01 <elliott_> ais523: well, it doesn't work in OS X, but it does in Linux
21:51:15 <Vorpal> elliott_, how do you do it in OS X?
21:54:43 -!- zzo38 has quit (Quit: :::).
21:55:01 -!- Vorpal has quit (Read error: Operation timed out).
21:56:00 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:01:04 <elliott_> installing samba will allow use of the gnome file sharing preference on ubuntu, right?
22:01:24 -!- ralc has quit (Quit: Leaving).
22:01:40 <elliott_> it seems to recommend apache, though
22:06:04 -!- azaq23 has joined.
22:10:35 -!- pikhq has joined.
22:11:07 -!- pikhq_ has quit (Ping timeout: 276 seconds).
22:15:47 -!- ais523 has quit (Remote host closed the connection).
22:24:03 -!- TOGoS has left.
22:35:31 -!- MigoMipo has quit (Read error: Connection reset by peer).
22:40:20 -!- Phantom_Hoover has quit (Quit: Leaving).
22:44:21 <elliott_> man i used to really not understand filesystem organisation.
22:51:41 -!- TOGoS1 has joined.
22:53:58 -!- TOGoS1 has left.
22:57:53 <elliott_> Searching Samba shares: the slowest thing?
22:59:45 -!- oerjan has joined.
23:00:23 <oerjan> New post on the forum (and a reply by me)
23:01:10 <elliott_> Is it Timwi asking how to contact Graue?
23:01:14 <pikhq> Hell is very cold today: DNF went gold.
23:01:27 <elliott_> pikhq: AND someone posted on the esolangs forum
23:01:30 <oerjan> more interesting than that :D
23:01:34 <elliott_> oerjan: He's done that at least twice to my knowledge :P
23:01:36 <pikhq> elliott_: Hell is positively chilly, then.
23:01:50 <oerjan> (although not much, if you already know this stuff)
23:02:12 <elliott_> hm I wonder who's spreading such MISCONCEPTIONS
23:02:36 * oerjan guesses who is elliott_'s first suspect
23:02:58 <pikhq> So, it will almost certainly be out June 14.
23:02:58 <elliott_> erm who is my first suspect in your estimation
23:03:06 <elliott_> pikhq: oh, you mean the /real/ date of the rapture
23:03:08 <elliott_> everyone was just off by a few
23:03:15 <pikhq> (unless some horrendous mishap occurs)
23:03:19 <elliott_> SUDDENLY EVERYTHING MAKES SENSE.
23:03:32 <pikhq> elliott_: Yes, the rapture will actually take up the true believers in Duke.
23:04:23 <elliott_> the game will probably be inevitably shitty
23:04:48 <pikhq> I wouldn't go that far. It *could* actually be decent.
23:04:57 <pikhq> It most *certainly* will fail to live up to the hype.
23:09:26 <elliott_> where is my old code :((((((((
23:09:56 <elliott_> this is an important part of my childhood oerjan
23:11:31 <elliott_> it's certainly part of my childhood insofar as I never bothered having one ;D
23:11:34 <oerjan> <ais523> Phantom_Hoover: because Wikia deserves to be randomly sweared at
23:11:45 <oerjan> what is with ais being emotional lately
23:12:17 <oerjan> ...that was an example
23:12:20 -!- FireFly has quit (Quit: swatted to death).
23:12:22 <elliott_> 21:41:21: <Sgeo__> CURSE IT WIKIA
23:12:22 <elliott_> 21:41:56: <Phantom_Hoover> Why have you been randomly cursing Wikia lately.
23:12:22 <elliott_> 21:42:11: <ais523> Phantom_Hoover: because Wikia deserves to be randomly sweared at
23:12:25 <Sgeo__> I never thought ais523 was Dr. Gears
23:12:31 <elliott_> that's just ais expressing a standard anti-Wikia position
23:12:38 <elliott_> phrased in a humorous manner wrt Sgeo's line
23:12:49 <elliott_> oerjan: note that ais isn't the one who actually cursed.
23:12:56 <oerjan> elliott_: well he elaborated a bit
23:13:03 <Sgeo__> Is "CURSE IT" a curse?
23:13:06 <elliott_> I'm not sure how that's emotional
23:13:10 <elliott_> Sgeo__: by ais' standards, probably
23:13:11 <oerjan> no, but i didn't recall him having that strong opinions
23:13:24 <oerjan> maybe i've just not paid attention
23:13:27 <elliott_> that... doesn't seem strong at all to me :D
23:13:38 <elliott_> <PH> Why have you been cursing Windows lately.
23:13:39 <oerjan> elliott_: there was that event the other day though
23:14:07 <Sgeo__> Incidentally, I said "curse" it and not a word I wanted to say since I didn't want to offend ais523
23:14:19 <elliott_> Sgeo__: he doesn't care about inanimate objects, AFAICT
23:14:33 <elliott_> it's if you curse him to eternal damnation that he gets paranoid
23:14:40 <oerjan> <ais523> how dare you!
23:14:59 <elliott_> 18:33:03: <ais523> you mentioned SpectateSwamp in here?
23:14:59 <elliott_> 18:33:05: <ais523> how dare you!
23:15:13 <elliott_> this may not be obvious if you're not familiar with spectateswamp
23:15:51 <oerjan> although the rest of the conversation seemed to imply someone a bit nutty
23:18:18 <monqy> I remember someone linked a site claiming he's the stupidest person in the world but that's it
23:18:53 -!- copumpkin has joined.
23:21:01 <monqy> the site itself or the instance of someone linking to it
23:21:09 <monqy> or are you talking to yourself
23:26:30 <Sgeo__> elliott_, where ii2 thii2
23:28:13 <coppro> We're now replacing the letter i2 with i2? Thii2 plan cannot poi2i2ibly be bad!
23:29:36 <elliott_> coppro: it's sollux's typing quirk
23:29:45 <elliott_> Sgeo__: i saved you from a long and probably cringeworthy explanation line you're welcome
23:29:58 <coppro> elliott_: you mean i2ollux?
23:30:20 <elliott_> coppro: i might mean tholluckths
23:31:52 <elliott_> you just turned his message into "you mean ii2ollux", congratulations
23:32:25 <coppro> I don't recognize that character at the start of your linei2, I2geo.
23:32:27 <elliott_> Sgeo__: you also forgot s/<thing that sounds like "to">/two/ but unfortunately most regexp engines don't have DWIM replacements so i will let it pass
23:34:35 -!- azaq23 has quit (Quit: Leaving.).
23:42:23 <oerjan> thii2 remindi2 me of the problem with i2ubi2tituting i2ingle characteri2 in ///
23:44:34 <elliott_> oerjan: stop butchering the quirk ;_;
23:44:42 <elliott_> a little pang of pain pains inside me each time
23:45:06 <oerjan> also of Victor Borge's number incrementation
23:45:44 <Sgeo__> oerjan, it's one i gets replaced with ii
23:45:49 <Sgeo__> And s gets replaced with 2
23:46:06 <Sgeo__> And <sound of too> gets replaced with two
23:46:25 <Sgeo__> Weird how in some circumstances, it's indistinguishable from what you proposed
23:46:32 <elliott_> i mean the "to" in "tonight" doesn't exactly sound like "too" but he still says twonight
23:47:09 <Sgeo__> And for with four, iirc
23:47:31 <elliott_> um i don't think so but i'll check
23:48:01 <oerjan> http://www.youtube.com/watch?v=YY6kElOYcd8
23:48:26 <elliott_> Sgeo__: Nope, in fact he's never said four, not once
23:48:38 <elliott_> (grepped /four/ on http://mspaintadventures.com/?search=6_2)
23:48:56 <elliott_> great waste of a minute there elliott
23:50:20 <elliott_> oh perhaps it is in my documents
23:50:29 <elliott_> (i am searching my _really_ old files)
23:51:56 <oerjan> googling for "sollux" without adding something like "cartoon" doesn't work very well
23:52:18 <oerjan> although the image hits on page two gave a clue
23:52:37 <elliott_> Sollux Captor - MS Paint Adventures Wiki
23:52:42 <elliott_> i realise google personalises the results, but
23:53:07 <elliott_> http://mspaintadventures.wikia.com/wiki/Sollux_Captor
23:53:46 <oerjan> well it was 4th here, and somehow my eyes passed it because the "Captor" looked like the kind of thing you would add to the boat trademark that was my first hits
23:54:45 <oerjan> apparently it's a norwegian boat company
23:56:15 <oerjan> in fact that's the _only_ relevant hit on the first page
00:00:37 <elliott_> google's front page was weird in 2006
00:00:47 * elliott_ has a copy of it in this directory for no obvious reason...
00:01:04 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:03:44 <oerjan> heh dagbladet.no has a title translating as "Judgement day may still be close - as now "Duke Nukem Forever" is finished."
00:04:29 <elliott_> i'm not going to find thesef iles am I :(
00:04:40 <elliott_> oerjan: can you put a good word in with the synchronicity gods for me
00:04:57 <elliott_> <oerjan> you think they listen to ME?
00:05:15 <oerjan> Dear Synchronicity Gods; Please give Elliott Hird a clue. Amen.
00:05:49 <oerjan> well no they don't listen to me, that's true. You should be safe.
00:10:05 <oerjan> i note my landlady chose the best possible week to take a vacation in mallorca...
00:10:35 <oerjan> might not see her again in a while.
00:11:09 <oerjan> um that's how it's spelled, isn't it
00:12:35 <elliott_> wp article title agrees with me
00:12:39 <elliott_> Majorca (or Mallorca) (Catalan: Mallorca, IPA: [məˈʎɔrkə] or [məˈʎɔrcə]; Spanish: Mallorca, IPA: [maˈʎorka])
00:12:56 <elliott_> has she gone to Deutschland too? :D
00:14:06 -!- Patashu has joined.
00:15:46 <elliott_> maybe i should just generate a list of every single file on the drive to find it
00:17:32 <oerjan> the majorca spelling is not used in norwegian, neither is majorka which would be the complete retranscription (and which seems to be used in polish)
00:18:39 <oerjan> it probably does not have an old enough connection to norway to get a norwegianized name
00:20:13 -!- lithpbot has joined.
00:20:20 <elliott_> everyone say hi to my old old lisp bot
00:20:45 <lithpbot> (err) need at least 2 args, got 0
00:20:46 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a -> GHC.Bool.Bool)
00:21:30 -!- lithpbot has quit (Remote host closed the connection).
00:22:13 -!- lithpbot has joined.
00:22:30 <elliott_> I wonder what on earth it freed?
00:22:32 <lithpbot> (py err) AttributeError: 'str' object has no attribute 'val'
00:22:42 -!- lithpbot has quit (Remote host closed the connection).
00:22:49 -!- lithpbot has joined.
00:22:54 <lithpbot> (err) need at least 2 args, got 0
00:23:33 <elliott_> > (define hog (lambda (n) (if (> n 9999) () (cons 'x (hog (+ n 1))))))
00:23:33 <lambdabot> lexical error in string/character literal at chara...
00:23:38 <lithpbot> (py err) AttributeError: 'bool' object has no attribute 'val'
00:23:48 -!- lithpbot has quit (Remote host closed the connection).
00:25:14 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:26:26 <elliott_> this would annoy Vorpal to no end if he could see it
00:30:20 -!- SgeoN1 has joined.
00:30:46 -!- Sgeo__ has quit (Ping timeout: 252 seconds).
00:30:46 -!- SgeoN1 has quit (Read error: Connection reset by peer).
00:30:55 -!- SgeoN1 has joined.
00:35:31 -!- SgeoN1 has quit (Read error: Connection reset by peer).
00:35:44 <elliott_> oerjan: tunes are like flowers
00:35:55 -!- SgeoN1 has joined.
00:36:22 <elliott_> flowers in summer are like idiots in spring THIS IS FACTUAL
00:38:49 -!- Sgeo has joined.
00:38:56 -!- SgeoN1 has quit (Client Quit).
00:39:50 -!- augur has quit (Remote host closed the connection).
00:54:42 -!- Lymia has quit (Read error: Connection reset by peer).
01:01:39 <elliott_> [5] Please act expeditiously to remove the file-downloads found at the following URLs:
01:01:39 <elliott_> http://www.fileserve.com/file/cWAKEDR
01:06:11 <elliott_> something to do with ps3 homebrew it seems
01:06:17 <elliott_> based on the rest of the links in https://github.com/github/dmca/blob/master/2011-01-27-sony.markdown
01:06:24 <elliott_> which are less humorous as they actually link to github
01:09:40 -!- pikhq has quit (Ping timeout: 240 seconds).
01:09:54 -!- pikhq has joined.
01:43:47 -!- augur has joined.
01:54:59 -!- h[a]gb4rd has joined.
01:55:07 -!- h[a]gb4rd has changed nick to hagb4rd.
01:58:07 <elliott_> the files are gone forever rip
02:06:30 -!- hagb4rd has quit (Ping timeout: 246 seconds).
02:15:50 <pikhq> What is with the full−width Latin, anyways?
02:28:24 <elliott_> Hey, Shift-JIS art would break without it. :p
02:32:10 <elliott_> "A 4.7 GB DVD-R full of one-time-pad data, if shredded into particles 1 mm² in size, leaves over 100 kibibits of (admittedly hard to recover, but not impossibly so) data on each particle."
02:32:28 <elliott_> has anyone ever actually recovered from those particles
02:35:12 -!- Sgeo has quit (Ping timeout: 246 seconds).
02:43:02 -!- Lymia has joined.
02:45:39 -!- Sgeo has joined.
03:08:31 <pikhq> elliott_: Shift-JIS art breaks without the right *fonts*...
03:11:08 <pikhq> (many of the characters used in Shift-JIS art are actually proportional, and so the art assumes the metrics of MS PGothic)
03:13:24 <pikhq> (IPAMonaPGothic also works)
03:14:13 <pikhq> (yes, the transcription is retarded; in Japanese, it's IPA モナーPゴシック)
03:19:10 <elliott_> well it's just the metrics right
03:19:33 <elliott_> ipamonapgothic is the free one right
03:21:01 <pikhq> The whole effort wouldn't be even slightly necessary if they used a monospace font.
03:21:20 <pikhq> But *no*, they had to use a freaking proportional font.
03:21:22 <elliott_> can you find my old php code from oh-six pikhq i tried to today but i couldnt
03:21:44 <pikhq> When monospace actually is a decent approximation for Japanese text.
03:22:14 <pikhq> (doing proper Japanese typesetting, however, is about on par with English typesetting in difficulty of getting right)
03:23:43 <pikhq> elliott_: Sorry, but I have never even *seen* your old PHP code to my recollection.
03:23:58 <elliott_> you should still find it though
03:24:11 <pikhq> I'm not about to spelunk for something I would only wince at.
03:24:34 <elliott_> i just want to stare at it ;_;
03:24:40 <elliott_> but i found every php file on my old drive
03:24:41 <pikhq> Actually, "PHP code" is what makes it worthy of insulting.
03:24:58 <elliott_> i think i deleted them but i don't know why i'd do something so horrible
03:25:01 <elliott_> pikhq: oh no it was especially bad php code
03:25:09 <elliott_> i did not really understand sql or anything iehter
03:25:17 <pikhq> Oh, so it was average PHP code.
03:25:48 <elliott_> i had started coding two years earlier, also in php
03:25:55 <elliott_> my very first php script used an Access database
03:26:04 <pikhq> Holy *fuck* you were young when you got in here. Just saying. :P
03:26:19 <elliott_> i was like twelve when i started coming here?
03:26:26 <elliott_> ok maybe eleven for a short while. but i didn't really talk much then ;D
03:26:29 <pikhq> Something like that.
03:26:35 <elliott_> i'd got over php, is the point
03:26:40 <elliott_> my debilitating illness had ended
03:26:42 <pikhq> ... Not that I should criticise too much.
03:26:51 <pikhq> I've been IRC'ing since like 9 or 10.
03:27:06 <elliott_> oh me too i just didn't come here until i was a bit less of an idiot
03:27:46 <pikhq> Yeah, I would've been, what, 16?
03:28:06 <elliott_> i used to think you were like AT LEAST twenty one in two thousand and seven
03:28:24 <pikhq> I've had people assuming that for over a decade now.
03:28:41 <elliott_> someone assumed i was like twenty in two thousand and six because i knew a lot about coding
03:28:48 <elliott_> i realise that person was an idiot
03:28:57 <pikhq> For quite a bit less time, I've given that impression IRL.
03:29:29 <elliott_> my darkest fear is that i will never not look twelve. ok not really but this is just ridiculous.
03:29:32 <coppro> elliott_: I was contacted by a Microsoft recruiter around the age of 15
03:29:45 <pikhq> coppro: "Like to call back in 3 years?"
03:29:46 <elliott_> coppro: you should have lead them on
03:29:55 <elliott_> coppro: but let's be honest here, microsoft recruiters contact everybody
03:30:13 <elliott_> they contacted esr without even reading a single word he wrote, or they'd realise he's a raging shithead and not bother
03:30:26 <pikhq> They contacted *esr*?
03:30:36 <elliott_> "If you had bothered to do five seconds of background checking, you
03:30:36 <elliott_> might have discovered that I am the guy who responded to Craig
03:30:36 <elliott_> Mundie's "Who are you?" with "I'm your worst nightmare", and that I've
03:30:36 <elliott_> in fact been something pretty close to your company's worst nightmare
03:30:41 <elliott_> -- esr, neopagan and self-proclaimed sex god
03:30:58 <elliott_> its like they found the ego button in his soul and pressed it until he exploded
03:31:04 <coppro> pikhq: if I was at all interested, maybe
03:31:17 <elliott_> a job at ms would probably be nice, if you could sleep at night
03:31:29 <pikhq> It'd depend on what I was doing at MS, quite honestly.
03:31:44 <elliott_> i think a job working on windows might actually be interesting
03:31:52 <elliott_> not /fun/ necessarily but... interesting
03:32:04 <elliott_> i'd probably just sit there all day and read the code for fun...
03:32:17 <pikhq> elliott_: Even *there*, it'd depend.
03:32:23 <elliott_> i'd probably have huge trouble resisting the urge to copy it all to a usb stick
03:32:29 <pikhq> Working on the kernel could legitimately be interesting, TBH.
03:32:47 <elliott_> pikhq: man can you imagine their development cycle though
03:32:53 <elliott_> i wonder how long it takes to recompile windows after a change
03:32:55 <pikhq> Working on APIs would make me want to stab a bunch of developers.
03:33:01 <elliott_> booting a version of windows you modified would feel really weird
03:33:06 <elliott_> it doesn't feel like the kind of os you could do that to
03:33:14 <pikhq> For the most part *not* developers in Microsoft, actually.
03:33:27 <elliott_> pikhq: if theres one thing the Old New Thing teaches me its that theres no way the kernel team doesnt have to deal with that too
03:34:00 <elliott_> and you'd be contributing to windows
03:34:21 <pikhq> The thing is, from what I know of it, the kernel for Windows is *actually well-designed*.
03:34:36 <elliott_> well do you mean nt or win subsystem
03:34:45 <pikhq> I mean NT. The *actual kernel*.
03:34:53 <elliott_> well the windows subsystem is a kernel too, to be honest
03:35:27 <pikhq> Yeah, yeah, it is technically part of the kernel.
03:35:43 <pikhq> But it's more like an overcomplicated system call compatibility layer.
03:36:11 <pikhq> No, no, I mean "like FreeBSD's Linux support"
03:36:20 <elliott_> yeah but that's what a kernel is
03:36:25 <elliott_> freebsd's is small because they're quite close
03:36:47 <pikhq> It's a mapping between a foreign system call layer and a native one?
03:36:52 <pikhq> You have a very strange notion of kernel.
03:37:10 <elliott_> yep, except sometimes the native one involves some memory-mapped jiggery rather than an int/sysenter/etc. call
04:00:26 -!- copumpkin has joined.
04:32:55 <elliott_> wow, raymond chen actually uses ie
04:33:17 <pikhq> Less surprising than it would have been a few years ago.
04:33:41 <pikhq> IE at least seems to be a decent, tolerable browser now.
04:33:51 <elliott_> yeah but does anyone actually switch /to/ IE?
04:33:58 <elliott_> i'm worrying that he's never not used IE in his life now ;_;
04:34:07 <pikhq> Not in over a decade.
04:34:49 <elliott_> hehe "ive stopped using the netscapes it doesnt work with msn so im using the ies now"
04:34:54 <pikhq> Remember, Netscape used to suck.
04:34:57 <elliott_> am i roleplaying the 90s properly
04:35:30 <pikhq> No, really, Netscape was *worse* than IE for a while.
04:36:40 <elliott_> http://blogs.msdn.com/b/oldnewthing/archive/2011/05/18/10165605.aspx#10165884
04:36:40 <elliott_> [In practice, the only time anybody set a nonstandard timeout was to set an extra annoying timeout. -Raymond]
04:36:48 <elliott_> windows starts ignoring parameters because they're only used to annoy people
04:37:14 <pikhq> "We changed our API behavior because, y'know what, *you guys suck*."
04:37:48 <elliott_> next time on the old new thing "in windows 8 requests to create a borderless window result in your application being surrounded by not one but TWO normal window decorations and an angry letter being mailed to your parents"
04:38:04 <elliott_> "and if it can PROVE that you're about to draw your own border, it kills the programmer immediately"
04:38:26 <pikhq> Remember, some programs *in Windows* do that.
04:38:33 <pikhq> (well, at a minimum, WMP does.)
04:38:52 <elliott_> yes but as we've established everyone at ms hates everyone in a different team
04:39:01 <elliott_> the gui/office rivalry is potent
04:39:28 <pikhq> The hatred is often justified.
04:39:49 <elliott_> i bet like half the kernel is working around bugs in lotus and office
04:40:39 <pikhq> A good 7/8ths of the Windows team is probably working around application bugs.
04:40:51 <pikhq> Because they seem to absolutely fellate backwards compatibility.
04:41:40 <elliott_> can you imagine the complaints theyd get if they broke old apps
04:42:26 <elliott_> so changing topic entirely, after reading that terrible new coding horror post im actually surprised that chrome doesnt update without restarting
04:42:37 <elliott_> it occurs to me that patching a running binary is not yet a solved problem
04:42:45 <elliott_> which is interesting because it should be!
04:43:28 <pikhq> "Patching" a running binary is a solved problem. You "merely" serialise your state and restart! :P
04:43:42 <elliott_> yeah but chrome updates every second
04:44:05 <elliott_> considering it updates silently i am honestly surprised that it does not start running the new version instantly
04:44:33 <elliott_> and i'm wondering if it's actually possible to do in-place updating with an updated() function that is called after the ptach
04:44:41 <elliott_> I think it might be since Chrome uses that fancy update format that uses symbolic addresses
04:44:49 <elliott_> so it's not like code is just going to jump around the place and be impossible
04:45:15 <Patashu> I think it's not done because it would require the browser to pause
04:45:29 <elliott_> Patashu: would it? I don't see what would take so long
04:45:42 <elliott_> and you could always wait until the user does nothing for a few seconds :-)
04:45:43 <Patashu> even 1 second would annoy people with how frequently it updates
04:46:01 <elliott_> i think there are harder problems than that :P
04:46:10 <elliott_> like, I don't know how thorough their symbolic thing is
04:46:20 <elliott_> could you apply the patch to the running memory image without addresses invalidating?
04:46:48 <elliott_> if so, then I think it could be as simple as doing that, then passing control over to an oops_you_just_updated() function, which I guess would have to handle the task of migrating data structures and updating the UI...
04:46:56 <elliott_> that's still quite manual i guess but it would be cool
04:48:11 <Patashu> so every pointer pointing into code would need to be updated?
04:48:26 <elliott_> Patashu: i don't think so, that's why they invented their new patch format isn't it?
04:48:33 <Patashu> well, the code still changes size
04:48:37 <elliott_> i guess it fixes up the pointers itself
04:48:41 <Patashu> their patching function is just a really compressed diff
04:48:43 <elliott_> they already do that patching already
04:48:47 <Patashu> that uses knowledge of the original function pointers
04:48:52 <elliott_> they already do that patching already, to the binary
04:48:58 <elliott_> so they can do it to the in-memory image too
04:49:09 <elliott_> they could copy the memory image aside and do it to that so it could be swapped quicker
04:49:17 <Patashu> yeah, but what if a function suddenly changes its internal state?
04:49:21 <Patashu> or is removed while it's being run?
04:49:32 <elliott_> Patashu: well it'd have to restore the browser to the start of the event loop or whatever
04:49:40 <elliott_> i.e. if any functions are busy running it'd have to postpone it until it's at a predictable state
04:49:49 <elliott_> my worry is that e.g. they insert a field in the middle of a class
04:49:52 <elliott_> now all instances of that class need migrating
04:49:56 <elliott_> it's like sql migration but worse :)
04:50:12 <Patashu> but it sounds like black magic stuff
04:50:30 <elliott_> i note that it's easy if you work at a higher level than machine code.
04:52:12 <Patashu> let's write a browser in LUA
04:52:16 <Patashu> then on the fly updating is -really- easy!
04:52:24 <elliott_> (says the guy not capitalising)
04:52:53 <elliott_> i dont see how lua would make it any easier than any interpreted language
04:53:14 <elliott_> i mean you'll still have a bunch of values floating around without newly-added fields
04:53:27 <elliott_> so your whole application sort of has to deal with things randomly being uninitialised for seeminlgy no reason
04:53:32 <elliott_> which is a rather awkward way to code
04:53:41 <Patashu> yeah, i guess for anything carrying state it would still be tough
04:53:52 <Patashu> anything that's functional you can plug and play but you can already pretty much do that
04:53:58 <elliott_> but i'm thinking that with anything that has a semantic description of object types e.g. CLOS
04:54:13 <elliott_> (not things like python or ruby since they have no actual specification mechanism for types, its all in the initialisers)
04:54:18 <elliott_> you could have it actually migrate every object on-the-fly
04:54:28 <elliott_> and call added hooks in the program to assign default values
04:54:40 <elliott_> you sort of need a diff of the data structures themselves
04:58:10 <elliott_> Patashu: i half-suspect that chrome startup is short enough that they could just load the new binary into memory, save the current rendering state and position of all tabs and windows, and just quickly run the new one and kill the old one without anyone noticing
04:58:19 <elliott_> ok you'd have to keep the old windows drawn while it starts but
04:58:26 <elliott_> i guess plugins make that harder though
04:58:39 <Patashu> what about flash plugin state?
04:58:58 <Patashu> I've never seen a browser preserve where my youtube video playthrough is up to across killing tabs, rebooting, etc
04:59:03 <Patashu> if it's possible surely it'd have been done by now
04:59:36 <elliott_> but apart from that it sounds doable because i mean chrome usually re-renders everything when it starts
04:59:45 <elliott_> if you can reduce the migration problem to translating the rendering structures to the new format if it's changed
04:59:49 <elliott_> then it sounds a lot more tenable
05:17:41 -!- elliott_ has quit (Ping timeout: 240 seconds).
05:38:54 -!- myndzi\ has joined.
05:39:37 -!- myndzi has quit (Ping timeout: 276 seconds).
05:41:22 -!- copumpkin has quit (Ping timeout: 240 seconds).
05:41:48 -!- copumpkin has joined.
05:52:12 -!- lament has joined.
06:13:30 -!- MigoMipo has joined.
06:46:46 -!- MigoMipo has quit (Read error: Connection reset by peer).
06:48:11 <Patashu> You don't have to type words into wordpad when you're recording your screen for youtube anymore. We have annotations now
06:50:34 <pikhq> Better still. We have audio.
06:51:17 <Patashu> Some things text conveys better but yeah
06:58:13 <Patashu> Multiple DSL subscriber lines are multiplexed into a single, high-capacity link using a DSL access multiplexer (DSLAM) at the provider location.
06:58:16 <Patashu> I need to start a religion called DSLAM
06:58:20 <Patashu> or maybe it's a wrestling move
06:58:25 <Patashu> all I know is it sounds awesome
07:00:59 <pikhq> Aaah, DSL. The networking technology that only sees use because possible competitors don't feel like taking competition seriously.
07:01:18 <pikhq> I repeat: the possible capacity of a DOCSIS network is 6 *gigabits* per second.
07:03:33 <pikhq> Sorry, 6.77504 gigabits per second.
07:04:09 <pikhq> This is presuming that all 158 channels on the North American cable TV frequency plan are allocated to DOCSIS.
07:05:21 <pikhq> If they decided to use better modulation, they could get just shy of *tripling* that.
07:06:09 <pikhq> But 6.77504 gigabits per second is the bandwidth they could start offering right this instant if they felt like it.
07:06:44 <pikhq> (modulo not-last-mile bandwidth availability, of course)
07:07:22 -!- CakeProphet has quit (Ping timeout: 260 seconds).
07:08:52 -!- CakeProphet has joined.
07:10:24 <pikhq> For comparison, the theoretic maximum of VDSL2 is 0.250 gigabits per second.
07:11:03 <pikhq> And that's if you hook up right at the centrol office.
07:21:45 -!- lament has quit (Ping timeout: 244 seconds).
07:34:58 -!- monqy has quit (Quit: hello).
07:37:17 -!- cheater897 has quit (Quit: Leaving).
07:41:02 <fizzie> VDSL2 in Finland is mostly used in the scenario where there's fiber to the basement telephone switchboxery and vsdl2 from there to apartments, to avoid rewiring.
07:41:24 <fizzie> In that case you do get the relatively reasonable rates.
07:44:08 <fizzie> The cable networks are I guess DOCSIS3-compatible, but they only sell up to 200M/10M speeds to consumers.
07:55:34 -!- oerjan has quit (Quit: Good night).
08:00:02 -!- Phantom_Hoover has joined.
08:07:05 <lambdabot> Phantom_Hoover: You have 4 new messages. '/msg lambdabot @messages' to read them.
08:07:29 <Phantom_Hoover> It's registered to one Alan Dipert, which I know is not graue's name.
08:09:08 -!- cheater__ has joined.
09:18:16 -!- augur has quit (Remote host closed the connection).
09:36:12 -!- Aune has joined.
09:42:41 -!- augur has joined.
09:44:51 -!- Tritonio has joined.
09:46:09 -!- ais523 has joined.
09:58:08 -!- ais523 has quit (Remote host closed the connection).
09:59:23 -!- ais523 has joined.
10:00:58 <Sgeo> elliott: Homestuck update
10:03:01 -!- Vorpal has joined.
10:07:25 -!- ais523 has quit (Read error: Connection reset by peer).
10:07:38 <Sgeo> Phantom_Hoover, Homestuck update
10:09:36 -!- ais523 has joined.
10:10:01 <cheater__> Sgeo, you should be telling me too :p
10:22:03 -!- ais523 has quit (Read error: Connection reset by peer).
10:22:29 -!- ais523 has joined.
10:43:20 -!- Zwaarddijk has quit (Ping timeout: 248 seconds).
10:45:07 -!- Zwaarddijk has joined.
10:45:32 -!- Lymia has quit (Quit: 1... 2... 3... HUGS! :D).
11:24:33 <Phantom_Hoover> So in other news my chemistry exam has hit a new low in objective wrongness.
11:25:59 -!- copumpkin has quit (Ping timeout: 255 seconds).
11:26:36 -!- copumpkin has joined.
11:27:23 <Phantom_Hoover> It asked the kind of bonding present in a substance that melted at over 3000°C and oxidised to a gas at room temperature.
11:27:36 <Phantom_Hoover> I put metallic, since there is a metal which fits that exact description.
11:28:29 <Phantom_Hoover> The correct answer was apparently some kind of covalent bonding, and since it was a multiple choice there was only one correct option.
11:30:21 <Phantom_Hoover> Not that it bothers me too much, since I got 92% anyway, but it irks me.
11:47:50 -!- Vorpal has quit (Ping timeout: 250 seconds).
11:57:44 -!- Tritonio has quit (Quit: Leaving).
12:16:41 -!- Maxdamantus has quit (Ping timeout: 260 seconds).
12:22:48 -!- Maxdamantus has joined.
12:33:23 <lifthrasiir> hmm, is there any good and small test case for debugging unlambda interpreter?
12:52:08 <lifthrasiir> Phantom_Hoover: yeah, i ended up with comparing the trace of computation to other (working) one
12:54:09 <lifthrasiir> wait, it seems that i finally get it correct...
12:55:00 <lifthrasiir> ugh, i found the bug: ?x didn't really check if the current character is x...
12:57:12 <ais523> what did it do instead?
12:58:06 <lifthrasiir> ais523: `?xX actually returned `Xi, no matter what the current character is, except on the EOF
12:58:31 <lifthrasiir> yeah, turns out that i'm not quite fluent in ocaml.
12:59:01 <ais523> Phantom_Hoover: can you please not put copyright violations on the wiki?
12:59:36 <ais523> that image isn't even freely licensed, let alone public domain
13:00:08 <Phantom_Hoover> Yes OK it was not a terribly good idea in hindsight but dammit.
13:00:55 <Patashu> http://i.imgur.com/25g7Z.jpg
13:01:12 <ais523> I also think it was a questionable idea in the first place, but the copyvio is more relevant
13:01:57 <Patashu> http://thinkprogress.org/2011/05/24/paul-gosar-millionaire/
13:10:06 -!- Vorpal has joined.
13:18:44 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
13:37:24 <ais523> does Firefox have a "search in all tabs in this window" feature?
13:38:10 <ais523> it'd be useful right now, for me
14:10:52 -!- cheater__ has quit (Ping timeout: 260 seconds).
14:18:17 <Vorpal> gah. Why did I suddenly decide to read the back of the milk packaging. Arla (the largest dairy in Sweden) always put some text about various things on the back, changing it every week or so. This time they went for something so overloaded with puns it was quite painful to read.
14:18:49 <Vorpal> of course, it wouldn't translate at all to English.
14:22:30 -!- cheater__ has joined.
14:34:31 <fizzie> Arla's ad slogan in Finland several years ago (1999) used to be "Kohta meissä kaikissa asuu pieni lehmä"; in English, "soon in every one of us there will live a small cow".
14:35:37 <fizzie> It was selected as the slogan of the year by some agency that bothers to select a slogan of the year.
14:40:32 <ais523> Vorpal: you could translate it both ways round; we still wouldn't get the joke but we could see how awkward it sounded
14:41:39 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:44:29 -!- FireFly has joined.
15:04:38 -!- copumpkin has joined.
15:07:37 <Vorpal> ais523, well "cow" in Swedish is "ko". "organic food" is "ekologisk mat". Now they invented a story about a professor "E.Ko" for teaching children about what organic food means. And from that point on the pun storm went on.
15:08:30 <ais523> that pun almost translates into English as "ecowlogical", although it wouldn't quite have the same meaning
15:08:42 <Vorpal> ais523, there was some very bad pun about this invented "professor" having won the "Kobel price" and so on too
15:09:45 <Vorpal> ais523, oh and en:buddy = sv:kompis. I forgot what pun they made on that, but they managed one.
15:10:16 <Vorpal> well google says that is how it translates. it suggests "chum" as an alternative. Possibly closer
15:10:52 <ais523> informal word for "friend"?
15:16:53 <Vorpal> ais523, oh and sv:naturligvis ~ en:"of course". But svn:"naturligt vis" ~ en:"natural way". They used that one too. Except they mangled it so it made less sense, in that context the form "naturligtvist" would have been used, so they ended up with "naturligt vist" which could possibly mean something like "naturally wise", except that makes less sense since the form "vist" would never be used about a noun
15:16:54 <Vorpal> for a person. (Words about persons are invariably reale, not neuturm, no clue what those classes are called in English, something related to grammatical "gender" I think (except it isn't like male/female at all in modern Swedish)
15:17:05 <Vorpal> so in effect it ended up utterly awkward
15:18:47 <Vorpal> wait, could be utrum. Hm Swedish wikipedia isn't terribly clear on which our grammatical genders are...
15:19:50 <Vorpal> and uh, I can't actually see what the difference between reale and utrum is based on the examples on wikipedia... They seem the same?
15:23:01 <Vorpal> English wikipedia says "Swedish nouns and adjectives are declined in genders as well as number. Nouns belong to one of two genders—common for the en form or neuter for the ett form[31]—which also determine the declension of adjectives.".
15:24:06 -!- BeholdMyGlory has joined.
15:24:14 -!- BeholdMyGlory has quit (Changing host).
15:24:14 -!- BeholdMyGlory has joined.
15:33:02 -!- ais523 has quit (Read error: Connection reset by peer).
15:33:30 -!- ais523 has joined.
15:34:28 -!- lament has joined.
15:43:26 <Vorpal> huh, mplayer on ubuntu fails to play this movie. I'm sure mplayer on arch managed
15:45:25 <olsner> Vorpal: stare at the wall until you go mad
15:45:26 <Vorpal> ais523, any suggestion?
15:45:47 <Vorpal> olsner, as mentioned above
15:46:16 <Vorpal> olsner, btw, it was on the ecological whole milk I saw this. Not sure if it is the same across the entire product range
15:49:36 <Vorpal> oh damn, it seems I need to possibly recompile ffmpeg with support for it
15:50:46 <olsner> Vorpal: I have no idea what you're talking about, maybe you're already done staring and have gone mad
15:51:05 <Vorpal> olsner, which discussion
15:51:15 <Vorpal> olsner, the Arla one or the codec one
15:51:17 <olsner> which discussion indeed
15:55:15 -!- azaq23 has joined.
16:05:14 -!- elliott_ has joined.
16:08:02 -!- NihilistDandy has joined.
16:22:50 -!- lament has changed nick to lameNOT.
16:23:26 -!- NihilistDandy has quit (Quit: leaving).
16:26:14 -!- zzo38 has joined.
16:26:14 -!- elliott_ has quit (Read error: Connection reset by peer).
16:29:17 -!- elliott has joined.
16:33:47 -!- elliott has quit (Ping timeout: 260 seconds).
16:35:18 -!- elliott has joined.
16:39:39 -!- elliott has quit (Client Quit).
16:39:45 -!- elliott has joined.
16:49:13 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
16:59:15 -!- sebbu has quit (Read error: Connection reset by peer).
16:59:46 -!- sebbu has joined.
16:59:46 -!- sebbu has quit (Changing host).
16:59:46 -!- sebbu has joined.
17:19:58 <elliott> ais523: lol at ph's upload/edit + your revert
17:20:18 <ais523> elliott: it was a copyvio!
17:20:29 <elliott> I'm SURE that's why you removed it >:D
17:23:39 <ais523> elliott: it was also both silly and offtopic
17:23:46 <ais523> as well as described incorrectly
17:23:50 <ais523> but a copyvio is an even better reason to delete
17:24:00 <elliott> it was the image from the guardian article, right?
17:24:15 <elliott> (that's just a guess based on context, I didn't see it)
17:24:29 <elliott> ais523: you know, you have no proof that PH isn't the photographer of that
17:24:33 <ais523> I'm not sure it accomplished much besides making the photographer look stupid, but it's their fault
17:24:37 <ais523> elliott: PH is a woman?
17:24:49 <elliott> ais523: It's not out of the question.
17:24:52 <ais523> also, the Guardian would own the copyright, or the photo agency, not the photographer
17:25:00 <elliott> Well he could be the boss of the photo agency.
17:25:13 <elliott> Maybe he IS the photography agency ITSELF.
17:25:29 <elliott> I AM JUST SAYING THAT YOU ARE BEING TOO HASTY
17:25:38 <ais523> elliott: these theories aren't convincing me
17:25:46 <ais523> and even suspected copyvios should be deleted until there's proof they aren't
17:25:53 <elliott> That's what they said about Columbus, too
17:26:29 <elliott> Hmm, XMMS2 clients seem rather bitrotten
17:30:41 -!- ralc has joined.
17:43:35 <zzo38> Maybe post a link to the file on here in case.
17:51:02 <zzo38> I think there is a bug in GNU dc, when there is unimplemented command the error message is sent to stdout instead of stderr, it seems?
17:59:06 -!- elliott has quit (Remote host closed the connection).
18:02:32 -!- elliott has joined.
18:17:19 <lifthrasiir> http://hg.mearie.org/esotope/esotope/ trying to revive a project.
18:20:13 -!- elliott has quit (Remote host closed the connection).
18:21:00 -!- elliott has joined.
18:21:58 -!- TOGoS has joined.
18:33:09 -!- TOGoS has left.
18:34:27 -!- monqy has joined.
18:35:56 <elliott> "Nice to see you use present tense when speaking about 16-bit applications. I spend 30-50% of my time maintaining an old C++ 16-bit application, so I still live with all the joys of 64K limits :-)"
18:36:01 <elliott> people wrote sixteen-bit C++ programs?
18:36:29 <elliott> how did they even fit in to RAM :P
18:36:50 <ais523> elliott: back then, C++ didn't look like modern C++ at all
18:36:51 <pikhq> It was first called "C++" in *1983*.
18:37:07 <ais523> it was more like C with a vague attempt to do object-orientation badly
18:37:13 <elliott> lifthrasiir: well iostreams and the like hardly applied to windows anyway
18:37:15 <pikhq> C++ had rather a large amount of changes up to its ISO-isation.
18:37:18 <elliott> ais523: I guess so, it's still just surprising
18:37:26 <ais523> and the string class (not std::string back then) and iostreams were about the most OO it got in the standard libraries
18:37:32 <elliott> Considering that people wrote assembly by hand and weren't considered insanely hardcore, at the same time
18:37:36 <ais523> old-fashioned C++ is nothing like modern C++
18:38:02 <pikhq> The STL itself only really came about in the 90s.
18:38:27 <pikhq> Templates were, like, 1990.
18:38:38 <olsner> at a conference at work a while ago there was a talk by one of the oldies about how memory management used to work in our C++ code back in the 16-bit days
18:39:15 <pikhq> It was *recognisable* but distinctly different starting with, oh, the mid-80s.
18:39:58 <pikhq> And you're first going to get something that would compile in, say, g++ starting in 1998.
18:40:23 <pikhq> (presuming STL use)
18:40:29 <pikhq> (the names of the header files changed in the ISO committee)
18:40:53 <pikhq> Yeah, they removed .h from all the headers.
18:41:21 <pikhq> You can push it back a bit further, perhaps to 1989, if you're talking about code that only used ISO C headers. If you're lucky.
18:41:44 <elliott> I can't stop myself from liking DOS :(
18:41:44 <pikhq> (before then, all bets are off. This was the nasty land of *K&R C*.)
18:41:53 <pikhq> elliott: Don't feel bad.
18:42:03 <pikhq> elliott: DOS was not a bad design for the time.
18:42:13 <pikhq> Computers have just gotten *so much better*, and DOS has not.
18:42:27 <elliott> Hmm, I wonder what the first DOS that was compatible with anything was
18:42:33 <elliott> First version had no directories so that is pretty much out
18:42:39 <elliott> Seems like it only supported ten meg disks
18:42:47 <pikhq> "Compatibile with anything"?
18:43:08 <elliott> pikhq: "Compatible with a wide range of applications and games made for DOS"
18:43:17 <elliott> e.g., the popular thirty-two bit extenders should work
18:43:39 <elliott> hmm, all Wikipedia lists 3.0 as adding is larger disk support, but I guess their changelog might not be very complete :-)
18:43:49 <elliott> oh http://en.wikipedia.org/wiki/Timeline_of_x86_DOS_operating_systems is better
18:44:03 <elliott> Microsoft releases MS-DOS 2.0, which introduces a Unix/Xenix-like hierarchical file system, installable device drivers (e.g. ANSI.SYS) in the system configuration file CONFIG.SYS, and adds internal commands BREAK, CHDIR or CD, CLS, CTTY, EXIT, FC, MKDIR or MD, PATH, PROMPT, RMDIR or RD, SET (environments), VER, VERIFY and VOL. New external commands are DISKCOPY (not identical to IBM's version), PRINT (spooling); three filters supported with stand
18:44:04 <elliott> ard devices and redirection: FIND, SORT and MORE; BACKUP, RESTORE and RECOVER. New batch file commands are ECHO, FOR, GOTO, IF and SHIFT. CONFIG.SYS commands are BREAK, BUFFERS, DEVICE, FILES and SHELL. New file attribute bits are read-only, volume label, subdirectory and archive. A team of six developers produced version 2.0, led by Paul Allen, Mark Zbikowski and Aaron Reynolds.[1]
18:44:11 <elliott> pikhq: are you sure it's not 2.0? that's a lot of modernisation there
18:44:29 <pikhq> DOS 3.0 did some minor API tweaks for the larger disk support.
18:44:53 <elliott> now i just need to find dos 3 floppies >:)
18:44:57 <pikhq> And I'm pretty sure they didn't actually change the API past that.
18:45:07 <elliott> http://torrentz.eu/search?f=DOS+3 ;; lame
18:45:08 <pikhq> Just add more features to what was already there.
18:45:16 <fizzie> The 32 Mb partition limit was there for quite long, if I recall correctly.
18:45:25 <elliott> FireFly: better than ten megs
18:45:30 <fizzie> Went away in 3.something.
18:45:42 <elliott> http://oldfiles.org.uk/ oh man this design.
18:45:54 <elliott> FireFly: Version 3.0 (OEM) - Support for larger Hard Disk Drives
18:45:54 <elliott> Version 3.31 (OEM) - Compaq 3.31 supports FAT16 and larger drives.
18:46:02 <elliott> So I suspect the first three version was it
18:46:38 <fizzie> I do recall splitting a huge 40 MB disk into 32/8 and putting Populous' DOS port on the D: part.
18:46:51 <elliott> What's the point of that :P
18:47:04 <elliott> Oh, to get around the limit.
18:47:23 <fizzie> Right. It's the only thing I remember using D: for, but I'm sure there was something else too.
18:47:41 <elliott> fizzie: Populous is rather newer than these versions, though. But I guess Scandinavia was ~slow~.
18:49:59 <fizzie> http://en.wikipedia.org/wiki/Comparison_of_x86_DOS_operating_systems "Technical specifications" / "Max Hard Drive partition size" says the 32M limit was there for the whole 3.x series, and only 4.0 bumped it up to 2G.
18:50:13 <fizzie> Not sure what to trust; my own very fallible memory would've put the change around 3.33.
18:50:16 <elliott> Holy shit, in two thousand and sixteen Microsoft will be forty years old.
18:50:44 <pikhq> And still dealing with the legacy of their choice to support a CP/M clone.
18:52:27 <fizzie> http://en.wikipedia.org/wiki/File_Allocation_Table#Initial_FAT16 speaks of the partition size limit too.
18:52:44 <elliott> I appear to be unable to find dos three floppies.
18:53:12 <fizzie> I have a 3.2 box somewhere, but no operational floppy drive at the moment, I don't think.
18:53:42 <fizzie> (I'm 1300 km from the box anyway.)
18:53:43 <elliott> fizzie: Not that you'd ever do something so illegal, after all; haven't you read that open letter by Bill Gates?
18:54:25 <fizzie> Yes, I suppose DOS 3's still selling quite well.
18:55:18 <elliott> I wonder if you can still actually buy it.
18:56:28 <fizzie> From eBay, at least. :p
18:56:40 <elliott> Noooooo, I want to give back to the Big G.
18:57:16 <coppro> holy shit I have money
18:57:48 <coppro> elliott: also why is your TV so much better than the Americans'?
18:58:14 <elliott> I take it you mean the "terrestrial" channels rather than the full range on freeview or Sky, because the latter ios 90 percent absolute pap.
18:58:23 <elliott> And the answer is communism.
18:58:31 <fizzie> Today's interesting things from the conference: there was one rather nice-looking texture reconstruction (in the photoshop "context-aware fill" style) poster that at least had pretty pictures. (One assumes they've selected the best-working examples, of course.)
18:58:36 <zzo38> There is also FreeDOS, which can be modified to do the things you want it to do instead.
18:59:08 <elliott> BBC? Government. ITV and Channel 4? Public service. Channel 5? Erm, shitty.
18:59:30 <elliott> fizzie: That's quite a popular kind of thing nowadays isn't it.
19:00:04 <elliott> fizzie: Reddit gave this amusing example recently:
19:00:15 <elliott> (Source image) Badly-stitched thing: http://i.imgur.com/RBELd.jpg
19:00:19 <elliott> Photoshop content-aware filled: http://i.imgur.com/ZBSkK.jpg
19:00:35 <elliott> GIMP filled with resynthesizer: http://i.imgur.com/biWF6.jpg
19:02:06 <fizzie> Then there was a thing that can distinguish singly- and doubly-encoded JPEGs, for the use case where you detect forgeries by assuming they've been double-compressed. (I don't think they really took into account the various other ways -- like stupid(tm) rotation -- images can get double-compiled, I mean compressed.)
19:02:34 -!- ais523 has quit (Ping timeout: 240 seconds).
19:03:04 <elliott> fizzie: Was there anybody doing a demonstration of why speech recognition is useless and pointless and nobody will ever want it ever and it's basically just this big ol' joke?
19:03:42 <fizzie> Well, the day's plenary talk was sort-of.
19:03:52 <fizzie> Though maybe not in those exact works.
19:04:03 <elliott> He's making typos I think I upset him
19:04:21 <fizzie> I blame the laptop keyboard. (A convenient excuse.)
19:04:30 <elliott> "Also my uncontrollable sobbing."
19:04:46 <elliott> Hey pikhq do you have an ms dos floppy.
19:04:54 <fizzie> That too. Inconspicious topic-shift! The Resynthesizer(tm) is indeed one of my favourite things.
19:05:15 <elliott> I would definitely go and visit http://i.imgur.com/biWF6.jpg, that's for sure.
19:05:33 <elliott> I like how it sort of invented a volcano in the stitch.
19:05:35 <zzo38> Is there some program that can convert JPEG to format that you can convert back without changing the lossy part of the compression? But that the new file can then be rotated and manipulated in ways before it is put back?
19:06:22 <elliott> 3.01984Support for high-density (1.2 MB) floppy disks and 32 MB hard disks was added.
19:06:26 <elliott> 3.31987This release was written to take advantage of IBM's PS/2 computer range. It added support for high density 3.5" floppy disks, more than one partition on hard disks (allowing use of disks bigger than 32 MB) and code pages.
19:06:49 <elliott> fizzie: So 3.3 just let you circumvent the /drive/ limit by letting you partition it.
19:06:57 <elliott> 4.01988This version provided XMS support, support for partitions on hard disks up to 2 GB and a graphical shell. It also contained a large number of bugs and many programs refused to run on it.
19:07:02 <elliott> Probably that added bigger-partition support too.
19:09:51 <elliott> File name: Microsoft DOS 3.31 (3½).rar
19:09:51 <elliott> File description: Microsoft MS-DOS 3.31 By LsFer010
19:09:55 <elliott> Oh hey cool, Google pays off.
19:10:35 <elliott> -rw-r--r-- 1 elliott elliott 1.5M 1996-12-24 23:32 Disk1.img
19:10:44 <elliott> It was two thousand and ninety-six in the archive. :p
19:12:15 <elliott> fizzie: pikhq: Wow, it displays the current year correctly.
19:13:01 <fizzie> I think it was two 5.25" floppies, but could be the other one was something non-essential.
19:13:25 <elliott> File name: Microsoft DOS 3.2 (5¼).rar
19:13:37 <elliott> 3.31987This release was written to take advantage of IBM's PS/2 computer range. It added support for high density 3.5" floppy disks, more than one partition on hard disks (allowing use of disks bigger than 32 MB) and code pages.
19:14:03 <elliott> Hey how did you actually install DOS anyway I do not even know.
19:14:08 -!- ais523 has joined.
19:14:14 -!- ais523 has quit (Changing host).
19:14:14 -!- ais523 has joined.
19:14:51 <fizzie> zzo38: There are at least tools that rotate (and mirror and crop; with some restrictions) JPEG images without decompressing; I don't think there's any standard easily-manipulatable format though.
19:17:16 <elliott> I do not even know this thing.
19:18:02 -!- Phantom_Hoover has joined.
19:19:06 <elliott> Do you just copy all the files to C:\DOS.
19:19:10 <elliott> Is that what you do fizzie.
19:19:38 <fizzie> The versions I recall more clearly used to have a SETUP.EXE.
19:19:53 <fizzie> You do need to at least SYS the drive to get the boot thingies in place.
19:20:11 <elliott> Do I need to sys the drive before I setup.
19:20:24 <fizzie> Nah, the setup will take care of it.
19:20:37 <elliott> "setup" just seems to... hang.
19:20:41 <fizzie> You may need to FDISK the drive before, though.
19:20:42 <elliott> Maybe it is working very hard.
19:20:52 <elliott> OK fdisk is a thing I can do.
19:23:58 <elliott> fizzie: Seems like the setup tool doesn't like me so I'll just do it manually.
19:24:06 <elliott> CONFIG.SYS and COMMAND.COM have to be in the root directory, right? What else?
19:25:28 <fizzie> Not much that I recall; you do need to either SYS it or FORMAT /S (if I recall the flag right) to make it put a boot sector. And I can't quite recall what made it put the usual code into MBR.
19:25:48 <fizzie> SYS will copy command.com too, I think.
19:25:50 <elliott> I seem to have a boot sector, it just complains about a lack of command interpreter now.
19:26:01 <elliott> "SYS C:" doesn't seem to copy t.
19:26:24 <elliott> C:\DOS is the usual place for all the other files though, right?
19:27:16 <fizzie> You could try with FORMAT /S and then copying the necessary things in \DOS.
19:27:39 <elliott> Geh, how do you move things.
19:27:45 <elliott> "rename DOS\COMMAND.COM COMMAND.COM" doesn't work.
19:28:00 <elliott> Also, no /S here it seems; too MODERN.
19:29:10 <elliott> Deewiant: I don't have any MOVE.
19:29:36 <elliott> Or maybe this download sucks.
19:31:42 <Vorpal> elliott, why are you messing with dos?
19:33:00 <Vorpal> elliott, or is it badly coded or something?
19:33:44 <elliott> Too new, lame protected mode, PEH
19:33:50 <elliott> Now how do you stop DOS asking for a new date/time on each boot.
19:36:38 <fizzie> Make an autoexec.bat for it.
19:36:50 <fizzie> I think the date/time query only hits if you don't have one.
19:40:48 -!- elliott has quit (Ping timeout: 252 seconds).
19:45:50 <Sgeo> I was playing Portal 2
19:45:58 <Sgeo> It closed out on me after being minimized
19:46:00 * pikhq beats head against wall
19:46:08 <pikhq> "Occam's Razor Is Simply Wrong!"
19:46:16 <Sgeo> It's just not on the taskbar
19:46:17 <pikhq> OUCH OUCH OUCH OUCH
19:46:27 <pikhq> THE PAIN AND AGONY IS ASTOUNDING
19:47:06 <pikhq> Oh. Poe's Law in full force.
19:47:33 <pikhq> Thanks be to goodness.
19:48:10 <ais523> gah, I keep forgetting what Poe's Law is even despite looking it up at least twice
19:48:12 * ais523 looks it up a third time
19:48:31 <pikhq> It's a very fundamental law of discourse.
19:55:25 -!- lambdabot has quit (Ping timeout: 246 seconds).
19:58:01 -!- cheater__ has quit (Ping timeout: 248 seconds).
19:58:05 <Vorpal> wait what, firefox makes sound when you type in something for search on page and it isn't found!?
19:58:31 <Vorpal> I usually only use sound when listening to music or playing games, I guess that is why I never noticed before... But how do you turn that off...
20:02:17 <zzo38> I don't know, maybe go to about:config and then find the correct setting to turn off
20:03:51 <Vorpal> hmm. accessibility.typeaheadfind.enablesound looks promising.
20:13:44 -!- cpressey has joined.
20:14:39 * cpressey inks out "ais523" and "zzo38" on his "#esoteric Bingo" card
20:14:56 -!- Tritonio has joined.
20:15:53 <cpressey> oh, and "Phantom_Hoover". score. only five more squares until blackout
20:16:05 <ais523> cpressey: people who are in the channel simultaneously with you?
20:16:32 -!- cheater__ has joined.
20:16:58 <cpressey> yeah, see, many of the nicks here, are always here, and thus not interesting to observe, when I join
20:17:45 <Vorpal> cpressey, neither ais523 nor zzo38 are always here
20:18:24 <ais523> Vorpal: that's what cpressey implied
20:18:50 <Vorpal> ais523, wait, didn't he imply that you were always here?
20:19:03 <ais523> because if I were, me being here wouldn't be interesting
20:19:08 <ais523> and he clearly found it interesting
20:19:17 <Vorpal> ais523, I have no idea how bingo works
20:19:21 <ais523> there are so many genders I don't know
20:19:38 <Vorpal> ais523, is blacking it out interesting or non-interesting
20:19:56 <Vorpal> ais523, what does it mean in real bingo?
20:20:02 <ais523> basically, you have a list of numbers on the card, and the announcer calls out random numbers
20:20:10 <ais523> if they call out a number on your card, you get to cross it off the card
20:20:15 <ais523> you win when there are none left
20:20:22 <ais523> and often also get a prize if you manage to form certain patterns
20:20:27 <ais523> it's an entirely luck-based game
20:20:37 <ais523> variants often replace the numbers with something else
20:20:55 <Vorpal> ais523, I was just about to suggest that simply applying a PRNG once to decide who won would be easier. But it would not handle the pattern case.
20:21:11 <ais523> Vorpal: that would defeat most of the interest in the game, though
20:21:27 <ais523> which is people thinking "ooh, I've almost won" and then just getting beaten
20:21:30 <Vorpal> ais523, apart from the pattern bit, this game doesn't sound very interesting
20:21:34 <ais523> I don't find it a particularly interesting game myself, though
20:22:01 <ais523> oh, also I think the announcer never repeats numbers, but that's just to save time
20:22:12 <ais523> (note that you don't get to choose the numbers on the card, they're random too)
20:22:56 <cpressey> it's almost entirely luck. there is the small factor of being able to pay attention to the announcer.
20:23:17 <cpressey> if you are easily distracted, that can work against you.
20:24:04 <cheater__> the game is a secondary factor, the primary factor is the social aspect of many people sitting in one room, and everyone hoping to be the one who gets to shout bingo! drawing attention to themselves.
20:24:34 <cpressey> yeah, what they don't realize is that you can just join an IRC channel and do that.
20:24:44 <cheater__> except that just randomly choosing who gets to stand up and shout bingo! is too stupid even for those people, so they make the pretense of an actual game
20:25:51 <cpressey> so I was going to try my hand at implementing Deadfish in ooc
20:26:08 <cpressey> then I realized that the ooc compiler is self-hosted
20:26:17 <cpressey> and you need a binary package to bootstrap it
20:26:52 <ais523> you can use a cross-compiler in order to break the infinite regress
20:27:19 <cpressey> there might. i haven't come across it though
20:27:47 <cpressey> but what I was thinking is: doesn't this go against open-source a little? how do I know what this binary contains? how do I know it was compiled from these sources?
20:28:26 <cpressey> doesn't supporting all these platforms impose a drain on resources?
20:29:43 <cpressey> if there was an ooc interpreter in a popular scripting language, wouldn't that do the job for bootstrapping just as well?
20:29:46 <olsner> "Q: If I don't need another ooc compiler to compile this one, how does it work? What does 'make bootstrap' do?
20:29:46 <olsner> A: 'make bootstrap' builds a rock binary from the C sources in build/c-source, calls it bin/c_rock, and uses it to recompile itself to bin/rock"
20:30:18 <cpressey> "make" does not tell you any of this -- it tells you to go fetch a bootstrap package
20:31:22 <olsner> I guess the FAQ could be out of date, if it isn't just the makefile that is a lying bastard
20:31:24 <cpressey> er, it apparently IS a crock. "make bootstrap" tells me the same thing
20:31:36 <olsner> they're probably both wrong
20:31:37 <cpressey> I think the faq is out of date
20:32:10 <Sgeo> Plugged in, not charging
20:32:14 <Sgeo> A reboot tends to solve this
20:32:19 <Sgeo> !@#$%^&*()(*&^%$#@#$%^*(&%$@@#$^&*(O
20:32:36 <cpressey> ...the Makefile *looks* like that should work.
20:34:49 <cpressey> no, looks like the version of rock on github does not include the necessary C sources.
20:35:47 <cpressey> back to boring javascript debugging fun fun
20:35:59 <CakeProphet> javascript is the easiest language to debug by far.
20:36:01 <olsner> the next point in the faq mentions another make target for generating the C sources (using rock)
20:37:41 -!- Sgeo_ has joined.
20:38:07 -!- Sgeo has quit (Ping timeout: 246 seconds).
20:38:22 * Sgeo_ is most certainly not CakeProphet
20:39:03 <CakeProphet> you're my utter reflection, Sgeo, what do you mean?
20:41:34 <cpressey> olsner: the awesomeness of this build system has defeated me.
20:43:15 <cpressey> I mean, it would appear rock is required to build the C sources required to build c_rock required to bootstrap rock
20:43:35 <olsner> at one point in my life I should just go ahead and write a compiler directly in the language that it will compile from, and not bother figuring out how to bootstrap it before releasing it
20:44:42 <CakeProphet> There's a bug in this Perl IRC bot I made that I haven't been able to figure out for 2 days now.
20:46:42 <cpressey> But Perl is almost as easy to debug as Javascript!
20:47:14 <Phantom_Hoover> God, that expressive type system makes finding bugs nigh-impossible!
20:57:53 <cheater__> wouldn't perl be great for like.. interactive programming
20:58:00 <cheater__> say you have some data set that you need to process
20:58:26 <cheater__> you're in the editor, and every time you enter something it gets re-run with that data.
20:58:35 <cheater__> in another pane you have a live display of the data set.
20:59:09 <cheater__> so let's say you're doing some statistics, you could have a live display of the data analysis, like say a distribution graph.
21:00:23 <cheater__> perl is very terse, so it lends itself to this sort of thing.
21:04:09 <cpressey> Yes, Perl should be used for interactive statistics. While R is better suited for IRC bots: https://bitbucket.org/catseye/rtype
21:14:43 -!- oklopol has joined.
21:17:23 <ais523> oklopol: in what context?
21:17:42 <oklopol> don't ruin my fun by being like that
21:18:14 <oklopol> in the context "my ape is a grape"
21:18:40 <oklopol> (it is actually not a grape)
21:19:22 <oklopol> so ais523, what you been up to?
21:19:42 <ais523> trying to get a report finished
21:19:53 <ais523> also training Pokémon for the national Pokémon championships in a couple of weeks
21:20:14 <ais523> it's a particularly boring report, trying to demonstrate that I know enough about what I'm doing to be allowed to continue on a PhD
21:20:48 <oklopol> i just got my funding for the phd like, umm, yesterday or something
21:21:09 <ais523> I got my funding ages ago
21:21:16 <oklopol> i mean officially, it was rather obvious from the start that i'd get it
21:21:33 <ais523> but after a year, they make people do a report to determine whether I've actually been doing something PhD-worthy or whether they should stop funding it and cut their losses
21:21:40 <oklopol> but i only finished my master's degree this year
21:22:24 <oklopol> although i'm sure they only cut it if you directly admit you've been doing drugs and whores the whole time.
21:23:01 <oklopol> given that it's rather hard to measure the progress of an artist :o
21:23:14 * oklopol likes to think of himself as an artist
21:23:50 * oklopol 's ex was always like lol u no artist u just a scientist
21:24:04 * oklopol on the other hand was like stfu i'm so
21:24:28 <oklopol> also i'm rather drunk in case that was not obvious
21:25:56 * oklopol 's dad on the third hand is always like he so an artist even though he's mostly a drunk
21:28:50 <oklopol> i'm writing this survey, and it's hard because people haven't proven the things i want to mention, and i'm not supposed to prove them myself
21:31:07 <zzo38> Why are you not supposed to prove them yourself?
21:31:38 <oklopol> that's not the point of a survey
21:32:04 <oklopol> the point of a survey is to present the current state of a theory
21:32:48 <zzo38> Can you not present the current state if there is no proof?
21:32:49 <oklopol> the problem is people tend to prove trivial things that sound nontrivial instead of actually trying to solve things
21:33:23 <oklopol> proofs are the only things that further the theory in mathematics
21:33:36 <zzo38> If it is required that it is proven, then use a pseudonym or whatever
21:33:54 <oklopol> what do you mean? prove it myself in another paper?
21:34:06 <zzo38> Yes, if you know how to prove it, that is.
21:35:00 <oklopol> well i already present some of my own results, but i mean there are these couple of things that are obviously true, but i have no idea how to prove them without doing probably a month of research
21:35:10 <oklopol> so it'd be nice if someone had done this
21:35:43 <oklopol> but yeah you're right, if i had a complete existing proof
21:35:46 <zzo38> Yes I think you might be correct. What matematical theories are these that you are dealing with?
21:35:48 -!- lambdabot has joined.
21:36:09 <oklopol> the theory of picture-walking automata
21:36:42 <oklopol> the stuff i did in my master's thesis
21:39:36 <oklopol> so zzo38 what YOU been up to?
21:40:26 <zzo38> I have been playing D&D on the weekend I was in Victoria, and then yesterday I was recording the game on my computer.
21:41:26 <zzo38> However I have plans to work on TeXnicard, too. I have a request for you: If you have any ideas or feature requests for TeXnicard, tell me I can put them near the end of the book (just before the index).
21:41:45 <zzo38> oklopol: Recording http://zzo38computer.cjb.net/dnd/recording/
21:41:54 <zzo38> That's what it means.
21:41:56 <oklopol> so what was this texnicard exactly
21:42:44 <Sgeo_> My computer is making distressing noises
21:42:46 <zzo38> oklopol: TeXnicard is not related to the D&D game. For information about TeXnicard: http://repo.or.cz/w/TeXnicard.git
21:42:55 <zzo38> Sgeo_: What noise, to be specific?
21:43:14 <Sgeo_> As though something's rattling around
21:43:33 <zzo38> Sgeo_: Then open it and look inside to see if something is rattling around. Maybe the fan?
21:44:00 <oklopol> Sgeo_: so what you been up to?
21:44:49 <Sgeo_> Hoping that my computer isn't physically dying
21:45:01 <Sgeo_> And being obsessed with Homestuck
21:45:09 <lambdabot> Phantom_Hoover: You have 9 new messages. '/msg lambdabot @messages' to read them.
21:45:15 <oklopol> i've been hearing about this homestuck thing
21:45:19 <zzo38> oklopol: Do you have opinions about TeXnicard or about the D&D recording files?
21:45:56 <oklopol> zzo38: not really. i only have opinions on math nowadays :\
21:45:58 -!- Phantom_Hoover has quit (Quit: Leaving).
21:46:12 <oklopol> well, and some other things. but not texnicard or dd
21:46:20 <zzo38> oklopol: Do you have opinions about the twin primes conjecture?
21:46:50 <oklopol> well i have my usual line w.r.t. conjectures: "it's obviously true"
21:47:05 <ais523> oklopol: is that adjusted for P=NP?
21:47:09 <oklopol> although in the case of twin primes conjecture, i'm not sure that's actually my opinion since i don't know anything abou tit
21:47:17 <oklopol> yeah P!=NP is obviously true
21:47:29 <oklopol> in fact, the whole polynomial hierarchy is obviously proper
21:50:38 <oklopol> actually in the picture-walking automata case, the polynomial hierarchy has at least two propers levels!
21:50:48 -!- micahjohnston has changed nick to ebay.
21:50:51 -!- ebay has changed nick to micahjohnston.
21:50:57 <oklopol> of course, this has nothing to do with the corresponding complexity theory problem
21:51:31 <oklopol> mostly i decided to call another thing a polynomial hierarchy, because it had a similar feel to it
21:53:18 <Sgeo_> Why won't the event viewer work? :(
21:54:27 -!- micahjohnston has changed nick to elliotcable.
21:56:01 <Sgeo_> Nothing that looks hardware related. Well, one thing about some communications failure
21:56:26 <Sgeo_> "The embedded controller (EC) did not respond within the specified timeout period. This may indicate that there is an error in the EC hardware or firmware or that the BIOS is accessing the EC incorrectly. You should check with your computer manufacturer for an upgraded BIOS. In some situations, this error may cause the computer to function incorrectly."
21:56:29 <Vorpal> a* Phantom_Hoover → sleep <lambdabot> Phantom_Hoover: You have 9 new messages. '/msg lambdabot @messages' to read them. <-- heh
21:57:18 <Vorpal> Sgeo_, weeeelll that sounds like big problems
21:57:33 <Vorpal> Sgeo_, I presume it is a laptop?
21:57:37 -!- pikhq_ has joined.
21:58:18 <Vorpal> Sgeo_, at least on thinkpads there is an EC deeply involved in making "laptopish functions" work
21:58:33 <Sgeo_> "laptopish" functions?
21:58:49 <Sgeo_> Um, does that include moving the HD head elsewhere when there are vibrations?
21:58:49 -!- elliotcable has changed nick to micahjohnston.
21:58:52 <zzo38> Do you mean, like, when it is closed/open?
21:59:13 <Vorpal> Sgeo_, everything from setting brightness on screen and setting battery charge tresholds to enabling and disabling wlan and bluetooth
21:59:38 <Vorpal> <Sgeo_> Um, does that include moving the HD head elsewhere when there are vibrations? <-- I'm not sure how it reads the accelerometer
21:59:41 <Sgeo_> Easiest thing for me to test?
21:59:56 <Vorpal> Sgeo_, well it could be for some stuff only *shrug*
22:00:08 <Vorpal> I don't *think* that accelerometer reading uses the EC.
22:00:09 -!- pikhq has quit (Ping timeout: 250 seconds).
22:00:17 <Vorpal> the actual hd head moving does not use it
22:00:24 <Vorpal> but the accelerometer reading might
22:00:30 <Vorpal> Sgeo_, is that a thinkpad you have there?
22:00:54 <Vorpal> Sgeo_, well it could be very different for that brand
22:01:16 <Vorpal> I have next to no experience with that
22:02:56 <Vorpal> Sgeo_, I think the EC on my thinkpad handles stuff like Fn-PgUp turning on LED lighting up the keyboard
22:03:43 <Vorpal> Sgeo_, what is the issue you are seeing?
22:04:07 <Sgeo_> There's a funny sound when I tilt my laptop sometimes
22:04:25 <Vorpal> Sgeo_, you are doing it wrong. You don't tilt laptops
22:04:55 <Vorpal> Sgeo_, I would argue using laptops in your lap is stupid :P
22:06:37 -!- oerjan has joined.
22:07:03 <Vorpal> oh hi oerjan! There are some bad puns in the logs. Grep for Arla.
22:08:07 <ais523> `addquote <Vorpal> night → <Vorpal> oh hi oerjan! There are some bad puns in the logs. Grep for Arla. <Vorpal> night →→
22:08:10 <HackEgo> 428) <Vorpal> night → <Vorpal> oh hi oerjan! There are some bad puns in the logs. Grep for Arla. <Vorpal> night →→
22:11:21 -!- Vorpal has quit (Ping timeout: 248 seconds).
22:13:02 -!- ais523 has quit (Remote host closed the connection).
22:13:41 <oklopol> oerjan: so how about those simplicial complexes
22:15:04 -!- Rtype has joined.
22:15:12 <oerjan> well simply put, they are complex
22:15:37 <oklopol> well actually they don't seem to be complex in either sense of the word
22:16:11 -!- Rtype has quit (Remote host closed the connection).
22:16:40 <oklopol> how about that homotopy though? :D
22:17:46 -!- Rtype has joined.
22:17:57 <cpressey> hi Rtype are you gonna crash on me?
22:18:26 <cpressey> I should probably take you to another channel Rtype
22:18:39 -!- Rtype has quit (Remote host closed the connection).
22:18:46 <oklopol> this is a good channel for Rtype imo
22:19:19 <oerjan> well the functor from continuous functions to homology groups identifies homotopic functions, is what i recall, and this is somehow obvious from the simplicial complexes i even more vaguely recall
22:20:25 -!- Patashu has joined.
22:20:36 <oklopol> no yeah i don't know what that is
22:20:51 <oerjan> ...what else would you use simplicial complexes for
22:21:24 <oerjan> i only know them as a step on the road to getting the groups (or modules, if you have a more arbitrary ring)
22:21:27 <oklopol> well they are nice little spaces
22:21:33 <cpressey> Is that functor a continuous functor? I... am trying to wrap my head around such things existing
22:22:30 <oerjan> i don't know what continuity would mean for functors, although someone has probably defined it
22:22:33 <oklopol> you can build pretty much any space you can think of out of simplicial complexes
22:23:00 <cpressey> Well, functions can be continuous on the reals; you can have spaces of functions which resemble the reals; sooooo....
22:23:07 <oklopol> well, assuming you have a sucky imagination
22:23:11 <cpressey> I haven't mathed in a long time
22:23:18 -!- h[a]gb4rd has joined.
22:23:27 <oerjan> oklopol: oh hm i'm a bit confused on the terminology
22:23:30 <oklopol> a functor is not a function from functions to functions in this case
22:24:04 -!- Tritonio has quit (Read error: Connection reset by peer).
22:24:43 -!- Tritonio has joined.
22:24:48 <oerjan> argh this bloody laptop and its constant leaking of memory
22:25:10 <oklopol> oerjan: my definition is simplicial complex = collection of simplexes closed under faces (plus intersections of simplexes are faces)
22:25:57 <oklopol> pardon the extreme simplification, that doesn't really mean much :D
22:25:59 <cpressey> now oerjan's lap is covered with blood and memory
22:26:47 <oklopol> oerjan: i'm just reading this book on algebraic topology, not sure what they're going to use simplicial complexes for, yet.
22:27:03 <oerjan> oklopol: i was confusing simplicial complexes with the chain complexes made from them
22:28:15 <oerjan> those being the next step after you construct simplicial complexes, just before you construct the homology groups
22:28:20 <oklopol> i'll probably take a rather deep look into this algebraic topology thing, i saw this one general proof about exact sequences and it was just incredible
22:29:46 <oklopol> oerjan: you don't have a kind-of definition for them?
22:31:02 <oerjan> they're a sequence of modules/abelian groups with a homomorphism from each to the next such that neigboring homomorphisms compose to 0
22:31:30 <oerjan> exact sequences being a subset of them, i think
22:31:37 <oklopol> oh so a... well what do you call a non-exact exact sequence
22:32:11 <oerjan> well my advisor spoke about half exact sequences, but that's a bit different again
22:32:20 <oklopol> in an exact sequence, the image is exactly the kernel of the next
22:32:37 <oerjan> well in a chain complex the image is simply contained in the kernel
22:32:57 <oklopol> so i guess the idea is you have a space and then you build a space on top of that and then another space on top of that and so on
22:34:28 <oklopol> what i most love about math is that the technical aspect is so entertaining the authors usually don't bother to mention what they're actually doing
22:34:49 <oerjan> the homology groups give some exact sequences later
22:34:53 <oklopol> even when there's a clear intuitive idea
22:35:31 <oklopol> also it's possible you're supposed to come up with that on your own, it's certainly a rather small task compared to understanding the details
22:36:08 <oklopol> but umm homology groups, what are the elements and what is the operation?
22:36:32 <oklopol> not the fundamental group?
22:37:14 <oerjan> oklopol: oh there was a blog post on something like this on reddit, i'd find it but my computer is currently thrashing
22:37:34 <oerjan> (about not bothering to mention things)
22:38:02 <oerjan> oh wait it's still in my recent tab list
22:38:21 <oklopol> oh? interestingly enough, no mathematician has ever bothered to mention that they tend not to bother to mention things.
22:39:03 <oerjan> the homology groups are the quotients of consecutive terms of the chain complex you construct from the simplicial complex
22:39:22 <oerjan> http://scienceblogs.com/evolutionblog/2011/05/monday_math_a_rant_about_jargo.php
22:39:23 -!- Tritonio_GR has joined.
22:39:45 -!- Tritonio_GR has quit (Client Quit).
22:40:00 <oklopol> i have to go to sleep now, i'll talk to you more after learning everything about this stuff
22:40:16 <oerjan> cpressey: pretty much, this is the field which _inspired_ category theory in order to be able to build things like that
22:41:23 <oerjan> *from the simplicial complexes
22:41:50 <oerjan> the chain complex is constructed from all of them for a space
22:42:50 <oerjan> although i think you can do restrictions such as differentiability (i think the famous de rham theorem may involve that)
22:43:03 -!- Tritonio has quit (Ping timeout: 250 seconds).
22:43:39 <oerjan> oklopol: the _first_ homology group is the abelian part of the fundamental group, the rest are pretty unrelated
22:44:05 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:44:32 -!- micahjohnston has changed nick to micah|insane.
22:44:48 <oklopol> that article is not quite about what i'm talking about
22:45:02 <oklopol> in fact, i'm rarely satisfied with the amount of formality in textbooks
22:45:03 <oerjan> well it sounded related
22:45:29 <oerjan> yeah but this article is about how most err the other way, possibly _as well_
22:46:01 <oerjan> i suppose you could have too little formality _and_ too little motivation at the same time
22:46:21 <cpressey> leave relevance to those... physicists or whatever they're called
22:46:29 <oklopol> well see i'd like immense formality, but on the other hand it would be nice if they started with MENTIONING the why
22:46:35 -!- wareya has quit (Read error: Connection reset by peer).
22:46:47 <cpressey> don't assume they know the why
22:47:18 <oklopol> well true, the best part of math is when you don't really know the why, you can just skip it and be correct
22:47:22 <oerjan> cpressey: it's not just about relevance, but about _internal_ motivation as well
22:47:23 -!- wareya has joined.
22:47:43 <oerjan> which is suppose is the same as relevance to other mathematics
22:49:45 <oklopol> really i don't know what it is in general that i feel is missing from math texts.
22:50:19 <oklopol> but usually there's some simple idea that i get after reading the material a few times, and i just feel like it should've been the first sentence of the book
22:50:55 <oklopol> instead of definition 1.1.1 N is the set of nonnegative integers
22:51:27 <cpressey> if i'm lucky, i get that idea, too
22:52:03 <cpressey> but mathematics is about RESULTS! not intuitions! because intuitions can LIE!
22:52:19 <oklopol> well often there are many of them and in fact for each of them, one of the theorems says *exactly* that
22:53:33 <oklopol> but understanding things by reading is very, very hard. i guess that's why they have exercises. but who does those unless they have to.
22:53:36 <cpressey> i don't think you can call mathematics on "jargon", though, because unlike other fields, each of the pieces of "jargon" is (or should be) a well-defined abstraction, that is built upon
22:54:44 <oklopol> in fact i'd say there is no jargon, you don't really say anything unless you defined it yourself or it's english for monkeys
22:54:54 -!- elliott has joined.
22:54:57 <oklopol> or if it's a well-known math term
22:55:20 <oklopol> of course, well-known is rather relative and about 100 people actually know the term but anyhow
22:55:31 <pikhq_> And well-known math terms are themselves quite well defined.
22:56:56 <elliott> cpressey: i made you win your bingo maybe
22:59:17 <elliott> cpressey: ooc has a java interpreter btw
22:59:22 <elliott> i don't know if it can bootstrap their compiler though
22:59:55 <elliott> 20:35:59: <CakeProphet> javascript is the easiest language to debug by far.
23:00:43 <elliott> 21:04:09: <cpressey> Yes, Perl should be used for interactive statistics. While R is better suited for IRC bots: https://bitbucket.org/catseye/rtype
23:00:43 <elliott> dunno if i've mentioned how awesome you are lately
23:01:00 <oklopol> :DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
23:10:13 <cpressey> I /am/ pretty awesome, but not as awesome as ooc's build process. That one is /highly awesome/.
23:10:45 <elliott> re: the open source thing, I think it might be a fallacy in disguise
23:10:59 <elliott> do you audit gigantic C interpreter source trees before you compile them?
23:11:11 <elliott> doubtfully, so you're still essentially trusting that the source does what they say it does (interprets a language)
23:11:24 <cpressey> did I say that didn't bother me too?
23:11:24 <elliott> that's not really different to trusting that their pregenerated C source is compiled from their compiler sources
23:11:43 <elliott> cpressey: well no but it shouldn't bother you /much/ or... everything will bother you
23:11:46 <cpressey> and I doubt Intel will give me the schematics of this cpu here
23:12:19 <elliott> I mean unless you're going to do the double-compiling rigmarole constantly and only use things whose full source code you've audited, you're always going to be making assumptions with our current terrible security models
23:12:45 <cpressey> well, there is a possible world which will contain more of this (I download an ooc binary) and a possible world which will contain less of this (I don't download the ooc binary and, rather, forget ooc exists)
23:13:06 <cpressey> Still trying to figure out why Bitbucket thinks it's popular enough to include in its list of languages
23:13:21 <cpressey> Still unable to find a project on Bitbucket that is identifiably "crafted in ooc"
23:13:43 <zzo38> What does "ooc" means?
23:14:02 <cpressey> I don't know what it stands for, if it stands for anything.
23:14:16 <Sgeo_> The creator comes here sometimes
23:15:23 <elliott> does bitbucket even have search by language
23:15:49 <elliott> but then i guess that's what bitbucket is...
23:18:09 -!- augur has quit (Remote host closed the connection).
23:18:55 -!- cpressey has quit (Quit: I am frequently undone because my love of wizards).
23:19:43 -!- elliott has quit (Remote host closed the connection).
23:22:03 <zzo38> I seem to be bad at code golf except in a few cases...... for Deadfish challenge, I beat everyone at AWK but not at anything else. I almost beat everyone at C, I did badly with JavaScript, and I don't know much about Perl.
23:23:17 <zzo38> (I did, however, beat a few people on this channel, as far as I know: ais523 and adam.)
23:24:18 <zzo38> (And #esoteric did beat ditto and bk1e.)
23:24:22 -!- elliott has joined.
23:26:01 <oerjan> http://www.mezzacotta.net/garfield/?comic=736
23:30:00 -!- h[a]gb4rd has changed nick to hagb4rd.
23:50:40 -!- augur has joined.
00:02:50 -!- FireFly has quit (Quit: swatted to death).
00:04:05 -!- ralc has quit (Quit: Leaving).
00:12:31 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:13:26 -!- pikhq has joined.
00:14:42 -!- pikhq_ has quit (Read error: Operation timed out).
00:32:45 -!- azaq23 has quit (Quit: Leaving.).
00:45:39 <Sgeo_> EVEN MORE HOMESTUCK
00:46:01 <elliott> Yeah um I check often enough you don't have to remind me. :p
00:46:50 <Sgeo_> elliott, you check several times a day?
00:47:33 <elliott> Actually this time it was that I loaded the SA thread and someone mentioned a new update. :p
00:48:12 <Sgeo_> In the past few minutes? (Just want to be sure we're on the same page here)
00:49:14 -!- elliott_ has joined.
00:49:23 <elliott_> 00:48:12: <Sgeo_> In the past few minutes? (Just want to be sure we're on the same page here)
00:49:32 -!- elliott has quit (Read error: Connection reset by peer).
00:53:24 <oerjan> huh, someone renamed the despotic language section in http://en.wikipedia.org/wiki/Esoteric_programming_language to turning tarpit
00:53:53 <oerjan> although i don't think that's quite right...
00:55:19 <Patashu> turing tarpit and...turning tarpit?
00:55:30 <oerjan> well of _course_ it's a pun
00:56:17 <zzo38> Maybe they should instead rename it to "Despotic languages (turning tarpit)"
00:56:25 <zzo38> (In Wikipedia, I mean)
00:57:54 -!- TeruFSX has quit (Remote host closed the connection).
00:58:13 <Patashu> is LOLCODE really an esoteric programming language?
00:58:17 <Patashu> it's C with different syntax
00:58:32 <oerjan> it's the black sheep of the family
00:59:00 <oerjan> it's clearly _intended_ to be esoteric, yet it's so only in a very shallow way
01:06:26 <elliott_> <oerjan> although i don't think that's quite right...
01:06:31 <elliott_> that's what we agreed is a better name
01:12:18 <oerjan> elliott_: i mean they are not actually _synonyms_
01:12:25 <oerjan> a turning tarpit has to _turn_
01:13:05 <elliott_> oerjan: well meharharharbaraba said that despotic was just another name for a turning tarpit
01:13:18 <elliott_> maybe "turning tarpit" is a misnomer already :)
01:17:16 -!- micah|insane has changed nick to micahjohnston.
01:18:51 <oerjan> well the three articles in the category pretty much fits the definition of turning tarpit on our wiki. it is just not the same as the definition on wikipedia (which was the definition of despotic language)
01:20:44 -!- zzo38 has left.
01:23:05 <pikhq> Patashu: LOLCODE is composed principally of fecal matter.
01:24:05 -!- CakeProphet has quit (Ping timeout: 240 seconds).
01:27:13 -!- copumpkin has joined.
01:34:10 <Gregor> It's thundery outside, and my scaredy cat has shoved herself uncomfortably under my chest :P
01:35:51 <elliott_> Missed opportunity to say "scaredy cat cat".
01:36:09 <Gregor> That would be "scaredy-cat cat" X-P
01:43:42 <elliott_> (diff) (hist) . . N Free download of 7 Khoon Maaf; 01:26 . . (+5,110) . . Anicgibcamp (Talk | contribs) (New page: <br> <p><br>'''[http://popmovz.com/415894?pnr_id=667 Download 7 Khoon Maaf movie, CLICK HERE!!!]'''</p> <br> All formats: DVD, DivX, Xvid, Avi, Mkv, Mp4, HD, Blu-Ray<br> Downlaod video fo...)
01:43:53 <elliott_> ive wanted to download 7 Khoon Maaf for my entire life
01:43:58 -!- lameNOT has changed nick to lament.
01:54:25 <elliott_> (diff) (hist) . . N Yutham Sei Divx Hd; 01:51 . . (+2,934) . . Easmapohand (Talk | contribs) (New page: <br> <p><br>'''[http://popmovz.com/422588?pnr_id=667 Download Yutham Sei movie, CLICK HERE!!!]'''</p> <br> All formats: DVD, DivX, Xvid, Avi, Mkv, Mp4, HD, Blu-Ray<br> Downlaod video for ...)
02:04:10 -!- micahjohnston has changed nick to micahjohston.
02:04:13 -!- micahjohston has changed nick to micah|irssi.
02:04:17 -!- micah|irssi has changed nick to micah|||.
02:04:21 -!- micah||| has changed nick to micahjohnston.
02:04:28 -!- micahjohnston has changed nick to ec|ec.
02:05:51 -!- ec|ec has changed nick to micahjohnston.
02:08:58 -!- micahjohnston has changed nick to mj|irssi.
02:09:19 -!- mj|irssi has changed nick to micahjohnston.
02:10:50 <oerjan> clearly micahjohnston is a secret agent communicating in nick changes
02:11:15 <oerjan> we must accept this as a matter of utmost importance to global security
02:11:17 <lifthrasiir> oerjan: no, the period of nick changes convey the information.
02:11:34 <lifthrasiir> the nick itself does not have any meaning.
02:12:20 <oerjan> except this needs some heavy error correction to beat lag
02:13:20 <lifthrasiir> in reality some kind of modulation would have to be in use.
02:13:59 -!- micahjohnston has changed nick to not-quite-correc.
02:14:15 -!- not-quite-correc has changed nick to theyreontome.
02:14:24 -!- theyreontome has changed nick to micahjohnston.
02:15:07 <oerjan> "not-quite-correc"? clearly this scheme is using self-reference
02:15:36 -!- micahjohnston has changed nick to oerjanisoverthin.
02:15:45 -!- oerjanisoverthin has changed nick to overthinking.
02:15:50 -!- overthinking has changed nick to micahjohnston.
02:17:23 <elliott_> eat a sandwich or something :/
02:19:25 -!- micahjohnston has changed nick to heisnotthin.
02:19:28 -!- heisnotthin has changed nick to micahjohnston.
02:22:21 -!- oerjan has quit (Remote host closed the connection).
02:22:28 -!- oerjan has joined.
02:30:35 <lifthrasiir> elliott_: yeah, actually (as i mentioned hours ago) i'm working on something like it
02:31:55 <elliott_> Is it less terrible than Esco? :)
02:32:19 <elliott_> IMO such a project is interesting if it shares backends.
02:32:25 <elliott_> Or something like that anyway.
02:33:24 <lifthrasiir> well, esotope attempts to implement N^2 combination from input language to output language, when there are N languages
02:34:34 <lifthrasiir> but since it is infeasible, i instead implement much less number of those combinations and fill the remaining cases transitively
02:35:12 <lifthrasiir> for example if one has a processor from Text to Brainfuck, and one from Brainfuck to Ook!, then you don't have to write a processor from Text to Ook!
02:35:27 <elliott_> so an EsoInterpreters type thing
02:35:42 <lifthrasiir> of course it's suboptimal when the language is not Ook!, but better than nothing.
02:36:05 <lifthrasiir> to this end i had to implement some kind of meta-object system in ocalm
02:50:30 <elliott_> a common backend thing for esoteric languages might be interesting
02:50:41 <elliott_> like, most of the bf tape optimisations aren't specific to bf, they work for any tape-with-head structure
02:52:41 <augur> whats a good word for rejecting-out-of-snobbery?
02:53:27 <pikhq> augur: Douchebaggery.
02:53:36 <augur> something i can put in a paper :P
02:53:43 <pikhq> lifthrasiir: Have you considered using not-Make?
02:54:53 <pikhq> Slightly more serious note: any particular reason for Ocaml?
02:55:03 -!- Aune has quit (Quit: Hath Deprated).
02:59:36 <lifthrasiir> pikhq: i) of course i dislike make generally, but for now i'm going to stick to it. ii) to use both imperative and functional features.
03:06:06 <elliott_> Haskell is good at that too ;D
03:06:30 <pikhq> Indeed, only in Haskell are imperative actions first-class.
03:21:08 <Sgeo_> Does it ever get to be a pain using monad transformers?
03:27:14 -!- pikhq_ has joined.
03:30:00 <Sgeo_> elliott_, TV Tropes on Homestuck comments that the wiki takes what trolls say at face value
03:30:10 -!- pikhq has quit (Ping timeout: 252 seconds).
03:30:17 <Sgeo_> Does the entire community consist of portions taking pot shots at each other?
03:30:50 <elliott_> I don't know since I'm not stupid enough to read the TV Tropes page, which consists of an alphabetical listing of every trope on the entire site.
03:31:17 <elliott_> I've never found any incorrect information on the wiki but I'm not exactly cross-referencing things.
03:31:25 <elliott_> Where does it say that anyway.
03:33:30 <Sgeo_> http://tvtropes.org/pmwiki/pmwiki.php/Homestuck/TropesS-U search for Unreliable Narrator
03:33:42 -!- copumpkin has quit (Ping timeout: 240 seconds).
03:33:56 -!- copumpkin has joined.
03:34:50 <elliott_> probably some random person added that :P
03:34:57 <elliott_> it's not like anyone would notice anyone adding anything to those pages
03:35:01 <elliott_> considering they're all fives miles long
03:35:42 <elliott_> anyway who cares, the tv tropes page is interminably boring
03:44:55 -!- zzo38 has joined.
03:45:13 <zzo38> Esolang wiki is not supposed to be the movie downloading wiki
03:46:20 <elliott_> zzo38: blanking the pages is a waste of time, wait for an admin
03:47:14 <oerjan> well maybe it reduces their google hits in some cases
03:47:44 <zzo38> elliott_: I know, that is why I only put it on one of them.
03:48:57 <oerjan> hm i wonder if google detects links that are frequently removed...
03:50:19 <elliott_> oerjan: anyway the permalink is still in recent changes
03:51:45 <lifthrasiir> pikhq_, and it was quite painful for me to get used on it. ;)
03:51:52 <oerjan> unless you mean to the article version. that simply _has_ to be nofollow, otherwise we'd get swamped like haskellwiki once was
03:52:22 <zzo38> There is a new esolang added called "Hatter". I don't know if "\apply" is allowed
03:52:46 <lifthrasiir> and i'm also trying to learn ocaml in the course of the development (i do write code in Haskell as my daily job...) so it actually does not matter :p
03:53:12 <elliott_> lifthrasiir: psht, real haskellers don't get paid for it
03:53:18 <oerjan> and yes, links are nofollow
03:53:31 <zzo38> Also, "A numeric constant behaves as a hat that always yields the corresponding value. Data dropped into a numeric constant is lost." Is the "nop" hat similar?
03:54:02 <Patashu> why does tvtropes still exist
03:54:17 <lifthrasiir> elliott_, as a part of my research, actually. *wink*
03:54:26 <elliott_> Patashu: because humanity is dead. RIP.
03:54:28 <zzo38> Patashu: Probably because they have a lot of things and informations on there.
03:54:43 <Patashu> tvtropes is the next wikipedia
03:54:47 <Patashu> soon we'll be feeding it into our AIs
03:54:50 <Patashu> so they can impersonate nerds
03:54:57 <zzo38> No, it is a different set of information, it is a different kind of things.
03:55:16 <zzo38> Wikipedia is one thing, TV Tropes is other things.
03:55:20 <oerjan> i don't think ais would like tvtropes fed into him
03:55:26 <lifthrasiir> Patashu, no, but the AI will automatically generate a work using its knowledge of tropes in order to amuse itself.
03:55:29 <elliott_> zzo38: whenever i need tautologies
03:55:32 <elliott_> i can always rely on you to deliver them
03:56:13 <Patashu> It will read tvtropes but ignore the 'examples' list
03:56:14 <zzo38> oerjan: Unless it was the AI designed specifically for that purpose, maybe?
03:57:51 <elliott_> burgers are made of koala fish
03:58:13 <zzo38> elliott_: I don't know.
03:59:20 <zzo38> Make up the 'unexamples' list, in case of Uncyclopedia.
04:02:37 <zzo38> New kind of exotic code golf: Make amount of alnum same as amount of symbol, and put (alnum=sym) after your name.
04:03:10 <augur> elliott_: would you be willing to critique a draft of an introduction to a paper im writing?
04:03:21 <elliott_> maybe if it was tomorrow and not five am today
04:03:31 <elliott_> so what i am saying is no, but yes if you're asking future me
04:03:34 <augur> later today is fine!
04:03:37 <elliott_> or at least what i assume future me is going to be like
04:03:44 <elliott_> he might actually decide to hate you way too much to do it
04:03:48 <elliott_> youll have to ask him when he starts existing
04:04:07 <augur> REGENERATE, IF YOU WILL
04:04:18 <elliott_> yes that is definitely what you think is taking place here.
04:05:35 -!- micahjohnston has changed nick to everyone.
04:05:43 -!- everyone has changed nick to micahjohnston.
04:07:19 -!- zzo38 has left.
04:07:21 <augur> elliott_: wellnowwhat.net/linguistics/cwatc_draft.pdf
04:07:58 -!- SimonRC has quit (Ping timeout: 260 seconds).
04:09:03 <elliott_> i think you should remove all references to "i", they make the paper impure and ugly.
04:09:12 <elliott_> if i didn't want to pretend people didn't exist i wouldn't be reading something set in computer modern.
04:09:41 <elliott_> if you want more coherent opinions WHOOPS YOU'RE SHIT OUT OF LUCK but slightly more amusing (but equally incoherent) ones will be available once i've slept
04:09:44 <augur> i hate using the impersonal style
04:09:47 <augur> it feels unnatural
04:10:12 <augur> and i shall stick with the fun DT literature in using personal pronouns
04:10:37 <augur> if its good enough for conor, its good enough for me
04:11:04 <elliott_> conor mcbride is fucking god incarnate and pretty much the best person to ever live
04:11:08 <elliott_> becuase youre not conor mcbride
04:11:17 <elliott_> you will have to become conor mcbride
04:13:06 <augur> about mcbride being awesome
04:13:09 <augur> i fucking love his accent
04:13:34 <augur> wheres he from, btw
04:13:39 <augur> he sounds northern of some sort
04:14:00 -!- lifthrasiir has quit (*.net *.split).
04:14:01 <elliott_> unless i'm very much mistaken.
04:14:03 <augur> well, he actually sounds a bit like arthur darvill to me
04:14:09 <augur> and darvill is from birmingham
04:14:28 <elliott_> well aren't his two universities he's been at both in scotland...
04:14:31 <elliott_> that's fairly good evidence :P
04:15:05 <augur> strathclyde is glasgow
04:15:09 <augur> but isnt he also at nottingham?
04:15:30 <augur> his current email is at nottingham
04:15:46 <augur> at least if his site is up to date
04:15:53 <elliott_> http://www.e-pig.org/epilogue/?p=802
04:16:07 <elliott_> oh i guess it might be to use the maybe monad
04:16:32 <augur> and nottingham is east midlands
04:16:42 <oerjan> last myth adventures comic :(
04:16:52 <augur> so not tooo far from birmingham
04:17:31 <oerjan> augur: not strictly true in haskell
04:17:42 <elliott_> that's a dangerous thing to modulo :)
04:17:47 <elliott_> i imagine it's being used for the maybe monad here anyway
04:17:53 <elliott_> can't have a bool monad after all
04:18:05 <augur> Bot, True, False vs. Bot, Nothing, Just (), Just Bot
04:18:55 <augur> i am a full unicode cultist
04:18:59 <elliott_> "Silent cumulativity is a kind of subtyping, and if you are not scared of subtyping, you have not properly understood it."
04:19:23 <augur> elliott_: i read conor's paper on ornamental algebras todayesterday
04:19:33 <augur> or was it yestertoday
04:19:52 <oerjan> so what will you do todaymorrow
04:20:00 <augur> and what a fucking paper man
04:20:41 <elliott_> http://www.rpscontest.com/ this is cool
04:20:49 <elliott_> the top programs are all pretty short, too
04:22:16 <augur> ok i will now be going to sleep, indeed
04:22:31 <augur> /msg me with comments on the intro, elliott_, oerjan
04:22:41 <elliott_> theres a perfectly good channel right here
04:23:12 <augur> elliott_: scrollback! :(
04:25:16 <pikhq_> You know what makes me sad?
04:25:24 <pikhq_> K&R C and Smalltalk are contemporary languages.
04:25:35 <pikhq_> (Smalltalk is the *older of the two*)
04:26:22 <pikhq_> Smalltalk. 1972. C. 1973.
04:27:04 <elliott_> isnt c older than that, thats just the first release
04:27:12 <elliott_> it took until nineteen eighty for smalltalk to go public
04:27:18 <elliott_> you should find C's inception date instead
04:27:21 <elliott_> which is like late sixties i believe
04:27:53 <pikhq_> Also, "The C Programming Language" came out in 1978.
04:28:41 <elliott_> yes, but unix w/ c came out in seventy-three
04:28:49 <elliott_> and people didn't not use c until the book did they :P
04:29:21 <pikhq_> Still. *Smalltalk and C are contemporary languages*.
04:29:32 <elliott_> pikhq_: i wish smalltalk caught on rather than c.
04:29:46 <elliott_> i should really get an fpga set-up. xeightsix sucks.
04:32:02 <augur> pikhq_: you critique too!
04:34:15 -!- elliott_ has quit (Ping timeout: 255 seconds).
04:42:41 -!- SimonRC has joined.
04:44:47 -!- lifthrasiir has joined.
04:56:49 -!- zzo38 has joined.
05:00:02 -!- pikhq_ has quit (Ping timeout: 240 seconds).
05:00:12 -!- pikhq has joined.
06:08:13 <zzo38> I looked at my C codes of Deadfish for a few minutes and failed to see how to make any more shorter. I already have three question marks and adding more will just make it even longer!
06:17:22 -!- hagb4rd has quit (Ping timeout: 246 seconds).
06:19:25 <EgoBot> languages: Esoteric: 1l 2l adjust asm axo bch befunge befunge98 bf bf8 bf16 bf32 boolfuck cintercal clcintercal dimensifuck glass glypho haskell kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor sadol sceql trigger udage01 underload unlambda whirl. Competitive: bfjoust fyb. Other: asm c cxx forth sh.
06:19:47 <oerjan> !c printf("%d",1^256&&1);
06:19:55 <oerjan> !c printf("%d",256^256&&1);
06:20:14 <oerjan> !c printf("%d",256^256&&256);
06:25:57 <pikhq> Y'know, it is really weird to think that once upon a time, typing was a relatively uncommon skill.
06:26:21 <pikhq> s/typing/touch typing/
06:26:30 <oerjan> especially before the 19th century
06:27:06 <pikhq> Well, yes, it was obviously an uncommon skill before the invention of the typewriter.
06:27:19 <pikhq> Only time travellers could really be said to have the skill, after all.
06:29:22 -!- lament has quit (Ping timeout: 240 seconds).
06:43:32 <zzo38> What kind of C code are you trying to write?
06:44:30 <oerjan> i just had an idea for doing the deadfish 256 test
06:44:33 <pikhq> oerjan: ^ does not mean what you think it means. :)
06:45:06 <pikhq> Oh, wait, yeah, you probably are meaning to use it as bitwise xor.
06:45:18 <pikhq> Kinda glossed over the boolean ands for some reason.
06:45:51 <pikhq> Perhaps I should sleep.
06:46:24 -!- FireFly has joined.
06:56:22 <zzo38> oerjan: Remember the order of precedence of operators in C, and how && and || works. Whatever you wrote is clearly not working I just used something like (~x&&x-256) which results in zero when you are -1 or 256 or in one otherwise.
06:56:51 <oerjan> um what's not working about it?
06:57:07 <oerjan> !c printf("%d",3^256&&3);
06:57:55 <oerjan> gah, && doesn't return its last argument :(
06:58:36 <zzo38> Yes, it is not the same as in JavaScript. && converts to boolean and || also converts to boolean. If you want like || in JavaScript you can use ?: in GNU C.
06:58:55 <zzo38> (With nothing else in between the ? and : signs)
06:59:00 <oerjan> ...i was trying to find something shorter than using ?
06:59:21 <oerjan> you could still use ^ for the test though, it's shorter than !=
07:00:25 <oerjan> !c printf("%d",3^256?:3);
07:00:46 <Patashu> wow, I didn't know about that one
07:00:52 <Patashu> so if the argument tests to true, it prints the argument?
07:01:15 <pikhq> x?:y is the same as x?x:y in GNU C.
07:01:30 <zzo38> If the left size of ?: is nonzero then that is the result and it will skip the part afterward, if zero then it does evaluate the right part.
07:01:34 <Patashu> didn't know about that shortcut
07:01:42 <oerjan> but apparently ?: doesn't have low enough precedence
07:01:47 <zzo38> pikhq: Yes, except that it will not cause "x" evalulated twice
07:02:28 <pikhq> zzo38: Well, yeah, it more accurately maps out to ({ typeof (x) _x = x; _x?_x:y; })
07:03:30 <monqy> iirc x?:y is also different than x?x:y in that it doesn't evaluate x twice
07:03:34 <oerjan> oh wait ?: is like ||, not &&
07:03:50 <pikhq> monqy: As we discussed.
07:03:58 <monqy> oh I must have missed it
07:04:16 <oerjan> !c printf("%d",3^256?3:);
07:04:17 <quintopia> is there an official golf challenge for a deadfish interp?
07:04:36 <pikhq> !c printf("%d",!3^256?:3);
07:04:36 <monqy> if anarchy golf is official
07:04:46 <pikhq> !c printf("%d",(!3^256)?:3);
07:05:06 <oerjan> pikhq: no point in that
07:05:06 <pikhq> ... Fuck me, I should sleep.
07:05:26 <oerjan> !c printf("%d",3^256?3:0);
07:06:30 <Patashu> It's a pity golf.shinh.org doesn't let you have arbitrarily many input/output pairs
07:07:49 <zzo38> Yes it is true, but it is also true that you can post multiple submissions by () after your name
07:08:27 <Patashu> well I mean, you can't pose problems that force you to implement the entirety of a problem, just whatever you can fit in three tests
07:08:37 <Patashu> unless you multiplex tests together but that's just a pain to have to do for every entry
07:09:22 <quintopia> it would be okay even if they just allowed ten tests
07:09:23 <oerjan> for deadfish it is easy to add more than one test, since each input can have many commands. however the deadfish golf still manages to miss some important tests
07:09:40 <quintopia> no real golf challenge should require more than ten tests
07:09:40 <Patashu> yeah 10 would be good for most things
07:09:43 <zzo38> oerjan: Which ones? Be specific?
07:09:58 <oerjan> zzo38: it never increments or decrements to 256
07:10:25 <oerjan> so some of the submissions cheat by only testing on squaring
07:11:00 <quintopia> but everyone knows they are CHEATERS
07:11:07 <zzo38> Patashu: I know... but, at least, you can set the deadline, so it can be checked afterward. You can also put like (cheat) (embed) (genuine) (exec) and whatever else afterward.
07:11:38 <zzo38> oerjan: O, yes, so that's how they made their C codes shorter... I don't mind posting such solutions as long as they are clearly marked as such...
07:12:21 <quintopia> i spy one such cheater IN THIS VERY CHANNEL
07:12:37 <quintopia> PROTECT US FROM THE CHEATER OERJAN
07:13:45 <oerjan> ...i haven't made any submissions.
07:14:11 <oerjan> oh wait, grammar ambiguity
07:14:45 <oerjan> zzo38: well, they might. i haven't seen the c code
07:15:11 <zzo38> You will see on Friday, then.
07:15:15 <oerjan> but i've seen python code which did use that cheat
07:16:40 <oerjan> i considered making a haskell one but when my first try was much much longer than the leader...
07:17:15 <zzo38> Send it anyways, maybe...
07:17:20 <Patashu> Is haskell good for golfing?
07:17:35 <oerjan> well my first try was a modification of someone else's
07:17:42 <oerjan> Patashu: well it's better than java :D
07:18:11 <zzo38> oerjan: O, in that case, you don't need to.
07:19:26 <olsner> I think haskell is not-very-good for golfing ... maybe not bad, but many useful function names are long and lots of stuff require import statements
07:19:45 -!- BeholdMyGlory has joined.
07:19:57 <zzo38> olsner: All that means is you have different challenge to determine to use function with short name or whatever else it is.
07:20:17 <Patashu> I mean obviously haskell's never going to beat golfscript
07:20:21 <zzo38> The way my C code is written, it seems that trying to make it check only on squaring doesn't make it shorter anyways. (If I could make it shorter using cheats, I would use separate submissions using () after my name, but I can't.)
07:20:22 <Patashu> But is it entertaining to minimize
07:21:01 <zzo38> Patashu: Yes, but each language is a separate challenge.
07:21:38 <oerjan> haskellers like to make point-free code, which sometimes is more compact. but not always, it tends to add parentheses.
07:22:21 <oerjan> of course some of that suffers from the import problem, which is not an issue with lambdabot
07:22:48 <oerjan> (except that lambdabot has too many imports sometimes so inconsistent things crash)
07:23:39 <oerjan> (for really compact point-free code, you want to import at least Control.Applicative, Control.Arrow and Control.Monad.Instances)
07:24:55 <oerjan> and probably Data.List and Control.Monad for higher order combinators
07:27:02 <zzo38> As far as I know, the tags you put after your name in anarchy golf, can be two kinds, cheats and exotics.
07:27:54 <zzo38> Yes, it is a common one falling into the "cheats" category in my categorization of two kinds.
07:30:12 <oerjan> > nubBy(((>1).).gcd)[2..]
07:30:13 <lambdabot> [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101...
07:30:14 <zzo38> Common tags for "exotics" include (bin) (nobin) (alnum) (sym) while some others in the "cheats" category might include (embed) (cheat) (exec) (noexec) (genuine) (luck) (rand) note sometimes tags indicate presence of cheating and sometimes absence of cheating
07:32:28 <oerjan> there's one with scanl for fibonacci which i have forgotten
07:34:17 <shachaf> > fix ((1:).scanl(+)1) -- This?
07:34:21 <lambdabot> [1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,1...
07:34:43 <oerjan> it's the fixpoint combinator
07:34:44 <shachaf> Patashu: Fixed-point combinator. fix f = f (fix f)
07:35:35 <shachaf> oerjan: What ar eyou doing in this channel instead of #haskell? :-)
07:35:58 <oerjan> i was here before i was in #haskell
07:41:12 <oklopol> it seems while my eyes were closed, some time passed.
07:46:27 <oklopol> so oerjan how about the fact that if you have two exact sequences of length 5 and you have an onto homomorphism between the first nodes, an isomorphism between the second and fourth nodes and a one-to-one homomorphism between the fifth ones, then if the middle is a homomorphism it is an isomorphism
07:47:14 <oerjan> a very nice fact which i used in the first article i published
07:47:53 <oerjan> and i recall the referee wanted us to remove it, so we had to clarify that it was actually needed
07:48:32 <oklopol> is it used very often or do we just have very a similar aesthetic sense
07:49:10 <oklopol> because i just grabbed that from a list of 50 random "preliminary" definitions and lemmas
07:49:31 <oklopol> not sure why i quoted preliminary, did some heavy editing on that sentence
07:51:27 <oklopol> i should just read all your articles
07:51:34 <oklopol> SHOULDN'T TAKE TOO LONG HUH :DDDDDDDDDDDDDDDDD
07:51:52 <oerjan> well we were doing k-theory, which is a sort of homological algebra, and we had homomorphisms going between two exact sequences and needed to show the important one was an isomorphism - it was pretty much a perfect fit.
07:51:55 <oklopol> actually i probably still wouldn't get any of it
07:52:22 <oklopol> i have a paper on a k-theoretic approach to symbolic dynamics on my desk
07:52:59 <oerjan> ah, is anyone of Giordano, Putnam or Skau involved?
07:53:03 <oklopol> but i don't know what k-theory is, except that it's a sort of homological algebra apparently
07:53:19 <oklopol> putnam sounds very familiar, he must be in at least one of the papers i'm reading
07:53:37 <oklopol> i can check today if i manage to drag myself out of the armchair
07:53:57 <oerjan> oklopol: well there's also the putnam contest which is something entirely unrelated
07:54:13 <oerjan> (except for also being math)
07:54:43 <oklopol> iirc i've heard "the putnam article" at some point at uni
07:55:27 <oerjan> ian putnam, a professor who collaborated with my advisor on a breakthrough paper
07:55:43 <oerjan> (my advisor being Skau)
07:56:08 <oklopol> what was the breakthrough paper abourt
07:57:15 <oerjan> about classifying cantor set minimal dynamic systems up to orbit equivalence by their k-theory
07:59:03 <oklopol> so umm, cantor set minimal dynamic systems, what's that in symbolic dynamics lingo, minimal closed shift-invariant subset of the bi-infinite sequences + shift?
07:59:26 <oerjan> that first article btw was proving that this classification broke down if you went slightly outside cantor sets
07:59:37 <oklopol> ah yes i recall us talking about this
07:59:43 <oklopol> apparently i didn't quite get it since i have to ask
08:00:50 <oerjan> i believe the things you mention from shifts are a subset of minimal dynamic systems, the expansive ones
08:01:57 <oerjan> which have the property that there exists an epsilon > 0 such that for any distinct points x and y you can apply the dynamics some number of times to them and get them further away than epsilon
08:02:02 <oklopol> well at least shifts are expansive on minimal systems
08:03:27 <oklopol> hmm the cantor set is actually more like the one-way infinite sequences?
08:03:28 <zzo38> I Can't Believe It's Not Hitler!
08:04:10 <oerjan> well one-way or two-way are homeomorphic, you just need two-way to put a dynamics on it
08:04:54 <oklopol> but so can you somehow connect CA and this stuff?
08:05:11 <oerjan> but the bratteli diagrams we used are more like one-sided ones
08:06:01 <oerjan> well CAs have their dynamics sort of in the orthogonal direction, don't they
08:06:30 <oklopol> i have no idea, do you mean since you think of the dynamics in the cantor set case as a *shift*?
08:06:41 <oerjan> it's shift invariant though
08:07:00 <oklopol> CAs are the continuous shift invariant functions yes
08:07:19 <oerjan> while minimal systems are shift invariant _sets_
08:07:38 <oklopol> oh so shift-invariant? so the dynamics is the shift?
08:07:54 <oerjan> well those that are shift systems are so
08:08:11 <oklopol> yeah that's what i wanted to hear
08:08:25 <oerjan> otherwise, invariant wrt whatever is the dynamical transformation
08:08:51 <oklopol> anyhow so this is the same thing symbolic dynamics does really, except symbolic dynamics usually restricts to SFTs and sofic shfits so that you can play with matrices
08:09:25 <oerjan> well we played with bratteli diagrams, and an infinite tower of matrices
08:09:49 <oerjan> (bratteli-vershik diagrams, to be precise)
08:10:12 <oklopol> because your toys are so much cooler
08:10:38 <oerjan> that was my advisor and my co-author, silly
08:10:55 <oklopol> "<oerjan> well we played with bratteli diagrams, and an infinite tower of matrices"
08:11:40 <oerjan> (i never got the impression he was particularly rich. the main algebra professor supposedly was rather well off, though.)
08:12:10 <oerjan> for reasons not related to her work, i think
08:13:47 <oklopol> also the dynamics invariance idea is also played with in cellular automata
08:14:23 <oklopol> because you often let your CA run forever first and then look at the dynamics on the set you get are a result
08:15:15 <zzo38> If you have any feature request and/or ideas for TeXnicard, please tell me; I would like to know.
08:15:16 <oklopol> a clopen set U is inward if G(U) \sub U, and U's attractor is \cap_i G^i(U)
08:15:56 <oklopol> often enough we take the attractor of S^Z because that's what the CA looks like "eventually"
08:16:07 <zzo38> What is a clopen set?
08:16:14 <oklopol> zzo38: closed and open set
08:16:48 <oklopol> ah and the attractor of S^Z is called the limit set, didn't remember that so had to define attractors :P
08:17:18 <oklopol> there are interesting results on the limit set
08:17:26 <oerjan> our dynamics was always invertible so we never had that
08:17:42 <oklopol> for instance my supervisor proved a rice's theorem for limit sets some years ago
08:17:52 <oklopol> of course, this is very different from the kind of stuff you ppl do
08:18:12 <oklopol> rice's theorem is the one that says you can't say anything about a turing machine's language
08:18:57 <oklopol> for CA, it means for any property P (nontrivial subset of limit sets that *actually occur*), you can't tell if your CA has that property in general
08:19:10 <oklopol> and this is much harder to prove
08:19:21 <oklopol> (no connection with the TM case)
08:22:26 <oklopol> but anyhow there are less computational questions as well and for the 1D case, a lot of fun little stuff is known about the structure of the attractor "tree"
08:22:48 <oklopol> minimal systems are the leaves i guess
08:22:59 <oklopol> i should go to work at some point i think :D
08:27:58 <oklopol> zzo38: in 0-dimensional spaces, clopen sets form a base for the topology
08:28:03 <oklopol> so they are very important
08:29:13 <oklopol> U is open <==> clopen set around each point of U within U
08:29:40 <oklopol> and yes, i'm just fucking with you, i don't except this to be a very useful lesson
08:31:11 <oklopol> oerjan: what's "the" definition of dimension according to you?
08:32:00 <oerjan> well for zero dimensions they tend to agree don't they
08:32:34 <oklopol> that's exactly what another guy who studies zero dimensional spaces said when i asked
08:32:39 <oerjan> but in the later work on topological measures, the important one was about refinement of coverings
08:33:16 <oklopol> you can always find a refinement such that at most dimension + 1 sets intersect
08:33:29 <oklopol> refinement being a.... subset of the cover? :P
08:33:33 <oerjan> although our spaces were compact, which i think makes some variations of _that_ identical again
08:33:44 <oklopol> no actually subset + smallening?
08:34:48 <oerjan> i'm not sure if you might have to take more than one subset of each original open set
08:38:21 <oerjan> i thought for about a day that i had a proof that if a space had dimension >= 2, then there existed nontrivial (non-lebesgue derived) topological measures, but that proof had a fatal flaw.
08:38:42 <zzo38> I don't really like the changes they made to Magic: the Gathering, except for the change of the name of the remove from game zone. That zone is still used in the game so it makes sense to change it. Other than that I do not like their changes.
08:38:54 <oklopol> say you have 2n balls on a circle, each connected through the middle of the circle to the ball on the other side, have each of them contain a point contained in none of the other balls, and so that the whole circle gets covered, then you have to cut some of the connections in two or you have a huge number of collisions in the middle
08:39:06 <oklopol> actually that's not really true
08:39:14 <oklopol> yeah kind of hard to come up with an example
08:39:51 <oklopol> oerjan: would that be a huge thing?
08:40:09 <oklopol> that thing you thought you did
08:40:40 <oerjan> well it would have determined precisely which compact spaces have nontrivial top. measures
08:40:58 <oklopol> does every compact space have a dimension?
08:41:21 <oklopol> makes sense with the refinement thing at least
08:41:22 <oerjan> it can be infinite of course
08:42:32 <oklopol> oh yeah topological measures, that was again something you talked about but i don't remember at all
08:42:43 <oerjan> and since the spaces are compact, you can never find a particular cover which needs an infinite subcover
08:43:04 <oerjan> so it makes no sense to go beyond infinity
08:46:27 <oklopol> can you explain topological measures again? :)
08:47:03 <oerjan> well you have a compact hausdorff space, and its families of closed and open sets
08:48:28 <oerjan> and then you have a set function from the union of open and closed sets to some [0, a] where a may usually be assumed = 1
08:49:34 <oerjan> call it m, and the space X, so m(X) = a
08:49:45 <zzo38> The default Magic Word, "Abracadabra", actually is a corruption of the Hebrew phrase "ha-Bracha dab'ra"
08:49:49 -!- zzo38 has quit (Quit: zzo38).
08:50:24 <oerjan> if A is an open or closed subset of B, then m(A) <= m(B).
08:51:12 <oklopol> what, that's CRAZY!! (i'm being sarcastic btw)
08:51:20 <oerjan> if A, B and C are open or closed subsets, A and B are disjoint and C is their union, then m(A) + m(B) = m(C).
08:52:10 <oklopol> but yeah i guess it's useful to open up the definition because of our crazy domain constraints
08:52:36 <oerjan> yes, but note that if A in B are open or closed subsets, then B \ A need not be, and in that case m(B \ A) does _not exist_, and there is no additivity.
08:52:56 <oklopol> yes, that's why it made sense to open the definition
08:53:05 <oklopol> but actually the way you usually define it
08:53:24 <oklopol> is exactly what you said, measurable disjoint things and measurable union => additive on those
08:53:39 <oklopol> do continue, or are we done
08:53:51 <oerjan> yeah it is possible to formulate the definition exactly like for ordinary measures
08:54:49 <oerjan> if C is a closed set and epsilon > 0, then there exists an open set O containing C such that m(O) <= m(C) + epsilon
08:55:22 <oerjan> i think that may be it
08:56:05 <oklopol> well that's pretty neat, why do we even bother with borel sets
08:57:11 <oklopol> does it follow that you can approximate open from inside by compact?
08:57:25 <oerjan> an important theorem is that if m(A union B) <= m(A) + m(B) for every open or closed A and B such that A union B is open or closed (subadditivity), then m actually comes from a borel measure.
08:57:54 <oerjan> we have m(C) + m(X \ C) = m(X), always, which gives a duality
08:58:54 <oklopol> okay it's noon, i have to go :P
09:02:56 -!- monqy has quit (Quit: hello).
09:12:15 -!- copumpkin has quit (Ping timeout: 250 seconds).
09:12:42 -!- copumpkin has joined.
09:18:33 -!- oerjan has quit (Quit: Good night).
09:44:44 -!- Vorpal has joined.
09:51:49 <Patashu> I need a C or C++ library for reading graphics files
09:57:01 <Patashu> hmm, but if I use a library I have to supply the library with my assignment too
09:57:06 <Patashu> how are we expected to do it again ?_?
09:57:10 <Patashu> darn university assignments
10:26:56 <fizzie> You could possibly just use one of the trivial formats, maybe.
11:05:27 -!- Lymia has joined.
11:06:16 -!- Phantom_Hoover has joined.
11:06:44 <lambdabot> Phantom_Hoover: You have 5 new messages. '/msg lambdabot @messages' to read them.
11:07:55 <Lymia> Let's send Phantom_Hoover 42 messages.
11:35:54 <Patashu> Except I don't know how to convert into it
11:36:29 <Patashu> http://www.sydneyarchitecture.com/ROC/ROC006-Sydney_Opera_House_Sails.jpg I need a .raw of the kind of striped texture of the brown surface on this picture
12:18:46 <Patashu> nvm, PSP can save as raw. sweet
13:00:33 <fizzie> There are also other uncompressed formats with trivial headers.
13:01:05 <fizzie> I seem to recall Gimp has raw-writing capabilities too. (Or maybe it was just reading.)
13:06:21 -!- Lymia has quit (Ping timeout: 244 seconds).
13:08:31 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
13:53:41 -!- sebbu has quit (Read error: Connection reset by peer).
13:54:10 -!- sebbu has joined.
13:54:13 -!- sebbu has quit (Changing host).
13:54:13 -!- sebbu has joined.
13:57:28 -!- Lymia has joined.
14:01:04 -!- Lymia has quit (Client Quit).
14:01:21 -!- Lymia has joined.
14:07:16 -!- Lymia has quit (Quit: 1... 2... 3... HUGS! :D).
14:07:34 -!- Lymia has joined.
14:08:14 <Vorpal> <fizzie> There are also other uncompressed formats with trivial headers. <-- I don't know what .raw is, but if it is at all related to raw camera images it will be quite a pain to work with
14:09:11 -!- Lymia has quit (Client Quit).
14:09:31 -!- Lymia has joined.
14:13:19 -!- Lymia has quit (Read error: Connection reset by peer).
14:24:35 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:39:45 -!- ais523 has joined.
14:53:03 -!- copumpkin has joined.
15:14:37 -!- pikhq has quit (Ping timeout: 255 seconds).
15:14:40 -!- pikhq_ has joined.
15:18:05 -!- sebbu2 has joined.
15:18:05 -!- sebbu2 has quit (Changing host).
15:18:05 -!- sebbu2 has joined.
15:21:38 -!- sebbu has quit (Ping timeout: 260 seconds).
15:38:43 -!- lament has joined.
15:55:07 -!- FireFly has quit (Quit: swatted to death).
15:56:21 -!- EgoBot has quit (Remote host closed the connection).
15:56:33 -!- EgoBot has joined.
16:20:47 -!- lament has quit (Ping timeout: 260 seconds).
16:33:27 -!- Lymia has joined.
16:33:27 -!- Lymia has quit (Changing host).
16:33:27 -!- Lymia has joined.
16:49:17 <Sgeo_> I can't tell whether you're making a comment at the obviousness of that, or that it's technically not distilled water that conducts electricity (iirc)
16:51:02 <Phantom_Hoover> I'm saying that water and electricity mix extremely well.
16:52:43 <Phantom_Hoover> I could even explain the logic behind their statement but it's so stupid I... can't.
16:54:31 <Phantom_Hoover> And distilled water does conduct electricity a little, just not nearly as much as water with dissolved ions does.
16:54:55 <ais523> actually, distilled water only conducts electricity because of dissolved ions
16:55:01 <ais523> it turns out water actually can dissolve in itself
16:55:05 <ais523> although it saturates quickly
16:56:09 <Phantom_Hoover> Yes, OK, but I didn't really feel like explaining dissociation to be technically correct.
16:56:29 <cheater__> how much water can you dissolve in 1L of water?
16:58:31 <ais523> I can't remember offhand
16:58:41 <ais523> but I know it's used as the basis for the definition of pH
16:59:12 <Phantom_Hoover> pH = -log_10 [H+] where [H+] is the concentration of H+ ions.
17:00:18 -!- TOGoS has joined.
17:00:38 <Lymia> How much water can you dissolve in 1L of dissolved water?
17:01:49 <Phantom_Hoover> There's often not much difference between jokes and interesting questions.
17:05:31 <Phantom_Hoover> (I suppose you could say that a litre of water will have 10^-7 mol of dissolved water in it.)
17:05:48 -!- monqy has joined.
17:09:09 * pikhq_ is still confused by Firefox's absolutely stupid decision to make a self-signed SSL certificate scream loudly
17:09:40 <pikhq_> Which of the following is more secure, cryptographically: an unencrypted message, or an encrypted message with no assurance of who sent it?
17:10:00 <pikhq_> If you said "the latter", congrats, you're not a complete, blithering moron!
17:10:33 <Lymia> pikhq_, it does become a problem if you're expecting the certificate to verify the owner...
17:10:43 <Lymia> I don't think that is "very often"
17:10:57 <Lymia> Phantom_Hoover, which image?
17:11:52 <pikhq_> Lymia: It could at least make a distinction between "this is encrypted" and "the CAs we trust have verified this".
17:12:56 <Lymia> Don't self-signed certs still have the power to stop man in the middle attacks, or phishing?
17:12:56 <pikhq_> Well, beyond "ZOMG THIS IS ENCRYPTED WITH A SELF-SIGNED CERTIFICATE! IT WILL RAPE YOU, GIVE YOUR COMPUTER A VIRUS, AND KICK PUPPIES!"
17:13:40 <pikhq_> Lymia: The *only* difference between a self-signed cert and a CA-signed cert is that there is no verification of the identity of the cert holder with a self-signed cert.
17:14:11 <fizzie> Which also mean it doesn't help in man-in-the-middle attacks, because the MITM can just present his own self-signed cert and pretend to be the destination server.
17:14:21 <Phantom_Hoover> * pikhq_ is still confused by Firefox's absolutely stupid decision to make a self-signed SSL certificate scream loudly
17:14:41 <pikhq_> Chrome Adblock sucks balls.
17:14:42 <Lymia> fizzie, if you already have a copy of the cert, you can stop it, can't you?
17:14:46 <fizzie> I am going to be confused if Chrome allows self-signed certs any more silently.
17:14:47 <Lymia> It used cert A before.
17:14:49 <Lymia> It now uses cert B.
17:15:06 <fizzie> Lymia: Yes, but no browser complains on unexpected certificate changes.
17:15:18 <Lymia> It should be cause for concern, shouldn't it?
17:15:46 <fizzie> Not in the CA-driven (broken) trust model. :p
17:16:14 <fizzie> SSH host key checking works like that, though.
17:16:35 <pikhq_> True, the CA-driven trust model is pretty fundamentally broken.
17:16:40 <Phantom_Hoover> <fizzie> I am going to be confused if Chrome allows self-signed certs any more silently.
17:16:42 <fizzie> I don't know many people who get the initial host key in any very secure manner most of the time.
17:17:09 <Phantom_Hoover> IIRC they display an untrusted certificate by striking through their SHTTP thing.
17:17:43 <pikhq_> Phantom_Hoover: Huge difference between "WARNING WARNING WARNING THIS IS UNSIGNED. IT WILL RAPE PUPPIES. WOULD YOU LIKE TO MAKE AN EXCEPTION?"
17:17:52 <pikhq_> "DOING SO WILL RAPE TWICE AS MANY PUPPIES."
17:18:18 <fizzie> What's a bit strange is that even though it opts for that stance, it then makes the exception permanent by default.
17:18:30 <pikhq_> Because that makes sense?
17:18:48 -!- copumpkin has quit (Ping timeout: 276 seconds).
17:19:11 <pikhq_> If they went for a truly secure stance, it'd warn you on non-HTTPS.
17:19:37 <Lymia> fizzie, "Hey, none of our CAs recognize this cert."
17:19:44 <pikhq_> As, after all, self-signed HTTPS is strictly more secure than HTTP.
17:19:47 <Lymia> "Let's notify the user if it decides to change"
17:20:03 <fizzie> Sure, but if they want to make sure no-one misses the self-signed cert warning, they could show it by default every time. Though I guess with a permanent exception it does sort-of do the change notification, that's true.
17:20:53 <pikhq_> fizzie: Except that HTTP < self-signed HTTPS. They warn for the more secure of the two.
17:21:19 <Lymia> HTTP is too common to warn on.
17:21:27 <Lymia> This is unfortunate.
17:23:16 <pikhq_> And if they wanted to go for "true" security, they'd just do "Warning: your computer has not been turned into a plasma. This may cause some of your personal data to be stolen. Click here to turn your computer into a ball of incandescent gas, a gigantic nuclear furnace."
17:24:48 -!- copumpkin has joined.
17:28:35 -!- sebbu has joined.
17:28:35 -!- sebbu has quit (Changing host).
17:28:35 -!- sebbu has joined.
17:31:51 -!- sebbu2 has quit (Ping timeout: 258 seconds).
17:53:28 <cheater__> has anyone here used the Oberon TUI?
17:53:44 <cheater__> apparently it's said that it doesn't have a prompt. how does someone run commands in it?
17:56:53 -!- sebbu2 has joined.
17:59:41 -!- CakeProphet has joined.
17:59:52 -!- sebbu has quit (Ping timeout: 248 seconds).
18:08:19 * Sgeo_ wants a nice emulator for it
18:08:50 <Sgeo_> Apparently there are penty
18:10:53 <Sgeo_> Not sure whether to emulate Oberon in VirtualBox or install it on Windows
18:10:58 <Sgeo_> Going to do the former first
18:12:23 <Sgeo_> Actually, what's Bluebottle?
18:12:40 -!- TOGoS has left.
18:13:44 <Sgeo_> I'm downloading Bluebottle, not really sure what it is
18:15:21 <cheater__> it's based on AOL (active oberon language)
18:16:49 <cheater__> Sgeo_, i was specifically talking about this TUI: http://upload.wikimedia.org/wikipedia/commons/c/cc/OberonScreen.PNG
18:18:08 <cheater__> Oberon has a text user interface (TUI). It combines the point-and-click convenience of a graphical user interface (GUI) with the linguistic strength of a command line interface (CLI) and is closely tied to naming conventions of the Oberon language. Any text appearing on the screen can be edited and used as command input. Nothing like a prompt is required. Although radically different from a commandline, the TUI is very efficient and
18:18:09 <cheater__> powerful[4]. A steep ascend in the early learning curve makes it difficult to start with. Its usage and programming interface is documented in Martin Reiser's book "The Oberon System."
18:29:22 <cheater__> A CLI means that when you press "ENTER" the command is executed. With a TUI you can do pretty much the same thing, except that the command isn't executed until you click on it.
18:30:56 <cheater__> Sgeo_, it's fairly nifty like that
18:31:06 <cheater__> except i bet it has no vim support
18:31:11 <Sgeo_> Bluebottle in VirtualBox isn't working for me
18:31:24 <cheater__> maybe vb isn't bluebottle certified :X
18:36:41 <cheater__> http://www-old.oberon.ethz.ch/cli.html < that argument sucks.
18:36:59 <cheater__> he wrote it in 1999? it's mostly void due to things which already existed in 79.
18:40:35 <Phantom_Hoover> 00:53:24: <oerjan> huh, someone renamed the despotic language section in http://en.wikipedia.org/wiki/Esoteric_programming_language to turning tarpit
18:41:07 -!- CakeProphet has quit (Ping timeout: 260 seconds).
18:43:07 <oklopol> brainfuck's minimality borders on elegant and pure language design; in fact it is related to the P'' family of Turing machines.
18:47:26 <Lymia> Brainfuck vs Java.
18:47:58 -!- CakeProphet has joined.
18:47:58 -!- CakeProphet has quit (Changing host).
18:47:58 -!- CakeProphet has joined.
18:51:16 <Phantom_Hoover> 21:45:56: <oklopol> zzo38: not really. i only have opinions on math nowadays :\
18:51:35 <Phantom_Hoover> You have opinions on which soft drink is best to have sex in, for instance.
18:51:53 <ais523> oklopol: well, P'' is a bit of a tarpitisation of BF
18:52:03 <oklopol> ais523: i thought it's the exact same thing
18:52:03 <ais523> although the causality goes the other way
18:52:13 <ais523> P'' combines < and flip-bit, I think
18:52:42 <oklopol> oh it combines those. i guess also the binary thing is a bit of a tarpitisation.
18:53:32 -!- oerjan has joined.
18:54:32 <oerjan> <Phantom_Hoover> That was me, FWIW.
18:54:40 -!- copumpkin has quit (Ping timeout: 250 seconds).
18:54:54 <oerjan> well the definition of turning tarpit is _not_ what wikipedia now says it is
18:55:13 <olsner> is that a typo or different word?
18:55:50 <oklopol> is wheel a turning tarpit?
18:55:56 <oerjan> olsner: also a different word
18:57:01 <oerjan> anyway a despotic language did not have to have its command arranged in a wheel-like fashion, so need not be a turning tarpit
19:02:58 <oerjan> <cheater__> how much water can you dissolve in 1L of water?
19:03:23 <cheater__> ais523 said water is water-soluble.
19:03:34 <oerjan> 10^(-14) something, which is why equal amounts of positive and negative ions gives pH = 7 by what Phantom_Hoover said
19:03:56 <ais523> oerjan: yep, that sounds about right
19:04:18 <oklopol> how could that possibly have to do with 7
19:04:20 <Phantom_Hoover> It's 10^-7 l/mol of both H+ and OH- ions, so it's effectively 10^-7mol/l of dissolved water.
19:04:28 <oerjan> oklopol: 09:40:35 <ais523> actually, distilled water only conducts electricity because of dissolved ions
19:04:31 <oerjan> 09:40:41 <ais523> it turns out water actually can dissolve in itself
19:05:15 <oerjan> it's the _product_ of amount of positive and negative ions which is 10^(-14)
19:05:18 <oklopol> i'm just wondering why a square root is taken when there's an equal amount of A and B
19:05:25 * oerjan isn't actually looking this up, btw
19:05:35 -!- elliott_ has joined.
19:05:52 <ais523> oerjan: it's because the product stays approximately constant even if you add ions to the mix by hand
19:05:59 <ais523> by default you get equal amounts
19:06:04 <oklopol> "<Phantom_Hoover> It's 10^-7 l/mol of both H+ and OH- ions, so it's effectively 10^-7mol/l of dissolved water." <<< and how does this have anything to do with the number 10^-14 :D
19:06:16 <ais523> but say, if you add enough H+ to get 10^-6 H+, you get approximately 10^-8 OH-
19:06:20 <ais523> so it multiplies to 10^-14 always
19:06:46 <Phantom_Hoover> Water molecules will pull each other apart until the concentrations are at 10^-7.
19:08:10 <cheater__> does the solution of water in water conduct electricity?
19:08:31 <oerjan> cheater__: well that's what ais523 said which started this
19:08:48 <ais523> cheater__: yes, although not too well because not a lot of water self-dissolves
19:08:53 <cheater__> ok, but i thought he meant some other ions
19:09:15 <oerjan> it was distilled water, it doesn't have any other kind
19:09:51 <cheater__> oerjan, distilled water is never 100% pure. i thought he was referring to that.
19:10:04 <ais523> cheater__: no, I'm referring to the way that distilled water nonetheless contains dissolved water
19:10:11 <oerjan> cheater__: some of the water molecules split into H+ and OH- ions
19:10:15 <ais523> being pure, it couldn't contain dissolved anything else, right?
19:10:39 <cheater__> in typical distilled water, what's the percentage of water ions to all ions?
19:11:05 <cheater__> i mean ions that come from water dissolving in water.
19:11:14 <oerjan> presumably you can it least get it pure enough that the water ions dominate, or this wouldn't be much of a subject
19:11:48 <oerjan> Phantom_Hoover: he's a german and i'm norwegian, we're predisposed to making up new words
19:12:13 <cheater__> but if you take the mass of all ions in distilled water, and call that 100%, then what part of that is the ions that come from water?
19:12:21 -!- copumpkin has joined.
19:12:26 <oerjan> ("what do you mean it's not a word, i just made it up")
19:12:42 <ais523> cheater__: all of them come from ions
19:12:48 <ais523> because it's pure by definition
19:12:54 <ais523> so they couldn't come from anywhere else
19:12:59 <cheater__> ais523, i mean in the real world, not on paper.
19:13:26 <cheater__> ais523, hence i asked about "typical" distilled water
19:13:35 <cheater__> Phantom_Hoover, i think we're misunderstanding eachother
19:14:06 <cheater__> the number you posted is just the percentage of the mass of ions in the complete mass of the solution, yes?
19:14:21 <ais523> cheater__: you mean water that isn't completely pure, but is more pure than tap water?
19:14:32 <cheater__> i want the percentage of the mass of impurities in the mass of all ions.
19:14:51 <cheater__> ais523, i mean the kind of stuff i get when i buy "distilled water" in a chemist's shop.
19:15:14 <ais523> cheater__: I wouldn't know offhand, and it would probably depend on the chemist
19:15:55 <oerjan> i guess you could ask "how much can you purify water before the process does not improve"
19:16:07 <ais523> oerjan: in which case it would depend on the process
19:16:09 <oerjan> that might actually depend on technological progress...
19:17:12 <oerjan> like in the future you can do it much better, but you have to shoot individual ions into a hard vacuum to do it...
19:17:25 <cheater__> oerjan, but that's not going to accurately reflect the typicality of that process in the production of distilled water.
19:17:31 <Phantom_Hoover> Honestly, cheater__, can you talk about nothing without trolling?
19:18:12 <elliott_> Phantom_Hoover: "CG: DO I GET ON YOUR CASE FOR ALL THE TERRIBLE HUMANNING YOU DO?"
19:18:15 <oerjan> cheater__: well the point is what process is typical depends on what is available
19:18:42 <fizzie> Today's "poster title that caught the eye" entry: "Horror Video Scene Recognition via Multiple-Instance Learning"
19:18:51 <oerjan> say in five years they discover a much better process based on sieving through graphene, or something
19:18:57 <fizzie> "Along with the ever-growing Web comes the proliferation of objectionable content, such as pornography, violence, horror information, etc. Horror videos, whose threat to children’s health is no less than pornographic video, are sometimes neglected by existing Web filtering tools. Consequently, an effective horror video filtering tool is necessary for preventing children from accessing these harmful horror videos."
19:19:25 <elliott_> fizzie: Could they be any more political about it?
19:20:04 <elliott_> fizzie: I thought these types of papers were usually all academic about it and pretended to be oblivious of the real-world applications. :p
19:20:05 <cheater__> oerjan, this reminds me of this one quote that said you shouldn't be writing your programs as well as you can, only relatively well
19:20:12 * oerjan notes that "no less" doesn't actually imply that either value is actually large
19:20:14 <cheater__> because to debug them you need more skill than to write them
19:20:14 <fizzie> Authors: Jianchao Wang, Bing Li, Weiming Hu, Ou Wu, National Laboratory of Pattern Recognition / Institute of Automation / Chinese Academy of Sciences, China
19:20:32 <fizzie> I guess they know about filtering content in China.
19:21:31 <cheater__> i like how an "academy of sciences" proliferates information hampering, whereas science stands for information propagation.
19:21:54 <cheater__> that's like the Ministry of Truth.
19:22:49 <fizzie> It's based on "color emotion and color harmony theories".
19:23:25 <Phantom_Hoover> This is possibly the one context those phrases could be used without immediately discrediting the paper they're in.
19:26:35 <fizzie> On the "no immediately obvious applications" front, there was a rather nice talk about parametrizing "audio textures" (natural-ish sounds like rain, wind, fire, applause, etc., that are in some sense stationary), and then synthesizing "equivalent" new sounds. It did sound quite nice.
19:27:08 <cheater__> please link me up to the relevant paper and demos
19:27:18 <fizzie> They had invented a soundtrack classification application for it, but it really didn't work all that well, and the whole task felt quite forced.
19:28:14 <fizzie> The synthesis paper is "Sound texture synthesis via filter statistics", Proc IEEE WASPAA, 2009. Googling for the title finds the paper, and also a project that cites it.
19:28:26 <fizzie> http://www.cs.cornell.edu/projects/sound/fire/
19:28:35 <fizzie> "Coming soon: source code for .. audio texture synthesis".
19:29:11 <fizzie> It might use the same thing; the paper for the fire thing is 11M so I haven't bothered to load it over this slow net.
19:29:27 <fizzie> At least they cite the texture-synthesis page.
19:29:37 <elliott_> What happens if you try and stretch out a terrible pop song.
19:29:41 <elliott_> Can I produce the next big hit in this manner.
19:30:11 <fizzie> It's about synthesizing fire sounds that are synchronized with a physical fire simulation video thing.
19:30:44 <oerjan> <fizzie> I guess they know about filtering content in China. <-- i briefly had the approximate thought process here: "hm, they're wanting to censor _both_ violence _and_ sex? hm that fits neither with americans nor europeans. oh right, chinese."
19:31:01 <fizzie> The link has some videos of the fire thing.
19:31:17 <cheater__> are there any other demos that you have heard?
19:31:20 -!- augur has quit (Remote host closed the connection).
19:31:20 <Lymia> If the US censored violence, our culture might...
19:31:25 <Lymia> Be less screwed up.
19:31:41 <cheater__> btw, on the front of sound resynthesis i think hartmann neuron is very interesting.
19:31:56 <cheater__> Lymia, Ted Kaczynski has some interesting views on that.
19:32:05 <elliott_> did you actually just say that
19:32:19 <fizzie> The talk contained examples of rain, fire, applause, stream, bubbles, insects and wind; but I don't know where (or if) those would be in the interwebs.
19:32:32 <Lymia> elliott_, say what?
19:32:40 <elliott_> Lymia: i was talking to cheater__. you may have him on ignore.
19:33:11 <Lymia> I am mentally filtering him out. Does that count?
19:33:15 <fizzie> I think ICASSP didn't do the "include multimedia files in your submission" system, so the proceedings memory stick just has the papers.
19:33:19 <oerjan> elliott_: hey it was a pretty funny comment i say
19:33:49 <elliott_> Phantom_Hoover: Ha ha Scotland.
19:37:29 <cheater__> fizzie, was the talk for the paper you told me to google or for something else?
19:38:21 <fizzie> cheater__: It was for a newer paper, but that was just taking the same parametrization they used for synthesis and applying that for soundtrack classification, possibly not as interesting.
19:38:31 <fizzie> cheater__: But I did find the texture synthesis sound samples: http://www.cns.nyu.edu/~jhm/texture_examples/
19:39:30 -!- CakeProphet has quit (Ping timeout: 258 seconds).
19:41:18 -!- CakeProphet has joined.
19:41:18 -!- CakeProphet has quit (Changing host).
19:41:18 -!- CakeProphet has joined.
19:44:40 -!- pikhq has joined.
19:44:48 -!- pikhq_ has quit (Ping timeout: 252 seconds).
19:46:39 <cheater__> fizzie, just downloaded the demos, listening now..
19:47:52 <oerjan> 10:00:45 <fizzie> Lymia: Yes, but no browser complains on unexpected certificate changes.
19:48:27 <fizzie> oerjan: SSH clients in general; I mention SSH host key checking later on.
19:49:19 <fizzie> I know one person who refuses to SSH into systems without first acquiring the host key through some trustworthy means; everyone else seems to just trust their luck on the first connection attempt.
19:51:26 <fizzie> Depending on the configuration, OpenSSH may be obstinate enough to completely refuse to connect until you manually edit ~/.ssh/known_hosts and remove the offending key.
19:52:47 <elliott_> <fizzie> I know one person who refuses to SSH into systems without first acquiring the host key through some trustworthy means; everyone else seems to just trust their luck on the first connection attempt.
19:53:40 <oerjan> `addquote <pikhq_> And if they wanted to go for "true" security, they'd just do "Warning: your computer has not been turned into a plasma. This may cause some of your personal data to be stolen. Click here to turn your computer into a ball of incandescent gas, a gigantic nuclear furnace."
19:53:43 <HackEgo> 429) <pikhq_> And if they wanted to go for "true" security, they'd just do "Warning: your computer has not been turned into a plasma. This may cause some of your personal data to be stolen. Click here to turn your computer into a ball of incandescent gas, a gigantic nuclear furnace."
19:54:20 <elliott_> [asterisk]miasma of incandescent plasma
19:55:27 -!- CakeProphet has quit (Ping timeout: 276 seconds).
19:56:32 <fizzie> cheater__: The parameters they use are based on a cochlea-simulating filterbank; the "marginals" (IIRC) were simple time-average statistics (mean, variance, kurtosis) over the marginal distributions (in practice, histograms) of the amplitudes of each filterbank signal.
19:57:47 -!- Lymia has quit (Remote host closed the connection).
19:57:49 <fizzie> The "full set" included something like cross-correlations between low-pass envelopes of those signals.
19:58:35 <fizzie> And he had some statistics where they just used the spectrum (well, spectrogram) to synthesize things, purely to show that the spectral shape is not enough to capture the texture.
19:58:50 <fizzie> The "spectrum" examples might be those.
19:59:38 <fizzie> I haven't listened to the ones on the page, the multimedia didn't work out right (it never does) and then I lost interest before actually downloading them.
20:00:07 <cheater__> what are statistics "over marginal distributions"?
20:00:56 -!- CakeProphet has joined.
20:00:56 -!- CakeProphet has quit (Changing host).
20:00:56 -!- CakeProphet has joined.
20:01:20 <cheater__> "amplitudes of each filterbank signal" - do you mean "amplitudes of each filterbank band"?
20:02:31 -!- augur has joined.
20:02:52 <cheater__> so what are these "marginal distributions"?
20:03:43 <Vorpal> <elliott_> <fizzie> I know one person who refuses to SSH into systems without first acquiring the host key through some trustworthy means; everyone else seems to just trust their luck on the first connection attempt. <-- I can't fathom why most people don't bother with it
20:04:16 <elliott_> fizzie: wow I was even joking.
20:05:00 <fizzie> cheater__: In this case I'd say it refers to just taking the amplitude histogram of the signal. I mean, that's a bit like a marginal distribution p(amplitude) if you consider the sample as the joint distribution p(time, amplitude).
20:05:11 <cheater__> fizzie, i just did this to download: 1. wget the index file 2. do this: cat texture_examples3.html | sed -e "s/.*\"\(.*wav\)\".*/\1/" | grep wav | while read i; do wget "http://www.cns.nyu.edu/~jhm/texture_examples/$i" & done
20:05:23 <cheater__> i bet this sed/grep could be optimized but i suck at sed.
20:05:26 <Vorpal> elliott_, wait, you were joking that I would verify host key? Of course I do!
20:05:42 <fizzie> I wonder if wget has a "fetch embeds" recursion mode.
20:06:01 <cheater__> fizzie, what are marginal and joint distributions?
20:06:04 <elliott_> fizzie: This shit up: you can't make it.
20:06:42 <Vorpal> elliott_, however, when trusted channel for it is hard to come by I might settle for some other sort of independent channel to verify it by.
20:07:13 <oerjan> <oklopol> oh it combines those. i guess also the binary thing is a bit of a tarpitisation.
20:07:17 <Vorpal> elliott_, this means I will accept verifying it in a discussion over IRC, though I'd prefer a more secure mean.
20:07:22 <oerjan> P'' isn't necessarily binary
20:07:48 <oklopol> that's what i thought initially
20:07:50 <Vorpal> fizzie, wget can fetch embedded images in html yes
20:08:12 <oklopol> then why would it combine the two commands
20:08:20 <cheater__> he meant media mentioned in <embed> tags.
20:08:21 <oklopol> and even if it were binary, why would it combine them :\
20:08:24 <Vorpal> <fizzie> Depending on the configuration, OpenSSH may be obstinate enough to completely refuse to connect until you manually edit ~/.ssh/known_hosts and remove the offending key. <-- that is the default config afaik
20:08:42 <cheater__> Vorpal, that's what i've found it to be
20:09:03 <cheater__> it's a bit annoying for some hosts.
20:09:19 <fizzie> Vorpal: Could be. I do know that HashKnownHosts officially defaults (or at least did) to 'no', but some distributions make it 'yes'.
20:09:35 <elliott_> What is the prize for implementing the interpreter and Pong game? —ehird 19:58, 24 May 2011 (UTC)
20:09:35 <elliott_> Currently, no finally defined, but I think it will be free (ad-free) webspace. --80.139.110.66 19:52, 26 May 2011 (UTC)
20:09:46 <elliott_> here I was thinking it'd be something of value
20:09:57 <Vorpal> fizzie, actually I think that depends on which sort of match it is. If it is a non-perfect match it will allow you to go on. As in, the host is not found in the config, but the ip of that host is found in it, with a different key
20:10:03 <cheater__> you could store the complete knowledge of humanity on said webspace
20:10:17 <Vorpal> but if the host name is found with a different key, it won't allow you to continue
20:10:19 -!- pikhq_ has joined.
20:10:22 <Vorpal> iirc something like that
20:10:22 -!- pikhq has quit (Ping timeout: 260 seconds).
20:10:54 -!- Lymia has joined.
20:10:54 -!- Lymia has quit (Changing host).
20:10:54 -!- Lymia has joined.
20:11:09 <Vorpal> fizzie, as for HashKnownHosts that is somewhat different from the question of allowing connection on host key mismatch
20:11:12 <fizzie> If you want to win $300, there's a logo contest on some new IEEE Signal Processing Society conference they advertised at the start of the day today. (Though I don't think they're going to accept anything too... esoteric, or #esoteric.)
20:11:21 <Vorpal> HashKnownHosts simply hashes the host part in the config
20:11:36 <Vorpal> so someone can't check ~/.ssh/known_hosts to find out all systems you have access to
20:11:37 <Phantom_Hoover> What kind of sane person distributes an animation as a GIF?
20:11:56 <Phantom_Hoover> I'm talking about stuff like http://jila.colorado.edu/~ajsh/insidebh/engulf_640x480.gif
20:12:01 <Vorpal> Phantom_Hoover, uh, that is quite common on wikipedia, though for short ones. Like showing how a motor works
20:12:13 <Phantom_Hoover> That would take far, far less time to load if you just stuck it on YouTube.
20:12:43 <Vorpal> Phantom_Hoover, that image doesn't take long to load. Just about 3 seconds
20:12:56 <elliott_> I wish browsers would delay showing animated GIFs until they load completely.
20:12:56 <Phantom_Hoover> "Warning: If you fall into a black hole, you will die. You will not go through a wormhole to another time and place."
20:13:07 <oerjan> oklopol: i assume P'' was meant to be minimalized. i also read that the author later defined and used combined commands that were identical to the brainfuck ones
20:13:28 <oklopol> i thought P'' was meant to prove you can have loops
20:13:39 <oklopol> why show you can have structured computation and then fucking obfuscate it
20:13:46 <Vorpal> elliott_, or at least until there was a buffer loaded
20:14:06 <oklopol> s/can have/only need to have/
20:14:27 <fizzie> http://www.ieee-espa.org/LogoContest.asp
20:15:01 <Vorpal> "Here are the conference parameters:"
20:15:19 <fizzie> They certainly emphasized the "for practicing engineers" part.
20:15:28 <fizzie> They're doing talks without papers and all.
20:15:32 <Vorpal> fizzie, also Industry with capital I
20:15:37 <fizzie> And it's been co-located with CES.
20:15:48 <fizzie> Consumer Electronics Show.
20:17:05 <fizzie> There was a Microsoft Research guy doing today's plenary talk; quite a lot of Kinect advertisement included.
20:17:15 <fizzie> I guess they're releasing their own non-commercial SDK for it soon.
20:17:34 <fizzie> He mentioned that the open-source driver lacks the funky microphone array DSP stuff they have.
20:17:42 <Vorpal> fizzie, what is the point? Others already done all the job
20:17:45 <Lymia> When do people use it for perverted purposes?
20:18:05 <oerjan> oklopol: well the obfuscation isn't on the loop commands
20:18:24 <fizzie> Vorpal: Well, there was one point right there.
20:18:40 <elliott_> Lymia: Surely it has already happened.
20:18:43 <Lymia> Vorpal, how long until people start using the Kinect for less than work safe purposes.
20:18:44 <fizzie> Also as I understood it it lacked something else too than just the mic-array stuff.
20:18:45 <Vorpal> fizzie, yeah I wrote it before you entered your line. Had quite a lag spike there. Weird.
20:19:06 <fizzie> Lymia: http://kinecthacks.net/kinect-sex/ +
20:19:18 <Vorpal> Lymia, are you invoking rule 34 on it?
20:19:36 <oerjan> "brainfuck: based on breakthrough research in structured programming"
20:19:52 <Lymia> I'm asking how long until somebody does perverted things wiht it.
20:20:05 <fizzie> Microsoft's also pushing out some sort of "Kinect Avatar" that does the whole virtual-reality chat stuff with facial expression and gesture tracking.
20:20:15 <olsner> Lymia: you're saying that as if they haven't already
20:20:45 <elliott_> <fizzie> Lymia: http://kinecthacks.net/kinect-sex/ +
20:20:53 <fizzie> (Also for the record: there was quite a lot of content in the talk that wasn't advertising their own stuff.)
20:21:19 <fizzie> elliott_: It was right there in the google quick-linkery thing when I googled for "kinecthacks" -- couldn't remember the tld.
20:21:19 <elliott_> "But well, NF is NOT a programming-language. It is an esoteric language which extends BF."
20:21:38 <Vorpal> elliott_, you should know that fizzie is good at finding stuff of all sorts. Everything from log graphing to finding weird things on google quickly
20:21:45 <elliott_> Vorpal: Suuuuuuuuuuuuuuuuuuuuuuuuuuure.
20:22:38 <oerjan> elliott_: well that fit with Vorpal too
20:23:00 <Phantom_Hoover> "All in all, NF is just a notation of a finite state machine,"
20:23:08 <Vorpal> elliott_, err why did you change your hifive to target fizzie?
20:23:30 <Vorpal> Phantom_Hoover, does it have a bounded tape?
20:23:50 <Vorpal> elliott_, it wasn't terribly clear
20:23:54 <Lymia> <oerjan> "brainfuck: based on breakthrough research in structured programming"
20:24:03 <oklopol> hey cool i wanna touch virtual boobs
20:24:07 <Lymia> You should write a fake advertisement for that.
20:24:27 <oklopol> also you rarely get to put your hands completely inside a boob so that's even better?
20:24:52 <fizzie> oklopol: The guy(tm) said it'll still be quite a while before haptics really take off, that it's the least understood area basically. So it'll be a while before the boob will touch you back.
20:25:34 <Vorpal> elliott_, I bet if you asked fizzie about almost any googlable topic he would be able to find something about it very quickly. He might however not be interested in doing that I guess.
20:25:35 <elliott_> `addquote <fizzie> [...] So it'll be a while before the boob will touch you back.
20:25:37 <HackEgo> 430) <fizzie> [...] So it'll be a while before the boob will touch you back.
20:25:45 <oerjan> elliott_: hey i was just about to!
20:25:46 <Vorpal> elliott_, come on. That was evil.
20:25:48 <elliott_> fizzie: please find me some information on whole-hand boob immersion
20:26:08 <oerjan> you just beat me because you didn't include the whole quote
20:26:11 <oklopol> fizzie: maybe i'll just buy a sex doll
20:26:18 <Vorpal> fizzie, what haptics? Does kinect have that?!
20:26:33 <fizzie> Vorpal: No, that's why it'll be a while.
20:26:58 <fizzie> Also the smell thing, it lacks that too.
20:27:02 <Vorpal> fizzie, ah. You said "least understood area" I thought you meant "least understood area of the kinect hardware" (from the point of view of open source drivers)
20:27:28 <fizzie> Oh; no, it was in the sense of "least understood area of immersive(tm) communications(buzzword)".
20:28:11 <fizzie> (The repetition of "immersive" was almost as bad as some other people are with "ubiquitous".)
20:28:39 <oerjan> well immersing in immersive ubiquity is ubiquitous
20:31:08 <fizzie> He did tell an amusing anecdote about attending some VRML conference (way back when that was relevant) at Stanford, where they had VRMLized the whole university; and when the guy demonstrating the thing navigated to the meeting room door, the speaker said he got a sudden feeling of dread that the (physical) door's going to open and a some sort of a huge eyeball is going to peek in, with all the people in the meeting room peering out from behind it.
20:34:34 <lifthrasiir> Found a path with 5 processors (weight=45): stream --(10)--> text --(10)--> brainfuck --(5)--> spoon --(10)--> minus --(10)--> buffer
20:34:42 <Phantom_Hoover> I was about to ping him just to annoy you but then I looked at the context and realised the dire consequences that would have.
20:34:52 <pikhq_> lifthrasiir: You frighten me.
20:34:58 <oerjan> elliott_: you should get a doctor to look at your right eye
20:34:59 <cheater__> fizzie, i would love to see an application of this resynthesis paper to data provided with BSS
20:35:45 <pikhq_> lifthrasiir: Cause that's that's clever and frightening, simultaneously.
20:35:54 <Phantom_Hoover> http://jila.colorado.edu/~ajsh/insidebh/realistic.html
20:35:55 <lifthrasiir> anyway now it is capable for parsing Text code (yes, a plain text) and translating it into Brainfuck, Spoon and finally Minus
20:36:30 -!- copumpkin has changed nick to Philippa_.
20:36:31 <lifthrasiir> Minus does not directly implement a Brainfuck transformer since Spoon is a superset of it (with an additional exit command).
20:36:35 -!- Philippa_ has changed nick to copumpkin.
20:37:51 <Vorpal> <lifthrasiir> $ ./esotope -f text -t minus -v <-- eh, what does that -f and -t mean?
20:38:21 <Vorpal> you mean this is an automatic tool to find chains of esolang interpreters?
20:38:40 <lifthrasiir> Vorpal: it is a unified architecture to support such thing
20:38:54 <Vorpal> lifthrasiir, heh. Does it try to find the shortest or the longest one?
20:39:10 <lifthrasiir> so everything has to be reimplemented (d'oh!) but once done it is quite powerful
20:39:38 <Vorpal> lifthrasiir, what if you want to find the longest one without cycles?
20:39:46 <lifthrasiir> since the longest path would be infinite (due to cycles)
20:39:47 <Vorpal> (quite tricky I imagine)
20:39:52 -!- CakeProphet has quit (Ping timeout: 248 seconds).
20:39:56 <Vorpal> lifthrasiir, longest one without cycles I meant
20:40:03 <lifthrasiir> ah, that seems interesting, but for now no.
20:41:02 -!- CakeProphet has joined.
20:41:06 <lifthrasiir> i also plan to add some optimization flag, so every processor has two kinds of weights; the complexity weight and optimization weight.
20:42:23 <Vorpal> lifthrasiir, so you don't look for shortest path in number of languages you pass through, but best path?
20:42:27 <lifthrasiir> so that the driver will find the path with the minimal sum of complexity AND the maximal sum of optimization (which can be bounded by the option)
20:42:43 <lifthrasiir> basically, yes. i'm still figuring out the details.
20:43:25 <Vorpal> lifthrasiir, presumably it would be useful to have an option that goes for fewest number of languages as well
20:43:26 <lifthrasiir> and i have lots of languages to implement (i think 20 is enough for architectural testing though).
20:43:40 <Vorpal> lifthrasiir, what language is esotope in?
20:43:59 <lifthrasiir> Vorpal: not always, since some transformation is trivial (e.g. Ook and BF)
20:44:07 <Vorpal> lifthrasiir, and couldn't it call out to external interpreters possibly?
20:44:36 <Vorpal> lifthrasiir, why ocaml?
20:45:08 <lifthrasiir> well, the prime reason is that i wanted to learn Ocaml in a hard way...
20:45:37 <Vorpal> lifthrasiir, is there any other way?
20:45:39 <lifthrasiir> and other reasons include i can mix the imperative and functional programming styles
20:45:54 <lifthrasiir> (though many told me that Haskell will do ;)
20:46:05 <pikhq_> Whiiich is not a major consideration of language choice.
20:46:13 <elliott_> pikhq_: oh shut up he can use whatever language he likes
20:46:26 <pikhq_> As you can do imperative and functional programming styles in just about any language younger than 50.
20:46:36 <pikhq_> (some more sanely than others)
20:46:48 <Vorpal> lifthrasiir, ah compilers only? So you won't ever be able to do befunge98 then, unless you "compile" to a bundled interpreter
20:47:07 <lifthrasiir> Vorpal: it includes both the interpreter and compiler (i.e. transformer).
20:47:18 -!- cheater__ has quit (Ping timeout: 252 seconds).
20:47:27 <lifthrasiir> the interpreter is simply a transformer that gives nothing (or, in Haskell, IO ()).
20:49:16 <lifthrasiir> some time later, esotope will have (for example) brainfuck-optimized kind which represents an optimized Brainfuck code, which can be used to generate an efficient C code (as the current esotope-bfc does)ff
20:49:33 <lifthrasiir> but for now i'm going to keep implementing important languages
20:50:58 <oerjan> hm compiling from a language which has a self-interpreter gives an interpreter automatically
20:52:21 <oerjan> or if B has an interpreter for A, and you compile B to C, then you get an interpreter for A in C
20:52:53 <lifthrasiir> yes, that's why i didn't implemented an interpreter for Ook!.
20:52:59 <Vorpal> oerjan, what about a self-compiler, err wait that would be damn useless. never mind
20:53:57 <oerjan> technically for interpreters there are up to two languages involved, while for compilers there are three
20:53:57 <Vorpal> oerjan, the only case where a self-compiler could be useful would be if it was optimising. Like say one for bf that turned ++- into +
20:55:26 <Vorpal> oerjan, hm *tries to imagine some way to run programs that involve more than three languages*
20:57:15 <oerjan> Vorpal: well when bootstrapping a language compiler, you might write the compiler for B in A, compiling into C (the last one literally)
20:57:41 <Vorpal> oerjan, that is three so far
20:57:51 <oerjan> oh you said _more_ than three
20:58:03 <Vorpal> I had no success so far
20:58:31 <Vorpal> oerjan, three is easy. Just imagine a bf->C compiler written in something else than bf or C
20:58:31 <oerjan> well obviously there are cases where one stage contains more than one language, but that may not count...
20:58:58 <Vorpal> elliott_, you mean like the language that is mostly not Murphy?
20:58:59 <oerjan> like web stuff, you have both client and server languages
20:59:13 <Vorpal> I forgot the first part of it
20:59:17 -!- comex_ has joined.
20:59:19 <Vorpal> something that cpressy made
20:59:30 <Vorpal> Ozzlybob or something iirc?
20:59:52 <oerjan> there is another pair of esolangs, one of which is Portia
20:59:58 <Vorpal> oerjan, well it said that most parts of the language was the thing on O, the rest of it was however Murphy :P
21:00:46 <elliott_> the fact that it's not called Oolzybub is called Murphy
21:00:46 <quintopia> portia is supposed to go with 2iota right?
21:00:58 <oerjan> http://esolangs.org/wiki/Beta-Juliet_and_Portia
21:01:21 <oerjan> http://esolangs.org/wiki/Oozlybub_and_Murphy
21:01:34 <Vorpal> oerjan, it says preprocessor
21:01:42 <Vorpal> but isn't preprocessor another compiling step
21:02:10 <oerjan> Vorpal: yeah that's why i'm asking if splitting stages counts
21:02:38 <Vorpal> oerjan, like CPP takes C source from C to C-preprocessed which a C compiler (as it is confusingly named, should be called a C-preprocessed-compiler!) then compiles to asm, which the assembler then compiles to an object file. And lets not discuss the linker.
21:02:39 <oerjan> although web stuff with client/server split feels more relevant
21:03:19 <oerjan> hm what about that supercompilation stuff i've sometimes seen mentioned here
21:03:35 <oerjan> although that may be mainly one language applying to itself
21:03:58 <Vorpal> oerjan, isn't supercompilation simply a way to optimize by brute forcing ways to compile an expression to
21:04:14 <Vorpal> like testing all ways you could possibly zero out a register to find the shortest one or whatever
21:04:36 <Vorpal> elliott_, I heard supercompilation used to describe that however. Hm
21:04:42 <oerjan> i don't recall anything about "brute forcing", i'm unclear about it but i thought it was related to partial evaluation
21:04:57 <Vorpal> so what is super-compilation then
21:05:25 <oerjan> well i think elliott_ may be who mentioned it previously
21:05:47 <Vorpal> elliott_, hm that is still three languages at most right?
21:06:16 <oerjan> in compilation, you have three languages involved in a single stage
21:06:43 <oerjan> which cannot be logically split up without some part having the same property, i think
21:08:43 <oerjan> if A compiles B to C, then you can split it by compiling the compiler from A to C first, then running the resulting C program to compile from B to C
21:09:54 <oerjan> so it's not quite clear that there are intrinsically units involving more that 2 languages
21:10:09 <Vorpal> oerjan, you could do that, but then you need a new compiler that compiles from A to C. Involving an extra software
21:10:46 <Vorpal> and if you mention hand compilation I would argue that counts as a "software" in this context
21:12:15 <oerjan> it's a bit neat to think that the entire compiler/interpreter infrastructure we have today all builds necessarily on an ancient, forgotten layer of hand compilation
21:12:35 <oerjan> well maybe someone still does it occasionally for fun
21:14:30 <Vorpal> oerjan, I would say it is a form of hand compilation when turning pseudo-code into <insert favourite language here>
21:14:38 <oerjan> the hand bootstrapping doesn't need to be done particularly efficiently either. like that inefficient "unregistered C" target for ghc, which is just to get an initial port
21:15:07 <Vorpal> oerjan, why do you need unregistered C for ghc at all. Why not simply cross compile full blown ghc
21:15:08 <oerjan> Vorpal: hm yeah. and on the other side even assembly is not machine code
21:15:28 <oerjan> Vorpal: oh. current ghc does not support cross compilation.
21:15:38 <Vorpal> oerjan, people started out writing machine code before they invented asm
21:16:13 <oerjan> the new upcoming code generator is supposed to though (i saw something to the effect that it always essentially cross compiles)
21:16:51 <Vorpal> oerjan, hm, you could say that when turning your idea of what you want to do into code in any programming language, you are hand-compiling your thoughts to said language.
21:17:13 <oerjan> Vorpal: although it might still be nice to have easy port version to be able to get things started before you have a full implementation of all the target architecture's quirks
21:17:20 <Vorpal> oerjan, what new upcomming code generator?
21:17:42 <oerjan> Vorpal: well i've seen it mentioned, they're completely rewriting that part
21:18:14 <oerjan> i think the old one was getting so full of cruft that they had trouble adding new things to it
21:19:51 <oerjan> http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/NewCodeGen
21:20:13 <Vorpal> heh, neat. I had a pencil lying on a shelf. (Yes my desk and the nearby area is quite messy.) I bumped the desk with my foot by mistake. This caused the pen to fall off. It landed right way up in the pencil jar (is that the right English word?) right below.
21:20:29 -!- CakeProphet has quit (Ping timeout: 260 seconds).
21:20:50 <olsner> I think that "new" code gen has been the "current" code gen for a while now
21:20:53 <Vorpal> oerjan, hm the unregistered C one uses the evil mangler? Or is that some other one?
21:21:10 -!- CakeProphet has joined.
21:21:16 <oerjan> olsner: no, see the current status report section
21:22:07 <oerjan> Vorpal: the evil mangler is used by the _registered_ C backend
21:22:25 <Vorpal> oerjan, why the name "(un)registered"?
21:22:33 <oerjan> the unregistered avoids those tricks to be completely portable, at the cost of efficiency
21:22:53 <oerjan> it does not attempt to control which machine registers are used for things
21:23:00 <Vorpal> oerjan, how does the unregistered one do gc?
21:23:26 <Vorpal> oerjan, does it allocate a large array to use as backend for gced stuff?
21:23:32 <Vorpal> I mean that is really the only portable way
21:23:35 <oerjan> i don't know such details :)
21:24:21 <oerjan> so i don't know _how_ portable it is
21:24:39 <oerjan> just that it doesn't depend on that many deep gcc specialties
21:26:54 -!- CakeProphet has quit (Ping timeout: 276 seconds).
21:26:59 <oerjan> and architecture dependent details
21:28:43 <elliott_> so the mangler is deprecated too
21:28:59 <Sgeo_> BlueBottle works just fine in VMware Player :/
21:29:10 <Vorpal> elliott_, but the mangler is fun. Since it is evil.
21:32:41 <Sgeo_> "In this respect, the A2 System GUI surpasses many existing windowing implementations. Windows can moved, rescaled etc. while the programs "behind" the windows kep running."
21:32:59 <Vorpal> oh seems it is completely gone
21:33:06 <oerjan> Lymia: it's a perl script which ghc -fvia-c runs on the assembly produced by gcc, mangling it
21:33:13 <Vorpal> Lymia, check this historical version of the page for more info http://hackage.haskell.org/trac/ghc/wiki/Commentary/EvilMangler?version=2
21:33:14 <olsner> Vorpal: there's also the Satanic Splitter
21:34:56 <olsner> don't remember *exactly* what it does, but something like splitting assembly sources into several files to allow the linker to make smaller programs
21:35:18 <Lymia> It's not that evil!
21:35:23 <oerjan> olsner: i think it also ensures proper tail calls
21:36:32 <olsner> can't be bothered doing more than googling, but there is this: http://www.haskell.org/pipermail/glasgow-haskell-users/2005-February/008006.html
21:37:46 <oerjan> olsner: i don't think the mangler is what splits object files, at least that isn't its main purpose, see that link by Vorpal
21:38:01 <olsner> I'm talking about the satanic splitter, not the evil mangler
21:38:29 <Vorpal> olsner, confirmed: http://hackage.haskell.org/trac/ghc/wiki/Building/Porting#Thesplitter
21:38:50 <oerjan> "GHC no longer has an evil mangler."
21:39:18 <Vorpal> the splitter is still there: http://hackage.haskell.org/trac/ghc/browser/driver/split/ghc-split.lprl
21:39:39 <oerjan> Vorpal: i'm having trouble getting all the irc conversation _and_ checking out your links at the same time :P
21:39:44 <elliott_> oerjan: that's because the registered C backend is deprecated :P
21:40:09 <Vorpal> oerjan, you are too slow
21:40:29 <Vorpal> oerjan, overclock yourself (first ensure proper cooling)
21:40:53 <oerjan> unfortunately overclocking has severe side effects on me.
21:41:05 <olsner> maybe the Oerjan Enhanced Speedstep Technology has kicked in already
21:42:12 <oerjan> elliott_: yeah but i didn't know it was deprecated to the point they had stopped keeping it working efficiently...
21:42:31 <Vorpal> oerjan, the evil mangler file is gone even
21:42:37 <pikhq_> oerjan: They started doing that because the LLVM backend performs better in all cases, IIRC.
21:43:35 <oklopol> oerjan: i think NFA = FNFA with any amount of dimensions
21:44:17 <oklopol> i've spent hundreds of hours trying to solve that, so yes :P
21:44:54 <oerjan> well a proper counterexample would of course have been good too
21:45:06 <Vorpal> reading http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM/WIP : what *is* this elsusive STG register in haskell?
21:45:28 <oklopol> yes, although it didn't take me long to convince myself 100% that they are equal in n-D
21:45:30 <oerjan> stg is for spineless tagless g-machine
21:46:03 <Lymia> A language like Haskell cannot exist without nasty dirty hack under it's skin.
21:46:04 <oklopol> of course, this means i probably cannot sleep tonight.
21:46:14 <Vorpal> oerjan, or did what you say actually mean something?
21:46:17 <oerjan> Vorpal: no. well it may contain a pun, but it's the intermediate representation stage between core and c--
21:46:38 <Vorpal> oerjan, ah, so what is the STG register for, and why is it pinned to a machine register
21:47:19 <Vorpal> elliott_, wait a second. coq is written in ocaml. ocaml is not dirty-hack free
21:47:26 <oklopol> i mean if my solution is correct, this is bigger than P != NP for the picture-walking automata people! (that is, me and maybe that one japanese guy although he's probably dead already.)
21:47:36 <oerjan> Vorpal: i think there is more than one, it's the registers that result from something in the stg representation i assume
21:47:59 <oerjan> and the stg running model presumably requires them to be at a known place
21:48:14 <oerjan> my memory on stg is too vague
21:48:35 <oerjan> that representation is old i think, perhaps from the 80s
21:48:43 <oerjan> although ghc has modified it
21:49:24 <oerjan> (they added tags back to pointers at one stage for efficiency, iirc)
21:49:43 <oerjan> so it may not actually fit its name any longer :D
21:50:10 <oklopol> (argh, i knew i'd find a problem with the solution the second i announce it)
21:50:41 <oerjan> oklopol: ah yes. a known problem.
21:51:40 <oklopol> actually when that happened for the 2-D problem, i managed to solve the problem the same day anyway. so i still have hope.
21:52:18 <oklopol> it's not at all big. the 2d question was left open in at least 2 articles and a book, but the n-dimensional case has only been asked by me.
21:52:21 <oerjan> oklopol: happened to me with that wrong >= 2d proof for topological measures i mentioned yesterday.
21:52:43 <oklopol> or you mean you announced it before realizing
21:52:49 <oerjan> no, it fell through when i was explaining it on the blackboard
21:53:22 <oerjan> strictly speaking i had already announced it, sort of (i SMS'ed "Eureka" to my collaborator)
21:54:38 <elliott_> i suppose "dork" is more appropriate
21:54:47 <oklopol> elliott_: you wouldn't understand
21:55:38 <oerjan> Vorpal: "spineless" iirc is for how that representation did away with having an internal representation of the reduction graph for functional languages, using stack arguments instead.
21:56:16 <oklopol> argh if the solution doesn't work, then i now have three proofs for the 2d case but none for the general case
21:57:24 * Vorpal tries to think the most useless multiclassing in nwn.
21:57:26 <Lymia> That's one more than two.
21:57:49 <oerjan> "tagless" iirc is for how it used return destination to branch directly to the code that wanted the result, instead of allocating constructors that might never be used since the destination might just pick them apart
21:57:51 <Vorpal> possibly multiclassing sorcerer and wizard? That one must come close at least
21:59:00 <Vorpal> oerjan, is this like optimising a tuple into an unboxed tuple?
21:59:26 <oerjan> yes, except it works for data types with more than one constructor, such as Just x vs. Nothing
21:59:51 <Vorpal> oerjan, oh, nifty. But this would only work within a single module surely?
22:00:34 <oerjan> no, the return address would be in a known spot on the stack or in a table pointed to from the stack, i think
22:01:05 <oerjan> and making that work across modules _might_ be a reason for pinning those registers
22:01:26 <Vorpal> why is everything slow suddenly
22:01:43 <Vorpal> weird, I'm swap trashing for no obvious reason
22:05:01 <oerjan> <elliott_> oerjan: nerd :D <-- ARE YOU CALLING ARCHIMEDES A NERD?
22:05:06 <Vorpal> $ git clone http://darcs.haskell.org/ghc.git/ <-- wait what, 1) ghc went git!? 2) why call it darcs.haskell.org if it isn't darcs?
22:05:23 <elliott_> Vorpal: (one) Alas, yes. (I didn't realise they had finished transitioning though.)
22:05:28 <elliott_> Vorpal: (two) It's a separate server.
22:05:47 <elliott_> No point in fiddling with DNS, since they still host a lot of darcs repos too.
22:06:06 <Vorpal> elliott_, sad, darcs was better than git
22:06:16 <elliott_> With foresight, it would have probably been named repo.haskell.org. :p
22:06:21 <elliott_> Vorpal: In fairness, GHC is huge, and darcs was quite slow for them.
22:06:32 <oerjan> elliott_: i guess i didn't do it properly, i should have ran naked in the streets as well
22:06:40 <Vorpal> elliott_, really it being slow
22:06:44 <elliott_> oerjan: Yes, this was definitely something you should have done.
22:06:45 <Phantom_Hoover> They invented steam engines and just saw them as a cool toy.
22:06:48 <Vorpal> elliott_, darcs never came across as slow to me
22:06:51 <elliott_> Vorpal: darcs has known efficiency issues for large projects /shrug
22:06:56 <elliott_> darcs one was absolutely glacial.
22:07:43 <elliott_> Well, "fool me once, shame on you; fool me twice, can't get fooled again".
22:08:27 <Vorpal> elliott_, not all docs are updated to saying they use git however. Some still suggest darcs.
22:08:31 <elliott_> Heh, "I don't know why you're talking about Sweden. They're the neutral one. They don't have an army."
22:08:39 <elliott_> (Found when Googling to make sure I had the Bush quote right; http://en.wikiquote.org/wiki/George_W._Bush.)
22:09:08 <Vorpal> elliott_, our army is just an excuse for not having one really
22:09:27 <elliott_> Don't you have a fairly good army, but just not use it for anything? :p
22:09:50 <Vorpal> elliott_, we used to have that. But budget cuts has been going on for well over 15 years now, so not much left.
22:10:08 -!- cheater__ has joined.
22:10:15 <oerjan> elliott_: mind you the ghc guys refused to change to Darcs 2 format (or something like that) because it didn't work with something they used to do, thus not using some of darcs's later improvements, i think.
22:10:22 <elliott_> Vorpal: Well, hey, at least you're cutting from the military. That's something America hasn't quite figured out how to do yet.
22:10:47 <Vorpal> oerjan, did it work with git however?
22:11:27 <Vorpal> oerjan, it would be somewhat funny if it didn't
22:11:51 <oerjan> which might mean that ghc chose git over darcs because they insisted on using git workflow...
22:12:39 -!- CakeProphet has joined.
22:12:39 -!- CakeProphet has quit (Changing host).
22:12:39 -!- CakeProphet has joined.
22:13:16 <Vorpal> oerjan, rebase *shudder*
22:13:57 <oerjan> <elliott_> Don't you have a fairly good army, but just not use it for anything? :p <-- i vaguely think that sweden, unlike norway, having a pretty good army at the start of ww2 was how that managed to _stay_ neutral then
22:14:19 <Vorpal> <elliott_> (Found when Googling to make sure I had the Bush quote right; http://en.wikiquote.org/wiki/George_W._Bush.) <-- I glanced at that page and the stupidity ratio is utterly outstanding
22:14:43 -!- pikhq_ has quit (Ping timeout: 240 seconds).
22:14:47 -!- pikhq has joined.
22:15:21 <elliott_> Vorpal: Surely you've heard all the Bushisms by now.
22:15:29 <Vorpal> oerjan, well... no we didn't have a good army at the start of ww2. However the politicians claimed we did and then did a mad rush to make it true. Meanwhile allowing the germans to transport troups through Sweden for the first few years of the war
22:16:01 <Vorpal> elliott_, I know he is stupid yes. But I haven't heard all those quotes no. Quite a few yes.
22:16:36 <oerjan> i just recently learned from wikipedia that britain invaded iceland shortly after germany invaded norway and denmark. the icelanders protested, but not overly much
22:16:45 <Vorpal> oerjan, oh and we sold them iron ore too. Since they invaded you guys and thus controlled Narvik.
22:16:59 <oerjan> Vorpal: "En svensk tiger", eh? ;D
22:17:01 <Vorpal> oerjan, really? that is news to me
22:17:21 <Vorpal> oerjan, was that invented around then or after?
22:17:51 <oerjan> they then passed control of iceland over to us troops. this was _before_ the us formally joined the war.
22:18:14 <oerjan> Vorpal: um you should know, you're the swedish one.
22:18:31 <Vorpal> oerjan, hey you are Norwegian and you told me you haven't seen Peer Gynt!
22:18:32 -!- sebbu has joined.
22:18:32 -!- sebbu has quit (Changing host).
22:18:32 -!- sebbu has joined.
22:18:40 <Vorpal> oerjan, så kasta inte sten i glashus
22:18:49 <Vorpal> (I have no idea what that idiom would be in English)
22:19:09 <Vorpal> (literal translation would be "don't throw stones in houses made of glass")
22:19:28 <oerjan> i think "those who live in glass houses shouldn't throw stones"
22:19:53 <oerjan> although "the pot calling the kettle black" also fits the theme
22:20:28 <Vorpal> oerjan, aren't they basically the same?
22:20:38 <Vorpal> I mean, what is the difference in meaning between the two idioms
22:21:24 <oerjan> <Vorpal> oerjan, rebase *shudder* <-- i am not entirely sure, but it may be close to the thing ghc insisted on using
22:21:44 -!- sebbu2 has quit (Ping timeout: 260 seconds).
22:21:47 <Vorpal> oerjan, rebase is Modifying History. Which is Wrong.
22:22:02 <Vorpal> (which means I hate the git workflow)
22:22:24 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:22:50 <elliott_> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 9 2
22:22:57 <elliott_> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 2
22:23:24 <Vorpal> elliott_, shouldn't you use where instead of let, iirc you told me so some time ago? ;P
22:23:50 <Vorpal> elliott_, okay, for the purposes of learning idiomatic style, why is that?
22:24:00 <oerjan> Vorpal: cannot use where on an expression alone
22:24:02 <elliott_> well this is ghci, it's hardly idiomatic
22:24:05 <lambdabot> <no location info>: parse error on input `where'
22:24:12 <elliott_> besides, i wrote the function first ;)
22:24:14 <oerjan> elliott_: um lambdabot isn't ghci
22:24:28 <oerjan> just vaguely similar to a few subcommands of ghci
22:24:40 <lambdabot> <no location info>: parse error on input `:'
22:25:04 <Vorpal> oerjan, indeed. But > is not ghci
22:25:08 <Vorpal> that was my main point
22:25:20 -!- sebbu2 has joined.
22:25:21 -!- sebbu2 has quit (Changing host).
22:25:21 -!- sebbu2 has joined.
22:25:39 <elliott_> Variable occurs more often in a constraint than in the instance head
22:25:39 <elliott_> in the constraint: Divisible n' d r
22:25:39 <elliott_> (Use -XUndecidableInstances to permit this)
22:25:54 <oerjan> you need to remember when to add > or @, and you still only get non-IO expressions, let, :t and :k
22:25:56 <Vorpal> elliott_, err, what does that mean
22:26:21 <Vorpal> oerjan, what is @ for in lambdabot?
22:26:30 <elliott_> > let sub n 0 = n; sub n m = sub (n-1) (m-1) in sub 9 2
22:26:53 <elliott_> class Sub a b r | a b -> r, a r -> b
22:26:53 <elliott_> instance (Sub n m r) => Sub (S n) (S m) r
22:26:58 <oerjan> elliott_: um your definition above fails on divs 1 1
22:27:24 -!- sebbu has quit (Ping timeout: 258 seconds).
22:27:31 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 1 1
22:27:41 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 2 1
22:27:45 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 1 2
22:28:09 <elliott_> shut up, my main problem is this undecidable instance :)
22:28:11 <Vorpal> whichever order that is in, that is wrong (while 2 doesn't divide 1, 1 definitively divides 2)
22:28:27 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 8
22:28:31 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 2 2
22:28:36 <oerjan> elliott_: more seriously, it fails on divs 8 3
22:28:41 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 2 3
22:28:48 <elliott_> oerjan: ok ok ok but i need to fix this first
22:28:56 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 3
22:29:14 <Lymia> > wat language is dis
22:29:14 <lambdabot> Not in scope: `wat'Not in scope: `language'Not in scope: `is'Not in scope: ...
22:29:23 <oerjan> Vorpal: same as your 2 3, actually. leaky recursion base.
22:29:43 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 5
22:29:56 <Vorpal> is it different or same?
22:31:06 <elliott_> do you need undecidable instances to do this
22:33:43 <oerjan> elliott_: i don't know why that claims it's got a greater context, maybe the functional dependencies are involved somehow?
22:34:04 <elliott_> oh well, undecidabled up the wazoo
22:34:16 <elliott_> now to fix that divisible algo :D
22:34:20 <oerjan> as in, aren't they rewritten to type functions these days?
22:34:27 <Vorpal> what does undecidable instances do?
22:34:37 <oerjan> or something like that
22:35:55 <oerjan> Vorpal: hm i recall seeing Terminated before, although i don't recall if there's a difference with that mueval-core thing
22:36:04 <oerjan> maybe there are two different competing timeouts
22:37:28 <oerjan> i am wondering, is having both a b -> r and a r -> b causing unbounded growth in itself
22:37:39 <Vorpal> I wonder if it is repeatable:
22:37:42 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 3
22:37:47 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 3
22:38:04 <Vorpal> oerjan, looks like two competing timeouts indeed
22:38:30 <oerjan> Vorpal: btw the 2 1 thing is equivalent to my first comment on 1 1, he doesn't handle d = 1
22:39:21 -!- zzo38 has joined.
22:39:28 <oerjan> in fact i think the mueval-core thing is newer, they may have restructured lambdabot at some point
22:40:05 -!- ntides has joined.
22:40:22 <zzo38> I got FizzBuzz C code down to 87 bytes now I should try for mathematical shortcuts, I think
22:40:25 <Vorpal> oerjan, hm don't you usually write x divides y as x | y, rather than y | x
22:40:28 -!- ntides has left.
22:40:32 <oerjan> elliott_: does it work if you remove a r -> b ?
22:40:37 <Vorpal> oerjan, in which case elliott_ has the parameters backwards
22:40:49 -!- ais523 has quit (Remote host closed the connection).
22:40:49 <Vorpal> oerjan, which means 8 `divs` 3 will be all backwards
22:41:01 -!- elliott_ has quit (Ping timeout: 255 seconds).
22:41:12 <oerjan> although it's the same order as div and mod
22:41:20 <oerjan> (which aren't predicates)
22:41:27 <Vorpal> oerjan, yes but | is usually written the other way around
22:43:16 <zzo38> I saw on some periodic table of Perl6 that the % operator is "iffy" which means it can be ! (logical not), but when I tried using !% operator it didn't work but it did say to use %% instead, so I did, and it worked
22:43:24 <oerjan> Vorpal: "The famous poster for the propaganda campaign was created by Bertil Almqvist in 1941"
22:43:29 <Vorpal> "periodic table of Perl6"?
22:43:35 -!- CakeProphet has quit (Ping timeout: 240 seconds).
22:43:44 <Vorpal> oerjan, I googled it several minutes ago
22:43:49 <zzo38> Vorpal: Yes I found the Periodic Table of Perl6 Operators
22:44:23 <fizzie> The Table is quite old; maybe it hasn't been kept current?
22:44:24 <zzo38> Everything is categorized, similar to, but not quite like, the periodic table of elements.
22:44:50 <zzo38> fizzie: Maybe that is why it did that, then
22:45:30 <zzo38> Although at first when I read that on the table, I immediately thought that making % to be "iffy" is a good idea, and that it had other good ideas too from what I could see on that table
22:45:39 -!- CakeProphet has joined.
22:45:39 -!- CakeProphet has quit (Changing host).
22:45:39 -!- CakeProphet has joined.
23:00:39 -!- h[a]gb4rd has joined.
23:18:10 -!- CakeProphet has quit (Ping timeout: 264 seconds).
23:23:03 <pikhq> Apparently non-Americans think root beer tastes like medicine. Personally, I wonder how they get good-tasting medicine.
23:23:53 -!- Phantom_Hoover has quit (Quit: Leaving).
23:24:54 <Sgeo_> pikhq, EZ Tab Tylenol or whatever tastes great!
23:25:09 <Sgeo_> I wish I could have medicine flavoring without the medicine
23:25:31 <pikhq> You are probably a freak.
23:25:53 <Sgeo_> pikhq, I don't think I mean raw medicine
23:26:01 <Sgeo_> They add flavoring to medications I think
23:26:06 <Sgeo_> I think that's what I like
23:26:11 <Sgeo_> But yes, I am a freak, so
23:26:12 <pikhq> Yes, you are probably a freak.
23:26:30 <Sgeo_> Well, some medicine, anyway
23:26:38 <Sgeo_> Ugh, the taste of Wellbutrin was horrible
23:26:52 <Sgeo_> Although I tended to chew it despite it not supposed to be chewed
23:27:30 <Sgeo_> Same with Ritalin. Oh wait, I didn't chew Wellbutrin, the taste was _too_ horrible
23:27:31 <augur> plural logic has never made sense until now
23:27:42 <augur> and now i know its because noone knows how to explain it properly except boolos himself
23:28:34 <Lymia> Dosn't this apply to a lot of things?
23:29:13 <Lymia> Even basic mathematics....
23:29:33 <Lymia> Well, I guess that starts making sense once you get into Algebra, etc.
23:30:36 -!- variable has left ("I found 1 in /dev/zero").
23:47:46 <zzo38> I shortened FizzBuzz C code to 63
23:49:16 <zzo38> Sorry, I didn't do that. I shorted "google" to 63
23:55:42 <Lymia> Now do it in Perl which you can actually golf worth shit.
23:59:43 -!- CakeProphet has joined.
23:59:43 -!- CakeProphet has quit (Changing host).
23:59:43 -!- CakeProphet has joined.
00:04:44 <zzo38> I am not very good at Perl
00:07:43 -!- sebbu has joined.
00:07:43 -!- sebbu has quit (Changing host).
00:07:43 -!- sebbu has joined.
00:09:02 <zzo38> Lymia: If you can do it Perl, then *you* do it Perl.
00:10:19 -!- augur has quit (Remote host closed the connection).
00:10:58 -!- sebbu2 has quit (Ping timeout: 260 seconds).
00:33:24 <Vorpal> pikhq, arguably there are a few medicines that taste kind of nice. Generally I found people widely disagree on which ones taste nice
00:34:29 <Vorpal> personally I hate anything flavoured with mint. Because I hate mint. Really hate that flavour. Which makes it a bit of a problem to find usable toothpaste.
00:40:02 -!- h[a]gb4rd has changed nick to hagb4rd.
01:01:54 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
01:08:42 -!- augur has joined.
01:08:45 -!- augur has quit (Remote host closed the connection).
01:14:37 -!- Maxdamantus has quit (Ping timeout: 276 seconds).
01:21:58 -!- augur has joined.
01:37:41 <Vorpal> <zzo38> Lymia: If you can do it Perl, then *you* do it Perl. <-- why not do it in TeX?
01:42:10 -!- copumpkin has joined.
01:44:25 -!- Vorpal has quit (Ping timeout: 248 seconds).
01:50:00 -!- sebbu2 has joined.
01:50:00 -!- sebbu2 has quit (Changing host).
01:50:00 -!- sebbu2 has joined.
01:53:37 -!- sebbu has quit (Ping timeout: 244 seconds).
01:53:46 -!- pikhq_ has joined.
01:55:34 -!- pikhq has quit (Ping timeout: 276 seconds).
02:14:59 -!- elliott_ has joined.
02:15:08 <elliott_> <oerjan> Vorpal: hm i recall seeing Terminated before, although i don't recall if there's a difference with that mueval-core thing
02:15:14 <elliott_> i suspect that terminated is every command
02:15:19 <elliott_> and mueval has its own timeout
02:15:22 <elliott_> but every command can get Terminated
02:15:48 -!- hagb4rd has quit (Ping timeout: 246 seconds).
02:29:21 * Sgeo_ seeks out a Homestuck IRC channel
02:29:38 -!- Lymia has quit (Ping timeout: 255 seconds).
02:31:16 -!- lament has joined.
02:44:28 -!- hagb4rd has joined.
02:50:06 -!- pikhq_ has quit (Ping timeout: 246 seconds).
02:50:06 -!- pikhq has joined.
02:50:48 -!- hagb4rd has quit (Ping timeout: 246 seconds).
02:56:23 -!- hagb4rd has joined.
03:05:42 -!- augur has quit (Remote host closed the connection).
03:08:55 <pikhq> Hrm. I did not realise the Harry Potter audiobooks were narrated by Stephen Fry.
03:09:39 -!- wareya has quit (Read error: Connection reset by peer).
03:10:46 -!- wareya has joined.
03:15:16 -!- hagb4rd has quit (Quit: hagb4rd).
03:21:18 -!- sebbu2 has quit (Read error: Connection reset by peer).
03:21:45 -!- sebbu has joined.
03:21:46 -!- sebbu has quit (Changing host).
03:21:46 -!- sebbu has joined.
03:28:06 -!- variable has joined.
03:28:33 -!- variable has left.
03:36:12 <pikhq> Hrm. So, MusicBrainz seems to have changed how it handles multi-disc releases.
03:36:26 <pikhq> I'm not entirely sure how to get it to act in a manner I'd call "sane"...
03:36:26 -!- pingveno has quit (Read error: Operation timed out).
03:37:34 <pikhq> Now, instead of the *slightly* hackish scheme of storing each disc as a seperate but related release, it stores them as a single release. Problem is, it then shares the track numbers over the whole thing.
03:37:41 <Sgeo_> MSPA fans have made their own IM network
03:37:52 <pikhq> At least to me, having per-disc track numbers makes sense.
03:38:25 <pikhq> I *could* just tag shit myself, but I'd really rather not have to do that.
03:39:14 -!- pingveno has joined.
03:46:36 -!- wareya has quit (Read error: Operation timed out).
03:49:55 <elliott_> pikhq: You could make a script to retag them given the track number of the start of each disc.
03:53:01 <pikhq> If Picard didn't suck as much...
03:53:21 <Sgeo_> Huh. It just runs over IRC.
03:53:32 <Sgeo_> irc.mindfang.org #pesterchm
03:57:34 <elliott_> pikhq: well try ex falso for the script thing
03:57:40 <elliott_> it's quod libet's python tagging library
04:00:58 <elliott_> oerjan: how was my divisibility thing broken again? I forget
04:01:30 <oerjan> it failed to handle when the recursion never passed 0 or 1
04:01:39 <pikhq> elliott_: Yeah, but dammit I SHOULDN'T HAVE TO.
04:01:55 <oerjan> also when the second argument was 1, it gave the wrong result
04:02:41 <elliott_> oerjan: never passed 0 or one? you mean when it went negative?
04:03:19 <elliott_> oerjan: right, i'm doing peano numbers here so this is a pain
04:03:28 -!- augur has joined.
04:04:06 <elliott_> no, my Sub will just fail I think
04:04:08 <elliott_> instance (Sub n d n', Divisible n' d r) => Divisible n d r
04:04:12 <elliott_> but actually I guess I need it anyway
04:04:29 <oerjan> yeah you want a subtraction that tells you when the result is negative
04:04:33 <pikhq> Y THERE NO VIDEO TAGGER
04:04:59 <elliott_> class Divisible a d r | a d -> r
04:04:59 <elliott_> instance Divisible (S Z) d False
04:04:59 <elliott_> instance (Sub n d n', Divisible n' d r) => Divisible n d r
04:04:59 <elliott_> instance (LT n d) => Divisible n d False
04:05:09 <elliott_> I need to make sure n in the last one is at least two
04:05:16 <elliott_> otherwise it'll be overlapping
04:06:09 <oerjan> oh right you were doing it with type classes as well
04:06:13 <elliott_> instance (LT (S (S n)) d) => Divisible (S (S n)) d False
04:06:20 <elliott_> oerjan: yeah, type families are too easy
04:07:06 <oerjan> anyway there is no point in having special case for Divisible (S Z) ...
04:07:57 <pikhq> Y'know what the worst thing about the traditional filesystem model?
04:08:05 <pikhq> *No room for fucking metadata*.
04:09:15 <pikhq> Which has gotten to be absolutely essential now that 1TB is cheap.
04:10:11 <oerjan> i think you can derive LT from Sub
04:10:50 <oerjan> hm or that would give overlapping would it
04:11:45 <oerjan> elliott_: the case of hitting 1 is not more special than hitting 2, only 0 is different. and both fail for some divisors.
04:16:41 <elliott_> Overlapping instances for Divisible
04:16:41 <elliott_> (S (S Z)) (S (S (S (S Z)))) False
04:16:41 <elliott_> arising from an expression type signature
04:16:41 <elliott_> instance (Sub n d n', Divisible n' d r) => Divisible n d r
04:16:41 <elliott_> -- Defined at /home/elliott/Code/fizzbuzz/fizzbuzz.hs:33:10-58
04:16:43 <elliott_> instance LT (S n) d => Divisible (S n) d False
04:16:47 <elliott_> -- Defined at /home/elliott/Code/fizzbuzz/fizzbuzz.hs:34:10-48
04:16:51 <elliott_> yeah i guess i do need to modify sub
04:17:29 <elliott_> do I need type-level Maybe? :)
04:19:26 <elliott_> Overlapping instances for Divisible
04:19:26 <elliott_> (S (S Z)) (S (S (S (S Z)))) False
04:31:03 -!- wareya has joined.
04:35:04 <oerjan> elliott_: you _are_ aware of the rule that ghc doesn't look at the context, only the part after => when deciding which instance to use and whether there is overlap, right?
04:35:13 <elliott_> oerjan: but i have functional dependencies...
04:36:40 <elliott_> so i guess i have to use type families
04:37:23 <coppro> elliott_: go learn real category theory obv
04:38:19 <elliott_> coppro: what has this got to do with category theory
04:39:51 <oerjan> an answer which is obviously false
04:40:04 <oerjan> (_everything_ has got something to do with category theory)
04:40:29 <oerjan> (not necessarily something you want to think about, though)
04:41:20 <elliott_> oerjan: but talking about everything is the same thing as talking about nothing
04:45:07 -!- hagb4rd has joined.
04:45:47 <elliott_> oerjan: seems like i might have to bite the bullet and use type families
04:50:55 <elliott_> oerjan: i am sad because of this
04:51:46 <oerjan> well multiparameter typeclasses _are_ supposed to be TC
04:52:28 <elliott_> i know theres that interpreter
04:52:30 <elliott_> but i don't want to /greenspun/ this
04:52:42 <elliott_> oerjan: I guess if I can write a directly recursive Divisible algorithm
04:53:27 <oerjan> what about that type maybe btw
04:53:48 <elliott_> http://esolangs.org/w/index.php?title=Turning_tarpit&curid=3781&diff=23114&oldid=23070
04:54:23 <elliott_> oerjan: http://sprunge.us/YBbd
04:54:27 <elliott_> {-# LANGUAGE MultiParamTypeClasses,
04:54:27 <elliott_> FlexibleInstances, UndecidableInstances #-}
04:54:37 <elliott_> *Main> undefined :: (Divisible (S (S Z)) (S (S (S (S Z)))) r) => r
04:57:45 <oerjan> hm yeah that won't work, the parts after => are still overlapping
04:58:27 <oerjan> oh hm that's easy to fix
04:59:00 <oerjan> just change the second one to have => Divisible (S n) d True
04:59:42 <oerjan> (with the context changed appropriately
05:01:03 <oerjan> except i don't recall if you can actually use MPTCs to _calculate_ the types...
05:01:35 <oerjan> oh wait that won't work will it
05:01:48 <oerjan> you _need_ the False case
05:02:24 <oerjan> i don't know enough about how this is supposed to work
05:03:32 <elliott_> oh wait i forgot to see what you said
05:03:38 <elliott_> <oerjan> just change the second one to have => Divisible (S n) d True
05:03:38 <elliott_> <oerjan> (with the context changed appropriately
05:03:47 <elliott_> i could do the false case separately
05:03:52 <elliott_> but it says it violates the fundeps anyway
05:03:54 <oerjan> but i suppose you can only branch based on known information
05:03:55 -!- lifthrasiir has quit (Ping timeout: 240 seconds).
05:04:03 <elliott_> instance (Sub n d (Just n'), Divisible n' d True) => Divisible n d True
05:04:07 <elliott_> Functional dependencies conflict between instance declarations:
05:04:08 <elliott_> instance (Sub n d (Just n'), Divisible n' d True) =>
05:04:08 <elliott_> -- Defined at /home/elliott/Code/fizzbuzz/fizzbuzz.hs:33:10-71
05:04:08 <elliott_> instance Sub (S n) d Nothing => Divisible (S n) d False
05:04:08 <elliott_> -- Defined at /home/elliott/Code/fizzbuzz/fizzbuzz.hs:34:10-57
05:04:46 <oerjan> ah it probably doesn't look at contexts to decide whether fundeps are satisfied either
05:05:17 <oerjan> so it thinks those two can overlap
05:05:30 -!- lifthrasiir has joined.
05:05:45 <oerjan> since it can substitute n -> S n in the first one to get a violation in the latter
05:07:07 <oerjan> i have a hunch trying to get it to use type classes to infer the last type argument is not how you actually do type level programming with them
05:07:30 <oerjan> i could be wrong about that, but...
05:07:51 <elliott_> I'm going based on http://www.haskell.org/haskellwiki/Type_arithmetic
05:07:56 <oerjan> it's essentially type inference, and i don't think that works at this level
05:08:11 <elliott_> it seems to mostly be raw recursive functions
05:08:14 <elliott_> and (complicated) compositions
05:09:06 <oerjan> heh oleg has done decimals
05:09:32 <elliott_> oerjan: I am considering just doing modulo myself
05:10:54 <oerjan> hm i suppose it has to able to deduce result types then
05:11:26 <elliott_> Overlapping instances for Mod (S (S Z)) (S (S (S (S Z)))) (S (S Z))
05:11:26 <elliott_> arising from an expression type signature
05:11:34 <elliott_> instance (Sub a b (Just a'), Mod a' b r) => Mod a b r
05:11:34 <elliott_> -- Defined at /home/elliott/Code/fizzbuzz/fizzbuzz.hs:30:10-53
05:11:34 <elliott_> instance Sub a b Nothing => Mod a b a
05:11:34 <elliott_> -- Defined at /home/elliott/Code/fizzbuzz/fizzbuzz.hs:31:10-39
05:13:33 <elliott_> oerjan: i don't know how to make this work at all...
05:13:37 <elliott_> instance (Sub a b a', Mod a' b r) => Mod a b r
05:13:37 <elliott_> instance (LT a b) => Mod a b a
05:13:58 <oerjan> of course that overlaps
05:14:24 <elliott_> instance (Sub a b a', Mod a' b r x) => Mod a b r True
05:14:24 <elliott_> instance (LT a b) => Mod a b a False
05:14:29 <elliott_> the whole thing actually works
05:14:33 <elliott_> i... dunno if that will help though
05:15:34 <oerjan> i think you cannot put True and False there, they have to be introduced by some deduction in the context
05:16:00 <oerjan> basically you can only branch on input, not output, i think
05:18:08 <oerjan> so the instance Divs Z n False is fine, because it is determined entirely by input
05:19:38 <oerjan> but for Divs (S n) d r you need to calculate the result entirely in the context
05:21:08 <oerjan> instance (Sub (S n) d mb, DivHelper mb d r) => Divs (S n) d r
05:21:33 <oerjan> where mb is a type level maybe
05:22:01 <elliott_> oerjan: what would DivHelper be?
05:22:19 <oerjan> something that branches on the maybe which Sub has calculated
05:22:45 <elliott_> what would mb actually be, though?
05:22:49 <oerjan> instance DivHelper Nothing d False
05:23:41 <elliott_> oerjan: hm and then divhelper recurses into divisible?
05:23:43 <oerjan> instance DivHelper (Just Z) d True
05:23:58 <oerjan> and one more for Just (S n)
05:24:09 <elliott_> instance (Divisible a d r) => DivHelper (Just a) d r
05:24:15 <elliott_> because Divisible has the Z/d/True case
05:24:31 <oerjan> otherwise you get overlap
05:24:42 <elliott_> class DivHelper m d r | m d -> r
05:24:42 <elliott_> instance DivHelper Nothing d False
05:24:43 <elliott_> instance (Divisible a d r) => DivHelper (Just a) d r
05:24:55 <elliott_> undefined :: (Divisible (S (S Z)) (S (S (S (S Z)))) r) => r
05:25:02 <elliott_> two is divisible by four right
05:25:20 <oerjan> ...you have an unusual argument order
05:25:26 <elliott_> class Divisible a d r | a d -> r
05:25:27 <elliott_> instance (Sub (S n) d m, DivHelper m d r) => Divisible (S n) d r
05:25:27 <elliott_> class DivHelper m d r | m d -> r
05:25:27 <elliott_> instance DivHelper Nothing d False
05:25:27 <elliott_> instance (Divisible a d r) => DivHelper (Just a) d r
05:25:56 <elliott_> undefined :: (Divisible (S (S (S (S Z)))) (S (S Z)) r) => r :: True
05:30:21 * elliott_ wonders if oerjan has guessed what he's writing yet...
05:31:06 <elliott_> it would be easy with type families but they would make it too easy :)
05:32:35 <oerjan> so the lesson of this i guess is that you cannot program MPTCs like prolog even though it looks like it
05:34:56 <zzo38> One essay in describing TECO coined the acronym "YAFIYGI", meaning "You Asked For It You Got It" and thus being the antitheses of WYSIWYG ("What You See Is What You Get"). (According to Wikipedia)
05:38:26 <elliott_> Functional dependencies conflict between instance declarations:
05:38:47 <elliott_> instance (Divisible n Five True, Divisible n Eight True) => FB n FizzBuzz
05:38:48 <elliott_> instance (Divisible n Five True, Divisible n Eight False) => FB n Fizz
05:38:48 <elliott_> instance (Divisible n Five False, Divisible n Eight True) => FB n Buzz
05:40:55 <oerjan> (Divisible n Five d5, FB1 n d5 r) => FB n r
05:42:29 <oerjan> in the part to the right of =>, any fixed part of the output needs to be determined by the fixed parts of the input, is my hunch
05:42:32 <elliott_> *Main> :t undefined :: (Loop Z (S (S (S (S Z)))) r) => r
05:42:32 <elliott_> undefined :: (Loop Z (S (S (S (S Z)))) r) => r
05:42:32 <elliott_> :: LoopHelper (Just FizzBuzz) Z (S (S (S (S Z)))) (Cons fb r) =>
05:45:22 <oerjan> oh, it didn't actually try to calculate it?
05:45:32 <elliott_> class LoopHelper m n c r | n c -> r
05:45:33 <elliott_> instance (Loop (S n) c r) => LoopHelper Nothing n (S c) r
05:45:33 <elliott_> instance (Loop (S n) c r) => LoopHelper (Just fb) n (S c) (Cons fb r)
05:45:36 <elliott_> I probably just have a mistake here
05:45:54 <elliott_> (Just FizzBuzz) Z (S (S (S (S Z)))) (Cons fb r))
05:46:17 <elliott_> instance (FB n m, LoopHelper m n (S c) r) => Loop n (S c) r
05:46:35 -!- Rugxulo has joined.
05:47:57 <oerjan> elliott_: um shouldn't it be | m n c -> r ?
05:48:22 <elliott_> *Main> undefined :: (Loop Z (S (S (S (S Z)))) r) => r
05:48:23 <elliott_> No instance for (Show (Cons FizzBuzz Nil))
05:48:46 <elliott_> *Main> :t undefined :: (Loop Z Eight r) => r
05:48:47 <elliott_> Context reduction stack overflow; size = 21
05:48:47 <elliott_> Use -fcontext-stack=N to increase stack size to N
05:49:01 <elliott_> Type families would solve that, right? :P
05:49:11 <elliott_> oerjan: it was followed by a gigantic list of loop helper things
05:49:16 <elliott_> but this is failing on /eight/ :-O
05:49:29 <elliott_> *Main> :t undefined :: (Loop Z Eight r) => r
05:49:29 <elliott_> undefined :: (Loop Z Eight r) => r :: Cons FizzBuzz (Cons Fizz Nil)
05:51:30 <elliott_> I did five and eight rather than three and five
05:51:43 <oerjan> Cons (S Z) (Cons (S (S Z)) (Cons Fizz (Cons (S (S (S (S Z)))) (Cons Buzz ... is what i'd expect
05:52:58 <elliott_> *Main> :t undefined :: (Loop Z (S (S (S (S (S Five))))) r) => r
05:52:58 <elliott_> undefined :: (Loop Z (S (S (S (S (S Five))))) r) => r
05:52:58 <elliott_> FizzBuzz (Cons Fizz (Cons Buzz (Cons Fizz (Cons Fizz Nil))))
05:53:03 <oerjan> elliott_: i guess if it is not using the optimal evaluation order, it might build up a huge amount of unfinished work
05:53:25 <elliott_> oerjan: just increasing the limit works fine though
05:53:30 <elliott_> *Main> :t undefined :: (Loop (S Z) (S (S (S (S (S Five))))) r) => r
05:53:30 <elliott_> undefined :: (Loop (S Z) (S (S (S (S (S Five))))) r) => r
05:53:30 <elliott_> :: Cons Fizz (Cons Buzz (Cons Fizz (Cons Fizz (Cons Buzz Nil))))
05:53:41 <elliott_> Now I just need to build up one hundred :)
05:53:49 <elliott_> maybe I can use my Sub as an Add
05:54:04 <oerjan> elliott_: you are not going to include the numbers not divisible by 3 or 5?
05:55:38 <elliott_> Occurs check: cannot construct the infinite type:
05:57:08 <elliott_> class FBHelper n dt df fb | n dt df -> fb
05:57:08 <elliott_> instance FBHelper n True False Fizz
05:57:08 <elliott_> instance FBHelper n False True Buzz
05:57:08 <elliott_> instance FBHelper n True True FizzBuzz
05:57:08 <elliott_> instance FBHelper n False False (Number n)
05:58:23 <elliott_> hmm now how can I use my Sub to do addition
05:58:44 <elliott_> Illegal polymorphic or qualified type:
05:58:44 <elliott_> forall r. Sub Five r (Just Five) => r
05:58:44 <elliott_> Perhaps you intended to use -XRankNTypes or -XRank2Types
05:59:18 <elliott_> Illegal polymorphic or qualified type: Ten
05:59:19 <elliott_> In an expression type signature: Loop (S Z) Ten r => r
05:59:19 <elliott_> In the expression: undefined :: Loop (S Z) Ten r => r
05:59:22 <elliott_> guess ten has to be a typeclass :D
06:00:01 <elliott_> instance (Sub Five r (Just Five)) => Ten () r
06:00:04 <elliott_> oerjan: observe the lovely grossness
06:01:15 <elliott_> class Twenty x r | x -> r; instance (Sub Ten r (Just Ten)) => Twenty () r
06:02:47 <elliott_> *Main> :t undefined :: (Hundred () n, Loop (S Z) n r) => r
06:02:47 <elliott_> undefined :: (Hundred () n, Loop (S Z) n r) => r
06:02:52 <elliott_> Sub eighty n2 (Just twenty)) =>
06:05:23 -!- Rugxulo has left.
06:05:41 <elliott_> *Main> :t undefined :: (Hundred () n, Loop (S Z) n r) => r
06:05:41 <elliott_> undefined :: (Hundred () n, Loop (S Z) n r) => r
06:05:46 <elliott_> (Cons Fizz (Cons (Number (S (S (S (S Z))))) (Cons Buzz Nil))))
06:06:15 <oerjan> it seems to think 100 = 5
06:06:46 <elliott_> ok now to wait for it to do all the fizzbuzzing
06:06:54 <elliott_> starting to think that type families would be preferable at this point
06:07:59 <elliott_> oerjan: my computer fans are currently spinning as it tries to work out the difficult combinatorial problem known only as "FizzBuzz"
06:08:56 <elliott_> i think it's building up EVERY SINGLE THUNK
06:08:59 <elliott_> and then evaluating them all at once
06:09:05 <elliott_> because there's no lazy evaluation really
06:09:16 <elliott_> since the head has to execute first
06:10:09 <elliott_> oerjan: really tempted to go into #haskell and say "does anyone have any tips for optimising typeclass computation?"
06:10:25 <elliott_> 9351 elliott 20 0 1689m 1.6g 15m R 98 44.1 3:39.59 ghc
06:12:45 -!- elliott has joined.
06:12:46 -!- elliott_ has quit (Read error: Connection reset by peer).
06:12:59 <elliott> oerjan: I have made a great achievement today.
06:13:09 <elliott> I am the first person to ever successfully freeze their computer trying to produce FizzBuzz.
06:13:50 <oerjan> your haskell XP is now 35 millioleg
06:14:25 <pikhq> Anyone ever hit a decioleg?
06:14:48 <pikhq> *Aside from Oleg*.
06:14:52 <hagb4rd> omg i love morrisey! ..i know it's absolutely out of topic but i have to throw you this curveball now
06:14:58 <hagb4rd> http://www.youtube.com/watch?v=_NcOm1enVFo&feature=BFp&list=WL4A8A5CE20F5AF139&index=17
06:15:00 <hagb4rd> (wouldn't know where to paste it else either :/ )
06:15:17 * oerjan swats hagb4rd -----###
06:15:26 <pikhq> Clearly, in order to obtain 1 oleg of Haskell XP, you must hit all the rationals between that and 0 oleg first.
06:15:51 <oerjan> no, that's 1 zeno, i think
06:16:55 <pikhq> Anyways, point is, are there any mortals who have achieved a tenth of Oleghood?
06:17:47 <elliott> i need to do decimal conversion :(
06:19:01 <oerjan> um it's not like you're going to achieve correct output format anyhow...
06:19:58 <elliott> i'll construct a list of (peano) bytes at the type level
06:20:02 <elliott> just like the C++ deadfish
06:20:17 <elliott> im in this for the long haul oerjan
06:23:02 <elliott> ps oerjan i want you to know that you have a guaranteed ticket to the martian colony
06:27:02 <elliott> and then oerjan went on with his life without even asking what he meant
06:28:25 <elliott> Is there a really easy way to do Peano division :P
06:28:53 <oerjan> easier than using subtraction? not that i know of.
06:29:09 <elliott> i'm not sure what you mean
06:30:09 <oerjan> it should be pretty similar to that Divs
06:30:17 <elliott> mm mm oerjan can ih ave some bread
06:37:00 * oerjan throws hardtack at elliott
06:38:18 <elliott> no no wait i thought of the best thing to do with bread
06:45:28 <monqy> someone on #haskell found fizzbuzz
06:48:02 <elliott> i just put it up there so i could see it better :D
06:48:06 <elliott> it was too big for my emacs window
06:48:36 -!- elliott has quit (Quit: Leaving).
06:49:05 <zzo38> You mentioned the cheat in the anagol Deadfish and I figured out how to do that cheat in JavaScript code (I put (cheat) after my name). Maybe there is other cheats? I didn't find any.
06:49:54 <oerjan> i don't know any other big cheats
06:50:39 <oerjan> oh i recall those interpreters i saw didn't bother to handle h, just erroring out on it
06:51:12 <oerjan> which might help a bit
06:51:27 <zzo38> OK. Not bothering to handle h, I don't consider that cheat, since all valid inputs only contain i,d,s,o,h and h is only at the end.
06:51:39 <oerjan> > unwords . catMaybes . map (flip lookup . zip [1,3,5,15] . (id:) . map (show.) ["Fizz","Buzz","FizzBuzz"]) [1..]
06:51:41 <zzo38> So, I have already dealt with that in my submissions.
06:51:49 <oerjan> > unwords . catMaybes $ map (flip lookup . zip [1,3,5,15] . (id:) . map (show.) ["Fizz","Buzz","FizzBuzz"]) [1..]
06:51:49 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe
06:52:08 <lambdabot> forall a b. (Eq a) => a -> [(a, b)] -> Maybe b
06:52:42 <zzo38> (Also, immediately after "h" will always be end of file in all valid inputs. It is not considered cheating, in my opinion, if your program fails to work properly with invalid inputs; it doesn't matter what happen in that case.)
06:52:54 <oerjan> > unwords . catMaybes $ map (flip lookup . zip [1,3,5,15] . (id:) . map (const.show) ["Fizz","Buzz","FizzBuzz"]) [1..]
06:52:55 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe
06:53:23 <oerjan> > unwords . catMaybes $ map (flip lookup . zip [1,3,5,15] . (show:) . map const ["Fizz","Buzz","FizzBuzz"]) [1..]
06:53:24 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe
06:55:07 <oerjan> > unwords . catMaybes $ map (join $ flip lookup . zip [1,3,5,15] . (show:) . map const ["Fizz","Buzz","FizzBuzz"]) [1..]
06:55:07 <lambdabot> Couldn't match expected type `a -> [a1 -> GHC.Base.String]'
06:55:16 <oerjan> this is not going very well...
06:55:25 <zzo38> My Javascript code exits on "h" due to error, my C code treats "h" the same as "d" and exits at EOF (which is OK since that won't affect output if the input is valid), and my AWK code just ignores "h" (and exits at EOF).
06:56:36 <oerjan> > unwords $ map (join $ fromJust . flip lookup . zip [1,3,5,15] . (show:) . map const ["Fizz","Buzz","FizzBuzz"]) [1..]
06:56:37 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe (a1 -> m a)'
06:56:41 <zzo38> So, it doesn't matter what your program does with "h" as long as not causing extra output, due to range of valid input (I think the rules of Perl golf specify a rule similar to this one).
06:59:12 <oerjan> > unwords $ map (join $ fromJust . flip lookup zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"]) [1..]
06:59:13 <lambdabot> Couldn't match expected type `a1 -> Data.Maybe.Maybe a'
06:59:45 <zzo38> I wonder if the C codes (there are four shorter than mine) use the cheat checking 256 or any other cheats? I suppose, I can learn that in 16 hours.
06:59:57 <oerjan> > unwords $ map (join $ fromJust . flip lookup . zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"]) [1..]
06:59:58 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe (a1 -> a)'
07:00:45 <zzo38> My AWK code for Deadfish uses exponentiation, but not ^2 did you know that?!
07:03:09 <oerjan> > unwords $ map (fromJust . join $ flip lookup . zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"]) [1..]
07:03:09 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe
07:04:04 <oerjan> > unwords $ map (fromJust . join . (flip lookup . zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"])) [1..]
07:04:05 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe GHC.Base.String'
07:05:35 <oerjan> > unwords $ map (join $ fromJust . (flip lookup . zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"])) [1..]
07:05:43 -!- pikhq has quit (Ping timeout: 260 seconds).
07:05:44 -!- pikhq_ has joined.
07:06:14 <zzo38> I wrote a 147 bytes TeX program that typesets the FizzBuzz output
07:06:23 -!- hagb4rd has changed nick to h[a]gbard.
07:06:29 <oerjan> > unwords $ map (join $ fromJust . (flip lookup . zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"])) [1..]
07:06:31 <lambdabot> "1 *Exception: Maybe.fromJust: Nothing
07:07:13 <zzo38> (Using the Plain TeX format)
07:07:57 <oerjan> > unwords $ map (join $ fromJust . (flip lookup . zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"]) . gcd 15) [1..]
07:07:58 <lambdabot> "1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Bu...
07:08:35 <zzo38> It looks like you make it work now
07:08:54 <zzo38> But do you know how to make it work shorter?
07:09:19 <oerjan> > unwords . (`map`[1..]) . join $ fromJust . (flip lookup . zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"]) . gcd 15
07:09:20 <lambdabot> "1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Bu...
07:11:18 <zzo38> I think that isn't shorter (but it still seems to works)
07:11:55 <zzo38> This is program in TeX: \let~\advance\time0\day0\loop~\time1~\day1~\mit\ifnum\time=3\time0Fizz\fi\ifnum\fam=5Buzz\rm\fi\ifvmode\the\day\fi\endgraf\ifnum\day<100\repeat\bye
07:12:30 <zzo38> Can you understand this?
07:12:49 <zzo38> Have you ever used TeX?
07:13:22 <zzo38> Try to do it in LaTeX code golf then, see if you can do it.
07:14:02 -!- cheater__ has quit (Ping timeout: 255 seconds).
07:14:08 <oerjan> i've not used LaTeX as a programming language, only markup
07:14:19 <oerjan> and trivial definitions
07:14:43 <zzo38> Note, it is possible to make my code shorter if it is OK to have error messages. What I have is the shortest one I know of, that does not result in error messages,
07:16:26 <zzo38> What kind of stuff have you made with it?
07:20:40 <zzo38> I have made all sorts of stuff with TeX including business cards for FreeGeek. Although I do use it for typesetting mathematics as well, but I have not written many mathematical reports (although TeXnicard includes a few math formulas in the document part of the program).
07:20:59 <Sgeo_> This is scary. I'm having fun with a crappy fandom IRC client
07:21:03 <zzo38> I managed to get nine business cards on a page
07:21:48 <zzo38> And it required me to write a AWK program to convert the logo from SVG to METAFONT.
07:22:07 <zzo38> Sgeo_: What IRC client is that and what is it scary?
07:22:28 <Sgeo_> Pesterchum, and because it's a weird niche thing
07:22:36 <Sgeo_> That I'm having fun with
07:23:09 <zzo38> What kind of features does it have that you are using?
07:24:33 <Sgeo_> Just discovered a "feature" that lets me force people to see images that come with the client
07:24:43 <Sgeo_> People are playing around with it, the developer is leaving it in
07:25:13 <zzo38> Sgeo_: Like, how does it work?
07:25:34 <Sgeo_> Some HTML-like thing internally
07:25:40 <Sgeo_> Not full HTML though
07:26:44 -!- h[a]gbard has quit (Quit: h[a]gbard).
07:27:05 -!- cheater__ has joined.
07:27:23 <zzo38> I have once, using the IRC client I am currently using, made so other people on Microsoft Comic Chat saw my picture each one to match their own, and when they changed it I changed it too but nobody else could notice that was happening, they thought it was matching their own instead!!
07:36:39 -!- lament has changed nick to lameNOT.
07:53:07 <zzo38> Someone sent a game (the same game in each case) to two game companies. One rejected because they work only with abstract games. The other rejected because they do not work with abstract games.
08:08:33 -!- zzo38 has quit (Remote host closed the connection).
08:38:00 -!- augur has quit (Remote host closed the connection).
08:40:22 -!- augur has joined.
08:56:10 -!- oerjan has quit (Quit: leaving).
08:58:09 -!- FireFly has joined.
08:58:12 -!- augur has quit (Remote host closed the connection).
09:22:20 -!- augur has joined.
09:39:01 -!- Phantom_Hoover has joined.
09:42:29 -!- Vorpal has joined.
09:43:31 <Vorpal> hm the last xkcd is actually slightly funny. Not much, but slightly.
09:45:12 <Phantom_Hoover> Vorpal, have you actually been following Homestuck lately?
09:45:51 <Vorpal> Phantom_Hoover, nope. I didn't have time. Plus I have the bookmark of where I left off on the computer where the PSU broke.
09:46:28 <Vorpal> Phantom_Hoover, have you read Problem Sleuth yet?
09:46:39 <Vorpal> Phantom_Hoover, liked it?
09:49:26 <Phantom_Hoover> Vorpal, did you leave off around http://www.mspaintadventures.com/?s=6&p=005643?
09:49:39 <Vorpal> Phantom_Hoover, you should try to calibrate the allegiance mesh of this channel. Maybe you could turn me and elliott into friends!
09:50:24 <Vorpal> Phantom_Hoover, hm, maybe. There is no Next on that one??
09:50:28 -!- monqy has quit (Quit: hello).
09:50:52 <Vorpal> I don't have flash on this computer. Oh well
09:51:05 <Vorpal> Phantom_Hoover, pressing go back I think I left on on the previous one
10:25:38 <cheater__> in an ext3 fs, a single inode will always be made out of neighbouring blocks, right? or can an inode contain e.g. blocks 1001, 5164, 600067 ?
10:25:53 -!- elliott has joined.
10:32:43 <Sgeo_> Why doesn't apng work in Chrome? :(
10:33:55 <elliott> the most practical complaint EVAR
10:36:07 -!- BeholdMyGlory has joined.
10:37:42 <Vorpal> elliott, presumably it stands for "another portable network graphics"?
10:38:32 <Vorpal> (I have to say that the expansion of PNG is slightly silly. PNG can after all be used over other things than networks)
10:40:42 <Vorpal> why did lenovo place the headphone connector at the front of the laptop... It is quite annoying when the connector is large. This one for example is about 4 cm including the strain relief.
10:41:01 <Vorpal> (2 cm without strain relief)
10:41:26 <Vorpal> and that is how much it sticks out in front of the palmrest, so not including the actual plug bit
10:41:48 <Vorpal> elliott, any good idea why they would put the headphone connector in such a stupid place?
10:42:11 <Vorpal> elliott, not sorcerers?
10:52:06 -!- azaq23 has joined.
11:06:41 -!- Patashu has joined.
11:18:33 <Sgeo_> Vorpal, animated png
11:19:55 <Sgeo_> elliott, I'm actually liking Pesterchum
11:22:54 <Phantom_Hoover> I'm pretty sure I've viewed animated PNGs before in Chrome
11:29:51 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
11:32:54 -!- Phantom_Hoover has joined.
11:45:17 -!- ais523 has joined.
11:46:10 <ais523> hmm, my client actually detected that as a nickping
11:46:18 <ais523> I think because I have a stalkword on ais523 as well as current nick
11:46:19 <elliott> wait that wasn't the fun pun i intended it as
11:50:53 <Vorpal> <Sgeo_> Vorpal, animated png <--- hm? is that different from .mng?
11:51:35 <Sgeo_> APNG is more popular, and APNGs are valid PNGs, with the first frame of the APNG being what's shown when rendered as a regular PNG
11:51:35 <ais523> APNG and MNG are competing formats that do much the same thing
11:51:57 <ais523> APNG is supported only by Firefox, with the other major browsers mostly doing MNG, but APNG is winning anyway; draw what conclusions you like about that
11:52:10 <elliott> can either really be said to be winning
11:52:12 <Vorpal> ais523, interesting. Does firefox handle mng?
11:52:16 <elliott> i don't get the impression anyone uses either :)
11:52:28 <Vorpal> elliott, I seen mng... once I think
11:52:35 <Sgeo_> Wait, there are browserss that support mng?
11:52:48 <ais523> Vorpal: not any more, it used to but they disabled the code, for fear of security holes or whatever
11:52:54 <ais523> Sgeo_: I think Chrome does, and possibly Opera too
11:53:11 <ais523> and also quite possibly the WebKit-based ones
11:53:16 <ais523> the other WebKit-based ones, I mean
11:54:25 <fizzie> No support in Chrome/WebKit for MNG, says 'pedia.
11:55:26 -!- Lymia has joined.
11:55:34 <fizzie> No native browser support at all, actually, according to their handy table.
11:56:32 <Patashu> Why are browsers so reluctant to implement apng/mng again
11:56:50 <Patashu> I would have thought they'd jump on the opportunity to wean the internet off ultra large animated gifs
11:56:56 <Sgeo_> Apparently Chrome wants to keep relying on OS libraries, from what I've read
11:57:08 <Patashu> Well really there needs to be an image format optimized for animations, like a webm type thing
11:57:20 <elliott> except not shit like webm is presumabl
11:57:38 <elliott> really though, all animations are are small videos
11:57:44 <fizzie> Lack of use was the cited reason for dropping the native MNG support; and I guess lack of browser support is one of the main reasons dor the lack of usage.
11:57:46 <Patashu> But animated gifs are highly uncompressed
11:57:49 <elliott> all you need is a lossless video format
11:57:52 <Patashu> No prediction encoding or anything
11:58:31 <cheater__> apng: the best thing since gif porn?
11:59:22 <fizzie> MNG at least doesn't get any advantage of the cross-frame correlation, the frames are all individually encoded PNG or JNG images.
11:59:40 <Vorpal> <Sgeo_> Apparently Chrome wants to keep relying on OS libraries, from what I've read <-- so what do they use for png?
12:00:30 <Vorpal> elliott, I doubt that is an OS library on windows?
12:00:32 <cheater__> seriously though: i find it distracting that there are no uncompressed movie formats floating around
12:00:42 <cheater__> you'd think movie freaks would appreciate crisp realism
12:00:42 <fizzie> Or maybe it does that thing where the successive animation frames can be deltas, I don't know.
12:00:42 <Sgeo_> Vorpal, elliott's right I think, so I'm wrong
12:00:58 * cheater__ furiously browses his flac directory
12:01:23 <elliott> there are plenty such formats.
12:01:24 <ais523> cheater__: I've seen zipped-directory-of-pngs as a lossless movie format
12:01:26 <elliott> for instance, h.twosixfour.
12:01:35 <elliott> with xtwosixfour you just set quantisation to 0
12:01:45 <ais523> elliott: technically, you also need to scale up the image by a factor of 2
12:01:49 <cheater__> ais523, but i mean "real movies", as in hollywood movies
12:02:02 <elliott> ais523: with xtwosixfour, as in, this is how you do it with this encoder
12:02:11 <lifthrasiir> Patashu, afaik MNG does some kind of prediction between frames.
12:02:11 <cheater__> things you'd actually be likely to watch casually.
12:02:13 <ais523> as h.264 always averages color across 2x2 blocks
12:02:15 <elliott> cheater__: films are not even edited losslessly.
12:02:24 <ais523> so you need to set quantisation to 0, /and/ upscale by a factor of 2
12:02:25 <Vorpal> <ais523> cheater__: I've seen zipped-directory-of-pngs as a lossless movie format <-- uh... that gains you nothing
12:02:32 <fizzie> As far as I can tell APNG also just includes the frame data chunks as-is.
12:02:32 <cheater__> elliott, i think they're not even recorded losslessly
12:02:36 <elliott> (the format used for film editing is a /near/-lossless one.)
12:02:42 <ais523> Vorpal: it gains quite a bit if two of the frames happen to be identical
12:02:55 <elliott> Vorpal: it gets you inter-frame compression
12:03:01 <elliott> although i suppose png's compression might mess with it
12:03:04 <cheater__> i believe they're edited in compressed form because of throughput problems
12:03:39 <Vorpal> elliott, afaik png's compression is basically the same as zip's compression, Plus some delta encodings like "compared to same pixel, previous scanline" (and a few more modes)
12:03:49 <elliott> anyway if all you want to watch is Sita Sings the Blues and the Blender films, you can have perfectly lossless copies.
12:04:01 <elliott> Vorpal: yes but the png is per-file
12:04:08 <elliott> zip compresses between files
12:04:16 <cheater__> i can store a 10 minute song on my iOmega Zip drive, though.
12:04:18 <elliott> I dunno whether it is .tar.gz or .gz.tar
12:04:21 <Vorpal> elliott, yeees. That is about the only movie of any length where loseless is actually possible :P
12:04:26 <cheater__> so i don't think they're so big anymore.
12:04:34 <elliott> Vorpal: there are MULTIPLE blender films ;/
12:04:35 <lifthrasiir> elliott, well, can we just calculate the difference between two frames and save it as a PNG file?
12:04:46 <Vorpal> elliott, oh true. They are quite short iirc
12:04:48 <fizzie> The movie-theatre "digital distribution" standard format -- or at least one of them -- is to include each frame as an individual high-quality (but still lossy) JPEG2000 image.
12:04:52 <elliott> the sita example is kind of cheap though -- it's Flash, so by all rights you should be able to watch a completely vector version
12:04:54 <cheater__> i think the movie format situation is similar to the mp3 proliferation back in the day.
12:05:27 <Vorpal> elliott, for blender you could get the original blender source maybe?
12:05:39 <elliott> Vorpal: they distribute the lossless files and also that, yes.
12:05:39 <Patashu> woah, JPEG2000 is an industry format?
12:05:42 <lifthrasiir> of course not a big win, but it is good enough for most purposes
12:06:24 <lifthrasiir> as one that wants a loseless movie format will don't care about the small (compared to the delta-encoding...) changes in file size
12:06:31 <Vorpal> elliott, I think that zip has two modes, solid and non-solid. IIRC solid is like tar.gz and non-solid like .gz.tar
12:06:33 <cheater__> it would make sense that something bearing its name would be an industry standard :p
12:06:46 <Vorpal> I'm not completely sure of this however
12:07:17 <cheater__> is .gz.tar just a lot of separate gz files tarred up?
12:07:23 <Vorpal> elliott, better than .zip.gz.tar.gz (Xilinx again, who else?)
12:07:41 <Vorpal> or wait, was it .zip.bz2.tar.gz?
12:07:44 <lifthrasiir> cheater__, well, if you think a working group in ISO/IEC JTC 1 is capable for defining an effective industry standard, yes that's an industry standard.
12:07:46 <Vorpal> well, something like that
12:07:49 -!- TeruFSX has joined.
12:08:11 <lifthrasiir> of course some of them makes things too complex, hence "the language designed by committee."
12:10:15 <cheater__> in an ext3 journal, if a single block gets overwritten several times, it can have multiple transactions for it sitting on the disk, right? does that ever get flattened (to e.g. preserve space)?
12:11:45 <fizzie> Oh yes: MNG does support a form of motion compensation (assuming your encoder does, anyway); it's possible to have sprite-like things that appear in different locations in separate frames without including the image data for that multiple times; as well as the thing where you compose next frame as a delta of previous, like I think animated gif also does (just by having transparent frames that are overlaid over previous state); and a specific "delta-png" format. B
12:12:32 <fizzie> But they've defined MNG-LC and MNG-VLC ("low complexity" and "very low complexity") variants which don't support any of that.
12:13:03 <fizzie> As for APNG, from what I can tell it simply is a collection of IDAT chunks from separate frames. Not sure if new frames are composited on top of old ones; if not, then it doesn't get any advantage from similar frames.
12:13:21 <lifthrasiir> yes, i think MNG is going too far in that direction. should really have been some kind of markup language with images embedded (not a binary format).
12:15:11 <ais523> it does raster too, despite the name
12:15:58 <lifthrasiir> i don't know much about SVG animations, but if it works then it'd be a lot better than MNG
12:23:25 <ais523> SVG is really complex, it has a comparable featureset to the non-video-decoding parts of Flash
12:36:28 -!- elliott has quit (Remote host closed the connection).
12:36:52 -!- elliott has joined.
12:40:54 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
12:42:19 <elliott> http://esolangs.org/w/index.php?title=Migol&curid=2729&diff=23119&oldid=21576
12:42:24 <elliott> these should really have separate pages
12:51:07 -!- Phantom_Hoover has joined.
13:23:33 * ais523 is busy reading a 44-page document by the US patent office (a proposed rejection of a patent upon reexamination), which summarises as "there's an existing patent on doing exactly what you do, with a local server rather than a set of external servers, or with a TV screen rather than a computer monitor; and those changes are really obvious"
13:24:06 <coppro> the USPTO doesn't reject patents
13:24:10 <ais523> coppro: it's a reexamination
13:24:14 <ais523> the patent was accepted the first time
13:24:34 <coppro> also why do you care about this patent?
13:26:14 <ais523> oh, I'm generally interested in this sort of thing
13:26:36 <ais523> but my attention was attracted because it was recently used to sue something like 12 major website companies
13:26:47 <ais523> or, well, companies which are particularly known for having websites
13:26:55 <ais523> together with a few that aren't
13:27:09 <ais523> (I just counted, it was actually only 11)
13:27:48 <coppro> I like the bit aobout the distinction between a TV and a monitor
13:28:26 <Phantom_Hoover> http://www.sciencemag.org/content/332/6033/1046/F2.large.jpg
13:28:46 <Phantom_Hoover> (Hits on the Periodic Table of Videos' video for each element.)
13:29:16 <Phantom_Hoover> I like the way all the alkali metals have high views, presumably because the one thing everyone knows about them is that they explode in water.
13:29:23 <elliott> ais523: I was hoping for a summary but okay :P
13:29:26 <ais523> it's basically about showing information from remote servers on screensavers
13:29:31 <elliott> Disseminating to a participant an indication that an item accessible by the participant via a network is of current interest is disclosed. An indication that the item is of current interest is received in real time. The indication is processed. The participant is informed that the item is of current interest.
13:30:38 <Patashu> Why do -any- of the Uu_ elements have hits at all
13:30:40 <Patashu> Are they really that interesting
13:30:42 <ais523> the people who own it are trying to use the vague summary to make it cover all non-locally-generated notifications whatsoever
13:31:29 <Phantom_Hoover> Patashu, presumably because of people like me who binged the videos.
13:31:31 <Patashu> seriously, fuck patenting really simple IT concepts
13:31:46 <Patashu> and whatever else apple/windows/etc get into patent wars over
13:31:46 <ais523> my guess is that even if the patent were valid, it wouldn't apply to Google's website, whichever one it is of those they're suing over (they haven't said yet)
13:32:33 * Phantom_Hoover considers that the oxygen's videos oddly high number of hits may be because that was the video that they poured liquid oxygen on everything in.
13:32:39 <Patashu> me irl right now http://wupcenter.mtu.edu/education/Ecology_of_the_Great_Lakes_03/13lamprey_hickey.jpg
13:33:17 <Patashu> yes. I have a lamprey on my head as I type this
13:33:27 <elliott> Patashu: have you ever seen a ghost
13:33:50 <elliott> <Patashu> Why do -any- of the Uu_ elements have hits at all
13:33:54 <elliott> people looking for the weirdest video :D
13:34:09 <elliott> Patashu: how do you know when to stop wiping
13:34:14 <elliott> ok thats all the iama memes i remember
13:34:19 <elliott> ill dip out of this qa session
13:35:05 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:36:05 <Phantom_Hoover> Patashu, so you do not in fact have the moustache of a demigod?
13:37:22 <Patashu> I am the lamprey not the dude
13:37:26 <Patashu> ask me about being a lamprey
13:37:47 <elliott> Patashu: how do you know when to stop wiping
13:38:01 <Patashu> THE WIPING DON'T STOP TILL I WALK IN
13:38:46 <elliott> and at that moment the channel reached its all-time intellectual peak
13:40:40 -!- MigoMipo has joined.
13:41:44 <Phantom_Hoover> elliott, no wait I shall pull the channel even higher.
13:55:49 -!- Guest17101 has joined.
13:57:19 -!- ralc has joined.
14:02:23 -!- ZOMGMODULES has joined.
14:02:31 <ZOMGMODULES> http://answers.yahoo.com/question/index?qid=20080726123234AALUVFA
14:03:42 <ZOMGMODULES> as opposed to the language which is *most* commonly found at the bottom of a bucket, which is...?
14:04:14 <Patashu> oh oh! is it visual basic?
14:04:30 <ZOMGMODULES> i don't know. it occurs to me how rarely i look inside buckets.
14:04:44 <Patashu> It's a metaphorical bucket?
14:09:13 -!- copumpkin has joined.
14:09:15 -!- copumpkin has quit (Changing host).
14:09:16 -!- copumpkin has joined.
14:09:29 -!- Guest17101 has left ("Leaving").
14:09:33 -!- Guest17101 has joined.
14:13:08 <elliott> Guest17101: are you actually running your irc client as root
14:16:25 -!- variable has joined.
14:17:03 -!- Guest17101 has quit (Quit: Leaving).
14:17:47 <ais523> elliott: at least one person I know uses root as their IRC username to scare people
14:17:51 <ais523> unfortunately, I've forgotten who it is
14:19:48 <ZOMGMODULES> if i wanted to scare people, i would do that. i would also pick a nick like "Guest17101"
14:34:37 <ais523> my name is only scary because of its reputation
14:34:53 <elliott> And its associated humbleness obvs
15:01:30 <ZOMGMODULES> at any rate, I see cpressey finally got around to publishing Pail: http://catseye.tc/news.html#Pail_is_an_acceptable_Bizaaro[sic]-Pixley
15:03:24 <ZOMGMODULES> i would go so far to call it reprehensible
15:03:41 <Phantom_Hoover> Oh, also, I am now reeling at a discovery that has rocked my perception of the world.
15:04:08 <elliott> ZOMGMODULES: so is pail the greatest language ever
15:04:14 <Phantom_Hoover> http://en.wikipedia.org/wiki/Magic_Roundabout_(Swindon)
15:04:32 <Phantom_Hoover> My conclusion: I must make a language based on roundabouts.
15:05:45 <elliott> ZOMGMODULES: do i get a prize if i construct a racist caret w recursive function in pail
15:06:24 <Phantom_Hoover> ...dammit, I'm seeing the background of catseye as a spacetime structure
15:08:48 <Phantom_Hoover> ZOMGMODULES, please attend to this matter before I go insane.
15:14:33 <ZOMGMODULES> elliott: i think such a feat deserves a prize of some sort
15:14:52 <elliott> ZOMGMODULES: will it be free (ad-free) webspace like the creator of NETFUCK is offering
15:15:00 <elliott> i cant settle for anything less in value than that
15:15:05 <Phantom_Hoover> I choose to interpret this as the metals becoming sentient and attempting to overthrow their human masters.
15:15:07 <elliott> so basically, bids must be plastic turd or higher
15:16:44 <ZOMGMODULES> Phantom_Hoover: please stop sharing links that contain characters like ( that my terminal emulator doesn't understand are part of the URL to it takes me to wikipedia articles that don't exist then i am tempted to create them
15:18:21 <ZOMGMODULES> also: even I knew about that magic roundabout, but it was via looking up the children's show
15:18:50 <elliott> roundabouts could make a nice language
15:20:27 <ais523> hmm, perhaps Rubicon should be retroactively converted back into an esolang
15:20:27 <ZOMGMODULES> i have no recollection how i became aware of the children's show
15:20:32 <ais523> as it seems to have deviated somewhat from vanilla RUBE
15:20:41 * ais523 goes to see if it's working again yet
15:21:08 <ais523> nope, I still just get a blank screen
15:21:20 <ais523> must be some bad interaction with this computer's version of Java
15:23:29 <elliott> ais523: you may have openjdk jvm but no java plugin
15:23:36 <elliott> try installing the icedtea plugin package
15:23:47 <ais523> Patashu: RUBE is the bully CA, Rubicon is a computer game based on it
15:23:57 <ais523> based more loosely than I thought, actually, especially in the handling of dozers
15:24:31 <ais523> elliott: it's apparently already installed
15:24:34 <ais523> and I do get messages saying it's loading
15:24:37 <ais523> it just never actually loads
15:25:21 <ais523> it also doesn't work if I try a different browser
15:27:13 <Patashu> chrome, windows XP, latest version of java and JDK
15:44:52 -!- zzo38 has joined.
15:47:06 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
15:58:18 -!- Patashu has quit (Ping timeout: 246 seconds).
16:02:34 -!- lameNOT has quit (Ping timeout: 248 seconds).
16:05:20 -!- augur has quit (Remote host closed the connection).
16:15:04 -!- pikhq_ has quit (Ping timeout: 240 seconds).
16:15:07 -!- pikhq has joined.
16:21:48 -!- Phantom_Hoover has joined.
16:27:51 <zzo38> ais523: Are you good at Perl?
16:28:16 <ais523> zzo38: not amazingly, but it's a language I've used quite a bit
16:29:37 <zzo38> Well, I haven't use it much, yet I still beat you at the Deadfish anagol challenge (without using cheats). Try harder.
16:29:58 <elliott> do better or you're worthless
16:30:09 <ais523> zzo38: I'm not very good at golfing
16:30:28 <ais523> I mostly use anarchy golf as programming practice, rather than in a serious attempt to win
16:31:55 <zzo38> O, I didn't know that.
16:33:48 <zzo38> However, if you *did* use cheats, post a non-cheating submission with (genuine) after your name.
16:35:43 <zzo38> I failed at Perl, C, and JavaScript, but beat everyone at AWK and Bash. Do you know any things about AWK?
16:38:22 -!- augur has joined.
16:38:27 <zzo38> I only found one cheat and it only helped me at JavaScript (I marked with (cheat)) which I still lost at.
16:39:42 <zzo38> And if dc didn't have the bug in it, I would have won at dc as well, but there is a bug in dc which prevents my program from working.
16:40:56 <zzo38> In case of a unknown command, the error message (except for the "dc: " prefix) is sent to stdout instead of stderr.
16:42:02 <zzo38> The program I have results in a lot of other error messages too but they all send to stderr (which is proper) so it does not cause the problem.
16:42:12 <zzo38> I will show you the code: [0sac]dsOx[p]3:;[1+]1:;[dd/-]2:;[d*]0:;[3O2?O+%I~;;Adiolarxd256=Osalox]dsox
16:43:59 <Deewiant> solaris dc appears to send all errors to stdout
16:44:56 <zzo38> This is GNU dc, however. GNU dc sends all errors to stderr except for that one error, which I am sure is a bug.
16:45:33 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
16:46:18 <zzo38> It is probably not too difficult to fix, however.
16:46:45 <Deewiant> The dc manual appears to have a "reporting bugs" section: http://www.gnu.org/software/bc/manual/dc-1.05/html_mono/dc.html#SEC11
16:46:49 <fizzie> You make a fist, shake it at the sky, and shout "why, GNU, why?!" -- that is the standard reportig practice.
16:47:02 <ais523> zzo38: "man dc" says "Email bug reports to bug-dc@gnu.org."
16:47:59 -!- ais523 has quit (Remote host closed the connection).
16:48:13 <zzo38> ZOMGMODULES: There is one.
16:49:39 <elliott> ais-logreading: zzo refuses to use email
16:51:02 -!- augur has quit (Remote host closed the connection).
16:52:23 -!- ZOMGMODULES has changed nick to Adiolarxd256.
16:53:01 -!- augur has joined.
16:53:14 -!- Vorpal has quit (Ping timeout: 248 seconds).
16:53:31 -!- Vorpal has joined.
16:55:36 -!- Phantom_Hoover has joined.
16:56:32 <zzo38> I found the mistake. It is on line 519 of dc/eval.c should be change from dc_show_id(stdout, to dc_show_id(stderr, and then hopefully it can work OK.
17:02:45 -!- Adiolarxd256 has quit (Quit: BARK BARK BARK BARK BARK bark BARK BARK bark BARK BARK BARK BARK MOOOOOO BARK.).
17:07:19 <elliott> hmm i was just about to ask a pail question too
17:15:20 -!- azaq23 has quit (Quit: Leaving.).
17:28:31 -!- TOGoS has joined.
17:30:50 -!- augur has quit (Remote host closed the connection).
17:42:35 -!- SimonRC has quit (Ping timeout: 260 seconds).
17:44:10 -!- SimonRC has joined.
17:48:43 <pikhq> Autotup: on a scale of 1 to "Fuck you", how bad of an idea is it?
18:19:05 <pikhq> So, I finally ended up installing Firefox 4.0...
18:19:17 <pikhq> YOU MADE CHROMIUM LOOK MORE NATIVE YOU ASSHOLES
18:20:03 <elliott> Firefox four's menu button is ... interesting.
18:20:13 <TOGoS> CHROMIUM LOOKS LIKE NATIVE ASSHOLES GARRRR!!!!
18:20:41 <pikhq> STOP WITH THE CUSTOM WIDGETS PEOPLE
18:21:02 <TOGoS> I always forget about it and then can't find the menu :(
18:21:10 <pikhq> Why must it be so damned hard to just get a decent web browser that *fits into the damned UI*?
18:21:29 -!- Herobrine has joined.
18:21:46 -!- monqy has joined.
18:22:33 <TOGoS> I think it's a cycle in UI design
18:23:00 <TOGoS> Make everything custom (Winamp), then eventually the WM's widgets catch up a bit and then things look more native for a while (OS X stuff)
18:23:13 <zzo38> I think it is because there isn't decent web browser
18:24:00 <zzo38> If the program is designed for specific operating system, you should use native widgets, otherwise just use the program you make so that it can work on cross-platform.
18:25:05 <pikhq> You should always strive to make it appear native.
18:25:39 <pikhq> To do otherwise is to just arrogant.
18:25:57 <pikhq> "Yeah, I know, it looks like nothing else here, BUT MY PROGRAM IS MORE IMPORTANT THAN THEIRS!"
18:26:09 <TOGoS> I do kind of like the tabs up in the title bar...
18:27:11 <elliott> Tabs in the title bar are nice but it should be the WM's job.
18:27:58 -!- pikhq_ has joined.
18:28:12 <TOGoS> maybe next round of WM's will have that feature
18:28:15 <TOGoS> hence the cycle ;)
18:28:31 <pikhq_> AND LET ME SCROLL WHEEL TO CHANGE TABS DAMMIT
18:28:55 <zzo38> I think you should make it *be* native (just looking native is not sufficient) if you are writing the program for the specific OS or windowing system or whatever, but otherwise just do whatever works for the program you are writing if it needs cross-platform, if it would result in difficulties by trying to port to different systems each native one being different enoughto require many things changed too much.
18:29:04 <pikhq_> YOU ARE NOT FUCKING CLEVER FOR HAVING YOUR PROGRAM HAVE DIFFERENT BEHAVIOR.
18:29:09 <pikhq_> YOU ARE JUST A FUCKING ASS.
18:29:35 <TOGoS> I agree with you 95% of the time, pikhq_
18:29:56 <TOGoS> unfortunately everyone thinks they're the other 5%
18:30:03 <pikhq_> I have a few *simple* expectations in my program. First, it looks like it belongs with the rest of the programs. Second, it *acts like it*.
18:30:28 <pikhq_> It really should *not* be too much to ask for the widgets in this program to interact with the user in the same manner that *every other widget* does.
18:31:00 -!- pikhq has quit (Ping timeout: 260 seconds).
18:38:07 <zzo38> pikhq_: I suppose that is reasonable. However what is the case if you cannot do that due to differences of systems that are too different and causes too much of mistakes? In case it is HTML then of course you can use "native" commands such as <input> and <button> and <h1> and so on, and if the program is GTK you can probably also make forms that are cross-platform.
18:38:49 <pikhq_> Well, then perhaps you should stop being too clever for your own good.
18:39:06 <zzo38> But for other things, you have to see if you want cross-platform or for a single system only or whatever, you can decide how to make.
18:39:23 <pikhq_> If you can't meet bare-minimum usability requirements, maybe you shouldn't make the program.
18:39:56 <zzo38> I avoid all of this problem by making command-line programs.
18:40:31 <pikhq_> Yeah, that actually does make portability simpler.
18:41:22 <zzo38> GUI can then be added on to it by someone else if you want to, and there might even be more than one such GUI program to choose from.
18:44:29 -!- Lymia has quit (Quit: 1... 2... 3... HUGS! :D).
18:44:46 -!- Lymia has joined.
18:44:46 -!- Lymia has quit (Changing host).
18:44:46 -!- Lymia has joined.
18:54:35 <cheater__> in an ext3 file system, i have an inode number, and i want to find out the fs block numbers that this inode occupies. how can i do that?
18:56:15 <fizzie> debugfs (in read-only mode it's vaguely safe even for mounted filesystems) can probably do it.
18:56:39 <fizzie> Most commands accept inode numbers with a syntax like <42>.
18:58:06 <fizzie> There's at least some "bmap" command for physical blocks.
18:59:37 <elliott> Hey what's the glut package in Debian called.
19:01:51 <fizzie> Freeglut's in freeglut3(-dev); it's mostly compatible and I think somewhat better.
19:02:54 <fizzie> Seems that is has replace the old GLUT packages anyway.
19:05:44 <elliott> fizzie: OK I have those but I still get
19:05:47 <elliott> /usr/local/lib/GLUT-2.1.2.1/ghc-7.0.3/libHSGLUT-2.1.2.1.a(HsGLUT.o): In function `hs_GLUT_getProcAddress':
19:05:53 <elliott> HsGLUT.c:(.text+0x41): undefined reference to `glutGetProcAddress'
19:05:53 <elliott> /usr/local/lib/GLUT-2.1.2.1/ghc-7.0.3/libHSGLUT-2.1.2.1.a(HsGLUT.o):(.rodata+0x0): undefined reference to `glutBitmap8By13'
19:05:53 <elliott> /usr/local/lib/GLUT-2.1.2.1/ghc-7.0.3/libHSGLUT-2.1.2.1.a(HsGLUT.o):(.rodata+0x8): undefined reference to `glutBitmap9By15'
19:05:53 <elliott> /usr/local/lib/GLUT-2.1.2.1/ghc-7.0.3/libHSGLUT-2.1.2.1.a(Window.o): In function `sbL1_info':
19:05:54 <elliott> (.text+0xba0): undefined reference to `glutGet'
19:05:55 <elliott> /usr/local/lib/GLUT-2.1.2.1/ghc-7.0.3/libHSGLUT-2.1.2.1.a(Window.o): In function `sbL1_info':
19:07:58 -!- elliott has quit (Remote host closed the connection).
19:08:25 -!- elliott has joined.
19:08:52 <fizzie> That is weird; at least freeglut's autogenerated API docs say it has a glutGetProcAddress, and that the "normal" GLUT does not include the function.
19:09:15 <elliott> It has thousands of those lines, so yeah.
19:11:39 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
19:15:18 -!- pikhq has joined.
19:15:51 <elliott> fizzie: This is really strange.
19:15:55 -!- pikhq_ has quit (Ping timeout: 260 seconds).
19:15:56 <elliott> It's like it isn't linking with glut at all.
19:16:23 <fizzie> Well, breaking is what build systems sort of "do".
19:28:55 * pikhq is trying to debug a space leak in this Brainfuck compiler from a while back...
19:30:23 -!- pouns_ has joined.
19:30:43 <pikhq> A single pass of the optimiser takes a good 100M of space.
19:30:59 -!- pouns_ has quit (Client Quit).
19:31:13 <Lymia> pikhq, is the resulting code faster?
19:31:36 <pikhq> It's just that the compiler itself has a space leak.
19:31:56 <pikhq> And it doesn't seem to be because of thunks...
19:32:13 <pikhq> The heap profile is showing a gigantic chunk of GHC primitive types.
19:33:32 <pikhq> Seriously, entirely consisting of GHC primitive types.
19:34:05 <pikhq> Perhaps it'd work better if I could somehow get this thing to be stream fused.
19:37:18 <pikhq> Sadly, probably not going to be too easy, seeing as I'd like to be able to look at at least 2 different values of the list at the same time. :/
19:46:53 <pikhq> If only I could get these as a freaking map.
19:48:16 -!- copumpkin has joined.
19:58:52 <elliott> worth trying with a macbook air? :P
19:59:04 <elliott> bleh i dunno how many of these drivers
19:59:37 <Phantom_Hoover> This remains the most unsettlingly funny tragedy to date.
20:02:51 <elliott> http://www.phpsadness.com/
20:02:53 <elliott> here is my equivalent list
20:03:09 <lifthrasiir> i guess you are processing the entire code as a whole
20:14:22 <Phantom_Hoover> I can only imagine what went through the minds of the Japanese onlookers when it sank.
20:17:16 <elliott> Phantom_Hoover: Are you reading some Cracked article "ten stupidest demises of things/people" or something.
20:17:34 <Phantom_Hoover> Nope, http://en.wikipedia.org/wiki/List_of_unusual_deaths
20:17:49 <elliott> 1926: Phillip McClean,16, from Queensland, Australia became the only person documented to have been killed by a cassowary. After encountering the bird on their family property, McClean and his brother decided to kill it with clubs. When McClean struck the bird it knocked him down, then kicked him in the neck, opening a 1.25 cm long cut in one of his main blood vessels. Though the boy managed to get back on his feet and run away, he collapsed a sh
20:17:50 <elliott> ort while later and died from the hemorrhage.[55]
20:19:53 <pikhq> lifthrasiir: Yeah, iterating over the entire list...
20:20:35 <Phantom_Hoover> "1974: Basil Brown, a 48-year-old health food advocate from Croydon, drank himself to death with carrot juice.[90][91]"
20:20:37 <pikhq> Hmm. I suppose if I were a bit more clever I could get this as a fold...
20:20:46 <pikhq> Rather than primitive recursion.
20:21:10 <lifthrasiir> pikhq: hmm, so what optimization are you applying?
20:22:04 -!- CakeProphet has quit (Read error: Connection reset by peer).
20:23:35 <pikhq> Just some basic RLE, identifying a few common setting idioms, and trying to combine pointer movements into the instructions...
20:24:14 -!- CakeProphet has joined.
20:24:16 -!- CakeProphet has quit (Changing host).
20:24:16 -!- CakeProphet has joined.
20:24:37 -!- Aune has joined.
20:25:17 -!- CakeProphet has changed nick to Kallisti.
20:25:22 <pikhq> With it doing a single pass over LostKng, it takes 3 seconds and takes something like 100M of space...
20:25:26 -!- Kallisti has changed nick to CakeProphet.
20:26:44 <pikhq> With it finding the fixed point of the optimisation, well...
20:27:17 <elliott> 1978: Georgi Markov, a Bulgarian dissident, was assassinated in London with a specially modified umbrella that fired a metal pellet with a small cavity full of ricin into his calf.[98]
20:27:49 <elliott> "1979: Robert Williams, a worker at a Ford Motor Co. plant, was the first known human to be killed by a robot" -- I feel the rest of the line is superfluous
20:28:17 <pikhq> Same amount of memory, takes 2 minutes 14 seconds.
20:28:55 <pikhq> Would you like me to pastebin?
20:30:07 <lifthrasiir> pikhq: is the original input a (bare) list of something?
20:30:35 <pikhq> lifthrasiir: The original input is the output of a Brainfuck parser.
20:32:01 <lifthrasiir> well, i meant that it uses just a plain list or some fancy data structure to store the commands
20:32:12 <pikhq> Just a plain list.
20:33:32 <lifthrasiir> looks like that the entire process is not tail-recursive?
20:33:57 <pikhq> Lemme just pastebin.
20:34:10 <pikhq> http://sprunge.us/KWTJ
20:34:21 <lifthrasiir> (i just didn't understand what to pastebin)
20:34:30 <Vorpal> <elliott> 1978: Georgi Markov, a Bulgarian dissident, was assassinated in London with a specially modified umbrella that fired a metal pellet with a small cavity full of ricin into his calf.[98] <-- which page is this from?
20:34:51 <elliott> Vorpal: http://en.wikipedia.org/wiki/List_of_unusual_deaths
20:35:05 <Vorpal> <pikhq> With it doing a single pass over LostKng, it takes 3 seconds and takes something like 100M of space... <-- what software?
20:35:24 <pikhq> Vorpal: Brainfuck compiler I wrote in Haskell a while back that I'm tinkering with now.
20:35:39 <Vorpal> pikhq, aiming to beat esotope-bfc?
20:35:50 <pikhq> Nah, not even close to doing that.
20:35:56 <lifthrasiir> (.data+0x354): undefined reference to `mtlzm1zi1zi0zi2_ControlziMonadziStateziLazzy_zdfMonadStatesState_closure'
20:36:13 <coppro> crud, I've accidentally been productive today
20:36:19 <lifthrasiir> ...is a deepseq package enough for building it?
20:36:28 <Vorpal> lifthrasiir, did you ever do that SSA thing in esotope-bfc that you talked about?
20:36:38 <pikhq> You also need mtl.
20:36:43 <Vorpal> lifthrasiir, plan on doing it at any point?
20:37:01 <zzo38> Could you have a ISO standard for Washizu Mahjong gloves?
20:37:34 <lifthrasiir> i'm good at planning and lazy at executing ;)
20:38:23 <pikhq> Or you could just have
20:38:24 <Vorpal> lifthrasiir, so you are not running a RTOS?
20:38:32 <pikhq> C-k and C-j should not be so close.
20:38:39 <lifthrasiir> one non-interesting bit: PyPy does not improve esotope-bfc significantly over CPython (55s vs 52.5s).
20:39:09 <lifthrasiir> Vorpal: well, the load average consistently hitting 10 or so.
20:39:13 <pikhq> I have a sneaking suspicion there's at least *some* issue in the codeGen function, though...
20:39:42 <Vorpal> lifthrasiir, what about cython?
20:39:44 <pikhq> Could probably make it use ST instead of State.
20:39:49 <Vorpal> lifthrasiir, of course that will require some changes
20:40:02 <pikhq> Dunno if that'd help, though. :/
20:40:28 <lifthrasiir> Vorpal: i doubt cython will improve the performance significantly.
20:40:58 <Vorpal> lifthrasiir, I found it much better than pypy if you spend some time at it
20:41:03 <lifthrasiir> as the current data structure is straightforward and not very tailored for performance
20:41:20 <Vorpal> lifthrasiir, just changing that to a cdefed structure will probably help a lot
20:41:32 <Vorpal> and adding types to arguments
20:42:33 <Vorpal> lifthrasiir, for computation bound stuff it can help a lot. I converted an Othello AI (using alpha-beta pruning) from python to cython. Was able to switch from 4 ply to 7 ply without it becomming excessively slow
20:43:22 <Vorpal> lifthrasiir, cython has a useful thing that generates a html file of the source indicating by colour for each line how many calls to python are required
20:43:29 <pikhq> Yeah, definitely something up with the codeGen function.
20:43:45 <lifthrasiir> Vorpal: right, cython should be good at it. the problem is that esotope-bfc quite depends on the built-in data structures of python, that is not one that can be optimized by cython
20:43:47 <Vorpal> lifthrasiir, found that useful. Was able to get it to generate quite passable C code with a little bit of effort
20:43:59 <Vorpal> lifthrasiir, which one?
20:44:24 <Vorpal> lifthrasiir, hm. I forgot if it can optimise those
20:44:29 <Vorpal> it can optimises lists certainly
20:44:44 <lifthrasiir> yes, lists and tuples are relatively easy to rewrite
20:44:52 <Vorpal> lifthrasiir, you can convert some structures to fixed length arrays
20:45:02 <Vorpal> that helped a LOT for the internal state of that thing I converted iirc
20:45:28 <Vorpal> I wrote that AI for an assignment at university, AI course.
20:45:37 -!- atrapado has joined.
20:46:05 <Vorpal> lifthrasiir, I handed in both the cython and python versions and then wrote a section pointing out the piss poor performance of python in the report iirc
20:46:18 <lifthrasiir> it might be useful to convert the Expr into cython, as it is quite computation-intensive compared to other parts of esotope-bfc
20:46:32 -!- myndzi has joined.
20:46:54 <elliott> did you try psyco? retro, i know, but
20:46:58 <Vorpal> lifthrasiir, have any experience with cython? I learned it quite well back then.
20:46:59 <elliott> it still does better than pypy at some things iir
20:47:02 <Vorpal> elliott, yes very retro.
20:47:26 <elliott> like you need sixtyfour bit for bf compilation
20:47:28 <Vorpal> elliott, psyco used to do wonders for portage's dependency calculations I remember
20:47:36 <lifthrasiir> as the tracing JIT compiler can inline internal routines for built-in data structures (at least PyPy does so)
20:47:58 -!- myndzi\ has quit (Ping timeout: 252 seconds).
20:48:05 <lifthrasiir> elliott: i *was* using psyco when the esotope-bfc was actively developed.
20:48:14 <Vorpal> lifthrasiir, to be fair cython special cases some built in functions such as abs() and quite a few more
20:48:47 <elliott> The syntax looks like very simplified ALGOL 68 with elements taken from Lua and SQL.
20:49:03 <Vorpal> elliott, what are you talking about?
20:49:10 <elliott> http://rosettacode.org/wiki/Category:Agena
20:50:09 <lifthrasiir> the most outstanding problem with esotope-bfc now is, that i almost forgot the details of source code :S
20:50:33 <Vorpal> lifthrasiir, maybe convert it to haskell?
20:51:04 <Vorpal> hmm what happened to that language google made
20:51:10 <Vorpal> I even forgot the name of it
20:51:23 <Vorpal> elliott, oh, how was google involved?
20:51:26 <elliott> It's still going just as it was.
20:51:32 <elliott> Vorpal: everyone who made it works at google (twenty percent time project)
20:51:37 <elliott> and they did a little bit of marketing of it
20:51:38 <elliott> and supported it in app engine
20:51:41 <Vorpal> lifthrasiir, well, I somehow think it will get more attention as a free standing project
20:51:44 <elliott> but the people working on it were all plan 9/unix people
20:51:49 <Vorpal> lifthrasiir, for full optimisation and so on
20:52:05 <lifthrasiir> you may be correct, i'm not decided on it.
20:52:10 <elliott> Vorpal: not like it's hard to just grab an esotope repo and just use the bf thing
20:52:12 <Vorpal> elliott, okay but what happened to Go?
20:52:18 <elliott> imo esotope is more interesting if it has some kind of common backend though
20:52:24 <elliott> so that all esolangs benefit from the advanced optimisation
20:52:42 <lifthrasiir> it is possible that i can make an optimization portion a library, and esotope just uses it
20:53:20 <Vorpal> <elliott> so that all esolangs benefit from the advanced optimisation <-- good luck, different languages allow widely different optimisations. Most that work on bf wouldn't work on piet or befunge for example (well, very few things work on befunge to be fair, but you get my point)
20:53:30 <zzo38> Should I make the new kind if D&D campaign setting? I have some ideas. Some of it is based on a computer game I once made but other things are differently. One difference is any creature (except for angels, devils, and demons) can have any alignment with no bias. Other differences including the gods, regions, planes, and some of the classes. And a few other things.
20:53:45 <elliott> Vorpal: Well yes, that's why you'd have a bunch of "declarations" at the start
20:53:53 <elliott> e.g. you'd say it has a right-infinite tape-with-pointer
20:53:58 <elliott> and it'd optimise operations with it based on that
20:54:07 <elliott> and IO operations would be tagged appropriately, so that they could be used as optimisation barriers
20:54:33 <Vorpal> elliott, well okay. But I'm not sure how well that will work. brainfuck can be optimised across IO for example. As long as you don't touch the same cell.
20:54:33 <lifthrasiir> elliott: i once thought of it but gave up. such an intermediate language is very hard to define.
20:54:46 <elliott> But it would be interesting :)
20:54:56 <Vorpal> elliott, basically I'm saying the diversity is way too large for this to work well
20:55:09 <lifthrasiir> so i instead took up an approach of language-to-language translation
20:55:32 <lifthrasiir> some languages like brainfuck has an AST which is somewhat more powerful than the original language
20:55:49 <Vorpal> elliott, anyway, you hardly hear anything about Go nowdays it seems. There was a few weeks of hype about it. Then nothing.
20:56:37 <elliott> Vorpal: same with everything in the general information channels
21:11:10 <zzo38> Do you have any feature request/suggestion of TeXnicard? One if my ideas is that it ought to support some sort of indexed relational database which you can use for such things as storing all the cards of all sets and searching. Another idea is supporting character encoding translation tables. And one more thing is river demerits.
21:15:38 <quintopia> I suggest you build in the spanish inquistion
21:15:56 <zzo38> Why does it need the Spanish Inquisition?
21:17:15 -!- elliott has quit (Ping timeout: 260 seconds).
21:19:25 -!- olsner has quit (Ping timeout: 240 seconds).
21:19:57 -!- olsner has joined.
21:21:01 <quintopia> i thought you would asking for help in maintaining feeping creaturinsm
21:22:46 <zzo38> I don't want to add a whole bunch of overly complicated and useless stuff that doesn't belong. But I do want to add the useful kind of things, because character encoding should be dealt with if you need to make cards with different languages!
21:23:43 <quintopia> so you want to make it easier for asian people to do what they want in it
21:23:57 <quintopia> but you don't want to make it easier for the spaniards to have an inquisition in it
21:24:44 <quintopia> well, i can't say i didn't expect that
21:25:09 -!- TeruFSX has quit (Read error: Operation timed out).
21:25:12 <quintopia> re so predictable. why don't you do something unexpected with it?
21:26:03 -!- TeruFSX has joined.
21:31:36 <zzo38> It doesn't need videos, TrueType, HTTP, JavaScript, a GameBoy emulator, spell check, audio, animated pictures on cards, DRM, watermarking, WYSIWYG, Lisp interpreter, Emacs, musical typesetting, support for Microsoft Word, a package manager, direct access to Apprentice, or anything else like that.
21:33:12 <zzo38> The program is designed for making card games, not for making inquisitions! However, having character encoding support might allow typing in Spanish, if you want to. And then maybe you can even make card game related to Spanish Inquisition, too, if you want to.
21:33:23 <coppro> you should have UTF-8, no question
21:35:07 -!- pikhq_ has joined.
21:35:23 <zzo38> coppro: Yes, you are right about that. It is my plan for the character encoding mode to support UTF-8, although the mappings must still be specified in your input files. I can make it parse UTF-8 into numbers, but I am not going to include all sorts of complicated Unicode tables in my program. Those things have to be done in the input files.
21:36:15 -!- pikhq has quit (Ping timeout: 258 seconds).
21:37:23 <Vorpal> zzo38, what about an SNES emulator?
21:37:53 <zzo38> Vorpal: Doesn't need it.
21:38:00 <Vorpal> zzo38, but yeah just use UTF-8 for encoding. Nothing else needs to be supported really
21:38:18 <Vorpal> zzo38, anyway why not TrueType support. What sort of fonts do you currently support?
21:38:38 <zzo38> Actually, just single-byte and UTF-8; that's all. (Anything else can be converted using an external program)
21:39:05 <Vorpal> zzo38, for single byte surely just handling at UTF-8 will be enough. If it is ascii only that is
21:39:05 <zzo38> Vorpal: The font formats currently supported is TFM/GF only. Other formats can be converted into TFM/GF using FreeType or something like that.
21:39:28 <Vorpal> I don't know what either of these are
21:39:57 <Vorpal> zzo38, anyway don't you render to TeX in it? In which case surely you could support anything tex can handle. Which for xetex includes Truetype
21:39:59 <zzo38> TFM is a format for font metrics data (the glyphs are not included), and GF is a bitmap font format.
21:41:00 <zzo38> Vorpal: The first design did render to TeX in it, and you still can create arbitrary output files (which can be rendered using TeX), although now I am putting it its own internal typesetting and image manipulation so that the program can work by itself.
21:41:13 <Vorpal> zzo38, why, why not reuse tex
21:41:18 <Vorpal> the result will likely look better
21:41:40 <zzo38> I am using similar algorithms to TeX (except with greater precision)!
21:41:43 <Vorpal> zzo38, anyway if it doesn't use TeX any more, surely you should remove TeX from the name of it?
21:44:06 <zzo38> It is still based on TeX and still can use TeX; it is just that it includes its own stuff now.
21:44:48 <zzo38> Of course it isn't TeX, it is a different program. And I also just don't want to change the name.
21:45:59 <zzo38> However it is based on TeX and still supporting TeX.
21:46:29 <zzo38> (Although you should be able to create any file using the features for creating arbitrary output files)
21:54:44 -!- atrapado has quit (Quit: FIN).
21:56:05 * Vorpal fetches the code for lifthrasiir's esotope-bfc
21:56:48 <zzo38> (Also, if you do use TeX externally, it has to then convert DVI to PNG format, and not only does XeTeX not output DVI, but the GF files are still needed in order to do the conversion.)
22:02:15 <Vorpal> zzo38, no need to go through dvi. Just go do pdf with pdftex. Then print those out
22:03:58 -!- TeruFSX has quit (Read error: Connection reset by peer).
22:04:43 <Vorpal> lifthrasiir, hm -OO to python makes esotope-bfc on lostking take 1:20 instead of 0:59 for me
22:04:54 <Vorpal> where is elliott when you need him
22:05:51 <Vorpal> even my program would have optimised that heh
22:07:20 <zzo38> Vorpal: Yes, another way of using the program, also includes making a TeX file output and then printing with pdfTeX. There are many ways to do these kind of things.
22:07:22 <Vorpal> well that is a really weird loop
22:07:39 <Vorpal> lets see, p[16] will always end up at 1 at the end I think
22:07:53 <Vorpal> yes my program would have constant folded that I think
22:14:37 -!- iconmaster has joined.
22:15:54 -!- Slereah has quit (Ping timeout: 248 seconds).
22:32:55 -!- pikhq has joined.
22:35:15 -!- pikhq_ has quit (Ping timeout: 240 seconds).
22:41:23 -!- pikhq has quit (Ping timeout: 244 seconds).
22:41:27 -!- pikhq_ has joined.
22:41:38 -!- MigoMipo has quit (Read error: Connection reset by peer).
22:42:10 -!- TOGoS has left.
23:15:45 -!- Phantom_Hoover has quit (Quit: Leaving).
23:20:07 <zzo38> How does this work? $-*=/o/?print$-,$/:($-+=/i/-/d/||$-*~-$-)!~56for<>
23:22:43 <pikhq_> Apparently, via myndzi.
23:23:12 <zzo38> What does !~56 near the end do in Perl?
23:28:24 <zzo38> I didn't make cheating one in AWK, I made the shorter one like this: sub(/o/,x=x*(x>0&&x-256)*x^/s/+/i/-/d/) as opposed to the non-cheating one which is one byte longer and like that: {x+=/i/-/d/;o=/o/;$0=x*=(x%16>0)*x^/s/}o
23:32:53 <zzo38> Oops! One reason why adam's Perl code is too long is because there is a line break at the end.
23:33:16 -!- pikhq has joined.
23:35:52 -!- pikhq_ has quit (Ping timeout: 260 seconds).
23:43:43 -!- zzo38 has quit (Quit: YES CARRIER).
23:46:59 -!- micahjohnston has changed nick to no_one.
23:47:03 -!- no_one has changed nick to no-one.
23:47:10 -!- no-one has changed nick to micahjohnston.
00:00:18 -!- oerjan has joined.
00:00:27 <Lymia> {)}:i{.!!-}:d{.*.256=!*}:s{.p}:o](0\~@
00:00:30 <Lymia> And I thought Perl was bad.
00:03:06 -!- FireFly has quit (Quit: swatted to death).
00:04:01 <variable> So, I want to work on a basic Bayesian filter type program, just to learn the basics of creating one. My goal is to separate between English and Non-English with text that is in Arabic letters. Perhaps also to have multiple languages, how could I start? I was reading some articles I found on Google but none really told me how to begin
00:07:59 * pikhq is willing to bet that this compiler is just too stupid for its own good.
00:12:23 <oerjan> <ZOMGMODULES> if i wanted to scare people, i would do that. i would also pick a nick like "Guest17101"
00:12:35 <oerjan> <ZOMGMODULES> at any rate, I see cpressey [...]
00:12:45 <oerjan> and then pretend to have MPD
00:14:59 <oerjan> i'd imagine counting the occurrences of the 100 most common words in english would go a long way.
00:15:31 <oerjan> although more information might discern shorter texts, maybe
00:16:24 <oerjan> hm idea: design sentences in a non-english language where every word is actually a legal english word
00:17:10 <oerjan> but not actually used as one (i.e. not a transparent borrowing)
00:19:20 <oerjan> hm doing this in norwegian is not as easy as i thought
00:19:44 <oerjan> have to avoid the endings with -er. or maybe...
00:20:41 <Lymia> oerjan, your challenge is to do that with Japanese.
00:21:09 <olsner> hur säger man lycka till på norska nu då?
00:21:54 <oerjan> obviously the reason that won't work is that all japanese sentences contain transparent english borrowings.
00:21:58 <olsner> how disappointingly obvious
00:22:36 <Lymia> oerjan, find one valid Japanese word that is also an valid English word (spelling included)
00:22:48 <olsner> it's just swedish with a different orthology
00:23:02 <oerjan> Lymia: ok there _might_ be another reason then :P
00:23:20 <olsner> I'm so going to have to rewatch this movie sober later
00:23:39 <oerjan> pikhq: you don't know a japanese character which accidentally looks like an english word, do you?
00:24:00 -!- Vorpal has quit (Ping timeout: 250 seconds).
00:25:05 <oerjan> well if iiiiz was an english word and you had bad handwriting...
00:26:17 <pikhq> Well, I do believe I've pinpointed the source of my woes.
00:26:20 <pikhq> offset (Move x : Loop a y : xs) = Loop (a+x) (Move x : y ++ [Move (x*(-1))]) : (offset $ Move x : xs)
00:26:32 <pikhq> Can you see what's so painful about it?
00:26:35 <Lymia> The Japanese don't spell it like that.
00:26:41 <olsner> lol, the error in that is so blatantly obvious
00:27:02 <pikhq> olsner: And remember, I was finding the *fixed point* of that function.
00:27:32 <olsner> pikhq, doing it wrong as always :/
00:27:44 <Lymia> pikhq, please turn that into English.
00:28:00 <oerjan> pikhq: um i don't see why that should infinitely recurse at least
00:28:09 <pikhq> oerjan: That's only one line from the function.
00:28:15 <olsner> Lymia: ehm, fixed points are math aren't they?
00:28:30 <pikhq> oerjan: Aaand it's not infinitely recursing.
00:29:12 <pikhq> oerjan: It's just reconstructing a list is all.
00:29:16 <pikhq> oerjan: See the "++".
00:29:27 <Lymia> olsner, translate that function into math
00:29:39 <pikhq> That list is, incidentally, 2 megabytes before it hits my parser.
00:29:46 <olsner> Lymia: not my job, I'm just here telling you it could be
00:30:53 <pikhq> Suddenly, it executes in 5 seconds instead of 2 minutes.
00:30:56 <oerjan> i'm assuming this is brainfuck with relative positioning built into the representation
00:31:26 <pikhq> Yeah, relative positioning is built into my intermediate representation.
00:32:04 <oerjan> well that particular rule looks correct to me...
00:32:43 <oerjan> or maybe you don't want to have that second offset since you apply fixed point anyway
00:32:44 <pikhq> *Insanely slow*, also yes.
00:35:04 <oerjan> well that's the only thing i can think of
00:35:41 <pikhq> The point is not that this optimisation functioned incorrectly.
00:35:48 <pikhq> The point is that it took 2 minutes to execute.
00:36:03 <oerjan> <oerjan> or maybe you don't want to have that second offset since you apply fixed point anyway
00:36:07 <olsner> the point is blah-di-blah-di-blah?
00:36:30 <oerjan> i can see how that might give a blowup
00:36:41 <pikhq> oerjan: Uh, wouldn't that screw up the correctness of the function?
00:37:55 <oerjan> are you, or are you not, reapplying offset on the result of offset until a fixed point?
00:38:06 <oerjan> if so then it shouldn't
00:38:18 <pikhq> Oh, duh, I see what you're saying.
00:39:30 <pikhq> Does not seem to have helped, though.
00:39:50 <oerjan> i note you are not applying offset _inside_ the loop
00:40:11 <pikhq> I am, however, doing "y ++ [Move (x*(-1))]".
00:40:28 <oerjan> oh you mean the problem is ++ slowness?
00:41:12 <oerjan> that would surprise me, unless you put a whole lot of Moves there...
00:41:24 <oerjan> appending a single element isn't slow i think
00:41:38 <Lymia> I thought prepending was faster than appending.
00:41:45 <pikhq> ++ reconstructs the entire list and replaces the tail.
00:42:00 <oerjan> pikhq: it's a _little_ slower, but it shouldn't be _huge_
00:42:15 <pikhq> : is O(1). ++ is O(n). Any further questions?
00:42:50 <olsner> <pikhq> O(1) is O(n). Any further questions?
00:42:51 <oerjan> well you said the list was long
00:44:31 -!- pikhq_ has joined.
00:44:44 <pikhq_> 5 minutes and it's still running.
00:44:57 <pikhq_> And yes, it's LostKng.
00:45:10 <oerjan> i still don't understand why it should make an enormous difference on a list which you are traversing anyhow
00:46:33 -!- pikhq has quit (Ping timeout: 252 seconds).
00:47:09 <oerjan> pikhq_: have you used profiling?
00:47:46 <oerjan> (note: i never have, but i know ghc has a profiler)
00:51:47 <oerjan> another thing: that x*(-1) might be lazily evaluated, since this is too complicated for ghc to notice it is needed?
00:52:32 <pikhq_> The fields in the BF type are strict.
00:54:34 <oerjan> oh well. my hunch then is to give offset the initial and final offsets as arguments
00:55:11 <oerjan> and recurse immediately instead of building the whole list several times
00:57:46 <oerjan> argh that confused my brain
00:58:53 <oerjan> well maybe just the latter, then:
00:59:24 <oerjan> offset (Move x : Loop a y : xs) = Loop (a+x) (offset $ Move x : y ++ [Move (x*(-1))]) : (offset $ Move x : xs)
01:00:09 <oerjan> oh wait if you used my first idea it would split up:
01:01:33 <oerjan> offset m n (Move x : xs) = offset (m+x) (n-x) xs
01:03:27 <oerjan> offset m n (Loop a y : xs) = Loop (a+m) (offset m n y) : offset m n xs argh i'm not sure that's correct
01:03:54 <oerjan> clearly adding Move's makes things simpler to follow
01:04:45 <oerjan> offset m n xs should be equivalent to the old offset (Move m : xs ++ [Move n])
01:09:15 <oerjan> offset m n (Loop a y : xs) = Loop (a+m) (offset m (-m) y) : offset m n xs
01:09:51 <oerjan> offset m n (Move x : xs) = offset (m+x) n xs
01:10:52 <oerjan> hm maybe that actually _is_ clearer, since you get rid of all the Move's
01:11:29 <oerjan> m and n should probably be strict arguments
01:12:34 <oerjan> offset _ n [] = [Move n]
01:13:49 <olsner> hmm, this Move/Loop thing, I recognize it
01:14:17 <oerjan> i realize this last one is redundant at the program top level, but i think it's cleaner this way
01:14:38 <oerjan> olsner: well it's thinly disguised brainfuck
01:16:46 <oerjan> <ZOMGMODULES> also: even I knew about that magic roundabout, but it was via looking up the children's show
01:17:01 <oerjan> hey even _i_ knew about it. i think it was featured on wikipedia or something.
01:20:53 <oerjan> `addquote <fizzie> You make a fist, shake it at the sky, and shout "why, GNU, why?!" -- that is the standard reportig practice.
01:20:56 <HackEgo> 431) <fizzie> You make a fist, shake it at the sky, and shout "why, GNU, why?!" -- that is the standard reportig practice.
01:22:24 <oerjan> <pikhq> Autotup: on a scale of 1 to "Fuck you", how bad of an idea is it?
01:22:29 <pikhq_> oerjan: Hmm. So, rewriting offset to make it actually keep track of all the state, and do its recursion itself... I like that. I like that a lot.
01:22:32 * oerjan wants to see the rest of that scale
01:30:06 <pikhq_> And there is absolutely, positively no need to find the fixed point of that function. Yay.
01:34:57 <pikhq_> And now the assembler takes longer than my compiler.
01:36:01 <pikhq_> Significantly longer, in fact.
01:37:33 -!- iconmaster has quit (Quit: Pardon me, but I have to go die in NetHack again.).
01:40:29 <pikhq_> Shame it exhibits incorrect behavior.
01:45:49 -!- davve123 has joined.
01:47:34 -!- Wiz126 has joined.
01:51:27 -!- BeholdMyGlory has quit (Remote host closed the connection).
01:51:57 -!- ralc has quit (Quit: Leaving).
01:58:14 -!- Patashu has joined.
02:02:37 <oerjan> 14:52:38 <Vorpal> lets see, p[16] will always end up at 1 at the end I think
02:02:37 <oerjan> 14:52:42 <Vorpal> and p[10] at 0
02:02:45 <oerjan> unless p[10] was 0 to start with
02:05:03 -!- Aune has quit (Quit: Hath Deprated).
02:24:38 <pikhq_> So. I am very, very confused by the behavior of this.
02:26:00 <pikhq_> ... Never mind, it seems to have... Fixed itself?
02:28:05 -!- pikhq has joined.
02:28:16 <Lymia> http://andlinux.sourceforge.net/screenshots/screenshot.png
02:31:00 -!- pikhq_ has quit (Ping timeout: 255 seconds).
02:49:15 <pikhq> Now to just figure out why this is emitting superfluous "Set 0 0"s...
02:50:18 <oerjan> superfluous "Set 0 0"s that are superfluous
02:50:58 <pikhq> The thing is, the compiler is outputting Set 0 0 immediately after Set 0 0...
02:51:22 <pikhq> Technically not a *wrong* compilation, just a sign of something weird happening.
02:57:09 <Sgeo_> "32-bit versions only
02:57:10 <pikhq> Oh, I see. Minor issue in my DCE.
02:57:32 <Lymia> Sgeo_, I'd love to set up a.... freakish Frankenstein system once they get it working on 64-bit
02:58:30 <Lymia> How much rage do you expect from Windows fanboys/Linux zealots
02:58:42 <Lymia> Might as well as port it to Mac OS too, so the Mac fanboys can have their fun too.
03:09:54 -!- pikhq_ has joined.
03:10:13 <pikhq_> oerjan: Dead code eliminator.
03:11:29 -!- pikhq has quit (Ping timeout: 260 seconds).
03:17:45 <pikhq_> And the output's better, too!
03:17:57 <pikhq_> Towers of hanoi now runs in 0.195 seconds.
03:18:38 <pikhq_> And is 38756 bytes instead of 39432...
03:19:00 -!- lameNOT has joined.
03:20:20 <oerjan> wow a fox outside the window
03:21:10 <pikhq_> And "only" uses 56M to compile.
03:21:34 <pikhq_> Which I'd bet is most courtesy of the list structure being so big.
03:22:21 -!- lameNOT has changed nick to lament.
03:23:55 <oerjan> pikhq_: do you use the unbox-strict-fields option?
03:24:06 <pikhq_> oerjan: Not presently.
03:25:01 <pikhq_> That... Doesn't actually help much.
03:25:20 <oerjan> it only works for fixed size nonrecursive fields, obviously
03:26:35 <oerjan> hm i don't think it even works for Integer fields (since they are unbounded)
03:27:59 <oerjan> i suppose nothing will help much if you are doing optimizations which requires having the whole structure in memory at once
03:29:05 <oerjan> well, nothing based on lists
03:29:51 <pikhq_> I'm using Ints, anyways.
03:30:52 <oerjan> definitely should work for those
03:33:05 <pikhq_> Welp, my code generator is using half the time now.
03:37:23 <pikhq_> Thanks, oerjan, for the order-of-magnitude increase.
03:39:34 <pikhq_> Perhaps I should swap State for ST in the code gen...
03:41:04 <pikhq_> http://sprunge.us/ZCaP Anyways, bam, there it is.
03:47:16 <oerjan> should there even be any consecutive Move's left after the offset pass...
03:47:49 <pikhq_> You'll note that I do not take the fixed point of the optimisations anymore.
03:59:16 <Lymia> http://www.tuxradar.com/files/ubuntu_vs_7-3.png
03:59:25 <Lymia> Wtf does Windows use all that space for?
04:02:10 <pikhq_> ... My root filesystem is 6.3G.
04:02:35 <pikhq_> *I have a freaking full build system there*.
04:05:32 <Lymia> Does Windows use a DVD or CD?
04:06:04 <Lymia> How the hell do you expand that DVD to such a huge amount of space?
04:06:27 <pikhq_> A lot of the stuff on there probably compresses well, I suppose.
04:06:44 <Lymia> Is the problem due to the different system architectures, or what?
04:06:50 <pikhq_> They should also compare with a full install of Debian. :P
04:07:04 <Lymia> How large is that on average?
04:07:14 <Lymia> Also, I'm curious.
04:07:24 <pikhq_> A *full* install of Debian? Let me put it this way: it comes on 2 Bluray discs.
04:07:24 <Lymia> Is a default Windows installation, or Damn Small Linux more featureful?
04:08:36 <pikhq_> I'm pretty sure DSL is more featureful.
04:09:38 <pikhq_> Though perhaps you should look at Puppy.
04:09:44 <pikhq_> As it's still maintained...
04:09:55 <pikhq_> *Also* more featureful, BTW.
04:40:50 <lambdabot> Missing argument. Check @help <vote-cmd> for info.
04:42:23 <lifthrasiir> @note Vorpal esotope-bfc does not calculate the fixed point of optimization passes due to the performance, so some cases might be missed by the optimization pass (at the first time).
04:42:54 <lifthrasiir> @tell Vorpal esotope-bfc does not calculate the fixed point of optimization passes due to the performance, so some cases might be missed by the optimization pass (at the first time).
04:43:15 <lifthrasiir> so lambdabot will tell him right after he joins again?
04:44:04 -!- monqy_ has joined.
04:44:18 -!- monqy has quit (Disconnected by services).
04:44:27 -!- monqy_ has changed nick to monqy.
04:56:38 -!- hagb4rd has joined.
05:01:12 -!- pikhq has joined.
05:01:18 -!- pikhq_ has quit (Ping timeout: 255 seconds).
05:10:11 -!- augur has joined.
05:51:00 -!- myndzi has quit (Ping timeout: 240 seconds).
05:51:23 -!- myndzi has joined.
05:54:40 -!- monqy_ has joined.
05:55:34 -!- monqy has quit (Disconnected by services).
05:55:38 -!- monqy_ has changed nick to monqy.
06:26:30 <pikhq> lifthrasiir: Say, you're Korean, aren't you?
06:26:40 <pikhq> lifthrasiir: What're your thoughts on fan death?
06:27:03 <pikhq> (I have no fucking clue what that is in Korean)
06:28:42 <Lymia> What would happen in your average programming class if you submitted obfuscated or golfed code?
06:28:58 <pikhq> https://secure.wikimedia.org/wikipedia/ko/wiki/%EC%84%A0%ED%92%8D%EA%B8%B0_%EC%82%AC%EB%A7%9D_%EC%82%AC%EA%B3%A0 This is apparently the Wikipedia page...
06:29:07 <Patashu> I think your lecturer would give you the eye brow
06:29:12 <Patashu> Unless he's the kind of person who used to do it
06:29:36 <pikhq> And the title is entirely sensible with the hanja. 扇風機死亡事故. See, entirely sensible.
06:39:50 <Sgeo_> There is a moth in my room :(
06:41:31 <oerjan> i have this trick involving an empty glass and a sheet of paper
06:41:48 <Sgeo_> Damn thing keeps touching me
06:42:00 <oerjan> um i practice a catch and release policy _most_ of the time
06:42:41 <oerjan> well i guess it needs to settle down for a moment before you can do it
06:43:13 <Sgeo_> I'm going to just try to go to sleep, I think
06:43:30 <oerjan> (ants get flushed down, after i got the impression they learn to come back - and bring friends)
06:43:59 <Sgeo_> Also, the only light in my room is the computer
06:44:18 <Sgeo_> I think it left my room
06:44:36 <oerjan> i thought it was unhealthy to use a computer screen without ambient light...
06:45:08 <Sgeo_> Can I touch the thing with gloved hands?
06:45:27 <oerjan> well if you're going to kill it anyhow...
06:45:40 <Sgeo_> I don't care if it dies or not
06:45:46 <oerjan> i've never heard that moths are particularly poisonous
06:45:57 <oerjan> but who knows what exists in other countries
06:45:59 -!- hagb4rd has quit (Quit: hagb4rd).
06:46:38 <pikhq> oerjan: It's not a fear of being poisonous, just a common overreaction to insects.
06:46:55 <oerjan> (we don't even have any dangerous spiders in norway iafaik)
06:47:30 <pikhq> There are certainly dangerous insects in the US, but not fucking moths.
06:47:58 <oerjan> we had this spider having babies in the bathroom one year, and my housemate (my landlady had rented to a girl this year) freaked out
06:48:14 <oerjan> i just collected them all with a clotheshanger
06:49:06 <Sgeo_> I'm just going to try to go to sleep
06:49:58 <oerjan> although i don't care much about most insects, you don't have to touch them with the glass and paper method
06:52:07 <oerjan> (1) take an empty glass and a piece of paper (2) catch the bug between the glass and some surface (3) slide the paper between the glass and surface (4) remove from surface carefully not letting it escape (5) do whatever you want
06:52:51 <Sgeo_> I'm just going to go to sleep, I think
06:53:37 <Sgeo_> GET AWAY FROM MY COMPUTER
06:55:46 <Sgeo_> I'm afraid if I close my computer I'll get moth blood on it
06:56:25 <oerjan> you can wipe that off, i'm sure
06:57:16 * oerjan feels like a pot calling a kettle black in the rare spot where the pot isn't
06:58:36 <oerjan> Sgeo_: you are freaking out over a practical matter. just like i do all the time. but not with one i have trouble with.
07:01:25 <Sgeo_> If I leave my door open and the lights in my room off and the light in the hall on, will it fly out?
07:02:05 <oerjan> i've tried that before, with mixed results
07:04:27 -!- shachaf has quit (Ping timeout: 248 seconds).
07:13:02 -!- shachaf has joined.
07:14:24 <Sgeo_> Yet again, my battery isn't charging despite the laptop being plugged in
07:17:35 -!- augur has quit (Read error: Connection reset by peer).
07:20:15 -!- augur has joined.
07:26:57 -!- Sgeo has joined.
07:27:13 -!- Sgeo_ has quit (Ping timeout: 246 seconds).
07:33:58 -!- adayleryan has joined.
07:38:08 -!- zzo38 has joined.
07:42:40 -!- adayleryan has left ("Leaving").
07:52:12 -!- cheater__ has changed nick to retaehc.
07:58:08 <Sgeo> The damn thing attacked my mouth
08:00:06 <Sgeo> oerjan, I think I injured it but not killed it
08:00:19 <Sgeo> It's on the floor pathetically. Should I kill it, would that be merciful?
08:00:44 <pikhq> Your moral dillemae amuse me.
08:00:56 <pikhq> Almost as much as unusual plurals do.
08:01:17 -!- Vorpal has joined.
08:18:51 -!- monqy has quit (Quit: hello).
08:24:23 -!- Lymia has quit (Remote host closed the connection).
08:27:27 -!- retaehc has quit (Ping timeout: 240 seconds).
08:39:27 -!- lament has quit (Ping timeout: 240 seconds).
08:42:06 * oerjan guesses it's too late for mercy now
08:48:32 -!- Phantom_Hoover has joined.
08:49:31 <Sgeo> It got under something and I can't reach it now
08:50:43 -!- zzo38 has quit (Remote host closed the connection).
08:56:23 <Sgeo> How easy/difficult would it be to parse code of a language into an AST in Javascript?
08:56:51 <Sgeo> Meh, guess I should just try it
09:12:13 -!- oerjan has quit (Quit: leaving).
09:18:56 <Sgeo> I am not a group of people
09:19:09 <Sgeo> I guess I should figure out what tokenizing is
09:22:54 -!- MigoMipo has joined.
09:27:24 -!- retaehc has joined.
09:31:48 -!- augur has quit (Remote host closed the connection).
09:44:42 -!- retaehc has changed nick to cheater_.
09:45:41 -!- cheater_ has changed nick to retaehc.
09:51:20 -!- augur has joined.
09:58:47 -!- Slereah has joined.
09:59:08 <lambdabot> Vorpal: You have 1 new message. '/msg lambdabot @messages' to read it.
09:59:59 <Vorpal> lifthrasiir, ah okay, my program did go for fixed point. And yet it was faster than your. Heh.
10:00:07 <Vorpal> (your program did some things better)
10:00:44 <Vorpal> weird, make is removing generated files .c at the end of make all. Why
10:00:49 <Vorpal> there is nothing in there to do that
10:01:23 <Vorpal> $(CYTHON) $(CYTHONFLAGS) -a $^
10:01:23 <Vorpal> $(CC) -fpic $(CFLAGS) -I$(PYINCLUDES) -L$(PYLIBPATH) $(LDFLAGS) --shared -o $@ $^ $(PYLIB)
10:01:27 <Vorpal> I have those two rules
10:01:38 <Vorpal> yet it removes the .c at the end. WHY
10:02:10 <Vorpal> pikhq, there? Maybe you can help with this.
10:03:22 <Vorpal> http://www.gnu.org/s/hello/manual/make/Chained-Rules.html
10:25:44 -!- FireFly has joined.
10:40:34 -!- CakeProphet has quit (Quit: leaving).
10:41:39 -!- CakeProphet has joined.
10:42:04 -!- Vorpal has quit (Read error: Operation timed out).
10:42:51 -!- Vorpal has joined.
10:44:22 -!- CakeProphet has quit (Client Quit).
10:44:42 -!- CakeProphet has joined.
10:46:19 -!- CakeProphet has quit (Client Quit).
10:49:15 -!- CakeProphet has joined.
10:49:17 -!- CakeProphet has quit (Changing host).
10:49:17 -!- CakeProphet has joined.
10:49:26 <EgoBot> 61 +++++++++++++[>+>+++++++++>++++++++><<<<-]>>-.>---.<-.+.<---. [308]
10:51:08 -!- CakeProphet has quit (Client Quit).
10:51:35 -!- CakeProphet has joined.
10:54:00 -!- CakeProphet has quit (Client Quit).
10:54:24 -!- CakeProphet has joined.
10:56:10 <Sgeo> Lists in LSL are immutable. I am going to cry.
10:56:33 <Vorpal> Sgeo, what is LSL in this context
10:56:40 <Sgeo> Linden Scripting Language
10:56:43 <CakeProphet> Sgeo: time to implement a state monad, of course.
10:58:29 <Vorpal> Sgeo, never heard of that
11:05:48 <Vorpal> lifthrasiir, interesting, in esotope-bfc it isn't safe to run all the optimiser passes more than once. Not sure which ones mess up here yet.
11:09:02 <Sgeo> Vorpal, the language used in Second Life
11:09:17 <Sgeo> CakeProphet, is that even possible in a language without first-class functions?
11:09:54 <CakeProphet> I don't think so. There'd be no way to do bind.
11:10:15 <CakeProphet> unless you can eval strings, or have some other method to treat code as data.
11:10:47 <Vorpal> CakeProphet, wouldn't eval be treating code as data rather than data as code?
11:10:56 <Vorpal> the other way around I meant
11:11:22 <CakeProphet> can go both ways depending on what you mean.
11:11:57 <Vorpal> CakeProphet, for me it seems that eval treat data (a string for example) as code (by executing it)
11:12:05 <CakeProphet> I was thinking of the string as the code being stored as data. But yes, it's also data as code in that the string is data that is being re-interpreted as code.
11:12:16 <Patashu> but if you can treat data as code, you can go the other way around by making the bulk of the code your data
11:13:44 <CakeProphet> actually bind would look pretty nice in Perl.
11:14:54 <CakeProphet> sub bind(&$) { my ($codeblock, $monad) = @_; ... #monad-specific implementation code goes here }
11:15:38 -!- BeholdMyGlory has joined.
11:16:32 <CakeProphet> though it might be better to swap the arguments of bind since the code block will generally be larger in size than the monad argument.
11:18:35 <CakeProphet> then you could pass a coderef or a literal anonymous block.
11:20:35 <Vorpal> CakeProphet, check CPAN, if there is no monad library for perl yet, make one
11:21:58 -!- NihilistDandy has joined.
11:24:22 <Vorpal> CakeProphet, what about functors?
11:25:53 <CakeProphet> well Perl doesn't really have anything like typeclasses, I doubt I could make a Monad module since you'd have to implement the code differently for each monad.
11:26:43 <Vorpal> CakeProphet, hm. Surely you can do this somehow with perl. I mean, can't you execute pretty much anything at parse time
11:26:51 <Vorpal> and thus do some sort of magic transform on the code
11:27:01 <Vorpal> I seem to remember some ACME:: modules do that
11:27:18 <Vorpal> CakeProphet, so I bet you can fake typeclasses in perl even
11:28:11 <CakeProphet> well it's not like there's a type system or anything...
11:29:06 <Vorpal> CakeProphet, hm what about untyped monads...
11:29:36 <CakeProphet> well it would work like bind/return but without typechecking, basically.
11:29:56 <Vorpal> CakeProphet, sounds good enough for perl
11:30:14 <CakeProphet> and yeah, I do believe you can apply Perl to Perl code before compilation phase.
11:30:23 <Vorpal> CakeProphet, now I feel like I want do do monads in C, probably using some sort of macros to type it
11:30:39 <CakeProphet> at least with Perl there would be some nice syntax.
11:31:30 <Vorpal> CakeProphet, saw pikhq's C library with closures? Using lots of preprocessor + some GNU extensions
11:31:38 <Vorpal> hm did he do continuations as well? I don't remember
11:31:39 <CakeProphet> I've seen examples that remove the need for semicolons in perl and just append non-empty lines with semicolons via regex.
11:31:53 <Vorpal> I don't have the file for it here I think
11:31:58 <Vorpal> ask pikhq when he is around
11:33:30 <CakeProphet> I guess a Monad module for Perl would just be a class that you could inherit from, that would standardize the names and overload some operators
11:34:25 <CakeProphet> ...I wonder, if you can overload operators and still do the anonymous {} notation that you can get if use & in the subroutine prototype.
11:35:16 <Vorpal> try it? I have no idea, I'm not very good at perl.
11:35:29 <CakeProphet> no I think it has to be the original sub by its original name for the parser to know what to do.
11:36:45 <CakeProphet> to overload operators you have to do something like: use overload ('>=' => \&bind, '+' => \&empty_bind);
11:38:33 -!- wareya_ has joined.
11:38:54 <CakeProphet> but making a do syntax for Perl sounds like a fun time with regex.
11:40:20 <CakeProphet> turning a linear list of program lines into a single line of nested binds? I can't wait.
11:41:05 <CakeProphet> and it's Perl so I'm not allowed to use anything other than regex to do that.
11:41:55 -!- wareya has quit (Ping timeout: 260 seconds).
11:45:31 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
12:03:15 -!- BeholdMyGlory has quit (Remote host closed the connection).
12:03:31 <Sgeo> Good idea/bad idea: Attempting to compile some code by hand without knowing what the compiler looks like exactly, just a vague idea
12:03:46 <Sgeo> I want to get a feel for how it should work
12:16:15 <Sgeo> DANGIT I DON'T WANNA WRITE MY OWN GARBAGE COLLECTION
12:19:03 <Sgeo> Um, I'm not sure if I need GC... although the fact that I'm wondering that makes me rather nervous about my semantics
12:20:26 <Sgeo> Oh, I figured out why. There is no heap.
12:20:31 <Sgeo> How worried should I be about this
12:28:18 <Sgeo> Oh look, there are mutable structures in LSL. But they can only hold floats
12:40:09 <Sgeo> If I detect that call/cc is not used, I can skip the CPS transform!
12:40:57 <Sgeo> (inb4 halting) By "not used", I mean not mentioned in the source code
12:52:31 -!- malorie has joined.
13:09:44 -!- pikhq_ has joined.
13:11:28 -!- pikhq has quit (Ping timeout: 244 seconds).
13:47:52 -!- oerjan has joined.
13:54:15 <oerjan> <CakeProphet> well Perl doesn't really have anything like typeclasses, I doubt I could make a Monad module since you'd have to implement the code differently for each monad.
13:54:50 <oerjan> you might use the scala (iirc) method of letting monad elements be objects of a class that implements bind as a method for its first argument
13:55:07 <oerjan> with a different class for each monad, naturally
13:56:09 -!- NihilistDandy has quit (Quit: *yawn* Breakfast.).
13:56:30 <oerjan> return might be a static method of the class then
13:58:44 <oerjan> oh hm you also need a generic return for use in code for generic monads
14:06:54 -!- copumpkin has quit (Ping timeout: 250 seconds).
14:07:21 -!- copumpkin has joined.
14:32:32 <Sgeo> Expanding lists means the old location of the list may get left behind, but I can make a list of free spaces and have new variable allocations check that first
14:40:00 <Vorpal> in python, how do you make a one element tuple now again
14:40:18 <Vorpal> oerjan, hm worth a try
14:40:43 <Vorpal> oerjan, seems so, stupid syntax but meh
14:49:27 <Vorpal> hm how should this expression in python be read: SetMemory(k,v) for k,v in subst.items() if v != Expr[k] ? As if ...: for ...: yeild SetMemory... Or as for ...: if ...: yeild SetMemory... ?
14:49:45 <Vorpal> oerjan, since I now assume you are a python expert I ping you
14:50:13 <Vorpal> I would assume the latter interpretation
14:50:29 <oerjan> i'm not, but isn't that python's comprehension syntax?
14:50:49 <Vorpal> oerjan, I think it is a generator, rather than a comprehension.
14:51:03 <Vorpal> yes iirc python makes a difference between them internally
14:51:10 <Vorpal> oerjan, but the point is, where should the if go
14:51:18 <oerjan> well they're just different monads probably :D
14:51:31 <Vorpal> oerjan, is the if like a filter?
14:51:33 <fizzie> It's iffing for each list element separately.
14:51:41 <fizzie> So it is like a filter, yes.
14:52:43 <Vorpal> lifthrasiir, btw, I managed to reduce time from 59 to 35 seconds with cython + a few hours work. However cython doesn't do metaclass stuff, nor multiple inheritance. So large parts of esotope-bfc can't be converted without some significant rewriting
14:53:05 <fizzie> >>> list(x for x in xrange(10) if x%2)
14:53:16 <Vorpal> lifthrasiir, mostly the processing heavy parts that can't be converted. So if you rewrote them I'm sure you would get a significant speedup
14:53:57 <oerjan> um if that is _not_ python's comprehension syntax, what does that look like then
14:54:20 <fizzie> [x for x in ...] would be a list comprehension.
14:54:32 <Vorpal> oerjan, the [] makes the difference
14:54:36 <fizzie> While the earlier one passes a generator to the list constructor.
14:55:27 <fizzie> The if-filter syntax is I think a bit confusing, since you have there references to the x defined in "for x" coming from both before and after it.
14:55:48 <Vorpal> fizzie, still better than x if cond else z :P
14:56:11 <oerjan> fizzie: well it's pretty similar to haskell's list comprehensions in structure
14:56:37 <oerjan> > [x | x <- [1..10], odd x]
14:57:15 <oerjan> just trying to be less mathematically obfuscated i guess
14:57:23 <fizzie> The ternary expression is quite uncomfortable-to-me too, yes.
14:59:17 <fizzie> At least the "else"'s not optional there; it would be quite confusing if both "x for x in y if f(x)" and "x if f(x) for x in y" were allowed, with the difference that the second one would yield, say, None for the non-matching elements instead of omitting them.
15:00:11 <Vorpal> fizzie, uncomfortable-to-me <-- why the hypens?
15:02:12 <oklopol> to specify it's not also uncomfortable to *him* (among other people) but that it's is also *uncomfortable* to him (among other things)
15:02:54 <oklopol> which makes sense because no one would ever have guessed that's what he meant.
15:03:09 <fizzie> Yes. Well, actually what I *wanted* to convey was that *it* (among other things) is uncomfortable.
15:04:52 <fizzie> Basically to group the "too" with the uncomfortableness instead of being "me too".
15:05:17 <fizzie> Or the thing. Or something.
15:05:56 <Vorpal> <fizzie> Yes. Well, actually what I *wanted* to convey was that *it* (among other things) is uncomfortable. <-- hm, to me it was just confusing. Maybe you need to be a Finn to get that...
15:06:29 <oerjan> they probably have their own suffix for it
15:06:50 <fizzie> You may need to be me to get it, and I'm not sure even that helps, since after all this talk I've forgotten what it was I was thinking.
15:10:33 <fizzie> And we do have a "-kin" adjective/noun suffix that does a bit of an "also, too" thing. "Pöytäkin oli puhdas" = "also the table (among other objects) was clean", "pöytä oli puhdaskin" = "the table was clean too (among other properties of the table)".
15:10:47 <fizzie> Where pöytä = table, puhdas = clean.
15:11:02 <oerjan> oklopol: it's the case for nouns which have been completely lost
15:11:59 <oklopol> fizzie: you an use it with verbs too
15:12:09 <fizzie> Not to be confused with "pöytä olikin puhdas", which would be basically "the table was clean, and it surprised me".
15:12:40 <oklopol> yeah that, but what about something like "hn si minut, ja ampuikin viel"
15:12:46 <oklopol> maybe that's surprisative too
15:13:36 <fizzie> "When attached to verbs, this meaning of this suffix is often hard to translate into English. In the most basic sense, it means "after all", as in an expression of a contadiction of expectations. These sentences are an example of this:
15:13:40 <fizzie> 1. Hän tulikin. (He came after all [I didn't expect it].)"
15:14:01 <fizzie> -- http://www.unilang.org/wiki/index.php/The_-kin/-kAAn_suffix
15:35:48 -!- BeholdMyGlory has joined.
15:41:32 -!- iconmaster has joined.
15:46:23 -!- oerjan has quit (Quit: Good night).
15:46:59 -!- Patashu has quit (Ping timeout: 244 seconds).
16:07:14 -!- Phantom_Hoover has joined.
16:07:20 -!- pikhq_ has quit (Ping timeout: 260 seconds).
16:08:04 <Sgeo> Phantom_Hoover, I try to reinvent the wheel while pondering my language
16:08:34 -!- pikhq has joined.
16:08:38 <Sgeo> (Probably. I suspect that every single difficulty I'm imagining has been encountered before and studied repeatedly to death)
16:16:23 <Phantom_Hoover> http://www.timesonline.co.uk/tol/news/weather/uk_and_roi/article1985663.ece
16:17:18 <Phantom_Hoover> Asimov's observation that the most emblematic victory of science over religion was when churches started using lightning rods comes to mind...
16:17:48 <Sgeo> Is it feasible to mix CPS with non-CPS?
16:18:04 <Sgeo> My trampoline should be able to handle tail-calls and non-tail-calls with grace
16:18:54 <Phantom_Hoover> Suggest you change your nick to something innocuous in case elliott comes in.
16:20:56 * Phantom_Hoover logreads, sees Sgeo's tribulations at the hands of a moth.
16:21:18 <Phantom_Hoover> 10:56:10: <Sgeo> Lists in LSL are immutable. I am going to cry.
16:22:08 <Sgeo> It's never been an issue before that somelist += [whatever] only reassigns what somelist contains.
16:30:56 -!- davve123 has left.
16:48:04 -!- ais523 has joined.
16:57:23 -!- quintopia has quit (Ping timeout: 258 seconds).
16:58:26 -!- quintopia has joined.
16:58:26 -!- quintopia has quit (Changing host).
16:58:26 -!- quintopia has joined.
16:59:34 <pikhq> Stop fucking waking me up every hour, people.
16:59:46 <pikhq> Just because *you* are awake does not mean that I am.
17:00:20 <pikhq> And the more you wake me up, the later it'll be until I will actually wake up.
17:02:08 <Vorpal> pikhq, you don't turn off sound on your computer or what?
17:02:37 <pikhq> Vorpal: No, I'm not ranting about you.
17:02:44 <pikhq> I'm ranting about the people I physically live with.
17:03:16 <pikhq> Just because you're up and at'em at 06:00 daily does not mean I am. Or can be.
17:03:44 <pikhq> Seriously, I have to use an alarm clock to be up before noon, and they're not helping.
17:04:30 <pikhq> And it's not like I'm up *that* late. It's just that I will tend towards consciousness at noon.
17:04:44 <pikhq> If that means 4 or 16 hours of sleep.
17:07:07 <ais523> my IRC client uses a visible bell
17:07:15 <ais523> so it's unlikely anyone would wake me by nickpinging me
17:08:33 <pikhq> My IRC client just highlights the window number in its activity bar.
17:08:40 <pikhq> Quite impressive for that to wake me
17:08:48 <pikhq> Especially with my monitor off.
17:10:37 -!- Phantom_Hoover has set topic: "Show me how it doos" — James Clerk Maxwell | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D.
17:16:53 <pikhq> Canada has a smaller population than Greater Tokyo.
17:18:55 <quintopia> the state of alabama has a population much much smaller than greater london; the state of alabama has slightly more land area than england.
17:22:11 -!- SimonRC has quit (Ping timeout: 252 seconds).
17:22:43 -!- SimonRC has joined.
17:23:37 -!- monqy has joined.
17:33:19 <lifthrasiir> <pikhq> lifthrasiir: What're your thoughts on fan death? --> i think it's too stupid to believe it.
17:35:08 <copumpkin> I've always found that hard to believe
17:35:20 <Vorpal> lifthrasiir, hi did you see my ping above?
17:35:34 <Phantom_Hoover> There are quotes on the WP article from very authoritative people who think it's true.
17:36:20 <Vorpal> <lifthrasiir> <pikhq> lifthrasiir: What're your thoughts on fan death? --> i think it's too stupid to believe it. <-- fan death? Is this the same thing as happened to my PSU recently or is it about a completely different sort of fans?
17:38:36 <Vorpal> err, what... that's stupid...
17:50:57 -!- lament has joined.
17:51:04 <pikhq> Vorpal: Yes, yes it is.
17:51:08 <pikhq> copumpkin: Yes, yes it is.
17:52:18 <Vorpal> pikhq, only way a fan can kill you would be if it was *very* cold already (why use fan then) or there was an electrical fault
17:55:41 <quintopia> lifthrasiir: i think fan death is a horrible way to lose a CPU. i think that's why AMD-provided fans are so loud: so you notice when it dies.
17:56:04 <quintopia> (yes, i know what you were talking about, i'm not a complete idiot)
17:59:47 -!- ais523_ has joined.
18:00:35 -!- Lymia has joined.
18:00:55 -!- ais523 has quit (Ping timeout: 250 seconds).
18:01:15 -!- ais523_ has changed nick to ais523.
18:01:18 <ais523> gah, the spambot is back
18:02:42 <ais523> also, I was trying to figure out where the spam had gone in Recent Changes, before I realised I habitually delete spam from Recent Changes in order to stop it getting cluttered
18:02:49 <ais523> (you can use the "show bots" link if you want to see it)
18:20:11 <Vorpal> hm a = --b; in c would be the same as a = b; b = b - 1; but arguably it should instead be read as a = -(-b);
18:20:16 <Vorpal> I mean, that would be more logical
18:20:44 <Vorpal> err, switch the operations
18:20:50 <Vorpal> in the middle bit of code
18:27:15 -!- ralc has joined.
18:28:45 <ais523> Vorpal: -- is one token, - - is two
18:28:57 <ais523> just like && is different from & &
18:29:08 <Vorpal> ais523, yes but logically it should work like this
18:29:10 <ais523> or in C++, <a, B<c>> is different from <a, B<c> >
18:29:14 <Vorpal> ais523, but & & would be a syntax error
18:29:29 <ais523> it's a semantic error, I think
18:29:39 <ais523> taking the address of an address is illegal, but not for syntactical reasons
18:29:47 <pikhq> ais523: In C++0x, <a, B<c>> is <a, B<c> >
18:29:53 <Vorpal> ais523, oh I read that as bitwise and :P
18:30:06 <Vorpal> ais523, as in int1 & & int2
18:31:33 -!- Sgeo has quit (Ping timeout: 260 seconds).
18:31:55 <ais523> pikhq: heh, they changed it?
18:32:12 <pikhq> Because nobody would *actually want* the alternate reading.
18:32:17 <ais523> is it a change to the tokenisation, or can the >> token close two angle bracket brackets now?
18:32:30 <pikhq> Change to the tokenisation.
18:32:37 <ais523> also, I can see very plausible reasons to put << in a template argument
18:32:48 <ais523> writing, say, 1<<5 rather than 32
18:32:57 <ais523> presumably, if you really want a rightshift you have to put it in parens?
18:34:25 <ais523> I suppose greater-than has the same issue
18:40:36 -!- variable has quit (Remote host closed the connection).
19:06:36 -!- lament has quit (Ping timeout: 252 seconds).
19:10:06 -!- copumpkin has quit (Ping timeout: 240 seconds).
19:10:32 -!- copumpkin has joined.
19:12:45 <pikhq> ... *Wow*. The domesticated silkmoth is completely and utterly incapable of surviving in the wild.
19:12:57 <pikhq> Its adult form can neither fly nor feed.
19:35:39 <ais523> and yet it's likely to survive as long as humans want silk
19:35:45 <ais523> so it's a sensible adaptation to its environment
19:37:01 <Phantom_Hoover> pikhq, inability to feed is not uncommon in adult insects.
19:38:54 <pikhq> Phantom_Hoover: Not ones which live long adult lives.
20:03:24 -!- monqy has quit (Quit: Lost terminal).
20:04:19 <Phantom_Hoover> What is it with Americans pronouncing solder "sodder"?
20:08:33 -!- monqy has joined.
20:17:02 <Vorpal> Phantom_Hoover, lödtenn.
20:17:36 <Vorpal> (or in case of the verb, löda)
20:24:05 <pikhq> Phantom_Hoover: We despise your English.
20:24:40 <Vorpal> pikhq, what is solder in Japanese?
20:24:52 <Vorpal> pikhq, (both the verb and the noun)
20:25:15 -!- elliott has joined.
20:25:29 <Vorpal> <Phantom_Hoover> Hmm, no elliott today. [...] * elliott (~elliott@unaffiliated/elliott) has joined #esoteric
20:26:27 <pikhq> Apparently, "hantà" (ハンダ、半田).
20:26:39 <Vorpal> pikhq, and for the verb?
20:27:32 <pikhq> hantàtuke (半田付け), apparently.
20:27:37 <elliott> <elliott> Phantom_Hoover: Invent me a geometry where I can have the curvature of the Earth because it's pretty, but still have an infinite world in every dimension.
20:27:37 <elliott> <Phantom_Hoover> You *saw* that 720° rotunda, yes?
20:27:37 <elliott> <elliott> I mean you have to make it geometrically coherent.
20:27:37 <elliott> <Phantom_Hoover> Ask oerjan.
20:27:49 <pikhq> Literally, "to apply solder".
20:27:56 <Phantom_Hoover> elliott, yes, but then I linked you to that IWC annotation.
20:28:31 <pikhq> Well, actually, it's a suru verb, so the verb would actually be "hantàtuke suru".
20:28:38 <Phantom_Hoover> Constant positive curvature necessitates a closed surface.
20:28:42 <Vorpal> pikhq, in Swedish it is the other way around in that the noun is a compound word including the verb.
20:29:09 <Vorpal> pikhq, literally the noun is "solder tin"
20:31:09 <pikhq> And 半田 literally means "half field". As in where you do agriculture.
20:31:18 <pikhq> I have no fucking *clue* of the etymology of that.
20:31:29 <Vorpal> pikhq, can't you find that by googling?
20:32:22 <Vorpal> pikhq, hm, maybe related to semi-conductors? ;)
20:32:32 <Vorpal> hm wait, that doesn't work well in English
20:32:51 <Vorpal> semi conductor = sv:halvledare = literally "half conductor"
20:34:11 <pikhq> Which is literally what "semiconductor" means...
20:34:37 <Vorpal> pikhq, wait is semi = half? I thought semi = partially?
20:34:46 <pikhq> semi more literally is "half".
20:35:24 <pikhq> Anyways, "semiconductor" in Japanese is pretty obviously a calque from the English...
20:35:34 <pikhq> 半導体. Literally "half conductor".
20:35:40 <Phantom_Hoover> I cannot bring myself to agree with Reddit on this one.
20:36:19 <pikhq> Phantom_Hoover: How so?
20:36:32 <Vorpal> Phantom_Hoover, that image seems familiar. Very much so.
20:37:04 <Phantom_Hoover> pikhq, because I think that there is genuine sense behind what is taught in English classes, but it suffers the same problem as mathematics.
20:37:31 <Phantom_Hoover> i.e. people think you can get the benefits of understanding things just by learning their outcomes.
20:37:32 <pikhq> Phantom_Hoover: The issue in *my* estimation is worse in English classes.
20:37:36 <elliott> Phantom_Hoover: Yes, clearly they should teach advanced literary criticism at school level. Wait.
20:37:44 <elliott> Wait, no. Literary criticism is retarded to.
20:38:32 <pikhq> Not only are the English classes heavily removed from any sensible pedagogy, they are *fucking lying* to students.
20:39:13 <Phantom_Hoover> They don't have the fact-checking that maths education is constrained by.
20:39:28 <pikhq> Literary criticism is not some highly essential bit of understanding literature, and the bog-standard essay *format* is mother-fucking pitiful and terrible style.
20:39:44 <pikhq> Indeed, that essay format is positively crippling.
20:43:33 <pikhq> AND WHY THE FUCK WOULD YOU EVEN ASK TO FIND THE SYMBOLISM IN HEMINGWAY'S WRITING, ANYWAYS.
20:43:43 <pikhq> THIS IS A MAN WHO SAID, AND I QUOTE, "Symbolism is shit."
20:43:52 <elliott> pikhq: the shit represents his love
20:43:59 <pikhq> elliott: For feces.
20:44:31 <Phantom_Hoover> The Higher exam, the only one I've done, /gives literally indication what texts you should use/.
20:44:55 <pikhq> ... It states... What?
20:45:05 <Phantom_Hoover> In theory you could literally make up a poem and write an essay on it.
20:45:45 <pikhq> Could you reread the line: < Phantom_Hoover> The Higher exam, the only one I've done, /gives literally indication what texts you should use/.
20:46:08 <pikhq> Thanks for curing my confusion.
20:46:43 <Phantom_Hoover> The critical essay section of the Higher English exam.
20:46:46 <Vorpal> Phantom_Hoover, so uh, does it have to be a novel or anything like that? Or could it be something like a newspaper?
20:46:48 <elliott> <Phantom_Hoover> In theory you could literally make up a poem and write an essay on it.
20:46:51 <elliott> I would write an essay about my essay.
20:46:53 <pikhq> No, I mean as in "has to be in English".
20:47:09 <elliott> "For a start, my essay is very self-referential."
20:47:19 <elliott> "The main point of my essay is that it never states a main point."
20:47:27 <Phantom_Hoover> pikhq, as in it has to be in English... wait, you might be allowed to use Gaelic as well.
20:47:55 <pikhq> Phantom_Hoover: There's at least three distinct languages that are called "English".
20:48:09 <Phantom_Hoover> "It was written in English" is I think the rule of thumb.
20:48:47 <pikhq> At a minimum, Old English, Middle English, and Modern English.
20:49:17 <Phantom_Hoover> Well, you'd get away with Shakespeare. Not sure about the Canterbury Tales.
20:49:36 <Vorpal> pikhq, are there sharp borders between these? Or did the change happen gradually?
20:49:49 <pikhq> Yes, Shakespeare is essentially writing the same damned language we are...
20:49:50 <Vorpal> I mean from an historical perspective
20:49:52 <elliott> pikhq: Sometimes your pedantry is really annoying :P
20:50:11 <pikhq> Vorpal: The borders are roughly 1 or 2 hundred years.
20:50:31 <Vorpal> pikhq, so gradual. So you can't say that "that exact date, it switched"
20:50:42 <pikhq> Well, no, you can't do that for any language ever.
20:51:20 <pikhq> There's even often gradual borders between contemporary languages...
20:53:54 -!- quintopia has quit (Ping timeout: 258 seconds).
20:54:30 -!- azaq23 has joined.
21:07:07 <elliott> "From 26th May 2011 websites in the UK need to ask for permission before they can set cookies not required for ‘essential’ means."
21:07:15 <elliott> ais523 is going to have a party
21:07:30 <ais523> elliott: it's actually very easy to do
21:07:36 <elliott> haha, google analytics is now illegal to use in the uk
21:07:42 <elliott> ais523: easy to do what, have a party?
21:07:45 -!- lament has joined.
21:07:49 <ais523> ask for permission before setting cookies
21:07:52 <ais523> just ask on your login form or whatever
21:08:13 <elliott> there's no way this is getting enforced anyway
21:08:14 <Phantom_Hoover> ais523, you realise cookies are far more widely-used than that?
21:08:20 <ais523> Phantom_Hoover: usefully?
21:08:50 <Vorpal> Phantom_Hoover, essential means would cover most things except click tracking I think
21:09:00 <Phantom_Hoover> ais523, given that you thought the web was one of porn, ads and spam I have no idea how you define 'useful'.
21:09:08 <elliott> Vorpal: google analytics doesn't do click-tracking AFAIK
21:09:12 <elliott> and is still apparently illegal now
21:09:27 <Vorpal> elliott, what does google analytics require cookies for then
21:09:47 <elliott> google analytics can do most of whta it does without a cookie, I think
21:10:05 <Vorpal> elliott, the only thing I can think of right now is, indeed, click tracking
21:10:21 <Vorpal> elliott, and I'm no fan of click tracking, so I would be happy to see that gone
21:10:33 <elliott> I would be fine with click tracking being illegal
21:10:33 <Vorpal> of course I doubt anyone will follow this law
21:10:38 <elliott> A blanket cookie law is stupid, though
21:10:46 <elliott> It's like patenting an implementation
21:11:03 <Vorpal> uh I don't quite see the similarity
21:11:16 <elliott> Vorpal: cookies are just a mechanism which can be used for tracking
21:11:24 <elliott> You want to ban tracking, not cookies
21:12:51 -!- Sgeo has joined.
21:12:54 <Vorpal> elliott, while I agree it is stupid I don't think there is any direct analogy to patents
21:13:07 <Vorpal> elliott, which one is that
21:13:21 <elliott> You can't patent methods/implementations, only general specifications.
21:13:30 <elliott> (Of course this isn't adhered to in practice, but it's the principle of the thing.)
21:13:41 <elliott> Cookies = implementation, tracking = general.
21:17:31 <Vorpal> how feasible would it be to try to optimise brainfuck algorithms that deals with several fields into one with a larger word size
21:17:54 <Vorpal> ending up with say *((short*)p)++
21:18:06 <Vorpal> for a 2-word addition algorithm
21:18:23 <Vorpal> well, increment in this case
21:18:23 <elliott> Sounds feasible but perhaps not very effective.
21:18:31 <Vorpal> elliott, you think it is too rarely used?
21:18:47 <elliott> No, I just think detecting the loops will be difficult.
21:18:50 <elliott> Unless you just hardcode it.
21:19:28 <Vorpal> elliott, anyway, I think lifthrasiir should implement that SSA thing in esotope-bfc (after porting it from slow python to something else)
21:19:50 <elliott> Porting it will be a microoptimisation.
21:20:00 <elliott> What it does is pretty inherently computationally intensive, isn't it?
21:20:07 <elliott> I mean he's doing it anyway but performance is a bad reason.
21:20:19 <elliott> And a few minutes on LostKng doesn't matter, LostKng is the biggest program and incredibly bad anyway.
21:20:24 <elliott> Since it can be size-optimised to hundreds of kbs easily.
21:20:55 <Vorpal> elliott, gcc generates 1.1 MB binary for it at -O0 from esotope-bfc. -O1 makes me swap trash
21:21:12 <elliott> Well that's LostKng's fault, not esotope's :P
21:21:18 <Vorpal> elliott, anyway, there is quite a lot of data shuffling
21:21:40 <elliott> 02:28:16: <Lymia> http://andlinux.sourceforge.net/screenshots/screenshot.png
21:21:40 <elliott> 02:28:18: <Lymia> Made of win.
21:21:40 <elliott> Nice, except for the Windows part.
21:21:59 <elliott> They should just make the rest of the system Linux too, and then uninstall KDE. Then it'd be made of win.
21:22:10 <elliott> Well, made of mediocre since it's still a sloppy Unix derivative. :p
21:22:24 <elliott> 02:57:32: <Lymia> Sgeo_, I'd love to set up a.... freakish Frankenstein system once they get it working on 64-bit
21:22:24 <elliott> 02:58:30: <Lymia> How much rage do you expect from Windows fanboys/Linux zealots
21:22:35 <elliott> There are Linux fanboys too. :p
21:22:35 <Vorpal> elliott, cython provides a speedup of about 2.3x. But then I haven't converted the most computationally heavy part (cond and expr) because they use metaclasses and cython can't handle it
21:22:43 <Vorpal> and I don't understand how he uses metaclasses
21:22:47 <elliott> I don't know of any Windows zealots, but they probably exist, just they'll be /really/ stupid.
21:23:04 <Vorpal> elliott, windows zealots? Look at gamers.
21:23:06 <elliott> Vorpal: That's a meagre optimisation if it takes a few minutes anyway.
21:23:34 <Vorpal> elliott, it goes from about 1 minute to slightly less than half a minute
21:24:02 <elliott> 03:59:16: <Lymia> http://www.tuxradar.com/files/ubuntu_vs_7-3.png
21:24:02 <elliott> 03:59:25: <Lymia> Wtf does Windows use all that space for?
21:24:02 <elliott> They should add OS X, then it'll be one full pole and a bunch of near-zeroes.
21:24:06 <Vorpal> elliott, and yes, doing away with the metaclasses and handling that bit would probably provide another 2x speedup
21:24:21 <elliott> (OK it only takes up about three times that of Vista and that's with iLife installed.)
21:24:26 <elliott> (Sixteen bit Vista, that is.)
21:24:37 <elliott> Vorpal: Now test it on any program but LostKng.
21:24:40 <Vorpal> elliott, they should add windows xp to that graph
21:25:39 <Vorpal> elliott, it provides less optimisation for anything but lostking. I mean for mandlebrot.bf it doesn't provide such a HUGE advantage compared to simply merging +++ and so on
21:25:53 <elliott> LostKng is irrelevant since it's fast enough with just about everything.
21:25:58 <elliott> Only the startup really changes.
21:26:26 <Vorpal> elliott, not for the bf interpreter I wrote in bash once :P
21:26:26 <elliott> It's incredibly badly coded, in elementary brainfuck terms ("can be optimised majorly with a simple bf->bf translation"), and not computationally intensive at all after it starts up.
21:26:30 <elliott> So it's really a terrible benchmark in every way. :p
21:27:08 <oklopol> what kind of bf -> bf trans
21:27:09 <Vorpal> elliott, BUT it is fun to play :P
21:27:31 <oklopol> yeah the minecraft of brainfuck
21:27:36 <elliott> oklopol: removing obvious dead code, basic constant/addition optimisation
21:27:36 <Vorpal> oklopol, there is some dead code. Not any major difference but there is some
21:28:19 <oklopol> removing dead code is optimization?
21:28:46 <Vorpal> elliott, http://www.tuxradar.com/files/ubuntu_vs_7-3.png <-- hm I have windows 7 / x86_64 around here. It uses 7.9 GB...
21:28:50 <oklopol> if dead code stuff you don't execute, aren't you just optimizing away a jump
21:28:59 <Vorpal> elliott, that is pro version, probably ultimate uses more
21:29:07 <Vorpal> but the graph doesn't say which version
21:29:08 <elliott> 08:56:23: <Sgeo> How easy/difficult would it be to parse code of a language into an AST in Javascript?
21:29:38 <Vorpal> I would say it is possible
21:29:52 <elliott> JS is just another programming language, you know.
21:30:04 <Vorpal> elliott, using js is a bad idea :P
21:30:10 <oklopol> and basic constant/addition optimization? how can you make that stuff faster within bf?
21:30:15 <Vorpal> unless it is Gregor doing it
21:30:26 <Vorpal> in which case the result is invariably awesome
21:30:35 <oklopol> it seems like the fastest code for making a constant is + times that constant
21:31:00 <elliott> oklopol: I really forget exactly what makes it tiny :P
21:31:06 <elliott> We're talking size optimisation, anyway
21:31:31 <oklopol> that changes everything ofc
21:32:18 <elliott> 12:40:09: <Sgeo> If I detect that call/cc is not used, I can skip the CPS transform!
21:32:25 <elliott> What a pointless waste of time, writing two compilers when one would do.
21:32:33 <oklopol> speed optimization within bf would probably be more about changing numbers to small-ary representation and reorganizing memory and stuff like that, seems hard to do anything useful locally
21:32:36 <Vorpal> elliott, I'd like a reasonable language on top of bf that made it non-painful to code for, but didn't produce stupidly large bf code as a result
21:32:37 <elliott> 14:32:32: <Sgeo> Expanding lists means the old location of the list may get left behind, but I can make a list of free spaces and have new variable allocations check that first
21:32:51 <Vorpal> elliott, oh that, link
21:32:58 <elliott> It's on nonlogic which evaporated.
21:33:05 <pikhq> The host went down ages ago, and I haven't bothered to find another.
21:33:13 <Vorpal> pikhq, can you give me a tarball
21:33:15 <elliott> Vorpal: It's still not "comfortable", all it has is macros, not functions, and you need to manage temporary variables (by creating them and passing them), but it's better than nothing.
21:33:22 <elliott> And you could easily make a "real" language out of it with macros.
21:33:31 <pikhq> What with it having been 4 years since I actually did stuff with it...
21:33:35 <Phantom_Hoover> Sgeo, now do you see why I told you to change your nick to something innocuous?
21:33:45 <pikhq> Vorpal: I really have no idea where to even upload a tarball to right now.
21:33:48 <Vorpal> elliott, I suggest m4 on top of brainfuck
21:33:52 <elliott> 14:50:49: <Vorpal> oerjan, I think it is a generator, rather than a comprehension.
21:33:56 <elliott> It's a comprehension which creates a generator.
21:34:00 <elliott> 14:49:27: <Vorpal> hm how should this expression in python be read: SetMemory(k,v) for k,v in subst.items() if v != Expr[k] ? As if ...: for ...: yeild SetMemory... Or as for ...: if ...: yeild SetMemory... ?
21:34:13 <elliott> pikhq: | uuencode | sprunge :-)
21:34:21 <elliott> Or there's the annoying-but-easy mediafire.com.
21:34:34 <Vorpal> elliott, uh that is a PITA to use yes
21:34:43 -!- variable has joined.
21:34:50 <elliott> You just click a link to download it. :p
21:34:56 <Vorpal> elliott, and wait iirc
21:35:10 <elliott> Mediafire might require JS, but it certainly doesn't require any waiting or captcha.
21:35:11 <Vorpal> elliott, oh mediafire is the one which never works for me
21:35:17 <elliott> Have you tried enabling JS.
21:35:20 <Vorpal> elliott, I have enabled js yes
21:35:31 <Vorpal> elliott, I tried enabling cookies too
21:35:32 <elliott> Maybe it uses Flash. Nah, doubt it. (It does to upload.)
21:35:42 <Vorpal> elliott, all I got was a static progressbar image
21:35:54 <Vorpal> elliott, well I won't do flash. Just no.
21:35:56 <elliott> There is no download progress-bar.
21:35:59 <elliott> You are thinking of another site.
21:36:28 <Vorpal> pikhq, what about dropbox?
21:36:29 <pikhq> Vorpal: http://sprunge.us/BQDV
21:36:39 <pikhq> wget -O- | uudecode
21:37:12 <Vorpal> $ sha512sum pebble-1.0.tar.xz
21:37:12 <Vorpal> 0ed0b0f52b195263e59941869f8a153776a01ae7f81be920c707a42ee5345f9909a333a36a08a48e2f6b1dc26823d03296bd61f376504872da4487f5332e6c16 pebble-1.0.tar.xz
21:37:15 <Vorpal> pikhq, can you verify it
21:37:25 <pikhq> 0ed0b0f52b195263e59941869f8a153776a01ae7f81be920c707a42ee5345f9909a333a36a08a48e2f6b1dc26823d03296bd61f376504872da4487f5332e6c16 pebble-1.0.tar.xz
21:37:34 <Vorpal> mmmm, yep looks correct
21:38:24 <elliott> Especially that last line.
21:38:31 <elliott> "Hmm, they could have sabotaged it by changing one digit of the hash..."
21:38:32 <Vorpal> elliott, what? dropbox?
21:38:45 <elliott> It was sprunge, not dropbox.
21:38:46 <Vorpal> elliott, I didn't say that
21:38:55 <Vorpal> elliott, no that I mentioned dropbox above
21:39:07 <elliott> Congratulations, you have not been coherent for a whole five lines.
21:39:52 <Vorpal> elliott, anyway what was wrong with verifying checksum?
21:40:03 <pikhq> Vorpal: PEBBLE, BTW, was quite specifically designed to let you write Brainfuck without stupidly retarded output.
21:40:27 <pikhq> Course, that's pretty easy when it is literally just a macro system.
21:40:34 <Vorpal> pikhq, I see I need to install tcl
21:40:45 <elliott> 17:56:04: <quintopia> (yes, i know what you were talking about, i'm not a complete idiot)
21:40:55 <elliott> Vorpal: I never pinged you.
21:41:22 <pikhq> Tcllib is another dependency of PEBBLE.
21:41:49 <pikhq> It is almost certainly in your package manager.
21:42:09 <elliott> 18:29:53: <Vorpal> ais523, oh I read that as bitwise and :P
21:42:09 <elliott> 18:30:06: <Vorpal> ais523, as in int1 & & int2
21:42:23 <Vorpal> elliott, yes that was the whole point
21:42:29 <pikhq> elliott: Not without some explicit casts.
21:42:30 <Vorpal> pikhq, is it what causes the error "package require cmdline"
21:42:40 <pikhq> Vorpal: Yes, that's in Tcllib.
21:44:44 <pikhq> Incidentally, if I had to do this all over again, I'd write it in Haskell with a proper parser.
21:44:59 <elliott> That is shouted Lisp not retro-capitalisation Lisp
21:45:15 <pikhq> (as it is, PEBBLE is just Tcl with alternate words defined)
21:47:09 <pikhq> Man, I did love my backronyms then.
21:47:23 <Vorpal> pikhq, what does PEBBLE stand for?
21:47:32 <pikhq> Practical Esoteric Brainfuck-Based Language, Eh?
21:47:53 <Vorpal> pikhq, ah, any other backronyms or what made you say "<pikhq> Man, I did love my backronyms then."?
21:48:08 <pikhq> PFUCK, a Brainfuck compiler in PEBBLE.
21:48:11 <elliott> PFUCK was a backronym too I think.
21:48:25 <Vorpal> <elliott> Ninja'd. <-- ?
21:48:26 <pikhq> Pebble's Fucked Up Compiler, Kay?
21:48:51 <Vorpal> elliott, what do you mean
21:49:10 <elliott> Vorpal: pikhq said it while I was typing.
21:49:30 <Vorpal> elliott, indeed, his message arrived 2 seconds earlier for me
21:50:40 * pikhq wonders if oerjan still has that script used to generate stdcons.bfm...
21:51:33 <pikhq> (stdcons.bfm, BTW, is an automated PEBBLE port of the 2-cell wrapping versions of constants from http://esolangs.org/wiki/Brainfuck_constants)
21:54:39 <oklopol> pikhq: have you seen lucky star
21:54:57 <oklopol> that shit is way more fucked up than elfen lied if you ask me
21:56:07 <pikhq> oklopol: No, I have not seen らき☆すた.
21:56:17 <Vorpal> pikhq, for 255 on that page:
21:56:34 <pikhq> Vorpal: Well, it uses two cells, doesn't it? :P
21:56:44 <Vorpal> what is the point of that
21:58:13 <Vorpal> pikhq, do you have any example program in PEBBLE?
21:58:19 -!- ais523 has quit (Remote host closed the connection).
22:01:48 <pikhq> http://sprunge.us/DSBW
22:01:56 <EgoBot> help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help <command>.
22:02:05 <EgoBot> languages: Esoteric: 1l 2l adjust asm axo bch befunge befunge98 bf bf8 bf16 bf32 boolfuck cintercal clcintercal dimensifuck glass glypho haskell kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor sadol sceql trigger udage01 underload unlambda whirl. Competitive: bfjoust fyb. Other: asm c cxx forth sh.
22:02:16 <Vorpal> pikhq, what is the target it compiles to?
22:02:18 <elliott> <Vorpal> - (1, 1) wrapping
22:02:18 <elliott> <Vorpal> >- (2, 2) wrapping
22:02:22 <elliott> that latter one needs removing
22:02:36 <Vorpal> elliott, there are lots of those for many of the large values
22:02:40 <pikhq> Vorpal: PFUCK compiles to C.
22:02:58 <pikhq> And is minimally optimising.
22:03:12 <Vorpal> pikhq, what is the file extension that should be used for pebble source?
22:03:25 <pikhq> For hysterical raisins.
22:03:44 <Vorpal> pikhq, brain fuck module?
22:04:49 <CakeProphet> !sh echo 'Congratulations you've beat the game!' > trap.txt
22:04:49 <EgoBot> /tmp/input.29889: line 1: unexpected EOF while looking for matching `''
22:05:48 <Vorpal> pikhq, so it is pebble.tcl or brainfucktopebble.tcl that you use?
22:05:52 <EgoBot> /usr/local/bin:/usr/bin:/bin:/usr/games
22:06:06 <elliott> brainfucktopebble obviously converts brainfuck to PEBBLE.
22:06:08 <Vorpal> CakeProphet, why not use HackEgo instead?
22:06:13 <elliott> I deduced this by not being an idiot.
22:06:23 <Vorpal> elliott, oh I read it backwards somehow
22:06:34 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
22:06:49 <Vorpal> CakeProphet, egobot having sh too is a bit silly
22:07:05 <Vorpal> !sh file interps/1l/1l_a.bin
22:07:06 <EgoBot> interps/1l/1l_a.bin: ERROR: cannot open `interps/1l/1l_a.bin' (No such file or directory)
22:07:18 <EgoBot> /bin/ls: interps/1l/: Function not implemented
22:07:24 <EgoBot> /bin/ls: interps/1l/: Function not implemented
22:07:26 <pikhq> brainfucktopebble.tcl is just a stupid, pointless compiler from Brainfuck to PEBBLE.
22:07:41 <Vorpal> pikhq, what is with stdlib/c ?
22:07:56 <pikhq> Alternate implementation of functions for the C backend.
22:08:10 <HackEgo> bin \ dev \ etc \ home \ lib \ lib64 \ opt \ proc \ tmp \ usr
22:08:17 <Vorpal> pikhq, and stdlib/interpret for an interpreter?
22:08:30 <Vorpal> CakeProphet, it is sandboxed. Both are.
22:08:32 <HackEgo> X11R6 \ bin \ games \ include \ lib \ lib64 \ local \ sbin \ share \ src
22:08:34 <pikhq> For the really, really stupid interpreter.
22:09:00 <Vorpal> CakeProphet, and versioned yes
22:09:20 <CakeProphet> now if only I could find something useful to do with it...
22:09:23 <Vorpal> CakeProphet, both use this: http://plash.beasts.org/wiki/
22:09:48 <CakeProphet> it would be cool if you could run background processes with stdin being this channel
22:10:03 <HackEgo> PID TTY TIME CMD \ 30766 ? 00:00:00 ld-linux.so.2
22:10:24 <Vorpal> <CakeProphet> it would be cool if you could run background processes with stdin being this channel <-- run your own bot :P
22:10:43 <CakeProphet> I've got a very poorly featured bot written in Perl at the moment
22:10:43 <Vorpal> or on further consideration, don't
22:16:34 <Vorpal> `run find / -name '*.txt'
22:16:40 <Vorpal> `run find / -name '*.pl'
22:16:43 <Vorpal> `run find / -name '*.py'
22:16:55 <Vorpal> `run find / -type f -name '*.*'
22:17:09 <HackEgo> 1 \ babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ quotese \ test \ test.c \ tmpdir.31660
22:17:12 <Vorpal> `run find / -type f -name '*.*'
22:17:26 <Vorpal> CakeProphet, I don't know why it does that, but well
22:17:58 <Vorpal> `run find / -type f -name '*.*' 2>&1
22:17:59 <HackEgo> /usr/bin/find: `/': Function not implemented
22:18:13 <Vorpal> Gregor, please explain this
22:19:11 * CakeProphet just recently learned some advanced bash stuff.
22:19:36 <Vorpal> CakeProphet, redirect fd 2 to fd 1
22:19:43 <elliott> <Vorpal> Gregor, please explain this
22:19:50 <Vorpal> elliott, hm probably yeah
22:20:00 <Vorpal> elliott, weird errno for it
22:20:18 <HackEgo> /bin/rm: cannot remove `/bin': Function not implemented
22:20:55 <CakeProphet> well I didn't mean to say that it was advanced, I was just explaining that I'm still learning and probably overlooked it
22:21:04 <Vorpal> elliott, should be EACCESS not ENOSYS
22:21:22 <elliott> Vorpal: it may be trying to fool software.
22:21:30 <elliott> That is, malicious software, perhaps.
22:21:38 <elliott> No reason to give away the game if you don't have to. :p
22:22:06 <Vorpal> elliott, for standard compatibility?
22:22:09 <Phantom_Hoover> "TIL the value of a Moon Rock is $50,800 per gram and they are illegal to sell"
22:22:36 <Vorpal> CakeProphet, that needs run
22:22:37 <elliott> Phantom_Hoover: Black market?
22:22:42 <Vorpal> `run cd / && find . 2>&1
22:22:44 <HackEgo> . \ /usr/bin/find: `.': Function not implemented
22:22:45 <HackEgo> . \ /usr/bin/find: `.': Function not implemented
22:23:01 <Vorpal> CakeProphet, mutiple commands need run
22:23:15 <Vorpal> without run you aren't doing it in sh, but plain exec() iirc
22:23:36 <Vorpal> well, execev or so probably
22:24:15 <elliott> Vorpal: no, it actually only passes a single argument
22:24:18 <elliott> so that addquote etc. work
22:24:53 <HackEgo> /bin/bash: line 1: type: run: not found
22:25:06 <Vorpal> elliott, I had hoped run was just eval "$1" :P
22:27:52 <CakeProphet> that's weird that find is preventing a find on /. Why not just prevent -delete?
22:28:03 <elliott> It's not find, it's plash.
22:28:59 <elliott> How does subtraction work.
22:29:18 <CakeProphet> you add the negative of the right-hand operand. :)
22:30:44 <Vorpal> <elliott> How does subtraction work. <-- seriously?
22:32:31 <Vorpal> elliott, for (i=0;i<b;i++) a += ~0
22:32:37 <Vorpal> assuming two-complement
22:32:53 <Vorpal> elliott, any questions?
22:33:25 <Vorpal> elliott, please clarify
22:34:19 <elliott> undefined :: (DivLoop T5 T5 qt rm) => (qt,rm)
22:34:20 <elliott> :: (O (O (O Z)), O (O (O Z)))
22:34:38 <Vorpal> elliott, I told you above
22:34:49 <Vorpal> elliott, which language is that btw? haskell?
22:35:10 <CakeProphet> looks like someone is trying to much around with the type system.
22:35:10 <elliott> Actual typeclass I just made: SubHelperThatIsRealHelper.
22:35:20 <elliott> (RealSubHelper and RealSubHelperHelper are taken.)
22:35:31 <elliott> CakeProphet: Yes, I'm muching around with it a lot.
22:35:32 <Vorpal> elliott, oh so you actually meant to ask who subtraction in the type system works?
22:35:44 <Vorpal> in which case I don't know
22:36:05 <oklopol> well it certainly works me
22:36:32 -!- pikhq has quit (Ping timeout: 246 seconds).
22:36:34 <elliott> SubHelperThatIsRealHelperHelper
22:37:34 <CakeProphet> elliott: as long as nothing matches /Manager/
22:37:48 <CakeProphet> once you have a SubHelperManagerThatIsRealHelperHelperManager
22:37:57 <CakeProphet> then you might actually be coding in Java.
22:39:44 <CakeProphet> I don't think the universe intended for us to write programs in type systems.
22:40:20 <HackEgo> attr \ auxv \ cgroup \ clear_refs \ cmdline \ coredump_filter \ cpuset \ cwd \ environ \ exe \ fd \ fdinfo \ io \ limits \ loginuid \ maps \ mem \ mountinfo \ mounts \ mountstats \ net \ numa_maps \ oom_adj \ oom_score \ pagemap \ personality \ root \ sched \ sessionid \ smaps \ stack \ stat \ statm \ status \ syscall \ task \ wchan
22:40:24 <HackEgo> 0 \ 1 \ 10 \ 11 \ 12 \ 13 \ 14 \ 15 \ 16 \ 17 \ 18 \ 19 \ 2 \ 20 \ 21 \ 22 \ 27 \ 29 \ 3 \ 4 \ 5 \ 6 \ 7 \ 8 \ 9
22:41:02 <Vorpal> `ls -l /proc/self/exe 2>&1
22:41:09 <Vorpal> `run ls -l /proc/self/exe 2>&1
22:41:10 <HackEgo> /bin/ls: /proc/self/exe: Function not implemented \ lrwxrwxrwx 1 5000 5000 0 May 28 22:41 /proc/self/exe -> /usr/bin/python2.5
22:41:41 -!- pikhq has joined.
22:41:48 <Vorpal> `run ls -l /proc/self/fd 2>&1 | tr '\n' '|'
22:41:50 <HackEgo> /bin/ls: /proc/self/fd: Function not implemented|/bin/ls: /proc/self/fd/0: Function not implemented|/bin/ls: /proc/self/fd/1: Function not implemented|/bin/ls: /proc/self/fd/2: Function not implemented|/bin/ls: /proc/self/fd/3: Function not implemented|/bin/ls: /proc/self/fd/4: Function not implemented|/bin/ls: /proc/self/fd/5:
22:42:05 <Vorpal> `run ls -l /proc/self 2>&1 | tr '\n' '|'
22:42:07 <HackEgo> /bin/ls: /proc/self: Function not implemented|lrwxrwxrwx 1 0 0 64 May 28 22:16 /proc/self -> 1995|
22:42:13 <Vorpal> `run ls -l /proc/self7 2>&1 | tr '\n' '|'
22:42:15 <HackEgo> /bin/ls: cannot access /proc/self7: No such file or directory|
22:42:25 <Vorpal> `run ls -l /proc/self/ 2>&1 | tr '\n' '|'
22:42:26 <HackEgo> /bin/ls: /proc/self/: Function not implemented|/bin/ls: /proc/self/task: Function not implemented|/bin/ls: /proc/self/fd: Function not implemented|/bin/ls: /proc/self/fdinfo: Function not implemented|/bin/ls: /proc/self/net: Function not implemented|/bin/ls: /proc/self/environ: Function not implemented|/bin/ls: /proc/self/auxv:
22:42:34 <Vorpal> `run ls -l 2>&1 | tr '\n' '|'
22:42:35 <HackEgo> /bin/ls: 1: Function not implemented|/bin/ls: babies: Function not implemented|/bin/ls: bin: Function not implemented|/bin/ls: bluhbluh: Function not implemented|/bin/ls: env: Function not implemented|/bin/ls: foo: Function not implemented|/bin/ls: paste: Function not implemented|/bin/ls: ps: Function not implemented|/bin/ls:
22:42:55 <Vorpal> Gregor, what is this non-implemented function mentioned all the time
22:43:00 <Vorpal> `run stat bin 2>&1 | tr '\n' '|'
22:43:02 <HackEgo> File: `bin'|.Size: 4096..Blocks: 8. IO Block: 4096 directory|Device: ca01h/51713d.Inode: 832795. Links: 2|Access: (0755/drwxr-xr-x) Uid: ( 5000/ UNKNOWN) Gid: ( 5000/ UNKNOWN)|Access: 2011-05-28 22:43:01.000000000 +0000|Modify: 2011-05-28 22:43:01.000000000 +0000|Change: 2011-05-28 22:43:01.000000000 +0000|
22:43:19 <Vorpal> `run ls -l /proc/self/ 2>/dev/null | tr '\n' '|'
22:43:20 <HackEgo> total 0|dr-xr-xr-x 2 5000 5000 0 May 28 22:43 attr|-r-------- 1 5000 5000 0 May 28 22:43 auxv|-r--r--r-- 1 5000 5000 0 May 28 22:43 cgroup|--w------- 1 5000 5000 0 May 28 22:43 clear_refs|-r--r--r-- 1 5000 5000 0 May 28 22:43 cmdline|-rw-r--r-- 1 5000 5000 0 May 28 22:43 coredump_filter|-r--r--r-- 1 5000 5000 0 May 28 22:43
22:43:41 <Vorpal> `run ls /proc/self/ | tr '\n' '|'
22:43:43 <HackEgo> attr|auxv|cgroup|clear_refs|cmdline|coredump_filter|cpuset|cwd|environ|exe|fd|fdinfo|io|limits|loginuid|maps|mem|mountinfo|mounts|mountstats|net|numa_maps|oom_adj|oom_score|pagemap|personality|root|sched|sessionid|smaps|stack|stat|statm|status|syscall|task|wchan|
22:43:58 <HackEgo> attr \ auxv \ cgroup \ clear_refs \ cmdline \ coredump_filter \ cpuset \ cwd \ environ \ exe \ fd \ fdinfo \ io \ limits \ loginuid \ maps \ mem \ mountinfo \ mounts \ mountstats \ net \ numa_maps \ oom_adj \ oom_score \ pagemap \ personality \ root \ sched \ sessionid \ smaps \ stack \ stat \ statm \ status \ syscall \ task \ wchan
22:44:00 <elliott> HackEgo does it itself, dude.
22:44:26 <Vorpal> `run ls -l /proc/self/root
22:44:27 <HackEgo> lrwxrwxrwx 1 5000 5000 0 May 28 22:44 /proc/self/root -> /
22:44:36 <Vorpal> `run ls -l /proc/self/exe
22:44:37 <HackEgo> lrwxrwxrwx 1 5000 5000 0 May 28 22:44 /proc/self/exe -> /usr/bin/python2.5
22:44:56 <Vorpal> HackEgo, buggered if I knew
22:45:05 <Vorpal> `run cat /proc/self/cmdline
22:45:37 <Vorpal> `run cat /proc/self/cmdline | cat -e
22:45:38 <HackEgo> /usr/bin/python^@/usr/bin/pola-run^@-B^@-f=/lib64^@-f=/etc/alternatives^@-f=/proc^@-f=/opt^@-tw^@/tmp^@tmpdir.2822^@-fw=/tmp/hackenv.2822^@-f=/home/hackbot/hackbot.hg/multibot_cmds/lib/limits^@--prog=/home/hackbot/hackbot.hg/multibot_cmds/lib/limits^@-a=/usr/bin/nice^@-a=-n10^@-e^@bash^@
22:46:03 <Vorpal> `run cat /proc/self/cmdline | tr '\0' ' '
22:46:04 <HackEgo> /usr/bin/python /usr/bin/pola-run -B -f=/lib64 -f=/etc/alternatives -f=/proc -f=/opt -tw /tmp tmpdir.2896 -fw=/tmp/hackenv.2896 -f=/home/hackbot/hackbot.hg/multibot_cmds/lib/limits --prog=/home/hackbot/hackbot.hg/multibot_cmds/lib/limits -a=/usr/bin/nice -a=-n10 -e bash
22:46:20 <Vorpal> `run cat /proc/self/cmdline | tr '\0' ' ' | tail -c 20
22:48:19 <HackEgo> 1 \ babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ quotese \ test.c \ tmpdir.3130
22:48:20 <Vorpal> elliott, I find it funny that it doesn't emulate /proc
22:49:31 <Vorpal> elliott, what was quine
22:49:50 <HackEgo> -rw-r--r-- 1 5000 5000 0 May 28 22:49 bluhbluh
22:50:04 <HackEgo> 312) <elliott> lol @ closed character set standard <elliott> "What does this codepoint represent?" "Nobody knows."
22:50:04 <HackEgo> 229) <elliott> [...] ALWAYS OPEN TO TRYING NEW THINGS.
22:50:05 <HackEgo> 178) <oklopol> pigeons are very smart. all the known ways to show a language is not regular are based on pigeons.
22:50:06 <HackEgo> 392) <Cheery> [...] OOPS.. my cockfile got destroyed
22:50:06 <HackEgo> 315) <fizzie> Phantom_Hoover: I have just one tvtropes page open in elinks, but my tvtropes.txt "queue" has 38 tvtropes.org URLs waiting for processing.
22:50:56 <HackEgo> 'open 0; print <0>' > quine.pl
22:51:30 <HackEgo> 132) <DoctorDog> I am an inherently pornographic being.
22:51:31 <HackEgo> 176) <cpressey> Never ever use a quote which contains both the words "aloofness" and "gel" (verb).
22:51:32 <HackEgo> 408) <monqy> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something \ 407) <cpressey> `quote django <HackEgo> 352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one <monqy> thankfully only two
22:51:32 <HackEgo> 393) <Cheery> when I command it to do couple useful operations it instead mutilates my cock.
22:51:34 <HackEgo> 38) <ehird> is there a problem with it being carbonized :D <augur> yes: carbonized coffee bean is known more commonly as "charcoal"
22:51:35 <Vorpal> CakeProphet, how does it work?
22:51:41 <Vorpal> CakeProphet, I don't know perl
22:53:30 <CakeProphet> Vorpal: I'm not entirely sure. But "open 0" I believe treats 0 to be a symbolic reference since there's no second argument, so it grabs the value held in $0, which is the name of the program, and saves it to the filehandle 0 because Perl can do that apparently. And then <0> is the read operator on the filehandle 0.
22:53:58 <CakeProphet> normally you use open like this: open my $fh, 'filename.here'
22:54:15 <olsner> speaking of carbonated coffee, coffee and coca cola is a nice combination
22:54:36 -!- hagb4rd has joined.
22:57:58 <CakeProphet> ...though I have no idea why it produced that output.
22:59:40 <CakeProphet> `run echo -e '#!/bin/perl\nopen 0; print ()=<0>' > quine2.pl
23:00:42 <CakeProphet> honestly -e should be default and -E should be the option you have to type, for echo.
23:01:16 <CakeProphet> since, if you're not dealing with a string literal, you'd usually want -E.
23:02:29 * augur murders Phantom_Hoover
23:03:22 -!- MigoMipo has quit (Read error: Connection reset by peer).
23:03:39 -!- pikhq_ has joined.
23:03:57 <CakeProphet> `run echo -e '#!/bin/perl\nopen 0; print (()=<0>)' > quine2.pl
23:04:59 <CakeProphet> `run echo -e '#!/bin/perl\nopen 0; print while <0>' > quine2.pl
23:05:10 <HackEgo> #!/bin/perl \ open 0; print while <0>
23:05:53 * pikhq_ wonders if the BIOS in this motherboard can be replaced with OpenBIOS. BIOSes suck.
23:06:11 <CakeProphet> in my experience, the answer to that has been 'no'.
23:06:38 <pikhq_> Erm. s/OpenBIOS/coreboot/
23:06:41 <pikhq_> That's what I actually meant.
23:06:50 -!- pikhq has quit (Ping timeout: 264 seconds).
23:06:55 <pikhq_> And probably "no", but you can hope.
23:06:58 <elliott> AMD To Support Coreboot On All Upcoming Processors - Slashdot
23:07:06 <elliott> If they had said "motherboards" :P
23:07:13 <pikhq_> It's supposed to be chipsets.
23:07:15 <elliott> (I realise there are probably actual incompatibilities but still.)
23:07:25 <pikhq_> Slashdot just fucked it up.
23:07:28 <elliott> I wonder if "support" means they'll give you tech support for it :-)
23:08:12 <CakeProphet> `run wget -O quine3.pl 'http://www.perlmonks.org/bare/?abspart=1;displaytype=displaycode;node_id=119526;part=1'
23:08:35 <HackEgo> GNU Wget 1.11.4, a non-interactive network retriever. \ Usage: wget [OPTION]... [URL]... \ \ Mandatory arguments to long options are mandatory for short options too. \ \ Startup: \ -V, --version display the version of Wget and exit. \ -h, --help print this help. \ -b, --background go to
23:09:13 -!- quintopia has joined.
23:09:17 -!- quintopia has quit (Changing host).
23:09:18 -!- quintopia has joined.
23:09:47 <CakeProphet> `run fetch 'http://www.perlmonks.org/bare/?abspart=1;displaytype=displaycode;node_id=119526;part=1' > quine3.pl
23:09:49 <HackEgo> GNU Wget 1.11.4, a non-interactive network retriever. Usage: wget [OPTION]... [URL]... Mandatory arguments to long options are mandatory for short options too. Startup: -V, --version display the version of Wget and exit. -h, --help print this help. -b, --background go to background after startup. -e, --execute=COMMAND execute a `.wgetrc'-style command. Logging and input file: -o, --output-file=FILE log message
23:10:16 <elliott> You can use mv afterwards.
23:10:23 <pikhq_> ... Oh, hey. Some people complained at the motherboard vendor about bugs that were tripping up Linux, and they actually fixed it.
23:10:36 <CakeProphet> `run fetch 'http://www.perlmonks.org/bare/?abspart=1;displaytype=displaycode;node_id=119526;part=1'
23:10:44 <HackEgo> 1 \ babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine.pl \ quine2.pl \ quine3.pl \ quotes \ quotese \ test.c \ tmpdir.6174
23:10:57 <coppro> it feels so weird to have money
23:11:01 <elliott> Please listen to what I actually say.
23:11:28 <coppro> pikhq: that is one redeeming feature about your country
23:11:32 <CakeProphet> `fetch http://www.perlmonks.org/bare/?abspart=1;displaytype=displaycode;node_id=119526;part=1
23:11:34 <HackEgo> 2011-05-28 23:11:33 URL:http://www.perlmonks.org/bare/?abspart=1;displaytype=displaycode;node_id=119526;part=1 [87] -> "index.html?abspart=1;displaytype=displaycode;node_id=119526;part=1" [1]
23:11:49 <HackEgo> 1 \ babies \ bin \ bluhbluh \ env \ foo \ index.html?abspart=1;displaytype=displaycode;node_id=119526;part=1 \ paste \ ps \ quine.pl \ quine2.pl \ quine3.pl \ quotes \ quotese \ test.c \ tmpdir.6313
23:12:38 <HackEgo> syntax error at =# line 2, at EOF. \ Execution of =# aborted due to compilation errors..
23:14:07 <elliott> <CakeProphet> `run mv *index quine3.pl
23:14:35 <elliott> "AMD made their platform code work for coreboot. That is, the same code they ship to board and BIOS makers, they release to coreboot, and even went the extra mile to integrate it.
23:14:35 <elliott> Intel doesn't support coreboot. In fact, they hinder us and we'll have to get each bit of information out of the hardware or by massive coercion. Every support of Intel hardware in coreboot exists despite Intel's efforts."
23:15:28 <CakeProphet> elliott: would help if I understood what it is. Is it (2)>(&1) or is it 2(>&)1 or....?
23:16:08 <CakeProphet> I'm guessing 1 is fd for stdout and 2 is for stderr. I've never seen &1 though.
23:16:13 <elliott> The syntax is [source]>[destination]. source, when omitted, defaults to one (stdout).
23:16:15 <elliott> Destination is usually a file.
23:16:26 <elliott> Prefixing an ampersand means "to an fd, not a file".
23:17:23 <CakeProphet> in any case this syntax error is not a quine.
23:17:31 <elliott> <CakeProphet> `perl quine3.pl 2>&1
23:17:46 <elliott> What you did was perl 'quine3.pl 2>&1'.
23:17:56 <HackEgo> syntax error at quine3.pl line 2, at EOF \ Execution of quine3.pl aborted due to compilation errors.
23:18:16 <CakeProphet> except the # needs to be changed to the file name
23:21:17 <CakeProphet> `run perl -pi 's/#=/quine3.pl/g' quine3.pl
23:21:28 <HackEgo> syntax error at =# line 2, at EOF. \ Execution of =# aborted due to compilation errors..
23:21:36 <CakeProphet> `run perl -pi 's/=#/quine3.pl/g' quine3.pl
23:21:40 <HackEgo> syntax error at =# line 2, at EOF. \ Execution of =# aborted due to compilation errors..
23:22:36 <CakeProphet> `run perl -pie 's/=#/quine3.pl/g' quine3.pl
23:22:47 <HackEgo> syntax error at =# line 2, at EOF. \ Execution of =# aborted due to compilation errors..
23:22:58 <CakeProphet> I apparently no nothing about Perl's command line options.
23:24:05 <CakeProphet> `run perl -pi -e 's/=#/quine3.pl/g' quine3.pl
23:24:15 <HackEgo> syntax error at quine3.pl line 2, at EOF. \ Execution of quine3.pl aborted due to compilation errors..
23:24:39 -!- xps has joined.
23:24:43 * CakeProphet is no pleased with this waste of time, and does something else that is equally pointless.
23:26:10 <elliott> CakeProphet: replace the newline in it with " \ " for extra points :D
23:26:55 <pikhq_> wodim, stop trying to write with my DVD-ROM drive.
23:27:22 <CakeProphet> elliott: eh, since HackEgo uses \ for \n I don't see anything wrong with leaving it as is.
23:27:30 <elliott> CakeProphet: it's not a _proper_ quine :D
23:27:42 <pikhq_> Also, Debian, would it kill you to symlink your forked shit to cdrecord/mkisofs/cdda2wav?
23:27:48 <elliott> pikhq_: Debian testing is still on Haskell Platform 2010.1.0.0.1.
23:27:50 <pikhq_> Y'know, like anyone sane would expect?
23:28:28 * CakeProphet is an American. We don't play by the rules.
23:28:37 <elliott> Ahahaha, the release manager of wodim is also called Joerg.
23:29:35 -!- xps has quit (Remote host closed the connection).
23:29:52 <elliott> MacFUSE is a dead project. Nice.
23:30:00 <elliott> (Author works on proprietary competitor now.)
23:30:06 <CakeProphet> so was using perl -pi -e the best option or is there some other magic I could use in those situations?
23:30:10 <elliott> But a guy on the tup list forked it. :p
23:30:21 * CakeProphet is developing his leet sysadmin skills or whatever.
23:30:26 * pikhq_ needs a new CD burner. This thing sucks.
23:31:25 <elliott> CakeProphet: -pie works just fine, btw.
23:33:08 <CakeProphet> ah, but I'll have to try using sed sometimes. Seems slightly more convenient for that kind of thing
23:33:44 <elliott> s/// is exactly the same in sed bt the regexps are less powerful :P
23:34:06 <CakeProphet> is it at least the same syntax... or is it more like emacs-style?
23:34:12 <elliott> It's the same syntax... and what?
23:34:30 <CakeProphet> but you answered my question, so nevermind. :)
23:35:01 <elliott> So you're not liking emacs, eh.
23:35:09 <CakeProphet> no emacs is fine. I just don't like its regex
23:35:30 <elliott> Well you need some more backslashes with sed, yes.
23:35:40 <elliott> And it's \ rather than [dollar] for backrefs.
23:35:42 <CakeProphet> I'm like emacs for the most part. It's still a little awkward to use, but I enjoy being able to make windows.
23:36:25 <CakeProphet> and I've recently starting doing magical things.
23:39:53 <CakeProphet> for example C-a C-k is pretty handy. And C-a C-space C-e C-w
23:40:27 <CakeProphet> but actually, C-k does the same thing as the second one right?
23:42:40 <elliott> undefined :: (DivLoop T5 T5 qt rm) => (qt,rm)
23:42:40 <elliott> :: (SubHelperThatIsRealHelperHelper b (O Z) m2,
23:42:40 <elliott> SubHelperThatIsRealHelper m' m1,
23:42:40 <elliott> SubHelperThatIsRealHelper m'1 m,
23:42:43 <elliott> SubHelper (O (I Z)) (O (I Z)) m2 m',
23:42:44 <elliott> SubHelper (I (O (I Z))) (I (O (I Z))) m1 m'1,
23:42:46 <elliott> DivHelper m (I (O (I Z))) (I (O (I Z))) qt rm) =>
23:43:52 <CakeProphet> elliott: perhaps this is an indication that you shouldn't be doing this craziness. ;)
23:44:03 <elliott> Deewiant: It's a snowman in disguise.
23:44:54 -!- zzo38 has joined.
23:45:38 -!- pikhq_ has quit (Remote host closed the connection).
23:45:58 <elliott> I like how you have no indication of which typeclass is failing.
23:47:29 <CakeProphet> elliott: perhaps if you write a Haskell compiler in Haskell types you can implement better error messages.
23:50:19 -!- Phantom_Hoover has quit (Quit: Leaving).
23:54:26 -!- pikhq has joined.
23:54:28 <zzo38> printf is sometimes useful, actually, even in things like Perl and whatever, I think.
23:55:54 <zzo38> Although, I have worked a bit with Python (but not much) and I think the % operator on strings acts like sprintf? I don't really know, though.
23:56:00 -!- augur has quit (Remote host closed the connection).
23:57:31 <CakeProphet> except sprintf is in-place I believe, and Python's % is not
23:58:12 <elliott> I would be surprised if Perl's sprintf was in-place.
23:58:16 <zzo38> In C, sprintf first takes a destination parameter (of type char*) and then the format string, and then the values to sbustitute into %s and that kind of stuff.
23:58:50 <zzo38> Since these kind of scripting languages do not work that way, it would just return the new value instead
00:02:59 -!- hagb4rd has quit (Ping timeout: 246 seconds).
00:03:46 <CakeProphet> $$dest = sprintf($format, $a, $b, ...); would emulate the C behavior. Assuming $dest is a ref
00:07:03 <zzo38> Probably it would be useful sometimes, isn't it?
00:07:23 <CakeProphet> mainly because of some unusual things Perl does with non-scalar values.
00:07:43 <CakeProphet> scalar refs are less common than list refs, code refs, and hash refs.
00:08:40 <zzo38> I realized I need to add three new input states into TeXnicard and try to decide what letter. The three new states I think I need are: font loading state, character encoding state, image manipulation state.
00:09:32 <CakeProphet> for example, @list = ($a, $1, @otherlist) concatenates @otherlist, because lists/hash can only contain scalars. So the best way to embed an array into another array in Perl is to have the inner array as a reference.
00:10:11 <CakeProphet> same thing with argument passing, since the arguments are treated as one array.
00:14:48 <elliott> This is because Perl sucks.
00:15:05 <Lymia> But it's very golfable.
00:16:32 <CakeProphet> I would actually make a case for Perl as an example of a mostly well-designed language.
00:17:17 <elliott> I would make a case for copious amounts of cocaine for everyone, too.
00:17:51 <pikhq> http://www.netsurf-browser.org/
00:18:48 <elliott> pikhq: It's shitty with JS, IIRC.
00:19:35 <monqy> so what does it do
00:19:37 <pikhq> elliott: I run with Noscript on.
00:20:13 <monqy> does it have any features besides that
00:20:16 <monqy> I see a back button
00:20:28 <pikhq> It seems to be a minimal, standards-compliant web browser.
00:20:32 <elliott> it's the custom rendering engine that's interesting
00:20:59 <monqy> I can't live without a ridiculous amount of open tabs
00:22:14 <pikhq> I've got this kinda odd issue...
00:22:23 <pikhq> I want my web browser to not suck.
00:24:00 <monqy> I used to have that issue too
00:24:08 <monqy> drowned self in tabs
00:24:57 <CakeProphet> I use Chrome. I don't really have any problems with it.
00:25:13 <monqy> chrome omits the http://
00:25:16 <monqy> drives me mad to no end
00:25:25 <monqy> probably other stuff too
00:25:28 <elliott> monqy: that drives you mad?
00:25:37 <elliott> i don't look at my url bar and go OH NO WHERE'S THE HTTP:// THAT I ALREADY KNOW IS "REALLY" THERE
00:25:51 <pikhq> I've got a handful of issues with Chrome.
00:25:52 <elliott> yes, because https is actually noteworthy
00:26:06 <pikhq> Honestly, Midori would be my ideal browser if it didn't crash on me.
00:26:19 <pikhq> Hmm. Not tried it out recently. Let's see if it's more stable now.
00:26:34 <elliott> The tabs crash sometimes. Like if you run out of memory.
00:26:36 <monqy> chrome's searchbar thing can be annoying when it guesses what I want incorrectly
00:26:49 <elliott> so type out what you mean yourself :P
00:26:52 <pikhq> One think Midori does is have a nice, minimal UI.
00:27:09 <monqy> elliott: it's most awful when I do that and it still does it wrong
00:27:18 <monqy> that's rare though
00:27:19 -!- FireFly has quit (Quit: swatted to death).
00:27:25 <CakeProphet> elliott: that's what it means. Sometimes it'll autocomplete something even thought you typed out the whole thing. You have to hit backspace to get what you originally typed. somewhat annoying
00:27:52 <monqy> even without autocomplete
00:28:08 <elliott> even without autocomplete? wat
00:28:15 <monqy> sometimes it thinks I'm searching when I enter what I meant to be an address
00:28:29 <CakeProphet> usually the only time I get tab crashes in Chrome is when the Flash plugin crashes.
00:29:06 * elliott wonders if the mactel-support packages are available in Debian :/
00:29:13 <elliott> https://launchpad.net/~mactel-support/+archive/ppa
00:29:20 <elliott> e.g. xf86-input-multitouch
00:29:50 <zzo38> There is no web browser that does not suck.
00:30:15 <CakeProphet> ...honestly I think there are several web browsers that don't suck. You guys are just weird or picky about strange things.
00:30:34 <Sgeo> zzo38, does that include Vonkeror?
00:30:37 <elliott> you are unfamiliar with the proper definition of "doesn't suck"
00:30:44 <monqy> is there any way to get chrome to stop autocompleting to things to which I don't want it to autocomplete
00:30:45 <elliott> it is a far more stringent requirement than you appear to realise.
00:30:55 <zzo38> Sgeo: Yes. Vonkeror just sucks somewhat less.
00:30:56 <pikhq> CakeProphet: Name to me a web browser with a UI that doesn't make me want to stab things.
00:30:57 <monqy> I mean even manually
00:31:03 <pikhq> Aside from Midori.
00:31:10 <monqy> autocomplete-blacklisting addresses
00:31:18 <CakeProphet> pikhq: ..I can't. That doesn't really disprove my point that you guys are weird, though. :P
00:31:34 <pikhq> CakeProphet: Okay, sorry, let me specify.
00:31:50 <pikhq> One with a UI that does not act non-natively.
00:32:12 <monqy> but what does native mean
00:32:25 <elliott> pikhq: You get to find me an xf86-input-multitouch package for Debian.
00:32:40 <zzo38> In Windows it is obvious, in UNIX it is not clear.
00:32:57 <pikhq> monqy: Has widgets that look and act like the widgets in *every other damned program*.
00:33:13 <elliott> Hmm, I guess the Ubuntu package for that would work.
00:33:16 <elliott> As would mbp-nvidia-bl-dkms.
00:33:17 <monqy> but I hate widgets in every other damned program
00:33:21 <elliott> ...Right? Say right. Say yes.
00:33:41 <elliott> http://webcache.googleusercontent.com/search?q=cache:kHWnNbJWGWkJ:www.aeai.dk/blog/%3Fp%3D209+applesmc-dkms+debian&hl=en&gl=uk&strip=1
00:33:42 <monqy> too much mouse movement not enough keyboard
00:34:12 <pikhq> There's so many *simple, simple* things that, say, Firefox screws up.
00:34:17 <zzo38> There are different widgets sets, I think Xaw is not too bad except for lack of keyboard access, I think this is a good reason to use mouse warping, not any of the other reasons that are commonly used, the common use of mouse pointer moving automatically is stupid things
00:34:28 <zzo38> pikhq: Like, what kind of thing?
00:34:38 <pikhq> For instance, unlike every other tab bar here, Firefox's tabs do not respond to the scroll wheel.
00:34:51 <elliott> there's an extension for that :P
00:35:26 <zzo38> What operating system are you using?
00:35:40 <pikhq> And about half of the widgets are quite obviously just custom-drawn by the theme engine, and are quite jarring next to grey-mist.
00:35:52 <pikhq> zzo38: Debian wheezy, XFCE4.
00:35:58 <elliott> you wheeze all the time bro
00:36:14 <zzo38> And XFCE4 tab bars use scroll wheel?
00:36:19 <elliott> hey pikhq should i install testing direct or install stable first and then upgrade before installing x
00:36:27 <pikhq> zzo38: That's more a GTK behavior.
00:36:50 <pikhq> elliott: The typical recommendation is stable->testing, but I usually just install testing directly.
00:37:02 <zzo38> Well, but I think Mozilla is not based on GTK as far as I know? Therefore it doesn't.
00:37:09 <elliott> pikhq: but last i installed testing in virtualbox it did not boot : (
00:37:23 <pikhq> Okay, then do stable->testing.
00:37:33 <pikhq> zzo38: Mozilla on X11 platforms uses GTK.
00:37:52 <elliott> MAYBE IT WAS JUST A VIRTUALBOX ISSUE
00:38:32 <pikhq> elliott: stable->testing not working would be taken about as seriously as testing going out and raping every Debian developer's cat.
00:38:36 <zzo38> pikhq: Then I think it ought to make scroll wheel work with tab bars! I agree in that case.
00:39:52 <zzo38> And as it turns out I also have another question about the Wayland system. Can you use SDL with Wayland windowing?
00:40:22 <elliott> if sdl has or gets a wayland backend, then yes.
00:40:40 <elliott> pikhq: MAYBE IT WAS JUST A VIRTUALBOX ISSUE ;_;
00:41:26 <pikhq> elliott: Yeah, but stable->testing should "just work".
00:41:38 <pikhq> zzo38: No reason why you couldn't.
00:41:45 <zzo38> This user likes to use redundant userboxes that are redundant. This user likes to use redundant userboxes that are redundant. This user likes to use redundant sentences that are redundant.
00:41:48 <pikhq> zzo38: Indeed, it'd probably work better than on X...
00:42:05 <elliott> pikhq: But that's boooooooooooooooooring.
00:42:15 <pikhq> As all its code to get its own framebuffer to Wayland would consist of telling Wayland to blit.
00:43:37 <zzo38> pikhq: Then I suppose it would be good for that things. But it also becomes necessary to make SDL to work with Wayland, if it doesn't already have that
00:43:50 <elliott> pikhq: SHOULD I INSTALL DEBIAN NOW OR LATER >SO >MANY >DILEMMAS
00:43:57 <elliott> also have xfwm fixed the bug yet
00:44:51 <zzo38> I have written a program using SDL (the BytePusher program) and modified a program using SDL (MegaZeux), so I know a few things about SDL.
00:44:56 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:45:09 <zzo38> But I think some people don't like SDL
00:45:36 -!- augur has joined.
00:46:26 <zzo38> Is there any portable kind of self modifying code in C programming?
00:47:04 <Lymia> Link to a C compiler that supports your target.
00:47:07 <Lymia> Make the entire program a quine.
00:48:13 <zzo38> I suppose that will work, but it is a hardly useful way to make it, since the purpose for making self modifying code is so that you don't have to do that kind of things
00:50:27 <zzo38> What letters should I use for the new needed input states in TeXnicard? The obviously ones are already taken so I need to select nonobviously ones instead;
00:57:05 -!- iconmaster has quit (Quit: Pardon me, but I have to go die in NetHack again.).
00:58:27 <zzo38> I don't want to go die in NetHack again. I want to go dye in NneettHhaacckk again.
01:05:47 <zzo38> How many things will go wrong if Planck's constant is increased by a factor of four?
01:09:26 <zzo38> Wbich seven things?
01:11:59 <zzo38> s/Wbich/Which/ Now do you know?
01:18:11 <CakeProphet> why are they doing terrible things to regex in Perl 6...
01:20:05 <elliott> they're improving it massively.
01:21:11 <zzo38> CakeProphet: Like what kind of things you mean?
01:21:31 -!- Patashu has joined.
01:22:41 -!- oerjan has joined.
01:25:47 <pikhq> Gaaah, midori crashed.
01:26:15 <Sgeo> GAHAHAHAHA WHY DOES MY BATTERY NOT LIKE TO CHARGE WHEN THE COMPUTER'S PLUGGED IN
01:26:16 <pikhq> Back to Firefox, and can I pleasepleaseplease beat the Firefox devs over the head?
01:26:46 <zzo38> pikhq: If you can find them, then try. Otherwise, please don't.
01:28:20 <pikhq> APPLICATIONS SHOULD NOT HAVE THEMING ENGINES DAMN YOU PEOPLE
01:28:54 <oerjan> * pikhq wonders if oerjan still has that script used to generate stdcons.bfm...
01:29:08 <CakeProphet> well, there's actually some good changes to the regex.
01:29:15 <elliott> oerjan: answer myyyyyyyyy question
01:30:55 <oerjan> with the minor caveat that the part which turns the wiki page into a large haskell constant was probably done by hand with substitutions in vim, although the format should be clear from the file with the old version
01:35:13 <oerjan> elliott: what question
01:35:35 <pikhq> And now I'm trying out Epiphany (GNOME's browser)
01:35:42 <pikhq> So far, I am pleasantly surprised.
01:35:53 <oerjan> ok another minor caveat is that the script doesn't actually have a main function, so it may not be entirely clear how to run the functions
01:36:21 <oerjan> <elliott> Phantom_Hoover: Invent me a geometry where I can have the curvature of the Earth because it's pretty, but still have an infinite world in every dimension.
01:36:41 <oerjan> this? i'm not sure if that is possible, as a sphere is simply connected.
01:37:05 <Patashu> polar co-ordinates have infinite radius and finite angle
01:38:33 <oerjan> um that's just an infinite world if you go into _space_
01:38:40 <oerjan> which we essentially have already
01:39:03 <Patashu> I don't think that's possible then
01:39:38 <oerjan> we can do a torus thing though
01:39:49 <pikhq> ... Except it seems to fetch stuff slowly?
01:39:52 <oerjan> with varying curvature
01:40:27 <elliott> what about every non-vertical dimension :P
01:40:40 <oerjan> actually that might have trouble being infinite upwards from the inside ring
01:40:48 <elliott> i.e. sphere that is a bunch of stacked planes
01:41:46 <elliott> that's minecraft's world :)
01:41:57 <oerjan> minecraft is a sphere?
01:41:59 <elliott> except for the sphere part,
01:42:21 <Sgeo> My battery charging light is BLINKING
01:44:46 <oerjan> elliott: the part about simple connectivity is important, it means there is no way to duplicate points of a sphere such that neigborhoods look locally like the original sphere and the whole thing is connected
01:45:31 <elliott> i can always just make it geometrically incoherent, you know
01:45:40 <oerjan> while a torus is _not_, so you can duplicate points so going around the circles doesn't return
01:46:11 <oerjan> elliott: well if you drop the poles, you have cylinder which works with east-west duplication
01:46:38 -!- wareya_ has changed nick to wareya.
01:47:18 <oerjan> oh there is also the projective plane, in which you _identify_ antipodes on the sphere to get _less_ points
01:47:23 -!- Sgeo has quit (Ping timeout: 240 seconds).
01:47:40 <oerjan> (i.e. the sphere is a twofold cover of the projective plane)
01:48:32 <oerjan> and i think the klein bottle may work similarly for the torus
01:49:18 <augur> elliott: plural quantification!
01:49:38 <oerjan> although if you can only look around locally (which is probably essential for this, then the main weirdness would be that after a world circumnavigation you'd return as your mirror image :D
01:50:03 <elliott> oerjan: can't circumnavigate an infinite world :P
01:50:30 <oerjan> elliott: um these are twofold covers, and actually _smaller_ than the sphere and torus in a sense
01:50:53 -!- Sgeo has joined.
01:51:41 -!- zzo38 has quit (Quit: MAYBE CARRIER).
01:53:05 <oerjan> for the klein bottle it would also depend on which direction you circumnavigated in, one direction would not mirror
01:54:42 <augur> no russell's paradox
01:54:42 <oerjan> although geometric incoherence might be nice, all the mathematicians in the world would scratch their heads and wonder why it didn't seem to be finite when it was locally spherical...
01:58:08 <Gregor> "Shuttles are a low cost alternative to traveling." -- Star of America (an airport shuttle line)
01:58:16 <Gregor> Apparently by using a shuttle, I am avoiding ... traveling.
01:58:46 <monqy> is it good weird or bad weird
01:58:56 <CakeProphet> I'm not entirely sure yet. A lot of it seems good.
01:59:00 <monqy> hilarious weird or depressing weird
01:59:29 <CakeProphet> it's going to be nowhere near as good at golfing.
01:59:31 <lament> perl 6 logo is the worst
02:00:07 <lament> but it's understandable, and is a pretty good reflection of the aesthetics of the language itself
02:00:29 <CakeProphet> I think now instead of doing <> you do something like $*IN.lines or something?
02:00:58 <CakeProphet> yeah they've added more OO, but it's apparently optional.
02:01:17 <oerjan> CakeProphet: removing one of the most useful features?
02:01:45 <oerjan> i mean i've probably used <> in every perl program i've written
02:02:00 <monqy> I only use perl for the <>
02:02:27 <lament> I only use visual basic for the <>
02:02:40 <CakeProphet> I only use Python for the <>, and everyone hates me.
02:03:03 <lament> haha, i keep forgetting python has it
02:03:41 <oerjan> lament: wait that wasn't a joke (entirely)?
02:04:23 <CakeProphet> but hey, you can give blocks parameters now. it looks weird as hell. my $block = -> $x {print $x;}
02:05:24 <oerjan> that's just lambda expressions, i guess
02:05:59 <CakeProphet> but then there's also: for @list -> $x,$y,$z { ... }
02:06:34 <CakeProphet> the <-> meaning if you modify the variables then you modify the array in-place.
02:08:13 <CakeProphet> oh and hey, you can define prefix, postfix, infix, and circumfix operators.
02:08:16 <oerjan> does that take a list of 3-tuples, or a list which is divided into chunks of 3 ?
02:09:02 <oerjan> because the former could be seen as just a for with higher order arguments
02:09:27 <oerjan> (heck haskell has forM which does that)
02:11:07 <oerjan> hm i guess in a language where you can usefully check how many arguments a function takes, the latter could be defined too
02:11:07 <CakeProphet> Perl doesn't really have tuples. So instead of passing around a "list of tuples" you'd just pass around lists that will later be broken up into n chunks.
02:11:28 <lambdabot> Maybe you meant: . ? @ bf do ft id pl rc v wn
02:11:53 <CakeProphet> ...in Perl 5, is the your number of arguments.
02:12:20 <oerjan> CakeProphet: um in this case you need the _caller_ to know the function's number of arguments
02:12:38 <oerjan> if you wanted for to be able to be defined
02:13:51 <CakeProphet> but yeah, Perl 6 is ridiculously syntax-heavy. More so than Perl 5.
02:14:10 <Patashu> perl sounds like the big tent approach to programming
02:14:58 <lament> it's actually the retarded monkey approach to programming
02:15:46 <oerjan> perl 6, the language that broke the camel's back
02:18:12 -!- CakeProphet has quit (Ping timeout: 240 seconds).
02:18:12 <oerjan> http://hbfs.files.wordpress.com/2009/11/perl6book-parody.jpg
02:24:29 <Sgeo> Why am I so scared of writing Javascript code?
02:24:38 <Sgeo> Just because I'm still only passingly familiar with it?
02:24:59 <oerjan> because javascript code reminds you of moths
02:28:39 -!- SingingBoyo has joined.
02:45:43 -!- augur has quit (Remote host closed the connection).
02:48:13 -!- augur has joined.
02:49:41 <pikhq> My phone is pretty epically borked. :/
02:50:26 <pikhq> The *bootloader*, inexplicably, won't work unless I handhold it.
02:52:12 <pikhq> For reasons unbeknowest to me, it will not boot unless I actually log in via the hardware debugging console and tell it to load Linux.
02:52:22 <pikhq> It boots *perfectly* fine after that, however.
03:02:35 <elliott> <CakeProphet> it's going to be nowhere near as good at golfing.
03:02:51 <elliott> Eh, it has lots of higher-order features and new operators to counteract some very slightly heavier syntax elsewhere.
03:02:55 <pikhq> elliott: Palm Pixi.
03:03:21 <elliott> pikhq: That's what you get for being a WebOS phone. That's what you get for buying the cheaper WebOS phone.
03:03:39 <pikhq> I "bought" it for $0.00.
03:03:42 <elliott> Seriously, webOS phones are the worst abomination ever to hit the market. :p
03:04:08 <pikhq> *Yeeaaaah*, I get the impression.
03:04:37 <pikhq> Hmm. For the *immediate* future, I suppose I can manually boot it.
03:05:09 <pikhq> And when calling AT&T about the warranty, just neglect to mention that it is technically possible to boot it.
03:05:34 <elliott> Palm got bought out by HP which is a great match because HP specialises in selling products nobody really wants to buy.
03:07:36 <SingingBoyo> If anyone can figure out what this does, then you[re a genius. Sort of a funge, but... I wrote my own interpreter, so I can do some interesting things. http://pastebin.com/x0b14EXS
03:08:29 <pikhq> SingingBoyo: Um, just a guess, but HQ9+?
03:08:53 <elliott> I assume [] and ()-enclosed things are some language extension.
03:09:03 <SingingBoyo> In some ways. I added procedures to my interpreter. which are those brackets, yes
03:09:11 <elliott> Not procedures, instructions.
03:09:24 <elliott> And what you've really done is make a variant of the language with only one interpreter :P
03:09:43 <elliott> I guess (cycle) and (End) are some kind of loop. Or, wait, no, you seem to define it.
03:10:02 <elliott> Does [] define and () use somehow?
03:11:17 <elliott> Does it print out hello world and distort it each time?
03:12:16 <SingingBoyo> not quite. Though that could be fun to do too... anyway, your close, but there's no distortion, it just prints multiple times.
03:14:46 <SingingBoyo> yeah, in the end it's just 5 Hello World! messages, each followed by a newline, and the a Bye! with its own newline
03:15:34 <SingingBoyo> I'm going to try that distortion thing. this should be interesting...
03:23:33 <elliott> undefined :: (Sub (I Z) (I Z) r) => r
03:23:34 <elliott> :: (SubHelperThatIsRealHelperHelper b (O Z) r, Equals Z b1 b) => r
03:23:38 <elliott> pikhq: haskell's type system sure is fun to program in
03:24:55 <elliott> wtf, swapping the arguments fixes it
03:25:59 <elliott> ok now i just need to rename those later
03:27:27 <elliott> *Main> :t undefined :: (DivLoop T5 T5 qt rm) => (qt,rm)
03:27:27 <elliott> undefined :: (DivLoop T5 T5 qt rm) => (qt,rm) :: (I Z, Z)
03:27:40 <elliott> don't mind me SingingBoyo, i'm just writing programs in the haskell type system.
03:28:59 <elliott> oh good, i still have bugs
03:31:37 <SingingBoyo> I'm making no progress... I feel like I need to use some sort of array-like storage, which is a pain in funges...
03:33:32 <elliott> RealSubHelperHelper is broken :(
03:33:56 <elliott> undefined :: (DivLoop T100 T5 qt rm) => (qt,rm)
03:33:56 <elliott> :: (O (O (I (O (I Z)))), Z)
03:37:32 -!- azaq23 has quit (Ping timeout: 246 seconds).
03:40:30 <pikhq> This phone was shitty as hell.
03:41:00 -!- azaq23 has joined.
03:41:10 <elliott> All these years and the iPhone is still the only phone that is actually tolerable to use, despite being run with utterly reprehensible policies.
03:41:20 <elliott> Even Android falls down on the simplest things.
03:41:43 <elliott> Children starving in Africa doesn't negate all other woes, even really minor ones like these.
03:41:43 <pikhq> Android at least seems to be in the ballpark.
03:41:56 <pikhq> In line to get seating, perhaps, but hey.
03:42:20 <pikhq> WebOS, on the other hand, seems to be struggling to figure out where its shoes go, and will not make it to the ballpark at all.
03:43:30 <elliott> RealSubHelper Nothing (Just r'),
03:43:33 <elliott> um no why are you wanting that......
03:43:50 <pikhq> anyways, this seems to actually be spontaneous *hardware* failure.
03:44:10 <elliott> Capitalise that A aaaaaaaaaaaaaaaah
03:45:28 <oerjan> I seem to detect Elliott freaking out.
03:45:34 <elliott> oerjan: AOJKDSNFDSJLKGFIOGKDHKDKFHJF
03:45:36 <elliott> DFKJHDFLGVDJLGKHFDBKGHLFGGFH
03:58:16 <SingingBoyo> I now understand why high-level languages were created...
03:58:42 <elliott> SingingBoyo: So they can have primitive yet Turing-complete type systems?
04:02:45 <elliott> WHY IS THIS NOT WORKING SUBTRACTION WORKS PERFECTLY DIVISION WORKS PERFECTLY
04:02:49 <elliott> What do you have against me computer ;_;
04:04:24 <oerjan> it thinks you are meddling with types Man Was Not Meant to Know
04:06:51 <elliott> no, it's way too hideously complex and long-winded at this point for me to not be horribly embarrassed by it, i honestly have a SubHelperThatIsRealHelperHelper typeclass
04:06:56 <elliott> but maybe if i can't solve this i'll change my mind :P
04:07:29 <oerjan> the helper naming scheme does sound to have got out of hand
04:07:31 <elliott> (RealSubHelper/Helper was taken, so I used SubHelperThatIsReal/SubHelperThatIsRealHelper/SubHelperThatIsRealHelperHelper)
04:07:50 <elliott> oerjan: well every "case (f ..., g ..., ...) of" needs one, so yeah
04:10:12 <elliott> oerjan: ive figured it out...
04:10:15 <elliott> the computer wants me to cry...
04:10:51 <elliott> might just sleep on this one
04:13:36 <SingingBoyo> oh my... I have to go back to printer every character my interpreter sees
04:24:13 <elliott> oerjan: im gonna put this on my resume
04:24:19 <elliott> top haskell typeclass candidate erry time
04:24:50 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
04:24:59 <elliott> rip patashu killed by haskell type system
04:25:05 <elliott> will be buried in mass hindley-milner grave
04:29:16 <elliott> remarkably sensible for me to go to bed and sleep on this problem right now
04:29:28 <elliott> please give me a way to make it a totally irrational and stupid decision, so that i can do it
04:29:58 <elliott> SingingBoyo: i have decided this is how my brain works with regard to sleeping
04:30:05 <elliott> it maps out all the possibilities, weighs up all the pros and cons
04:30:07 <elliott> and picks the stupidest option
04:30:32 -!- variable has quit (Quit: /dev/io failed).
04:30:39 <SingingBoyo> I'm still young enough that it figures that staying awake until everything shuts down is a good thing.
04:31:41 <elliott> yeah but it takes me like twenty hours to shut down, and the shutting down manifests as completely breaking and sleeping for like sixteen hours
04:31:45 -!- oerjan has quit (Remote host closed the connection).
04:31:55 -!- oerjan has joined.
04:32:32 <elliott> <elliott> remarkably sensible for me to go to bed and sleep on this problem right now
04:32:32 <elliott> <elliott> please give me a way to make it a totally irrational and stupid decision, so that i can do it
04:32:50 <elliott> should i do a headstand in glass of water and try and sleep in that
04:33:13 <oerjan> only if you put it on youtube.
04:33:14 <SingingBoyo> joy. my interpreter is giving me segfaults
04:37:56 -!- elliott has quit (Ping timeout: 255 seconds).
04:51:31 -!- pikhq has quit (Ping timeout: 252 seconds).
04:51:38 -!- pikhq_ has joined.
04:55:47 -!- variable has joined.
05:00:23 <pikhq_> "Isolated showers" bullshit.
05:00:59 <pikhq_> Uberpsycho hail, sure, but not isolated shows.
05:09:16 <oerjan> this hail show brought to you by ...
05:10:58 -!- SingingBoyo has quit (Read error: Connection reset by peer).
05:16:20 <Sgeo> I think I'm going to compile into an interpreter.
05:16:30 <Sgeo> The sad thing is, I think I have to do this to _save_ memory
05:29:38 <Sgeo> Need to do more tests, but now I'm certain
05:31:02 -!- oerjan has quit (Remote host closed the connection).
05:31:10 -!- oerjan has joined.
05:31:39 <oerjan> that's the second time the broadband briefly disappeared this morning...
05:34:27 <pikhq_> Hmm. I wonder if the BIOS update increased my network connection's stability.
05:35:26 -!- augur has quit (Remote host closed the connection).
05:36:12 <oerjan> oh well it wasn't as bad as earlier this week, when most of norway lost internet and phone connection
05:36:56 <oerjan> (a tree fell over one cable and someone dug through another for the main alternate route simultaneously)
05:38:34 <oerjan> and the whole phone network got unstable even locally
06:01:17 -!- ralc has quit (Remote host closed the connection).
06:51:08 -!- CakeProphet has joined.
06:51:09 -!- CakeProphet has quit (Changing host).
06:51:09 -!- CakeProphet has joined.
06:54:43 -!- augur has joined.
07:00:02 <pikhq_> The people who made it despised all humanity.
07:02:10 <coppro> pikhq_: I've been in the same room as Gosling without knowing who he was, but no one in the room at the time gave the appearance of hating humanity
07:02:45 <CakeProphet> Hey here's an article about Bing failing: http://news.cnet.com/8301-13506_3-20064284-17.html
07:03:57 <coppro> lol he doesn't pay any attention to Google at all obviously
07:08:16 <coppro> or understand how to make search popular
07:08:42 <CakeProphet> yeah like, what people like on Facebook and what they search for have nothing to do with each other
07:09:35 <coppro> more importantly, the fact that the ability to do something akin to Facebook's like on search requires a fundamental property:
07:09:38 -!- augur has quit (Remote host closed the connection).
07:09:40 <coppro> that your search finds what you want
07:10:40 <pikhq_> coppro: In order to most efficiently hate humanity, one must give the appearance of adoring humanity.
07:11:02 <CakeProphet> instead of using a "+1" feature, Google should just keep statistics on how many people click on a link after typing in a certain query. They may already do this..
07:11:07 <pikhq_> In this way, you can better bring about the downfall of humanity, while it is convinced you're worshipping it.
07:12:45 <coppro> CakeProphet: no comment
07:15:51 <coppro> pikhq_: also your country sucks at formatting dates
07:18:24 <pikhq_> coppro: Which is why I use ISO date formats.
07:18:41 <pikhq_> For instance, it is now 2011-05-29T01:18.
07:19:14 <pikhq_> Also, I use 24 hour time and vastly prefer metric units.
07:19:44 <pikhq_> Though the preference for metric units is probably courtesy of having had a physics class, and being horrified at the prospect of doing it without. :P
07:19:53 <coppro> It is 2011-05-29T00:19-07:00
07:20:32 <coppro> in my opinion the one confusing thing about ISO time is the sign flip to get to UTC
07:20:41 <coppro> you have to /add/ seven hours to get URC
07:21:07 <pikhq_> The idea is that you subtract 7 hours *from UTC* to get the time zone.
07:21:45 <coppro> yes, but it makes going back to UTC from the time require an extra step
07:22:10 <pikhq_> Clearly, we should just use UTC as The Time Zone.
07:25:44 <coppro> (actually no, that would be bad. time zones are sane)
07:26:13 <coppro> half the US population doesn't know what EDT is
07:26:16 <pikhq_> coppro: Time zones *can* be sane.
07:26:19 <coppro> another quarter thinks it's the same as EST
07:26:28 <coppro> pikhq_: sorry; the concept of time zones is sane
07:26:53 <pikhq_> Agreed. It's nice to have a notion of time that corresponds to local solar time.
07:27:04 <coppro> when such a thing exists
07:27:08 <pikhq_> The issue is that time zones are often way the hell *off* of local solar time.
07:27:46 <pikhq_> China Standard Time: because one time suffices for the people from the UTC+5 to the UTC+9 meridian!
07:27:48 <coppro> the other issue is that for whatever cultural reason, noon is not midday
07:28:05 <coppro> or typically even close
07:28:19 <pikhq_> Noon is not midday in large part because the time zones don't correspond to local solar time.
07:28:42 <pikhq_> Seriously, very *few* parts of the US are within half an hour of the meridian for their time zone.
07:29:24 -!- augur has joined.
07:29:33 * pikhq_ is in one of the exceptions...
07:29:46 <coppro> if you take 1pm to be midday, though, it gets better
07:30:20 <CakeProphet> pikhq_: the world is going to end if we don't have times consistent with our solar time.
07:30:37 <pikhq_> UTC-6 spreads way, way too far west.
07:30:44 <pikhq_> All the way over to the UTC-7 meridian.
07:31:21 <pikhq_> (and *past*, near the midpoint between UTC-7 and UTC-8, for Canadian UTC-6)
07:31:49 <coppro> UTC-7 does worse in Canada
07:32:09 <pikhq_> Yeah, up north it contains the UTC-9 through UTC-6 meridians.
07:32:36 <coppro> at least we aren't China...
07:32:49 <pikhq_> And US UTC-9 only *barely* contains its own meridian.
07:34:08 -!- azaq23 has quit (Quit: Leaving.).
07:38:15 <pikhq_> Wow. There is a time zone border of UTC+8 and UTC+4:30.
07:39:15 <coppro> it's okay, you can't cross that border
07:39:31 <coppro> pikhq_: my dish soap says "40% MORE*"
07:39:45 <pikhq_> coppro: Yup, gotta love it.
07:39:56 <coppro> *than competitors' 24oz
07:39:58 <CakeProphet> the US has pretty sane time zone divisions actually.
07:40:02 <pikhq_> "40% MORE*" * than 24oz.
07:40:08 <pikhq_> CakeProphet: *Relatively*, yes.
07:40:18 <pikhq_> CakeProphet: It's still consistently far too west.
07:40:45 <pikhq_> It should not be exceptional for my time zone to actually be a good approximation of mean solar time.
07:40:59 <pikhq_> (modulo daylight savings time, which is stupid)
07:42:02 <CakeProphet> honestly as long as it's standardized, I think it matters much.
07:42:04 <coppro> pikhq_: don't forget the date line
07:42:47 <coppro> also, you know where the time zones are the absolute worst?
07:43:34 <coppro> they aren't even monotonic
07:43:49 <pikhq_> Eh, there's other issues there.
07:43:50 <coppro> since every station typically uses time of wherever they most frequently get supplied from
07:43:59 <CakeProphet> wow once you get to the date line the time zones make absolutely no sense.
07:44:00 <pikhq_> You can't really have a meaningful mean solar time there.
07:44:12 <pikhq_> Unless you want a year-long day. :P
07:44:29 <CakeProphet> +13 overlaps with -11 laterally at some points.
07:44:46 <coppro> I wonder if they have midnight parties on the solsitce
07:44:52 <pikhq_> CakeProphet: UTC+12 and UTC-10 border each other.
07:46:47 <coppro> pikhq_: Look at UTC+11 in Russia
07:47:59 <pikhq_> Yeah, UTC+14 is a real thing.
07:48:21 <CakeProphet> +14 is medial with Hawaii and Alaska, which are -10 and -9
07:48:55 <coppro> also good is Australia's time zones
07:48:55 <pikhq_> coppro: It's... over at UTC+9. Wow.
07:49:23 <coppro> They have UTC+8, UTC+9:30, and UTC+10 all in a row
07:50:01 <coppro> they'd actually be pretty close if they made 9:30 9:00
07:51:16 <pikhq_> There's also a de facto UTC+8:45 in there.
07:53:00 <CakeProphet> so apparently Kiribati changed their time zone from -11 and -10 to +13 +14
07:53:50 <CakeProphet> From 29 December 2011, Samoa will advance its daylight savings time from UTC-10 to UTC+14 (and its standard time from UTC-11 to UTC+13), essentially moving the international date line to the other side of the country.
07:55:01 <coppro> trade with western nations usually
07:55:13 <CakeProphet> do they just want to be cool and be the first ones to experience a given time?
07:55:21 <coppro> note that western nations are east of eastern ones
07:55:32 <coppro> oh wait they're moving back a day
07:55:54 <coppro> so that would be trade with eastern nations I guess?
07:56:53 <CakeProphet> relative to Samoa, but not in terms of arbitrary absolute eastern and western.
07:57:16 <coppro> trade is definitely easier to coordinate when you aren't shipping packages the day before they arrive
07:58:44 <CakeProphet> As a British colony, Kiribati was centered in the Gilbert Islands, just west of the old date line. Upon independence in 1979, the new republic acquired the Phoenix and Line Islands from the United States and the country found itself straddling the date line. Government offices on opposite sides of the line could only communicate by radio or telephone on the four days of the week when both sides experienced weekdays simul
08:10:21 <Gregor> Hooray for air travel at miserable times of the night.
08:15:38 -!- Patashu has joined.
08:23:27 -!- monqy has quit (Quit: hello).
08:25:07 -!- lament has quit (Ping timeout: 240 seconds).
08:30:14 -!- oerjan has quit (Quit: leaving).
08:39:33 <Vorpal> huh, how did I keep connection during the night? Wasn't the laptop in s2ram???
08:39:55 <Vorpal> I guess that must have failed somehow, since scrollback indicates I'm well and fully connected
08:40:27 <Vorpal> (or I still haven't woken up, and I'm dreaming this, but somehow that seems unlikely, too detailed and so on)
08:50:28 <Patashu> I'll come by and pinch you just to make sure
08:51:32 <Patashu> I have to book tickets in advance for that
08:51:38 <Patashu> you should have warned me you were going to be dreaming :(
08:51:52 <Vorpal> not sure if the ash cloud is still there
08:52:49 <Vorpal> mmm nope, if LFV says it is gone, then it is gone
08:53:03 <Vorpal> (LFV is the Swedish equiv of FAA)
09:09:21 <Vorpal> Zwaarddijk, what? luftfart = air traffic
09:10:04 <Zwaarddijk> Vorpal: do you think most non-swedophones know though?
09:10:12 <Zwaarddijk> no, they don't, so it's cheap humour at your expense
09:10:45 <Vorpal> hm interesting, fart means traffic in many different concatenated words, but sv:fart = en:speed (as in, velocity)
09:11:05 -!- myndzi has quit (Ping timeout: 255 seconds).
09:11:21 -!- retaehc has changed nick to cheater__.
09:11:33 <Vorpal> I guess sv:fart in the meaning of traffic is somewhat archaic and thus only exists in concatenations
09:11:41 <Zwaarddijk> fart is rather likely derived from "fara" (not 'danger', but 'to go (by sled or other implement')
09:11:45 <Vorpal> there is sjöfart too, meaning sea traffic
09:11:53 <Vorpal> Zwaarddijk, hm good point
09:12:12 <Zwaarddijk> my guess is they're not even just identical, they're originally the same word
09:12:23 <Vorpal> yes likely it comes from there
09:12:25 <Zwaarddijk> something meaning something a bit like "travelling, travelness"
09:12:57 <Zwaarddijk> then one of the meaningings (travelness) easily can be taken to refer to speed
09:13:12 <Zwaarddijk> and the other to travelling in general
09:13:55 <Vorpal> Zwaarddijk, this makes me wonder where fara (danger) comes from though
09:17:09 <Zwaarddijk> there's also scandinavian cognates, like icelandic far (anger, enmity)
09:18:30 <Vorpal> that has to go back quite a while I guess
09:18:44 <Vorpal> Iceland has been rather isolated iirc
09:23:04 <Zwaarddijk> well, it's also quite some time since early middle high german
09:23:21 <Zwaarddijk> all of these, btw, can be traced to proto-indo-european, which is even further back
09:23:27 <Zwaarddijk> like, greek has a cognate to it as well
09:23:40 <Zwaarddijk> peria (but that has had its meaning diverge even more)
09:24:15 <Zwaarddijk> (of course the germanic word lso has had divergences)
09:28:26 <Zwaarddijk> some programming language should have a ..)-thingy hich means "fill out all missing parentheses at this place"
09:29:02 <Zwaarddijk> and maybe a ..)[-N] (N = integer or variable), which means "leave out N missing parentheses"
09:29:34 <Vorpal> Zwaarddijk, how would it tell how many were missing
09:29:47 <Vorpal> Zwaarddijk, would it close to top level? For Lisp that would be less than useful
09:30:09 <Zwaarddijk> normally it'd close to top level, that's why I included the [-N] notation
09:30:41 <Vorpal> Zwaarddijk, did you say variable?
09:31:00 <Vorpal> Zwaarddijk, I think that would mean you just made parsing require executing :P
09:31:21 <Vorpal> which means parsing is undecidable
09:31:27 <Zwaarddijk> that's only possible in an interpreted langue, I guess
09:31:56 <Vorpal> Zwaarddijk, and I would say it is undesirable even in an interpreted language
09:32:42 <Vorpal> Zwaarddijk, so why did you suggest it? :D
09:33:01 <Zwaarddijk> this channel is about estoteric programming langs, is it not
09:33:26 <Zwaarddijk> where undesireable features are used for all the mileage they can offer
09:33:49 <Vorpal> Zwaarddijk, yes, now make a language which depends on variables in such a syntax to be TC :P
09:35:12 <Zwaarddijk> I mean, when I said "I will" I didn't promise that I will successfully make such a language, but I promised i will go for it
09:38:31 <CakeProphet> all of my programming languages support non-structured data.
09:39:35 -!- Phantom_Hoover has joined.
09:39:41 <Phantom_Hoover> http://www.smbc-comics.com/index.php?db=comics&id=2260&utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+smbc-comics%2FPvLb+%28Saturday+Morning+Breakfast+Cereal+%28updated+daily%29%29
09:39:56 <Phantom_Hoover> I don't think I can actually get surprised by trivia any more.
09:41:08 -!- MigoMipo has joined.
09:55:48 <Zwaarddijk> Vorpal: I think that idea would fit well in with my other stupid recent ieas, like "generalized loops" and stuff
09:57:10 -!- pikhq has joined.
09:57:17 -!- pikhq_ has quit (Ping timeout: 250 seconds).
09:57:30 <Vorpal> Zwaarddijk, hm what are those?
09:58:54 <Zwaarddijk> a temporary name for loops that can generate subloops depending on the objects they act on, and the notation used to refer to parts of those objects
09:59:51 <Zwaarddijk> so like, a way of generating nested loops
10:04:27 -!- sebbu has quit (Ping timeout: 264 seconds).
10:05:41 -!- sebbu has joined.
10:05:41 -!- sebbu has quit (Changing host).
10:05:41 -!- sebbu has joined.
10:30:31 <oklopol> "[06:41:58] <elliott> All these years and the iPhone is still the only phone that is actually tolerable to use, despite being run with utterly reprehensible policies." <<< my nokia is far better than iphone
10:30:57 <oklopol> you can call, send an sms and play snake 2
10:32:12 <oklopol> and the battery lasts for weeks
10:33:27 <oklopol> and i can drop it all i like
10:34:04 <Patashu> gaming nirvana right there
10:34:15 <Phantom_Hoover> Reminds me of the best reason to have an old, cheap phone: you can say "ah, but I can do something with it your iPhone can't" and then dropkick it.
10:35:52 -!- augur has quit (Ping timeout: 250 seconds).
10:36:13 <Patashu> the problem I have with things like the iphone is that it's essentially market dominance. you simply -can't- do as well with a new smartphone as the iphone as it won't ever have as many apps as it. everyone who's generating content for it is just cementing its place there
10:36:47 <oklopol> another reason is you can do everything you'd possibly ever want to do with any phone ever invented, except perhaps the first two that didn't have the time
10:43:17 <Sgeo> My Nexus One doesn't seem to get damaged by all the drops...
10:43:27 <Sgeo> Then again, lately it can barely hold an Internet connection
10:43:51 <oklopol> yeah well buy a fucking laptop
10:44:19 <Sgeo> I'm typing on it right now
10:44:39 <oklopol> sure sure i'm just being hardcore iphones and shit suck dude
10:44:43 <Sgeo> Also, weird that you say that right after I finish listening to Tim Minchin's Pope Song
10:44:47 <oklopol> it's raining soooooooo hard
10:44:53 <oklopol> i should probably go outside
10:47:12 -!- pikhq has quit (Ping timeout: 240 seconds).
10:47:18 -!- pikhq has joined.
10:48:29 <oklopol> i mostly use mine so i know what time it is
10:48:44 <oklopol> although lately i don't really care what time it is
10:48:49 <oklopol> i could never have a watch
10:49:15 <oklopol> i do, but i could never constrain it
10:49:25 -!- augur has joined.
10:50:16 <oklopol> i don't like carrying stuff in my pockets either so really i'd just prefer being naked and carrying whatever i need in my hands
10:51:19 <Gregor> My jacket has 37 pockets!
10:51:43 <Gregor> A powerful observation.
10:51:45 <Vorpal> Phantom_Hoover, personally I find that watches itch against the skin. So I use my phone for getting approximative chronometric measurements.
10:52:21 <Gregor> Y'know, a human being would say "checking the time"
10:53:02 <Vorpal> there goes my plan for taking over the world
10:53:10 <Phantom_Hoover> And they wouldn't try to make themselves sound smart by saying 'approximative' when 'approximate' would do.
10:54:11 <Vorpal> Phantom_Hoover, come on, what is wrong with 'approximative'?
10:54:37 <Vorpal> Phantom_Hoover, why not. It is a perfectly valid word.
10:55:00 <Vorpal> Phantom_Hoover, why is that an issue
10:55:22 <oklopol> it's a perfectly cromulative word
10:55:55 -!- eremitah`off has joined.
10:56:35 <Vorpal> anyway, using overly complicated wording can be fun, though not especially useful
10:57:18 <oklopol> okay i can't concentrate with all that sexy dribbling ->
11:04:27 <olsner> it'd be neat if finnish had a cromulative suffix for making any word cromulent
11:07:24 <olsner> hmm, I'd like to say cromulative *case* there, but don't cases only apply to nouns? (it'd be unfortunate if cromulation could only be done to nouns...)
11:09:42 <Gregor> Let's hear the love for airports!
11:11:11 <olsner> love them? I don't even like them :/
11:12:00 <fizzie> olsner: Nouns have cases, while verbs have tenses, voices, moods and whatnot; I think "forms" is a generic word for both.
11:12:07 <Gregor> I'm learning to ... be far too used to them *sigh*
11:12:36 <olsner> except one small thing I like about the local airport here: when I was trying to find out how early I'd need to check in, their web site says "please remember to check in before the departure time of your flight"
11:12:42 <fizzie> Also you ugly americans seem to have a rather sucky railways compared to, say, Europe. (Not to mention something like Japan.)
11:12:48 <olsner> also it's within walking distance
11:13:52 <Gregor> fizzie: Like our Internet, we suffer from got-it-first syndrome.
11:14:12 <Gregor> We built it first, so ours is the oldest and shittiest.
11:14:35 <fizzie> "In 1804, using high-pressure steam, Richard Trevithick demonstrated the first locomotive-hauled train in Merthyr Tydfil, United Kingdom."
11:14:55 <Gregor> Yes, because building the locomotive engine is totally the same as building a national sequence of railroads X_X
11:15:05 <Phantom_Hoover> [[In 1830, the first intercity railway, the Liverpool and Manchester Railway, opened.]]
11:15:39 <fizzie> I did the whole Finnair "check in online up to 36 hours before departure, print out the boarding pass, then just drop your bags on the baggage drop desk" thing for my Prague-Helsinki flight yesterday, then I couldn't find a baggage drop desk at the airport at all, so ended up queueing for almost an hour for the Finnair check-in desks (two).
11:16:20 <oklopol> well isn't queueing a pretty magical experience tho
11:17:37 <Phantom_Hoover> Gregor, the UK seems to have done the whole national railway network first.
11:18:01 <oklopol> you rarely get to be part of a data structure, and being in a stack gets pretty uncomfortable with that many people
11:18:38 <Vorpal> oklopol, ever tried being in a self-balacing b-tree?
11:19:15 <oklopol> i ended up helping it balance us and got kicked out
11:20:07 <Patashu> never agree to help out inside a bloom filter
11:20:10 <Patashu> those things are so nasty and unreliable
11:21:16 <oklopol> bloom filter = you can ask if someone already hashed to the same value your object hashes to?
11:21:16 -!- BeholdMyGlory has joined.
11:21:33 <Patashu> bloom filter is where you hash each incoming element and OR it onto a bitfield
11:21:43 <Patashu> you can get false positives
11:21:52 <oklopol> so even worse i guess but doesn't use much space
11:21:54 <Phantom_Hoover> There's probably a decent fetch modus reference here but I can't think of one.
11:22:02 <Patashu> it's constant in space and time but probabilistic
11:22:18 <oklopol> but that's actually rather ingenious
11:22:29 <Sgeo> Making an efficient switch/case constr.. n/m
11:22:33 <Patashu> a bloom filter modus would be too much like dave's hash modus I think
11:23:04 <Patashu> http://upload.wikimedia.org/wikipedia/en/thumb/c/c4/Bloom_filter_speed.svg/360px-Bloom_filter_speed.svg.png example use
11:23:39 <Vorpal> Phantom_Hoover, I suggest using a bloom filter fetch modus, that would be hilarious
11:23:53 <Patashu> oh, turns out bloom filters are popular http://en.wikipedia.org/wiki/Bloom_filter#Examples
11:24:23 <Vorpal> olsner, homestuck thing (weird webcomic)
11:24:28 <Patashu> in Homestuck, the normal inventory system was replaced by ones with quirky rules
11:24:38 <Patashu> the first fetch modus you were introduced to was I believe the stack modus
11:24:44 <Patashu> you could put stuff in but only take out the most recent addition
11:24:56 <Patashu> which lead to Wacky Hijinks
11:25:11 <fizzie> Phantom_Hoover: "You wonder if you can just... Just sort of reach over... And... Gamzee: Answer troll."
11:25:16 <Vorpal> olsner, there was queue, hash array, tree and a few more iirc
11:25:37 <Phantom_Hoover> The actual data structure based ones we saw were stack, queue, tree, hashmap and array IIRC.
11:25:44 <Vorpal> Phantom_Hoover, oh and when someone tried plain array he or she said it was boring
11:25:57 <Vorpal> and switched to an array of dequeues iirc?
11:25:58 <fizzie> http://mspaintadventures.wikia.com/wiki/Sylladex list 13 fetch modi.
11:25:58 <Patashu> this late into the comic fetch moduses aren't brought up anymore
11:27:06 <Patashu> I like how there's a big list of hypothesized mechanisms for the fetch modi we never saw get used, presented as though it were something bordering official
11:27:59 -!- sebbu has quit (Read error: Connection reset by peer).
11:28:30 -!- sebbu has joined.
11:28:30 -!- sebbu has quit (Changing host).
11:28:30 -!- sebbu has joined.
11:28:35 <fizzie> http://www.mspaintadventures.com/?s=6&p=003899 and the following one make up one of my favourite sylladex-based jokes.
11:29:19 <Patashu> the encryption modus is a parody of the first modus/the trouble john had with it because the readers suggested dumb things with high frequency
11:30:04 <fizzie> "Sometimes you just like to pick stuff up and watch the colors. It's so beautiful. Life is beautiful."
11:35:27 <Patashu> there are some pretty interesting esoteric data structures out there
11:36:00 <Patashu> thing is they don't normally provide a new function, just do it faster or with less space
11:36:06 <Patashu> you'd only ever seek them out if you had an efficiency problem
11:39:00 <fizzie> There is a vaguely disturbing amount of adult Homestuck (mostly troll-related) fanart/fanfiction in the webs. (E.g. MSPAchan's "Adult Fanart" section has some 1320 postings in ~80 threads.)
11:39:55 -!- cheater__ has quit (Ping timeout: 276 seconds).
11:40:36 <Sgeo> Wouldn't troll porn be utterly unrecognizable to humans, and visa versa?
11:40:41 <Phantom_Hoover> fizzie, ah, you never saw elliott's reports on the fandom.
11:41:27 <Phantom_Hoover> Suffice to say that the ones who make porn of it aren't the end of the awfulness.
11:42:52 <Patashu> it would be pretty cool to invent a new data structure
11:42:54 <Patashu> I wonder what's not taken yet
11:47:12 <fizzie> Build the quadruply linked list. It's got two pointers to the next and two to the previous element, so that if a tornado or something strikes and one of the pointers break, the list doesn't come unraveled.
11:47:36 <Vorpal> hm, linked list and arrays (and possibly records) form the basis of every data structure in some sense. Trees are just branching linked lists.
11:47:50 <Patashu> how is a tree not fundamentally different from a linked list then?
11:48:06 <Patashu> hmm... . o O ( array tree? )
11:48:25 <Vorpal> Patashu, array tree, do you mean b-tree as opposed to binary tree?
11:48:34 <Patashu> hmm yeah, I suppose b-tree would be that
11:48:47 <oklopol> also there could be two stacks in the middle-ish and the tops of those stacks would have two-way links to every element so that the middles of the list don't hang too low and cut the masts of ships going under
11:50:45 <Patashu> I saw this testing program once, called something like Jinx. it looked for possible race conditions in multithreaded programs and deliberately arranged their timing to cause it
11:50:49 <Vorpal> <Patashu> how is a tree not fundamentally different from a linked list then? <-- from a pure structural point of view it is just a branching linked list. From a usage point of view it is however quite different
11:51:25 <Vorpal> Patashu, I believe valgrind --tool=helgrind (or whatever the tool was called) can do that
11:52:15 <Patashu> http://valgrind.org/docs/manual/hg-manual.html Ah, so it does
11:52:22 <Patashu> I was thinking of a different one but this works too
11:53:22 <oklopol> a tree is fundamentally different from a linked list in the sense that lists are a proper subset of trees; you can implement trees using linked lists though
11:54:11 <oklopol> ofc both can be thought of as a mess of cons cells
11:58:53 <Vorpal> oklopol, yes, arrays however is not a mess of cons cells. Making it fundamentally different
11:59:15 <fizzie> You can think of the mess of cons cells (with pointers) as an array with integers in it, though.
11:59:47 <oklopol> maybe i'll skip the obvious comeback
12:00:54 <Vorpal> <fizzie> You can think of the mess of cons cells (with pointers) as an array with integers in it, though. <-- true
12:04:57 <Patashu> man, multithreading is so -complicated-
12:05:08 <Patashu> is it bad design like SQL and its injection issues or just something fundamental about it?
12:05:44 <oklopol> actually it's not hard for anyone else, i guess you're just dumb
12:06:43 <olsner> no problems are hard really, it's just that most people are too stupid for most of them
12:07:08 -!- copumpkin has quit (Ping timeout: 252 seconds).
12:07:13 <oklopol> well they are non-local problems so they tend to be hard in a non-trivial program
12:07:27 <Phantom_Hoover> Hilariously, I was getting downvoted to hell for predicting exactly this on /r/Minecraft nearly a week before the update.
12:07:34 -!- copumpkin has joined.
12:07:48 <oklopol> ...he quoted someone who has actually done serious multithreading.
12:11:42 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
12:12:36 -!- Phantom_Hoover has joined.
12:17:09 -!- pikhq_ has joined.
12:17:39 -!- pikhq has quit (Ping timeout: 264 seconds).
12:27:18 -!- cheater__ has joined.
12:31:26 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
12:42:42 <Phantom_Hoover> http://www.reddit.com/r/math/comments/hmim4/hey_rmath_im_using_this_summer_to_learn_a/
12:43:00 -!- ralc has joined.
12:44:50 -!- FireFly has joined.
12:56:49 <oklopol> Using the NumPy and SciPy libraries will give you the tools you need to solve harder math problems.
12:57:22 <oklopol> yeah i prove most my graph-related theorems using numpy
13:08:11 <Vorpal> oklopol, but isn't python rather slow, both to execute and to program in.
13:08:27 <Vorpal> I mean, a higher level language might be better, and also likely faster
13:10:18 <Vorpal> oh it was mentioned in that link. That explains it. Irony.
13:16:27 -!- pikhq_ has quit (Ping timeout: 240 seconds).
13:18:01 -!- pikhq has joined.
13:22:35 -!- augur has quit (Remote host closed the connection).
13:26:39 <Vorpal> why is it that for multi-monitor setups with inequal sizes for the monitors you get some non-visible space in some corner. Why does the window system have to use a rectangle to represent the possible screen area
13:27:09 <Vorpal> this means it possible to drag the mouse, or windows, where you can't see it/them
13:27:33 <Vorpal> rather it should make such areas inaccessible by default.
13:27:53 <Phantom_Hoover> OK, the SA Homestuck thread is referring obliquely to something called the Kanayachair, with the instructions for finding it being "google 'kanaya doll'".
13:28:08 <Phantom_Hoover> Will my curiosity overcome the fact that I am using my neighbour's wifi?
13:28:21 <Vorpal> Phantom_Hoover, try encrypted.google.com
13:28:58 <Vorpal> Phantom_Hoover, wait, you get inline image results on encrypted.google.com still
13:29:56 <Vorpal> Phantom_Hoover, wait there are images on encrypted.google.com now
13:30:21 <Vorpal> when did they add that heh
13:30:32 <Vorpal> I mean image search is listed in the side bar
13:33:33 <Vorpal> Phantom_Hoover, interesting, googling PCMCIA rule 34 with safe search off gives me nothing still.
13:34:15 <Vorpal> Phantom_Hoover, standard for removable extension cards in laptops. Predates PC Card
13:34:41 <Vorpal> well I think it turned into PC Card
13:34:49 <Phantom_Hoover> Vorpal, well, you could always commission someone to draw some for you.
13:34:57 <Vorpal> Phantom_Hoover, har har :P
13:35:16 <Phantom_Hoover> No longer need those with weird fetishes be left out in the cold!
13:35:43 <Vorpal> I wonder if there is porn on SCSI
13:36:20 <Vorpal> well hm I get some non SCSI related hits
13:37:12 <Vorpal> Phantom_Hoover, findings are inconclusive. The porn in there seems completely unrelated to SCSI
13:44:36 <Phantom_Hoover> Perhaps there will be something suitably interface-based if you simply google "computer porn"?
13:45:04 <Phantom_Hoover> Of course, it probably won't be standards-compliant, but it might be all you can get.
13:45:25 -!- augur has joined.
13:46:39 <Vorpal> Phantom_Hoover, anyway it seems rule 34 is thus invalid. That is a much more interesting fact.
14:00:03 <fizzie> There are those boards where you can request rule 34 on a topic, I think.
14:04:08 <fizzie> The numpy/scipy pair wasn't too shabby alternative in some contexts for MATLAB. I mean, the pure-python execution speed isn't so very critical, it uses BLAS/LAPACK for the actually costly linear-algebra options and so on.
14:05:27 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
14:06:33 <fizzie> And a multi-monitor setup done in the old-fashioned way, with separate X screens, doesn't have to be rectangular. The ones that are xrandr/twinview-style "single framebuffer, multiple views to it" do, maybe because no-one wants to handle non-rectangular framebuffers in graphics memory; but even there those non-visible areas are marked as such and normally windows and the mouse cursor shouldn't go there.
14:07:59 <Vorpal> fizzie, hm... it is possible to drag the mouse out to the non-visible areas. Also windows. At least windows don't open there by default
14:08:00 <fizzie> Added-value element: from the above sequence of replies you can deduce I don't read the visible backscroll oldest-to-newest, nor newest-to-oldest, but in some sort of mixed order.
14:08:42 <fizzie> That's probably the window manager's fault, then.
14:08:53 <Vorpal> fizzie, I believe it is metacity
14:09:11 <fizzie> Though if it's possible to drag windows partially outside the desktop itself -- which it often is -- it should consistently be possible to drag things to the non-visible areas too.
14:09:26 <Vorpal> fizzie, but the mouse can go to the non-visible areas too
14:09:34 <fizzie> That's just silly, then.
14:09:35 <Vorpal> dragging windows does indeed make some sense
14:10:14 <fizzie> Back when I had a non-rectangular desktop, the mouse didn't enter the hidden area; but that was of the "multiple X screens" variety, come to think of it.
14:10:40 <fizzie> "xwd -root -out blah.xwd" did produce a bitmap with some garbage in the missing parts.
14:10:45 <Vorpal> fizzie, anyway on the virtual-desktop "preview" thingy down in the lower gnome panel, it represents the whole rectangular area
14:10:57 <Vorpal> including those windows dragged outside
14:11:24 <Vorpal> but windows dragged outside the "real" edges are definitely cut off
14:11:34 <cheater__> discombobricating: http://www.kriminoviny.sk/zvolen-dopravna-nehoda-na-zeleznicnom-priecesti/2007-07-19/
14:11:44 <fizzie> You can have X in such a mode that one screen scrolls vertically to keep the mouse cursor visible.
14:12:13 <Vorpal> fizzie, yes I know. Managed to get that by mistake a few times back when you did manual config
14:12:25 <Vorpal> I used twm back then heh
14:13:00 <Vorpal> fizzie, the large scrolling screen thing works quite well with twm, but not with DEs like gnome and kde
14:13:16 <fizzie> The setup I have at work is non-rectangular but done as a single screen + xrandr (set up by Gnome's monitor thingie, I think) for outputs; I don't quite remember how it behaves.
14:13:37 <fizzie> At least popup menus manage to properly avoid opening into the empty area, which wasn't the case for some early setup way back when.
14:13:37 <Vorpal> fizzie, oh btw my setup is laptop screen (15.4" 16:10) below desktop monitor (22" or 24", forgot which, 16:9)
14:13:42 -!- Phantom_Hoover has joined.
14:14:08 <fizzie> I'm not sure what it does for the mouse cursor.
14:15:15 <fizzie> The multi-screen setup was funny in the sense that in the one "tall" screen (1280, as opposed to 1200) the lowest 80 pixels simply didn't allow the cursor pass at all, so sometimes when you just wanted to drag the cursor from the tall screen to the non-tall ones it would get stuck if it were in the bottom and the mouse movement didn't have a large enough y-direction component.
14:15:30 <Vorpal> fizzie, one issue is that the top gnome panel thing is on the laptop screen. And metacity decided maximising on that screen means adjusting for the lower gnome panel (as usual) but expanding the window to the top of the screen. So the top is hidden under the upper gnome panel
14:16:09 <Vorpal> fizzie, how do you mean
14:16:42 <Vorpal> fizzie, how would you unstick it?
14:17:34 <fizzie> Just by moving up; it would slide like the cursor normally does at the edge of the desktop. It's just that you'd assume that to move the cursor to the screen on the left you'd just need a general "swipe to the left without further thinking" motion, but that wasn't enough in all cases, since you might hit that wall.
14:17:53 <Vorpal> fizzie, so why were those 80 pixels unusable?
14:18:29 <fizzie> The screen was 1280 pixels tall, and the others only 1200, and there wasn't any desktop to go to, left from the bottom 80 lines.
14:18:44 <fizzie> So it just made it an impassable thing like the normal desktop edge.
14:19:21 <Vorpal> fizzie, I thought you meant it used the minimum height all across or something as silly
14:19:35 <Vorpal> so the lower 80 pixels on the tall monitor were inaccessible
14:19:48 <fizzie> Ah, no. That would've been quite a lot worse.
14:20:37 <fizzie> As far as cursor motion is concerned, I still would've preferred it to either wrap to the bottom of the non-tall screen when moving out of the 80 lowest lines of the tall screen, or alternatively linearly scaling the relative heights (which incidentally is what Synergy does by default).
14:21:05 <fizzie> I think some other setup worked like the first approach there.
14:21:28 <Vorpal> fizzie, I think synergy can do both of those. But that is for multiple computers
14:21:37 <Vorpal> though I guess you could apply it between x servers
14:21:41 <Vorpal> seems like a stupid idea however
14:21:48 <fizzie> It's quite configurable, yes; you can specify arbitrary mappings.
14:22:04 <Vorpal> fizzie, how did you drag windows between the screens with that style of setup?
14:22:21 <fizzie> They were different X screens, so the answer is just "I didn't".
14:23:01 * Vorpal tries that xwd command above
14:23:26 <fizzie> Also couldn't even open Firefox on more than one monitor, since it -- or pretty much anything else either -- can't connect to different screens from the same process, and you can't run multiple copies of the same profile simultaneously.
14:24:03 <Vorpal> weird. It gives black bg to the icons in the notification bar or whatever it is called
14:24:38 <fizzie> Do you mean the indicator applet?
14:27:52 <Vorpal> fizzie, where things like nm-applet and the mixer icon goes
14:28:31 <fizzie> nm-applet falls back to systray if it can't find an ayatana-indicator-holder device.
14:28:49 <fizzie> And I think it even dynamically switches if one appears/disappears.
14:28:55 <fizzie> But yes, that thing, then.
14:29:24 <fizzie> (I wonder what nm-applet does if there's no systray either.)
14:30:16 <Vorpal> ayatana-indicator-holder <-- ??
14:30:48 <fizzie> The indicator applet is the thing that shows Ayatana Indicators; the icon-and-menu thingies.
14:30:59 <Vorpal> I have nothing called ayatana* according to tab complete in bash
14:31:11 <fizzie> Yes, that's just the name of the project.
14:31:39 <Vorpal> fizzie, btw the right click menu on the applets is weird. It scrolls up. But is on the same screen
14:31:44 <Vorpal> like it was displayed above the screen
14:31:50 <Vorpal> and you have to scroll the menu
14:31:59 <Vorpal> if you see what I mean
14:32:35 <fizzie> Not entirely, but it sounds weird anyway.
14:33:44 <Vorpal> well... fizzie imagine the menu items are displayed like the right click menu went up. But the actual menu area goes down. And you have a ^ at the top of the displayed area that when you move the mouse to it scrolls the menu items in by moving them downwards smoothly
14:33:48 <Vorpal> fizzie, see what I mean now?
14:33:49 -!- oerjan has joined.
14:34:04 <fizzie> Yes. I think I've seen that kind of behaviour somewhere.
14:34:21 <Vorpal> fizzie, it seems to only affect the indicator-area handle thingy in fact. And right click for nm-applet. Nothing else
14:34:27 <Vorpal> not left click for nm-applet either
14:35:11 <fizzie> A weird thing about the laptop: if I enable the Bluetooth, it autostarts bluetoothd (as "bluetoothd --udev") but that copy of bluetooth just simply does not work; if I kill it and start one manually (with no arguments; haven't checked whether the --udev part makes a difference) things work just fine.
14:36:40 <Vorpal> fizzie, I have sometimes had to restart bluetooth daemon, the /etc/init.d/bluetooth-whatever one that is
14:36:45 <Vorpal> after enabling bluetooth
14:37:25 <Vorpal> fizzie, if I don't the bluetooth status according to the bluetooth menu goes on and off several times per second (remains on according to the bluetooth led though)
14:37:49 <Vorpal> speaking of which... where did the bluetooth menu go
14:39:26 <Vorpal> I don't think gnome-panel likes my monitor setup... nor does it like switching between different setup
14:39:36 <Phantom_Hoover> So wait, have you moved to less tangible peripheral erotica?
14:39:41 <Vorpal> believe it or not... it was below the clock
14:40:16 <Vorpal> Phantom_Hoover, ... no
14:40:42 <Vorpal> Phantom_Hoover, besides I was just interested in if there was porn for something as boring as PCMCIA. I don't have a fetish for it.
14:40:59 <Vorpal> Phantom_Hoover, such a fetish sounds way to normal anyway
14:41:35 <Vorpal> anyway hm maybe killing gnome-panel and restarting it will help. Because I can't get it out from under the clock...
14:41:55 <fizzie> You're more of an ExpressCard man then, eh?
14:42:37 <fizzie> (Was going to say CardBus, but I guess that's technically just PCMCIA version X.Y.)
14:43:55 <oerjan> <Phantom_Hoover> http://www.smbc-comics.com/index.php?db=comics&id=2260&utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+smbc-comics%2FPvLb+%28Saturday+Morning+Breakfast+Cereal+%28updated+daily%29%29
14:44:25 <oerjan> there is no f way that is the canonical url for whatever you wanted to link
15:04:33 -!- Lymia has quit (Ping timeout: 252 seconds).
15:05:44 -!- Lymia has joined.
15:23:31 -!- augur has quit (Ping timeout: 276 seconds).
15:23:57 -!- augur has joined.
15:39:42 <lifthrasiir> MigoMipo: Migol 11 suggestion: shouldn't I/O error include a "permission denied" value?
15:40:14 <MigoMipo> Hmm, as in opening files for example?
15:40:33 <lifthrasiir> or when the interpreter refuses to open a file.
15:41:48 <MigoMipo> Maybe, I haven't thought a lot about error handling. The current code just sets error to 1 when any java.io.IOException occurs
15:45:31 <lifthrasiir> also i think reading from \ can be used to poll the interrupt.
15:48:00 <lifthrasiir> hmm, no, i misread the specification. as the interrupt immediately takes the control the polling is not meaningful..
15:51:30 <Vorpal> lifthrasiir, hmmm.. SSA would allow you to detect variables with local scope in bf right? At least to some degree.
15:51:33 <lifthrasiir> MigoMipo: what does a preceding _ before ":label" mean?
15:51:44 <MigoMipo> Oh, forgot to write about that
15:52:03 <lifthrasiir> wait, then the statement label goes *after* the statement?
15:52:40 <MigoMipo> Slightly confusing, but I kinda like the suffix syntax
15:52:40 <Vorpal> lifthrasiir, what sort of algorithm would be able to optimise this btw, [-]+>[-]+>[-]<<[>]?
15:52:56 <lifthrasiir> Vorpal: SSA itself does not do such operations, but i think the algorithms operating on the SSA can do it.
15:53:09 <Vorpal> lifthrasiir, right. And the second case?
15:53:39 <Vorpal> lifthrasiir, I think trying to figure out minimum/maximum moved distance for unbalanced loops might be useful.
15:53:45 <lifthrasiir> Vorpal: that would require some kind of abstract interpretation.
15:53:52 <Vorpal> lifthrasiir, it would definitely be possible at the start of the program
15:54:11 <lifthrasiir> of course. but if you are in the middle of the biggish program, say, LostKng?
15:54:18 <Vorpal> lifthrasiir, you could do it for the seek case (that is [>] [>>] and so on, plus [<] etc)
15:55:14 <Vorpal> lifthrasiir, if you keep track of something like "known zero, known non-zero, unknown"
15:55:15 <lifthrasiir> i meant that [>>] in the middle of the program cannot be optimized (rather than the direct translation) without the knowledge of the approximate memory state
15:55:44 <Vorpal> lifthrasiir, yes indeed. But you keep track of memory anyway right, otherwise how could you optimise into "set" rather than "add"
15:55:49 <lifthrasiir> and the approximate memory state is not that simple.
15:56:30 <lifthrasiir> esotope-bfc does a local analysis, so codes like {3}=0;{3}+=4 can be (trivially) optimized to {3}=4.
15:56:39 <lifthrasiir> but it does not track the whole state of memory yet.
15:56:41 <Vorpal> lifthrasiir, even my bf compiler did some basic stuff, like "known value" to be able to propagate constants and so on, including across balanced loops.
15:56:45 -!- pikhq has quit (Ping timeout: 246 seconds).
15:57:00 -!- pikhq has joined.
15:57:08 <oerjan> it seems like tracking memory across unbalanced movement would be difficult
15:57:08 <lifthrasiir> then i should implement it to beat yours ;)
15:57:23 <Vorpal> lifthrasiir, your compiler does way better optimisation of nested loops than mine did
15:57:27 <Vorpal> lifthrasiir, so you already beat me on that
15:57:38 <lifthrasiir> i had vague idea on the memory state; see bfc/memstate.py for that.
15:58:17 <Vorpal> lifthrasiir, basically my intpreter had a dict with known expressions for memory offsets. Discarding it after unbalanced loops and adding the only known value in (that the current cell must be zero, or we would not have left the loop)
15:59:50 <Vorpal> lifthrasiir, I found this quite easy to code actually. For balanced loop it cleared out values that it could not know. Like taking the set of offsets modified in the loop and removing them from the dict. Well it did propagate some known state out of the loop. Like if a value was always set
16:00:00 <Vorpal> (and the loop always entered at least once)
16:00:45 <Vorpal> lifthrasiir, anyway I did consider using this for optimising [>] but never got around to that iirc
16:01:08 <lifthrasiir> Vorpal: exactly speaking, such kind of analysis is already done by esotope-bfc (see references() methods etc.) but i meant that the analysis stayed within the local scope.
16:01:16 <Vorpal> lifthrasiir, oh and I see you do not discard set to same value. Like lostking code you generate starts with several p[n] = 0
16:01:39 <lifthrasiir> that's exactly what the "initialmemory" pass of esotope-bfc does.
16:02:28 <Vorpal> lifthrasiir, by the way. Why does running all the optimiser passes twice (in compiler.py using "for passcls in self.optpasses + self.optpasses:" that is) cause esotope-bfc to generate incorrect code
16:02:30 <lifthrasiir> anyway, using the complex memory state for more precise analysis was one of my goal, but i never got it
16:02:52 <lifthrasiir> Vorpal: really? can you give me an example? that must be a bug.
16:03:04 <Vorpal> lifthrasiir, well try it on lostkingdom. The resulting C program segfaults.
16:03:30 <Vorpal> lifthrasiir, I haven't tried with smaller programs
16:03:54 <lifthrasiir> ah, if you included the stdlib pass at the end of optpasses then it will get confused
16:03:57 <Vorpal> lifthrasiir, it did remove some code that seemed impossible to remove (non-dead loops removed mostly iirc)
16:04:07 <Vorpal> lifthrasiir, why is that
16:04:23 <Vorpal> lifthrasiir, what does stdlib do that makes other passes fail?
16:04:40 <lifthrasiir> that was designed to be the last postprocessing pass...
16:05:02 <Vorpal> lifthrasiir, hm. I did the equiv of stdlib (constantifying output) right in the middle of my passes
16:05:09 <Vorpal> and I ran it all to fixpoint anyway
16:05:52 <lifthrasiir> i think i should rewrite esotope-bfc at some point, using the better IL and algorithm
16:06:06 <lifthrasiir> the current form of esotope-bfc was written in a hurry.
16:06:16 <Vorpal> hurry? You had a deadline?
16:06:35 <Vorpal> lifthrasiir, what is the metaclass stuff btw for expressions and conditions?
16:07:04 <Lymia> lifthrasiir, I'm curios.
16:07:17 <lifthrasiir> Vorpal: that was a subject of my undergraduate thesis
16:07:27 <Vorpal> lifthrasiir, heh? the compiler?
16:07:35 <Lymia> How good is the optimization in your compiler?
16:07:47 <lifthrasiir> although i was working on esotope-bfc before i chose the subject for my thesis
16:07:52 <Lymia> Would it be able to optimize that into a simple infinite loop?
16:08:42 <Vorpal> Lymia, if in the middle of the program it would be unlikely to know that there is no cell with 255 ahead.
16:08:53 <Lymia> Vorpal, I mean that as a standalone program.
16:09:22 <Vorpal> maybe. But iirc it doesn't try to do much on unbalanced loops
16:09:31 <Lymia> If it isn't optimized into a simple infinite loop, would gcc be able to optimize the generated code?
16:09:36 <lifthrasiir> Vorpal: my undergraduate thesis on esotope-bfc was about the moreloop pass, which is considered mostly useless (it did optimize some code, but not enough general).
16:09:55 <Vorpal> lifthrasiir, what did moreloop do?
16:10:27 <lifthrasiir> for example, it was meant to optimize codes like [-[-[-[-...]...]...]...]
16:10:35 <Vorpal> lifthrasiir, into what?
16:11:12 <lifthrasiir> in the optimal case, such nested While nodes should be collapsed into one While node with more complex condition
16:11:30 <Lymia> I should write my own optimization BF compiler.... in Brainfuck
16:11:41 <Vorpal> Lymia, have fun. I wrote mine in erlang.
16:11:48 <Vorpal> and esotope-bfc is python
16:11:52 <oerjan> a C case block with fall through might help there...
16:12:01 <lifthrasiir> i should also noet that i started to convert esotope-bfc to ocaml
16:12:18 <lifthrasiir> (not yet committed to hg.mearie.org, so you're not able to see it yet)
16:12:19 <Lymia> Let's write a Lisp->Brainfuck compiler.
16:12:54 <Phantom_Hoover> Lymia, painful, especially since Lisp allows first-class functions and BF... doesn't.
16:12:58 <Vorpal> lifthrasiir, I don't know about standard libraries there, but I found that erlang have suitable modules for many things that I needed. Even for directed graphs.
16:13:02 <lifthrasiir> languages with first-order (not first-class) functions are easier to translate
16:13:31 <lifthrasiir> first-class functions are not impossible to translate, but i think they should be rewritten in first-order-only form first
16:14:05 <Lymia> Let's build a Brainfuck CPU in Minecraft.
16:14:09 <Vorpal> lifthrasiir, but ocaml probably have good libraries for data structures
16:14:33 <Vorpal> Lymia, you know about the CPU built in minecraft already I assume?
16:14:34 <lifthrasiir> Lymia: auto-generating a world from Brainfuck code?
16:15:59 <Lymia> I would like this idea more if memory in Minecraft wasn't gian.t
16:16:44 <olsner> * One of a pair of English words, yes and no
16:16:44 <olsner> * The affirmative grammatical particle in the English language
16:16:44 <olsner> * An indication of acceptance"
16:16:53 <olsner> is it just me or are those three all the same thing?
16:16:53 <Vorpal> Lymia, hm... I guess sram would be smaller than dram in minecraft
16:18:11 <lifthrasiir> by dram you mean a delay-node memory using redstone repeater?
16:18:44 -!- oerjan has quit (Quit: leaving).
16:18:48 <Lymia> Vorpal, what would a wired clear routine look like anyways?
16:19:52 <Vorpal> Lymia, well my point was sram is larger than dram in real life. And you can't do dram in minecraft
16:20:06 <Vorpal> Lymia, the most compact memory would be delay lines
16:20:15 <Lymia> Vorpal, no clue how those work.
16:20:23 <Lymia> Would it do well for Brainfuck?
16:20:35 <Vorpal> delay lines are not random access
16:21:00 <Lymia> Is it possible to shift them right/left?
16:21:05 <Vorpal> Lymia, they work by sending data down a slow loop, cycling it back at the end to form an infinite loop
16:21:16 <lifthrasiir> Vorpal: did you see this: http://www.remcobloemen.nl/2010/02/brainfuck-using-llvm/
16:21:17 <Vorpal> and "tapping" it off at the cycle point
16:21:23 <Vorpal> lifthrasiir, no, *looks*
16:21:36 <Vorpal> Lymia, basically, they are utterly unsuitable for bf :P
16:21:51 <Vorpal> Lymia, http://en.wikipedia.org/wiki/Delay_line_memory
16:21:58 <lifthrasiir> some guy compiled a brainfuck code using LLVM, and get the comparative result with esotope-bfc
16:22:42 <augur> http://www.cse.chalmers.se/research/group/logic/TypesSS05/Extra/mcbride3.epi
16:22:49 <augur> and they say epigram isnt an esolang..
16:22:55 <Vorpal> lifthrasiir, quite impressive
16:23:49 <Vorpal> augur, looks cool but aligning that stuff in ascii would probably take more time than writing it out linearly
16:23:54 <lifthrasiir> i'm not a fan of inference rule in general: it makes papers hard to read.
16:24:05 <augur> Vorpal: tell that to conor mcbride
16:24:16 <lifthrasiir> and sometimes the inference rule and plain English description does not match :(
16:24:17 <olsner> Vorpal: maybe you just need an editor that does rectangular selections
16:24:51 <Vorpal> olsner, well more than that. It would need to know how much to move sideways if you make a division wider for example
16:25:08 <Vorpal> olsner, without me making a selection for it
16:25:21 <augur> i prefer properly typeset epigram
16:25:27 <Vorpal> assuming those *are* divisions
16:26:24 <Vorpal> well anyway, if I wrote in the middle of such a multiline expression it should know how to move other stuff
16:26:30 <olsner> Vorpal: ehm, no, the horizontal lines separate conditions and inferences (or whatever they're called)
16:26:54 <Vorpal> and it would need to handle centring properly
16:27:41 <lifthrasiir> Vorpal: i think i forgot to mention it, but one important thing when you are using SSA form for brainfuck-to-c compiler is how to convert the control-flow graph into the linear form
16:28:07 <Vorpal> lifthrasiir, well, how does a normal C compiler do while loops?
16:28:31 <Vorpal> lifthrasiir, lets ignore unbalanced loops for now. They would end blocks. Just look at balanced ones
16:28:37 <lifthrasiir> constructs the control-flow graph. the original structure generally isn't kept.
16:28:55 <lifthrasiir> yeah, in fact Emscripten did a lot of work on that subject (fortunately).
16:28:59 <Vorpal> lifthrasiir, how does it deal with non-local variables?
16:29:49 <Vorpal> lifthrasiir, what other way?
16:30:13 <lifthrasiir> uhm, what's your point about asking about non-local variables?
16:30:35 <Vorpal> lifthrasiir, that it would have to preserve some of the underlying structure to map stuff to things like global arrays
16:30:52 <Vorpal> so it can update them when leaving the function or whatever
16:31:04 <Lymia> Optimization is starting to sound like a black art.
16:31:28 <Vorpal> lifthrasiir, I know it uses the rho function to merge variables from different branches in, say, int x = 0; if (...) x++;
16:31:40 <Vorpal> then you have something like x_3 = rho(x1,x2)
16:31:57 <Vorpal> lifthrasiir, how does it do it for loops though
16:32:03 <lifthrasiir> and that program will have three basic blocks (if you count the last empty block)
16:32:32 <lifthrasiir> then the outgoing edges of the basic block for loop body will go to itself
16:32:53 <Vorpal> lifthrasiir, now make that int x = 0 static, so it can't just be discarded at the end of the function. What now.
16:33:38 <Vorpal> lifthrasiir, and right. For balanced loops the control flow graph can't be too hard can it?
16:33:47 <Lymia> What /is/ the rho function?
16:34:14 <Vorpal> Lymia, a function that merges multiple paths for SSA
16:34:41 <olsner> Vorpal: rho? don't you mean phi?
16:34:49 <Vorpal> olsner, oh right, that was it
16:34:49 <lifthrasiir> Vorpal: well, if you have a code like this: int x; void f(void) { x = 0; if (...) x++; } then x should not be discarded
16:34:54 <Vorpal> olsner, greek letter anyway
16:35:04 <lifthrasiir> as that is a side effect of f (on the global variable).
16:35:18 <Lymia> Can gcc optimize the code down farther for you?
16:35:21 <Vorpal> lifthrasiir, you would presumably need to track the scope of assignments
16:35:49 <olsner> iirc SSI, which is very similar to SSA, uses rho for control-flow splits (it needs splits to be marked, not only merges)
16:35:59 <lifthrasiir> of course. some aggressive compiler can lift global variables to local variables first and treat them just like local variables, but then it is not a different thing
16:36:05 <Vorpal> olsner, what does SSI stand for?
16:36:29 <olsner> single static information
16:36:31 <Vorpal> Lymia, it works on the C code, and probably does some work. But with the knowledge of brainfuck you can do a better job
16:37:21 <Vorpal> Lymia, I won't be happy until I can read and understand the generated code from compiling lost kingdom. :P
16:37:28 <Lymia> Vorpal, you're insane.
16:37:45 <Vorpal> Lymia, tell elliott. He believes I'm the only sane person here.
16:37:57 <lifthrasiir> Vorpal: btw, the relooper algorithm employed by Emscripten seems good enough for brainfuck-to-c compiler, so i think i just adopt it (if i can).
16:38:02 <olsner> lifthrasiir: I don't remember the details ... I suspect there are different variants depending on what kind of conditionals you use
16:38:06 <Vorpal> Lymia, and thus that I'm boring
16:38:30 <lifthrasiir> olsner: ah, yes, there can be three or more outgoing edges.
16:38:41 <Vorpal> <lifthrasiir> Vorpal: btw, the relooper algorithm employed by Emscripten seems good enough for brainfuck-to-c compiler, so i think i just adopt it (if i can). <-- I'm not familiar with that one
16:39:05 <lifthrasiir> see http://emscripten.googlecode.com/hg/docs/paper.pdf for details.
16:39:27 <lifthrasiir> it translates the CFG into the form that can be readily translated to Javascript code
16:39:50 <lifthrasiir> Vorpal: you should run the CPython translated by Emscripten in your browser ;)
16:40:25 <Vorpal> lifthrasiir, in firefox. With 2 GB RAM in the system. No thanks.
16:41:00 <olsner> lifthrasiir: essentially you take x1 and if you have a conditional (if x1 > 3 then goto a else goto b) then you'll create x2 and x3 out of "x1, x1 > 3" and "x1, x1 <= 3" and use those new variables in the two respective branches and use their extra information
16:41:05 <lifthrasiir> hey, i just ran the translated CPython in the system with only one gig of RAM. it's not that tough.
16:41:41 <lifthrasiir> olsner: so the IL (not only analyzes) conveys that information, right?
16:42:00 <lifthrasiir> Vorpal: http://syntensity.com/static/python.html
16:42:01 <olsner> I imagine it might look something like "x2, x3 = rho(x1, x1 < 3)", I just have a vague recollection something called rho was involved somewhere :>
16:42:24 <Vorpal> I did consider tracking such info in my bf compiler, but I saw no easy way to make use of it
16:43:15 <Vorpal> lifthrasiir, when I disable noscript it just goes loading, locking the browser up
16:43:44 <Vorpal> well, loaded but doesn't work
16:43:47 <olsner> your browser can be locked up by long-running javascript?
16:44:02 <Vorpal> olsner, yes, firefox 3.6.17
16:44:12 <Vorpal> I'm on long term support ubuntu release
16:44:31 <Vorpal> lifthrasiir, well anyway, for me that page doesn't work
16:44:40 <Vorpal> lifthrasiir, probably needs a newer firefox or something?
16:45:14 <lifthrasiir> strange, i think i ran it in firefox 3.6.x just fine
16:45:32 <lifthrasiir> (i don't have firefox 3.6.x right now, as all machine i use have firefox 4 now)
16:48:01 <lifthrasiir> MigoMipo: so the core language of Migol 11 is stable, right?
16:49:02 <Vorpal> lifthrasiir, anyway that llvm one, how much does it do in llvm? Does it do basic +++ merging before it hits llvm or?
16:49:20 -!- ralc has quit (Quit: Leaving).
16:49:31 <lifthrasiir> the treatment of global variables in SSA form?
16:50:03 <Vorpal> lifthrasiir, no I meant the bf llvm compiler
16:50:24 <Vorpal> lifthrasiir, from what I tell it doesn't merge constant output at least
16:50:42 <lifthrasiir> ah, it ran the predetermined optimization passes of LLVM
16:50:57 <Vorpal> lifthrasiir, so +++ merging and so on happened inside llvm?
16:51:47 <Vorpal> lifthrasiir, that must be slow. llvm isn't built for that sort of rather "stupid" input
16:52:05 -!- pikhq has quit (Ping timeout: 240 seconds).
16:52:10 <lifthrasiir> esotope-bfc has a code for converting [--->+<] (yes, that extended euclidean stuff), but LLVM also has such code
16:52:27 <MigoMipo> lifthrasiir: Yes, the core language is pretty much stable, the I/O functions are in progress though
16:52:44 <Vorpal> lifthrasiir, iirc my code can do it for some cases.
16:53:25 <Vorpal> lifthrasiir, can you do it for nested loops? Say a multiplication algorithm
16:53:35 <lifthrasiir> well the algorithm is fairly simple, once you know the extended euclidean algorithm and bezout's identity
16:53:51 -!- pikhq has joined.
16:54:23 <lifthrasiir> Vorpal: the scalar evolution algorithm should convert the code like int s = 0; for (int i=4; i!=0; i-=3) s+=1; into the multiplication.
16:54:56 <Vorpal> lifthrasiir, better than what my compiler did then iirc
16:55:12 <Vorpal> lifthrasiir, I think I could simply polynoms, nothing more
16:56:04 <lifthrasiir> Vorpal: and LLVM also has a code for solving quadratic recurrence, so it's definitely better than esotope-bfc for that algorithm
16:56:24 <Vorpal> lifthrasiir, which algorithm? multiplication?
16:56:31 <Lymia> What's all this high level math?
16:56:44 <Lymia> I need to get to college soon... or just pull out google
16:56:59 <Vorpal> lifthrasiir, well I'm kind of lost wrt how Bezout's identity apply to all this
16:57:04 <lifthrasiir> Vorpal: something like for (int i=4; i!=0; i-=3) for (int j=i; j!=0; j-=5) s++;.
16:57:17 <Vorpal> lifthrasiir, shouldn't that be char for bf?
16:58:28 <pikhq> Lymia: Sorry, but the math that we care about only gets taught outside of primary and secondary education.
16:58:59 <pikhq> I mean, shit, you're doing well to graduate from high school with knowledge of elementary algebra and basic Euclidean geometry.
16:59:07 <Vorpal> lifthrasiir, well, to be frank, I have no clue how this step of optimisation works. And reading wikipedia on Bezout's identity certainly explained why extended gcd is useful, but I don't see the connection of this identity to figuring out how many times the loop is iterated.
16:59:40 <lifthrasiir> Vorpal: the algorithm effectively computes that: what is the number of iterations of this loop: for (i=0; i!=k; i+=m);
16:59:48 <oklopol> http://www.smbc-comics.com/?id=300#comic can you find it
17:00:21 <Vorpal> lifthrasiir, can you explain why it computes that? Doesn't have to be a formal proof of it. But something to make me understand why
17:01:06 <lifthrasiir> well, if you have a brainfuck code like [+++>-<], then it is equivalent to: while (m[0]) { m[0] += 3; m[1] -= 1; }.
17:01:22 <lifthrasiir> then m[1] after the loop depends on the number of iterations of that while loop
17:01:58 <Lymia> pikhq, is Google a suitable teacher?
17:02:09 <Vorpal> lifthrasiir, so far I'm with you
17:02:19 <lifthrasiir> so, certainly if m = 0 then it loops forever.
17:02:52 <Lymia> I see what he's trying to say.
17:02:55 <Vorpal> lifthrasiir, don't you mean if m[0] = 0 ?
17:03:01 <Vorpal> well it wouldn't enter then
17:03:09 <Lymia> if m[0] = 0, it wouldn't loop.
17:03:12 <pikhq> Lymia: Certainly a better teacher than most.
17:03:13 <lifthrasiir> Vorpal: that m comes from for (i=0; i!=k; i+=m);.
17:03:17 <Lymia> If m[0] += 0, it is an infinite loop.
17:03:50 <Vorpal> lifthrasiir, right. But how do you get that m (and the k) from the while loop given above
17:03:58 <lifthrasiir> Lymia: otherwise, let's say i was indeed an arbitrary-sized integer and "pretends" to be a W-bit integer.
17:04:00 <Vorpal> I understand the extended gcd comes from there
17:04:14 <Vorpal> but I don't understand how
17:04:21 <lifthrasiir> then at the end of loop i should be n times 2^W plus k, where n is an integer
17:04:44 <lifthrasiir> that is, i modulo 2^W is k (but i itself does not have to be k, of course)
17:05:09 <Lymia> lifthrasiir, well, in C, it does, right?
17:05:42 <Vorpal> gah I keep loosing track of which letter was what
17:05:56 <lifthrasiir> the equation is equivalent to: j * m - n * 2^W = k.
17:07:01 <lifthrasiir> that is very similar to the bezout's identity: a * x + b * y = d.
17:07:32 <lifthrasiir> extended euclidean algorithm is used to determine one solution of x and y when given a, b and d
17:08:03 <lifthrasiir> one pitfall here is it is possible that k is not a multiple of gcd(a,b) here.
17:08:08 <Lymia> lifthrasiir, so, gcd(sizeof(int),k)?
17:08:23 <Vorpal> lifthrasiir, where did we get k from?
17:08:46 <lifthrasiir> Vorpal: oh wait, i meant that d is not a multiple of gcd(a,b).
17:08:50 <Vorpal> b is obviously 2^W, and a would presumably be m?
17:09:20 <lifthrasiir> as we don't know j and n, that should be mapped to x and y in the bezout's identity
17:09:28 <Vorpal> lifthrasiir, but I don't see how we can know k?
17:09:39 <Lymia> lifthrasiir, if we are doing C code, why do we want to know n?
17:09:43 -!- monqy has joined.
17:10:05 <lifthrasiir> Lymia: well then you need bigger integer types.
17:10:26 <lifthrasiir> the extended euclidean algorithm is (i believe) prone to such overflows
17:10:48 <lifthrasiir> anyway, if d is not a multiple of gcd(a,b) then there exists no solution. it means the infinite loop in our case.
17:10:59 <Vorpal> lifthrasiir, well how do we learn k and then, how do we apply the results?
17:11:01 <lifthrasiir> otherwise we can run the extended euclidean algorithm to find out x and y
17:11:20 <Vorpal> <lifthrasiir> the equation is equivalent to: j * m - n * 2^W = k.
17:11:23 <Vorpal> lifthrasiir, the k in there
17:11:35 <Vorpal> you said we need to know a,b,d. d maps to k
17:12:16 <lifthrasiir> yeah, and we get j and n using extended euclidean
17:12:37 <Lymia> And how do those map to C code?
17:12:39 <Vorpal> lifthrasiir, that still doesn't answer how we get k to begin with!
17:12:47 <Vorpal> lifthrasiir, which is what I'm not understanding
17:13:23 <Lymia> I kinda of get what's being said.
17:13:28 <lifthrasiir> Vorpal: ah, i'm using the example code like this: for (i=0, j=0; i!=k; i+=m, k++);
17:13:35 <Lymia> Vorpal, I do believe k would be m[0]
17:13:39 <Lymia> But.. I'm not sure.
17:13:47 <Vorpal> lifthrasiir, how do you get k from while (m[0]) { m[0] += 3; m[1] -= 1; }
17:13:55 <Vorpal> lets take it from that level
17:14:09 <Vorpal> lifthrasiir, if I have the k written out in the for loop it is obviously there.
17:14:14 <Vorpal> but given the while loop?
17:14:42 <lifthrasiir> Vorpal: then the loop variable here is m[0], and since every other variables increase/decrease in constant value it qualifies for this optimization
17:14:47 <Lymia> lifthrasiir, if I understand you.
17:15:09 <Lymia> This is basically a fancy way to compute how fast m[0] will reach 0, and if it will.
17:15:11 <lifthrasiir> now pop out the loop variable then we have: for (; m[0]; m[0] += 3) m[1] -= 1;
17:15:15 <Vorpal> lifthrasiir, eh. is k = 0? as in when m[0] reaches 0? Or does it have some other value?
17:15:43 <Vorpal> lifthrasiir, yes I get stuck on that step indeed
17:15:50 <lifthrasiir> okay, actually for brainfuck code the condition will be only m[0] != 0 (i.e. m[0])
17:15:56 <lifthrasiir> but we don't know the prior value of m[0] here
17:16:08 <Vorpal> indeed, if we know the prior value we could do this easily
17:16:19 <lifthrasiir> then m[0] = x; for (; m[0]; m[0] += 3) m[1] -= 1;.
17:17:37 <Lymia> I think I see what's being said.
17:17:54 <lifthrasiir> anyway, now introduce a fresh variable i for the loop: i = m[0]; for (; i; i += 3) m[1] -= 1; m[0] = i;
17:18:34 <Vorpal> nope, doesn't map to a loop like for (i=0, j=0; i!=k; i+=m, j++); for me. Rather it looks like for (i=x; i!=0; i+=3). Hrrm. Which you could turn around so that you have for (i=0; i!=x; i-=3 though). Is that what you are doing?
17:19:06 <lifthrasiir> if we offset i by the prior value of m[0], then we have: for (i=0; i != -m[0]; i += 3) m[1] -= 1;
17:19:30 <lifthrasiir> (of course we should adjust m[0] accordingly, but that is not a point)
17:19:46 <Vorpal> lifthrasiir, now it starts to look similar to the for loop above
17:19:54 <lifthrasiir> if the number of iterations of that for loop were j, then the code simply reduces to m[1] -= j;.
17:20:04 <Vorpal> lifthrasiir, so k here is -m[0] where m[0] is the value prior to adjusting?
17:20:28 <Vorpal> lifthrasiir, now it makes a lot more sense
17:20:40 <lifthrasiir> in practice, the bezout's identity has multiple solutions
17:20:46 <Vorpal> lifthrasiir, and then when we have x,y from the identity... How do we use them?
17:20:51 <lifthrasiir> but we want j to be a smallest positive integer
17:22:07 <lifthrasiir> if the increment m and the exit value k is not a coprime to each other, then the loop will end more quickly
17:22:56 <lifthrasiir> as a simple example: if k = 6 and m = 2, then the (adjusted) j should be 3, but the bezout's identity will give 6
17:23:24 <lifthrasiir> so we need some scaling for the cases when m and k is not a coprime to each other
17:23:24 <Vorpal> lifthrasiir, so how do we reduce it as much as we can?
17:23:44 <lifthrasiir> i think the detailed procedure is in the source code of esotope-bfc. ;)
17:24:14 <Vorpal> lifthrasiir, anyway aren't we doing this to get rid of the loop entirely? Turning it into an expression
17:24:14 <lifthrasiir> i think the meaning of the comment should be clear now
17:24:31 <lifthrasiir> Vorpal: once you know the number of iterations, that should be simple.
17:25:28 -!- Slereah_ has joined.
17:25:41 <Vorpal> lifthrasiir, the comment under "elif flag:"?
17:26:04 <Vorpal> now what is the flag variable in there *looks*
17:26:40 <Vorpal> lifthrasiir, is mode the type of loop somehow?
17:27:07 -!- lament has joined.
17:27:08 <lifthrasiir> if the loop variable changes non-linearly in the loop (for example) then it cannot be converted in this way
17:27:55 -!- oklopol has quit.
17:27:56 -!- Slereah has quit (Ping timeout: 252 seconds).
17:28:42 <Vorpal> lifthrasiir, what if we have something like while (p[0]) { p[0]+=p[2]; p[1]+=5; } or so? Where we p[2] is not changed inside the loop but we don't know the value of it
17:29:23 <lifthrasiir> if the constant propagation cannot convert c[2] to a constant, then it also gives up.
17:29:36 <lifthrasiir> that is very specific optimization for brainfuck codes ;)
17:29:56 <lifthrasiir> (though it has other uses than brainfuck, so LLVM implements it)
17:30:14 <Vorpal> lifthrasiir, not sure if your compiler is smart enough to optimise something like [->+>+<<]>[-<+>] into a copy (plus a set 0 of the temp cell).
17:30:56 <Vorpal> or do you get p[1]=p[0]; p[2]=p[0]; p[0]=0; p[0]=p[1]; ?
17:31:14 <Vorpal> lifthrasiir, I mean will you eliminate the pointless writes to p[0] completely
17:31:36 <Vorpal> (well that missed out the setting of p[1] to 0
17:31:38 <lifthrasiir> Vorpal: that is done separately (in the removedead pass), though it is somewhat limited.
17:33:02 <Vorpal> lifthrasiir, iirc that was one of the things my compiler managed slightly better than your. Expression propagation and constant folding. Plus removed dead quite quite well.
17:33:23 <Vorpal> lifthrasiir, your loop optimisations easily beat it however. Overall they are far more effective
17:33:54 <lifthrasiir> the difficulty with propagation and dead code elimination was the motivation for SSA-based IL.
17:34:23 <Vorpal> lifthrasiir, yes true, it wasn't fun to do the dead code one. I ended up walking backwards through the code sometimes iirc
17:34:37 <Vorpal> or changing direction a lot
17:35:12 <Vorpal> lifthrasiir, at least that was easy with my implementation. As a tail recursive function with an input cons style list and an output cons style accumulator list
17:35:22 <Vorpal> reversing was just switching which I took elements from
17:35:30 <Vorpal> of course I needed to reverse at the end
17:35:38 <Vorpal> and to turn loops right way around
17:35:58 <Vorpal> idiomatic style for erlang
17:36:11 <Vorpal> lifthrasiir, and it made merging and swapping instruction pairs easy
17:36:45 <Vorpal> lifthrasiir, do you use mutable data structures in your ocaml code?
17:37:14 <lifthrasiir> and i won't use mutable data structures in the global IL
17:37:24 <Vorpal> lifthrasiir, I found map less than useful for bf optimisation. Since there might not be an 1:1 map of number of elements
17:38:47 <Vorpal> lifthrasiir, hm. Possible certainly. Doing a tail recursive function with accumulator list in erlang is easy though. What with the pattern matching
17:40:05 <Vorpal> optimise([{set,Offset,Value}|T], [{set,Offset,Value2}|T2]) -> optimise(T, [{set,Offset,Value+Value2}|T2])
17:40:25 <Vorpal> well not quite that, but the principle anyway
17:41:19 <Vorpal> lifthrasiir, I think I would prefer to put it in the list to process rather than the accumulator. That way I could possibly optimise it with some other prior instruction in the same pass
17:41:24 <Vorpal> wouldn't matter for this simple case
17:41:27 <pikhq> Yeah, pattern matching is a freaking godsend for optimisation.
17:41:35 -!- evincar has joined.
17:42:03 <Vorpal> pikhq, in haskell you would need a guard there. Like Offset1 == Offset2
17:42:07 <Vorpal> Phantom_Hoover, erlang
17:42:09 <pikhq> Hmm. I should probably start putting some more peephole optimisations in here. Just for kicks, y'know?
17:42:16 <Vorpal> Phantom_Hoover, yes they *do* have similar syntax. I know
17:42:19 <pikhq> Vorpal: Yeah, sadly. Still a hell of a lot better than other languages.
17:43:09 <evincar> So what are we working on?
17:43:31 <Vorpal> lifthrasiir, the main pain in erlang was calculating modulo 256
17:43:51 <Vorpal> lifthrasiir, I had a special cleanup pass that did modulo 256 on every value :)
17:44:00 <Vorpal> lifthrasiir, oh and -1 I represented as 254
17:44:09 <Vorpal> otherwise it wouldn't work with that simple cleanup pass
17:44:40 <Vorpal> lifthrasiir, nope. Not easily done in erlang's type system.
17:45:06 <Vorpal> lifthrasiir, you could pack it into a binary and unpack it I guess
17:45:32 <Vorpal> something like: <<A2/int:8>> = <<A/int:8>>
17:45:45 <Vorpal> I forgot exact syntax, haven't been coding much erlang recently
17:45:57 <Vorpal> lifthrasiir, anyway arithmetics are bignum in erlang.
17:46:13 <Vorpal> lifthrasiir, and adding your integer type would be highly non-trivial.
17:46:40 <pikhq> Hrrrm. Actually, how hard could a constant propogation pass *be*, anyways?
17:46:42 <Vorpal> lifthrasiir, there are no typeclasses and so on
17:47:05 <Vorpal> pikhq, I did better, expression propagation. Quite useful.
17:47:35 <Vorpal> pikhq, well yes, it handled neatly cases like [->+>+<<]>[-<+>]
17:47:35 -!- wareya has quit (Read error: Connection reset by peer).
17:48:12 <Vorpal> pikhq, if you just optimise set offset to offset there, then it is easy to get rid of the dead copy p[0]=p[0]
17:48:22 <Vorpal> which is what you will get after expression propagation
17:48:23 -!- wareya has joined.
17:48:31 <Vorpal> assuming a previous pass eliminated the dead p[0]=0 store
17:49:28 <Vorpal> pikhq, besides if you use the earliest values you can (right, this can be a pessimation in some cases, the opposite of CSE) you can remove a lot more dead stores easily.
17:49:37 <Vorpal> which turns out to give a better overall result
17:49:43 <Vorpal> at least for the programs I tested on
17:49:54 <Vorpal> I used lostking and mandelbrot mainly for testing
17:50:42 <Vorpal> lifthrasiir, btw I noticed you did something more than I did...
17:50:44 <Vorpal> while (p[7] != 0) p -= 9;
17:50:50 <Vorpal> lifthrasiir, how did you generate stuff like that heh
17:51:11 <Vorpal> mine would have done something like p+=7; while(p[0] != 0) p -= ...
17:51:27 <Vorpal> since it hit an unbalanced loop
17:53:06 <lifthrasiir> Vorpal: pointer propagation works for SeekMemory (i think it is?) too.
17:53:39 <Vorpal> lifthrasiir, you manage for other unbalanced loops too
17:53:42 <lifthrasiir> that is, p += 7; while (p[0] != 0) p -= 9; p -= 7; is equivalent to while (p[7] != 0) p -= 9;.
17:54:01 <lifthrasiir> since we are hitting the same memory cell in this case
17:54:20 <Vorpal> pikhq, anyway. I don't have the code for mine on this computer. And I don't think it is online anywhere. Besides I hit a wall, I would need to majorly restructure the internal representation. As I found out towards the end of the development.
17:55:03 <Vorpal> lifthrasiir, hm but how do you manage that for nested unbalanced loops. That seems trickier
17:55:34 <Vorpal> lifthrasiir, this is from the start of a huge loop: http://sprunge.us/gIjg
17:55:43 <lifthrasiir> i think this propagation can be applied recursively (without any harm)
17:56:03 <pikhq> Vorpal, I managed to do pointer propagation in mine quite easily.
17:56:24 <pikhq> *Admittedly*, without the help of oerjan it took 2 minutes to execute on LostKng. :P
17:56:44 <Vorpal> lifthrasiir, I see one thing you didn't do was turn while loops into do while when you know that the loop value was non-zero. This can be applied to unbalanced loops too. GCC generates smaller code for it on -O2 with the programs I tested.
17:57:08 <lifthrasiir> for example: p += 3; while (p[0] != 0) { ... p += 5; while (p[0] != 0) { ... p += 1; } ... } should be while (p[3] != 0) { ... while (p[8] != 0) { ... p += 1; } ... p += 5; } p += 3;
17:57:16 <Vorpal> pikhq, pointer propagation across unbalanced loops I completely missed out on.
17:57:26 <Vorpal> pikhq, also where is your?
17:57:28 <lifthrasiir> note that the whole effect of the loop body to the pointer moves to the end of the loop
17:57:43 <lifthrasiir> (yes, it cannot move it out of the loop yet)
17:57:50 <pikhq> Vorpal: Lemme pastebin.
17:57:57 <Vorpal> pikhq, which language is it in?
17:58:02 <pikhq> http://sprunge.us/FAQF
17:58:27 <Vorpal> pikhq, that parser would be smaller with parsec. I tried recently :P
17:58:40 <pikhq> Eh. It's already freaking tiny.
18:00:21 <Vorpal> pikhq, why the !Int in the type?
18:00:34 <Vorpal> I forgot what the ! does
18:00:42 <pikhq> Vorpal: That makes the fields strict.
18:00:53 <pikhq> I found it made the compiler use 10M less RAM and execute a bit faster.
18:01:15 <Vorpal> pikhq, is this a bignum brainfuck=
18:01:22 <lifthrasiir> once having seen a Migol 11's I/O system, i cannot resist from implementing my own EXE (finally!)
18:01:25 <Vorpal> or why int for adding values
18:01:35 <Vorpal> pikhq, why not Word8 then
18:01:59 <Lymia> You're doing p++ etc, right?
18:02:03 <pikhq> Well, it *could* actually be that way for some of it.
18:02:15 <Lymia> I guess that's more optimal.
18:02:17 <lifthrasiir> Lymia: yes, but most of them can be propagated
18:02:34 <Vorpal> pikhq, it just seemed more logical to skip having to think of applying the modulo yourself to me
18:02:57 <pikhq> Vorpal: ... *I'm not*.
18:03:04 <pikhq> At least, not yet.
18:03:12 <Vorpal> pikhq, where does it ensure that 255+1 = 0 then?
18:03:19 <pikhq> In the output code.
18:03:43 <pikhq> The x86 does modular arithmetic. :)
18:03:55 <pikhq> Yeah, it produces some pretty tiny output.
18:04:43 <Vorpal> pikhq, I kind of prefer producing C. Because then the C compiler can do some further optimisation for you
18:05:28 -!- CakeProp1et has joined.
18:06:12 -!- FireFly has quit (*.net *.split).
18:06:12 -!- BeholdMyGlory has quit (*.net *.split).
18:06:13 -!- CakeProphet has quit (*.net *.split).
18:06:20 <pikhq> Yeah, but the C compiler outputs so much bloaty code.
18:06:26 -!- BeholdMyGlory has joined.
18:06:47 <Vorpal> pikhq, really? I found clang works pretty well
18:06:57 <Vorpal> pikhq, besides there isn't much bloat you can add.
18:07:30 <Vorpal> pikhq, unless you mean stuff like __start. In which case I think you are overly silly
18:07:50 <pikhq> My LostKng is 482,800 bytes.
18:09:01 <Vorpal> pikhq, let me check how large file clang generates
18:09:06 <Vorpal> using -O1, may take a while
18:09:22 <Vorpal> this is from esotope output
18:10:03 <Vorpal> of course, clang is not fast here
18:10:05 <pikhq> And keep in mind, my output has no dependencies other than a Linux kernel.
18:10:11 -!- Sgeo_ has joined.
18:10:39 <Vorpal> pikhq, so it won't run on anything but linux
18:11:04 <Vorpal> pikhq, if it doesn't run on, say, OpenBSD/SPARC what is the point of it?
18:11:04 <pikhq> (indeed, with how I'm doing things, it *can't* even realistically call into C. I'm using the freaking stack pointer!)
18:11:18 -!- Sgeo has quit (Ping timeout: 250 seconds).
18:11:20 <Vorpal> pikhq, wait what are you using the stack pointer for?
18:11:28 <pikhq> As a general-purpose register.
18:11:53 <evincar> pikhq: Alternatively, clever.
18:12:04 <pikhq> evincar: The only memory I access is the Brainfuck array.
18:12:06 <Vorpal> pikhq, why do you need that? You don't optimise try to put as much data in registers as possible do you?
18:12:14 <pikhq> Everything else is in the registers.
18:12:29 <Vorpal> well good thing I used ulimit to limit clang to 400 MB RAM: terminate called after throwing an instance of 'std::bad_alloc'
18:12:51 <Vorpal> 700 works fine for -O0
18:13:05 <evincar> Somehow this reminds me of a totally misguided project I made the (good?) decision of never starting...
18:13:18 <Vorpal> evincar, what project?
18:13:52 <evincar> Vorpal: A C-to-BF compiler, with as limited extensions as possible. Call it a BF-based VM.
18:14:13 <Vorpal> evincar, ais wrote the beginnings of a gcc backend generating bf
18:14:22 <Vorpal> I don't think he finished the bfasm -> bf bit
18:14:47 <pikhq> Vorpal: The code to access the system calls, sadly, ends up clobbering eax, ebx, and edx. So the only registers I have for my own use without some painful work in the code generator is ecx, ebp, and esp.
18:14:53 <evincar> Vorpal: Cool, I'll ask him about it sometime.
18:15:31 <Vorpal> pikhq, what about %r10?
18:15:54 <Vorpal> pikhq, anyway, why not just push those registers on the stack?
18:16:08 -!- FireFly has joined.
18:16:11 <pikhq> I only access the Brainfuck stack.
18:16:45 <Vorpal> pikhq, hm. I presume you optimise constant output ?
18:16:58 <pikhq> That would require constant propagation!
18:17:27 <Vorpal> pikhq, I'm just saying that I think you will need using the stack on x86_32 if you are going to call write
18:17:34 <Vorpal> unless I miscounted the registers
18:17:42 <pikhq> I'm already calling write.
18:17:52 <pikhq> What do you think the system call to do output is?
18:17:55 <Vorpal> pikhq, how large did you say your were?
18:18:04 <Vorpal> pikhq, well hm good point
18:18:18 <pikhq> Without any non-peephole optimisations.
18:18:20 <Vorpal> pikhq, so clang did a better job than you
18:18:30 <Vorpal> well, clang + esotope-bfc
18:18:43 <pikhq> Would you care to add the libc into that?
18:18:55 <Vorpal> pikhq, well I need to strip it too I think
18:18:58 <pikhq> Would you care to add the libc into that?
18:19:27 <Vorpal> pikhq, why? That cost is insignificant since it is shared by all the binaries using libc on my system
18:20:08 <pikhq> That ain't insignificant, that's a gigantic runtime you're relying on.
18:20:11 <Vorpal> 1,5M /lib/libc-2.11.1.so
18:20:22 <pikhq> Even if you do have the nice excuse that your system already has it in RAM.
18:20:32 <Vorpal> pikhq, for the disk cost it will be split on every binary linking to it
18:20:42 <pikhq> That ain't insignificant, that's a gigantic runtime you're relying on.
18:20:43 <pikhq> Even if you do have the nice excuse that your system already has it in RAM.
18:21:02 <lifthrasiir> pikhq: if it does matter then why not replacing GETC, PUTC and PUTS macro with a syscall-only version?
18:21:03 <Vorpal> pikhq, oh ram cost? yes it is in ram already. You rely on the kernel.
18:21:19 <Vorpal> pikhq, now, why don't you do this freestanding
18:21:29 <Vorpal> pikhq, the kernel is a gigantic runtime you are relying on
18:21:31 <evincar> I love how context can make libc "gigantic".
18:21:31 <pikhq> lifthrasiir: I did; it's 532k.
18:21:39 <Vorpal> <Vorpal> pikhq, the kernel is a gigantic runtime you are relying on
18:22:30 <evincar> Vorpal: s/libc/the kernel/
18:23:04 <evincar> Vorpal: <evincar> I love how context can make libc "gigantic".
18:23:09 <Vorpal> pikhq, really, since it is dynamically linked, it is like the the kernel. Either you count both into the cost or you count neither. Nothing else makes sense from your viewpoint
18:23:25 <Vorpal> evincar, well yes and? The kernel is larger than libc for me
18:23:32 <pikhq> Vorpal: Fuck you and your noise.
18:23:43 <pikhq> Also, how the hell do you get the kernel larger than libc?
18:23:49 <Vorpal> 3,9M /boot/vmlinuz-2.6.32-31-generic
18:23:55 <Vorpal> that is the static compressed part
18:23:59 <pikhq> That's... Freakish.
18:24:01 <Vorpal> pikhq, this is ubuntu stock kernel
18:24:06 <Vorpal> pikhq, so most stuff is modules
18:24:10 <Vorpal> which should be added to that
18:24:14 <evincar> Vorpal: That depends. But isn't it kind of silly to count what's essentially a platform dependency?
18:24:34 <Vorpal> pikhq, now, my desktop kernel with exactly the stuff I need compiled into it is 2.5 MB.
18:24:39 <Vorpal> I wonder what ubuntu does
18:24:59 <Vorpal> pikhq, anyway I conclude your program is thus 472k+3.9 MB at least :P
18:25:03 <Vorpal> pikhq, same logic as you used
18:25:16 <Vorpal> pikhq, Even if you do have the nice excuse that your system already has it in RAM. (like, it being booted)
18:25:40 <evincar> Vorpal: Now you're just being pedantic for the fun of it.
18:26:06 <Vorpal> evincar, yes because pikhq is having an unreasonable opinion about dynamic linking here
18:26:21 <Vorpal> evincar, I'm just trying to apply it consistently
18:27:10 <Vorpal> pikhq, anyway do it freestanding. I'm sure you can get it down to less than 1.5 MB still. But do it. If you include libc you should include the kernel
18:27:14 <Vorpal> both are *shared* costs
18:27:32 <evincar> Vorpal: You're applying reducto ad absurdum. :P
18:27:33 <Vorpal> there is one instance of both on my system
18:27:50 <Vorpal> evincar, good you know the name.
18:28:07 <Vorpal> pikhq, why are you not replying btw?
18:28:50 <Vorpal> if you don't wish to continue the discussion you should probably admit defeat instead of burying your head in the sand (which is what this seems like)
18:30:05 <Vorpal> evincar, few things annoy me as much as when people just stop talking instead of admitting defeat or continuing to argue. I really hate that way to get out of a discussion.
18:30:16 <Vorpal> * Ping reply from pikhq: 1.13 second(s)
18:30:20 <Vorpal> so not disconnected either
18:30:56 <Vorpal> pikhq, well, I hope you can explain why you shouldn't count the kernel if you count libc
18:31:08 <Vorpal> both are shared, single-instance-per-system
18:31:27 <Vorpal> both are relatively large.
18:31:41 <fizzie> IRC is not mandatory, you know.
18:32:12 <pikhq> I'm busy trying to get the absolute tiniest kernel that can run this.
18:32:42 <Vorpal> pikhq, that is no answer, but really. Why should you include shared system resources.
18:33:01 <pikhq> Vorpal: Because ,,|,
18:33:10 <Vorpal> so 184 (excluding header line)
18:33:30 <pikhq> Oh, sorry, that's a bit of an Americanism. "Because fuck you".
18:33:49 <Vorpal> pikhq, I don't see how that is relevant to this
18:34:00 <fizzie> 4.4M in Ubuntu's /boot/vmlinuz-2.6.38-8-generic, for the record.
18:34:11 <pikhq> *Jeeze that's absurd*.
18:34:13 <Vorpal> pikhq, anyway libc.so is about 8 kb per process on my system.
18:34:31 <pikhq> Hmm. Let's see what a maximal build here does...
18:34:47 <fizzie> And the associated initrd is 9.2M.
18:35:02 <fizzie> The kernel does keep on growing in general.
18:35:03 <Vorpal> pikhq, anyway if you care about ram as opposed to disk space you should not count the size of the compressed kernel image.
18:35:12 <pikhq> Allyesconfig, away!
18:35:15 <Vorpal> pikhq, instead you should count how much memory the kernel uses
18:35:24 <pikhq> Vorpal: Maybe you should shut up.
18:35:31 <Vorpal> pikhq, and if you care about disk then you should split it on number of ELF binaries in /bin /usr/bin and so on
18:35:38 <pikhq> And you're going to talk about this for two more months.
18:35:40 <Vorpal> in which case the value will be even tinier
18:35:51 <pikhq> Maybe you should shut up.
18:36:12 <Vorpal> pikhq, I don't take well to that sort of argument. I'm trying to approach this rationally
18:36:31 <pikhq> *Your argument is falling on deaf ears, because I don't care*.
18:36:38 <Vorpal> pikhq, you have not given me a good reason why you would not count shared resources across all processes
18:37:08 <pikhq> Because *I simply had the idea of having this output assembly that didn't depend on libc*.
18:37:14 <pikhq> *There is nothing more to it*.
18:37:39 <Vorpal> pikhq, right. That makes sense. But claiming I should include libc size in the C code did not make sense.
18:38:01 <Vorpal> fizzie, yes indeed it grows hm
18:38:20 <pikhq> I was being flippant. And you reacted by... Reductio ad absurdum.
18:38:37 <pikhq> Reductio ad absurdum on an absurd statement is, of course, going to reduce to absurdity easily.
18:38:47 <Vorpal> pikhq, I was not aware you didn't mean what you said
18:38:58 <Vorpal> pikhq, possibly I should apply Poe's law on this
18:39:09 <pikhq> Anyways, now I'm curious, what does an allyesconfig on Linux result in, anyways?
18:39:19 <Vorpal> pikhq, almost everything yes
18:39:22 <fizzie> Vorpal: 1.9M+2.2M is the kernel+initrd size for the custom config on iris.zem.fi, that's not *so* huge. It almost fits on a floppy.
18:39:37 <fizzie> Or two floppies, anyway.
18:39:50 <fizzie> But that's a supported setup.
18:40:04 <Vorpal> pikhq, there are some stuff that can't be yes at the same time, and there is some weirdness for that super-experimental section
18:40:09 <Vorpal> but apart from that, everything
18:40:17 <pikhq> Vorpal: Yes, just wondering what the binary size is.
18:40:22 <pikhq> fizzie: You could probably make that better by using xz compression on the kernel.
18:41:22 <Vorpal> fizzie, yes my desktop kernel is quite large. I include everything I use. And I don't use initramfs. Only things that are modules are those I use infrequently
18:41:31 <Vorpal> like code for the lego rcx usb thingy
18:41:41 <Vorpal> I have that as a module iirc
18:42:01 <Vorpal> which means the kernel is large but lsmod is short.
18:42:18 <Vorpal> not like that on ubuntu heh
18:42:22 <fizzie> iris is a headless box anyway, not too many (hardware) drivers involved.
18:42:43 <Vorpal> pikhq, nvidia.ko was something like 9 MB last I looked
18:42:47 <Vorpal> no clue how they managed that
18:43:03 <Phantom_Hoover> Vorpal is the reason you don't use initramfs just your weird brand of... Vorpidity, or is it something else?
18:43:54 <fizzie> 13M /lib/modules/2.6.38-8-generic/updates/dkms/nvidia-current.ko
18:44:13 <fizzie> That's one big module.
18:44:24 <Vorpal> Phantom_Hoover, that it is pointless for the desktop setup. There is no need. And there is that I have no clue how to make one for my custom kernel. I mean, I know there is mkinitcpio or whatever the tool is, but I assume you have to decide what to put on it
18:44:27 <Vorpal> simpler to just skip it
18:44:45 <Vorpal> Phantom_Hoover, on my laptop I wouldn't get away with that, encrypted root
18:44:51 <Vorpal> thus I use stock kernel on it
18:46:58 <lifthrasiir> hmm, who are working on the brainfuck compiler (for the static subset, of course)?
18:47:21 <Vorpal> lifthrasiir, fizzie is/was working on a JIT compiler
18:47:23 <fizzie> Is there a "the" compiler, or just in general?
18:47:39 <fizzie> I also have a static ahead-of-time compiler for a subset. It's quite crummy.
18:47:42 <Vorpal> lifthrasiir, and the static subset is not TC I think. If you can't write to funge space...
18:48:07 <Vorpal> lifthrasiir, oh and x makes it hard to do any sort of compiling
18:48:07 <fizzie> The static version does p/g, it just doesn't let those modify the code.
18:48:10 <lifthrasiir> Vorpal: given Befunge-93, it is already not TC even you can write to funge space
18:48:12 <Vorpal> you can after all jump everywhere
18:48:21 <Vorpal> lifthrasiir, oh 93, I assumed 98 since you didn't say otherwise
18:48:39 <fizzie> It doesn't do x with non-constant arguments at all; and the handling of non-constant j is really ad-hoc.
18:48:46 <lifthrasiir> i never thought of a static compiler for Funge-98 ;)
18:48:48 <Vorpal> lifthrasiir, same as if someone says C I assume non-draft last version (C99) unless otherwise specified
18:49:11 <Vorpal> lifthrasiir, and if someone says python I assume python 3 :P
18:49:23 <lifthrasiir> but i think Funge-98 is too complex that any statically-compilable subset is tiny
18:49:39 <Vorpal> lifthrasiir, hm larger than 93s subset at least.
18:49:40 <fizzie> You can have a statically-compilable subset of programs, as opposed to the language.
18:50:00 <Vorpal> lifthrasiir, anyway such a subset is really cheating
18:50:49 <Vorpal> fizzie, you could do befunge 98 without x or self modification quite well I think
18:50:51 <lifthrasiir> fizzie: a subset of all possible programs in given language can be regarded as a semantic restriction to that language, which can be another language
18:51:22 <Vorpal> and you could do x with threaded code
18:51:34 <fizzie> The one I have for example supports programs that involve a not-easily-constant-foldable j only when that the j is directly followed by N direction-changing commands (like 'v') and you never hit that j with arguments that would jump outside them.
18:52:00 <fizzie> (So you can do jump tables with it.)
18:52:10 <fizzie> It's been written to be able to run fungot.
18:52:13 <Vorpal> fizzie, a jumptable for all targets it could hit would work fine, then inserting labels there
18:52:38 <Vorpal> anyway self modification is common in befunge, for loop conditions and so on
18:52:59 <fizzie> Common, schmommon; I don't really do much of it.
18:53:11 <Vorpal> fizzie, fungot does self modification. it loads code in
18:53:19 <fizzie> Yes, but that's the only case.
18:53:20 <lifthrasiir> fizzie: how do you determine that "p" won't modify the code? does it just store the funge space (not related to the code anymore)?
18:53:45 <fizzie> lifthrasiir: Yes, it just modifies the data, not the code.
18:54:30 <fizzie> So I guess a better way to say it would've been "supports p/g, they just don't modify the code even when they should".
18:54:31 <Vorpal> fizzie, do you trace code or do you just compile it to an array?
18:54:33 <lifthrasiir> can it reject the program that is statically compilable, or does it leave the rejection in the runtime?
18:55:09 <lifthrasiir> if you do the former then i think it is close to the best possible we can do
18:55:10 <Vorpal> lifthrasiir, you can't possibly do the former. And I doubt it does the latter
18:55:33 <Vorpal> lifthrasiir, you could do the former if you insert a "not" however
18:55:44 <fizzie> It doesn't try to figure out "illegal" uses of p, no.
18:56:24 <Vorpal> lifthrasiir, still it would be hard and probably miss out on several valid programs
18:56:33 <lifthrasiir> to be exact, i wanted to add a "befunge-93-static" IL in esotope
18:56:47 <Vorpal> lifthrasiir, I find the static subset to be cheating, but that is just me
18:56:53 <pikhq> *Still* building the allyesconfig.
18:56:58 <Vorpal> lifthrasiir, and I care nothing for 93
18:57:06 <lifthrasiir> normally a befunge-like language cannot be translated to other languages (even to itself)
18:57:16 <fizzie> The JIT compiler spends quite a lot of effort in worrying about the potential effects of 'p', since a single p can invalidate quite a lot of stuff by e.g. changing the wrapping, or inserting a ; in the middle of a previously jumped-over ;...; jump.
18:57:21 <lifthrasiir> but once we can statically analyze the program, it can be translated to others
18:58:38 <Vorpal> lifthrasiir, I think that 93-static is 1) cheating 2) uninteresting because it is a boring subset of befunge93 3) uninteresting because it is befunge93, not befunge98
18:59:30 <Vorpal> lifthrasiir, I'd suggest compiling to embedded interpreter, which is also boring.
18:59:40 <Vorpal> JITTing it is however quite interesting
18:59:41 <lifthrasiir> yes, that is a lot boring than the static analysis.
19:00:07 <Vorpal> lifthrasiir, well okay that is marginally interesting. But I doubt it will give useful results for 93
19:00:08 <pikhq> Threaded compilation of Funge-93 is so much better, anyways. :P
19:00:22 <Vorpal> lifthrasiir, 93 code tends to use every trick it can to fit into the small space
19:00:33 <lifthrasiir> pikhq: but it's no use for conveting befunge-93 code to other esolangs. :p
19:00:34 <Vorpal> lifthrasiir, for 98 code it would probably be easier to follow
19:00:57 <Vorpal> lifthrasiir, surely you can do threaded code interpreters in other esolangs
19:01:00 <pikhq> lifthrasiir: Well, no, it's hardly even an interpretation technique.
19:01:18 <pikhq> More of a very trivial JIT.
19:01:39 <pikhq> Vorpal: Threaded code interpreting can be viewed as a special case of JITing.
19:01:42 <Vorpal> lifthrasiir, maybe. I tend to forget names
19:01:58 <fizzie> The tracing of Funge-98 code is already quite tricky to do. You can constant-fold-as-you-go, but then if you hit the same sequence of code from some other branch the constant-folding is no longer necessarily valid; and for each basic block for best possible results you'd have to consider all possible stack states you can have when hitting it.
19:02:04 <Vorpal> pikhq, except it can't deal with selfmodification.
19:02:17 <pikhq> Vorpal: Sure it can. My Funge-93 interpreter does.
19:02:29 <Vorpal> lifthrasiir, right, I seem some 25x4 ones though. Or was it 5x25
19:02:33 <Vorpal> well vertically anyway
19:02:53 <Vorpal> pikhq, how? Is it threaded code?
19:03:13 <pikhq> You just modify the threading.
19:03:22 <lifthrasiir> ...i think it has been loooong time after i stopped to follow the befunge scene ;)
19:03:24 <Vorpal> pikhq, ah, an array that maps to functions?
19:03:38 <pikhq> Label pointers, actually.
19:03:50 <fizzie> The GCC-specific way of doing it.
19:03:52 <Vorpal> pikhq, right, same idea anyway
19:04:09 <pikhq> fizzie: Not GCC-specific... It also works on recent Clang.
19:04:12 <Vorpal> pikhq, do you use different ones for different directions?
19:04:14 <fizzie> Mooz's implementation of that did macrology to do computed-gotos on GCC, separate functions and function pointers on elsewhere.
19:04:23 <pikhq> Vorpal: No, I have an overcomplicated step routine.
19:04:34 <Vorpal> pikhq, I thought llvm ir didn't handle taking address of a label?
19:04:54 <pikhq> Vorpal: They made a point of getting computed goto to work.
19:05:36 <Vorpal> pikhq, in the llvm ir or by frontend magic?
19:06:30 <fizzie> I seem to recall that there was computed-goto support in some clang version quite a while ago, but it was badly broken.
19:07:40 <Vorpal> hm can you do continuations with it?
19:08:02 <Vorpal> or I guess it doesn't allow call outside the function
19:08:30 <fizzie> They broke it in 2.7, and fixed immediately after.
19:09:41 -!- Aune has joined.
19:09:53 <fizzie> The LLVM assembly was indeed quite strict when it comes to jumps; should perhaps check what it translates a simple example to.
19:10:49 <pikhq> 33 megabytes for allyesconfig.
19:10:58 <Phantom_Hoover> Oh my god the YouTube transcription thing is hilarious.
19:11:02 <fizzie> At least the jumps need to statically know where all they can lead; but, well, since it's function-internal, maybe it just includes all labels that have their addresses taken of anywhere in the function.
19:11:33 <fizzie> Phantom_Hoover: I used it on one of those Stanford machine learning lectures (while waiting for someone to fetch a laptop with audio support) that I was showing to students. It's really the bee's knees.
19:12:16 <Vorpal> <Phantom_Hoover> Oh my god the YouTube transcription thing is hilarious. <-- what, where?
19:12:27 <Phantom_Hoover> It transcribed "conch" as "crotch" or "cock" (it was pronounced two different ways in the video; long story.)
19:12:41 <Vorpal> Phantom_Hoover, I mean where do I find it
19:12:43 <fizzie> Vorpal: It's been in YouTube for ages; how are you only now hearing about it?
19:12:55 <Vorpal> fizzie, I use youtube-dl, not flash
19:13:18 <fizzie> Vorpal: It's also been discussed on-channel several times, and I think even once when you mentioned your youtube-dl use in the context, I think. :p
19:13:34 <Vorpal> fizzie, possibly. I don't have perfect memory
19:13:36 <fizzie> Phantom_Hoover: http://www.youtube.com/watch?v=LBtuYU-HfUg has some real gems in the auto-transcribed captions.
19:13:58 <fizzie> Vorpal: I'm only something like 60% confident on the above factoid, so...
19:14:15 <Phantom_Hoover> fizzie, http://www.youtube.com/watch?v=xs_PwFWuwJs was the one I tried it on.
19:14:33 <fizzie> Phantom_Hoover: There are some rather boring long periods; but some quite funny parts too.
19:15:14 <fizzie> The language model they have isn't really trained for speaking about the EM algorithm for mixture-of-Gaussian models.
19:15:42 <fizzie> I think it did Gaussian -> calcium quite a few times.
19:15:57 <fizzie> "forfeiting a mixture of calcium smallville right and so" (real quote)
19:18:18 <fizzie> What he really said was "for fitting a mixture of Gaussians model... right, and so --"
19:18:27 <fizzie> So it's not really too far of; but still.
19:21:14 <fizzie> I dislike this topic though, because when elliott logreads this bit, he's going to again start trolling me on the futility of speech recognition.
19:22:42 <fizzie> Well, it has happened thrice or so now, I guess, so not *too* often.
19:24:13 -!- azaq23 has joined.
19:24:15 <fizzie> By being all "your life's work is meaningless AH AH AH ready to admit defeat?" all the time.
19:24:26 <fizzie> Usually I've opted just not to argue, so it is over quite fast.
19:43:23 <Vorpal> come on, it is definitely possible to decode speech. Humans manage most of the time.
19:44:20 <Vorpal> and I don't think human brains have something that can't be emulated on computers except for the complexity
19:44:41 <Vorpal> (which would definitely tax a modern computer)
19:47:30 -!- Sgeo_ has quit (Ping timeout: 240 seconds).
19:51:06 <fizzie> Yes, well, we'd hope to get something useful done even in this interim period before strong AI is solved.
19:51:58 <fizzie> (And I *could* argue the speech processing field in general does useful things -- it's just that I don't really like arguing that much.)
20:00:01 -!- zzo38 has joined.
20:00:11 <fizzie> Well, since I'm already so-called "screwed" w.r.t. a logreading elliott, I could also share a thing from the conference: http://p.zem.fi/4r1y
20:02:34 <Vorpal> fizzie, same redacted all the way through?
20:03:04 <Vorpal> fizzie, anyone I know?
20:03:38 <fizzie> That would be what they call "telling".
20:04:24 <fizzie> A bit like redacting a .pdf with a black box on top of text without removing what's below.
20:04:33 <fizzie> Except perhaps a milder case.
20:04:59 <fizzie> I don't suppose it is really relevant anyway, it's not like he/she/it spoke very much in that bit.
20:05:05 <Vorpal> fizzie, I didn't ask who it was. Just if it was someone from this channel
20:05:21 <fizzie> Yes, but that would still reveal information.
20:05:29 <Vorpal> fizzie, I presume it was from irc
20:05:58 <Vorpal> fizzie, you would not be afraid to reveal that it was someone from elsewhere, thus it is with high probability someone from the channel.
20:06:09 <fizzie> Yes, that much is true. I could've just re-explained, but since I had all that already typed.
20:06:22 <fizzie> By "that much" I refer to "from irc".
20:06:38 <Vorpal> fizzie, it wasn't from this channel though. Was there an IRC channel for the conference?
20:07:55 <Vorpal> fizzie, anyway that link was highly interesting
20:08:05 <fizzie> Disregarding whether the person is on this channel or not, I'd at least think I'd act similarly to protect its identity. I did consider actually completely removing those comments.
20:08:25 <fizzie> No official conference IRC channel, at least that I heard of.
20:08:51 <fizzie> I guess that's more of a something they do in the hackerying/network-related conferences.
20:10:08 <Vorpal> fizzie, are you currently at that conference?
20:10:24 <fizzie> No, it ended on Friday; came back yesterday.
20:10:36 <fizzie> That's funny, IEEE has an IRC server: http://ewh.ieee.org/econf/irc.html
20:10:46 <fizzie> (It was one of their conferences.)
20:11:00 <Phantom_Hoover> fizzie, it vaguely reminds me of my work experience, except it was actually cool.
20:11:30 <Vorpal> Phantom_Hoover, what does? The ferrets?
20:12:15 <Phantom_Hoover> My work experience was with an uncle who works on BCIs, except their one can sometimes tell which blinking light out of an array of 4 you're staring at.
20:12:38 <Vorpal> Phantom_Hoover, BCI being?
20:12:56 <olsner> brain-computer interface?
20:13:12 <Vorpal> Phantom_Hoover, anyway that is cool
20:19:47 <fizzie> The "ferret-ear to spectrogram" mapping isn't incredibly surprising, since spectrograms are basically what the ear does; the thing on humans that actually got conscious intent expressed in some meaningful way was far more surprising, though. You could easily argue the whole source separation thing would happen on far higher levels, from where it'd be quite nontrivial to map back to a spectrogram. (Assuming you believe the guy, anyway.)
20:21:24 -!- cheater__ has quit (Ping timeout: 252 seconds).
20:22:58 <Vorpal> fizzie, well, aren't there nerves to the ear going in both directions iirc?
20:23:30 -!- elliott has joined.
20:23:34 <fizzie> Well, yes; there is some amount of tuning-the-sensor-based-on-the-focus going on there.
20:24:03 <Vorpal> fizzie, also could tuning the sensor based on the language. Have he tried doing this on music?
20:24:03 <fizzie> I can't find the ferret guy from the program; I must've misremembered which session he was in.
20:24:34 <Vorpal> fizzie, I would be very interested in knowing if it works for music as well as for speech
20:31:54 <fizzie> Unfortunately I didn't note down the speaker's name, under the assumption that I could just look it up from the program; and now I can't seem to find it.
20:38:45 -!- evincar has left.
20:43:37 <Vorpal> fizzie, hm xkcd as of a few days ago that clicking on the first non-italic link not in parenthesis in a wikipedia article would if repeated eventually always take you to "philosophy"
20:43:48 <Vorpal> I done some experiments and so far it seems correct
20:44:00 <zzo38> Almost always. I have done it and it almost always is, not quite always.
20:44:20 <Vorpal> zzo38, I imagine some stub pages might not have any link at all for example
20:44:46 <zzo38> (It is also described in the Wikipedia Department of Fun, and once I found the longest one but it changed and resulting in a loop so someone sent me a message about it)
20:45:00 <zzo38> Even without stub pages it sometimes happens that it doesn't.
20:45:17 <Vorpal> or just a different end page?
20:45:55 <zzo38> Look at my Wikipedia user talk page.
20:46:04 <Vorpal> zzo38, what user name?
20:46:52 <Lymia> Vorpal, you could write up a script to test it a bunch.
20:47:01 <Lymia> Random page, apply procedure.
20:47:17 <Vorpal> Lymia, not that interested
20:50:10 <fizzie> I think they had a links-only SQL dump available if you wanted to do that a whole lot; though I don't have a clue if that contains enough information to follow the "not in parenthesis" rule, probably not.
20:50:48 <Vorpal> what with the dash over most, you'd think they are actively hunting these down: http://en.wikipedia.org/wiki/Wikipedia:Get_to_Philosophy#Articles_likely_to_loop_instead_of_going_to_Philosophy
20:51:23 <Phantom_Hoover> Vorpal, you realise that someone already knocked a thing for this together?
20:51:46 <Vorpal> Phantom_Hoover, for automating it? Yes probably. Did I indicate anything else?
20:52:00 <Vorpal> http://ryanelmquist.com/cgi-bin/xkcdwiki for example
20:52:35 <elliott> there is also the generalised version.
20:52:44 <Phantom_Hoover> I'm *really* hoping people aren't editing WP to remove loops.
20:52:55 <Vorpal> Phantom_Hoover, well to me it looks like they do
20:52:58 <elliott> Hmm, http://xkcd.com/903/ is actually quite amusing.
20:53:07 <elliott> The caption is utterly unnecessary.
20:53:18 <elliott> And the Wikipedia pages are way too detailed, it could be a lot more implied.
20:53:23 <elliott> But the right-hand side conversation is funny.
20:53:28 <Vorpal> elliott, however it works as it is
20:53:49 <elliott> Yes but it's not a very good comic as is, just quite amusing.
20:54:47 <Vorpal> Phantom_Hoover, well there is a comment in one of them suggested "fixed"
20:54:57 <Vorpal> Phantom_Hoover, so... yes it looks like people are removing loops
20:55:19 <elliott> Fixed probably just means "broken".
20:55:24 <elliott> Don't addquote that, it's not funny.
20:55:58 <Vorpal> elliott, yes they broke the loop
20:56:10 <elliott> Not necessarily "they"; check who added it I guess.
21:00:38 <elliott> fizzie: P.S. speech recognition sucks etc.
21:00:49 <fizzie> That took quite a while.
21:01:21 <fizzie> Does wikipedia has a "svn/git/hg/foo blame" style thing that'd show the page but subdivided into non-overlapping blocks with the latest person-to-edit annotated?
21:01:23 <elliott> I wasn't going to logread until PH bugged me about it.
21:01:55 <Vorpal> <elliott> I wasn't going to logread until PH bugged me about it.
21:02:28 <fizzie> Though I was under the impression you logread absolutely everything.
21:02:37 <elliott> I usually do, but the log looked boring.
21:03:59 <elliott> 12:56:49: <oklopol> Using the NumPy and SciPy libraries will give you the tools you need to solve harder math problems.
21:03:59 <elliott> 12:57:22: <oklopol> yeah i prove most my graph-related theorems using numpy
21:03:59 <elliott> 13:08:11: <Vorpal> oklopol, but isn't python rather slow, both to execute and to program in.
21:03:59 <elliott> 13:08:27: <Vorpal> I mean, a higher level language might be better, and also likely faster
21:04:32 <Vorpal> elliott, read the next few lines please
21:05:50 <elliott> 13:33:33: <Vorpal> Phantom_Hoover, interesting, googling PCMCIA rule 34 with safe search off gives me nothing still.
21:05:50 <elliott> [...]13:46:39: <Vorpal> Phantom_Hoover, anyway it seems rule 34 is thus invalid. That is a much more interesting fact.
21:05:57 <elliott> Honestly, I am not going over the metaphysical definitions again.
21:06:06 <elliott> You just don't understand four-dimensional pornographic platonism.
21:07:19 <olsner> type-2 pcmcia cards have two rows of *34* pins - coincidence?
21:08:00 <fizzie> Re the boring-looking log: well, you know what they say: #esoteric is like a box of chocolates; often there's two layers, with a thin sheet of paper in-between.
21:09:53 -!- Vorpal has quit (Ping timeout: 244 seconds).
21:15:39 <elliott> 16:19:52: <Vorpal> Lymia, well my point was sram is larger than dram in real life. And you can't do dram in minecraft
21:15:39 <elliott> 16:20:06: <Vorpal> Lymia, the most compact memory would be delay lines
21:15:39 <elliott> 16:20:15: <Lymia> Vorpal, no clue how those work.
21:15:39 <elliott> 16:20:23: <Lymia> Would it do well for Brainfuck?
21:15:39 <elliott> 16:20:29: <Vorpal> not really no
21:15:41 <elliott> 16:20:35: <Vorpal> delay lines are not random access
21:15:43 <elliott> 16:21:00: <Lymia> Is it possible to shift them right/left?
21:15:45 <elliott> 16:21:05: <Vorpal> Lymia, they work by sending data down a slow loop, cycling it back at the end to form an infinite loop
21:15:48 <elliott> iirc pikhq's delay-line mc ram is good
21:15:58 <Lymia> elliott, can you shift a delay line right or left?
21:16:01 <elliott> 16:23:49: <Vorpal> augur, looks cool but aligning that stuff in ascii would probably take more time than writing it out linearly
21:16:07 <Lymia> If you can do that, it's perfect for Brainfuck.
21:16:08 <elliott> it comes with a custom editor written in xemacs
21:16:14 <elliott> which is so obsolete it isn't even funny
21:17:18 <Lymia> Can you build a clock you can slow down for one tick, or speed up one tick?
21:17:43 <elliott> 16:37:45: <Vorpal> Lymia, tell elliott. He believes I'm the only sane person here.
21:17:43 <elliott> i believe that is oerjan's statement, actualyl.
21:18:05 <elliott> 16:39:50: <lifthrasiir> Vorpal: you should run the CPython translated by Emscripten in your browser ;)
21:18:05 <elliott> 16:40:01: <lifthrasiir> it's insane, but it works
21:18:05 <elliott> 16:40:03: <Vorpal> lifthrasiir, ouch.
21:18:05 <elliott> 16:40:25: <Vorpal> lifthrasiir, in firefox. With 2 GB RAM in the system. No thanks.
21:18:12 <elliott> it is actually very fast/lightweight
21:20:53 <elliott> 17:37:24: <Vorpal> lifthrasiir, I found map less than useful for bf optimisation. Since there might not be an 1:1 map of number of elements
21:22:44 <elliott> 18:13:52: <evincar> Vorpal: A C-to-BF compiler, with as limited extensions as possible. Call it a BF-based VM.
21:22:44 <elliott> 18:14:13: <Vorpal> evincar, ais wrote the beginnings of a gcc backend generating bf
21:22:44 <elliott> 18:14:22: <Vorpal> I don't think he finished the bfasm -> bf bit
21:24:23 <elliott> 18:35:24: <pikhq> Vorpal: Maybe you should shut up.
21:24:23 <elliott> 18:35:27: <pikhq> We get it.
21:24:23 <elliott> 18:35:38: <pikhq> And you're going to talk about this for two more months.
21:24:26 <elliott> 18:35:51: <pikhq> Maybe you should shut up.
21:24:26 <elliott> 18:36:31: <pikhq> *Your argument is falling on deaf ears, because I don't care*.
21:24:37 <elliott> pikhq: You have surely realised by now that the only way to stop Vorpal repeating himself is to not reply.
21:26:05 <elliott> fizzie: What is this static Funge subset compiler?
21:26:56 <fizzie> No, I think I called it "funcot", and it was just barely enough to run fungot; but a horrible mess in all other respects.
21:27:27 <elliott> 19:43:23: <Vorpal> come on, it is definitely possible to decode speech. Humans manage most of the time.
21:27:27 <elliott> Sure, it's just USELESS AND SHITTY.
21:27:45 <elliott> Unfortunately fizzie has yet to realise this because of his mid-life crisis. :(
21:28:03 <fizzie> Yeah, I'm not going to discuss *that*.
21:28:12 <elliott> Ah, he is afraid of the truth.
21:29:38 -!- elliott has quit (Remote host closed the connection).
21:29:41 -!- elliott_ has joined.
21:36:53 -!- pikhq_ has joined.
21:37:12 -!- pikhq has quit (Ping timeout: 255 seconds).
21:37:48 <elliott_> pikhq_: Congratulations, you've tempted me into writing my own BF compiler.
21:38:01 <elliott_> pikhq_: But generating assembly? That's loser talk. I'm going to generate raw ELF binaries.
21:38:06 <elliott_> With manually-assembled headers.
21:38:34 <pikhq_> BTW, I have got to say, GNU Stow is very nice for managing ~/local/
21:39:23 <pikhq_> Mmm, lightweight package management.
21:40:48 -!- eremitah`off has quit (Ping timeout: 255 seconds).
21:42:36 <elliott_> pikhq_: The problem with BF optimisation is that you have to hardcode things like addition loop recognition just to get even basic optimisation done. :/
21:42:52 -!- eremitah`off has joined.
21:43:06 <elliott_> And I don't like hardcoding such things.
21:43:41 <Lymia> pikhq_, is addition loop recognition implicit in your code?
21:44:04 <zzo38> If there is 256 possible values in one cell then can you code it with tables?
21:44:14 <elliott_> zzo38: I mean the recognition of it.
21:44:26 <pikhq_> Lymia: Addition loop recognition is nonexistent in my code.
21:44:34 <pikhq_> It's a naive peephole optimiser!
21:44:46 <pikhq_> That... Works astoundingly well.
21:45:29 <Lymia> pikhq_, does it manage to turn addition into addition?
21:46:08 <Lymia> Could you do that with that weird optimization you talked about?
21:46:16 <pikhq_> ... What weird optimization?
21:46:32 <pikhq_> Shouldn't be anything weird in it.
21:46:34 <Lymia> The one with the math.
21:46:44 <Lymia> pikhq_, the one involving iteration counts.
21:47:06 <pikhq_> Probably thinking of lifthrasiir or Vorpal.
21:47:14 <pikhq_> They're the ones with the actually high-quality compilers.
21:47:22 <elliott_> it was lifthrasiir going mad explaining basic arithmetic to Vorpal >:)
21:47:36 <elliott_> pikhq_: Technically it's just one compiler and its copy-paste language-translation.
21:47:44 <elliott_> (See also: CCBI and its unofficial, incomplete port, cfunge.)
22:06:56 -!- MigoMipo_ has joined.
22:10:18 -!- MigoMipo has quit (Ping timeout: 260 seconds).
22:13:53 -!- lament has quit (Ping timeout: 276 seconds).
22:28:07 -!- MigoMipo_ has quit (Read error: Connection reset by peer).
22:42:33 -!- Patashu has joined.
23:05:23 -!- Aune has quit (Quit: Hath Deprated).
23:14:33 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:47:43 -!- eremitah`off has changed nick to eremitah.
23:52:04 -!- eremitah has left.
23:58:58 -!- Lymia has quit (Ping timeout: 260 seconds).
00:20:33 <elliott_> pikhq_: How do I make mplayer de-interlace.
00:25:05 -!- Lymia has joined.
00:25:05 -!- Lymia has quit (Changing host).
00:25:05 -!- Lymia has joined.
00:45:01 -!- FireFly has quit (Quit: swatted to death).
01:03:08 <zzo38> Do you know anything about Artificial Stupidity? I am playing Pokemon Card GB2 and I think the opponent acts like stupid... Opponent has a few powerful cards on bench with energy. I have also many cards on bench, some of which have energy. But I keep Abra Lv10 (30 HP, 0 retreat, attack Psyshock (1 dam, toss coin to paralyze), opponent has Chansey Lv55 (with no energy on it!) active, which is resisted to me.
01:03:50 <zzo38> I keep using Psyshock to do no damage but sometimes paralyze, and will probably win at this rate. Opponent plays Bill, Master Ball, Team Rocket's Trap, and so on, probably losing at this rate.
01:04:18 <zzo38> That is the strategy this time. Do not hurt and do not get hurt. (Other times the strategy is different)
01:05:06 <zzo38> We both still have 6 side cards remaining, I have 15 cards in draw pile and opponent has only 7 cards remaining in draw pile, so probably they will lose.
01:06:04 <zzo38> (The point of doing paralyze is to stop opponent from retreating in case they attach an energy in order to retreat. But even if they do, I still have good chances to win, I think, because there is not enough turns remaining)
01:09:37 -!- Phantom_Hoover has quit (Quit: Leaving).
01:14:21 <zzo38> There are other examples of artificial stupidity in this game and in the previous one
01:16:15 <CakeProp1et> This is the first time I've actually played tetris for any amount of time.
01:16:40 <CakeProp1et> I tried playing it as a child but I always gave up. But I'm now addicted... :D
01:17:12 <CakeProp1et> but anyways, would anyone like to help me brainstorm ideas for a poetic programming language?
01:23:11 <CakeProp1et> This language would rely heavily on the properties of individual lines and words.
01:24:25 <CakeProp1et> rhyme, meter, number of syllables, etc. There would need to be a lot of different ways to accomplish the same operation.
02:33:17 -!- oerjan has joined.
02:34:13 <CakeProp1et> oh look there's a programming language called Haifu
02:36:43 <oerjan> Kungku is then conspiciously missing
02:37:13 <oerjan> "Haifu" is Mandarin for "sea duck". maybe not.
02:38:03 <oerjan> **'"Haifu" is Mandarin for "sea duck".' maybe not.
02:38:37 <oerjan> no, he pretty clearly went for the pun there
02:42:47 <CakeProp1et> As in all good programming practice, comments are used to elucidate sections of code, provide extra syllables for syntactic integrity, and make poignant observations on the nature of life and the ephemeral qualities of beauty.
02:43:25 <oerjan> clearly there is not enough good programming practice around.
03:11:43 -!- pikhq_ has quit (Ping timeout: 252 seconds).
03:11:49 -!- pikhq has joined.
03:36:32 -!- azaq23 has quit (Ping timeout: 260 seconds).
03:54:00 -!- rodgort has quit (Quit: ERC Version 5.3 (IRC client for Emacs)).
03:54:22 -!- rodgort has joined.
03:58:59 -!- rodgort has quit (Client Quit).
04:00:03 -!- rodgort has joined.
04:02:47 -!- elliott_ has quit (Quit: Leaving).
04:03:08 -!- sebbu2 has joined.
04:03:08 -!- sebbu2 has quit (Changing host).
04:03:08 -!- sebbu2 has joined.
04:05:54 -!- sebbu has quit (Ping timeout: 240 seconds).
04:05:55 -!- sebbu2 has changed nick to sebbu.
04:26:27 -!- elliott has joined.
04:30:55 -!- sebbu2 has joined.
04:34:08 -!- sebbu has quit (Ping timeout: 240 seconds).
04:37:55 <oerjan> > read . reverse . show <$> [1..] :: [Integer]
04:37:56 <lambdabot> [1,2,3,4,5,6,7,8,9,1,11,21,31,41,51,61,71,81,91,2,12,22,32,42,52,62,72,82,9...
04:38:05 <elliott> bastard, automating my speculation
04:38:13 <elliott> hmm what's the differences
04:38:27 <elliott> how do you turn it into a list of two-tuples
04:38:32 <elliott> (one,two), (two,three) etc.
04:38:56 <elliott> > let xs = read . reverse . show <$> [1..] :: [Integer] in zipWith (-) xs (tail xs)
04:38:57 <lambdabot> [-1,-1,-1,-1,-1,-1,-1,-1,8,-10,-10,-10,-10,-10,-10,-10,-10,-10,89,-10,-10,-...
04:38:59 <oerjan> @hoogle [a] -> n -> [[a]]
04:38:59 <lambdabot> Data.List genericDrop :: Integral i => i -> [a] -> [a]
04:38:59 <lambdabot> Data.List genericTake :: Integral i => i -> [a] -> [a]
04:38:59 <lambdabot> Data.List intersperse :: a -> [a] -> [a]
04:39:04 <elliott> > let xs = read . reverse . show <$> [1..] :: [Integer] in zipWith (-) (tail xs) xs
04:39:05 <lambdabot> [1,1,1,1,1,1,1,1,-8,10,10,10,10,10,10,10,10,10,-89,10,10,10,10,10,10,10,10,...
04:40:08 <oerjan> ancient aztec god of functional programming
04:40:40 -!- cheater_ has joined.
04:41:40 <Lymia> What is the most elegant fork bomb?
04:42:58 <oerjan> :t fix((>>)<*>Control.Concurrent.forkIO)
04:42:59 <lambdabot> against inferred type `GHC.Conc.ThreadId'
04:43:14 <Lymia> pikhq, elegant Perl code?
04:43:32 <oerjan> :t Control.Concurrent.forkIO
04:43:33 <pikhq> Lymia: If ever there could be such a thing, "fork while fork" is it.
04:44:47 -!- elliott has quit (Ping timeout: 260 seconds).
04:45:20 <oerjan> :t fix forever.Control.Concurrent.forkIO
04:46:03 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m a -> m b
04:46:28 <oerjan> how the heck does it end up with -> a
04:47:10 <lambdabot> forall (m :: * -> *) a b. (Monad m) => (m b -> m a) -> m b
04:47:40 <oerjan> :t fix$forever.Control.Concurrent.forkIO
04:48:12 <lambdabot> forall (m :: * -> *) a. (Monad m) => m a
04:48:27 <CakeProp1et> hmm, why is it "while fork" when fork returns 0 for the child process?
04:49:17 <CakeProp1et> that's a lot of processes that you spawn that just halt more or less immediately.
04:50:14 <pikhq> Actually, :(){ :|: & };: has a lot to be said for it.
04:50:30 <oerjan> the forking cookie monster
04:51:01 <CakeProp1et> heh, I didn't know you could use punctuation as a subroutine name in bash.
04:51:24 <Lymia> CakeProp1et, can't say I know enough perl to know.
04:51:46 <Lymia> First fork executes, two processes.
04:51:47 <oerjan> :t Control.Concurrent.par
04:51:48 <lambdabot> Not in scope: `Control.Concurrent.par'
04:51:49 <Lymia> Both go on to "while fork"
04:51:59 <Lymia> Starts a new process which dies quickly.
04:52:03 <oerjan> :t Control.Parallel.par
04:52:03 <Lymia> Parent gets a non-zero value.
04:52:11 <Lymia> Forks off another live process.
04:52:28 <Lymia> It doubles in number every time it executes the first fork.
04:52:33 <CakeProp1et> well no, the condition is processed first. I'm just wondering why not "fork while 1", which does the same thing pretty much but avoids the child processes that just terminate.
04:52:37 <Lymia> Unless the second fork works differently.
04:52:45 <Lymia> CakeProp1et, because that's not as elegant.
04:52:53 <oerjan> :t fix.join Control.Parallel.par -- wait, that won't work
04:54:21 <Lymia> fork while fork still kills the system.
04:55:36 -!- SingingBoyo has joined.
04:56:16 -!- SingingBoyo has quit (Read error: Connection reset by peer).
05:00:44 <Lymia> CakeProp1et, that's not very elegant.
05:04:50 <Lymia> How does fork() work with memory anyways?
05:05:29 <CakeProp1et> One person's non-elegance is another person's highly deadly quadruple fork of faster doom.
05:07:28 <pikhq> Lymia: Typically, COW.
05:08:25 <CakeProp1et> so either it safeguards for that, or Gregor is going to be very unhappy.
05:08:37 <pikhq> Safeguards. That's pretty easy...
05:09:59 <Lymia> int main(){int count=0;while(true){int v=fork();if(v<1){count++;if(count==2||v<0){while(true){}}}}return 0;}
05:10:09 <Lymia> You wanted a deadly forkbomb?
05:10:28 <CakeProp1et> I wanted a forkbomb with no useless forks.
05:10:56 <Lymia> If it fails to fork, it falls back to an infinite loop.
05:10:56 <pikhq> int main(){fork();main();}
05:11:03 <Lymia> pikhq, stack overflows.
05:11:05 <Lymia> Each process is finite.
05:11:08 <pikhq> Lymia: GCC tail-calls.
05:11:13 <pikhq> Erm, does the TCO.
05:11:31 <pikhq> I'm not kidding, GCC does tail-call optimisation.
05:11:52 <Lymia> int main(){int count=0;while(true){int v=fork();if(v==-1){while(true){rand();}}}return 0;}
05:12:00 <Lymia> int main(){while(true){int v=fork();if(v==-1){while(true){rand();}}}return 0;}
05:12:31 <Lymia> int main(){for(;;){if(fork()==-1){for(;;){rand();}}}return 0;}
05:12:47 <Lymia> int main(){if(fork()==-1){for(;;){rand();}}main();}
05:13:02 <Lymia> int main(){if(fork()<0){for(;;){rand();}}main();}
05:13:08 <Lymia> Why am I golfing a fork bomb?
05:13:27 <fizzie> You have a pair of useless braces in the rand-loop.
05:14:01 <fizzie> And for the if too, I guess.
05:14:13 <fizzie> (That wasn't really the "why" though.)
05:14:43 <zzo38> main(){if~fork())for(;;)rand();main();}
05:15:24 <zzo38> I know, I made a mistake
05:15:40 <zzo38> There should be ( before ~
05:15:52 <Lymia> int main(){if(fork()<0)for(;;)rand();main();}
05:16:13 <Lymia> int main(){if(~fork())for(;;)rand();main();}
05:16:17 <CakeProp1et> so what would happen if you wrote for() in C?
05:16:19 <Lymia> main() isn't standard I don't believe.
05:16:20 <pikhq> ~ would be undefined behavior.
05:16:28 <Lymia> pikhq, fork returns -1, right?
05:16:37 <zzo38> No ~ means if -1 then false otherwise true
05:17:00 <pikhq> Lymia: Representation of signed values is undefined.
05:17:00 <Lymia> Does the C spec not require two's compartment or something?
05:17:11 <Lymia> int main(){if(fork()<0)for(;;)rand();main();}
05:17:23 <pikhq> So, ~(-1) is undefined behavior, and the compiler may launch the missiles.
05:17:46 <CakeProp1et> it's been my understanding that almost every minute detail in C is undefined behavior..
05:17:46 <pikhq> Hrm. Actually, it may be implementation defined...
05:18:03 <fizzie> Even when it "works", ~ inverts the sense, too. If fork() returns all-ones (-1), then the condition is false, not true.
05:18:04 <pikhq> In which case the compiler may only launch the missiles if its documentation notes that.
05:18:14 <zzo38> fizzie: Yes I mentioned that already.....
05:19:10 <pikhq> "Whether signed integer types are represented using sign and magnitude, two's complement, or one's complement, and whether the extraordinary value is a trap representation or an ordinary value"
05:19:25 <pikhq> Okay, it's actually defined behavior, with a handful of possibilities.
05:19:32 <pikhq> Well. Implementation-defined.
05:19:40 <pikhq> Sadly, the compiler may *not* launch the missiles.
05:19:49 <pikhq> Oh, wait, yes it can.
05:19:51 <fizzie> pikhq: Constructing a trap value invokes undefined behaviour, doesn't it?
05:19:54 <zzo38> while(~fork()?main():rand());
05:19:54 <pikhq> "The results of some bitwise operations on signed integers"
05:20:13 <zzo38> That probably wastes a lot of memory
05:20:19 <pikhq> It could, in fact, launch the missiles.
05:20:49 <pikhq> In C99 it needs to act sanely.
05:20:57 <Lymia> So could *((unsigned int*)malloc(1)-1)=0
05:22:50 <CakeProp1et> `run echo "`ps -e | grep perl | wc -l` `ps -e | grep python | wc -l`"
05:25:19 <zzo38> GameBoy binary golf: The header must be correct, and it must work regardless of what data is in the Nintendo logo area, but other than that it doesn't matter. Also do not damage the hardware. But it is OK to use some of the things in the header as code or data, as long as the header still contains the correct header data (such as title, checksums, and so on).
05:28:57 <Lymia> zzo38, with no defined goal, that is meaningless.
05:30:20 <zzo38> Goal is making some kind of game.
05:31:35 <zzo38> I have seen a breakout game in GameBoy in only 1K. It is in color and has sound effects too. The README file also claims it includes a secret DVD movie.
05:33:12 <CakeProp1et> Apparently this is a Windows batch forkbomb: %0|%0
05:35:25 <CakeProp1et> Also "fork while fork" works in Ruby as well.
05:36:41 <zzo38> Have you ever play Pokemon card?
05:41:29 -!- poiuy_qwert has joined.
05:43:29 -!- cheater_ has quit (Ping timeout: 276 seconds).
05:58:04 <pikhq> Huh. Beastie was drawn by John Lasseter.
05:58:33 <pikhq> You may know John Lasseter for all of Pixar's films.
06:02:56 <pikhq> In other news, Linux 3.0-rc1 released.
06:04:00 <Lymia> What did they add that was that important?
06:04:55 <pikhq> Linus decided 2.6.40 was stupid.
06:17:23 <pikhq> Also, .39 would've been a good choice for it...
06:17:30 <pikhq> 2.6.39 removed the BKL, after all.
06:22:03 <zzo38> Yes what kind of changes?
06:22:10 <CakeProp1et> ...Ruby almost has its own really creepy cult thing going on.
06:25:28 <pikhq> zzo38: It's a fairly normal Linux release.
06:25:34 <pikhq> Just with an easier number.
06:28:51 <fizzie> "I decided to just bite the bullet, and call the next version 3.0. It will get released close enough to the 20-year mark, which is excuse enough for me, although honestly, the real reason is just that I can no longer comfortably count as high as 40."
06:29:29 <fizzie> And regarding what's new: "NOTHING. Absolutely nothing. Sure, we have the usual two thirds driver changes, and a lot of random fixes, but the point is that 3.0 is *just* about renumbering, we are very much *not* doing a KDE-4 or a Gnome-3 here. No breakage, no special scary new features, nothing at all like that."
06:33:20 <pikhq> If he really felt like doing major breaking changes, he would undoubtedly, uh, *have them in development* for a while.
06:33:29 <pikhq> Instead of "Surprise, I'm breaking everything!"
06:33:55 <pikhq> Say, "Surprise, I felt like making Linux into a microkernel."
06:35:50 <fizzie> Doing the MkLinux thing, running Linux as a user-mode process on the Mach microkernel.
06:36:18 <olsner> if he had made the announcement right in the beginning of april, he could've announced the 2.9 branch for making linux into a microkernel
06:38:04 <fizzie> It's also supposed to be just "3.0", but he writes: "Now, my alpha-maleness [of renumbering without having a committee meeting about it] sadly does not actually extend to all the scripts and Makefile rules, so the kernel is fighting back, and is calling itself 3.0.0-rc1. We'll have the usual 6-7 weeks to wrestle it into submission, and get scripts etc cleaned up, and the final release should be just "3.0". The -stable team can use the third number for their ver
06:39:07 <fizzie> Interesting bit of trivia: MkLinux lets you run multiple instances of the Linux task, all Xen-like like that. (It supposedly doesn't do it very well, but still.)
06:48:14 -!- Sgeo has joined.
06:48:56 * Sgeo struggles to get SASL working
06:49:49 -!- Sgeo has quit (Read error: Connection reset by peer).
06:50:43 -!- Sgeo has joined.
06:54:10 -!- MigoMipo has joined.
07:03:36 -!- MigoMipo has quit (Read error: Connection reset by peer).
07:15:05 <zzo38> http://esolangs.org/wiki/Brainstuck I didn't invent Brainstuck, but I added it to the wiki and added some information.
07:15:40 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
07:19:35 -!- Sgeo has quit (Quit: Leaving).
07:19:58 -!- poiuy_qwert has joined.
07:21:59 <Lymia> You could say that the change between 2.0 and 3.0 is large enough to count.
07:22:07 <Lymia> Any lines of code untouched?
07:22:12 <CakeProp1et> it's going to take a while to beat my 43 line record in Tetris...
07:25:28 -!- Vorpal has joined.
07:27:37 <Patashu> brainstuck is like brainfuck with a stack?
07:27:44 -!- Sgeo has joined.
07:28:06 <Sgeo> Needed to replace Silverex's xcperl.dll with a different one
07:31:33 <Lymia> zzo38, you do realize that's defined as a stack and not memory, right?
07:32:13 <Lymia> http://jisho.org/words?jap=%E3%82%B9%E3%82%BF%E3%83%83%E3%82%AF&eng=&dict=edict
07:32:24 <Lymia> The name looks like a mistranslation of "Brainstack"
07:32:54 -!- Sgeo has quit (Quit: Leaving).
07:34:03 -!- Sgeo has joined.
07:35:18 <Sgeo> I feel weird that I'm using PLAIN though
07:35:26 <Sgeo> SASL not working
07:35:41 * Sgeo beats his head against the table
07:44:08 <lifthrasiir> Lymia, that word transcribes both "stack" and "stuck". the ambiguity seems intentional.
07:44:53 <Lymia> It isn't a pun that would be gotten in English, that's for sure.
07:45:02 <Lymia> Well, as anything but a corruption of "stack"
07:46:19 <zzo38> Brainstuck does have its memory as a stack, and I have mentioned the corresponding Forth codes to operate the Forth stack, too.
07:47:18 <zzo38> I do realize it defined as a stack and not memory
07:47:34 <Lymia> It's more clear when defined that way.
07:48:13 <zzo38> In this case it is just the way, that it is based on the C code for brainfuck interpreter but modified. But it also acts as a stack, too.
07:48:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
07:51:25 -!- poiuy_qwert has joined.
07:55:24 <Lymia> zzo38, http://esolangs.org/wiki/Brainstuck
07:55:32 <Lymia> That might be a little more clear as to the intention.
07:56:18 <CakeProp1et> yeah, from reading the page I couldn't tell that it was talking about a stack until I got to the FORTH section.
07:57:47 -!- pikhq has quit (Ping timeout: 244 seconds).
07:57:52 -!- pikhq_ has joined.
07:59:30 <CakeProp1et> has anyone noticed that a lot of esolangs are stack based?
08:00:42 <Sgeo> CakeProp1et, make one that's based on an array of queuestacks!
08:01:21 <CakeProp1et> I remember writing up a language spec for a stackqueue language. Or was it a queuestack?
08:01:39 <Lymia> A tape of queuestacks.
08:02:27 <CakeProp1et> well, an abstraction of that observation, a lot of esolangs are based on a finite number of globally accessible data structures, usually one.
08:03:21 <Lymia> That, or self-modification as the only method to store state.
08:03:28 <CakeProp1et> but I guess most languages work like this. you could say that most conventional languages are symbol table based.
08:04:32 -!- zzo38 has quit (Remote host closed the connection).
08:06:16 <fizzie> There are some that do queues instead of stacks.
08:06:46 <CakeProp1et> so, if you made a esolang that used symbol tables, what else could you do to make it esoteric? Weird syntax, sure, but maybe unorthodox value types?
08:07:38 <fizzie> Strange control flow, uncommon operations?
08:08:44 <CakeProp1et> I like haifus value types. Each value has a yin and a yang, and they must be in balance. They're also associated with elements which each have relationships to one another.
08:09:40 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
08:09:41 <oerjan> <CakeProp1et> I remember writing up a language spec for a stackqueue language. Or was it a queuestack? <-- i remember someone (elliott?) making a language named Stue based on combining those
08:10:07 <fizzie> "Stue is a stack/queue language by User:CakeProphet."
08:10:36 <CakeProp1et> I particularly like the yin/yang idea. Perhaps you could have quantities that represent a duality. concretely, it would two positive integer values, but you may not need to know that information exactly. You could use other properties, like whether or not the duality is "balanced" or whether or not it's completely one-sided.
08:11:46 -!- poiuy_qwert has joined.
08:13:00 <CakeProp1et> oerjan: yeah, that's mine. But honestly it might as well not even exist anymore because I have no clue where I put my spec at.
08:13:06 <oerjan> <CakeProp1et> so, if you made a esolang that used symbol tables, what else could you do to make it esoteric? Weird syntax, sure, but maybe unorthodox value types? <-- well my vapor language Reaper went for an unusual object model
08:13:18 <oerjan> (or will, if i ever finish it)
08:14:46 <fizzie> Glass also has regular, named variables with different scopes; but then is ridiculously object-oriented.
08:16:09 <oerjan> i think Chef has naming too
08:17:07 <CakeProp1et> declaring causal relationships is always fun.
08:30:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
08:31:59 -!- poiuy_qwert has joined.
08:37:53 -!- pikhq has joined.
08:37:59 -!- pikhq_ has quit (Ping timeout: 260 seconds).
08:41:29 -!- oerjan has quit (Quit: Later).
08:49:06 -!- poiuy_qwert has quit (Read error: Operation timed out).
08:56:12 -!- poiuy_qwert has joined.
09:01:48 -!- cheater_ has joined.
09:03:21 -!- monqy has quit (Quit: hello).
09:09:33 -!- poiuy_qwert has quit (Read error: Operation timed out).
09:13:03 -!- poiuy_qwert has joined.
09:30:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
09:31:57 -!- poiuy_qwert has joined.
09:41:38 -!- poiuy_qwert has quit (Ping timeout: 244 seconds).
09:53:48 -!- poiuy_qwert has joined.
10:12:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
10:13:59 -!- poiuy_qwert has joined.
10:32:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
10:32:59 -!- Wamanuz has quit (Read error: Operation timed out).
10:33:23 -!- Wamanuz has joined.
10:35:21 -!- poiuy_qwert has joined.
10:47:34 -!- Sgeo_ has joined.
10:47:48 -!- Sgeo_ has quit (Read error: Connection reset by peer).
10:48:48 -!- Sgeo has quit (Quit: Leaving).
10:52:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
10:53:55 -!- poiuy_qwert has joined.
10:56:30 -!- Sgeo has joined.
11:06:11 -!- Phantom_Hoover has joined.
11:12:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
11:15:26 -!- poiuy_qwert has joined.
11:32:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
11:34:28 -!- poiuy_qwert has joined.
11:52:17 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
11:54:54 -!- ralc has joined.
11:55:22 -!- poiuy_qwert has joined.
12:12:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
12:15:25 -!- poiuy_qwert has joined.
12:24:04 -!- BeholdMyGlory has joined.
12:32:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
12:33:57 -!- poiuy_qwert has joined.
12:35:25 -!- Sgeo has quit (Ping timeout: 255 seconds).
12:35:40 -!- FireFly has joined.
12:52:18 -!- poiuy_qwert has quit (Read error: Connection reset by peer).
13:04:05 -!- Patashu has quit (Ping timeout: 240 seconds).
13:12:48 -!- pikhq has quit (Ping timeout: 258 seconds).
13:21:39 -!- pikhq has joined.
13:31:03 -!- wareya has quit (Read error: Operation timed out).
13:48:35 -!- aloril has quit (Ping timeout: 250 seconds).
14:02:26 -!- aloril has joined.
15:08:33 -!- oerjan has joined.
15:15:00 -!- MigoMipo has joined.
15:24:14 -!- lament has joined.
15:51:55 -!- zzo38 has joined.
16:31:59 -!- lament has quit (Ping timeout: 248 seconds).
16:37:40 <Phantom_Hoover> 01:17:12: <CakeProp1et> but anyways, would anyone like to help me brainstorm ideas for a poetic programming language?
16:37:40 <lambdabot> Phantom_Hoover: You have 3 new messages. '/msg lambdabot @messages' to read them.
16:38:09 <Phantom_Hoover> Like I said, you can check for rhymes pretty easily with a phonetic dictionary.
16:47:45 -!- ais523 has joined.
16:56:03 <pikhq> Yeah, it's called a rhyme table. So much easier than trying to parse out phonemes from the written representation.
16:56:11 <pikhq> And it's even language-agnostic.
16:56:32 <pikhq> ... Presuming you can break into words, which is non-trivial for certain languages.
17:10:13 -!- pikhq_ has joined.
17:13:04 -!- pikhq has quit (Ping timeout: 255 seconds).
17:22:56 -!- monqy has joined.
17:34:15 -!- wareya has joined.
17:37:27 -!- oerjan has quit (Quit: leaving).
17:47:59 -!- TOGoS has joined.
17:48:29 -!- TOGoS has left.
17:57:17 -!- SimonRC has quit (Remote host closed the connection).
17:57:24 -!- SimonRC has joined.
17:58:24 -!- zzo38 has quit (Quit: OUT OF PAPER).
18:22:35 -!- pikhq_ has quit (Ping timeout: 240 seconds).
18:23:42 -!- pikhq has joined.
18:23:45 -!- pikhq has quit (Read error: Connection timed out).
18:28:44 -!- pikhq has joined.
18:35:53 -!- calamari has joined.
18:44:26 -!- Sgeo has joined.
18:48:08 -!- Sgeo_ has joined.
18:49:59 -!- Sgeo has quit (Ping timeout: 260 seconds).
18:51:19 -!- elliott has joined.
18:52:56 -!- azaq23 has joined.
18:54:52 -!- ais523 has quit (Remote host closed the connection).
19:05:39 <elliott> pikhq: My god, it's going to be three point oh.
19:05:48 <elliott> will get released close enough to the 20-year mark, which is excuse
19:05:48 <elliott> enough for me, although honestly, the real reason is just that I can
19:05:48 <elliott> no longe rcomfortably count as high as 40."
19:06:41 <elliott> Phantom_Hoover: The next Linux release.
19:11:57 <pikhq> elliott: Yup, 3.0, then 3.1, and so on.
19:12:11 <elliott> Hmm, where does he say he's abandoning even-versioning?
19:12:30 <pikhq> Even-odd versioning was abandoned early last decade, man.
19:13:16 <pikhq> coppro: No, it's 3.0.
19:13:34 <pikhq> The third digit is going to be used by the stable team.
19:13:47 <pikhq> Not necessarily digit, of course.
19:14:08 <coppro> it's 3.0.0 until they fix the scripts that make dumb assumptions. Then it will be 3.0
19:14:20 <pikhq> It's still 3.0, even if the scripts think otherwise.
19:14:22 <elliott> it's 3.0-rc1 until they fix the scripts
19:14:38 <pikhq> elliott: There will be more -rc releases.
19:18:14 <pikhq> As an alternate interpretation, 3.0 will be absolutely revolutionary, and Linus simply hasn't commented about it because he's insane.
19:18:41 <pikhq> i.e.: "* <odd>.x.x: Linus went crazy, broke absolutely everything, and rewrote the kernel to be a microkernel using a special message-passing version of Visual Basic. (timeframe: 'we expect that he will be released from the mental institution in a decade or two')."
19:20:40 <lifthrasiir> pikhq: no, it's <any-positive-number>:x.x.x. such revolution should be large enough to blow the current versioning scheme as a whole.
19:21:14 <pikhq> Such as "Linus replaced Linux with a reverse-engineered NT kernel"?
19:21:28 <elliott> But NT is actually fairly decent :P
19:21:44 <pikhq> With absolute shit glued onto it.
19:21:45 <Lymia> The operating system over it, however...
19:22:05 <lifthrasiir> NT *kernel* is decent. the userland is not.
19:22:14 <olsner> pikhq: the last commit before 3.0 will be "Fix version number script and rewrite as microkernel"
19:22:19 <Lymia> Could you take NT, the POSIX compatibility layer, and build a Linux system over it?
19:22:53 <elliott> It's not a POSIX compatibility layer.
19:22:56 <elliott> It's an implementation of POSIX on NT.
19:23:00 <elliott> Just like Windows is implemented on NT.
19:23:10 <lifthrasiir> afaik that subsystem is not well supported
19:23:19 <elliott> lifthrasiir: Works well enough to run Gentoo.
19:23:27 <elliott> (In a Windows environment.)
19:23:29 <elliott> lifthrasiir: It really does -- Gentoo Prefix
19:24:09 <pikhq> It helps that it has absolutely no interaction with Win32 at all.
19:24:32 <pikhq> So, it gets some niceties such as "a sane fork".
19:24:52 <Gregor> Hmmm, there's a Gentoo Prefix for OS X ...
19:24:57 <Gregor> That could make OS X nearly tolerable.
19:25:18 <elliott> With OS X it's easier to just get used to the ancient shipped userland and use a package manager to add things on top.
19:25:47 <Gregor> Yeah, but Fink and Ports both suck ass.
19:25:53 <elliott> Gregor: Homebrew sucks less.
19:26:03 <elliott> It's still... idiotic, because it's ran by people who like OS X.
19:26:15 <Lymia> Get apt running on OS X.
19:26:17 <elliott> But it basically refuses to package anything OS X does, so the number of conflicts and pain is way less.
19:26:39 <Gregor> It doesn't HAVE to be, it's just that Fink is poorly managed and basically garbage.
19:26:45 <Gregor> That is to say, the problem isn't apt, it's Fink :P
19:27:07 <pikhq> Well, apt *does* have a very, very overcomplicated means of building packages.
19:27:27 <elliott> Yeah, making Debian packages is just ... wow.
19:27:34 <elliott> The debian/ directory is full of absolutely inexplicable files.
19:27:37 <pikhq> Seriously, it makes RPM seem *wonderful*.
19:27:41 <lifthrasiir> but isn't the main concern with Fink that it is just not up-to-date?
19:27:43 <elliott> I don't know where they learned to write Makefiles.
19:27:51 <pikhq> elliott: Automake, I bet.
19:28:09 <pikhq> I'm just citing it as a terrible place to learn Make from.
19:28:30 <lifthrasiir> i abandoned Fink for that reason, but then i abandoned OS X (almost) so i didn't try out the Homebrew yet ;)
19:29:02 <Lymia> How hard is it to target OS X with a program?
19:29:08 <Gregor> I abandoned OS X before I ever used it, but I'm forced to use it sometimes :P
19:29:14 <Lymia> elliott, release a version for
19:29:30 <elliott> Lymia: Just about every library you can find on Linux you can find on OS X.
19:29:38 <olsner> Lymia: it's about as hard as releasing OS X software
19:29:39 <elliott> If you mean a GUI app, and you're not using SDL or GLUT or whatever, then it's harder.
19:29:41 <Gregor> lifthrasiir: Various school/research-related BS, which I've almost replaced entirely by now.
19:29:43 <elliott> Qt has decent OS X support.
19:29:57 <elliott> Gregor: With OS X I've found the easiest thing is just to live with it.
19:30:00 <pikhq> GTK's OS X "support" is still X11, isn't it?
19:30:02 <elliott> Trying to make it less painful has the opposite of the desired effect.
19:30:08 <elliott> pikhq: No, it has native support. ...That is, Quartz support.
19:30:11 <Gregor> elliott: I've found the easiest thing is to reboot into Debian :P
19:30:15 <elliott> It's buggy and ugly and non-native-looking and horrible.
19:30:18 <pikhq> Lymia: OS X literally is a UNIX system.
19:30:24 <Lymia> elliott, how much of a problem is OS X's utterly different UI for coding cross-platform software targeting it?
19:30:30 <pikhq> Your worst-case scenario is having to build your dependencies manually.
19:30:31 <Lymia> pikhq, well, if it's command line, it shouldn't be an issue.
19:30:38 <Gregor> OS X is proof that Unix certification is bullshit :)
19:30:42 <pikhq> The UI is literally the only distinction.
19:30:49 <elliott> Gregor: OS X is more Unix than many Unices.
19:30:52 <Lymia> I mean UI programs, of course.
19:30:53 <elliott> I mean, it IS basically an old BSD.
19:30:53 <pikhq> ... Okay, okay, and its init system is a bit wonky.
19:30:53 <olsner> Gregor: I though NT's POSIX subsystem was that proof
19:30:56 <elliott> Lymia: You should really write a different UI for everything you're targeting if your goal is a /decent/ UI.
19:31:03 <lifthrasiir> reasons that i abandoned OS X include, by the way, Mac hardware sucks ;)
19:31:04 <elliott> Lymia: If you really only want to write one GUI... use Qt.
19:31:17 <elliott> lifthrasiir: Eh? Mac hardware is, like, one of the only good things about a Mac.
19:31:29 <Lymia> elliott, that becomes a problem around Linux, don't you think?
19:31:34 <pikhq> olsner: No, no, IBM z/OS is that proof.
19:31:50 <elliott> lifthrasiir: Right; the actual hardware itself is good though and of course that doesn't apply to desktops.
19:31:56 <Lymia> elliott, actually, what do you mean by that, anyways?
19:31:57 <pikhq> olsner: Fun fact: the native character encoding there is EBCDIC.
19:31:57 <lifthrasiir> my MacBook Pro halts if i don't turn on a fan in front of it
19:32:02 <Lymia> Write a different UI to conform to the system's standards?
19:32:08 <pikhq> And it's older than UNIX.
19:32:16 <elliott> Lymia: But how does Qt become a problem around Linux?
19:32:20 <lifthrasiir> i didn't see any other laptop behaving like that
19:32:23 <elliott> Or do you mean "how do you write a UI for Linux?"
19:32:28 <elliott> Because if you do mean that: you don't.
19:32:38 <elliott> You write a UI for GNOME or KDE or "just" GTK or Qt or whatever.
19:32:59 <pikhq> Qt integrates quite well into GTK setups these days, anyways.
19:33:13 <olsner> could you make a linux system that works in the en_US.EBCDIC locale?
19:33:31 <pikhq> olsner: ... I don't see why not.
19:33:39 <pikhq> Though it would probably break a lot of shit. :P
19:34:13 <lifthrasiir> for (int i = 0; i < 26; ++i) putchar('A' + i); will break, at least
19:34:15 <pikhq> (i.e. anything that assumes vague compatibility with C locale)
19:35:17 <elliott> lifthrasiir: That has undefined results according to C anyway.
19:35:21 <elliott> (Not UB, just undefined results.)
19:35:29 <elliott> (It can't explode your toaster, but it can result in any character it wants.)
19:35:47 <lifthrasiir> elliott: yes, but people get used for it anyway (again)
19:35:49 <elliott> pikhq: Hmm, if char is signed, then all character arithmetic is potentially UB, right?
19:35:55 <Lymia> elliott, the other solution is much much more evil, don't you think?
19:36:00 <elliott> pikhq: Because it could over/underflow.
19:36:09 <elliott> 'A' could be the maximum char value.
19:36:12 <elliott> Lymia: What other solution?
19:36:26 <lifthrasiir> Lymia: for (int i = 0; i < 26; ++i) putchar("ABCDEFGHIJKLMNOPQRSTUVWXYZ"[i]); is only solution that is defined
19:36:39 <pikhq> elliott: ... Oh man, it could actually be UB.
19:36:41 <Lymia> lifthrasiir, which is nasty.
19:36:55 <elliott> pikhq: Unless it's given an exemption.
19:37:41 <pikhq> elliott: Well. Signed overflow in C99 is *implementation* defined behavior from a small handful of options.
19:37:55 <pikhq> (1s complement, 2s complement, sign/magnitude)
19:38:07 <elliott> It's UB in C[eightynine], I know that.
19:38:25 <pikhq> In C90, signed integers work however the compiler defines them to work.
19:38:40 <pikhq> Which includes "kicks your cat and launches the missiles".
19:38:54 <olsner> that's boring... makes esoteric-but-standard-compliant C environments that much less interesting
19:39:00 <lifthrasiir> elliott: <off-topic> what do the brackets mean?
19:39:25 <olsner> ... to think about, since no-one seems to ever be getting around to making them anyway
19:39:30 <pikhq> olsner: Oh, there's still plenty of room for interesting behavior in C.
19:39:49 <elliott> lifthrasiir: My number keys are broken :-)
19:39:54 <elliott> lifthrasiir: Apart from 9 and 0.
19:40:02 <pikhq> Heck, there's undefined behavior in the preprocessing step.
19:40:08 <elliott> I have thus far been too lazy to send it in to get fixed.
19:40:17 <pikhq> The preprocessor could very well summon nasal demons.
19:40:23 <Lymia> Can we make an #esoteric compliant C compiler?
19:40:24 <elliott> You mean for [hash]include?
19:40:39 <pikhq> elliott: They made a handful of syntax errors UB.
19:41:10 <elliott> pikhq: ais maintains that all syntax errors are UB.
19:41:42 <olsner> the #esoteric compliant C compiler would require running as root and clears your partition tables at any time it can prove UB has happened
19:41:45 <lifthrasiir> elliott: was there any real attempt to implement DS9k?
19:41:58 <pikhq> Also, #pragma has implementation-defined behavior.
19:42:06 <pikhq> That, too, can launch demons out of your nose.
19:42:32 <pikhq> lifthrasiir: Oh, right, C1x is adding that namespace, isn't it?
19:42:50 <olsner> (or we could just make it require a connected nucular missile launcher)
19:42:56 <pikhq> C99 added #pragma...
19:43:05 <pikhq> No, wait, it's older.
19:43:20 <pikhq> GCC 1 had the nethack launching behavior, after all.
19:43:31 <Lymia> They get +1 cookies for that.
19:43:37 <lifthrasiir> pikhq: #pragma STDC FENV_ACCESS and so on appears in ISO/IEC 9899:1999.
19:43:38 <pikhq> Yeah, #pragma STDC was C99.
19:43:44 <Lymia> pikhq, is that #esoteric complaint behavior?
19:43:47 <Lymia> Launching nethack.
19:44:01 <pikhq> Lymia: Well. So long as you document that #pragma does that.
19:44:05 <lifthrasiir> is there any interesting additions out there?
19:44:48 <pikhq> Limited polymorphism.
19:45:13 <Sgeo_> I think ants can be almost as evil as humans
19:45:31 <Sgeo_> http://www.cals.ncsu.edu/course/ent525/close/SlaveAnt.html
19:46:39 <pikhq> _Generic((x), int: foo, long: bar)(x) will call foo(x) if x is an int, bar(x) if x is a long int.
19:46:53 <olsner> the _Foo syntax is so damned ugly :/
19:47:02 <pikhq> Unicode support in the standard library...
19:47:12 <lifthrasiir> looks the feature is specially designed for tgmath.h in mind.
19:47:26 <pikhq> Yeah, but it's more generic than that.
19:47:36 <lifthrasiir> that is just a general language support for implementing tgmath.h (and others, but i don't know)
19:47:57 <pikhq> Hmm. A threading API.
19:48:17 <elliott> the C committee should be fired :)
19:48:35 <pikhq> As an optional addendum.
19:49:06 <pikhq> __STDC_NO_THREADS__ will be defined if the threading API is not implemented.
19:49:07 <lifthrasiir> i think the UCS support in the source code was included in the C standard in similar way
19:49:15 <olsner> oh, the optional addendum was the threading api? I thought the firing squad was the optional addendum :P
19:49:47 <lifthrasiir> (i never, ever used that feature being used. YMMV though.)
19:49:57 <pikhq> Seems the UTF support is mandatory.
19:50:06 <olsner> (never mind the mixup between normal firing and death by firing squad)
19:50:24 <elliott> <pikhq> __STDC_NO_THREADS__ will be defined if the threading API is not implemented.
19:53:46 <olsner> lifthrasiir: well, no, I just read elliott's "fired" as "executed by firing squad" for a while there
19:57:55 -!- Sgeo has joined.
20:01:03 -!- Sgeo_ has quit (Ping timeout: 248 seconds).
20:12:38 <elliott> How do you find the fixity again.
20:12:51 <lambdabot> <no location info>: parse error on input `:'
20:12:53 <lambdabot> The operator `:' [infixr 5] of a section
20:25:20 -!- Vorpal_ has joined.
20:25:57 -!- shachaf_ has joined.
20:25:58 -!- Sgeo has quit (Ping timeout: 240 seconds).
20:27:02 -!- Vorpal has quit (Disconnected by services).
20:27:05 -!- Vorpal_ has changed nick to Vorpal.
20:29:03 -!- ttm_ has joined.
20:29:04 -!- shachaf has quit (Disconnected by services).
20:29:09 -!- shachaf_ has changed nick to shachaf.
20:29:18 -!- olsner_ has joined.
20:29:34 -!- olsner has quit (Ping timeout: 260 seconds).
20:29:38 -!- dbc has quit (Ping timeout: 260 seconds).
20:30:02 -!- Sgeo has joined.
20:30:10 <olsner_> "* olsner has quit (Ping timeout: 260 seconds)" if I left, what am I still doing here?
20:30:37 <olsner_> (aha, of course, I'm a different me now)
20:30:41 -!- olsner_ has changed nick to olsner.
20:32:49 -!- Sgeo_ has joined.
20:34:54 -!- Sgeo has quit (Ping timeout: 260 seconds).
20:35:11 -!- sebbu2 has quit (Ping timeout: 248 seconds).
20:42:26 -!- sebbu has joined.
20:50:17 -!- Sgeo has joined.
20:51:06 -!- Sgeo_ has quit (Ping timeout: 276 seconds).
20:52:30 -!- Sgeo has quit (Read error: Connection reset by peer).
20:53:03 -!- Sgeo has joined.
21:23:54 <Sgeo> Into the water
21:24:05 <elliott> You don't have to tell me when Homestuck updates. I Know(tm).
21:27:58 -!- pikhq has quit (Ping timeout: 240 seconds).
21:28:05 -!- pikhq_ has joined.
21:45:34 -!- MigoMipo has quit (Read error: Connection reset by peer).
22:09:11 -!- pikhq_ has left.
22:09:20 -!- pikhq_ has joined.
22:09:42 <pikhq_> ... A custom packaging system that interacts poorly with anything else?
22:09:48 <pikhq_> Why yes, that *is* a good idea.
22:10:01 <pikhq_> And by "good" I mean "bad, and also I hate you".
22:12:25 <elliott> cpanminus at least makes the interface SLIGHTLY less terrible
22:12:51 <Vorpal> elliott, it still interacts badly with the distro package manager in my experience
22:13:40 <Vorpal> elliott, so did you finish the spec for my computer?
22:14:04 <elliott> Vorpal: would you like me to work on that or elliottcraft 8^y
22:14:08 <Vorpal> elliott, Wednesday this week is when I plan to serious look at it. I will order it later this week definitely
22:14:14 <Vorpal> elliott, on my computer
22:14:21 <Vorpal> elliott, rather than elliottcraft
22:15:13 <elliott> But I don't feel like it right now and you aren't paying me :P
22:16:04 <Vorpal> elliott, idea: I know there is a company near here that builds customised desktops. Ask them for a quote on the system in filling the spec. Adjust and order it much more cheaply yourself
22:16:13 <Vorpal> elliott, what do you think of that plan? Worth a try?
22:16:29 <elliott> Such companies tend to be rubbish :P
22:16:45 <Vorpal> elliott, well, might be interesting if they come up with anything good though.
22:16:46 <pikhq_> *Yeaaah*, my grandma can build better systems.
22:16:48 <Vorpal> elliott, but yes I hope for you
22:17:00 <Vorpal> pikhq_, I know mine couldn't. She is blind.
22:17:19 <Vorpal> well one of them. The other has dementia
22:17:35 <elliott> Together they would build the BEST COMPUTER.
22:17:39 <CakeProp1et> anyone know how to load a Perl module optionally, but not error if it's not there?
22:17:50 <elliott> CakeProp1et: use eval to catch the error?
22:17:56 <Vorpal> elliott, dude my blind grandma doesn't even know what a mouse is. She has never ever used a computer.
22:18:10 <CakeProp1et> elliott: I guess that works. I thought there was a better way to do it though.
22:18:16 <elliott> CakeProp1et: Maybe there is.
22:18:27 <elliott> Vorpal: It would be a psychic computer.
22:18:28 <Vorpal> elliott, your joke is not making sense
22:19:02 <Vorpal> elliott, anyway do you think you could please finish the spec this week. :)
22:20:07 <Vorpal> elliott, for now: night :)
22:20:10 <elliott> Depends on how much free time I have :P
22:20:16 <elliott> MY SERVICES ARE IN HIGH DEMAND.
22:20:22 <elliott> I'm a boutique system INTEGRATOR.
22:22:17 <CakeProp1et> elliott: haha, first time I've done any error handling in Perl. so sophisticated. :P
22:22:23 <pikhq_> Hmm... Opterons are up to 12 core chips.
22:22:26 <pikhq_> That's... Frightening.
22:22:52 <CakeProp1et> elliott: well, I forgot to count "or die" as error handling..
22:22:56 <elliott> CakeProp1et: the perl thing to do is pretend errors don't exist.
22:23:16 <pikhq_> http://www.newegg.com/Product/Product.aspx?Item=N82E16819105272 Just... Jeeze.
22:24:59 <pikhq_> And now I wonder how many can be stuck on a single motherboard.
22:25:31 <pikhq_> Come *on*, 4 with a daughterboard...
22:25:40 -!- Vorpal has quit (Ping timeout: 250 seconds).
22:27:08 <pikhq_> For the low, low price of ~$2000 before any parts.
22:28:59 <pikhq_> It can seriously have 256GiB of RAM.
22:30:53 -!- FireFly has quit (Quit: swatted to death).
22:31:02 <pikhq_> So far, we're up to $11,719.63.
22:31:15 <pikhq_> With the cheapest possible 8GB DDR3 RAM.
22:31:42 <pikhq_> Assuming, of course, you want this sucker fully loaded with 48 cores and 256GiB of RAM.
22:44:46 -!- myndzi has joined.
22:45:08 -!- myndzi has quit (Client Quit).
22:46:04 <elliott> pikhq_: I kind of want 48 cores...
22:47:17 -!- myndzi has joined.
22:54:35 <elliott> `addquote <Phantom_Hoover> The system I kind of have in mind makes a flying train a natural consequence.
22:54:39 <HackEgo> 432) <Phantom_Hoover> The system I kind of have in mind makes a flying train a natural consequence.
22:57:36 <pikhq_> Anyone willing to spend $25,649.10 on a computer?
22:58:21 <pikhq_> Sorry, slightly off...
22:58:35 <pikhq_> It's at $25,349.12, and I have a PCIe slot open.
22:58:59 <pikhq_> Actually, two, but then the PCIe 16x slot would only have 8x lanes.
23:01:43 <pikhq_> Kay, with a graphics card it's $25,884.11, and absurd.
23:02:00 <pikhq_> By "absurd" I mean "49 terabytes".
23:02:37 <pikhq_> No, only 60 gigabytes is SSD.
23:03:18 <pikhq_> Oh, wait, lemme double that...
23:04:02 <pikhq_> Phantom_Hoover: Randomly specced ubermachine.
23:06:27 * pikhq_ swaps RAM for lower latency RAM
23:08:22 <pikhq_> Phantom_Hoover: For $38,559.11, you too can have a machine with 98 terabytes of rotating disc space, 48 cores, 256 gigabytes of SSD space, a freakishly good GPU, 256GB of RAM, all in a 9U chassis!
23:09:03 <pikhq_> ... Or you could have a sports car. But what fun's that?
23:09:41 <elliott> pikhq_: And it'll make a hell of a noise.
23:09:48 <Phantom_Hoover> It may possibly be the only thing capable of running Elliottcraft.
23:10:14 <pikhq_> And draw 1.6 megawatts.
23:10:47 <elliott> pikhq_: Got the right PSU? :P
23:11:08 <pikhq_> Yes, I have the right PSU for the 9U case.
23:11:48 <elliott> pikhq_: I'll stick it outside in a steel container or something and run wires through to my room.
23:12:52 <pikhq_> http://www.newegg.com/Product/Product.aspx?Item=N82E16811123157 *This* is the case.
23:13:17 <pikhq_> http://www.newegg.com/Product/Product.aspx?Item=N82E16814125379 currently.
23:14:02 <elliott> And also heatsink/fan replacement for at least the CPU.
23:14:09 <elliott> Since, y'know, there's gonna be a LOT of heat.
23:14:15 <pikhq_> Oh, fuck, I forgot heatsinks.
23:14:21 <elliott> Well, the GPU should be "fine".
23:14:32 <elliott> But the CPU will want a real beefy heatsink and a really big fan running at maximum speed.
23:14:38 <elliott> And you'll want like three case fans at maximum speed.
23:14:38 <pikhq_> The case has 10 fans on it.
23:15:07 <pikhq_> As such is required in the MEB spec.
23:15:07 <copumpkin> pikhq_'s e-penis is growing longer by the minute
23:15:18 <pikhq_> copumpkin: No, only if I had the cash.
23:15:30 <copumpkin> pikhq_'s hypothetical e-penis is growing longer by the minute
23:15:32 <pikhq_> This is just e-masturbation.
23:16:38 <pikhq_> http://www.newegg.com/Product/Product.aspx?Item=N82E16835608023 This seems reasonable.
23:17:04 <elliott> pikhq_: Will eight of them fit?
23:17:10 <elliott> I'd worry that the CPUs would be too tightly packed.
23:17:20 -!- coppro has quit (Ping timeout: 252 seconds).
23:17:22 <elliott> Erm, right, point still stands.
23:17:28 <elliott> You could lose the second fan probably, but still...
23:18:00 <pikhq_> The CPU slots are fairly well spread-out.
23:18:10 <elliott> lets buy it together and colocate it :}
23:19:08 -!- coppro has joined.
23:19:29 <elliott> pikhq_: so we just need forty people who can contribute a thousand bucks each
23:20:50 <pikhq_> It amuses me that it has more space in RAM than some SSDs offer.
23:20:51 -!- Sgeo_ has joined.
23:21:46 <pikhq_> ... Waaait, fucked up the RAM. Lemme fix that.
23:22:16 <pikhq_> DDR2? What is this noise!
23:22:38 <pikhq_> Yes, I really found DDR2 8GB RAM.
23:23:34 -!- Sgeo has quit (Ping timeout: 252 seconds).
23:27:56 <pikhq_> With, uh, 13.5 ns latency on the RAM.
23:29:55 <pikhq_> That's the fastest 8GiB RAM.
23:36:14 <pikhq_> The best possible latency in DDR3 is 8.4 ns.
23:37:00 <pikhq_> No, wait, you can get better.
23:45:24 <elliott> pikhq_: If -vf yadif makes interlacing worse what does that mean.
23:45:35 -!- coppro has quit (Ping timeout: 248 seconds).
23:45:56 -!- Sgeo_ has quit (Ping timeout: 244 seconds).
23:46:53 <CakeProp1et> anyone have any idea what -lm would be referring to?
23:47:26 -!- Sgeo has joined.
23:48:56 -!- coppro has joined.
23:54:41 <CakeProp1et> so, anyone have some open source projects that need contributions?
23:55:49 <coppro> also what happened to your h
23:56:32 <CakeProp1et> that wasn't my actual question. I was asking about particular projects that "you" are working on.
23:56:48 <CakeProp1et> not "hi gaiz, do open source projects exist?"
23:57:43 <elliott> well mcmap needs updating to the latest protocol >:)
23:57:52 -!- ralc has quit (Quit: Leaving).
23:59:12 <CakeProp1et> hmm, can you list open source contributions as work experience in a resume? I never really considered it, but it seems reasonable.
23:59:34 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:00:19 <elliott> someone pay me 9 cents to make @
00:03:52 <CakeProp1et> hmm, seems like you can still list it as experience. And with no documented experience, that would be a good way for me to start.
00:04:53 -!- calamari has quit (Quit: Leaving).
00:07:41 -!- Phantom_Hoover has quit (Quit: Leaving).
00:37:22 <pikhq_> elliott: It means that the video was scaled with a scaling algorithm that wasn't interlace-aware.
00:37:29 <pikhq_> elliott: Which *royally* fucks shit up.
00:40:00 <elliott> it was a rip of the first doctor who episodes
00:40:07 <elliott> it was dvd resolution i thin
00:40:16 <elliott> the interlacing was really minor
00:40:21 <elliott> EVERY SURVIVING CLASSIC DOCTOR WHO SERIAL
00:40:25 <elliott> including a bunch of reconstructed ones
00:40:57 <pikhq_> elliott: Define "DVD resolution".
00:41:22 <elliott> pikhq_: seven hundred by blah
00:41:27 <elliott> seven hundred and something that is
00:41:34 <pikhq_> There's, uh, 8 possible resolutions.
00:42:54 <pikhq_> There's 4 resolutions that could be called that.
00:43:13 <pikhq_> 720x576@50i, 704x576@50i, 720x480@60i, 704x480@60i.
00:46:42 <pikhq_> Not even slightly. That is a very solidly WTF combination of resolution and framerate.
00:50:05 -!- pikhq has joined.
00:52:39 <quintopia> does 50i mean each line gets updated 25 times a second?
00:53:06 -!- pikhq_ has quit (Ping timeout: 244 seconds).
00:53:30 <pikhq> Except that 720x480 is digital NTSC.
00:53:42 <pikhq> (well, or digital PAL-M)
00:53:46 <pikhq> Which straight-up doesn't *do* 50i.
00:54:41 <quintopia> well, even if it's not a real DVD resolution, it would still be considered DVD quality
00:55:53 <pikhq> 720x480@50i is completely and utterly screwy, though. I think the only way you could get that would be a downscale from 720x576@50i...
00:56:14 <pikhq> And if the downscale was interlace-ignorant, well, there's elliott's issue with yadif.
00:59:01 <elliott> <pikhq_> Not even slightly. That is a very solidly WTF combination of resolution and framerate.
00:59:06 <elliott> well it can't be more than twenty-five fps
00:59:33 <pikhq> elliott: Except that the resolution is American TV resolution.
00:59:44 <elliott> pikhq: well didn't it use to be different back then...
00:59:54 <elliott> anyway i'm redownloading it all and this copy's avis are much bigger
00:59:56 <elliott> so probably better quality :P
01:00:02 <pikhq> elliott: No, the switch was earlier.
01:00:42 <pikhq> Oh, wait, they stopped 405-line service in *1985‽*
01:02:47 <pikhq> Anyways, the UK started system I service in 1964... *the year after Doctor Who started*?
01:03:26 <pikhq> Okay, so both 480 *and* 576@50i are weird for that.
01:03:49 <elliott> pikhq: Well, I wouldn't be surprised of anything... this is probably a DVD rip that's then been reconverted badly.
01:03:54 <elliott> And god knows how the DVD itself was resized.
01:05:23 <pikhq> Hmm. No 1960s episodes exist as original videotape; they only exist as film.
01:05:37 <pikhq> So *already* it's @25p.
01:07:44 <elliott> pikhq: you should archive binge doctor who with us two to three monkeys :D
01:07:48 <elliott> itll take us like two years
01:08:18 <pikhq> Actually, I calculated. Only a bit under a year, at a rate of a serial per day.
01:09:00 <elliott> one hundred fifty nine serials
01:09:03 <elliott> the average serial lasts about two hours
01:09:29 <elliott> pikhq: at a serial per day it's only half a year
01:09:44 <elliott> but a serial per day is a pretty intense amount, we'll probably keep that up to start with but definitely not through the whole thing
01:09:55 <elliott> pikhq: oh and i'm ignoring the new series because seriously you could breeze through that in a couple of weeks
01:09:57 -!- pikhq_ has joined.
01:10:05 <elliott> and Dimensions in Time, the EastEnders crossover
01:10:08 <elliott> and the Jim'll Fix It section
01:10:38 <elliott> http://www.icir.org/christian/publications/deadline.pdf What.
01:12:51 -!- pikhq has quit (Ping timeout: 252 seconds).
01:12:51 <pikhq_> LOREM IPSVM DOLOR SIT AMET, CONSECTETVR ADIPISCING ELIT
01:25:36 <elliott> pikhq_: btw this torrent even includes the reconstructed Shada
01:25:53 <elliott> http://torrentz.eu/122fccaa560242d3c89577d419e9e485d8e22fae
01:26:12 <elliott> yeah sure some serials are half mpeg and half avi
01:26:15 <elliott> but the quality of these things is shit anyway
01:26:21 <elliott> considering how much of it will be reconstructed :)
01:29:57 <Gregor> elliott: RThis seems to have every episode; I thought some of the earlier seasons were lost outright, and only a few episodes preserved by recordings or through other shows.
01:30:40 <pikhq_> Gregor: Some of them are labelled "reconstruction".
01:30:43 <pikhq_> Guess what that means?
01:31:01 <Gregor> pikhq_: Presumably at least a little bit more than them not being there at all :P
01:31:16 <elliott> Gregor: Not EVERY, I don't think.
01:31:30 <elliott> Gregor: Wrt recordings, I'll imagine there's a lot of them here.
01:31:32 <pikhq_> elliott: All of the Doctor Who episodes exist in audio format.
01:31:48 <elliott> pikhq_: Yes, but they would not make a blank video with an audio track.
01:32:03 <Gregor> Also that wouldn't be a "reconstruction"
01:32:04 <elliott> One of the most sought-after lost episodes is Part Four of the last William Hartnell serial, The Tenth Planet (1966), which ends with the First Doctor transforming into the Second. The only portion of this in existence, barring a few poor quality silent 8 mm clips, is the few seconds of the regeneration scene, as it was shown on the children's magazine show Blue Peter.
01:32:06 <pikhq_> And I'm pretty sure fans have made "reconstructions" of each.
01:32:24 <elliott> Listed as "reconstruction".
01:32:28 <elliott> So I guess it's like, a fan animation? :P
01:32:48 <pikhq_> More typically fan pieced-together-photos.
01:33:00 <pikhq_> There's also a lot of photos of each episode.
01:33:18 <elliott> Gregor: Don't laugh, it's like a radio show :P
01:33:26 <Gregor> I mean, fair enough, they're working in difficult circumstances, but still ... lol.
01:33:29 <elliott> Sweet, the ENTIRETY of "The Smugglers" is listed as a reconstruction.
01:33:45 <Gregor> And no, it's not like a radio show, it's not like you can just remove the video from a TV show and have a radio show X-D
01:33:47 <elliott> "All four episodes of this serial are considered missing. The soundtrack and telesnaps survive, along with bits of Australian censor footage."
01:33:54 <elliott> So all the hot naked bits survive.
01:34:11 <elliott> Gregor: I don't care, we're still watching them :P
01:34:36 <elliott> Maybe we can read the novelisations simultaneously to figure out what's going on.
01:34:38 <Gregor> So as of what series are they actually all present?
01:35:25 <elliott> Gregor: Between about 1964 and 1973, large amounts of older material stored in the BBC's various video tape and film libraries were either destroyed,[40] wiped or suffered from poor storage which led to severe deterioration from broadcast quality. This included many old episodes of Doctor Who, mostly stories featuring the first two Doctors: William Hartnell & Patrick Troughton. Following consolidations and recoveries the archives are complete fro
01:35:25 <elliott> m the programme's move to colour television (starting from Jon Pertwee's time as the Doctor), although a few Pertwee episodes have required substantial restoration; a handful have been recovered only as black and white films, and several survive in colour only as NTSC copies recovered from North America (a few of which are domestic, off-air Betamax tape recordings, not of transmission quality).[citation needed] In all, 108 of 253 episodes produce
01:35:29 <elliott> d during the first six years (most notably series 3, 4, & 5, from which 90 episodes are missing) of the programme are not held in the BBC's archives.
01:35:44 <elliott> So, all Pertwee episodes onwards survive, although some required substantial restoration and some are only black and white or low-quality colour.
01:35:54 <elliott> Presumably after Pertwee it's all good.
01:36:02 <elliott> Anything after 1973 should be good to go, since the destruction ended then apparently.
01:36:25 <Gregor> I wonder in what universe film studios decided "Well we're done with this, let's just burn this shit."
01:36:54 <elliott> Gregor: The same universe that today didn't really blink an eye at Encyclopedia Dramatica being unilaterally wiped?
01:37:09 <elliott> (OK, that has much less... lasting potential, but then they thought old episodes had no lasting potential either.)
01:37:28 <elliott> Gregor: THIS IS WHY US ARCHIVISTS ARE IMPORTANT
01:37:32 <elliott> EVEN IRC CHANNELS ARE AT RISK
01:38:22 <elliott> http://en.wikipedia.org/wiki/Doctor_Who_missing_episodes
01:38:25 <elliott> "There are 27 incomplete Doctor Who serials, with 108 of 253 episodes from the first six years of the programme missing."
01:39:04 -!- lament has joined.
01:39:46 <elliott> Gregor: Seems the BBC has released similar stills-plus-audio "reconstructions" :P
01:40:36 <elliott> I sure hope they've mixed in the few seconds of regeneration footage into The Tenth Planet.
01:40:42 <elliott> IT WILL BE RUINED WITHOUT IT
01:41:12 <elliott> "This is reflected in the nature of the surviving episodes – Seasons 1 and 2, the most widely-sold abroad of the 1960s era, are missing only nine and two episodes respectively. Most of the episodes probably survived due to a late sale in 1973 to Algeria, which is believed to have returned their copies to BBC Enterprises after their rights to broadcast them had expired, shortly before the end of the junkings."
01:41:27 <elliott> "Of all the series shown by the Corporation throughout the 1960s which had runs of significant length, only Steptoe and Son can be said to have a better survival record [...]"
01:41:49 <elliott> Gregor: Apparently all seventies episodes survive, so there's only... seven years with gaps :P
01:41:58 <elliott> Seven years that will pass rather quickly :P
01:41:59 <Gregor> Yesssssssssssssssssss :P
01:42:08 <elliott> (Consider that one serial is like four weeks.)
01:42:10 <elliott> (And only about two hours.)
01:42:48 <elliott> http://upload.wikimedia.org/wikipedia/en/0/07/Fury_from_the_Deep.JPG "Bill Burridge as Mr. Quill, in a scene censored by the Australian Film Censorship Board from the missing serial Fury from the Deep."
01:43:37 <elliott> "Episodes 5 and 10 came from an ex-BBC property which had been purchased by a LDS Church group in the early 1980s, who had come across the films when tidying the basement and subsequently offered them back to the Corporation."
01:43:51 <elliott> This article is amazing :P
01:44:56 <Gregor> Bahahaha, the censor stuff is pretty great.
01:45:11 <Gregor> The only surviving scenes are those which were cut for Australia ... that's just bizarre X-D
01:45:23 <elliott> Doctor Who: The SCARIEST Moments
01:45:33 <elliott> http://upload.wikimedia.org/wikipedia/en/3/34/Invasion_reconstruct.jpg "An example of a Loose Cannon reconstruction from The Invasion, with rolling subtitles to indicate action not obvious from the audio track."
01:45:41 <elliott> OK that's way better than just stills and audio :P
01:46:00 <elliott> "Since the late 1990s, reconstructions of the missing serials have been made by fan groups such as Loose Cannon Productions, who distribute them free.[34] These "recons" are based on the directors' original camera scripts, and use a combination of the surviving soundtracks, surviving footage, photographs, still images (especially Cura's tele-snaps) and specially-recreated material.[34][35] Although technically infringing copyright, these recons h
01:46:02 <elliott> ave been tolerated by the BBC, provided they are not sold for profit and are only distributed in degradable, non-digital formats such as VHS.[34]"
01:46:07 <elliott> Only distributed in degradable formats.
01:46:57 <elliott> Gregor: But they're in this torrent, so herp derp I guess nobody is listening to the BBC :P
01:47:11 <Gregor> Torrents rarely try hard to fit with legality X-D
01:47:11 <elliott> Unless these are VHS rips X-D
01:47:33 <elliott> Yeah, but the fans who produce the recons you might think would, given that paragraph :P
01:47:40 <elliott> So these are either VHS tapes or EVIDENCE OF NAUGHTINESS
01:47:58 -!- pikhq has joined.
01:48:19 -!- pikhq_ has quit (Ping timeout: 255 seconds).
01:48:29 <elliott> This is an absolutely insane binge, isn't it >_>
01:48:31 <Gregor> I'd actually bet these are VHS rips.
01:48:46 <Gregor> It's especially insane since I'll bet early Doctor Who was pretty much shit :)
01:49:11 <elliott> Gregor: Hey, An Unearthly Child was really good :P
01:49:32 <elliott> The Cave of Skulls was... less good.
01:50:07 <elliott> (The racism was when the Doctor charmingly compared humans' inability to understand the technobabble that is the TARDIS by analogising us to a Red Indian quote-unquote "savage".)
01:50:16 <elliott> We're all basically indians of the stars dudes
01:50:35 <elliott> Gregor: Anyway, how can I possibly say I enjoy the new series without the decades of context >:)
01:52:22 <elliott> http://en.wikipedia.org/wiki/World_No_Tobacco_Day
01:52:33 <elliott> They should just institute a World No Tobacco Month and suddenly everyone will be cured of their smoking addiction
02:11:32 <pikhq> Gregor: Worse. We've got camera-pointed-at-screen rips.
02:11:45 <elliott> pikhq: btw "these" was "reconstructed things"
02:11:49 <pikhq> Black-and-white filme cameras pointed at the screen.
02:12:01 <pikhq> Ah. The reconstructions literally are VHS rips.
02:12:26 <elliott> Niiiiiiiiiiiiiiiiiiiiiiiiice
02:12:27 <pikhq> The BBC frowns upon fan groups distributing reconstructions on more permanent media, for reasons I do not understand.
02:12:39 <pikhq> Of course, a torrent of Doctor Who isn't about to give a fuck.
02:12:42 <elliott> Herp derp coopyright infrongement
02:13:03 <elliott> I guess it takes away sales from a hypothetical future BBC reconstruction :P
02:13:21 <pikhq> If, uh, they ever actually *make* them.
02:13:29 <elliott> Well they've made A FEW :P
02:13:37 <pikhq> The closest you can get is official BBC CDs of the audio for most of the episodes.
02:14:24 <pikhq> Shame that they can't really spend money to actually animate the missing episodes.
02:15:06 <elliott> They did for The Invasion :P
02:16:20 <pikhq> Yeah, but that was an oddity...
02:17:07 <elliott> It seems that, since only one of us has a disk that can actually fit all these episodes at once, and is also getting the fastest speed (i.e. just above crawling) on the torrent, we're going to do trans-continental external hard drive mailings in lieu of us all downloading it separately :P
02:19:03 <elliott> For our next trick we'll binge the entirety of Guiding Light.
02:19:33 <elliott> That's right, all YEAR AND A HALF of it.
02:19:41 <elliott> That might not even include the radio series :P
02:20:01 <elliott> "Not much survives from the radio years, or the first 25 years or so of its TV incarnation, and what does exist is in the form of kinescopes and home video recordings (and vinyls, in the case of the radio years)."
02:20:18 <elliott> pikhq: plz to be salvaging old episodes of bad soap opera
02:22:24 <CakeProp1et> so I need to find an open source project working on something that I can contribute a lot to.. hmmmmm
02:22:42 <elliott> Aren't you going about this totally wrongly
02:22:52 <elliott> Why not look for a program you want to use and contribute to that
02:22:57 <elliott> Rather than just looking for something random to contribute to
02:25:03 <pikhq> elliott: Next, archive binge Doraemon!
02:25:26 <CakeProp1et> and it's not random. I don't necessarily have to be using something in order to contribute to it. For example, a bookkeeping system. There was another project featured on sourceforge that converted odt to various braile formats. Not something I'd use, but something I wouldn't mind working on.
02:26:02 <elliott> CakeProp1et: You can't contribute well to something you don't understand; understanding something you're not actually interested in using is not an easy thing to do.
02:26:07 <pikhq> elliott: Uh, 2,000 episodes. And counting.
02:26:08 <elliott> Putting lots of effort into it is even less feasible.
02:26:28 <CakeProp1et> right, that's why I was thinking of things I understand so I could "randomly" go find a program I could work on.
02:26:32 <elliott> But hey, "GIVE ME SOMETHING TO CODE" is the attitude of shittons of, like, fourteen year old programmers on the interwebs, so maybe I'm just old. ;-P
02:27:36 <elliott> Hmm, I think prog21 actually had a post on this
02:27:58 <elliott> http://prog21.dadgum.com/80.html
02:28:31 <CakeProp1et> for example, I know a bit about signal processing, text-based games, programming languages, and various internet protocols.
02:28:47 <elliott> Programming in the 21st Century is a good blog.
02:29:37 <CakeProp1et> ah, music is something I know about. notation, theory, etc.
02:30:54 <pikhq> Please, scratch your itches.
02:33:24 <CakeProp1et> now it's just a matter of finding a program that concerns one of these interests, and finding one that is actually in need of some serious work.
02:33:45 <elliott> you could always just write your own
02:33:51 <elliott> rather than working on something broken
02:34:48 <CakeProp1et> right now I'm working on a Perl script that organizes music, but I think I'm going to move it to C# so I can distribute it in Windows easily.
02:35:06 <elliott> nice, inferior language restricting it to an inferior os
02:35:07 <CakeProp1et> I'm not too far into the Perl version so it's no big deal to switch now.
02:35:57 -!- lament has changed nick to lament_.
02:36:28 <elliott> CakeProp1et: unless you use too recent .NET features
02:36:49 <elliott> WHOOPS TURNS OUT MICROSOFT DOESN'T ACTUALLY DISTRIBUTE OPEN SPECS FOR THE APIS IN THAT MANNER................
02:37:06 -!- lament_ has changed nick to lament.
02:37:51 <CakeProp1et> well, I think I COULD package my Perl program for Windows, but then I also want to give it a GUI at some point and I'm not really sure if Perl is the right language for that.
02:38:24 <elliott> yeah, it's not a total pain to code in like C# is
02:44:19 <CakeProp1et> elliott: I was under the impression that you didn't like Perl.
02:46:22 <CakeProp1et> I think C# is better than everything it is based on, but otherwise isn't great.
02:47:00 -!- CakeProp1et has quit (Quit: Changing server).
02:48:26 -!- CakeProphet has joined.
02:48:26 -!- CakeProphet has quit (Changing host).
02:48:26 -!- CakeProphet has joined.
02:57:34 -!- lament has quit (Ping timeout: 240 seconds).
03:11:37 -!- wareya has quit (Read error: Connection reset by peer).
03:12:18 -!- wareya has joined.
03:15:51 -!- pikhq_ has joined.
03:18:04 -!- pikhq has quit (Ping timeout: 258 seconds).
03:33:16 -!- Sgeo has quit (Ping timeout: 244 seconds).
03:35:56 -!- azaq23 has quit (Read error: Operation timed out).
03:43:13 -!- elliott has quit (Quit: Leaving).
03:52:11 -!- azaq23 has joined.
04:11:46 -!- Sgeo has joined.
04:19:55 <CakeProphet> anyone here like tabletop games? I've been looking for a group to play Shadowrun via IRC, but no luck so far.
04:20:46 -!- oerjan has joined.
04:22:34 * Sgeo is always up for Paranoia
04:22:41 <Sgeo> Does that ount as "tabletop"?
04:23:52 <oerjan> well if you use the table for rolling dice...
04:24:29 <CakeProphet> I don't really know what Paranoia is actually..
04:24:53 <oerjan> well good, you are not cleared for that information anyway.
04:28:28 -!- pikhq has joined.
04:28:38 -!- pikhq_ has quit (Ping timeout: 260 seconds).
04:28:44 -!- Patashu has joined.
04:32:27 -!- lament has joined.
04:36:47 -!- Wamanuz2 has joined.
04:40:24 -!- Wamanuz has quit (Ping timeout: 276 seconds).
04:55:51 <CakeProphet> oh look, I'm finding emacs-like key combinations in other programs I use. Like irssi
04:56:13 <CakeProphet> C-a C-k is a great thing type when I'm about to say something stupid. :D
05:03:47 <coppro> doesn't work for me due to screen
05:04:20 <pikhq> C-a and C-j is a terrible thing, however.
05:04:45 <oerjan> CakeProphet: C-u is shoter
05:05:26 <CakeProphet> oerjan: as an American hearing things like "shawty" often, that made perfect sense to me. :)
05:06:13 <oerjan> CakeProphet: also, /bind
05:10:34 * oerjan recalls he changed home and end to do scroll_start and scroll_end.
05:10:55 <oerjan> before they just duplicated C-a and C-e
05:13:19 -!- Wamanuz3 has joined.
05:14:25 * pikhq wonders if anyone has Leviticus 19:28 tattooed on them.
05:14:40 <pikhq> "You shall not make any cuttings in your flesh for the dead, nor tattoo any marks on you: I /am/ the LORD."
05:15:28 <oerjan> "I put it there in memory of my late girlfriend"
05:16:48 -!- Wamanuz2 has quit (Ping timeout: 276 seconds).
05:18:22 <oerjan> does "for the dead" apply to the part after the comma, or all _all_ tattoos forbidden
05:18:45 <pikhq> Might as well hit all possibilities.
05:18:53 <lament> people do, even now, tattoo marks for the dead
05:19:05 <CakeProphet> the "any" seems to suggest no tattoos at all.
05:19:22 <pikhq> lament: Well, yes, I'd imagine it's not *too* uncommon for someone to get a tattoo in memoriam, after all.
05:19:46 <CakeProphet> but I don't know, English is a little /too/ esoteric for this channel.
05:19:59 <CakeProphet> especially translated from other languages.
05:20:19 <oerjan> 'But by far the Christian tattooers favorite excuse for disobeying Leviticus 19:28 is the "that means nor print any marks upon you – for the DEAD". It’s ok, as long it’s not for the dead".'
05:20:58 <CakeProphet> like anyone actually follows everything in leviticus..
05:21:09 <pikhq> CakeProphet: Well, except the anti-gay stuff.
05:21:22 <pikhq> That they shout from the rooftops.
05:21:44 <pikhq> oerjan: Strange, I thought the usual excuse was to claim that Jesus made those laws moot.
05:22:07 <Sgeo> Jesus did quite clearly make the Kosher laws moot... and made 0 laws moot...
05:22:08 <coppro> The Jews take that particular law quite seriously
05:22:41 <oerjan> pikhq: that page then goes on to fume further about it
05:22:55 <pikhq> It *is* the Bible.
05:23:09 <pikhq> Land of the vengeful, hating god YHWH.
05:23:22 <CakeProphet> In Shadowrun, there are tatoos that animate and change color. That would be pretty sick.
05:23:50 <coppro> CakeProphet: just do it with nanobots
05:25:21 <CakeProphet> there's also all kinds of genetically modified implants that are purely cosmetic. cats eats/eyes/tails, oddly pigmented skin, scales, etc.
05:25:45 <CakeProphet> I wonder what conservatives will say then. :)
05:26:28 <pikhq> Eh, with any luck we'll have shoved the lot of them on the B Ark.
05:27:22 <CakeProphet> I would get some photosynthetic skin, and live off of sunlight. For great profit.
05:32:37 <oerjan> but then who will clean our telephones! er wait..
05:36:20 -!- pikhq_ has joined.
05:38:16 -!- pikhq has quit (Ping timeout: 255 seconds).
06:39:05 -!- oerjan has quit (Quit: leaving).
06:52:20 -!- Phantom_Hoover has joined.
06:53:55 -!- azaq23 has left.
06:55:14 <pikhq_> Let S be the set containing 0 and the successors of the members of S.
06:55:43 <Phantom_Hoover> pikhq_, ah, but you're using AXIOMATICS which you DON'T UNDERSTAND.
06:57:56 <pikhq_> Phantom_Hoover: *sigh*
06:58:22 <Phantom_Hoover> "I don't understand it therefore noöne does" is a depressingly common fallacy.
06:58:37 <pikhq_> let l = [0..] -- Let S be the set of numbers in the Haskell value l, of type [Integer}.
07:01:02 <pikhq_> I wonder if he is opposed to succ.
07:01:49 <pikhq_> Cause, uh, that implies the existence of an infinite set.
07:02:27 <Phantom_Hoover> I think he's opposed to it on the grounds of the paradoxes of naïve set theory.
07:03:16 <Phantom_Hoover> Which is why he skips from 1900 to 2009 as if everyone suddenly went from "oh god this makes no sense" to "let's use this EVERYWHERE" without anything in between.
07:03:42 <pikhq_> Isn't there a reason we don't use naïve set theory? :P
07:05:20 <Sgeo> Phantom_Hoover, why not inform him about what he's doing wrong?
07:05:27 <Sgeo> Instead of being inflammatory?
07:05:32 <pikhq_> Sgeo: Willful ignorance.
07:05:56 <Phantom_Hoover> Sgeo, because when confronted with the reasons he was wrong he dismissed them as BASELESS AXIOMATICS WHICH MOST MATHEMATICS NEITHER UNDERSTAND NOR USE
07:06:16 <pikhq_> We're not exactly taking esoteric, impossible details here.
07:06:42 -!- oerjan has joined.
07:06:44 <Patashu> Isn't it kind of tautological to say a mathematical object doesn't exist
07:06:50 <Patashu> Nothing about maths exists
07:06:57 <Phantom_Hoover> Well, ZF{C} isn't the most intuitive thing, but he's making essentially the same mistake as my Idiot Chemistry Teacher.
07:07:00 <pikhq_> Patashu: A philosophical point.
07:07:12 <pikhq_> Patashu: He seems far-gone from that.
07:07:58 <oerjan> <pikhq_> Isn't there a reason we don't use naïve set theory? :P
07:08:23 <Phantom_Hoover> Which is why the man is an idiot for dismissing all set theory because of the failings of naïve.
07:08:30 <pikhq_> oerjan: Yeaaah, I know.
07:08:59 <Phantom_Hoover> The way he presents it is exactly how you'd expect a charlatan to, which suggests that he either knows he's wrong or that he's *really* deluded.
07:09:49 <Patashu> There's no profit in rejecting set theory though
07:11:11 <pikhq_> ... Hmm. If he rejects infinity... Wouldn't that mean he also rejects Turing machines?
07:11:25 <pikhq_> I propose we rip the computer out of his hands.
07:11:46 <pikhq_> And possibly rip his hands out of his hands, too.
07:12:29 <oerjan> this may surprise you, but your computer is not _actually_ turing-complete, pikhq_
07:12:38 <Phantom_Hoover> For one thing, you do not actually need infinite sets for TMs.
07:12:40 <pikhq_> oerjan: LIES AND DECEIT
07:12:53 <pikhq_> oerjan: I CLEARLY SPENT INFINITE MONEY FOR THIS INFINITE TAPE SPOOL
07:13:20 <pikhq_> Which is why I'm hosting a mirror of the entirety of the Internet.
07:13:50 <Phantom_Hoover> (The control mechanism is entirely finite, and the tape only requires that you generate more tape as the head moves onto blank space.)
07:14:22 <pikhq_> (and by "mirror of the entirety of the Internet", I of course mean "the state each and every portion of the Internet, at each and every multiple of 1 Planck time since the first IMP booted for the first time.")
07:14:53 <pikhq_> Phantom_Hoover: Screw your "logic", I have pointless assertions.
07:16:28 <pikhq_> Phantom_Hoover: Philosophical debate utterly irrelevant to mathematics. :)
07:16:47 <Patashu> I found a 2 in my bed last night
07:16:52 <Patashu> It wanted to do some multiplication with me
07:20:28 <Phantom_Hoover> ...oh god I'm stuck listening to the Homestuck music again.
07:21:31 <CakeProphet> `perl $b='$b=%c%s%c;printf$b,39,$b,39;';printf$b,39,$b,39;
07:21:49 <Phantom_Hoover> CakeProphet, you can run Perl on your own computer, you know/
07:22:11 <CakeProphet> I can't run Perl in IRC on my computer without substantial effort.
07:30:25 <Sgeo> Phantom_Hoover, which music?
07:45:09 -!- pikhq has joined.
07:47:39 -!- pikhq_ has quit (Ping timeout: 240 seconds).
07:52:26 <Sgeo> If I don't turn the computer off, I'm not going to go to sleep, am I?
07:54:15 <oerjan> a most likely hypothesis
08:09:56 -!- Sgeo has quit (Ping timeout: 255 seconds).
08:11:19 -!- Vorpal has joined.
08:15:37 -!- oerjan has quit (Quit: leaving).
08:18:53 -!- _Alex_50 has joined.
08:20:48 -!- _Alex_50 has left.
08:24:40 -!- lament has quit (Ping timeout: 276 seconds).
08:45:45 -!- Sgeo has joined.
08:48:44 <Sgeo> New plan: Stay awake, sleep later in the day, take melatonin next night
09:52:29 <Sgeo> "I am like this huge lesbian." --Andrew Hussie
10:03:34 <Sgeo> Pirates love silly hats. Gregor loves hats. Therefore, Gregor is a pirate.
10:09:37 <Sgeo> No, I'm just failing to be funny
10:09:47 <Sgeo> Reading through some of Andrew's Formspring
10:11:19 <Sgeo> And yes, I'm aware that my logic about Gregor and pirates is... is the proper term "not valid"? I know between sound and valid, one is for premises true, logic sensible, the other is for logic sensible, but no comment on premises. I think it's "valid" that doesn't comment on premises
10:46:59 -!- monqy has quit (Quit: hello).
11:35:46 <Sgeo> Wow, I feel pathetic for not getting the highblood pun until now
11:36:56 <Sgeo> Patashu, have you read Homestuck?
11:37:32 <Sgeo> Gamzee is a highblood, right? "high"
11:37:41 <Patashu> There's no way that's the pun
11:38:01 <Sgeo> http://www.mspaintadventures.com/?s=6&p=005407
11:38:27 <Sgeo> See the first parenthetical note
11:38:36 <Sgeo> Although yes, I know that's the ancestors
11:38:39 <Sgeo> It still applies imo
12:08:40 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
12:13:53 * Sgeo has a bit of speculation
12:14:10 <Sgeo> Not going to say it for fear of spoileriness
12:49:56 -!- augur has quit (Read error: Connection reset by peer).
12:53:16 -!- augur has joined.
13:13:04 -!- augur has quit (Remote host closed the connection).
13:14:01 -!- augur has joined.
13:26:53 -!- BeholdMyGlory has joined.
14:01:58 -!- copumpkin has joined.
14:08:36 -!- TOGoS has joined.
14:09:03 -!- TOGoS has left.
14:34:59 -!- poiuy_qwert has joined.
14:36:48 -!- pumpkin has joined.
14:39:04 -!- copumpkin has quit (Ping timeout: 276 seconds).
14:40:17 -!- ais523 has joined.
14:40:21 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep).
15:03:36 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
15:22:34 -!- ais523_ has joined.
15:22:40 -!- ais523 has quit (Ping timeout: 248 seconds).
15:22:45 -!- ais523_ has changed nick to ais523.
15:30:58 -!- lament has joined.
15:37:52 -!- ais523_ has joined.
15:38:13 -!- ais523 has quit (Ping timeout: 276 seconds).
15:38:17 -!- ais523_ has changed nick to ais523.
16:09:04 -!- lament has quit (Quit: Lost terminal).
16:24:05 -!- oerjan has joined.
16:24:49 -!- cheater_ has quit (Ping timeout: 276 seconds).
16:40:26 -!- augur has changed nick to not_not_mike_mac.
16:40:40 -!- not_not_mike_mac has changed nick to augur.
16:49:41 -!- augur has changed nick to CauseItsTheBest.
16:49:53 -!- CauseItsTheBest has changed nick to augur.
17:02:33 -!- pikhq has quit (Ping timeout: 252 seconds).
17:02:37 -!- pikhq has joined.
17:07:41 <Phantom_Hoover> You'd have thought a world war would be less one-sided.
17:12:39 -!- ais523 has quit (Read error: No route to host).
17:13:07 -!- ais523 has joined.
17:19:02 <Sgeo> Maybe the landmass thing makes it look more one-sided than it was?
17:19:55 <Sgeo> Just that size of a country doesn't necessarily represent... hmm, not sure
17:20:21 <CakeProphet> it seems that a lot of time was spent bugtesting 20th century warfare, in WWI.
17:22:03 <Phantom_Hoover> Bug #3451: effectiveness of chlorine considerably reduced by client-side exploit with urine-soaked cloth.
17:22:59 <oerjan> Sgeo: an area-preserving map would make russia and canada smaller, but would also make africa, india and brazil larger
17:23:22 <CakeProphet> Bug #3452: 100-man groups inefficient at handling indirect artillery fire
17:25:45 <oerjan> Sgeo: hm i think europe was a larger fraction of world population at that time, not to mention even more technologically superior
17:26:37 <Phantom_Hoover> Bug #3453: clients fail to recover after large explosions nearby.
17:31:33 <CakeProphet> Germany had the advantage as far as technology and the use of modern military tactics, but had a disadvantage in numbers.
17:32:01 <CakeProphet> but then everyone else started catching on.
17:33:53 <CakeProphet> I can't even imagine what conventional warfare looks like now
17:34:12 -!- monqy has joined.
17:34:25 <CakeProphet> do we just shoot at each other's Predator drones?
17:34:47 <CakeProphet> Phantom_Hoover: I don't think that's usually classified as conventional.
17:34:53 <Phantom_Hoover> If it's two advanced nations, it consists of pointing nukes at each other and seeing who flinches first.
17:35:57 <CakeProphet> also nukes no longer fit the definition of conventional. though it is becoming the normal mode of operation, regardless of definition of terms.
17:36:21 <oerjan> If it's two advanced nations, it consists of "proxy wars".
17:38:41 <CakeProphet> I was just wondering, what if we forgot about nukes or had sufficient anti-nuclear defenses so that something like trench warfare existed.. but with modern military technology.
17:39:43 <CakeProphet> pure "what if" question, I guess. I suppose "Woah dude..." would be an appropriate reply.
17:40:26 <oerjan> does trench warfare work even in a modern conventional war...
17:41:07 <oerjan> don't air forces ruin that completely or something
17:42:40 <CakeProphet> no WWI and WWII had both aircraft and trenches
17:54:06 <oerjan> well based solely on the name...
17:54:38 <Phantom_Hoover> "When arsole is fused to a benzene ring, this molecule is called arsindole, or benzarsole.[3]"
17:55:14 <oerjan> there's a link to http://en.wikipedia.org/wiki/List_of_chemical_compounds_with_unusual_names
17:55:46 -!- Kustas has joined.
17:56:03 <oerjan> "It is known that Glenn Seaborg proposed the chemical symbol Pu (from P.U.) for plutonium as a joke, only to find it officially adopted."
17:56:40 <oerjan> http://en.wikipedia.org/wiki/P.U.
17:57:47 <oerjan> http://en.wikipedia.org/wiki/Cummingtonite
17:59:59 <CakeProphet> so, did we somehow get to unusual elements from WWII?
18:01:07 -!- pumpkin has changed nick to copumpkin.
18:01:32 <CakeProphet> I was just wondering if we had traversed the Wikipedia link graph from WWII to strange elements, but I guess not.
18:02:09 <Phantom_Hoover> "Penguinone(3,4,4,5-tetramethylcyclohexa-2,5-dienone), so named because its two-dimensional structure resembles a penguin.[31]"
18:13:13 -!- pikhq_ has joined.
18:13:25 -!- pikhq has quit (Ping timeout: 260 seconds).
18:17:53 -!- elliott has joined.
18:18:05 <elliott> 07:05:20: <Sgeo> Phantom_Hoover, why not inform him about what he's doing wrong?
18:18:07 <elliott> 07:05:27: <Sgeo> Instead of being inflammatory?
18:18:14 <elliott> 07:06:44: <Patashu> Isn't it kind of tautological to say a mathematical object doesn't exist
18:18:16 <elliott> 07:06:50: <Patashu> Nothing about maths exists
18:18:17 <elliott> (window scrolled as i dragged)
18:22:55 <CakeProphet> are there any conditions on which mathematical objects exist to platonists?
18:24:07 <CakeProphet> for example, are naive sets real even though they're subject to Russell's paradox?
18:24:30 <elliott> Only consistent objects, presumably
18:24:35 <elliott> As defined by insert-favourite-theory-here
18:25:05 <elliott> But it's a rather vague position :)
18:25:14 <Kustas> what is a mathematical object? do you have a problem with real objects?
18:26:24 -!- cheater_ has joined.
18:30:42 <CakeProphet> I have a problem with all objects. Also, I hate Java.
18:30:58 <oerjan> what did the poor island do to you
18:31:35 <CakeProphet> heh, it had a programming language named after it.
18:52:59 <elliott> you've all made me paranoid :<
18:53:05 <elliott> how can i trust any new person not to just be a nickchange of another
18:55:26 <oerjan> just accept the truth of solipsism, and the problem goes away
18:56:46 <Gregor> All I've done is drop that pesky 'R' :P
18:57:57 <elliott> <Gregor> I am so sorry ;_;
18:59:12 <elliott> Kustas: hi, welcome to the qualityest channel on irc
18:59:18 <elliott> although the quality part should be obvious
18:59:46 <elliott> i take it you came here from the wiki?
19:01:22 -!- cheater_ has quit (Ping timeout: 252 seconds).
19:05:41 <ais523> happy australian mailman reminders day!
19:05:49 <elliott> ais523: [asterisk]mailman mailing list
19:06:03 <ais523> meh, I like my version better
19:06:19 <ais523> besides, it's the software that powers the list that sends the mail, not the list itself
19:06:30 <elliott> yes, but it's /historically/ inaccurate
19:06:33 <elliott> you are misrepresenting this great holiday
19:06:35 <ais523> the software isn't called "mailman mailing list"
19:06:43 <elliott> ais523: and that's not how it's parsed
19:06:50 <elliott> the subject line includes "mailing list memberships reminder"
19:07:02 <elliott> it's australian ((mailman mailing list) reminder)s day
19:07:16 <elliott> reminders for the mailing lists, which are powered by mailman
19:07:20 <elliott> making them Mailman mailing lists
19:09:25 -!- FireFly has joined.
19:13:22 * elliott continues a stupid argument on reddit
19:23:44 -!- jcp has quit (Ping timeout: 248 seconds).
19:30:19 -!- jcp has joined.
19:31:23 -!- cheater_ has joined.
19:33:52 -!- Plazma has left ("Leaving").
19:34:44 -!- Plazma has joined.
19:49:32 -!- pikhq_ has quit (Read error: Connection reset by peer).
19:54:11 -!- Kustas has quit (Quit: headstands).
19:55:21 -!- pikhq has joined.
20:00:25 -!- MigoMipo has joined.
20:06:54 <oerjan> remarkable with that nick
20:16:07 <pikhq> elliott: Yeah, the final q is just ironic.
20:17:15 -!- Lymia has changed nick to qs.
20:17:20 <qs> That's mean.
20:18:03 -!- qs has changed nick to Lymia.
20:18:08 -!- shachaf_ has joined.
20:19:15 <pikhq> EIN VOLK! EIN REICH! FÜNFUNDZWANZIG BUCHSTABE EIN ALPHABET!
20:21:14 <oerjan> i forget whether germans count ü, ä, ö and that sz i cannot type
20:24:00 -!- shachaf_ has quit (Remote host closed the connection).
20:24:20 <elliott> oerjan: what fixity is (->) again? ;D
20:24:20 <oerjan> clearly so have the germans present
20:24:55 <oerjan> cheater_: um it's _pronounced_ ess zed, isn't it
20:25:22 <cheater_> in fact, the translit for it is "ss".
20:25:51 <oerjan> cheater_: i mean, the _name_ of it
20:26:35 <cheater_> you're confused because the original glyph for it is a ligature of s and z.
20:26:57 <oerjan> "Its German name is Eszett (IPA: [ʔɛsˈt͡sɛt], lexicalized expression for sz) or scharfes S (IPA: [ˈʃaːfəs ˈʔɛs], sharp S).
20:27:26 <cheater_> but it's not pronounced as "sz"
20:28:03 <cheater_> i've never come across people calling it Eszett though, scharfes s is quite common though
20:28:36 <cheater_> any spelling using "sz" was changed to "ss" in one of thousands of grammar reforms
20:28:44 <oerjan> :k (Maybe ~> Erm ->) --let's see if this works
20:29:08 <oerjan> :k (Maybe ~> Erm -> Test) --let's see if this works
20:29:09 <lambdabot> Not in scope: type constructor or class `Erm'
20:29:09 <lambdabot> Not in scope: type constructor or class `Test'
20:29:58 <oerjan> :k (Maybe `Maybe` Erm -> Test) --let's see if this works
20:29:59 <lambdabot> Not in scope: type constructor or class `Erm'
20:29:59 <lambdabot> Not in scope: type constructor or class `Test'
20:30:11 <oerjan> :k (Maybe `Maybe` Maybe -> Maybe) --let's see if this works
20:30:12 <lambdabot> `Maybe' is applied to too many type arguments
20:30:12 <lambdabot> In the type `Maybe Maybe Maybe -> Maybe'
20:30:33 <elliott> :k (Maybe `Either` Maybe -> Maybe)
20:30:34 <lambdabot> `Maybe' is not applied to enough type arguments
20:30:34 <lambdabot> The first argument of `Either' should have kind `*',
20:30:39 <elliott> :k (Maybe () `Either` Maybe () -> Maybe ()
20:30:40 <lambdabot> parse error (possibly incorrect indentation)
20:30:40 <elliott> :k (Maybe () `Either` Maybe () -> Maybe ())
20:30:42 <oerjan> :k (Maybe -> Maybe `Maybe` Maybe) --let's see if this works
20:30:43 <lambdabot> `Maybe' is not applied to enough type arguments
20:30:43 <lambdabot> Expected kind `??', but `Maybe' has kind `* -> *'
20:30:43 <lambdabot> In the type `Maybe -> Maybe Maybe Maybe'
20:30:55 <elliott> :k (Maybe () -> Maybe () `Either` Maybe ())
20:30:57 <oerjan> elliott: i'm not interested in having it type
20:31:02 <elliott> I don't think this is going to work, joeran
20:31:11 <oerjan> i'm just trying to find the fixity
20:31:37 <elliott> i don't think it will tell you
20:31:48 <oerjan> it would if i could get a fixity error
20:31:57 <elliott> are you sure that it's even the same parser
20:32:14 <oerjan> well it has _infix_ types...
20:33:25 <oerjan> :k (Int -> Int `State` Int) --let's see if this works
20:34:06 <oerjan> :t undefined :: (Int -> Int `State` Int)
20:34:25 <oerjan> :t undefined :: (Int `State` Int -> Int)
20:34:39 <oerjan> ok so lower than the default
20:35:11 <oerjan> but without type sections it's not easy to force a fixity error
20:36:34 -!- ais523 has quit (Remote host closed the connection).
20:40:24 <oerjan> !haskell newtype Test a b = T b; infixl 0 `Test`; f :: Int -> Int `Test` Int; f x = T x; main = return ()
20:40:46 <oerjan> 22:40 =EgoBot> precedence parsing error
20:40:46 <oerjan> 22:40 =EgoBot> cannot mix `(->)' [infixr 0] and `Test' [infixl 0] in the same infix expression
20:41:59 <oerjan> i guess that was the obvious fixity for it
20:42:24 <elliott> I'm still really disturbed that you can set fixities for `foo`
20:43:07 <oerjan> > 3 `mod` 5 + 9 `div` 4
20:43:56 <oerjan> > 3 `mod` 5 ^ 9 `div` 4
20:53:29 <lambdabot> <no location info>: parse error on input `='
20:54:03 <lambdabot> <no location info>: parse error on input `='
20:54:25 <oerjan> div is already a defined function and > only takes expressions
20:54:46 <oerjan> > let div x = 0 in div 5
21:05:35 <Phantom_Hoover> http://www.reddit.com/r/todayilearned/comments/hnzwx/til_that_a_majority_of_biologists_believe_earth/c1wxejf
21:05:48 <Phantom_Hoover> Someone tell me what the hell that last guy to respond to me is trying to say.
21:06:02 <Phantom_Hoover> It seems really stupid, but I'm too tired to work it out.
21:06:20 <elliott> Phantom_Hoover: herp derp derpy derp herpderp
21:09:44 <CakeProphet> Phantom_Hoover: honestly I don't see how something can be important if it doesn't concern that which is directly related to human affairs.
21:10:18 <CakeProphet> is it somehow noble to keep our little corner of the universe full of life?
21:11:04 -!- shachaf has quit (Remote host closed the connection).
21:12:17 -!- shachaf has joined.
21:12:35 <Phantom_Hoover> And, at this point, highly unadvisable to poke around without making sure we know what we're doing.
21:12:48 <CakeProphet> "But biodiversity is so much more important than the ways it serves people. It's sad that there will be a recovery period after man that lasts for millions of years before big crazy creatures like tigers and elephants can evolve. Those creatures are what makes this planet so nice." And how will any of it be "nice" in the event that we're extinct?
21:15:07 <CakeProphet> Phantom_Hoover: yeah I'm not arguing against preserving biodiversity. I just have trouble grasping an argument about the importance of a cause that is unrelated to humanity. If it's not related to humans then it must be important in some sort of grand cosmological sense. I don't think biodiversity is important to the universe.
21:15:40 <Phantom_Hoover> Yes, these are all things I was going to say but decided against.
21:15:49 <pikhq> CakeProphet: Hardly anything that happens on this blue speck of dust *can* be important to the universe at large.
21:16:03 -!- oerjan has quit (Quit: Good night).
21:16:11 <Phantom_Hoover> There are, after all, only so many words worth using to say "you're wrong please shut up."
21:16:18 <pikhq> The simple fact is, the only thing that makes it important to us is that we happen to be on it.
21:16:38 <CakeProphet> I guess the act of preserving life is noble. But really it's not. By preserving life we preserve predators, disease spreading insects, things that wipe out other species, etc. We can't really know what effect that has.
21:16:47 <pikhq> And we happen to consider life inherently valuable and noble.
21:17:05 -!- Plazma has left ("Leaving").
21:17:10 -!- Plazma has joined.
21:20:11 <Phantom_Hoover> CakeProphet, true, but our civilisation is currently built on a particular ecological makeup, and it's not very sensible to start messing with it more than is necessary.
21:20:51 <CakeProphet> #esoteric - we talk about WWI, German, Haskell, the existence of mathematical objects, and the philosophical implications of ecological preservation
21:21:26 <elliott> when have we ever talked about WWI
21:21:28 <CakeProphet> Phantom_Hoover: yes, I agree. I say preservation is good, but not for stupid reasons like "it's the right thing to do just because". :P
21:21:44 <elliott> also, we only talk about those things until I decide the conversation has become too stupid and order you all to stop
21:22:06 <CakeProphet> yes elliott is the prime minister of #estoeric.
21:22:55 <elliott> no, appointed by definition.
21:23:24 <elliott> no. as defined by THE PLATONIC CONCEPT OF PRIME MINISTERIALITY itself.
21:23:33 <elliott> fuck you, i'm archive binging doctor who. (<-- new answer to everything)
21:24:15 <elliott> CakeProphet: psht, he thinks i'm talking about just the new series
21:24:33 <elliott> i've got four fucking decades of it to go through
21:25:08 <elliott> coppro: was watching the first serial, but it's paused pending a torrent of the entire fucking thing to complete for the person I'm binging it with in America
21:25:14 <elliott> and then some trans-continental external hard drive mailing
21:25:29 <elliott> (my disk is too small to store all the episodes (two hundred gibibytes), and my internet connection is slow)
21:26:00 <olsner> you have no disks larger than 200GB? seriously?
21:26:05 <coppro> elliott: I may be the other end of that torrent
21:26:16 <CakeProphet> elliott: oh I didn't know it was such a massive program(me? fucking limeys)
21:26:17 <elliott> coppro: there are over a hundred other ends of it
21:26:20 -!- pikhq_ has joined.
21:26:22 <elliott> olsner: oh, I do, but they're all internal
21:26:28 <coppro> elliott: ah, ok, you have better connectivity than I do
21:26:35 <coppro> I have like 3 peers for some reason
21:26:50 <coppro> elliott: which torrent?
21:26:57 <elliott> 122fccaa560242d3c89577d419e9e485d8e22fae
21:27:03 <elliott> file list at http://torrentz.eu/122fccaa560242d3c89577d419e9e485d8e22fae
21:27:10 <coppro> iirc (at home) there were only like 6 seeders and 100ish leechers
21:27:33 <elliott> 126 seeders, 1,502 leechers says torrentz
21:27:52 <elliott> I know Mr. Downloader is connected to like fifty peers, so
21:28:04 <elliott> it was going at a semi-decent speed, but it's been in the teens of kibibytes since
21:28:07 <coppro> ah yes, the torrent I have covers the new series and several spinoffs too
21:28:14 -!- pikhq has quit (Ping timeout: 255 seconds).
21:28:25 <elliott> coppro: hmm, if I'd seen that I would have probably downloaded it instead
21:28:30 <elliott> does it have all the fan reconstructions?
21:28:39 <olsner> I wonder how I can tell ld to put stuff at one offset in the file, put a different offset in the part that tells the elf boot loader where to load it, and use a third offset for where things will appear in virtual memory
21:28:46 <elliott> coppro: do you have the hash?
21:28:49 <coppro> some files are labeled (reconstruction) so I assume so
21:28:59 <elliott> it probably has the same source files then
21:29:02 <coppro> http://torrentz.eu/195862a4c232b8b48e2d94d5d12f852f626e84b9
21:29:48 <elliott> aww, it doesn't have A Fix with Sontarans or Dimensions in Time or anything :-P
21:30:00 * elliott nabs it to see if it'll go any faster than the other one
21:30:41 <CakeProphet> elliott: the ninth doctor is the sexiest of all.
21:31:00 <elliott> nonsense, have you ever seen William Hartnell??!!!?!
21:31:46 <elliott> coppro: heh, it started off about twenty times faster than the other one but has now promptly crawled down to being roughly as slow (six kibibytes per second) :(
21:32:12 <elliott> it'd probably be quicker to make thousands of pounds and buy all the raw material than to wait for this
21:32:12 <coppro> btw the weakest link is hilarious
21:32:32 <elliott> coppro: have you been spying on our television ಠ_ಠ
21:32:58 <elliott> No. of episodes1600+ (incl. prime time)
21:33:03 <elliott> oh wow, now I have to archive binge The Weakest Link
21:33:08 <coppro> elliott: I've seen a few episodes. But I was talking specifically about the doctor who one that's in the torrent and for whatever reason finished downloading for me before any episode of the series proper
21:33:19 <elliott> coppro: oh you mean the spoof?
21:33:35 <coppro> no, they did a weakest link with cast members for charity
21:33:48 <elliott> the great thing about the weakest link is how tiny the prizes are
21:33:55 <elliott> OMG I GET TO WALK AWAY WITH _TWO_ _THOUSAND_ _POUNDS_
21:34:01 <coppro> "Hi, I'm David, I'm 900 years old and I'm from Gallifrey"
21:34:55 <pikhq_> Wow, someone, just for kicks, has been computing election results for Canada under the stochastic election system.
21:35:07 <elliott> pikhq_: yes, Russell O'Connor
21:35:10 <elliott> the erm, "populariser" of the system
21:35:24 <elliott> aka: the person whose blog post I link to whenever I want to describe it to someone
21:35:41 <elliott> pikhq_: unfortunately it means basically nothing because the votes are under the non-stochastic system
21:35:44 <pikhq_> Yeah, saw his post on Planet Haskell on the 2011 stochastic election.
21:35:53 <elliott> Phantom_Hoover: Planning to watch that where it appears chronologically.
21:36:07 <elliott> Phantom_Hoover: I mean come on, we're going to watch the _EastEnders crossover_.
21:36:14 <elliott> Do you think we would skip that?!
21:36:46 <pikhq_> http://r6.ca/blog/20110530T170250Z.html For 2011.
21:36:47 <elliott> http://r6.ca/blog/20110505T205710Z.html
21:36:48 <elliott> http://r6.ca/blog/20110530T170250Z.html
21:37:13 <elliott> coppro: oh hang on, the torrent speed is climbing up
21:37:27 <elliott> if it stays up for a while i'll get mr downloader to switch over to this one since it'll be quicker
21:37:56 <elliott> (gross, the New Doctor episodes are in SD)
21:38:14 <coppro> elliott: for some reason I found that downloading a parallel torrent would speed it up sometimes
21:38:44 <coppro> it was crawling at a few kb/s
21:38:52 <coppro> then I started downloading the most recent episod
21:38:56 <elliott> it would be nice if the torrent finished before summer is over since that's when the downloader has the most time to waste watching an entire serial per day
21:38:57 <coppro> and it jumped to like 100
21:39:10 <elliott> coppro: only one thing for it
21:39:14 <elliott> i'll start the other torrent with the same stuff
21:39:20 <elliott> and they'll both shoot up in speed
21:39:33 <coppro> actually if you selectively download so there's no overlap it might work
21:40:20 <elliott> i love how transmission actually estimates over two thousand days remaining for the slower one
21:40:27 <elliott> that information will never be useful to anyone ever
21:40:38 <elliott> it should just display "Don't bother, just cancel this torrent and find another one." instead
21:42:28 <elliott> coppro: well, the torrent you're on seems to be hovering around sixty kib/s, which gives a much better fifty days to wait than the few thousand on the other one
21:43:04 <coppro> elliott: with any luck you and I will peer and our net speed will go up
21:43:39 <elliott> coppro: well, I'm about to turn it off and wait for Mr. Downloader to get at the computer so I can tell him to switch; this thing is several gigabytes more than my total hard disk size
21:43:46 <elliott> and more than twice this partition's size
21:43:53 <elliott> so downloading it directly myself is not practical :)
21:44:33 <coppro> I'm selectively downloading for now
21:44:52 <coppro> I will probably get a USB hard drive and move to it or something
21:45:11 <elliott> I think we'll just download the classic-who episodes from this and get the new series in a higher quality at a faster speed elsewhere
21:45:21 <elliott> I'm not completist enough to want to watch K9 :P
21:45:21 <coppro> that does sound reasonable
21:45:29 <coppro> I can only fit the first three doctors on my current disk though
21:45:34 <coppro> so it's kind of irrelevant for me
21:45:56 <elliott> yeah, thus the transcontinental external hard drive plan :)
21:46:30 <elliott> hmm, if another friend gives in and says yes to watching it all, maybe we should cover it with stamps whenever it goes somewhere
21:46:32 <elliott> I CAN SEE A MAILING LIST IN THIS
21:46:49 <elliott> then someone formats it and all the fun ends
21:48:19 <elliott> coppro: i'm kind of dreading the reconstructions tbh
21:48:19 -!- TeruFSX has joined.
21:48:33 <elliott> a radio show where all the narration is silent and done with scrolling text instead
21:48:37 <elliott> with a bunch of stills accompanying it
21:49:00 <coppro> but it's better than nothing
21:49:25 <elliott> I suppose I should worry more about e.g. the unbearable cheesiness of the vast majority of the early stuff, more than that, really :P
21:50:27 <coppro> I've watched the very first episode
21:50:40 <coppro> other three finished last night
21:50:50 <elliott> the second episode is... not as high-quality
21:50:56 <elliott> mostly because the cavemen are terrible
21:50:57 <coppro> that's what I'm expecting
21:51:10 <coppro> there was not a lot of room for too much cheesiness in the first episode
21:51:26 <elliott> ... but as soon as i saw the torrent it was basically inevitable that i'd have the urge to binge it all, so i can't complain too much :)
21:54:29 <elliott> :t foldr (const f) undefined (repeat ())
21:54:30 <lambdabot> forall b. (Show b, SimpleReflect.FromExpr b) => b
21:54:32 <elliott> :t \f -> foldr (const f) undefined (repeat ())
22:00:28 <elliott> So, depends on its argument.
22:00:47 <CakeProphet> I was having a hard time following the folding logic but I think I see now.
22:00:50 <elliott> > foldr (const (0:)) undefined (repeat ())
22:00:50 <lambdabot> [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
22:00:55 <elliott> It's from http://www.haskell.org/wikiupload/1/14/TMR-Issue6.pdf.
22:01:06 <elliott> Well, they used (repeat undefined) rather than (repeat ()), but yeah.
22:01:38 <CakeProphet> it could be (repeat pi) right? doesn't matter.
22:03:19 <CakeProphet> so what kind of proper does something have that makes it terminate when fixed?
22:03:37 <elliott> It just lets you do general recursion :P
22:06:13 <elliott> > fix (\xs@(x:_) -> 0:(x+1):xs)
22:06:32 <elliott> > fix (\xs -> 0 : (case xs of (x:xs') -> (x+1):xs))
22:06:33 <lambdabot> [0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,...
22:07:11 <elliott> you force a pattern-match before ever producing an element there
22:07:57 <CakeProphet> Haskell slips my mind so easily.. probably because I still haven't used it much.
22:08:09 <elliott> it's because perl is busy poisoning you
22:08:13 <CakeProphet> oh hey, I should find an open source Haskell project.
22:08:29 <CakeProphet> but now I think I've gotten to an intermediate of perl understanding, so I am comfortable moving to another place.
22:09:18 <CakeProphet> in other words, I can answer most questions on #perl, but the grumpy oldbies still school me on trivial details that I hadn't considered.
22:10:53 <CakeProphet> hmm, a Haskell signal processing package would be something I could work on.
22:10:59 -!- Phantom_Hoover has quit (Quit: Leaving).
22:11:46 <CakeProphet> I've really wanted a nice clean notation I can use to describe various time-varying signals.
22:12:35 -!- zzo38 has joined.
22:17:21 <CakeProphet> it's a broad statement, describing a specific goal.
22:22:08 <CakeProphet> cFifth = foldl1 (\(xa,xf) (ya,yf) -> (sine xf $*$ xa) $+$ (sine yf $*$ ya)) [(2000,220), (1500, 330), (500, 440)]
22:22:29 <elliott> Reminds me of the things http://yaxu.org/ does.
22:22:42 <elliott> He has various Haskell-music things and does livecoding performances with them.
22:22:42 <CakeProphet> though if the type is something like (Num n) => Signal n
22:22:48 <elliott> Take a look at his videos.
22:22:54 <CakeProphet> you might be able to make a Num instance and just use + and *
22:23:13 <CakeProphet> elliott: yes, livecoding is something I'm interested in. Though less so than studio production with code.
22:23:28 <elliott> take a look at his videos then :P
22:24:57 <CakeProphet> he must be telling it to re-evaluate the code when he's finished something.
22:25:27 <elliott> he is, obviously, since you can see it flashing :)
22:26:08 <elliott> it flashes because of his emacs mode.
22:26:16 <elliott> CakeProphet: there is also his other stuff like http://yaxu.org/text-update-and-source/
22:26:36 <elliott> and the post before that too
22:26:49 <elliott> that's based on haskell too iirc
22:27:00 <elliott> oh http://yaxu.org/workshop-output/ is done with the same language/tool thing I think
22:27:39 <elliott> there's a summary in one of his posts IIRC
22:27:53 <elliott> unfortunately it is hard to see the actual code in http://yaxu.org/workshop-output/ :P
22:30:47 <CakeProphet> I have a pretty fast typing speed but it's entirely using my index and middle finger. I think I would type faster if I practiced a better technique but currently I'm very slow at typing normally.
22:32:44 <Gregor> What's your amazing typing speed with only index and middle finger? :P
22:33:11 <Gregor> 'cuz I type at 115WPM, but then I use all my fingers ... except for my left thumb.
22:36:01 <pikhq_> Funny, it's my *right* thumb that goes unused when I'm typing.
22:36:14 <pikhq_> My spacebar has a noticable indentation for my thumb now.
22:36:15 <CakeProphet> but it said "N.F.L." like 10 times which seriously slowed me down.
22:36:22 -!- elliott_ has joined.
22:36:25 -!- elliott has quit (Read error: Connection reset by peer).
22:36:52 <pikhq_> People more pedantic than I.
22:38:30 -!- zzo38 has quit (Remote host closed the connection).
22:42:05 <CakeProphet> the average for this site is apparently 36 WPM...
22:44:18 -!- MigoMipo has quit (Read error: Connection reset by peer).
22:46:09 <CakeProphet> I just never built the reflexes to touch type any other way.
22:47:14 <coppro> I can usually do about 90-100 touch typing with all my fingers except usually my left thumb
22:47:24 <coppro> I also use exclusively my right pinky for shift rather than either pinky
22:47:35 <coppro> and I make mistakes but usually correct them by feel
22:47:39 <CakeProphet> I use pinky for shift, enter, ctrl, and alt
22:47:57 <elliott_> coppro: heh, I only use my left shift
22:48:06 <coppro> Also I have a few other oddities
22:48:14 <CakeProphet> I'm a right shifter, but I use ctrl and alt on the left side.
22:48:42 <coppro> I only use my pinkies for modifiers and they keys they naturally rest on actually
22:49:44 <CakeProphet> I occasionally use my ring finger... I think. Not often. Most of the time my fingers are dancing all over the place when I type so I use my most dextrous ones.
22:50:08 <elliott_> yeah my burns are on top form today
22:50:11 -!- azaq23 has joined.
22:52:14 * pikhq_ typically averages ~70.
22:52:21 <pikhq_> But that's mostly because of typo correction.
22:52:36 <pikhq_> Inexplicably, I have a somewhat high typo rate. Kinda sucks.
22:53:24 <pikhq_> I alternate shift, left thumb alt, left pinky Ctrl.
22:54:12 <pikhq_> The only key to the immediate right of space I end up using is Win, which I have bound to compose.
22:54:29 -!- Gregorzilla has joined.
22:54:32 <coppro> I have alt bound to compose but rarely use it
22:54:43 <coppro> don't use any of the others on any sort of regular basis
22:54:49 <cheater_> really? i only use my pinky fingers to type
22:54:58 <Gregorzilla> I'll bet if I joined ##javascript with this hostname some people would worship me :P
22:55:21 <CakeProphet> honestly is using home row an advantage in programming, where a large percentage of the characters you type end up being punctuation?
22:55:21 <cheater_> that is actually a good way to practice now that i try it :D
22:55:32 <pikhq_> CakeProphet: Not as much of an advantage.
22:55:48 <pikhq_> My fingers end up actually hovering vaguely above the home row, BTW.
22:56:06 <pikhq_> Only coming down to rest when I'm not actively typing.
22:56:07 <cheater_> yes of course it is an advantage, because your editor uses hjkl for movement
22:56:16 <cheater_> as well as a/s/d for basic editing
22:56:33 <elliott_> <Gregorzilla> I'll bet if I joined ##javascript with this hostname some people would worship me :P
22:57:02 <Gregorzilla> elliott_: I guess for certain "major" NATs they rename you to nat/lol/somebullshit
22:57:03 <pikhq_> CakeProphet: Of course, you *do* still write a notable number of alphabetic characters in most languages.
22:57:08 <coppro> meh, I can one-up that
22:57:13 <Gregorzilla> e.g. for the NAT that Mozilla has for wireless.
22:57:22 <elliott_> Gregorzilla: Oh, regular kind of NAT
22:57:30 <CakeProphet> I guess I just have mad typing skills without a traditional technique.
22:58:00 <pikhq_> CakeProphet: The traditional technique is just much *easier* to achieve speed with.
22:58:01 -!- schunt has joined.
22:58:32 <CakeProphet> pikhq_: yes, but so hard for me to learn now. Because I don't want to deal with typing slow for a long time until I get the hang of it. It's like switching keyboard layouts
22:58:39 <elliott_> schunt: Gregorzilla: Fight to the death.
22:58:44 <pikhq_> It's at least possible to achieve non-terrible speeds so long as you're not freaking staring at the keyboard.
22:58:56 <pikhq_> ... Man. I can't hunt-and-peck anymore.
22:59:06 <elliott_> schunt: Violated privacy good lately?
22:59:09 <pikhq_> My fingers won't let me.
22:59:15 <elliott_> Gregorzilla: Made a hog of a web browser lately?
22:59:19 <pikhq_> They force me to type right.
22:59:30 <elliott_> eagerly awaiting * foo (~foo@nat/microsoft/x-gjdfgkjdgsdkfj) has joined #esoteric
22:59:36 <CakeProphet> that's not even what I do. I just have my keyboard memorized. I also just memorize the motions for words.
22:59:46 <cheater_> what is 'traditional technique'?
22:59:58 <pikhq_> cheater_: Touch typing, home row, and all that.
23:00:14 <pikhq_> cheater_: CakeProphet apparently pecks.
23:00:20 <elliott_> Gregorzilla: No, he's just leeching their WiFi.
23:00:38 <elliott_> Gregorzilla: Can you BELIEVE they didn't set a password????
23:00:41 <pikhq_> At least he's not hunt-and-pecking.
23:01:09 <Gregorzilla> pooppy: Dude, you're like RIGHT ACROSS THE STREET.
23:01:10 <elliott_> coppro: Not shown any music videos well lately?????????
23:01:18 <elliott_> Gregorzilla: coppro: OMG MEET UP
23:01:33 <coppro> Gregorzilla: where are you?
23:01:45 <CakeProphet> Gregorzilla: I hear consuming drugs is a common thing to do at a social gathering.
23:03:23 -!- FireFly has quit (Quit: swatted to death).
23:03:27 <CakeProphet> man, I'm never going to find people who want to play a roleplaying game over IRC...
23:03:32 <elliott_> * FireFly has quit (Quit: swatted to death)
23:03:42 <elliott_> the first casualty in the Gregorzilla/schunt war of two thousand 'leven
23:03:46 <Gregorzilla> elliott_: See how people behave on ##javascript ? Doesn't it make you want to kill yourself?
23:03:53 <elliott_> CakeProphet: i put on my robe and etc.
23:04:01 <elliott_> Gregorzilla: yeah, can you believe it's full of people who USE JAVASCRIPT??
23:04:20 <CakeProphet> elliott_: not quite what I have in mind. But, I guess since we're on the subject, you can't ignore my girth.
23:04:27 <elliott_> So are you two meeting up or not, it would be a HISTORIC MOMENT.
23:04:48 <Gregorzilla> elliott_: Hey there Britto, I think you mean "an historic moment" X-P
23:04:50 <coppro> Gregorzilla: do you know a Toby Elliott by any chance
23:04:58 <elliott_> CakeProphet: Or SHOWDOWN TO THE DEATH.
23:05:03 <elliott_> coppro: hi, every Elliott here
23:05:09 <elliott_> all other elliotts are imposters
23:05:36 <Gregorzilla> elliott_: You know that you're the music hall at Purdue, right?
23:05:55 <elliott_> Gregorzilla: It's kind of great, apart from the poultry science.
23:06:06 <CakeProphet> elliott_: it's strange that it's spelled 'historically' even though you're more likely to pronounce it as "historicly"
23:06:11 <Gregorzilla> Yeah ... clearly they need a SECOND poultry science annex building.
23:06:38 <elliott_> coppro: Gregorzilla: MEET UP YOU BASTARDS
23:06:56 <elliott_> I gotta get better at typing slashes
23:07:41 <CakeProphet> learn CakeProphet's mad peck typing kungfu
23:10:50 -!- Patashu has joined.
23:10:52 <coppro> probably a different toby
23:10:56 <coppro> Gregorzilla: guy I know works at mozilla
23:14:51 <CakeProphet> or figure out how to remove pulseaudio from ubuntu and not have anything else break.
23:16:20 <elliott_> http://idyllictux.wordpress.com/2009/04/21/ubuntu-904-jaunty-keeping-the-beast-pulseaudio-at-bay/
23:16:26 <elliott_> the volume control thingamajig will break though
23:21:31 <CakeProphet> well, if that doesn't break my volume control keys, then I'm fine with that. But I suspect it might.
23:23:12 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:26:32 -!- schunt has quit (Quit: leaving).
23:36:23 <CakeProphet> elliott_: hmm, so this blog you linked me keeps mentioning a "hackpact" in which he and bunch of other people wrote a lot of code to do live coding in Haskell... but, I cannot find a link to the source.
23:36:45 <elliott_> well there is http://yaxu.org/software/, http://yaxu.org/tidal/.
23:37:09 <elliott_> those posts look really old though
23:37:31 <CakeProphet> I might try to contact him and see if he has anything new..
23:38:18 <CakeProphet> I enjoy that it works with visual as well as aural media. You can use that to make a color pattern, and then plug that into a spiral renderer to make nifty spiral shapes.
23:43:22 -!- TOGoS has joined.
23:43:42 -!- Vorpal has quit (Ping timeout: 255 seconds).
23:45:34 -!- TOGoS has left.
23:50:43 * pikhq_ wonders how good or bad PulseAudio is these days.
23:51:04 <pikhq_> I mean, at least in 2009 it was the horrible program that broke your audio, but does it work sanely these days?
23:51:45 <pikhq_> Of course, regardless of whether or not it functions at all, a freaking audio server is probably a fucking retarded idea.
23:52:50 <CakeProphet> I'm almost positive he could turn the Pattern data type into a monad.
23:52:51 <pikhq_> Okay, well. If you absolutely must have one, make it like JACK.
23:53:19 <pikhq_> Cause, uh, JACK doesn't suck.
23:53:20 -!- hiato has quit (Ping timeout: 276 seconds).
23:53:32 -!- aloril has quit (Ping timeout: 250 seconds).
23:53:43 -!- CakeProphet has quit (Remote host closed the connection).
23:53:57 -!- yorick has quit (Ping timeout: 258 seconds).
23:54:02 -!- CakeProphet has joined.
23:54:02 -!- CakeProphet has quit (Changing host).
23:54:02 -!- CakeProphet has joined.
23:54:31 -!- hiato has joined.
23:54:43 -!- yorick has joined.
23:55:12 <pikhq_> Probably helps a lot that JACK wants a real-time kernel.
23:59:57 <CakeProphet> but I don't really know if I want to boot it to hard disk. I guess I'll just stick to USB boot if I ever use it.