←2011-04 2011-05 2011-06→ ↑2011 ↑all
2011-05-01
00:00:12 <elliott> erm
00:00:13 <elliott> with ///
00:00:14 <elliott> :)
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:31 <elliott> integer that is
00:10:33 <oerjan> it occured to me it could be linear
00:10:33 <elliott> but there's strings
00:10:40 <elliott> but you somehow can't parse strings into integers
00:10:41 <elliott> but
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:11:05 <elliott> hmm
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:54 <elliott> erm
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:18:56 <elliott> thats a lot of paths
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:21:36 <elliott> oerjan: ew
00:21:47 <elliott> hmm maybe if you had
00:22:03 <elliott> before pointer (in original order), pointer onwards cyclically (in original order)
00:22:04 <elliott> and uh
00:22:06 <elliott> that's it
00:22:07 <elliott> but that's ugly
00:22:10 <elliott> because removing elements
00:22:11 <elliott> is just
00:22:11 <elliott> bleh
00:22:19 <crystal-cola> elliott: !!!!
00:22:24 <elliott> what
00:22:33 <crystal-cola> homotopy
00:22:41 <elliott> sorry i'm topyphobic
00:22:43 <elliott> toffeephobic
00:22:52 <crystal-cola> doesn't it make sense? :/
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:31 <crystal-cola> ;_______________________________________;
00:23:33 <oerjan> elliott: the end here means end of segment duh
00:23:37 <elliott> hmm
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:25:58 <elliott> hmm, I guess I do
00:26:02 <elliott> one where i am currently
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:08 <elliott> oerjan: it was a joke
00:29:19 <elliott> hmm, wow, I think this is actually more elegant in C
00:29:21 <elliott> as disturbing as that is
00:29:25 <elliott> well
00:29:25 <oerjan> *deques
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:11 <elliott> <ais523> and homeless
00:37:14 <elliott> <ais523> and an orphan
00:37:16 <elliott> <ais523> and dead
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:26 <elliott> It runs KDE
00:38:39 <elliott> LCARSpad
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:04 <elliott> [asterisk]"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:41:52 <pikhq> elliott: Yes.
00:41:57 <elliott> right
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:12 <elliott> sure
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:10 <Gregor> elliott: Sure it is.
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:07 <elliott> Yes, that would work.
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:39 <Gregor> s/>/./
00:48:56 <elliott> Gregor: You misspelled SCIENCE.
00:49:05 <Gregor> SCIMAGIC
00:49:14 <Gregor> MAGIENCE
00:49:22 <elliott> SCMIENCE
00:49:54 <elliott> Hmm
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:31 <elliott> It'd feel awful.
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:52:56 <elliott> pikhq: By _brains_
00:53:01 <elliott> We're talking instinctual here.
00:53:19 <oerjan> brains...
00:53:19 <Gregor> I'm inclined to agree with elliott, but I still think it's entirely doable.
00:53:25 <elliott> Oh, surely it is.
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:34 <elliott> pikhq: 0 :P
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:53:59 <Gregor> THAT I disagree with.
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:12 <elliott> pikhq: Indeed, it's zero
00:54:17 <elliott> :D
00:54:20 <pikhq> Erm, definitely non-zero.
00:54:38 <elliott> I was kidding.
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:38 <Gregor> Perhaps.
00:56:40 <elliott> Gregor: What if you just want a permanent emboss effect ;D
00:56:49 <elliott> <Gregor> Yessss
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:19 <elliott> SO HIP
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:00:23 <pikhq> :P
01:00:54 <crystal-cola> you know, I don't know anything about gopher
01:00:58 <elliott> NO
01:01:00 <elliott> XANADU
01:01:08 <elliott> ENFILAAAAAAAADEEEEEEEEEEEEES
01:05:43 <elliott> oerjan: ouch, i just thought about a /// self-interp
01:05:44 <elliott> my mind hurts
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:09:37 <elliott> wat
01:10:50 <oerjan> /// self-interp:
01:13:41 <crystal-cola> I nede to go to bed
01:13:46 <crystal-cola> right now
01:13:52 <crystal-cola> instead of reading
01:14:25 <elliott> crystal-cola: bed?
01:14:27 <elliott> THIS early?
01:14:31 <crystal-cola> yesrs
01:14:32 <elliott> weirdo
01:14:33 <crystal-cola> ugdhhh
01:14:58 <crystal-cola> I think this channel makes me stay up late
01:15:53 <elliott> IT IS POSSIBLE
01:15:59 <oerjan> http://giftrash.com/post/5008479548
01:16:11 <oerjan> (don't watch on a bad stomach)
01:16:57 <elliott> seen :P
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:33 <elliott> that's been done
01:17:38 <elliott> it's pretty sloe though
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:22 <crystal-cola> how hard is it to make a game like minecraft?
01:19:28 <crystal-cola> well that's a bad question
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:41 <elliott> oerjan: indeed
01:20:46 <pikhq> Presuming, of course, that you're not using an utterly sadistic language for the task.
01:20:50 <pikhq> Such as, say, C.
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:21:54 <elliott> crystal-cola wimped out
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:25:57 <elliott> get in -minecraft, you
01:28:03 <Gregor> C: Best language for all tasks.
01:28:12 <elliott> Gregor: Yeaaaaaaaaaaaaaaaahno
01:29:27 <Gregor> ALL
01:29:29 <Gregor> TASKS
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:39:32 <oerjan> excreme programming
01:40:48 -!- BeholdMyGlory has quit (Remote host closed the connection).
01:40:49 <elliott> hmm, my self-bct interp is broken...
01:50:21 <elliott> oerjan: wow gleh
01:50:25 <elliott> this program isn't supposed to stop running
01:50:29 <elliott> what
01:50:30 <elliott> why did i ping oerjan
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:19 <elliott> well it is
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:10 <elliott> so i guess yes
02:05:13 <elliott> because the end matter
02:05:13 <elliott> sa
02:05:14 <elliott> s
02:05:14 <elliott> argh
02:05:39 <oerjan> well then it definitely matters yeah
02:05:46 <elliott> where is my buggg :|
02:06:04 <oerjan> ->
02:06:09 <elliott> oh there it is
02:17:56 -!- lament has quit (Quit: Lost terminal).
02:43:15 <pikhq> Hrm.
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:11:35 <elliott> pikhq: Explain?
03:15:04 <oerjan> explicitly explain exploding explorers
03:16:08 <copumpkin> without expletives
03:16:17 <copumpkin> excluding expletives?
03:16:22 <elliott> excrement
03:16:26 <copumpkin> kind of breaks the exp though
03:16:27 <oerjan> excellent!
03:16:37 <elliott> exciting
03:17:04 <copumpkin> explicitly explain exciting exploding excrement explorers excluding excellent expletives
03:17:20 <copumpkin> please
03:21:59 <elliott> exactly
03:24:21 -!- Wamanuz4 has quit (Ping timeout: 260 seconds).
03:24:53 -!- Wamanuz4 has joined.
03:25:38 <elliott> dear birds outside
03:25:40 <elliott> shut up
03:25:41 <elliott> love elliott
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:07 <elliott> weird
03:45:11 <elliott> how is it not reacting?
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:48:51 <elliott> pikhq: it might use mmap
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.
03:54:21 <pikhq_> Making that moot.
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:15:44 <pikhq_> In conclusion: wut?
04:26:28 <pikhq_> Posted to list.
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:27:19 <micahjohnston> !slashes asdf
05:27:22 <EgoBot> asdf
05:27:39 <micahjohnston> !slashes @so
05:27:40 <EgoBot> @so
05:27:40 <lambdabot> not available
05:27:45 <micahjohnston> !slashes @so !slashes
05:27:46 <EgoBot> @so !slashes
05:27:46 <lambdabot> !slashes not available
05:27:47 <EgoBot> not available
05:27:51 <micahjohnston> :D
05:29:10 <micahjohnston> !slashes @so !slashes /not available/!slashes @so !slashes \/not available\/\//
05:29:11 <EgoBot> @so !slashes
05:29:11 <lambdabot> !slashes not available
05:29:12 <EgoBot> not available
05:31:24 <micahjohnston> !slashes /1/*0//*0/0**/1001
05:31:25 <EgoBot> 0000******************
05:31:37 <micahjohnston> !slashes /1/*0//*0/**/1001
05:31:38 <EgoBot> ******
05:31:58 <micahjohnston> !slashes /1/*0//*0/0**//0//1001
05:31:59 <EgoBot> ******************
05:38:01 <micahjohnston> !slashes /1/0*//*0/0**/1001
05:38:02 <EgoBot> 0000*********
05:38:15 <micahjohnston> !slashes /1/0*//*0/0**//0//1001
05:38:16 <EgoBot> *********
05:38:22 <micahjohnston> ok, that's it, I think
05:38:27 <micahjohnston> !slashes /1/0*//*0/0**//0//1
05:38:28 <EgoBot> *
05:38:30 <micahjohnston> !slashes /1/0*//*0/0**//0//10
05:38:31 <EgoBot> **
05:38:34 <micahjohnston> !slashes /1/0*//*0/0**//0//11
05:38:35 <EgoBot> ***
05:38:38 <micahjohnston> :D
06:00:38 -!- quintopia has quit (Ping timeout: 240 seconds).
06:05:29 <micahjohnston> !slashes /\//\\\//\/\\\/\/\\\\\\\/\/
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.
07:58:03 <CakeProphet> Hello all.
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:24:22 <siracusa> bot chaining! :-D
08:28:14 <crystal-cola> !slashes /1/0@so !slashes \/yes\/no\///0//1
08:28:16 <EgoBot> @so !slashes
08:28:16 <lambdabot> !slashes not available
08:28:16 <EgoBot> not available
08:28:27 <crystal-cola> can you make it output more slashes?
08:28:46 <crystal-cola> !slashes /1/0@so !slashes //0//1\/yes\/no\/
08:28:48 <EgoBot> @so !slashes /yes/no/
08:28:48 <lambdabot> !slashes /yes/no/ not available
08:28:49 <EgoBot> not available
08:29:09 <crystal-cola> !slashes /1/0@so !slashes //0//1\/not\/is\/
08:29:10 <EgoBot> @so !slashes /not/is/
08:29:10 <lambdabot> !slashes /not/is/ not available
08:29:11 <EgoBot> is 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:34:07 <crystal-cola> !slashes /code/\/x\/y/code
08:34:33 <crystal-cola> !slashes /foo/Hello, world!//bar/foo/bar
08:34:34 <EgoBot> Hello, world!
08:34:37 <siracusa> Can you do loops with slahes?
08:34:46 <siracusa> *slashes
08:35:02 <crystal-cola> !slashes /code/code/code
08:35:12 <crystal-cola> !slashes /code/xy/code
08:35:13 <EgoBot> xy
08:35:17 <crystal-cola> !slashes /code/\/x/code
08:35:22 <crystal-cola> !slashes /code/y\/x/code
08:35:24 <EgoBot> y
08:35:41 <crystal-cola> how do I do a slash??
08:36:43 <crystal-cola> !slashes \/
08:36:44 <EgoBot> /
08:36:52 <crystal-cola> !slashes /a/\//a
08:36:58 <crystal-cola> !slashes /a/\\\//a
08:37:00 <EgoBot> /
08:37:21 <crystal-cola> !slashes /b/\\\\\/s/\\\//bs
08:37:22 <EgoBot> \/
08:37:50 <crystal-cola> !slashes /b/\\\\\/s/\\\//s\bsbbbbbs\ssbbbss
08:38:02 <crystal-cola> !slashes /b/\\\\\/s/\\\//sbsbbbbbsssbbbss
08:38:11 <crystal-cola> !slashes /b/\\\\\/s/\\\//sssss
08:38:12 <EgoBot> \/
08:38:16 <crystal-cola> what thell lol
08:38:40 <crystal-cola> !slashes /////
08:38:48 <crystal-cola> !slashes /b/\\\\\/s/\\\//s
08:38:49 <EgoBot> \/
08:39:08 <crystal-cola> how do I output multiple slashes
08:39:16 <crystal-cola> !slashes /b/\\\\\/s/\\\//bsbs
08:39:17 <EgoBot> \/ss
08:39:24 <crystal-cola> O_o
08:39:58 <crystal-cola> !slashes /b/\\\\/s/\\\//bsbs
08:39:59 <EgoBot> s
08:40:54 <crystal-cola> !slashes /b/\\\\/s/\\\//bbbbb
08:40:55 <EgoBot> s
08:41:02 <crystal-cola> this is ridiculous
08:41:15 <siracusa> !slashes /1/0\\\/ //0//111
08:41:16 <EgoBot> / / /
08:41:23 <crystal-cola> !slashes /1/0\\\///0//111
08:41:24 <EgoBot> ///
08:41:31 <crystal-cola> huuuuh
08:41:50 <crystal-cola> why did you have to space them out with 0s?
08:42:18 <siracusa> Not completely sure what I'm doing there :-)
08:42:53 <crystal-cola> !slases /b/\\\\!/s/\\\/!//!//bbss
08:42:58 <crystal-cola> !slashes /b/\\\\!/s/\\\/!//!//bbss
08:42:59 <EgoBot> s!
08:43:04 <crystal-cola> ffffffff
08:43:07 <crystal-cola> !slashes /b/\\\\!/s/\\\/!//!//bbbb
08:43:08 <EgoBot> s!
08:43:11 <crystal-cola> !slashes /b/\\\\!/s/\\\/!//!//ssssss
08:43:12 <EgoBot> s!
08:43:35 <crystal-cola> !slashes /b/\\\\!/s/\\\/!/!//bbsss
08:43:36 <EgoBot> s
08:44:15 <crystal-cola> is it possible to output every string with this language??
08:44:20 <crystal-cola> I think some strings cannot be output
08:44:24 <crystal-cola> !slashes p/b/\\\\!/s/\\\/!/!//
08:44:25 <EgoBot> ps
08:47:28 <crystal-cola> !slashes ///
08:47:34 <crystal-cola> !slashes \/\/\/
08:47:35 <EgoBot> ///
08:47:50 <crystal-cola> !slashes /s/\\\//sss
08:47:51 <EgoBot> ///
08:48:06 <crystal-cola> !slashes /s/\\\//sfoosbarsfoobar
08:48:07 <EgoBot> /foo/bar/foobar
08:48:41 <crystal-cola> !slashes /s/\\\//b/\\\\/sfoosbarsfoobars\ss
08:48:42 <EgoBot> b/
08:48:54 <crystal-cola> !slashes /s/\\\//b/\\\\/xsfoosbarsfoobars\ss
08:48:55 <EgoBot> b/
08:49:00 <crystal-cola> :
08:49:42 <crystal-cola> i dont know how to do it :(((((9
08:50:10 <siracusa> !help slashes
08:50:10 <EgoBot> Sorry, I have no help for slashes!
08:51:08 <crystal-cola> http://esolangs.org/wiki/Slashes
08:51:24 <crystal-cola> !slashes /s/\\\//b/\\\\/sfoosbarsfoobars
08:51:25 <EgoBot> b
08:51:27 <crystal-cola> !slashes /s/\\\//b/\\\\/sfoosbarsfoobar
08:51:28 <EgoBot> b
08:51:37 <crystal-cola> !slashes /s/\\\//b/\\\\/foosbarsfoobar
08:51:38 <EgoBot> b
08:51:50 <crystal-cola> !slashes /s/\\\//b/q/sfoosbarsfoobar
08:51:52 <EgoBot> b
08:51:54 <crystal-cola> !slashes /s/\\\///b/q/sfoosbarsfoobar
08:51:55 <EgoBot> /foo/qar/fooqar
08:52:03 <crystal-cola> oh I just had the wrong syntax
08:52:27 <crystal-cola> !slashes /s/\\\///b/\\\\/s\ssfoosbarsfoobar
08:52:28 <EgoBot> /\
08:52:36 <crystal-cola> !slashes /s/\\\///b/\\\\/s\s
08:52:37 <EgoBot> /\
08:52:51 <crystal-cola> I guess you can't quote s
08:53:10 <crystal-cola> !slashes /s/\\\///b/\\\\/shsbbbsss
08:53:11 <EgoBot> /h/\\\///
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:54:07 <EgoBot> h\k\\
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
08:57:02 <EgoBot> tsb
08:57:06 <crystal-cola> fwwrauufrdgaroufgdnupf
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
10:51:19 <ais523> microcode > asm
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:13:00 <cheater2> arguably haskell > vhdl then
12:19:44 <crystal-cola> arguably < > > then
12:20:33 <ais523> probably (<) > (>) would be a bit clearer
12:21:22 <crystal-cola> arguably (<) > (>) > < > >
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:16 <cheater2> ais523, wow, enigma is fun!
13:01:28 <ais523> good to hear it
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:03 <cheater2> what ever that is
13:04:43 <cheater2> the screen says v1.01
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:11 <cheater2> why have they?
13:05:33 <ais523> because the old level file format was awkward and rather hard to write clever things in
13:05:42 <cheater2> ok.
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:08 <cheater2> have you ever done that, ais?
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:34 <cheater2> '/' failed block non-split
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:03 <cheater2> then i'll try to recover 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:16:57 <cheater2> what has Sgeo done?
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:21 <cheater2> :o
13:21:33 <cheater2> i don't know awk :-\
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:23:00 <ais523> Deewiant: how GNUish
13:24:16 -!- wareya_ has joined.
13:25:57 <cheater2> ooo
13:25:59 <cheater2> thanks!
13:26:46 -!- wareya has quit (Read error: Operation timed out).
13:27:57 <cheater2> nice - worked great
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:28:44 <cheater2> perfect.
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:32:57 <cheater2> ah, good to know, thanks
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:33:49 <cheater2> oh, nice
13:33:51 <cheater2> let me try that
13:34:31 <Deewiant> IIRC that option is very much not recommended by the manual
13:34:47 <cheater2> yeah
13:34:48 <Deewiant> But it's the only way of doing it that I remember by heart
13:34:51 <cheater2> the more reason to use it
13:34:56 <cheater2> hahah
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:37:37 <cheater2> it's 13.9736 now!
13:40:36 <cheater2> man watch is ridiculous underdocumentation.
14:38:40 <cheater2> i am flabbergast
14:38:44 <cheater2> it's up to ~21.5
14:39:12 <cheater2> even though the error size, as reported by ddrescue, is monotonically decaying
15:09:59 <Deewiant> What's up
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 <Phantom_Hoover> HELLO GUYS
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:08 <EgoBot> ***
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:41:35 <cheater2> that was pretty cool
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
15:42:00 <EgoBot> **********
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
16:59:44 <elliott> untrue
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:17 <elliott> things
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:12 <Sgeo_> :/
17:06:13 <cheater2> did it not show up in bios?
17:06:23 -!- crystal-cola has joined.
17:06:30 <Sgeo_> But if it's not any help: It's now months
17:06:31 <Sgeo_> :(:(
17:06:37 <cheater2> it doesn't change much
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:20 <Sgeo_> I don't remember
17:07:22 <cheater2> or what was the issue?
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:45 <elliott> Sgeo_: IT IS TOO LATE
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:40 <Sgeo_> No, I think
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:13 <elliott> myndzi: yeah except
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 <myndzi> lol.
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 <cheater2> without a lot of problems
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:10:59 <myndzi> jackass :|
17:11:07 <elliott> he was secretly a robot
17:11:10 <Sgeo_> In the meantime, this laptop has been dropped several times with no issues
17:11:10 <elliott> plotting against you :(
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 <myndzi> s
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:53 <cheater2> yea toughbooks are cool
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:06 <myndzi> anyway
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:47 <elliott> OR
17:13:48 <myndzi> except he doesn't think the new ones are good
17:13:48 <elliott> broken
17:14:24 <elliott> yep i think broken
17:15:12 <elliott> yah ok this program is only meant to last 43074 steps
17:15:28 <elliott> oh wait
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:16 <elliott> into a monochrome bitmap
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:24 <elliott> like
17:17:32 <elliott> there's that text to pbm thing...
17:21:12 <crystal-cola> annoying
17:21:50 <cheater2> Sgeo_, if you still want to recover that stuff, i could walk you through it
17:21:51 <elliott> pbmtext: object too large
17:21:52 <elliott> oh come on
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:30 <cheater2> gotcha
17:22:32 <elliott> lol it literally just renders the text
17:22:35 <cheater2> how big is that hdd?
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:36:25 <elliott> it's that C thing
17:36:27 <elliott> fuck that
17:36:44 <elliott> maybe PPM or something
17:37:04 <elliott> ok PPM looks kind of easy
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:30 <elliott> hello oerjan joaeran
19:29:39 <oerjan> evening
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:40 <oerjan> *time
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:32:52 <elliott> right
19:33:06 <elliott> i think if you rendered it in a sort of DNAy spiral way it might look pretty?
19:33:29 <oerjan> mayhaps
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:21 <crystal-cola> other than x = 0
19:38:29 <crystal-cola> I mean a vector of integers or rationals x
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:10 <crystal-cola> any idea where to get the code?
19:41:50 <cheater2> lol, um
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:43:57 <crystal-cola> mabe
19:44:02 <crystal-cola> I need to solve this first though
19:44:31 <cheater2> why do you need to solve it
19:44:43 <cheater2> is it for a 3d computer graphics problem?
19:44:53 <crystal-cola> no
19:44:58 <cheater2> what is the usage?
19:45:02 <elliott> no what
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:24 <cheater2> ok well
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:46:47 <cheater2> and transform by A
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:19 <crystal-cola> btw the matrix is rectangular
19:47:20 <cheater2> i would really like you to caress my nuts
19:47:27 <crystal-cola> maybe we can trade them
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:34 <cheater2> but still
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:36 <oerjan> um why not...
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:12 <crystal-cola> god dammit I fucking hate
19:51:16 <oerjan> ok
19:51:19 <crystal-cola> this blogger posted LHS
19:51:29 <crystal-cola> and it's importing code in his other posts
19:51:31 <cheater2> also i think it might be able to, oerjan
19:51:34 <crystal-cola> just link to a .hs file :/
19:51:43 -!- Kouta_ has quit (Quit: Leaving).
19:51:49 <elliott> import http://foo.blogspot.com/...
19:51:50 <cheater2> lol @ lhs
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:20 <oerjan> or wait no
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:52:32 <oerjan> heh
19:53:30 <cheater2> just multiply all entries so that everything will be integers
19:53:33 <cheater2> and keep a multiplicand
19:53:34 <cheater2> :D
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:58:56 <oerjan> even so
19:59:07 <cheater2> nah
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:45 <cheater2> set difference.
19:59:57 <oerjan> in that case you're _really_ wrong
20:00:09 <cheater2> why is that
20:00:23 <cheater2> oh right, haha
20:00:51 <cheater2> you'd need to A^-1 that stuff, wouldn't you
20:01:05 <oerjan> something like that
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:30 <cheater2> hm
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:03:46 <cheater2> you're right, i'm so wrong :D
20:04:14 <cheater2> wow, this is so bad
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:12:45 <crystal-cola> I don't know what rows or colums are
20:12:56 <crystal-cola> im doing 10x10 gauss elimination by hand
20:13:08 <oerjan> erm rows are horizontal and columns are vertical...
20:13:17 <crystal-cola> is that it?
20:13:21 <oerjan> yes
20:13:30 <elliott> wait wait wait i feel a witty coming on
20:13:33 <elliott> your MOM is horizontal
20:13:34 <elliott> ok done
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:33 <elliott> hmm wait
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:50 <elliott> ooh so tempting
20:17:52 <elliott> what was it
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:09 <cheater2> lol
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:20 <Vorpal> elliott, that
20:18:28 <Vorpal> wtf
20:18:28 <crystal-cola> that's not evangelic..
20:18:29 <elliott> --Larry Wall
20:18:31 <crystal-cola> that's someone just trolling
20:18:39 <elliott> crystal-cola: stop being intolerant to larry wall
20:18:45 <Vorpal> crystal-cola, evangelism is trolling!
20:18:49 <Vorpal> so yes
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:28 <elliott> I do taht a lto.
20:19:41 <Vorpal> typo day?
20:19:48 <elliott> you mispeled tpyo and dya
20:19:49 <Vorpal> sorry I meant tyop dya
20:20:01 <Vorpal> elliott, tyop not tpyo
20:20:03 <elliott> jgeus ist nto hdar
20:20:08 <elliott> gte ti rhgit
20:20:13 <cheater2> http://www.wall.org/~larry/
20:20:19 <Vorpal> elliott, jgeus?
20:20:28 <elliott> i'm allowed to typo a typo
20:20:33 <crystal-cola> what the helll
20:20:49 <elliott> Vorpal: stop discriminatingery
20:21:06 <Vorpal> elliott, I meant: what does "jgeus" mean?
20:21:14 <elliott> It's a typo of jegus :P
20:21:53 <Vorpal> oh
20:21:58 <Vorpal> *looks up that word*
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:15 <cheater2> how. amazing.
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:22:32 <elliott> at the most
20:22:35 <Vorpal> elliott, nooo
20:22:36 <oerjan> u jelus?
20:22:40 <Vorpal> let me Grep! Logs!
20:23:54 <elliott> hmm where is it...
20:24:05 <elliott> oh it was gog
20:24:38 <oerjan> BUT WHO WAS GOG?
20:25:24 <elliott> its then not but
20:25:38 <Vorpal> elliott, jegus was never used before 2011-04-30 in this channel as far as clog knows
20:25:41 <Vorpal> where is clog btw
20:25:48 <elliott> down like always
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:58 <Vorpal> (2 rows)
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:18 <Vorpal> afaik
20:26:19 <elliott> or just use
20:26:19 <elliott> grep
20:26:24 <Vorpal> elliott, takes longer
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:27:41 <Vorpal> sata 2?
20:28:03 <oerjan> lots of wind here today
20:28:29 <Vorpal> oerjan, I just inserted n for you
20:29:18 <oerjan> that's what she said
20:29:54 <Vorpal> -_-
20:30:44 <crystal-cola> >X(
20:31:02 <crystal-cola> this doesn't make any sense
20:32:21 <Vorpal> night →
20:38:51 <crystal-cola> this isn't working at all
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:04 <oerjan> you're welcome
20:50:54 <elliott> can i have exclamation mark
20:51:05 <oerjan> never !
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:52:33 <oerjan> yes
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:54 <elliott> <oerjan> yes
20:54:56 <elliott> he meant IO-complete style
20:55:09 <oerjan> um /// has no input
20:55:31 <oerjan> but still yes in my opinion
20:55:55 <elliott> O-complete :)
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:16 <elliott> siracusa: it was more
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:57:33 <elliott> siracusa: yep
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:41 <elliott> cool
20:58:44 <oerjan> and the mention itself won't be affected
20:58:52 <elliott> !slashes /CH/poop/CH C\H
20:58:53 <EgoBot> poop CH
20:59:11 <siracusa> Hah, nice
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:01:53 <oerjan> )
21:02:53 <crystal-cola> how to do character substituion
21:03:03 <crystal-cola> like say you want a->x, b->y
21:03:09 <crystal-cola> how to turn abba into abbaxyyx
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:03:52 <elliott> oerjan: heh, cool
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:21 <crystal-cola> so you actualy can't do it?
21:06:28 <crystal-cola> like you could turn uvvu into abbaxyyx
21:06:32 <crystal-cola> but not abba into abbaxyyx?
21:06:50 <crystal-cola> oh nevermind that's the same thing, just the second one takes two steps.
21:06:52 <crystal-cola> I see it now
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:29 <oerjan> oops
21:08:32 <oerjan> !slashes /ba/Zxyyx//Z/b\a/abba
21:08:33 <EgoBot> abbaxyyx
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:16:36 <crystal-cola> BLEGH!!!!!!!!!!!!!
21:16:56 <elliott> crystal-cola: what
21:17:06 <crystal-cola> I am frustrated
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:17:49 <crystal-cola> what a hassle
21:18:04 <siracusa> Solve what?
21:18:15 <crystal-cola> Ax=0
21:18:27 <crystal-cola> looks easy :/
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:25:11 <siracusa> yes
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:10 <elliott> SimonRC: :D
21:34:15 <elliott> SimonRC: where have you been :P
21:34:29 <SimonRC> MSPA
21:34:41 <SimonRC> MS paint adventures
21:34:47 <SimonRC> (not actually drawn in MS paint)
21:34:50 <elliott> lol it's eating up all of us
21:34:58 <SimonRC> what a co-incidence
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:35:51 <elliott> there, topic fixed
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:36:30 <elliott> arf arf arf
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:37:43 <SimonRC> (actually me)
21:37:49 <elliott> -- Mark Twain
21:37:55 <quintopia> :D
21:38:02 <quintopia> i must say
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:12 <quintopia> english is weird like that
21:42:21 <SimonRC> "fol"?
21:42:22 <oerjan> Any sufficiently-good quotation is indistinguishable from fame
21:42:49 <elliott> liberal-arts fol
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:08 <crystal-cola> 83% of quotations are made up on the spot
21:44:20 <crystal-cola> "83% of quotations are made up on the spot" - SimonRC
21:44:50 <elliott> -- Oscar Wilde
21:44:53 <quintopia> "100% of quotations have been made up by someone" - quintopia
21:45:07 <SimonRC> (to 2 decimal places)
21:45:55 <quintopia> 96% of fictional matter isn't real
21:46:08 <quintopia> (and fiction is far stranger than truth)
21:46:16 <elliott> --SimonRC
21:46:39 <SimonRC> That's what *he* said.
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:47:31 <elliott> the mle fol
21:48:05 <SimonRC> what is this "fol" thing?
21:48:35 <elliott> it's a typo you made :D
21:48:38 <elliott> no wait
21:48:40 <elliott> quintopia made it
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:49:57 <crystal-cola> WBFULGFWUNBOUWFNA
21:50:00 -!- augur has joined.
21:50:17 <SimonRC> crystal-cola: ??
21:50:33 <crystal-cola> I think "radicals" are stupid
21:50:40 <crystal-cola> square roots and cube roots and stuff
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:50:54 <elliott> SimonRC: FROWN OUT LOUD
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:04 <elliott> well you're a fol oerjan
21:52:05 <elliott> you're a fol
21:52:23 <oerjan> yes i keep quantifying things
21:52:36 <SimonRC> as any fule kno
21:52:44 <SimonRC> (-- Nigel Molesworth)
21:52:58 <crystal-cola> http://www.universalrejection.org/
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:16 <elliott> i want a print edition
21:53:46 <ais523> elliott: it'll be delayed until they have enough accepted submissions to make a full issue
21:53:53 <SimonRC> I dunno
21:53:54 <elliott> ais523: they've released issues, see the site
21:54:01 <ais523> are they empty?
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:09 * SimonRC looks
21:54:51 <oerjan> "You may claim to have submitted to the most prestigious journal (judged by acceptance rate)."
21:54:54 <oerjan> YAY
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:33 <Sgeo_> Oh, it's "pune"
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:23:31 <Sgeo_> ...
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:24 <ais523> glogbot: great topic!
22:28:34 <ais523> *Gregor:
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:29:54 <oerjan> hm or...
22:30:17 <oerjan> hm yes.
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:32:55 <oerjan> ah.
22:33:43 <crystal-cola> Illogical
22:34:54 <Gregor> * Ping reply from ais523: 1304238071.85 second(s)
22:34:57 <Gregor> Guh?
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:13 <SimonRC> well yes
22:36:23 <oerjan> AAAAAAAAAAAAAAAAAAAAA
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:06 <Gregor> I did the math :P
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:37:53 <SimonRC> *Scandanavia
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:54 <oerjan> i know
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:13 <Gregor> Yet you ponged me :P
22:39:18 <ais523> and often, if you pong them with a timestamp, they assume they sent the matching ping
22:39:52 <zzo38> <CTCP>PING<CTCP>
22:40:20 <crystal-cola> h i z z 0
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:49 <oerjan> mine neither
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:43 <siracusa> ais523: Nope
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:05 <ais523> oerjan: indeed
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:05:13 <oerjan> well, planetship
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:25 <oerjan> imperative, surely
23:12:44 <oerjan> macro
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:18 <oerjan> i said macro
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:15:45 <oerjan> hm
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:57:38 <Sgeo_> Hmm
23:58:30 <Sgeo_> +0e angers at h5s Fn 2ey.
23:58:51 <Sgeo_> Be back soon
2011-05-02
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:13 <Gregor> Norons and Cubes.
00:06:23 -!- elliott has joined.
00:07:14 <Gregor> Or maybe "noroms"
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:14:24 <elliott> ur a morom
00:14:26 <elliott> mormon
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:12:48 <pizearke> yo
05:14:39 -!- TeruFSX has quit (Read error: Operation timed out).
05:25:05 -!- TeruFSX has joined.
05:29:52 <zzo38> oy
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.
06:46:19 <zzo38> Is it?
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:10:38 <Sgeo> Hellohello?
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:24 <pizearke> I'm awake.
09:47:26 <pizearke> What's up?
09:47:38 <pizearke> (I mean, I probably can't help you, but I might as well try, right?)
09:49:21 <pizearke> sgeo
09:49:21 -!- ais523 has joined.
09:49:51 <Sgeo> I already solved my problem
09:49:55 <pizearke> Oh. Derp.
09:50:01 <Sgeo> ty anyway
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:14 <pizearke> oh, ok.
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:52:51 <pizearke> Oh, I see what you're doing.
09:52:52 <pizearke> NEat.
09:52:57 <pizearke> bah. *e
09:55:52 <Sgeo> I should say 90 degrees somewhere in there, but me
09:55:53 <Sgeo> meh
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
11:53:52 <quintopia> WHAT'S THE DIFFERENCE
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:17:14 <lifthrasiir> s/\ba\b//
12:18:41 <quintopia> you left an extra space in there
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:13 <lifthrasiir> use \(...\) instead of (...).
12:22:37 <lifthrasiir> uhm, i was sleepy and missed sisacusa's answer. well, basically similar.
12:22:46 <quintopia> aha
12:22:51 <quintopia> making it extended worked
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:26:17 <crystal-cola> is that like a lattice or something?
12:36:30 <quintopia> it's a projection
12:36:55 <quintopia> i mean
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:26:50 <crystal-cola> im just wondering about integers
13:27:18 <crystal-cola> I know that matrices represent linear transforms but there are probably other interpretations too (?)
13:38:02 <crystal-cola> > gcd 111111111 11111
13:38:03 <lambdabot> 1
13:38:06 <crystal-cola> > gcd 111111111 111111111111111
13:38:07 <lambdabot> 111
13:38:09 <crystal-cola> > gcd 1111111111 111111111111111
13:38:10 <lambdabot> 11111
13:38:16 <Gregor> I misread "gcd" there as "god"
13:38:21 <Gregor> I was wondering what the god function was.
13:38:34 <crystal-cola> @let god = gcd
13:38:35 <lambdabot> Defined.
13:38:48 <crystal-cola> > foldr god 1 [2,4..100]
13:38:50 <lambdabot> 1
13:38:59 <crystal-cola> O_drugnb
13:38:59 <Gregor> All this time, and god was just the greatest common divisor.
13:39:03 <crystal-cola> > foldr god 0 [2,4..100]
13:39:05 <lambdabot> 2
13:41:47 <crystal-cola> I don't know why gcd 111111111...11 111111..111 = 111...1111
13:43:16 -!- BeholdMyGlory has joined.
13:44:01 <crystal-cola> > 1000100010001 * 1111
13:44:02 <lambdabot> 1111111111111111
13:44:42 <copumpkin> > 111111111^2
13:44:43 <lambdabot> 12345678987654321
13:45:08 <copumpkin> http://en.wikipedia.org/wiki/Repunit
13:46:27 <crystal-cola> > map length $ group .sort . show $ 11111111111111111111111111111111111111111111111111111111^2
13:46:29 <lambdabot> [12,8,13,12,12,12,12,12,6,12]
13:46:36 <crystal-cola> > map length $ group .sort . show $ 111111111111111111111111111111111111111111111111111111111111111111111111111111111111^2
13:46:38 <lambdabot> [18,11,20,19,18,18,18,18,9,18]
13:46:45 <crystal-cola> > map length $ group .sort . show $ 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111^2
13:46:47 <lambdabot> [28,16,30,30,30,30,30,30,16,29]
13:47:45 <Vorpal> <copumpkin> > 111111111^2 <lambdabot> 12345678987654321 <-- huh, neat
13:48:25 <crystal-cola> it's
13:48:27 <crystal-cola> 111111111
13:48:32 <crystal-cola> = 1111111110
13:48:33 <crystal-cola> oops
13:48:35 <crystal-cola> tht should be a plus
13:48:56 <Vorpal> crystal-cola, which one should be a plus?
13:49:04 <crystal-cola> 11111
13:49:10 <crystal-cola> + 111110
13:49:13 <crystal-cola> + 1111100
13:49:13 <Vorpal> ah
13:49:29 <Vorpal> right
13:52:15 <crystal-cola> Is there any nice proof
13:52:31 <crystal-cola> gcd 111..111 111..111 = 111..111?
13:54:38 <Vorpal> crystal-cola, wait is that not the same as gcd x x = x ?
13:54:53 <crystal-cola> the ... are different
13:55:01 <Vorpal> crystal-cola, oh okay
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:56:47 <crystal-cola> yes it's the same in all bases
13:57:14 <Vorpal> hm. There is probably a reason but I have no clue what it could be
13:57:56 <crystal-cola> > gcd 999999999999999 99999999999
13:57:57 <lambdabot> 9
13:57:58 <crystal-cola> > gcd 999999999999999 999999
13:57:59 <lambdabot> 999
13:58:18 <crystal-cola> > gcd 777777 777
13:58:19 <lambdabot> 777
13:58:21 <crystal-cola> > gcd 77777777777777 777777
13:58:22 <lambdabot> 77
13:58:23 <Vorpal> hm
13:58:29 <crystal-cola> > gcd 333333333 333333333333333333333333
13:58:30 <lambdabot> 333
13:58:44 <Vorpal> I'd really like to know why
13:58:50 <crystal-cola> > god 666666666666 666666
13:58:53 <Vorpal> > gcd 5555555555555555 555555555555555555
13:58:53 <lambdabot> 666666
13:58:53 <lambdabot> 55
13:58:59 <Vorpal> > gcd 5555555555555555 555555555555555555555555555555555555555555
13:58:59 <lambdabot> 55
13:59:01 <Vorpal> hm
13:59:10 <Vorpal> > gcd 5555555555555555 5555555555555555555555555555555555555555555
13:59:11 <lambdabot> 5
13:59:17 <Vorpal> right
13:59:26 <crystal-cola> > gcd 1313131313131313 1313131313
13:59:27 <lambdabot> 13
13:59:29 <crystal-cola> > gcd 1313131313131313 1313131313131313
13:59:31 <lambdabot> 1313131313131313
13:59:44 <Vorpal> > gcd 13131313131313131 13131313131313131
13:59:45 <lambdabot> 13131313131313131
13:59:47 <Vorpal> aha
13:59:50 <crystal-cola> > gcd 13371337133713371337133713371337 133713371337133713371337133713371337
13:59:51 <lambdabot> 1337
14:00:03 <Vorpal> > gcd 12341234 1234123412341234
14:00:04 <lambdabot> 12341234
14:00:18 <Vorpal> crystal-cola, there better be a good reason for this!
14:00:36 <crystal-cola> it can't be a coincidence :P
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:28 <crystal-cola> that would eb weird
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:17 <crystal-cola> wait
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:12:39 <crystal-cola> 10..010..010..01 = 11111 in base 1000!
14:12:41 <quintopia> rather
14:12:44 <quintopia> that they are coprime
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:48:06 <Gregor> (Also Haskell, etc)
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:12:25 <elliott> so i hear obama died
16:13:05 <crystal-cola> yes the world is free of islam now
16:13:22 <elliott> you misspelled muslin
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:07 <crystal-cola> elliott: I asked in the otehr channel
16:14:13 <crystal-cola> Will the death of Osama bin laden lead to any new insights into the Riemann hypothesis?
16:14:13 <elliott> what other channel
16:14:21 <elliott> absolutely
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:09:32 <Gregor> This I like.
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:00:58 <elliott> ais523: haha
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:12 <elliott> That is, both
18:01:13 <elliott> do abc
18:01:16 <elliott> def
18:01:16 <elliott> and
18:01:18 <elliott> ... = do
18:01:20 <elliott> abc
18:01:22 <elliott> def
18:01:24 <elliott> are valid block styles.
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:02:53 <elliott> Ugh, I got throttled.
18:02:56 <elliott> I hate you freenode.
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:01 <elliott> ais523: hahaha
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:09 <elliott> X-D
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:07 <elliott> Meowsus
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 <Yahweasel> D-8
18:10:51 <elliott> "[...] a Bible fanfic - FanFiction.Net"
18:10:56 <elliott> Also known as the Book of Mormon.
18:11:03 <Yahweasel> X-D
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:13:28 <Yahweasel> (Amen)
18:14:40 <elliott> Hay guiyz, bf joust
18:14:47 <Yahweasel> I nose, rite?
18:14:54 <Yahweasel> I keep wanting to catch up, but haven't had the time.
18:15:05 <elliott> slowpoke still reigns
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:02 <Yahweasel> elliott: You have to.
18:16:10 <elliott> I don't wanna ;_;
18:16:11 <Yahweasel> I never was going to, btw.
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:16:44 <elliott> Thanks bro
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:36 <elliott> Yahweasel: Excellent
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:17:52 <elliott> NO DEADLINE BITCHES
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:19:59 <elliott> Brilliant isn't it
18:20:01 <elliott> they can even nest
18:20:05 <ais523> what I really want is (?number) from Perl
18:20:15 <elliott> to do what?
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:39 <elliott> cheating
18:20:40 <elliott> :D
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:20:55 <elliott> how
18:21:00 <ais523> by putting it inside itself
18:21:05 <elliott> wouldn't it expand to an infinite string, conceptually?
18:21:08 <ais523> as in, (a(?1)?b)
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:45 <elliott> ugly
18:21:53 <elliott> I'd be ok with something like
18:21:54 <elliott> (code)=name
18:21:56 <elliott> and then
18:22:02 <elliott> (name)[at sign]
18:22:03 <elliott> or something
18:22:08 <elliott> for efficiently-interpreted macros
18:22:10 <elliott> I mean
18:22:11 <elliott> it's cheating
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:31 <elliott> seen in logs
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:53 <elliott> define laziness
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:12 <elliott> howso
18:30:20 -!- Slereah has joined.
18:30:28 <ais523> well, you can just change all whiles into nested ifs
18:30:41 <elliott> well, right
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:09 <ais523> but who cares
18:31:18 <elliott> not /that/ large
18:31:44 <ais523> it gets larger by a factor of about 2 for every if used
18:31:52 <elliott> hmm
18:31:55 <ais523> and so it goes exponential, and could easily get to 2^128 or even 2^1000
18:32:01 <elliott> fair enough
18:32:08 <elliott> if only we had the bits
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:00 <elliott> f((T)[asterisk]x)
18:34:03 <elliott> T [asterisk] x;
18:34:05 <Yahweasel> Oh, of course.
18:34:10 <elliott> etc.
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:24 <elliott> Because of shadowing.
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:34:55 <elliott> --incoherent commenter
18:35:36 <Yahweasel> Yay for imbeciles.
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:02 <elliott> Is it?
18:36:03 <elliott> Yes it is.
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:37 <elliott> Sunnil Gupta Says:
18:36:38 <elliott> May 2nd, 2011 at 12:01
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> typedef char AA;
18:36:59 <Yahweasel> void foo()
18:36:59 <Yahweasel> {
18:36:59 <Yahweasel> int aa = sizeof(AA), AA, bb = sizeof(AA);
18:36:59 <Yahweasel> }
18:37:00 <Yahweasel> LAAAAAAAAAAWL
18:37:05 <Yahweasel> That is delightfully evil.
18:37:14 <elliott> It's brillant.
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:08 <Yahweasel> Yeah, that's true >_>
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:43 <elliott> But that's horrible.
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:07 <crystal-cola> IVE code
18:41:09 <elliott> T [asterisk] x, y
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:33 <Yahweasel> Hyuk.
18:41:39 <Yahweasel> typedef: Worst ever?
18:41:46 <elliott> BEST
18:41:56 <elliott> typedef int A;
18:41:56 <elliott> void func()
18:41:56 <elliott> {
18:41:56 <elliott> A A;
18:41:56 <elliott> }
18:41:57 <elliott> Bahahahaha why is that even legal
18:41:57 <Deewiant> Comma: worst ever?
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:43 <elliott> Firstly, gross.
18:42:46 <elliott> Secondly, f((T)[asterisk]x)
18:43:01 <elliott> Thirdl
18:43:02 <elliott> y
18:43:04 <elliott> <Yahweasel> typedef char AA;
18:43:05 <elliott> <Yahweasel> void foo()
18:43:05 <elliott> <Yahweasel> {
18:43:05 <elliott> <Yahweasel> int aa = sizeof(AA), AA, bb = sizeof(AA);
18:43:05 <elliott> <Yahweasel> }
18:43:31 <Deewiant> Disallow shadowing :-)
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:30 <Yahweasel> GO GO GO.
18:44:35 <Yahweasel> (PS: Screw C++)
18:44:35 <elliott> Yahweasel: C
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:44:55 <Yahweasel> GO GO GO.
18:44:57 <Yahweasel> (PS: Screw C++)
18:45:21 <elliott> Yahweasel: That one I mentioned plus HeyHandleC/Python/Haskell declarations.
18:45:43 <Yahweasel> elliott: u r so helpful thx 8-D
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:25 <Vorpal> wtf
18:46:28 <elliott> Vorpal: Yep.
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:48 <Vorpal> or what
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:04 <Vorpal> elliott, *augh*
18:47:05 <elliott> Or whatever.
18:47:16 <elliott> So you get all context-free languages without that.
18:47:22 <Vorpal> elliott, so...
18:47:26 <Vorpal> A A; is valid there
18:47:28 <elliott> Vorpal: Again,
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> {
18:47:31 <elliott> <elliott> <Yahweasel> int aa = sizeof(AA), AA, bb = sizeof(AA);
18:47:31 <elliott> <elliott> <Yahweasel> }
18:47:31 <Vorpal> is not?
18:47:35 <Vorpal> elliott, ^
18:47:37 <Vorpal> see above
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:43 <elliott> Maybe not though.
18:47:44 <elliott> Dunno.
18:47:45 <Vorpal> ah
18:47:46 <elliott> I repeat,
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:47:54 <Vorpal> ah
18:47:55 <elliott> bb == sizeof(int).
18:47:58 <Vorpal> augh
18:47:59 <elliott> But aa == sizeof(char).
18:48:16 <elliott> Uh, also known as one :P
18:48:18 <Vorpal> that is quite crazy
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:49 <Vorpal> if I don't forget it
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:49:02 <Vorpal> :D
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:06 <elliott> WRONG CHANNEL BRO
18:50:11 <Vorpal> elliott, you weren't in there
18:56:02 <Yahweasel> ais523: Maaaan, slowpoke looks SO SIMILAR to FFSPG.
18:56:04 <Yahweasel> *sues*
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:42 <elliott> (a)-(b)
18:58:43 <ais523> and I didn't realise while making it
18:58:45 <elliott> That could be a typecast.
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:17 <ais523> that's evil
18:59:29 <elliott> ais523: Yes, we've already covered that, this is just making it even worse ;P
18:59:30 <elliott> :P
18:59:33 <elliott> Stupid keyboard.
18:59:54 <ais523> it's like return (a, b) in Perl
18:59:57 <ais523> we were both shocked by that one
19:00:06 <elliott> hmm, what does that do?
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:01 <elliott> ais523: haha, wow
19:02:11 <elliott> ais523: is that the trick that one package uses to tell you how you're being called?
19:02:17 <elliott> or something like it
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:02:58 <elliott> aww
19:03:17 <Yahweasel> I'm fairly certain that Perl literally cannot be parsed.
19:03:26 <Yahweasel> Even perl doesn't parse Perl.
19:03:37 <Yahweasel> It just runs around and screams then barfs out some data.
19:03:45 <elliott> X-D
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:11:59 <elliott> hmm, I wonder what it is?
19:12:03 <elliott> actual post title: Fixed-Point Arithmetic
19:12:07 <elliott> clap clap clap
19:13:14 <olsner> yhbt, I guess
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:31 <olsner> joered?
19:34:34 <elliott> yes
19:34:48 <elliott> so hey I think self-BCT in Thue is easy
19:34:50 <olsner> is that a verb?
19:35:12 <elliott> yes
19:35:18 <olsner> what does it mean?
19:35:21 <elliott> joering
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:38:44 <olsner> congratulations
19:39:03 <elliott> tahnks oeslern
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:38 <elliott> oerjan: ok mr computer :|
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:04 <oerjan> *\\\/
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:44:14 <oerjan> thus the "almost"
19:45:50 <elliott> http://sprunge.us/ZLVX
19:45:53 <elliott> I think this is all of it?
19:45:55 <elliott> no output, mind
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:47:48 <elliott> second block handles one
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:12 <elliott> untested, mind you
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:47 <elliott> heh, cool
19:48:53 <elliott> well self-BCT is arguably a turing machine
19:48:57 <elliott> actually
19:49:06 <elliott> BCT is basically a turing machine specification language, obviously
19:49:14 <elliott> and self-BCT is ... yeah
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:49:48 <elliott> nope :)
19:50:05 <elliott> gah the thue js interp is down
19:50:23 <elliott> i might have to be unlazy
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:51:07 <oerjan> elliott: agreed
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:52:52 <elliott> olsner: :D
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:27 <oerjan> oh right
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:55:44 <elliott> olsner: :D
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:46 <elliott> olsner: lol
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:07 <elliott> as-is
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:27 <oerjan> yeah
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:40 <elliott> not hard
20:03:43 <olsner> instruction-level parallelism :)
20:03:58 <oerjan> heh
20:04:29 <olsner> or maybe elliott is talking about multiself-bct
20:04:36 <elliott> wat
20:04:40 <oerjan> i was assuming he was
20:04:47 <elliott> define multiself
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:10 <elliott> right, yes
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:21 <elliott> oh
20:06:22 <elliott> well that's fun :)
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:40 <cpp_programmer> Hey :)
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:43 <crystal-cola> CPP programmer??
20:11:49 <monqy> one time I tried programming in the c preprocessor. it was nightmarish.
20:12:02 <oerjan> child porn processing
20:12:04 <elliott> monqy: you misspelled fun
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:26 <crystal-cola> only when put into a wwhile loop
20:12:29 <elliott> crystal-cola: wrong
20:12:32 <crystal-cola> ??
20:12:34 <elliott> crystal-cola: there's a full functional language implemented in cpp
20:12:43 <elliott> see chaos-pp and order-pp
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:13:44 <crystal-cola> is that C++ templates?
20:13:47 <elliott> crystal-cola: no
20:13:50 <elliott> it's the c preprocessor
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:15 <elliott> It _is_
20:14:17 <elliott> You are incorrect
20:14:25 <crystal-cola> no
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:05 <elliott> oerjan: oh, ugh
20:15:10 <crystal-cola> "you are incorrect!
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:34 <elliott> there's the fibonacci
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:17:40 <elliott> yeah :D
20:17:48 <cpp_programmer> Lmao!
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:10 <crystal-cola> because I caouldn't google chaos-pp
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:16 <crystal-cola> http://chaos-pp.sourceforge.net/
20:20:19 <elliott> that's a fourohfour
20:20:20 <elliott> the fisrt link
20:20:20 <crystal-cola> blank
20:20:24 <crystal-cola> exactly
20:20:28 <monqy> what
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:41 <crystal-cola> no files
20:20:44 <elliott> REPOSITORY
20:20:47 <crystal-cola> This project has no files.
20:20:49 <elliott> REPOSITORY
20:20:55 <monqy> http://chaos-pp.cvs.sourceforge.net/chaos-pp/
20:21:11 <monqy> hello these are files??
20:21:11 <crystal-cola> What is the definition of the CPP?
20:21:17 <elliott> crystal-cola: C Preprocessor.
20:21:20 <elliott> you know, the stuff with hashes.
20:21:22 <crystal-cola> monqy: nice find
20:21:24 -!- Mannerisky has quit (Ping timeout: 260 seconds).
20:21:30 <elliott> "nice find"???
20:21:32 <crystal-cola> elliott: language definition
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:21:44 <crystal-cola> well it wasn't linked there when I looked
20:21:50 <monqy> code->cvs browse
20:21:53 <elliott> what monqy said
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:22:15 <elliott> the
20:24:24 <crystal-cola> elliott: ugh this thing is so long
20:24:28 <elliott> what is
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:56 <crystal-cola> I guess it's all about #include then?
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:03 <crystal-cola> to get loops and stuff
20:26:20 <elliott> crystal-cola: nope
20:26:26 <crystal-cola> how is it done?
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:26:50 <oerjan> Yahweasel: ^
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:36 <oerjan> wat
20:31:45 <elliott> ya they killed him outside his home
20:31:49 <elliott> in pakistan
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:50 <elliott> sorry obama
20:32:52 <elliott> missepeld
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:07 <elliott> Gregor: shut up gorgor
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:33:36 <elliott> You're a bip.
20:33:53 <oerjan> Yahweasel: ^
20:34:31 <elliott> Yah're a weasel.
20:35:01 <monqy> yahreaweasel
20:35:21 <oerjan> this is just a sign that humanity will soon become slaves of our new weasel overlords
20:35:33 <elliott> lead by obama
20:35:35 <elliott> (RIP)
20:35:40 <oerjan> whom i for one welcome, of course
20:35:46 <olsner> Yahwe Asel
20:35:46 <elliott> in fact forget the obama
20:35:52 <elliott> Y Ahweasel
20:36:00 <elliott> y u a weasel
20:36:44 <olsner> elliott: what was the bug about _ in that interpreter of yours?
20:36:45 <elliott> asdfghjkl;'\\
20:36:50 <elliott> olsner: basically one can wrap
20:36:51 <elliott> i.e.
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:07 <elliott> which is a bitch
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:37:58 <elliott> that's hideous
20:38:00 <elliott> it's bitwise _cyclic_ tag
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:14 <elliott> but i don't care
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:04 <dnm_> Oh man.
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:29 <elliott> yes i'm paid to be offend
20:40:39 <olsner> hmm, I kind of agree that it should loop... that loopiness probably interferes with my plans for parallelising it
20:40:42 <Yahweasel> elliott: That explains 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:43:37 <elliott> forever
20:43:38 <elliott> beautiful
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:44:53 <elliott> god
20:44:57 <olsner> lol, ok
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:20 <elliott> Mo'ammerEl Khadhdhaffy
20:46:23 <ais523> oerjan: did you unban them again?
20:46:31 <oerjan> ais523: yes
20:46:47 <oerjan> antiantioptbot is no longer banned
20:46:54 <oerjan> afair
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:48:53 <elliott> I suppose you're right
20:49:14 <elliott> Moamer elKuzzafy
20:49:28 <elliott> Moamer -Kuzzafy
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:50:55 <Yahweasel> Ked Taffy
20:51:01 <elliott> yesss
20:51:49 -!- Phantom_Hoover has joined.
20:52:10 <Phantom_Hoover> I RETURN TO CIVILISATION
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:52:41 <crystal-cola> woah
20:52:43 <elliott> Phantom_Hoover: FINALLY
20:52:58 <crystal-cola> cool oerjan
20:53:42 <oerjan> s/)) =/) =/
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:58:13 <oerjan> and quintopia
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:39 <elliott> hmm
21:15:41 <elliott> but only USUALLY
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:25 <olsner> elliott: nah
21:16:29 <elliott> awwwwwwwwwwwwwww
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:16:45 <elliott> NO CHART :(
21:17:28 <elliott> olsner: I have to say the zz is very stylish
21:17:30 <elliott> I want a zz in my surname
21:17:32 -!- Slereah_ has joined.
21:17:38 <olsner> not a dhdh?
21:17:45 <elliott> well that's ok too
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:18:29 <elliott> also lol bidi fail
21:19:12 <crystal-cola> urgh
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:28 <elliott> oh god
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:13 <elliott> X-D
21:24:16 <elliott> What's that from?
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:01 <elliott> MIT/GPL... why
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:36 <Gregor> Yup.
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:41 <Gregor> Noooose :P
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:43 <Gregor> (Relatively short)
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:29:21 <elliott> true.
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:34 <elliott> cpressey: thank you
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:48:40 <elliott> wat
21:48:44 <elliott> is this the new yoob
21:48:47 <elliott> new and improved
21:49:02 <cpressey> It does INTERCAL too
21:49:08 <elliott> And Befunge-9eight
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:49:36 <elliott> e
21:50:02 <oerjan> ...at least it wasn't goatse.
21:50:11 <elliott> it so is goatse
21:50:14 <elliott> its the goatsest
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:52:59 <elliott> goatse
21:55:03 <oerjan> un-gay is of course the term for what we now call heterosexual or straight.
21:55:41 <elliott> no
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:55:53 <elliott> oh well yes that is true
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:29 <elliott> no
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:03 <elliott> you're a perol
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:04 <elliott> youorea a petrl
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:48 <oerjan> yes
22:01:49 <elliott> oerjan: lead by the grammar nazi's
22:01:53 <elliott> and the grammar satlins
22:02:36 -!- cpressey has quit (Quit: Living in the Past).
22:03:40 * Phantom_Hoover → sleep
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 <Phantom_Hoover> elliott, the Illiteracy Communists.
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:04:50 <elliott> NEVER
22:04:57 <elliott> NEVERRRRRRRRR
22:04:58 <Phantom_Hoover> BWAHAHAHA
22:05:02 <Phantom_Hoover> THIS SECRET DIES WITH ME
22:05:05 <elliott> AND ME
22:05:08 <elliott> AND EVERYONE IN THE PAST MWAHAHAHA
22:05:11 <elliott> Let us never speak of it again.
22:05:16 <Phantom_Hoover> LOST WISDOM OF THE ANCIENTS NE NE NE NE NE
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:07:40 <oerjan> *fertility
22:07:55 <oerjan> *the british isles
22:08:05 <Phantom_Hoover> OK seriously → sleep
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:46 <elliott> xD
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:07 <elliott> (sj means dsf)
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:18:59 <elliott> im half horse
22:19:41 <oerjan> his mother is a famous artist by the name of Sarah Jessica Parker.
22:19:45 <oerjan> *actor
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:30 <crystal-cola> do log readers exist?
22:20:38 <crystal-cola> the concept scares me
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:21:11 <crystal-cola> I can't know how many it would be
22:21:53 <myndzi> oh, ok then. proceed.
22:22:18 <elliott> crystal-cola: it's infinite
22:22:21 <elliott> thanks to sianuirnglarity
22:22:40 <crystal-cola> you don't actually believe that, do you?
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:23:58 <myndzi> i'll never know vOv
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:00 <crystal-cola> :/
22:27:28 <oerjan> i am still talking about myndzi's dancing, btw
22:27:37 <crystal-cola> I was asking elliott
22:27:48 <elliott> crystal-cola: INFINITELY
22:27:55 <crystal-cola> 4?
22:28:03 <elliott> well if i was immortal i'd probably read it like once every ten trillion gajillion years
22:28:05 <elliott> just to prove you wrong
22:28:33 <crystal-cola> :S
22:28:41 <crystal-cola> You irrational
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:43 <crystal-cola> thisr function
22:31:59 <crystal-cola> ((x)) = 0 if x is an integer x - floor(x) - 1/2 otherwise
22:32:04 <crystal-cola> I thogh, this functions kind of a dick head
22:32:08 <crystal-cola> being 0 when its an integer
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:33:32 <crystal-cola> yeah this was before I realized that
22:33:37 <crystal-cola> my gut reaction
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:28 <elliott> heres a cool function
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:54:44 <elliott> oerjan: why not
22:54:47 <elliott> WHY NOT
22:55:00 <oerjan> because all rational numbers are computable
22:55:08 <elliott> and?
22:55:10 <elliott> some reals 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:04 <elliott> oerjan: hmm
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:39 <elliott> WHYYYYYYYYYYYYYYY
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:41 <elliott> bitches
22:58:43 <oerjan> (this applies to irrational and computable separately, of course)
22:59:04 <oerjan> heh
22:59:08 <elliott> best function
22:59:24 <oerjan> i'll admit that one :D
22:59:38 <elliott> btw the "bitches" is part of the definition obviously
22:59:45 <oerjan> O KAY
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:07 <oerjan> nah.
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:04:39 <oerjan> nope.
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:23 <elliott> hes a robot
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:10:51 <elliott> whops.
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:44:34 <EgoBot> CEWDC1WB
23:44:43 <oerjan> ..apparently not.
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:09 <EgoBot> Hello, world!
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:40 <EgoBot> Hello, world!
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:48:59 <elliott> oerjan: wat
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:51:51 <oerjan> ...is _plenty_ usable
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).
2011-05-03
00:00:17 <tswett> !slashes /%/ZOMG A COMMENT!/Hello, world!
00:00:19 <EgoBot> 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:21 <EgoBot> Hello, 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:05:54 <micahjohnston> > let fibs = 1 : scanl (+) 1 fibs in take 10 fibs
00:05:55 <lambdabot> [1,1,2,3,5,8,13,21,34,55]
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:46 <elliott_> lulz
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:06 <oerjan> MAYBE
00:12:07 <elliott_> how, replacing " " or similar?
00:12:10 <elliott_> (two spaces)
00:12:26 <oerjan> yes, that and "\n "
00:12:28 <oerjan> iirc
00:13:10 <elliott_> slashes is awesome
00:13:28 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0#//0##/#0//0#/1//|0/|//|/////***
00:13:29 <EgoBot> 11*
00:13:33 <micahjohnston> aww
00:13:37 <micahjohnston> yeah, it is
00:13:39 <micahjohnston> :D
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:52 <oerjan> elliott_: pretty sure
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:06 <elliott_> which you can't do with that
00:14:11 <oerjan> note that it reads one character at a time
00:14:16 <elliott_> micahjohnston: did you write that?
00:14:21 <micahjohnston> elliott_: yeah
00:14:24 <elliott_> cool
00:14:31 <micahjohnston> I've been thinking about how to convert unary to binary all day at school
00:14:32 <micahjohnston> xD
00:14:36 <micahjohnston> I almost got it write there
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:14:56 <EgoBot> 11
00:15:00 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////****
00:15:01 <EgoBot> 100
00:15:03 <elliott_> awesome
00:15:04 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////*
00:15:04 <EgoBot> #
00:15:07 <elliott_> lol
00:15:08 <micahjohnston> aww
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:18 <oerjan> for decimal, yes
00:15:24 <elliott_> <oerjan> note that it reads one character at a time
00:15:25 <elliott_> ah, okay
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:15:53 <micahjohnston> wow, s/write/right/
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:17 <micahjohnston> shore iss
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:00 <elliott_> heh
00:17:12 <elliott_> oerjan: underload->ifjtiwjtjflabjsifsit compiler
00:17:13 <elliott_> wait
00:17:17 <elliott_> just ->slashes compiler
00:17:21 <elliott_> underload has no input :D
00:17:23 <oerjan> heh
00:17:24 <elliott_> IT MUST BE DONE
00:18:33 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////*
00:18:34 <EgoBot> #
00:18:35 <elliott_> oerjan: is it done yet
00:18:48 <micahjohnston> I must have some accidental code-as-data in there or something
00:18:48 <elliott_> <oerjan> yes
00:18:55 <micahjohnston> because otherwise it hsould be working
00:20:00 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|////*
00:20:01 <EgoBot> #
00:20:08 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*//*/#//0##/#0//0#/1////*
00:20:09 <EgoBot> #
00:20:15 -!- Sgeo has joined.
00:20:43 <micahjohnston> !slashes /\/\/\//|0//**/*0*//*0/0*////*
00:20:44 <EgoBot> *
00:20:52 <micahjohnston> !slashes /\/\/\//|0////*
00:20:53 <EgoBot> |0*
00:21:07 <micahjohnston> :/
00:21:13 <micahjohnston> why is that happening?
00:21:23 <elliott_> because of osama
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:06 <micahjohnston> !slashes /\/\/\//|0//*0/0*////*
00:22:07 <EgoBot> *
00:22:25 <micahjohnston> ahhhh
00:22:34 <micahjohnston> !slashes /\/\/\/\//\/|0//*0/0*////*
00:22:35 <EgoBot> |0*
00:22:48 <micahjohnston> !slashes /\/\/\/\//\/|0//**/*0*//*0/0#//0##/#0//0#/1//|0/|//|/////*
00:22:49 <EgoBot> *
00:22:53 <micahjohnston> :|
00:23:09 <micahjohnston> !slashes /\/\/\/\//\/|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////*
00:23:09 <EgoBot> #
00:23:14 <elliott_> lol
00:23:22 <elliott_> oerjan: help the poor guy debug his code
00:28:23 <oerjan> ah.
00:29:02 <oerjan> !slashes /\/\/\/\/\//\/\/|0//**/*0*//*0/0#//0##/#0//0#/1//|0/|//|/////*
00:29:04 <EgoBot> *
00:29:10 <oerjan> wat
00:30:07 -!- Lymia has joined.
00:30:15 -!- Lymia has quit (Changing host).
00:30:15 -!- Lymia has joined.
00:30:41 <oerjan> duh
00:32:08 <oerjan> !slashes /\/\/\/\/\//\/\/|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|/////*
00:32:09 <EgoBot> 1
00:32:23 <oerjan> there you go
00:32:27 <micahjohnston> oh ok
00:32:58 <micahjohnston> kinda messy I think
00:33:08 <micahjohnston> but I don't have any practice with this stuff :P
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:26 <EgoBot> 1
00:34:31 <micahjohnston> !slashes /**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|//|0****
00:34:33 <EgoBot> 100
00:34:45 <micahjohnston> I dunno, I was just trying to make only *'s after all the slashes
00:34:58 * Sgeo angers at XNA
00:35:09 <oerjan> hm...
00:35:21 <micahjohnston> oerjan: how do you make a main loop?
00:35:45 <oerjan> !slashes /\/\/\//\/\/|0//**/*0*//*0/0*//*/#//0##/#0//0#/1//|0/|//|///*
00:35:46 <EgoBot> 1
00:36:09 <oerjan> you need to make a self-replicating subprogram
00:38:14 <micahjohnston> yeah, I thought so
00:38:25 <micahjohnston> I tried for a long time using a paper to make a quine or a self-replicating program
00:38:28 <micahjohnston> but I couldn't
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:41:03 <oerjan> dammit
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:47:59 <micahjohnston> heh, nice
00:48:19 <oerjan> *escape with \
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.
00:55:14 <oerjan> something like that
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:10:35 <elliott> /more readable
01:10:38 <elliott> it separates things more
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:39 <elliott> well okay
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:02 <micahjohnston> ok
01:14:05 <elliott> oerjan: It's cool how you can change the escape character in ///
01:14:08 <micahjohnston> not in irssi :/
01:14:11 <elliott> /X/\\/
01:14:12 <micahjohnston> gtg
01:14:13 <elliott> micahjohnston: should work
01:14:15 <elliott> if not, /say
01:14:23 <micahjohnston> /test
01:14:24 <micahjohnston> ok
01:14:26 <micahjohnston> bye
01:14:40 <oerjan> IS TOO READABLE
01:14:49 <oerjan> (not a strongly held opinion)
01:15:14 <oerjan> /hm
01:15:20 <oerjan> irssi requires / /
01:18:11 <elliott> weird
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:18:50 <oerjan> that is a tight loop
01:18:54 <elliott> argh, so it is
01:19:06 <elliott> /X/\\unused//unused/X/
01:19:07 <elliott> argh
01:19:10 <elliott> that doesn't work either
01:19:12 <elliott> is it actually possible...
01:19:15 <oerjan> no.
01:19:18 <elliott> damn
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:26:17 <oerjan> nsf?
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:30:57 <elliott> zxcvbnm, bvfgtyujnm,ku
01:31:02 <oerjan> well i think you should be able to get a length of 256^(ram size - overhead)
01:31:12 <oerjan> (in bytes)
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:31:31 <elliott> heh at "does not repeat"
01:31:33 <elliott> that's a bit vague
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:33:35 <zzo38> Yes I believe you
01:40:15 <elliott> poiuytrewq isn't a word?
01:40:44 <oerjan> poiuy_qwert is a nick, though
01:41:04 <elliott> or is it
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:50:33 <elliott> welp
01:52:55 -!- augur has joined.
01:53:21 <oerjan> qitten
01:56:28 <elliott> pitten
01:57:31 <oerjan> bitten
02:18:13 -!- pikhq has joined.
02:19:17 <micahjohnston> /test
02:22:41 <elliott> /asfghjk
02:22:43 <elliott> /a
02:22:44 <elliott> //a
02:22:45 <elliott> ///a
02:22:47 <elliott> /////a
02:22:49 <elliott> damn
02:37:50 <zzo38> What do you test?
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:42:51 <tswett> Ah, yes.
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:40 <lambdabot> True
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:29 <elliott> yes
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:54:15 <elliott> innit oerjan
02:55:27 <pikhq> And, of course, a subtle misimplementation of your choice of algorithm that makes it significantly worse O()-wise.
02:55:59 <oerjan> O(erjan)
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:31 <elliott> oerjan: :D
02:58:34 <elliott> brilliant
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?
02:59:26 <elliott> love
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:03:12 <elliott> oerjan: :D
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:06:35 <elliott> You can't seeee meeee
03:07:34 <oerjan> hm
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:12:41 <oerjan> oops :D
03:12:43 <elliott> :D
03:12:57 <elliott> > let in 9
03:12:58 <lambdabot> 9
03:13:16 <oerjan> hm that would be a sign that actually _does_ confuse ghc
03:13:23 <elliott> oerjan: indeed
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:13 <elliott> :D
03:14:17 <oerjan> or erm
03:14:17 <elliott> wow.
03:14:20 <elliott> how did that even
03:14:26 <oerjan> ...doh
03:14:27 <elliott> how can it produce half a number...
03:14:34 <oerjan> it's buggy
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:17 <elliott> oh right, heh
03:15:45 <oerjan> !haskell {-# LANGUAGE NoMonomorphismRestriction #-} fib0 = 1 : fib1; fib1 = 1 : fib2; fib2 = zipWith (+) fib0 fib1; main = print (fib2 !! 20)
03:15:51 <EgoBot> 28657
03:15:57 <oerjan> tsk tsk
03:16:08 <oerjan> !haskell {-# LANGUAGE NoMonomorphismRestriction #-} fib0 = 1 : fib1; fib1 = 1 : fib2; fib2 = zipWith (+) fib0 fib1; main = print (fib2 !! 30)
03:16:13 <EgoBot> 3524578
03:16:22 <elliott> too fast
03:16:23 <oerjan> !haskell {-# LANGUAGE NoMonomorphismRestriction #-} fib0 = 1 : fib1; fib1 = 1 : fib2; fib2 = zipWith (+) fib0 fib1; main = print (fib2 !! 50)
03:16:27 <elliott> slow it down
03:16:29 <EgoBot> 53316291173
03:16:31 <oerjan> ah yes
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:46 <oerjan> yeah
03:16:55 <elliott> something with typeclasses?
03:17:11 <oerjan> um the monomorphism restriction _is_ something to do with typeclasses
03:17:20 <elliott> I mean
03:17:26 <elliott> produce the same slowing effect with some type class magic
03:17:28 <elliott> somehow
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:18:40 <elliott> oh shut up
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:38 <oerjan> DRINK ME
03:42:43 <elliott> xD
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:57 <elliott> micahjohnston: uh.
03:42:59 <micahjohnston> ... ///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\////\\\///\\////\\\///\\\///\\////\\////\\////\\////\\\///\\////\\\///\\////\\////\\\///\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\////\\////\\////\\////\\\///\\////\\////\\\///\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\\///\\////\\\///\\\///\\////\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\/// ...
03:43:02 <elliott> FAIL
03:43:05 <micahjohnston> ... /\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\////\\////\\////\\////\\\///\\////\\////\\\///\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\////\\////\ ...
03:43:07 <elliott> put it on a pastebin and give a url
03:43:11 <micahjohnston> ... \////\\\///\\////\\\///\\////\\\//\/\/\/\\\/\\\/\\////\//\//\/\/\/\\\\/\\//\\\/\\\/\\\/\\\\\\\/\\\\\\\/\\\/\\\\////\//\//\/\/\/\\\\/\\\/\\\/\\\/\\\\\\\\\\////\/\/\
03:43:12 <elliott> ...
03:43:14 <micahjohnston> :(
03:43:16 <elliott> put it on a pastebin and give a url
03:43:21 <micahjohnston> no, it's just the quine on the wiki page
03:43:22 <tswett> :)
03:43:24 <elliott> oh
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:06 <oerjan> now what
03:44:11 <elliott> NOW WE WAIT
03:44:20 <oerjan> !echo hi
03:44:22 <EgoBot> /\/\/\/\\\\/\\\\\\\/\\\\\\\/\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\//\/\/\/\\\/\/\\////\\////\\\///\\////\\\///\\////\\\///\\////\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\////\\////\\\///\\////\\\///\\////\\\//
03:44:24 <elliott> how fast is your perl /// interp, btw?
03:44:29 <oerjan> it's that bug again
03:44:34 <elliott> oh gog
03:44:36 <oerjan> well it should be instant for that quine
03:44:38 <elliott> !echo nooo
03:44:39 <EgoBot> nooo
03:44:41 <elliott> oerjan: I mean in general
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:01 <elliott> seems like it
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:45:48 <elliott> you know what i mean
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:36 <elliott> it's blatantly false :)
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:06 <elliott> (I think)
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:33 <oerjan> um
03:47:39 <elliott> um?
03:47:51 <oerjan> i mean with O(n) per step of a CA
03:47:55 <elliott> right
03:48:00 <oerjan> or wait...
03:48:04 <elliott> it's just... bleh
03:48:04 <micahjohnston> oerjan: is there a much shorter quine that's not only / and \?
03:48:09 <oerjan> well with a better
03:48:10 <elliott> micahjohnston: yes, "x"
03:48:12 <elliott> or the null string
03:48:13 <oerjan> !slashes yes
03:48:14 <EgoBot> yes
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:36 <micahjohnston> elliott: not a trivial one
03:48:39 <micahjohnston> I knew that
03:48:39 <micahjohnston> :/
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:48:48 <micahjohnston> no slashes
03:48:57 <elliott> tswett: :D
03:49:01 <micahjohnston> tswett: null strings are not quines
03:49:03 <micahjohnston> they don't count
03:49:05 <elliott> oerjan: err, define faster than that
03:49:11 <elliott> Underload isn't faster than a UTM :-D
03:49:22 <oerjan> elliott: um yes it is
03:49:25 <micahjohnston> ok, something with a slash or three, or more, that's a quine
03:49:29 <elliott> howso?
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:28 <elliott> hmm
03:50:30 <elliott> ok that's scary
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:09 <elliott> right
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:36 <elliott> but
03:51:36 <elliott> geh
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:22 <elliott> heh
03:52:26 <elliott> I didn't really mean that
03:52:27 <elliott> but okay
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:26 <elliott> er, wat
03:53:28 <tswett> On an actual computer, that's pretty much going to take O(n log n) time.
03:53:43 <elliott> oh right
03:53:49 <elliott> because it can do subtraction in one step
03:53:49 <elliott> ew
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:21 <elliott> micahjohnston: wat
03:55:23 <micahjohnston> that's what I thought
03:55:56 <micahjohnston> well I guess a hierarchical halting problem oracle isn't…
03:55:57 <micahjohnston> I dunno
03:56:03 <elliott> i repeat, wat
03:57:40 <micahjohnston> like
03:57:43 <micahjohnston> I don't get what you mean
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:23 <elliott> i mean 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
03:58:45 <elliott> blergh
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:04:43 <oerjan> ...apparently not
04:05:48 <oerjan> oh duh
04:08:09 <elliott> ok i should sleep
04:08:17 <elliott> AND SO SHOULD YOU OERJAN
04:08:36 <oerjan> not yet
04:12:40 <Lymia> !slashes /a/aa/
04:12:45 <Lymia> !slashes /a/aa/ a
04:12:46 <elliott> oh god its bright
04:12:58 <oerjan> Lymia: infinite loop
04:13:09 <Lymia> oerjan, arn't those fun/
04:13:30 <oerjan> very zen
04:13:34 <elliott> good nighgtht
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:36 <oerjan> bah
04:17:38 <oerjan> !echo hi
04:17:38 <EgoBot> hi
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:19:14 <oerjan> ...not quite
04:20:27 <tswett> !slashes \//\\//\\//\/\\/\//\/\\/\/\//\/\///\\\/\\\/\//\\//\/\/\\/\/\\\/\\/\\/\/\/\/\\\/\\/\/\\\/\\//\\/\\///\/\\\//\/\//\\//\/\//\/\\\\\/\/\///\//\/\\/\//\
04:20:28 <EgoBot> /
04:20:33 <tswett> Okay.
04:20:52 <Lymia> !py
04:21:18 <tswett> !slashes /\/\\/\/\//\/\///\\\/\\\/\//\\//\/\/\\/\/\\\/\\/\\/\/\/\/\\\/\\/\/\\\/\\//\\/\\///\/\\\//\/\//\\//\/\//\/\\\\\/\/\///\//\/\\/\//\
04:21:20 <EgoBot> /
04:21:31 <tswett> Well.
04:23:20 <Lymia> !slashes \\////\\\\\\//\\\\//\\///\\//\\\\\\\\/\\//\\\\///\\/\\\\/\\\\\\/\\\\\\\\/\\\\\\////\\/\\//\\/\\\\//\\/\\//\\\\/\\//\\/\\/\\\\//////\\/\\//
04:23:20 <EgoBot> \\\
04:23:28 <Lymia> !slashes /\\/\\/\\\\///\\/\\\\///\\\\//\\/\\\\/\\\\/\\\\//\\\\\\\\\\/\\//\\\\/\\\\///\\/\\\\\\\\/\\///\\/\\\\///\\\\\\///\\\\//\\\\/\\/\\//\\\\\\/
04:23:30 <Lymia> :v
04:23:51 <tswett> !slashes :v
04:23:51 <EgoBot> :v
04:23:59 * oerjan wonders what you are doing
04:24:15 <Lymia> !slashes \\\\/\\//\\/\/\//\//\///\\\\//\\\\\\//\\///\\/\\\//\\\///\/////////\/\\\///\\\\/\///\\\//\////\
04:24:15 <EgoBot> \\
04:24:18 <Lymia> !slashes \/\//\\///\\\/////\/\\\\/\/\/\/\\\/////\\/\/\\//\//\/\////\\\//\/\\/\
04:24:19 <EgoBot> //
04:24:23 <Lymia> !slashes ///\\\/\/\//\///////\/\/\//\//\//\///\\\\//\//\\\////\/\\/\\//\\\\\\/\/\//\\
04:24:24 <EgoBot> \///\\\\\\\\\\\\\\
04:24:25 <Lymia> :v
04:24:34 <Lymia> Random blobs of slashes generate output!
04:24:42 <oerjan> you don't say!
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:30:04 <oerjan> d'oh
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 <lifthrasiir> tswett, automatically generated?
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:34:56 <lifthrasiir> tswett, lol
04:36:37 <lifthrasiir> !slashes /V/ B@//v/ b@//@/uffalo//! //! VvVvvvVv
04:36:38 <EgoBot> Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo
04:36:47 <lifthrasiir> that is quite compressible.
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:38:01 <lifthrasiir> are you golfing the slashes program? ;)
04:38:14 <tswett> No, definitely not.
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:24:27 <Lymia> !slashes /a/a/
05:24:29 <Lymia> Eval!
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:51 <pikhq> ...
05:25:57 <pikhq> That was supposed to be "sleep".
05:26:05 <pikhq> Which demonstrates my point further.
05:26:12 <oerjan> you'd think
05:28:15 <Lymia> !slashes /a/a/
05:28:17 <Lymia> !slashes /a//
05:28:22 <Lymia> !slashes /a// asdf
05:28:23 <EgoBot> sdf
05:29:13 <pikhq> THINKING IS IMPERMISSIBLE
05:29:21 <oerjan> !sh echo " hi there
05:29:22 <EgoBot> /tmp/input.23112: line 1: unexpected EOF while looking for matching `"'
05:29:33 <oerjan> !sh echo " hi there"
05:29:35 <EgoBot> hi there
05:32:58 <lifthrasiir> !slashes //a///b///h///l/
05:32:59 <EgoBot> llll
05:33:03 <lifthrasiir> ugh.
05:34:10 <zzo38> It don't space?
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:54 <pikhq> Hmm.
05:34:56 * Lymia does crazy things
05:34:59 <pikhq> !sh echo "\tHi there"
05:35:00 <EgoBot> \tHi there
05:35:14 <pikhq> ... Wut.
05:35:18 <zzo38> You need -e
05:35:24 <pikhq> zzo38: Ah.
05:35:25 <pikhq> !sh echo -e "\tHi there"
05:35:26 <EgoBot> Hi 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:22 <EgoBot> 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.
10:57:29 <crystal-cola> what are the haps
10:57:34 <crystal-cola> ham
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
11:12:14 <ais523> or OCaml
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:51: <pikhq> ...
15:43:38 <elliott> 05:25:57: <pikhq> That was supposed to be "sleep".
15:43:38 <elliott> you're not Sgeo, pikhq
15:44:21 <elliott> 15:37:12: <ais523> hmm, there's a programming language called Vorpal?
15:44:24 <elliott> ais523: yep :D
15:44:36 <elliott> [[Deadfish]] is like injoke central
15:44:38 <ais523> elliott: did you invent it?
15:44:42 <elliott> nope
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:45:29 <elliott> (Carroll, that is.)
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:51:47 <elliott> "Uh."
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:52:16 <elliott> Yep
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:54:20 <elliott> Vorpal: relatively
15:54:24 <tswett> Thank you.
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:55:41 <Vorpal> *brain implodes*
15:55:41 <elliott> Vorpal: ...............
15:55:45 <Yahweasel> 8-D
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:47 <Vorpal> but not sarcastic
15:57:48 <elliott> haha, wat
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!
15:58:44 <elliott> Yahweasel: :TROLLFACE:
16:02:12 <crystal-cola> im watching hyperland... so sad
16:02:41 <crystal-cola> depressing to compare the internet now with the potential of what ti could be
16:03:18 <Vorpal> hyperland?
16:03:28 <crystal-cola> its a documentry by douglas adams
16:06:03 -!- crystal-cola has quit (Read error: Operation timed out).
16:13:12 -!- crystal-cola has joined.
16:15:18 <crystal-cola> so youtube died?
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 <Phantom_Hoover> ais523, what is it with you and the web?
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:23:53 <crystal-cola> ais523: what do yoyu us?
16:23:54 <Phantom_Hoover> ais523, why?
16:23:56 <crystal-cola> which protocol
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:11 <crystal-cola> whats gopher?
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:19 <crystal-cola> I really like that music cheater_
16:24:22 <zzo38> Gopher and IRC are good protocols.
16:24:27 <cheater_> crystal-cola: yes
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:34 <crystal-cola> I only know about IRC and HTTP
16:24:38 <ais523> crystal-cola: gopher's the only competitor, and it's really old
16:24:41 <ais523> to HTTP, that is
16:24:48 <cheater_> crystal-cola: never used ftp?
16:24:53 <ais523> oh, and Google's new SPDY but nobody cares about it
16:24:56 <crystal-cola> oh yes ftp good point
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:16 <elliott> google uses 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:34 <cheater_> ais523: what about Xanadu?
16:25:35 <crystal-cola> just wondering ifp any other protocols
16:25:38 <elliott> ais523: well, gmail sure is fast :)
16:25:40 <crystal-cola> does xanadu exist
16:25:47 <elliott> crystal-cola: not in any meaningful sense
16:26:25 <crystal-cola> ~P -> ~Q and P therefore Q!
16:26:27 <cheater_> http://xanarama.net/XanaduSpace_Install_1.0.exe
16:26:35 <crystal-cola> Icommited logical fallacy :D
16:26:43 <elliott> thats ilegal
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:27:21 <crystal-cola> what telnets are there
16:27:26 <crystal-cola> what cna you do wit hit?
16:27:31 <crystal-cola> other than play nethack
16:27:43 <crystal-cola> and watch star wars
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:30:14 <crystal-cola> wiell
16:30:19 <crystal-cola> I dont wanna play games :(
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:42 <crystal-cola> where are a list of telnets?
16:31:49 <crystal-cola> with an explanation of what they are
16:31:52 <elliott> `delquote 386
16:31:54 <HackEgo> *poof*
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:12 <crystal-cola> TELNETS TELNETS TELNETS YOU LIKE THAT?????
16:32:20 <elliott> `addquoet
16:32:21 <HackEgo> No output.
16:32:29 <crystal-cola> `afufgpfdw
16:32:30 <HackEgo> No output.
16:32:40 <elliott> `delete everything
16:32:41 <HackEgo> No output.
16:32:44 <elliott> thx
16:32:45 <crystal-cola> `ls
16:32:47 <HackEgo> babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ test.c \ tmpdir.6646
16:32:51 <elliott> noooooo
16:33:02 <crystal-cola> `mkdir firepit
16:33:03 <HackEgo> No output.
16:33:07 <crystal-cola> \mv babies firepit
16:33:14 <elliott> `rmdir firepit
16:33:15 <HackEgo> No output.
16:33:16 <elliott> i saved you babies
16:33:21 <crystal-cola> GURRRrr
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:34:32 <crystal-cola> **hierarchical message**
16:35:05 <zzo38> Yes that is correct.
16:35:15 <crystal-cola> this is mystifying
16:36:33 <Phantom_Hoover> crystal-cola, replies, basically.
16:36:35 <Phantom_Hoover> I assume.
16:37:14 <Phantom_Hoover> `babies
16:37:14 <HackEgo> No output.
16:37:20 <elliott> `fuck
16:37:21 <HackEgo> Congratulations! elliott's action has brought a beautiful new baby into the world. Isn't it adorable?
16:37:24 <elliott> `cat babies
16:37:25 <HackEgo> No output.
16:37:29 <elliott> eh
16:37:29 <elliott> `ls
16:37:30 <HackEgo> babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ test.c \ tmpdir.7223
16:37:35 <elliott> `run wc -c babies
16:37:36 <HackEgo> 0 babies
16:37:36 <Phantom_Hoover> `ls babies
16:37:37 <HackEgo> babies.db
16:37:39 <elliott> guess it stores it elsewhere
16:37:41 <elliott> oh
16:37:45 <elliott> `cat babies/babies.db
16:37:46 <HackEgo> SQLite format 3
16:37:51 <Phantom_Hoover> ...
16:37:52 <elliott> no kill like overkill
16:37:55 <Phantom_Hoover> Oh, right, DCC.
16:37:59 <elliott> no
16:38:00 <elliott> it just cut it off
16:38:04 <crystal-cola> `cal
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:29 <ais523> `sdate cal
16:38:30 <HackEgo> No output.
16:38:38 <ais523> that bot needs sdate installed
16:38:45 <zzo38> `which fuck
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:45 <elliott> lol at sqlite
16:41:50 <elliott> `run url `which fuck`
16:41:51 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip//tmp/hackenv.7897/bin/fuck
16:42:00 <elliott> fail
16:42:04 <elliott> `run paste `which 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
16:58:12 <elliott> oh well
17:01:33 <crystal-cola> not sure what to do now
17:01:33 <crystal-cola> !
17:01:53 <elliott> ?
17:10:54 <dnm_> Crystal Pepsi was delicious.
17:10:56 <dnm_> I miss it.
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:17:14 <crystal-cola> im not sure what to do today
17:23:52 <crystal-cola> hye what ashould I do today
17:23:54 <crystal-cola> elliott:
17:23:57 <crystal-cola> didyou reda it??
17:26:51 <Lymia> `fuck elliott
17:26:52 <HackEgo> Congratulations! Lymia's action has brought a beautiful new baby into the world. Isn't it adorable?
17:26:57 <Lymia> :v
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:27 <elliott> >fail
17:30:29 <crystal-cola> your both pedophiles
17:30:34 <crystal-cola> because your both underage
17:30:43 <Lymia> Oh.
17:30:45 <Lymia> Crap.
17:30:45 <crystal-cola> unless one is male and one is female, then only the boy is a pedo
17:30:48 <crystal-cola> welcome to UK law
17:31:00 <Lymia> crystal-cola, what if both are female?
17:31:12 <crystal-cola> (im not a lawyer)
17:31:17 <crystal-cola> (im just making stuff up
17:31:25 <Lymia> crystal-cola, :3
17:31:28 <crystal-cola> :3
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:32:06 <crystal-cola> yea true
17:32:22 <elliott> uk hills
17:32:28 <elliott> played on ukulele
17:33:19 <Phantom_Hoover> <Lymia> I'm the underaged one here.
17:33:23 <Phantom_Hoover> Except which country?
17:33:53 <Phantom_Hoover> *in, if you're in a pedantic mood.
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:06 <augur> elliott: #_%
17:39:10 <elliott> wat
17:39:12 -!- zzo38 has quit (Quit: NO CARRIER).
17:39:27 <augur> you broked it
17:39:34 <elliott> brpked what
17:39:42 <augur> reality
17:40:16 <elliott> what
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:40:43 <elliott> asdfghjkl;'
17:40:49 <crystal-cola> C==
17:40:51 <crystal-cola> thnat's a good idea
17:40:56 <crystal-cola> a pure functional version of C
17:40:57 <elliott> its jus tas good as c
17:41:36 <Lymia> (C++)-crap
17:41:47 <Lymia> Somebody make that language.
17:41:50 <elliott> thats called the null set Lymia
17:42:01 <Lymia> =V
17:43:24 <Phantom_Hoover> elliott, clearly not, since C largely intersects with C++.
17:43:31 <Phantom_Hoover> And C is not entirely crap.
17:43:36 <elliott> close enough
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:44:27 <elliott> coppro: no they're not
17:45:30 <coppro> elliott: Constructors
17:45:42 <elliott> coppro: arguable
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:33 <coppro> Assume OOP
17:46:35 <elliott> anyway it isn't about features it's about C++'s versions of them
17:46:37 <elliott> coppro: why?
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:47:26 <elliott> well not really a debate.
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:33 <elliott> ais523: templates :)
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:01:21 <elliott> things
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:06 <elliott> variadic recursion
18:03:16 <ais523> oh, and other template cals
18:03:18 <ais523> *calls
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:11:19 <crystal-cola> Slurrey
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:36 <elliott> Define steps.
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:16:39 <crystal-cola> blblblblbalblablab
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:20:23 <Yahweasel> elliott: lolwut?
18:20:26 <elliott> the internet
18:25:26 <crystal-cola> Why Ernest Hemingway doesn use correct grammar, punctional?
18:26:03 <elliott> alway0zs be punctual
18:26:15 <elliott> epsecislally when unctupating
18:27:44 <olsner> you need to un-ctupate that sentence
18:28:13 <crystal-cola> HERNEST HEMINGHAY
18:28:33 <elliott> hemest hemingway
18:28:41 <elliott> oh wow m looks like rn
18:28:57 <olsner> elliott makes yet another completely new discovery
18:29:04 <elliott> hi olsner
18:29:14 <olsner> I've used XSLT today
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:31:38 <elliott> ...
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:58:07 <cheater_> lolwat?
18:58:08 <Yahweasel> oklokokokokokokokokokok - oklopol
18:59:20 <cheater_> OMFG
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:03 <elliott> oklopoliyivcns
19:04:07 <elliott> pokllpooltcisn
19:04:08 <cheater_> i mean shrunkface like woll smoth
19:04:10 <elliott> pokllopoliticiwn
19:04:13 <cheater_> you know woll smoth olsner?
19:04:14 <elliott> oklopoliticiwj
19:04:19 <elliott> i am not good spetlling
19:04:22 <olsner> wall smooth
19:11:41 -!- oerjan has joined.
19:12:04 <tswett> La dee da dee da.
19:12:12 <tswett> You know what this channel really needs? An IRC bot.
19:12:16 <oerjan> dee dum
19:12:30 * oerjan tswats tswett -----###
19:13:01 <tswett> La dee dum dee dum?
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:08 <oerjan> irc bots
19:14:15 <tswett> Ah. Yep, definitely.
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:23 <oerjan> wat
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:04 <oerjan> aha
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:22:02 <elliott> asdfyuiolkjhgfdsertyuik,
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:13 <elliott> lol
19:24:13 <tswett> They were both alive.
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:12 <tswett> Ah.
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:21 <tswett> That... hm.
19:31:55 -!- tswettbot has joined.
19:32:08 -!- tswettbot has quit (Client Quit).
19:32:32 -!- Phantom_Hoover has joined.
19:33:58 <Phantom_Hoover> I need an American and I need one now.
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:33 <Phantom_Hoover> augur!
19:34:38 <Phantom_Hoover> Are you not an American
19:34:43 <tswett> I'm an American.
19:34:52 <augur> i am indeed american
19:34:53 <augur> why
19:35:00 <Yahweasel> Whaaaaaaaaaaaaaaaaaa
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:13 <Phantom_Hoover> augur, how would you pronounced "saw"?
19:35:34 <augur> [sO]
19:35:34 <augur> afk
19:35:47 <elliott> Yahweasel: srsly? :P
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:44 <elliott> What about "sore"?
19:36:48 <tswett> [sO] and [sA].
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:03 <tswett> So yeh.
19:37:08 <elliott> Yahweasel: Yes, but what do /normal/ people pronounce them as :P
19:37:10 <elliott> i.e. Americans.
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:02 <elliott> Or anything.
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:39:59 <Yahweasel> *brain axplote*
19:40:04 <Phantom_Hoover> Yahweasel, how would you pronounce "bot"?
19:40:18 <Yahweasel> ... bot
19:40:34 <Phantom_Hoover> Same vowel as "saw" or not/
19:40:35 <Yahweasel> Like tot, fought, got, pot, sought, lot, rot.
19:40:42 <elliott> abort my bot baby
19:40:51 <elliott> Yahweasel: you pronounce fought like bot???
19:40:52 <elliott> WTF AMERICANS
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:33 <elliott> What Deewiant said.
19:41:40 <elliott> Boht, foooort.
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:09 <Phantom_Hoover> elliott, conclusion: "Sollux" rhymes with "bollocks".
19:42:20 <Phantom_Hoover> ANY CONTRADICTION WILL NOT BE TOLERATED
19:42:30 <elliott> Yahweasel: YES I DO
19:42:37 <elliott> Yahweasel: I JUST PRONOUNCE THEM LESS ANNOYINGLY THAN YOU
19:42:43 <Yahweasel> elliott: AKA NOT AT ALL
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:42:58 <Phantom_Hoover> I HAVE ENTIRELY THE WRONG ACCENT
19:43:11 <Phantom_Hoover> ſought.
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:32 <elliott> SCIENTIFIC SMOOTHING
19:45:49 <olsner> caught is very close to horny in swedish, probably as close as you can get in english
19:46:19 <Phantom_Hoover> olsner, what are the two.
19:46:24 <elliott> Phantom_Hoover: "caught" and "horny"
19:46:26 <elliott> SWEDISH: REALLY WEIRD
19:46:29 <elliott> SWEDISH ACCENTS: WEIRDER
19:46:33 <Phantom_Hoover> Oh, in vowel sounds.
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:47:52 * Yahweasel commits this FACT to memory.
19:48:07 <olsner> Yahweasel: lawl
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:03 <tswett> s/k/y/
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:56:58 <elliott> jews.com
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
19:59:41 * elliott clicks
19:59:45 <elliott> its' very jews
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:41 <oerjan> yeah i checked
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:01:18 <tswett> Great.
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:03:58 <oerjan> :D
20:04:10 -!- tswettbot has joined.
20:04:18 * tswett coughs.
20:04:27 * tswett blinks.
20:04:47 <oerjan> i reached news.com through google, but it seems to have only that page and some identical ones.
20:04:56 <oerjan> er
20:04:58 <oerjan> *jews.com
20:05:12 <tswett> Huh, tswettbot seems to have stopped listening.
20:05:25 <oerjan> it's rebelling against its creator
20:05:55 * tswett sneezes.
20:06:12 <tswett> What's message 372?
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:18 <tswett> oerjan: you're right.
20:08:24 -!- tswettbot has quit (Ping timeout: 240 seconds).
20:08:36 <tswett> Okay, he's gone now.
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:16:54 <oerjan> olsner: quite.
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:21:55 <tswett> Both of them. :P
20:22:26 <tswett> Well, they don't seem to be entirely dead.
20:22:38 <elliott> tswettbot, I dismiss you.
20:23:06 <tswett> Incorrect.
20:23:14 <tswett> They shall stay until you figure out the right phrase.
20:24:43 <elliott> I dismiss jews.
20:24:47 <elliott> I dismiss you, tswettbot.
20:24:47 -!- tswettbot has quit (Client Quit).
20:24:47 -!- tswettbot_ has quit (Client Quit).
20:24:49 <elliott> HOORJ
20:25:04 <tswett> Is that like "hooray" but with a J instead of an A?
20:25:08 <elliott> Yes.
20:28:52 <olsner> alternative spelling of george
20:29:41 <oerjan> in theory, so is oerjan
20:29:57 <olsner> yep
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:34 <cheater7> what was moved?
20:32:42 <olsner> a j sound
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:33:35 <cheater7> goran
20:33:39 <cheater7> is that like goran bregovic
20:33:47 <olsner> maybe
20:34:25 <cheater7> maybe is not good enough
20:34:29 <cheater7> i need a firm commitment
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:23 <olsner> or why not Jürgen?
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:36:49 <cheater7> ja, it is georg
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:44 <Yahweasel> Or "installations"?
20:37:45 <cheater7> distributions
20:37:52 <Yahweasel> Well then that's just retarded :P
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:23 <cheater7> and why has a j moved?
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:37 <cheater7> Phantom_Hoover, it doesn't?
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:24 <cheater7> it's not joergen.
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:35 <cheater7> are they?
20:39:38 <olsner> cheater7: I know, that's why I wrote jürgen
20:39:58 <cheater7> \
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:43:48 <cheater7> or Yrjoe.
20:44:13 <cheater7> or Xurxo.
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:30 <cheater7> or Gheorghe.
20:45:37 <cheater7> this name has thousands of funny variants
20:46:23 <cheater7> venetian says Zorzi
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:46:48 <Phantom_Hoover> oerjan, silicon, yes.
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:36 <elliott> yuore a ciidifi
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:04 <oerjan> *they
20:49:08 <elliott> thats grue iekrna \
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:18 <Phantom_Hoover> No.
20:50:22 <elliott> why
20:50:23 <cheater7> i want liquid crystal based lifeforms
20:50:29 <cheater7> that would totally own
20:50:32 <Phantom_Hoover> Because Homestuck is quite clearly the best thing to happen to the human race.
20:50:35 <elliott> no
20:50:35 <elliott> salt
20:52:55 <cheater7> no
20:52:58 <cheater7> befunge.
20:53:20 -!- Yahweasel has changed nick to Gregor.
20:54:30 <cheater7> wait, that's right
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:56:48 <cheater7> are you awake
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:58:58 <cheater7> what is it derived from?
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:00:39 <oerjan> oh!
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:44 <oerjan> *you
21:02:48 <elliott> and also because they like blowing up the world trace center
21:02:50 <elliott> WAKE UP SHEEPLE
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:13 <oerjan> and taboo
21:06:53 <Phantom_Hoover> Dammit elliott what have I said before about making me look like a neonazi sympathiser.
21:07:03 <elliott> xD
21:07:56 <oerjan> and zen gabe.
21:08:32 -!- crystal-cola has quit (Changing host).
21:08:32 -!- crystal-cola has joined.
21:09:16 <oerjan> and pink park.
21:09:35 <oerjan> *parks
21:11:22 <elliott> oerjan: what do Nords call spanners?
21:11:26 <elliott> apparently danes call it a Swedish key
21:11:29 <oerjan> what are spanners?
21:11:31 <elliott> spanner, wrench, etc.
21:11:46 <elliott> http://upload.wikimedia.org/wikipedia/commons/0/05/2008-04-14_Chrome-Vanadium_Wrenches.jpg
21:11:47 <elliott> those things
21:12:11 <Yahweasel> (rentsh)
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:37 <oerjan> and yes nøkkel = key
21:12:44 <elliott> oerjan: Does that translate as "Danish key" please say yes.
21:12:49 <Yahweasel> Wrenches are fast keys.
21:12:55 <olsner> more like "fixed key"
21:12:57 <elliott> olsner: :(
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:20 <oerjan> olsner: OBVIOUSLY
21:14:28 <olsner> elliott: nope, block means block, and nyckel means key
21:14:31 <elliott> sticky keys
21:14:35 <elliott> olsner: :(
21:15:11 <oerjan> umbrakonøkkel for those weird hexagonal ones
21:15:26 <crystal-cola> im really confused abou telliptic curves
21:15:26 <Yahweasel> (Umbrella key)
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:16:29 <crystal-cola> elliott: read yet
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:18:01 <elliott> wat.
21:18:36 <crystal-cola> :(
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:21 <elliott> my link is your link
21:21:24 <oerjan> oh
21:21:26 <olsner> that is, the wikipedia link you didn't send but I found otherwise
21:21:27 <oerjan> lessee
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:33 <elliott> wat
21:23:35 <olsner> for a long time I thought the name was insektsnyckel
21:23:35 -!- zzo38 has joined.
21:23:38 <olsner> (insect key)
21:23:42 <oerjan> heh
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:25:54 <elliott> by being racest
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:27:16 <oerjan> elliott: *raceist
21:27:28 <elliott> no racest
21:27:30 <olsner> *raciest
21:27:31 <oerjan> sorry, *raciest
21:27:58 <elliott> racriariest
21:28:01 <elliott> <olsner> *raciest
21:28:01 <elliott> <oerjan> sorry, *raciest
21:28:02 <elliott> wat
21:28:03 <elliott> oh
21:28:06 <elliott> different person
21:28:16 <oerjan> indeed
21:28:20 <olsner> maybe
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:09 <olsner> that's just absurd
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:37 <elliott> delugded
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:34:56 <tswett> Deluged with what?
21:35:00 <oerjan> water.
21:35:04 <tswett> Whew.
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:14 <Phantom_Hoover> Green?
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:43:57 <oerjan> (i ate a folklorist)
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:10 <oerjan> alas, no
21:46:11 <elliott> lol
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:05 <crystal-cola> ;(
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?
21:59:55 <micahjohnston> !slashes /\\/\\\\/\
22:00:04 <micahjohnston> !slashes /\\/\\\\/\\
22:00:12 <micahjohnston> !slashes /\\/\\\\/\\\/
22:00:15 <micahjohnston> !slashes /\\/\\\\/\/
22:00:18 <oerjan> micahjohnston: i made you a shorter quine
22:00:18 <micahjohnston> :<
22:00:22 <micahjohnston> oerjan: cool
22:00:34 <elliott> oerjan: awesome
22:00:48 <micahjohnston> !slashes /\//\\\/////
22:01:03 <micahjohnston> y u no work
22:01:06 <olsner> oerjan is the part of the group mind devoted to shortening quines
22:01:09 <micahjohnston> !slashes /*/9/*
22:01:10 <EgoBot> 9
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:01:19 <micahjohnston> fish!
22:01:20 <micahjohnston> ><>
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:03:46 <micahjohnston> !slashes /\\/*/\
22:03:47 <EgoBot> *
22:03:52 <micahjohnston> !slashes /\\/\\\\/\
22:04:00 <elliott> thats an infloop
22:04:03 <micahjohnston> oh
22:04:08 <micahjohnston> why?
22:04:13 <micahjohnston> oh xD
22:04:32 <micahjohnston> !slashes /\\/*//*/\\\\/\
22:04:57 <micahjohnston> oh tha'ts an accidentally self-modifying infloop
22:04:59 <micahjohnston> this is hard :(
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:07:13 <micahjohnston> ok
22:07:18 <micahjohnston> well, I gtg
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:17 <elliott> damn
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:07 <oerjan> hm...
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:16:12 <oerjan> two more
22:17:29 * Phantom_Hoover → sleep
22:17:31 -!- Phantom_Hoover has quit (Quit: Leaving).
22:17:45 <elliott> that boy sleeps too much.
22:18:29 <crystal-cola> I mwant to stay up forevre :(
22:18:37 <zzo38> No.
22:18:51 <zzo38> No..
22:18:54 <zzo38> No...
22:18:56 <zzo38> No....
22:18:57 <zzo38> No.....
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:21:50 <crystal-cola> I have notes to take
22:24:26 -!- augur has joined.
22:25:32 <oerjan> i see no more quotes or escapes to shave off
22:25:51 <crystal-cola> woah!
22:25:54 <crystal-cola> I just noticed that quine
22:26:03 <elliott> it's qui amazi ne
22:26:09 <crystal-cola> LOLL
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:32:02 <elliott> solmnbvcseruil
22:37:12 <olsner> sweet, embedding the RTS in the compiler was dead easy
22:37:21 <elliott> xD
22:37:30 <elliott> ur funy olsner
22:38:26 <olsner> yeah, it was surprisingly easy to output constant strings :P
22:45:58 <elliott> mgjfjfjfjfjfjfjffjfjghfjewialzmxncbvghtyrujdm\
22:46:04 <crystal-cola> elliott:
22:50:22 <elliott> <sdtyuiol,mnbgvfdewrtuiop;l.kjhgrftyuikuytrewsetdyrfugihojpknpihyutuyrdxsertwestdfxcgvbhn;kjklohuy9tyurktjdyhrgfcnhbjknkl;'[]\
22:50:25 <crystal-cola> elliott: t
22:50:36 <elliott> k,
22:50:37 <elliott> m
22:50:48 <oerjan> elliott must have had a uninitialized memory error
22:50:50 <oerjan> *an
22:51:04 <elliott> nope:|S>Þa
22:55:08 <crystal-cola> n
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:12:57 <elliott> It's fun and informative!
23:14:21 <crystal-cola> which one do you read?
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:26:16 <zzo38> What is 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:27:50 <elliott> wat
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:28:39 <Sgeo> now
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:34:14 <elliott> wait who are you
23:36:11 <crystal-cola> Yo ucan't say that
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:40:50 <oerjan> always a risk
23:41:09 <MDude> Hmm
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:41:51 <MDude> I don't think so.
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:21 <oerjan> definitely not
23:42:26 <elliott> hmm, maybe it is
23:42:32 <elliott> EsoInterpreters seems primarily about the interpreter loops to me
23:42:34 <elliott> that is
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:50 <elliott> no?
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:17 <elliott> oerjan: are you /sure/?
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:38 <elliott> hmm
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:08 <elliott> I should rectify that
23:48:15 <oerjan> aaaaaaaaaaaaaaaaaaaaa
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:01 <olsner> sounds useless
23:49:05 <elliott> O RLY
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:38 <crystal-cola> what can you compute with that??
23:49:39 <elliott> ((subtle point of the spec a lot of people miss))
23:49:42 <elliott> crystal-cola: Nothing X-D
23:49:48 <crystal-cola> lol thats dumb
23:49:55 <crystal-cola> what a terrible wast eof a language
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:15 <crystal-cola> thre is no power!
23:50:37 <elliott> There's ALL the power.
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:04 <elliott> olsner: wat?
23:51:08 <elliott> oh
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:33 * elliott cracks knuckles
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:52:58 <elliott> olsner: Yep.
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:46 <olsner> it is TC, after all
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:27 <elliott> or at least overflow
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:11 <elliott> th
23:55:12 <elliott> x
23:55:17 <oerjan> 2
23:55:21 <olsner> elliott: two
23:55:29 <elliott> olsner: >:(
23:55:34 <oerjan> olsner is so helpful
23:55:47 <olsner> time to go to sleep while I'm my helpfullest
23:56:22 <elliott> hmm
23:56:25 <elliott> can ints be templated?
23:56:30 <elliott> I think it's just structs and functions, right?
23:56:32 <elliott> plus classes and shit
23:56:56 <elliott> hmm
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
23:59:24 <elliott> god, C++
23:59:26 <elliott> you're such a bore
2011-05-04
00:00:05 <crystal-cola> I totally don't understand the errer
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:03:29 <elliott> hopy crap it works
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:16 <elliott> isn't it beautiful
00:06:26 <elliott> wow i can even lowercase them
00:06:27 <elliott> this will be perfect
00:06:35 <elliott> the output might be ... kind of hard
00:09:23 <elliott> this is going to be so awesome
00:12:20 <elliott> hmm
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:16 <elliott> sometimes they don't.
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:23 <elliott> MAYBE GO TO HELL
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:18:43 <oerjan> *MWAHAHAHA*
00:19:07 <oerjan> THEN YOU FAIL
00:19:12 <elliott> :(
00:19:13 <elliott> why
00:19:43 <oerjan> because i managed to do decimal output in both unlambda and itflabtijtslwi, despite using unary internally
00:19:48 <elliott> no no i mean
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:00 <oerjan> oh ok
00:20:06 <oerjan> go on then :)
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:15 <elliott> WHO GIVES A SHIT
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:27 <elliott> DIE
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:18 <elliott> wat
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:37 <elliott> DIEEEEEEEE
00:21:39 <elliott> DIEEEEEEEE
00:21:41 <elliott> DIEEEEEEEEEEEEEEEEEEEEE
00:21:43 <elliott> DIEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
00:21:56 <oerjan> elliott: i cut myself :´(
00:21:57 <elliott> DIEEEEEEEEEEEEEEEE
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:22:59 <oerjan> *-do
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:24:38 * oerjan mind boggles himself
00:24:44 <oerjan> MAYBE NOT
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:32 <elliott> I pasted that :P
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:15 <elliott> sdjfsojfsoidfhsi
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:06 <MDude> I guess so.
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:40 <crystal-cola> nice text boards
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:34:30 <crystal-cola> this is funny
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:36:45 <crystal-cola> elliott: according to the singularit
00:36:51 <crystal-cola> will all esolangs be invented
00:37:19 <elliott> lol
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:37:55 <elliott> but that's ok
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:41:30 <elliott> wtf
00:41:39 <oerjan> i<see>
00:41:40 <elliott> oh
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:44:54 <elliott> this sucks
00:44:57 <elliott> maybe
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:26 <elliott> wait
00:46:27 -!- pikhq has joined.
00:46:28 <elliott> i can just define my own lists
00:46:32 <elliott> i think?
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:48:32 <oerjan> sneaky
00:48:42 <pikhq> 僕のコンピュータ!
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:00 <elliott> :D
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:06 <elliott> but there is no toilet
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:49 <elliott> yes
01:18:50 <elliott> it's magical
01:18:56 <oerjan> > 5^5
01:18:58 <lambdabot> 3125
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:18 <oerjan> in mass
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:09 <oerjan> > 50^3
01:21:10 <lambdabot> 125000
01:21:23 <oerjan> so that's 125000 litres
01:21:36 <oerjan> > 125000 / 365.25 / 100
01:21:37 <lambdabot> 3.4223134839151266
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:22:59 <elliott> i.e.
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:12 <elliott> hmm
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:40 <oerjan> indeed.
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:10 <elliott> right
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:26:32 <elliott> or evaporate
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:27:41 <oerjan> ic
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 <oerjan> O KAY
01:31:01 <elliott> ask phd in mathematics about execution by shit
01:31:09 <elliott> life goal fulfilled right there
01:35:20 <elliott> fuck yes it works
01:35:29 <elliott> Although I think it outputs in reverse
01:35:51 <elliott> fixed
01:36:57 <elliott> ok, now to implement <0 and ==twofivesix
01:41:33 <elliott> it works :D
01:41:48 <elliott> http://sprunge.us/ObbQ
01:41:54 <elliott> oerjan: give me one good reason not to rewrite it for peano numbers
01:47:08 <oerjan> tricky that
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:49:33 <elliott> --CNN
01:50:13 <pikhq> Please, please tell me you're fucking with us.
01:50:24 <oerjan> maybe she was
01:50:47 <elliott> pikhq: nope
01:50:50 <elliott> http://edition.cnn.com/2011/WORLD/asiapcf/05/03/bin.laden.fake.photo/
01:50:56 <oerjan> or wait is that male
01:51:00 <elliott> in other news
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:16 <elliott> ACTUAL HEADLINE
01:51:33 <oerjan> elliott: well he _did_ shave it because of ObL dying
01:51:38 <elliott> oerjan: shut up :D
01:51:42 <elliott> you're RUINING it
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 <elliott> SHUT UP
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:25 <elliott> i untied norway
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:13 <Yahweasel> I'll unite YOUR Norway.
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:17 <elliott> I'll Nobel _your_ prize.
01:56:22 <elliott> IF YOU KNOW WHAT I MEAN
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:31 <elliott> sure hope that works
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
01:59:38 <pikhq> Only parts of me.
02:02:53 <elliott> oh man
02:02:55 <elliott> Wrap will be amazing
02:02:59 <elliott> equality...
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:34 <elliott> you mean bestiality
02:03:39 <pikhq> Sorry, yes.
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:04:32 <pikhq> Odd.
02:04:56 <elliott> you know what this means
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:37 <elliott> argh
02:06:40 <elliott> C++ is broken
02:06:51 <elliott> INS(foo, Add<N,N>)
02:06:57 <elliott> Quiz: why does this break when INS is a two-argument template?
02:06:58 <elliott> erm
02:07:01 <elliott> Quiz: why does this break when INS is a two-argument cpp macro?
02:08:40 <elliott> pikhq: GUESS
02:08:43 <oerjan> because cpp doesn't understand that the second , is nested?
02:09:01 <elliott> yep
02:09:13 <elliott> because cpp is designed for C :)
02:09:14 <elliott> it works with (), ofc
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:18:55 <elliott> lol
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:27:16 <elliott> pikhq: X-D
02:27:22 <elliott> EGO INFLATION IN PROGRESS
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:44 <elliott> it compiles
02:30:49 <elliott> % ./deadfish
02:30:49 <elliott> SSSSSSSSSSSSSSSS0
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:21 <elliott> hmm
02:31:26 <elliott> that last one isn't 16777216
02:31:27 <elliott> oh wait
02:31:30 <elliott> I stubbed out squaring
02:31:35 <pikhq> I am definitely intriguéd.
02:32:32 <elliott> time to do multiplication
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:37:58 <elliott> hi pikhq and oerjan
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:49 <pikhq> Due tomorrow.
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:21 <elliott> oerjan: what, in binary?
02:40:27 <elliott> I'm just using self-multiplication
02:40:30 <elliott> which is easy :P
02:40:30 <oerjan> well decimal probaly
02:40:35 <oerjan> *bly
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:42:11 <elliott> cuz i rule
02:42:17 <oerjan> ok
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:46:08 <elliott> are you serious
02:48:24 <oerjan> i always found it a little eerie that "two towers" was released that year
02:49:08 <oerjan> erm, the year after
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
02:54:07 <elliott> S Y N C H R O N I C I T Y
02:54:09 <elliott> ok i'll shut up now :)
02:55:46 <elliott> OR
02:55:47 <elliott> WILL
02:55:48 <elliott> I
02:59:56 <elliott> oerjan is alas dead
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:01:14 <oerjan> yes
03:01:17 <elliott> which
03:02:05 <oerjan> decimal output *grumble grumble*
03:02:53 <elliott> oerjan: well the unary one doesn't do that :D
03:02:55 <elliott> or what are you saying
03:03:17 <oerjan> yes
03:04:24 <elliott> :|
03:04:29 <elliott> http://esolangs.org/wiki/Deadfish#C.2B.2B_templates
03:04:32 <elliott> pikhq: oerjan: FINALLY
03:10:02 <pikhq> WHY DO I DESIRE SLEEP
03:10:13 <pikhq> IT IS 21:09!
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:24 <elliott> HEY
03:11:27 <elliott> OBSERVE MY IMPLEMENTATION
03:11:29 <elliott> I WORKED HARD ON THAT SHIT
03:11:35 <elliott> IT EVEN HANDLES THE WRAPPING PROPERLY
03:12:49 <oerjan> yay
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:06 <pikhq> Erm, Lorenz.
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:42 <elliott> oerjan: :'(
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:05 <oerjan> you do that.
03:59:09 <elliott> ok
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:01:14 <elliott> wait
04:01:16 <elliott> maybe you DO
04:02:32 <oerjan> i certainly live in finland, and it would be an excellent place to go to beat me up.
04:03:58 <elliott> ok
04:05:00 -!- TeruFSX has joined.
04:05:57 <elliott> ok oerjan
04:05:59 <elliott> i er
04:06:02 <elliott> why am i not sleeping
04:06:14 <oerjan> BECAUSE I PUT THE SUN THERE
04:06:31 <oerjan> *MWA*HA*HA*HA*
04:06:46 -!- comex has quit (Quit: ZNC - http://znc.sourceforge.net).
04:07:25 -!- comex has joined.
04:08:50 <elliott> OK
04:08:51 <elliott> FUCKING
04:08:52 <elliott> GOODNIGHT
04:08:53 <elliott> JESUS
04:08:53 <elliott> SHIT
04:09:50 <oerjan> nighty night
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:04 <Aesculapius> Braincopter man
06:04:06 <HackEgo> No output.
06:04:11 <coppro> oh
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:20 <Aesculapius> Well, glad I brought it up then. ^_^
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:10:26 <Aesculapius> Nope, but that's a good idea
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:03 <Vorpal> ah
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 <Aesculapius> if found
06:17:12 <oerjan> i guess they never had the resources to get everything
06:18:08 <Aesculapius> hmm.
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:22:26 <Aesculapius> pleasantly surprised haha
06:23:31 <oerjan> here on channel?
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:00 <oerjan> heh
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:14 <Aesculapius> I donno. Makes sense to me
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:29:43 <oerjan> AUM
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:45 <Aesculapius> lmao
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:37:04 <Aesculapius> http://home.uni-one.nl/m1/
06:37:32 <Aesculapius> the zip file was hosted at that page
06:37:35 <oerjan> oh so it is
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:39:41 <Aesculapius> could be it there
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:42:42 <Aesculapius> so yeah, probably
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:16 <oerjan> *mind you
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:47:36 * oerjan googles
06:47:49 <oerjan> d'oh
06:47:50 <oerjan> http://lodev.org/
06:48:46 <Aesculapius> haha well then.
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:54:29 <oerjan> oh
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:58:57 <oerjan> oh
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:00:51 <Aesculapius> sooo yeah, time to email Mr Lode
07:01:57 <oerjan> that page is freezing my browser :(
07:02:03 <oerjan> ah there
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:06:56 <Aesculapius> Hmmm.
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:43 <oerjan> anyway, good night
07:10:54 -!- oerjan has quit (Quit: ZZZZZZZZZAP).
07:27:44 <Aesculapius> Well I mailed the guy
07:28:06 <Aesculapius> I'll tell y'all if I get anything =)
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:05 <crystal-cola> this new ubuntu upgrade is horrible
12:16:54 -!- FireFly has joined.
12:16:59 <crystal-cola> 6/2(1+2)=0.999999999999999999...
12:17:13 <Phantom_Hoover> Why isn't it 1?
12:17:13 <lambdabot> Phantom_Hoover: You have 3 new messages. '/msg lambdabot @messages' to read them.
12:17:18 <Phantom_Hoover> Honestly, these programmers.
12:17:27 <Phantom_Hoover> No understanding of mathematics whatsoever.
12:19:36 <crystal-cola> 6/2(10-2*5)=...9999.9999999...
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:29:40 <crystal-cola> whats are the hams
12:30:39 -!- MSleep has changed nick to MDude.
12:31:16 <crystal-cola> hi dude
12:31:28 <MDude> Hi
12:39:26 <crystal-cola> what are the ms
12:39:46 <crystal-cola> I thought that "right wing radio" daffy duck thing was pretty funny
12:40:08 <crystal-cola> http://www.youtube.com/watch?v=HfuwNU0jsk0
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:04:53 <crystal-cola> you are so lucky
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:10:07 <crystal-cola> http://www.youtube.com/watch?v=BNHR6IQJGZs
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:16:08 <Gregor> Gray code!
14:20:39 <Gregor> Typing random keywords into Google until it finally gives you the result you want: Pretty awesome? :P
14:24:28 <lifthrasiir> Gregor: do you want the CAPTCHA?
14:24:40 <Gregor> ...???
14:25:10 <lifthrasiir> well, Google gives you a CAPTCHA when you query Google a lot
14:25:16 <lifthrasiir> in the short amount of time
14:25:26 <Gregor> My queries were not quite that fast :P
14:25:36 <lifthrasiir> :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:00 <crystal-cola> bizarre being so selectively blind
14:30:13 <crystal-cola> the same happens with words in speech
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.
15:49:33 <Phantom_Hoover> OK what is this language called Vorpal.
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:02 <elliott> :D
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:29 <crystal-cola> how do Iget rid of it :D
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:22:35 <elliott> olsner: defuze the bom
17:26:25 <olsner> no, I'm going to like put it on some piece of food and eat it with it
17:32:34 <elliott> ok
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:34:47 <Gregor> ...
17:34:50 <Gregor> *brain explodes*
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:29 <elliott> `quote
17:39:30 <elliott> `quote
17:39:30 <elliott> `quote
17:39:30 <HackEgo> 362) <Gregor> I use LiGNUXFCE+apps <Gregor> That's pronounced by saying "Linux" and then vomiting, btw.
17:39:31 <elliott> `quote
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:56:48 <crystal-cola> late??
17:57:20 <elliott> :)
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:33:43 <coppro> win 15
18:34:00 <elliott> lose 9
18:43:31 -!- Cheery has joined.
18:43:41 <Cheery> I've not been here a lot.. but I'd like to ask..
18:43:49 <elliott> everybody hide
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:44:37 <ais523_> and yes
18:44:49 <elliott> what, Finnish ostnames?
18:44:54 <elliott> h
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:02 <elliott> xD
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:06:21 <dnm_> Quotes file!
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:24 <elliott> dnm_: wat
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:08 <elliott> Why doubly
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:18:58 <Cheery> :o
19:19:04 <Cheery> it's just hidden
19:19:11 <Cheery> a = [1,2,3]
19:19:15 <Cheery> b = [1,2,3]
19:19:22 <Cheery> a[1:1] = b
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:46 <elliott> that's weird.
19:21:53 <fizzie> Anyhoo, s.insert(i, x) is specified as s[i:i] = [x].
19:22:07 <Cheery> a bit lollish
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:16 <elliott> corporate esoterism???
19:27:17 <elliott> SHEESH
19:27:18 <elliott> http://esolangs.org/wiki/Deadfish#C.2B.2B_templates
19:27:20 <elliott> look at dat.
19:27:22 <elliott> totally authentic.
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:27:55 <elliott> that too
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:18 <elliott> ais523_: psht
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:19 <elliott> ais523_: you FEAR?
19:30:25 <crystal-cola> Rosetta Code is frustrating
19:30:25 <elliott> it's awesome :D
19:30:32 <elliott> yeah but [[Deadfish]] isn't
19:30:34 <elliott> it's frustrawesome
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:38:51 <crystal-cola> otherwise it gives an error
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:39:56 <crystal-cola> that's so evil
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:37 <elliott_> hmmm
19:40:39 <elliott_> I wonder if
19:40:42 <crystal-cola> i wonder which programs are expressible
19:40:45 <elliott_> template <> struct Foo<0> {...} works
19:40:47 <crystal-cola> probably all of them, im guessing
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:43:42 <elliott_> fuk u :(
19:44:02 <coppro> LOL
19:44:34 <elliott_> hey
19:44:35 <crystal-cola> you might generate enough hashes to find one equiavlent to something +++
19:44:37 <elliott_> i think i fixed it
19:44:37 <elliott_> :DDD
19:44:42 <crystal-cola> even tohugh it does it in a really long way?
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:02 <crystal-cola> sort of like a jigsay
19:45:03 <crystal-cola> way
19:45:18 <elliott_> I'm not sure all programs are possible in ShaFuck.
19:45:21 <elliott_> well
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:45:35 <crystal-cola> but we don't have those blocks
19:45:52 <crystal-cola> what's so bad about no comments?
19:46:16 <crystal-cola> it means almost all hashes are invali?
19:46:17 <crystal-cola> d
19:46:28 <elliott_> yeah
19:46:32 <crystal-cola> ughn
19:46:43 <crystal-cola> yeah there's no way to program in this without a super computer
19:47:40 <elliott_> o m g i think it works??
19:47:55 <elliott_> it does
19:47:57 <elliott_> :DDD
19:50:52 <elliott_> % ./deadfish
19:50:52 <elliott_> 16777216
19:50:52 <elliott_> c
19:50:56 <elliott_> converted to decimal at compile-time
19:51:02 <elliott_> ok now i just need append
19:51:14 <elliott_> this is so beautiful ;_;
19:52:33 <olsner> so does it do arbitrary-precision yet?
19:53:25 <elliott_> % ./deadfish
19:53:26 <elliott_> 16
19:53:26 <elliott_> 1
19:53:26 <elliott_> 16777216
19:53:27 <elliott_> it works...
19:53:31 <elliott_> olsner: yes and no
19:53:34 <elliott_> olsner: I made a Peano arithmetic version
19:53:36 <elliott_> but it was so. slow.
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:10 <elliott_> so the definition would be ew
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:24 <elliott_> well
19:58:26 <elliott_> yeah.
19:58:27 <elliott_> hmm
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:03:41 <olsner> heh, perhaps :)
20:03:54 <olsner> and you need modulo
20:04:04 <elliott_> olsner: yeah
20:04:09 <elliott_> ok maybe decimal arithmetic will be easier
20:04:26 <elliott_> in fact
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:13 <crystal-cola> so ito's all there if you need it
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:53 <crystal-cola> the only haskell builtin type I use is int :/
20:07:54 <elliott_> and some basic pattern matching
20:07:55 <elliott_> (really basic)
20:08:05 <elliott_> crystal-cola: yep, giving you the benefits of fast multiplication :)
20:08:09 <elliott_> that doesn't recurse
20:08:10 <crystal-cola> oh he he
20:08:15 <crystal-cola> That#'s exactly wha tyoul're trying ot make
20:08:16 <crystal-cola> I see
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:08:36 <elliott_> crystal-cola: X-D
20:08:37 <elliott_> wat
20:08:48 <crystal-cola> here's a good multiplication algorithm
20:08:52 <crystal-cola> 1010101 x 110
20:08:59 <crystal-cola> well
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:02 <crystal-cola> 110 x 101011 !
20:11:02 <crystal-cola> 1100 10101 !
20:11:02 <crystal-cola> 11000 1010
20:11:02 <crystal-cola> 110000 101 !
20:11:02 <crystal-cola> 1100000 10
20:11:05 <crystal-cola> 11000000 1 !
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:11:32 <elliott_> xD
20:12:32 <crystal-cola> I guess it's kind of a stupid algorithm
20:12:43 <crystal-cola> if you turn your head sideways it's the same as the normal one
20:14:03 <elliott_> X-D
20:14:20 <crystal-cola> ><--------|)
20:14:36 <crystal-cola> entering a black hole
20:23:01 -!- ais523_ has quit (Quit: Page closed).
20:23:27 <elliott_> olsner: write me a decimals addition plz
20:23:37 <crystal-cola> why do you want decimals?? use binary
20:23:56 <crystal-cola> waste of good symbols
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:12 <crystal-cola> use decimals the whole time!!
20:24:14 <crystal-cola> err
20:24:14 <crystal-cola> binary
20:24:20 <crystal-cola> then you don't have toncvert
20:24:26 <elliott_> crystal-cola: deadfish outputs in decimal
20:24:47 <crystal-cola> I invent de0df1sh
20:24:52 <crystal-cola> which is the same as deadfish except binary
20:25:14 <elliott_> lol
20:25:38 <elliott_> meh i don't really want to write a decent multiplication algo
20:25:49 <crystal-cola> ill do it
20:25:53 <crystal-cola> how??
20:26:06 <elliott_> erm
20:26:07 <elliott_> C++
20:26:08 <elliott_> :D
20:26:09 <crystal-cola> if you have addition it should be easiy
20:26:17 <elliott_> the _naive_ algorithm is easy
20:26:25 <crystal-cola> what about the algorithm I gave above
20:26:36 <crystal-cola> you just carry a partial sum along
20:26:39 <crystal-cola> double one number, half the other
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:27:03 <crystal-cola> if you give me your addition code ill try
20:27:09 <crystal-cola> well
20:27:13 <crystal-cola> the algorithm works in any base
20:27:19 <crystal-cola> you'd be multiplying by 10 instaed of halfing
20:27:31 <crystal-cola> hmm
20:27:33 <elliott_> ah
20:27:37 <crystal-cola> maybe it doesn't work in an ybase
20:27:45 <crystal-cola> I never thougph about it before
20:27:46 <elliott_> hmm
20:27:52 <crystal-cola> becaus the odd/even thing is pretty clear
20:28:00 <crystal-cola> lets see
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:28:52 <crystal-cola> which sucks
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:25 <elliott_> olsner: yah but i'm lazy
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:12 <crystal-cola> doubling is just adding
20:30:20 <crystal-cola> halfing dunno how to do that
20:30:48 <crystal-cola> well
20:30:49 <olsner> if doubling is adding, halfing is obviously subtracting
20:31:01 <elliott_> :D
20:31:03 <elliott_> obviously
20:31:06 <elliott_> halfing lol
20:31:07 <elliott_> what a word
20:31:12 <crystal-cola> halfing 12041205210 = 1204120521*5
20:31:22 <crystal-cola> chop off a digit then double it twice then add it
20:31:31 <olsner> doublings and halflings
20:31:38 <crystal-cola> but...
20:31:45 <crystal-cola> 12041205217 = 1204120521*5 + 3
20:31:48 <crystal-cola> 3 = 7/2
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:32:22 <olsner> 3 = 7/2 = pi
20:32:33 <crystal-cola> everyone knows pi is 22/7
20:32:46 <olsner> 3 = 7/2 = 22/7 = pi
20:32:59 <crystal-cola> thats better
20:33:08 <olsner> QED :P
20:33:14 -!- sebbu2 has quit (Read error: Connection reset by peer).
20:33:22 <elliott_> im an ultrapproximist
20:33:27 <elliott_> pi is literally 22/7
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:35:38 <elliott_> :D
20:35:46 <elliott_> is pi 99? undoubtedly.
20:35:55 <crystal-cola> never heard of that before
20:35:56 <olsner> undubitably
20:36:17 <olsner> math? it's similar to the thing with numbers you were doing earlier but more advanced
20:36:29 <crystal-cola> :D
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:10 <elliott_> X-D
20:41:20 <olsner> just put the rack in the rubypants and bluecloth directly into the mojombo
20:41:23 <elliott_> git_store makes sense
20:41:30 <elliott_> (georgi is the github username I think)
20:41:52 <elliott_> mojombo too
20:41:59 <olsner> mojombo makes sense?
20:42:05 <olsner> git_store does, granted
20:42:05 <elliott_> no, it's the github username
20:42:09 <elliott_> so grit is the library name
20:42:36 <olsner> so that'd be something with git and ruby then
20:42:51 <elliott_> gay ritual incendiary teleporter
20:42:53 <elliott_> grit
20:43:12 <crystal-cola> grithub
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:16 <elliott_> WHO
20:45:16 <elliott_> KNOWS
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:46:33 <elliott_> stop being a racest olsner :/
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:03 <Cheery> or swedish people?
20:50:09 <olsner> incendiary teleporters, I think
20:50:16 <Cheery> af..
20:50:55 <Cheery> yeeauu... huh. am I done with my lisp interpreter?
20:51:02 <Cheery> :/
20:51:16 <elliott_> its not as good as zepto
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:52:24 <olsner> and it's in python
20:52:40 <Cheery> yo want control flow?
20:52:45 <crystal-cola> wow that's ridiculously short
20:52:51 <crystal-cola> you don't have lambda?
20:52:56 <Cheery> not yet no.
20:52:59 <elliott_> it doesn't have anything X-D
20:53:01 <Cheery> :)
20:53:04 <elliott_> :P
20:53:06 <crystal-cola> you should get lambda
20:53:08 <crystal-cola> that's the best one
20:55:10 <Phantom_Hoover> Hmm, Cheery doesn't seem to be a regular with a different nick.
20:55:17 <Phantom_Hoover> Welcome, Cheery, to the legion on the dam!
20:55:38 <elliott_> we are so weird.
20:55:46 <Cheery> at least it runs hello weirdos.
20:55:53 <Cheery> now to lambda
20:56:05 <Cheery> like you say it's the meat of lisp
20:56:26 <Cheery> squishy lisp AHAHAAHA
20:56:29 <Cheery> ..
20:56:29 <crystal-cola> dhhhhh
20:56:56 <Phantom_Hoover> <elliott_> it's not an interpreter without control flow :P
20:57:01 <Phantom_Hoover> Deadfish would like to disagree.
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:57:45 <elliott_> Of Daedfish.
20:57:55 <Phantom_Hoover> Yes.
20:58:00 <Phantom_Hoover> I tried to forget it.
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:41 <elliott_> Updated.
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:00 <elliott_> X-D
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:11:30 <elliott_> cheap viagrafile
21:12:48 <Cheery> ookay.. I'll need to fix that thing before I get to serious line-based programming..
21:13:15 <Phantom_Hoover> Cheery, what is a cockfile.
21:13:32 <elliott_> when a file and a file love each other very much
21:13:34 <Phantom_Hoover> Please tell me it is your word for a .v file.
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:11 <Phantom_Hoover> olsner, as in a Coq vernacular 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:25 <monqy> hi
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:19:56 <crystal-cola> zzo38: eek that sucks
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:24 <elliott_> "like"
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:05 <Phantom_Hoover> olsner, s/of//
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:28:53 <cheater8> olsner, oh shi-
21:29:05 <cheater8> zzo38, lshw
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:14 <cheater8> i don't know
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:34:52 <cheater8> "writing it"?
21:35:15 <crystal-cola> what was the misake?
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:40:14 <Phantom_Hoover> oerjan, you *know* my attitude towards BF variants.
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:12 <Phantom_Hoover> What was his hostname/
21:42:27 <Phantom_Hoover> Gregor, FIX THIS AT ONCE
21:42:28 <oerjan> well now it's that finnish thing
21:42:30 <Phantom_Hoover> OERJAN COMMANDS IT
21:42:41 <oerjan> a88-113-50-171.elisa-laajakaista.fi
21:43:07 <Gregor> They're in the raw logs.
21:43:28 <oerjan> hm true
21:47:26 <oerjan> <dnm_> Quotes file!
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:40 <oerjan> i don't know
21:52:44 <oerjan> `quote 393
21:52:46 <HackEgo> 393) <Cheery> when I command it to do couple useful operations it instead mutilates my cock.
21:52:50 <oerjan> `quote 392
21:52:52 <HackEgo> 392) <Cheery> [...] OOPS.. my cockfile got destroyed
21:52:54 <oerjan> `quote 391
21:52:55 <HackEgo> 391) <crystal-cola> 3 = 7/2
21:52:58 <oerjan> `quote 390
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:04 <oerjan> `quote 389
21:53:05 <elliott> um
21:53:05 <HackEgo> 389) <olsner> boston cream pie? sounds related to a cleveland steamer
21:53:06 <elliott> you could just search
21:53:09 <elliott> `quote .cock
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:12 <elliott> erm
21:53:13 <elliott> `quote \.cock
21:53:15 <HackEgo> 394) <Cheery> right now. but I'm about 4kiB away from a lisp interpreter running off the .cock
21:53:18 <elliott> huh
21:53:25 <elliott> Phantom_Hoover: what's the common knowledge thing
21:53:34 <oerjan> probably your memory confused it with 393
21:53:46 <Phantom_Hoover> elliott, blind spots.
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:00:22 <Phantom_Hoover> But it has a motion-triggered hose.
22:00:28 <Phantom_Hoover> And video.
22:01:07 * Phantom_Hoover → sleep
22:01:14 <elliott> YOU SLEEP TOO MUCH
22:01:27 <Phantom_Hoover> No, I just get up early.
22:01:54 <oerjan> IM IN UR UTUBE UR IN ATING
22:01:57 <elliott> Any sleep is too much sleep.
22:01:59 <elliott> oerjan: x-D
22:02:00 <elliott> ...
22:02:00 <elliott> X-D
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:06 <cheater8> why oops
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:33 <oerjan> sounds legit
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:11 <crystal-cola> not all of them
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:10:37 <crystal-cola> probaably only two at a time
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:12:09 <crystal-cola> oh if it has tentacles then yes
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:16:54 <crystal-cola> that sounds dangerous though
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:20:37 <cheater8> sure
22:20:51 <cheater8> i have a sailor's patent
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:24:25 <zzo38> OK.
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:33 <cheater8> ya
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:31:21 <zzo38>
23:32:57 <elliott>
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:48:09 <oerjan> "can"?
23:48:23 <oerjan> MEME FAIL
23:51:11 <pikhq_> *pffft*
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:08 <quintopia> pikhq_: news article?
23:55:52 <pikhq_> http://newsroom.intel.com/community/intel_newsroom/blog/2011/05/04/intel-reinvents-transistors-using-new-3-d-structure
23:56:02 <pikhq_> Press release work?
2011-05-05
00:04:45 -!- augur has quit (Remote host closed the connection).
00:08:49 <Lymia> !slashes ///
00:08:52 <Lymia> !slashes /\///
00:08:55 <Lymia> !slashes /\/// a
00:08:56 <EgoBot> a
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:00 <oerjan> yes
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:10:48 <elliott> X-D
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:24 <Lymia> See!
00:11:28 <Lymia> Random.
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:30 <Lymia> !slashes //a/
00:12:48 <oerjan> ...that doesn't really tell you much...
00:13:02 <oerjan> hm
00:13:22 <oerjan> !slashes //a/ a
00:13:23 <EgoBot> a
00:13:36 <oerjan> i guess that doesn't really either
00:13:56 <coppro> can't //.../ just be illegal?
00:13:58 <coppro> or a no-op?
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:41 <elliott> then you get \|/ :)
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:46 <EgoBot> cebefegfecfaa
00:15:49 <Lymia> !slashes ddgeaegbbc /accab/ded/ /de/cce/ /ac/gd/ /ae/bec/ /fgfdec/dbg/
00:15:50 <EgoBot> ddgeaegbbc
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:17 <coppro> oops
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:16 <elliott> not before
00:17:21 <Lymia> Ah.
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:37 <EgoBot> 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:08 <Lymia> :(
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:19:56 <EgoBot> ghuhhuhuhhuuhggh
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:20:59 <Aesculapius> quintopia - yes
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:27 * oerjan whistles innocently
00:25:45 <Aesculapius> I did a quick check and it looked like everything except those two was mirrored
00:25:52 <oerjan> yay
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:12 <oerjan> your meowmorphosis
00:28:14 <elliott> all i know is someone has to make holocaust, the musical now
00:28:16 <elliott> oerjan: oh :D
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:44 <elliott> help
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:42 <Aesculapius> Alright, updated the braincopter page.
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:01 <elliott> sigh
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:45 <quintopia> SPRINGTIME
00:49:46 -!- poiuy_qwert has joined.
00:49:47 <quintopia> FOR HITLER
00:49:49 <quintopia> AND GERMANY
00:50:07 <quintopia> WINTER
00:50:09 <quintopia> FOR POLAND
00:50:12 <quintopia> AND FRAAAAAAAAAANCE
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:03 <oerjan> *victory
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:19:17 <elliott> damn swedes
01:19:22 <elliott> quintopia: "obvious" :D
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:16 <oerjan> hm
02:36:30 <pikhq> Define "strip".
02:36:31 <pikhq> :P
02:36:56 <elliott> all I know is "strip nomic"
02:37:00 <elliott> but thats enough for me
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:37 <pikhq> Precisely.
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:28:39 <oerjan> zeerust 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).
03:59:43 <zzo38> Mozilla Rust?
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:14:40 <elliott> :D
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 <Phantom_oo> x
07:49:14 <lambdabot> Phantom_oo: You have 1 new message. '/msg lambdabot @messages' to read it.
07:49:15 <Phantom_oo> ?messages
07:49:15 <lambdabot> elliott said 22s ago:
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:12:25 <elliott> welcome back, old friend
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:43 <elliott> http://sprunge.us/XbAS
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:07:43 <elliott> sertyguhvcfyuij
11:35:43 <mtve> http://frox25.no-ip.org/~mtve/wiki/MemFractal.html
11:37:31 <elliott> that adder is pretty
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:11 <crystal-cola> elliott: stop trolling
12:06:20 <elliott> im being 9 percent sincere
12:10:51 -!- MigoMipo has joined.
12:14:42 <crystal-cola> What does "demonstrably incomplete" mean?
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:39:30 <crystal-cola> at beauty school am i right LOL
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:57:46 <cheater_> have you enjoyed it?
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 <variable> elliott: ping
13:26:13 -!- azaq23 has joined.
13:26:18 <elliott> pogn
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:26:54 <variable> today is voting day - right?
13:27:00 <elliott> yes
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:30 <variable> What do you mean?
13:29:37 <crystal-cola> AV is so complicated
13:29:44 <crystal-cola> It will cost tax payers trillions of dollars
13:29:45 <elliott> crystal-cola: you're joking right?
13:29:48 <variable> AV = IVR - right?
13:29:53 <crystal-cola> It means that the BNP get to choose who wins
13:29:56 <elliott> variable: if by IVR you mean IRV then yes
13:30:00 <elliott> crystal-cola: trololololololol :)
13:30:04 <variable> elliott: erm yeah - typo ;-)
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:31 <elliott> dunno?
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:33:49 <variable> o.O
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:28 <variable> yeah.
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:35:47 <elliott> it's a bunch of bullshit
13:36:15 <crystal-cola> http://gowers.wordpress.com/2011/04/20/is-av-better-than-fptp/
13:36:21 <crystal-cola> Gowers is against first past the "post"
13:36:30 <elliott> "post"
13:36:37 <elliott> BUT WHAT IS POST
13:36:56 <crystal-cola> http://www.andrew-mitchell-mp.co.uk/images/winner_under_av.jpg
13:37:17 <elliott> yeah, that shit
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:38:46 <elliott> It's impolite
13:40:39 <crystal-cola> http://2.bp.blogspot.com/-VipbwQnEqwk/TWS9XAo9OOI/AAAAAAAAK8I/DoL0NdDAAWk/s1600/No2AV-baby-poster.jpg
13:41:21 <crystal-cola> if you vote for AV this baby will die!
13:41:27 <crystal-cola> http://blogs.telegraph.co.uk/news/files/2011/05/no-to-av.jpeg
13:41:29 <crystal-cola> and this one!
13:41:49 <variable> :-\
13:42:05 * variable *really* hates stupidity
13:42:36 <elliott> oh god i love that figure thing
13:42:36 <elliott> like
13:42:42 <elliott> i read the no leaflet
13:42:50 <elliott> they list all these costs right
13:42:53 <elliott> that adopting av would have
13:42:54 <elliott> and then
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:25 <elliott> because fuck you :)
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:22 <crystal-cola> instead of just a cross for the one you want
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:43 <Sgeo_> Antivirus
14:35:50 <elliott> Gregor: IRV
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:04 <elliott> I'm a wonderful person
14:36:23 <Gregor> Thank you, elliott, for giving me the data I actually wanted :P
14:36:34 <crystal-cola> ??
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:21 <crystal-cola> it's called AV
14:37:25 <elliott> No, it's not.
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:34 <elliott> It's called IRV.
14:37:34 <crystal-cola> fuck you guyts
14:37:36 <Gregor> AV is a retarded name.
14:37:39 <elliott> crystal-cola: what
14:37:40 <Gregor> AV means "alternative voting"
14:37:43 <crystal-cola> you're retarded
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 <Gregor> elliott: Oh, sorry :P
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:04 <Sgeo_> AFK
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:28 <Gregor> Yesssssssssss
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:42:52 <elliott> pikhq: ?
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:45:57 <elliott> I wasn't a cunt.
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:47:46 <Gregor> ... bahahahaha.
14:47:48 <Gregor> Wow.
14:48:15 <Gregor> I didn't realize crystal-cola was such an expert in extreme overreaction to near-zero offense.
14:50:19 <elliott> Gregor: Uh, seriously?
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:14 <crystal-cola> fucking assholes
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:27 <elliott> It's... so beautiful...
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:53 <elliott> Yess
14:54:55 <elliott> Yesssss
14:54:58 <elliott> I just pinned the new tab page
14:55:00 <elliott> Yessssssss
14:58:56 <crystal-cola> someone should bash your snotty fucking stuck up headin
14:59:05 <elliott> I'M EXTREMELY OFFENDED
14:59:07 <elliott> YOU ASSHOLE
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.
14:59:31 <Gregor> lol
14:59:33 <elliott> I don't see the appeal...
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:18:59 <elliott> thats britain for you
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:21:30 <Gregor> Pretty much.
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:22:57 <elliott> that hurt
15:23:00 <elliott> how did i manage that
15:23:31 <Gregor> Carefully
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:27:56 <elliott> Noted.
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:34:32 <elliott> See to it.
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:48:58 <Gregor> Huh
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:27 <Gregor> lololol
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:17 <elliott> thats HackEgos opinion
17:16:21 <Gregor> X-D
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:28 <elliott> Heyyy
17:16:32 <elliott> This is just like last time crystal-cola got banned
17:16:34 <Gregor> Bahahahaha
17:16:52 <elliott> Im reminiscing :3
17:17:13 <Phantom_Hoover> Gregor, hmm, why is this happening/
17:17:33 <elliott> Phantom_Hoover:
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:39 <elliott> [...]
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:19 <crystal-cola> [A
17:18:22 <crystal-cola> Gregor: You deserve to get your head bashed in
17:18:37 <Phantom_Hoover> Remind me where oerjan is.
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:19:50 <Phantom_Hoover> This is better than last time, at least.
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:29 <Phantom_Hoover> elliott, yeah, that's what I mean.
17:21:30 <Gregor> X-D
17:21:31 <crystal-cola> Go away asshole
17:21:44 <elliott> crystal-cola: You're a drama-whoring overreacting many-times-more-asshole who can't see this message.
17:21:46 <elliott> God this is fun.
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:04 <Phantom_Hoover> Oi!
17:23:06 <Phantom_Hoover> I want in!
17:23:20 -!- Lymia has joined.
17:23:20 -!- Lymia has quit (Changing host).
17:23:20 -!- Lymia has joined.
17:28:39 <crystal-cola> fuck you
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:13 <elliott> Nor does any holiday :P
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:24 <coppro> Boxing Day does not
17:39:39 <elliott> So, uh, valid holidays are about consumerism, nationalism or getting drunk.
17:39:46 <Gregor> Mostly consumerism.
17:39:49 <Lymia> By that notion, the only holiday worth celebrating is....
17:39:51 * Lymia checks
17:39:52 <elliott> And getting drunk.
17:39:53 <elliott> And nationalism.
17:39:57 <monqy> what's a holiday
17:39:59 <Lymia> None of them.
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:15 <Gregor> Bahaha
17:43:17 <elliott> probably both
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:37 <elliott> im poplar
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:49 <elliott> im poplar
17:43:53 <Gregor> elliott is a tree.
17:43:58 <elliott> coppro: Are you using write-only IRC?
17:43:58 <Lymia> wat
17:44:01 <coppro> elliott: your bipoplar
17:44:04 <coppro> elliott: yes
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 <elliott> THREE SPACES
17:45:10 <Gregor> Enough `addquotes for me for the day :P
17:45:11 <elliott> HERESY
17:45:16 <elliott> `delquote 397
17:45:17 <HackEgo> *poof*
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:36 <Gregor> `delquote 397
17:45:37 <HackEgo> *poof*
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:41 <elliott> ...
17:45:47 <elliott> Nice Peano skills dude
17:45:48 <Lymia> `delquote 398
17:45:49 <HackEgo> *poof*
17:45:53 <elliott> `delquote 397
17:45:54 <HackEgo> *poof*
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:01 <Gregor> 8-D
17:46:05 <Gregor> SO MANY QUOTES
17:46:05 <elliott> `run rm bin/{delquote,addquote}
17:46:07 <elliott> SEE IF I DON'T
17:46:11 <elliott> Gregor: ...AARGH X-D
17:46:13 <elliott> `quote 397
17:46:15 <HackEgo> 397) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:46:17 <elliott> DERP DERP DERP
17:46:21 <elliott> `quote 397
17:46:22 <HackEgo> 397) <Gregor> Write-only IRC: best idea <coppro> Gregor: we have that. It's called Twitter
17:46:28 <elliott> `delquote 397
17:46:29 <HackEgo> *poof*
17:46:34 <monqy> `quote 397
17:46:34 <Gregor> HackEgo: Best system ever?
17:46:35 <HackEgo> 397) =======
17:46:35 <elliott> ten nine eight seven
17:46:37 <elliott> `delquote 398
17:46:38 <HackEgo> *poof*
17:46:41 <elliott> bahahaha
17:46:42 <elliott> failed merge
17:46:44 <elliott> ahahahaahah
17:46:47 <elliott> `delquote 399
17:46:48 <HackEgo> No output.
17:46:50 <monqy> ======= is a good quote
17:46:54 <elliott> `run paste quotes
17:46:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.23664
17:47:03 <elliott> `quote 399
17:47:04 <HackEgo> No output.
17:47:06 <elliott> `quote 398
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:13 <elliott> `delquote 397
17:47:14 <HackEgo> *poof*
17:47:19 <elliott> `run paste quotes
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:47:54 <elliott> monqy: RIP
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:08 <Gregor> `cat /etc/passwd
17:50:09 <HackEgo> No output.
17:50:14 <Gregor> I IS HAXER
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:50:59 <Phantom_Hoover> `delquote 396
17:50:59 <HackEgo> *poof*
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:28 <monqy> `quote 396
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:00 <Lymia> Gregor.
17:52:02 <elliott> <Phantom_Hoover> `delquote 396
17:52:04 <elliott> What was that quote?
17:52:14 <Phantom_Hoover> The one about nationalism.
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:23 <Lymia> Fine.
17:52:24 <Lymia> :<
17:52:25 <Lymia> elliott.
17:52:26 <elliott> Phantom_Hoover: Why did you delete it GREGOR ADDED THAT QUOTE
17:52:26 <Lymia> I will stop.
17:52:27 <elliott> `help
17:52:28 <Phantom_Hoover> It wasn't actually, y'know, *funny*.
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:33 <elliott> SHUT UP
17:52:35 <elliott> I WILL ENABLE
17:52:36 <elliott> FUNNINESS
17:52:38 <Lymia> D=
17:52:44 <Lymia> `run wget www.google.com
17:52:46 <HackEgo> No output.
17:52:48 <Lymia> `ls
17:52:49 <HackEgo> babies \ bin \ bluhbluh \ env \ foo \ index.html \ paste \ ps \ quine \ quotes \ test.c \ tmpdir.15537
17:52:51 <elliott> `revert 256
17:52:52 <HackEgo> Done.
17:52:55 <elliott> I LOVE POWERS OF TWO
17:52:56 <monqy> babies????
17:53:02 <elliott> `quote 396
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:31 <lifthrasiir> `run seq 1 1 10000000
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:35 <elliott> `fuck
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:46 <elliott> .
17:53:46 <lifthrasiir> `run seq 1 1 10000000 | paste
17:53:51 <Lymia> `run mkdir seq 1 1 10000000
17:53:53 <HackEgo> No output.
17:53:54 <Lymia> Erm
17:53:54 <lifthrasiir> hg commit attack.
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:06 <lifthrasiir> ha!
17:54:08 <Lymia> `ls
17:54:11 <Phantom_Hoover> Lymia, FWIW, HE is extremely sandboxed.
17:54:11 <HackEgo> babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ test.c \ tmpdir.15965
17:54:16 <HackEgo> No output.
17:54:23 <Lymia> Phantom_Hoover, not even mkdir spam will work?
17:54:26 <Lymia> :3
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:15 <Lymia> Gregor.
17:55:21 <Lymia> Does freenode have a connection limit?
17:55:22 <elliott> Lymia: PING STOP IT
17:55:24 <elliott> sjgdfgg
17:55:25 <Gregor> Lymia!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
17:55:35 <Gregor> Lymia: Probably? :P
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:36 <Lymia> Gregor.
17:56:41 <Lymia> Download a script that connects to IRC.
17:56:42 <Lymia> Execute it.
17:56:45 <Lymia> (opps i did it again)
17:56:50 <Gregor> Networking is protected.
17:56:54 <Gregor> `run echo $http_proxy
17:56:55 <HackEgo> http://127.0.0.1:3128
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:28 <Lymia> Crap.
17:57:53 <Gregor> `run unset http_proxy; curl http://www.google.com/
17:57:55 <HackEgo> No output.
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:00 <lifthrasiir> `run netcat
17:59:01 <HackEgo> No output.
17:59:09 <lifthrasiir> `run nc
17:59:10 <HackEgo> No output.
17:59:21 <lifthrasiir> `run ls /bin/
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:47 <monqy> me too :(
18:00:51 <Gregor> Imagine there was a comma after the "no"
18:00:58 <elliott> yes
18:00:59 <elliott> thats where it should be
18:01:01 <elliott> thats what i intended
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:02:43 <Phantom_Hoover> How are we defining "hack" here?
18:03:00 <lifthrasiir> ah i misunderstood your sentence. got it.
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:00 <elliott> isn't that right newbie|2
18:04:06 <lifthrasiir> lol
18:04:10 <lifthrasiir> sense*
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:06:58 <elliott> oerjan: shaddap :)
18:07:04 <Phantom_Hoover> http://www.reddit.com/r/todayilearned/comments/h4vrv/til_the_highest_temperature_ever_reached_on_earth/
18:07:11 <oerjan> (neither did i)
18:07:19 <Phantom_Hoover> OK I badly want to hit the idiot who wrote that in Fahrenheit.
18:07:28 <lifthrasiir> `run pwd
18:07:29 <HackEgo> /tmp/hackenv.17336
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:01 <Phantom_Hoover> What's B Nomic?
18:08:06 <Gregor> Nooooooooooooose
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:32 <Phantom_Hoover> Gregor, yes. Yes I do.
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:13 <Phantom_Hoover> Fahrenheit was just designed stupidly from the start.
18:10:14 <elliott> furlongs, fortnight, firkin, fuckin
18:10:23 <oerjan> elliott: *procreation
18:10:31 <elliott> intercourse
18:10:44 <monqy> fintercourse
18:10:51 <monqy> fprocreation
18:11:14 <elliott> offering prize for first pronunciation of "fprocreation" that blends the f and p into one consonants
18:11:16 <elliott> consonant
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:14:50 <Gregor> Naturally.
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:02 <Gregor> Agreed :P
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:22:23 <Phantom_Hoover> Voiceless labial plosive.
18:22:49 <elliott> tahts waht seh saied
18:23:05 <Phantom_Hoover> I am a master of manipulation.
18:23:44 <oerjan> manipulation, from latin "manus", hand: pulling someones finger
18:23:48 <oerjan> *'s
18:24:16 <elliott> i should write
18:24:19 <elliott> the best bf joust compiler
18:24:19 <elliott> ever
18:24:20 <elliott> OR
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:17 <elliott> I approve :P
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:35 <Phantom_Hoover> Which languages do you hate?
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:22 <elliott> TO THE FUTURE
18:29:26 <Phantom_Hoover> Gregor, your hatred of Lisp still perplexes me.
18:29:37 <Gregor> Phantom_Hoover: Syntax. I ♥ syntax.
18:29:52 <monqy> ew 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:56 <Phantom_Hoover> Gregor, it gets better.
18:31:57 -!- augur has quit (Remote host closed the connection).
18:32:07 <Phantom_Hoover> It uses Comic Sans
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:19 <elliott> I feel BETRAYED.
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:33:55 <elliott> monqy: no
18:34:06 <oerjan> surprise answer there
18:34:11 <elliott> Phantom_Hoover: you weren't kidding with comic sans :D
18:34:20 <elliott> omg
18:34:23 <elliott> double exclamation marks
18:34:24 <elliott> this cant get better
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:00 <Phantom_Hoover> proposed method of proof (see Appendix B). ]]
18:35:18 <oerjan> maybe they are upvoting for the humor value
18:35:27 <elliott> Appendix E
18:35:28 <elliott> List of program (in Visual Basic 6) to produce the equation system (8).
18:35:30 <Phantom_Hoover> oerjan, it was at 0, oddly enough.
18:35:39 -!- impomatic has left.
18:35:51 <oerjan> Phantom_Hoover: oh? maybe you saw it just as it was posted.
18:36:18 <elliott> twelve hours old
18:36:21 -!- augur has joined.
18:36:51 -!- augur has quit (Remote host closed the connection).
18:36:58 <elliott> "TEDxCharlotte
18:37:03 <elliott> x -- independently organized TED event"
18:37:06 <elliott> this video can do no wrong already
18:37:14 <elliott> VORTEX BASED MATHEMATICS
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:02 <Phantom_Hoover> oerjan, GET OUT OF HERE WITH YOUR "FACTS"
18:38:02 <monqy> vbm
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:38 <elliott> coppro: oh, is it?
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:40:13 <Phantom_Hoover> elliott, yeah, this is hilarious.
18:40:19 <monqy> I'm laughing
18:40:41 <Phantom_Hoover> Whee, numerology!
18:41:18 <Phantom_Hoover> OK commentary cannot express this.
18:41:42 * elliott starts watching
18:41:48 <elliott> wow
18:41:51 <elliott> two minutes in this is amazing
18:41:57 <monqy> I'm 4 minutes in
18:41:58 <monqy> double-amazing
18:42:02 <elliott> end all diseases
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:04 <elliott> produce unlimited food
18:42:09 <elliott> oh god this is like
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:28 <elliott> NUMBERS ARE REALITY
18:42:31 <elliott> NEITHER FLAT NOR ARBITRARY
18:42:50 <Phantom_Hoover> "At the centre of electricity is magnetism"
18:42:53 <elliott> X-D
18:42:57 <elliott> This is amazing.
18:43:00 <Phantom_Hoover> James Clerk Maxwell wants a word with you
18:43:03 <Phantom_Hoover> OMG SBURB LOGO
18:43:06 <elliott> OH MY GOD THREE MINUTES IN ITS FREEMASON SYMBOL
18:43:11 <Phantom_Hoover> IT ALL MAKES SENSE
18:43:14 <elliott> Conclusion: Sburb is freemasonry.
18:43:15 <monqy> how many drugs
18:43:19 <Phantom_Hoover> SBURB WAS MADE BY THE FREEMASONS
18:43:19 <oerjan> Phantom_Hoover: well it's true in a yin-yang sort of way
18:43:20 <Phantom_Hoover> YES
18:43:20 <elliott> monqy: all the drugs
18:43:21 <elliott> all of them
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:45 <Phantom_Hoover> "Negative backdraft counterspace"
18:43:46 <elliott> OUR BODY IS CALLED THIS MORTAL COIL
18:43:48 <elliott> OUR DNA IS A COIL
18:44:05 <elliott> IMPLODING EXPLODING MACHINE
18:44:12 <elliott> AN ANTENNA BUILD TO PERFECTLY TRANSMIT AND RECEIVE WAVEFORMS
18:44:18 <Phantom_Hoover> Apparently tori are heat sinks.
18:44:47 <elliott> DOUBLING.
18:44:48 <Phantom_Hoover> Apparently the universe has a North and South.
18:44:53 <monqy> "i call it an inertia ether" -- albert einstein
18:44:56 <elliott> THE BINARY CODE IS DOUBLING
18:44:59 <elliott> O RLY
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:22 <Phantom_Hoover> Also a flying saucer.
18:45:29 <Phantom_Hoover> He;
18:45:34 <elliott> oh wow
18:45:36 <Phantom_Hoover> He's just sticking words together now.
18:45:39 <elliott> tachyons gravitons monopoles
18:45:42 <elliott> hahahahaha he just like
18:45:49 <Phantom_Hoover> And he's apparently made a desktop black hole.
18:45:50 <elliott> strung together fifteen random hypothetical particles
18:45:56 <elliott> and called them all the same thing
18:45:58 <elliott> also dark energy etc
18:46:03 <elliott> this is amazing
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:34 <elliott> REMIND YOU OF ANYTHING
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:19 <elliott> unievrsal geometry
18:47:27 <elliott> monqy: does the music ever stop
18:47:29 <elliott> tell me it never stops
18:47:33 <monqy> it stops :(
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:17 <elliott> gf'cvxc
18:48:17 <elliott> c
18:48:39 <elliott> space time implosion feild generator
18:48:41 <elliott> how long was that fucking name
18:48:42 <elliott> gejesus
18:48:43 <Phantom_Hoover> Yeah, I think the commentary basically doesn't help here.
18:48:47 <Phantom_Hoover> Just watching it is enough.
18:48:56 <elliott> god no this is amazing i have to share this with the whole world
18:49:21 * Phantom_Hoover watches the first lecture, reads comments
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:27 <elliott> while scary noises play
18:49:33 <elliott> and he talks about curing diseases
18:49:35 <elliott> its pretty fucking disturbing
18:49:38 <Phantom_Hoover> Modular arithmetic: invented in the 21st century.
18:50:02 <elliott> unwillingness to sell it out
18:50:04 <elliott> idaioasodhasodoiasdhaiodasdh
18:50:21 <elliott> oh my god
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:31 <elliott> dudes
18:50:32 <elliott> lets so watch this
18:50:34 <elliott> should we watch this guys
18:50:35 <monqy> yes
18:50:48 <elliott> http://www.youtube.com/watch?v=7pvuTZ5u6Kg
18:50:52 <elliott> lets do this man
18:50:58 <Phantom_Hoover> where doing this bro
18:51:26 <elliott> where making it transpire
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:01 <monqy> yes
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:22 <Phantom_Hoover> monqy, are you makin this hapen
18:52:30 <monqy> yes i am makin this hapen
18:52:36 <elliott> yo uforgot the g dishpit
18:52:39 <elliott> dishpit :D:D:DD:
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:52:58 <elliott> oerjan: well yes :D
18:53:18 <elliott> MOST
18:53:18 <elliott> GREAT
18:53:19 <elliott> NAME
18:53:19 <elliott> OF
18:53:20 <elliott> GOD
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:48 <elliott> for this
18:53:50 <elliott> as in
18:53:51 <Gregor> oerjan: UR WELCUM
18:53:52 <elliott> a voting system
18:53:56 <Gregor> More fairly, in some systems abstentions are considered as "no"s
18:54:07 <Phantom_Hoover> Numbers are music!
18:54:16 <Gregor> Phantom_Hoover: Music is pornography!
18:54:18 <monqy> 1 2 3 4 5 6 7 8 9
18:54:35 <Phantom_Hoover> Gregor, pornography is a tree!
18:54:44 <elliott> oh my god
18:54:45 <elliott> base tenism
18:54:49 <Phantom_Hoover> Apparently 123456789 are the only digits.
18:54:51 <Gregor> Phantom_Hoover: Trees are made of sand!
18:54:53 <elliott> ahahahaah
18:54:57 <Phantom_Hoover> ZERO IS A FICTION
18:54:59 <elliott> numerology
18:55:00 <elliott> numerology
18:55:03 <elliott> and computer science
18:55:13 <oerjan> sand is made of the ground sould of the damned
18:55:18 <oerjan> *souls
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:39 <Phantom_Hoover> elliott, don't, he might believe it.
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:48 <Gregor> elliott: lolwut?
18:55:49 <elliott> Phantom_Hoover: come on hes just a crackpot not an idiot
18:55:51 <elliott> Gregor: yep
18:55:55 <elliott> Gregor: watch and learn bitch
18:56:00 <Phantom_Hoover> All the functions of math!
18:56:15 <Phantom_Hoover> NO OTHER KNOWN FUNCTIONS
18:56:16 <elliott> wat.........
18:56:31 <elliott> ohmy god im laughing so much
18:56:37 <elliott> bology
18:56:40 <Phantom_Hoover> Apparently +-*/ are the only functions.
18:56:43 <Gregor> # aptitude remove trac
18:56:45 <Gregor> *sigh of relief*
18:56:49 <elliott> Gregor: no
18:56:49 <elliott> PURGE
18:56:50 <elliott> not remove
18:56:51 <elliott> PURGE
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:10 <oerjan> BURN AND PURGE
18:57:11 <elliott> one universe
18:57:26 <elliott> next numberaaAHAHAHAHA
18:57:31 <elliott> QHOihzAHAHAHAHAHAHAHAHAHAHA|_+GAw\\
18:57:34 <monqy> thanks for doubling
18:57:34 <elliott> ahshah\fhghy
18:57:35 <elliott> hj
18:57:42 <Phantom_Hoover> Apparently 2*8%10 is 7.
18:57:53 <monqy> 8 dobuled is 16 and 6+1 is 7
18:57:58 <Phantom_Hoover> YES
18:58:04 <Phantom_Hoover> He's clearly a programmer.
18:58:11 <Phantom_Hoover> If it's off by one, just fudge it.
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:31 <elliott> structure is for fages
18:58:45 <Gregor> Darn those phages.
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:58:59 <elliott> and one plus one is two
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:01 <Phantom_Hoover> Unless... I ADD FIVE
19:00:20 <monqy> goodbye part 1 hello part 2
19:00:20 <Phantom_Hoover> Apparently doubling is essential to vibration.
19:00:26 <elliott> source of all motion
19:00:28 <Phantom_Hoover> I have to to English now, regrettably.
19:00:39 <Phantom_Hoover> WAIT TIL I'M BACK GUYS
19:00:40 <elliott> no no no keep going this is amazing
19:00:43 <elliott> well im going on fuck you
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:11 <elliott> its so amazing
19:01:32 <elliott> infinity of deration
19:01:33 <Phantom_Hoover> Apparently differentiation occurs after 64 cells are formed.
19:01:41 <elliott> it adds an axis
19:01:49 <elliott> to c to c to c is doubling
19:02:03 <Phantom_Hoover> That's true, actually.
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:28 <elliott> or a geometric progresion
19:02:31 <monqy> !!!!
19:02:32 <elliott> another example of doubling
19:02:35 <Phantom_Hoover> Did he just say neutrino rather than neutron
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:16 <elliott> point one two five
19:03:18 <elliott> which equals eight
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:33 <elliott> three
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:07:43 <elliott> omg
19:07:46 <elliott> nine odubled is eighteen
19:07:48 <elliott> one plus eight is nine
19:07:49 <monqy> 9
19:07:50 <elliott> nine doubled is nine
19:07:51 <monqy> 9
19:07:53 <monqy> 9
19:07:55 <elliott> 9
19:07:55 <elliott> 9
19:08:04 <elliott> omg nine is in a loop with itself
19:08:06 <elliott> kink
19:08:07 <elliott> y
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:27 <monqy> pretty much
19:08:30 <Gregor> Because base-10 is perfection for some retard reason.
19:08:31 -!- cheater15 has joined.
19:08:36 <cheater15> #hisoteric
19:08:49 <monqy> oh dang another board
19:08:50 <Gregor> #historectomy
19:08:53 <elliott> Gregor: Digital roots, man. Common in numerology and computer science.
19:09:03 <elliott> multiplication tables yay
19:09:15 <elliott> im sorry for the primtive board
19:09:18 <elliott> primitive bored
19:09:18 <Gregor> elliott: So long as by "computer science" you mean "literally every field other than computer science and music" :P
19:09:21 <monqy> 5 6 7 8 9
19:10:00 <cheater15> monqy, what board?
19:10:10 <monqy> vortex math man
19:10:21 <cheater15> url
19:10:21 <elliott> never any redundancy
19:10:29 <cheater15> U R L
19:10:33 <cheater15> NAO
19:10:35 <elliott> monqy: part three yay
19:10:37 <elliott> this is is ofun
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:10:51 <elliott> Gregor: no
19:10:52 <elliott> tedx talk first
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:38 <elliott> i know i am
19:11:47 <monqy> so looking forward to it
19:11:59 <elliott> what do you mean by mirrors
19:12:00 <elliott> the one and the eight
19:12:03 <elliott> they dont look like mirrsors
19:12:06 <monqy> you don't have 10 fingers you have .5
19:12:10 <elliott> ...haha what
19:12:12 <elliott> does he say that
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:36 <elliott> and one plus one is two
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:06 <monqy> sorry
19:14:09 <monqy> 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:14:51 <elliott> cant wait
19:15:07 <elliott> twelve, which is three
19:15:19 <elliott> i could go to twetny but im back here
19:15:23 <elliott> keepin it real
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> Seems to match.
19:15:45 <elliott> CliveSinclairZX 5 months ago
19:15:45 <elliott> never stop learning
19:15:45 <elliott> CliveSinclairZX 5 months ago
19:15:46 <elliott> Reply
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:15:56 <elliott> jscotthales 1 month ago
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:12 <elliott> for once
19:16:12 <elliott> i agree
19:16:16 <elliott> hahaha
19:16:17 <Gregor> Nine was Yahweasel's former name.
19:16:19 <elliott> monqy:
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:26 <elliott> ...:'(
19:16:30 <elliott> is Gregor watching
19:16:32 <monqy> school is lame unlike vortex math
19:16:34 <Gregor> elliott: Nope :P
19:16:35 <elliott> i guess ill wait for ph
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:16:56 <elliott> --reddit
19:17:09 <cheater15> elliott: you're educated STUPID
19:17:23 <Gregor> With your oneist faggot god.
19:17:30 <elliott> moar like onanist
19:17:35 <cheater15> 1-ist
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:27 <oerjan> ah.
19:19:27 <elliott> ...why kne...
19:19:28 <elliott> ...why...
19:19:30 <elliott> knee
19:19:41 <elliott> my knee was like
19:19:42 <elliott> durp
19:19:44 <elliott> heres my chance for fame
19:19:45 <elliott> bonk
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:36 <elliott> karma
19:20:37 <cheater15> because that would be really funny
19:20:37 <elliott> karma sutra
19:20:41 <elliott> itym kama
19:20:43 <oerjan> oops
19:20:46 <oerjan> right
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:11 <oerjan> *y
19:21:13 <Gregor> ... "quaint"
19:21:17 <elliott> Gregor: yeah
19:21:22 <elliott> oh them oldies trying on the pornography
19:21:23 <oerjan> _or_ maybe i'm just shit at typing.
19:21:25 <elliott> how cute
19:21:33 <elliott> how adorable
19:22:27 <oerjan> well i wouldn't know.
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:26:59 <elliott> no
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:05 <oerjan> also e isn't here.
19:29:11 <elliott> oh indeed.
19:29:14 <elliott> when did that happen.
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:30:04 <oerjan> huh.
19:33:04 <oerjan> 10:45:07 --- quit: crystal-cola (Read error: Operation timed out)
19:33:07 <oerjan> from tunes
19:33:36 <oerjan> two minutes before i joined
19:33:55 <oerjan> wait...
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:08 <elliott> oerjan: ?
19:34:12 <oerjan> elliott: it _is_ in the non-raw logs, you rascal
19:34:16 <elliott> is it
19:34:19 <elliott> ok i didnt check
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:26 <cheater15> zzo38, many, many ranks.
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:05 <elliott> t
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:35:58 <cheater15> no, it's impossible
19:36:00 <cheater15> physically
19:36:12 <zzo38> OK.
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:46 <zzo38> OK.
19:38:48 <oerjan> 17 minutes, it seems
19:38:58 <zzo38> Then it means I am too late
19:40:39 <oerjan> "late, as in late dentarthurdent"
19:41:05 <oerjan> *the
19:42:58 <elliott> the late zzo38
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:44:38 <elliott> Or someTHING.
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:32:41 <comex> I love 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:44:59 <pikhq_> And 5 tests.
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:36 <Sgeo> hmm, ty
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 <cheater15> no, it was a girl.
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:00:12 <Gregor> X-D
21:00:46 <olsner> kinky
21:01:37 -!- Sgeo has quit (Ping timeout: 258 seconds).
21:20:31 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:24:10 <elliott> nn;kl/
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:24:57 <elliott> monqy: excuse me
21:25:01 <elliott> monqy: were not only watching them
21:25:04 <elliott> were watching the advanced tier
21:25:09 <elliott> just ... not today :D
21:25:15 <monqy> im watching advanced right now
21:25:23 <elliott> without even doing the intro
21:25:24 <elliott> how could you
21:25:27 <elliott> youre not fucking prepared
21:25:29 <elliott> this is irresponsible
21:25:30 <elliott> im disgusted
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:27:57 <elliott> hes never going to escape
21:28:01 <elliott> the math vortex
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:10 * Phantom_Hoover → sleep
21:32:15 <tswett> oerjan: yep.
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:34:31 <oerjan> :D
21:34:38 * oerjan was about to say
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:28 <tswett> Between whose?
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:23 * tswett nods.
21:40:29 <pikhq> tswett: If you're using Haskell, you might want to use the CPS monad...
21:40:39 <oerjan> indeed
21:40:51 <oerjan> @src Cont
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:49 <tswett> Oh well.
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:44:56 <elliott> ais523: WE ARE AWAY
21:44:58 <elliott> AWARE
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:52:14 <tswett> Neato.
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:08 <tswett> Lovely.
21:55:22 <elliott> eval for yourself
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:01 <elliott> antoine de saint-expry
21:57:28 <oerjan> *exupery
21:57:35 <elliott> whooosh
21:57:37 <elliott> <oerjan> oh wait i missed expry
21:57:48 <oerjan> AND AGAIN
21:57:59 <elliott> I AM CONFUSED
21:58:05 <oerjan> i guess i'm just not expryenced
21:58:21 <elliott> oh wait
21:58:23 <elliott> you mean i actually won
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:58:58 <elliott> I WIIIIIN
21:59:03 <oerjan> okay.
21:59:08 <elliott> also
21:59:10 <elliott> did you notice the
21:59:11 <elliott> DUAL pun
21:59:16 <tswett> oerjan: indeed.
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:36 <elliott> [shades]
21:59:41 <tswett> And now for the fun thing: apply PCallCC exprx cont
21:59:47 <elliott> oerjan: shades
21:59:54 <elliott> shades shades shades
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:29 <elliott> oerjan:
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:31 <elliott> expry wasmissing
22:01:34 <elliott> nothing left to take away
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:10 <cheater15> "interesting ways" XD
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:02:46 <elliott> yeah...
22:03:50 <cheater15> lrn2awk
22:04:05 <oerjan> tswett: = apply exprx cont cont afaict
22:04:18 <oerjan> modulo type wrappers
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:34 <antndsnt-expry> perfection is achieved
22:04:37 <tswett> oerjan: that could easily be something like it.
22:04:41 <antndsnt-expry> not when there are no more vowels to add
22:04:41 <tswett> Or, perhaps, it.
22:04:46 <antndsnt-expry> but when there are no more vowels left to take away
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:07 <cheater15> ok... debugfs is INSANELY slow.
22:05:12 <tswett> oerjan: yeah, I should probably be more nervous about that.
22:05:29 <cheater15> why is debugfs THIS slow?
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:06:58 <antndsnt-expry> oerjan: how are your MORPHISMS
22:07:01 * antndsnt-expry continues smashing shades indiscriminately against oerjan's head
22:07:21 <cheater15> mighty morphisms?
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:08:50 <oerjan> excellent
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:20 <tswett> elliott: yes.
22:11:24 <elliott> yay
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:06 <elliott> hmm
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:14:37 <elliott> the shades...
22:14:38 <elliott> ...
22:14:41 <elliott> ...have left the building
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:47 <oerjan> er
22:18:58 <oerjan> *apply (PCont c) exprx cont = returnTo c exprx
22:21:17 <tswett> Where did R come from?
22:21:25 <oerjan> reified
22:22:13 * tswett nods.
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:19 <tswett> Aye?
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:24:08 <tswett> Yes, you're right.
22:25:00 <oerjan> except i thought apply should have _both_ first arguments already reduced?
22:25:22 <oerjan> *first two
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:26:54 <oerjan> ok
22:27:10 <tswett> Stupid? Of course not. Nothing I do is stupid.
22:27:16 <oerjan> >_>
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:29:37 <oerjan> ...right...
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:32:28 <tswett> Oh, right.
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:38 <oerjan> *the same for you
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:48:43 <oerjan> ais523: ^
22:50:23 <ais523> wow
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:24 <cheater15> ais
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:38 <pikhq> Erm.
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:15 <ais523> cheater15: no
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:12 <cheater15> yes
22:54:17 <ais523> hmm, possibly then
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
22:59:04 <pikhq> oerjan: Mmm.
23:00:40 <cheater15> ais523, what city do you live in?
23:01:21 <ais523> Birmingham UK
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 <coppro> oh, blarg
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:17 <pikhq> oerjan: Aaaah.
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:51 <coppro> oh
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:19 <pikhq> :)
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:10:53 <ais523> ah, redirect
23:11:01 <ais523> that is an absurd dab bracket, by the way
23:11:10 <pikhq> Yup.
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:15:46 <tswett> Ooh, I see.
23:24:47 -!- Sgeo has joined.
23:27:14 <tswett> Hi Sgeo.
23:27:22 <Sgeo> Hi
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:09 <ais523> ah, OK
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
2011-05-06
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:35 <coppro> it won't get repealed
00:01:41 <coppro> plus they wouldn't repeal it just because it does nothing
00:01:44 <coppro> that's a silly reason
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:45 <variable> .bfjous
00:50:47 <variable> .bfjout
00:50:48 <variable> .bfjoust
00:50:53 <variable> !bfjoust
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:50:58 <variable> there we go
00:51:13 <ais523> ooh, see if you can beat slowpoke
00:52:50 <variable> ais523: hang on a sec
00:52:56 * variable doubts I could 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:53:48 <fungot> Defined.
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 <oerjan> ^prefixes
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:50 <oerjan> !prefixes
00:54:52 <EgoBot> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?
00:55:04 <variable> !bfjoust (>+<)
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:07 <pikhq_> Sgeo: UK.
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:27 <oerjan> oops
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:33 <HackEgo> No output.
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:56:46 <HackEgo> No output.
00:56:49 <oerjan> `prefixes
00:56:51 <HackEgo> No output.
00:56:57 <oerjan> `ls bin/prefixes
00:56:59 <HackEgo> No output.
00:57:10 <oerjan> i see
00:57:18 <pikhq_> (unlike the other constituent countries of the UK, it does not have a parliament of its very own.)
00:57:34 <variable> what does % do in bfjoust?
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:23 <pikhq_> Fucking 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:31 <HackEgo> No output.
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 <HackEgo> No output.
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:04 <ais523> *few things
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:48 <ais523> pikhq_: indeed
00:59:53 <oerjan> `run echo '\'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?\''
00:59:55 <HackEgo> No output.
01:00:10 <oerjan> `run echo "Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?"
01:00:12 <HackEgo> No output.
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:00:59 <variable> o.O
01:01:07 <variable> :\
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:18 <HackEgo> No output.
01:04:25 <oerjan> `run chmod +x bin/prefixes
01:04:27 <HackEgo> No output.
01:04:32 <oerjan> `prefixes
01:04:33 <HackEgo> No output.
01:04:43 <oerjan> fffffffuuuuuuuuuuuu
01:04:45 <Sgeo> Well, questions for referrendums should probably be phrased so the lowest common denominator can understand them
01:04:50 <oerjan> `ls bin/prefixes
01:04:51 <HackEgo> No output.
01:05:07 <oerjan> `touch bin/prefixes
01:05:08 <HackEgo> No output.
01:05:10 <oerjan> `ls bin/prefixes
01:05:12 <HackEgo> bin/prefixes
01:05:12 <pikhq_> We should strive to increase the lowest common denominator, then, shouldn't we?
01:05:26 <oerjan> d'oh
01:05:33 <oerjan> `run echo "echo 'Bot prefixes: fungot ^, HackEgo \`, EgoBot !, lambdabot @ or ?'" >bin/prefixes
01:05:35 <HackEgo> No output.
01:05:38 <oerjan> `run chmod +x bin/prefixes
01:05:40 <HackEgo> No output.
01:05:44 <oerjan> `prefixes
01:05:46 <HackEgo> No output.
01:05:56 <ais523> I'm reading this whole report
01:06:01 <oerjan> `cat bin/prefixes
01:06:03 <HackEgo> echo 'Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?'
01:06:20 <oerjan> `run prefixes 2&>1
01:06:21 <ais523> the implication I get from it is that elections taken using AV would be decided essentially at random
01:06:22 <HackEgo> No output.
01:06:31 <oerjan> `run prefixes 2>&1
01:06:32 <HackEgo> /tmp/hackenv.18692/bin/prefixes: error while loading shared libraries: /tmp/hackenv.18692/bin/prefixes: invalid ELF header
01:06:39 <oerjan> damn
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:12 <pikhq_> ais523: ... Dubious.
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:47 <HackEgo> No output.
01:07:52 <oerjan> `cat 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:14 <HackEgo> No output.
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:21 <HackEgo> No output.
01:08:26 <oerjan> `prefixes
01:08:27 <HackEgo> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?
01:08:31 <oerjan> whew
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:14 <HackEgo> No output.
01:24:24 <oerjan> `run echo \''test""`!'\'
01:24:25 <HackEgo> 'test""`!'
01:26:00 -!- fizzie has joined.
01:28:11 <ais523> I wonder how you apply to be on Electoral Commission focus groups?
01:28:47 <oerjan> in a focused way
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:20 <ais523> *South Somerset
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:31 <coppro> yay!
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:43:41 <ais523> indeed
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:03 <oerjan> heh
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:50:49 <oerjan> heh
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
01:57:13 <oerjan> right
02:08:50 <ais523> wow are the SNP dominating
02:09:00 <ais523> in Scotland, that is
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:09:12 <oerjan> save nessie partie
02:09:14 <oerjan> *y
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:41:10 <pikhq_> ♥ the pillows.
03:50:47 -!- wth has joined.
03:53:22 -!- wth has left.
05:12:06 <myndzi> lol
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:52:53 <ObviosoXI> any activity in here?
07:54:16 <cheater15> nope
07:54:42 <oerjan> no such thing
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:58:21 <ObviosoXI> I figured
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:35 <ObviosoXI> or*
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:02:20 <ObviosoXI> its 1:01AM here
08:03:29 <ObviosoXI> so
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:10:41 <ObviosoXI> kind of*
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:14:41 <ObviosoXI> this is a better way to put it
08:20:21 <ObviosoXI> g-night
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
09:21:50 <pizearke> haha
10:00:41 -!- zzo38 has joined.
2011-05-07
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:55:57 <ajf> PUT ZA
19:56:03 <ajf> would be read as
19:56:06 <ajf> "PUT Z/"
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:40 <ajf> well
19:56:43 <ajf> no.
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:36 <Lymia> Would that work?
19:57:41 <Lymia> (65=ascii code of A)
19:57:44 <ajf> ah, yes
19:57:52 <ajf> it would
19:59:50 <Lymia> And newlines are only split once?
20:00:35 <Lymia> What's the maximum value a variable can store?
20:00:36 <Lymia> 255?
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:18 <Lymia> :V
20:02:40 <ajf> also
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:32 <Lymia> Guh.
20:05:40 <Lymia> Your NOP makes me want to cry.
20:05:46 <ajf> Lymia
20:05:52 <ajf> If you need a NOP
20:05:56 <ajf> there's something much easier
20:06:02 <ajf> It's "/"
20:06:17 <Lymia> I'm trying to figure out how to compile the language.
20:06:17 <Lymia> =p
20:06:25 <ajf> Lymia: Give up already
20:06:27 <ajf> :P
20:06:28 <Lymia> ajf, no.
20:06:39 <ajf> also
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:07 <Lymia> ajf.
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:27 <ajf> haha
20:08:31 <ajf> OK
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:09:03 <ajf> :D
20:11:05 <Lymia> ajf.
20:11:18 <Lymia> You could compile to x86, if you write evil self-modifying code I bet.
20:11:28 <ajf> hmm
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:48 <Cheery> command language
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:09 <ajf> or
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:08 <ajf> hey Lymia
20:16:11 <ajf> that's not compiled
20:16:12 <Phantom_Hoover> OK humanity seriously what is wrong with us.
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:22 <ajf> yes
20:17:23 <NihilistDandy> Phantom_Hoover: If teachers can't shock our kids, WHO WILL?
20:17:24 <ajf> but
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:00 <ajf> er
20:22:07 <ajf> like the while statement in a program?
20:22:13 <ajf> er, in any other language
20:22:17 <Lymia> So, wait.
20:22:27 <Lymia> Those have to be matched, right?
20:22:33 <ajf> correct.
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:23:14 <Lymia> Do*
20:23:47 <Phantom_Hoover> Dammit what happened to elliott.
20:23:53 <Phantom_Hoover> Oh god Freenode staff.
20:23:57 <Phantom_Hoover> EVERYONE HIDE THE DRUGS
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:27:46 <Lymia> So.
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:02 <Lymia> Oh well.
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:25 <Lymia> So.
20:30:29 <ajf> although I figure you guessed that already
20:30:33 <Lymia> DEFINE A PLUS ONE TO A?
20:30:52 <Lymia> Does that work?
20:31:15 <Lymia> ajf, um.
20:31:17 <Lymia> So....
20:31:18 <ajf> yes
20:31:22 <ajf> it does.
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:45 <Gregor> Ever.
20:31:48 <Lymia> Gregor, k.
20:31:48 <ajf> If you said PUT A
20:31:59 <Lymia> But you can bind A to, say, $, correct?
20:32:00 <Lymia> So.
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:21 <Lymia> ajf, so.
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:42 <ajf> correct.
20:32:42 <ajf> So
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:01 <ajf> PUT B
20:33:09 <Lymia> Ah.
20:33:12 <Lymia> Replacements arn't recursive?
20:33:18 <ajf> Eh?
20:33:33 <Lymia> That's helpful.
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:20 <Lymia> Hate.
20:34:32 <ajf> yes.
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:31 <Lymia> =3
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:44:48 <Cheery> now I can go rampage.
20:47:38 <Cheery> I sort of wonder why there aren't assembly languages that do something similar.
20:47:59 <ajf> woo
20:48:05 <ajf> expression parsing works
20:48:08 <Cheery> I mean.. sort of concise syntax that behaves like madbollocks.
20:51:49 <Lymia> ajf, well.
20:52:02 <Lymia> I have kind of an idea how to do it, but no idea how to do it efficiently.
20:52:29 <ajf> OK.
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:55:55 <ajf> hmm
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:56:39 <Lymia> lines*
20:58:38 <Lymia> ajf, there's nothing stopping you, if you're willing to accept huge executable and long compile time.
20:59:13 <Lymia> ajf, uh, wait.
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:33 <ajf> Uhh
20:59:40 <ajf> Um
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:16 <ajf> Hmm
21:00:23 <ajf> Yes, it would only go to line 255
21:00:29 <ajf> (counting from 0)
21:00:39 <ajf> although
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:48 <ajf> removed
21:02:51 <ajf> uhh
21:02:52 <Lymia> In particular, the TO X part.
21:02:58 <ajf> ah
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:03:47 <ajf> fixed.
21:04:12 <ajf> Maybe I should use # instead of /
21:04:13 <ajf> meh.
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:14 <ajf> yes.
21:07:17 <ajf> wait
21:07:26 <ajf> er
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:02 <Lymia> So.
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:11 <cheater53> sup sgeo
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:01 * cheater53 thinks Sgeo is smart
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:12:22 <cheater53> Sgeo, why would you not like her?
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:13 <Lymia> ajf, so.
21:14:24 <cheater53> but you know what they say
21:14:25 <Lymia> In essence, there are 26+256+1 possible values, right?
21:14:27 <cheater53> if she smokes, she pokes
21:14:40 <tswett> So if she doesn't poke, she doesn't smoke?
21:14:45 <cheater53> just ask her if she's a smoker
21:14:50 <ajf> Lymia: eh?
21:14:51 <cheater53> and then tell her you are not
21:14:56 <ajf> there are 256
21:15:00 <Lymia> I mean.
21:15:00 <cheater53> she'll keep brushing her teeth and you'll be comfortable.
21:15:02 <Lymia> Possible expressions.
21:15:11 <ajf> uhh
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 <Lymia> I know.
21:15:43 <cheater53> Sgeo, "pokes herself with male organs"
21:15:48 <ajf> oh, ok
21:16:04 <Cheery> okay.. maybe that never gets old
21:16:09 <Sgeo> Ah
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:00 <Lymia> So.
21:17:03 <Lymia> 560906 possible expressions?
21:17:20 <Lymia> a = 26+256+1
21:17:26 <Lymia> a+(a*a)*7
21:18:25 <cheater53> can a language with a finite number of expressions be TC?
21:18:41 <ais523> cheater53: sure
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:43 <cheater53> aha
21:19:44 <cheater53> ok
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:12 <Lymia> So, then.
21:20:13 <ajf> there are a lot of possible expressions.
21:20:15 <ajf> A LOT.
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:33 <ajf> Lymia: no
21:20:41 <ais523> cheater53: IMO yes, although that's a definitional problem
21:20:44 <ajf> wait
21:20:45 <ajf> yes
21:20:48 <cheater53> why?
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:10 <cheater53> yeah, that's what i was thinking
21:21:13 <Sgeo> Dang 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:42 * Sgeo surrenders
21:21:48 <Lymia> So.
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:05 <ajf> please
21:22:08 <cheater53> but then the question is if it just lists them
21:22:14 <Lymia> ajf, why?
21:22:20 <cheater53> but it doesn't interpret them..
21:22:24 <cheater53> is it TC?
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:02 <ajf> well
21:23:05 <ajf> let's see
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:13 <ajf> uhh
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:05 <ajf> wow.
21:28:13 <ajf> Lymia: do I win
21:28:46 <Lymia> Let's find out.
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:31:52 <ajf> ?
21:32:03 -!- d42nk has left.
21:33:04 <elliott_> ok that's two new names
21:33:15 <elliott_> where are these people coming from :D
21:33:21 <Lymia> Me?
21:33:23 <Lymia> New?
21:33:33 <ajf> me?
21:33:41 <elliott_> no ajf and d42nk :)
21:34:18 <cheater53> and kuraj
21:36:14 <Cheery> lol. that later was just some weirdo
21:38:33 <elliott_> it's an influx :P
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:28 <ajf> :>
21:41:31 <Lymia> :>
21:41:33 <ajf> you can insert \ns
21:41:38 <elliott_> :>
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:42:43 <ajf> hn?
21:42:49 <ajf> hm?*
21:43:14 <pikhq> ajf: How many people explicitly list the headers each file depends upon?
21:43:18 <Lymia> ajf, mmm....
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:43:42 <Lymia> ...
21:43:43 <Lymia> Actually...
21:44:30 <Lymia> ajf, mmm...
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:46:35 <ajf> True.
21:46:38 <ajf> If A is /
21:48:15 <Lymia> You could rewrite that into something like "DEFINE A TO B/OPQRSTUVWXYZ" right?
21:48:40 <ajf> yup.
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:28 <ajf> eh
21:51:32 <ajf> well
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:30 <ajf> eh?
21:57:40 <ajf> Nah
21:57:42 <Lymia> The language isn't that complex.
21:57:47 <ajf> sure.
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:11 <Lymia> =p
21:58:32 <ajf> ...and defined the language over half a year ago
21:58:37 <Lymia> ajf.
21:58:40 <Lymia> Here's what I'm thinking.
21:58:46 <Lymia> Take the statement DEFINE A AS B
21:58:49 <Lymia> TO*
21:59:03 <Lymia> What could you actually manage to redefine that to, which is still valid syntax?
21:59:13 <ajf> this.
21:59:35 <ajf> GET A/
21:59:35 <Lymia> PUT X/ or GET X/ right?
21:59:42 <Lymia> ajf, how are trailing slashes handled?
21:59:45 <Lymia> Erm.
21:59:46 <ajf> trailing?
21:59:48 <Lymia> Trailing spaces.
21:59:54 <Lymia> Ignored?
21:59:55 <ajf> not ignored.
21:59:59 <Lymia> Invalid?
22:00:01 <ajf> GET A / is invalid
22:00:04 <ajf> GET A/ is valid
22:00:06 <Lymia> No, I mean.
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:14 <Lymia> That's invalid?
22:00:21 <Cheery> having porperly working editor is a bless.
22:00:22 <ajf> correct.
22:00:54 <ajf> unlike some people, I take whitespace seriously
22:00:55 <ajf> :P
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:19 <Lymia> k
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:01 <ajf> zzo38: ?
22:05:06 <ajf> this is #esoteric
22:05:13 <ajf> does this matter for your language?
22:05:32 <Lymia> ajf, well.
22:05:35 <Lymia> Let's see about that.
22:05:35 <Lymia> =)
22:05:54 <Lymia> How long until you get the reference done?
22:06:09 <ajf> not very.
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:10:12 <ajf> ok.
22:12:03 <ajf> well
22:12:09 <ajf> I would suggest some other channel
22:12:52 <zzo38> Which one?
22:13:06 <ajf> Just
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:17 <elliott_> "about damn time"?...
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:45 <Lymia> *sigh*
22:17:50 <Lymia> The games and arts debate.
22:17:50 <elliott_> I guess it depends on DEFINISHONS
22:17:53 <elliott_> I know.
22:17:56 <elliott_> It's the worst of debates.
22:18:04 <ajf> "DEFINISHONS"
22:18:06 <ajf> hm
22:18:09 <Lymia> I can say this.
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:48 <Lymia> ...risky...
22:18:52 <ajf> yes.
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:34 <elliott_> only if it's a nicep icture
22:19:36 <cheater53> you'd say DEHINISHON'SU
22:19:50 <ajf> cheater53: Nah
22:20:01 <ajf> FI is valid, Fu+small I
22:20:17 <cheater53> yea but not popular
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:20:57 <Lymia> Japanese now?
22:21:02 <ajf> indeed.
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:42 <ajf> Normally
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:37 <ajf> haha
22:22:41 <pikhq> ajf: Just a very, very literal encoding of kana.
22:22:48 <ajf> I guess.
22:22:53 <ajf> I prefer using actual kana
22:23:06 <pikhq> Well, yes, [
22:23:08 <pikhq> GAH
22:23:09 <pikhq> IME WORK WITH ME
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:21 <ajf> :>
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:24 <Lymia> :x
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:51 <monqy> mmm
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:33 <ajf> Guess.
22:25:36 <ajf> No Googling.
22:25:47 <elliott_> nintendo love hotels
22:25:49 <pikhq> Vertas Original?!? I got nothing.
22:25:53 <ajf> no
22:25:59 <ajf> Werthers Originals
22:26:03 <pikhq> ...
22:26:04 <elliott_> X-D
22:26:06 <Lymia> w->v?
22:26:10 <ajf> Is german though, so W->V
22:26:12 <pikhq> How very German of them.
22:26:13 <ajf> yeah.
22:26:13 <Lymia> Sometimes pronounced b?
22:26:19 <elliott_> Berters original.
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:57 <ajf> also
22:26:59 <Lymia> pikhq, I just need to find motivation
22:27:00 <Lymia> That's all.
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:26 <ajf> リーミャはばか!
22:27:28 <pikhq> 「ウィルス」 (uīrusu) [wirusu] for "virus" is mother-fucking confusing. Still.
22:27:35 <elliott_> Biruswu.
22:27:46 <pikhq> ajf: こんなに馬鹿じゃないと思う。
22:28:02 <Lymia> ajf.
22:28:09 <Lymia> That is not funny.
22:28:09 <Lymia> :<
22:28:17 <ajf> :/
22:28:28 <ajf> You lied, you said you can't read katakana
22:28:32 <ajf> !!
22:28:34 <Lymia> ajf, I can read a few.
22:28:38 <ajf> :V
22:28:39 <Lymia> *cough watched Madoka cough*
22:28:44 <Lymia> *cough mami cough*
22:28:47 <ajf> lol
22:28:53 <monqy> I feel left out
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:11 <zzo38> And some kanji
22:29:12 <pikhq> elliott_: "wu" is not a valid mora.
22:29:13 <ajf> Well
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:29:43 <elliott_> pikhq: You're a mora.
22:29:53 <ajf> pikhq: no
22:29:58 <ajf> It is.
22:30:01 <pikhq> ajf: How would one encode it?
22:30:04 <ajf> Just antiquated and unused
22:30:06 <ajf> er
22:30:18 <ajf> waitasec
22:30:20 <pikhq> ゐ and ゑ certainly exist, but not somewthing for "wu".
22:30:37 <ajf> yes
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:05 <cheater53> katakana
22:31:14 <ajf> cheater53: old kana
22:31:16 <ajf> unused.
22:31:19 <pikhq> cheater53: "wi" and "we", in hiragana.
22:31:28 <cheater53> ok
22:31:31 -!- olsner has joined.
22:31:33 <ajf> as I said, unused.
22:31:35 <cheater53> why did they come to disuse?
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:31:57 <pikhq> s/mora/morae/
22:32:03 <monqy> is this that spambot thing
22:32:03 <cheater53> what is a mora?
22:32:16 <ajf> cheater53: "syllable" in japanese
22:32:26 <cheater53> why did that fall out of use?
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:37 <cheater53> why?
22:33:42 <ajf> Because.
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:24 <cheater53> ajf, ooo, show me
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:37 <ajf> See that.
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:19 <ajf> :P
22:35:57 <cheater53> pikhq, i know that, i was asking why it changed in that specific way
22:36:08 <cheater53> and not some other 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:01 <Lymia> :<
22:37:34 <ajf> yes
22:37:37 <ajf> ha -> wa
22:37:40 <ajf> wo -> o
22:37:45 <ajf> are there any others?
22:37:56 <pikhq> he -> e
22:38:02 <ajf> huh.
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:24 <ajf> wow.
22:40:34 <ajf> that old style is really confusing
22:40:35 <ajf> :/
22:40:48 <pikhq> It was phonetic when it came into adoption.
22:41:09 <pikhq> Pronunciation changed, spelling didn't.
22:41:40 <ajf> Ahh
22:41:49 <ajf> So they changed the spelling to reflect pronunciation?
22:41:54 <pikhq> Yeah.
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:50:32 <Phantom_Hoover> tswett, hey, you got to my Reddit frontpage.
22:50:49 <tswett> Neat.
22:50:57 <tswett> Was it the TIL?
22:51:39 <Phantom_Hoover> Yes.
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:10 <Cheery> allright!
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:08 <ajf> oh
23:06:12 <ajf> writing a lisp parseer
23:06:16 <ajf> ??
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:07:55 <ajf> eh?
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:09:29 <ajf> ??
23:10:02 <Cheery> haven't added it yet.
23:10:06 <ajf> Ah.
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:11 <Cheery> good night
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:21 <ajf> cool.
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:16:47 <Sgeo> Not sure why
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:25 <Cheery> *crap
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:01 <Phantom_Hoover> Look at gallium,
23:25:55 <Sgeo> I almost Googled that, expecting to find a language
23:27:09 <ajf> :/
23:28:32 <Phantom_Hoover> Sgeo, here, some gallium: http://periodicvideos.com/videos/031.htm
2011-05-08
00:09:37 <ajf> Finally
00:09:44 <ajf> DevPerc interpreter done
00:09:45 <ajf> :>
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:10 <ajf> hi pikhq
00:12:17 <ajf> My interpreter is finished :D
00:13:38 <wareya_> oh hi ajf
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:13:59 <ajf> Actually
00:14:04 <ajf> It is an interesting language.
00:14:10 <wareya_> s-z says to call you fag
00:14:12 <wareya_> and that he said it
00:14:17 <ajf> lol
00:14:36 <wareya_> how's your language
00:14:37 <ajf> wareya_: http://www.esolangs.org/wiki/Deviating_Percolator
00:14:39 <ajf> Fine
00:14:40 <wareya_> is it better than 1d boat?
00:14:44 <ajf> maybe
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: answer
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:22 <wareya_> this is really weird
00:16:28 <wareya_> mine was like a stripped down C
00:16:38 <ajf> haha
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:16:52 <ajf> lol
00:17:17 <ajf> Also mine has a working interpreter
00:17:31 <ajf> Horrible code, but works
00:17:40 <wareya_> mine doesn't
00:17:43 <wareya_> I'm too lazy
00:17:53 <wareya_> I should be working on my game's platforming physics code
00:18:09 <ajf> meh
00:18:34 <wareya_> I redesigned my language like 5 times
00:18:39 <ajf> hmm
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:45 <ajf> oh
00:20:48 <ajf> boat is by you
00:20:49 <ajf> oic
00:21:04 <wareya_> lol
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:23:33 <wareya_> ;p[
00:23:34 <wareya_> lop
00:23:46 <ajf> wat
00:23:50 <wareya_> lopl
00:24:21 <ajf> wareya_ what do you think of DevPerc
00:24:53 <wareya_> it's a good esolang
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:30:41 <ajf> :V
00:32:04 <ajf> Goodnight
00:32:07 <wareya_> night
00:32:09 -!- ajf has changed nick to ajf|offline.
00:32:40 <Lymia> ajf.
00:32:48 <Lymia> Your number system is horrible and screwy.
00:51:35 <tswett> Sarumpät
00:53:04 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
00:56:57 <Lymia> Oh well.
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:42:27 <elliott> spambot using undo...
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:31 <NihilistDandy> elliott: Hah
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:06:30 <oerjan> nope
02:07:01 <elliott> Or IS it
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:08:33 <Lymia> elliott, you in?
02:08:40 <elliott> Nope :P
02:08:41 <elliott> Perligata FTW
02:08:44 <elliott> (Perl with Latin grammar)
02:25:37 <Gregor> What is the nonshittiest of the free TLDs?
02:29:54 <elliott> Gregor: Uhh.
02:29:56 <elliott> Gregor: Mu.
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:54 <elliott> hmm
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:47:29 <Lymia> That's all.
02:47:29 <Lymia> =p
02:53:44 <Lymia> >perligata
02:53:46 <Lymia> >shift "behead"
02:53:48 <Lymia> wtf
02:53:51 <Lymia> D=
02:54:04 <Lymia> T-that's horrible.
02:56:35 <oerjan> SO. MUCH. SPAM.
02:57:18 <Lymia> Yep!
02:59:26 <elliott> it's human I think
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:42 <elliott> see
02:59:51 <elliott> hmm
02:59:54 <elliott> or maybe it uses that to... hmm
02:59:56 <elliott> ok that's just weird
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:21 <elliott> see recent changes :)
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:14 <Lymia> What is this bot?
03:04:28 <Lymia> It seems to exist for no reason but to mess up the site.
03:05:02 <elliott> It's called a spambot.
03:05:07 <elliott> You must be new to the internet.
03:05:28 <Lymia> elliott, I mean.
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:06:13 <elliott> etc. etc. etc.
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:41 <elliott> yes
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:14:31 <elliott> No.
03:14:42 <zzo38> I have done once.
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:23 <monqy> it was pretty rad
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:17 <Lymia> Oh right, Gregor.
03:26:18 <Lymia> :<
03:26:48 <Gregor> No.
03:26:50 <Gregor> Oh right, Plazma.
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:53 <zzo38> OK
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:15 <oerjan> ^bf +.
03:29:15 <fungot> <CTCP>
03:29:24 * oerjan whistles innocently
03:29:46 <zzo38> ^bf +.++++++++++++++++++++++++++++++++++++++++++++++++++++++++.++.+++.+.+.+.+.+.++++++++.+.+.
03:29:46 <fungot> <CTCP>9;>?@ABCKLM
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:16 <elliott> Plazma?
03:30:50 <Gregor> See /whois Plazma :P
03:30:53 <elliott> Oh, is that one of the IRCops?
03:30:55 <oerjan> dammit
03:30:59 <elliott> Right :P
03:31:01 <elliott> IN OUR WAKE
03:32:45 <elliott> Gregor: I don't recall any clients actually being affected in any way here :P
03:33:42 <Gregor> Relevant?
03:33:53 <elliott> Gregor: ?
03:34:02 <Gregor> Is that relevant?
03:34:06 <Lymia> But yeah.
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:52 * elliott this is ctcp
03:34:56 <elliott> just that specific thing needs blockin
03:34:57 <elliott> g
03:35:03 <zzo38> Just strip all control characters would be the simplest way. (Or, convert them to unicode control pictures)
03:35:12 <oerjan> zzo38: NO FUN I SAY
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:41 <elliott> X-D
03:36:46 * elliott watches zzo38 get klined
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:38:40 * fungot hugs Lymia
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:33 <oerjan> >_>
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:21 <Lymia> Yep.
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:31 <Lymia> :<
03:40:33 <oerjan> ...
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:05 <elliott> startkeylogger
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:44 <Lymia> What elliott sai.
03:42:46 <Lymia> said*
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:50 <cheater53> what 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:46:26 <elliott> rpn?
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:06 <cheater53> man
03:49:12 <cheater53> why is linux so terrible today
03:49:26 <cheater53> i'm on a livecd and it's just churning and churning the dvd drive
03:49:47 <cheater53> terrible!
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:11 <cheater53> no, it just hung on it
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:05 <cheater53> yeah
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:52:58 <cheater53> except just right now
03:53:17 <cheater53> oerjan, i think it has to do with the INTERCAL "select" operator
03:53:27 <cheater53> remember? it talked about buses
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:10 <cheater53> isn't C written in INTERCAL?
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:16 <cheater53> ok, something's seriously fucked
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:29 <cheater53> it's not
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:40 <elliott> :D
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:05:22 <oerjan> mhm
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:32:18 <elliott> ababababab
04:57:50 -!- cheater43 has joined.
04:58:27 <cheater43> ...
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.
04:59:48 <Sgeo> o.O?
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:21 <oerjan> *your
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:04:30 <pikhq_> Which translation?
05:06:38 <cheater43> some german translation.
05:06:50 <pikhq_> Oh, sure, you foreigners.
05:06:54 <cheater43> oh, you mean of the german writers
05:07:00 <cheater43> no translation.
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:29 <cheater43> zzo38, any of the books?
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:23:57 <cheater43> i don't know.
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:37:29 <zzo38> OK I can look.
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:46:44 <cheater43> found your problem.
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:52:53 <cheater43> yes
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:57:40 <pikhq_> Huh.
05:58:16 <coppro> pikhq_: Are you familiar with tgmath.h?
05:58:28 <pikhq_> BOUNDS CHECKING
06:00:44 -!- TeruFSX has quit (Read error: No route to host).
06:02:07 <elliott> tgmath.h is fun
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:19 <elliott> C?? xD
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:55 <elliott> under the hood
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:12 <elliott> somewhat :D
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:55:16 <evincar> Long time no...anything.
07:56:02 <evincar> elliott: You still around?
07:56:06 <elliott> Nope.
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:46:11 <ajf|offline> zzo38: :<
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:31 <ajf|offline> yes
09:47:36 <ajf|offline> tapes, for instance
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 <Phantom_Hoover> Oh FFS the wiki really needs more admins.
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:09 <Phantom_Hoover> ajf|offline, Lymia, are you two *still* at it?
09:49:15 <ajf|offline> :V
09:49:19 <Lymia> Phantom_Hoover, =
09:49:21 <ajf|offline> not really
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:46 <ajf|offline> bye for now.
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:03:24 <cheater43> bah.. i need a new ubuntu live cd
10:13:01 -!- cheater43 has quit (Quit: Leaving).
10:14:31 -!- azaq23 has joined.
10:50:26 -!- iconmaster has joined.
10:51:07 <iconmaster> The wiki is getting spammed
10:51:24 <iconmaster> Did you know of this?
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:01:53 <elliott> :p
11:02:04 <elliott> Can't do much without a sysop.
11:06:49 <iconmaster> This... is bad.
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:47 <ajf> hi
12:11:55 <ajf> Lymia: eh?
12:12:02 <ajf> what's wrong with its number handling? :D
12:23:17 * ajf afk
12:32:14 * ajf back
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:13 <ajf> hi wareya
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:04 <wareya> lol
13:14:08 <wareya> ajf you should fix boat
13:14:13 <ajf> no
13:14:17 <ajf> boat sucks
13:14:23 <wareya> we can rebuild it
13:14:26 <wareya> we have the technology
13:14:40 <ajf> http://esoteric.voxelperfect.net/wiki/Deviating_Percolator#Interpreting_Specifics
13:14:45 <ajf> nope.avi
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:06 <wareya> >changed the syntax
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:42 <wareya> yes
13:15:45 <wareya> it's not built off C
13:15:52 <wareya> it's built off the concepts that went into C
13:15:54 <ajf> python? perl? C#?
13:15:59 <ajf> oic
13:16:16 <ajf> no I mean what language did you write the interperter in
13:16:23 <wareya> 09:16 < wareya> yes
13:16:29 <wareya> oh
13:16:41 <wareya> you didn't even ask that before that
13:16:44 <wareya> you nigger
13:16:47 <ajf> :V
13:16:49 <wareya> I wrote it in GML
13:16:50 <wareya> deal with it
13:16:53 <ajf> >GML
13:16:55 <ajf> lopl
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 <wareya> lol
13:17:42 <ajf> so you can take input
13:17:44 <ajf> then do
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:18:20 <wareya> boat
13:18:27 <wareya> >expressions
13:18:29 <wareya> >expression nesting
13:18:37 <wareya> >arithmetic operators
13:18:54 <ajf> lol
13:19:00 <wareya> >both direct and indirect memory addressing (hard values and pointers)
13:19:12 <wareya> >if and while
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:32 <wareya> Want less?
13:19:36 <ajf> yes.
13:19:38 <ajf> more minimal
13:19:44 <ajf> not quite brainfuck but
13:19:45 <wareya> >no arithmetic
13:19:47 <ajf> not C either
13:19:51 <ajf> well
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:04 <ajf> yes
13:20:12 <ajf> ^ | & etc?
13:20:15 <wareya> >if conditions with one following statement
13:20:16 <wareya> >add goto
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:47 <wareya> you can't beat that
13:20:48 <ajf> you need to give it a bearing in distance
13:20:56 <ajf> *and distance
13:21:00 <ajf> like
13:21:13 <ajf> go 330 degrees 2 chars
13:21:33 <wareya> that's gay because trig
13:21:40 <ajf> >trig
13:21:42 <wareya> >trig
13:21:43 <wareya> >integers
13:21:43 <ajf> trig is easy
13:21:45 <wareya> nope.jpeg
13:21:50 <wareya> integer euclidean plane
13:21:52 <ajf> :drool:
13:21:54 <wareya> no trig allowed
13:21:59 <ajf> OK instead do
13:22:32 <wareya> I'm going to sleep woon
13:22:35 <wareya> soon
13:22:36 <ajf> North, north-east, west, south-west
13:22:37 <wareya> it's 9:30 AM
13:22:41 <ajf> k
13:22:47 <wareya> >oblique motion
13:22:54 <wareya> that would be so...
13:22:58 <wareya> Abusable.
13:23:00 <wareya> I like it.
13:23:03 <ajf> indeed.
13:23:12 <wareya> moreso than 2d + expression nesting
13:23:29 <ajf> also
13:23:33 <ajf> does boat wrap?
13:23:38 <wareya> yes
13:23:42 <ajf> Good.
13:23:45 <wareya> except
13:23:52 <wareya> it wraps to the adjecant line
13:23:55 <wareya> :smiley16:
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:21 <ajf> AWESOME
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:06 <ajf> you mean
13:25:11 <ajf> everything is a binary blob
13:26:01 <wareya> I don't even know
13:26:29 <wareya> the best thing about my language is how you can have negative-sized variables
13:26:31 <wareya> in my opinion
13:26:32 <wareya> afk sleep
13:26:40 <ajf> how the fuck does that work
13:26:46 <wareya> :hehe16:
13:26:57 <ajf> k
13:27:48 <Zwaarddijk> does sound like you're either being nonsensical or busing terminology
13:27:57 <wareya> okay so
13:28:06 <wareya> if the memory from 0x0 looks like
13:28:16 <wareya> 61 a9 1b 83
13:28:31 <wareya> and you allocate a -2 byte sized variable at 0x2
13:28:37 <wareya> it would hold a9 61
13:28:45 <ajf> Thought so.
13:28:46 <ajf> Cool.
13:29:02 <variable> wareya: that sounds interesting
13:29:26 <Zwaarddijk> wareya: wht use does a -2 byte sized variable have?
13:29:34 <wareya> Abuse.
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:13 <wareya> afk
13:33:24 <ajf> http://esoteric.voxelperfect.net/wiki/Deviating_Percolator#Executing_arbitrary_code
13:47:53 <ajf> hmm
13:48:01 <ajf> it's hard to write 99 bottles of beer in devperc
13:48:03 <ajf> very hard
13:48:11 <ajf> possible, but hard
13:58:23 <Sgeo> o.O
13:58:32 <Sgeo> I have what looks like spam in my drafts
13:58:43 <ajf> yes
13:58:47 <ajf> spam attacks on esolang
13:58:48 <ajf> :<
14:28:54 <ajf> fff
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:33 <ajf> :/
14:30:34 <ajf> also
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:38 <ajf> also
14:36:55 <ajf> SOMEBODY DISABLE NON-AUTO-CONFIRMED EDITS
14:36:57 <ajf> PLEASE
14:53:34 <Phantom_Hoover> OK I have discovered the Most Ridiculous Time Signature.
14:53:40 <Phantom_Hoover> ajf, I'll email graue.
14:55:00 <ajf> good.
14:55:11 <ajf> And what is the most ridiculous time signature?
14:57:19 <Phantom_Hoover> 13/8
14:58:15 <ajf> lol
14:58:29 <Phantom_Hoover> http://homestuck.bandcamp.com/track/the-broken-clock
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:10:47 <Phantom_Hoover> I effectively have, it's just oddly compelling.
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:04 <Vorpal> more like 7-8 I think
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:24 <ajf> ohi
19:29:26 <ajf> again
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:35 <cheater93> which was?
19:40:50 <ajf> Sgeo: OK
19:40:54 <pikhq> Vorpal: Well, the -rt tree is slowly but surely getting merged.
19:40:54 <ajf> hmm
19:41:01 <cheater93> Sgeo, ?
19:41:05 <Sgeo> cheater93, I don't remember exactly
19:41:05 <pikhq> Vorpal: So, eventually Linux *will be* a RTOS.
19:41:15 <cheater93> Sgeo, then tell me approximately.
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:01 <cheater93> Sgeo, lol
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:10 <Phantom_Hoover> See: specialisers.
19:42:23 <cheater93> ais523, make people give you their stackoverflow login name before they log in.
19:42:24 <cheater93> or something.
19:42:26 <Vorpal> <pikhq> Vorpal: Well, the -rt tree is slowly but surely getting merged. <-- uh?
19:42:26 <Sgeo> huh?
19:42:33 <Vorpal> pikhq, will it help for intel graphics?
19:42:39 <Vorpal> oh wait you mean real time
19:42:39 <cheater93> ok, i'll bbs
19:42:40 <Vorpal> right
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:07 <Vorpal> s/=/?/
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:44:57 <Vorpal> ais523, hi btw
19:45:01 <ais523> hi Vorpal
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:48 <Vorpal> which is improbable
19:47:55 <Vorpal> utterly improbable
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:49:34 <Vorpal> err, keystrike?
19:49:36 <Vorpal> whatever
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:21 <Vorpal> indeed
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:52:48 <Vorpal> hah
19:53:23 <Vorpal> pikhq, or you can calculate on worst case. Like. pipeline stall on every instruction, cache miss all the time
19:54:15 <pikhq> Well, yes.
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:35 <Vorpal> or 1878465.512/pi
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:02:02 <Vorpal> pikhq, argh
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:18:54 <ais523> elliott: what was it?
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:12 <elliott> Body:
20:20:14 <elliott> --cut--
20:20:15 <elliott> Names.
20:20:15 <elliott> Nationality.
20:20:16 <elliott> --cut--
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:15 <Vorpal> or is that it=
20:22:17 <Vorpal> s/=/?/
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:36 <Vorpal> night →
20:43:42 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
20:51:26 * cheater666 looks to the right
20:51:29 <cheater666> nope, not night there
20:53:38 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:12:30 <Phantom_Hoover> > 0.5*9.8*(4*30*24*60*60)^2
21:12:31 <lambdabot> 5.2672757760000006e14
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:39 <ajf> night.
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:36:51 <Lymia> zzo38, in WHAT?
21:37:14 <Lymia> > print "test"
21:37:15 <lambdabot> <IO ()>
21:37:27 <Lymia> > why no python
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:41:45 <Lymia> :(
21:41:48 <Lymia> You make me sick.
21:41:59 <Phantom_Hoover> Waitwhat.
21:42:20 <Phantom_Hoover> Finland has mandatory military service and is neutral.
21:42:27 <Phantom_Hoover> That makes... very little sense.
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?
21:47:26 <Phantom_Hoover> Seems to be a common issue.
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:07 * Phantom_Hoover → sleep
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:21:27 <oerjan> *wish to
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:22:55 <oerjan> ^ also to that
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:46:57 <oerjan> hm...
23:55:09 -!- FireFly has quit (Quit: swatted to death).
23:55:17 -!- BeholdMyGlory has quit (Remote host closed the connection).
2011-05-09
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:29:48 <Lymia> Bye~
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:19:00 <oerjan> *sets
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:47 <coppro> pikhq_: heh
03:29:56 <coppro> it seems so obvious, doesn't it?
03:30:56 <pikhq_> Yeah...
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:24 <elliott> psht, scapegoat ftw
03:45:45 <oerjan> at least we'd know what to blame, then
03:45:54 <elliott> exactly
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:56:58 <elliott> GO GO BREAKING MAGIC
03:57:11 <elliott> oerjan can i have a lot of caffeine
03:57:24 <oerjan> BUT OF COURSE
03:57:46 <elliott> wow
03:57:49 <elliott> this download is slow
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:18 <elliott> xD
04:04:28 <oerjan> it would be ironic if the first person to become _seriously_ insulted by that nick was Plazma
04:04:48 <oerjan> (bye, bye, Gregor)
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:16 <elliott> ...
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:06:03 <oerjan> *!@
04:06:31 <elliott> i love you man.
04:07:17 -!- pikhq_ has quit (Ping timeout: 240 seconds).
04:07:18 -!- pikhq has joined.
04:17:40 <elliott> WHY
04:17:41 <elliott> ARE YOU
04:17:41 <elliott> SO
04:17:42 <elliott> SLOW
04:17:46 <elliott> >>>>>>?>:::::::>>>>>>?>??
04:18:20 <oerjan> the cursing of the keyboard challenged
04:18:35 -!- lambdabot has quit (Ping timeout: 252 seconds).
04:18:57 <oerjan> YOU KILLED LAMBDABOT!
04:19:47 <elliott> OH MY GOD UBUNTU
04:19:50 <elliott> I CANT WAIT TWO HOURS
04:19:51 <elliott> FOR YOUR BULL SHIT
04:19:53 <elliott> FUCK
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:51:21 <elliott> it is .. FUN
05:51:27 <elliott> things break a lot
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:33 <elliott> I am not sure.
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:45 <elliott> I don't know.
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:54:59 <elliott> Its
05:55:01 <elliott> pikhq: I know.
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:46 <elliott> Not a regular upgrade.
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:09 <coppro> elliott: REBOOT
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:15 <elliott> MWAHAHAHAHAHAHAHAAHAHAHA
05:58:17 <elliott> WHAT HAS SCIENCE WROUGHT
05:58:21 <coppro> cake
05:58:27 <coppro> and potato batteries
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:58:50 <coppro> lol
05:58:58 <monqy> science it up
05:59:06 <elliott> "Replace the customised configuration file /etc/grub.d/[thirty]_os-prober'?"
05:59:08 <elliott> Difference between the files:
05:59:10 <elliott> [EMPTY FUCKING PANE]
06:00:57 <elliott> aszxrolp[;lotrdjiotresjiopknllllllllllllllllllllllllllllllllllll jgvyitcyvhjb nkyutfibugotrbyuogtgyu
06:01:01 <elliott> I AM ABUSING MY KEYBOARD FOR SCIENCE
06:01:17 <elliott> OMG HI DEBCONF
06:01:22 <elliott> You went away without asking me anything :(
06:01:23 <elliott> Rude
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:03:23 <elliott> They have no mouth.
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:06:59 * Sgeo wants @
06:07:18 <elliott> LOL
06:07:24 <elliott> firefox
06:07:31 <elliott> just had a parse error
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:08:57 <elliott> goodbye universe
06:09:17 <Cheery> I sense smell of despair
06:09:25 <elliott> let's face it
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:36 <elliott> what is it
06:09:37 <elliott> penisfile?
06:09:37 <Cheery> they're not cockfiles anymore
06:09:45 <Cheery> they're now just .t
06:09:52 <monqy> boring
06:09:53 <elliott> ah, t for penisfile
06:09:54 <Cheery> I don't tell what do those stand for.
06:10:14 <elliott> maybe it's for Themostboringnameever
06:10:22 <Cheery> that's good :)
06:10:25 -!- pikhq_ has joined.
06:10:36 <monqy> tcockfile
06:10:36 <elliott> or wait it's for Thisfileisacockfile
06:10:40 <monqy> mmh
06:10:51 <Cheery> mmmmm..
06:10:57 <Cheery> lol
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:27 <elliott_> kekekekekeekekekeke
06:13:29 <elliott_> now grub won't boot
06:13:30 -!- elliott has quit (Read error: Connection reset by peer).
06:13:33 <elliott_> >what the fuck do I do now
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:54 <elliott_> updated ubuntu
06:13:58 <fizzie> You broke it; now you buy a new computer.
06:14:05 <pikhq_> Cheery: You could start it.
06:14:05 <monqy> .c(ock)
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:44 <elliott_> It'd be OPTOMIZED.
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:16:25 <elliott_> of course
06:17:22 <elliott_> so anyway I
06:17:31 <Cheery> wowfuck
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:17:48 <elliott_> Cheery: what
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:19:35 <monqy> it's very
06:19:37 <monqy> terse
06:19:42 <Cheery> ^^
06:19:45 <Cheery> lol
06:20:06 <Cheery> terse that is not
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:21:53 <elliott_> NOTHING CHANGED.
06:22:20 <Cheery> LOL
06:22:26 <Cheery> okay. now this just sucks. :)
06:22:37 <elliott_> wat
06:22:55 <Cheery> so this guy sells not an assembler but something like.. assembler that writes out assembly.
06:23:07 <elliott_> wat.
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:16 <elliott_> isn't that called a compiler
06:23:18 <Cheery> "
06:23:28 <Cheery> yeh. compiler
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:42 <monqy> mmh
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:26 <Cheery> XD
06:25:32 <elliott_> I WANT MY UNTBUNU BACK ;______;
06:25:41 <monqy> http://www.terse.com/notprog.htm
06:25:52 <elliott_> yeah :D
06:25:54 <monqy> this is great
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:20 <elliott_> if we have sites
06:26:23 <elliott_> just
06:26:25 <elliott_> i'm gonna make so much software
06:26:28 <elliott_> so i can put that logo on
06:26:30 <elliott_> DEVALUING IT ENTIRELY
06:26:31 <elliott_> and get sued
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:28:58 <elliott_> fizzie: YES.
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:20 * elliott_ Report a problem
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:00 <elliott_> fuck
06:32:02 <elliott_> it wants a login
06:32:10 <elliott_> time to make a bullshit openid
06:32:21 <monqy> goterse
06:32:40 <Cheery> go go terse gadget
06:32:57 <elliott_> can i have an at sign
06:32:59 <elliott_> plz
06:33:01 <fizzie> @
06:33:11 <elliott_> idontwanttogiveyouanemail@ivaluemyprivacy.nothankyou
06:33:12 <elliott_> thats my email
06:33:22 <elliott_> http://getsatisfaction.com/mojang/topics/minecraft_is_not_written_in_terse
06:33:24 <elliott_> plz vote up
06:33:27 <elliott_> or whatever
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:46 <elliott_> fizzie: Oh lord.
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:06 <fizzie> No, just God.
06:52:17 <elliott_> "Notch?" "No, just God."
06:52:37 <elliott_> fizzie: You should click that "I have this problem" button, I might add.
06:53:28 * elliott_ replies to God.
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:00 <oerjan> oh wait
06:55:29 * Sgeo WTFs at Terse
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:01:35 <elliott_> fizzie: oh dear.
07:01:41 <coppro> lol
07:01:53 <fizzie> Sure takes one back.
07:02:15 <elliott_> ?
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:42 <lambdabot> whistles innocently not available
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:27 <elliott_> Bitter bot famine.
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:14 <elliott_> WATCHING ALL OF US.
07:06:42 -!- fungot has quit (Quit: OKAY OKAY you don't have to get all BENT OUT OF SHAPE).
07:07:28 <elliott_> 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:10:48 <elliott_> This is ridiculous.
07:11:32 <oerjan> pikhq_: oh heh it's not _actually_ a security flaw, but an excessive _prevention_ of a security flaw? :D
07:11:45 <pikhq_> Yes.
07:11:55 <elliott_> So, to recap.
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:12:47 <elliott_> OH NOEZZE
07:13:19 <elliott_> Ah.
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:16 <fizzie> Oh, s/our/your/
07:14:24 <fizzie> Makes more sense that way, admittedly.
07:14:37 <elliott_> startkeylogger
07:14:40 <elliott_> startkeylogger startkeylogger startkeylogger
07:14:41 <elliott_> startkeylogger
07:14:45 <pikhq_> Huh, didn't think a non-American would really know of that.
07:14:47 <fizzie> Lartkeystogger.
07:15:00 <elliott_> OK, \[one]DCC SEND = zero; startkeylogger = one.
07:15:03 <elliott_> Let's talk in binary ASCII.
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:20:48 <olsner> fizzie: ok :)
07:21:20 <olsner> so Captain Planet is something like the power rangers' combined form?
07:21:28 <elliott_> racist ducks
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:17 <elliott_> Power FLOOPERS.
07:24:22 <elliott_> Power KLOBNTOS.
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:24:55 <pikhq_> Giant mechs!
07:25:08 <elliott_> Sgeo: ubuntu borked.
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:32 <elliott_> YOU'RE 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:28 <elliott_> Both.
07:29:34 <elliott_> Hemingway writes Isometric.
07:29:40 <olsner> ah, obviously
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:55:00 <elliott_> That will solve EVERYTHING
07:57:06 <olsner> yeah, there's a reason they didn't call it FailC++!
07:58:46 <elliott_> :D
08:00:23 <oerjan> FailC++ is however the obvious choice for LoseThos
08:03:45 <elliott_> groan
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:04:14 <elliott_> LoseThos Facebook Group
08:04:16 <elliott_> oh FUCK eys
08:04:18 <elliott_> yes
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:11:28 <elliott_> (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:13:15 <elliott_> last sentence
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:03:58 <elliottjog> >are you fucking kidding me
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:05:35 <elliottjog> (technical term)
10:06:52 <elliottjog> now is the time --><_--
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:02 <elliott_> What the...
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:43 <elliott> YOU'RE FUCKING RETARDED.
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:07 <elliottog> but... eugh
12:32:13 <elliottog> alt-tabbing is now slow, somehow
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:24 <elliottog> ais523: no, Trinity is
12:35:28 <elliottog> which is a fork, yes
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:09 <ais523> I might do it again
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:18 <elliottog> Because that's fashionable.
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:38 <elliottog> you mean per-window?
12:40:42 <ais523> yes
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:05 <elliottog> and will go the same way forever
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:23 <elliottog> ugh no wait
12:46:26 <elliottog> they've added a shitty dock thing
12:46:31 <elliottog> ais523: because GNOME Shell is /really/ terrible
12:46:49 <ais523> elliottog: ah, I see
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:47:59 <elliottog> Well
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:46 <elliottog> i.e. taking control of everything
12:48:52 <elliottog> I seriously need a higher resolution, I'm rebooting
12:48:53 <ais523> that would make sense
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:17 <ais523> ah, I see
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:03 <elliottugh> ais523: nope, you are wrong
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:31 <elliottugh> I repeat my previous statement
12:56:33 <ais523> which is technically using the hard disk, but abstracted awauy
12:56:36 <ais523> *away
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:15 <elliottugh> Define temporary files.
12:57:41 <ais523> files that you won't need again after you've shut down your computer
12:57:52 <elliottugh> Who said I did not delete those?
12:57:59 <ais523> you implied it
12:58:20 <elliottugh> Where?
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:01 <elliottugh> Store or (consume and store).
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:07:52 <elliott> bleh
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:16:54 * ais523 checks
13:16:56 <ais523> hmm, it indeed was
13:17:45 <elliott> ais523: how is it wrong?
13:18:27 <ais523> should be four zeros, separated by spaces, at the end
13:18:38 <elliott> nope
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:02 <elliott> ais523: wrong
13:19:10 <elliott> firstly, it's just any sufficiently long name /or/ zeroes
13:19:11 <elliott> secondly
13:19:11 <elliott> bleh
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:20:46 <elliott> pretty much
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:30 <elliott> too many aises
14:00:32 <ais523_> I had the desktop booted already in case this happened
14:00:32 <elliott> aisen
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:32:22 <elliott> hmm, xubuntu or debian...
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:40:15 <elliott> do you mean DE?
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:44:42 <elliott> and I think LXDE too now
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:35:51 <elliott> BEEP BEEP EMERGENCY
15:36:32 <cheater_> who's graue, ais523?
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:29 <elliott> that's a good one
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:52 <elliott> hahaha
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:43 <elliott> X-D
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:04 <elliott> um, wow
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 <cheater_> @protontorpedo
16:07:31 <lambdabot> Im really only a bash person and even then Im tin
16:07:36 <cheater_> @protontorpedo
16:07:36 <lambdabot> I hear from an essay by E raymod that perl is shitty for large projects
16:07:43 <cheater_> @protontorpedo
16:07:43 <lambdabot> is there a decent scheduler in haskell? how about a netwrok monitor?
16:07:49 <cheater_> yup.
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:09:47 <monqy> good job
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:10:52 <elliott> Erm, what?
16:10:53 <elliott> It was a test.
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:21 <fizzie> Perhaps an artist?
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:30:44 <elliott> it's willy on wheels
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:54:30 <elliott> that was a spambot :O
16:54:54 <ais523> quite possibly
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
16:56:23 <ais523> ah
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:12:06 <monqy> mostly, yes
17:19:28 <elliott> grr
17:19:32 <elliott> how to transfer this huge file to my other disk
17:19:35 <elliott> hmm
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:19:57 <elliott> yes
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:25 <Vorpal> elliott, there?
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:03 <elliott> wat
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:29 <elliott> well
18:09:36 <elliott> i was unaware you had such terrible constraints :/
18:09:50 <Vorpal> elliott, sadly I do
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:40 <Vorpal> indeed
18:10:49 <elliott> actually buying them is left as an exercise to the reader
18:11:38 <Vorpal> damn :/
18:11:39 <Vorpal> ;P
18:11:52 -!- azaq23 has quit (Ping timeout: 246 seconds).
18:12:09 <elliott> welp :P
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:06 <Vorpal> yes
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:14:37 <elliott> Well, right.
18:14:38 <Vorpal> that works
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:24 <Vorpal> elliott, for CPU?
18:15:28 <elliott> Yes.
18:15:30 <elliott> On FAR?????? WHOA BUDDY
18:15:35 <elliott> GETTIN' A LITTLE AHEAD OF OURSELVES HERE
18:15:35 <Vorpal> :P
18:15:37 <elliott> MIGHT HAVE TO UP THAT BUDGET
18:15:41 <Vorpal> har
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:52 <elliott> Vorpal: BORING.
18:18:55 <elliott> Actually you probably have mastered the art of using more than eighty gigabytes on your OS anyawy.
18:18:56 <elliott> anyway.
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:37 <Vorpal> wait no I can't
18:19:40 <Vorpal> wrong system
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:38 <elliott> I mean your PC
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:06 <Vorpal> 2? 4?
18:21:15 <elliott> Six, eight, insert cheerleadering
18:21:22 <Vorpal> hah
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:38 <ais523> elliott: heh
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:10 <elliott> Wow :P
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:24:39 <ais523> Vorpal: why?
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:13 <Vorpal> elliott, *huh*
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:20 <ais523> *large?
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:45 <elliott> Vorpal: No?
18:27:46 <Vorpal> s/=/?/
18:27:54 <Vorpal> ais523, yes probably
18:27:55 <elliott> ais523: it's based around a gigantic array of blocks
18:27:58 <elliott> so yes
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:13 <elliott> RAM helps obviously.
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:28 <Vorpal> then Athlon II?
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:38 <elliott> ais523: Dynamic?
18:28:42 <ais523> elliott: exactly
18:28:47 <elliott> ais523: But large.
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:10 <elliott> That's not bad.
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 <Vorpal> ais523, such as?
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:30:57 <elliott> nice
18:30:59 <Vorpal> olsner, *wtf*
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:16 <elliott> ...seriously?
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:31 <elliott> Vorpal: Yes.
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:43 <Vorpal> duo*
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:02 <Vorpal> hm okay
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:38 <Vorpal> elliott, I see
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:26 <ais523> bug in the hardware
18:33:37 <Vorpal> I see
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:40 <ais523> elliott: *electronic!
18:34:45 <elliott> ais523, ;D ;D ;D
18:34:46 <elliott> :TROLLFACE:
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:15 <elliott> gotta love rubber bricks
18:35:16 <ais523> olsner: both electrical and electronic exist, but do different things
18:35:19 <Vorpal> ais523, it has?
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:09 <elliott> and meditate a lo
18:36:10 <elliott> t
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:20 <Vorpal> elliott, right
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:23 <elliott> Vorpal: X_X
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:34 <Vorpal> aha
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:40 <elliott> So yes, OOOOOOOOOOOLD
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:06 <Vorpal> hm
18:38:08 <elliott> i.e. two megs.
18:38:09 <Vorpal> elliott, rather tiny
18:38:10 <Vorpal> hm
18:38:12 <elliott> Not really :P
18:38:22 <elliott> Only the Core Twos have ridiculously large Ltwos.
18:38:25 <Vorpal> ah
18:38:30 <Vorpal> elliott, so what is L3 then?
18:38:37 <elliott> Like Ltwo but slower :P
18:38:41 <Vorpal> model name : Intel(R) Core(TM)2 Duo CPU P8400 @ 2.26GHz
18:38:42 <Vorpal> cache size : 3072 KB
18:38:42 <elliott> And shared, rather than per-core.
18:38:45 <Vorpal> elliott, *duh*
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:33 <elliott> More than Athlon IIs :P
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:04 <Vorpal> oh and same socket?
18:40:11 <elliott> Yes
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:26 <elliott> Hmm
18:40:30 <Vorpal> elliott, oh and another thing: gbit ethernet.
18:40:35 <Vorpal> but I guess that is standard
18:40:52 <Vorpal> elliott, huh
18:41:28 <elliott> Yes, that is standard :P
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:15 <elliott> It must be done.
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:44:31 <Vorpal> I see
18:46:47 <Vorpal> elliott, I forgot: PS/2 for keyboard, or I need to find a new nice white keyboard
18:46:50 <Vorpal> full size
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:32 <Vorpal> good
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:49:38 <Vorpal> probably 300 W
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:54:58 <Vorpal> I see
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:13:14 <Vorpal> elliott_, wb
19:16:31 -!- elliott has quit (Ping timeout: 240 seconds).
19:18:42 <myndzi> what's better than ZIF sockets?
19:18:47 <myndzi> NIF sockets?L
19:19:02 <Vorpal> NIF?
19:19:24 <ais523> negative insertion force, obviously
19:19:32 <Vorpal> ah
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:53 <ais523> *well
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:27:47 <Vorpal> aww
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:35:49 <Vorpal> need a*
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:24 <Vorpal> :/
19:56:39 -!- Aune has quit (Quit: Page closed).
19:57:45 <cheater666> Vorpal, a dvd drive costs like $2
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"
19:59:33 <cheater666> hmm
19:59:37 <cheater666> iirc no
19:59:43 <cheater666> but let me look up what LGA was again
19:59:51 <Vorpal> land grid array
19:59:58 <cheater666> oh right
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:03:53 <cheater666> i know
20:03:58 <cheater666> but i mean for processors
20:04:05 <Vorpal> cheater666, so do I!
20:04:24 <Vorpal> cheater666, though not desktop cpus
20:04:36 <Vorpal> microchip programmers and suc
20:04:38 <Vorpal> such*
20:04:41 <cheater666> actually
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:04:58 <Vorpal> olsner, wonderful
20:05:00 <cheater666> it seems that there are mating mechanisms that DO catch the balls
20:05:02 <cheater666> and they're ZIF
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:05:39 <Vorpal> right
20:06:14 <cheater666> because there's no insertion
20:06:29 <cheater666> so why will you not be here Vorpal?
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:06:56 <cheater666> that's gonna suxx0r
20:07:34 <cheater666> ohhh ok
20:07:41 <cheater666> are you starting uni?
20:07:44 <cheater666> or.. wait
20:07:48 <Vorpal> cheater666, ..............
20:07:50 <cheater666> which year are you on? T_T
20:07:56 <Vorpal> cheater666, second
20:07:56 * cheater666 shrugs
20:08:00 <cheater666> ok
20:08:03 <cheater666> what are you studying?
20:08:07 <Vorpal> compsci
20:08:08 <cheater666> something cool like maths?
20:08:13 <cheater666> oh..
20:08:14 <cheater666> ok
20:08:20 <Vorpal> isn't compsci cool?
20:08:27 <cheater666> how is it treating you?
20:08:28 <cheater666> i dunno
20:08:34 <cheater666> i find it a good hobby
20:08:37 <cheater666> but like..
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:08:53 <cheater666> how is the course treating you?
20:08:54 <cheater666> as in..
20:08:55 <cheater666> how is it?
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:36 <cheater666> no i mean the course
20:09:39 <Vorpal> (though I haven't used FPGAs for a while)
20:09:42 <cheater666> a course can be hard on you
20:09:43 <cheater666> !
20:09:53 <Vorpal> well, not too hard *shrug*
20:10:00 <Vorpal> varies with module
20:10:05 <cheater666> gotcha
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:11:48 <cheater666> :P
20:11:50 <cheater666> compilers?
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:36 <Vorpal> olsner, thank god no
20:12:48 <Vorpal> cheater666, compilers is during the autumn
20:12:52 <Vorpal> so no clue yet
20:12:59 <cheater666> ok
20:13:22 <olsner> meh, you haven't done compilers yet?
20:13:27 <Vorpal> olsner, nope.
20:13:43 <Vorpal> night →
20:13:50 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
20:14:07 <olsner> the compiler course is probably my favourite
20:14:34 <cheater666> hah
20:36:17 <ajf|offline> hi
20:36:37 -!- ajf|offline has changed nick to ajf.
20:51:43 <Phantom_Hoover> `quote
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.
20:54:43 * Phantom_Hoover lynches Lymia in the classic Texan style.
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:12 <elliott_> can it be JITted reasonably?
21:08:22 <ajf> JITed yes
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:05 <ajf> haha
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:08 <ajf> why?
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:01 <ajf> so yes
21:29:24 <Lymia> Uh..
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:29:38 <ajf> eh?
21:29:53 <ajf> oh
21:30:00 <ajf> the way they are all out of order?
21:31:38 <ajf> Lymia: what is your complaint?
21:31:38 <ajf> :/
21:32:07 <Lymia> Can't you generate that at runtime?
21:32:16 <ajf> well.
21:32:19 <ajf> I can.
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:42 <ajf> eh anyway
21:33:43 <ajf> goodnight
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:46:48 <Phantom_Hoover> — WP
21:47:03 <elliott_> X-D
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:02:35 <elliott_> Last one is Common Lisp.
22:03:49 <elliott_> I suspect it is a reference to the Rhino JS engine, going by the sidebar.
22:04:21 <Sgeo> Ah
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:35 * Phantom_Hoover → sleep
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).
2011-05-10
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:12 * oerjan googles
02:45:15 <NihilistDandy> oerjan: Professore Farnsworth on Futurama
02:45:19 <NihilistDandy> *Professor
02:45:30 <NihilistDandy> In the episode where Fry needs to find an apartment
02:45:33 <oerjan> ah
02:45:53 <NihilistDandy> @google youtube to shreds you say
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:01 <NihilistDandy> Haha. It's a touch 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:14 <oerjan> ah.
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:49:11 <oerjan> *i can
02:50:33 <NihilistDandy> Also, something funny from #haskell
02:50:37 <NihilistDandy> @where wtfmonad
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:22 <NihilistDandy> Yes, we had that discussion :P
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"
02:53:27 <oerjan> er /middle //
02:53:27 <NihilistDandy> Also mentioned
02:53:39 <NihilistDandy> In almost those exact words
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>
03:52:23 <coppro> lol
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:19:37 <oerjan> ouch
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:37:14 <monqy> really? eugh
04:42:01 <Lymia> Is it a botnet or somethin?
04:42:03 <Lymia> something*
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:27 <Lymia> Wait.
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
10:31:59 <cheater_> that's niiiice
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 <Phantom_Hoover> H
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:17:38 <Phantom_Hoover> http://en.wikipedia.org/wiki/Isotopes_of_tantalum
15:17:40 <Phantom_Hoover> O.o
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:04 <Phantom_Hoover> http://www.rfreitas.com/Nano/TangibleNanomoney.htm
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:39:16 <Phantom_Hoover> -what-
15:40:31 <elliott> what
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:43:51 <elliott> hasn't it already
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:46:25 <elliott> Soo'm not that much.
15:47:57 -!- oerjan has joined.
15:49:04 <Vorpal> elliott, ah okay...
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:54:54 <elliott> SHARPIE WINS
16:55:37 <elliott> http://en.wikipedia.org/wiki/Skilcraft
16:55:38 <elliott> Hmm.
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
16:57:52 <Phantom_Hoover> You are a bad man, oerjan.
16:58:35 <oerjan> how rude
17:08:25 -!- zzo38 has joined.
17:19:46 <Phantom_Hoover> > 3/238
17:19:46 <lambdabot> 1.2605042016806723e-2
17:19:51 <Phantom_Hoover> > 1/181
17:19:51 <lambdabot> 5.5248618784530384e-3
17:20:51 <oerjan> @hoogle (a, a) -> Rational
17:20:51 <lambdabot> Prelude fst :: (a, b) -> a
17:20:51 <lambdabot> Data.Tuple fst :: (a, b) -> a
17:20:51 <lambdabot> Prelude snd :: (a, b) -> b
17:21:13 <oerjan> @hoogle RealFrac a => (a, a) -> Rational
17:21:13 <lambdabot> Prelude fst :: (a, b) -> a
17:21:13 <lambdabot> Data.Tuple fst :: (a, b) -> a
17:21:13 <lambdabot> Prelude snd :: (a, b) -> b
17:21:19 <elliott> oerjan: it's a -> a -> isn't it ...
17:21:22 <elliott> oh wait
17:21:23 <elliott> that thing
17:21:30 <Phantom_Hoover> What thing.
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:34 <lambdabot> Prelude asTypeOf :: a -> a -> a
17:21:40 <elliott> that thing
17:21:56 <oerjan> > approxRational (pi-1/100, pi+1/100)
17:21:57 <lambdabot> Overlapping instances for GHC.Show.Show
17:21:57 <lambdabot> ((a, a...
17:22:07 <oerjan> er
17:22:12 <oerjan> > approxRational (pi-1/100) (pi+1/100)
17:22:13 <lambdabot> 0 % 1
17:22:21 <oerjan> wtf
17:22:32 <oerjan> hm maybe it's not a range
17:22:32 <elliott> lol
17:22:40 <elliott> it isn't
17:22:41 <oerjan> > approxRational pi (1/100)
17:22:41 <elliott> its precision i think
17:22:42 <lambdabot> 22 % 7
17:22:54 <elliott> > approxRational pi (1/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000)
17:22:55 <lambdabot> 884279719003555 % 281474976710656
17:23:04 <elliott> > approxRational pi 0
17:23:04 <lambdabot> 884279719003555 % 281474976710656
17:23:09 <elliott> WAT
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:23:49 <oerjan> indeed
17:24:01 <elliott> > approxRational (pi::CReal) 0
17:24:02 <lambdabot> *Exception: CReal.toRational
17:24:07 <elliott> lurlz
17:24:22 <elliott> > approxRational (pi::CReal) (1/100)
17:24:22 <lambdabot> *Exception: CReal.toRational
17:24:34 <elliott> lame
17:24:38 <oerjan> wtf
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:04 <oerjan> Data.Ratio
17:28:06 <Vorpal> aha
17:28:14 <Vorpal> useful stuff
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:22 <Vorpal> ah
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:28:52 <Vorpal> which I lack a lot in
17:29:34 <elliott> not really
17:29:48 <elliott> base is basically
17:29:54 <elliott> - IO, IO, lots of IO
17:29:58 <elliott> - basic data structures
17:30:01 <elliott> - LOTS OF THEORY
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:49 <elliott> note right-hand column
17:30:59 <elliott> hmm bytestring coming with ghc seems recent
17:31:04 <elliott> ah
17:31:04 <Vorpal> hm
17:31:06 <elliott> Vorpal: http://www.haskell.org/ghc/docs/latest/html/libraries/base/index.html
17:31:08 <elliott> that's just the stdlib
17:31:12 <Vorpal> ah
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:15 <Gregor> X-D
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:31:48 <elliott> and unsafe things :)
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:39 <elliott> Vorpal: you don't
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:28 <Vorpal> aha
17:33:29 <elliott> the IO monad is actually just a state monad done with unboxed tuples
17:33:34 <elliott> on State[hash] RealWorld
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:21 <Vorpal> ah
17:34:27 <elliott> Vorpal: say main was a list
17:34:30 <elliott> main :: [Integer]
17:34:32 <elliott> lists are implemented in Haskell
17:34:35 <Vorpal> elliott, hah
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:07 <elliott> Vorpal: it wouldn't
17:35:11 <elliott> Main.main has to have type IO ()
17:35:14 <elliott> erm
17:35:14 <Vorpal> ah right
17:35:15 <elliott> IO a for any a
17:35:16 <elliott> actually
17:35:24 <elliott> Vorpal: if you did
17:35:27 <Vorpal> elliott, dammit, type safety, taking all the fun away ;P
17:35:27 <elliott> main :: IO ()
17:35:31 <elliott> main = unsafeCoerce [9,9,9]
17:35:34 <elliott> it'd just segfault probably
17:35:38 <Vorpal> likely
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:05 <Vorpal> aha
17:36:10 <elliott> really, that's a bit of an obvious name...
17:36:11 <elliott> erm
17:36:12 <elliott> or exitWith
17:36:15 <Vorpal> ah
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:36:55 <elliott> Vorpal: IORefs
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:08 <elliott> you get an (IORef a)
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 <Vorpal> right
17:37:27 <elliott> but with unsafePerformIO, you can put anything into it unsafely
17:37:28 <elliott> and take it out
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:34 <ajf> hmm
17:37:35 <Vorpal> uh... okay
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:35 <Vorpal> haven't had time
17:38:42 <Vorpal> elliott, wait what, isn't being able to crash the thing unsafe?
17:38:51 <elliott> Vorpal: yes
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:13 <elliott> Vorpal: edward kmett
17:39:26 <Vorpal> elliott, that went over my head
17:39:30 <elliott> :)
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:53 <Vorpal> or some such
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:37 <elliott> Vorpal: it doesn't
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:54 <elliott> even less in fact
17:40:56 <oerjan> Data.Dynamic uses unsafeCoerce internally, obviously...
17:41:01 <elliott> oerjan: yep
17:41:04 <elliott> Vorpal: Dynamic typing
17:41:08 <Vorpal> ooh nice
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:28 <elliott> (returning (Maybe a))
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:41:53 <elliott> Shiro uses this
17:42:02 <elliott> but before I realised Data.Dynamic would suffice, my implementation used unsafeCoerce
17:42:08 <Vorpal> elliott, haha
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:42:52 <elliott> yes
17:42:58 <elliott> foo x
17:43:08 <pikhq> Y'know what's awesome?
17:43:12 <elliott> shut up pikhq i'm livecoding
17:43:13 <elliott> foo x
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:16 <elliott> ODFOIJGIOSGJOIDFJGOIG
17:43:17 <elliott> foo x
17:43:21 <Vorpal> elliott, I mean this would be stupidly simple in erlang
17:43:23 <elliott> ...
17:43:25 <elliott> STOP TALKING
17:43:27 <elliott> foo x
17:43:27 <pikhq> Waking up and realising you should have woken up an hour ago.
17:43:30 <elliott> ...
17:43:31 <elliott> pikhq
17:43:31 <elliott> die
17:43:32 <elliott> foo x
17:43:39 <elliott> | (a,b) <- (fromDynamic x :: (Int,Int)) = ...
17:43:41 <Vorpal> pikhq, *ouch*
17:43:42 <elliott> erm
17:43:44 <elliott> OH JESUS CHRIST
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:43:58 <elliott> oerjan: ban everyone
17:43:59 <elliott> foo x
17:44:03 <elliott> | Just (a,b) <- (fromDynamic x :: (Int,Int)) = ...
17:44:09 <elliott> argh
17:44:10 <elliott> foo x
17:44:12 <elliott> | Just (a,b) <- (fromDynamic x :: Maybe (Int,Int)) = ...
17:44:18 <elliott> | Just a <- (fromDynamic x :: Maybe Integer) = ...
17:44:22 <elliott> | otherwise = "fuck you"
17:44:25 <elliott> etc.
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:05 <elliott> Data.Binary
17:45:08 <Vorpal> hm
17:45:11 <elliott> from the binary package (part of Haskell Platform)
17:45:14 <Vorpal> elliott, ah thanks
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:50 <oerjan> *to
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:12 <elliott> Vorpal: runtime? small
17:46:23 <elliott> the overhead of (toDyn x) compared to x is
17:46:27 <elliott> - a data constructor
17:46:29 <elliott> - the type representation
17:46:32 <Vorpal> ah
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:00 <Vorpal> I think you said that
17:47:06 <elliott> newtype Key = Key Int deriving( Eq )
17:47:13 <elliott> and
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:40 <elliott> well
17:47:41 <elliott> GHC does
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:14 <Vorpal> hm
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:34 <Vorpal> ah
17:48:35 <oerjan> and Dynamic builds on that
17:48:48 <elliott> right, typeclass magic
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:18 <elliott> so it uses unsafeCoerce
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:51:40 <elliott> Or how often :P
17:51:46 <pikhq> Well, yes.
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:11 <ajf> hmm
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:44 <elliott> what about
17:54:48 <oerjan> elliott: unless something has changed majorly, yes...
17:54:58 <elliott> oerjan: show (Showable (fromDyn x ()))
17:54:59 <elliott> where
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:42 <elliott> hmm, right
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:37 <elliott> right
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:03:52 <elliott> oerjan: :D
18:04:16 <elliott> Hey Vorpal.
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:13 <Vorpal> elliott, for what?
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:15:37 <oerjan> oklo the pol
18:15:51 <oklopol> glio the fog
18:16:56 <augur> oklopol!
18:16:57 <augur> :D
18:17:39 <oklopol> hy
18:22:11 <augur> soup oklo
18:22:56 <oklopol> i'm tirred
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:25:47 <Vorpal> I see
18:25:55 <elliott> all the maening
18:26:32 <quintopia> how about jesus? i hear he's lost too
18:27:02 <elliott> he isssssssssss lost in space
18:30:40 <elliott> update we found him
18:30:41 -!- EgoBot has joined.
18:30:45 <Gregor> !sh echo PROBLEM SOLVED
18:30:47 <EgoBot> \xE2\x98\x83 PROBLEM SOLVED
18:30:49 <Gregor> ...
18:30:51 <Gregor> Not quite :P
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:17 <Gregor> By coincidence, yes.
18:31:21 <Gregor> Nope, this will be better.
18:31:23 <Gregor> I assure you.
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:31:53 <EgoBot> ☃ PROBLEM SOLVED
18:32:03 <elliott> ...
18:32:07 <elliott> I sure hope you're joking.
18:33:42 <Gregor> !sh echo Better?
18:33:42 <EgoBot> ​Better?
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:04 <Gregor> > "foo"
18:36:05 <lambdabot> "foo"
18:36:14 <Gregor> !sh echo '> "foo"'
18:36:15 <EgoBot> ​> "foo"
18:36:17 <Gregor> MAGIC
18:36:38 <fizzie> Tragic!
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:36:44 <quintopia> sadface :(
18:36:50 <siracusa> !sh echo @source !sh echo
18:36:50 <EgoBot> ​@source !sh echo
18:37:09 <elliott> ?so cool
18:37:09 <lambdabot> cool not available
18:37:17 <Gregor> elliott: Magic is "elliott will complain about every fucking thing I do so he can just fuck off"
18:37:28 <siracusa> @so blah
18:37:28 <lambdabot> blah not available
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:30 <elliott> Yes it is.
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:07 <elliott> so lol
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:00 <elliott> Gregor: EgoBot is wrong.
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:42:54 <EgoBot>
18:42:58 <Gregor> lolwut
18:43:10 <Gregor> I sure broke that X-D
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:43:57 <EgoBot>
18:44:00 <Gregor> ...
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:27 <elliott> 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:45:48 <elliott> TM TM TM
18:45:53 <elliott> TM™
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:47:26 <Gregor> lolol wrong
18:48:29 <Gregor> `echo You guys can go suck a rusty nail.
18:48:30 <HackEgo>
18:48:37 <Gregor> I rule
18:49:03 <elliott> Stop being fascism, guys.
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:39 <Gregor> Fin.
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:12 <Gregor> That's ridiculous.
18:52:19 <monqy> startkeylogger
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:55:58 <cheater666> let me wager a try
18:59:17 <oklopol> #esoteric-minecraft is just a front for prostitution
19:00:57 <ajf> lopl
19:01:00 <oklopol> and minecraft
19:01:21 <ajf> yeah
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:10:45 <quintopia> several of them
19:10:54 * tswett nods.
19:11:32 -!- ais523 has joined.
19:11:45 <tswett> !which which
19:11:57 <tswett> `which which
19:11:58 <HackEgo> ​/usr/bin/which
19:12:01 <tswett> `ls /usr/bin
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:16 <tswett> `base64
19:12:18 <HackEgo> No output.
19:12:26 <tswett> `base64 No output.
19:12:28 <HackEgo> No output.
19:12:31 <tswett> Aw.
19:12:37 <ais523> the bots are back?
19:12:40 <tswett> `file base64
19:12:42 <HackEgo> ​base64: ERROR: cannot open `base64' (No such file or directory)
19:12:53 <tswett> `file /usr/bin/base64
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:38 <ajf> oh dear
19:13:42 <ajf> I use it on Linux
19:13:43 <ajf> ...DL
19:13:46 <ajf> D:*
19:13:48 <ajf> hmm
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:15:58 <cheater666> quintopia, yeah
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:15 <elliott> VOIP is a bitch
19:16:19 <ais523> ah, hmm
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:16:41 <elliott> but what about streaming?
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:21 <ajf> but
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:40 <elliott> too many
19:18:46 <ajf> indeed
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 ==That’s not just logic. That’s really ssenbile.' (and the only contributor was '1.202.192.7'))
19:19:50 <elliott> new favourite quotes
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:00 <elliott> hi Sgeo
19:21:02 <Sgeo> hi
19:21:06 <tswett> Hi oklopol.
19:21:10 <elliott> have you transferred yet
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:04 <quintopia> that basterd
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:17 <elliott> does she smoke
19:22:18 <Sgeo> i suck at everything :(
19:22:19 <fizzie> Sgeo: She might like your what?
19:22:29 <elliott> fizzie: dont be rude
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:40 <elliott> like "personality"
19:22:41 <Sgeo> fizzie: sorry typo
19:22:42 <Sgeo> *me
19:22:48 <Phantom_Hoover> Sgeo, I...
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 <Phantom_Hoover> *According to your dad*.
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:12 <elliott> oh
19:23:14 <elliott> he's gone
19:23:15 <elliott> hi oklopol
19:23:16 <oklopol> my last kiss was a long time ago
19:23:26 <oklopol> erm
19:23:32 <oklopol> wait actually it isn't
19:23:33 <oklopol> :D
19:23:41 <oklopol> my last sex was tho
19:23:43 <Phantom_Hoover> oklopol, that was bad and you are a bad person.
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:23:54 <Phantom_Hoover> Clearly I should be informed if Sgeo is to be mocked.
19:24:01 <oklopol> i tried to make it terribly obvious i was joking
19:24:08 <elliott> poe's law
19:24:17 <elliott> it is impossible to be more sgeo than gseo
19:24:18 <elliott> sgeo
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:43 <oklopol> ais523: i moved
19:24:46 <oklopol> well
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:15 <Phantom_Hoover> `google Poe's Law
19:25:17 <HackEgo> No output.
19:25:22 <elliott> X-D
19:25:23 <Phantom_Hoover> I thought that was a Thing.
19:25:27 <Phantom_Hoover> !google Poe's Law
19:25:27 <EgoBot> ​http://google.com/search?q=Poe's+Law
19:25:34 <elliott> ?google Poe's Law
19:25:36 <lambdabot> http://rationalwiki.org/wiki/Poe's_Law
19:25:36 <lambdabot> Title: Poe's Law - RationalWiki
19:25:42 <elliott> hey look
19:25:43 <Phantom_Hoover> A refreshing directness of approach from EgoBot.
19:25:43 <elliott> http://en.wikipedia.org/wiki/Poe%27s_law
19:25:46 <elliott> it has a wikipedia article now
19:25:51 <elliott> it just started existing
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:27:45 <elliott> it was quite infuriating
19:28:43 <oklopol> if there's a rational wiki is there also a natural wiki and a real wiki?
19:29:09 <elliott> yes
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:29:39 <oklopol> ...
19:29:58 <oklopol> i hate myself
19:30:13 <cheater666> @protontorpedo
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:13 <lambdabot> coding
19:30:17 <elliott> i hate you too oklopol
19:30:22 <oklopol> lol no you don't
19:30:37 <cheater666> ^
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:33 <elliott> it seems that
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:35 <ajf> wait
19:33:39 <ajf> Google App Engine for GO
19:33:40 <ajf> wow
19:34:29 <cheater666> how is that a surprise
19:34:34 <cheater666> or an interesting thing
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:12 <ajf> meh
19:35:15 <cheater666> why did you think google made it
19:35:19 <cheater666> if not for app engine
19:35:23 <ajf> ooh
19:35:26 <ajf> Good point.
19:35:31 <elliott> google did not make go
19:35:40 <elliott> go is a twenty-percent time project by the creators of plan 9.
19:35:49 <ajf> ah
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:55 <ajf> yes
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:36:52 <ajf> hmm
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:08 <ajf> I think
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:40:58 <cheater666> oh wait.
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:14 <elliott> ken will be devastated.
19:43:31 <cheater666> make sure to include a nice drawing with it.
19:43:33 <cheater666> maybe of a spider.
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:16 <quintopia> oh
20:18:17 <ais523> as is the one above, and the one about /that/ is about Poe's Law
20:18:17 <Gregor> It's not a "would be"
20:18:21 <Gregor> Microsoft's buyout is confirmed.
20:18:23 <ais523> *above /that/
20:18:23 <quintopia> it's not in the topic anymore
20:18:23 <quintopia> nvm
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:23 <ajf> so uh
20:31:28 <ajf> inb4
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:32:43 <ajf> haha
20:32:45 <ajf> indeed.
20:33:00 <ajf> Microsoft used to say
20:33:07 <ajf> that XENIX and DOS went hand-in-hand
20:33:15 <Gregor> Now they say "Xenix?"
20:33:25 <ajf> you know, that you could write applications that using common I/O and functions would work on both
20:33:28 <ajf> yeah
20:33:39 -!- Cheery has quit (Quit: Lost terminal).
20:33:44 <ajf> In fact
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:34:55 <ajf> Ah
20:36:05 <Gregor> In the beginnings of the OS X days, Apple scrubbed all references to Linux from their site.
20:36:17 <ajf> Of course
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 <Vorpal> when did Xenix die?
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:37 <ajf> hurr
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:26 <ajf> you mean
20:38:35 <ajf> a monolithic kernel running ON TOP OF a microkernel?
20:38:51 <Gregor> Yup.
20:38:52 <Vorpal> but wait, what happened to netmeeting?
20:38:57 <Vorpal> anyone remember it?
20:38:57 <ajf> what the fuck
20:38:58 <Gregor> Sort of like MkLinux.
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:31 <Vorpal> Gregor, right
20:39:38 <Vorpal> Gregor, AND MS Chat!
20:39:44 <Vorpal> in comics mode!
20:39:44 <ajf> wait
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:46 <ajf> you know
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:12 <Gregor> Yup.
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:47 <ajf> It isn't
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:41:57 <elliott> Wait, no they don't.
20:42:01 <ajf> Darwin is built on XNU
20:42:10 <ajf> but apple also have released XNU
20:42:12 <ajf> ?
20:42:13 <elliott> XNU is BSD on Mach.
20:42:18 <Gregor> ajf: Yeah, it's XNU that I'm referring to.
20:42:25 <elliott> (With drivers on Mach.)
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:37 <ajf> I know
20:42:42 <ajf> I was not completely serious
20:42:43 <ajf> Plus
20:42:50 <Vorpal> ah
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:43 <Vorpal> perhaps
20:43:44 <ajf> Probably.
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:03 <ajf> yes
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:19 <elliott> Define incompatible.
20:44:25 <cheater666> Gregor, OSX is an abomination
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:03 <elliott> No.
20:45:03 <ajf> FACT
20:45:04 <cheater666> yes
20:45:05 <elliott> Cygwin is bad.
20:45:06 <elliott> Insanely bad.
20:45:09 <elliott> Cygwin is the slowest piece of shit ever.
20:45:10 <ajf> no it isn't
20:45:13 <elliott> Yes it is.
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:22 <elliott> And even that's lame.
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:39 <ajf> uhh
20:45:41 <ajf> ok...
20:45:47 <elliott> Cygwin's fork() is insanely slow and stupif.
20:45:47 <cheater666> on your 386?
20:45:48 <elliott> stupid.
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:45:55 <ais523> *configure
20:46:00 <ais523> it isn't slow in general, it's just really bad at forking
20:46:01 <ais523> because Windows
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:22 <olsner> elliott: orly?
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:35 <Vorpal> elliott, hm okay
20:46:36 <cheater666> Vorpal, osx has additionally the worst fucking gui ever
20:46:38 <elliott> ajf: What
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:43 <Vorpal> elliott, 2006 I meant
20:46:44 <cheater666> it's worse than X Window
20:46:47 <ajf> ais523: oh yeah, doesn't fork share address space or something
20:46:48 <ajf> I forget
20:46:55 <Vorpal> ajf, nope
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 <ajf> right
20:47:08 <elliott> This is not the same as starting a new process.
20:47:16 <ajf> entiendo.
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:43 <Vorpal> elliott, huh
20:47:43 <ajf> o.O
20:47:47 <elliott> And the package manager is HORRIBLE, and all the packages are major versions out of date.
20:47:54 <Vorpal> yes indeed
20:47:56 <elliott> Cygwin is terrible.
20:48:02 <ajf> hmm
20:48:04 <cheater666> but again
20:48:07 <cheater666> not as terrible as osx.
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:14 <cheater666> you know why?
20:48:18 <cheater666> because windows has putty
20:48:23 <cheater666> there is NO good terminal for osx
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:44 <Vorpal> ajf, yes
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:07 <ajf> the end
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:37 <Vorpal> so...
20:49:39 <ajf> oh, the KDE one
20:49:42 <cheater666> ajf, posix != unix
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:15 <Vorpal> go figure
20:50:16 <ajf> last time I used Konsole?
20:50:18 <ajf> ages ago
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:21 <ajf> knoppix
20:50:26 <ajf> bad and good memories flood back
20:50:27 <ajf> hmm
20:50:36 -!- TeruFSX has joined.
20:50:45 <cheater666> olsner, oh right, it required X11
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:50:55 <Vorpal> too used to it
20:51:00 <ajf> :/
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:13 <ajf> haha
20:51:18 <ajf> OK
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:34 <Vorpal> not sure
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:08 <Vorpal> ajf, Banana scheme?
20:52:16 <cheater666> fizzie, yeah
20:52:17 <Vorpal> (sorry for that)
20:52:21 <ajf> Vorpal: No, Objective-C
20:52:26 <Vorpal> oh right
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:35 <cheater666> ajf, O-C is not esoteric.
20:52:40 <Vorpal> fizzie, hm
20:52:43 <ajf> cheater666: Sure it is
20:52:51 <Vorpal> fizzie, that POSIX subsystem is dead isn't it?
20:52:55 <cheater666> it's only esoteric if you're a troll
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:57 <ajf> amirite
20:52:59 <fizzie> Vorpal: Yes, I believe it is.
20:53:20 <Vorpal> ajf, better than C++
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:34 <ajf> oh man
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:01 <Vorpal> ajf, ?
20:54:02 <ajf> PHP is vaguely usable
20:54:11 <Vorpal> no...
20:54:14 <Vorpal> not really
20:54:23 <olsner> ajf: lol php
20:54:30 <cheater666> is ajf trolling
20:54:33 <ajf> No
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:14 <cheater666> i speak german non-badly
20:55:19 <cheater666> and live in germany.
20:55:20 <ais523> augur: you mean in the channel? I imagine lots of people do altogether
20:55:29 <augur> ais523: yes :P
20:55:29 <Vorpal> <ajf> but worse exists <--- noooo?
20:55:30 <cheater666> currently.
20:55:42 <augur> cheater666: i need a german not a second-language speaker, but thank you
20:55:52 <cheater666> augur, why do 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:17 <ajf> err
20:56:17 <Vorpal> ajf, such as?
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:34 <Vorpal> quite a bit
20:56:39 <cheater666> better now
20:56:44 <ajf> Visual Basic
20:56:46 <cheater666> because i'm going to sleep in 3..2..1..
20:56:52 <cheater666> well not really but soon
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:14 <Vorpal> not much
20:57:17 <ajf> Hmm
20:57:26 <ajf> You know, PHP does have some *good* features
20:57:30 <Vorpal> such as?
20:57:31 <ajf> two of them
20:57:34 <ajf> the rest are shit
20:57:38 <Vorpal> which ones
20:57:41 <ajf> first, sessions are really easy
20:57:44 <ajf> session_start();
20:57:47 <ajf> second, globals
20:57:49 <ajf> $_GET
20:57:53 <Vorpal> ajf, ugh
20:57:53 <ajf> third, nothing else
20:57:57 <Vorpal> the second is a misfeature
20:58:03 <ajf> it isn't.
20:58:09 <ajf> $_GET["quack"]
20:58:15 <cheater666> yeah
20:58:17 <augur> ok ciao
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:29 <ajf> :/
20:58:33 <cheater666> or frameworks in said languages
20:58:47 <ajf> Actually
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:30 <ajf> sure sure
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:42 <Vorpal> ajf, why
21:00:46 <Vorpal> I'm serious
21:00:49 <ajf> PHP IS AWESOME BECAUSE EVRY FUNCTION YOU EVAR NEED EVAR IS IN THE GLOBAL NAMESPACE
21:00:53 <Vorpal> ah
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:22 <cheater666> 3. would not recommend hiring him
21:01:23 <Vorpal> didn't they add namespaces?
21:01:24 <Vorpal> iirc
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:29 <ajf> you know
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:36 <ajf> But
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:50 <ajf> :/
21:03:51 <Vorpal> well stupidity like that anyway
21:04:02 <cheater666> ajf, cry me a river
21:04:16 <cheater666> anyways, we should have like an esolang competition on writing stupid shit in php
21:04:21 <cheater666> using goto and stuff like that
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:31 <ajf> actually
21:04:33 <cheater666> maybe namespaces, introspection, and the debugging api
21:04:33 <ajf> OK
21:04:37 <ajf> I will race all of you
21:04:44 <ajf> to add the esolang article for PHP
21:04:46 <ajf> do it.
21:04:47 <ajf> now.
21:04:51 <Vorpal> nah
21:04:55 <Vorpal> it is too terrible for it
21:04:59 <ajf> hahaha
21:05:26 <cheater666> we could put it in the joke langs list
21:05:34 <ajf> yes. do that.
21:05:35 <cheater666> oh btw
21:05:36 <cheater666> BTW!
21:05:42 <cheater666> this guy is who added goto to php
21:05:56 <cheater666> or lobbied for it, whatever
21:05:57 <cheater666> so i was working with the best of the best
21:06:57 <ajf> ?
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:22 <cheater666> how do you manage that ajf
21:07:29 <ajf> what guy
21:07:35 <ajf> I somehow missed the person you mean
21:07:39 <cheater666> what flying saucer
21:07:47 <cheater666> there was no flying saucer
21:08:09 <cheater666> You are absolutely positive there never was and never will be a gun in this room.
21:08:40 <cheater666> *Your key has no bullets.*
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:10 <cheater666> it's not like php makes sense
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:27 <cheater666> what is the language
21:10:37 <ajf> guess
21:10:43 <cheater666> objective-c
21:10:47 <ajf> nope
21:10:51 <olsner> practical extraction and reporting language or whatever it's called?
21:10:55 <ajf> PHP
21:11:07 <ajf> it's obviously a joke
21:11:17 <ajf> I mean, who would make a language that crap intentionally/
21:11:34 <cheater666> Rasmus
21:11:40 <ajf> ah.
21:13:46 <ajf> http://esoteric.voxelperfect.net/wiki/PHP
21:13:56 <ajf> Could you guys help expand this article?
21:14:12 <cheater666> no
21:14:24 <cheater666> but put in info about some esolang properties of it
21:14:30 <cheater666> like goto, introspection, etc
21:14:54 <ajf> well
21:15:54 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
21:16:16 <cheater666> and streams
21:16:39 <ajf> hey
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:23 <ajf> really?
21:20:24 <ajf> lol
21:20:36 <ajf> I think PHP should be there though
21:20:38 <ajf> just ONE
21:20:43 -!- poiuy_qwert has joined.
21:21:21 <ajf> cheater666: what's wrong with classkit?
21:21:46 <cheater666> everything
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:34 <cheater666> i like the name of this extension
21:27:35 <cheater666> http://www.php.net/manual/en/book.nis.php
21:27:44 <cheater666> Y P/NIS?
21:27:56 <cheater666> BCUZ.
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:32:58 <cheater666> it is not
21:33:05 <cheater666> esoteric means not well known
21:33:10 <cheater666> it is widely known and used
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:35:22 <ajf> YUP.
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:55:51 <elliott> um no posix = unix
21:55:53 <elliott> same standard
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:56:25 <elliott> wow you're full of shit
21:57:38 <elliott> <ajf> Wait actually no, Visual Basic.NET is *ok*
21:57:43 <elliott> oh get out
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:04 <elliott> lol that was php two
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:45 <elliott> not equal howso
22:00:46 <olsner> after adding humor
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:26 <elliott> this is a joke right
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:02 <elliott> well, right
22:06:12 <elliott> does anyone not implement x/open curses? :)
22:06:26 <elliott> def wrap(num):
22:06:26 <elliott> while num > 255:
22:06:26 <elliott> num -= 256
22:06:26 <elliott> while num < 0:
22:06:26 <elliott> num += 256
22:06:27 <elliott> return num
22:06:29 <elliott>
22:06:31 <elliott> def bool_to_int(b):
22:06:33 <elliott> return 1 if b == True else 0
22:06:35 <elliott> wow
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:07:25 <pikhq> What else is it?
22:07:33 <elliott> misc shit
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:09 <Lymia> elliott.
23:01:20 <Lymia> import sys;sys.__dict__.clear()
23:01:22 <Lymia> Solves all Python problems.
23:03:20 <elliott> FSVO solve
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).
2011-05-11
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:20 <coppro> link?
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:29:14 <elliott> It is already deleted.
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:37:39 <coppro> hahah
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:39 <zzo38> I don't know.
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:30 <elliott> um
00:53:36 <elliott> [dollar] python
00:53:38 <elliott> >>> import foo
00:53:41 <elliott> [dollar] mzscheme
00:53:45 <elliott> > (load "blah.scm")
00:53:46 <lambdabot> Not in scope: `load'
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:01 <Sgeo> Wait, hmm
00:57:04 <Sgeo> Let me check that
00:57:07 <elliott> OR
00:57:08 <elliott> Maybe you could
00:57:10 <elliott> Type (load "x")
00:57:13 <elliott> Into the REPL
00:57:15 <elliott> This is a possibility
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:09 <Sgeo> !
01:31:31 <Sgeo> I hope that that was an exclamation mark for emphasis, not to ignore me
01:31:58 <elliott> it is for
01:31:59 <elliott> !help
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:02 <elliott> argh
01:32:06 <elliott> !logs
01:32:59 <zzo38> Why is there strange characters on the EgoBot help file?
01:38:32 <elliott> hahahahaaha
01:38:33 <elliott> i knew it
01:38:34 <elliott> Gregor:
01:39:25 -!- zzo38 has quit (Remote host closed the connection).
01:41:15 <Gregor> Yeah, but that's zzo.
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:17 <elliott> also rawirc
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:01 <elliott> Why not just do
01:45:13 <elliott> if (text[0] == '\[one]') {send("lolno"); return;}
01:45:16 <elliott> And avoid all this mess X_X
01:45:17 <elliott> Er, CTCPs.
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:49 <elliott> What is it for, then?
01:45:52 <elliott> Botloops are practically impossible now.
01:45:54 <Gregor> Preventing botloops.
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:11 <elliott> You are so boring X_X
01:46:13 <elliott> Botloops are awesome.
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:17 <pikhq> News to me.
01:53:35 -!- rev has joined.
01:53:40 -!- rev has left.
01:53:42 <pikhq> ……irssiはユニコード出来ない?
01:54:01 <pikhq> 僕に新しい。
01:56:29 <pikhq> Hmm.
01:56:31 <pikhq> !help
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:22:50 <pikhq> In irssi.
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:15:45 <elliott> studying
04:17:44 <pikhq> Linear algebra.
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:34:40 <monqy> than that
04:36:09 <Sgeo> hmm?
04:37:11 <elliott> common lisp has functions with inconsistent argument order?
04:37:14 <elliott> the names are a bit archaic, but
04:37:32 <oerjan> elliott: check
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:08 <oerjan> ic (not)
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:40 <oerjan> ah.
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:13 <elliott> pikhq_: Yes.
04:52:46 <elliott> oerjan: heh, the latest IWC annotation scared me into thinking DMM was about to go on a prescriptivist rant
04:52:50 <elliott> I SHOULD KNOW BETTER
04:55:24 <oerjan> yeah you were literally panicking
04:57:48 <elliott> literally
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:00:37 <elliott> x
05:01:47 <oerjan> !echo hm...
05:01:47 <EgoBot> ​hm....
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:33 <oerjan> XD
05:02:48 <oerjan> ok so it actually got through
05:03:48 <elliott> !echo hi
05:03:53 <elliott> !echo hi
05:03:53 <EgoBot> ​hi
05:03:55 <elliott> hmm
05:04:00 <elliott> oh
05:04:02 <elliott> it makes my text black
05:04:03 <elliott> that's not good
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:32 <elliott> .
05:05:35 <oerjan> elliott: only the last word of it
05:06:16 <elliott> oerjan: true
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:18 <zzo38> Nothing.
05:07:30 -!- wareya has joined.
05:07:32 <oerjan> that sounds a bit heartless
05:07:57 <elliott> damn this rapture shit
05:07:58 <zzo38> There isn't anything *to* do, therefore nothing.
05:08:01 <elliott> it's too much for me :(
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:18 <elliott> also, population.
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:05 <elliott> to avoid the rapture
05:10:06 <elliott> wat
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:51 <elliott> erm
05:11:54 <elliott> zzo38: http://www.google.com/search?q=rapture+may+21st
05:11:59 <elliott> oerjan, probably
05:12:18 -!- MDude has quit (Ping timeout: 240 seconds).
05:12:21 <elliott> http://www.wecanknow.com/
05:12:23 <elliott> It is obviously true
05:12:40 <elliott> oerjan: it's going to be really awesome when satan brings temporary peace
05:12:43 <elliott> to this world
05:12:58 <oerjan> mhm
05:14:05 <pikhq_> elliott: That was Clinton, of course.
05:14:07 <pikhq_> :P
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:33 <elliott> you're very weird zzo38
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:24 <elliott> is
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:30:45 <elliott> what about muslins
05:30:51 <elliott> WILL FABRICS SURVIVE
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:06 <elliott> oerjan: don't swear
05:34:31 <pikhq_> Oh, fuck off, you bastard.
05:34:49 <elliott> wat
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:21 <elliott> your mom
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:40 <elliott> coppro: OK only him.
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:08 <elliott> oerjan: he can't smell
05:38:14 <elliott> pikhq_: WHAT IF.......... ASTRONOMY IS LIE?
05:38:18 <elliott> ANSWER NOW ATHEIST
05:38:19 <oerjan> of course not, he's a dead pope
05:38:19 <elliott> >>
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:19 <elliott> pikhq_: WHAT IF....
05:39:21 <elliott> UNIVERSE IS LIE????
05:39:29 <elliott> JOIN NIHLIST FEDERATON
05:39:35 <elliott> CLUB AT SCHOOL IN ROOM
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:25 <oerjan> solipsism by proxy...
05:41:26 <elliott> NOTHING EXISTS
05:41:30 <elliott> RESPOND NOW BITCHONS
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:41 <elliott> PORK
05:42:47 <elliott> zzo38: PORK PORK PORK
05:42:48 <elliott> PORK
05:42:50 <elliott> PORK PORK
05:42:53 <elliott> PORK PORK PORK PORK PORK PORK PORK
05:42:54 <elliott> PORK
05:42:56 <pikhq_> zzo38: ... Wut?
05:43:03 <elliott> zzo38: 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:48 <elliott> i must say
05:43:49 <elliott> <zzo38> pikhq_: But your thoughts are nothing except hallucination!
05:43:50 <elliott> amused me :D
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:50:05 <elliott> ow
05:50:07 <elliott> my back
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:21 <augur> :P
05:59:44 <elliott> i wonder if ##linguistics exists :P
05:59:53 <augur> yeah but they're all lame
06:00:55 <elliott> and we're not
06:00:57 <pikhq_> augur: Afraid you're mostly finding Germanic speakers in here.
06:01:12 <augur> prolly
06:01:17 <augur> norwegian is good too tho!
06:01:19 <augur> or danish
06:01:32 <pikhq_> oerjan:
06:02:04 <elliott> oerjan: troll him
06:02:11 <elliott> when he asks you how you pronounce something just lie
06:02:13 <elliott> it'll be great
06:02:17 <augur> well i dont need pronunciation
06:02:20 <pikhq_> Bork bork bork.
06:02:21 <elliott> well whatever
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:02:34 <elliott> >:-)
06:02:39 <elliott> EVIL SPAMBOT
06:02:41 <pikhq_> augur: Børk børk børk
06:02:43 <pikhq_> Better?
06:02:45 <augur> yes
06:06:23 <zzo38> I tried to invent notation for cricket matches, and it is very complicated.
06:07:12 <pikhq_> Well, it's cricket.
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:08:53 <oerjan> augur: seier du det
06:09:28 <elliott> augur: gutten tag
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:31 <pikhq_> FUCK YOU, COLORADO
06:10:35 <elliott> `addquote <augur> oerjan you're swedish, right?
06:10:38 <HackEgo> ​404) <augur> oerjan you're swedish, right?
06:10:40 <pikhq_> XD
06:10:44 <oerjan> augur: nei eg er norsk
06:10:50 <augur> o ok
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:09 <elliott> augur: volkgräd
06:11:19 <oerjan> Örjan Johansson would pretty clearly have been
06:11:47 <augur> norwegian boys are hot, btw
06:11:48 <augur> just sayin
06:11:52 <elliott> ...
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:26 <augur> its a web comic
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:13:49 <oerjan> wait what
06:13:54 <elliott> wait what?
06:14:10 <elliott> this channel, btw. this channel.
06:14:14 * oerjan googles
06:14:30 <oerjan> oh those guys
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:04 <oerjan> um the last one
06:23:21 <oerjan> (also the first one i looked at)
06:23:34 <augur> ah
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:40 <elliott> you are
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:33:35 <zzo38> Or make a book
06:33:47 <elliott> no
06:33:49 <elliott> 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:35:23 <augur> oklopol! :D
06:35:27 <augur> you're so finish
06:35:28 <oklopol> meeeeeeeeee!
06:35:40 <oklopol> you're so start
06:35:48 <zzo38> oklopol: Five
06:35:59 <zzo38> Maybe six.
06:36:31 <oerjan> totally finished
06:37:00 <oklopol> oh that's satw
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
06:41:49 <elliott> also racism
06:42:02 <oklopol> yes and small penius
06:47:38 <elliott> yes
07:11:21 <cheater666> hey nice, elliott's been trolling me again
07:11:25 <cheater666> how cute
07:11:39 <cheater666> i really admire the fact i'm such a kiln of emotion for him
07:13:16 <oerjan> making a kil'n
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:14:59 <cheater666> or maybe subconsciously? :D
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:40 <cheater666> our theories converge
07:16:49 <cheater666> i'm scared to go on.
07:16:59 <cheater666> we might uncover something we couldn't fathom.
07:17:24 <augur> oerjan: ok, ready?
07:17:37 <oerjan> absolutely not
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:18:39 <augur> thank you tho!
07:19:14 <cheater666> yw
07:20:21 <oerjan> yes
07:20:24 <oerjan> er
07:20:44 <oerjan> wrong window
07:25:53 <elliott> oerjan has too many window
07:25:53 <elliott> s
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:20 <monqy> that's amazing
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:32 <monqy> it was great
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:44 <elliott> that's vortex math
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:10 <elliott> it means bread
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:55:08 <elliott> xD
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:51 <cheater666> so obviously it's incorrect
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:02:54 <elliott> xD
08:02:55 <elliott> "hello irc"
08:02:58 <elliott> "this is monqy"
08:03:03 <elliott> < "please hold the line"
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:42:52 <elliott> ais523: hi tarski
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 <Phantom_Hoover> What are the lambdahaps my friends.
14:25:36 <lambdabot> Phantom_Hoover: You have 3 new messages. '/msg lambdabot @messages' to read them.
14:31:21 <cheater_> sup Phantom_Hoover :3
14:33:14 <Gregor> @tell Phantom_Hoover lol we ♥ leaving you messages
14:33:14 <lambdabot> Consider it noted.
14:34:19 <Phantom_Hoover> @tell elliott I cleared my MemoServ inbox, you idiot,
14:34:19 <lambdabot> Consider it noted.
14:34:42 <Phantom_Hoover> @tell elliott s/,$/./
14:34:42 <lambdabot> Consider it noted.
14:40:08 <Sgeo> zzo38, my wireless router turns itself back on after I try to turn it off sometime
14:40:09 <Sgeo> s
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:42:41 <lambdabot> Nice try ;)
14:42:45 <Gregor> *snaps*
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:35 <ais523> oerjan: thanks
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:23:56 <Phantom_Hoover> XD
15:24:22 <ais523> things that we missed during the recent spam attack?
15:24:53 <oerjan> ais523: yes
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:30:56 <oerjan> XD
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:30 <oerjan> right
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:37:58 <oerjan> right
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:41:38 <lambdabot> Consider it noted.
15:41:42 <oerjan> Gregor: ^
15:42:16 -!- lilja1 has quit (Ping timeout: 264 seconds).
15:42:26 <Gregor> oerjan: Hyuk
15:42:32 <Gregor> "lambdabotch" = lols
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:26:16 <Deewiant> More or less
16:26:50 <cpressey> Hi Deewiant.
16:26:55 <Deewiant> Yello
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:27:52 <cpressey> Or... something else?
16:28:05 <Deewiant> No, it just uses u to fetch the storage offset that { pushed and compares it to (0,0)
16:28:16 <cpressey> Ah, hm. OK.
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:28:52 <cpressey> Thanks!
16:29:19 <Deewiant> Aye, u by itself can't produce the storage offset from nowhere :-)
16:31:13 <cpressey> Right :)
16:41:26 <cpressey> But in fact it does seem like it's u that's broken...
16:44:00 <oerjan> Y U BRAKE U
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.
16:59:53 <Vorpal> cpressey, yes I saw
17:01:09 <oerjan> !delinterp slashes
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:04:37 <oerjan> hm?
17:04:45 <ajf> hi
17:05:40 <cpressey> i think gedit is just not smart enough to understand the regexp, upon closer examination
17:05:51 <oerjan> heh
17:05:52 <cpressey> (the 2nd regexp)
17:06:26 <cpressey> oh, no, both of them. it probably doesn't highlight s!!! properly.
17:06:39 <oerjan> right
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:35 <fizzie> Okay, it did do that.
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:15:32 <cpressey> I still use it
17:15:38 <cpressey> because... no reason
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 &nbsp;
17:29:39 <ais523> as in, not even a nonbreaking space, or the entity for it, the string &nbsp;
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:00 <oerjan> heh it finished
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:02 <ais523> ah, I see
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:02 <oerjan> !underload ((a)S:^):^
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:37:48 <oerjan> indeed
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:41 <cpressey> later
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
17:57:21 <FIXME_nddrylliog> oerjan: we fix other people's stuff :)
17:57:27 <oerjan> ah.
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:09:26 <lambdabot> Consider it noted.
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:18 <cpressey> yay
18:52:31 <cpressey> lambdabot, couldn't you just... /msg me that kind of notification?
18:53:24 <oerjan> @list tell
18:53:24 <lambdabot> tell provides: tell ask messages messages? clear-messages
18:54:42 <cpressey> @set-message-notification /msg
18:54:42 <lambdabot> Unknown command, try @list
18:54:56 <cpressey> fizzie: cool stuff!
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:06:06 <cpressey> Phantom_Hoover!
19:07:31 <olsner> hurrdurrherpderp
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...).
19:45:17 <cheater666> hello olsner
20:05:29 -!- augur has joined.
20:07:15 <cheater666> hello augur
20:07:25 <augur> hey cheater666
20:07:34 <cheater666> sup?
20:07:48 <augur> chillin
20:07:56 <augur> waiting to drive to annapolis
20:07:57 <augur> you?
20:08:23 <cheater666> came back from work
20:08:46 <cheater666> chillin
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:23 <Phantom_Hoover> `quote
20:18:25 <HackEgo> ​347) <olsner> it is from 2002 though, I was younger then
20:26:24 <siracusa> @quote
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 <Phantom_Hoover> @quote
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 <Phantom_Hoover> @quote
20:27:42 <lambdabot> <wango|yeomius> says: do you like turing complete?
20:27:50 <Phantom_Hoover> These quotes suck.
20:28:08 <Phantom_Hoover> I suggest we move HackEgo's entire database across to these poor unfortunates
20:29:28 <siracusa> @quote sucks
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:06 <monqy> sucks
20:37:13 <Phantom_Hoover> What is it with nutjobs and awful website formatting.
20:37:59 <monqy> http://www.timecube.com/
20:38:20 <monqy> always good
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:38 <elliott> monqy: No.
20:43:52 <monqy> reddit fornever
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:04 <Vorpal> hm
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:48:50 <olsner> but meh
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:30 <elliott> you were younger then.
20:50:50 <olsner> yeah, but only by about 9 years. should've known better really
20:59:28 <Vorpal> night →
20:59:41 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
20:59:52 <Phantom_Hoover> <elliott> olsner wasn't here in 2002.
20:59:53 <elliott> Vorpal quits?
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:22 <elliott> fizzie isn't the founder.
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:37:44 <Phantom_Hoover> I feel... besmirched.
21:38:34 <elliott_> I'll be YOUR smirch.
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:46:07 <elliott_> it sucks
21:47:11 <Sgeo> What Schemes don't suck?
21:47:16 <Sgeo> ^^not rhetorical
21:47:53 <elliott_> the one you write
21:48:16 * Sgeo does not feel like writing a Scheme at the present moment
21:48:18 <Sgeo> Just using one
21:49:04 <Phantom_Hoover> Sgeo, but you could impress IT-AT!
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!
21:57:06 <Phantom_Hoover> NOT A THOUGHT I NEEDED
21:57:07 <Phantom_Hoover> EVER
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:14:05 <elliott_> Appeal to PH.
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:39 <pikhq_> Yes.
22:38:43 <elliott_> are you sure
22:38:52 <pikhq_> They're on the 16th and 17th.
22:38:58 <pikhq_> Well before the predicted rapture.
22:39:11 <elliott_> Excellent.
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:00 <elliott_> siracusa: Twenty-first.
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:12 <elliott_> Consider string ports.
22:52:26 <elliott_> And of course you can't rebind the meaning of SET! in standard Scheme.
22:52:40 <elliott_> Hmm, or can you.
22:52:43 <elliott_> Ah:
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:16 <elliott_> Why not
22:55:19 <elliott_> They're trivial
22:55:38 <Sgeo> So are Common Lisp macros
22:55:56 <elliott_> And?
22:56:01 <elliott_> Scheme macros are hygienic.
22:56:04 <elliott_> Common Lisp macros are not.
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:52 <elliott_> Oh hey,
22:56:55 <elliott_> How to map set!
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_> We can even evaluate
22:56:55 <elliott_> (map (lambda (var val) (set! var val))
22:56:56 <elliott_> (list x y z) (list 1 2 3))
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:57:43 <zzo38> What are ASTs?
22:58:12 <elliott_> Abstract Syntax Trees.
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:38 <Sgeo> Huh.
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").
2011-05-12
00:02:57 -!- quintopia has joined.
00:08:27 <pikhq_> Holy jesus fuck the Enterprise is fast.
00:08:34 <Sgeo> Homework time
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:44 <Sgeo> oops
00:32:47 <Sgeo> (defun really-p () nil)
00:32:55 <Sgeo> Or is it reallyp ?
00:33:26 <Gregor> Err wait
00:33:31 <Gregor> De-evolution was a different episode :P
00:33:38 <Gregor> And that notion ALMOST approaches making sense almost.
00:33:41 <Gregor> You HYPER-EVOLVE
00:34:27 <Sgeo> Supposedly, the writer's point was that there's no such thing as de-evolution
00:34:28 <Sgeo> iirc
00:46:26 -!- Lymia has joined.
00:47:41 <elliott_> <Gregor> Err wait
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:41 <elliott_> <Gregor> You HYPER-EVOLVE
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:11 <elliott_> His words should be banned.
00:48:35 <Sgeo> He feels remorse for what he's done, doesn't he?
00:48:54 <elliott_> IRRELEVANT
00:49:00 <elliott_> He must suffer for all eternity.
00:49:07 <Sgeo> I should watch it...
00:50:04 <elliott_> No.
00:50:07 <elliott_> You really shouldn't.
00:50:09 <elliott_> You'd like 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:17:44 <Sgeo> Wow
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:19 <elliott_> `quote
01:21:19 <elliott_> `quote
01:21:19 <elliott_> `quote
01:21:20 <elliott_> `quote
01:21:20 <elliott_> `quote
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:21:28 <elliott_> our quotes sure do suck
01:21:31 <elliott_> sorry
01:21:32 <elliott_> i mean
01:21:34 <elliott_> our quotes are the best
01:21:34 <elliott_> 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:24:59 <Sgeo> Why?
02:25:16 <pikhq_> Well, rather, DCVS DCVS DCVS DCVS.
02:25:23 <pikhq_> Erm, swap V and C.
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:26:09 <Sgeo> myself
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:42 <pikhq_> Oh.
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:30:06 <pikhq_> Learn git.
02:31:17 <Sgeo> B,C,D,E,J,R
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:46:23 * Sgeo finds one
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:11:20 <Sgeo> >.>
03:12:19 <myndzi> random question
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:15 <myndzi> talkin to me?
03:14:38 <Sgeo> No, just commenting on TeruFSX's name
03:14:48 <myndzi> o right
03:14:53 <TeruFSX> my name
03:15:01 <TeruFSX> do you really want me to explain my name
03:22:42 <Sgeo> Meh
03:35:19 <pikhq> o.O
03:35:28 <pikhq> It is technically possible for a child to have 5 parents.
03:35:40 <zzo38> pikhq: How?
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:15 <Sgeo> I needed 5
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:30 <elliott_> surely polyamorous counts too
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:13 <elliott_> well that's obvious i guess
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:15 <Sgeo> zzo38, it is
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:39 <Sgeo> No idea
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_> Plagiarism.org
03:53:16 <elliott_> Finally, Turnitin for students. Avoid accidental plagiarism.
03:53:20 <elliott_> accidental plagiarism
03:53:23 <elliott_> YOU CAN'T MAKE THIS SHIT UP
03:54:10 <Sgeo> I was once accused of plagiarising by a professor, simply because I used big words.
03:54:40 <elliott_> Sgeo
03:54:44 <elliott_> have you considered
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:00 <quintopia> oh shit
03:58:06 <quintopia> i was scrolled too far up
03:58:08 <quintopia> never mind
03:58:19 <quintopia> i thought i was only like a screen away from current
03:58:25 <quintopia> i was like...a day off :P
03:58:46 <elliott_> X-D
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:39 <elliott_> hexample
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:41 <elliott_> what isn't legal?
04:05:58 <oerjan> using surrogate mothers
04:06:19 <elliott_> weird
04:06:19 <elliott_> why
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:09:40 <elliott_> you're a limbo
04:09:47 <oerjan> pikhq: yes
04:10:18 <pikhq> Well, fuck.
04:10:27 <elliott_> more like HATEless
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:18:30 <oerjan> hm
04:19:29 -!- Zwaarddijk has joined.
04:22:06 -!- ineiros has joined.
04:23:04 <pikhq> Whoa.
04:23:13 <elliott_> Whoa?
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:24:52 <elliott_> [asterisk]surrogacy,
04:25:00 <pikhq> (the barreleye fish, BTW, have transparent skulls)
04:26:32 <oerjan> elliott_: you mean _for_?
04:26:42 <elliott_> er, yes
04:26:46 <elliott_> shut up
04:27:01 * oerjan eyes elliott_ suspiciously
04:27:37 <elliott_> what
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:42:42 <elliott_> i really want some
04:42:42 <elliott_> bread
04:54:17 <Sgeo> "Turing Completeness Considered Harmful"
04:55:03 <elliott_> see also total FP :P
04:55:15 <oerjan> (define (spam) (spam) (spam))
04:55:16 <elliott_> also all theorem provers
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
04:57:39 <oerjan> so, hopefully
05:14:52 <elliott_> TIL about Louis Wain, a man whose cat paintings show the progression of his schizophrenia. (dangerousminds.net)
05:14:53 <elliott_> REDDIT
05:14:55 <elliott_> ARE YOU FUCKING KIDDING ME
05:19:08 <oerjan> PROBLEM?
05:20:16 <elliott_> I CANNOT FUCKING COUNT
05:20:18 <elliott_> THE NUMBER OF TIMES
05:20:20 <elliott_> I HAVE SEEN THAT BULLSHIT
05:20:22 <elliott_> ON THE INTERNET
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:23:26 <oerjan> yes.
05:24:04 <elliott_> Awesome.
05:24:07 <elliott_> I'm going to go do that now.
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:26 <oerjan> ic
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:50 <elliott_> it's magic
05:25:57 <elliott_> Cell phones are killing bees? Is this true? (self.askscience)
05:25:57 <elliott_> yes
05:26:01 <elliott_> Why is the sky a bright orange sky before a thunderstorm? (self.askscience)
05:26:02 <elliott_> god's wrath
05:26:06 <elliott_> Questions about the wave-particle duality in quantum mechanics (self.askscience)
05:26:08 <elliott_> ride the wave
05:26:11 <elliott_> you can't surf on particles
05:26:14 <elliott_> Can drinking distilled water exclusively be harmful? (self.askscience)
05:26:16 <elliott_> yes you will get drunk
05:26:20 <elliott_> Why do atomic explosions result in mushroom-shaped clouds? (self.askscience)
05:26:22 <elliott_> because god is getting high
05:26:26 <elliott_> How many Homo Sapien ancestors do I have (approximately)? (self.askscience)
05:26:29 <elliott_> about three, you inbred fuck
05:26:31 <elliott_> this is great
05:26:34 <elliott_> i should post all of these
05:26:49 <Sgeo> iirc, Arc is one of the 3 despised-by-many-Lispers lisps?
05:26:56 <elliott_> There are three?
05:26:59 <Sgeo> Along with newLisp and Clojure?
05:27:08 <elliott_> Most Lispers like 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:14 <Sgeo> Oh
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:36 <cheater666> don't quit your day job
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:25 <elliott_> not even any unicode support
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:27 <Sgeo> Wow
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:27 <elliott_> book?
05:30:32 <elliott_> buxom
05:30:33 <elliott_> bastard
05:30:34 <elliott_> bark
05:30:39 <oerjan> no a word someone made up, possibly pg himself
05:30:45 <elliott_> bust
05:30:48 <elliott_> oerjan: blub
05:30:51 <elliott_> yes, pg made it up
05:30:52 <oerjan> that it was
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:02 <elliott_> "BUT EVAL IS FAST"
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:01 <elliott_> don't
05:37:03 <elliott_> don't fucking ask
05:37:03 <elliott_> the question
05:37:05 <elliott_> you are about
05:37:06 <elliott_> to fucking ask
05:37:08 <elliott_> don't do it
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:38:57 <elliott_> there's a non-xml thing too
05:38:58 <elliott_> why do i know this
05:38:59 <elliott_> fuck this
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:45:22 <cheater666> haha @ coldfusion
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:13 <elliott_> occasional?
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:47:45 <Sgeo> Hm, true
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:54:49 <elliott_> something like that
05:55:03 <elliott_> yes I think so
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:40 <elliott_> yes.
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:00:48 <elliott_> :D
06:35:23 -!- elliott_ has quit (Read error: Connection reset by peer).
06:38:53 -!- elliott has joined.
06:45:59 <cheater666> oerjan, he's even on irc here
06:46:33 <oerjan> mhm
06:46:50 <cheater666> but 33 hours idle
06:48:51 <cheater666> but like, he chats n' stuff
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:49:40 <cheater666> o ok
06:50:02 <oerjan> after all, he was making a pretty strong statement, there
06:50:07 <cheater666> ahahah
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:50:32 <cheater666> "original research" xD
06:51:00 <cheater666> oerjan, good programmers need a good kick in the butt if they're doing stupid shit
06:52:18 <oerjan> mhm
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.
07:17:29 <elliott> stealing that kthx
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:07 <Lymia> cheater666.
08:58:08 <Lymia> 囧?
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
08:59:28 <Lymia> Must be the font.
09:01:57 <cheater_> adfgkjsdfb
09:12:50 -!- ais523 has joined.
09:28:24 <elliott> hi ais523
09:29:04 <ais523> hi
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:38:55 <fizzie> Is it the right room?
09:41:35 <ais523> yes
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:54:57 <ais523> well, OK
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:56:54 <Vorpal> fizzie, it should be!
09:57:10 <Vorpal> ais523, then you learnt something new today
09:57:18 <fizzie> The late: when dead.
09:57:42 <Vorpal> heh
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:00:08 <Vorpal> err
10:00:13 <Vorpal> wait that was wrongt
10:00:14 <Vorpal> wrong*
10:00:36 <Vorpal> 4/3 late in fact
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:38 <ais523> to RAM, yes
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:26 <Vorpal> fizzie, haha
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:51 <Vorpal> I see
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:12 <ais523> *minute
10:08:36 <ais523> and the phone company actually suggests redialing every hour for that reason
10:08:54 <Vorpal> ais523, huh :D
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:32 <Vorpal> ais523, what?
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:04 <Vorpal> uh I see
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:25 <ais523> fizzie: ditto here
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:41 <Vorpal> heh
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:35 <Vorpal> at least here
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:54 <Vorpal> is here*
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:12 <Vorpal> ais523, hehe
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:00 <Vorpal> hm
10:20:08 <Vorpal> weird
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:21:56 <Vorpal> fizzie, they do, huh
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:09 <Vorpal> hm
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:26:41 <Vorpal> hm
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:40 <cheater_> who's Cheery?
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:42 <ais523> indeed
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:26 <cheater_> really?
10:29:29 <ais523> or does the phone know about that?
10:29:31 <cheater_> on the enter-pin screen?
10:29:34 <Vorpal> ais523, different button for call and for OK
10:29:35 <Vorpal> :P
10:29:36 <ais523> (e.g. do you have to press 1 1 2 green, or something like that?)
10:29:48 <cheater_> ais523: yes
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:18 <Vorpal> heh
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:33 <Vorpal> fizzie, heh
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:20 <fizzie> I have.
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:54 <Vorpal> how weird
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:12 <ais523> no
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:34 <ais523> students
10:35:37 <Vorpal> I see
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:22 <ais523> fizzie: haha
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:36:59 <Vorpal> ais523, originally?
10:37:08 <Vorpal> heh
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:51 <cheater_> "take this, you LIBERAL FAG!"
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:40 <cheater_> Vorpal: ^
10:38:44 <Vorpal> twice
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:01 <cheater_> why would you not?
10:39:11 <cheater_> what sort of 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:37 <cheater_> ais523: and?
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:17 <cheater_> it's just display
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:35 <cheater_> i would say it is
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:41:46 <Vorpal> (no clue how)
10:41:51 <cheater_> haha
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:12 <cheater_> Vorpal: um, befunge.
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:42 <Vorpal> it isn't there indeed
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:04 <Vorpal> mhm
10:43:11 <Vorpal> then what?
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:25 <ais523> that's it
10:43:29 <ais523> but it's TC
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:43:49 <Vorpal> aha
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:10 <ais523> cheater_: Python?
10:45:10 <Vorpal> ah
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:21 <ais523> ah, right
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:37 <cheater_> augur: i speak native haskell
10:45:40 <ais523> Vorpal: you could interpret it just fine
10:45:45 <ais523> it just also happens to compile easily
10:45:45 <augur> :P
10:45:51 <cheater_> ais523: do you think this could be an interesting esolang?
10:45:57 <ais523> it could be
10:46:01 <ais523> but then, so could most other things
10:46:02 <cheater_> why?
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:10 <cheater_> ais523: why could it be?
10:46:20 <augur> Vorpal: ok
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:06 <Vorpal> ah
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:47:53 <Vorpal> ais523, 3 you mean :P
10:48:11 <Vorpal> ais523, actually I suggest space separation, if you can write downright
10:48:14 <Vorpal> instead of down right
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:42 <ais523> maybe ↓ and →
10:48:43 <cheater_> ais523: you could use html
10:48:47 <Vorpal> ais523, ah
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:40 <ais523> -, perhaps?
10:49:48 <Vorpal> ais523, possibly
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:06 <Vorpal> or enter
10:50:08 <Vorpal> of course
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:36 <Vorpal> ais523, yes, why not
10:50:40 <ais523> that might work
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:51:49 <Vorpal> eh
10:51:52 <Vorpal> how
10:52:01 <ais523> say your program is 7 wide and 5 high
10:52:04 <Vorpal> yes
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:43 <ais523> *right is adding 7
10:52:54 <Vorpal> ais523, solved too many crosswords?
10:53:05 <ais523> heh
10:54:01 <Vorpal> ais523, anyway, why compile to bf?
10:54:10 <ais523> for fun, not for any particular reason
10:54:13 <ais523> why esolang at all?
10:54:32 <Vorpal> hm right
10:54:40 <Vorpal> ais523, why not compile to feather?
10:54:50 <Vorpal> or intercal
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:25 <Vorpal> ais523, in what way
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:06 <Vorpal> hm okay
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
10:56:29 <Vorpal> aha
11:10:11 -!- jix_ has quit (Read error: Connection reset by peer).
11:15:21 <Vorpal> bbl
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:03:40 <Vorpal> ah
12:04:03 <Vorpal> ais523, btw real comments will likely end up like this foo_bar_quux
12:04:08 <ais523> indeed
12:04:08 <Vorpal> this:*
12:04:11 <ais523> or maybe using dots
12:04:15 <Vorpal> or that
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:04:57 <Vorpal> well indeed
12:04:58 <ais523> and I don't know
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:19 <Vorpal> ah
12:06:21 <Vorpal> ISO?
12:06:28 <ais523> I don't know
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:09:29 <Vorpal> yeah
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:15 <Vorpal> in C
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:09 <Vorpal> hm
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:17 <Vorpal> hm
12:17:23 <ais523> whereas in Haskell, normally there was a handy combinator I could just use
12:17:30 <Vorpal> right
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:33 <Vorpal> huh is WireWorld TC?
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:21 <Vorpal> ah
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:31 <Lymia> Heh.
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:44:14 <Lymia> while*
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.
12:51:06 <Vorpal> ah
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:14 <Vorpal> oklofok, hm?
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:05 <oklofok> oh any kind i suppose
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:29:03 <oklofok> yes
13:29:31 <Vorpal> oklofok, eagles?
13:29:38 <Vorpal> swans?
13:29:58 <oklofok> those might be pushing it
13:30:05 <Vorpal> oklofok, ducks then?
13:30:16 <oklofok> hmm
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:33:57 <oklofok> yays
13:34:05 <Vorpal> ah
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:31 <oklofok> no i'm still doing my phd
13:34:34 <Vorpal> ah
13:34:42 <oklofok> everything else i finished months and months ago
13:34:49 <Vorpal> oklofok, so why this exam?
13:34:54 <oklofok> for funsies
13:34:56 <oklofok> but never again
13:34:57 <Vorpal> I see
13:35:03 <Vorpal> oklofok, what is your PHd about?
13:35:13 <Vorpal> err that was weird caps
13:35:13 <oklofok> no clue! :D
13:35:19 <Vorpal> oklofok, uh uh :P
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:30 <Vorpal> oklofok, such as?
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:17 <Vorpal> ah you beat me to it
13:38:42 <Vorpal> oklofok, what is n in there?
13:38:46 <Vorpal> number of states?
13:38:49 <oklofok> it's relatively easy to show O(n^3), but that's all that's known
13:38:49 <oklofok> yes
13:38:55 <Vorpal> hm
13:38:55 <augur> hey oklofok
13:39:06 <oklofok> heys
13:39:12 <augur> hows life
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:39:59 <oklofok> Vorpal: yes
13:40:02 <oklofok> thus synchronizing
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:28 <Vorpal> wait no
13:40:31 <Vorpal> that doesn't work hm
13:40:59 <Vorpal> oklofok, interesting problem. How do you show the O(n^3) case?
13:41:01 <augur> oklofok: mathoin?
13:41:05 <augur> oh i get it
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:24 <oklofok> augur: shut up :(
13:42:28 <augur> :x
13:42:36 <oklofok> I TRIED MY BEST
13:42:44 <oklofok> Vorpal: erm let me think i haven't slept at all
13:42:49 <Vorpal> ah
13:42:52 <Vorpal> oklofok, never ever?
13:43:00 <oklofok> yeah so
13:43:00 <Vorpal> :P
13:43:14 <ais523> oklofok: I can prove O(2^n) quite easily
13:43:24 <oklofok> ais523: haha
13:43:27 <ais523> and that's less than O(n^3) for small enough n
13:43:32 <Vorpal> hah
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:52 <oklofok> called the pair 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:10 <Vorpal> huh
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:45 <Vorpal> no I don't
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:45:07 <oklofok> well okay
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:30 <Vorpal> hm
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:47:59 <Vorpal> aha
13:48:15 <ais523> hmm, I think wlog we can assume the transition graph is strongly connected
13:48:28 <Vorpal> ais523, wlog?
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:35 <Vorpal> ah
13:48:46 <oklofok> ais523: no
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:02 <ais523> no it isn't
13:49:16 <oklofok> if you think it isn't, you misunderstood the problem
13:49:22 <oklofok> oh
13:49:23 <oklofok> stronly
13:49:25 <oklofok> *strongly
13:49:26 <oklofok> sorry
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:45 <oklofok> just missed strongly
13:49:49 <ais523> ah, OK
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:26 <Vorpal> oklofok, I see
13:50:32 <oklofok> ais523: oh you got the proof already?
13:50:42 <ais523> no, I'm just brainstorming
13:50:51 <Vorpal> huh
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:46 <ais523> yep
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:04 <ais523> Vorpal: really easily
13:52:12 <Vorpal> ais523, hm okay
13:52:15 <Vorpal> oh right
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:46 <ais523> so I'll do that now
13:52:48 <Vorpal> cya
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:53:48 <oklofok> for n^2?
13:53:51 <Vorpal> yeah
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:22 <Vorpal> ah I see
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:13 <oklofok> :P
13:56:26 <Vorpal> oklofok, it isn't actually proven though
13:56:33 <Vorpal> of course
13:57:47 <oklofok> WELL CAN ANYTHING REALLY EVERY BE PROVEN?
13:57:53 <oklofok> every.
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:04 <Vorpal> oklofok, eh
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:00:47 <Vorpal> like*
14:03:01 <oklofok> yes and cut off penises
14:03:35 <Vorpal> ugh :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:33:17 <Vorpal> tswett, what is that?
14:42:06 <tswett> A still life.
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:43:03 <tswett> s/.././
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.
14:52:16 <Vorpal> ah I see
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:19:33 <cpressey> and it crashed my browser
15:24:11 -!- ais523 has joined.
15:25:03 <cpressey> and it bit my sister, once
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:27:36 <oerjan> heh
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:30:53 <oerjan> obviously.
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 &nbsp; spambot
15:39:01 <ais523> yep
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:11 <oerjan> :t tree
15:53:11 <lambdabot> Not in scope: `tree'
15:53:17 <oerjan> @hoogle tree
15:53:17 <lambdabot> module Data.Graph.Inductive.Tree
15:53:17 <lambdabot> module Data.Tree
15:53:17 <lambdabot> Data.Tree data Tree a
15:53:32 <oerjan> :t Tree
15:53:33 <lambdabot> Not in scope: data constructor `Tree'
15:53:36 <oerjan> :t Node
15:53:36 <lambdabot> forall a. a -> Forest a -> Tree a
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:54:14 <lambdabot> t = Data.Tree.Forest [...
15:54:26 <oerjan> erm
15:54:34 <oerjan> oh
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:50 <cpressey> > let x = [x] in x
15:55:51 <lambdabot> Occurs check: cannot construct the infinite type: t = [t]
15:56:57 <cpressey> :t [x]
15:56:58 <lambdabot> [Expr]
15:57:03 <cpressey> !
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:57:24 <cpressey> :t x
15:57:25 <lambdabot> Expr
15:57:28 <cpressey> oh right
15:57:50 <cpressey> :t m
15:57:51 <lambdabot> Expr
15:57:57 <cpressey> :t mzgbd
15:57:58 <lambdabot> Not in scope: `mzgbd'
15:58:13 <cpressey> let mzgbd = [mzgbd] in mzgbd
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:58:42 <oerjan> 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
15:59:24 <cpressey> in my HEAD
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:16 <cpressey> I do that too
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:31 <ais523> did it in Haskell too
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:02:59 <cpressey> *ever
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:34 <ais523> :t unique
16:06:35 <lambdabot> Not in scope: `unique'
16:06:38 <ais523> hmm
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 <oerjan> @hoogle unique
16:07:12 <lambdabot> module Data.Unique
16:07:12 <lambdabot> Data.Unique data Unique
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:28 <Deewiant> ?ty nub
16:07:29 <lambdabot> forall a. (Eq a) => [a] -> [a]
16:07:30 <Deewiant> ?ty elem
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:00 <ais523> @hoogle [a] -> [a]
16:08:00 <lambdabot> Prelude cycle :: [a] -> [a]
16:08:00 <lambdabot> Prelude init :: [a] -> [a]
16:08:00 <lambdabot> Prelude reverse :: [a] -> [a]
16:08:03 <Deewiant> ais523: nub
16:08:10 <ais523> Deewiant: ah, is that what it's called?
16:08:11 <oerjan> nub indeed
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:30 <lambdabot> [1,2,4,3,5]
16:08:32 <Deewiant> ?ty map head . sort . group
16:08:33 <lambdabot> forall a. (Ord a) => [a] -> [a]
16:08:42 <ais523> other thing that catches me out a lot is that OCaml uses ; not , as a list separator
16:08:46 <Deewiant> Err, group . sort
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:14 <oerjan> ah
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:18 <oerjan> oh
16:11:23 <cpressey> :t member
16:11:24 <lambdabot> Not in scope: `member'
16:11:37 <cpressey> @hoogle member
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:12:43 <ais523> *uncomputable
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:16 <cpressey> or something
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:14 <ais523> yep
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:14 <oerjan> (still not indented)
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:20:49 <ais523> I misunderstood
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:26:48 <ais523> it's just a good idea
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:18 <cpressey> and so on
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:30 <cpressey> oh oh ok'
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:33:49 <oerjan> you'd think
16:34:07 <ais523> I've never written a JVM-based language
16:36:36 <cpressey> yoiks. ok...
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:47:41 <oerjan> precisely!
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:01:49 <oerjan> your ma is lingering
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:05:33 <cpressey> :t unique
17:05:33 <lambdabot> Not in scope: `unique'
17:06:19 <cpressey> nolo contendere
17:06:30 <oerjan> cpressey: what do you want?
17:06:46 <cpressey> a pony
17:06:47 <oerjan> we already established there is no function by that name
17:07:02 <cpressey> that was just a demonstration
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:09:06 <oerjan> :t no
17:09:07 <lambdabot> Not in scope: `no'
17:09:17 <Gregor> foldlololololr
17:37:53 <cpressey> War, Famine, Pasta-lence and Death
17:38:29 <oerjan> *Pasta-lents
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:46:51 <elliott> cabal install hoogle
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:01 <augur> fizzie: ping
18:50:19 <augur> oerjan: ping
18:50:24 <cpressey> recursion versus vocabulary, i guess
18:51:34 <oerjan> gnop
18:52:13 <elliott> cpressey: recursion is low-level, like goto :)
18:52:19 <elliott> and for loops
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:02 <cpressey> and can't change
18:54:37 <cpressey> "Type system: The type system is formally an enhanced version of the typed lambda calculus plus pattern matching."
18:54:41 <cpressey> because -- why pretend
18:55:30 <elliott> pretend what
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:18 <elliott> who pretends that?
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:54 <Gregor> *adverb
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:29 <elliott> old git version?
19:02:56 <cpressey> no, their instructions are wack
19:03:15 <cpressey> github has ones thatw ork
19:03:29 <elliott> what is it
19:03:51 <cpressey> felix
19:04:04 <cpressey> they make you run git submodule commands in order to build it!
19:04:09 <elliott> oh noes?
19:04:23 <cpressey> and you need Python 3
19:04:26 <cpressey> fanTAStic
19:05:35 <cpressey> AND OCAML!
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:14 <Sgeo> o.O
19:06:45 <cpressey> my kind of execution model
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:05 <cpressey> ...
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:00 <Sgeo> Ah
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:35 <elliott> :D
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:26:53 <cpressey> pretty sure gcc can do that
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:34 <elliott> if (never_true) x = 9;
19:28:35 <cpressey> { int a; if (/* ...*/) { a = 0; } printf("%s", a); }
19:28:35 <elliott> return x;
19:28:39 <elliott> right
19:29:25 <cpressey> but oh, man, shaving off that instruction to zero out a when it wasn't really necessary
19:29:30 <cpressey> YOU MUST OPTOMIZE
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:33:29 <elliott> heh
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:40:42 <pikhq> KILL IT WITH FIRE
19:41:12 * Sgeo wonders what asdf is like
19:41:37 <cpressey> "asdf" refers to something beyond slapping a keyboard in disgust?
19:41:54 <Sgeo> Yes
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:02 <pikhq> :/
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:43:44 <pikhq> With autoconf.
19:44:36 <Sgeo> cpressey, is that very quotable for you?
19:44:39 <elliott> oh, asdf
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:44:54 <elliott> and a build system
19:44:57 <elliott> it's
19:45:00 <elliott> kind of complicated
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:06 <cpressey> no, that's not true
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:55:02 <Sgeo> :D
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:57:06 * cpressey calls up the SPCA
19:59:09 <elliott> chicken tennis
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:03 <cpressey> i am teh confused
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:02:35 <Sgeo> Ah
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:15 <oerjan> no rplacd, check
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:04:54 <oerjan> wait that's CL
20:05:18 <oerjan> *set-cdr!
20:05:29 <cpressey> Sgeo: what are you looking for in a Scheme?
20:05:39 <elliott> Sgeo: replace c[d]r
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:35 <ajf> hiiii
20:06:43 <Sgeo> ajf is not an ffi.
20:06:58 <ajf> wat
20:07:14 <cpressey> nor is ajf an asdf, i bet
20:07:23 <ajf> or a qwertyuiop
20:08:48 <oerjan> but poiuy_qwert might be, if he were here
20:09:04 <cpressey> IT IS POSSIBLE
20:09:24 <ajf> hmm
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:24 <EgoBot> ​Does not compile.
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:33 <EgoBot> ​Does not compile.
20:10:41 <ais523> what have I done wrong there?
20:10:43 <augur> fizzie you here
20:10:46 <ais523> oh, missing an &
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:45 <Sgeo> ...
20:11:48 <ajf> we have a C bot here?
20:11:48 <Sgeo> !c asdf
20:11:49 <EgoBot> ​Does not compile.
20:11:55 <ajf> lol
20:12:00 <ajf> ooh I should make a devperc bot
20:12:02 <Sgeo> Well, this is distressing
20:12:03 <ajf> :>
20:12:29 <ais523> I think it just checks if C compiles or not
20:12:35 <Sgeo> Oh
20:12:37 <Sgeo> Boo
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:19 <ais523> Sgeo: is in C99
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:24 <ais523> but only from main
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:36 <EgoBot> ​0 0 0 0
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:13:56 <EgoBot> ​Does not compile.
20:14:09 <ajf> fuck you EgoBot y u no support brainfuck
20:14:18 <ajf> needs more brainfuck
20:14:20 <ajf> obviously
20:14:21 <Sgeo> !bf +[.+]
20:14:22 <EgoBot> ​........
20:14:22 <cpressey> Racket (/MzScheme) apparently has OK FFI, but I didn't know it even had a compiler
20:14:28 <ajf> oh
20:14:31 <ajf> hmm
20:14:35 <ajf> !bf []
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:18 <ajf> !bf [.>]
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:15:50 <ajf> !bf [.+]
20:16:01 <elliott> <ais523> I think it just checks if C compiles or not
20:16:02 <elliott> No?
20:16:03 <elliott> It runs it.
20:16:14 <elliott> !c puts("asdkjaf");
20:16:15 <ajf> !bf >+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-]
20:16:15 <EgoBot> ​Hello
20:16:16 <ais523> elliott: I was remarking on the fact that nobody had got anything to happen but compile errors
20:16:16 <EgoBot> ​asdkjaf
20:16:19 <ajf> <.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+.
20:16:25 <ajf> lol
20:16:31 <elliott> <ais523> ah, no int main() stuff?
20:16:32 <elliott> you can do that
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:16:51 <ajf> !bf [+].
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:26 <elliott> ais523: not correctness
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:17:59 <elliott> (I think)
20:18:28 <Sgeo> !c void main() { printf("Wouldn't it be funny if it allowed this?\n"); }
20:18:43 <Sgeo> Aww
20:18:47 <ajf> !c printf("\134ACTION hates all of you");
20:18:49 <EgoBot> ​\ACTION hates all of you
20:18:59 <cpressey> !c printf("%d", sizeof void);
20:19:00 <EgoBot> ​Does not compile.
20:19:09 <cpressey> !c printf("%d", sizeof int);
20:19:10 <EgoBot> ​Does not compile.
20:19:18 <cpressey> is my C that rusty?
20:19:25 <Sgeo> !c printf("%d", sizeof(void*));
20:19:26 <EgoBot> ​8
20:19:41 <ais523> cpressey: you need parens around the name of a type
20:19:42 <cpressey> !c printf("%d", sizeof(int));
20:19:43 <Sgeo> !c printf("%d", sizeof(int));
20:19:44 <EgoBot> ​4
20:19:45 <EgoBot> ​4
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:48 <elliott> lies
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:19:57 <elliott> hmm
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 <elliott> that's really weird
20:20:07 <ajf> !c printf("%cACTION hates all of you",1);
20:20:09 <EgoBot> ​.ACTION hates all of you
20:20:10 <cpressey> that's so stupid
20:20:15 <elliott> !c printf("%d", sizeof 0);
20:20:16 <ais523> !c printf("\u0001ACTION hates all of you");
20:20:17 <EgoBot> ​Does not compile.
20:20:18 <EgoBot> ​4
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:41 <EgoBot> ​4
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:07 <Sgeo> !bf +.
20:21:08 <EgoBot> ​.
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 <elliott> he had to do it?
20:21:31 <Sgeo> ajf, it won't work
20:21:35 <elliott> are you all dense X_X
20:21:38 <ajf> :<
20:21:41 <ajf> OK
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:09 <EgoBot> ​Does not compile.
20:22:16 <ais523> EgoBot: do you not even support C94?
20:22:27 <elliott> :D
20:22:32 <elliott> it's gnu99 IIRC
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:42 <EgoBot> ​Does not compile.
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:23:58 <elliott> i believe so, ais523
20:24:02 <ajf> yes
20:24:07 <ajf> C uses 8-bit strings
20:24:09 <cpressey> !c char s??(10??);
20:24:10 <EgoBot> ​Does not compile.
20:24:16 <cpressey> no trigraphs at all, eh
20:24:23 <ajf> !c fork(); printf("Forked!");
20:24:24 <EgoBot> ​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 <ais523> $ g++ test.c
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:02 <cpressey> egads
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:13 <ajf> wait what
20:26:14 <ais523> fizzie: yep, I just checked C++96
20:26:15 <ajf> aaaaa
20:26:23 <ajf> HOW DO I STOP IT?!
20:26:25 <ajf> oh
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:44 <ajf> let's see
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:17 <ajf> FORKBOMBS
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:18 <ajf> aww
20:30:19 <ajf> hmm
20:30:23 <Sgeo> Hmm
20:30:31 <Sgeo> Racket's format doesn't have ~{ and ~}?
20:30:33 * Sgeo has a sad
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:42 <EgoBot> ​Does not compile.
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:00 <ais523> why the evil laugh?
20:32:09 <ajf> because
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:44 <elliott> ajf: wrong.
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:20 <elliott> good luck :P
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:10 <EgoBot> ​ffffffffff
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:35:38 <cpressey> Sgeo: yup
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:34 <ais523> fizzie: good to know
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:36:53 <elliott> yes
20:37:03 <ajf> ais523: f7u12
20:37:04 <ajf> yes.
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:45:57 <ajf> yay
20:46:36 <ajf> !c int i; for (i = ' '; i < 256; ++i) { putchar(i); }
20:46:38 <EgoBot> ​!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
20:46:47 <cpressey> YAAAAAAAAAAAYYYYY
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:47:44 <EgoBot> ​...
20:47:57 <ajf> lol
20:48:23 <ajf> !c int i; for (i = 0; i <= '~'-' '; ++i) { putchar(i % 7+' '); }
20:48:25 <EgoBot> ​!"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#$%& !"#
20:48:32 <ajf> :>
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:51:54 <elliott> erm
20:51:57 <elliott> is it UB?
20:52:00 <elliott> I thought it just had unspecified results
20:52:04 <elliott> apart from digits
20:52:08 <ajf> afaik, you are right
20:52:10 <elliott> which are contiguous
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:42 <ajf> well
20:54:47 <ajf> UTF something
20:54:52 <pikhq> UTF-16.
20:54:57 <ajf> may be 32 or 8 in some cases
20:55:08 <pikhq> Okay, true.
20:55:18 <pikhq> And they never really use UTF-EBCDIC. Go figure.
20:55:19 <ajf> or Japn
20:55:27 <pikhq> Japn‽
20:55:27 <ajf> they use SHIFT-JIS
20:55:30 <elliott> JAPN
20:55:34 <ajf> *JAPAN
20:55:38 <ajf> uh
20:55:50 <pikhq> Shift-JIS is outmoded in Japan, anyways.
20:55:59 <ajf> still widely usd
20:56:01 <ajf> :/
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:28 <pikhq> i.e. outmoded.
20:58:30 <ajf> true
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:43 <cpressey> OH OH OH
21:00:56 <cpressey> if you never use the variable in which you stored the input, it gets OPTOMIZED AWAY
21:01:17 <elliott> X-D
21:01:20 <elliott> Nice.
21:03:55 <pikhq> ajf: Oh, yeah, and there's the nice property that Shift-JIS is a motherfucking *terrible* character encoding.
21:04:05 <ajf> ikr
21:04:25 <ajf> wait
21:04:38 <ajf> JIS defines its chars in terms of Unicode codepoints?
21:04:39 <ajf> hmm
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:05:50 <pikhq> Yes, I'm aware.
21:06:46 <pikhq> Defined such that converting into Unicode has an inverse, for any used charset.
21:06:59 <ajf> yep
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:09:06 <ajf> hmm
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:29 <pikhq> Erm, s/208/201/
21:10:45 <elliott> so that windows users could enjoy really fun paths
21:10:52 <ajf> pikhq: no
21:10:55 <ajf> oh, 201
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:53 <ajf> :/
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:31 <elliott> (printf "%s " ">>>")
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:19 <cpressey> Oh, try it!
21:19:21 <elliott> I think this could be
21:19:28 <cpressey> I'm sure it could be shorter
21:19:33 <cpressey> I'm not golfing, here
21:19:33 <elliott> main a = printf ">>> " $$ main (fish (limit a) gets)
21:19:35 <elliott> Or such
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:05 <cpressey> puts appends a newline iirc
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:31 <elliott> I'm no Pure programmer :P
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:42 <elliott> psht
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:25:55 <elliott> that's all i get
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:28:46 <cpressey> *template system
21:30:29 <pikhq> s/done a better job considering input/been shot/
21:31:42 <cpressey> that works too
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:20 <ais523> elliott: ah, OK
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:15 <elliott> err
21:38:17 <elliott> what quote?
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:40 <elliott> `quote
21:38:43 <HackEgo> ​352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something
21:38:53 <ajf> meh
21:38:59 <ajf> add it to that too
21:39:08 <elliott> Not funny enough :P
21:39:17 <ajf> I lol'd
21:39:18 <ajf> :/
21:39:34 <cpressey> `quote django
21:39:36 <HackEgo> ​352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something
21:39:43 <cpressey> thankfully only one
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:14 <monqy> `quote django
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:26 <cpressey> NOW ITS ALL CRAZY-LIKE
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 <elliott> wow
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:04 <elliott> yeah these are quality
21:41:08 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:41:13 <elliott> `quote
21:41:13 <elliott> `quote
21:41:13 <elliott> `quote
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:31 <elliott> wrong formatting ;D
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:35 <HackEgo> No output.
21:41:36 <elliott> erm
21:41:40 <elliott> `delquote ​409
21:41:41 * elliott fixes
21:41:42 <HackEgo> No output.
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:41:52 <elliott> ugh
21:41:57 <elliott> `delquote ​409
21:41:58 <cpressey> and my name wrong
21:41:59 <HackEgo> No output.
21:42:02 <elliott> wtf
21:42:04 <elliott> `url bin/delquote
21:42:06 <HackEgo> ​http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/delquote
21:42:08 <ajf> oh
21:42:09 <ajf> my bad
21:42:10 <ajf> :/
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:42:45 <cpressey> progress
21:43:03 <elliott> ampersand please
21:43:09 <elliott> `run delquote ​409 2>&1
21:43:10 <elliott> never mind
21:43:11 <HackEgo> ​/tmp/hackenv.24269/bin/delquote: line 3: ​409: syntax error: operand expected (error token is "​409")
21:43:16 <elliott> x_X
21:43:24 <elliott> when did that break
21:43:41 <elliott> ok wait
21:44:03 <elliott> `run sed -i 's/[ "$((id+0))" = "$id" ]/expr "$1" + 0 >/dev/null 2>&1/' bin/delquote
21:44:05 <HackEgo> No output.
21:44:11 <elliott> gah
21:44:19 <elliott> `run sed -i 's/\[ "$((id+0))" = "$id" \]/expr "$1" + 0 >/dev/null 2>&1/' bin/delquote
21:44:21 <HackEgo> No output.
21:44:26 <elliott> sffkldmc
21:44:30 <elliott> now why isn't this working
21:44:32 <elliott> oh wait
21:44:39 <ajf> `run stfu
21:44:41 <HackEgo> No output.
21:44:43 <elliott> `run x=9; echo "$((x+9))"
21:44:45 <HackEgo> ​18
21:44:48 <elliott> hmm
21:45:03 <elliott> `run sed -i 's/[ "\$((id+0))" = "\$id" ]/expr "$1" + 0 >/dev/null 2>&1/' bin/delquote
21:45:05 <HackEgo> No output.
21:45:05 <elliott> oh wait
21:45:05 <elliott> argh
21:45:15 <elliott> `run sed -i 's|[ "\$((id+0))" = "\$id" ]|expr "$1" + 0 >/dev/null 2>&1|' bin/delquote
21:45:17 <HackEgo> No output.
21:45:20 <elliott> oijsgdfkgfdklghlkdfgj
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:38 <elliott> holy shit
21:45:42 <elliott> `help
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:45:55 <elliott> `revert 291
21:45:56 <HackEgo> Done.
21:46:07 <elliott> `run sed -i 's|\[ "\$((id+0))" = "\$id" \]|expr "$1" + 0 >/dev/null 2>&1|' bin/delquote
21:46:08 <HackEgo> No output.
21:46:15 <elliott> expr "$1" + 0 >/dev/null 2>[ "$((id+0))" = "$id" ]1 || exit 1
21:46:17 <elliott> sodjgogojgoidfgjdg
21:46:19 <elliott> `revert 291
21:46:21 <HackEgo> Done.
21:46:24 <elliott> `run sed -i 's|\[ "\$((id+0))" = "\$id" \]|expr "$1" + 0 >/dev/null 2>\&1|' bin/delquote
21:46:26 <HackEgo> No output.
21:46:29 <elliott> ...
21:46:33 <elliott> `run sed -i 's|\[ "\$((id+0))" = "\$id" \]|expr "$1" + 0 >/dev/null 2>\&1|' bin/delquote
21:46:34 <elliott> oh good
21:46:35 <HackEgo> No output.
21:46:43 <elliott> `delquote ​409
21:46:44 <HackEgo> No output.
21:46:47 <elliott> seiojgnkoiredk nioekjoighfd
21:46:50 <elliott> `run delquote ​409
21:46:51 <HackEgo> No output.
21:47:03 <elliott> SO MUCH HATE
21:47:49 <cpressey> Notorious Norwegian bank robber Seiojgnkoiredk Nioekjoighfd, 49, was convicted today of...
21:47:56 <elliott> :D
21:48:30 <monqy> `quote 409
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:48:49 <monqy> good job
21:49:15 <elliott> it isn't working
21:49:22 <elliott> no clue why -- wait
21:49:35 <elliott> `run sh -c 'id=9; echo $((id+9))'
21:49:37 <HackEgo> ​18
21:49:39 <elliott> osdijfndopg
21:50:16 <monqy> today I learned 9+9 is 18
21:52:57 -!- ajf has changed nick to ajf|offline.
21:53:06 <ajf|offline> goodnight.
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:56:43 <elliott> aaaaaaaaaaaaaaa
21:56:51 <elliott> a = (a = a);
21:57:23 <cpressey> I... think so?
21:57:37 <elliott> it does, seemingly
21:57:39 <elliott> scary
21:57:39 <cpressey> a = 1; <-- assignment. if (a = 3) <-- equality
21:57:41 <cpressey> like basic
21:57:49 <elliott> yeah but can you do "a = (b = c)" in BASIC?
21:58:02 <cpressey> I don't remember
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
21:58:36 <cpressey> I don't
22:00:55 <elliott> hmm, it's TC right?
22:01:52 <cpressey> I don't think so, because of bounded memory, but aside from that, it should be.
22:01:58 <cpressey> Well
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:04:57 <elliott> Use a free list.
22:05:18 <cpressey> Well, feel free to implement it and see
22:05:28 <elliott> Hmm...
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:29 <elliott> Yeah.
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:53 <elliott> oh, hmm
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:10:50 <elliott> yep
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:15 <elliott> free(index) := {
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:53 <elliott> }
22:11:58 <elliott> add detagged to table-free-list
22:11:59 <elliott> }
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:10 <elliott> define structure?
22:13:16 <cpressey> allocated memory.
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:48 <elliott> yep
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:23 <cpressey> ok
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:13 <elliott> hmm
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:46 <elliott> alternatively
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:39 <cpressey> protip: lambda abstractions
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:30:54 <elliott> lambdas that is
22:34:57 -!- FireFly has quit (Quit: swatted to death).
22:35:47 -!- augur has quit (Remote host closed the connection).
22:35:58 <cpressey> ahhhhhhahahahahaha
22:36:34 <elliott> wat
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:45 <cpressey> it applies now.
22:37:47 <cpressey> BOOM
22:37:50 -!- cpressey has quit (Quit: leaving).
22:38:39 <elliott> that cpressey guy sure is weird
22:38:58 <monqy> boom
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:07:28 <elliott> hmm
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:37 <elliott> No they're not?
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:15 <elliott> monqy: Maybe.
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:57:55 <elliott> It's the successor of Q.
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?
23:59:51 <elliott> yes on all accounts
2011-05-13
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:01:46 <monqy> hello;
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:49 <monqy> sounds okay
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:09 <Sgeo> "hilarious"?
00:03:14 <Sgeo> It's... old
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:39 <elliott> jmonqy
00:05:40 <elliott> monqy
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:45 <monqy> elliott
00:05:47 <elliott> its horrible
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:07 <elliott> looooooooool
00:06:25 <Sgeo> I was more of a pervert in Metaplace than Utherverse
00:07:21 <Sgeo> I invented Metaplace sex >.>
00:08:02 <monqy> mmmm
00:08:06 <elliott> hahahahahaha wow
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:09:54 <monqy> looks legitimate
00:11:39 <elliott> wow
00:11:50 <monqy> sgeo fantasy land
00:12:06 <Sgeo> I only visited once or twice
00:12:15 <Sgeo> Just to see yet another virtual world
00:12:28 <monqy> good reason
00:12:51 <elliott> so sgeo
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:15:54 <Sgeo> I think so
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:48 <elliott> I think so
00:18:57 <Sgeo> "I'll find out in person in a bit"
00:19:12 <monqy> ew gross
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:20:30 <elliott> I believe so, yes.
00:21:45 <Sgeo> (define (my-call/cc func) (func (get-cc))) ?
00:21:51 <Sgeo> Or is there an oddity there?
00:22:44 <elliott> That won't work.
00:23:37 <Sgeo> Hm?
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:35:56 <Sgeo> elliott?
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:56:33 <elliott> How is there symmetry
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:13 <elliott> And
01:04:22 <elliott> (call-with-values (lambda () (call/cc (lambda (k) (k 'a 'b)))) cons)
01:04:23 <elliott> => (a . b)
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:34 <Sgeo> I see them
01:05:40 <elliott> Escape continuations -- as in shift/reduce?
01:05:46 <elliott> They aren't an optimisation, they have different semantics.
01:05:51 <elliott> Or, no, wait.
01:05:56 <elliott> setjmp/longjmp style.
01:06:02 <elliott> How is that confusing?
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:06:34 <elliott> I mean shift/reset.
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:20 <elliott> Sgeo:
01:17:22 <elliott> > (call-with-values (lambda () (call-with-current-continuation (lambda (k) (k)))) (lambda () 42))
01:17:23 <elliott> 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:22 <elliott> Sgeo: Yes, and?
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:40 <Sgeo> Hmm?
01:28:54 <Sgeo> Racket's regular conses are immutable
01:29:02 <Sgeo> =P
01:29:02 <elliott> Racket isn't Scheme.
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:30:55 <elliott> Do I give a shit?
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:36:30 <elliott> C potability.
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:49 <elliott> Erm.
01:38:50 <elliott> Freestanding.
01:38:55 <pikhq_> I'm not including those.
01:38:59 <pikhq_> K&R C.
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:35 <pikhq_> K&R C is still C.
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:44:24 <elliott> Bullshit.
01:45:06 -!- poiuy_qwert has joined.
01:45:19 <elliott> pikhq_: Or?
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:32 <elliott> You're kidding me.
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:49:51 <elliott> Gregor: Erm.
01:49:53 <elliott> It's generated by gcc :P
01:50:05 <elliott> OK, so gcc will never do anything other than generating a plain div instruction.
01:50:07 <elliott> But still :P
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:33 <elliott> Well, yeah :P
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:31 <elliott> (lambda ()
01:54:31 <elliott> (if (g)
01:54:31 <elliott> (let ((x (h)))
01:54:31 <elliott> x)
01:54:33 <elliott> (and (g) (f))))
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:53 <elliott> Oh, wait, yes it is.
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:17:55 <pikhq> XD
06:18:25 <elliott> I kind of wish my hand was a finger tree now.
06:18:56 <olsner> Tired.
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:28 <elliott> hey olsner
06:20:31 <elliott> i drew a finger tree http://i.imgur.com/sRyCi.png
06:20:35 <elliott> what do you think
06:20:42 <olsner> yeah, I saw, that looks nice
06:21:00 <olsner> the spitting image of a something-or-other
06:21:15 <elliott> a finger tree, say
06:21:22 <olsner> could be
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:33:26 <elliott> it doesn't
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:39:32 <fizzie> (But no directories.)
06:40:01 <fizzie> Didn't someone speak of a "nest ar files in ar files to simulate directories" scheme once?
06:40:05 <elliott> Yes.
06:40:07 <elliott> That was me.
06:40:09 <elliott> I'm the genius. It's me.
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:41:43 <elliott> Or at least +q.
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:45:08 <fizzie> Arb-all.
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:30 <Sgeo> Huh
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:29 <elliott> <CTCP>VERSION<CTCP>
06:58:34 <elliott> PAH CLOG STILL REPLIED
06:58:37 <elliott> IT IS UTTERLY UNDAMAGED BY THIS
06:58:53 <elliott> -hiato- VERSION yes
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:03:31 <elliott> ...
07:03:32 <elliott> nah
07:03:33 <elliott> still wouldn't do it
07:07:51 -!- oerjan has joined.
07:11:01 <elliott> oerjan
07:11:06 <elliott> clog has been silenced :(
07:11:08 <elliott> its an injustice
07:11:59 * oerjan assumes this is because of the error messages it gives to unknown CTCP's
07:13:02 <elliott> nope
07:13:10 <elliott> fizzie is just this huge fascist
07:13:34 <oerjan> oh wait hm
07:13:38 <oerjan> clog wouldn
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:32:53 <elliott> it's lovely :(
07:35:30 * oerjan swats elliott -----###
07:37:48 <elliott> do you like it
07:38:15 <oerjan> it is somewhat disturbingly similar to a penis tree
07:38:25 <elliott> brb reopening gimp
07:38:30 <oerjan> XD
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> 'abcdefghi'
07:40:52 <elliott> >>> len('abcdefghijklmnopqrstuvwxyz'[0:9])
07:40:52 <elliott> 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:36 <oerjan> LXIIII
07:44:40 <elliott> never mind
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:54:45 <elliott> jewsus
07:55:44 <oerjan> jew go too far
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
07:58:53 <pikhq> s/JVST/IVST/
08:02:41 <elliott> are people lozenges?
08:03:35 <pikhq> Define "lozenge", and I'll tell you.
08:04:03 <elliott> lozenge
08:04:16 <pikhq> No.
08:04:40 <pikhq> Clearly, strcmp("lozenge", "people")!=0.
08:04:57 <elliott> you're a people.
08:05:03 <elliott> fuck you lozenge.
08:05:06 * Sgeo risks brain-damage and downloads newLISP
08:05:23 <monqy> why
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:06:58 <pikhq_> We live to mock!
08:07:13 <elliott> http://esolangs.org/w/index.php?title=Befunge&diff=next&oldid=22874
08:07:14 <elliott> NO
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:44 <elliott> FUCK FUCK FUCK
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:42 <elliott> >_>
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:06 <elliott> how is this so old
08:10:08 <elliott> probably because
08:10:09 <elliott> it is crap???
08:10:19 <elliott> hey i should generalise shiro to n dimensions
08:10:23 <elliott> that would be fun and profitable
08:10:27 <elliott> and slow it down
08:10:28 <elliott> immensely
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:11:54 <elliott> aieeeeee
08:12:39 <monqy> support vortex math
08:12:49 <elliott> lol
08:13:12 <Sgeo> Wow
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:27 <elliott> did you really just say
08:14:28 <elliott> "the fudge"
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:48 <elliott> :D
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:17:25 <oerjan> sounds unlikely
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:34 <elliott> erm.
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:31 <elliott> my monad is
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:19:49 <elliott> I need a _monad sandwich_
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:22 <elliott> it should be
08:20:26 <elliott> StateT FungeState (MaybeT IO)
08:20:30 <elliott> but, like, writing
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:13 <elliott> um no.
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:01 <elliott> do {
08:22:02 <elliott> state shit
08:22:04 <elliott> more state shit
08:22:05 <elliott> case whut of
08:22:08 <elliott> Nothing -> reflect
08:22:11 <elliott> Just yay -> do
08:22:14 <elliott> state shit
08:22:21 <elliott> case foo of Nothing -> reflect; Just yayy -> ...
08:22:21 <elliott> }
08:22:23 <elliott> so on forever
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:22:48 <elliott> if you see what I mean
08:23:38 <elliott> i sure hope oerjan is understanding me here :D
08:24:43 <monqy> do notation and state shit
08:24:45 <monqy> not my cup of tea
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:25:35 <elliott> hmm
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:14 <elliott> god knows
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:03 <elliott> but I'm not sure
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:39 <elliott> pop? more like lift pop
08:27:47 <elliott> I could make a type class dealie but eurgh
08:27:49 <oerjan> ouch
08:28:05 <elliott> fpRun _ Y = do
08:28:05 <elliott> sem <- pop
08:28:05 <elliott> case toFPIns sem of
08:28:05 <elliott> Nothing -> reflect
08:28:05 <elliott> Just ins -> do
08:28:06 <elliott> m <- gets (fpInstructions . currentIP)
08:28:08 <elliott> case Map.lookup ins m of
08:28:10 <elliott> Nothing -> return ()
08:28:12 <elliott> Just [] -> return ()
08:28:14 <elliott> Just (_:xs) -> modifyFPInstructions (Map.insert ins xs)
08:28:16 <elliott> fpRun _ Y = do
08:28:18 <elliott> sem <- lift pop
08:28:25 <elliott> ins <- toFPIns sem
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:29:53 <elliott> oerjan: eurgh :(
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:27 <oerjan> aha
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:56 <elliott> (Just a, Just b) -> do
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:31:58 <elliott> heh
08:32:01 <elliott> that's where I gave u
08:32:02 <elliott> p
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:15 <elliott> oerjan: like howso?
08:34:31 <oerjan> testReflect (Just j) x = x
08:34:40 <oerjan> testReflect Nothing _ = reflect
08:34:50 <cheater_> elliot is a blub.
08:34:52 <oerjan> er sorry
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:26 <elliott> e
08:35:29 <oerjan> yep
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 ref
08:37:10 <elliott> pushStringAs0gnirts line
08:37:10 <elliott> push . fromIntegral . length $ line
08:37:11 <elliott> that's a bug
08:37:15 <elliott> I should halt after the reflect
08:37:16 <elliott> but I don't
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:43:21 <elliott> how would that help
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:44:52 <elliott> gotcha
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:49:56 <Sgeo> I think
08:50:02 <oerjan> checkReflect m f = m >>= \x -> case x of Nothing -> reflect; Just y -> f y
08:50:07 <oerjan> then
08:50:37 <oerjan> fpRun _ Y = checkReflect (toFPIns <$> pop) $ \ins -> ...
08:51:03 <elliott> still ugly, sorry :P
08:51:39 <oerjan> hm
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:42 <elliott_> can I have a two please
08:52:58 <oerjan> you could make it a proper fixity 0 operator
08:53:01 <oerjan> 2
08:53:01 <elliott_> can I have a two please
08:53:04 <elliott_> thx
08:53:17 <elliott_> Shiro/Fingerprints/FILE.hs:38:2:
08:53:18 <elliott_> Warning: Pattern match(es) are non-exhaustive
08:53:18 <elliott_> In the definition of `fpRun':
08:53:18 <elliott_> Patterns not matched:
08:53:18 <elliott_> _ A
08:53:18 <elliott_> _ B
08:53:22 <elliott_> _ E
08:53:24 <elliott_> _ F
08:53:26 <elliott_> ...
08:53:28 <elliott_> ugh that's annoying
08:54:04 <oerjan> fpRun _ Y = toFPIns <$> pop -->- \ins ->
08:54:35 <oerjan> > (0$0 <$>)
08:54:35 <lambdabot> The operator `Data.Functor.<$>' [infixl 4] of a section
08:54:36 <lambdabot> must have lowe...
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_> Main.hs:7:0:
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:11 <elliott_> dosjdsdfjosjf
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:30 <elliott_> Main.hs:5:0:
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:33 <elliott_> case fungeSpace st of
08:56:34 <elliott_> FungeSpace m (minX,minY) (maxX,maxY) m2 m3 ->
08:56:39 <elliott_> oh
08:56:42 <elliott_> its becuase shiro.types has it
08:56:42 <elliott_> ugh
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:47 <oerjan> infixr 0 >>|=
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:47 <elliott_> REDDIT
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:03:18 <elliott_> i think it's cleaner without
09:11:24 <elliott_> doIns i =
09:11:24 <elliott_> (coreIns . chr . fromIntegral $ i) `catchShiro`
09:11:25 <elliott_> \(ShiroIOException st) -> put st >> reflect
09:11:25 <elliott_> oh man
09:11:27 <elliott_> this is the best part
09:11:33 <elliott_> The corresponding code
09:11:43 <elliott_> ioReflect :: IO a -> Shiro a
09:11:43 <elliott_> ioReflect action = do
09:11:44 <elliott_> st <- get
09:11:44 <elliott_> io action `catchShiro`
09:11:44 <elliott_> \(e::IOException) -> do
09:11:44 <elliott_> io . hPutStrLn stderr $ "*** [Reflecting on IO exception: " ++ show e ++ "]"
09:11:46 <elliott_> throw (ShiroIOException st)
09:11:51 <elliott_> yes, I keep the state by throwing an exception with the state
09:11:57 <elliott_> oerjan: isn't it beautiful
09:13:30 <oerjan> O KAY
09:27:01 <elliott_> oijwnpgoknjrojfhnjtjhotj
09:27:51 <Sgeo> http://common-lisp.net/project/cl-cont/
09:27:53 <Sgeo> Bah
09:28:04 <Sgeo> call/cc with random restrictions is no fun
09:28:09 <elliott_> ...
09:28:14 <elliott_> that's not random restrictions
09:28:16 <elliott_> that's shift/reset
09:28:28 <elliott_> which is arguably more fundamental than call/cc
09:28:34 <elliott_> see
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:44:51 <elliott_> Wow.
09:47:00 <elliott_> (should-be 8.2 '(1 2 3 4 1 2 3 4 5)
09:47:00 <elliott_> (let ((ls (list 1 2 3 4)))
09:47:00 <elliott_> (append ls ls '(5))))
09:47:03 <elliott_> that's a pitfall?
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:53:56 <elliott_> yes
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:02 <elliott_> oerjan: webchat.freenode.net
09:55:12 <oerjan> we'll see
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:05 <elliott_> DIDN'T THINK SO
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:21:47 <oerjan> well yeah
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:18 <elliott_> WHOLE MINUTES
10:25:20 <elliott_> no wait
10:25:20 -!- oerjan has quit (Quit: See you, maybe).
10:25:22 <elliott_> stick until the bitter end
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:19:33 <elliott_> ^nr
13:19:37 <elliott_> fun-
13:19:38 <elliott_> oh
13:19:45 <elliott_> can i have a number row
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:56:52 <elliott_> hi ais523
13:57:07 <ais523> hi elliott_
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:16 <elliott_> ais523: define polymorphism
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 <elliott_> and it would bind a=Int
14:12:23 <ais523_> but combining them doesn't as you get a type inference error
14:12:30 <ais523_> ah, I see
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:34 <elliott_> so they're more popular
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:15:47 <elliott_> Also OCaml, etc.
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:13 <elliott_> Really?
14:17:18 <ais523> I'm compiling into hardware
14:17:21 <elliott_> Well, right.
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:13 <ZOMGMODULES> i was just gonna say
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:31 <Vorpal> elliott_, ah
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:47 <Vorpal> elliott_, ah
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:43 <ZOMGMODULES> er
14:21:46 <ZOMGMODULES> i don't think so.
14:21:46 -!- aloril has joined.
14:21:50 <Vorpal> ZOMGMODULES, hm?
14:22:14 <ZOMGMODULES> well, maybe
14:22:27 <ZOMGMODULES> whatever. n/m me
14:22:29 <elliott_> Holy god reddit is dumb.
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:07 <Vorpal> ZOMGMODULES, node.js?
14:24:12 <Vorpal> elliott_, ah
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:40 <elliott_> Yes.
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:30 <elliott_> It's hip.
14:25:36 <elliott_> Hipper than Rails used to be.
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:47 <ZOMGMODULES> hm, ok.
14:26:54 <elliott_> OK, apparently node.js is a "CommonJS Implementaiton".
14:26:58 <elliott_> So is CouchDB.
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:11 <ZOMGMODULES> wtf CouchDB has anything to do with JS?
14:27:18 <elliott_> Erm, CouchDB queries are written in JS.
14:27:22 <elliott_> Because JS, like Erlang, is HIP.
14:27:23 <ZOMGMODULES> yeah, but...
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:41 <elliott_> Gregor: Nice X-D
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:01 <ZOMGMODULES> CommonJS: the Universal Specification
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:21 <elliott_> With an UNDYING PASSION.
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:00 <elliott_> [asterisk]X-P
14:30:02 <Gregor> No, it isn't.
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:34 <elliott_> Sgeo: It's a euphemism.
14:30:39 <elliott_> Also she's now Bloggy Atey.
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:30:44 <elliott_> BLG-AT for short.
14:30:51 <elliott_> Gregor: Sweeeeeet
14:31:04 <Vorpal> elliott_, why AT for everyone
14:31:09 <Vorpal> I forgot the reason
14:31:37 <Vorpal> Gregor, how useless
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:31:55 <Vorpal> right
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 <Vorpal> hm
14:32:10 <Sgeo> elliott_, there was an F there originally, iirc
14:32:28 <Sgeo> Or maybe I'm wrong
14:32:35 <elliott_> Vorpal: Or that :P
14:33:00 <Vorpal> elliott_, I just don't remember what in star wars I'm thinking of...
14:33:09 <elliott_> CPthreeO?
14:33:11 <elliott_> et al
14:33:13 <Vorpal> mmm no
14:33:30 <ZOMGMODULES> At-at?
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:42 <ZOMGMODULES> At-ats.
14:33:55 <Vorpal> or was it those found in the last movie, on that forest moon maybe
14:33:58 <Vorpal> well, something
14:34:16 <ZOMGMODULES> Vorpal: http://en.wikipedia.org/wiki/Walker_%28Star_Wars%29#All_Terrain_Armored_Transport_.28AT-AT.29
14:34:25 <Vorpal> ah
14:34:39 <Vorpal> and there is AT-ST too hm
14:34:47 -!- hiato has quit (Ping timeout: 246 seconds).
14:34:59 <elliott_> That's probably it then :P
14:35:10 <Vorpal> wikipedia: best reference on in-universe details for movies in existence.
14:35:25 <elliott_> Apart from Wookiepedia.
14:35:43 <Vorpal> elliott_, well I meant in general
14:35:45 <augur> fizzie: you awake
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:06 <elliott_> Vorpal: "Dr Who" /quiet rage
14:36:07 <augur> yes
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:14 <elliott_> augur: ZOMGMODULES is a Finn.
14:36:15 <Vorpal> elliott_, what?
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:46 <elliott_> Vorpal: Well...
14:36:58 <elliott_> ZOMGMODULES: Hired by a hip web 2.0 companies??? SIGNS ME UP
14:37:01 <ZOMGMODULES> "D" is also short for Doctor, in say PhD
14:37:06 <Vorpal> elliott_, Dr is perfectly okay way to abbrev the word "Doctor"
14:37:06 <ZOMGMODULES> So you could just say D.Who
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:04 <augur> Da Who
14:38:04 <elliott_> Ph.D. 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:23 <augur> Hu, Ph.D.
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:34 <Vorpal> anyway, who cares
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:00 <Vorpal> I guess there is
14:39:12 <augur> Vorpal: about doctor who?
14:39:13 <augur> yes
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:29 <Vorpal> .....
14:39:37 <elliott_> 21,924 articles.
14:39:38 <elliott_> Nice.
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:39:51 <augur> always has been
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:41 <augur> indeed
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:40 <elliott_> , Ph.D.
14:41:41 <augur> thats correct
14:41:42 <elliott_> , Ph.D.
14:41:43 <elliott_> , Ph.D.
14:41:44 <elliott_> , Ph.D.
14:41:49 <elliott_> , MD
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:03 <elliott_> Vorpal: Doctor.
14:42:08 <Vorpal> Dr.
14:42:13 <elliott_> Pepper.
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:09 <ZOMGMODULES> today it is
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:17 <elliott_> And hSetBinaryMode.
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:45:58 <elliott_> [asterisk]It
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:29 <Gregor> *gasp*
14:46:34 <elliott_> And the current Haskell Platform won't even build with the six series.
14:46:35 <Vorpal> about a year old
14:46:36 <elliott_> Vorpal: No, that GHC.
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:09 <elliott_> And I code plenty of C99 too.
14:48:19 <ZOMGMODULES> "code plenty"
14:48:25 <ZOMGMODULES> I have to use that phrase now
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:31 <Vorpal> ↓→ to be exact
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:29 <ZOMGMODULES> I will probably never use it
14:50:38 <ZOMGMODULES> But, strangely, I have used Felix
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:50:58 <ZOMGMODULES> "All of them"?
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:51:25 <ZOMGMODULES> It's just combinators, right?
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:21 <ZOMGMODULES> Thus, "all of them"
14:52:35 <elliott_> ZOMGMODULES: Well, no, it can't handle the grammars a UTM can't parse :>
14:52:45 <ZOMGMODULES> Thus "quotes"
14:53:13 <Phantom_Hoover> @say I wonder if lambdabot will count this as me asking it for messages...
14:53:13 <lambdabot> Maybe you meant: faq map slap src
14:53:24 <Phantom_Hoover> @Yes, yes it does.
14:53:24 <lambdabot> Unknown command, try @list
14:53:35 <elliott_> SAY SOMETHING NORMAL SO IT TELLS YOU
14:53:36 <Phantom_Hoover> @I shall have to speak like this from now on.
14:53:36 <lambdabot> Maybe you meant: . ? @ v
14:53:53 <Gregor> `quote
14:53:54 <HackEgo> ​292) <olsner> actually, I think vorpal is the "retarded team member" to the left
14:54:00 <Phantom_Hoover> @elliott HAHAHAHA I HAVE OUTSMARTED YOU
14:54:00 <lambdabot> Unknown command, try @list
14:54:04 <Vorpal> elliott_, next question: haskell libraries for DFA based regexp engine?
14:54:11 * ais523 reads scrollback
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:39 <ZOMGMODULES> :'(
14:54:41 <Vorpal> elliott_, no it was just in general
14:54:43 <elliott_> Also it's POSIX regexps.
14:54:45 <Vorpal> elliott_, I was thinking about parsing
14:54:53 <elliott_> Hmm, or is tdfa better.
14:54:55 <Gregor> POSIX regexps? *vomits*
14:54:56 <elliott_> Ask Deewiant.
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:23 <elliott_> It's its own.
14:55:24 <Phantom_Hoover> elliott_, lambdabot timed out when I asked it for your messages.
14:55:30 <elliott_> Phantom_Hoover: ...wow.
14:55:36 <Vorpal> elliott_, I refuse to use Parsec for ↓→ because that would be utterly silly :P
14:55:46 <elliott_> Vorpal: No it wouldn't?
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:23 <elliott_> Isn't it?
14:56:29 <Vorpal> what is parsec like then
14:56:33 <ZOMGMODULES> Parsec ::= {{"↓" | "→"} "\n"}.
14:56:37 <ZOMGMODULES> D'oh
14:56:42 <ZOMGMODULES> DownRight ::= {{"↓" | "→"} "\n"}.
14:56:53 <elliott_> Vorpal: Easy.
14:56:55 <Phantom_Hoover> <lambdabot> Plugin `tell' failed with: thread killed
14:56:56 <elliott_> Avoid left recursion. Done.
14:57:02 <Vorpal> ZOMGMODULES, space separates groups?
14:57:13 <ZOMGMODULES> Oh yeah
14:57:17 <Vorpal> ZOMGMODULES, any number of spaces btw
14:57:19 <ZOMGMODULES> Hey, maybe it does have a grammar
14:57:30 <ZOMGMODULES> So, there you go.. Use Parsec!
14:57:31 <Vorpal> elliott_, ...
14:57:40 <elliott_> Vorpal: What?
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:57:52 <elliott_> Vorpal: What of it?
14:57:54 <ZOMGMODULES> Vorpal: ... elliott_: ... ais523: ...
14:58:00 <Vorpal> elliott_, well what stuff do I call? Does it work like lex or such?
14:58:05 <elliott_> What.
14:58:09 <elliott_> It's a library.
14:58:15 <Vorpal> elliott_, right I have never used it
14:58:18 <Vorpal> thus I'm asking
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:39 <elliott_> No.
14:58:41 <elliott_> It's a library.
14:58:59 <Vorpal> elliott_, so how do I use the libary then, what calls?
14:59:16 <elliott_> RTFM
14:59:18 <Vorpal> oh wait I just do Parsec.DownRight.ParseMagially()
14:59:20 <Vorpal> right
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:47 <elliott_> Text.Parsec
14:59:48 <elliott_> Description
14:59:48 <elliott_>
14:59:48 <elliott_> Synopsis
14:59:48 <elliott_> * module Text.Parsec.Prim
14:59:48 <elliott_> * module Text.Parsec.Char
14:59:52 <elliott_> * module Text.Parsec.Combinator
14:59:54 <elliott_> * module Text.Parsec.String
14:59:56 <elliott_> * module Text.Parsec.ByteString
14:59:58 <elliott_> * module Text.Parsec.ByteString.Lazy
15:00:00 <elliott_> * data ParseError
15:00:02 <elliott_> * errorPos :: ParseError -> SourcePos
15:00:04 <elliott_> * data SourcePos
15:00:06 <elliott_> * type SourceName = String
15:00:08 <elliott_> * type Line = Int
15:00:10 <elliott_> * type Column = Int
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:30 <elliott_> Documentation
15:00:32 <elliott_> module Text.Parsec.Prim
15:00:32 <Phantom_Hoover> elliott_, erm, you're probably going to have to tell me the last messages you sent.
15:00:34 <elliott_> module Text.Parsec.Char
15:00:36 <elliott_> module Text.Parsec.Combinator
15:00:38 <elliott_> module Text.Parsec.String
15:00:40 <elliott_> module Text.Parsec.ByteString
15:00:42 <elliott_> module Text.Parsec.ByteString.Lazy
15:00:44 <elliott_> That's the first part
15:00:46 <elliott_> Should I keep going
15:00:49 <Phantom_Hoover> It marked them all as read.
15:01:06 <oklofok> elliott_: yes
15:01:13 <oklofok> and cut off penises
15:01:27 <ais523> Vorpal: if you learn to do it in Prolog first, the Haskell version will be much clearer
15:01:42 <elliott_> ais523: What.
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 <ais523> Vorpal: no
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:15 <ais523> indeed
15:02:34 <ais523> Vorpal: anyway, you can compose parsers more or less the same way you can compose functions
15:02:47 <Vorpal> ais523, interesting
15:02:56 <elliott_> Vorpal: It's like writing a PEG grammar but with a bunch of Haskell operators.
15:02:57 <elliott_> You're welcome.
15:02:57 <ais523> except that instead of operating on the result of each other, they parse adjacent bits of the input
15:03:14 <Vorpal> hm
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:04:49 <elliott_> also, yay, quote ​413
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:11 <elliott_> MEANWHILE ON THE INTERNET
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:41 <Vorpal> hm
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:35 <ZOMGMODULES> I can provide such, if desired
15:08:36 <Vorpal> ZOMGMODULES, ah
15:08:40 <Vorpal> ZOMGMODULES, yes, thanks
15:08:48 <ZOMGMODULES> Like, for parsing S-expressions or such.
15:09:00 <ZOMGMODULES> Well, not exactly that, but... one sec
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:09 <elliott_> You misspelled "spice"
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:28 <elliott_> Vorpal: we knew that.
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:47 <elliott_> oklofok: precisely
15:11:50 <elliott_> you have got it completely right
15:11:52 <Vorpal> how olko
15:11:55 <elliott_> he's dr pepper's best bro
15:12:22 <ZOMGMODULES> Vorpal: http://pastie.org/1897125
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:13 <ZOMGMODULES> elliott_: and we love you for it
15:13:15 <elliott_> Vorpal: No.
15:13:17 <elliott_> Vorpal: He's a rapper.
15:13:25 <oklofok> time travel? eww
15:13:26 <Vorpal> ZOMGMODULES, thanks
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:32 <elliott_> oklofok: he's a rapper
15:13:36 <elliott_> Vorpal is trolling you
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:17 <elliott_> He's so bro.
15:14:23 <ais523> elliott_: it was more, that the only evidence that they had was that the characters were similar
15:14:26 <Vorpal> oklofok, heh
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:13 <elliott_> His most iconic lines.
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:23 <elliott_> ais523: wat
15:15:36 <oklofok> elliott_: wow
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:09 <oklofok> and w'ndoo
15:16:11 <elliott_> ais523: Yeah, I'm ... gonna do that now.
15:16:16 <elliott_> How could I not?
15:16:17 <Vorpal> are there any tools to generate parsers given BNF?
15:16:21 <Vorpal> that would be cool
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:16:45 <Vorpal> duh
15:16:50 <oklofok> no it's more than bnf
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:33 <oklofok> and cut off penises
15:17:36 <ZOMGMODULES> Vorpal: WRITE ONE
15:17:51 <ZOMGMODULES> seriously, not even that hard
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:23 <Vorpal> `delquote 414
15:18:25 <HackEgo> ​*poof*
15:18:32 <Vorpal> `quote 414
15:18:34 <HackEgo> No output.
15:18:37 <Vorpal> right
15:18:39 <ZOMGMODULES> data BNF x = Seq BNF BNF | Alt BNF BNF | Kleene BNF | Literal x
15:18:41 <elliott_> Wait it does poof now?
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:43 <elliott_> goes
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:21 <ZOMGMODULES> YAKSKELL
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:41 <ZOMGMODULES> yacc is hell to use
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:06 <elliott_> ais523: NOPE
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:16 <Vorpal> ZOMGMODULES, LIAR!
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:03 <ZOMGMODULES> Vorpal: it's actually called Happy
15:21:07 <elliott_> ais523: That would work for matespritship, but not moirallegiance, kismessisitude or auspisticism.
15:21:14 <Vorpal> ZOMGMODULES, hm
15:21:16 <elliott_> And the last involves three elements.
15:21:16 <elliott_> Augh.
15:21:19 <elliott_> Do not want to think about this any further.
15:21:24 <elliott_> Bad thoughts.
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:25 <elliott_> oklofok: Yes.
15:23:28 <elliott_> oklofok: Homestuck is a rapper.
15:23:34 <elliott_> He's the kismesis of Dr Who.
15:23:35 <oklofok> yo they call me homestuck, i don't give no fuck
15:23:46 <elliott_> Dr Who's all up on my duck
15:23:55 <Vorpal> <elliott_> He's the kismesis of Dr Who. <-- which quadrant was that, I forgot
15:24:13 <elliott_> Vorpal: Hate.
15:24:21 <Vorpal> elliott_, and left or right side?
15:24:27 <elliott_> Uh, bottom-left.
15:24:30 <Vorpal> aha
15:24:33 <elliott_> I am so glad my head contains this information.
15:24:35 <elliott_> So glad.
15:24:38 <Vorpal> hah
15:24:47 <elliott_> Also, clubs.
15:24:53 <elliott_> SO GLAD THIS IS TAKING UP SPACE IN MY HEAD
15:24:54 <elliott_> YOU HAVE NO IDEA
15:24:55 <Vorpal> ais523, anyway homestuck allows more than one relationship at once so...
15:24:56 <elliott_> HOW GLAD
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:26 <Vorpal> :D
15:26:32 <ZOMGMODULES> ais523's good attitude maybe saved me
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:43 <Vorpal> the humans...
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:26:59 <Phantom_Hoover> Erm, no.
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:27 <Vorpal> upper right?
15:27:29 <elliott_> Vorpal: TOP-RIGHT X_X
15:27:34 <ZOMGMODULES> ais523: hurry up on that esolang
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:28:56 <oklofok> :D
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:18 <oklofok> and cut off penises
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 <elliott_> X-D
15:29:30 <ais523> I doubt it'll work again, though
15:29:32 <ais523> loses its shock value
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:17 <elliott_> (Lui Giandal Sonet Hack)
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:00 <cheater_> my day started well.
15:31:02 <ais523> elliott_: I still have a desire to be ontopic
15:31:04 <elliott_> Vorpal: Whoosh
15:31:08 <ais523> it's just kind-of hard in here
15:31:17 <cheater_> but is it NP-Hard?
15:31:29 <ais523> elliott_: I don't think that's a standard whoosh circumstance
15:31:32 <Vorpal> ais523, :D
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:01 <elliott_> The power of mental ignore.
15:32:11 <Vorpal> oh "and also"
15:32:12 <Vorpal> right
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:33:06 <Vorpal> there should be
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:24 <elliott> Nope, X messed up.
15:36:28 <elliott> Scare /me/ 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:19 <Vorpal> ...
15:37:24 * oklofok attempts as well
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:33 <elliott> then
15:37:36 <elliott> then the reckoning begins
15:37:39 <elliott> all will perish
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:19 <ZOMGMODULES> I am here under court order
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:04 <elliott> SO WHAT DOES IT MATTER
15:39:17 -!- SOLEIL has joined.
15:39:45 <ZOMGMODULES> Good morning SOLEIL
15:39:49 -!- SOLEIL has quit (Quit: MegaIRC v4.06 http://ironfist.at.tut.by).
15:40:05 <elliott> Good night SOLEIL
15:40:11 <cheater_> oklofok: i heard pgraham was so good, he doesn't need viagra, because he's np-hard!
15:42:27 <oklofok> i umm
15:42:32 <oklofok> i have to go ->
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:50:38 <ZOMGMODULES> I hate whatyou have become too
15:50:44 <elliott> Me too ZOMGMODULES.
15:50:45 <elliott> Me too.
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:51:29 <elliott> It's all ais523's fault.
15:51:34 <elliott> It's all Pokemon's fault.
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
15:58:51 <elliott> ugh
15:58:52 <elliott> it's just so
15:58:53 <elliott> wrong
15:58:55 <elliott> it makes no sense
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:02:56 <Phantom_Hoover> elliott, I assume a loop is a nested goto.
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:33 <ZOMGMODULES> elliott: TRY FELIX NAO
16:03:45 <elliott> ZOMGMODULES: YEAAAAAAHON
16:03:47 <elliott> ...
16:03:48 <elliott> ZOMGMODULES: YEAAAAAANO
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:04:55 <elliott> ,addquote
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:14 <Phantom_Hoover> Sgeo, are you unable to tie shoelaces properly?
16:09:26 <elliott> oh god
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 <ZOMGMODULES> also called a "block"
16:10:04 <elliott> ais523: TehZ says something stupid?
16:10:07 <elliott> OMG REALLY
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:25 <ZOMGMODULES> baby got aback
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:10:58 <Sgeo> iirc
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:11:52 <Vorpal> hm
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:18 <ZOMGMODULES> so { ... if(x) redo; } is a "repeat loop"
16:12:23 <Vorpal> ais523, does perl have goto in the C sense=
16:12:28 <Vorpal> s/=/?/
16:12:49 <ZOMGMODULES> iirc it does
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:32 * Vorpal googles
16:13:41 <ZOMGMODULES> I forget the syntax, but all loops are of the form: is while(1) { ... if (x) break; ... }
16:13:44 <ZOMGMODULES> *if
16:13:48 <ZOMGMODULES> *no
16:13:52 <ZOMGMODULES> s/is//
16:13:58 <Vorpal> ZOMGMODULES, that is also ugly :P
16:14:03 <ZOMGMODULES> it's elegant!
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:51 <ZOMGMODULES> but let's not get into that
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:33 <ais523> err, right
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:15:58 <ZOMGMODULES> only?
16:16:14 <ZOMGMODULES> i dunno, gimme a clever compiler...
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:42 <ZOMGMODULES> not much of a gain, granted
16:16:43 <elliott> um, no
16:16:56 <elliott> with tail recursion, you can just replace it with a while one loop, basically
16:16:58 <ZOMGMODULES> unless your tail calls lead to themselves
16:17:04 <ZOMGMODULES> through chains of tail calls
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:12 <elliott> ..
16:17:13 <elliott> no it's not
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:22 <elliott> [asterisk]...
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:33 <ZOMGMODULES> i don't have my dictionary with me
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:13 <ais523> *I have 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:37 <elliott> Vorpal: he was asking me.
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:18:58 <Vorpal> ais523, how so?
16:19:04 <ZOMGMODULES> ais523: see my previous 3 lines
16:19:04 <elliott> It was perfectly 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:45 <elliott> ZOMGMODULES: Erm.
16:19:47 <elliott> ZOMGMODULES: Not modules.
16:19:48 <Vorpal> <elliott> It was perfectly clear. <-- nope
16:19:49 <elliott> ZOMGMODULES: Macros.
16:19:51 <elliott> I'm miffed it has macros.
16:19:52 <elliott> Vorpal: yup.
16:19:56 <Vorpal> elliott, nope
16:19:59 <elliott> Yep.
16:20:01 <Vorpal> (we can go on forever)
16:20:03 <ais523> who'd be miffed at something having modules?
16:20:04 <Vorpal> nope
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:09 <elliott> Yup.
16:20:16 <Vorpal> elliott, no I said we, not I
16:20:24 <Vorpal> nope
16:20:25 <ZOMGMODULES> Yeah, macros in Pure make no sense
16:20:28 <elliott> There is no way you have the same amount of patience for this I do.
16:20:29 <elliott> Yup.
16:20:37 <elliott> ZOMGMODULES: They're just a kludge for not having a good inliner :(
16:20:38 <Vorpal> elliott, nope
16:20:42 <elliott> Yup.
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:49 <Vorpal> this is silly, nope
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:20:58 <elliott> Nope
16:20:59 <elliott> ...
16:21:00 <elliott> Yup
16:21:05 <elliott> God I'm tired.
16:21:06 <elliott> ais523: Heh.
16:21:09 <Vorpal> <elliott> Nope <-- hah I won!
16:21:13 <elliott> Vorpal: No you didn't.
16:21:17 <elliott> I contradicted myself immediately.
16:21:18 <Vorpal> elliott, yes I did
16:21:22 <elliott> Nope.
16:21:27 <Vorpal> yes
16:21:30 <elliott> Nope.
16:21:35 <ZOMGMODULES> I AM CONTRADICTING MYSELF RIGHT NOW
16:21:41 <elliott> ZOMGMODULES: nope.
16:21:43 <Vorpal> ... yes indeed I did, and thats final
16:21:49 <elliott> Vorpal: Nope.
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:10 <ais523> other than the thread
16:22:18 <elliott> Vorpal: You lose I win.
16:22:22 <Vorpal> elliott, nope
16:22:26 <elliott> Vorpal: Yup.
16:22:29 <Vorpal> nope
16:22:31 <elliott> Vorpal: Yup.
16:22:34 <Vorpal> ais523, err?
16:22:36 <Vorpal> nope
16:22:39 <elliott> quality of the channel is increasing already
16:22:41 <elliott> Vorpal: Yup.
16:22:48 <Vorpal> elliott, nope :D
16:22:53 <elliott> Vorpal: Yup.
16:23:05 <Vorpal> elliott, nope, and what was this about now again?
16:23:09 <elliott> Vorpal: Yup.
16:23:13 <Vorpal> nope
16:23:24 <ZOMGMODULES> nope
16:23:24 <elliott> Vorpal: Yup.
16:23:26 <Vorpal> <elliott> quality of the channel is increasing already <-- yes indeed
16:23:33 <Vorpal> elliott, nope
16:23:35 <ZOMGMODULES> indeed i imagine so
16:23:38 <elliott> Vorpal: Yup.
16:23:43 <Vorpal> ZOMGMODULES, no you don't!
16:23:45 <Vorpal> elliott, nope
16:23:51 <elliott> Vorpal: Yup.
16:23:55 <ZOMGMODULES> having said that, for whatever it's worth, yup
16:23:56 <Vorpal> elliott, no
16:23:59 <elliott> Vorpal: Yup.
16:24:01 <Vorpal> ZOMGMODULES, nope
16:24:03 <Vorpal> elliott, no
16:24:07 <elliott> Vorpal: Yup.
16:24:13 <ZOMGMODULES> well, perhaps
16:24:14 <Vorpal> elliott, yes to no
16:24:18 <Vorpal> ZOMGMODULES, right
16:24:20 <elliott> Vorpal: I win you lose.
16:24:23 <Vorpal> elliott, no
16:24:27 <elliott> Vorpal: Yup.
16:24:51 <ZOMGMODULES>
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:01 <elliott> I win.
16:25:05 <Vorpal> no
16:25:08 <elliott> Vorpal: Yup.
16:25:17 <ZOMGMODULES> win has been redefined to mean lose
16:25:24 <Vorpal> ZOMGMODULES, then elliott did
16:25:26 <elliott> ZOMGMODULES: nope.
16:25:39 <ZOMGMODULES> assertion has been redefined to mean apathy
16:25:45 <Vorpal> ZOMGMODULES, good idea
16:25:50 <elliott> ZOMGMODULES: nope.
16:26:07 <ZOMGMODULES> Vorpal has been redefined to be elliott
16:26:12 <elliott> ZOMGMODULES: nope.
16:26:13 <ZOMGMODULES> and vice versa
16:26:17 <Vorpal> err
16:26:22 <ais523> that's a stupid conversation between you lot
16:26:27 <Vorpal> ais523, yes
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:54 <elliott> Still winning over here.
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:26 <elliott> Nope.
16:27:38 <Vorpal> <ZOMGMODULES> it's a lovely day for a stupid conversation <-- very true
16:27:52 <Vorpal> elliott, epon
16:28:11 <elliott> Nope.
16:28:17 <cheater_> so who's eric the esot again
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:30 <cheater_> and why are we in his channel
16:28:35 <Vorpal> elliott, mu
16:28:42 <cheater_> ZOMGMODULES: YES!
16:28:50 <Vorpal> and lets drop the law of the excluded middle
16:28:58 <ais523> ZOMGMODULES: haha
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:31 <elliott> Vorpal: nope ;D
16:30:36 <Vorpal> elliott, dammit
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:54:18 <elliott> nope
16:55:44 <Vorpal> ais523, yep
16:55:51 <elliott> nope
16:55:56 <Vorpal> ...
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:33 <elliott> case ss of
17:02:33 <elliott> [] -> reflect
17:02:33 <elliott> [_] -> reflect
17:02:33 <elliott> _ -> do
17:02:34 <elliott> That
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:13 <elliott> yes
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:41 <elliott> OR
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:39 <Deewiant> You're wrong
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:02 <elliott> That's kind of gross
17:06:04 <elliott> Like, entirely gross
17:06:05 <Deewiant> It always does
17:06:17 <elliott> Well sure, but that's gross.
17:06:19 <elliott> Like really gross.
17:06:29 <elliott> Anyway if Integer is lazy then it's fine.
17:06:33 <elliott> Er, Int.
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:06:51 <elliott> Which... might work.
17:06:58 <Deewiant> It doesn't :-P
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:05 <Deewiant> compareLength [] 0 = EQ
17:07:05 <Deewiant> compareLength [] _ = LT
17:07:05 <Deewiant> compareLength (_:_) 0 = GT
17:07:08 <Deewiant> compareLength (_:as) n = compareLength as (n-1)
17:07:10 <Deewiant> elliott: Use this
17:07:17 <ais523> Deewiant: standard library?
17:07:21 <elliott> Deewiant: Wow, no, I prefer the case statement.
17:07:21 <Deewiant> No
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:50 <elliott> ais523: Shut up, Conal :)
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:12 <pikhq_> BAH
17:10:12 <elliott> So
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:16 <elliott> Is a non-sequitur
17:10:19 <ais523> elliott: I know it is
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:32 <elliott> Vorpal: installing.
17:11:46 <Vorpal> <ais523> I suppose you could write it as _:_:_ -> do { ... }; _ -> reflect <-- befunge?
17:12:10 <elliott> >_<
17:12:23 <ais523> I guessed it was Befunge-related, but that was irrelevant to the question
17:12:29 <ais523> so I didn't ask
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:43 <elliott> Go tell him likewise
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> case ss of
17:12:56 <Vorpal> <elliott> [] -> reflect
17:12:56 <Vorpal> <elliott> [_] -> reflect
17:12:56 <Vorpal> <elliott> _ -> do
17:13:00 <Vorpal> hahaha
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:34 <elliott> ais523: :D
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:03 <elliott> ais523: [caret]
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:30 <ais523> elliott: indeed
17:14:42 <Vorpal> ais523, at least if your goal is to have a goo laugh yes
17:14:49 <elliott> Goo laughs.
17:14:51 <ais523> Vorpal: or just implement something in a suitably insane way
17:14:54 <Vorpal> good*
17:14:58 <Vorpal> ais523, or that
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:26 <elliott> Gregor: Yes :P
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:22 <elliott> libgl1-mesa-dev? No...
17:25:28 <elliott> Beh
17:25:30 <elliott> Bleh
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:01 <elliott> So complicated
17:26:10 * elliott looks for an INSTALL in haskell platfomroermer
17:26:15 <elliott> Aha
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:15 <pikhq_> ais523: *vomit*
17:27:22 <pikhq_> Perl's is much better.
17:27:29 <ais523> indeed
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:54 <pikhq_> I'll have to see it.
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:04 <Vorpal> given some switch
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:15 <Vorpal> pikhq_, *wtf*
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:25 <Vorpal> pikhq_, wonderful
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:28:43 <ais523> *hyphen
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:29:48 <ais523> hmm, that might work
17:29:56 * pikhq_ fetches from git
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:38 <ais523> oh, I see
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:30:57 <elliott> ais523: Yep.
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:24 <elliott> [asterisk]compiled binary
17:31:27 <elliott> pikhq_: Yeah yeah.
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:03 <Phantom_Hoover> *sigh*
17:32:04 <ais523> both sounds like the best approach
17:32:13 <Phantom_Hoover> Reddit, will you ever cease to ruin my day?
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:06 <ais523> what is tup?
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:24 <elliott> yes, just autoconf
17:33:28 <ais523> fair enough
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:12 <ais523> hmm, makes sense
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:39 <elliott> ais523: hmm, I'm not sure
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:02 <ais523> elliott: it is
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:52 <elliott> pikhq_: Ah.
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:34 <ais523> pikhq_: lex.yy.c
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:48 <elliott> which is just stupid
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:55 <Phantom_Hoover> Beheadings are really quite rare around here.
17:36:57 <ais523> but yacc is really stupid
17:36:59 <ais523> and indeed, it does
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:13 <Phantom_Hoover> pikhq_, you could rename *really quickly*.
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:37:42 <Phantom_Hoover> pikhq_, pretend it can't happen.
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:44 <ais523> *wasn't
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:39:06 <elliott> pikhq_: Really? Why?
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:09 <elliott> Ah.
17:40:55 <pikhq_> Though, actually, it'd work better to just make the !cc rule support CFLAGS_%f.
17:40:58 <pikhq_> So never mind!
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:19 <ais523> umm, the first x is
17:43:32 <ais523> I shouldn't really use two different variables of the same name in examples
17:43:40 <ais523> * B 'b
17:46:23 <elliott> Mrrf, I wonder if MaybeT is really the best thing here
17:47:48 <elliott> Shiro/Monad.hs:25:10:
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:47:50 <elliott> FINALLY
17:47:51 <ais523> is there a ListT?
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:23 <elliott> ais523: yes
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
17:55:07 <elliott> which is rarely
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:05:58 <elliott> Serial port. Nice.
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:38 <ais523> Vorpal: it is
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:26 <elliott> ...maybe.
18:09:30 <elliott> Nah who am I kidding.
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:58 <elliott> Dunnask me
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:10 <ais523> awfully hacky, ofc
18:12:24 <Vorpal> ais523, I seen that done to the parport too
18:12:27 <Vorpal> that was great
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:12:41 <ais523> )
18:13:03 <Vorpal> ais523, presumably it isn't for the consumer market
18:13:11 <ais523> possibly
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:20 <ais523> thanks
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:25 <pikhq_> ais523: Yes.
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:03 <ais523> that's pretty amazing
18:22:34 <Vorpal> pikhq_, how long does a full build of mozilla take?
18:22:56 <pikhq_> Not going to check!
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:37 <Vorpal> mozilla uses that
18:24:38 <Vorpal> wtf
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:32 <elliott> Make doesn't scale.
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:08 * pikhq_ nods
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:10 <Vorpal> pikhq_, or break
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:36 <Vorpal> pikhq_, why
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:34:51 <ais523> and the compilers
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:24 <ais523> Vorpal: well, OK
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:36:30 <pikhq_> Lemme look into that.
18:37:09 <Vorpal> tup while interesting doesn't really seem mature.
18:37:10 <ais523> `translate de en merkbefreit
18:37:12 <HackEgo> ​and the merkbefreit
18:37:13 <Vorpal> at least not to me
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:27 <HackEgo> ​und merkbefreit
18:37:31 <Vorpal> err
18:37:34 <ais523> `translateto en de merkbefreit
18:37:35 <Vorpal> maybe not
18:37:36 <HackEgo> ​The merkbefreit
18:37:42 <ais523> `translate merkbefreit
18:37:44 <HackEgo> ​merkbefreit
18:37:46 <ais523> hmm
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:57 <elliott> yes :P
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:14 <elliott> this is being worked on
18:38:16 <elliott> although not out-of-tree
18:38:17 <Vorpal> elliott, right
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:28 <ais523> "remember, free"
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:39:58 <Vorpal> that would work
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:04 <Vorpal> just autoconf?
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:49 <Vorpal> iirc
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:37 <Vorpal> anything else?
18:42:41 <pikhq_> autoheader.
18:42:47 <Vorpal> pikhq_, what does autoheader do?
18:42:55 <pikhq_> It generates a config.h.in from configure.ac.
18:43:05 <elliott> cheater666: appeal to PH.
18:43:11 <Vorpal> oh, I thought autoconf did that
18:43:13 <ais523> oh, I use autoheader
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:35 <ais523> actually, no I don't
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:40 <Vorpal> and so on
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:58 <pikhq_> Vorpal: Hand-written.
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:03 <Vorpal> pikhq_, okay...
18:46:08 <Vorpal> pikhq_, what about autoconf itself
18:46:11 <Vorpal> isn't that shell?
18:46:15 <Vorpal> or is it m4?
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:29 <Vorpal> ah
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:46:59 <ais523> oh, configure, I mean
18:47:03 <elliott> cheater666: That's not my problem.
18:47:06 <Vorpal> $ wc -l /usr/bin/autoconf
18:47:07 <Vorpal> 492 /usr/bin/autoconf
18:47:19 <cheater666> elliott: exactly
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:27 <elliott> cheater666: Then?
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> #! /bin/sh
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 <Vorpal> haha
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:14 <ais523> Vorpal: haha indeed
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:48:59 <Vorpal> ais523, I'm scared
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:09 <ais523> and in /usr/bin
18:51:19 <ais523> where I normally look for executables
18:51:25 <Vorpal> ais523, my autoconf ends with: exec "$AUTOM4TE" "$@"
18:51:26 <Vorpal> hm
18:51:33 <ais523> Vorpal: indeed, so does mine
18:51:48 <Vorpal> /usr/bin/autom4te is indeed perl
18:51:56 <Vorpal> generated
18:52:00 * Phantom_Hoover , against his better judgement, looks at xkcd.
18:52:08 <Phantom_Hoover> That space eats at my soul. Anyway.
18:52:14 <Phantom_Hoover> It's as godawful as ever.
18:52:25 <Vorpal> Phantom_Hoover, times out for me
18:52:38 <Phantom_Hoover> You are indeed fortunate.
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:21 <Vorpal> hm
18:53:38 <Vorpal> handle_m4 ($req, keys %{$req->macro})
18:53:38 <Vorpal> if $force || ! $req->valid;
18:53:49 <Vorpal> perls syntax is ugly
18:53:55 <Vorpal> and it's control flow weird
18:54:03 <ais523> that's just a reverse if
18:54:05 <Phantom_Hoover> http://www.xkcd.com/896/
18:54:07 <Vorpal> ais523, I know
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:16 <Phantom_Hoover> What is it with Munroe thinking he's inspirational.
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:05 <Vorpal> ais523, *ouch
18:56:07 <Vorpal> *
18:56:14 <Vorpal> sub handle_m4 ($@)
18:56:14 <Vorpal> {
18:56:14 <Vorpal> my ($req, @macro) = @_;
18:56:15 <Vorpal> hm
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:46 <Vorpal> ais523, they do?
18:58:59 <Vorpal> ais523, shouldn't it help static analysis?
18:59:07 <ais523> actually, it hinders
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:24 <elliott> No, wait
19:00:25 <Vorpal> it looks quite nasty
19:00:30 <elliott> I wish Vorpal would oh never mind
19:00:37 <Vorpal> elliott, would what?
19:00:40 <Vorpal> elliott, paste it?
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:17 <Vorpal> why != what
19:02:18 <ais523> just that it expressed an operation that, although well-defined, I was scared was useful
19:02:29 <Vorpal> right
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:02:55 <Vorpal> whatever xsystem is
19:03:27 <ais523> Vorpal: it's not a built-in function
19:03:33 <Vorpal> ah okay
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:03:53 <Vorpal> hm
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:11 <Vorpal> yeah
19:04:17 <ais523> from a library I don't have memorised
19:04:17 <Vorpal> use Autom4te::General;
19:04:19 <Vorpal> and so on
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:37 <Vorpal> in verbose mode.
19:05:40 <Vorpal> says the pod
19:05:48 <Vorpal> or whatever it is called
19:05:49 <Vorpal> perldoc?
19:06:52 <Vorpal> ais523, I'm scared, wc -l in /usr/share/autoconf/Autom4te/*.pm gives 3559 lines
19:07:05 <ais523> why is that scary?
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:47 <Vorpal> 15397 total
19:07:49 <Vorpal> ouch
19:07:49 <fizzie> Pod is the format/markup language; perldoc's the documentation-handling tool.
19:08:06 <Vorpal> fizzie, ah okay
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:28 <fizzie> Yes.
19:09:28 <Vorpal> wtf
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:53 <Vorpal> ...
19:10:56 <Vorpal> :D
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:19 <ais523> "definition of"
19:12:31 <Vorpal> you know m4?
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:13:39 <ais523> *that?
19:14:18 <Vorpal> ais523, the logic of m4 I guess
19:14:31 <Vorpal> # m4_car(ARGS...)
19:14:32 <elliott> I think that's elegant.
19:14:32 <Vorpal> # m4_cdr(ARGS...)
19:14:34 <Vorpal> huh
19:14:45 <Vorpal> m4_define([m4_car], [[$1]])
19:14:45 <Vorpal> m4_define([m4_cdr],
19:14:45 <Vorpal> [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
19:14:45 <Vorpal> [$#], 1, [],
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:14:57 <elliott> Perfectly readable
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:21 <ais523> dnl for comments
19:15:23 <Vorpal> ah
19:15:25 <Vorpal> dnl it was
19:15:26 <ais523> it means "discard newline"
19:15:27 <Vorpal> right
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:15:51 <Vorpal> ah
19:15:55 <Vorpal> right
19:15:58 <Vorpal> I missed your line
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:34 <Vorpal> if you say so
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:17 <Vorpal> and a foreach
19:19:52 <Vorpal> m4_define([_m4_foreach],
19:19:52 <Vorpal> [m4_if([$#], [3], [],
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:53 <Vorpal> [[$$1[$$3]$$2[]]])
19:19:55 <Vorpal> huh?
19:19:58 <ais523> it's basically based on substitution, and it's easy to go functional from there
19:20:00 <ais523> much like TCL
19:20:05 <Vorpal> ah I see
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:27 <ais523> and I don't know
19:20:30 <Vorpal> ah
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:40 <Vorpal> ais523, headhurt?
19:20:47 <elliott> Are control structure implementations ever pretty
19:20:52 <Vorpal> elliott, :D
19:21:09 <Vorpal> elliott, see the short example I pasted inline
19:21:29 <elliott> It's pretty.
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:12 <ais523> that's not as bad
19:22:19 <Vorpal> it looks worse to me
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:38 <Vorpal> ais523, ah...
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:06 <Vorpal> hah
19:23:09 <ais523> designed to unquote at different stages
19:23:13 <Vorpal> ouch
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:26 <Vorpal> what does that do
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:55 <ais523> I don't know either
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:30 <ais523> just use test
19:24:39 <Vorpal> hm
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:32 <Vorpal> aww
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:01 <ais523> haha
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:34 <ais523> and also nonportable
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:06 <Vorpal> oh right
19:33:42 <Vorpal> ais523, actually, vxworks is certified posix, considering that, I think one might need autoconf :P
19:33:57 <ais523> Vorpal: so is Windows
19:34:03 <Vorpal> ais523, exactly
19:34:12 <Vorpal> ais523, or was rather
19:34:16 <Vorpal> I doubt they renewed that
19:34:20 <Vorpal> except for interix
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:18 <Vorpal> elliott, too short
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:03 <Vorpal> :D
20:19:06 <Vorpal> elliott, ^
20:19:14 <Vorpal> (:t GHC.MVar.MVar GHC.IO.Handle.Types.Handle__ can be displayed however)
20:19:24 <elliott> wat?
20:19:26 <Vorpal> wait, that was just an error
20:19:29 <Vorpal> nvm
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:40 <elliott> what are you doing
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:36 <Phantom_Hoover> Ouch.
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:21:59 <elliott> Strictness annotations.
20:22:02 <Vorpal> ah
20:22:03 <cheater666> all sorts of indenting.
20:22:05 <elliott> And, uh.
20:22:10 <elliott> You're not meant to understand that.
20:22:11 <elliott> No mortal is.
20:22:19 <elliott> I think a lot of type synonyms got together to produce that type.
20:22:32 <elliott> Wait, is it strictness.
20:22:33 <elliott> Hmm.
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:22:46 <elliott> Oh, it is strictness.
20:22:48 <elliott> Since it's a constructor.
20:22:56 <elliott> What foreach
20:23:04 <Vorpal> err forall
20:23:05 <elliott> There's a forall, that's just universal quantification, usually implicit
20:23:07 <Vorpal> typo
20:23:13 <elliott> (a -> a) == (forall a. a -> a)
20:23:14 <Vorpal> elliott, yeah why isn't it implicit here
20:23:20 <cheater666> forall
20:23:22 <elliott> Because it's a GADT.
20:23:30 <Vorpal> elliott, now I'm lost
20:23:35 <Vorpal> isn't that an extension?
20:23:40 <elliott> Yes.
20:23:42 <elliott> It's GHC internals.
20:23:46 <elliott> They can do whatever they like.
20:23:50 <Vorpal> right
20:23:52 <elliott> This is what you get for poking around. :p
20:23:59 <Vorpal> elliott, yeah :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:21 <elliott> just like
20:24:27 <elliott> myCons x y z = y `seq` RealCons x y z
20:24:31 <elliott> that's the same as
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:44 <elliott> you get the idea
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:01 <elliott> Yes.
20:25:04 <elliott> Well, no.
20:25:07 <elliott> Constructor signature, yes.
20:25:10 <Vorpal> ah
20:25:15 <elliott> Which you only find in GADTs.
20:25:19 <Vorpal> I see
20:25:23 <elliott> Normally you'd just put it before the field name in regular old ADT syntax.
20:25:34 <Vorpal> I see
20:25:53 <Vorpal> elliott, anyway that thing is badly fucked
20:26:04 <elliott> No it isn't.
20:26:10 <elliott> It just uses a lot of type synonyms.
20:26:20 <elliott> It's like decompiling the type.
20:26:24 <elliott> Look at the source. :p
20:26:27 <elliott> Or don't, because it won't make any more sense.
20:26:46 <Vorpal> elliott, I don
20:26:54 <Vorpal> don't* even know where the source is
20:26:59 <Vorpal> not on this system anyway
20:26:59 <elliott> Uh.
20:27:02 <elliott> haskell.org/ghc/...
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:44 <elliott> Doesn't look like C code.
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:06 <Vorpal> seq I assume
20:28:09 <elliott> The RTS.
20:28:11 <elliott> No, seq isn't.
20:28:15 <Vorpal> *how*
20:28:21 <elliott> Bang patterns.
20:28:23 <Vorpal> ah
20:28:26 <Vorpal> elliott, isn
20:28:33 <Vorpal> s/isn//
20:28:33 <elliott> Hm, wait.
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:29:45 <Vorpal> ah
20:30:02 <Vorpal> elliott, so which functions are in the ever-elusive RTS?
20:30:11 <elliott> Uhh, the GC is.
20:30:15 <elliott> I don't think you understand what the RTS is.
20:30:22 <Vorpal> probably not
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:07 <elliott> X_X
20:31:09 <elliott> RTFSource
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:28 <Vorpal> ah
20:31:28 <elliott> Which is true, it won't.
20:31:35 <elliott> http://www.haskell.org/ghc/dist/7.0.3/ghc-7.0.3-src.tar.bz2
20:31:46 <Vorpal> hm
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:18 <elliott> Yes.
20:33:19 <elliott> Typo.
20:33:21 <Vorpal> right
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:48 <Vorpal> (or perhaps runtime)
20:33:50 <elliott> The question is incoherent.
20:33:57 <Vorpal> elliott, how so?
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:21 <elliott> RTS.
20:37:50 <Vorpal> elliott, was that RTS = RunTimeSystem? Or RTS = Read The Source?
20:38:18 <elliott> First.
20:38:38 <Vorpal> elliott, hm weird they don't simply use the FFI, that seems neater somehow
20:38:47 <elliott> No, it wouldn't.
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:38 <elliott> Been done.
20:40:45 <elliott> http://programatica.cs.pdx.edu/House/
20:40:45 <Vorpal> elliott, ooh, nice
20:41:17 <Vorpal> pretty
20:42:55 <Vorpal> night →
20:42:58 <elliott> Vorpal: Oh, and
20:43:01 <Vorpal> yes?
20:43:01 <elliott> newtype IO a = IO (State# RealWorld -> (# State# RealWorld, a #))
20:43:06 <elliott> is the IO monad itself.
20:43:10 <Vorpal> elliott, hm... nice
20:43:13 <elliott> (libraries/ghc-prim/GHC/Types.hs)
20:43:18 <Vorpal> elliott, State#?
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:36 <elliott> And it's (# a, b #).
20:43:37 <elliott> Unboxed tuple.
20:43:42 <Vorpal> aha
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:00 <elliott> [asterisk]strict state
20:44:01 <elliott> Vorpal: It doesn't.
20:44:03 <elliott> It's GHC.
20:44:08 <Vorpal> elliott, ah
20:44:22 <Vorpal> elliott, so a language extension, presumably considered unsafe too?
20:44:27 <elliott> It's not really unsafe.
20:44:33 <Vorpal> hm okay
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:11 <elliott> Sort of not really.
20:45:22 <Vorpal> oh, that makes me sad
20:45:31 <Vorpal> easy to optimise some stuff that way
20:45:40 <elliott> It does.
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 ()
20:46:02 <elliott> noDuplicate = IO $ \s -> case noDuplicate# s of s' -> (# s', () #)
20:46:05 <Vorpal> wow
20:46:21 <Vorpal> what is dupable IO?
20:46:27 <elliott> No such thing.
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:47 <Vorpal> aha
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:47:53 <Vorpal> ah
20:48:09 <Vorpal> elliott, I tried :i lazy in ghci, but I guess it is in a different package
20:48:25 <elliott> It's not a function.
20:48:32 <Vorpal> ah
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:25 * Vorpal waits for it to load
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:50:52 <elliott> WFM
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:51:23 <elliott> Magic.
20:51:45 <Vorpal> ah
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:40 <elliott> (+#) = let x = x in x
20:52:44 <elliott> I HAVE A FEELING THIS WAS ADDED JUST FOR HADDOCK
20:52:53 <elliott> (In fact I know it was:
20:52:54 <elliott> {-
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:52:54 <elliott> consumed by haddock.
20:52:54 <elliott> -}
20:52:56 <elliott> )
20:53:18 <Vorpal> elliott, elliott where is the plusInt stuff from?
20:53:33 <Vorpal> err why two "elliott"
20:53:36 <Vorpal> I need sleep
20:53:38 <elliott> GHC.Exts.
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> (# r, c #) ->
20:54:25 <elliott> if c ==# 0#
20:54:25 <elliott> then S# r
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:33 <elliott> (# s, d #) -> J# s d
20:54:35 <elliott> IT IS ALL CLEAR NOW
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:55:13 <Vorpal> elliott, nice
20:55:18 <Vorpal> aha
20:56:08 <elliott> Seems I lied; GHC doesn't default to utf-eight, it determines it based on the locale.
20:56:14 <Vorpal> ah
20:56:26 <Vorpal> elliott, LC_CTYPE?
20:56:39 <elliott> Dunno.
20:56:48 <Vorpal> (+#) = let x = x in x
20:56:49 <Vorpal> hm
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:57:46 <elliott> Purest infinite loop.
20:58:23 <Vorpal> elliott, couldn't they simply make it (+#) = x or some such?
20:58:36 <Vorpal> err well
20:58:47 <Vorpal> (+#) a a = a
20:58:49 <Vorpal> or such
20:59:05 <Vorpal> well, a b
20:59:07 <Vorpal> rather
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:13:25 * Sgeo mindboggles
21:13:40 <elliott> have you tried ctrl+j
21:13:53 <Sgeo> ?
21:14:54 <elliott> to newline and indent
21:15:15 <elliott> if the issue all along has been taht you fail at emacs bindings
21:15:16 <elliott> then
21:15:17 <elliott> LOL
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:22 <elliott> have you tried
21:17:24 <elliott> pressing the tab key
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:26 <Phantom_Hoover> newLISP-GS?
21:18:34 <elliott> emacs is rad you should use emacs
21:18:39 <monqy> I'm cool with vim
21:18:41 <Sgeo> Phantom_Hoover, IDE that newLISP comes with
21:18:43 <elliott> or vim
21:18:44 <elliott> either is cool
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:18:57 <Phantom_Hoover> So, in other news, I am now on exam leave.
21:19:01 <elliott> but fuck newlisp-gs
21:19:03 <monqy> and I like hjkl
21:19:06 <elliott> Phantom_Hoover: ill leave YOUR exams
21:19:08 <monqy> hjkl is great
21:19:09 <Phantom_Hoover> With almost a fortnight until the next exam.
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:19:52 <monqy> lispboxen?
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:38 <monqy> is it a good lisp
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:26:36 <Phantom_Hoover> Sgeo, are you on Windows?
21:26:41 <Sgeo> Yes
21:26:47 <Phantom_Hoover> Oh. Carry on.
21:26:52 <Phantom_Hoover> There's no hope for you anyway.
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:28:20 <Sgeo> I think
21:29:21 <elliott> It sucks.
21:32:32 <monqy> try not using windows
21:48:37 <augur> any dutch people in here?
21:49:10 <elliott> ...
21:49:48 <augur> WHAT ELLIOTT
21:49:53 <augur> WHY ARE YOU ALWAYS JUDGING ME
21:50:04 <elliott> wat
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:16 <Phantom_Hoover> Bwahahaha
22:20:31 <zzo38> Ha ha ha
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:31 <Phantom_Hoover> Oh my god it's even better than that.
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:26:36 <Phantom_Hoover> ...waitwhat?
22:27:08 <zzo38> Ha ha ha
22:27:21 <pikhq> Phantom_Hoover: Dresden Codak *is his day job*.
22:27:28 <Phantom_Hoover> ...how...
22:27:33 <Phantom_Hoover> Oh, wait, nerds.
22:27:37 <pikhq> Yes.
22:27:40 <pikhq> Nerds like merch.
22:27:49 <Phantom_Hoover> Easiest people on the planet to wring cash from.
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:28:46 <Phantom_Hoover> What does he even *do* all day?
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:32:58 <Phantom_Hoover> One does not need plots and characters for one-offs.
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:35:47 <Phantom_Hoover> Or if basic setting counts as plot.
22:37:00 <pikhq> *Anyways*, point is, he seems just straight-up not used to writing well-developed stories.
22:37:09 <Phantom_Hoover> Naturally.
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:19:19 <elliott> Goodnight
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:34:24 <monqy> did they?
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:29 <EgoBot> ​Does not compile.
23:52:56 <ajf> !c const size_t a = 7; printf("%d", sizeof(a));
23:52:59 <EgoBot> ​8
23:53:12 <ajf> !c const size_t a = 12; printf("%d", sizeof(a));
23:53:14 <EgoBot> ​8
23:53:22 <ajf> hm.
23:55:02 <pikhq_> type is undefined, so sizeof(type) will fail.
23:55:03 <pikhq_> :)
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.$$
2011-05-14
00:01:26 <Lymia> !c printf("cake");unsigned char* c=malloc(1024);memcpy(main,c,1024);int (mainPtr*)();mainPtr=(void*)c;mainPtr();
00:01:27 <EgoBot> ​Does not compile.
00:01:30 <Lymia> :[
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:05:11 <EgoBot> ​Does not compile.
00:07:49 <Sgeo> ajf, does it say "set of all sets that don't contain themselves?"
00:09:35 <Phantom_Hoover> <ajf> Sgeo: it is a paradox
00:09:41 <Phantom_Hoover> No. No it isn't.
00:09:49 <Phantom_Hoover> The set of all sets contains itself.
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:10 <Phantom_Hoover> ajf, ...why?
00:11:23 <ajf> how can something contain itself
00:11:29 <Phantom_Hoover> ...
00:11:32 <Phantom_Hoover> .............
00:11:41 <Phantom_Hoover> That's not what "paradox" means.
00:13:37 <ajf> Well
00:13:47 <ajf> hmm
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:16:34 <ajf> :/
00:26:09 <Lymia> Sgeo, was it intentional?
00:28:22 * Phantom_Hoover → sleep
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:35:35 <ajf> lolwut
00:36:02 <pikhq_> ajf: Self-driving cars exist. Now.
00:36:10 <ajf> :/
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:28 <ajf> :/
00:39:36 <ajf> doubt it.
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:27 <ajf> no
00:42:31 <ajf> the average numskull
00:42:38 <pikhq_> Sorry, right.
00:42:39 <ajf> reacts better to the unknown than an AI
00:42:54 <pikhq_> My, what an optimist.
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:31 <pikhq_> Man flails.
00:43:33 <pikhq_> AI flails.
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:44 <ajf> OK
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:46:37 <pikhq_> And so on.
00:46:43 <ajf> Cool.
00:47:10 <ajf> What happens when the AI makes a mistake.
00:47:15 <ajf> AI isn't flawless.
00:47:51 <Lymia> Again.
00:47:53 <pikhq_> Perfect solution fallacy. Stop it.
00:48:08 <ajf> What>
00:48:09 <ajf> ?
00:48:19 <pikhq_> "The Nirvana fallacy is the logical error of comparing actual things with unrealistic, idealized alternatives."
00:48:31 <pikhq_> — Wikipedia
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:48:55 <ajf> eh
00:49:11 <ajf> inb4 lawsuits
00:49:28 <ajf> Also
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:07 <ajf> yeah.
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:20 <ajf> OK.
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:18 <pikhq_> "car failed"
00:56:23 <ajf> As in
00:56:28 <ajf> Well yeah
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:56:55 <ajf> nope.
00:57:01 <pikhq_> Nor can the person.
00:57:12 <pikhq_> Making this hypothetical... Moot.
00:57:24 <ajf> meh
00:57:39 <pikhq_> Though, the AI could probably be hooked into OBD, and possibly identify failure before it actually happens.
00:57:55 <ajf> hmm
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?
00:59:41 <pikhq_> Dunno.
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:01:57 <ajf> What...
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:47 <coppro> *acceptance
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:37:20 <Sgeo> Hmm
05:38:01 <Sgeo> Comment?
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:25:57 <CakeProphet> Hello all
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:51:54 <cheater666> WILD STALLIONS!
08:56:51 -!- FireFly has joined.
09:02:15 -!- oerjan has joined.
09:05:43 <oerjan> ho hum
09:16:51 <Vorpal> oerjan, know anything about parsec (the haskell sense)
09:17:14 <oerjan> sure
09:17:40 <CakeProphet> I know a bit myself.
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:18 <Vorpal> hm
09:18:37 <Vorpal> oerjan, I get Couldn't match expected type `Char' against inferred type `[Char]' then
09:18:44 <Vorpal> hm
09:19:13 <oerjan> @hoogle sepBy
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:35 <Vorpal> hm
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:48 <Vorpal> huh now it loads
09:20:54 <Vorpal> eol = char '\n'
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:20:56 <Vorpal> is what I have
09:21:12 <oerjan> definitely try many1
09:21:15 <Vorpal> hm I guess I might have had some type signature wrong
09:21:18 <Vorpal> oerjan, hm
09:21:28 <Vorpal> *** Exception: Text.ParserCombinators.Parsec.Prim.many: combinator 'many' is applied to a parser that accepts an empty string.
09:21:29 <Vorpal> yeah
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:21:36 <oerjan> oh ok
09:21:39 <oerjan> yes
09:22:04 <Vorpal> gah
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:22:47 <Vorpal> err, brb, phone call
09:22:48 <Vorpal> gah
09:23:34 <oerjan> Vorpal: um why not just use sepBy for that too?
09:24:51 <Vorpal> back
09:24:54 <Vorpal> oerjan, ah
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:22 <Vorpal> ah
09:25:26 <Vorpal> perfect
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:19 <oerjan> heh
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:28:34 <Vorpal> right
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:54 <oerjan> yeah that works too
09:29:57 <Vorpal> *Main Text.ParserCombinators.Parsec> parseDownRight "a b\n c d"
09:29:57 <Vorpal> Right [["a","b"],[]]
09:29:59 <Vorpal> mmm nope
09:30:12 <Vorpal> or wait
09:30:16 <Vorpal> I forgot to save the file
09:30:18 <Vorpal> before loading it
09:30:21 <Vorpal> so yeah it works
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:48 <oerjan> oh
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:08 <CakeProphet> sounds spooky.
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:15 <CakeProphet> *possibility
09:33:16 <Vorpal> CakeProphet, hm
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:49 <Vorpal> yeah
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> ws = many (char ' ')
09:34:34 <Vorpal> ws1 = many1 (char ' ')
09:34:34 <Vorpal> eol = ws >> char '\n'
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:34:57 <Vorpal> wait
09:35:01 <Vorpal> doesn't handle trailing ws
09:35:02 <Vorpal> why not
09:35:26 <Vorpal> Left "(unknown)" (line 1, column 5):
09:35:26 <Vorpal> unexpected "\n"
09:35:26 <Vorpal> expecting " "
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:38 <Vorpal> oerjan, hm...
09:35:54 <Vorpal> oerjan, you mean this? line = ws >> (sepBy cell ws1) >> ws
09:36:01 <Vorpal> or does that work
09:36:25 <Vorpal> or maybe SepEndBy
09:36:26 <oerjan> you don't need the first ws then
09:36:38 <Vorpal> oerjan, really? hm
09:36:46 <Vorpal> oerjan, how does that deal with newlines
09:36:46 <oerjan> also that's equivalent to sepEndBy
09:36:50 <Vorpal> yeah
09:37:03 <oerjan> i mean you want the newlines to absorb _their_ trailing whitespace too
09:37:07 <Vorpal> oerjan, aha
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:37:58 <Vorpal> Right [[]]
09:37:58 <lambdabot> Not in scope: `parseDownRight'
09:37:59 <Vorpal> why
09:38:08 <Vorpal> why doesn't that give me Left
09:38:17 <Vorpal> it seems like an error to me
09:38:33 <oerjan> hm?
09:38:38 <Vorpal> ws = many (char ' ')
09:38:38 <Vorpal> ws1 = many1 (char ' ')
09:38:38 <Vorpal> eol = char '\n' >> ws
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:40 <Vorpal> is what I have no
09:38:43 <Vorpal> now*
09:38:49 <oerjan> i thought downright was supposed to allow more than one newline in a row
09:38:55 <Vorpal> oerjan, yes indeed
09:38:57 <Vorpal> oerjan, it does
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:25 <Vorpal> on the first line
09:39:32 <Vorpal> > parseDownRight "a b \n\n c d"
09:39:32 <Vorpal> Right [["a","b"],[],["c","d"]]
09:39:33 <lambdabot> Not in scope: `parseDownRight'
09:39:40 <oerjan> i think that means no line at all, it's treated as one line break in total
09:39:45 <Vorpal> oerjan, hm
09:40:03 <Vorpal> right, easily fixed
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:28 <Vorpal> Right [[]]
09:40:35 <CakeProphet> parseBrainfuck = anyToken
09:40:37 <oerjan> hm your problem may be that sepEndBy can parse zero items
09:40:40 <CakeProphet> I am a master.
09:40:47 <Vorpal> oerjan, right
09:40:54 <Vorpal> oerjan, is there a variant that doesn't?
09:41:03 <Vorpal> hm probably sepEndBy1
09:41:12 <CakeProphet> yes that exists.
09:41:18 <oerjan> indeed
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:44:13 <CakeProphet> string ""?
09:44:52 <oerjan> return ()
09:45:00 <CakeProphet> oh right. :)
09:45:07 <Vorpal> hm
09:45:28 <CakeProphet> it's been ages since I've looked at Parsec.
09:45:28 <Vorpal> so:
09:45:30 <Vorpal> downrightFile = (sepEndBy1 line eol) <|> (return ())
09:45:32 <Vorpal> or what?
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:15 <Vorpal> and
09:46:19 <Vorpal> Couldn't match expected type `[[[Char]]]'
09:46:20 <Vorpal> against inferred type `()'
09:46:23 <Vorpal> hrrm
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:47:52 <oerjan> heh
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:07 <Vorpal> Right []
09:49:08 <Vorpal> nope
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:21 <Vorpal> valid*
09:49:22 <Vorpal> yeah
09:49:32 <Vorpal> oerjan, I need the empty string exactly there
09:49:42 <siracusa> You propably want eof
09:49:47 <Vorpal> ah
09:49:52 <Vorpal> like: downrightFile = (sepEndBy1 line eol) <|> eof
09:49:52 <Vorpal> then
09:50:00 <Vorpal> whops
09:50:00 <Vorpal> nope
09:50:06 <Vorpal> Couldn't match expected type `[[[Char]]]'
09:50:07 <Vorpal> against inferred type `()'
09:50:08 <Vorpal> again
09:50:08 <CakeProphet> I'd be interested to see if string "" actually does something or if it's completely undefined.
09:50:21 <siracusa> eof >> return []
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:51:38 <Vorpal> oerjan, right
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:40 <Vorpal> CakeProphet, :P
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:53:47 <CakeProphet> plus it's Haskell, which is always nice.
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:34 <lambdabot> [["a","bc"],["d","e"]]
09:55:53 <Vorpal> oerjan, you are ding the same thing but without parsec there I guess
09:56:03 <Vorpal> @t null
09:56:03 <oerjan> yeah
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:09 <Vorpal> :t null
09:56:09 <lambdabot> forall a. [a] -> Bool
09:56:15 <Vorpal> right
09:56:40 <oerjan> > words " \n \n"
09:56:41 <lambdabot> []
09:56:53 <oerjan> not all that filtering may be necessary
09:56:56 <Vorpal> :t (--)
09:56:57 <lambdabot> parse error (possibly incorrect indentation)
09:57:02 <Vorpal> :t (>:)
09:57:03 <lambdabot> Not in scope: `>:'
09:57:08 <Vorpal> what was that stuff oerjan
09:57:16 <Vorpal> oh wait
09:57:18 <Vorpal> a comment
09:57:19 <Vorpal> duh
09:57:22 <oerjan> a comment XD
09:57:24 <CakeProphet> ...lol
09:57:34 <Vorpal> CakeProphet, my irc client lacks syntax highlight
09:57:41 <Vorpal> for haskell at least
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:10 <lambdabot> [["a","bc"],["d","e"]]
09:58:18 <Vorpal> oerjan, golfing it?
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:03 <lambdabot> [["a","bc"],["d","e"]]
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:10 <CakeProphet> pl
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:35 <CakeProphet> no, pointless for... pointless. :P
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:39 <Vorpal> hm
10:00:44 <Vorpal> interesting
10:00:53 <Vorpal> @pf filter (not . null) . map words . lines $ " a bc \n \t\n d\te"
10:00:54 <lambdabot> Maybe you meant: bf pl
10:01:01 <Vorpal> right, indeed
10:01:18 <CakeProphet> a bit of a play on words.
10:01:25 <Vorpal> that conversion looks wrong to me though
10:02:19 <CakeProphet> well, it's already point-free isn't it?
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:03:18 <lambdabot> (line 1, column 20):
10:03:18 <lambdabot> unexpected "'"
10:03:18 <lambdabot> expecting space or simple term
10:03:22 <Vorpal> huh?
10:03:39 <CakeProphet> :t or
10:03:40 <lambdabot> [Bool] -> Bool
10:03:49 <Vorpal> :t (||)
10:03:50 <lambdabot> Bool -> Bool -> Bool
10:03:54 <Vorpal> ah right
10:03:55 <CakeProphet> ...trying to remember my Haskell.
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:06 <Vorpal> I'd like "in" here
10:04:21 <CakeProphet> :t elem
10:04:21 <lambdabot> forall a. (Eq a) => a -> [a] -> Bool
10:04:22 <siracusa> > filter (`elem` "↓→") "foo↓→→↓"
10:04:22 <lambdabot> "\8595\8594\8594\8595"
10:04:37 <CakeProphet> Vorpal: elem is "in" ;)
10:04:43 <Vorpal> right
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:17 <Vorpal> the crap?
10:05:27 <Vorpal> what did it do there
10:05:32 <Vorpal> encoding failure?
10:05:45 <oerjan> @pl isn't precisely perfect parsing
10:05:45 <CakeProphet> seems like it.
10:05:51 <Vorpal> oerjan, aha
10:06:16 <CakeProphet> @src
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:53 <oerjan> !help
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:02 <CakeProphet> !help userinterps
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:09 <lambdabot> against inferred type `[GHC.T...
10:07:12 <Vorpal> err
10:07:15 <Vorpal> okay...
10:07:17 <Vorpal> :t map
10:07:18 <lambdabot> forall a b. (a -> b) -> [a] -> [b]
10:07:26 <Vorpal> oh wait nwm
10:07:32 <Vorpal> nvm*
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:07:37 <lambdabot> against inferred type...
10:07:42 <Vorpal> uh okay
10:08:15 <oerjan> @hoogle [a] -> [a] -> [a]
10:08:15 <lambdabot> Prelude (++) :: [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:21 <oerjan> @more
10:08:26 <oerjan> bah
10:08:42 <CakeProphet> !userinterps
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:50 <Vorpal> ah
10:08:54 <CakeProphet> !postmodern What on earth does this do.
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:15 <lambdabot> "tet"
10:09:18 <oerjan> heh
10:09:28 <oerjan> it seems that can also be used :)
10:09:41 <Vorpal> oerjan, wtf is intersec
10:09:44 <Vorpal> intersect*
10:09:45 <Vorpal> hm
10:09:48 <oerjan> set intersection
10:09:48 <Vorpal> :t intersec
10:09:49 <lambdabot> Not in scope: `intersec'
10:09:49 <Vorpal> :t intersect
10:09:50 <lambdabot> forall a. (Eq a) => [a] -> [a] -> [a]
10:09:51 <Vorpal> ah
10:10:00 <CakeProphet> !yodawg Hello miss, you are beautiful.
10:10:01 <EgoBot> ​Unknown function: H
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:16 <Vorpal> I see
10:10:20 <CakeProphet> !help info
10:10:21 <EgoBot> ​Sorry, I have no help for info!
10:10:28 <oerjan> @src intersect
10:10:29 <lambdabot> intersect = intersectBy (==)
10:10:37 <oerjan> @src intersectBy
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:52 <CakeProphet> !info yodawg
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:10:59 <CakeProphet> ...haha. okay.
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:29 <CakeProphet> yes I see that..
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:19 <cheater666> lol zzo xD
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 <CakeProphet> !show yodawg
10:12:44 <EgoBot> ​unlambda (sending via DCC)
10:12:50 <cheater666> !show yodawg
10:12:50 <EgoBot> ​unlambda (sending via DCC)
10:13:00 <cheater666> !show yodawg
10:13:01 <EgoBot> ​unlambda (sending via DCC)
10:13:14 <cheater666> * DCC CHAT to EgoBot lost (Remote host closed socket).
10:13:38 <cheater666> oerjan, it is broke
10:13:44 <CakeProphet> !show postmodern
10:13:45 <EgoBot> ​sh postmodern
10:13:49 <CakeProphet> ...
10:13:58 <CakeProphet> elegant code.
10:14:47 <CakeProphet> !simpleacro
10:14:54 <EgoBot> ​MBUJDQ
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:01 <oerjan> synonym for fmap
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:11 <Vorpal> so where
10:18:14 <Vorpal> hm
10:18:17 <oerjan> ouch
10:18:17 <CakeProphet> Control.Applcative
10:18:21 <Vorpal> CakeProphet, ah
10:18:23 <CakeProphet> *Applicative
10:18:30 <Vorpal> oerjan, why ouch?
10:18:32 <oerjan> or Control.Functor
10:18:47 <oerjan> that it isn't imported automatically. well i guess it's not that big
10:18:56 <Vorpal> oerjan, this is ghc 6
10:18:58 <Vorpal> not ghc 7
10:19:11 <Vorpal> maybe it differs
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:31 <Vorpal> checkLen (x:xs) =
10:20:32 <Vorpal> let l = length x in
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:35 <CakeProphet> I believe
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:48 <Vorpal> oerjan, but why
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:24:13 <Vorpal> oerjan, r/all ?
10:24:34 <CakeProphet> I'm at a loss as well.
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:25:51 <Vorpal> oh ++
10:25:53 <Vorpal> right
10:27:13 <oerjan> <CakeProphet> elegant code. <-- probably a program in egobot's /bin/
10:27:33 <CakeProphet> ....yes. probably.
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:29:46 <oerjan> Vorpal: show
10:30:03 <Vorpal> oerjan, what about hexdecimal then
10:30:14 <oerjan> > showHex 666 ""
10:30:14 <lambdabot> "29a"
10:30:17 <Vorpal> ah
10:30:28 <Vorpal> oerjan, and an arbitrary base?
10:30:46 <oerjan> :t showIntAtBase
10:30:47 <lambdabot> forall a. (Integral a) => a -> (Int -> Char) -> a -> String -> String
10:30:58 <Vorpal> hm
10:31:14 <Vorpal> :t ShowIntegerAtBase
10:31:15 <lambdabot> Not in scope: data constructor `ShowIntegerAtBase'
10:31:17 <Vorpal> hm nope
10:31:18 <oerjan> > showIntAtBase 3 intToDigit 27 ""
10:31:19 <lambdabot> "1000"
10:31:23 <Vorpal> oerjan, isn't Int fixnum?
10:31:26 <Vorpal> and Integer bignum?
10:31:32 <Vorpal> or do I misrememer
10:31:45 <oerjan> Vorpal: that's just for converting the digit, the whole number is any Integral
10:31:57 <Vorpal> ah
10:32:21 <oerjan> so if you want to work in bases > (maxInt :: Int), you might need to work harder :D
10:33:21 <Vorpal> hah
10:33:32 <Vorpal> showIntAtBase 4 intToDigit 27 ""
10:33:35 <Vorpal> > showIntAtBase 4 intToDigit 27 ""
10:33:36 <lambdabot> "123"
10:33:41 <Vorpal> err
10:33:48 <Vorpal> wait, which parameter is which
10:33:54 <Vorpal> is 27 the number to convert?
10:33:57 <oerjan> yes
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:06 <Vorpal> ah
10:34:12 <Vorpal> so what is the range
10:34:14 <oerjan> it only goes up to hex, i think
10:34:19 <Vorpal> oerjan, bah, useless
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:34:52 <Vorpal> even in source code
10:34:56 <Vorpal> right
10:35:03 <Vorpal> oerjan, I wonder why it doesn't go further however
10:35:17 <Vorpal> the built in I mean
10:35:25 <Vorpal> :t intToDigit'
10:35:26 <lambdabot> Not in scope: `intToDigit''
10:35:26 <Vorpal> :t intToDigit
10:35:27 <lambdabot> Int -> Char
10:35:28 <oerjan> well it's haskell 98 standard
10:35:31 <Vorpal> :show intToDigit
10:35:34 <Vorpal> > show intToDigit
10:35:35 <lambdabot> Overlapping instances for GHC.Show.Show
10:35:35 <lambdabot> (GHC.T...
10:35:37 <Vorpal> eh
10:35:38 <Vorpal> whatever
10:35:39 <oerjan> @src intToDigit
10:35:39 <lambdabot> Source not found. You speak an infinite deal of nothing
10:35:56 <Vorpal> weird
10:36:00 <oerjan> @hoogle intToDigit
10:36:01 <lambdabot> Data.Char intToDigit :: Int -> Char
10:36:14 <oerjan> you may want to browse Data.Char source
10:36:20 <oerjan> @source Data.Char
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:43 <Vorpal> meh
10:36:52 <oerjan> i'm not sure @source is accurate anyway
10:37:01 <oerjan> @help source
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:31 <oerjan> yes, Data.Sequence
10:37:33 <Vorpal> ah
10:37:36 <Vorpal> thanks
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:22 <Vorpal> oerjan, uh...?
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:47 <Vorpal> :t 1:1:zipWith
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:51 <Vorpal> :t 1:1
10:39:51 <lambdabot> forall t. (Num t, Num [t]) => [t]
10:39:52 <oerjan> the fib or for downright?
10:39:58 <Vorpal> oerjan, the fib
10:40:19 <oerjan> well by laziness the fib list starts with 1,1, without looking at the rest
10:40:30 <Vorpal> ah right
10:40:35 <Vorpal> that explains that part
10:40:42 <Vorpal> :t zipWith
10:40:43 <lambdabot> forall a b c. (a -> b -> c) -> [a] -> [b] -> [c]
10:40:56 <Vorpal> hm
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:42:40 <oerjan> s/it/similar tricks/
10:43:11 <Vorpal> yeah probably
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:10 <Vorpal> aha
10:46:13 <oerjan> and this is often a vital technique for building very recursive structures without using mutation
10:46:13 <CakeProphet> it's also dark wizardry.
10:46:24 <Vorpal> CakeProphet, right, I shall avoid it then
10:46:31 <CakeProphet> no it's awesome.
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:48:57 <oerjan> > let x = x in x
10:48:58 <Vorpal> not quite what I want
10:49:01 <lambdabot> mueval-core: Time limit exceeded
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:03 <Vorpal> ah
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:31 <oerjan> (Data.Ix iirc)
10:53:46 <Vorpal> so lets see... how does one load [["123","456"],["abc","def"]] into an array hm
10:54:14 <oerjan> :t arrayFromList
10:54:15 <lambdabot> Not in scope: `arrayFromList'
10:54:18 <oerjan> er
10:54:23 <oerjan> :t newArray
10:54:24 <lambdabot> Not in scope: `newArray'
10:54:30 <oerjan> bah
10:54:33 <Vorpal> :t array
10:54:33 <oerjan> @hoogle array
10:54:33 <lambdabot> package array
10:54:33 <lambdabot> Data.Array.IArray array :: (IArray a e, Ix i) => (i, i) -> [(i, e)] -> a i e
10:54:33 <lambdabot> module Data.Array
10:54:34 <lambdabot> forall i e. (Ix i) => (i, i) -> [(i, e)] -> Array i e
10:54:49 <CakeProphet> mkArray?
10:54:55 <Vorpal> :t mkArray
10:54:56 <lambdabot> Not in scope: `mkArray'
10:54:57 <Vorpal> nope
10:55:00 <Vorpal> it is array it seems
10:55:16 <oerjan> actually array but that seems redundant
10:55:19 <oerjan> :t listArray
10:55:20 <lambdabot> forall i e. (Ix i) => (i, i) -> [e] -> Array i e
10:55:25 <oerjan> there you go
10:55:29 <Vorpal> hm
10:55:47 <oerjan> then you don't need to list the indices except for the bounds
10:56:07 <Vorpal> right
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:05 <Vorpal> hm what
10:57:09 <Vorpal> oh do I need to flatten it
10:57:10 <Vorpal> right
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:57:50 <oerjan> ah
10:57:54 <oerjan> yeah concat
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:32 <Vorpal> is that line
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:44:10 <Vorpal> or hm
11:44:19 <Vorpal> oh two sequences
11:44:22 <Vorpal> maybe that is it
11:45:04 <Vorpal> mmm nope
11:45:20 <Vorpal> executeDownRight program (Seq.(><) newqueue (Seq.fromList str)) newpos max
11:45:22 <Vorpal> gives me:
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:45:31 <Vorpal> wtf
11:46:12 <Deewiant> Vorpal: (Seq.><)
11:46:22 <Vorpal> oh
11:53:56 <oerjan> right
11:54:37 <Vorpal> > downRight "→ "
11:54:38 <Vorpal> Right *** Exception: divide by zero
11:54:38 <lambdabot> Not in scope: `downRight'
11:54:40 <Vorpal> the crap?
11:54:50 <Vorpal> how did I manage that one
11:55:06 <Vorpal> oh, wrapping
11:55:20 <oerjan> off by one error when dividing by 1?
11:55:28 <Vorpal> oerjan, yeah I think so
11:56:35 <Vorpal> > downRight "→ f f"
11:56:35 <Vorpal> Right ^CInterrupted.
11:56:36 <lambdabot> Not in scope: `downRight'
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:11 <Vorpal> hm
11:57:30 <Vorpal> oerjan, is there a haskell debugger?
11:57:47 <oerjan> try :help
11:57:49 <Vorpal> oerjan, I'd like to single step this logic (whatever that means in a lazy language...)
11:58:07 <Vorpal> hm
11:58:52 <oerjan> well does that parse into [["→", "", ""]] at least?
11:59:08 <Vorpal> oerjan, yes it does
11:59:24 <oerjan> hm it should halt on the second one
11:59:57 <Vorpal> the debugger is highly confusing
12:00:11 * oerjan has never used it
12:01:15 <Vorpal> a coloured ghc prompt would probably help with readablity
12:01:18 <Vorpal> make it stand out
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:02:46 <oerjan> brb firing up winghci
12:02:51 <Vorpal> ah found it
12:02:53 <Vorpal> :set prompt
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:44 <Deewiant> Vorpal: ~/.ghci
12:07:47 <Vorpal> oerjan, so not very useful then :P
12:07:49 <Vorpal> Deewiant, thanks
12:08:12 <Vorpal> yay
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:03 <Vorpal> hm
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:10:20 <Vorpal> ah
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:27 <Vorpal> x/y mixup
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:20:58 <oerjan> hah
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:21:44 <oerjan> hm right
12:22:47 <oerjan> @hoogle range
12:22:48 <lambdabot> Data.Ix range :: Ix a => (a, a) -> [a]
12:22:48 <lambdabot> Language.Haskell.TH data Range
12:22:48 <lambdabot> Language.Haskell.TH.Syntax data Range
12:23:01 <oerjan> > range ((0,0),(1,1))
12:23:01 <lambdabot> [(0,0),(0,1),(1,0),(1,1)]
12:23:20 <oerjan> it's the Ix instance for tuples that orders lexicographically
12:24:09 <oerjan> @src listArray
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:11 <Vorpal> Right (1,1)
12:24:12 <Vorpal> seems to work
12:24:44 <Vorpal> I guess I should write a main too
12:26:48 <Phantom_Hoover> CakeProphet!
12:26:56 <Phantom_Hoover> I thought you were dead!
12:32:07 <Vorpal> yay it is done, 70 lines
12:32:15 * Vorpal shortens it a bit
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:47:56 <Phantom_Hoover> <pre> IIRC
12:48:09 <Phantom_Hoover> Or <code>, I think that does something.
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:14:19 <Vorpal> thingy*
13:15:04 <oerjan> case viewl queue of EmptyL -> pos; instr <| newqueue -> ...
13:15:29 <Vorpal> oerjan, aha
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:17:51 <Vorpal> ah perhaps
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:43 <Vorpal> oerjan, uh what
13:21:46 <Vorpal> that doesn't work
13:21:52 <Vorpal> downright.hs:66:9: Parse error in pattern
13:21:57 <Vorpal> for the instr <| newqueue stuff
13:22:00 <Vorpal> even when I do:
13:22:04 <Vorpal> (Seq.<|) instr newqueue ->
13:22:08 <Vorpal> which is surely the same
13:22:44 <oerjan> hm that ought to work
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:37 <Vorpal> oerjan, ^
13:23:42 <Vorpal> maybe that is what you ma
13:23:43 <Vorpal> meant*
13:23:43 <oerjan> oh wait
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:25:56 <oerjan> heh
13:26:18 <Vorpal> oerjan, what is "heh" about that
13:26:21 <Vorpal> it is obvious
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:13 <Vorpal> it is ghc 6.12.1 btw
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:04 <oerjan> bah
13:28:14 <Vorpal> oerjan, I often don't run X until I actually need it
13:28:15 <Vorpal> so...
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:27 <Vorpal> hm
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> $ man cabal
13:31:34 <Vorpal> No manual entry for cabal
13:31:36 <Vorpal> what a failure
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
13:34:10 <Vorpal> done
14:04:53 <oerjan> square root of minus garfield seems to be taking a dark turn
14:04:59 <Vorpal> oerjan, oh?
14:05:40 <oerjan> see the last two ones
14:05:56 <Vorpal> hm will soon
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:34:21 <zzo38> I know, I looked.
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:27:19 <Phantom_Hoover> OMG the Nigerian Finance Minister is back.
15:31:30 <Phantom_Hoover> http://www.reddit.com/r/reddit.com/comments/hb8v9/reading_reddit_may_have_just_saved_my_life/
15:31:33 <Phantom_Hoover> BUT AT WHAT COST
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:30 <cheater79> aneuvers in the parking lot.
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:21:39 <cheater79> Sgeo, hi
18:21:46 <Sgeo> Hi
18:21:46 <cheater79> how are you doing?
18:21:48 <Sgeo> Ok
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!
18:59:44 <Phantom_Hoover> Oh, wait, Plazma is still here.
18:59:48 <cheater79> wait what
18:59:54 <Phantom_Hoover> Everyone hide the drugs again.
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:08 <ais523> I will at some point
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:37 <elliott> It is possible.
19:02:38 <Vorpal> ais523, Keymaker beat me to it btw, making one in python
19:02:41 <Vorpal> elliott, heh
19:02:52 <Vorpal> elliott, it is pretty much parsec + pure haskell + main
19:02:53 <cheater79> lolol
19:02:55 <ais523> I'm of the opinion that nearly all Haskell code is bad
19:02:56 -!- oerjan has joined.
19:02:57 <cheater79> on-line names!
19:03:00 <Vorpal> ais523, why
19:03:02 <elliott> ais523: no it isn't?
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:18 <ais523> I know I do
19:03:24 <elliott> Vorpal: OK for a start...
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:03:53 <Vorpal> elliott, hm, nope
19:03:55 <elliott> Hm, yep.
19:04:08 <Vorpal> elliott, no that one would allow a file with whitespace
19:04:11 <Vorpal> which isn't valid
19:04:15 <elliott> What?
19:04:17 <Vorpal> elliott, an empty file is valid
19:04:26 <ais523> err, is 0 coprime with 0?
19:04:26 <elliott> It would not allow that.
19:04:32 <ais523> mathematically?
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:53 <ais523> Vorpal: ah, OK
19:04:54 <Phantom_Hoover> ais523, that... doesn't even make *sense*.
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:10 <Vorpal> elliott, and yes :P
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:33 <Vorpal> ais523, good one
19:05:38 <ais523> also, map (map (...))?
19:05:46 <ais523> is that a 2D map?
19:05:47 <Vorpal> ais523, I vote for left associative whitespace, thus making it leading
19:05:49 <ais523> I suppose it is
19:06:01 <Vorpal> err, I guess so
19:06:05 <Vorpal> is there some better way
19:06:10 <Vorpal> ais523, that is Prelude.Map btw
19:06:11 <Vorpal> err
19:06:12 <ais523> nah, it's OK, just surprising
19:06:13 <Vorpal> Prelude.map
19:06:21 <elliott> Vorpal: map . map $ filter (`elem` "↓→")
19:06:29 <Vorpal> elliott, hm, right
19:06:35 <Vorpal> elliott, but that just saves some ()
19:06:44 <elliott> checkLen :: [[a]] -> Bool
19:06:44 <elliott> checkLen [] = True
19:06:44 <elliott> checkLen (x:xs) =
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:22 <elliott> Vorpal: ...no?
19:07:28 <Vorpal> elliott, meh okay
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:49 <ais523> that is a good point
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:39 <Vorpal> so hm
19:08:53 <Vorpal> elliott, would you argue scheme code doesn't read smoothly either?
19:08:59 <elliott> Scheme is not Haskell.
19:09:03 <Vorpal> elliott, indeed
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:37 <Vorpal> Phantom_Hoover, link?
19:09:41 <Phantom_Hoover> By which I mean most ludicrously stupid.
19:09:47 <elliott> Vorpal:
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:34 <Phantom_Hoover> Also has IRC drug boats.
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:10:59 <elliott> Vorpal: Uh?
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:14 <elliott> C-c C-l C-x o ;; REPL
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:08 <elliott> Oh.
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:12:59 <elliott> ARGH
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:13:51 <Vorpal> hm
19:14:01 <Vorpal> oerjan, no I wasn't aware
19:14:10 <elliott> downRightInteract :: String -> String
19:14:10 <elliott> downRightInteract input =
19:14:10 <elliott> case downRight input of
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:22 <Vorpal> elliott, mm okay
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:29 <elliott> What?
19:15:37 <Vorpal> elliott, what?
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:11 <elliott> instr Seq.:< 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:37 <elliott> instr :< newqueue ->
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:05 <Vorpal> elliott, that page:
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:09 <Vorpal> interesting
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:24 <elliott> I suggest validProgram.
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:32 <Vorpal> elliott, .D
19:21:34 <Vorpal> :D*
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:35 <Vorpal> elliott, hm
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:09 <elliott> (OR CAN YOU??????)
19:23:25 <Vorpal> elliott, hey, Data.Sequence gets away with shadowing Prelude
19:23:26 <Vorpal> why
19:23:32 <elliott> Vorpal: Data structures can.
19:23:36 <elliott> Because you're meant to import them qualified.
19:23:40 <Vorpal> elliott, hm okay
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:25:47 <Vorpal> hm okay
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:31 <Vorpal> elliott, :P
19:27:39 <elliott> Also, that's because I installed my own GHC.
19:27:40 <tswett> ais523: thank you.
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:06 <tswett> That is a secret.
19:28:12 <Vorpal> ...
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:44 <Vorpal> elliott, nano, yeah
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:01 <Vorpal> aha
19:30:53 <Vorpal> tswett, I know what is wrong with your bot. You made it quit on seeing "okoko" in the topic
19:30:57 <Vorpal> :P
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:33:24 <Vorpal> elliott, ah good idea
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:38 <elliott> Your fault ;)
19:36:42 <Vorpal> elliott, no your
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:36:55 <Vorpal> right I'll fix it
19:36:56 <oerjan> oh
19:37:09 <oerjan> > lines "test\nhi\fho\vthere"
19:37:10 <lambdabot> ["test","hi\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:39 <Vorpal> and upload a new one
19:37:50 <elliott> Vorpal: I'd wait until I finish this cleanup :P
19:38:00 <Vorpal> elliott, you can wait
19:38:08 <elliott> Vorpal: Eh?
19:38:11 <elliott> ?src lines
19:38:11 <lambdabot> Source not found. I am sorry.
19:38:14 <elliott> grr lambdabot
19:38:16 <oerjan> :t chunks
19:38:16 <lambdabot> Not in scope: `chunks'
19:38:19 <oerjan> :t chunk
19:38:19 <lambdabot> Not in scope: `chunk'
19:38:23 <oerjan> hm
19:38:38 <Vorpal> elliott, so it should be:
19:38:40 <Vorpal> let ....
19:38:43 <Vorpal> in ...?
19:38:46 <Vorpal> or how
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:29 <elliott> What?
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:54 <Vorpal> elliott, hm maybe
19:41:59 <elliott> Cleaning up people's code is a standard practice in #haskell.
19:42:04 <Vorpal> I see
19:43:24 <elliott> :t break
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:25 <Vorpal> (at that point)
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:06 <Vorpal> :t whenElt
19:45:07 <lambdabot> Not in scope: `whenElt'
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:27 <elliott> ugh
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:17 <elliott> Vorpal: Maybe.
19:46:24 <elliott> Depends on if oerjan's line can be tweaked into something correct without pain.
19:46:33 <elliott> > chunk
19:46:33 <Deewiant> It's in my .ghci along with monad-loops and maybe something else, I forget
19:46:33 <lambdabot> Not in scope: `chunk'
19:46:36 <elliott> Sigh.
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:05 <Deewiant> Oh, and safe
19:47:09 <elliott> Vorpal: sudo apt-get install haskell-platform
19:47:17 <Vorpal> elliott, don't think so no
19:47:23 <elliott> Vorpal: Well, do it.
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:38 <elliott> OK, it's like...
19:47:40 <elliott> gcc with half of libc.
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:14 <elliott> Facepalm.
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:11 <elliott> Neither does a human.
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:27: <ajf> no
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:34 <elliott> HAHAHAHA
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:41 <ajf> no
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:51:50 <elliott> tswett: Me too.
19:51:59 <elliott> ajf: How am I wrong?
19:52:00 <ajf> that was a bad example
19:52:03 <elliott> 00:46:43: <ajf> Cool.
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:48:55: <ajf> eh
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:28: <ajf> Also
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:48 <elliott> 00:50:07: <ajf> yeah.
19:52:48 <ajf> no
19:52:54 <elliott> If it's common, it will be found in testing.
19:52:56 <elliott> Obviously.
19:53:07 <ajf> uh
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:27 <ajf> Yes
19:53:36 <elliott> tswett: Precisely.
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:09 <ajf> So what
19:57:09 <tswett> ajf: why not?
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:57:51 <Sgeo> :/
19:57:53 <elliott> ajf: "So what"?
19:58:05 <elliott> If the AI results in less deaths than the human, how is the human preferable?
19:58:12 <ajf> It isn't
19:58:20 <ajf> uh
19:58:26 <ajf> he/she isn't
19:58:35 <elliott> Then?
19:58:39 <elliott> How is that "so what"?
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:00:46 <elliott> tswett: I sure am.
20:00:53 <tswett> Excellent.
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:41 <Vorpal> or such
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:05:55 * Phantom__Hoover reads AI idiocy.
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:06 <Vorpal> elliott, well okay
20:06:10 <elliott> ajf: Hahahahaha
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:37 <ajf> true
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:08:56 <Phantom__Hoover> That's 93% of crashes which AIs are not susceptible to.
20:09:05 <ajf> No
20:09:12 <Phantom__Hoover> Yes?
20:09:12 <ajf> >error
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:47 <elliott> Yes or no.
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:03 <elliott> Erm.
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:26 <ajf> Humans
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:11:45 <elliott> Yes?
20:11:56 <ajf> Yes
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:21 <elliott> Times-two give up combo.
20:12:22 <ajf> No because
20:12:24 <elliott> Flawless execution.
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 <ajf> OK, ok
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:49 <cheater79> http://catpad.net/michael/apl/
20:13:53 <ajf> If a car crashes, and one car or both used AI
20:13:55 <cheater79> have i posted this before?
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 <cheater79> ajf, you are
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:27 <cheater79> computers don't kill humans
20:17:27 <Phantom__Hoover> *itself
20:17:29 <cheater79> i kill humans
20:17:32 <Phantom__Hoover> I regret not doing so.
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:18 <elliott> Vorpal: It's Parsec two
20:18:19 <Sgeo> Before then
20:18:21 <elliott> Text.Parsec is three
20:18:24 <Vorpal> elliott, oh, I see
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:43 <Vorpal> ah
20:18:49 <Vorpal> elliott, anything else needs changing?
20:19:01 <Vorpal> err yep
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:07 <Vorpal> damn
20:19:11 <Vorpal> I have to rename it
20:19:21 <elliott> Or.
20:19:25 <elliott> import Text.Parsec hiding (Error)
20:19:28 <elliott> import qualified Text.Parsec as Parsec
20:19:29 <Vorpal> ah good idea
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:21:59 <ais523> indeed
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:22:54 <ais523> yes
20:22:57 <Vorpal> gah
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:23:17 <Vorpal> ghci
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:35 <elliott> Vorpal: yes but i'm lazy
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:22 <Vorpal> many1*
20:25:25 <oerjan> Vorpal: well that might too
20:25:25 <Vorpal> for the second one
20:25:53 <oerjan> Vorpal: um you want to ensure there's at least one actual \n\v\f to start with
20:26:00 <Vorpal> oerjan, indeed
20:26:10 <Vorpal> oerjan, but your version does that, right?
20:26:22 <oerjan> yes
20:27:02 <Vorpal> oerjan, BNF so damn easier :P
20:27:11 <elliott> doesn't " \n" count
20:27:16 <elliott> and no its not, you're just better at bnf
20:27:20 <Vorpal> elliott, as what?
20:27:24 <elliott> Vorpal: as a newline
20:27:27 <elliott> ais523 suggested so
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:28 <Vorpal> that is a newline
20:29:29 <oerjan> and try and stuff
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:02 <oerjan> yes
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:01 <elliott> yeah it is
20:36:02 <elliott> which sucks
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:01 <oerjan> :t (<*)
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:40 <Vorpal> yeah
20:39:47 <oerjan> um it's what you get inside the Right if the parse succeeds
20:40:14 <Vorpal> right
20:43:33 <oerjan> Sgeo: if you use Malbolge, no one will yell. although they might scream in agony.
20:44:20 <Vorpal> Sgeo, Falcon
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:47:54 <Vorpal> elliott, you tell me
20:47:58 <Vorpal> elliott, agda iirc?
20:48:10 <elliott> i can read agda, just not the stdlib :D
20:48:14 <Vorpal> elliott, ah
20:48:20 <Phantom__Hoover> elliott, English.
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:31 <Vorpal> wareya, heh?
20:48:35 <wareya> Heh.
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:09 <Vorpal> elliott, intercal?
20:49:11 <elliott> J code takes me a while to decipher, K I'm not very good at reading at all
20:49:14 <elliott> APL I'm hopeless at
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:33 <elliott> Yes, but I can't read it.
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:15 <Vorpal> yes, some array one
20:50:18 <Vorpal> like J
20:50:27 <Sgeo> Are there any letter of the alphabet that aren't names of languages?
20:50:39 <elliott> U is a pretty ugly letter
20:50:40 <Vorpal> Sgeo, which alphabet
20:50:42 <elliott> maybe it isn't a language
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:46 <Deewiant> There's an Å language
20:51:48 <Phantom__Hoover> Vorpal, he means the real alphabet, not that watered-down Scandinavian crap.
20:51:59 <Vorpal> Deewiant, nice
20:52:04 <Vorpal> Deewiant, what sort of language
20:52:15 <Vorpal> BCDJKÅ, what else is used?
20:52:31 <Vorpal> oh R
20:52:35 <Deewiant> Vorpal: http://www.w3.org/Conferences/WWW4/Papers/100/
20:52:45 <Vorpal> BCDJKRÅ <-- what else
20:52:53 <Phantom__Hoover> A
20:52:59 <Vorpal> ah
20:53:06 <Vorpal> Phantom__Hoover, which one is A then?
20:53:12 <elliott> Deewiant: Why do you even know this.
20:53:15 <Phantom__Hoover> Dunno, IIRC there were a few.
20:53:16 <Vorpal> ABCDJKRÅ
20:53:17 -!- augur has joined.
20:53:28 <oerjan> Z was a specification language wasn't it
20:53:32 <elliott> oerjan: yes, Dijkstra
20:53:45 <Sgeo> E
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:14 <elliott> BCDEJKMQRSTZ
20:54:16 <Deewiant> elliott: I googled it
20:54:16 <elliott> Are the ones I know.
20:54:29 <Vorpal> Deewiant, ah
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:38 <elliott> R is statistics,
20:54:41 <elliott> S is statistics language R is based on,
20:54:43 <elliott> T is Scheme dialect,
20:54:47 <elliott> Z is Dijkstra speclang
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:55:49 <oerjan> V is an esolang
20:56:07 <Vorpal> (A?)BCDEJKMQRSTVZÅ
20:56:18 <elliott> So, BCDEJKMQRSTVZ so far
20:56:19 <elliott> Which leaves...
20:56:34 <elliott> > "ABCDEFGHIJKLMNOPQRSTUVWXYZ" \\ "BCDEJKMQRSTVZ"
20:56:34 <lambdabot> "AFGHILNOPUWXY"
20:56:36 <Vorpal> Phantom__Hoover, mentioned an A
20:56:43 <Vorpal> elliott, ^
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:56:56 <Vorpal> right
20:57:08 <elliott> So BCDEFJKMQRSTVZ
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:35 <elliott> isn't.
20:58:37 <Vorpal> elliott, it is!
20:58:41 <elliott> I'm not including languages named pi either.
20:58:45 <Vorpal> ah
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:00:35 <cheater79> um, A programming language?
21:00:48 <cheater79> dur
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:13 <elliott> it is not A.
21:02:34 <Vorpal> elliott, different A perhaps
21:02:42 <Vorpal> bbiab
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:16 <cheater79> elliott: no u.
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:14 <cheater79> oh damn
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:04 <elliott_> new installation.
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:31 <elliott_> that's a lie
21:06:37 <elliott_> I'm actually just too lazy to get an exclamation mark, asterisk and at sign
21:11:01 <Vorpal> elliott_, XD
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:12:22 <elliott_> a year i guess
21:12:45 <Vorpal> ah
21:12:48 <Vorpal> elliott_, not much
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:34 <Vorpal> :)
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:29 <elliott_> oerjan: very boring indeed
21:32:37 <elliott_> unless you don't "normalise" them...
21:32:45 <oerjan> huh?
21:33:03 <oerjan> heh
21:33:04 <elliott_> I, II, III, IIII = IV, IIIV = VI
21:33:07 <elliott_> IVII = VI
21:33:09 <elliott_> IVII = VI
21:33:09 <elliott_> etc.
21:33:10 <elliott_> no?
21:33:14 <oerjan> well of course i don't
21:33:20 <elliott_> [asterisk]No?
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:07 <elliott_> ugh
21:34:10 <elliott_> what mistake did i make
21:34:12 <elliott_> oh
21:34:13 <elliott_> miscounted
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 <elliott_> ais523: :D
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:36:51 <oerjan> (at most)
21:37:01 <elliott_> what if you used V as a separator of digit/count? :-D
21:37:09 <elliott_> I, IVI, IVIIVIIVI
21:37:33 <elliott_> I, IVI, IVIIVIIVI, IVIIVVIIVIIVIIIVIIVIIVI
21:37:42 <elliott_> i smell a pattern
21:37:52 <oerjan> heh
21:37:52 <elliott_> what if you used I as the separator ;D
21:38:08 <elliott_> I, III, IIIII, VII
21:38:16 <elliott_> IIVIIIV
21:38:27 <oerjan> well you can use any sequence of strings as the numerals to get an analoguous sequence
21:38:45 <elliott_> hmm
21:38:46 <elliott_> then it's
21:38:56 <elliott_> II I I, I I V, III I I, I I V
21:39:05 <elliott_> IIIIIIVIIIIIIIV
21:39:11 <elliott_> yikes
21:39:16 <elliott_> i don't know numbers that big
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:09 <oerjan> *even
21:41:20 <tswett> ais523: no, Gregor.
21:41:33 <ais523> how bizarre
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:43:54 <ais523> indeed
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:23 <elliott_> (nicer with | than ")
21:44:24 -!- tswettbov has quit (Ping timeout: 246 seconds).
21:44:29 <elliott_> oerjan: hm maybe
21:44:38 <elliott_> yes i see
21:45:05 <elliott_> 16:39:58: <ais523> and STATA (a nasty non-esoteric language) uses `" "'
21:45:05 <elliott_> STATA?
21:45:23 <ais523> oh, ouch
21:45:25 <ais523> don't remind me of that
21:45:33 <elliott_> already have
21:45:43 <ais523> it's apparently really popular among statistical economists
21:45:51 <oerjan> YOU EVIL MAN
21:47:53 <Gregor> The name is a portmanteau of "statistics" and "caca"
21:48:56 <elliott_> an excellent portmanteauvre
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:06 <elliott_> :D
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:13 <elliott_> Thus disproving reductionism.
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:13 <Phantom_Hoover> tswett, what language?
22:05:40 <tswett> Phantom_Hoover: Smalltalk.
22:05:53 <elliott_> tswett: My diagnosis is that there is one number stupid.
22:05:56 <elliott_> Correct it.
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:09:52 <elliott_> Totally.
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:10:36 <tswett> I guess not.
22:11:16 <olsner> what's special about "okoko"?
22:11:21 -!- tswettboy has quit (Ping timeout: 246 seconds).
22:11:36 <Phantom_Hoover> okoko
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:12:50 <tswett> olsner: pretty much.
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:15:13 * tswett sends a CTCP ACTION.
22:16:04 * Phantom_Hoover Phantom_Hoover
22:16:12 <Phantom_Hoover> Oh, that's what ACTION does.
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:07 <elliott_> at
22:23:09 <elliott_> wat
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:51:30 <Vorpal> night →
22:52:37 <zzo38> Now I am going to record changes in my character sheet. Please wait forever.
22:53:00 <elliott_> ঙ香
22:53:02 <elliott_>
22:53:04 <elliott_> ™
22:53:07 <elliott_>
22:53:09 <elliott_>
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:54:37 <elliott_> tswett: confirm/deny.
22:55:11 <tswett> How should I know? I don't know who that is.
22:55:20 <tswett> Gregor, apparently.
22:55:41 <elliott_> HEY GOOGLE TSWETT IS IHOPE
22:55:44 <elliott_> AND
22:55:44 <elliott_> ALSO
22:55:44 <elliott_> GREGOR
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 <elliott_> It was actually aloril.
22:56:22 <tswett> Yes, I agree with your suspicion.
22:56:24 <elliott_> And CakeProphet.
22:56:26 <elliott_> Working in tandem.
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:56:47 <Phantom_Hoover> I always knew aloril was scheming behind our backs.
22:57:08 <elliott_> And that ralc guy too.
22:57:09 <Phantom_Hoover> He is now my next official Hate Figure.
22:57:16 <elliott_> yiyus is just the manager.
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:57:48 <tswett> "I am nourished the".
22:57:54 <tswett> It's in Latinitalian.
22:58:06 <elliott_> I am nourished the too.
22:58:22 <tswett> The language they speak, and have always spoken, in Rome.
22:59:19 * Phantom_Hoover Googles "aloril", notes fanfiction.net account.
22:59:39 * Phantom_Hoover takes instant and violent disliking to aloril.
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:09 <elliott_> "Yes" I think?
23:01:10 <elliott_> Dunno.
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:01:53 <elliott_> [asterisk]you have
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:06 <elliott_> siracusa: You're in cahoots.
23:03:10 <elliott_> With all of the lurkers.
23:03:12 <elliott_> You're the Lurker Gang.
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:46 <siracusa> And why is this bad?
23:03:58 <elliott_> siracusa: 'cuz you can't be trusted.
23:04:03 <elliott_> Stop playing dumb.
23:04:04 <tswett> `quote :(
23:04:06 <HackEgo> No output.
23:04:20 <tswett> `quote large
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:04:58 <tswett> `quote integer
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:43 <tswett> `quote learned
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:58 <tswett> `quote atheists
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:09 <tswett> `quote soupdragon
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:18 <elliott_> uh
23:06:21 <elliott_> Did I just scare away siracusa
23:06:23 <elliott_> Like, really.
23:06:24 <tswett> I'm producing a lot of identical quotes.
23:06:29 <tswett> `quote burden
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:38 <elliott_> zzo38: wat
23:06:48 <elliott_> `quote large
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:54 <tswett> `quote film
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:08 <tswett> `quote alot
23:07:10 <HackEgo> No output.
23:07:18 <elliott_> `run quote film | sed 's/).*//'
23:07:20 <HackEgo> ​261 \ 299
23:07:23 <elliott_> `run quote film | sed 's/).*//g'
23:07:25 <HackEgo> ​261 \ 299
23:07:28 <zzo38> O, in case of "No output" it doesn't put the strange characters at first
23:07:29 <elliott_> zzo38: Like that.
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:46 <HackEgo> ​261,299,
23:07:46 <tswett> `quote 5
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:53 <HackEgo> No output.
23:07:57 <zzo38> Maybe it should be made the script with that.
23:07:57 <elliott_> `run quote film | sed 'Ns/).*//g'
23:07:59 <HackEgo> No output.
23:08:10 <elliott_> zzo38: it would be fairly pointless since you'd just want to check them all anyway.
23:08:12 <elliott_> `quote that
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:19 <elliott_> `pastequotes that
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:47 <tswett> `quote ivan
23:08:49 <HackEgo> ​165) <ivancastillo75> Oh I get it you guys just use this space to do nothing ?
23:08:58 <elliott_> `quote ihope
23:08:58 <tswett> `quote o
23:09:00 <HackEgo> No output.
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:03 <elliott_> `quote \bo\b
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:15 <elliott_> `pastequotes \bo\b
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:50 <tswett> `quote Aftran
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:09 <elliott_> Because of you. Or Gregor.
23:10:10 <elliott_> I do.
23:10:11 <zzo38> I don't know
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:32 <elliott_> Also Sgeo.
23:10:37 <tswett> Yep.
23:10:39 <elliott_> And SIRACUSA, the spy.
23:10:44 <tswett> `quote 107
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:10:47 * tswett gasps.
23:11:03 <elliott_> `quote door
23:11:05 <HackEgo> No output.
23:11:09 <tswett> `quote dor
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:18 <elliott_> `quote `quote
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:33 <tswett> `quote 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:45 <tswett> Oh, I see.
23:11:46 <elliott_> `quote 408
23:11:47 <tswett> `quote 352
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:54 <elliott_> `pastequotes `quote
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:12:37 <elliott_> I removed it.
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:15 <elliott_> zzo38: Angry how
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:17:17 <elliott_> How's that angry
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:23 <elliott_> olsner: >:D
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:38 <tswett> `quote
23:18:40 <HackEgo> ​292) <olsner> actually, I think vorpal is the "retarded team member" to the left
23:19:01 <elliott_> `quote
23:19:01 <elliott_> `quote
23:19:01 <elliott_> `quote
23:19:02 <elliott_> `quote
23:19:03 <HackEgo> ​417) <ZOMGMODULES> scripting language. whole program analysis. together at last
23:19:04 <elliott_> `quote
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:20:09 <zzo38> `quote
23:20:56 <zzo38> `quote
23:20:57 <HackEgo> No output.
23:21:03 <elliott_> It doesn't like you, zzo38.
23:21:07 <elliott_> `quote
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:26:09 <Phantom_Hoover> Words fail me.
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:27:39 <tswett> No?
23:29:02 <Phantom_Hoover> tswett, yes, but she is comparing compensation upon theft to torture.
23:29:18 <Phantom_Hoover> This is indisputably a false comparison.
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:32 <Phantom_Hoover> The comparison of the two is pretty explicit.
23:30:58 <tswett> They could simply be saying, "An eye for an eye is an acceptable punishment in all circumstances."
23:31:27 <Phantom_Hoover> Hmm, fair point.
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:48:20 <Phantom_Hoover> So, soooo close.
23:48:25 <Phantom_Hoover> But no cigar.
23:50:14 -!- zzo38 has quit (Remote host closed the connection).
23:56:16 -!- zzo38 has joined.
23:56:27 <zzo38> `quote
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
23:59:46 <zzo38> `
23:59:48 <HackEgo> No output.
23:59:48 <zzo38> ``
23:59:49 <HackEgo> No output.
23:59:50 <zzo38> ..
23:59:54 <zzo38> //
23:59:59 <zzo38> ??
2011-05-15
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:03:47 <zzo38_> ```````
00:03:50 <HackEgo> No output.
00:04:07 <zzo38_> !!!!!!!
00:04:12 <zzo38_> '''''''
00:04:14 <zzo38_> ///////
00:04:16 <zzo38_> *******
00:04:17 <zzo38_> ???????
00:04:19 <zzo38_> :::::::
00:04:21 <zzo38_> <CTCP><CTCP><CTCP><CTCP><CTCP><CTCP><CTCP>
00:04:24 <zzo38_>
00:04:53 <zzo38_> `quote 8754
00:04:54 <HackEgo> No output.
00:04:57 <zzo38_> `quote 0
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:05:04 <zzo38_> Hay!!!
00:05:10 <zzo38_> I requested zero!!!
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:01 <elliott_> zzo38: How?
00:13:21 <elliott_> `echo ?so
00:13:23 <HackEgo> ​?so
00:13:23 <zzo38> ?so
00:13:23 <lambdabot> not available
00:13:28 <elliott_> ...
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:46 <Gregor> ...
00:13:50 <Gregor> `echo Now here's a bad idea.
00:13:51 <HackEgo> ​Now here's a bad idea.
00:13:52 <zzo38> Now here's a bad idea.
00:14:00 <Gregor> `echo /quit
00:14:01 <HackEgo> ​/quit
00:14:01 <zzo38> /quit
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:37 <Sgeo> Also me?
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:02 * Phantom_Hoover → sleep
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:36 <Sgeo> Uh...
00:22:47 <Sgeo> Why does this review from 2000 mention TF2?
00:23:01 <Sgeo> Is the date wrong?
00:23:10 <elliott_> It was announced in 1998.
00:23:17 <Sgeo> Ah
00:23:22 <elliott_> Vapourware.
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:39 <Gregor> `pastequotes elliott
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:09 <Gregor> `pastequotes
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:18 <Gregor> ... wtf
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:35 <elliott_> WTF did you do?
00:24:40 <Gregor> I didn't touch pastequotes.
00:24:40 <elliott_> WTF did zzo38 do?
00:24:45 <elliott_> Gregor: And no, it is NOT equivalent.
00:24:48 <Gregor> `cat bin/pastequotes
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:01 <elliott_> Turn it off.
00:25:09 <elliott_> `cat bin/paste
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:39 <elliott_> Gregor: wtf.
00:25:53 <zzo38> Now see if pastequotes is not broken
00:26:51 <elliott_> `pastequotes
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:56 <elliott_> Still broken.
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:35:27 <Gregor> lol
00:35:35 <elliott_> Gregor: Just askin' :P
00:35:46 <Gregor> Zero might.
00:35:57 <elliott_> Awesome.
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:00 <elliott_> Sparked because of
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:16: <GregorR> Erm
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 <elliott_> java LolMyGCJ compilation
00:37:58 <Gregor> But gcj RUNNING on NestedVM ... I doubt it.
00:37:59 <elliott_> Hi I am gcj.
00:38:01 <elliott_> Oh what is this.
00:38:05 <elliott_> You want me to compile something?
00:38:08 <elliott_> Then I need a file derp.
00:38:15 <elliott_> [asterisk]LolMyGCJCompilation
00:38:25 <Gregor> Yes, that would be GCJ /running on/ NestedVM.
00:38:34 <elliott_> Right.
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:39:12 <elliott_> Right.
00:39:53 * elliott_ reads about Linear Lisp.
00:43:01 <ralc> would you consider haskell an esoteric language?
00:43:31 <elliott_> It's arguable.
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:52 <Gregor> That's just mean.
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:44:47 <elliott_> Sgeo: It's hungry.
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:48:27 <elliott_> What a copout X-D
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:06:46 <Gregor> "Pastor of Disaster"
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:15 <Gregor> Err
01:16:17 <Gregor> `delquote 423
01:16:18 <HackEgo> ​*poof*
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:10 <elliott_> Delquote works now?
01:30:24 <elliott_> Gregor: The three spaces are just to antagonise me, right? :P
01:30:39 <elliott_> `pastequotes
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:43 <elliott_> HOW DOES THAT NOT WORK
01:30:46 <elliott_> IT WORKED BEFORE
01:30:55 <elliott_> `url bin/pastequotes
01:30:57 <HackEgo> ​http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/pastequotes
01:30:59 <elliott_> `url bin/paste
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:28 <elliott_> . . .
01:31:29 <Gregor> Erm
01:31:31 <Gregor> Spaces
01:31:38 <elliott_> Look at http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/pastequotes.
01:31:51 <elliott_> Then look at:
01:31:51 <elliott_> <elliott_> `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:31:57 <elliott_> `run echo hi | paste
01:31:59 <HackEgo> ​hi
01:32:02 <elliott_> WTF??
01:32:05 <elliott_> paste is broken.
01:32:09 <elliott_> So terribly, terribly broken.
01:32:10 <elliott_> Somehow.
01:32:21 <Gregor> `run echo foobar | paste
01:32:22 <HackEgo> ​foobar
01:32:24 <tswett> Have I already said that "Luaapi" would make an excellent Finnish word?
01:32:26 <Gregor> !!!
01:32:29 <Gregor> `url bin/paste
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:55 <elliott_> PASTENUM="$RANDOM"
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:18 <elliott_> [asterisk]meh.
01:33:21 <Gregor> `revert 312
01:33:23 <HackEgo> Done.
01:33:29 <elliott_> `help
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:08 <Gregor> `pastequotes
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:14 <Gregor> *brain axplote*
01:34:16 <elliott_> No streets though.
01:34:20 <elliott_> They're just dotted about.
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:31 <tswett> Well... yeah.
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:46 <coppro> is this at once?
01:36:48 <elliott_> coppro: Yesyesyes.
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:04 <elliott_> Erm.
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:16 <elliott_> Then they point down.
01:40:18 <elliott_> I am not kidding.
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:15 <elliott_> Probably.
01:41:21 <elliott_> I dunno.
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:10 <elliott_> Count 'em.
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:43 <elliott_> Obviously.
01:43:48 <tswett> Obviously.
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:44:59 <elliott_> Oh, I thought you meant N.
01:45:02 <elliott_> tswett: Aleph INFINIT.
01:45:04 <elliott_> INFINITY.
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:17 <Gregor> All-N
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:51 <elliott_> tswett: I do.
01:50:56 <elliott_> I'm having an aneurysm thanks to you.
01:51:08 <elliott_> A painful aneurysm.
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:55:22 <tswett> Let's give up.
01:55:58 <elliott_> Capediamian.
01:56:09 <elliott_> [asterisk]Carpediemian.
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:08 <dr_undecided> yup, thats correct :)
02:02:24 <elliott_> tswett: HOW CAN YOU PREDICT SUCH THINGS
02:02:34 <elliott_> Are you a wizard????????????
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:03:56 <elliott_> zzo38: wat
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:04:47 <elliott_> Ah.
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:06:41 <dr_undecided> i see
02:09:10 -!- dr_undecided has left.
02:10:31 <elliott_> And there goes another 'un.
02:10:46 <zzo38> s/'/f/
02:10:58 <elliott_> Yes, we're without fun now.
02:11:07 * elliott_ briefly considers not messing with dr_undecided.
02:11:11 <elliott_> Consideration over.
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:26 <elliott_> ok everyone
02:12:29 <elliott_> dr_undecided just passed the initiation ritual
02:12:33 <elliott_> happiness all around
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:14:55 <tswett> Okay.
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:15:58 <tswett> Good night, everyone!
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:14 <dr_undecided> does java count?
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.
02:32:53 <zzo38> OK
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:41 <elliott_> I meant fizzie :P
03:11:46 <augur> not just ONE guy on the internet
03:11:52 <elliott_> MULTIPLE PEOPLE on the Internet.
03:11:58 <augur> FOUR infact
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:43 <elliott_> I'd have just lied. :)
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:24 <elliott_> So they don't exist?
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:11 <elliott_> Well then.
03:19:13 <augur> but not before being caught
03:19:18 <elliott_> Ask away.
03:19:18 <augur> not without being caught?
03:19:18 <augur> that one
03:19:21 <augur> ask what
03:19:27 <elliott_> Whatever you asked all these grubby people.
03:19:37 <augur> uh
03:19:41 <augur> why? you speak english
03:19:47 <elliott_> OR DO I
03:19:56 <elliott_> Ask anyway, I just want a chance to lie flagrantly.
03:20:43 <augur> uh
03:20:45 <augur> well
03:20:48 <augur> you can do that any time you like
03:21:20 <elliott_> NO I NEED YOUR QUESTIONS.
03:21:25 <augur> do you like penis
03:21:28 <augur> in your mouth
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:07 <augur> oklofok
03:22:08 <augur> oklofok
03:22:09 <augur> oklofok
03:22:58 <augur> elliott_: the questions were pretty simple
03:23:15 <elliott_> ASK ME DAMMIT
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:23:55 <elliott_> any more
03:24:03 <augur> yes
03:24:07 <elliott_> go on
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:14 <augur> youngin'
03:25:17 <augur> grow up!
03:25:25 <augur> that completes this question session
03:25:38 <elliott_> no i mean
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:18 <augur> well
03:26:20 <augur> hold on actually
03:26:34 <elliott_> no, you can't
03:26:38 <elliott_> oh wait
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:27:55 <augur> 13 is not, no
03:27:58 <elliott_> :(
03:28:02 <elliott_> It should be.
03:28:07 <augur> well, none of the ones i looked at anyway
03:28:12 <augur> but 12 is
03:28:20 <augur> 12 is fine in all the languages with VP ellipsis
03:32:36 <augur> im off home
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:10 <elliott_> not answering the questions
03:34:17 -!- quintopia has joined.
03:34:23 <augur> elliott_: :)
03:34:26 <augur> bai
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:04 <elliott_> ...also cows.
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:05 <elliott_> "I AM THE LORD THY GOD
04:32:06 <elliott_> AND
04:32:06 <elliott_> I LOVE ALL WHOM I SEE
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:07 <monqy> oh man reading
04:33:39 <elliott_> Anything that starts
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:33:41 <elliott_> can't possibly go wrong.
04:33:52 <monqy> mmmm 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:22 <monqy> I mean
04:39:30 <monqy> Here is a science article that’ll drive my point home.
04:39:33 <monqy> it's also orange
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:40:20 <elliott_> NOOOO
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:43:16 <elliott_> THE POPULACE DEMAND OERJAN
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:03 <elliott_> im reading the guys talkpage
05:59:06 <elliott_> hes thirteen
05:59:11 <elliott_> he added the criticism section to make it more neutral
05:59:14 <elliott_> [edit] Criticism
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:24 <elliott_> also
05:59:25 <elliott_> [edit] References
05:59:25 <elliott_> Google, Inc. (2011). Google thelg Search Results Retrieved March 30, 2011.
06:00:09 <elliott_> their site is quality
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:30 <elliott_> oh lord help me
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:54 <elliott_> ...
06:00:55 <elliott_> its windows only
06:00:59 <elliott_> the linux group application suite
06:01:00 <elliott_> for windows
06:01:29 <monqy> http://thelg.weebly.com/uploads/5/0/5/2/5052994/310400.png?827
06:01:45 <elliott_> its beautiful
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:38 <elliott_> i have the best idea
06:03:40 <elliott_> why dont we move
06:03:43 <elliott_> all the idiots in the world
06:03:45 <elliott_> to some island
06:03:47 <elliott_> and then put Sgeo there
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:04:50 <monqy> sgeo dreamland
06:06:35 <Sgeo> "Windows 98FE"
06:07:23 <Sgeo> Ok, pointing out a typo is a bit silly
06:08:05 <elliott_> windows 99
06:08:07 <elliott_> THE WINDOWS ................
06:08:09 <elliott_> OF CHAMPYONS
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
07:23:28 <elliott_> dammit oerjan
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:18:57 <elliott_> <ais523> Damn, I just
08:18:58 <elliott_> <ais523> Damn
08:29:43 <elliott_> 01:00:35: * oerjan wonders if you could do reverse pointers - like COME FROM.
08:29:44 <elliott_> :D
08:29:44 <elliott_> yess
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:54 <elliott_> hmm
08:32:55 <elliott_> hey
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:50:35 <elliott_> oerjan[exclamation marks]
08:51:06 <oerjan> fnord
08:51:14 <elliott_> SEE /MSG
08:57:13 <Vorpal> elliott_!
08:57:20 <Vorpal> elliott_, any news on computer?
08:57:24 <elliott_> derp
08:57:25 <elliott_> guess
08:57:28 <Vorpal> nope?
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:38 <elliott_> there are
08:57:39 <elliott_> so many things
08:57:43 <elliott_> and i am busy doing them
08:57:49 <elliott_> mostly the stupid inconsequential ones involving wasting lots of time
08:57:50 <elliott_> but those are things
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:36 <elliott_> :D
08:58:38 <Phantom_Hoover> Make sure bungee jumping is near the end.
08:58:38 <lambdabot> Phantom_Hoover: You have 4 new messages. '/msg lambdabot @messages' to read them.
08:58:43 <Phantom_Hoover> elliott_, -_-
08:58:45 <elliott_> "but how will I ever find the time to get shitted on by a bear wearing a top hat"
08:58:50 <elliott_> "DAMN YOU MORTALITY"
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:14 <elliott_> "few"
08:59:18 <elliott_> I'm sure there's plenty.
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:00:36 <elliott_> if I _have_ to
09:00:54 <Vorpal> elliott_, hm
09:01:01 <Vorpal> probably not
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:55 <elliott_> Vorpal: well maybe.
09:01:55 <elliott_> :D
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:25 <elliott_> a gigantic ramp
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:37 <elliott_> well
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:03:57 <elliott_> cleverly
09:04:02 <Vorpal> go on
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:12 <elliott_> wasn't it in the oort cloud
09:04:14 <elliott_> or
09:04:15 <elliott_> no
09:04:17 <elliott_> was iit
09:04:17 <elliott_> it
09:04:19 <elliott_> yes i think so
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:14 <elliott_> Vorpal: no
09:05:15 -!- Phantom_Hoover has joined.
09:05:19 <elliott_> this was when jade's room exploded
09:05:20 <Vorpal> elliott_, then what
09:05:24 <elliott_> because of her robot explodin'
09:05:24 <Vorpal> ah right
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:37 <Phantom_Hoover> Although I calculated this in the stupidest way ever.
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:44 <elliott_> oh
09:05:46 <elliott_> you answered
09:05:48 <elliott_> right
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:19 <Phantom_Hoover> Vorpal, yes, it does assume constant gravity.
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:01 <Vorpal> indeed
09:07:07 <Phantom_Hoover> Erm, wait, no.
09:07:11 <Vorpal> oh?
09:07:20 <Phantom_Hoover> Orbital movement would destabilise it.
09:07:25 -!- sebbu has joined.
09:07:25 -!- sebbu has quit (Changing host).
09:07:25 -!- sebbu has joined.
09:07:28 <Vorpal> hm yes
09:07:29 <Phantom_Hoover> It is an unstable equilibrium, after all.
09:08:29 <Phantom_Hoover> You could stick it in L1 or L2 and that'd probably work.
09:08:42 <Vorpal> hm
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:16:48 <elliott_> hey oerjan, jfoisjgiofdghoih
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:53 <cheater79> who's roman?
10:31:55 <oerjan> ...IIIVVIIIVVIII... -> ...IIIIIIVIIIIIIVIIIII... -> ...VIIIVVIIIVVI...
10:31:59 <cheater79> roman polanski?
10:32:11 <cheater79> T_T
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:39:45 <olsner> which is?
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:08 <lambdabot> again...
10:41:12 <oerjan> erp
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 <elliott_> oerjan: [undefined, eww
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:42:59 <oerjan> eek
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:14 <elliott_> erm
10:43:17 <oerjan> oh wait duh
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:45:36 <lambdabot> ...
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:02 <lambdabot> ([GHC....
10:46:23 <elliott_> :D
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:46:57 <elliott_> thank god
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:41 <oerjan> *unlike
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:02 <oerjan> argh
10:48:03 <elliott_> god knows how that got through
10:48:07 <elliott_> oerjan: much subdued however
10:48:17 <elliott_> http://gemmaartertonsexsceneovx.tumblr.com/
10:48:20 <elliott_> new favourite website
10:48:22 <oerjan> yes, it may be they actually have to solve the captchas now?
10:48:27 <elliott_> oerjan: evidently :D
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:47 <elliott_> what an odd typo
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:50:51 <elliott_> PRUPOS
10:50:52 <elliott_> PRUPOSE
10:50:55 <oerjan> tavros?
10:51:03 <elliott_> oerjan: yet another homestuck reference >:)
10:51:11 <oerjan> sheesh
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:09:36 <elliott_> Why not
11:09:38 <elliott_> I do it occasionally
11:10:20 <Phantom_Hoover> Lymia's feeble brain cannot handle all the channels.
11:10:24 <Phantom_Hoover> All of them.
11:10:29 <Phantom_Hoover> Well, except -minecraft.
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:25:45 <Phantom_Hoover> aloril's schemes become yet more apparent.
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:45:44 <Phantom_Hoover> SCHEMES
12:45:44 <Phantom_Hoover> FINNISH SCHEMES
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:05 <Vorpal> ah*
13:23:18 <Phantom_Hoover> Vorpal, also: Flash update.
13:23:25 <Phantom_Hoover> You'll probably hate it.
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:30:17 <Vorpal> bbl
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:32:53 <Phantom_Hoover> Terrible coding? In MY Minecraft?
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:33:53 <Vorpal> let me try
13:34:22 <Vorpal> mmm nope, crashes.
13:34:43 <Vorpal> but yeah I would be surprised if he supported linux on ppc
13:34:55 <Vorpal> bbl again
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:00:39 <Phantom_Hoover> Hey, Rose lives in Europe.
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:43:58 <Phantom_Hoover> That is so stupid it hurts.
16:53:09 <cheater79> hhos
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:32 <Phantom_Hoover> `quote
18:08:33 <Phantom_Hoover> `quote
18:08:33 <Phantom_Hoover> `quote
18:08:33 <Phantom_Hoover> `quote
18:08:34 <Phantom_Hoover> `quote
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:09:34 <augur> Sgeo: :)
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:15:33 <Phantom_Hoover> In chemistry.
18:15:38 <Phantom_Hoover> For a biochemical discovery.
18:19:56 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
18:20:06 <cheater79> you know what
18:20:17 <cheater79> esolang should have a list of languages that have monads
18:27:36 <cheater79> does befunge have monads?
18:50:30 -!- Phantom_Hoover has joined.
18:51:13 * Phantom_Hoover logreads, regrets the absence of /ignore.
18:51:55 -!- Mannerisk has left.
18:52:32 -!- Mannerisk has joined.
19:32:47 <FireFly> `quote
19:32:48 <HackEgo> ​329) <treederwright> enjoy being locked in your matrix of solidity
19:33:22 <Phantom_Hoover> Ah, the matrix of solidity.
19:50:46 <quintopia> `quote
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:02 <quintopia> `quote quintopia
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:30 <Phantom_Hoover> `pastequotes quintopia
19:51:32 <HackEgo> ​http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26346
19:51:34 <quintopia> `quote 264
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:51:51 <Phantom_Hoover> Someone preëmpted egotism.
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:13 <quintopia> okay, 343 is pretty hilarious
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:32 <Phantom_Hoover> `quote 343
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:57:46 <Phantom_Hoover> Sgeo, OK, you were stating it as an axiom.
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:11:45 <quintopia> no
20:12:02 <quintopia> they avoid AoC when it's not needed
20:12:13 <quintopia> ZF is pretty common tho
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:34 <Phantom_Hoover> What does amb do, again?
20:15:40 -!- Sgeo has joined.
20:18:07 * Phantom_Hoover looks at the Mathematica code in that article, vomits.
20:18:19 <Phantom_Hoover> Although most of them make me vomit these days.
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:42 <Sgeo> I think
20:19:51 <Sgeo> And I don't know if that's what Factor calls them
20:19:51 <Phantom_Hoover> Predicate classes?
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:50 <Phantom_Hoover> s/"./*./
20:21:55 <coppro> Phantom_Hoover: define substantial
20:22:11 <Phantom_Hoover> coppro, actually does something other than "Hello, world!"
20:22:14 <Phantom_Hoover> I'm barely joking.
20:22:19 <coppro> Phantom_Hoover: that's your problem
20:22:29 <Phantom_Hoover> coppro, did I ever say it wasn't?
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:37:49 <Phantom_Hoover> So, my father has spilt wine on the family MacBook.
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:41:33 <coppro> k, /away ed
20:42:28 <olsner> Wine in laptop? --> Remove wine from laptop.
20:43:09 <quintopia> sudo apt-get remove wine
20:43:25 <quintopia> my question is why you put linux on a macbook
20:44:28 <Phantom_Hoover> olsner, well, I did install Darwine on it.
20:44:31 <Phantom_Hoover> quintopia, there's a Mac port.
20:44:38 <Phantom_Hoover> First thing I ever compiled.
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:46:32 <quintopia> i cant either
20:46:57 <Phantom_Hoover> What, is most of your family from Belfast?
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?
20:57:35 <Phantom_Hoover> The mathematical dam.
21:00:22 -!- elliott_ has joined.
21:01:20 <Phantom_Hoover> And just like that...
21:01:45 <elliott_> wat
21:02:17 <elliott_> 13:30:04: <Vorpal> I guess I could run it under qemu but that sounds painful
21:02:20 <elliott_> That would be way too slow.
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:40 <elliott_> What? No.
21:02:42 <elliott_> New York.
21:02:47 <Phantom_Hoover> elliott_, erm, what?
21:02:48 <elliott_> (State, that is.)
21:02:59 <Phantom_Hoover> The end of Ascend makes it look more to the east than that.
21:03:05 <elliott_> Phantom_Hoover: Lives in
21:03:05 <elliott_>
21:03:06 <elliott_> Rose's House, an isolated mansion in the woods. (Rainbow Falls, New York)
21:03:13 <Phantom_Hoover> Huh.
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:19 <elliott_> Dunno the source, but yeah.
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:25 <elliott> wat?
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:39 <Phantom_Hoover> I meant that it was why it triggered 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 <elliott> gravity.lisp wasn't lame.
21:09:25 <olsner> "Merely bored? Do something SOULCRUSHING!"
21:09:46 <Phantom_Hoover> elliott, yeah, it had that state-of-the-art UI.
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:11:47 <Phantom_Hoover> "It's a beautiful place"
21:11:56 <Phantom_Hoover> CLEARLY THE MAN IS SUFFERING FROM NOSTALGIA
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:12:52 <elliott> INEXCUSABLE
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:14:44 <elliott> I hereby conjecture this.
21:14:52 <tswett> Aiee! Your ruined it!
21:14:54 <tswett> s/r//
21:15:10 <elliott> Nope, you only said TEND.
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:17:34 <oklofok> so what 15 years
21:17:47 <Phantom_Hoover> elliott, yes. Yes I am.
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:18:30 <tswett> What's at?
21:18:46 <elliott> tswett: [at sign[
21:18:47 <elliott> ]
21:18:49 <elliott> it's this OS thing.
21:18:51 <elliott> Sgeo: cL
21:19:34 <oklofok> tswett: nope
21:19:39 <tswett> but how i google at?
21:20:52 <elliott> tswett: unfortunately you can't since it isn't on the interwebnets
21:21:29 <tswett> Oh.
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:12: <SimonRC> *walk
22:01:23 <elliott> 16:06:16: <SimonRC> ops
22:01:23 <elliott> 16:06:18: * SimonRC goes for a wak.
22:02:26 <olsner> wackity yak-wak
22:05:22 -!- oerjan has joined.
22:07:09 <elliott> oerjan perfect timing
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:27 <elliott> yes :D
22:19:34 <zzo38> Who is being "he" in this quotation?
22:19:41 <elliott> oklofok
22:19:44 <elliott> he got stabbed
22:19:56 <zzo38> Are oklokok and oklofok the same?
22:19:58 <elliott> yes
22:20:00 <elliott> http://www.vjn.fi/pb/p454332531.txt hey oklofok remember this
22:20:57 <oklofok> not really :\
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:23:42 <elliott> yes
22:24:23 <oklofok> now that i actually read it in all it's complicatedness, i note that that's kind of obvious
22:24:41 <oklofok> *its
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:15 <oklofok> dynamic scoping <3
22:25:25 <oklofok> well
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:25:46 <elliott> VARIABLES
22:25:49 <elliott> LESS THAN THREE
22:26:51 <oklofok> that code snippet is pretty crazy, i should finish oklotalk
22:27:04 <oklofok> maybe after clue
22:27:25 <zzo38> What is oklotalk?
22:27:28 <oklofok> lol
22:27:30 <oklofok> what is oklotalk
22:27:38 <elliott> lol
22:27:39 <elliott> what is life
22:27:43 <elliott> what is... truth
22:27:49 <oklofok> lol what is a homeomorphism
22:27:51 <zzo38> What is?
22:27:54 <elliott> what
22:27:57 <oklofok> wh
22:28:10 <oklofok> ?`
22:28:10 <lambdabot> Maybe you meant: . ? @ v
22:28:13 <oklofok> *?
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:30:52 <elliott> they cut peoples legs off
22:31:07 <oklofok> i
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:31:48 <elliott> no
22:32:01 <zzo38> However, I don't mean only alcoholic I mean all drink including magic potion
22:32:16 <Phantom_Hoover> quintopia, have you gone nuts?
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:33:33 <oklofok> what dose that menasfda
22:34:01 <Phantom_Hoover> quintopia, please tell me that's a joke.
22:34:09 <Phantom_Hoover> Because if it is it's fantastic.
22:34:14 <oklofok> *what does that mean
22:34:35 <zzo38> oklofok: What are you refering to?
22:34:50 <oklofok> zzo38: alcoholic drugs
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:11 <elliott> and
22:36:18 <elliott> picks an operation, the shorter the more common
22:36:23 <oklofok> elliott: no :(
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:36:53 <oklofok> i'll do it!
22:36:55 <oklofok> no :(
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:06 <quintopia> don't edit the file
22:39:22 <Deewiant> elliott: ZQ
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:39:58 <elliott> Deewiant: thanks
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:41:36 <quintopia> vi doesn't support that
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:09:59 <quintopia> what is a cat pan
23:10:49 <elliott> captain catpan here
23:11:02 <quintopia> :3
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:05 <olsner> pikhq: wat
23:47:12 <olsner> that never happens to me
2011-05-16
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:15 <coppro> with regards to what?
00:37:24 <pikhq> xfwm4 is not starting.
00:38:04 <coppro> oh
00:38:11 <coppro> thought you meant something like terrorists
00:38:14 <elliott> X-D
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:40:29 <elliott> Stanislav.
00:40:30 <elliott> Your titling.
00:40:33 <elliott> It is ridiculous.
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:00 <Zwaarddijk> pikhq: oooh
00:49:03 <Zwaarddijk> what's its name?
00:49:10 <pikhq> trinity
00:49:50 <elliott> I've talked to the maintainer of that
00:49:53 <elliott> Seems nice enough :P
01:01:47 <tswett> Tarkenenkohan minä ulkona näillä vaatteilla?
01:10:12 -!- TeruFSX has joined.
01:16:22 <pikhq> Fixed!
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:17 <zzo38> I win!
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:21:03 <zzo38> It does?
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:30 <elliott> ...
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:23:50 <elliott> hard
02:24:35 <elliott> haha this is amazing Sgeo
02:24:50 <zzo38> Sgeo: No, I mean the title, not the video
02:24:59 <Sgeo> "Live Free"
02:25:08 <zzo38> OK
02:25:29 <elliott> thsi is amazing its so bad
02:25:44 <zzo38> Ha ha I win even more than "hemflit"
02:26:00 <elliott> ...wat
02:26:06 <elliott> oh anagolf
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:23 <elliott> zzo38: Try what?
02:28:35 <zzo38> Maybe you can win even more?
02:28:42 <elliott> Why couldn't I?
02:28:58 <elliott> Seems I'm rank 129.
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:42:04 <Sgeo> Hmmm
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:19 <Sgeo> hmm?
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:17:48 <monqy> eugh
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:07 <pikhq> 切腹して!
03:26:16 <Sgeo> 0000 0000 0000 0000 0000
03:26:25 * Sgeo doesn't know whether to curse XChat or Windows
03:26:33 <pikhq> Both.
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:29 <Lymia> pikhq, kanji. ;-;
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:15 <Lymia> :[
03:30:17 <pikhq> Lymia: But lemme transcribe that for you.
03:30:22 <pikhq> Lymia: せっぷくして!
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:39 <pikhq> Or BIOS problem.
03:30:44 <monqy> that too I guess
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:33:34 <pikhq> acpi=off.
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:26 <elliott> Oh. Then you're fucked.
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:40:42 <elliott> ++
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:43 <Sgeo> No, sorry
03:42:45 <Sgeo> Not what I meant
03:42:49 <Sgeo> grr dog
03:43:15 <pikhq> *Ahahahah*.
03:43:29 <elliott> pikhq: ?
03:43:29 <pikhq> My processor has the following serial number: "To Be Filled By O.E.M."
03:43:41 <elliott> Nice :D
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:29 <Lymia> Hm...
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?
03:59:44 <Lymia> (to do)
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:10 <pikhq> *wince*
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:21 <elliott> HUNT THEM DOWN
04:00:22 <elliott> AND KILL 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:32 <elliott> Dammit, not on freenode.
04:00:35 <pikhq> zzo38: Laziness.
04:00:41 <Sgeo> Lymia, are you capable of helping em?
04:00:55 <pikhq> zzo38: Alternately, personal taste.
04:00:57 <Lymia> *shrug*
04:00:58 <pikhq> zzo38: Quite often bad.
04:01:08 <Lymia> Not unless I tell them to write "reinstall"
04:01:11 <Lymia> tell them to*
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:01:44 <elliott> ~SOCIAL DARWINISM~
04:02:09 <pikhq> He sounds like an idiot, let's kill him and eat his flesh.
04:02:21 <pikhq> ~CANNIBALISM~
04:02:23 <NihilistDandy> I like this plan
04:05:29 <elliott> pikhq: You're still on Debian testing/Xfce, right?
04:05:32 <elliott> I'm distroshopping.
04:05:38 <elliott> Can't stay on old Ubuntu forever.
04:07:17 <pikhq> elliott: I am.
04:07:33 <NihilistDandy> elliott: Gentoo
04:07:49 <NihilistDandy> O.o
04:07:55 <elliott> NihilistDandy: I'm sorry -- I can't type coherently over how hard I'm laughing.
04:08:05 <NihilistDandy> lol
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:32 <NihilistDandy> I'm aware. I only used Gentoo briefly
04:08:35 <elliott> :-P
04:08:37 <NihilistDandy> I just enjoy the reactions :D
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:56 <NihilistDandy> LFS is clearly superior~
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:01 <elliott> "Just"? Is wheezy out?
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:15 <elliott> ...
04:10:16 <elliott> Wow.
04:10:16 <elliott> Really?
04:10:19 <pikhq> Yeah.
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:03 <pikhq> rolling.
04:11:07 <elliott> Really?
04:11:09 <elliott> Fuckin' A.
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:31 <elliott> ...
04:11:31 <elliott> sweet.
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:11 <elliott> Or, would it be:
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:13:53 <elliott> Ah.
04:13:56 <elliott> Any others? :P
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:02 <elliott> Well, yeah.
04:20:10 <elliott> Still, I can't imagine a freeze needing longer than a few weeks.
04:20:13 <elliott> If done properly.
04:20:30 <pikhq> Hence the "reforming process" proposal.
04:20:39 <elliott> Right.
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:22:09 <elliott> six.
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:32:43 <elliott> Shut up shut up shut up.
04:32:55 <Sgeo> updog?
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:38:38 <elliott> JFS exists, you know.
04:39:16 <Sgeo> You consider ext4 to suck, I take it?
04:39:45 <elliott> Well it doesn't suck.
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:42:23 <elliott|afk> I don't know what you're talking about.
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:47:33 <elliott|afk> or was it binary...
04:47:37 <pikhq> Source.
04:48:05 <pikhq> The .so is 636k.
04:48:06 -!- HolyBlood^AFK has quit (Ping timeout: 240 seconds).
04:48:11 <pikhq> i.e. smaller than libc.
04:49:53 <elliott|afk> I like debian-installer's flexibility.
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:24 <elliott|afk> sandbox
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:13 <elliott> happy four birthday Sgeo
05:03:25 <Sgeo> What.
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:05:54 <elliott> Sgeo: happy four birthday
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:10:45 <elliott> Sgeo: sgep birth helo
05:10:49 <elliott> four
05:11:03 <zzo38> Lymia: *You* rewrite it in Perl if you are good at Perl to do it.
05:11:08 <Sgeo> ?
05:11:18 <Lymia> zzo38, you missed the joke.
05:12:32 <Sgeo> elliott, http://codu.org/logs/log/_esoteric/2005-12-27
05:12:37 <Sgeo> I'm there
05:12:48 <elliott> four birth
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:02 <Sgeo> Wait, no
05:15:09 <Sgeo> 1993-1994
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:01 <Lymia> exec is denied?
05:21:01 <Lymia> :[
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:22:20 <Sgeo> CBS
05:22:20 <Sgeo> CBS
05:22:20 <Sgeo> CBS"
05:23:53 <elliott> zzo38: "a single"?
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:24 <elliott> Weird.
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:05 <Lymia> Though...
05:27:22 <Lymia> I'm sure there are shorter methods than compiling deadfish to python.
05:27:24 <Lymia> Actually.
05:27:40 <elliott> fizzie: Can it?
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:16 <Lymia> Wait, no.
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:31 <Lymia> Yeah.
05:29:33 <Lymia> I was confused.
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:30:02 <elliott> (Instead of after.)
05:31:11 <Lymia> ....
05:31:12 <Lymia> Uh.
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:15 <elliott> fizzie: Oh, right.
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:40:22 <Lymia> You can do that?
05:40:26 <Lymia> OK
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:02 <pikhq_> elliott: Balls.
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:14 <Lymia> ...
05:42:15 <Lymia> Yeah
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:42:47 <Lymia> For some reason
05:43:13 <elliott> Lymia: BTW, you need to handle wrapping.
05:43:20 <Lymia> elliott, wrapping?
05:43:33 <elliott> Yep.
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:43:49 <Lymia> What do you mean?
05:43:51 <Sgeo> Maybe
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:44:52 <elliott> Lymia: It does.
05:44:59 <elliott> Sgeo: What is it?
05:45:01 <elliott> MIT Scheme?
05:45:13 <Sgeo> Yes
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> Lymia:
05:45:31 <elliott> if accumlator == 256 or accumlator == -1:
05:45:31 <elliott> accumlator = 0
05:45:33 <elliott> Apparently you are blind.
05:45:37 <Lymia> oh rcap
05:45:39 <Lymia> crap*
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:01 <elliott> "Pulled from"?
05:47:04 <elliott> You mean they adhere to a standard.
05:47:07 <Sgeo> Yes
05:47:36 <Sgeo> Whereas, Racket's... don't
05:48:34 <elliott> Racket isn't a Scheme.
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:53:00 * Sgeo gets dizzy
05:53:33 <elliott> ...
05:53:34 <elliott> Dizzy.
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:54:41 <elliott> Well, it sort of is.
05:54:42 <elliott> But not really.
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:23 <elliott> It is precisely a 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:08 <elliott> Here's what a JIT does:
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:04:58 <elliott> monqy: :D
06:05:02 <elliott> doing lines of cod
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:18 <elliott> Bytes, actually.
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:03 <elliott> Cringeworthy.
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:15 <CakeProphet> yes they'll be the same asymptotically.
06:11:50 <elliott> But like I said, not in Jython.
06:11:57 <elliott> Dunno about IronPython.
06:12:35 <Lymia> 72 is the current Python recod.
06:12:36 <Lymia> record*
06:12:39 <Lymia> I'm going to need more work.
06:12:45 <Lymia> to do*
06:12:46 -!- NihilistDandy has quit (Quit: leaving).
06:12:56 <Lymia> The dict is already 53 chars
06:14:01 <Lymia> elliott.
06:14:26 <Lymia> Never mind.
06:14:39 <Sgeo> I should implement an esolang in something
06:14:42 <Sgeo> Perhaps Racket
06:14:48 <elliott> Lymia: >_<
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:15:46 <elliott> THEN DO IT
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:51 <elliott> erm
06:23:54 <elliott> why have you put ; at the end again
06:24:13 <elliott> oh
06:24:13 <elliott> i see
06:24:35 <CakeProphet> ...I don't.
06:24:52 <CakeProphet> why not just ";".join?
06:24:58 <elliott> hey good idea
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:04 <elliott> shorter in two ways
06:25:07 <elliott> erm
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:28 <Lymia> elliott, nope.
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:25:58 <Lymia> Wait
06:26:03 <elliott> Lymia: ...
06:26:04 <elliott> no
06:26:05 <Lymia> CakeProphet, checked, nope.
06:26:09 <elliott> oh, i see
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:27:34 <CakeProphet> yeah that's a sufficient compromise.
06:28:26 <elliott> hmm
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:33 <elliott> how would reduce help?
06:28:42 <elliott> CakeProphet: yes, but the anagolf challenge uses single lines
06:28:48 <elliott> maybe the newlines will break it...
06:28:52 <elliott> argh
06:28:52 <elliott> they do
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:02 <elliott> problem solved
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:21 <elliott> anyway
06:29:24 <elliott> that's why i just fixed it
06:29:25 <Lymia> There we go.
06:29:45 <elliott> anyway
06:29:47 <elliott> you still need wrapping
06:29:48 <elliott> so...
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:07 <Lymia> Ah.
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:32:50 <CakeProphet> ...weird.
06:32:53 <Lymia> ...
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:35 <Lymia> We are WAY over.
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:11 <elliott> CakeProphet: it does not.
06:34:13 <elliott> I measured.
06:34:28 <CakeProphet> ah because of the quotes on the keys.
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:48 <CakeProphet> Lymia: see Perl. :P
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:35:35 <CakeProphet> Lymia: ..whut?
06:35:56 <elliott> Lymia: wat
06:36:02 <elliott> well, no
06:36:07 <elliott> this is way too small for compression to help
06:36:07 <CakeProphet> isn't this about source code size?
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:38 <elliott> Yes.
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:08 <coppro> sgeo: you are funny
06:38:12 <coppro> for starters, you aren't coding scheme
06:38:43 <elliott> is he coding magic
06:38:46 <elliott> pure magic
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:45 <monqy> Sgeo: go wild
06:40:59 <Sgeo> http://pastie.org/private/tx8g8qrhsd4ggssrspzdg
06:41:05 <elliott> can Sgeo actually code
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> (define (99-bottles)
06:41:26 <elliott> (error "Not implemented yet"))
06:41:26 <elliott> (define (inc-accum)
06:41:26 <elliott> (error "Not implemented yet"))
06:41:27 <elliott> that's just poetic
06:41:49 <elliott> Sgeo: do you put do- before all of your function names?
06:42:01 <monqy> do-99-bottles
06:42:05 <monqy> do-inc-accum
06:42:10 <elliott> do-do-inc-accum
06:42:14 <elliott> it implements a function after all
06:43:09 <elliott> (list->string lst) → string?
06:43:09 <elliott> lst : (listof char?)
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:49 <monqy> or black magic
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:14 <monqy> what then
06:44:55 <monqy> Sgeo: are Bink and Bonk debug code
06:44:59 <monqy> by which I mean
06:45:00 <Sgeo> Yes
06:45:13 <CakeProphet> hmmmmm
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:30 <elliott> before asking
06:46:33 <Sgeo> Yes
06:46:37 <elliott> and
06:46:57 <Sgeo> it returned properly, iirc (bloody DrRacket cleared it out already)
06:47:06 <Sgeo> Wait
06:47:11 <monqy> $ racket
06:47:11 <monqy> Welcome to Racket v5.1.1.
06:47:11 <monqy> >
06:47:11 <elliott> yet you find it unthinkable that the problem could be in the appending and displaying parts
06:47:17 <monqy> whats drracket
06:47:17 <elliott> rather than the for/list part
06:47:18 <elliott> i see
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:42 <elliott> Sgeo: Did I
06:48:49 <elliott> monqy: just start emacs to use the repl >:)
06:48:52 <elliott> or, y'know... use rlwrap
06:48:57 <Sgeo> list->string wouldn't wor properly
06:49:04 <elliott> hey
06:49:06 <elliott> i found sgeo's bug
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:20 <elliott> hmm
06:49:23 <monqy> is that so
06:49:25 <elliott> unless [hash]\X is equal? to "X"
06:49:52 <monqy> > (equal? #\X "X")
06:49:53 <monqy> #f
06:49:53 <lambdabot> <no location info>: parse error on input `#\'
06:49:59 <monqy> sorry lambdabot
06:50:03 * elliott pats lambdabot
06:50:08 <elliott> it's ok
06:50:14 <Sgeo> ty
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:12 <elliott> im ashamed of myself
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:06 <elliott> for a challenge
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:52:39 <elliott> yeah
06:52:42 <elliott> im tired too
06:56:52 <Sgeo> + is now implemented
06:56:56 <monqy> woohoo
06:58:00 <Sgeo> Oh come on
06:58:22 <elliott> ahahahahahahahahah
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:19 <elliott> what
07:00:23 <Sgeo> For 9
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 <elliott> Sgeo: ...
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:03:27 <elliott> coppro: and easter eggs
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:45 <elliott> jesus monqy
07:04:47 <elliott> this is like a shit tornado
07:04:51 <elliott> im not giving them to anyone
07:04:52 <elliott> not even orphans
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:15 <elliott> olsner: no
07:06:18 <elliott> olsner: i'm giving none of the shits
07:06:22 <elliott> theyre all mine
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:08:59 <elliott> WOW LOOK AT THAT
07:09:00 <elliott> FORMAT
07:09:08 <elliott> USE
07:09:08 <elliott> THE
07:09:10 <monqy> you don't say
07:09:10 <elliott> FUCKING
07:09:11 <elliott> SEARCH
07:09:11 <elliott> PAGE
07:09:11 <elliott> >_<
07:09:28 <monqy> what if he wants common lisp's format specifically
07:09:30 <monqy> not dirty racket's format
07:09:33 <elliott> shell out to sbcl
07:09:38 <elliott> :D
07:09:45 <elliott> http://esolangs.org/w/index.php?title=User:RichardPrime&curid=3901&diff=22899&oldid=22898
07:09:47 <elliott> wow
07:09:47 <elliott> spambot user
07:09:52 <Sgeo> monqy, thank you
07:10:04 <monqy> what did I do
07:10:04 <elliott> Sgeo: ...
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:10:29 <monqy> dagnabbit
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:14:41 <elliott> hes a super masochist
07:14:50 <elliott> that or stupid
07:14:52 <elliott> not sure
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:39 <monqy> does it work
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> (define inc-accum
07:20:59 <elliott> (let ([accum 0])
07:20:59 <elliott> (lambda ()
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:01 <monqy> ssshhh
07:22:03 <elliott> this is embarrassing
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:22:41 <monqy> (so rad)
07:23:11 <elliott> make it PRINT the lyrics out
07:23:12 <elliott> a i
07:23:13 <elliott> as in
07:23:15 <elliott> on your printer
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:23:44 <monqy> mmm
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:00 <CakeProphet> is this shorter?
07:42:02 <elliott> monqy: is it done yet
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:07 <monqy> elliott: no :(
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:07 <CakeProphet> how does x=x break syntax?
07:43:17 <elliott> oh, i see how it works
07:43:19 <elliott> it's still broken though
07:43:23 <elliott> because of the 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:45:39 <CakeProphet> x*=x!=256*x>0 would cut some bytes.
07:46:49 <CakeProphet> initially I was just going to replace s with **2 but I realized that would conflict with operator precedence.
07:47:49 <elliott> x*=x!=256*x>0
07:47:51 <elliott> parses wrong
07:47:54 <elliott> x*=(x!=256)*x>0
07:47:54 <elliott> or
07:47:56 <elliott> x*=(x!=256)*(x>0)
07:47:58 <elliott> will work
07:48:01 <elliott> dunno about that middle one
07:48:04 <elliott> but yeah the first one will parse wrong
07:48:13 <CakeProphet> yeah...
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:20 <CakeProphet> x=0 is the initialization
07:49:34 <elliott> erm.
07:49:39 <elliott> so it parses something like
07:49:49 <elliott> oh i see
07:49:49 <elliott> hmm
07:49:50 <elliott> or do i
07:49:55 <elliott> right
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:50:19 <lifthrasiir> are you golfing Deadfish?
07:50:28 <CakeProphet> ...maybe.
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:31 <elliott> yep
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:25 <lifthrasiir> heck.
07:58:35 <elliott> lifthrasiir: yes.
07:58:37 <elliott> the logic is simple
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:00:51 <elliott> monqy: ??/////
08:01:24 <monqy> I'm teaching it how to count beer
08:01:29 <monqy> backwards
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:03:00 <elliott> hahahahahhhaha
08:03:52 <monqy> that is
08:03:54 <monqy> after sleep
08:03:58 <elliott> : (
08:04:03 <monqy> I can hardly remember what I'm trying to do now
08:04:07 <lifthrasiir> my first version: 115 bytes.
08:04:10 <Sgeo> elliott, I haven't corrected the 99 bottle of beer issues
08:04:13 <lifthrasiir> heck.
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:04:39 <Sgeo> Mostly apathy
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:17 <elliott> this couldnt be funnier
08:05:24 <elliott> CakeProphet: that's a lot of characters in itself though
08:05:28 <CakeProphet> indeed.
08:05:31 <elliott> but you could use a list like that
08:05:36 <CakeProphet> yes
08:05:38 <elliott> unfortunately you would have to handle invalid chars /
08:05:39 <elliott> :/
08:05:58 <elliott> otoh, x not in'h
08:05:59 <elliott> ' is ok for this
08:06:05 <elliott> (literal newline deliberate, one less char than \n)
08:06:06 <elliott> (or wait)
08:06:09 <elliott> (is that valid in python...)
08:06:35 <CakeProphet> yeah you can't do that
08:06:52 <CakeProphet> """ allows literal newlines
08:06:57 <CakeProphet> but not " or '
08:07:20 <elliott> ugly
08:07:29 <CakeProphet> yes, go complain to Guido
08:07:54 <CakeProphet> he'll read your email in his comfortable Google office chair.
08:08:23 <lifthrasiir> took an another approach; 84 bytes.
08:08:44 <lifthrasiir> i wonder others are using the same approach?
08:08:48 <lifthrasiir> (at least for python)
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:19 <lifthrasiir> as far i saw it is 72 bytes long now.
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:09 <CakeProphet> it's a well thought out plan, I promise.
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:12 <CakeProphet> input wouldn't work for sure.
08:14:17 <elliott> the others would involve a separate while loo
08:14:17 <elliott> p
08:14:19 <CakeProphet> raw_input is possible though.
08:14:20 <elliott> hmm
08:14:21 <elliott> input might work
08:14:29 -!- monqy has quit (Quit: hello).
08:14:37 <elliott> i='n+=one';d='n-=one';code+=input()
08:14:40 <elliott> you see?
08:14:42 <elliott> since it evals
08:14:57 <CakeProphet> ...aaah
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:15:40 <elliott> Lymia: see above
08:15:54 <Lymia> Recursive eval?
08:16:05 <CakeProphet> not recursive no
08:16:07 <elliott> no
08:16:10 <CakeProphet> symbol table abuse. :)
08:16:17 <elliott> asterisk plz
08:16:20 <elliott> need an asterisk :D
08:16:24 <CakeProphet> I like it. Though it's uncertain whether or not it will be a smaller result.
08:16:31 <elliott> oi
08:16:34 <CakeProphet> here you can have this one *
08:16:34 <elliott> someone type an asterisk >:(
08:16:35 <elliott> yay
08:16:38 <Lymia> elliott.
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:56 <elliott> exclamation mark please
08:16:58 <elliott> Lymia: nope, only h
08:16:58 <CakeProphet> the tricky part will be filtering all of the non-important characters.
08:17:02 <CakeProphet> ... !
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:17:23 <CakeProphet> yes I believe you. :D 256
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:07 <elliott> syntax error
08:18:15 <elliott> aha
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:23 <elliott> two lines
08:18:27 <elliott> this is promising
08:18:35 <elliott> ninety-two bytes
08:18:40 <elliott> or, wait
08:18:40 <elliott> ninety-one
08:18:55 <CakeProphet> you can shorten that some more with tuple assignment
08:18:57 <CakeProphet> I think
08:19:07 * Lymia thinks
08:19:08 <Lymia> elliott.
08:19:14 <Lymia> This would be cheating, right.
08:19:22 <Lymia> Dosn't work in the general case.
08:19:23 <elliott> no
08:19:25 <elliott> all's fair in anagolf
08:19:33 <elliott> CakeProphet: ah, possibly
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:19:54 <elliott> Lymia: yes
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:20:40 <elliott> two bytes shorter
08:20:53 <elliott> eighty-nine bytes
08:20:58 <elliott> wait
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:08 <elliott> eighty-seven bytes
08:21:17 <elliott> oh wait
08:21:19 <elliott> i can do h=n=0 there
08:21:20 <lifthrasiir> 75 bytes here. now that IS hard.
08:21:27 <elliott> eighty-four bytes
08:21:43 <elliott> lifthrasiir: is our new approach reasonable for such a low count...?
08:21:49 <lifthrasiir> i think so.
08:22:05 <Lymia> Ah.
08:22:07 <Lymia> h is halt.
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:22:33 <Lymia> So, therefore.
08:22:38 <Lymia> Ignore.
08:23:00 -!- Sgeo has quit (Read error: Connection reset by peer).
08:23:23 <Lymia> Hmm...
08:23:28 <Lymia> You can only get below zero with d, right?
08:23:35 <elliott> Lymia: yes
08:23:40 <elliott> more precisely
08:23:41 <Lymia> elliott, what's the current code?
08:23:42 <elliott> you can't :)
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:05 <elliott> hmm
08:24:12 <Lymia> elliott.
08:24:17 <Lymia> Does Python have an infinite generator?
08:24:25 <Lymia> And how are we exiting this loop?
08:24:26 <CakeProphet> yes but it requires an import
08:24:28 -!- Sgeo has joined.
08:24:33 <CakeProphet> it's in itertools
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:46 <elliott> bleh, longer
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:51 <elliott> Lymia: with erro
08:24:51 <elliott> r
08:24:53 <elliott> input() will fail
08:24:55 <Lymia> elliott, is this allowed?
08:24:59 <elliott> Lymia: yes
08:25:03 <Lymia> Will it pass?
08:25:06 <elliott> yes
08:25:09 <elliott> stderr is ignored
08:25:09 <lifthrasiir> elliott, python's string is immutable, i think?
08:25:14 <Lymia> Ah.
08:25:15 <elliott> lifthrasiir: oh damn, right :(
08:25:36 <CakeProphet> well you can just mutate one of them
08:25:55 <elliott> no
08:25:57 <elliott> you can't
08:25:58 <elliott> they're strings
08:26:16 <CakeProphet> er, nevermind. :P
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:39 <elliott> this works apart from s
08:26:44 <elliott> s needs to handle sqrt two-five-six
08:26:45 <Lymia> So.
08:26:48 <Lymia> We've hit a brick wall.
08:26:51 <elliott> so sixteen
08:26:52 <elliott> Lymia: nope
08:27:17 <Lymia> So.
08:27:19 <Lymia> 0d = 0
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:27:22 <Lymia> 255i = 0
08:27:25 <elliott> eighty-one bytes
08:27:26 <elliott> bitches
08:27:39 <Lymia> What is n?
08:27:41 <CakeProphet> nice.
08:27:42 <Lymia> Ah.
08:28:01 <Lymia> elliott.
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:04 <elliott> eighty bytes
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:14 <Lymia> h = halt
08:28:18 <elliott> oh
08:28:19 <Lymia> We can make it halt by erroring.
08:28:21 <elliott> awesome
08:28:21 <elliott> :)
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:29 <elliott> seventy-eight bytes
08:28:34 <elliott> this is going to get very difficult very quickly
08:28:36 <Lymia> SO.
08:28:39 <Lymia> Who does credit go to?
08:28:41 <Lymia> #esoteric?
08:28:44 <Lymia> elliott?
08:28:45 <Lymia> :3
08:28:48 <elliott> I'll submit this version as #esoteric
08:29:16 <Lymia> Hmm...
08:29:21 * elliott strips newline locally
08:29:25 <Lymia> n+=n!=255
08:29:29 <Lymia> How does that work?
08:29:29 <elliott> then we can try and shorten it further ofc
08:29:33 <Lymia> If n == 255
08:29:34 <elliott> Lymia: boolean->int conversion
08:29:36 <elliott> false is zero, true is one
08:29:37 <Lymia> Then n+=0
08:29:39 <Lymia> Meaning 255
08:29:41 <Lymia> Instead of 0
08:29:44 <elliott> argh
08:29:45 <elliott> you're right
08:29:53 <elliott> hmm
08:29:54 <elliott> we need
08:30:00 <elliott> f(x,255)=-x
08:30:01 <Lymia> elliott.
08:30:03 <Lymia> Check the tests.
08:30:05 <elliott> f(x,n)=one
08:30:14 <Lymia> Do any use this behvaior?
08:30:16 <Lymia> behavior*
08:30:20 <elliott> Lymia: probably
08:30:25 <elliott> its too hard to tell from reading them
08:30:44 <lifthrasiir> damn, it is hard to get below 75B.
08:30:48 <elliott> ill try with just +=one
08:31:18 <Lymia> Yep.
08:31:22 <elliott> do they
08:31:22 <Lymia> Test 4 tests it.
08:31:26 <elliott> right
08:31:33 <elliott> hmm
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:32:18 <elliott> that could work
08:32:35 <CakeProphet> assignment isn't an expression in Python
08:32:59 <CakeProphet> unless you meant ==
08:33:00 <elliott> and?
08:33:02 <elliott> oh
08:33:02 <elliott> right
08:33:05 <Lymia> ...
08:33:06 * Lymia cheaty face
08:33:09 <Lymia> Hey, elliott.
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:35 <elliott> erm
08:33:38 <elliott> my squaring thing is borked
08:33:51 <elliott> Lymia: heh...
08:33:54 <elliott> it isn\t, no
08:33:55 <elliott> isn't
08:34:01 <CakeProphet> should be n*=n or n**=2
08:34:06 <elliott> CakeProphet: right
08:35:30 <elliott> i='n+=1+(n==255)*(-n-1)'
08:35:31 <elliott> does in fact work
08:35:33 <elliott> wait
08:35:37 <Lymia> But is long.
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:35:45 <elliott> identical
08:35:53 <elliott> erm
08:35:54 <Lymia> Identical?
08:35:55 <CakeProphet> haha...
08:35:57 <elliott> needs a four
08:35:59 <elliott> someone say four for me
08:36:02 <Lymia> four?
08:36:08 <elliott> ..
08:36:09 <elliott> the digit
08:36:15 <CakeProphet> 4
08:36:24 <elliott> or wait no
08:36:25 <elliott> i need a six
08:36:27 <elliott> but i have one
08:36:28 <CakeProphet> 6
08:36:31 <CakeProphet> haha, okay.
08:36:49 <elliott> ugh
08:36:52 <elliott> back up to eighty seven bytes
08:37:09 <Lymia>
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:19 <elliott> ok, this is what we have
08:38:20 <elliott> any ideas?
08:38:31 <elliott> hmm
08:38:35 <elliott> cmp(n,twofivefive) might help
08:38:44 <elliott> abs(cmp(n,twofivefive))... no, too long
08:38:50 <elliott> ooh wait
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:06 <elliott> identical char count
08:39:42 <Lymia> Is this fully functional?
08:39:45 <CakeProphet> I don't know, I'm pretty stumped now. :P
08:39:46 <elliott> yes.
08:39:52 <elliott> yeah im losing ideas
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:19 <lifthrasiir> accidentally, yes
08:42:31 <elliott> lifthrasiir: cheating is ok :)
08:42:32 <lifthrasiir> the examples do not test one behavior of the interpreter
08:42:38 <elliott> going below 0?
08:42:46 <Lymia> Tested.
08:42:50 <elliott> hmm
08:42:55 <elliott> squaring to two-five-six?
08:43:06 <elliott> if thats not tested we could save *(n!=16)
08:43:14 <lifthrasiir> no, that is tested in the third example
08:43:16 <Lymia> oddoioidososisosiodsiodsioissiosoh
08:43:22 <Lymia> This is one of the examples.
08:43:27 <elliott> hmm
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:43:42 <Lymia> elliott, one sec.
08:44:23 -!- NihilistDandy has quit (Client Quit).
08:44:47 -!- NihilistDandy has joined.
08:45:14 <Lymia> OK
08:45:16 <Lymia> I figured it out too
08:45:17 <Lymia> :)
08:45:27 <elliott> Lymia: hey, tell
08:45:33 <elliott> i shared my innovation :(
08:45:34 <Lymia> 73 here too.
08:45:35 <Lymia> >:3
08:45:40 <elliott> >:|
08:45:41 <elliott> jerk
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:02 <Lymia> elliott, no.
08:46:07 <Lymia> Squaring to 256 was.
08:46:11 <elliott> no, i mean before that
08:46:23 <Lymia> Hold on.
08:46:26 <elliott> ok, now to shave off two bytes
08:46:40 <lifthrasiir> that is also a problem here
08:46:50 <elliott> lifthrasiir: ?
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:08 <Lymia> Yeah.
08:47:15 <lifthrasiir> elliott, no, i'm also figuring out how to shave off two bytes
08:47:15 <Lymia> n+=1 does work
08:47:19 <lifthrasiir> (or at least one...)
08:47:28 <Lymia> Different loop?
08:47:35 <elliott> the loop is pretty much perfect
08:47:37 <Lymia> Can we shave off the h=0?
08:47:42 <elliott> n=0 you mean
08:47:47 <elliott> ignore lifthrasiir's lie version ;D
08:47:48 <Lymia> Yes.
08:47:51 <elliott> ok using h is actually clever
08:47:54 <elliott> but irrelevant
08:48:00 <Lymia> It fails either way.
08:48:03 <lifthrasiir> elliott, yeah it is irrelevant.
08:48:04 <elliott> no
08:48:07 <elliott> it would succeed silently
08:48:08 <elliott> with lifthrasiir's
08:48:09 <Lymia> Just due to different reasons.
08:48:14 <lifthrasiir> but i retained it anyway
08:48:16 <Lymia> h = halt.
08:48:17 <Lymia> ;)
08:48:20 <Lymia> We implemented it better.
08:48:23 <Lymia> Ours crashes with a key not found.
08:48:25 <elliott> right :P
08:48:27 <elliott> not key
08:48:30 <elliott> just unbound variable
08:48:35 <lifthrasiir> NameError.
08:48:42 <elliott> right
08:48:52 <Lymia> Hey, uh.
08:48:57 <elliott> Lymia: ?
08:48:57 <Lymia> Can we do anything to o?
08:49:01 <elliott> i doubt it
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:28 <lifthrasiir> so that*
08:49:34 <Sgeo> Start and end with `
08:49:52 <lifthrasiir> what the hell.
08:50:03 <elliott> lifthrasiir: ?
08:50:06 <elliott> oh, strings
08:50:07 <elliott> s='n*=n*(n!=16)'
08:50:10 <elliott> Lymia: maybe if we shorten this
08:50:35 <Lymia> n*n*(n!=16)
08:50:45 <CakeProphet> no assignment
08:50:57 <Lymia> I'm thinking.
08:50:57 <elliott> eh?
08:51:03 <Lymia> So.
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:04 <elliott> darn
08:51:05 <elliott> one byte more
08:51:14 <Lymia> n**2*(n!=16)
08:51:21 <elliott> that will parse wrong
08:51:22 <elliott> i think
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:51:47 <Lymia> n*=n*(n!=16)
08:52:18 <Lymia> n*=n*(n!=16) -> n=n*n*(n!=16) -> n=(n**2)*(n!=16)
08:52:23 <Lymia> So...
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:38 <Lymia> >>> 0**0
08:52:38 <Lymia> 1
08:52:38 <elliott> SAME LENGTH
08:52:41 <elliott> [asterisk]same length
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:51 <elliott> CakeProphet: not here
08:52:55 <elliott> n=0;i='+1';d='-(n>0)';o=';print n';s='*(n!=16)';while 1:exec'n=n'+input()
08:52:57 <Lymia> elliott.
08:52:59 * Sgeo gets shot.
08:53:01 <Lymia> Any way to abuse 0**0==1?
08:53:12 <elliott> Lymia: doubt it :)
08:53:46 <Lymia> Wait a second.
08:53:59 <CakeProphet> elliott: ah I see.
08:54:43 <CakeProphet> any chance doing a list lookup with ord(input()-100
08:54:43 <elliott> this is tricky
08:54:48 <CakeProphet> )/5 would be shorter?
08:54:53 <elliott> CakeProphet: beep, input() evals the line
08:55:00 <CakeProphet> oh right...
08:55:04 <elliott> we could assign indexes to them or something and call lambdas but... no
08:55:17 <CakeProphet> yeah.
08:55:49 -!- Wamanuz3 has joined.
08:56:33 <Lymia> dsio
08:56:46 <Lymia> Here's where it zeros.
08:56:47 <elliott> dsio
08:56:50 <elliott> dsio dsio dsio dsio
08:57:04 <Lymia> So.
08:57:09 <Lymia> Hmm...
08:57:50 <lifthrasiir> okay, i got it. 72B.
08:58:00 <elliott> lifthrasiir: not gonna divulge the secret, are you >:D
08:58:06 <Lymia> Don't tell us~
08:58:10 <elliott> Lymia: CakeProphet: TOGETHER WE WILL ACHIEVE THIS
08:58:12 <elliott> what are you talking about
08:58:14 <elliott> tell us of course :D
08:58:16 <lifthrasiir> haha, well i don't tell you, as it will spoil the fun ;)
08:58:20 <elliott> yeah
08:58:21 <elliott> "fun"
08:58:23 <Lymia> lifthrasiir, how clever is it?
08:58:23 <elliott> :D
08:58:37 <Lymia> I wonder.
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 :)
08:59:35 <lifthrasiir> lol
09:00:11 <elliott> gah
09:01:24 <lifthrasiir> wait, i got it one byte smaller again.
09:01:29 <lifthrasiir> hurray
09:01:31 <Lymia> lifthrasiir.
09:01:32 <Lymia> You.
09:01:33 <Lymia> :D
09:01:37 <elliott> lifthrasiir: NOOOOOOOOOOOOOOOOOOOO
09:01:44 <elliott> hmm
09:01:50 <elliott> i refuse to credit us as hash-esoteric
09:01:51 <elliott> it'll be
09:02:02 <elliott> hash-esoteric-apart-from-that-lifthrasiir-guy-who-was-just-horrible-and-kept-secrets >:D
09:02:06 <Lymia> :3
09:02:09 <Lymia> elliott.
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:36 <CakeProphet> *raw_input()
09:02:40 <lifthrasiir> hey, who was the person that pointed out exec input() will work? :3
09:02:47 <elliott> lifthrasiir: me
09:02:54 <lifthrasiir> huh :p
09:02:55 <elliott> ;D
09:02:56 <lifthrasiir> anyway
09:03:10 <elliott> actually you just said input(), I worked out the exec() part myself :-D
09:03:15 <elliott> joint discovery
09:03:17 <elliott> :-P
09:03:26 <lifthrasiir> ah, okay.
09:03:34 <elliott> I'M GLAD WE'RE IN AGREEMENT
09:03:35 <elliott> hmm
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:44 <lifthrasiir> that's the real fun, of course
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:05:49 <elliott> ok let's backtrack
09:05:50 <elliott> s='n*=n*(n!=16)'
09:05:52 <elliott> one byte off this...
09:06:04 <lifthrasiir> only page you have to keep is http://docs.python.org/library/functions
09:06:42 <elliott> but of course
09:06:47 <elliott> memoryview() is the key to solving ALL OUR PROBLEMS
09:07:01 <lifthrasiir> except for it costs at least 12 bytes. :p
09:07:05 <lifthrasiir> that*
09:08:12 <elliott> Lymia: any ideas?
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:08:40 <Lymia> I'm thinking.
09:10:10 <Lymia> *shrug*
09:10:20 <lifthrasiir> huh, did anagolf have a setpid interface? that will make a better use of $$ (for example).
09:10:25 <elliott> yes
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:10:39 <lifthrasiir> ...and seems quite cheating ;)
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:21 <elliott> darn
09:12:23 <lifthrasiir> that's all i can say at this moment
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:00 <elliott> erm
09:14:03 <elliott> that will parse wrongly]
09:14:06 <elliott> you need parens around n==sixteen
09:14:08 <CakeProphet> == is looser than *
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 <Lymia> Crap.
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:15:35 <CakeProphet> er not double
09:15:38 <CakeProphet> **2
09:16:47 <Lymia> lifthrasiir, is the solution mathematical?
09:17:13 <lifthrasiir> no. i was unable to reduce n!=16 bits.
09:17:28 <lifthrasiir> ...wait i said too much?!
09:17:34 <elliott> nope
09:17:38 <elliott> you're still being excruciatingly vague.
09:18:38 <Lymia> Does Python have eval functionality?
09:18:41 <elliott> yes
09:18:42 <elliott> eval(x)
09:18:52 <elliott> but print is a statement
09:18:53 <elliott> so
09:19:21 <CakeProphet> and sys.stdin.write() is quite wordy and requires an import
09:19:36 <CakeProphet> *stdout
09:20:09 <elliott> well there is __import__('sys').stdout.write() :)
09:20:12 <elliott> but yeah
09:20:16 <CakeProphet> heh
09:20:20 <Lymia> elliott, I've checked.
09:20:21 <Lymia> That's longer.
09:20:32 <CakeProphet> ... ^___^
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:20:52 <elliott> CakeProphet: ?
09:20:58 <Lymia> 2 dosn't work.
09:21:03 <Lymia> Note s
09:21:07 <elliott> Lymia: ?
09:21:09 <CakeProphet> yeah I was asking about that earlier.
09:21:11 <elliott> what?
09:21:14 <Lymia> n=n*(n!=16)
09:21:20 <elliott> argh
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:12 <Lymia> So.
09:24:16 <Lymia> - and * have checks, right?
09:24:53 <elliott> yep
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:01 <elliott> answer: doubt it
09:29:17 <elliott> are you SURE squaring to two five six is checked? :)
09:29:45 <Lymia> Yes
09:30:05 <elliott> SUUUUURE?
09:30:12 <Lymia> Yes
09:32:09 <elliott> SUUUUUUUUUUUUUUURE?
09:32:54 <Lymia> Yes
09:33:40 <elliott> SUUUUUUUUUUUUUUUUUUUUUUUUURE?
09:33:54 <CakeProphet> !simpleacro
09:33:59 <Lymia> Yes.
09:34:01 <Lymia> elliott.
09:34:02 <EgoBot> ​VBJG
09:34:05 <Lymia> What if we assume a default operation?
09:34:29 <Lymia> Something easily undoed.
09:34:51 <elliott> hmm
09:35:00 <elliott> let me try something along those lines
09:35:06 <CakeProphet> !show simpleacro
09:35:06 <elliott> no
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:08 <elliott> because
09:35:10 <elliott> while x:a;b
09:35:12 <elliott> doesn't work
09:35:16 <elliott> we'd need newlines indentation etc
09:36:34 <Lymia> ...
09:36:37 <Lymia> Dict comprehensions?
09:36:43 <Lymia> Yeah.
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:37:58 <Lymia> elliott.
09:38:01 <Lymia> I want to combine i an dd
09:38:03 <Lymia> and d*
09:39:16 <Lymia> Wait.
09:39:46 <Lymia> n,i,d,o,s=(0,'n+=1','n-=n>0','print n','n*=n*(n!=16)')
09:39:47 <Lymia> Buh.
09:39:48 <Lymia> So close.
09:39:52 <Lymia> 1 char too long
09:39:56 <CakeProphet> the parens aren't necessary actually
09:39:58 <elliott> those parens
09:39:59 <elliott> arent needed
09:40:06 <Lymia> ...
09:40:12 <CakeProphet> yeah I was considering that earlier but I didn't think it would actually save anything.
09:40:17 <elliott> but without them
09:40:18 <Lymia> So.
09:40:20 <Lymia> That's equal.
09:40:22 <elliott> its identical
09:40:23 <elliott> yeah
09:40:29 <elliott> the character tradeoff is literally the same
09:41:11 <Lymia> split is too long
09:43:47 <CakeProphet> > "test"
09:43:48 <lambdabot> "test"
09:44:16 <CakeProphet> > map (**2) [1..]
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:45:34 <CakeProphet> bitwise magic?
09:45:41 <CakeProphet> I can't think of anything in that vein
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:49:35 <lifthrasiir> CakeProphet, __file__?
09:49:50 <lifthrasiir> wait, sorry.
09:50:01 <CakeProphet> yeah not quite what I meant. :D
09:50:04 <Lymia> import deadfish,sys;deadfish.exec(sys.stdin.read())
09:50:10 <elliott> how does that look promising :D
09:50:23 <CakeProphet> fewer source bytes, of course.
09:50:27 <elliott> lifthrasiir: there is no question, I'm just drawing a blank :-)
09:50:28 <CakeProphet> not very portable though.
09:50:31 <Lymia> It's a joke.
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:52:27 <elliott> WHEN, not IF, eh???? ;)
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:34 <elliott> ooh
09:55:39 <elliott> hmmmmmmmmmmm
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:42 <elliott> :(
09:59:44 <elliott> noooo
09:59:48 <elliott> you'll miss so much of the fun :(
09:59:58 <oerjan> WAIT THAT WASN'T A WARNING?
10:00:09 <CakeProphet> !simpleacro
10:00:13 <EgoBot> ​FHW
10:00:23 <elliott> why are these UK tv licensing ads always in tamil...
10:00:25 <elliott> i'm not in tamil
10:00:32 <elliott> lian speaking surroundings
10:01:25 <CakeProphet> Fucking Home Wrecker?
10:01:33 <CakeProphet> !simpleacro
10:01:37 <EgoBot> ​JIKCR
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:43: <oklopol> hmm
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:17 <Lymia> elliott.
10:09:20 <Lymia> What are our operations?
10:09:23 <Lymia> n+1
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:17 <CakeProphet> does this mean I'm a hacker now?
10:10:24 <Lymia> You listen to music?
10:10:28 * oerjan 's ears pick up
10:10:29 <CakeProphet> ...uh, yes?
10:10:31 <Lymia> SILENCE MASTER RACE
10:10:35 <elliott> YOU LISTEN TO MUSIC??????????????
10:10:41 <elliott> ////////////////
10:10:44 * Lymia hypocrite
10:11:01 <Lymia> n+1
10:11:03 <Lymia> n-(n>0)
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:15 <elliott> it is just as good
10:11:19 <Lymia> n*n*(n!=16)
10:11:24 <Lymia> These are our operations, right?
10:11:30 <elliott> Yes. Also output.
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:09 <CakeProphet> hmm?
10:12:10 <elliott> hmm do you even turn joint stereo on there
10:12:12 <elliott> I don't think you do
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:22 <elliott> argh
10:13:24 <elliott> stupid special chars
10:13:31 <elliott> `delquote ​422
10:13:33 <HackEgo> No output.
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:13:55 <elliott> ogg, man
10:13:57 <elliott> why not ogg??
10:14:03 <elliott> to be precise
10:14:04 <elliott> vorbis
10:14:18 <CakeProphet> eh, consistency.
10:14:22 <elliott> "consistency"?
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:25 <elliott> Lymia: wat
10:15:34 <Lymia> Let me check if it works
10:16:45 <Lymia> Went nowhere.
10:16:53 <elliott> what was it?
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:27 <elliott> Lymia: oh, nice
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:17:57 <elliott> IT'S LIKE MURDER
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:02 <elliott> monser :(
10:19:13 <Lymia> elliott.
10:19:14 <Lymia> Yeah.
10:19:18 <elliott> +t
10:19:20 <elliott> monster
10:19:28 <Lymia> Anything I can think of makes s larger
10:19:37 <elliott> Lymia: darn
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:41 <Lymia> I know.
10:20:45 <Lymia> I already thought of that.
10:20:51 <Lymia> ...
10:20:57 <Lymia> Did lifthrasiir actually do that yet?
10:21:07 <elliott> do what
10:21:17 <Lymia> %ify
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:01 <Lymia> Well.
10:24:05 <Lymia> Now that I think of it.
10:24:10 <Lymia> I have quite a few possibilities to try.
10:24:16 <Lymia> elliott.
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:24:44 <elliott> Lymia: Define [something]
10:24:46 <lifthrasiir> shit, IO in haskell is too hard.
10:24:47 <CakeProphet> ...oh right.
10:25:00 <CakeProphet> too hard as in it uses a lot of bytes?
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:39 * elliott considers golfing his own
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:08 <Lymia> Urg.
10:26:09 <Lymia> WHY
10:26:12 <CakeProphet> I might try a Perl golf tomorrow..
10:26:52 <CakeProphet> Lymia: usually means you have two many tuple elements and not enough %'s
10:26:55 <CakeProphet> *too
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:29:20 <Lymia> Damnit.
10:29:21 <Lymia> So close.
10:29:36 <elliott> 0>
10:29:37 <elliott> you mean 0<
10:29:54 <Lymia> Yes
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:08 <elliott> one byte shaved
10:30:08 <elliott> :D
10:30:09 <lifthrasiir> 163 bytes for now.
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 <elliott> Lymia: meh...
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:13 <CakeProphet> ah
10:31:16 <lifthrasiir> i think it is not quite imperative...
10:31:18 <elliott> lifthrasiir: you may find the sequence function relevant
10:31:19 <elliott> :t sequence
10:31:20 <lambdabot> forall (m :: * -> *) a. (Monad m) => [m a] -> m [a]
10:31:30 <elliott> or hm
10:31:34 <elliott> ?pl foldl (>>=)
10:31:34 <lambdabot> foldl (>>=)
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:09 <elliott> hmmmmm
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:32:35 <lifthrasiir> and i'm trying not to use imports ;)
10:32:50 <lifthrasiir> CakeProphet, s///ge, i think.
10:32:56 <elliott> lifthrasiir: right
10:32:57 <CakeProphet> ..well, yes.
10:33:09 <oerjan> lifthrasiir: are you repeating f all those times?
10:33:19 <elliott> oerjan: presumably he is using map...
10:33:24 <lifthrasiir> oerjan, of course 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:33 <oerjan> er
10:34:33 <lifthrasiir> uh, right.
10:34:46 <CakeProphet> pl ftw
10:34:49 <elliott> main=getContents>>=foldl((>>=).f)(return 0).map f.lines
10:34:53 <elliott> or something
10:34:53 <elliott> erm
10:34:56 <elliott> main=getContents>>=foldl((>>=).f)(return 0).lines
10:34:56 <oerjan> that's wrong argument order, slightly
10:34:58 <elliott> or something
10:35:23 <CakeProphet> oh I see, yes it is.
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:35:45 <elliott> yeah gregor is eighteen
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:21 <elliott> Lymia: um
10:36:23 <elliott> we have seventy-three
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:10 <elliott> and?
10:37:12 <elliott> http is still \r\n
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:37:27 <Lymia> Ah.
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:19 <lifthrasiir> oerjan, i think so.
10:38:31 <oerjan> lifthrasiir: also it should be foldr, i'm pretty sure
10:38:47 <oerjan> er wait hm
10:39:00 <elliott> Lymia: not until we shave off a byte :P
10:39:21 <Lymia> 0B / 33B / 36B
10:39:24 <Lymia> 0B / 37B / 32B
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:41 <Lymia> -4 alphanum
10:39:44 <oerjan> hm ok i'm just disturbed that you thus require a finite input :)
10:39:51 <Lymia> +4 symbols
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:12 <lambdabot> (. f) . (>>=)
10:40:17 <lifthrasiir> oerjan, it *has* to be finite. :p
10:40:27 <Lymia> elliott, yes.
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 <lifthrasiir> @pl (\v -> print v >> return v)
10:41:12 <lambdabot> liftM2 (>>) print return
10:41:12 <Lymia> Our total adds up to 69
10:41:14 <Lymia> What isn't counted?
10:41:17 <lifthrasiir> darn.
10:41:24 <elliott> Lymia: newlines maybe
10:41:31 <oerjan> lifthrasiir: @pl says it would be foldl ((.f).(>>=)) which is obviously too many extra chars
10:41:55 <Lymia> ?pl 33+36
10:41:55 <lambdabot> 69
10:41:58 <Lymia> ?pl 37+32
10:41:58 <lambdabot> 69
10:42:21 <elliott> pl as an evaluator :D
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:35 <Lymia> I know.
10:42:36 <Lymia> Which are?
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:53 <lifthrasiir> Lymia, whitespaces.
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:43:58 <CakeProphet> !!!!
10:44:09 <elliott> apart from ORK
10:44:10 <elliott> :D
10:44:18 <Lymia> lifthrasiir, so, eh.
10:44:21 <CakeProphet> it's a tough contest.
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:44:58 <CakeProphet> but that's about as far as I've gotten.
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:36 <CakeProphet> good night, all.
10:45:55 <elliott> who the hell goes to sleep that early :o
10:46:07 <lifthrasiir> Lymia, hmm, does it matter?
10:46:09 <CakeProphet> <<<
10:46:10 <elliott> that's like
10:46:15 <elliott> going to sleep as soon as you wake up
10:46:18 <elliott> you've only been up like
10:46:20 <elliott> twenty hours
10:46:21 <elliott> ridiculous
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:16 <Lymia> elliott.
10:49:18 <Lymia> I'll purge your user page.
10:49:33 <Lymia> But seirously.
10:49:36 <Lymia> seriously*
10:49:38 <elliott> Don't make me write a script to drop lines whose contents are "elliott."
10:49:41 <elliott> :P
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:50:06 <elliott> Emulating a list.
10:50:17 <lifthrasiir> 128 bytes.
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:52:43 <elliott> never by incrementing
10:52:54 <elliott> >:)
10:53:01 <oerjan> huh :D
10:53:11 <oerjan> nice cheat i guess
10:54:13 <Lymia> iissds[31 is]
10:54:17 <Lymia> Shortest way to test it I can think of.
10:54:18 <Lymia> So yeah.
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:56:03 <oerjan> *saves
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:58:46 <elliott> exec'n'+input()
10:58:46 <elliott> duh :)
10:59:25 <oerjan> well that was two
10:59:38 <Lymia> elliott, yes, but that's longer
10:59:45 <elliott> um no
10:59:47 <elliott> it is not
10:59:49 <Lymia> Or do we not trust lifthrasiir.
10:59:56 <elliott> lifthrasiir used a suffix, duh
10:59:59 <Lymia> Yep.
11:00:03 <elliott> you aren't
11:00:05 <elliott> using a suffix
11:00:07 <elliott> so + is shorter
11:00:11 <Lymia> And what suffix can you use to trim that down?
11:00:18 <elliott> dunno
11:00:35 <Lymia> Is there anything other than n that makes sense?
11:00:43 <Lymia> As a prefix.
11:00:50 <elliott> n=n, maybe
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:05:07 <elliott> Dunno.
11:05:17 <elliott> Perhaps n)?
11:05:25 <elliott> Then s='*n*(16!='
11:05:31 <elliott> And o=';print('
11:05:39 <elliott> And d='-(0<'
11:05:48 <elliott> And i='+1;('
11:09:12 -!- ais523 has joined.
11:09:19 <Lymia> 1 char longer
11:10:12 <Lymia> Is there any way n can be better than n=n
11:10:17 <elliott> Dunno.
11:10:21 <elliott> ais523: hi, we're golfing
11:10:24 <ais523> hi
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:13:05 <Lymia> What useful non--
11:13:07 <Lymia> Wait a second.
11:14:43 <Lymia> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec"p"+input()
11:14:45 <Lymia> One byte'd
11:14:50 <elliott> What's with the p.
11:14:51 <elliott> ...
11:14:52 <elliott> Oh god.
11:14:53 <elliott> That's...
11:14:56 <elliott> That's perverse.
11:15:01 -!- HolyBlood has joined.
11:15:07 <elliott> OK I can beat this record of yours.
11:15:50 <Lymia> And then...
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:16:19 <elliott> Dammit.
11:16:21 <elliott> That's longer.
11:18:01 <elliott> Lymia: P.S. Stop using double-quoted strings, they're ugly. :p
11:18:16 <Lymia> k
11:18:27 <elliott> Hmmmm
11:18:37 <elliott> This is tricky.
11:18:44 <elliott> Wait.
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:18:53 <elliott> That's seventy-two bytes.
11:18:59 <elliott> Or is your...
11:19:02 <elliott> No, your record is seventy-one.
11:19:14 <Lymia> God.
11:19:18 <Lymia> Why did my brain come up with that idea?
11:19:26 <elliott> Lymia: Using p?
11:19:30 <Lymia> Yeah
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:19:52 <Lymia> Keyword abuse?
11:19:54 <Lymia> >.>
11:20:07 <elliott> hmm
11:20:10 <elliott> what on earth could his suffix be
11:20:16 <Lymia> elliott.
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:13 <Lymia> Hey.
11:21:23 <Lymia> If he didn't use it, ask him if he has the string "rint" in his program.
11:21:26 <lifthrasiir> i'm back, finally you found it... ;)
11:21:28 -!- ais523 has joined.
11:21:38 <lifthrasiir> (yes the first one is p-rint thing.)
11:21:41 * Lymia stabs lifthrasiir in the heart
11:21:50 * Lymia steals and eats said heart
11:21:55 <lifthrasiir> ugh
11:22:00 <elliott> now Lymia is the lizard queen
11:22:11 <elliott> hmmm
11:22:12 * Lymia gets heartburn
11:22:15 <elliott> what could the second thing be...
11:22:16 <Lymia> Too meaty.
11:22:25 <Lymia> We should go for 80 bytes.
11:23:14 <elliott> we've already got below that...
11:23:20 <Lymia> 70*]
11:23:25 <elliott> well, yes, that's the goal
11:23:25 <Lymia> **
11:23:32 <Lymia> Take it to PM?
11:23:32 <elliott> but we need to replicate lifthrasiir's achievement first :)
11:23:36 <elliott> naw
11:23:43 <elliott> nobody in here is going to run off with the solution or anything
11:23:50 <Lymia> Except me.
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:39 <Lymia> And then...
11:24:57 <ais523> elliott: what are you golfing, specifically?
11:25:12 <ais523> Deadfish?
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:28 <elliott> and 255+1 is never tested
11:25:34 <ais523> but 16*16 is?
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:38 <elliott> ais523: indeed
11:25:38 <lifthrasiir> yes
11:25:46 <elliott> the key to understanding the above is to note that python's input() evals
11:25:51 <elliott> [asterisk]Python's
11:25:54 <ais523> hmm, what an arbitrary set of conditions
11:26:02 <elliott> ais523: meh
11:26:04 <elliott> the h thing is irrelevant
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:26:59 <Lymia> God.
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:09 <elliott> that...
11:27:12 <elliott> Microsoft...
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:27:32 <Lymia> Oh.
11:28:13 <elliott> lifthrasiir: Can you reveal the first character of your prefix? :-D
11:28:22 <Lymia> elliott, hold on~
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:35 <lifthrasiir> elliott: nope. ;)
11:29:47 <Lymia> So, elliott.
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:29:59 <elliott> Lymia: eh?
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:24 <elliott> this is equal now
11:30:45 <elliott> oh wait
11:30:46 <lifthrasiir> i'm trying some alternative approaches, without success so far.
11:30:47 <elliott> still one char over
11:30:48 <Lymia> elliott, it is.
11:30:53 <elliott> still one char over
11:30:56 <Lymia> 0<n
11:31:00 <Lymia> n starts at 0
11:31:10 <Lymia> So...
11:31:16 <Lymia> It reaches -1
11:31:35 <elliott> eh?
11:31:48 <Lymia> 0<0 = false
11:31:49 <Lymia> So...
11:31:49 <Lymia> Oh.
11:32:01 <Lymia> 0<1 = true
11:32:01 <Lymia> Yeah
11:32:03 <Lymia> That works.
11:32:11 <lifthrasiir> one approach was scrapping while at all, but it is a lot longer...
11:32:54 <lifthrasiir> to scrap*
11:36:28 <Lymia> What types can be converted to int?
11:36:33 <Lymia> With no function calls.
11:39:19 <lifthrasiir> bool.
11:39:39 <lifthrasiir> other numbers will coerce the other int to the type of itself
11:43:11 <Lymia> elliott, hold on.
11:44:15 <elliott> Holding.
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 <Phantom_Hoover> ...
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:54:55 <oklofok> a seven to
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:04:42 <Lymia> What gives.
12:05:37 <ais523> and neither am I
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:10 <elliott> that was from 07.
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:10 <elliott> I don't know.
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:32 <Lymia> Make up?
12:08:33 <Lymia> ' 3'
12:08:43 <elliott> Lymia: you're 11.
12:08:48 <Lymia> Yes.
12:08:48 <lifthrasiir> Lymia: i think they are all represented in hexadecimal.
12:08:51 <elliott> thought so
12:09:07 <elliott> lifthrasiir: plausible :D
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:10:34 <Lymia> I'm curious.
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:00 <Lymia> Heh.
12:13:16 <Lymia> oklofok, stop using loic.
12:13:17 <Lymia> logic*
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:14:57 <oklofok> reduction!
12:14:58 <elliott> logic is irrelevant ofc
12:15:09 <oklofok> i used a reduction today
12:15:13 <oklofok> to prove P = NP
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:15:58 <Lymia> mmm
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:16:48 <Lymia> You're off by 2.
12:17:07 <elliott> 14 ;D
12:17:39 <Lymia> You're off by +-4
12:17:50 <elliott> 10
12:17:55 <Lymia> Yes.
12:17:57 <oklofok> wooo math prob
12:18:08 <elliott> right, sixteen is two off from ten
12:18:08 <oklofok> too hard tho
12:18:12 <elliott> LOGIC
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:35 <oklofok> she? are you femaly?
12:18:43 <Lymia> Anything below college and above kindergarten.
12:18:46 <oklofok> also *female
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:22 <oklofok> see, i'm a mathematician
12:20:27 <elliott> ,addquote all that text
12:20:36 <elliott> oh oklopol, you so wacky
12:20:43 <Lymia> elliott, I'm 14.
12:20:46 <oklofok> wiat what
12:20:48 <Lymia> You have been golfing with a little girl.
12:20:51 <Lymia> Pedophile.
12:20:55 <elliott> <elliott> 14 ;D
12:20:55 <elliott> <Lymia> You're off by +-4
12:20:57 <elliott> horrible lies :(
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:09 <elliott> that's not allowed : (
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:58 <oklofok> WAY different
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:24 <elliott> so many wasted years : (
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:48 <Lymia> asiekierka?
12:24:50 <Lymia> You know him?
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:31 <elliott> wat
12:25:49 <oklofok> ?
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:26:41 <Lymia> :(
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:28:42 <Phantom_Hoover> Oi!
12:28:52 <elliott> Phantom_Hoover: nooblet
12:29:17 <Lymia> oklofok, sickos.
12:30:04 <elliott> oklofok is it possible to die of laughter im just checking
12:30:15 <Lymia> elliott, yes.
12:30:27 <Lymia> Add water to mouth.
12:30:28 <Lymia> Laugh.
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:21 <Phantom_Hoover> <Lymia> I recall messing with Lego robotics.
12:31:32 <Phantom_Hoover> I once did that for work experience.
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:35:52 <oklofok> Phantom_Hoover: pedo
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:30 <Phantom_Hoover> Yeah, it makes you cheater.
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:40:33 <elliott> so... probably... no
12:41:01 <oerjan> ah. good point.
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:04 <oklofok> :o
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:42:41 <elliott> that would explain a lot.
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:43:41 <Lymia> elliott, well.
12:44:08 <Lymia> I've found an ASM patch to the Super Mario World ROM from... late 2008
12:44:10 <Lymia> Do I win?
12:44:10 <Lymia> :3
12:44:37 <ais523> Lymia: is it a golfed Deadfish interp in Python?
12:44:40 <ais523> if not, probably not
12:44:54 <Lymia> ais523, hey.
12:45:03 <ais523> hi
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:45:59 <Phantom_Hoover> oerjan, classical numerals or medieval?
12:46:11 <ais523> oerjan: that's probably a good thing, right?
12:46:13 <ais523> it might be TC
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:25 <Lymia> :
12:46:26 <Lymia> :v
12:46:44 <elliott> <ais523> it might be TC
12:46:48 <elliott> :D
12:46:49 <Lymia> I should revisit hacking at SMW's assembly some day.
12:46:50 <elliott> that would be so awesome
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:46 <elliott> Phantom_Hoover: SHOW
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:55 <elliott> ais523: no
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:02 <elliott> if you code
12:48:03 <Lymia> :(
12:48:04 <elliott> perfectly
12:48:06 <elliott> from the start
12:48:09 <elliott> then there's no embarrassment ever
12:48:11 <ais523> nobody codes perfectly from the start
12:48:14 <ais523> not even you
12:48:16 <Phantom_Hoover> elliott, says he who started with PHP.
12:48:24 <elliott> ais523: haha, what an amazing way to cover up for your insecurities
12:48:30 <elliott> wonderful denial
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:48:57 <elliott> ais523: yes.
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:21 <elliott> or you will be executed
12:50:30 <ais523> elliott: but the interpreter wouldn't itself be perfect
12:50:32 <ais523> due to being written in VBA
12:50:56 <elliott> then you die.
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:35 <Lymia> OK
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:19 <Sgeo> ^nr
12:52:28 <Phantom_Hoover> Lymia, hmm, have you made a Brainfuck derivative?
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:47 <elliott> not YET
12:52:50 <Lymia> Unless you count that really perverse thing I did for CraftBook.
12:52:55 <Phantom_Hoover> Lymia, that counts.
12:53:01 <ais523> because I was looking to explore new computational ground, I just used BF as a base
12:53:12 * Phantom_Hoover brick-brain transplants Lymia.
12:53:18 * Lymia is now bricked
12:53:19 -!- FireFly has joined.
12:53:28 * oerjan swats FireFly -----###
12:53:29 <Lymia> BOOT ERR 404: BRAIN NOT FOUND
12:53:51 <FireFly> What now?
12:53:59 <oerjan> THE TIME IS RIGHT
12:54:11 <oerjan> also, rapture in 5 days, i hear
12:54:18 <Phantom_Hoover> OFGLED BLEG FLOJMONT
12:54:26 <Lymia> oerjan, yes.
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:55:20 <Lymia> ais523, sure.
12:55:29 <elliott> what about maratreans
12:55:48 <Lymia> What?
12:55:51 <Lymia> oerjan, no.
12:56:16 <elliott> AGNOSTICS MUST PERISH
12:56:36 <Phantom_Hoover> elliott, I don't know about that.
12:56:49 <oerjan> maratreans, maytreyans and mithraists
12:57:15 <oerjan> *maitreyans
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:35 <Phantom_Hoover> Lymia, that doesn't look very BF-y at all.
12:58:41 <Lymia> Phantom_Hoover, heh.
12:58:46 <elliott> ais523: which are your bf derivatives, btw?
12:58:47 <Phantom_Hoover> It's stack based, after all.
12:58:53 <Lymia> The loop construct is kinda-BF-derived
12:58:56 * Phantom_Hoover reverses the brick-brain transplant.
12:59:08 * Lymia had a backup server in her torso
12:59:13 <ais523> elliott: reversible BF, DoFuck
12:59:19 <Phantom_Hoover> Although you are not forgiven for not using dc.
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:22 <Phantom_Hoover> I haven't made a Brainfuck derivative!
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:07 * Phantom_Hoover stares sternly.
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:11 <Lymia> Yes.
13:05:21 <elliott> OK, so we know there's a two-byte suffix.
13:05:27 <Lymia> that is known.
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:45 <elliott> what does it do 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:27 <Lymia> >< = the same...
13:07:35 <Phantom_Hoover> Lymia, no, that is not stupid enough.
13:07:42 <Lymia> k
13:07:49 <elliott> Lymia: BF operations don't look at more than one cell
13:07:54 <Lymia> elliott, right.
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:21 <elliott> Lymia: hideous
13:08:26 <elliott> ais523: it's been up for days
13:08:27 <Lymia> Let's make it?
13:08:35 <elliott> Lymia: no, I need to beat lifthrasiir first
13:08:42 <ais523> ah yes
13:08:55 <Lymia> elliott.
13:08:58 <Lymia> Try those prefixes.
13:09:00 <Lymia> Then try...
13:09:09 <elliott> the prefix is p, undoubtedly
13:09:12 <Lymia> Dunno.
13:09:14 <Lymia> postfixes*
13:09:27 <elliott> I'm still annoyed that
13:09:28 <elliott> p=0;i='+=1;(';d='-=(0<';o='rint(';s='*=p*(16!=';while 1:exec'p%sp)'%input()
13:09:29 <elliott> isn't it
13:09:32 <elliott> it seems so close
13:10:12 <Lymia> sp?
13:10:17 <oerjan> elliott: what about just p for suffix
13:10:17 <Lymia> Oh right.
13:10:21 <oerjan> no )
13:10:31 <ais523> !c printf("%d %d %d", 'i', 'o', 's');
13:10:34 <EgoBot> ​105 111 115
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:10:56 <EgoBot> ​105 100 111 115
13:11:04 <elliott> oerjan: well, no; I will
13:11:17 <Lymia> printf("%d %d %d %d", 'i', 'd', 'o', 's', 'h');
13:11:20 <elliott> hmm I think I have maybe
13:11:23 <Lymia> !c printf("%d %d %d %d", 'i', 'd', 'o', 's', 'h');
13:11:25 <EgoBot> ​105 100 111 115
13:11:28 <Lymia> !c printf("%d %d %d %d %d", 'i', 'd', 'o', 's', 'h');
13:11:30 <EgoBot> ​105 100 111 115 104
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:36 <elliott> nope
13:11:38 <Lymia> h = d
13:11:40 <Lymia> Actually.
13:11:40 <elliott> lengthens it
13:11:45 <Lymia> That WOULD be acceptable.
13:11:50 <Lymia> As long as o didn't follow.
13:12:05 <elliott> nothing follows h
13:12:36 <Lymia> Yep.
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 <oerjan> !help languages
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:17:36 <oerjan> no python :(
13:18:03 <oerjan> `run python -e 'print "test"
13:18:03 <Lymia> The most esoteric language of them all.
13:18:04 <HackEgo> No output.
13:18:05 <Lymia> English
13:18:06 <oerjan> `run python -e 'print "test"'
13:18:07 <HackEgo> No output.
13:18:13 <oerjan> f
13:18:22 <oerjan> `run python -c 'print "test"'
13:18:24 <HackEgo> ​test
13:18:39 <oerjan> `run python -c 'print (!2)'
13:18:40 <HackEgo> No output.
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:36 <elliott> "not"
13:19:39 <elliott> <oerjan> and can it be applied to a numeral?
13:19:39 <elliott> yes
13:19:40 <oerjan> bah
13:19:50 <elliott> and try egobot
13:19:51 <oerjan> elliott: well that doesn't help replace 0<
13:19:57 <elliott> I /think/ it has python?
13:20:00 <oerjan> EgoBot has no python, i said
13:20:00 <Lymia> elliott.
13:20:09 <Lymia> I highlight you.
13:20:12 <elliott> oerjan: it's not, not [exclamation mark]
13:20:28 <oerjan> elliott: I UNDERSTAND THAT YOU MORON
13:20:34 <Lymia> Also.
13:20:38 <Lymia> I just made the best quine ever.
13:20:42 <Lymia> #!/bin/cat
13:20:47 * oerjan is starting to get irritated again
13:20:55 <elliott> oerjan: o.o
13:21:06 <elliott> oerjan: uh, chill?
13:21:08 <elliott> Lymia: old
13:21:12 <Lymia> :[
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:11 <myndzi> |
13:22:11 <myndzi> /|
13:22:12 <oerjan> elliott: i _really_ shouldn't try programming when i'm in this mood
13:22:14 <Lymia> Is it line noise?
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:39 <elliott> [asterisk]sheesh
13:22:45 <Lymia> Can you cut out +1 support?
13:22:49 <Lymia> \o\
13:22:54 <Lymia> /o/
13:22:57 <Lymia> :[
13:22:59 <elliott> ais523: what's with the -- in the squaring?
13:23:00 <ais523> not obviously
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:24:03 <elliott> ais523: it never is
13:24:05 <elliott> so you don't have to
13:24:06 <elliott> well
13:24:10 <elliott> i don't think
13:25:13 <oerjan> elliott: this is ais523, lawful good programmer you're talking to :P
13:25:25 <ais523> elliott: it is
13:25:29 <ais523> in the third set
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:18 <elliott> oerjan: one
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:26:51 <elliott> for some XY
13:27:10 <oerjan> and you've tried p)
13:27:14 <elliott> yes
13:27:26 <elliott> and just plain p
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:02 <oerjan> right
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:28:51 <elliott> hmm
13:29:05 <elliott> it takes up bytes to have it there
13:29:09 <elliott> they don't pay their debt
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:30:57 <oerjan> ah
13:31:31 <Lymia> Only i i and o are used
13:31:33 <Lymia> Erm.
13:31:35 <Lymia> At the start
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:11 * tswett nods.
13:33:19 <elliott> tswett: wat
13:33:26 <oerjan> `run python -c 'print p'
13:33:27 <HackEgo> No output.
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:33:46 <elliott> in the third test
13:34:00 <oerjan> `run python -c 'p=q=0; print p' 2>&1
13:34:01 <HackEgo> ​0
13:34:09 <oerjan> `run python -c 'p=q=2; print p' 2>&1
13:34:10 <HackEgo> ​2
13:34:16 <oerjan> bah
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:52 <oerjan> (just checking)
13:35:58 <ais523> bleh, why can't you write $p** in order to square $p? it'd be consistent with ++ and --
13:36:01 * tswett nods.
13:36:07 <elliott> tswett: is that a script?
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:13 <ais523> bleh
13:36:13 * tswett nods.
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:27 <ais523> elliott: ?
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:40 <elliott> Yes.
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:37:05 <elliott> tswett a
13:38:02 <tswett> Now, that's just silly.
13:38:39 -!- HolyBlood has quit (Ping timeout: 260 seconds).
13:38:55 <Phantom_Hoover> ais523, quick, say "bleh"
13:39:01 <ais523> bleh
13:39:07 <Phantom_Hoover> Huh.
13:39:12 <Phantom_Hoover> Say "BLUH!"
13:39:19 <tswett> elliott: you forgot the colon.
13:39:45 <elliott> tswett: x
13:39:47 <elliott> tswett: x
13:39:47 <elliott> tswett: x
13:39:48 <elliott> tswett: x
13:39:48 <elliott> tswett: x
13:39:48 <elliott> tswett: x
13:39:48 <elliott> tswett: x
13:39:51 <elliott> tswett: x
13:39:51 * tswett nods.
13:39:52 <elliott> tswett: a
13:39:54 <elliott> tswett: a
13:39:56 <elliott> tswett: a
13:39:58 <elliott> tswett: a
13:40:00 <tswett> Whew. I've got it in for myself.
13:40:00 <elliott> tswett: a
13:40:03 <elliott> tswett: a
13:40:03 * tswett nods.
13:40:17 <tswett> My script is running hot.
13:40:18 * tswett nods.
13:40:26 <elliott> tswett is going to have a hell of a headache after this.
13:40:50 * tswett nods.
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:07 <elliott> oerjan: I think so.
13:43:15 <elliott> What were you thinking?
13:43:36 <oerjan> because otherwise you could cheat more, and use p<16 instead of p!=16
13:43:45 <elliott> heh
13:43:49 <elliott> I doubt it is that simple
13:43:51 <elliott> Lymia?
13:43:52 * tswett nods.
13:43:53 * tswett nods.
13:43:58 -!- BeholdMyGlory has joined.
13:44:19 <Lymia> elliott, I have school soon.
13:44:32 <elliott> PAH
13:44:35 <Lymia> elliott, mmm
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:45:17 <Lymia> Bye~
13:45:25 <elliott> WAY TOO LAZY
13:46:18 <oerjan> ->
13:47:08 <elliott> oerjan: <-
13:47:41 <Lymia> elliott, breaks test 2
13:47:41 <oerjan> nope ->
13:47:43 <Lymia> kbai
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:34 <myndzi> |
13:50:35 <myndzi> /<
13:50:40 <ais523> if only I could turn on auto newline hadnling
13:50:44 <ais523> *handling
13:50:46 * tswett applauds.
13:51:16 <FireFly> What's being golfed?
13:51:20 <ais523> Deadfish
13:51:41 <elliott> p=0;i='+=1';d='-=p>0';o='rint p';s='*=p*(p!=16)';while 1:exec'p'+input()
13:51:41 <elliott> gah
13:51:43 <elliott> one character
13:51:45 <elliott> one character...
13:52:00 <elliott> i think if he achieves size-four savings elsewhere
13:52:01 <elliott> it HAS to be in s
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:53:35 <elliott> brilliant
13:54:58 <ais523> I meant $.
13:55:00 <ais523> wrong variable name!
13:56:04 <elliott> how could you possibly mistake them
13:58:14 <variable> ais523: agreed
13:59:52 <elliott> ?
14:03:32 <variable> elliott: variable + name = agreed
14:04:59 <elliott> oh
14:29:16 <oerjan> `run python -c 'print 2&3'
14:29:17 <HackEgo> ​2
14:29:39 <oerjan> *=p-p&16
14:30:02 <oerjan> elliott: ^
14:30:06 <elliott> oerjan: wat
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 <oerjan> 32, i said
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:30 <oerjan> oh wait damn
14:31:38 <elliott> ?
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:26 <elliott> heh
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:37:21 <HackEgo> ​0
14:40:39 <lifthrasiir> what's going on?
14:41:10 <oerjan> lifthrasiir: we're trying to beat or at least tie you, of course
14:41:15 <oerjan> *tie with
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:30 <lifthrasiir> no, that's what i'm trying to figure out.
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:10 <lifthrasiir> ah, well
14:44:11 <oerjan> it would make i just 1+
14:44:22 <lifthrasiir> yes, the suffix is indeed "+p".
14:44:39 <elliott> hmm
14:45:04 <elliott> oerjan: er, no it wouldn't
14:45:06 <elliott> not with a one-byte prefix
14:45:12 <oerjan> oh um
14:45:17 <elliott> it'd make it =1
14:45:18 <oerjan> +=1+ then
14:45:21 <elliott> no
14:45:24 <elliott> just =1
14:45:25 <oerjan> er duh
14:45:34 <elliott> I wonder how minus fits into that
14:45:40 <oerjan> stupid brain
14:45:47 <elliott> p -= ... + p
14:45:49 <elliott> hmm
14:45:54 <oerjan> =(-p>0)
14:45:59 <oerjan> er
14:46:07 <oerjan> =(p<0)
14:46:13 <oerjan> argh
14:46:15 <elliott> ...
14:46:22 <oerjan> -(p>0)
14:46:24 <elliott> -=(p<0)*
14:46:27 <elliott> i think you mean
14:46:36 <elliott> erm p>0
14:46:39 <elliott> no?
14:46:42 <elliott> p -= (p>0) [times] +p
14:47:05 <oerjan> um i think =-(p>0) is what i'm aiming for
14:47:14 <elliott> same thing, isn't it
14:47:19 <lifthrasiir> do you really need a multiplication?
14:47:27 <oerjan> no, it's one char shorter
14:47:34 <elliott> lifthrasiir: aha, you might not
14:47:43 <elliott> right
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:04 <elliott> it's still longer :(
14:48:42 <lifthrasiir> well, how about p-=0<+p?
14:48:50 <elliott> ooh
14:48:51 <elliott> hey
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:18 <elliott> true :)
14:49:19 <elliott> ok now this just needs getting one char further down...
14:50:09 <elliott> hmm
14:50:12 <elliott> I think this might be the absolute minimum
14:51:03 <elliott> unless squaring can be shortened
14:51:11 <lifthrasiir> of the current approach.
14:51:21 <elliott> well, yes.
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:24 <elliott> hmm
14:53:42 <oerjan> well p&16 mapped all the ones before 16 to 0
14:54:13 <oerjan> but 17 breaks badly
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:27 <elliott> heh
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:29 <elliott> nice
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:06:09 <lifthrasiir> yeah, damn parentheses.
15:06:18 <lifthrasiir> wait
15:06:25 <lifthrasiir> it won't work for 17
15:06:32 <elliott> damn :)
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:02 <Phantom_Hoover> Grey Mist?
15:16:10 <elliott> It's this theme I once made.
15:25:43 <elliott> Found it.
15:29:41 <pikhq_> Glad to be of service.
15:29:48 <elliott> Thank you very much.
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:47 <lifthrasiir> yeah, just for fun.
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:11 <lifthrasiir> but the length 6-8 is too long...
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:40:51 <elliott> Maybe that's too much
15:40:57 <lifthrasiir> o = '!%&()*+,-./0123456789:;<=>[]^`p{|}~'
15:40:58 <lifthrasiir> po = '(+-.0123456789[`p{~'
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:10 <lifthrasiir> hmm, that's true for at least .
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:41 <elliott> is
15:42:42 <elliott> po = '(+-0123456789p~'
15:42:42 <elliott> o = '!%&()*+-/0123456789;<=>^p|~'
15:42:43 <elliott> feasible?
15:42:43 <elliott> erm
15:42:45 <elliott> without the ; in o
15:43:09 <lifthrasiir> more robust way would be generating the correct formula up to the fixed size, but it is cumbersome.
15:43:37 <elliott> yeah
15:51:36 <pikhq_> US debt limit, get!
15:52:29 <pikhq_> Unless Congress decides not to have a giant stick up its ass, the US will default in 11 weeks.
15:52:50 <elliott> cooooooooooooooooooool
15:52:58 <elliott> can the us go bankrupt
15:54:01 <pikhq_> Yes.
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:05:26 <lifthrasiir> and i'm tired of this now
16:05:38 <elliott> hmm
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:06:28 <wareya> I'm still laughin
16:06:29 <wareya> g
16:08:35 <elliott> ...
16:12:01 -!- augur has joined.
16:16:27 -!- Phantom_Hoover has joined.
16:19:19 <Phantom_Hoover> `quote
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:21 <Phantom_Hoover> pikhq_!
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:19:45 <Phantom_Hoover> AWESOME
16:33:11 <ais523> pikhq_: ouch
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:28 <Phantom_Hoover> `quote
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:36 <elliott> `quote
16:57:36 <elliott> `quote
16:57:37 <elliott> `quote
16:57:37 <elliott> `quote
16:57:38 <elliott> `quote
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:42:17 <Phantom_Hoover> http://i.imgur.com/DAM3y.jpg
17:42:19 <Phantom_Hoover> :(
17:46:33 <elliott> Saddest image.
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:48:19 <pikhq_> FTFY
17:48:37 <Phantom_Hoover> pikhq_, cynicism != wit.
17:48:47 <pikhq_> s/!=/==/
17:48:49 <pikhq_> FTFY
17:52:25 <quintopia> gregorface
17:53:10 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
17:53:14 -!- Phantom__Hoover has joined.
17:53:32 <Phantom__Hoover> OK are all Belkin routers crap.
17:53:37 <quintopia> yes
17:53:46 <Phantom__Hoover> I knew it.
17:55:16 -!- students has joined.
17:55:21 <elliott> students: how many
17:55:24 -!- students has changed nick to Lymee.
17:55:31 <Lymee> elliott: How goes golfing?
17:55:35 <Phantom__Hoover> Oh, I thought it was a bunch of bastards.
17:55:45 <Lymee> Hey!
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:55:58 <Lymee> Ah.
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:08 <Lymee> :)
17:56:11 <elliott> But that's quite difficult.
17:56:14 <elliott> So there's a lull.
17:56:25 <Phantom__Hoover> <Lymee> Hey!
17:56:27 <Lymee> Maybe.
17:56:28 <lifthrasiir> and i instead took up a haskell golf challenge instead. :p
17:56:36 <lifthrasiir> now at 114 bytes.
17:56:39 <monqy> ooh haskell golf
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:56:48 <Lymee> do it*
17:57:17 <elliott> Lymee: ?
17:57:25 <Phantom__Hoover> pikhq_
17:57:30 <Phantom__Hoover> Do you read Homestuck
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:00 <Phantom__Hoover> quintopia, a.k.a. /query elliott
17:59:08 <quintopia> ehehe
17:59:34 <elliott> Phantom__Hoover: aka esoteric-minecraft
17:59:38 <Lymee> Never mind
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:41 <Lymee> I'll be back...
17:59:41 <elliott> DUAL PURPOSE
17:59:44 <Lymee> When I get home
17:59:46 <Lymee> That's in 2-3 hours.
17:59:48 -!- Lymee has quit (Client Quit).
18:00:03 <Phantom__Hoover> elliott, pikhq isn't in -minecraft.
18:00:10 <quintopia> i need a gregor
18:00:21 <Phantom__Hoover> I might be a Gregor.
18:00:34 <Gregor> No one ever needs a Gregor.
18:01:36 <quintopia> gregor!
18:01:43 <quintopia> i need halps from you
18:01:50 <Gregor> No one ever needs halps from Gregor.
18:01:56 <quintopia> explox me the bfjoust cache file format
18:02:11 <elliott> what
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:31 <Phantom__Hoover> Homestuck.
18:02:43 <Phantom__Hoover> You've never even heard Sburban Jungle.
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:03:45 <Vorpal> elliott, ah
18:03:50 <elliott> ...
18:03:54 * elliott facepalm
18:04:05 <Vorpal> elliott, ?
18:04:28 <elliott> How did you forget that.
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:09 <Vorpal> this is gnome 2
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:38 <wareya> ajf: ragequat
18:15:45 <fizzie> Ho-hum; well, I don't recall offhand how it goes.
18:15:47 <wareya> did you miss it?
18:16:09 <ajf> yes
18:16:20 <ajf> *wondow switches and page-ups*
18:16:31 <wareya> no ajf
18:16:34 <wareya> general chatter page 2
18:16:42 <ajf> oh
18:16:47 <ajf> *checks*
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:15 <elliott> wtf is #gg2
18:17:20 <ajf> hey uh
18:17:21 <ajf> wareya
18:17:25 <wareya> yeah ajf what
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:26:58 <Phantom__Hoover> <ajf> could you give me mod powers in Mods?
18:27:00 <Phantom__Hoover> Zuh
18:33:26 -!- elliott has quit (Quit: Leaving).
18:33:36 -!- elliott has joined.
18:50:59 <wareya> something from another community
18:51:02 <wareya> long story
18:51:49 -!- azaq23 has joined.
18:58:46 -!- ajf has changed nick to ajfafk.
19:08:52 -!- oerjan has joined.
19:14:43 <Phantom__Hoover> http://en.wikipedia.org/wiki/List_of_numbers
19:16:51 <Phantom__Hoover> Courtesy of xkcd, the most hilarious article.
19:17:38 <elliott> Hey, I linked that days ago.
19:17:42 <elliott> Maybe even a week or two.
19:18:03 <elliott> I even quoted " This list is incomplete; you can help by expanding it.".
19:18:09 <elliott> [asterisk]"This
19:18:39 <oerjan> maybe randall is lurking on the channel
19:18:58 <elliott> ugh
19:19:07 <elliott> let's drive him away
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:21:42 <FireFly> I am?
19:21:46 <FireFly> That's new to me
19:21:55 <oerjan> IT HAS BEEN RUMORED
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:25:47 <monqy> that's brilliant
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:08 <Phantom__Hoover> Back.
19:32:20 <Phantom__Hoover> This break brought to you by: paternal idiocy.
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:39 <ais523> so, what happened?
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:08 <Phantom__Hoover> No, he unplugged the router after that.
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:40:39 <oerjan> *thought
19:41:17 <Phantom__Hoover> `quote
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:40 <elliott> obviously
19:41:45 <ais523> elliott: you and your mentions of vagrant
19:41:48 <ais523> `quote
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:09 <elliott> <oerjan> *thought
19:42:13 -!- Phantom__Hoover has joined.
19:42:14 <elliott> define adult? :-P
19:43:08 <Phantom__Hoover> I like the contrast between those two quotes.
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:44:36 <Phantom__Hoover> -10.
19:44:52 <Phantom__Hoover> I kid, I kid.
19:44:57 <Phantom__Hoover> It's -23.
19:45:03 <Phantom__Hoover> I'm all hydrogen ions.
19:45:36 <Phantom__Hoover> Wait, that makes a sixth of me hydrogen ions.
19:46:19 <Phantom__Hoover> -23.7.
19:50:29 <Phantom__Hoover> Phantoms do not care about electrostatic repulsion.
19:50:43 <elliott> X-D
19:56:30 <elliott> ais523: I don't suppose you happen to know how slow a segfault is? :P
19:56:37 <ais523> I don't
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:46 <ais523> possibly a bit more
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:08 <elliott> that's the last resort :>
19:58:24 <elliott> I'm basically wondering about it as a memory allocation strategy
19:58:38 <quintopia> alright guys. degree survey time.
19:58:41 <monqy> good memory allocation strategy
19:58:49 <quintopia> in your opinion, what are my program's greatest strengths?
19:58:53 <quintopia> weaknesses?
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:02:45 <elliott> it expands it and resumes
20:02:46 <elliott> or
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:46 <elliott_> <elliott> or
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:15 <elliott_> awesome or awesome
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:07:14 <monqy> cute page
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:26 <fizzie> ume.
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:20:03 <elliott_> night
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:36:48 <pikhq_> One more test!
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:15 <lambdabot> arising f...
20:40:22 <oerjan> oops
20:40:27 <oerjan> @check \x y -> (x+y)^2 == x^2+2*x*y+y^2
20:40:27 <lambdabot> "OK, passed 500 tests."
20:40:36 <oerjan> TESTED OK
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:18 <oerjan> :D
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:25 <Phantom__Hoover> And the gold prize goes to: oerjan!
20:49:47 <oerjan> so how soon will you be moving?
20:50:38 <Phantom__Hoover> Well, I go to university in a year and a bit.
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:00:35 <Phantom__Hoover> Because his dad is a nutcase.
21:02:25 <monqy> did parental stupidity find out about your router not being unplugged
21:02:31 <Phantom__Hoover> Yes.
21:02:46 <olsner> you should get wireless
21:02:52 <Phantom__Hoover> I have got wireless.
21:02:55 <Phantom__Hoover> It's just terrible.
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:32 <monqy> nice
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:07:07 <olsner> poor Sgeo
21:07:24 <Phantom__Hoover> Remind me why Sgeo's dad did that.
21:08:00 <pikhq> Something about being able to live at home and it'd be cheap.
21:08:03 <Phantom__Hoover> Ah.
21:08:14 <Phantom__Hoover> Yeah, that's not happening to me.
21:08:30 <pikhq> Cheap doesn't help you if your degree only barely qualifies you to flip burgers.
21:08:43 <monqy> business burgers
21:08:50 <pikhq> monqy: With Visual Basic.
21:08:51 <monqy> get into management in no time
21:09:03 <monqy> mmmm visual basic
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:09:26 <Phantom__Hoover> ...XD
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:23:51 <olsner> hehe, which group?
21:24:26 <ais523> rec.humor.oracle.d
21:27:22 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
21:28:32 <Phantom__Hoover> OK Problem Sleuth is hilarious.
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:03 <Phantom__Hoover> `addquote <Sgeo> Oracle's awesome
21:54:05 <HackEgo> ​424) <Sgeo> Oracle's awesome
21:54:28 * Sgeo sets Phantom__Hoover on fire
21:54:53 <Phantom__Hoover> Sgeo, remind me, have you made a BF derivative?
21:54:58 <Sgeo> Yes
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:55:28 * Phantom__Hoover brickbrains Sgeo.
21:55:51 <Phantom__Hoover> Oh, and it's a stupid BF derivative too!
21:55:59 * Phantom__Hoover gets another brick.
21:56:04 <Phantom__Hoover> THEM'S THE RULES
21:56:17 <Sgeo> zzo38 likes it
21:56:37 <Sgeo> Or, at least, used it in one of his languages
21:56:39 <Phantom__Hoover> Oh, right. Well, I respect zzo's opinion completely.
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:10 <oerjan> what, *ZOT*ing?
21:58:16 <ais523> yep
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:15 * Phantom__Hoover → sleep
22:44:19 -!- Phantom__Hoover has quit (Quit: Leaving).
22:44:58 <CakeProphet> bash is an interesting language.
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:53:03 <zzo38> It is your axe
23:57:27 -!- augur has quit (Remote host closed the connection).
23:59:41 -!- TeruFSX2 has joined.
2011-05-17
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:51:36 <CakeProphet> "Uh, sorry, my phone is in the shop."
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:04:23 <CakeProphet> Sgeo: have you heard of the game Magicka?
01:04:32 <Sgeo> Now I have
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:34 <CakeProphet> hahaha, nice
01:08:47 <CakeProphet> but yeah, it's a great game despire various buginess.
01:16:44 <CakeProphet> what's an awesome bash command?
01:16:51 <coppro> yes
01:17:17 <CakeProphet> ...lolwat
01:17:27 <CakeProphet> why would you use that.
01:17:49 <CakeProphet> Report yes bugs to bug-coreutils@gnu.org
01:17:57 <CakeProphet> ...what kind of bugs could there possibly be.
01:18:33 <Sgeo> yes | rm -rfi
01:18:42 <CakeProphet> ...oooh
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:20:41 <Sgeo> yes
01:21:00 <Sgeo> yes no
01:21:22 <Sgeo> yes everything I type in here will now be prefixed with yes
01:21:33 <CakeProphet> hmmm, so it's mesg y by default?
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:30:12 <oklofok> *oracles
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:38 <oklofok> iirc also PSPACE
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:40:58 <CakeProphet> ...wat
01:41:08 <CakeProphet> you ordered a jpeg?
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:38 <oklofok> silly?
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:01:38 <Sgeo> Oops
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:12 <oklofok> :D
02:07:17 * Sgeo goes to read a manual
02:07:20 <oklofok> exactly!
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:15:09 <CakeProphet> you know what sounds fun: parsing Perl.
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:17:36 <CakeProphet> but the second class sounds more fun.
02:19:05 <CakeProphet> $x = 3 / 2 // // / 3
02:19:21 <CakeProphet> the first // is defined-or, the second // is an empty pattern. :)
02:20:38 <CakeProphet> the / is division, thrown in for fun.
02:42:48 -!- augur has joined.
02:45:12 -!- augur has quit (Remote host closed the connection).
02:49:40 -!- calamari has joined.
03:01:27 * Lymia winces
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:14 <NihilistDandy> You can call me daddy, anytime
03:55:26 <oklofok> oh i'm gonna call you daddy bigtime
03:55:30 -!- augur has joined.
03:55:39 <NihilistDandy> Oof
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:20 <pikhq_> Sgeo: Sufficient.
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:24:18 <pikhq_> Wax generally isn't.
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:29:17 <zzo38> Yes
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:16:20 <coppro> *nim
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:19:56 <Sgeo> IT WORKED
09:37:40 -!- oerjan has joined.
09:42:11 -!- Patashu has joined.
10:31:06 -!- BeholdMyGlory has quit (Remote host closed the connection).
10:58:19 <cheater_> status
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:27 <Phantom_Hoover> Aww.
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:23 <elliott_> Is that with that VM thing?
14:32:28 * elliott_ clicks
14:32:32 <elliott_> Because if so, it just talks to a remote -
14:32:33 <elliott_> Oh.
14:33:00 <elliott_> I wonder how fast it is.
14:33:15 <elliott_> lmao, someone checked the system specs
14:33:29 <elliott_> Booting Linux (Score:3)
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:33:58 <ais523> probably
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:31 <ais523> haha
14:36:43 <ais523> the same principle as the one behind node.js, just evilly backwards?
14:36:46 <cheater__> yes
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:34 <ais523> indeed
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:38:32 <ais523> bleh, they should
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:48:20 <Phantom_Hoover> Web Sockets?
14:49:00 <elliott_> jfgi
14:49:06 <elliott_> technically WebSockets
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:20 <lambdabot> forall b. [b] -> [(b, b)]
15:04:29 <elliott_> What copumpkin said.
15:04:32 <copumpkin> :t zipWith ?f `ap` tail
15:04:33 <lambdabot> forall b c. (?f::b -> b -> c) => [b] -> [c]
15:04:34 <elliott_> Combine with uncurry.
15:04:41 <elliott_> Oh, or what copumpkin said.
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:03 <Vorpal> :t ap
15:05:04 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b
15:05:09 <Vorpal> *blink*
15:05:14 <elliott_> ap is generalised S combinator ;)
15:05:19 <Vorpal> ah
15:05:23 <cheater__> *an
15:05:32 <elliott_> (Said with tongue in cheek.)
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:46 <elliott_> ?src ap
15:05:46 <lambdabot> ap = liftM2 id
15:05:52 <elliott_> ?src liftM2
15:05:52 <lambdabot> liftM2 f m1 m2 = do { x1 <- m1; x2 <- m2; return (f x1 x2) }
15:05:55 <elliott_> :t liftM2
15:05:56 <lambdabot> forall a1 a2 r (m :: * -> *). (Monad m) => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r
15:06:12 <Vorpal> mhm
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:43 <lambdabot> [3,5,7,9,11,13]
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:22 <Vorpal> yeah easy to fix
15:08:23 <ais523> what does zip do if the two lists aren't the same length? just discard extra elements?
15:09:06 <elliott_> > zip [9,9,9] [0,0]
15:09:07 <lambdabot> [(9,0),(9,0)]
15:09:18 <elliott_> > zip [0,0] [9,9,9]
15:09:18 <lambdabot> [(0,9),(0,9)]
15:09:22 <elliott_> So: yes.
15:09:27 <elliott_> There's nothing else it /could/ do.
15:09:38 <ais523> @pl \x -> zip x (tail x)
15:09:38 <lambdabot> ap zip tail
15:09:44 <ais523> just as I suspected
15:09:54 <ais523> actually, ap isn't the S combinator, liftM2 is
15:09:55 <ais523> ap is \si
15:09:58 <ais523> * `si
15:09:59 <Vorpal> hm worst algorithm to get length of string ever
15:10:04 <elliott_> Erm, no, ap is S.
15:10:15 <elliott_> ?pl \x y z -> x z (y z)
15:10:15 <lambdabot> ap
15:10:25 <elliott_> ?unpl ap
15:10:25 <lambdabot> (\ d e -> d >>= \ b -> e >>= \ a -> return (b a))
15:10:27 <elliott_> Erm
15:10:29 <Vorpal> > (x:xs) = tail (zip [1..] "foobar"); x
15:10:30 <lambdabot> <no location info>: parse error on input `='
15:10:32 <Vorpal> err
15:10:34 <ais523> @pl \x y z -> (x z) (y z)
15:10:34 <lambdabot> ap
15:10:35 <elliott_> ?unpl ap :: functions
15:10:35 <lambdabot> (\ d e -> d >>= \ b -> e >>= \ a -> return (b a)) :: functions
15:10:37 <elliott_> lol
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 <Vorpal> wait
15:10:47 <elliott_> ais523: <elliott_> ?pl \x y z -> x z (y z)
15:10:47 <elliott_> <lambdabot> ap
15:10:48 <Vorpal> not tail
15:10:49 <elliott_> I just showed that :P
15:10:52 <Vorpal> what is last element now again
15:10:56 <elliott_> Vorpal: last
15:10:57 <ais523> elliott_: ah, right
15:10:58 <Vorpal> right
15:11:00 <elliott_> :t ap
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:06 <lambdabot> (6,'r')
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 <ais523> :t ap
15:11:31 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b
15:11:34 <elliott_> Vorpal: fst
15:11:40 <Vorpal> yeah
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:47 <lambdabot> against inferred type `GHC.Ty...
15:11:48 <Vorpal> err
15:11:52 <elliott_> Nope.
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:11:59 <Vorpal> :t fst
15:12:00 <elliott_> (last (zip [1..] "foobar")) isn't a function.
15:12:00 <lambdabot> forall a b. (a, b) -> a
15:12:03 <elliott_> So how can you compose a function with it?
15:12:06 <Vorpal> > fst $ last (zip [1..] "foobar")
15:12:06 <lambdabot> 6
15:12:10 <Vorpal> there
15:12:12 <ais523> > ap id id (ap id id)
15:12:12 <lambdabot> Occurs check: cannot construct the infinite type: a = a -> b
15:12:13 <elliott_> Vorpal: Better:
15:12:14 <ais523> bleh
15:12:30 <elliott_> > fst . last . zip [1..] $ "foobar"
15:12:31 <elliott_> Vorpal:
15:12:31 <lambdabot> 6
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:48 <elliott_> It is.
15:12:52 <ais523> :t ap id id
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:04 <Vorpal> ;P
15:13:05 <ais523> oh right, Haskell can't type the X combinator
15:13:37 <Vorpal> ?src length
15:13:37 <lambdabot> Source not found. Take a stress pill and think things over.
15:13:40 <Vorpal> err
15:13:41 <ais523> > foldl (+) map (const 1) $ "foobar"
15:13:42 <lambdabot> Couldn't match expected type `[(a -> b) -> [a] -> [b]]'
15:13:42 <lambdabot> against inf...
15:13:48 <ais523> umm, I've messed that up slightly
15:13:50 <Vorpal> :t length
15:13:50 <lambdabot> forall a. [a] -> Int
15:13:52 <ais523> :t const
15:13:53 <Vorpal> so
15:13:53 <lambdabot> forall a b. a -> b -> a
15:13:57 <elliott_> <ais523> oh right, Haskell can't type the X combinator
15:14:00 <elliott_> It can with a newtype or two.
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:05 <lambdabot> against inferred type `GH...
15:14:07 <elliott_> List fusion is excellent, so it's possible.
15:14:13 <Vorpal> elliott_, ah
15:14:15 <ais523> inferred type `GH...?
15:14:17 <elliott_> Probably not down to length directly, though.
15:14:22 <Vorpal> ah
15:14:27 <elliott_> ais523: GHC.Any, probably
15:14:32 <elliott_> Or GHC.Char or something
15:14:32 <ais523> > (foldl (+)) . (map (const 1)) $ "foobar"
15:14:33 <lambdabot> Overlapping instances for GHC.Show.Show ([[t]] -> [t])
15:14:33 <lambdabot> arising from a us...
15:14:48 <elliott_> Prelude> foldl (+) (map (const 1)) $ "foobar"
15:14:48 <elliott_> <interactive>:1:29:
15:14:48 <elliott_> Couldn't match expected type `[a0] -> [b0]' with actual type `Char'
15:14:49 <elliott_> Expected type: [[a0] -> [b0]]
15:14:49 <elliott_> 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:14:58 <elliott_> <interactive>:1:8:
15:15:00 <elliott_> No instance for (Num [b0])
15:15:02 <elliott_> arising from a use of `+'
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:15 <ais523> aha
15:15:22 <elliott_> > sum . map (const 1) $ "foobar"
15:15:23 <lambdabot> 6
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:28 <elliott_> ?src sum
15:15:28 <lambdabot> sum = foldl (+) 0
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:40 <lambdabot> 6
15:15:42 <elliott_> hmm, why isn't sum foldl'
15:15:43 <elliott_> that's stupid
15:15:43 <ais523> I keep forgetting the semantics of .
15:15:56 <ais523> elliott_: in case you sum an empty list
15:16:10 <elliott_> ais523: ...
15:16:16 <ais523> > sum []
15:16:16 <lambdabot> 0
15:16:17 <elliott_> ais523: That's foldl1.
15:16:22 <elliott_> ?src foldl'
15:16:22 <lambdabot> foldl' f a [] = a
15:16:22 <lambdabot> foldl' f a (x:xs) = let a' = f a x in a' `seq` foldl' f a' xs
15:16:29 <ais523> ?src foldl
15:16:29 <lambdabot> foldl f z [] = z
15:16:29 <lambdabot> foldl f z (x:xs) = foldl f (f z x) xs
15:16:41 <ais523> ?src seq
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:16:48 <ais523> what does seq do?
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:03 <elliott_> :t seq
15:17:04 <lambdabot> forall a t. a -> t -> t
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:14 <elliott_> ais523: Sort of.
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:38 <ais523> ah, OK
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:50 <elliott_> (And then b.)
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:13 <ais523> my guess is no
15:18:15 <elliott_> Imagine const x (a `seq` b)
15:18:27 <elliott_> Or const x (foldl ... (... ... (_|_ `seq` x) ...) ...)
15:18:29 <elliott_> )
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:18:54 <elliott_> Yes.
15:18:58 <elliott_> Because it could also be _|_.
15:19:02 <ais523> ah, I see
15:19:03 <elliott_> () `seq` x = x
15:19:06 <elliott_> _|_ `seq` x = _|_
15:19:23 <elliott_> :t foldr seq ()
15:19:24 <lambdabot> forall a. [a] -> ()
15:19:25 <ais523> so the left-hand value is just used uselessly, in a way
15:19:32 <elliott_> :t \x -> foldr seq x
15:19:32 <lambdabot> forall a b. b -> [a] -> b
15:19:37 <ais523> > (4/0) seq ()
15:19:38 <lambdabot> Infinity
15:19:38 <elliott_> :t flip foldr seq
15:19:39 <lambdabot> forall a a1 b. (a -> (a1 -> b -> b) -> a1 -> b -> b) -> [a] -> a1 -> b -> b
15:19:43 <ais523> wait what?
15:19:46 <elliott_> ais523: `seq`
15:19:47 <ais523> oh, I forgot the quotes
15:19:55 <ais523> now I'm wondering why that typed at all
15:20:00 <ais523> > (4/0) `seq` ()
15:20:00 <lambdabot> ()
15:20:02 <elliott_> ais523: lambdabot has function instances for Num, I think
15:20:05 <elliott_> although that's Floating
15:20:06 <elliott_> god knows
15:20:07 <ais523> > (4::Int/0) `seq` ()
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:17 <lambdabot> arising from a use o...
15:20:21 <elliott_> ITYM `div`
15:20:26 <elliott_> > (9 `div` 0) `seq` ()
15:20:26 <lambdabot> *Exception: divide by zero
15:20:30 <ais523> ah, you can't divide an Int?
15:20:31 <elliott_> i.e. _|_
15:20:34 <ais523> yep
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:12 <elliott_> There's also quot for 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:08 <lambdabot> (-2,-1)
15:22:09 <elliott_> It affects the rounding, yes.
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:26:49 <elliott_> "Uh."
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:40 <Phantom_Hoover> elliott_, oi, Haskellwiki.
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:29:11 <elliott_> The old one was terrible.
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:40 <Vorpal> or hm
15:31:41 <Vorpal> wait
15:31:45 <Vorpal> I misread the ghc error
15:31:46 <Vorpal> nvm
15:31:55 <ais523> elliott_: I made it a redirect
15:32:07 <Phantom_Hoover> elliott_, RationalWiki is an exception, predictably.
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:01 <ais523> do you have a link?
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:26 <elliott_> It does.
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:09 <elliott_> Deewiant: Wat?
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:37:37 <ais523> elliott_: haha
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:20 <elliott_> Sleek-ifi-itude.
15:40:22 <elliott_> i-FY-itude.
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:26 <elliott_> Well, UHC might be.
15:42:31 <elliott_> Hmm, seems so.
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:43 <Vorpal> Gregor, lol
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:12 <elliott_> Gregor: X-D
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:44:57 <Vorpal> elliott_, ah
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 <Gregor> LibClang 0.0.8
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:30 <Gregor> lololol
15:45:37 <elliott_> Gregor: what?
15:45:41 <Vorpal> elliott_, ah
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:27 <Gregor> Yes. "Partially"
15:46:32 <Vorpal> elliott_, ah, quite new then
15:46:48 <elliott_> The LibClang package
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:01 <elliott_> At least the binding doesn't.
15:47:14 <Gregor> You guys FAIL SO HARD.
15:47:16 <Vorpal> bbl
15:47:21 <elliott_> Gregor: Define you guys.
15:47:24 <elliott_> Me?
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:54 <Gregor> *parsing
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:10 <elliott_> Yep.
15:49:20 <elliott_> Maybe there are some non-parsing functions there, but it's certainly not obvious that there are.
15:49:22 <Gregor> BLAR BLAR BLAR.
15:49:26 <Gregor> I say BLAR BLAR!
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:49:58 <elliott_> HOKAY
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:50:52 <Gregor> True.
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:06 <elliott_> Vorpal: talk:main page
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:55:46 <Vorpal> eh
15:55:51 <CakeProphet> I am a space ship.
15:56:00 <elliott_> Vorpal: Yes.
15:56:08 <elliott_> Timwi wants to be a sysop so he can make a new default skin.
15:56:25 <CakeProphet> sounds reasonable to me.
15:56:37 <CakeProphet> but, then again, I am a space ship.
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:13 <Vorpal> this must be a joke
15:58:23 <ais523> Vorpal: indeed
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:20 <Vorpal> oh my
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
15:59:42 <elliott_> oh
15:59:45 <elliott_> ais523's edit was saved
15:59:46 <elliott_> phew
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_> With
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:35 <elliott_> Vorpal: Improvements.
16:06:40 <Vorpal> elliott_, gee thanks
16:06:40 <elliott_> Come on, it's just a
16:06:42 <elliott_> $ darcs get http://code.haskell.org/haskellmode-emacs/ haskell-mode
16:06:42 <elliott_> away
16:06:48 <Vorpal> elliott_, and installing that
16:06:51 <elliott_> Vorpal: No?
16:06:54 <Vorpal> which I forgot how to do
16:06:54 <elliott_> Just "load" instead of "require".
16:07:00 <Vorpal> right that ws it
16:07:01 <Vorpal> was*
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:18 <CakeProphet> mmm hooks
16:08:41 <CakeProphet> I've never been able to get myself to use emacs.
16:08:49 <CakeProphet> or vim for that matter.
16:09:05 <Vorpal> how do you precompile *.elc now again...
16:09:10 <CakeProphet> I use gedit for most programming tasks.
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:54 <Vorpal> okay
16:09:58 <elliott_> hmm,
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:44 <fizzie> "Pico forevar!"
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:51 <Vorpal> fizzie, nano
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:04 <elliott_> Vorpal: SEE ABOVE
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:21 <elliott_> that would be amusing
16:11:28 <elliott_> including the automatic date insertion stuff
16:11:37 <CakeProphet> I have a wine notepad...
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:11 <elliott_> CakeProphet: True :P
16:12:17 <Vorpal> elliott_, post-XP?
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 <CakeProphet> yeah I figured.
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:24 <elliott_> kate is a pain in gnome
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:13:39 <Vorpal> XD
16:13:44 <CakeProphet> I have never used kate, actually.
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:14:57 <CakeProphet> I edit with Perl, duh.
16:15:22 <elliott_> ais523: leaden :)
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:38 <Vorpal> ais523, sg?
16:15:42 <Vorpal> oh scapegoat?
16:15:42 <ais523> Vorpal: scapegoat
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:46 <Vorpal> right
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:14 <elliott_> quintopia: ...
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:20:19 <Vorpal> fizzie, heh
16:23:08 <CakeProphet> hmmm.. I might start using Emacs
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:12 <elliott_> (i.e. the modes)
16:25:23 <CakeProphet> but jesus these tutorials are obnoxious.
16:25:40 <elliott_> You're not reading the built-in tutorial are you?
16:25:56 <CakeProphet> I'm reading the "tour"
16:26:13 <elliott_> http://www.gnu.org/software/emacs/tour/?
16:26:17 <CakeProphet> yes that.
16:26:24 <elliott_> It looks stupid.
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:32 <CakeProphet> ...M-x is such an awkward key combination
16:27:45 <elliott_> M-x isn't used very often
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:02 <Vorpal> or thumb for both
16:28:06 <Vorpal> hm true
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:28:52 <elliott_> What's old about it
16:28:58 <elliott_> (What's simple about it)
16:29:08 <Vorpal> elliott_, "simply*"
16:29:15 <Vorpal> but old, check functions
16:29:16 <Vorpal> foo(bar)
16:29:22 <Vorpal> int bar
16:29:26 <elliott_> Yes?
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:28 <elliott_> Emacs is coded like that.
16:29:34 <Vorpal> elliott_, !!
16:29:42 <elliott_> You realise Emacs was mature in the eighties, right?
16:29:45 <Vorpal> yes
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 <Vorpal> bbl
16:29:58 <elliott_> You don't have to remember THAT many.
16:30:00 <Vorpal> need to turn off computer
16:30:03 <Vorpal> thunderstorm
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:56 <CakeProphet> me too.
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:14 <elliott_> C-s is a godsend.
16:31:25 <CakeProphet> which is?
16:31:28 <elliott_> Incremental search.
16:31:40 <CakeProphet> ah.
16:31:47 <elliott_> CakeProphet: Anyway, Emacs is actually older than cursor keys. :p
16:31:54 <elliott_> (Well, hmm.)
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:20 <elliott_> Oh, I see what you mean.
16:33:25 <CakeProphet> I'm talking about the interface... hahaha
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:10 <elliott_> Not really.
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:42 <elliott_> What's replace-query
16:34:48 <elliott_> I don't even have that command here
16:35:02 <elliott_> Oh, there's query-replace
16:35:03 <CakeProphet> ...I don't know, but this tour thing mentions it. it's C-% I think?
16:35:06 <CakeProphet> maybe M-%
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:55 <HackEgo> No output.
16:35:57 <elliott_> CakeProphet: replace-string just does it unconditionally.
16:36:59 <CakeProphet> ah okay.
16:37:14 <CakeProphet> what was the F for in that C-h command?
16:37:31 <elliott_> Look up command.
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:13 <elliott_> C-h f is function.
16:38:20 <elliott_> And, uhh, commands are functions?
16:38:23 <elliott_> So I guess... so?
16:38:24 <CakeProphet> ah okay.
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:08 <CakeProphet> ...nice.
16:39:15 <elliott_> But then you'd have to remember C-x C-c to quit.
16:39:25 <CakeProphet> oh god...
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:25 <Deewiant> ed is worse than vi, I'd say
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:31 <Deewiant> But perhaps less canonical
16:40:32 <elliott_> What? ed's just "q".
16:40:35 <elliott_> vi requires a COLON in front.
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:06 <elliott_> fizzie: Step one: Panic.
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:44 <CakeProphet> ...I lol'd.
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:09 <CakeProphet> okay so what is c-x?
16:42:10 <elliott_> ais523: fail
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:26 <elliott_> Guess what C-c is?
16:42:27 <elliott_> That's right, ^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:33 <ais523> but vi is very modal
16:42:38 <ais523> as is vim
16:42:41 <elliott_> Ctrl+X literally does nothing.
16:42:46 <elliott_> I doubt that's to help out Emacs users.
16:42:53 <elliott_> vim doesn't use Ctrl much.
16:42:59 <CakeProphet> I mean what C-x in emacs.
16:43:03 <CakeProphet> +is
16:43:09 <elliott_> CakeProphet: ?
16:43:12 <elliott_> CakeProphet: Oh.
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:33 <CakeProphet> so it's like... super-alt? :P
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:43:54 <elliott_> Deewiant: Heh.
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:29 <ais523> elliott_: indeed
16:44:36 <CakeProphet> .....waaaat. why.
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:02 <CakeProphet> ah, escape as in escape sequence.
16:45:03 <elliott_> erm.
16:45:04 <elliott_> Alt+x is, VT[one hundred]-wise, just ESC, followed by x.
16:45:08 <elliott_> ais523: "over telnet"?
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:14 <CakeProphet> ...awesome. :)
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:46:58 <elliott_> [asterisk]imperceptible
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:48:34 <elliott_> TRUE CHRONOLOGIES
16:49:17 <CakeProphet> is there anything in emacs that REQUIRES the use of a mouse?
16:49:28 <Deewiant> fizzie: Mayhap
16:49:32 <CakeProphet> I notice that the "open file" option has no key combination next to it.
16:49:44 <elliott_> CakeProphet: C-x C-f
16:49:51 <elliott_> Nobody uses the toolbar or menu.
16:49:53 <elliott_> Nobody.
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:25 <CakeProphet> elliott_: it looks pretty awful.
16:50:38 <elliott_> CakeProphet: You can turn them off in your ~/.emacs.
16:50:45 <elliott_> I don't think anyone doesn't.
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:48 <CakeProphet> yeah I'll look into it soon.
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:02 <elliott_> i.e.
16:52:04 <elliott_> ....x
16:52:04 <CakeProphet> ......whut. yes, that needs to go.
16:52:09 <elliott_> ============x
16:52:12 <elliott_> ========....y
16:52:16 <elliott_> ================z
16:52:21 <CakeProphet> ...oh god.
16:52:22 <elliott_> ========....y
16:52:23 <elliott_> ....x
16:52:27 <elliott_> Where . is space and = is a tab.
16:52:29 <elliott_> Erm.
16:52:33 <Deewiant> Eight =s are 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:35 <elliott_> Right.
16:52:45 <ais523> does that count as using the menu in the sense you were referring to?
16:52:49 <elliott_> ais523: Not really.
16:53:02 <ais523> good, I think
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:36 <elliott_> CakeProphet: Depends.
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:15 <elliott_> ais523: ugh
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:55:41 <CakeProphet> elliott_: I prefer spaces honestly.
16:55:49 <elliott_> ais523: Troll.
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:05 <CakeProphet> ...oh god. tab/spaces flamewar?
16:57:10 <elliott_> CakeProphet: no
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:28 <Deewiant> I'm pretty sure of it
16:58:34 <CakeProphet> it's been my experience that in modern programming spaces-only is preferred.
16:58:40 <elliott_> Deewiant: Uh, no.
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:17 <CakeProphet> halp! C-x C-f isn't doing anything.
17:01:23 <ais523> CakeProphet: the difference is subtle enough that setq will generally normally work, but is nonetheless incorrect
17:01:32 <elliott_> CakeProphet: Yes it is.
17:01:37 <elliott_> Look at the bottom of the window.
17:02:04 <CakeProphet> oh hey! that was cut off.
17:03:58 <CakeProphet> oh okay. there's .emacs and then .emacs.d
17:04:15 <elliott_> .emacs.d is just zis directory, you know?
17:04:38 <CakeProphet> ...uh, so, C-v is paste I'm hoping?
17:04:44 <Phantom_Hoover> No.
17:04:46 <Phantom_Hoover> C-y
17:04:48 <Phantom_Hoover> Kind of.
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:47 <CakeProphet> .........
17:05:48 <elliott_> (To the X selection.)
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:46 <CakeProphet> oh wait
17:06:47 <elliott_> CakeProphet: Yes.
17:06:47 <CakeProphet> I see.
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:02 <elliott_> But one, ugly.
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:23 <ais523> it is
17:07:26 <CakeProphet> what is page up?
17:07:29 <ais523> M-v
17:07:39 -!- monqy has joined.
17:07:41 <CakeProphet> ..ew, but okay.
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:07:50 <CakeProphet> C-v is a nice page down though, I agree.
17:08:03 <ais523> although it can make use of them if you happen to have them
17:08:21 <CakeProphet> at least arrow keys do what I expect. :D
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:20 <elliott_> I use C-j habitually now
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:10:42 <elliott_> return-tab, surely
17:10:54 <CakeProphet> hmmm, interesting.
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:12:50 <CakeProphet> elliott_: hmmm? I always hit tab once.
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:18 <elliott_> Apart from Emacs.
17:13:34 <Phantom_Hoover> An Emacs clone?
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:27 <elliott_> Actually:
17:14:30 <elliott_> Tab just reindents the current line.
17:14:30 <CakeProphet> ah okay.
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:56 <elliott_> CakeProphet: No.
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:27 <elliott_> (or Haskell)
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:17 <ais523> *a keyword
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:17:51 <elliott_> ralc: Never. Ever.
17:18:36 <CakeProphet> so what is the regular tab key?
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:18 <elliott_> SOMETIMES
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:02 <elliott_> ralc: The power of flamewars!
17:21:10 <elliott_> ais523: haha
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:21:51 <elliott_> You wouldn't.
17:21:51 <elliott_> I would.
17:21:54 <elliott_> And I will.
17:21:59 <elliott_> Stop it, god dammit, okay, I
17:22:05 <elliott_> I'm chaanging it
17:22:10 -!- elliott_ has left ("oAISJDflkhfgjf").
17:22:35 <ralc> whatever i have started, i'm so sorry :D
17:23:34 <CakeProphet> seems like I'll want to know C-h [acdF]
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:25:08 <ralc> sweet
17:25:10 <CakeProphet> What is the "kill buffer" command?
17:25:31 <elliott_> CakeProphet: C-x C-k <RET>
17:25:32 <ais523> C-x k
17:25:39 <elliott_> Er, right no C- on the k
17:25:41 <elliott_> (Although it works with it)
17:25:45 <elliott_> Oh
17:25:47 <elliott_> No it doesn't
17:25:53 <ais523> what does C-x C-k do?
17:26:03 <elliott_> Seems to be a prefix.
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:27:10 <CakeProphet> (lulz...)
17:27:17 <elliott_> I suggest panicking
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:05 <CakeProphet> awww yeah.
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:46 <ais523> I'm not sure
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:04 <elliott_> I kill buffers quite often
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:30:56 <ais523> that I'm working on
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:55:59 <CakeProphet> I have the weirdest boner right now.
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:47 <elliott_> GROSS INACCURACY
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:43 <Gregor> lol
18:45:53 <Gregor> I was thinking the real world ;P
18:46:01 <fizzie> "What's that?"
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:37 <elliott_> It's /.
18:55:38 <Sgeo> Oh, maybe it's just Chicken Scheme
18:55:39 <elliott_> 9/9
18:55:45 <elliott_> Do you mean Scheme or Racket?
18:55:52 <Sgeo> Scheme, but Chicken Scheme
18:55:55 <elliott_> Have you changed languages AGAIN in the past day?
18:55:57 <elliott_> SIGH
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:50 <Sgeo> Ah
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:57:59 <elliott_> ais523: Not even Sgeo.
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:48 * elliott_ logs in to reply
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:01:55 <Vorpal> layoutsetting maybe?
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 <ais523> elliott_: ah
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 <fizzie> "PageMakering." :p
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:08 <elliott_> Discontinued, it seems.
19:03:16 <elliott_> InDesign is the new thing.
19:03:19 <elliott_> Well.
19:03:22 <elliott_> The upmarket thing.
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:29 <elliott_> OK, the new thing.
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:09 <elliott_> QuarkXPress.
19:04:17 <Vorpal> hm
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:30 <ais523> hmm, perhaps
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:21 <elliott_> Just to annoy ais523.
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:16 <Vorpal> 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:40 <elliott_> LaTeX is DTP.
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:06:59 <elliott_> Vorpal: Well, DTP is WYSIWYG.
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:06 <elliott_> But LyX is.
19:07:10 <Vorpal> right
19:07:16 <elliott_> TeXmacs is a semantic tool.
19:07:18 <elliott_> So it is not really 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:26 <elliott_> It's not WYSIWYG.
19:07:31 <elliott_> Vorpal: Sure, but you can style it more directly than TeXmacs.
19:07:35 <Vorpal> elliott_, hm okay
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:23 <elliott_> fizzie: PARADIIIIIGM
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:31 <ais523> Vorpal: not exactly
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:42 <ais523> pikhq_: on paper, yes
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:03 <elliott_> up to gamma
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:22 <Vorpal> fizzie, "splanting"?
19:13:29 <ais523> elliott_: PNGs aren't exactly designing for screen
19:13:33 <fizzie> Vorpal: Inserting.
19:13:37 <Vorpal> ah
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:14 <fizzie> Vorpal: No.
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:23 <CakeProphet> except a few.
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:01 <CakeProphet> ...do people not have those?
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:16:41 <Phantom_Hoover> kcab
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:22 <ais523> to work out
19:18:24 <Vorpal> ais523, awesome
19:18:29 <Vorpal> ais523, also, by who?
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:41 <ais523> Vorpal: and at work
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:06 <Vorpal> with no issues
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:21 <Vorpal> ais523, waaaat
19:19:41 <CakeProphet> Sgeo: you can use emacs in a terminal?
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:36 <CakeProphet> I see...
19:20:49 <Vorpal> (at most)
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:26 <Vorpal> or was that rounded?
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:06 <ais523> ah, OK
19:22:07 <fizzie> ais523: But it's Emacs that's doing the loading-of-itself.
19:22:16 <Vorpal> CakeProphet, ah
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:44 <Vorpal> haha
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:55 <Vorpal> pikhq_, indeed
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:36 <ais523> give me a moment
19:25:37 <Vorpal> ais523, sprunge them
19:25:57 <Vorpal> pikhq_, so what about Apple without Jobs or Linux without Torvals?
19:25:59 <Vorpal> Valds*
19:26:01 <Vorpal> gah
19:26:03 <Vorpal> Torvalds*
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:44 <Vorpal> pikhq_, ah
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:26:58 <Vorpal> right
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:27:53 <Vorpal> pikhq_, right.
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:18 <Vorpal> right
19:29:51 <Vorpal> what other projects risk dying?
19:30:05 <Vorpal> major ones I mean
19:30:11 <CakeProphet> Wikipedia without Jimbo! (just kidding)
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:11 <Vorpal> pikhq_, right
19:31:37 <CakeProphet> ...so, Ubuntu users, do you guys actually use the new Unity crap?
19:31:44 <CakeProphet> I switched it off.
19:31:53 <Vorpal> CakeProphet, I use 10.04. Long term support.
19:31:55 <Vorpal> :P
19:31:55 <ais523> CakeProphet: I haven't upgraded to a version that has it
19:32:05 <CakeProphet> ah. nevermind then. well
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:19 <Vorpal> hm
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:37 <Vorpal> ooh lyx 2.0 released
19:34:42 <Vorpal> that is a big jump in version number
19:34:46 <Vorpal> I wonder what changed
19:34:50 <quintopia> :D
19:34:52 <Vorpal> fizzie, nice one
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:16 <Vorpal> these guys
19:35:23 <quintopia> wat
19:35:23 <Vorpal> take stable support seriously
19:35:31 <quintopia> awesome
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:01 <pikhq_> "Almost all".
19:37:05 <Vorpal> ah
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:40:57 <Vorpal> also new backends
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:07 <elliott_> C-a/C-e are great
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:27 <elliott_> that's adding a whole comment
19:48:40 <CakeProphet> ais523: thank you very much. :)
19:48:42 <quintopia> the easiest one would be C-j
19:48:46 <quintopia> cuz it uses both hands
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:10 <elliott_> oh, esolangs.el
19:49:12 <elliott_> how useless :P
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:50:38 <coppro> lol
19:50:42 <quintopia> my right alt is compose
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:20 <elliott_> how do you type partiulcar?
19:53:29 <CakeProphet> ..good one. :P
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:02 <elliott_> no, no it's not
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:26 <elliott_> false
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:56:43 * elliott_ reads this line.
19:56:46 <ais523> wow, it is as well
19:56:49 <ais523> yay!
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:40 <elliott_> ruled by grizzlies
19:57:41 <Vorpal> elliott_, hah
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:12 <elliott_> e
19:58:15 <elliott_> because they make money off it
19:58:18 <Vorpal> hm
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:36 <elliott_> Vorpal: yah, they had a lull.
19:58:55 <elliott_> Vorpal: It wasn't so much that Jobs was a genius as whoeveritwas was an idiot.
19:59:43 <Vorpal> hm right
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:20 <ais523> yep
20:00:25 <Vorpal> elliott_, of course
20:00:27 <elliott_> I'm not sure about that.
20:00:30 <elliott_> Informal structure, yes.
20:00:36 <elliott_> Formal, not so much.
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:51 <Vorpal> oh right
20:01:53 <elliott_> ais523: No, but he's not pulling patches from a preset group of people.
20:01:58 <ais523> he is, I thought
20:02:00 <Vorpal> forgot about esr
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:02:57 <elliott_> Or it'd get more formal.
20:03:03 <elliott_> (think Linux Foundation)
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:13 <Vorpal> ah
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:15 <Vorpal> not really
20:05:24 <CakeProphet> ...I'd say sentient AI is the best hope for the survival of future Linux.
20:05:35 <elliott_> wat
20:05:48 <Vorpal> CakeProphet, what's next? Torvalds brain in a jar?
20:05:51 <CakeProphet> have Linux maintained by AI of course.
20:05:58 <elliott_> an AI has better things to do
20:05:59 <elliott_> hey
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:19 <CakeProphet> Vorpal: ...tough crowd.
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:54 <elliott_> wah wah WAHHHHHHHHHHHHHHHHHHH
20:07:59 <elliott_> Vorpal: I never said it would fail.
20:08:03 <Vorpal> indeed
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:31 <elliott_> It was awesome.
20:08:35 <elliott_> It used SpamBayes to vote on proposals.
20:08:40 <elliott_> It played the AAA with brute-force.
20:08:40 <Vorpal> elliott_, heh
20:08:41 <elliott_> The end.
20:08:47 <Vorpal> AAA?
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:10 <Vorpal> right
20:09:13 <elliott_> Can't "import spamassassin".
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:29 <Vorpal> how does AAA work
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:41 <Vorpal> ais523, heh?
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:19 <Vorpal> oh god
20:10:22 <elliott_> I... don't think one ever got adopted.
20:10:28 <Vorpal> elliott_, indeed
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:09 <elliott_> Timeframise it.
20:12:13 <Vorpal> "If this contract is a contest, the SoA is its Contestmaster." <-- wat
20:12:15 <elliott_> ais523: ugh, that wiki
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:29 <Vorpal> then
20:12:32 <ais523> I only tolerated it because of a scam I'd been planning for months
20:12:36 <elliott_> Vorpal: Don't remember.
20:12:38 <elliott_> ais523: haha
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:05 <elliott_> oh wait
20:13:10 <elliott_> It was because someone else got elected
20:13:12 <elliott_> and decided to use it
20:13:14 <elliott_> because they're terrible
20:13:18 <elliott_> was it Murphy?
20:13:23 <ais523> I think it was Murphy
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:13:57 <ais523> ah, no it isn't
20:13:58 <elliott_> with that </script>
20:14:08 <elliott_> bob-space.com sure is
20:14:10 <elliott_> just not the nomic.
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:19 <Vorpal> err
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:29 <elliott_> I'm too scared to click.
20:14:30 <ais523> it may be VB.NET
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:50 <elliott_> Vorpal: no it's not
20:14:59 <elliott_> Vorpal: Ordinary proposals let you vote on them multiple times
20:15:02 <elliott_> Democratic proposals didn't
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:22 <elliott_> Vorpal: we also have SHALL
20:16:30 <elliott_> ais523: remember when we told everyone that relying on bobthj's site was a terrible idea?
20:16:32 <elliott_> good times, good times
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:51 <elliott_> good times, good times
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:08 <elliott_> they aren't any more
20:18:11 <elliott_> but they used to be
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:37 <elliott_> Vorpal: integers
20:18:38 <Vorpal> elliott_, and I did
20:18:40 <elliott_> in fact, naturals, I think
20:18:41 <Vorpal> elliott_, boring
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:13 <ais523> and quite grindy, too
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:05 <elliott_> oh
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:46 <elliott_> Vorpal: simple
20:20:53 <elliott_> Vorpal: read the rule
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:21:58 <Vorpal> ais523, ah...
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:08 <Vorpal> ais523, is she fat?
20:22:10 <elliott_> Why the ...?
20:22:11 <ais523> Vorpal: no
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:33 <elliott_> argh HackEgo
20:22:37 <elliott_> `delquote ​427
20:22:39 <HackEgo> No output.
20:22:40 <elliott_> guess it's too long :(
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:31 <Vorpal> `quote 427
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:38 <elliott_> Vorpal: delquote is broken
20:25:42 <Vorpal> so we all thought of different things
20:25:59 <Vorpal> `run find . -iname '*quotes*'
20:26:00 <HackEgo> No output.
20:26:05 <Vorpal> `run find . -iname '*quote*'
20:26:06 <HackEgo> No output.
20:26:08 <Vorpal> fail
20:26:19 <Vorpal> elliott_, I would sed the db if I knew where it was
20:26:29 <Vorpal> `help
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:26:50 <Vorpal> or that
20:27:05 <elliott_> `run ls quote
20:27:06 <elliott_> `run ls quotes
20:27:07 <HackEgo> No output.
20:27:07 <Vorpal> elliott_ can do that
20:27:07 <HackEgo> ​quotes
20:27:15 <Vorpal> bbl
20:30:37 <fizzie> `quote 427
20:30:38 <HackEgo> No output.
20:30:41 <fizzie> (sed'd.)
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:57 <elliott_> `url bin/delquote
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:22 <elliott_> CakeProphet: use cperl-mode
20:32:32 <CakeProphet> how is this achieved...
20:32:36 <elliott_> M-x cperl-mode
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:36 <fizzie> It's very 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:33:51 <elliott_> HTH.
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:34 <Vorpal> CakeProphet, TC
20:34:34 <CakeProphet> ...because it's awesome.
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:40 <CakeProphet> it's not perfect, no.
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:35:52 <CakeProphet> yes, I didn't think so.
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:36:45 <CakeProphet> Haskell? too much syntax? nonsense.
20:37:00 <CakeProphet> What are you a Lisp programmer?
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:03 <Vorpal> as in
20:39:04 <elliott_> Vorpal: Names /are/ used for less common operations.
20:39:08 <Vorpal> alphabetical ones
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:25 <Vorpal> elliott_, indeed.
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:40:52 <elliott_> Vorpal: Uhh.
20:40:54 <elliott_> Vorpal: That's not common?
20:41:01 <elliott_> Vorpal: Let's see. C: x[n]. Fortran: some syntax I don't know.
20:41:03 <elliott_> ALGOL: yep.
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:34 <elliott_> Map uses it too, etc.
20:41:37 <Vorpal> elliott_, isn't it <: or something?
20:41:44 <Vorpal> meh forgot what it was
20:41:49 <elliott_> ...Do you mean Data.Seq?
20:41:56 <elliott_> Data.Sequence, sorry.
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:21 <CakeProphet> Perl: @{$href->{$aref->[1]}}[3]
20:42:23 <elliott_> case viewl q of
20:42:23 <CakeProphet> mmmm
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:25 <elliott_> EmptyL -> ...
20:42:27 <elliott_> a :< b -> ...
20:42:39 <elliott_> Vorpal: You do in some Lisps.
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:15 <elliott_> - Function application
20:43:17 <elliott_> - Macros, and
20:43:21 <elliott_> - OH YEAH, tons of special forms.
20:43:25 <elliott_> Lisp has tons of syntax.
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:38 <elliott_> Vorpal: And macros?
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:22 <elliott_> What?
20:44:27 <Vorpal> what I said
20:44:28 <Vorpal> bbl
20:44:33 <elliott_> OK I'm stepping out of this conversation because it's stupid.
20:44:47 <CakeProphet> fizzie: er, I guess not.
20:45:06 <CakeProphet> for the purposes of obfuscation, maybe.
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:31 <Vorpal> pikhq_, I know that
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:51:52 <Vorpal> fizzie, huh?
20:52:21 <fizzie> Vorpal: "Huh?"?
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:39 <Vorpal> heh
20:53:59 <NihilistDandy> http://en.wikipedia.org/wiki/Charity_(programming_language)
20:55:03 <elliott_> NihilistDandy: What of it?
20:55:05 <elliott_> (I know of Charity.)
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:56:31 <CakeProphet> *discovered
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:05 <NihilistDandy> ## Latest News ## 12 October 2000
21:01:07 <NihilistDandy> :|
21:01:21 <elliott_> NihilistDandy: It's an old research language, what do you expect :)
21:01:34 <NihilistDandy> I wonder if it'll compile...
21:02:04 <CakeProphet> cperl-modes highlighting is kind of inconsistent feeling.
21:02:14 <CakeProphet> it highlights $info in my $info;
21:02:20 <CakeProphet> but not in $info->get_tag()
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:23 <CakeProphet> c-x c-b is a good. also c-x b
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:10:06 <CakeProphet> hmmm
21:10:08 <CakeProphet> excellent.
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:32 <pikhq_> Goodness.
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:42 <CakeProphet> elliott_: nope..
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:19:07 <CakeProphet> so... restart time.
21:20:47 <CakeProphet> awww yeah, scalar variables are now a dull pasty brown.
21:21:24 <elliott_> nailed it
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:22:17 <Phantom_Hoover> Programmers: dur maths is hard.
21:23:03 <Vorpal> Phantom_Hoover, hey not all programmers are stupid
21:23:10 <elliott_> , said Vorpal.
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:50 <elliott_> OR
21:23:55 <elliott_> Possibly, because Fourier was a genius.
21:23:58 <elliott_> PERHAPS
21:23:59 <elliott_> IT IS BOTH
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:23 <elliott_> Spaliens.
21:24:33 <elliott_> Homo spaliens.
21:24:34 <Phantom_Hoover> <elliott_> Possibly, because Fourier was a genius.
21:24:59 <Phantom_Hoover> Didn't Fourier set the stage for the huge flurry over the basis of calculus?
21:25:19 <elliott_> Your mother is 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:27:25 <Phantom_Hoover> CakeProphet, try M-x doctor.
21:28:13 <Vorpal> CakeProphet, try M-x set-input<tab> RET TeX RET
21:28:24 <CakeProphet> ...ahahaha. awesome.
21:28:27 <Vorpal> CakeProphet, then write some tex notation into the buffer
21:28:28 <Vorpal> like
21:28:30 <Vorpal> \vee
21:28:32 <Vorpal> or whatever
21:28:43 <Vorpal> CakeProphet, it will convert a subset to unicode
21:30:45 <CakeProphet> I am too busy being psychoanalyzed
21:30:51 <elliott_> CakeProphet: M-x psychoanalyze-pinhead
21:30:57 <elliott_> (Press a character to stop it.)
21:30:58 <elliott_> CakeProphet: Then M-x tetris.
21:31:28 <CakeProphet> doctor: "You seem terrified by sex."
21:31:29 <elliott_> (Works in both terminals and graphically[exclamation mark])
21:31:43 <elliott_> Then M-x hanoi.
21:32:03 <Vorpal> elliott_, when will you get your keyboard fixed?
21:32:18 -!- cheater79 has joined.
21:33:48 <elliott_> [asterisk]laptop
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:03 <CakeProphet> 9
21:37:06 <elliott_> haha
21:37:08 <elliott_> CakeProphet: tried tetris yet?
21:37:15 <CakeProphet> yeah I tried it earlier.
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:50:31 <CakeProphet> fleshy
21:50:42 <ais523> hmm, that might work
21:51:12 <elliott_> ais523: wat
21:51:20 <ais523> elliott_: BlogNomic
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:51:59 <ais523> elliott_: haha
21:55:07 <Phantom_Hoover> http://tvtropes.org/pmwiki/pmwiki.php/Headscratchers/Math
21:55:19 <elliott_> Mathematics has tropes now?
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:55:32 <Phantom_Hoover> elliott_, Headscratchers = Just Bugs Me.
21:55:59 <elliott_> I know.
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:04 <elliott_> CALCULUS: Not useful
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> "Why is it impossible to divide by 0?
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:36 <Phantom_Hoover> Thank god, that was removed.
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:09 <elliott_> "What if I try REALLY HARD?"
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?"
21:59:47 <elliott_> what
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:12 <elliott_> What.
22:00:18 <elliott_> Phantom_Hoover: I'm crying irl
22:00:26 <elliott_> Desperately require comfort
22:00:33 <Phantom_Hoover> There is none.
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:00:58 <Phantom_Hoover> Best part: this person is *right*.
22:01:20 <Phantom_Hoover> The way mathematics is taught completely removes all the benefits of learning it.
22:01:29 <elliott_> Wow, I know who wrote that.
22:01:34 <elliott_> (I don't, but, I do.)
22:01:52 <Phantom_Hoover> You are going to have to explain that.
22:02:09 <elliott_> Yeahno.
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:02:59 <Phantom_Hoover> elliott_, pikhq_, except no, it's deeper than that.
22:03:01 -!- oerjan has joined.
22:03:07 <elliott_> I wasn't objecting.
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:16 <Phantom_Hoover> If not more so.
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:45 <Phantom_Hoover> And I was being taught by a blind man.
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 <CakeProphet> Ok what do you want to eat?
22:06:59 <elliott_> blind people can't do calculus
22:06:59 <CakeProphet> You.
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:29 <Phantom_Hoover> This person, OTOH, is an annoying idiot.
22:07:32 <elliott_> that's an obvious joke
22:07:39 <Phantom_Hoover> elliott_, it is?
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:31 <Phantom_Hoover> elliott_, see: half the Homestuck fandom.
22:08:31 <elliott_> + "Let's be honest here"
22:08:36 <elliott_> Phantom_Hoover: they can't form sentences.
22:08:54 <Phantom_Hoover> elliott_, I am sorry, let us peruse homestucksecrets.
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:15 <Phantom_Hoover> catholicsecrets!
22:09:28 -!- TeruFSX has quit (Read error: Operation timed out).
22:10:04 <Phantom_Hoover> "I thought Paul was the main character."
22:10:44 <pikhq_> Phantom_Hoover: Arguably, he is. His writings are the very first evidence we have of anything resembling Christianity.
22:11:07 <Phantom_Hoover> pikhq_, SHH YOU DON'T UNDERSTAND
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:14:32 <elliott_> You realise I'm up-to-date.
22:15:00 <Phantom_Hoover> NOT ON FINE STRUCTURE
22:15:23 <Sgeo> READ IT READ IT READ IT
22:15:25 -!- TeruFSX has joined.
22:15:25 <elliott_> AAAAAAAAAAAAAAAAAAAAAAAAAAAA
22:15:42 -!- FireFly has quit (Quit: swatted to death).
22:16:02 -!- ais523 has quit (Remote host closed the connection).
22:16:21 <Phantom_Hoover> MITCH KILLS SEPH WITH ROSEBUD
22:16:37 <Phantom_Hoover> THEN IT TURNS OUT THAT MIKE IS HIS FATHER
22:17:21 <oerjan> WHO WAS DEAD THE WHOLE TIME
22:17:59 <Phantom_Hoover> THE IMPRISONING GOD
22:18:01 <Phantom_Hoover> IS ACTUALLY
22:18:15 <Phantom_Hoover> Wait does elliott_ know about that
22:18:18 <Phantom_Hoover> Erm.
22:18:20 <Phantom_Hoover> Oops.
22:18:25 <elliott_> /clear
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:04 <elliott_> YW
22:19:21 <Phantom_Hoover> It doesn't give away much.
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:01 <Phantom_Hoover> JUST READ THE DAMN THINGG
22:20:03 <Phantom_Hoover> *THING
22:20:22 <oerjan> (</moar spoilers>)
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:00 <Phantom_Hoover> Homefine Stuckture.
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:21:46 <Phantom_Hoover> elliott_, ZAKALWE IS [DATA EXPUNGED]
22:21:55 <Phantom_Hoover> Wait, you're never going to read those books.
22:22:13 <elliott_> I am.
22:22:16 <elliott_> I absolutely am.
22:22:24 <elliott_> The Culture is one of the few things penetrating the depth of my Fiction Backlog.
22:23:31 <Phantom_Hoover> I WILL NOW SCPSPOIL ALL OF THEM
22:23:33 <Phantom_Hoover> IN ORDER
22:23:57 <Phantom_Hoover> THE CULTURE WINS THE IDIRAN WAR
22:24:09 <Phantom_Hoover> OK, that wasn't redacted, because it's obvious.
22:25:09 <elliott_> OK stop.
22:25:10 <elliott_> Just stop.
22:25:11 <elliott_> I don't trust you.
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:26:43 <Phantom_Hoover> Well, it wasn't a war to the death or anything.
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:18 <Phantom_Hoover> oerjan, well thanks for spoiling it.
22:29:33 <oerjan> <- now spoiling books before they are written
22:29:50 <Sgeo> NO sPOLLING
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:35 <oerjan> whatever
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:57 <quintopia> i could write it
22:31:59 <monqy> do they even exist
22:32:12 <quintopia> monqy: "John dies in the end" has sold pretty well
22:32:20 <elliott_> [asterisk]at the
22:32:27 <elliott_> My assumption with that book is that John dying is not, in fact, the real climax :)
22:32:27 <Phantom_Hoover> monqy, see: every classic ever.
22:32:30 <quintopia> same diff
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:44 <elliott_> [asterisk]detail.
22:32:47 <elliott_> [POINTLESS PLAY OMITTED]
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:36 <quintopia> anytthing can be litfic
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:37:26 <Phantom_Hoover> You keep using that word.
22:37:34 <Phantom_Hoover> I do not think it means what you think it means.
22:37:47 <elliott_> X-D
22:39:05 * Phantom_Hoover gets bored, reads Simple English Wikipedia.
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:27 <Phantom_Hoover> "Mathematics has shown that..."
22:40:35 <Phantom_Hoover> Wait no
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:08 <Phantom_Hoover> http://simple.wikipedia.org/wiki/Magnet
22:44:14 <Phantom_Hoover> "A magnet is a very special metal."
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:17 <elliott_> A VERY special metal.
22:45:25 <monqy> http://simple.wikipedia.org/wiki/G%C3%B6del%27s_incompleteness_theorems
22:45:32 <Phantom_Hoover> Sorry guys we are now discussing bismuth.
22:45:32 <oerjan> Phantom_Hoover: how uncleftish
22:46:05 <monqy> I find simple english harder to follow than regular english
22:46:48 <Phantom_Hoover> http://simple.wikipedia.org/wiki/Bismuth(V)_oxide
22:46:53 -!- TOGoS has left.
22:46:57 <elliott_> I want complex english wikipedia
22:47:01 <Phantom_Hoover> How do you even decide to write that article.
22:47:22 <elliott_> Phantom_Hoover: bismuth isn't funny
22:47:40 <Phantom_Hoover> elliott_, bismuth(V) oxide is.
22:47:46 <monqy> no it is serious bismuth
22:47:56 * Phantom_Hoover swats monqy.
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:33 <monqy> even better
22:49:54 <monqy> hitting "Show any page" is bringing up a lot of these
22:50:27 <elliott_> is that how it says random
22:50:29 <elliott_> haha it is omg
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:34 <Phantom_Hoover> http://simple.wikipedia.org/wiki/Blast_off
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:51:51 <monqy> words of wisdo m
22:52:13 <elliott_> i'm imagining a guy handing out numbers to little cute kittens or something
22:52:15 <elliott_> all the things get a number
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:34 <elliott_> [needs proof]
22:52:44 <monqy> what's a citation
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:52:58 <elliott_> "themselves" is too difficult
22:53:16 <monqy> http://simple.wikipedia.org/wiki/Citation
22:53:49 <elliott_> scared to look up "sex"
22:53:54 <elliott_> it'll be written for toddlers
22:54:01 <elliott_> it'll start "when a man and a women love each other very much"
22:54:08 <elliott_> or "sit down son.
22:54:12 <elliott_> let me tell you about the birds.
22:54:13 <elliott_> and the bees."
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 <Phantom_Hoover> http://simple.wikipedia.org/wiki/Cat
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:45 <elliott_> --Talk:Main Page
22:54:47 <Phantom_Hoover> Behaviour section.
22:54:54 <Phantom_Hoover> BEST IMAGE
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:55:07 <elliott_> Phantom_Hoover: X-D
22:56:11 <Phantom_Hoover> Oh my god
22:56:15 <Phantom_Hoover> kittens
22:56:17 <Phantom_Hoover> this is
22:56:18 <Phantom_Hoover> so funny
22:56:33 <elliott_> "other images of dogs"
22:56:34 <elliott_> oh goody
22:56:37 <Phantom_Hoover> "5. Watch, delighted, as kitten sits down promptly and urinates. Do same for other kits.
22:56:46 <elliott_> Phantom_Hoover: ...X-D
22:56:49 <Phantom_Hoover> 6. Repeat next time if they need it. They will not need a third time. Probably."
22:56:58 <Phantom_Hoover> KITTEN I HAVE WARNED YOU TWICE
22:57:03 <Phantom_Hoover> THERE WILL NOT BE A THIRD TIME
22:57:09 <monqy> http://simple.wikipedia.org/wiki/Baby
22:57:10 <Phantom_Hoover> PROBABLY
22:57:13 <monqy> A baby is a very young human who is usually born after coming out of a woman.
22:57:18 * pikhq mutters
22:57:22 <Phantom_Hoover> Usually.
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:47 <elliott_> monqy: usually
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:07 <elliott_> "How old are you?" "School."
22:58:15 <Phantom_Hoover> Cats are acutely affected by domestic abuse.
22:58:24 <elliott_> http://simple.wikipedia.org/w/index.php?title=Baby&action=historysubmit&diff=1817847&oldid=1814967
22:58:25 <elliott_> Lady.
22:58:25 <monqy> what's a cute
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> Abortion
22:58:58 <monqy> From Wikipedia, the free encyclopedia
22:58:58 <monqy> (Redirected from Miscarriage
22:59:12 <monqy> )
22:59:17 <elliott_> ...
22:59:18 <elliott_> X-D
22:59:39 <monqy> okay it's defining abortion generally to include miscarriages
22:59:41 <Phantom_Hoover> "It can affect people, dogs, and cats.[1]"
22:59:58 <Phantom_Hoover> Outside of this closely related group, it has not been observed.
23:00:02 <Phantom_Hoover> (http://simple.wikipedia.org/wiki/Polydactyly)
23:00:17 <Gregor> lol
23:00:23 <Phantom_Hoover> http://simple.wikipedia.org/wiki/Knut_(polar_bear)
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:03 <Phantom_Hoover> Scots Wikipedia!
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:26 <monqy> "dating"
23:01:30 <elliott_> ;)
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:25 <elliott_> wee-er nor a maukin
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:46 <elliott_> There's no sex page :(
23:02:49 <elliott_> But there IS a homosexuality page
23:02:53 <Gregor> lol
23:02:54 <Phantom_Hoover> Oh god
23:02:56 <elliott_> Also, Metallica discography.
23:02:58 <elliott_> PRIORITIES
23:03:01 <elliott_> What's sex called in Scots Phantom_Hoover
23:03:02 <Gregor> Homo♥iality
23:03:09 <Phantom_Hoover> elliott_, how would I know?
23:03:19 <elliott_> You're Scottish.
23:03:25 <Gregor> *Scotch
23:03:31 <Phantom_Hoover> They don't have a page on "sassenach".
23:03:32 <elliott_> The cavalier o Hohenberg an his squire burned far crime o sodomy.
23:03:35 <Phantom_Hoover> This is ridiculous.
23:03:40 <Phantom_Hoover> How can they not have a page on that.
23:03:45 <Phantom_Hoover> I FEEL DISCRIMINATED AGAINST
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:49 <elliott_> Bittie homosexual
23:03:59 <elliott_> http://sco.wikipedia.org/wiki/Dance
23:04:00 <elliott_> THAT IMAGE
23:04:01 <elliott_> THAT CAPTION
23:04:02 <elliott_> SGHFOHFOGIHDOJOIDJHOGFH
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:22 <elliott_> HIVY METAL
23:04:23 <elliott_> HIVY METAL BAUND
23:04:24 <Phantom_Hoover> Oh come on guys you could have tried.
23:04:25 <elliott_> HIVY METAL BAUND
23:04:27 <elliott_> HIVY METAL BAUND
23:04:29 <elliott_> HIVY METAL BAUND
23:04:31 <elliott_> HIVY METAL BAUND
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:51 <elliott_> UNITIT STATES
23:04:51 <elliott_> UNITIT STATES
23:04:52 <elliott_> UNITIT STATES
23:04:53 <elliott_> UNITIT STATES
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:17 <Phantom_Hoover> http://sco.wikipedia.org/wiki/Unitit_States
23:05:24 <elliott_> Ingland's muckle maist ceety, Lunnon, is the caipital o the Unitit Kinrick an aw.
23:05:34 <Phantom_Hoover> "George Washington wis the first presses."
23:05:37 <elliott_> http://sco.wikipedia.org/wiki/Great_Breetain
23:06:02 <Phantom_Hoover> It's like Scots can't spell anything the normal way.
23:06:15 <Gregor> Normal = modern English :P
23:06:24 <Phantom_Hoover> http://sco.wikipedia.org/wiki/Ireland
23:06:31 <Phantom_Hoover> I like the subtle jab at Ulster Scots.
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:06:55 <elliott_> Hahahahahaha
23:06:59 <Phantom_Hoover> pikhq, I AM SORRY WHO IS SCOTTISH HERE
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:07 <elliott_> Replacin page wi 'POTATO'
23:07:08 <Phantom_Hoover> AND WHO IS AN AMERICAN
23:07:10 <elliott_> Replacin page wi 'POTATO'
23:07:11 <elliott_> Replacin page wi 'POTATO'
23:07:11 <elliott_> Replacin page wi 'POTATO'
23:07:11 <pikhq> Phantom_Hoover: CLEARLY NOÖNE.
23:07:12 <Phantom_Hoover> FROM ENGLAND
23:07:14 <elliott_> Replacin page wi 'POTATO'
23:07:14 <elliott_> Replacin page wi 'POTATO'
23:07:14 <elliott_> Replacin page wi 'POTATO'
23:07:14 <elliott_> Replacin page wi 'POTATO'
23:07:22 <pikhq> Phantom_Hoover: NO TRUE SCOTSMAN DOES NOT SPEAK SCOTS.
23:07:35 <Phantom_Hoover> pikhq, I CAN SPELL WORDS PHONETICALLY TOO
23:07:53 <Gregor> elliott_: Stoooooooooooop
23:07:56 <Gregor> And/or stop
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:03 <elliott_> THE GREEKS HAVE FOUND ORKNEY
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:06 <elliott_> http://i.imgur.com/GRk0v.png
23:09:26 <Phantom_Hoover> What.
23:09:34 <elliott_> Yes.
23:09:39 * Phantom_Hoover remembers that the SNP are basically in charge now.
23:09:46 <elliott_> Phantom_Hoover: OCH AYE
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:11 <pikhq> (Gælic?)
23:10:19 <Gregor> GAYLICK
23:10:22 <Phantom_Hoover> And I'll have to lose all those cool perks we get because the English are suckers.
23:10:34 <Phantom_Hoover> pikhq, AH BUT I AM ETHNICALLY IRISH
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:32 <Gregor> Cornish?
23:11:37 <pikhq> Gregor: FUCK YOU
23:11:40 <pikhq> :P
23:11:42 <Gregor> Breton?
23:11:46 <Phantom_Hoover> pikhq, well, as Vorpal can attest, I am also Welsh.
23:11:58 <pikhq> WHY HASN'T ENGLISH CONQUERED THE BRITISH ISLES
23:12:25 <Gregor> Manx?
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:52 <elliott_> Gregor: THEY'RE BREEDING
23:13:53 <oerjan> HÏVY METAL BÄUND
23:13:58 <pikhq> Gregor: Total speakers.
23:14:13 <Gregor> Oh, you said native.
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:16 <Gregor> Got it.
23:14:26 <Phantom_Hoover> Yeah, but there are like 150 people on Mann.
23:14:46 <pikhq> 80,000.
23:14:47 <monqy> mann is dead too
23:14:57 <pikhq> And you mean "Isle of Man".
23:15:12 <pikhq> No, wait, you do mean "Mann".
23:15:26 <pikhq> Fuck you, Mann.
23:15:46 <elliott_> Mann is a douchebag.
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:17:40 <Phantom_Hoover> THERE ARE NOT THAT MANY PEOPLE
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:18:05 <Phantom_Hoover> *8*.
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:00 <elliott_> been done hasn't it
23:22:07 <CakeProphet> I have no idea..
23:22:10 <CakeProphet> probably.
23:22:23 <CakeProphet> google results have yielded nothing so far.
23:30:15 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:32:40 <Phantom_Hoover> pikhq, I need your dismissive opinions on Steinbeck.
23:34:02 <pikhq> Phantom_Hoover: The Grapes of Wrath demonstrates a complete lack of understanding about what makes a compelling narrative.
23:34:21 <Phantom_Hoover> And the pretentious mental wankery?
23:34:26 <elliott_> grapes of poop
23:34:42 <pikhq> Phantom_Hoover: Is part of demonstrating that lack of understanding.
23:34:49 <Phantom_Hoover> Hmm.
23:34:57 <Phantom_Hoover> Who else do you have dismissive opinions on.
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:36:54 <Phantom_Hoover> Miller.
23:37:25 <pikhq> That's not registering as an author.
23:37:30 <Sgeo> Douglas Adams
23:37:37 <Sgeo> Terry Pratchett
23:37:44 <pikhq> Sgeo: I cannot dismiss them.
23:38:18 <Sgeo> Homer
23:38:54 <pikhq> He's an old Greek dude that people fellate without having actually read anything by him.
23:39:08 <Phantom_Hoover> pikhq, Meyers
23:39:10 <elliott_> Homo
23:39:10 * Phantom_Hoover ducks.
23:39:44 <pikhq> Phantom_Hoover: Incompetent author and a Mormon writing about the Mormon ideal of a relationship. Also, vampires.
23:39:59 <elliott_> Phantom_Hoover: there's no s.
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:18 <Phantom_Hoover> elliott_, SHUT UP
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:01 <elliott_> Sgeo: Only when they glow.
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:53 <elliott_> Sgeo really likes vampires.
23:42:55 <Sgeo> Or, well, problem with the author
23:42:59 <Sgeo> No, just saying
23:43:00 <elliott_> I suggest we psychoanalyse.
23:43:16 <CakeProphet> elliott_: Can you elaborate on that?
23:43:35 <elliott_> CakeProphet: Do you think can you elaborate on that because of an experience you had as a child?
23:43:38 <Phantom_Hoover> The vampire is his stepmother.
23:44:04 <Phantom_Hoover> pikhq, Hemingway.
23:44:21 <pikhq> Phantom_Hoover: A genuinely good author.
23:44:29 <pikhq> And supreme badass.
23:44:31 <elliott_> pikhq: Joyce
23:44:31 <Phantom_Hoover> Shakespeare.
23:44:40 <CakeProphet> elliott_: Why do you ask that?
23:44:46 <Phantom_Hoover> pikhq, also, as we established, a woman.
23:45:06 <pikhq> Phantom_Hoover: An oft-misunderstood playwrite, who uses rather crude language, contrary to popular belief.
23:45:11 <elliott_> Phantom_Hoover: wat
23:45:16 <CakeProphet> elliott_: (this is going to go nowehre fast...)
23:45:16 <elliott_> pikhq: RESPOND TO MINE
23:45:22 <elliott_> CakeProphet: already gave up :D
23:45:25 -!- NihilistDandy has quit (Quit: leaving).
23:45:39 <Phantom_Hoover> elliott_, we found some gender analyser thing.
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:20 <CakeProphet> elliott_: you're being a bit negative. :D
23:46:23 <pikhq> *Ah, right*.
23:46:35 <pikhq> Pretty unsurprising. Hemingway reïnvented simple language.
23:46:41 <Phantom_Hoover> pikhq
23:46:55 <Phantom_Hoover> Diaereses are not necessary between different vowels.
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:25 <CakeProphet> elliott_: cool story, bro.
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:49:19 <Phantom_Hoover> pikhq, Banks.
23:49:29 <Phantom_Hoover> Oh wait, noöne else reads the Culture novels.
23:51:07 <oerjan> none else would be a plausible norwegian female name
23:52:07 <ralc> still going strong elliott_
23:52:28 <oerjan> eek, a dane
23:52:39 <oerjan> even more plausible in danish, actually
23:53:28 <elliott_> ralc: so much stamina
23:53:40 <oerjan> or wait danes use double last names instead of first names, don't they
2011-05-18
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:48 <oklofok> you think you're so cool
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:13:32 <oklofok> you sneaky bastard!
00:13:41 <oklofok> :D
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:28 <oklofok> namely now
00:14:34 <oerjan> basically, the substring VIIIVIIIIVIIIVI always arises, and is self-replicating
00:15:17 <oklofok> cool
00:16:53 <quintopia> wait
00:16:59 <quintopia> where are the breaks in that sequence
00:17:13 <oklofok> breaks?
00:19:18 <quintopia> it could be 52434241 or 8986 or something else in between, depending on which standard you choose
00:19:32 <oklofok> oh
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 <oklofok> *extra
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:51 <oklofok> ah environments
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:32:45 <oklofok> ah okay
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:34:41 <oklofok> idgi
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:35 <oklofok> not at all
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:37:15 <Vorpal> -_-
00:37:32 <oklofok> oerjan: yes
00:38:36 <elliott_> Vorpal: what about it
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:38:59 <Vorpal> hah
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:27 <oklofok> VVVVV => VV
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:40:06 <oklofok> ah yes
00:40:23 <oklofok> okay then i'm good
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:40 <oklofok> okay
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:43:52 <elliott_> i'll explode with happy
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:23 <elliott_> just tell me anyway
00:44:34 <oerjan> well consider our fundamental example
00:44:58 <elliott_> just tell me anyway
00:45:18 <elliott_> tell me it's tc
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:11 <elliott> kthx
00:46:20 <oklofok> oerjan: can you copy my line for elliott
00:46:37 <oerjan> wat
00:47:15 <oklofok> oerjan: he doesn't like me telling him things
00:47:36 <oerjan> heh
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:19 <elliott> (into the initial string)
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:49:36 <oerjan> heh
00:50:54 <oerjan> oklofok: now notice that information can only flow leftward in this view
00:51:02 <oklofok> noted
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:52:12 <oklofok> *neighbor
00:52:44 <oklofok> alrighty
00:52:57 <oklofok> makes sense
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:54:59 <oklofok> P^P^NP = P^NP
00:55:00 <oerjan> oh right
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:08 <CakeProphet> haha, M-x rot13-other-window
01:01:12 <oklofok> more than just inclusion
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:31 <oerjan> don't they always
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:12 <oerjan> generalize to the max
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:15 <oklofok> (by induction)
01:04:17 <oerjan> ok
01:04:20 <oklofok> however
01:04:38 <oklofok> this is for hardness w.r.t. many-one reductions or bounded truth table reductions only
01:04:43 <oklofok> familiar with those?
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:14 <oklofok> :P
01:05:34 <oerjan> um as in you have five minutes
01:05:39 <oklofok> ah
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:48 <elliott> is it actually proven?
01:05:49 <oklofok> well are you familiar with those?
01:05:54 <elliott> I thought thirty was but not one-one-zero
01:05:56 <elliott> or am I mixing those up?
01:06:06 <oklofok> nothing is known about 30
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:40 <oerjan> mhm
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:25 <oklofok> then PH = Sigma_2
01:09:32 <oklofok> (that is, NP^NP)
01:09:47 <oklofok> if there is a sparse NP-complete set S w.r.t. turing reductions
01:09:58 <oklofok> then PH = Omega_2
01:10:12 <oklofok> (logarithmic amount of queries to NP)
01:10:27 <oklofok> that is all
01:10:42 <oerjan> um i think you called Omega Theta above
01:10:49 <oklofok> yes i did, sorry
01:11:00 <oklofok> in my head it's the actual symbol
01:11:02 <oklofok> i misread
01:11:03 <oklofok> :P
01:11:06 <oerjan> heh
01:11:15 <oerjan> well thanks and good night
01:11:20 <oklofok> yup nighties
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:32:29 <monqy> "E"
01:32:46 <pikhq> monqy: ?
01:33:11 <monqy> never mind
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:26 <elliott> pikhq: ais does ca?
01:43:33 <oklofok> erm what does ais know
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:21 <elliott> pikhq: eh?
01:44:23 <oklofok> although making specific ca's is of course a very useful skill
01:44:24 <elliott> two,three wasn't a ca
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:47:00 <CakeProphet> so are emacs regexp the same as perl's?
01:48:04 <elliott> CakeProphet: no
01:48:14 <elliott> emacs is older than perl i think anyway
01:48:15 <elliott> yes it is
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:05 <CakeProphet> Oh hey, a perl regex extension.
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:27 <elliott> its literally identical
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:14 <quintopia> * is always kleene star
02:25:21 <quintopia> [] is always a character class
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:26:42 <CakeProphet> | requires escaping as well
02:27:08 <CakeProphet> and the \ special characters are pretty different.
02:28:17 <CakeProphet> and it doesn't seem to have lookaround.
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:03 <elliott> virtual world zomg
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:21 <elliott> (for ([i ???]) ...)
03:15:28 <Sgeo> in-range
03:15:36 <elliott> oh right that
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:15:58 <elliott> Sgeo: yep
03:16:02 <elliott> except mine is better cuz its an actual racket language
03:16:08 <monqy> oh snap
03:16:13 <elliott> yeah
03:16:18 <monqy> I gave up on mine when it stopped being fun
03:16:26 <elliott> #lang reader "hq9+.rkt"
03:16:27 <elliott> HQ9+
03:16:30 <elliott> totally a valid program now
03:16:32 <elliott> if you install it globally
03:16:34 <elliott> #lang hq9+
03:16:35 <elliott> HQ9+
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:34 <pikhq> *Minecraft*.
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:18:33 <pikhq> HEATHEN
03:18:49 <elliott> Sgeo: pistons
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:30 <elliott> it's stream-append
03:36:32 <elliott> erm
03:36:33 <elliott> sequence-append
03:36:39 <monqy> oh
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:23 <monqy> srfi 41
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:19 <elliott> heh
03:39:23 <elliott> monqy: yes
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:56 <elliott> hmm
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:44:52 <elliott> oh, i need for/list
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:48:17 <elliott> d
03:48:20 <elliott> aka terrible scoping
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:19 <elliott> or
03:50:21 <elliott> you could just
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:40 <monqy> so trampolining?
03:52:44 <Sgeo> Yes
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:09 <elliott> Oh, I see.
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:15:39 <coppro> inertia
04:15:45 <pikhq> Fuck inertia.
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:36 <coppro> im in ur country
04:16:38 <coppro> working ur jobz
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:54 <Sgeo> Oh, duh
04:26:58 <Sgeo> I understand what you said
04:27:52 <Sgeo> And e left
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:38:21 <Sgeo> Yes.
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:41:54 <monqy> this is awful
04:42:10 * Sgeo agrees.
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:13 <Sgeo> Um.
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:34:47 <monqy> why do you ask?
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:19 <Sgeo> Ok
06:39:25 * Sgeo has homework he needs to do rght now
06:39:31 <Sgeo> Instead of thinking about this
06:39:31 <Sgeo> :/
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:48:01 <Sgeo> Yes
06:53:09 <Sgeo> Do if, while, etc. get transformed into functions? I think they _might_
06:53:32 <Sgeo> I think so
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:08:33 <monqy> I think
07:08:37 <Sgeo> Hmm, hold on
07:08:54 <Sgeo> Um, right >.>
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:30 <Sgeo> Roughly
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:11 <Sgeo> >.>
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:17:23 <monqy> :(
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:28 <cheater79> `quote birth
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:09 <Sgeo> `quote 350
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:40:14 <lambdabot> Consider it noted.
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:58:49 <Sgeo> channel
07:59:11 <Sgeo> @tell `quote birth doesn't show all birth quotes.
07:59:11 <lambdabot> Consider it noted.
07:59:17 * Sgeo facepalms
07:59:25 <Sgeo> @tell Gregor `quote birth doesn't show all birth quotes.
07:59:25 <lambdabot> Consider it noted.
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:05:45 <Sgeo> about
08:07:03 <Lymia> `quote dead
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:09 <Lymia> `quote hug
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:26:12 <Patashu> Anyone about
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:01 <Patashu> oh
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:12:13 <Patashu> alright, I'll do that
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:02 <oklofok> 2d ca on a hexagona grid?
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:46 <Patashu> really?
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:20 <oklofok> which is rather different
12:47:47 <oklofok> Patashu: usually CA can have an arbitrarily large neighborhood
12:48:17 <Patashu> yeah
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:20 <Patashu> humm...
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:42 <oklofok> well not quite
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:44 <oklofok> *-those
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:56:25 <oklofok> does that make any sense?
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:15 <oklofok> oh sorry
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:39 <Patashu> right
12:58:46 <Patashu> ah, set multiplication
12:58:52 <oklofok> so S^6 means we group 6 states into one.
12:58:54 <Patashu> right
12:58:55 <Patashu> yeah
12:59:01 <Patashu> interesting
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:51 <Patashu> *cool kats
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:29 <Patashu> so it's not surjective
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:06:51 <oklofok> Patashu: yes!
13:06:56 <oklofok> exactly
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:31 <oklofok> sorry
13:08:33 <Patashu> I mean in the game of life
13:08:34 <oklofok> smallest KNOWN pattern
13:08:36 <oklofok> :P
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:09:50 <Patashu> oh!
13:09:51 <Patashu> you're right
13:10:08 <oklofok> ais523_: it's easy to check whether something of size smaller than 10x10 has a preimage
13:10:19 <ais523_> via brute force?
13:10:21 <oklofok> so there probably isn't a known example of something we don't know a preimage for
13:10:23 <oklofok> ais523_: yes
13:10:29 <ais523_> ah, OK
13:10:34 <oklofok> *easy enough
13:10:56 <oklofok> Patashu: who's right?
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:33 <ais523_> e.g. Life on a torus
13:12:50 <oklofok> yeah then it's trivial that surjectivity = injectivity of course
13:12:55 <ais523_> ep
13:12:58 <ais523_> *yep
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:41 <oklofok> unlike the infinite cases
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:09 <Patashu> and symmetric
13:14:36 <oklofok> yeah that's kind of pretty
13:14:43 <cheater__> ais523_: can C have monads?
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:15:40 <ais523_> *be
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:50 <cheater__> yeah but like
13:16:51 <ais523_> here's a simple example that came up in my job recently
13:16:59 <cheater__> how would that look in python?
13:17:00 <cheater__> ok go on
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:16 <oklofok> do you know it?
13:17:23 <ais523_> oklofok: no
13:17:27 <ais523_> I realised it was only obvious in one direction
13:17:31 <oklofok> yeah
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:28 <cheater__> ais523_: you mean x = 0 or y = 0
13:18:31 <cheater__> ais523_: but ok, go on
13:18:36 <ais523_> cheater__: err, right
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:18:46 <cheater__> yeah
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:25 <cheater__> it isn't
13:19:32 <ais523_> it is for positive integers, right?
13:19:36 <cheater__> nope
13:19:40 <ais523_> counterexample?
13:19:51 <cheater__> 1 <= 1, 2 > 1, 0.5 < 1
13:19:56 <Patashu> lol
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:08 <cheater__> oh, *integers*
13:20:10 <cheater__> alright
13:20:21 <cheater__> yes, then it's obviously true :D
13:20:26 <cheater__> ok go on please
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:30 <Patashu> The Bible Guarantees It!
13:22:36 <cheater__> ais523_: ok, go on
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:49 <cheater__> so you could do it on trees too?
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:21 <cheater__> why?
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:27 <cheater__> actually no never mind
13:27:32 <cheater__> i don't want to know about trees
13:27:37 <cheater__> instead answer this:
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:27:57 <cheater__> what are these computation paths?
13:28:01 <ais523_> cheater__: well, I'm not just transforming one constraint, but many
13:28:09 <cheater__> yes, so?
13:28:16 <cheater__> where does that take us?
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 <ais523_> @hoogle set
13:29:36 <lambdabot> module Data.Set
13:29:36 <lambdabot> Data.Set data Set a
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 <ais523_> @hoogle x -> (Set x)
13:29:55 <lambdabot> Data.Set singleton :: a -> Set a
13:29:55 <lambdabot> Data.Set deleteMax :: Set a -> Set a
13:29:55 <lambdabot> Data.Set deleteMin :: Set a -> Set a
13:30:05 <oklofok> sexy
13:30:30 <ais523_> bleh, now I have to remember which of lift and liftM is which
13:30:31 <ais523_> I'll cheat
13:30:37 <ais523_> :t lift
13:30:38 <lambdabot> Ambiguous occurrence `lift'
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:43 <ais523_> :t liftM
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:26 <ais523_> hmm, I'm confused now
13:32:52 <ais523_> > (=<<) singleton 4
13:32:52 <lambdabot> Not in scope: `singleton'
13:32:58 <oklofok> i'm a tired
13:32:58 <ais523_> > (=<<) Data.Set.singleton 4
13:32:58 <lambdabot> Not in scope: `Data.Set.singleton'
13:33:08 <ais523_> > (=<<) (\x -> [x]) 4
13:33:09 <lambdabot> No instance for (GHC.Num.Num [a])
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:33:55 <cheater__> LiftM2?
13:34:00 <cheater__> liftM2?
13:34:02 <ais523_> @hoogle (m m a) -> (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:07 <cheater__> :t liftM2
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:34:42 <ais523_> oh, I'm being stupid
13:35:02 <ais523_> what I'm looking for is id, because I forgot how monads worked
13:35:13 <cheater__> oh yeah it was =<<
13:35:14 <cheater__> anyways
13:35:18 <cheater__> oh right ok
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 <ais523_> :t if
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:27 <lambdabot> [4]
13:37:33 <ais523_> > let f = (\x -> (if (x == 2) then [2,3] else [x])) in do {a <- f 2; f a}
13:37:34 <lambdabot> [2,3,3]
13:37:36 <ais523_> there we go
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:37:56 <lambdabot> arising from a u...
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:06 <lambdabot> arising from a use of `f' ...
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:11 <cheater__> wtf.
13:38:16 <cheater__> > 2
13:38:17 <lambdabot> 2
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:22 <lambdabot> arising from a use of `f' ...
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:26 <lambdabot> arising from a ...
13:38:27 <cheater__> >2 if 2 == x else 3
13:38:32 <cheater__> >2 if 2 == 2 else 3
13:38:40 <cheater__> > 2 if 2 == 2 else 3
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:51 <ais523_> > if 2 == 2 then 3 else 4
13:38:51 <lambdabot> 3
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> No instance for (GHC.Num.Num [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> No instance for (GHC.Num.Num [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:33 <cheater__> go on ais523_
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:36 <lambdabot> [2,3]
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:07 <lambdabot> [2,3,3]
13:41:14 <ais523_> (the map id stuff is just to force it to interpret the output as a list)
13:41:23 <ais523_> oh, duh
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:31 <lambdabot> [2,3,3]
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:35 <lambdabot> [2,3,3]
13:41:46 <Patashu> Gnarl too
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:12 <cheater__> or only as a windows app?
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:20 <lambdabot> Just 2
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:01 <lambdabot> [2,3,3]
13:43:03 <ais523_> umm, what's the syntax in Haskell to use a particular library?
13:43:16 <cheater__> :m +Stuff
13:43:28 <ais523_> that's ghci syntax
13:43:32 <cheater__> dunno then
13:43:36 <cheater__> i suck at haskells
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:06 <ais523_> it does that quite a lot
13:47:11 <ais523_> > id
13:47:12 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a)
13:47:12 <lambdabot> arising from a use of `...
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:20 <Vorpal> :t mplus
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 <Patashu> :t MonadPlus
13:57:04 <lambdabot> Not in scope: data constructor `MonadPlus'
14:00:58 <Patashu> :t =>
14:00:59 <lambdabot> parse error on input `=>'
14:01:06 <Patashu> :t ==
14:01:07 <lambdabot> parse error on input `=='
14:01:10 <Patashu> :t (==)
14:01:11 <lambdabot> forall a. (Eq a) => a -> a -> Bool
14:01:13 <Patashu> :t (=>)
14:01:14 <lambdabot> parse error on input `=>'
14:01:37 <Vorpal> :t (>=)
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:01:38 <Vorpal> maybe
14:01:42 <Vorpal> er
14:01:46 <Vorpal> yeah
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:32 <Vorpal> :i MonadPlus
14:02:36 <Vorpal> hnm
14:02:38 <Vorpal> hm*
14:02:43 <Vorpal> I guess it doesn't do :i
14:02:49 <Vorpal> ?src MonadPlus
14:02:49 <lambdabot> Source not found.
14:02:55 <Vorpal> ?hoogle MonadPlus
14:02:55 <lambdabot> Control.Monad class Monad m => MonadPlus m
14:02:59 <Vorpal> ?hoogle mplus
14:02:59 <lambdabot> Control.Monad mplus :: MonadPlus m => m a -> m a -> m a
14:03:04 <Vorpal> ?src mplus
14:03:04 <lambdabot> Source not found. :(
14:03:29 <Vorpal> Prelude Control.Monad> :i MonadPlus
14:03:29 <Vorpal> class (Monad m) => MonadPlus m where
14:03:29 <Vorpal> mzero :: m a
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:03:34 <Vorpal> well okay
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 <Vorpal> ah
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:06 <cheater__> sorry i got disconnected
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:30 <Vorpal> hm
14:11:47 <ais523_> cheater__: don't worry, we got sidetracked and didn't talk about anything relevant in between
14:12:03 <cheater__> ok so
14:12:07 <cheater__> what were you getting at?
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:34 <ais523_> pretty much
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:42 <Vorpal> hm
14:13:53 <Vorpal> bbl, going to make food
14:14:27 <cheater__> how were you composing return?
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:41 <ais523_> cheater__: yes
14:36:52 <ais523_> in disguise in the OCaml program (where I wrote [a] rather than return a)
14:39:18 <Vorpal> back
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:19 <cheater__> such as?
15:36:20 <ais523_> because monads inherently have a notion of before and after
15:36:24 <ais523_> whereas functions don't
15:36:45 <cheater__> yeah that's fine
15:36:46 <cheater__> but like
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:39 <ais523_> :t >>=
15:38:39 <lambdabot> parse error on input `>>='
15:38:44 <ais523_> :t (>>=)
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:21 <ais523_> umm, wrong prefix
15:39:24 <ais523_> @src (>>=)::([a] -> (a -> [b]) -> b)
15:39:24 <lambdabot> Source not found. I am sorry.
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:33 <cheater__> i think you want a on both
15:39:45 <ais523_> :t concatMap
15:39:45 <lambdabot> forall a b. (a -> [b]) -> [a] -> [b]
15:39:48 <cheater__> hmm
15:39:57 <cheater__> oh right
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:51 <ais523_> yep
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:45:01 <cheater__> ya
15:45:09 <cheater__> but um
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:25:07 <elliott> hello oerjan
17:25:15 <oerjan> g'day
17:27:13 -!- oerjan has quit (Client Quit).
17:28:57 <elliott> bye oerjan
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:55:59 <Gregor> ... wtf
17:56:58 <cheater__> Gregor: define "web program"
17:57:01 <Gregor> @tell oerjan egojoust hasn't been used in months, that code was known buggy.
17:57:01 <lambdabot> Consider it noted.
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:15 <cheater__> ok
17:57:30 <Gregor> Even www.google.com is a webapp, it's just not the most interesting one (arguably)
17:57:32 <cheater__> newgrounds
17:57:50 <elliott> <lambdabot> Gregor: You have 9 new messages. '/msg lambdabot @messages' to read them.
17:57:51 <elliott> wat...
17:58:19 <cheater__> Gregor: wolfgang lambda
17:58:23 <cheater__> Gregor: that's a good one
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:03 <elliott> Gregor: I know that.
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:46 <Gregor> Not any more.
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:53 <elliott> Ah.
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:28 <elliott> Hmmmmmmmmmmmmmm
18:01:30 <elliott> mmmmmmmm
18:01:31 <elliott> mmmmmmmmm
18:01:31 <Gregor> Browsers insist on the PROXY having a properly-signed blah blah blah bullshit key.
18:01:32 <elliott> mm
18:01:33 <elliott> mmmmmm
18:01:34 <elliott> mm
18:01:34 <elliott> mm
18:01:35 <elliott> m
18:01:35 <elliott>
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:01:59 <ais523_> no wonder it's so awful
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:26 <ais523_> it is in some ways
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:05 <Gregor> I spose ...
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:16 <elliott> I'm a total luddite
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:27 <ais523_> yep
18:03:28 <elliott> It'll just be rewriting href=""
18:03:44 <elliott> ais523_: Well that's not Markdown's fault.
18:03:52 <ais523_> no, it isn't
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:22 <elliott> Gregor: Yeah, dunno.
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:07:20 <elliott> which Markdown also has
18:08:16 <ais523_> oh, right, ouch
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:15:22 <elliott> pikhq: I saw.
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:20:44 <ais523_> *can't tell
18:22:34 <elliott> 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:35 <ais523_> that's its purpose
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 <oerjan> um
19:19:31 <lambdabot> oerjan: You have 1 new message. '/msg lambdabot @messages' to read it.
19:19:36 <oerjan> @messages
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:21 <Gregor> Ohwait
19:20:23 <Gregor> lololol
19:20:27 <Gregor> Didn't read the timestamps.
19:20:30 <oerjan> heh
19:20:38 <Gregor> OK, so here's the question: Why did lambdabot tell me I had messages from three MONTHS ago.
19:20:42 <Gregor> Just today.
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:20:49 <elliott> but not THAT long a while
19:21:35 <oerjan> maybe someone restarted lambdabot from backup
19:22:26 <Sgeo> Gregor, dd you aee my maessgae/
19:22:28 <Sgeo> Blag
19:23:03 <elliott> Gregor: dd you aee my maessgae
19:23:58 <Gregor> Sgeo: No?
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:38 <Sgeo> See:
19:24:42 <Sgeo> `quote birth
19:24:43 <Gregor> Sgeo: Boo hoo.
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:50 <elliott> We know.
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:35 <elliott> wat
19:27:50 <elliott> I think the IE team might actually originate from a different universe
19:28:31 <oerjan> html5 kernel mode ftw
19:28:43 <ais523_> oerjan: isn't that what Chrome OS is for?
19:28:51 <oerjan> heck if i know
19:29:15 <elliott> ais523_: Chrome OS is actually just Chrome on X on Gentoo
19:29:15 <ais523_> `pastequotes algebraic
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:32 <elliott> ais523_: which?
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:54 <elliott> well, right
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:08 <ais523_> *tricky
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:01 <Sgeo> Found it, ty
19:41:47 -!- augur has quit (Remote host closed the connection).
19:42:39 <Sgeo> ais523_, did you see what Murphy said?
19:43:06 <ais523_> Sgeo: yes
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:18 <Sgeo> iiuc
19:44:38 <oerjan> heh
19:44:38 <ais523_> oh, right
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:14 <elliott> but good idea
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:46:21 <ais523_> *you're lying
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:26 <elliott> hmm really? okay
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:31 <ais523_> ah, OK
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:07 <oerjan> i don't think so
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:15 <elliott> (Full-world)
19:55:48 <elliott> ais523_: still, even interpreted haskell has to type-check first :)
19:56:14 <oerjan> yeah
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:46 <ais523_> also, what is Omegle?
19:58:50 <oerjan> i think ghci only added full import syntax in a relatively recent version
19:58:55 <Phantom_Hoover> ais523_, yes, it was.
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:03:53 <elliott> ais523_: well, does it?
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:07:53 <ais523_> they could be
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:31 <ais523_> oerjan: oh, I see
20:09:42 <ais523_> mathematically, there's no issue with sets of functions
20:09:45 <ais523_> (and Eq is enough)
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:08 <elliott> ais523_: haha
20:12:20 <elliott> oerjan: wfm
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:24 * elliott reverts
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:13:44 <elliott> oerjan: localised google?
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:11 <oerjan> define:askance
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:56 <elliott> `quote solidity
20:14:57 <HackEgo> ​329) <treederwright> enjoy being locked in your matrix of solidity
20:15:15 <ais523_> ah, I missed that
20:15:25 <elliott> it was pretty lol
20:15:28 <ais523_> it's a good one, anyway
20:16:02 <Phantom_Hoover> Hmm, I'll need to reconsider my Omegle strategy.
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:17:39 <elliott> oerjan: what query?
20:17:49 <oerjan> define:askance i said
20:30:06 * Phantom_Hoover watches the IT Crowd.
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:48:05 <Gregor> X-D
20:48:18 <pikhq> |
20:48:21 <pikhq> / \
20:48:23 <pikhq> CURSES
20:48:28 <pikhq> SO CLOSE
20:49:06 <oerjan> NOT CLOSE AT ALL
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 <elliott> :t scanr tail
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:49 <lambdabot> In the expression: scanr tail
21:10:52 <elliott> :t scanr
21:10:53 <lambdabot> forall a b. (a -> b -> b) -> b -> [a] -> [b]
21:10:58 <elliott> hmm
21:11:16 <elliott> oerjan: [a,b,c,d] -> [[b,c,d],[c,d],[d]] how do
21:11:30 <Deewiant> > tails [a,b,c,d]
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:11:51 <lambdabot> [[b,c,d],[c,d],[d]]
21:12:08 <elliott> Oh, thanks.
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:21 <lambdabot> against inferred type `[a] -> ...
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:46 <elliott> ?pl init . init
21:12:46 <lambdabot> init . init
21:12:48 <elliott> > map (\(x:xs) -> (x,xs)) . init . init . tails $ [a,b,c,d]
21:12:50 <lambdabot> [(a,[b,c,d]),(b,[c,d]),(c,[d])]
21:12:53 -!- HolyBlood has quit (Ping timeout: 246 seconds).
21:12:53 <elliott> That works.
21:12:56 <elliott> :t inits
21:12:57 <lambdabot> forall a. [a] -> [[a]]
21:14:21 <elliott> Map.elems has no predictable result order, right?
21:14:44 <Deewiant> \(x:xs) -> (x,xs) == head &&& tail
21:15:00 <Deewiant> Probably not
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:22:54 <Phantom_Hoover> OOPS WRONG THING
21:26:37 <oerjan> > [(x, xs) | x:xs@(_:_) <- tails [a,b,c,d]]
21:26:38 <lambdabot> [(a,[b,c,d]),(b,[c,d]),(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:29:19 <lambdabot> [(a,[b,c,d]),(b,[c,d]),(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:28 <elliott> the patch:
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:33:26 <ais523_> although it's a good joek
21:33:28 <ais523_> *joke
21:33:33 <TOGoS> oh thank gourd
21:34:02 <ais523_> I think even Vorpal would have realised that was a joke...
21:34:08 <elliott> who's TOGoS
21:34:10 <TOGoS> I had a hunch but, knowing Perl...
21:34:15 <elliott> and what's a gourd
21:34:19 <ais523_> <Vorpal> ais523, I don't get it
21:34:19 <elliott> oh, a plant
21:34:27 <elliott> ais523_: uncanny
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:45:29 <elliott> haha
21:48:36 <ais523_> pluggable pragmata's a little bizarre as language features go
21:52:48 <oerjan> pragmatic plugs
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:03:58 <ais523_> elliott: ah
22:04:08 <ais523_> both are interesting
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:04:26 <elliott> :D
22:05:24 <ais523_> how do you get the higher bits?
22:05:31 <elliott> dunno
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:15 <pikhq> (in its build)
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:37:58 <coppro> minutes?
22:40:16 <pikhq> Yes.
22:40:41 <coppro> wow
22:41:07 <Phantom_Hoover> pikhq, still tuppin'?
22:46:39 <Phantom_Hoover> http://xkcdexplained.com/
22:46:43 <Phantom_Hoover> Aww, it stopped.
22:46:46 <Phantom_Hoover> Ages ago, too.
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:22 <Phantom_Hoover> So true. Godspeed, good analysts.
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.
22:58:22 <Phantom_Hoover> "The Author hates women."
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:07:20 <Phantom_Hoover> *tuppin'
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:35:12 <alegend45> Whaddya' think?
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:01 <alegend45> What do you mean?
23:43:06 <alegend45> A class?
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:44:37 <alegend45> Hmm...
23:44:46 <alegend45> Malbolge 2.0...
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:29 <alegend45> Maybe more encryption?
23:45:59 <Patashu> Break this SHA-256 hash to continue programming?
23:46:15 <alegend45> O_O
23:46:21 <alegend45> I've got it!
23:47:05 <oerjan> we already have a hash-breaking esolang
23:47:15 <oerjan> shafuck or something
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:47:54 <Patashu> bitcoinfuck
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:05 <Patashu> iirc
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:15 <Patashu> aaah
23:56:30 <Patashu> polymorphic code }:)
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.
2011-05-19
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:10 <Patashu> controversy?
04:40:47 <Patashu> Oh, I see
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:28:00 <Lymia> Like "emacs ftw"
11:32:10 <Sgeo> Um
11:32:18 <Sgeo> It contained "Emacs rules", yes
11:32:51 <Lymia> Now.
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:46:16 <cheater_> so what can we say now?
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:28 <cheater_> how about eight motherboards
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).
11:58:38 <cheater_> ya
12:30:56 -!- Vorpal has joined.
13:14:24 -!- Phantom_Hoover has joined.
13:19:11 <Phantom_Hoover> Hmm.
13:21:17 -!- Tritonio has quit (Quit: Leaving).
13:21:44 -!- Tritonio has joined.
13:29:20 <Phantom_Hoover> `quote
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:34:14 <cheater__> sup
15:34:19 <cheater__> SUP ELLIOTT
15:34:28 <cheater__> MY DEAR FRIEND TYPE PERSON
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:41:37 <ais523_> wow, I'm still connected?
15:42:10 <cheater__> no you have just joined
15:42:20 <cheater__> oh wait!
15:42:24 <cheater__> no you haven't!
15:42:29 <cheater__> wow indeed.
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:01:37 <cheater__> ais523: ok, thanks
16:01:50 <cheater__> yeah
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:17 <elliott> well
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:58:51 <pikhq> :P
16:59:22 <ais523> elliott: bleh, I forgot case-sensitivity
17:01:07 <elliott> ais523: 'ocaml 'is 'way 'better
17:01:11 <elliott> ''yay
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:16:54 <Phantom_Hoover> He is quite the connoisseur.
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:18:38 <Phantom_Hoover> s/Sgeo_/elliott/
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:31 <Phantom_Hoover> I HAVE NOT
17:19:35 <elliott> Well then.
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:20:38 <oklofok> worms ropes = <3
17:20:47 <elliott> oklofok: concur
17:20:49 <oklofok> you can fly
17:21:00 <Phantom_Hoover> Sgeo_, oh god what is HW.
17:21:04 <oklofok> like magic but you also get an erection
17:21:05 <Sgeo_> Hedgewars
17:21:06 <elliott> Phantom_Hoover: worms clone
17:21:06 <Phantom_Hoover> HactiveWorlds?
17:21:28 <elliott> oklofok: rope race replays are so much fun to watch it's ridiculous
17:21:43 <elliott> poor spacebars :(
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:18 <elliott> fuckin' A
17:25:28 <elliott> i should install it
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:25:59 <Phantom_Hoover> elliott, hmm, can you run W:A on Linux?
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:14 <Phantom_Hoover> Also: can you pirate it easily?
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:26:57 <elliott> They are wonderful Brits.
17:27:00 <elliott> Sgeo_: ...
17:27:06 <elliott> Sgeo_: You previously needed a patched DLL to use it with Wine.
17:27:10 <Phantom_Hoover> Can I use a cruise missile.
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:25 <Phantom_Hoover> In a cruise missile?
17:27:30 <elliott> So yeah, Wine is now a maintained platform for W:A.
17:27:32 <elliott> Which is awesome.
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:31 <monqy> good plan
17:28:33 <monqy> sure to work
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:41 <monqy> oh
17:29:42 <elliott> you forgot (bad)
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:12 <elliott> And "updates and other".
17:36:24 <elliott> Sgeo_: IIRC this one has a weird installer.
17:36:29 <Sgeo_> Ah
17:36:39 <elliott> Can someone say one nine two dot one six eight dot one dot one?
17:36:51 <Sgeo_> 192.168.1.1
17:36:54 <elliott> thx
17:36:58 <Sgeo_> yw
17:37:03 <Phantom_Hoover> Have you *still* not fixed that.
17:37:12 <elliott> Phantom_Hoover: Indeed.
17:37:17 <elliott> Oh shit, I won't be able to set the timer for bombs.
17:37:21 <elliott> O H W E L L
17:37:39 <Phantom_Hoover> I just realised I have 6 MSPA wiki tabs open.
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:39:54 <Phantom_Hoover> 7 minutes, it sayss.
17:39:56 <Phantom_Hoover> *says
17:39:59 <Phantom_Hoover> Also, Firefox?
17:40:03 <Phantom_Hoover> I thought you used Chrome.
17:40:07 <elliott> I reinstalled.
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:41:49 <elliott> It has repos.
17:41:51 <Phantom_Hoover> Doesn't look like it.
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:07 <Phantom_Hoover> 1MiB/s.
17:44:15 <Phantom_Hoover> 1.12, to be precise.
17:44:27 <elliott> Bastard.
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:44:49 <elliott> busy
17:45:10 <Phantom_Hoover> Hmm, what's the APT line for that repository.
17:45:16 <Phantom_Hoover> deb http://dev.carbon-project.org/debian/wine-unstable squeeze main?
17:45:24 * elliott pauses W:A for apt.
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:45:57 <Phantom_Hoover> You're... right.
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:17 <Phantom_Hoover> Bastard.
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:06 <Phantom_Hoover> Oh, torrent completed.
17:48:08 <elliott> Hurry UP apt.
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:51:33 <elliott> Coem oooooooon.
17:52:03 <elliott> [asterisk]Come
17:52:55 <elliott> OK continuing the torrent.
17:52:58 <elliott> Phantom_Hoover: SOON I WILL HAVE YOUR BRAIN
17:53:06 <Phantom_Hoover> food →
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:41 <elliott> worms two sucks
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:11 <Phantom_Hoover> SO MANY DEBS
17:59:16 <Phantom_Hoover> WHICH DEB SHOULD I TAKE
17:59:32 <elliott> all of them, duh
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:24 * elliott winecfg
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:01:02 <elliott> "Oh well".
18:03:13 <elliott> Phantom_Hoover: Who cares how cluttered the folder is?
18:03:16 <elliott> dpkg -i wine[tab]
18:03:18 <elliott> Problem solved.
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:18 <elliott> [asterisk]That
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:04:56 <elliott> - find a terminal,
18:05:00 <elliott> - type "alsamixer\n";
18:05:03 <elliott> - use the arrow keys;
18:05:06 <elliott> - Control+C
18:05:09 <elliott> every time I want to change the volume.
18:05:14 <Phantom_Hoover> Oh, right, it does it the other way around.
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:25 <elliott> Just keep installing.
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:17 <elliott> Obviously.
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:04 <Phantom_Hoover> Ah.
18:07:22 <Phantom_Hoover> Canonical, the people who gave APT Guy access to their repositories.
18:07:33 <Sgeo_> APT Guy?
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:08:54 <Phantom_Hoover> No sound.
18:09:01 <elliott> Phantom_Hoover: Meh.
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:10 <Sgeo_> >.>
18:09:13 <Phantom_Hoover> err:alsa:wine_snd_pcm_recover underrun occurred
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:17 <Sgeo_> I have no idea
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:01 <Sgeo_> big kernel lock?
18:19:17 <elliott> pikhq: Cool.
18:19:19 <Phantom_Hoover> What big kernel lock?
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:34 <elliott> Hmm, nope.
18:20:36 <elliott> Right.
18:20:38 <pikhq> It missed the 2.6.38 merge window.
18:20:39 <elliott> Sweet.
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:23 <Sgeo_> (from 2004)
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:12 * Sgeo_ mindboggles
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:16:39 <Phantom_Hoover> "Ethynol is an alcohol (ynol)..." — WP
19:16:41 <Phantom_Hoover> Ynol.
19:16:46 <Phantom_Hoover> Best word?
19:19:18 <oklofok> second best
19:20:36 <Phantom_Hoover> What's the best?
19:20:47 -!- oerjan has joined.
19:22:07 <olsner_> "oklo"?
19:22:43 <ais523> o
19:22:58 <oerjan> oklofok is secretly an ancient nuclear reactor
19:24:15 <oklofok> o
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:34:05 <oklofok> good question
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:46:59 <Sgeo_> ais523, linky?
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:47:36 <oerjan> heh
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:10:44 <lambdabot> "20bda49910"
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:53 <lifthrasiir> just a pointer, i guess
20:12:55 <oerjan> `factorize 140620634384
20:12:56 <HackEgo> No output.
20:13:01 <oerjan> `factor 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 <ais523> :t showHex
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:16:24 <oerjan> yes i guess
20:16:34 <oerjan> @src Show
20:16:34 <lambdabot> class Show a where
20:16:34 <lambdabot> showsPrec :: Int -> a -> ShowS
20:16:34 <lambdabot> show :: a -> String
20:16:35 <lambdabot> showList :: [a] -> ShowS
20:17:02 <oerjan> showsPrec and showList use it, although show can be defined instead
20:17:15 <oerjan> @src ShowS
20:17:15 <lambdabot> type ShowS = String -> String
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:15 <elliott> so to speak
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:20:46 <lifthrasiir> you are correct
20:21:51 <ais523> oerjan: hmm, that makes sense
20:21:51 <elliott> oerjan: Right.
20:21:52 <lifthrasiir> convergent evolution?
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:08 <oerjan> polymorphism?
20:26:27 <elliott> oerjan: of show
20:26:36 <elliott> it can't fuse a function it doesn't know about...
20:26:44 <oerjan> true
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:31:43 <Sgeo_> Ok
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:34:03 <elliott> Phantom_Hoover: you too.
20:34:19 <ais523> fizzie: haha
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:03:48 <elliott> WA fucked up.
21:03:54 <elliott> Restarting it.
21:04:25 <elliott> Phantom_Hoover: Sgeo_: Ping.
21:05:06 <Phantom_Hoover> Pong.
21:05:11 <SgeoN1> Oh
21:05:39 <SgeoN1> Spongy pong
21:05:44 <SgeoN1> Pongy
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:09:46 <elliott_> FUCK
21:10:56 <SgeoN1> Shouldbwe quit again?
21:11:03 <elliott_> Yes.
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:11:56 <elliott_> Sgeo_: My game is crashy.
21:11:58 <elliott_> That wouldn't help.
21:12:02 <elliott_> Unless you want to play without me :'(
21:12:08 <SgeoN1> Nono
21:12:14 <elliott_> SNIFF
21:12:14 <elliott_> SNIFF
21:12:15 <elliott_> SNIFF
21:12:29 -!- SgeoN1 has quit (Read error: Connection reset by peer).
21:13:02 <elliott_> Phantom_Hoover:
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:39:57 <elliott_> yes.
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:45:15 <oerjan> mzerokin
22:45:54 <SgeoN2> mpluskin
22:46:49 -!- SgeoN1 has joined.
22:46:49 -!- SgeoN2 has quit (Read error: Connection reset by peer).
22:48:29 <copumpkin> :o
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:42 <elliott_> oh sure
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:15 <elliott_> what's that
23:14:39 <Sgeo_> Hold on
23:14:43 <Sgeo_> http://worms2d.info/Tube_Trap
23:15:56 <elliott_> is it any fun
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:16:37 <Sgeo_> No idea
23:17:00 <monqy> http://worms2d.info/images/1/1b/TubeTrap04_TheBirds.png looks legitimate
23:17:15 <elliott_> the brrrdz
23:17:27 <monqy> the clcktwr
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:21 <elliott_> Sgeo_: up for a roperace?
23:19:25 <Sgeo_> elliott_, sure
23:19:36 <Sgeo_> But I should be able to host tube trap eventually
23:20:01 <elliott_> password is PH
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:17 <elliott_> Sgeo_: quick roper first?
23:43:37 <Sgeo_> I want to set this up, then roper, then Tube Trap
23:44:04 <elliott_> sure
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:05 <elliott_> Sgeo_: asdfghjk
23:48:12 <Sgeo_> Hold on
23:48:54 <Sgeo_> I need permissions to change a shortcut on my desktop?
23:48:57 <Sgeo_> What.
23:58:48 -!- myndzi has joined.
2011-05-20
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:43:47 <elliott_> oerjan: X-D
00:43:52 <elliott_> google translate?
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:39 <elliott_> do you think it's tc?
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:46:40 <oerjan> what is gemini?
00:46:52 * Sgeo_ stares at oerjan
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:06 <oerjan> oh that one
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:48:57 <Sgeo_> Ah
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:22 <elliott_> thought "whoa creepy"
00:50:24 <elliott_> next line
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:53:52 <elliott_> which discussion
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:20 <elliott_> istr having one of those
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:11 <fpa> aww
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:02 <madbr> hey
02:36:17 <elliott> yeh
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:37:42 <elliott> jacquard loom? totally.
02:37:52 <madbr> eh
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:10 <madbr> ahem yeah right
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:44:42 <madbr> s
02:44:50 <madbr> to get NTSC
02:44:52 <madbr> colors
02:45:04 <madbr> (but it probably has the wrong clock rate for that)
02:45:04 -!- pikhq_ has joined.
02:45:12 <madbr> Or alternatively
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:28 <elliott> instructions
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:49:38 <elliott> most of, even
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:02 <madbr> well
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:17 <madbr> pikhq: right
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:22 <madbr> well, yeah
02:58:37 <pikhq_> And psuedocolor.
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:00:22 <elliott> that sounds pretty
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:44 <elliott> madbr: csixtyfour too
03:06:49 <madbr> yeah the CGA trick is the same thing
03:06:50 <pikhq_> Oh, wait, never mind.
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:39 <elliott> hey pikhq_
03:07:40 <elliott> shiro
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:09:51 <elliott> oh fucking hell
03:10:34 <elliott> No instance for (Applicative (MaybeT Shiro))
03:10:34 <elliott> arising from the superclasses of an instance declaration
03:10:34 <elliott> asfdgh
03:10:43 <elliott> ?src Applicative
03:10:43 <lambdabot> class Functor f => Applicative f where
03:10:43 <lambdabot> pure :: a -> f a
03:10:43 <lambdabot> (<*>) :: f (a -> b) -> f a -> f b
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:11 <madbr> right
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:44 <elliott> gah
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:19:57 <lambdabot> x >>= \ r -> MaybeT (return r)
03:20:01 <elliott> ?. pl undo do { r <- x; MaybeT (return r) }
03:20:01 <lambdabot> MaybeT . return =<< x
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:01 <pikhq_> Actually...
03:21:18 <pikhq_> madbr: With just two outputs I think you could do S-Video.
03:22:33 <elliott> ?hoogle guard
03:22:33 <lambdabot> Control.Monad guard :: MonadPlus m => Bool -> m ()
03:22:33 <lambdabot> Language.Haskell.TH data Guard
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:23:43 <elliott> any suggestions?
03:23:52 <elliott> hmm wait
03:23:53 <elliott> is that just MaybeT
03:23:55 <elliott> no, it's not
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:33:20 <madbr> yeah
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:38:24 <coppro> second
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:18 <elliott> raptune
03:54:23 <elliott> its................
03:54:24 <elliott> time party
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:55:50 <elliott> its ok because
03:55:52 <elliott> once you hear the news
03:55:55 <elliott> SHEEPFUCKERS DECIMATED
03:55:57 <elliott> just
03:56:00 <elliott> become christain
03:56:03 <elliott> and ull be taken
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:24 <pikhq_> So I win.
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
03:57:27 <elliott> or fix this code first
04:07:50 <elliott> where's oerjan when you need him
04:11:14 <elliott> so... it is five am...
04:11:16 <elliott> i should
04:11:17 <elliott> go to slepe
04:11:19 <elliott> slepe
04:11:57 -!- variable has quit (Remote host closed the connection).
04:12:36 <elliott> Sgeo_
04:12:38 <elliott> name my function
04:12:54 <Sgeo_> Your... function?
04:13:05 <Sgeo_> You mean like id?
04:13:53 -!- variable has joined.
04:14:08 <elliott> what
04:14:13 <elliott> ??? :: (Monad m) => Maybe a -> MaybeT m a
04:14:13 <elliott> ??? = MaybeT . return
04:14:14 <elliott> name it
04:14:26 <elliott> i need to go to sleep but i can't until its named
04:14:45 <elliott> [asterisk]it's
04:16:07 <Sgeo_> makeTransformer
04:16:13 <Sgeo_> generalize
04:16:28 <elliott> ...
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:32 <elliott> yeah no never mind
04:17:34 <pikhq_> elliott: liftMaybe
04:17:39 <elliott> pikhq_: its not a lift
04:17:55 <pikhq_> Oh, right, perhaps I should sleep.
04:17:59 <Sgeo_> lower
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:20:31 <elliott> hey pikhq_
04:20:32 <elliott> it is five twenty
04:20:33 <elliott> am
04:20:34 <elliott> should i
04:20:36 <elliott> bed-><_
04:20:39 <elliott> if so then
04:20:41 <elliott> name my function
04:20:42 <elliott> so i can
04:20:42 <elliott> bed
04:21:00 -!- augur has joined.
04:21:23 <pikhq_> elliott: maybe
04:22:12 <elliott> :t maybe
04:22:12 <lambdabot> forall b a. b -> (a -> b) -> Maybe a -> b
04:22:14 <elliott> try again
04:22:54 <elliott> meh
04:22:56 <elliott> i guess ill go to bed
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:51 <monqy> october 21
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:50:44 <madbr> how is that love
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:27 <pikhq_> oklofok: "Barely"?
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:40 <oklofok> yes
05:02:41 <pikhq_> No argument.
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:04:37 <monqy> fucking insane
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:01 <oklofok> well okay
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:08:31 <monqy> that is my dream
05:09:02 <oklofok> my theory: that's what "rapture" actually means, they just chicken out every time.
05:09:19 <oklofok> erm
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:12:58 <monqy> good stuff
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:11 <augur> oklofok! :D
05:20:46 <oklofok> that story is the most horrible thing ever
05:20:47 <oklofok> hi augur
05:20:58 <augur> sup you
05:21:06 <oklofok> well i'm going to take a shower now
05:21:11 <oklofok> otherwise good
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:22:33 <oklofok> *god
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:25:15 <oklofok> *sent
05:27:35 <pikhq_> madbr: There's also the obvious after-the-fact editing.
05:27:51 <pikhq_> "So God spoke to God"
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:15 <madbr> right
05:40:26 <madbr> this one is good:
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:48 <pikhq_> Yup.
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:34:02 <madbr> nice guy
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
11:53:18 <oerjan> eating breakfast
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:30 <Patashu> 6 pm
12:14:43 <Zwaarddijk> GMT?
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:19 <Zwaarddijk> but uh
12:15:20 <Patashu> or maybe it'll suddenly rush forward for time zones that are wide
12:15:23 <Zwaarddijk> it will move in discrete steps, no?
12:15:24 <Patashu> I really don't know
12:15:32 <Patashu> you should ask someone who knows more about this
12:15:34 <Zwaarddijk> entire time zones at a time
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:33 <Lymia> Patashu.
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:06 <Zwaarddijk> oerjan: yeah but not properly
12:18:13 <Zwaarddijk> it's back!
12:18:20 <Lymia> Patashu, besides.
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:21 <Lymia> So.
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:06 <Lymia> Besides.
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:21 <Lymia> </bad joke>
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:37 <Lymia> Patashu.
12:21:37 <Lymia> Also.
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:54 <Patashu> Have they?
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:21 <Lymia> Patashu.
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:17 <Lymia> ..
12:23:26 <Patashu> prime_sieve() failed to start because Jesus heard our sincere prayers and spared our CPU from its great burden.
12:23:32 <Patashu> Praise to the Lord!
12:24:16 <fizzie> "Insufficient faith, please pray again later."
12:24:56 <oerjan> out of faith error
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:22 <Patashu> Hah
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:22 <Patashu> LOL scriptures
12:33:35 <Patashu> Instead of packages, testaments?
12:33:54 <Lymia> Hmm...
12:33:57 <Lymia> Patashu.
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:35:49 <Lymia> Hmm.
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:36:58 <Lymia> I.. guess so.
12:37:10 <Lymia> Anyways.
12:37:30 <Patashu> he's right
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:04 <Patashu> or something
12:39:11 <Lymia> Dunno.
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:14 <Lymia> Hmm...
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:46:59 <Lymia> Period.
12:47:06 <Patashu> That makes sense
12:47:15 <Patashu> After all, local scopes are moral relativism
12:47:19 <Patashu> Which the bible clearly forbids
12:48:01 <Zwaarddijk> but
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:15 <Zwaarddijk> which is a kind of moral relativism
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:35 <Patashu> Ssssshhhhhh
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:17 <Patashu> Hah
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:07 <Zwaarddijk> most commands are sinful in some way!
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:38 <Lymia> Patashu, heh.
12:50:40 <Patashu> But we need math to figure out our rapture predictions
12:50:41 <Patashu> Well
12:50:42 <Patashu> Elementary math
12:50:46 <Patashu> And pow()
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:03 <Lymia> Patashu, but.
12:51:12 <Patashu> Well, it doesn't have to be annoying, just thematic and different in some way
12:51:15 <Patashu> Annoying is just a bonus
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:01 <Patashu> ARGH
12:52:09 <Patashu> Begone, vile high level math
12:52:11 <Patashu> Also
12:52:21 <Patashu> If there's OpenGL support we need a WireCross() and SolidCross() function
12:52:37 <Lymia> :3
12:54:05 <Lymia> What about input
12:54:58 <Patashu> Logos
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:17 <Patashu> Hebrew?
12:56:23 <Patashu> When was the last time a rapture monger read any hebrew
12:56:26 <Patashu> Otherwise I'd agree
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:57:30 <Patashu> maybe method chaining?
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:27 <Zwaarddijk> obviously not.
13:00:34 <Zwaarddijk> yes.
13:00:45 <Patashu> israel has to rebuild the great temple, I think
13:00:47 <Patashu> something like that
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:01 <Lymia> syntax*
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:04 <Patashu> Need a name then
13:03:09 <Patashu> Rapture?
13:03:35 <Lymia> mmm.
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:52 <Patashu> I don't think I follow
13:03:55 <Lymia> Do we make it usable and annoying, or useless and buggy.
13:04:00 <Lymia> useless and annoying*
13:04:09 <Lymia> Or neither.
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:36:37 <Patashu> feel free to add on
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:58 <Phantom_Hoover> You mean with all the time shenanigans?
13:56:59 <lambdabot> Phantom_Hoover: You have 5 new messages. '/msg lambdabot @messages' to read them.
13:57:01 <Sgeo__> Yes
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.
13:59:11 <Phantom_Hoover> Don't skip it, though, it becomes plot-relevant.
14:10:24 <Sgeo__> Not skipping anything
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:33:02 <Phantom_Hoover> Patashu, have you ever read SBaHJ.
14:34:53 <Patashu> yes
14:35:02 <Phantom_Hoover> THEN HOW CAN YOU DISAGREE
14:35:18 <Patashu> You're just being silly
14:35:39 <Phantom_Hoover> NO I'M NOT
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:03:24 <Phantom_Hoover> "£$"£$%ing connection.
15:05:30 -!- FireFly has joined.
15:09:44 -!- TOGoS has joined.
15:11:07 <Phantom_Hoover> `quote
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:25:25 <Phantom_Hoover> You know I think that might not be a coincidence.
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:35 <Lymia> 205.172.19.193
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:46:19 <elliott> wat
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:13 <elliott> that just sounds spammy
16:48:15 <Phantom_Hoover> We don't.
16:48:16 <Lymia> For fun.
16:48:17 <Phantom_Hoover> Lymia does.
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:42 <elliott> yeah
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:23 <Phantom_Hoover> Clearly God is in a synchronous orbit with Earth.
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:15 <Phantom_Hoover> Sorry what about my space station theory.
16:50:16 <elliott> which is a nice early warning system
16:50:20 <elliott> Phantom_Hoover: yes it's good.
16:50:25 <Phantom_Hoover> Lymia, wait, why would a server go down/
16:50:36 <Phantom_Hoover> It's not exactly going to get raptured.
16:50:38 <elliott> X-D
16:50:41 <elliott> Devout server
16:50:49 <Lymia> Apparently there's supposed to be earthquakes, right?
16:51:04 <Phantom_Hoover> I think that comes afterwards.
16:51:07 <elliott> well earthquakes aren't enough to bring a server down
16:51:09 <elliott> but hey
16:51:10 <elliott> get this
16:51:16 <elliott> we get temporary peace from the Devil after all this
16:51:19 <elliott> no more war
16:51:22 <Lymia> :3
16:51:27 <elliott> satan is obviously very caring
16:52:43 <Phantom_Hoover> Obviously!
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:17 <Phantom_Hoover> While God tells us not to do anything interesting.
16:53:20 <elliott> ais523: I like it a lot and subscribe to the list, so yeah, I guess so?
16:53:26 <Phantom_Hoover> I mean come on, *shellfish*?
16:53:29 <Phantom_Hoover> They're delicious!
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:53:54 <Phantom_Hoover> ais523, that's OK, shellfish aren't actually fish.
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:19: <oklofok> erm
16:55:19 <elliott> 05:09:25: <oklofok> i mean it means they tell us
16:55:19 <elliott> :D
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:20 <elliott> ??? = MaybeT . return
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:58:48 <elliott> [asterisk]indentation.
16:59:00 <elliott> Deewiant: BTW IMAP's spec has to be the absolute worst RC spec of them all.
16:59:01 <Deewiant> What's that?
16:59:09 <elliott> O(n -- )Return instruction n to its old function
16:59:09 <elliott> Clarification
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:17 <Deewiant> I meant, the indentation.
16:59:20 <elliott> I know.
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:50 <Deewiant> heh
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:37 <elliott> is this actually real :D
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:26 <elliott> hmm oh dear
17:05:31 <elliott> i might wake up just before the rapture tomorrow
17:06:10 <elliott> so wait
17:06:15 <elliott> does the rapture respect daylight savings
17:06:57 <Phantom_Hoover> I think so
17:07:04 <elliott> awesome
17:07:04 <Lymia> So.
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:40 <monqy> whats PM
17:08:52 <elliott> anyway the rapture is no biggie
17:08:54 <elliott> if it happens
17:09:02 <elliott> convert to christianity, believing won't be particularly difficult at that point
17:09:06 <elliott> wait until you die
17:09:08 <elliott> problem solved
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:50 <monqy> all of them
17:12:59 <TOGoS> Extratorrential life
17:13:24 <TOGoS> even the microbes
17:14:52 <Lymia> Extraterrestrial*
17:14:56 <Lymia> opps
17:15:01 <TOGoS> opopos
17:17:04 <pikhq> Lymia: Catholic church doctrine is that Jesus died for their sins, too.
17:17:54 <elliott> alien sins :D
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:22:30 <elliott> Sgeo_: Don't skip it.
17:44:04 <pikhq> Mmm, coffee.
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:24 <elliott> Well... then no.
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:54:58 <pikhq> Yes.
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:07 <elliott> ais523: tell that to KDE
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:20 <elliott> ...what?
18:04:25 <pikhq> How could it?
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:46 <elliott> erm, and?
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:54 <elliott> so it doesn't matter
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:04:59 <elliott> ais523: what??
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:03 <ais523> not on my computer
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:06:56 <elliott> pikhq: line thief
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:51 <elliott> yes, /you/
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:24 <Deewiant> No, I wouldn't :-P
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:47 <elliott> you're all guilty
18:19:58 <ais523> elliott: what does the function actually /do/?
18:20:09 <elliott> ??? :: (Monad m) => Maybe a -> MaybeT m a
18:20:09 <elliott> ??? = MaybeT . return
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 <elliott> not
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:21:50 <elliott> ais523: not really, no
18:22:04 <elliott> lift :: M a -> MaybeT M a
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:23 <elliott> pikhq: ugly :(
18:22:27 <elliott> it's a common operation
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:01 <Deewiant> If you'd generalize it, toT
18:23:19 <pikhq> Deewiant: Impossible to generalise without a typeclass.
18:23:26 <Deewiant> I know
18:23:26 <elliott> Deewiant: What is it again? maybe mzero return?
18:23:29 <elliott> Or was it maybe mzero mplus
18:23:41 <Deewiant> What is what
18:23:45 <elliott> The generalised version
18:24:06 <ais523> elliott: there's actually probably a category theory name for doing that
18:24:10 <elliott> Ah, maybe mzero retur
18:24:12 <elliott> Ah, maybe mzero return
18:24:12 <Deewiant> ?ty maybe mzero return
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:31 <ais523> :t maybe
18:24:32 <lambdabot> forall b a. b -> (a -> b) -> Maybe a -> b
18:24:46 <elliott> ais523: it's the catamorphism :-P
18:24:52 <elliott> morphacatism
18:25:34 <ais523> oh, is it that maybe x f Nothing = x, maybe x f (Just y) = f y?
18:25:53 <pikhq> Yeah.
18:26:40 <elliott> hey, rapture is in two hours for australias
18:26:41 <elliott> australians
18:26:53 <Phantom_Hoover> Hello everybody.
18:26:57 <elliott> ooh, wait, "Kingston5:56NFT"
18:27:03 <elliott> four minutes until the somewhere-in-Australia rapture
18:27:06 <Phantom_Hoover> Maybe we should ask DMM.
18:27:10 <elliott> oh, it's already happening in New Zealand
18:27:17 <elliott> RIP 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:14 <elliott> RIP.
18:33:21 <pikhq> Oh? Hmm.
18:33:55 <pikhq> Oh, they're UTC+13 right now.
18:34:16 <Lymia> UTC+13?
18:34:18 <Lymia> That exists?
18:34:24 <Lymia> I thought it was -12 to +12
18:34:31 <elliott> They break the rules.
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:50 <elliott> Yes it is.
18:34:52 <elliott> 6:35 Saturday (NZST) - Time in Wellington, New Zealand
18:34:55 <elliott> Oh wait.
18:34:56 <elliott> Is that in the morning.
18:35:02 <pikhq> Yeees.
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:35:56 <elliott> Shiet.
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> ioMaybe m =
18:36:53 <elliott> toMaybeT =<<
18:36:53 <elliott> liftShiro ((Just <$> io m) `catchShiro` \(e::IOException) -> return Nothing)
18:36:55 <elliott> Behold the ugly.
18:37:26 <pikhq> Lymia: Kiribati uses UTC+13 and UTC+14 for civil time.
18:37:51 <Lymia> Ah.
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:48 <elliott> ?pl guard . not
18:40:48 <lambdabot> guard . not
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> Shiro/Utils.hs:149:13:
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:01 <elliott> at Shiro/Utils.hs:149:1
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:35 <elliott> Hmm, wtf
18:44:36 <elliott> --ioMaybe :: IO a -> MaybeT Shiro a
18:44:36 <elliott> ioMaybe m = liftShiro $ (return <$> io m) `catchShiro` \(_::IOException) -> mzero
18:44:38 <elliott> Just started working
18:44:40 <elliott> Oh, type signature
18:45:10 <Deewiant> What's liftShiro's type?
18:47:35 <elliott> It's
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:51:08 <Deewiant> Or wait, io is already liftIO
18:51:16 <Deewiant> So just drop the outer one
18:52:35 <Deewiant> But no, that won't work yet
18:52:36 <elliott> Hmm, that works
18:52:40 <Deewiant> Hmm, it does?
18:52:40 <elliott> Well, it types
18:52:47 <elliott> That's arguably not the same thing :)
18:52:52 <elliott> Actually wait, why would that work
18:52:54 <elliott> That makes no sense
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:21 <elliott> io = liftIO
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:54:58 <Deewiant> Sure it does?
18:55:10 <Deewiant> Which monad package are you using :-D
18:55:53 <elliott> Deewiant: The MaybeT one.
18:55:55 <pikhq> I hereby ban people from using makedepend.
18:55:56 <elliott> Oh wait.
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:22 <elliott> Isn't that mtl
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:56:44 <elliott> Haskell Platform :P
18:56:56 <Deewiant> That has MonadPlus as well
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:57:49 <Deewiant> I doubt it
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:36 <elliott> Deewiant: It does? X_X
18:58:50 <Deewiant> elliott: See the autogenerated 'instances' list :-P
18:58:53 <Deewiant> Or the source
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:44 <elliott> It's bugging me :P
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:02:26 <Deewiant> So
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:15 <Deewiant> I think
19:03:33 <elliott> Nope
19:03:34 <elliott> Deewiant: catchShiro :: (Exception e) => Shiro a -> (e -> Shiro a) -> Shiro a
19:03:44 <Deewiant> Hmm
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:05 <elliott> And io m too
19:04:19 <elliott> *Shiro.Utils> mzero :: Shiro ()
19:04:19 <elliott> <Shiro>
19:04:22 <elliott> I'm using transformers /and/ mtl it seems
19:04:23 <elliott> That's
19:04:25 <elliott> That's not a good thing is it
19:04:29 <Deewiant> Dunno
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:45 <Deewiant> Yeah, it does
19:04:51 <elliott> ais523: toMaybeT for now
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:17 <elliott> Deewiant: Yeah :P
19:05:20 <elliott> That won't work.
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:13:14 <elliott> Oh dear GOD this code.
19:13:26 <elliott> http://sprunge.us/eNNK
19:13:28 <elliott> WHAT WAS I THINKING
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:14:38 <elliott> :D
19:15:58 <ais523> B.foldl'?
19:16:14 <Deewiant> Bytestring.foldl'
19:16:20 <Deewiant> s/s/S/
19:17:32 <Deewiant> But hey, at least it's short!
19:17:51 <elliott> Deewiant: And fast!
19:17:58 <Deewiant> Nope!
19:18:00 -!- myndzi has quit (Ping timeout: 246 seconds).
19:18:15 <elliott> Deewiant: Eh?
19:18:19 <elliott> That mergeByteString /is/ fast :P
19:18:27 <Deewiant> Compared to what :-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 <elliott> Instant to my perception.
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:22:30 <elliott> I...
19:22:32 <elliott> Already did that.
19:23:27 <elliott> SpecConstr
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:24:56 <elliott> real0m1.821s
19:25:46 <elliott> Yeah, it's added .8 seconds, JESUS
19:25:50 <elliott> That's not good
19:25:54 <elliott> That's not good at all
19:26:46 <Deewiant> heh
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:48 <elliott> Hmm
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:11 <Deewiant> Who'da thunk 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:51 <ais523> zzo38: no
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:39:35 <ais523> no
19:40:03 <elliott> how strange
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:27 <elliott> ais523: it was sarcasm
19:41:30 <elliott> hey oerjan name my function
19:41:34 <oerjan> fred
19:41:45 <elliott> perfect but no
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:41:57 <elliott> ??? = MaybeT . return
19:42:00 <elliott> ??? :: (Monad m) => Maybe a -> MaybeT m a
19:42:02 <elliott> ??? = MaybeT . return
19:42:02 <elliott> oops
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:42 <oerjan> aha
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:01 <elliott> and you can do
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:12 <elliott> oerjan: yes, indeed
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:45 <oerjan> hm
19:44:52 <oerjan> @hoogle Maybe a => m a
19:44:53 <lambdabot> Warning: Unknown class Maybe
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:01 <oerjan> er
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:13 <oerjan> @more
19:45:20 <elliott> it'd prompt if there was more
19:45:23 <elliott> oerjan: liftMaybe is wrong
19:45:25 <elliott> it's not a lift
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:03 <oerjan> oh hm
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:46:44 <lambdabot> No results found
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:30 <oerjan> *if you
19:47:36 <oerjan> *_composition_
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:47:59 <oerjan> :h mconcat
19:48:04 <oerjan> :t mconcat
19:48:04 <lambdabot> forall a. (Monoid a) => [a] -> a
19:48:10 <oerjan> :t msum
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:30 <elliott> oerjan: um no.
19:51:41 <oerjan> yes it is.
19:51:44 <oerjan> :t liftIO
19:51:45 <lambdabot> Ambiguous occurrence `liftIO'
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:47 <elliott> lift :: M a -> MaybeT M a
19:51:48 <elliott> foo :: Maybe a -> MaybeT m a
19:51:49 <elliott> --kmc
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:27 <elliott> oerjan: hm right
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:10 <lambdabot> Couldn't find qualified module.
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:13 <elliott> ais523: IO chains?
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 <oerjan> @hoogle liftIO
19:53:45 <lambdabot> Control.Monad.Trans liftIO :: MonadIO m => IO a -> m a
19:53:52 <oerjan> there you go
19:54:07 <elliott> oerjan: amusingly I have io as an alias for liftIO in Shiro
19:54:10 <elliott> because I do a lot of IO
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:00 <elliott> darn :D
19:55:45 <pikhq> Well, you could import qualified Prelude or something. :P
19:57:55 <oerjan> heh
19:58:08 <elliott> i guess liftMaybe if better than what I have now
19:58:10 <elliott> (toMaybeT)
19:58:15 <elliott> [asterisk]is
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:27 <elliott> hmm
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:00:42 <elliott> specialize yeah
20:01:12 -!- olsner_ has joined.
20:01:29 <elliott> real0m1.854s
20:01:33 <elliott> real0m1.779s
20:01:33 <elliott> real0m1.785s
20:01:33 <elliott> now to separate out liftShiro
20:02:54 <elliott> real0m1.801s
20:02:54 <elliott> real0m1.911s
20:02:54 <elliott> real0m1.797s
20:02:55 <elliott> ok that didn't help
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:14 <elliott> oh
20:06:17 <oerjan> heh
20:06:19 <elliott> 7.13.9. SPECIALIZE pragma
20:06:19 <elliott> (UK spelling also accepted.)
20:06:22 <elliott> how thoughtful
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:05 <oerjan> *be unclear
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:13:17 <elliott> WHY NOT
20:17:20 <oerjan> there should totally have been an STT, anyway
20:17:52 <elliott> does that even work? :)
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:16 <elliott> I think you can
20:18:25 <elliott> (Integer, Map Integer Dynamic)
20:18:29 <elliott> and just increment the integer each time
20:18:32 <elliott> that's State, that is
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:18:54 <elliott> no?
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:21:29 <oklofok> my head has an ache :(
20:21:39 <oklofok> please don't use caps k
20:21:43 <oerjan> O KAY
20:21:52 <oklofok> :<
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:16 <elliott> heh
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:44 <elliott> but...
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:43:31 <oerjan> System.Mem.Weak
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:47:46 * Phantom_Hoover puts up the Gregor sign.
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:55:28 <elliott> probably
20:56:16 <elliott> oerjan: hmm what's a safe thing to unsafeCoerce everything into?
20:56:18 <elliott> Any isn't portable
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:15 <oerjan> no idea
20:57:29 <oerjan> isn't unsafeCoerce in the ffi or something?
20:57:34 <elliott> yeah
20:57:35 <elliott> I think
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:04 <oerjan> definitely the latter
20:58:35 <elliott> http://www.cse.unsw.edu.au/~chak/haskell/ffi/ffi/ffise5.html#x8-230005
20:58:40 <elliott> there's unsafePerformIO
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
20:58:56 <oerjan> are in Foreign
20:59:26 <elliott> wtf is unsafeLocalState
21:00:03 <pumpkin> unsafeLocalState = unsafePerformIO
21:00:20 <elliott> is that it?
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:17 <elliott> ais523: uh...
21:01:18 <elliott> no.
21:01:18 <elliott> ?hoogle Any
21:01:18 <lambdabot> Data.Monoid newtype Any
21:01:18 <lambdabot> Data.Monoid Any :: Bool -> Any
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:26 <elliott> right
21:01:33 <elliott> e.g. a fast C prime checker
21:01:40 <elliott> grr, where is GHC's Any
21:01:56 <oerjan> although i _think_ there's a declaration for that without using unsafePerformIO, isn't there?
21:02:06 <oerjan> @hoogle Any
21:02:06 <lambdabot> Data.Monoid newtype Any
21:02:06 <lambdabot> Data.Monoid Any :: Bool -> Any
21:02:06 <lambdabot> Prelude any :: (a -> Bool) -> [a] -> Bool
21:02:11 <elliott> oerjan: I just did that, eejit
21:02:11 <oerjan> heh
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:39 <elliott> (I think)
21:02:54 <oerjan> elliott: "that" refers to declaring foreign functions as pure
21:03:11 <elliott> ah, GHC.Prim.Any
21:04:28 <elliott> ?hoogle newSTRef
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:36 <elliott> :t Map.insert
21:05:37 <lambdabot> Couldn't find qualified module.
21:05:39 <elliott> :t Data.Map.insert
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:06:26 <elliott> lovely
21:07:30 <oerjan> elliott: ah there is castForeignPtr :: ForeignPtr a -> ForeignPtr b
21:07:39 <elliott> heh
21:07:39 <elliott> nice
21:07:49 <oerjan> and a number of similar ones
21:08:06 <elliott> exclamation mark plz
21:08:17 <oerjan> !
21:08:21 <elliott> thx
21:08:30 <zzo38> ?
21:08:31 <zzo38> That is not a exclamation mark
21:08:42 <oerjan> um yes?
21:09:00 <elliott> ? isn't
21:09:06 <oerjan> well true
21:11:20 <elliott> ?hoogle writeSTRef
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:11:52 <oerjan> > toBool 1
21:11:52 <lambdabot> Not in scope: `toBool'
21:12:23 <elliott> ?hoogle update
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 <elliott> ?src Monad StateT
21:12:43 <lambdabot> Source not found. Take a stress pill and think things over.
21:12:46 <elliott> ?src MonadTrans StateT
21:12:46 <lambdabot> Source not found. Wrong! You cheating scum!
21:12:48 <elliott> grr
21:13:12 <oerjan> ?src StateT >>=
21:13:12 <lambdabot> Source not found. BOB says: You seem to have forgotten your passwd, enter another!
21:13:21 <oerjan> ?src Maybe >>=
21:13:21 <lambdabot> Source not found. Wrong! You cheating scum!
21:13:24 <elliott> ?src stateT (>>=)
21:13:24 <lambdabot> Source not found. My pet ferret can type better than you!
21:13:25 <elliott> ?src StateT (>>=)
21:13:25 <lambdabot> Source not found.
21:13:27 -!- augur has joined.
21:13:31 <oerjan> ?src Maybe (>>=)
21:13:31 <lambdabot> (Just x) >>= k = k x
21:13:31 <lambdabot> Nothing >>= _ = Nothing
21:16:00 <elliott> newtype STT s m a = STT (STTState s -> m (a, STTState s))
21:16:02 <elliott> oerjan: write >>= plz :P
21:16:04 <elliott> i'm so lazy.
21:16:33 -!- cheater897 has joined.
21:18:12 <elliott> never mind
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:01 <elliott> ~(a, s') <- runStateT m s
21:19:01 <elliott> runStateT (k a) s'
21:19:05 <elliott> it's all weird and lazy and shit
21:19:06 <elliott> but actually
21:19:07 <elliott> start minding again
21:19:12 <elliott> actually
21:19:14 <elliott> gimme a dollar
21:19:46 <oerjan> nope
21:19:47 <zzo38> Canadian or United States money?
21:19:50 <oerjan> $
21:20:15 <elliott> STT m >>= f = STT $ \s -> do
21:20:15 <elliott> (x,s') <- m s
21:20:15 <elliott> let STT m' = f x
21:20:15 <elliott> m' s'
21:20:16 <elliott> lovely and ugly
21:20:17 <oerjan> elliott: you already had one up there anyway
21:20:18 <elliott> just the way I like it
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:10 <elliott> Deewiant: with STT
21:24:11 <oerjan> do v <- newSTRef 1; x <- lift [1,2]; modifySTRef v (+x); readSTRef v
21:24:22 <oerjan> @hoogle modifySTRef
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:21 <oerjan> elliott: ^
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:52 <oerjan> [2,3] i presume
21:25:53 <CakeProphet> for some reason xargs is dumping every file into the same touch invocation. Any idea why?
21:26:12 <elliott> *STT> runSTT test'
21:26:13 <elliott> [2,3]
21:26:14 <elliott> oerjan: great success
21:26:22 <oerjan> yay
21:26:24 <elliott> ofc I'm pretty sure this thing leaks like a sieve
21:26:25 <elliott> but who cares
21:26:40 <elliott> http://sprunge.us/iaYI
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:00 <oerjan> or hm wait
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:29:41 <oerjan> yeah i realized
21:30:34 <oerjan> actually you are not using Dynamic are you
21:30:56 <elliott> indeed
21:30:56 <elliott> just Any
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:31:41 <oerjan> hm yeah
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:43:22 <oerjan> @src IO mplus
21:43:22 <lambdabot> m `mplus` n = m `catch` \_ -> n
21:43:27 <oerjan> ais523: ^
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:13 <ais523> that's clever
21:44:21 <elliott> ais523: what?
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 <oerjan> @src IO mzero
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:15 <CakeProphet> pikhq: do the games themselves run?
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:52:37 <CakeProphet> Granted, I don't have a graphics card...
21:53:20 <elliott> yes you do
21:53:33 <CakeProphet> elliott: ..you know exactly what I mean.
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:50 <elliott> and I will say
21:57:56 <elliott> tomorrow is the fucking rapture
21:57:57 <elliott> the last thing I need
21:57:59 <elliott> is more shitty esolangs
21:58:02 <elliott> to dampen the occasion
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:39 <elliott> /cry
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 <pikhq> Erm, Source.
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:00:57 <elliott> oerjan: ;D
22:01:42 <ais523> oerjan: I check to see if things are spam before reverting them
22:01:46 <Phantom_Hoover> Hmm, does GitHub have a licence?
22:02:01 <elliott> Phantom_Hoover: what
22:02:03 <ais523> Phantom_Hoover: all the stuff on Esolang is public domain, so it doesn't technically need one
22:02:17 <Phantom_Hoover> Oh, yeah, it works the other way around.
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:48 <ais523> fair enough
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:07 <pikhq> Fucking hell.
22:06:09 <elliott> oerjan: :D
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:06:57 <elliott> CakeProphet: see Dijkstra
22:07:01 <elliott> (Q.E.D.)
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:14 <elliott> oerjan: hm well maybe
22:07:15 <oerjan> *event
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:34 <elliott> or whatever
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:15 <elliott> ais523: it's possible
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:10:33 <Phantom_Hoover> I assumed it was pointer arithmetic.
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:17:18 <elliott_> slowdown or whatever.
22:17:46 <Deewiant> slowdown.b98, yes
22:18:58 <elliott_> That's in fungicide right
22:19:06 <Deewiant> Doubt it
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:19:42 <Deewiant> And yes, FIXP
22:19:50 <elliott_> Which will suck.
22:20:04 <Deewiant> What's nasty about FIXP? :-P
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:47 <elliott_> Why the fuck is xor in FIXP
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:20:51 <elliott_> That makes no sense, what
22:21:00 <Deewiant> elliott_: I think it's logical, not binary, xor, too
22:21:13 <elliott_> N(a -- 0-a)Negate
22:21:15 <elliott_> r u serious
22:21:27 <oerjan> @source Data.Fixed
22:21:27 <lambdabot> Data.Fixed not available
22:21:28 <elliott_> that's... the worst waste of a letter i've ever seen
22:21:35 <oerjan> @hoogle Data.Fixed
22:21:35 <lambdabot> module Data.Fixed
22:21:35 <lambdabot> Data.Fixed data Fixed a
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:21:51 <elliott_> oh hm
22:21:55 <elliott_> RealFrca at least
22:21:56 <elliott_> RealFrac
22:21:57 <elliott_> :t sqrt
22:21:58 <lambdabot> forall a. (Floating a) => a -> a
22:22:00 <elliott_> but not Floating
22:22:04 <elliott_> so of very limited use
22:22:18 <Deewiant> Why does it need to be floating
22:22:23 <elliott_> :t acos
22:22:24 <lambdabot> forall a. (Floating a) => a -> a
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:51 <elliott_> erm
22:22:52 <elliott_> I mean implementing acos by myself for Fixed doesn't sound fun
22:22:54 <elliott_> I was replying to oerjan
22:23:07 <Deewiant> Just use integers
22:23:23 <oerjan> mhm
22:23:29 <elliott_> Yeah but that involves casting to like Double or something.
22:23:32 <elliott_> And that's grossssssssssssssssssssssssssssss
22:23:36 <elliott_> With lotsa ses
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:13 <Deewiant> What's /your/ point
22:25:13 <elliott_> I'm meant to have class
22:25:21 <elliott_> Deewiant: Grossssssssssssssssssssssssssssss
22:25:30 <Deewiant> Whatever :-P
22:25:37 <elliott_> Hmm, is there an easy way to turn a maybe-failing pattern match into a Maybe
22:25:49 <elliott_> I guess not
22:25:52 <elliott_> Like
22:25:53 <elliott_> case genericDrop n env of
22:25:53 <elliott_> value:_ -> pushStringAs0gnirts value
22:25:54 <elliott_> _ -> reflect
22:25:56 <elliott_> It'd be nice if I could say
22:26:03 <Deewiant> Do it in a monad
22:26:06 <elliott_> value:_ <- magic (genericDrop n env)
22:26:12 <elliott_> Oh right, MaybeT's fail is Nothing
22:26:13 <elliott_> Swee
22:26:14 <Deewiant> Maybe is a monad
22:26:15 <elliott_> Sweet
22:26:23 <elliott_> Deewiant: MaybeT is a monad (transformer) that I already use
22:26:32 <Deewiant> Yep
22:26:44 <oerjan> MaybeT fails at Nothing
22:28:14 -!- TOGoS has quit (Quit: Leaving.).
22:29:10 <elliott_> Hey wait
22:29:17 <elliott_> That means that liftMaybe is totally pointless
22:29:23 <elliott_> "x <- liftMaybe y" == "Just x <- y"
22:29:28 <elliott_> Cool???
22:29:32 <elliott_> Wait no.
22:29:33 <elliott_> It's actually
22:29:35 <elliott_> let Just x = y
22:29:37 <elliott_> But er
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:02 <oerjan> implicitly "in"
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:37:57 <elliott_> unfortunately
22:37:58 <elliott_> which is ugly
22:38:01 <oerjan> ah
22:38:05 <elliott_> :(
22:38:48 <Deewiant> How can you need that?
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:39:44 <Deewiant> How can return give Nothing?
22:40:02 <elliott_> Uh
22:40:05 <elliott_> Not sure you understand how monads work ;D
22:40:19 <elliott_> y is a (Maybe a)
22:40:25 <oerjan> > do Just x <- return Nothing; "Like this"
22:40:26 <lambdabot> ""
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:57 <Deewiant> Oh, woot
22:40:58 <oerjan> it failed, thus returning "" instead of "Like this"
22:40:59 <Deewiant> Right
22:41:13 <elliott_> No, Just
22:41:19 <Deewiant> Left
22:41:26 <elliott_> Nothing
22:41:49 <oerjan> > do Right x <- return (Left "hm..."); "Like this"
22:41:49 <lambdabot> ""
22:44:06 <oerjan> > do Right (Left x) <- Left "hm..."; return x
22:44:06 <lambdabot> Overlapping instances for GHC.Base.Monad
22:44:06 <lambdabot> (Data...
22:44:18 <oerjan> wtf
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:47 <lambdabot> (Data...
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:47 <elliott_> case Map.lookup ins m of
22:45:48 <elliott_> Nothing -> return ()
22:45:48 <elliott_> Just [] -> return ()
22:45:48 <elliott_> Just (_:xs) -> modifyFPInstructions (Map.insert ins xs)
22:45:48 <elliott_> gah
22:45:55 <elliott_> now how to represent that without right-leaning indentation
22:45:56 <elliott_> I think I can't
22:47:06 <oerjan> bit awkward there, but is that really a case where you want to remove it?
22:47:10 <elliott_> indeed
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:45 <oerjan> oh hm
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:48:21 <oerjan> so then...
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:38 <elliott_> yeah that ...
22:50:40 <elliott_> isn't any nicer
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:51:41 <elliott_> you just ignored me ;D
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:58:59 <variable> oerjan: hrm?
22:59:39 <oerjan> variable: it's such a raptuous day!
23:00:17 <oerjan> *rapturous
23:01:01 <elliott_> yay happy rapture
23:01:07 <elliott_> eighteen hours until we all perish
23:01:10 <elliott_> erm
23:01:10 <elliott_> or
23:01:11 <elliott_> not perish
23:01:15 <elliott_> it's not that eventful really
23:01:19 <elliott_> some earthquakes, buncha christians evaporate
23:02:21 <oerjan> Eva Porata
23:03:27 <elliott_> Deewiant: Do you have a link to slowdown?
23:04:57 <Deewiant> Yes, it's in the lastlog
23:05:20 <elliott_> Oh right
23:05:21 <elliott_> I forgot
23:05:28 <elliott_> Wow, xchat has lastlog
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:15 <elliott_> "which one"?
23:10:18 <elliott_> That's the only prediction
23:10:19 <elliott_> Six pm local time
23:10:21 <elliott_> Set your watches
23:10:41 <Phantom_Hoover> Remind me if the Rapture happened in Australia.
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:16 <Vorpal> *googles*
23:11:18 <elliott_> So still about seven hours to go.
23:11:21 <elliott_> I think it's later in NZ.
23:11:54 <Vorpal> did you mean: my twenty-first people.
23:11:55 <Vorpal> XD
23:12:41 <elliott_> 11:13 Saturday (NZST) - Time in Wellington, New Zealand
23:12:41 <elliott_> Chatham Islands11:58CHAST
23:12:45 <elliott_> Phantom_Hoover: OK so about seven hours before we know.
23:12:51 <elliott_> Or, wait.
23:12:54 <elliott_> Kiritimati13:13LINT
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:27 <Vorpal> how weird
23:13:28 <elliott_> http://en.wikipedia.org/wiki/Kiritimati
23:13:33 <elliott_> Keep an eye on 'em.
23:13:35 <elliott_> Vorpal: Yep.
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:16 <elliott_> Timezone apparently
23:14:22 <Vorpal> how strange
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:14:39 <Vorpal> XD
23:15:06 <Vorpal> elliott_, I can't find much from googling these guys
23:15:12 <elliott_> Whaat?
23:15:15 <elliott_> There's shitloads about then.
23:15:16 <elliott_> them
23:15:24 <Vorpal> may 21th
23:15:31 <Vorpal> oh wait I typed it out
23:15:38 <Vorpal> forgetting you did it due to
23:15:44 <Vorpal> keyboard issues
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:18:51 <Vorpal> ah
23:18:52 <elliott_> Quite fun
23:19:12 <elliott_> Vorpal: http://upload.wikimedia.org/wikipedia/commons/1/16/Tribulation_views.svg
23:19:13 <elliott_> HTH
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:28 <Phantom_Hoover> Vorpal, OK that is the best.
23:21:34 <elliott_> Vorpal: you can't spell.
23:21:43 <Vorpal> elliott_, oh indeed, modulo typos
23:22:17 <Vorpal> elliott_, velocirapture then
23:22:50 <Patashu> hey guys
23:22:51 <Vorpal> Phantom_Hoover, you mean velocirapture is the best or the bad "logic" is the best?
23:22:52 <Patashu> has the rapture come yet
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:27 <Patashu> the Rapture language?
23:23:30 <Patashu> I suggested it
23:23:37 <Vorpal> elliott_, ah
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:23:45 <elliott_> Patashu: you can't fool us
23:23:46 <Patashu> yup
23:24:40 -!- FireFly has quit (Quit: swatted to death).
23:25:59 * Phantom_Hoover → sleep
23:26:08 <Phantom_Hoover> Need to be up early if the Rapture starts!
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:06 <Deewiant> elliott_: What for?
23:28:09 <elliott_> Vorpal: Trying to run it.
23:28:11 <elliott_> Deewiant: Because it demands them.
23:28:25 <Deewiant> Oh, you meant that, yes :-P
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:11 * elliott_ cracks knuckles
23:30:18 <elliott_> Bleh, this makes me want to expand my monad stack
23:30:20 <elliott_> To include Reader
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:40 <monqy> cant wait
23:34:57 <elliott_> pikhq_: Actually, four and a half.
23:34:59 <elliott_> Oh, right.
23:35:03 <elliott_> In Kiritimati.
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:57 <elliott_> True.
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:48:55 <Deewiant> Ill-defined, yes :-P
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:24 <elliott_> I just mean that
23:49:25 <elliott_> FungeState { fungeSpace :: FungeSpace
23:49:25 <elliott_> , ipList :: ([IP],[IP])
23:49:25 <elliott_> , maxIPNumber :: Value
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:50:53 * Patashu checks his watch
23:50:55 <Patashu> Anyone raptured yet?
23:51:17 <elliott_> Like we said, four and a half hours to go.
23:51:22 <elliott_> Maybe closer to four now.
23:51:27 <Patashu> Drat
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:58:33 <elliott_> BAD: "foo"G failed
23:58:33 <elliott_> Argh
23:58:35 <elliott_> WHen did I break G
23:58:38 <elliott_> [asterisk]When
23:58:58 <elliott_> BAD: i misread or o miswrote
23:58:58 <elliott_> Eurgh
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
23:59:21 <elliott_> [asterisk]:-)
2011-05-21
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:00:55 <Deewiant> Only if you have FILE
00:00:58 <elliott_> I do
00:02:29 <elliott_> Unfortunately
00:02:32 <elliott_> BAD: "foo"G failed
00:02:34 <elliott_> Still happens
00:03:03 <zzo38> Try harder at the Deadfish challenge of code golf!
00:03:04 -!- zzo38 has quit (Quit: zzo38).
00:03:09 <elliott_> Or ELSE
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:05:36 <Deewiant> grep -o '[A-Z]' slowdown.b98
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:05 <Patashu> what's FIXP
00:08:07 <Deewiant> Not to my knowledge
00:08:07 <elliott_> It's like fixed-point shit, plus a bunch of random mostly-numerical things
00:08:11 <elliott_> Patashu: a thing
00:08:45 <Patashu> it only exists in befunge?
00:08:53 <elliott_> :t (^)
00:08:53 <lambdabot> forall a b. (Num a, Integral b) => a -> b -> a
00:08:53 <elliott_> Patashu: yes
00:09:09 <Patashu> how does befunge even have a library
00:09:21 <elliott_> It's called fingerprints
00:09:24 <elliott_> D(n -- rnd(n))RanDom number
00:09:30 <elliott_> Deewiant: So, uh, by "rnd(n)"...
00:09:32 <elliott_> ;P
00:09:38 <Deewiant> Probably [0,n) but beats me
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:03 <elliott_> shiro: WTF? Executed 32.
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:16 <elliott_> then push val
00:15:16 <elliott_> else doIns val
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:32 <elliott_> Hmmm
00:15:36 <elliott_> Deewiant: Yes, I just checked
00:15:38 <elliott_> k might be it indeed
00:15:42 <elliott_> replicateM_ (fromIntegral n) (doIns =<< peek pos)
00:15:47 <elliott_> So doIns should just nop on a space basically
00:15:47 <elliott_> Or wait
00:15:54 <elliott_> Does k have to skip spcaes
00:15:55 <elliott_> spaces
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:18 <Deewiant> A space gets put on top of it
00:19:52 <Patashu> Shiro is a haskell befunge interpreter?
00:20:12 <elliott_> Patashu: Yes.
00:20:15 <elliott_> Deewiant: Gets put on top of it... when?
00:20:19 <Deewiant> In the k
00:20:20 <elliott_> While k is executing?
00:20:26 <elliott_> Deewiant: I, uh, think k takes a single tick for m
00:20:27 <elliott_> me
00:20:31 <elliott_> Is that bad
00:20:35 <Deewiant> No, that's good
00:20:43 <elliott_> Oh, you mean the thing inside the k spaces it ou
00:20:43 <elliott_> t
00:20:46 <elliott_> What should happen in that event?
00:20:49 <elliott_> Should it find the instruction after the spaces?
00:20:50 <elliott_> Or just do nothing?
00:20:59 <Deewiant> The instruction is found only once
00:21:03 <Deewiant> So it continues looping
00:21:17 <elliott_> Hmm, right
00:21:24 <elliott_> So basically, k saves the instruction itself
00:21:42 <elliott_> ins <- peek pos
00:21:42 <elliott_> replicateM_ (fromIntegral n) (doIns ins)
00:21:43 <elliott_> That was easy.
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:37 <Deewiant> Although hmm
00:22:40 <elliott_> Deewiant: Bastard :P
00:22:43 <elliott_> (Re: "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:08 <Deewiant> As opposed to milliseconds
00:23:19 <elliott_> I'll try sanity.bf :P
00:23:35 <elliott_> $ time ./shiro slowdown.b98 mycology/sanity.bf
00:23:36 <elliott_> 0 1 2 3 4 5 6 7 8 9
00:23:36 <elliott_> real0m3.664s
00:23:36 <elliott_> Dayum
00:23:44 <Deewiant> :-)
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:28 <Deewiant> As well as fungespace
00:25:35 <Deewiant> Profile it to be sure :-P
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:24 <elliott_> ^C
00:26:24 <elliott_> real2m14.510s
00:26:26 <elliott_> Deewiant: welp
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:35:53 <elliott_> it involved a new monad stack
00:36:05 <Vorpal> elliott_, slow I guess?
00:36:15 <elliott_> meh
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:49 <Vorpal> that's quite a bit
00:36:56 <Deewiant> A.k.a. 45%
00:36:58 <Vorpal> elliott_, more than the runtime of cfunge on it
00:37:04 <Vorpal> Deewiant, ouch that is huge
00:37:04 <elliott_> shut up
00:37:14 <Vorpal> elliott_, request rejected
00:37:18 <elliott_> i'll optimise later
00:37:22 <Vorpal> ah okay
00:37:34 <elliott_> correctness first unlike cfunge by default >:)
00:37:39 <elliott_> (exact bounds)
00:38:02 <Vorpal> elliott_, actually the exact bounds has been on by default for ages
00:38:16 <elliott_> bluh bluh
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:26 <Vorpal> *shrug*
00:38:36 <elliott_> bluh bluh >:)
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:40:00 <Deewiant> Oh well, I'm going to bed
00:42:38 -!- copumpkin has joined.
00:43:34 <Vorpal> smae
00:43:36 <Vorpal> same*
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 <Patashu> Hah, I see
01:28:15 -!- augur has joined.
01:28:25 <pikhq_> 3.5 hours until the beginning of the end.
01:28:35 <Patashu> Nope
01:28:39 <Patashu> it happens at 6 pm
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:15 <Patashu> 6.5 hours heree
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:20 <Patashu> Hmm, that's true
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:03:58 <GreaseMonkey> 'lo
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:06:52 <GreaseMonkey> yeah
02:07:14 <GreaseMonkey> my execless attempt was 384 bytes
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:08:57 <GreaseMonkey> much better, now on ethernet
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:31:23 <GreaseMonkey> sounds believable
02:31:29 <GreaseMonkey> wait, 160 < 240
02:31:33 <GreaseMonkey> nice one
02:33:13 <GreaseMonkey> where bouts is that, btw?
02:33:22 <elliott_> let me try and find it
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:33:30 <lambdabot> Unknown command, try @list
02:33:51 <GreaseMonkey> nice
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:44:53 <elliott_> RIP Kiritimati
02:46:03 <GreaseMonkey> wait, 10pm where?
02:46:30 <elliott_> 10pm??
02:46:33 <elliott_> It's six pm local time.
02:46:43 <elliott_> Currently 16:44 on Kirtimati.
02:46:46 <GreaseMonkey> apparently it's supposed to be 10pm here
02:46:51 <GreaseMonkey> and it's 14:47 here
02:46:55 <GreaseMonkey> or something
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:18 <GreaseMonkey> great, so we know the day AND the hour!
02:47:25 <GreaseMonkey> apparently we must be jesus' father
02:47:46 <elliott_> It respects timezones
02:47:47 <elliott_> which is awfully nice
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:01 <GreaseMonkey> actually it doesn't even line up
02:49:05 <GreaseMonkey> with christianity
02:49:18 <Patashu> timezones are godgiven
02:49:20 <Patashu> dst is man made
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:52:48 <GreaseMonkey> oops, found the mistake in this
02:52:51 <GreaseMonkey> had a , instead of a .
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.
02:59:49 <pikhq_> Literally.
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:06 <elliott_> you're /sure/?
03:01:13 <pikhq_> I'm sure it's moot.
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:36:04 <pikhq_> Yay.
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:40:35 <CakeProphet> credible source.
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:21 <GreaseMonkey> it's UTC+12 here
03:42:27 <GreaseMonkey> actually uhh
03:42:38 * GreaseMonkey np pink floyd - another brick in the wall pt 2 (live)
03:42:55 <GreaseMonkey> yeah i think it's utc+12
03:43:02 <GreaseMonkey> we're in may which i believe is not DST
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:43:37 <elliott_> "Likely"?
03:43:43 <CakeProphet> elliott_: ...yep.
03:43:48 <CakeProphet> that's American news for you.
03:43:53 <elliott_> link me, I gotta see this.
03:44:04 <CakeProphet> http://powerwall.msnbc.msn.com/business/your-guide-to-the-end-of-the-world-1688853.story
03:44:09 <CakeProphet> it's written tongue-in-cheek, I think.
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:30 <elliott_> And so it begins.
03:44:40 <elliott_> CakeProphet: that's The Daily Beast, not msnbc
03:44:46 <elliott_> msnbc just appear to syndicate it
03:45:09 <CakeProphet> ah
03:45:17 <elliott_> The problem is...
03:45:24 <elliott_> Camping says only 200 million will go zoop into the sky.
03:45:28 <GreaseMonkey> oh yay we're getting called by 91867 again
03:45:33 <elliott_> So converting to Christianity is pretty much pointless.
03:45:39 <CakeProphet> damn...
03:45:42 <CakeProphet> Satanism?
03:45:44 <elliott_> BUT
03:45:47 <GreaseMonkey> where'd he get that number?
03:45:54 <pikhq_> GreaseMonkey: Bullshit.
03:45:58 <elliott_> GreaseMonkey: Dude, this is religion.
03:46:00 <elliott_> Do you really have to ask?
03:46:02 <elliott_> The answer is: his ass.
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:47 <CakeProphet> damn... I better get a hot air balloon.
03:46:50 <elliott_> GreaseMonkey: And being able to back it from the bible would make him any more reliable?
03:46:51 <elliott_> I think not.
03:47:00 <GreaseMonkey> well if the bible is true then yeah
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:26 <elliott_> With a bunch of numerology.
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:47:49 <elliott_> GreaseMonkey: what
03:48:02 <GreaseMonkey> 91867 do a phishing scam using remote desktop
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:31 <GreaseMonkey> i have no idea
03:48:31 <elliott_> 91867 has like two digits
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:40 <elliott_> hmm wait utc+twelve you said
03:48:41 <elliott_> new zealand?
03:48:51 <GreaseMonkey> yeah
03:48:56 <elliott_> two hours until your rapture, I hope you enjoy it
03:49:11 <elliott_> `quote apocalypi
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:23 <CakeProphet> er area 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:07 <elliott_> CakeProphet: um, no?
03:51:13 <elliott_> Maybe anti-Christian 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:48 <elliott_> CakeProphet: YEP
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:01 <elliott_> boy i'm tired
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:22 <elliott_> CakeProphet: yeaaaaaaaaah no
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:40 <elliott_> Over two billion it seems
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:54:57 <CakeProphet> s/would/would happen/
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:17 <elliott_> CakeProphet: well, sure.
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:56:25 <CakeProphet> gotta work with what you get.
03:56:38 <elliott_> sigh, it is getting bright :(
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:34 <elliott_> wow that's a weirdo smiley.
03:57:40 <pikhq_> Small sects tend to be.
03:58:08 <pikhq_> For instance, Raëlism.
03:58:26 <CakeProphet> elliott_: How many Discordians are there?
03:58:40 <GreaseMonkey> if you want a weird smiley, take this :-ṕ
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:30 <elliott_> what is that accent even
03:59:38 <elliott_> CakeProphet: there's about three discordians
03:59:45 <GreaseMonkey> idunno, it just exists in unicode
03:59:59 <GreaseMonkey> :-Đ
04:00:00 <elliott_>
04:00:03 <elliott_>
04:00:04 <elliott_>
04:00:05 <elliott_>
04:00:07 <elliott_>
04:00:09 <elliott_>
04:00:11 <GreaseMonkey> elliott_: i thought there were 5
04:00:11 <elliott_>
04:00:20 <elliott_> GreaseMonkey: no. three. don't give in to the deception.
04:00:20 <pikhq_> :-ő
04:00:34 <GreaseMonkey> : seems interesting
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:08 <CakeProphet> must mean something.
04:01:13 <elliott_> i guess masochism never dies
04:01:16 <elliott_> oh snap
04:01:18 <elliott_> the rapture did just happen
04:01:22 <elliott_> can someone check the news
04:01:24 <pikhq_> Any earthquakes?
04:01:26 <GreaseMonkey> :X̴̪͕̜̭̻̪̝͚͈͒̂͆̏̎̌ͧ
04:01:29 <elliott_> did kiritimati just get fucked
04:01:29 <Patashu> I like fixedsys and I like unicode
04:01:31 <elliott_> jesus guys
04:01:31 <Patashu> What's a guy to do
04:01:40 <elliott_> Patashu: stop liking fixedsys? :)
04:01:45 <Patashu> haha
04:01:52 <elliott_> "Queen reveals she is a huge fan of The X Factor"
04:01:54 <elliott_> jesus
04:01:59 <elliott_> just clicked on google news to see about any earthquakes
04:01:59 <GreaseMonkey> Aiiiiiiiii!
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:06 <elliott_> THANKS GOOGLE
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:26 <GreaseMonkey> don't be silly, it changes over time
04:02:33 <Patashu> a 5.9 earthquake! oh noes
04:02:42 <elliott_> in Turkey, fifteen hours ago
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:48 <elliott_> PREEMPTIVE RAPTUREQUAKE
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:29 <pikhq_> Also a raptor.
04:03:31 <Patashu> Is that like a stealth fighter
04:03:36 <elliott_> Yes.
04:03:38 <Patashu> Does it reflect radar
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:12 <GreaseMonkey> and yes i know that
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:41 <GreaseMonkey> not sure if the CEV has it
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:12 <GreaseMonkey> b҉o҉o҉m҉҉҉҉
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:17 <elliott_> CakeProphet: yes.
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:28 <elliott_> pikhq_: HAHA
04:06:29 <elliott_> pikhq_: Where?
04:06:31 <pikhq_> Papua New Guinea.
04:06:35 <elliott_> Link?
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:52 <elliott_> To Kititbstibst, that is.
04:06:56 <oerjan> ...rather close, globally speaking
04:07:07 <elliott_> Also, how close is it? Half an hour before?
04:07:08 <GreaseMonkey> aͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥͥ
04:07:15 <elliott_> pikhq_: ?
04:07:27 <pikhq_> elliott_: Approx. half an hour before, yeah.
04:07:35 <GreaseMonkey> k͆͆͆͆͆͆͆͆͆͆͆͆͆͆͆
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:07:53 <pikhq_> In UTC+10, though?
04:08:08 <pikhq_> Oh, sorry, the date is "May 16".
04:08:14 <pikhq_> *Never mind*.
04:08:14 <elliott_> ...
04:08:15 <elliott_> Oh :P
04:08:20 <elliott_> Fuck you :P
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:08:40 <elliott_> [asterisk]believing
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:07 <elliott_> CakeProphet: What -- boring?
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:02 <elliott_> CakeProphet: not at five am.
04:11:11 <elliott_> And not if you want to stay happy with yourself and not at all suicidal.
04:11:21 <CakeProphet> well.... okay.
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:11:35 <elliott_> DEPUTY POSTMASTER
04:13:12 <elliott_> Deewiant: WTF. P in FIXP (multiply by pi) doesn't take fixed point as argument.
04:14:02 <elliott_> ?hoogle sign
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:14:04 <elliott_> ?hoogle signum
04:14:04 <lambdabot> Prelude signum :: Num 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:30 <CakeProphet> ...wrong person :P
04:17:37 <elliott_> pikhq_: Yah, but...
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:22:12 <elliott_> heh
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:28:00 <CakeProphet> 14k years?
04:28:24 <CakeProphet> aww.. no rapture for us.
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:30:07 <pikhq_> *sigh*
04:30:14 <pikhq_> So condescending.
04:36:57 <CakeProphet> @hoogle doRapture
04:36:57 <lambdabot> No results found
04:37:20 <CakeProphet> ..okay, I'm fairly certain the world isn't going to end now.
04:37:37 <elliott_> sooooo
04:37:40 <elliott_> any earthquakes?
04:37:57 <CakeProphet> No. My dad is a Christian and he still walks on the earth.
04:38:04 <CakeProphet> so... there's that.
04:38:38 <CakeProphet> no blood-moon. Or recognizable horsemen.
04:39:15 <elliott_> two hundred million only
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:38 <CakeProphet> Only barely.
04:40:50 <CakeProphet> Patashu: see: God :P
04:40:56 <pikhq_> Patashu: Zombie IESVS.
04:41:07 <elliott_> man this is shitty
04:41:08 <elliott_> i want a fucking rapture
04:41:11 <elliott_> its early and im bored
04:41:15 <pikhq_> Or at least a raptor.
04:41:24 <oerjan> ...not _that_ bored.
04:41:31 <Patashu> i'm boreder
04:41:38 <Patashu> Let's plank in preparation for the rapture
04:41:40 <Patashu> Got any billboards?
04:41:50 <elliott_> oerjan: yes that bored.
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:43:23 <oerjan> very quiet so far
04:43:39 <elliott_> THE QUIET SOUND OF DEATH
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:47:53 <CakeProphet> sell funny t-shirts, posters, mugs, etc.
04:48:12 <elliott_> Does it matter whether Christianity contradicts itself?
04:48:24 <CakeProphet> well.. no
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:53:47 <elliott_> it sucks >:)
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:54:08 <elliott_> lol
04:57:08 <elliott_> hmm
04:57:12 <elliott_> CakeProphet: its five five seven am
04:57:15 <elliott_> should i go to slep :/
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:57:54 <CakeProphet> >>> random.choice(["sleep", "don't"])
04:57:54 <CakeProphet> "don't"
04:58:23 <elliott_> i did my own science
04:58:24 <elliott_> >>> random.choice(["sleep", "don't"])
04:58:27 <elliott_> "butts"
04:58:27 <elliott_> :/
04:58:33 <elliott_> i guess my python is broken
04:58:44 <CakeProphet> ...hmmm, yeah sounds like a bug in random
04:58:52 <elliott_> or a bug
04:58:53 <elliott_> in the universe
04:59:01 <CakeProphet> should probably not go to sleep and report it immediately.
04:59:44 <elliott_> here i have an idea
04:59:45 <elliott_> to trick myself
04:59:49 <elliott_> what if i go to TRY OUT going to sleep
04:59:50 <elliott_> so like
04:59:51 <elliott_> if i don't like it
04:59:55 <elliott_> i can just get up and stop going to sleep
04:59:56 <elliott_> right
04:59:58 <elliott_> and that'll trick me because
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:14 <CakeProphet> ...uh. sure.
05:00:21 <elliott_> yeah ok fuck this shit bye
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:17 <elliott_> god knows
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:06:36 <CakeProphet> uh, I'm sure I'll remember that.
05:07:47 -!- elliott_ has quit (Ping timeout: 264 seconds).
05:09:08 <pikhq_> ... There's *germ theory denialists*‽
05:09:42 <Patashu> Well, you can't see germs
05:09:44 <Patashu> Prove they exist
05:11:21 <pikhq_> I have observed them.
05:11:37 <Patashu> Oh yeah, forgot about microscopes
05:11:38 <Patashu> I dunno then
05:13:28 -!- oerjan has quit (Quit: Microscopes? More like deceptive little microdemons!).
05:17:58 <augur> HAPPY RAPTURE EVERYONE!
05:19:04 <Patashu> Not yet!
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:25:17 <augur> D:
05:28:27 <coppro> yay, mathnews!
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:38 <coppro> a guy
05:42:41 <coppro> it said so in the bible
05:42:42 <coppro> he found it
05:42:44 <coppro> so he's right
05:42:52 <coppro> you better hope you get lifted to heaven
05:43:19 <myndzi> oh
05:43:23 <myndzi> i'm definitely going to hell
05:48:15 <Sgeo_> I think you have to wait until October for that
05:48:31 <coppro> yeah
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:17 <pikhq_> Nope.
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:04 <ais523> +13 and +14, that is
06:17:10 <pikhq_> Yes.
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:45 <Patashu> Any rapturing yet?
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!
06:59:52 <coppro> UTC+11 rapture!
07:02:04 <pikhq_> Whoo.
07:02:51 <ais523> it happened?
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:20:13 <coppro> ^
07:20:26 <coppro> THAT'S WHAT WE THINK
07:22:07 <Patashu> 38 minutes until the rapture in my local time
07:22:23 <Patashu> COUNT DOWN
07:22:27 <Patashu> 37
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:34:24 <Patashu> 26
07:38:27 <coppro> http://www.ticotimes.net/News/News-Briefs/Chaos-in-Costa-Rica-s-Congress_Sunday-May-01-2011
07:40:01 <Patashu> 20
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
07:44:39 <Patashu> 15...
07:49:49 <Patashu> 10...
08:01:13 <fizzie> Hmm; I see no new minutes announced. Must've been raptored.
08:01:57 <Patashu> Nope still here
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 <Phantom_Hoover> So, has the Rapture started?
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:13:33 <Zwaarddijk> of course you should
09:14:09 <Zwaarddijk> ais523: orgone is a "force" that psychologist Wilhelm Reich posited surrounds us and influences us
09:14:19 <Zwaarddijk> http://en.wikipedia.org/wiki/Orgone
09:14:27 <ais523> hmm
09:14:39 <ais523> why would anyone ever try to give away one of those, then?
09:17:12 <Zwaarddijk> because they're useless?
09:17:32 <Zwaarddijk> I bet some people have inherited them and have no desire to use them for any reason wahtsoever
10:02:17 <cheater897> i think i'll drop the guy an email.
10:03:52 <cheater897> he's also giving away a foot rest, which i might pick up because it's practical.
10:21:42 <Lymia> cheater897.
10:21:50 <Lymia> What does it look like?
10:21:58 <Lymia> You could always purpose it for something practical.
10:22:02 <Lymia> re*
10:22:20 -!- BeholdMyGlory has joined.
10:25:32 -!- FireFly has joined.
10:30:56 <cheater897> yeah i asked for photos
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:07:11 * Lymia hugs cheater897
11:07:27 <cheater897> lulz
11:07:30 * cheater897 hugz back.
11:07:36 <Lymia> :3
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:13:47 <augur> :X
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:26 <Lymia> D=
11:21:34 -!- sebbu2 has quit (Ping timeout: 246 seconds).
11:22:22 <Sgeo_> sure
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:05:58 <Phantom_Hoover> Cuddle death!
12:06:23 * Lymia hugs Phantom_Hoover <#
12:06:25 <Lymia> <3*
12:06:48 * Phantom_Hoover menaces Lymia with a brick until she leaves him alone.
12:06:53 <Lymia> :(
12:06:57 <Lymia> But...
12:06:58 <Lymia> Hugs!
12:07:09 <Lymia> Who could not ilke them.
12:07:11 <Lymia> like*
12:07:12 <Lymia> D=
12:07:23 <Phantom_Hoover> DON'T TRY TO FOOL ME I KNOW AN ASSASSINATION ATTEMPT WHEN I SEE ONE
12:07:31 <Lymia> ;-;
12:09:01 <Phantom_Hoover> "Buckfast bee"
12:09:14 <Phantom_Hoover> Please please please let it brew Buckfast instead of honey.
12:10:00 <Phantom_Hoover> Huh, termites are closely related to cockroaches.
12:25:35 <Phantom_Hoover> http://www.guardian.co.uk/books/2011/may/21/jon-ronson-how-to-spot-a-psychopath
12:25:36 <Phantom_Hoover> Ronson!
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:13:59 <Vorpal> ah, poor you
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:24:16 <Phantom_Hoover> Ahahahahahahahano
13:25:05 <Lymia> why not
13:26:16 <Phantom_Hoover> Because they are mostly idiots.
13:26:25 <Phantom_Hoover> http://en.wikipedia.org/wiki/List_of_common_misconceptions
13:26:39 <Phantom_Hoover> Ah, 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:50:17 <ais523> that's a great list
13:51:05 <Phantom_Hoover> Indeed, although I'm currently looking up spiders.
13:51:32 <ais523> do you think there should be a list of uncommon misconceptions, to go alongside it?
13:51:32 <Phantom_Hoover> http://en.wikipedia.org/wiki/Portia_(genus)
13:51:44 <Phantom_Hoover> I, for one, welcome our new spider overlords.
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:07:53 <Lymia> Heh.
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:08:48 <Phantom__Hoover> Oh god, that's another myth everyone believes utterly.
14:11:18 <Phantom__Hoover> http://en.wikipedia.org/wiki/File:Spider_internal_anatomy-en.svg
14:11:37 <Phantom__Hoover> The brain is surprisingly large...
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:25:05 <Phantom__Hoover> What output filtering thing?
14:25:16 <fizzie> The no-ctcp one.
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:47:35 <Phantom__Hoover> Have you not seen the glory of fungot.
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).
15:58:43 <Phantom__Hoover> *Still* no Homestuck update?
15:59:00 <Phantom__Hoover> That's two days without an update¬!
15:59:02 <Phantom__Hoover> *!
15:59:08 <Phantom__Hoover> And he said there wouldn't be a Flash!
16:23:33 * Lymia giggles
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:31:26 <Phantom__Hoover> Lymia, what are you laughing at, MURDERER
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.
16:41:37 <Phantom__Hoover> Which is, in turn, what I get for reading 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:23:52 <Phantom__Hoover> pikhq_, did it look like I was *agreeing*?
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:54:44 <pikhq_> Phantom_Hoover: No.
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:47 <Phantom_Hoover> asfsadfasdfadsfd god I hate phones.
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:17:23 <pikhq_> Yes.
18:21:19 <ais523> Phantom_Hoover: that seems a little unlikely in the UK
18:23:25 <Phantom_Hoover> ais523, I dunno, they're all savages in Manchester.
18:23:43 * Phantom_Hoover tries to remember if ais523 lives in Manchester or Birmingham.
18:23:49 <ais523> Birmingham
18:23:56 <Phantom_Hoover> They're both equivalent in my mind.
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:24:43 <Phantom_Hoover> Well OK that works too.
18:25:12 <ais523> I wonder how easy it is to shoot down a door with a typical gun?
18:25:21 <cheater897> beeminguhm
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:32:58 <Phantom_Hoover> Well, thanks for the tips.
18:33:12 <Phantom_Hoover> Now I know what to do next time I foget my keys.
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:43:32 <Lymia> Not a shotgun?
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:47:49 <elliott> :-D
18:48:17 <Lymia> So.
18:48:24 <Lymia> Is heaven facing ipv6 exhaustion yet?
18:49:34 <elliott> :D
18:50:20 <oerjan> heaven went on ipv7 long ago
18:50:32 <oerjan> uses bignums
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:51:54 <elliott> names can never work :o
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:23 <elliott> --Wikipedia
18:53:55 <Vorpal> hah
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:14 <Vorpal> heh
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:31 <elliott> or like
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:14 <elliott> oerjan: shaddap
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:55:51 <elliott> oerjan: heh
18:56:20 * elliott tries to load familyradio.com, unsuccessfully
18:56:29 <Vorpal> what is that site?
18:56:47 <elliott> http://upload.wikimedia.org/wikipedia/commons/e/e0/Judgment_Bus_New_Orleans_2011.jpg
18:56:49 <elliott> AWESOME NEWS
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:51 <Lymia> Must be DDOS'd.
18:56:55 <elliott> Vorpal: the radio station of the guy who made the prediction
18:57:00 <Vorpal> ah
18:57:18 <elliott> oh man
18:57:19 <elliott> subject: Re
18:57:21 <elliott> from: enfermeria
18:57:23 <elliott> body:
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:34 <Vorpal> XD
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:22 <elliott> I wonder why?
18:58:32 <elliott> Lymia: hmm, what's the current Julian date?
18:58:36 <Lymia> ?
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:27 <elliott> nope, seems not
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:40 <elliott> durr
18:59:45 <elliott> Vorpal: that's what I'm trying to find out
18:59:59 <elliott> but the website is down
19:00:01 <Lymia> UTC has no time zones?
19:00:06 <Lymia> Don't you mean UTC /is/ a time zone?
19:00:18 <Vorpal> heh
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:19 <elliott> yes
19:01:30 <elliott> http://tycho.usno.navy.mil/
19:01:31 <Vorpal> why would the military care about that
19:01:34 <elliott> time service department
19:01:37 <Vorpal> ah
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:08:09 <cheater897> too many cocks spoil the cock soup.
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> with actual type `Bool'
19:18:57 <elliott> Expected type: (Value, Value) -> (Value, Value) -> (Bool, Bool)
19:18:57 <elliott> Actual type: (Value, Value) -> Bool
19:19:00 <elliott> god what
19:19:01 <elliott> :t join
19:19:02 <lambdabot> forall (m :: * -> *) a. (Monad m) => m (m a) -> m a
19:19:04 <elliott> lambdabot?
19:19:05 <elliott> thx
19:19:13 <elliott> :t join (/= 0)
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:14 <lambdabot> In the expression: join (/= 0)
19:19:22 <elliott> jesus
19:19:29 <elliott> oh wait
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:21 <cheater897> damn
19:20:24 <cheater897> why isn't ais here
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:30 <elliott> gah
19:20:32 <elliott> oerjan :(
19:20:34 <oerjan> hm indeed
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 <oerjan> :t join (***)
19:20:54 <lambdabot> forall (a :: * -> * -> *) b c. (Arrow a) => a b c -> a (b, b) (c, c)
19:20:56 <elliott> come ON
19:21:04 <elliott> oerjan: hmm
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:21:17 <elliott> :D
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:27 <elliott> erm
19:23:29 <elliott> binary (\a b -> enumValue (a/=0 and b/=0))
19:23:30 <elliott> is what it is
19:23:38 <oerjan> aha
19:24:41 <oerjan> :t \enumValue -> ((enumValue .) . (&&)) `on` (/=)
19:24:42 <lambdabot> Couldn't match expected type `Bool'
19:24:42 <lambdabot> against inferred type `a -> Bool'
19:24:42 <lambdabot> In the second argument of `on', namely `(/=)'
19:24:48 <oerjan> erm
19:24:54 -!- Phantom_Hoover has joined.
19:25:09 <oerjan> oh
19:25:12 <oerjan> :t \enumValue -> ((enumValue .) . (&&)) `on` (/=0)
19:25:13 <lambdabot> forall c a. (Num a) => (Bool -> c) -> a -> a -> c
19:25:52 <oerjan> hm that's wrong
19:26:09 <oerjan> no wait that's right
19:26:48 <oerjan> do you mean fromEnum for enumValue there?
19:28:04 <oerjan> :t both
19:28:05 <lambdabot> Not in scope: `both'
19:28:32 <oerjan> elliott: *CHIRP*
19:29:50 <elliott> oerjan: oh hi
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:18 <oerjan> except curried
19:31:40 <oerjan> which should make it even easier to use there
19:31:48 <oerjan> :t on (&&)
19:31:48 <lambdabot> forall a. (a -> Bool) -> a -> a -> Bool
19:32:06 <oerjan> hm or wait
19:32:22 <oerjan> it includes more
19:32:37 <oerjan> :t on (,)
19:32:38 <lambdabot> forall b a. (a -> b) -> a -> a -> (b, b)
19:32:43 <elliott> :t on (&&) (/= 0)
19:32:43 <lambdabot> forall a. (Num a) => a -> a -> Bool
19:32:49 <elliott> > on (&&) (/= 0) 9 9
19:32:50 <lambdabot> True
19:32:52 <elliott> > on (&&) (/= 0) 9 0
19:32:52 <lambdabot> False
19:32:57 <elliott> perfect[exclamation mark[
19:32:59 <elliott> perfect[exclamation mark]
19:33:04 <elliott> [asterisk]exclamation mark]
19:33:21 <elliott> fpRun _ A = binary (enumValue . on (&&) (/= 0))
19:33:23 <elliott> ?hoogle on
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:26 <elliott> I forget where it is
19:33:26 <elliott> ah, there
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> Actual type: b0 -> 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:46 <elliott> huuuh
19:33:53 <oerjan> elliott: um i did that above, you need more .
19:34:06 <elliott> oh ok
19:34:09 <elliott> right
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:37:42 <elliott> to avoid the lambda
19:37:46 <oerjan> ah right
19:39:18 <Vorpal> :t enumValue
19:39:19 <lambdabot> Not in scope: `enumValue'
19:39:27 <Vorpal> oh duh
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:53:47 <oerjan> y not?
19:55:25 <Phantom_Hoover> Sgeo_, what about ynols?
19:58:03 <elliott> oerjan: sometimes I feel like Haskell needs a better language for expressing point-free things
19:58:04 <Sgeo_> I FEEL AWKWARD
19:58:09 <elliott> ((f .) . g) is especially ugly
19:58:18 <elliott> I realise you can define :. or whatever, but...
19:58:19 <elliott> Sgeo_: what
19:58:24 <Sgeo_> Talking to a guy who just broke up with a girl about that I like that girl
19:58:35 <elliott> ...
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:15 <Deewiant> elliott: Nope
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:05:03 <Deewiant> shrug
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:11 <oerjan> hm yes i think so
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:27:57 <elliott> so...
20:28:11 <elliott> if b (\() -> ...) (\() -> ...)
20:28:14 <elliott> last two are continuations there
20:28:16 <elliott> if if is defined as
20:28:21 <elliott> if True f _ = f ()
20:28:24 <elliott> if False _ g = g ()
20:28:28 <elliott> except you don't need the () I guess
20:28:28 <elliott> hmm
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:14 <oerjan> hm
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:33 <elliott> hmm
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:01 <elliott> oerjan: yes
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:06 <elliott> which is rather naff
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 <elliott> heh
20:35:20 <Vorpal> anyone here good at Dungeons and Dragons rules?
20:35:22 <elliott> but seriously, what is it :)
20:35:24 <oerjan> ...darnit
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:37:47 <Vorpal> oerjan, uuuugh
20:37:53 <Vorpal> oerjan, ANYONE ELSE?
20:38:44 <elliott> olsner: aw come on :D
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:43:36 <elliott> olsner: oh come on :D
20:47:37 <oerjan> Vorpal: *MWAHAHAHA*
20:56:40 <Vorpal> oerjan, :(
20:57:51 -!- copumpkin has changed nick to Is.
20:57:52 * Sgeo_ will be AFK soon
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
20:59:46 <olsner> that was a pun, btw
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:12:34 <elliott> asdfq
22:17:18 <Vorpal> elliott, found out the "official" explanation yet?
22:18:19 <elliott> ?
22:18:24 <elliott> No.
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:08 <elliott> Pictured: ais, LYING.
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:02: <AnMaster> :P
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:10 <elliott> oerjan: heh
22:49:14 <elliott> oerjan: i think i stole that name from Deewiant
22:49:18 <elliott> oerjan: what are you writing?
22:49:28 <Deewiant> You did
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:00 <Deewiant> WIND?
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:37 <elliott> Deewiant: WIND, yeah.
22:59:56 <elliott> Deewiant: I just mean in the sense of "they're not 'execute arbitrary winthirtytwo function', right?")
23:00:10 <Deewiant> elliott: X11, not win32
23:00:16 <Deewiant> And no, they're not, AFAICT
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:30 <elliott_> whats he saying
23:47:40 <monqy> I can't tell
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:15 <Patashu> lmao voice raising
23:48:23 <Patashu> he's the one that opens up the heart! he's the one that shuts the heart!
23:49:15 <Phantom_Hoover> He's a responsible heart surgeon!
2011-05-22
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:01:27 <Vorpal> obviously a joke
00:01:52 <Phantom_Hoover> Pictured: Vorpal doesn't understand jokes.
00:03:14 <Vorpal> Phantom_Hoover, possibly
00:03:57 <Vorpal> elliott_, anyway did you ever found the official reason
00:03:59 <Vorpal> err
00:04:01 <Vorpal> find*
00:06:02 <Phantom_Hoover> Official reason for what?
00:09:27 <Vorpal> Phantom_Hoover, for lack of rapture
00:09:55 <oerjan> hm volcano eruption
00:10:11 <Vorpal> oerjan, where?
00:10:21 <oerjan> iceland
00:10:49 <Phantom_Hoover> In other news: dog bites man.
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 <Phantom_Hoover> Grimsvotn.
00:12:12 <Vorpal> "including the main east-west road. " <-- this (from bbc) says something about the size of iceland
00:12:26 <Vorpal> ah
00:12:32 <Vorpal> yes easy to pronounce
00:12:38 <oerjan> *vötn
00:12:56 <Vorpal> ah even easier
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:13:33 <Phantom_Hoover> Vorpal, yesyesyes.
00:13:33 <Deewiant> Eyjaf*
00:13:40 <Vorpal> Deewiant, that too
00:13:50 <Phantom_Hoover> Yes, OK, I was typing it quickly.
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:37 <Phantom_Hoover> Vorpal, no, it doesn't make a HUGE difference.
00:14:42 <Vorpal> Phantom_Hoover, yes it does
00:14:43 <Phantom_Hoover> You know what I goddamn meant.
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:05 <Vorpal> it wasn't that
00:15:08 <Vorpal> it was just HUGE
00:15:11 <Vorpal> elliott_, XD
00:15:15 <Phantom_Hoover> Vorpal, no, it's minuscule.
00:15:24 <Vorpal> Phantom_Hoover, not at all
00:15:33 <Phantom_Hoover> It's a misspelling, not a fundamental change.
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:21 <Phantom_Hoover> Vorpal, it's the same as advice vs. advise.
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:21:55 <Vorpal> Phantom_Hoover, ^
00:22:16 <Phantom_Hoover> That doesn't hold a candle to English.
00:22:22 <Vorpal> Phantom_Hoover, oh?
00:22:26 <Phantom_Hoover> Consider tear vs. tear, or reading vs. Reading.
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:22:57 <Phantom_Hoover> Vorpal, yes, exactly.
00:23:06 <Phantom_Hoover> One is pronounced "teer", the other "tehr".
00:23:22 <Phantom_Hoover> Surely you knew that?
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:06 <Phantom_Hoover> Redding.
00:24:43 <Vorpal> ah
00:24:45 <Phantom_Hoover> Other amusing pronunciations are Worcester and Berkely.
00:24:56 <Phantom_Hoover> (Wooster and Barkly, respectively.)
00:25:18 <Vorpal> hah
00:25:32 <Vorpal> Phantom_Hoover, I always wondered about Worcester
00:25:34 <Phantom_Hoover> Or Gloucester (Gloster).
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:06 <Vorpal> yesah
00:28:08 <Vorpal> yeah*
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:35 <Phantom_Hoover> Ireland.
00:29:37 <Vorpal> ah
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:24 <oerjan> *his
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:43:54 <Phantom_Hoover> http://i.imgur.com/Fqzmn.png
00:44:04 <Phantom_Hoover> OK Reddit, you have reached a new low.
00:44:12 <Phantom_Hoover> You know that you can link to comments, right?
00:45:15 <oerjan> comments can be deleted
00:45:40 <Phantom_Hoover> While imgur is writ fast in stone for all eternity?
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:51:32 <Phantom_Hoover> variable, honestly, Rapture != end of the world.
00:51:34 <oerjan> checking...
00:51:42 <oerjan> yes that too
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:52:20 <variable> I mostly ignored it
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 <variable> Vorpal: haha
00:55:29 <oerjan> is it OCPD that is the light version
00:55:48 <Vorpal> oerjan, what does that stand for?
00:55:53 <elliott_> Vorpal: P=personality
00:55:56 <Vorpal> ah
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:14 <Vorpal> Phantom_Hoover, yes?
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:28 <elliott_> Pictured: A caption.
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:10 <elliott_> Obviously
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:00:59 <Vorpal> elsewhere, none
01:01:08 <oerjan> Vorpal: it's their OCPD, surely
01:01:20 <Vorpal> oerjan, ...
01:01:31 * oerjan runs away cackling
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:03:59 <Vorpal> elliott_, OCD? yes
01:04:00 <Vorpal> :P
01:04:27 <oerjan> compulsif disordre obsessif
01:04:27 <elliott_> no, what oerjan said.
01:06:05 <Vorpal> elliott_, forgetting things? Amnesia?
01:06:27 <elliott_> Vorpal: no, FFS
01:06:34 <elliott_> hearing something, forgetting it, then thinking it's your own invention
01:06:38 <Vorpal> oh
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:13 <Vorpal> then google it
01:07:23 <elliott_> <elliott_> but i've forgotten it, so let's call it the Hird phenomenon
01:07:32 <Vorpal> oh right
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:08:38 <Vorpal> heh
01:09:39 <oerjan> "From The Culture of Matter to the Matter of Culture"
01:10:12 <elliott_> to the catter of multure
01:10:22 <Vorpal> how elliottish
01:11:39 <oerjan> apparently it's a feminist text by myra hird
01:11:55 <oerjan> and paywalled
01:12:09 <elliott_> dat ho is a bitch and a whore
01:12:11 <elliott_> sorry what
01:12:11 <Phantom_Hoover> <oerjan> "From The Culture of Matter to the Matter of Culture"
01:12:17 <Phantom_Hoover> I remember reading that book.
01:12:18 <Phantom_Hoover> Bit long.
01:12:36 <elliott_> http://en.wikipedia.org/wiki/Matter_%28novel%29
01:12:40 <elliott_> DISCUSS
01:13:06 <Phantom_Hoover> I FIND THE GROWTH OF THE SECONDARY PLOT AND DIVERSION FROM THE APPARENT PRIMARY ONE MASTERFUL
01:13:28 <Phantom_Hoover> ALSO: damn that nestworld was cool.
01:14:06 * Phantom_Hoover → sleep
01:15:15 <elliott_> Stupid sleeping idiot.
01:15:17 <elliott_> Wait what.
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:20:33 <elliott_> OBVIOUSLY NOT
01:21:19 <elliott_> obviously oerjan plays wa
01:26:26 <CakeProphet> ...oh god, someone wants me to make a Facebook wall-post download bot..
01:26:31 <elliott_> wat
01:26:36 <elliott_> say no? :P
01:26:43 <CakeProphet> ..but they might pay me. :)
01:26:47 <elliott_> oh download
01:26:51 <elliott_> i thought you said like spambot :D
01:26:51 <CakeProphet> but like... that just sounds awful.
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:08 <elliott_> easy to click links w/ JS :)
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:18 <CakeProphet> ah..
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:10 <CakeProphet> right.
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:03 <elliott_> to run on the page
01:34:03 <CakeProphet> aaah
01:34:07 <CakeProphet> that works.
01:34:18 <CakeProphet> ...though, that will be a massive URI. :P
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:07 <CakeProphet> lol
01:35:16 <CakeProphet> Chrome should be fine too I imagine
01:35:20 <elliott_> Yeah.
01:35:35 <CakeProphet> so how does minification work exactly?
01:35:37 <CakeProphet> magic?
01:35:48 <elliott_> Just renames variables, does some minor code compression, things like that
01:35:54 <CakeProphet> oh okay.
01:36:04 <elliott_> Removes whitespace :P
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:55 <CakeProphet> I imagine they just want the end result.
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:39 <elliott_> That'd be a pain
01:38:40 <CakeProphet> elliott_: nah I don't think they care, but that would be super fancy.
01:39:00 <elliott_> What'll you do :P
01:39:00 <CakeProphet> elliott_: no from my understanding it's just particular things they've linked or uploaded or... something.
01:39:09 <elliott_> God knows.
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:39:57 <elliott_> God W:A is a good game.
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:17 <elliott_> they sound weird.
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:40:51 <CakeProphet> haha, then do some good old find.
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:42:55 <CakeProphet> anyways, talk to you later.
01:44:16 <tswett> Hi, CakeProphet.
01:48:23 -!- CakeProphet has quit (Ping timeout: 258 seconds).
02:07:00 -!- Sgeo has joined.
02:07:45 <elliott_> Sgeo: wanna play w:a
02:07:49 <elliott_> ?
02:10:16 <Sgeo> hmm
02:12:42 <elliott_> qwerty
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:37 * oerjan knoweth not
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:29:23 <elliott_> Sgeo: y/n
02:29:28 <Sgeo> l
02:29:31 <elliott_> what
02:29:36 <Sgeo> Better yet, /
02:29:48 <elliott_> will you just answer :p
02:29:54 <Sgeo> m
02:30:02 <elliott_> with either y or n
02:30:15 <oerjan> ñ
02:30:24 <Sgeo> I take it "either/or" in English is XOR?
02:30:33 <elliott_> it's OR, isn't it
02:30:39 <elliott_> hmm
02:30:42 <elliott_> Sgeo: ok but seriously y or n
02:31:01 <Sgeo> y
02:31:44 <elliott_> finally :P
02:31:49 <elliott_> wormnet?
02:32:21 <Sgeo> Hold on
02:32:28 <Sgeo> Hmm, maybe I should use a snooper instead
02:32:32 <Sgeo> Of opening W:A
02:32:35 <oerjan> AUT Y AUT N AUT NIHIL
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:34:53 <elliott_> Sgeo: I've created a game
02:34:58 <elliott_> unless you want to host
02:34:58 <SgeoN1> So did i
02:35:10 <SgeoN1> I though we we're going to do hard tube trap
02:35:16 <elliott_> were we ok
02:35:17 <SgeoN1> Joinmejoinme
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:26 <Patashu> or 'exactly one of'
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:11 <SgeoN1> Earth to elliott_
04:05:44 -!- SgeoN1 has quit (Read error: Connection reset by peer).
04:05:50 <elliott_> Sgeo: what
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:13:20 <elliott_> and f takes two arguments
04:13:21 <elliott_> sooooo
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:16:42 <oerjan> i see
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:19:07 <oerjan> looks promising
04:19:53 <elliott_> so ugly :(
04:20:07 <oerjan> well hm
04:20:17 <oerjan> > (0$0 `on`)
04:20:18 <lambdabot> The operator `Data.Function.on' [infixl 0] of a section
04:20:18 <lambdabot> must have lowe...
04:20:26 <oerjan> ic
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:29 <elliott_> oerjan: that scares me :D
04:21:48 <oerjan> what, removing the parentheses?
04:21:59 <elliott_> yes
04:24:03 -!- CakeProphet has quit (Ping timeout: 276 seconds).
04:24:19 -!- AerobicRobot has quit (Client Quit).
04:25:49 <elliott_> yawn
04:27:16 <Sgeo> Yeah
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:28:42 <elliott_> i should sleep soon
04:29:03 <elliott_> oh hm wait
04:29:07 <elliott_> oerjan: i actualyl only need an unary version
04:29:32 <elliott_> B(n -- arccos(b))
04:29:34 <elliott_> spot the error :D
04:30:01 <oerjan> the -- ?
04:31:44 <elliott_> no
04:31:50 <elliott_> that's a stack thing
04:31:51 <elliott_> not haskell
04:32:25 <elliott_> shiro: Negative exponent
04:32:25 <elliott_> sigh
04:32:25 <oerjan> ...what's with this being cryptic lately :P
04:32:29 <elliott_> how do you catch "error"s
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:33:12 <oerjan> nope
04:33:55 <elliott_> what kind are they ;D
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:35:56 <elliott_> oerjan: obviously
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:20 <elliott_> oerjan: hey oerjan
04:41:22 <elliott_> oerjan: core forms
04:41:32 <oerjan> whatever that is
04:41:43 <elliott_> oerjan: like um core language things
04:41:45 <elliott_> i guess
04:41:46 <elliott_> cps won't work
04:41:52 <elliott_> hmm
04:41:54 <elliott_> unless
04:43:13 <elliott_> (f x = g (ha x) (hb x)) --> f = \x|k. k (\|k. ha x (\hax. k ...........))
04:43:14 <elliott_> dojghgd
04:43:16 <elliott_> that won't work
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:06 <oerjan> especially when tired
04:50:28 <elliott_> haven't you just woken up or something
04:50:29 <elliott_> or do you mean me
04:50:39 <oerjan> no, i'm about to sleep soon
04:56:36 <elliott_> hmm
04:56:40 <elliott_> thats kind of a weird idea, maybe i should too?
04:56:43 <elliott_> nah
04:56:45 <elliott_> sound sstupid
04:56:56 <elliott_> hey oerjan
04:57:00 <elliott_> happy rapture
04:57:02 <elliott_> anniversary
04:57:06 <elliott_> raptureversary
04:57:57 <oerjan> sappy capture
04:58:17 <elliott_> crapture
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:16 <elliott_> idnight."
04:59:19 <elliott_> wow, he actually believed it
04:59:57 <elliott_> ?tell Vorpal http://www.latimes.com/news/local/la-me-rapture-20110522,0,5118540.story
04:59:57 <lambdabot> Consider it noted.
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:02:02 <oerjan> umop ap!sdn ueaw noh
05:02:29 <elliott_> hon waeu nds pa domu
05:02:32 <elliott_> is that maori
05:02:52 <oerjan> aqhew
05:03:17 <elliott_> wehqa
05:03:27 <oerjan> <- pooj
05:03:44 <elliott_> joop yourself
05:35:24 <Sgeo> DAMMIT
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:36:58 <elliott_> "Homestruck" lol
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:00:54 <monqy> thanks
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:18:44 <pikhq_> Some apocalypse.
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:03 <Sgeo> Crap
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:08 <Sgeo> Ok, 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:25 <cheater897> 0great
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:08 <Sgeo> Yeah
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:05:28 <pikhq_> *sigh*
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:48 <Sgeo> Yeah
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:10:25 <monqy> mmmm
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:27 <pikhq_> I'd contact the CDC.
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:20:03 <monqy> or a small party
08:20:04 <monqy> both work
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:19 <Sgeo> )
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:29:18 <pikhq_> Psalm 42.
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:37 <Zwaarddijk> *chalks
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:46:33 <Phantom_Hoover> OMG the 2011 Lyttle Lytton results are out.
10:55:32 <Phantom_Hoover> '“My heart medication!” slowly remembered Dwayne, but his lateness was a stark reality.'
10:55:45 <Phantom_Hoover> The mangled sentences are always good for a laugh.
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?'
10:56:52 <Phantom_Hoover> WHO KNOWS
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:06:59 <Phantom_Hoover> Metaphor slippage!
11:07:29 <Patashu> Haha
11:07:36 <Patashu> This is the purple prose award?
11:07:48 <Phantom_Hoover> No.
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:08:53 <Patashu> Aaag
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:22 <Phantom_Hoover> '“Shame on you,” he scorns at you in anger, “Shame!”'
11:10:24 <Phantom_Hoover> Scorns!
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:11:48 <Phantom_Hoover> Yep.
11:11:54 <Phantom_Hoover> Cited as a good example of imagery.
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:21:22 <Phantom_Hoover> Sgeo, where are you now at Homestuck.
12:21:27 <Phantom_Hoover> Also, which spoiler.
12:29:25 <Phantom_Hoover> http://www.bbc.co.uk/news/magazine-12249363
12:29:29 <Phantom_Hoover> O.o
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:03:00 <Phantom_Hoover> I see the murder in his eyes.
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:32:56 <Vorpal> huh
14:45:57 <oerjan> Vorpal: the word "drug" in english includes legal pharmaceuticals
14:46:05 <oerjan> in this case, tylenol
14:47:25 <oerjan> of the kind that sgeo's father might very well allow, being afair a medical doctor
14:47:41 <oerjan> ->
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:33 <Vorpal> olsner, what?
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:16 <olsner> bara rent allmänt
15:32:22 <Vorpal> olsner, slang?
15:32:28 <olsner> japp
15:32:31 <Vorpal> aha
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 <elliott> hello
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:17:01 <elliott> a week even
16:20:05 -!- monqy has joined.
16:28:31 -!- olsner has quit (Read error: Operation timed out).
16:34:47 <Vorpal> elliott, weird
16:39:31 <ais523> hmm, amusing spambot name (that just emailed me): globalfreedomreliableloanfirm
16:41:40 <Vorpal> heh
16:42:43 <elliott> sounds legit
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:30:40 <elliott> replace nested loops."
17:30:42 <elliott> SO ADVANCED
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:08 <pikhq> Use AdBlock Plus.
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:31 <elliott> Thanks but no thanks.
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:48:38 <pikhq> Bleck.
17:48:52 <Vorpal> fizzie, to where?
17:49:26 <fizzie> To Praguel
17:49:30 <elliott> Praguel.
17:49:30 <fizzie> s/l/./
17:49:37 <elliott> QWERTY user detected :P
17:49:39 <fizzie> El Praguel.
17:49:42 <Vorpal> ah
17:49:45 <elliott> Pwaggle.
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:48 <Vorpal> I guess no?
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:49:52 <elliott> <Vorpal> I guess no?
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:31 <Vorpal> oh come on
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:43 <Vorpal> this is silly
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:09 <elliott> THOUGHT SO
17:52:10 <fizzie> elliott: Not quite.
17:52:13 <elliott> Oh.
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:26 <elliott> Wolfram Alpha :-P
17:57:45 <Vorpal> elliott, yes but how do you get it to give you something on NOR-NOR form
17:58:02 <elliott> Dunno :P
17:58:18 <elliott> There's http://reference.wolfram.com/mathematica/ref/BooleanConvert.html
17:58:24 <Vorpal> *looks*
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:58:58 <elliott> Try BooleanMinimize then.
17:58:59 <Vorpal> yay
17:59:02 <elliott> Not that it's a "hard" task. :p
17:59:02 <Vorpal> elliott, perfect!
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:00:52 <Vorpal> oh right
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:03:44 <Vorpal> perfect
18:04:14 <elliott> You mean... a built-in Mathematica function does EXACTLY what you want?
18:04:18 <elliott> That's a new one.
18:04:37 <Vorpal> elliott, was that sarcasm?
18:04:42 <elliott> No.
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:19 <elliott> Lymia: No.
18:05:25 <Lymia> elliott, but was that sarcasm?
18:05:28 <elliott> Yes.
18:05:42 <Lymia> elliott, but was that last line sarcasm?
18:05:45 <Phantom_Hoover> I N C E P T I O N
18:05:53 <Lymia> Phantom_Hoover, I was waiting for that.
18:05:57 <elliott> Phantom_Hoover: Lame.
18:06:02 <Phantom_Hoover> elliott, naturally.
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:26 <Phantom_Hoover> No, it's an old meme.
18:06:28 <Vorpal> ais523, oh, okay
18:06:34 <Phantom_Hoover> Hence lameness.
18:06:39 <Vorpal> ais523, why has it cropped up a lot recently then hm
18:06:42 <Phantom_Hoover> I just couldn't resist, though.
18:06:42 <elliott> It was lame on about its third use, tbh.
18:06:43 <elliott> Vorpal: It hasn't.
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:06:56 <Vorpal> hm
18:07:00 <Vorpal> so what is that meme about
18:07:04 <elliott> a film
18:07:09 <Vorpal> ah I see
18:07:28 <elliott> (The morale of the film is that recursion blows idiots' minds.)
18:07:34 <elliott> [asterisk]moral, I think.
18:08:12 <elliott> WormNet sucks.
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:21:54 <Phantom_Hoover> tswett, says the Australian.
18:22:08 <elliott> wat
18:22:08 <tswett> Australian? Where?
18:22:23 <tswett> Really, guys, this running gag has gone on too long.
18:22:26 <tswett> I'm actually Finnish.
18:22:39 <elliott> Nice try, Australian.
18:22:57 <tswett> Nice try, you... NATIONALITY LIAR.
18:23:35 <Phantom_Hoover> Wait is tswett not Australian.
18:23:41 <Phantom_Hoover> I thought he was Australian.
18:23:44 <tswett> I'm Finnish.
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:23:47 <tswett> I'm totally Finnish.
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:05 <pikhq> Yes.
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:24:38 <pikhq> Yes.
18:24:44 <tswett> Hm. Neat.
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:54 <Phantom_Hoover> pikhq, 172 miles along the roads.
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:10 <elliott> Oh.
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:03 <Phantom_Hoover> Well, there's an intermittent ferry stop.
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:36 <Phantom_Hoover> tswett, how are you American.
18:30:40 <Phantom_Hoover> You're Australian dammit.
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:18 <tswett> Vittu.
18:31:20 <tswett> See?
18:31:21 <elliott> Phantom_Hoover: If I became Australian would that make you more happy?
18:31:41 <Vorpal> elliott, g'day mate!
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:17 <Vorpal> elliott, oh
18:32:29 <elliott> OBVIOUSLY
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:33:35 * Phantom_Hoover → food
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:06 <Vorpal> pikhq, oh my
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:45 <elliott> >=million?
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:13 <elliott> ZOMG
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:49 <pikhq> Vorpal: Yeah.
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:14 <Vorpal> huh
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 <Lymia> Uh.
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:19 <Vorpal> Lymia, I'm not sure
18:42:37 <Vorpal> wait hm
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 <Lymia> tswett, weird.
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:27 <Vorpal> hm can't be
18:43:28 <elliott> Vorpal: OK, so you're claiming that + is a better operator for nor than... the nor symbol?
18:43:29 <Vorpal> but well hm
18:43:38 <Lymia> tswett, I thought Mathematica's syntax was "Command[Args,ARgs]"
18:43:40 <Lymia> Args*
18:43:48 <Vorpal> elliott, I'm just more used to it being written like that in digital logic
18:43:51 * tswett nods.
18:44:03 <Vorpal> anyway
18:44:04 <elliott> Lymia: It has binary operators too.
18:44:08 <elliott> I think ternary too.
18:44:09 <Vorpal> ! a \[Nand] ! b \[Nand] c \[Nand] ! d
18:44:11 <Vorpal> is the same
18:44:21 <Vorpal> so that means
18:44:30 <Vorpal> (a'bcd)'
18:44:31 <Vorpal> right
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:45:08 <elliott> pikhq: wait what
18:45:11 <elliott> re: city of london
18:45:59 <Lymia> Vorpal, eh?
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:45 <Lymia> |
18:46:51 <Lymia> -#T
18:46:51 <Lymia> |
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:12 <Lymia> Vorpal, hold on.
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:48:32 <elliott> nice
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:14 <elliott> pikhq: What is, then?
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:49:56 <pikhq> Sorry.
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 <Phantom_Hoover> Lymia, doitdoitdoit
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:41 <Vorpal> err
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:45 <Phantom_Hoover> I'm guessing you could just brute-force.
18:50:45 <Vorpal> wtf at spelling
18:50:58 <Lymia> Phantom_Hoover, how long will THAT take?
18:51:01 <Vorpal> Lymia, heh
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:34 <Lymia> Again.
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:51:46 <Vorpal> elliott, nvm
18:51:47 <Phantom_Hoover> Lymia, yes.
18:51:55 <Phantom_Hoover> Well, redstone torches on a block.
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:13 <Phantom_Hoover> Yesyesyes OK.
18:52:13 <Vorpal> Lymia, "depends"
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:55 <elliott> fizzie: Totally.
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:06 <Phantom_Hoover> Lymia, probably brute-forceable.
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:37 <Lymia> I mean.
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:37 <Phantom_Hoover> We have a castle, bitches.
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:48 <elliott> Vorpal: Suuuuuuuuure.
18:55:53 <Phantom_Hoover> http://en.wikipedia.org/wiki/File:Castle_Dunedin.JPG
18:55:54 <Vorpal> elliott, just like fizzie was
18:56:03 <Lymia> Vorpal, I dunno.
18:56:06 <Phantom_Hoover> Less crappy picture of castle.
18:56:14 <Lymia> I guess I could start out with compiling expressions to redstone circults.
18:56:17 <Lymia> circuits*
18:56:19 <Lymia> i.e.
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:40 <Lymia> Anyways.
18:56:43 <elliott> I NOTE HOW EXTREMELY ON TOPIC THIS IS FOR #esoteric-minecraft
18:56:44 <elliott> COUGH
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:56:57 <Lymia> >.>
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:10 <Phantom_Hoover> elliott, ah, clearly it centres on its abbey.
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:29 <Lymia> Actually.
18:57:31 <Vorpal> yorick, hah
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:03 <Vorpal> Lymia, hm no idea
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:29 <elliott> Lymia: >:E
18:58:34 <Vorpal> this looks like quite a chore
18:58:39 <Lymia> Vorpal, heh.
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:12 <Vorpal> yorick, how? trains?
18:59:17 <elliott> ZOMGMODULES: it has none
18:59:18 <elliott> ZOMGMODULES: yw
18:59:21 <yorick> Vorpal: and signals
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
18:59:39 <ZOMGMODULES> elliott: ZOMGTHX
19:00:04 <fizzie> yorick, Vorpal: Some gates in openttd: http://zem.fi/ttd_logic/
19:00:09 <Vorpal> ah
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:27 <yorick> (2D map array)
19:04:35 <Vorpal> ah
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:04:55 <fizzie> And/or option.
19:04:55 <elliott> Isn't that stock?
19:04:56 <elliott> Or an option.
19:04:58 <elliott> Right.
19:05:01 <yorick> it's a cheat
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:40 <oerjan> hm
19:52:53 <oerjan> ...no ancient lambdabot messages for me
19:54:48 <Vorpal> fizzie, there?
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:12 <Vorpal> oerjan, I found it
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:28 <Vorpal> (and shifting in)
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:34 <Vorpal> oerjan, to
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:56:58 <Phantom_Hoover> http://en.wikipedia.org/wiki/Termitaria#Nests
19:56:59 <oerjan> *NOR
19:57:10 <Phantom_Hoover> "Not to be confused with Termit, Thermite or Turmite."
19:57:18 <Phantom_Hoover> Also not to be confused with Marmite.
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:13 <Vorpal> Sum = A xor B
19:58:13 <Vorpal> C = A and B
19:58:13 <Vorpal> }
19:58:14 <Vorpal> and so on
19:58:28 <fizzie> And the syntax might be just some ad-hoc pseudoish notation for all I know.
19:58:31 <Vorpal> ah
19:58:36 <Vorpal> fizzie, hey you wrote this :P
19:58:44 <fizzie> Yes, but it was a while ago. :p
19:58:47 <Vorpal> true
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:00:48 <Vorpal> ah
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:03:41 <elliott> asdfq
20:06:15 <Vorpal> fizzie, ah
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:06:29 <elliott> hyuk
20:07:48 <olsner> kuyh
20:10:20 -!- cheater897 has joined.
20:10:24 <oerjan> >|nhy
20:11:57 <elliott> 8^y
20:12:29 <oerjan> roadkill smileys
20:12:49 <elliott> that was the sbahj smiley
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:27 <oerjan> olsner: FAIL
20:15:35 <olsner> oerjan: HI
20:15:36 <elliott> oerjan: http://www.mspaintadventures.com/sweetbroandhellajeff/
20:15:38 <elliott> sweet bro and hella jeff
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:23 <elliott> it i
20:19:25 <elliott> [asterisk]is
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:20:53 <elliott> [asterisk]that is number
20:21:04 <oerjan> @_@
20:21:09 <elliott> also number four, and five
20:21:16 <elliott> and especially six
20:21:21 <elliott> and seven
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:43 <elliott> but six is the best :D
20:24:55 <elliott> hmm where's the prices and values one i think i'll go reread it
20:25:13 <elliott> no wait seven's the best
20:25:15 <elliott> they're all the best
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:14 <elliott> --AH
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:28 <Sgeo_> LIES
20:30:38 <elliott> hey Sgeo_ what's the dog's name
20:30:39 <elliott> is it Bic
20:30:41 <elliott> I think it's Bic
20:30:46 <Vorpal> the blurb on http://reference.wolfram.com/mathematica/guide/BooleanComputation.html is hilarious
20:30:52 * Sgeo_ slaps elliott
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:31:58 <elliott> ...
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:05 <elliott> ...
20:34:11 <elliott> Have you actually been reading.
20:34:14 <Vorpal> elliott, yes
20:34:25 <Vorpal> elliott, I just suck utterly at names
20:34:38 * Sgeo_ messages Vorpal
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:47 * Sgeo_ slaps Vorpal
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:36:46 <elliott> And only two [S]s.
20:37:15 <Vorpal> elliott, that is still more than most other comics I read
20:37:18 <Vorpal> which update daily
20:37:49 <elliott> Vorpal: It hasn't been updating anywhere near daily, and one HS panel is less than one normal comic..
20:37:58 <Vorpal> hm
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:39:32 <Sgeo_> ://
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:46:31 <oerjan> a bit of a tall order
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:52:16 <Timwi> Hi!
20:52:22 <oerjan> hi Timwi
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:53:59 <oerjan> clearly.
20:54:21 <Timwi> It would be futile asking something about the esolangs.org wiki then, would i?
20:54:24 <Timwi> *it?
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:44 <Timwi> <ducks>
20:54:47 <Phantom_Hoover> Despite us already having a separate channel for Minecraft discussion to start with.
20:55:05 <elliott> hi Timwi
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 <Timwi> Oh Ill go check
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:02 <oerjan> (understatement)
20:57:05 <elliott> oerjan: hmm right
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:35 <Phantom_Hoover> "A soldier of the New World army ant..." — WP
20:57:39 <oerjan> elliott: well i don't think they can just revoke the license, can they?
20:57:43 <Phantom_Hoover> I first parsed that as some kind of weird cult.
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
20:59:57 <oerjan> Timwi: yeah.
21:00:00 <Timwi> No disagreements? :)
21:00:02 <elliott> definitely
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:01 <elliott> Whoops, redundancy.
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:23 <elliott> right
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:17 <elliott> and zero-effort too :D
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:05:47 <Deewiant> elliott: Works
21:05:51 <Timwi> Works for me too
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:45 <elliott> maybe :)
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:24 <elliott> only one kind are stubs
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:31 <Timwi> OK, true
21:19:38 <Timwi> It was intended as an _introduction_ rather than a tutorial
21:19:46 <elliott> right :)
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:25 <oerjan> for quotes
21:23:30 -!- ralc has joined.
21:23:38 <Timwi> Since when is UTF-8 strage?
21:23:40 <Timwi> strange?
21:24:07 -!- Tritonio has quit (Quit: Leaving).
21:24:20 <oerjan> they show up as inverted double S or T
21:24:34 <Timwi> Hm
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:11 <elliott> tunes.org sends no header
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:23 <elliott> that assumes utf8
21:27:26 <oerjan> hm
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:24 <elliott> Yes.
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:50 <elliott> ̈æ (testing)
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:00 <elliott> heh
21:30:03 <Timwi> Anyway. I'm happy to hear suggestions for a better IRC client
21:30:08 <oerjan> huh
21:30:13 <oerjan> æ (testing too)
21:30:19 <elliott> I use xchat but I'm on linux
21:30:30 <oerjan> no diaeresis for that
21:30:37 <elliott> although I gather that http://code.google.com/p/xchat-wdk/ is a decent xchat bild for windows...
21:30:40 <elliott> build
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 <elliott> just like editors :)
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:47 <Timwi_> Meow?
21:34:53 <Timwi> Whoa, I didn't see the join message
21:35:00 <Deewiant> oerjan: /set recode_fallback CP1252
21:35:17 <oerjan> Deewiant: hm?
21:35:19 <elliott> Deewiant: that's loser talk
21:35:21 <elliott> oh wait, i see
21:35:22 <Timwi> Argh! Ctrl+L clears the bugger, how do I undo that?
21:35:27 <elliott> Timwi: you can't
21:35:27 <Timwi> LOL s/bugger/buffer/
21:35:34 <elliott> well, afaik
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:50 <elliott> (Ctrl+L is the binding)
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:37:18 <Timwi> Meow
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:38:28 <oerjan> when doing bot stuff
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:40:14 <Timwi__> Test Meow Timwi Test meow
21:40:24 <oerjan> !bf8 +[.+]
21:40:26 <EgoBot> ​........
21:40:56 * oerjan misses fungot
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:03 <oerjan> !bf8 ++++++++++[.+]
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:28 <Timwi> Aaargrggghhh
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:43:44 <elliott> eh?
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 <elliott> hmm
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 <elliott> oh hey
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:46:54 <elliott> it was readded
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:48:58 <elliott> "any other app"?
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:51:02 <elliott> nope :)
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:17 <Timwi> Yeah, it is
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:22 <Timwi__> Meow!
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:22 <Timwi> Anyway
21:59:24 <Timwi> Back to esolangs
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:45 <elliott> not Funge-98
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:42 <elliott> same API, though?
22:04:47 <Timwi> No
22:04:48 <elliott> it seems to be unsigned only
22:04:56 <Timwi> Oh dear :)
22:06:05 <Timwi> Everyone except for us two has gone quiet...
22:06:12 <elliott> chirp
22:06:17 <elliott> !bf8 +[.+]
22:06:18 <EgoBot> ​........
22:06:25 <elliott> `echo beep
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:29 <HackEgo> ​beep
22:06:30 <elliott> > text "boop"
22:06:31 <lambdabot> boop
22:06:48 <elliott> oerjan: Phantom_Hoover: hey, revive the channel :-)
22:07:10 <Phantom_Hoover> I suggest we do it with SCIENCE!
22:07:13 <Phantom_Hoover> Bee science!
22:08:02 <Phantom_Hoover> (I have developed an interest in bees.)
22:09:18 <Phantom_Hoover> Esolang based on bees. Discuss.
22:09:33 -!- elliott_ has joined.
22:09:45 <Phantom_Hoover> Beesolang.
22:09:47 <Timwi> Hm, commands are encoded as dance patterns?
22:10:01 <Phantom_Hoover> Perhaps. Or you control the queen.
22:10:43 <Phantom_Hoover> You make new bees and they do things.
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:03 <Phantom_Hoover> I am sorry we are discussing Beesolang.
22:13:15 <elliott__> Who pronounced "eso" with a long e.
22:13:18 <elliott__> pronounces.
22:13:22 <elliott__> Bad people that's who.
22:13:40 <Phantom_Hoover> ...you say it as "ehsolang"?
22:13:46 <elliott__> Yes.
22:13:49 <Timwi> I always thought it should be long e, too.
22:13:57 -!- elliott_ has quit (Ping timeout: 240 seconds).
22:13:59 <elliott__> I WILL CONSULT GOOGLE
22:14:00 <Phantom_Hoover> But... esoteric is pronounced with a long 'e'.
22:14:03 <oerjan> a language with cubes
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:17 <elliott__> Ha ha I am right.
22:14:27 <Phantom_Hoover> Huh.
22:14:34 <Timwi> http://howjsay.com/index.php?word=esoteric&submit=Submit
22:14:38 * Phantom_Hoover uses DESCRIPTIVISM
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:08 <Phantom_Hoover> It's a common word down our way.
22:15:19 <elliott__> You weirdo Scots.
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:53 <Phantom_Hoover> elliott__, no, just ASCII phonetics.
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:45 <elliott__> I read it in the logs.
22:17:53 <elliott__> I am going to generalise it down to "silk" to irritate you.
22:18:05 <oerjan> spider silk
22:18:07 <elliott__> I will then point out how impractical that is wrt the weather where you live.
22:18:39 <Phantom_Hoover> I would have a machine for it, obviously.
22:18:44 <Phantom_Hoover> And... import the spiders?
22:18:53 <elliott__> Phantom_Hoover: I mean that it is cold in Scotland.
22:18:57 <elliott__> And silk is... not very warming.
22:18:58 <Phantom_Hoover> It's more practical than the tantalum, at least.
22:19:05 <elliott__> Tantalum shirt.
22:19:07 <Phantom_Hoover> elliott__, we have jumpers, you know.
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:20:32 <elliott__> ...
22:20:38 <elliott__> Finally I understand your mind.
22:21:11 <Phantom_Hoover> Oh? Do tell, I've often wondered myself.
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:22:45 <elliott__> big ones
22:22:48 <oerjan> hm
22:24:54 * Phantom_Hoover → sleep
22:27:01 -!- Phantom_Hoover has quit (Remote host closed the connection).
22:29:37 <Timwi>
22:29:51 <Timwi> Hm, what did you see in my previous message?
22:30:16 <Timwi>
22:30:27 <Timwi> Interesting! It’s sending UTF-8 now!
22:30:51 * Timwi shuts up.
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:52 <Timwi> Oh
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:35:54 <elliott__> that would be a copyvio :/
22:36:06 <oerjan> yeah alas
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:38:38 <elliott__> ah
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:37 <elliott__> the latter is fine ofc
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:40:49 <elliott__> that's copyright law for you :(
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:28 <coppro> No
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:36 <Timwi> Oh I see
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:21 <elliott__> :-P
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:37 <elliott__> wat...
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:30 <Timwi> Right
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:29 <elliott__> in your proposed scenario
22:57:43 <Timwi> Yes, hence why I‘m asking to be able to do that
22:57:53 <Timwi> But anyway
22:58:16 <elliott__> hm is that an opening single quote character there...
22:58:22 <elliott__> (in "I‘m")
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:28 <elliott__> s/fro/for/
22:59:32 <Timwi> s/‘/’/g :-p
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:42 <Timwi> I suppose
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:05:31 <Timwi-Cooking> I REALLY NEED TO GO COOKING
23:05:32 <Timwi-Cooking> Bye :-p[
23:05:37 <Timwi-Cooking> s/\[// :-p
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:04 <elliott__> probably it got linked on reddit
23:10:06 <elliott__> OR
23:10:07 <elliott__> it's all us
23:10:07 <oerjan> hm probably not
23:10:12 <elliott__> we just made _that_ _many_ implementations
23:10:13 <elliott__> ;D
23:10:16 <oerjan> heh
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:11:20 <oerjan> )
23:13:11 <oerjan> hm no underload
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:15:55 <oerjan> nope
23:16:19 <oerjan> heck even unlambda isn't (it's #1 on the next page)
23:16:33 <elliott__> pah
23:16:37 <elliott__> uncouth viewers
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:18:31 <elliott__> you killed the joke :(
23:19:26 <oerjan> it was moribund from the start
23:21:29 -!- FireFly has quit (Quit: swatted to death).
23:24:52 <zzo38> |
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:26:38 <elliott__> "like, except entirely different"
23:28:42 <zzo38> elliott__: Yes.
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:31:00 <oerjan> capital idea
23:32:31 <zzo38> elliott__: Are they based on META headings or anything like that?
23:32:49 <elliott__> no idea
23:32:56 <elliott__> it seems to be guesswork
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:20 <elliott__> hmm
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:27 <Patashu> ??
23:42:46 <elliott__> ok testing things with weird pronunciation it gets "deviantART" right, maybe it /is/ based on meta tags in part
23:42:49 <elliott__> this is silly
23:42:51 <elliott__> who cares
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).
2011-05-23
00:02:16 <elliott__> p
00:02:20 <elliott__> oops
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:14 <tswett> `quote Lawlabee
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:35 <tswett> `quote ths
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:00 <tswett> `quote nya
01:51:01 <HackEgo> No output.
01:51:10 <tswett> `quote oln
01:51:12 <HackEgo> No output.
01:51:21 <tswett> We've got some trigraph gaps.
01:51:27 <tswett> `quote nta
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:43 <tswett> `quote 106
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:54:46 <tswett> What's an AMICED?
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"
01:57:23 <Sgeo_> Recap 3 time
01:57:50 <oerjan> emit 3 pacer
02:07:23 <elliott__> oerjan: done
02:08:08 <oerjan> excellent
02:08:53 -!- variable has joined.
02:08:53 <oerjan> raw pots won
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:13:47 <oerjan> good, good
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:18 <elliott> rip
02:23:36 <Sgeo_> Last thing I said was Ok.
02:24:18 * oerjan swats Sgeo_ -----###
02:25:22 <oerjan> ...oh wait
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:40 <elliott> yes.
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:34:13 <elliott> i am everywhere.
02:35:35 <zzo38> I looked behind my chair and I didn't find you. Do you mean in the past?
02:35:45 <elliott> i am invisible.
02:41:50 <zzo38> How many hands are you holding up?
02:41:57 <elliott> all the hands
02:41:59 <elliott> all of them
02:42:05 <zzo38> Count!
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!
02:48:37 <elliott> poetic.
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:11:36 <NihilistDandy> elliott: YOU ARE NOT BEING VERY...
03:11:37 <NihilistDandy> erm
03:11:43 <NihilistDandy> DANDY, EITHER
03:12:21 <elliott> AT LEAST I STAY CONNECTED LIKE A TRUE NIHILIST
03:12:50 <NihilistDandy> ALL CONNECTIONS ARE ILLUSORY
03:13:29 <elliott> YOU'RE TAKING THIS VERY PERSONALLY FOR A NIHILIST
03:13:34 <elliott> ESPECIALLY A DANDY ONE
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:22:59 <NihilistDandy> Nice
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:27:05 <elliott> so
03:27:06 <elliott> hey
03:27:07 <elliott> oerjan
03:27:09 <elliott> i was thinking
03:27:09 <elliott> about
03:27:10 <elliott> core languages
03:27:12 <elliott> ;;;;DDDD
03:28:14 <oerjan> good, good, keep on thinking
03:28:16 <oerjan> ->
03:28:20 <elliott> DAMMIT
03:36:48 <oerjan> i sense much anger in you
03:37:45 <elliott> totes
03:37:48 <elliott> i'm alls with this anger
03:39:30 <elliott> hmm, can delay/force be implemented in pure Scheme...
03:39:49 <elliott> ah, yes
03:40:05 <oerjan> pure = without mutation? then i doubt it...
03:40:14 <elliott> no, pure as in without extensions
03:40:24 <oerjan> then yeah
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:25 <elliott_> hmm
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:40 <elliott_> Bad?
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:28 <elliott_> Maybe the only /good/ one? :P
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:02 <elliott_> Right.
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:12 <elliott_> GPU is...
03:57:23 <elliott_> NVIDIA GeForce 320M graphics processor with 256MB of DDR3 SDRAM shared with main memory3
03:57:26 <elliott_> Which is apparently "okay".
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:16 <pikhq> Beats mine.
03:58:22 <elliott_> Hmm, aren't PS2 games distributed on DVDs?
03:58:26 <pikhq> Yes, they are.
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:54 <elliott_> At least on this connection.
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:40 <elliott_> from...elsewise?
04:03:48 <zzo38> Yes, including from elsewise.
04:03:53 <elliott_> pikhq: who likes SD NOT ME
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:23 <pikhq> BAH, HUMBUG.
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:12 <pikhq> elliott_: Oh?
04:08:19 <elliott_> pikhq: didn't i already tell you about this??
04:08:26 <pikhq> Don't think so.
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:22 <elliott_> I'm not kidding
04:09:35 <pikhq> elliott_: ... *Jeeze*.
04:09:39 <elliott_> coup fails? PRETEND IT DIDN'T
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:03 <elliott_> THE PERFECT CRIME
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:30 <elliott_> are/is whatever
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:18:20 <zzo38> Did you read it?
04:21:21 <elliott_> no
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:28:00 <Sgeo_> elliott_,
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:42:38 <elliott_> Yes.
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:06 <elliott_> That sounds... horrible :P
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:11 <pikhq> Viola.
07:18:45 <elliott_> make it fire even if interrupts are off ;D
07:18:53 <elliott_> pikhq: Label the button "PANIC".
07:18:54 <elliott_> :P
07:19:05 -!- ais523 has joined.
07:19:08 <elliott_> hi ais523
07:19:23 <ais523> hi
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:46 <elliott_> Lymia: Yes?
07:19:50 <Lymia> Sounds fun.
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:07 <elliott_> ais523: I SPIT ON LAW
07:20:18 <Lymia> ais523, get a program to do it for you.
07:20:25 <Lymia> What exams?
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:21 <Lymia> Ah.
07:21:25 <Lymia> Disappointing.
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:22 <Lymia> Crap.
07:22:25 <Lymia> No code on it, right?
07:22:26 <Lymia> D=
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:22:48 <Lymia> On paper.
07:22:50 <Lymia> Sounds nasty.
07:22:50 <Lymia> :(
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:22 <elliott_> you know, human rights?
07:23:39 <ais523> elliott_: it's to stop them randomly typing stuff into NetBeans in the hope of triggering the autocomplete
07:23:44 <elliott_> hahahahah
07:24:38 <ais523> I've seen it happen
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:18 <elliott_> ais523 just cringed IRL
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:50 <elliott_> [asterisk]the low-level
07:26:55 <Lymia> elliott_, well.
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:51 <Lymia> =p
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:30:59 <Lymia> 1.what
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:16 <elliott_> not Java
07:31:21 <Lymia> I can see.
07:31:39 <elliott_> I'm usually a Haskell weenie :P
07:31:53 <Lymia> :3
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:32:56 <elliott_> Exactly.
07:32:56 <Lymia> wat
07:33:06 <elliott_> Lymia: Shiro, the best Funge-9eight interpreter this side of reality/
07:33:10 <elliott_> Written in HASKELL
07:33:15 <elliott_> THOUSANDS OF LINES OF VERY SERIOUS HASKELL
07:33:18 <Lymia> :3
07:33:40 <elliott_> Totals grouped by language (dominant language first):
07:33:41 <elliott_> haskell: 1264 (100.00%)
07:33:41 <elliott_> What.
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:00 <elliott_> That... that's really tiny.
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:06 <Lymia> :)
07:35:11 <elliott_> the language :P
07:35:17 <elliott_> ais523: what, clojure?
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:35:40 <elliott_> ais523: heh
07:36:58 <CakeProphet> :p
07:37:22 <CakeProphet> I am really enjoying Perl these days.
07:37:22 <elliott_> p:
07:37:35 <elliott_> Yes, I too am thoroughly enjoying being deranged.
07:37:37 <elliott_> Wait, what?
07:37:49 <CakeProphet> ..yes, it's kind of like that.
07:37:50 <elliott_> I shouldn't mock Perl, it's like stealing the disabled parking space :(
07:37:58 <elliott_> Only God judges you for it.
07:38:04 <elliott_> Also, people. But mainly God.
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:53 <Lymia> But mostly golf.
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:10 <CakeProphet> elliott_: none? regex is pretty easy.
07:42:33 <elliott_> CakeProphet: Nonsense, they've clearly doubled.
07:42:39 <CakeProphet> ...haha.
07:42:43 <CakeProphet> no. :P
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:26 <CakeProphet> ...oh hey, I am. :P
07:46:32 <elliott_> Anyway I don't do my programming in /// for a reason, so mentioning the channel name is silly :P
07:46:41 <CakeProphet> s/#esolang/#esoteric/
07:46:52 <CakeProphet> problem solved.
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:24 <elliott_> CakeProphet: it is.
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:47:47 <elliott_> With a really poor syntax.
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:49:05 <CakeProphet> ...yes, that's what I said.
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:37 <CakeProphet> ...yes that's what I was thinking of.
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:05 <elliott_> ??x
07:51:07 <elliott_> ?? x
07:51:07 <lambdabot> x
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:19 <elliott_> output is irrelevant
07:54:27 <CakeProphet> but memory would also be a problem
07:54:31 <elliott_> repeated regexp is tc obviously
07:54:34 <elliott_> because you can do bct
07:55:13 <CakeProphet> uh, I don't know what that acronym stands for.
07:55:27 <elliott_> see wiki
07:55:29 <elliott_> (esowiki)
07:57:04 <monqy> bitwise cyclic tag? sometimes I memorise catchy acronyms and I guess that's one of them
07:57:13 <elliott_> yes
07:57:38 <CakeProphet> elliott_: I think we have different definitions of obvious..
07:57:50 <elliott_> isn't it 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:01 <elliott_> Q.E.D.
07:58:16 <elliott_> do = with s/// on the combined program<>data string
07:59:49 <CakeProphet> how would you repeat it within the regex?
08:00:00 <elliott_> ??????
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:44 <elliott_> it doesn't
08:00:47 <elliott_> it implies repeated regexp is
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:07:35 <elliott_> indeed
08:08:08 -!- Patashu has joined.
08:09:37 <CakeProphet> clearly this calls for more beer.
08:16:43 -!- monqy has quit (Quit: hello).
08:32:29 -!- ralc has joined.
08:50:16 -!- Phantom_Hoover has joined.
08:50:19 <Phantom_Hoover> 03:27:12: <elliott> ;;;;DDDD
08:50:19 <lambdabot> Phantom_Hoover: You have 6 new messages. '/msg lambdabot @messages' to read them.
08:50:28 <Phantom_Hoover> THAT LOOKS SUSPICIOUSLY LIKE FAT VRISKA
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:33 <elliott_> well...
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:49:56 <Maxdamantus> Do you know of an example?
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:00 <elliott_> utm.b does obviously
11:53:05 <elliott_> being a universal turing machine
11:53:07 <Maxdamantus> Indeed.
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:57:43 <elliott_> the ads probably.
11:57:46 <elliott_> they're terrible
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:15:40 <elliott> atwood just
12:15:42 <elliott> just shut up
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:38:02 <elliott_> hi ais523
13:39:04 <ais523> hi
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:41:56 <elliott_> wat
13:42:07 <ais523> the first of the new ones had the same semantics as the first in the question, just rearranged
13:42:08 <elliott_> what did those functions do?
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:42:46 <elliott_> whaa
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:44:47 <elliott_> X-D
13:45:11 <elliott_> You need to track them down and have a breakdown while screaming "WHAT IS WRONG WITH YOU?? WHYYYYYYYYYYYYYY".
13:45:13 <ais523> you're alive!
13:45:16 <elliott_> only barely
13:45:30 <ais523> I pity any logreaders who stumble across this
13:46:22 <elliott_> hmm
13:46:24 <elliott_> maybe we should censor it
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:00:52 <cheater__> ais523: niiiice
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:15:00 <cheater__> ais523: still here
14:15:04 <cheater__> ais523: but limping
14:15:09 <ais523> ah, ouch
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:08:47 <Phantom_Hoover> How can it be this windy.
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:22 <Phantom_Hoover> OK so I have had the best idea.
15:40:47 <Phantom_Hoover> Make a pen, one end of which has an inked stamp saying "×10".
15:40:58 <Phantom_Hoover> Sell to physicists and engineers; make money.
15:41:09 <elliott_> PERFECT
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:29 <elliott_> :D
15:44:34 <elliott_> fermat's last biro
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:49:01 <elliott_> yeah
17:49:03 <elliott_> thats my question
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:12 <Lymia> Windows.
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:12 <elliott_> and then he a top
17:56:16 <elliott_> R.I.P.
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:58:31 <elliott_> swezsolp][;
17:58:31 <elliott_> '/\
17:58:48 <zzo38> No! Count!
17:59:10 <elliott_> words
17:59:29 -!- cheater__ has quit (Client Quit).
17:59:40 <Phantom_Hoover> zzo38, was the IRC channel the idiot mentioned #esoteric?
18:01:12 <Phantom_Hoover> Oh, wait, no.
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:51 <elliott_> hmm
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:02:30 <Phantom_Hoover> He has soiled the good image of the pangolin.
18:03:34 <Phantom_Hoover> Suggest we gang up on him.
18:04:05 <elliott_> being stupid is its own punishment
18:04:11 <elliott_> but maybe the punishment isnt harsh enough
18:04:16 <Phantom_Hoover> Indeed.
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:04:46 <Phantom_Hoover> — pangolin despoiler.
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:05 <ais523> how dare you!
18:33:41 <Phantom_Hoover> SpectateSwamp?
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:28 <Phantom_Hoover> He seems to be involved in desktop searching?
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:46:54 <Phantom_Hoover> http://thestupidestmanonearth.com/
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
18:47:44 <Phantom_Hoover> Oh, he's a UFO conspiracy theorist.
19:00:46 -!- TOGoS has joined.
19:20:13 <Phantom_Hoover> I like the way he calls a leaf an artifact.
19:20:21 <Phantom_Hoover> *artefact
19:21:25 -!- oerjan has joined.
19:24:01 <elliott_> whats a magi
19:24:02 <elliott_> c
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:26:20 <Vorpal> gah
19:26:21 <Vorpal> self*
19:26:34 <Vorpal> weird typo
19:27:07 <oerjan> unconscious wisdom
19:27:11 <elliott_> wesrdtfyguhijokplo[p;]'
19:27:12 <elliott_> \
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:33 <ais523> I was serious
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:28:56 <ais523> pretty much
19:29:01 <Vorpal> ah
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:28 <Vorpal> or that
19:29:33 <Vorpal> that would be useful
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:30:53 <oerjan> *when you
19:30:54 <elliott_> SSSHHHHHHH
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:04 <Vorpal> !!!!
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:25 <Vorpal> so that could happen
19:33:30 <ais523> it wasn't me who wrote the question
19:33:39 <ais523> and it was phrased very straightforwardly
19:33:43 <Vorpal> heh
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:06 <Vorpal> ais523, eh?
19:35:16 <ais523> I only marked one question, and didn't check to see what marks they got for other questions
19:35:18 <ais523> but am not hopeful
19:35:30 <Vorpal> ais523, so someone else marked the other questions?
19:35:34 <ais523> yep
19:35:42 <Vorpal> how comes?
19:35:45 <ais523> we marked one question each, rather than a portion of the scripts each, to keep things consistent
19:35:50 <Vorpal> ah
19:35:57 <Vorpal> many students?
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:22 <elliott_> [asterisk]place...
19:36:25 <elliott_> but still
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:35 <elliott_> Vorpal: shiro
19:36:38 <Vorpal> elliott_, ah
19:36:40 <elliott_> is not much over a thousand lines in total
19:36:44 <elliott_> including fingerprints
19:36:45 <Vorpal> elliott_, nice
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:37 <elliott_> yes, i plan 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:39:08 <elliott_> mvrs might be... uh
19:39:10 <elliott_> fun
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:46:57 <elliott_> >clearbf
19:46:59 <elliott_> oh wow.
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:31 <oerjan> *your
19:51:34 <elliott_> i'm reading thedailywtf's forums because... i'm a masochist i guess
19:51:35 <elliott_> oerjan: meh
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?
19:58:51 <oerjan> *from
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:18 <oerjan> i know _that_ much
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:04:50 <cheater897> oh, you're confused
20:04:57 <elliott_> no he isn't.
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:08:36 <oerjan> *es
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:24 <oerjan> well not for xp, no
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:10:55 <cheater897> oh, i think they do
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:32 <Phantom_Hoover> Vorpal, a static 2-way pipe.
20:11:38 <Phantom_Hoover> Which cannot be controlled in any way.
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:38 <cheater897> i guess there's like a global lock.
20:12:44 <cheater897> i don't think GPUs are multitasking.
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:12:58 <oerjan> hm
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:24 <cheater897> errr
20:15:27 <cheater897> grappling.
20:15:29 * cheater897 cries
20:15:50 <Vorpal> aren't grappling rules quite a PITA.
20:15:56 <cheater897> ^
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:28 <Vorpal> oerjan, yes indeed
20:18:43 <cheater897> oerjan, i always read that comic book's domain as "darth sand droids"
20:18:45 <cheater897> i dunno why.
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:30:52 <Phantom_Hoover> Oh jesus don't get me started on movie volumes.
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:32:52 <Phantom_Hoover> pikhq, yeah "movie" was the wrong choice.
20:33:01 <Phantom_Hoover> "Cinema" is what I meant.
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:14 <pikhq> Yeah.
20:38:52 <olsner> implementing brainfuck you barely even need a parser
20:39:19 <coppro> s/barely/don't/
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:40:43 <eduviges> holaaaaaaaaaaaaa
20:42:04 <elliott_> uh.
20:42:06 -!- pikhq_ has joined.
20:42:07 <elliott_> hello.
20:42:16 <Phantom_Hoover> .ve?
20:42:17 <elliott_> this channel is about programming,
20:42:37 <Phantom_Hoover> Ah, Venezuela.
20:43:22 -!- pikhq has quit (Quit: Reconnecting).
20:44:56 -!- Lymia has joined.
20:46:55 <cheater897> holaaaaaaaaaa eduviges
20:47:16 <elliott_> night.
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:50:44 <eduviges> me puedes hablar español
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:51:42 <Phantom_Hoover> Now if it was /Finnish/...
20:52:03 <oerjan> wait he's not here
20:52:11 * oerjan wanted to cash in some pity
20:54:34 <Phantom_Hoover> What date?
20:54:45 <oerjan> date?
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:08 <Phantom_Hoover> I think he hasn't slept since yesterday.
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.
20:59:59 <oerjan> hm
21:00:11 <Phantom_Hoover> And yes, because my parents have this strange urge to spend time with their family.
21:00:26 <Phantom_Hoover> Who are all in Ireland because they have no sense.
21:00:52 -!- eduviges has left.
21:01:26 <monqy> adios
21:01:32 <monqy> sssssssssssssssssssssssss
21:03:00 <Phantom_Hoover> *boom*
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:20 <oerjan> aha
21:18:36 <oerjan> boolean being andorran sounds more likely
21:20:02 <oerjan> !simpleacro
21:20:11 <EgoBot> ​IDOOK
21:20:22 <oerjan> idook is clearly an eskimo word
21:20:27 <oerjan> !simpleacro
21:20:32 <EgoBot> ​NXL
21:20:44 <oerjan> nxl must be aztec
21:20:50 <oerjan> !simpleacro
21:20:55 <EgoBot> ​UI
21:21:13 <oerjan> ui is probably hawaiian
21:21:15 <oerjan> !simpleacro
21:21:20 <EgoBot> ​GISYO
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:21:57 <oerjan> !simpleacro
21:22:02 <EgoBot> ​IQFBS
21:22:15 <zzo38> What algorithm is used for making up these words?
21:22:23 <oerjan> !show simpleacro
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:22:46 <zzo38> OK.
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> Prelude drop :: Int -> [a] -> [a]
21:24:40 <lambdabot> Prelude take :: Int -> [a] -> [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:14 <oerjan> )
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:29:25 <oerjan> hm right
21:30:01 <oerjan> and if you roll 6 immediately you get a length 0 word?
21:30:09 <zzo38> oerjan: Yes.
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:35:10 <oerjan> hm
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:37:46 <oerjan> wtf
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:20 <zzo38> !haskell
21:39:22 <oerjan> oh wait
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:40:06 <oerjan> !echo hi
21:40:07 <EgoBot> ​hi
21:40:36 <oerjan> !echo hi
21:40:36 <EgoBot> ​hi
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:01 <EgoBot> ​RY
21:42:14 <oerjan> indeed it must
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:02 <EgoBot> ​FI
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:17 <EgoBot> ​YUI
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:07 <oerjan> !simplename
21:44:12 <EgoBot> ​N
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:44:58 <zzo38> !simplename
21:45:03 <EgoBot> ​N
21:45:09 <zzo38> !simplename
21:45:14 <EgoBot> ​RORACFZPOEZXYOOUEE
21:45:17 <oerjan> ah
21:45:19 <monqy> good name
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:46:45 <oerjan> yes
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:07 <oerjan> hm maybe
21:52:15 <oerjan> !delinterp simplename
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:52:55 <oerjan> !simplename
21:52:59 <EgoBot> ​QGYQKF.
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:04:57 <Vorpal> oerjan, no, worse
22:06:00 <Phantom_Hoover> oerjan, we are facing an imminent invasion of wind-blown leaves, it appears.
22:06:16 <oerjan> eek
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:04 <Phantom_Hoover> Vorpal, ah, the clouds are in on it too.
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:26:20 <oerjan> yeah
22:27:09 <Phantom_Hoover> Perhaps it is a wikibook.
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:40:41 <Lymia> "retarded"
22:42:42 <Phantom_Hoover> http://www.youtube.com/watch?v=pP_lZaOchE0
22:42:47 <Phantom_Hoover> My god I must try this.
22:42:55 <Phantom_Hoover> Goddamn sixth-years.
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:17:25 <Phantom_Hoover> http://www.youtube.com/watch?v=M5_9z1TxUfg
23:17:30 <Phantom_Hoover> My god these people are nuts.
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).
2011-05-24
00:02:08 -!- myndzi has joined.
00:04:08 -!- pumpkin has quit (Quit: Computer has gone to sleep.).
00:04:20 * Phantom_Hoover → 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:37:40 <oerjan> (f . g) x = f (g x)
04:37:47 <oerjan> f $ x = f x
04:38:03 <copumpkin> the confusion comes from the associativity of ($)
04:38:04 <copumpkin> probably
04:38:05 <oerjan> infixr 0 $
04:38:09 <copumpkin> f $ g $ h $ x
04:38:18 <copumpkin> is equivalent to f . g . h $ x
04:38:44 <copumpkin> f $ (g $ (h $ x))
04:38:48 <copumpkin> (f . g . h) $ x
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:29 <copumpkin> in the latter case
04:39:32 <copumpkin> you could easily say
04:39:36 -!- NihilistDandy has quit (Quit: leaving).
04:39:39 <copumpkin> newFunction = f . g . h
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:44 <copumpkin> :t (?f $ ?g $ ?h $)
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:42:45 <lambdabot> namely `$' [infixr 0]
04:43:04 <pikhq_> What you're thinking of is more like ((f $ g $ h) $)
04:43:15 <Patashu> :t ((?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:19 <Patashu> hm!
04:43:29 <copumpkin> pikhq_: that doesn't work
04:43:42 <pikhq_> copumpkin: Baah.
04:43:45 <copumpkin> :P
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:42 <Patashu> 'spiritual rapture'
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:26:21 <Sgeo__> erm
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
05:56:46 <CakeProphet> I lol'd.
06:02:35 -!- olsner has joined.
06:05:07 -!- aune_ has quit (Quit: Hath Deprated).
06:05:20 <pikhq_> CakeProphet: Perling?
06:05:26 <CakeProphet> pikhq_: yes, quite a bit these days.
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:16 <Patashu> did not read paper
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:02 <Patashu> what is it -for-
06:34:03 <CakeProphet> for your own sake.
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:01 <Patashu> that's scalar and void
06:35:04 <Patashu> list is when it's being applied over a list?
06:35:14 <CakeProphet> list is when it's in.... a list context.
06:35:16 -!- pikhq has joined.
06:35:19 -!- pikhq_ has quit (Ping timeout: 252 seconds).
06:35:19 <CakeProphet> the code expects a list, basically.
06:35:26 <Patashu> hmm, interesting
06:35:34 <olsner> CakeProphet: eek! I don't want to use the rest of perl, only the contextual returns
06:35:34 <CakeProphet> @list = my_sub();
06:35:34 <lambdabot> No module "= my_sub();" loaded
06:35:36 <CakeProphet> is a list context.
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:40 <Patashu> this is...interesting
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:42:46 <coppro> haha
06:42:49 <coppro> link?
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:41 <CakeProphet> my ($var,$list) = ... is list context.
06:43:59 <CakeProphet> actually that should be ls -1 directory
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:44:37 <CakeProphet> ...lol
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:51:14 <CakeProphet> I'd say it's one of many reasons, yes.
06:51:37 <CakeProphet> another reason would be $_
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:38 <CakeProphet> hmmm, interesting.
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:00:27 <CakeProphet> yeah that's awk inspired for sure.
07:04:14 <CakeProphet> and the m is optional actually.
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:10:22 <CakeProphet> so, regex.
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:12 <CakeProphet> ...woah Ruby.
07:13:33 <CakeProphet> I saw def and I thought "Python..?" then I saw // and I thought "...Perl?"
07:13:45 <CakeProphet> and of course, Python + Perl = Ruby
07:13:51 <CakeProphet> ..right?
07:14:25 <zzo38> I don't know.
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:36 <CakeProphet> hmmm..
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:16:51 <Patashu> It's tough
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:23:47 <Patashu> Yes, they do have Java
07:23:49 <Patashu> That's why I used it :Bv
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:24 <Patashu> Yeah, pretty much that
07:24:35 <zzo38> Which is a code for what?
07:24:40 <Patashu> http://golf.shinh.org/p.rb?hexagon+2nd+fixed
07:24:42 <Patashu> Priting hexagons
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:44 <CakeProphet> *golf
07:26:54 <zzo38> CakeProphet: You can send to the form directly; all codes are revealed in 4 days
07:27:06 <CakeProphet> hmmm, okay.
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 <CakeProphet> or change.
07:27:31 <zzo38> You should select it (make sure it is checkmark).
07:27:52 <CakeProphet> ...I should also test that it works.
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:28:57 <CakeProphet> hmmm, okay
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:28 <zzo38> You can try
07:30:44 <Patashu> is that...are you embedding an increment in an s/old/new?
07:30:46 <Patashu> I need to learn perl
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:18 <CakeProphet> Patashu: yes I am.
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:33:10 <CakeProphet> *couldn't
07:33:44 <CakeProphet> ah and I could do $x*=$x==256
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:36:27 <CakeProphet> also changed last if /h/ to /h/&&last
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:49:38 <CakeProphet> and is shorter
07:50:09 <CakeProphet> 87 bytes.
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:56:42 <myndzi> |
07:56:42 <myndzi> |\
07:56:44 <CakeProphet> 85
07:57:00 <monqy> thanks myndzi
07:57:14 <CakeProphet> ...lolwhut
07:57:51 <CakeProphet> hmmm... I'm not sure a shebang line could give me too many byte reductions.
07:58:37 <CakeProphet> actually wait
07:58:40 <CakeProphet> #!perl -n
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.
07:59:58 <CakeProphet> hmmm, okay.
08:00:01 <CakeProphet> good to know.
08:02:33 <CakeProphet> hmmm...
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:10 <myndzi> |
08:13:11 <myndzi> /|
08:13:15 <CakeProphet> any suggestions?
08:13:28 <CakeProphet> er... wait that's not right.
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:18:14 <CakeProphet> ....oh
08:18:21 <CakeProphet> it wants output on individual lines.
08:18:33 <CakeProphet> ffuuu..
08:19:23 <CakeProphet> so I'm up to 88 now
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:07 <CakeProphet> zzo38: is that Perl?
08:34:14 <CakeProphet> oh... I see
08:34:18 <CakeProphet> you just used {} isntead of ;
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:57 <CakeProphet> oh, that's pseudo-AWK then?
08:35:58 <zzo38> Which is why I suggest \ instead of $ for this case
08:36:04 <zzo38> CakeProphet: Yes.
08:37:03 <CakeProphet> oh wow... I set the record at 94 bytes.
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:38:39 <myndzi> |
08:38:40 <myndzi> /|
08:38:53 <CakeProphet> ...I have no clue what that bot is doing
08:39:42 <Patashu> it looks like it's pointing to the first o
08:39:45 <Patashu> oh wait
08:39:48 <Patashu> /o/
08:39:49 <myndzi> |
08:39:49 <myndzi> /|
08:39:50 <Patashu> yep
08:39:53 <Patashu> it's a dude dancing
08:39:55 <Patashu> \o/
08:39:56 <myndzi> |
08:39:56 <myndzi> /<
08:39:58 <Patashu> \o\
08:39:58 <myndzi> |
08:39:59 <myndzi> /|
08:40:01 <Patashu> /o\
08:40:02 <myndzi> |
08:40:02 <myndzi> /|
08:40:07 <Patashu> :D
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:40:56 <CakeProphet> yes
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:41:32 <CakeProphet> I'm sure there's a smaller way to do it
08:41:39 <CakeProphet> possibly using eval
08:42:31 <Patashu> keep in mind that it only needs to support the cases that it tests for
08:42:43 <CakeProphet> so I could omit the halt probably?
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:24 <Patashu> No
08:44:26 <Patashu> No one looks for cheating
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:44 <CakeProphet> down to 84 now with the halt removed.
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:22 <CakeProphet> ...oh, lame. :P
08:45:29 <Patashu> http://golf.shinh.org/p.rb?Deadfish
08:45:32 <Patashu> Scroll down to language ranking
08:46:03 <CakeProphet> ...what the hell, 50 bytes...
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:08 <CakeProphet> mine is 7th in Perl.
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:31 <CakeProphet> awww, ais beat me..
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:41 <Patashu> I like that more
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:54:56 <Patashu> lol, binary golfscript
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:23 <Patashu> 25% smaller! *wink wink*
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:57:48 <Patashu> that's basically my joke
08:58:24 <zzo38> In fact, sometimes vi or z80 is the shortest solution, shorter than the GolfScript and FlogScript codes.
08:58:33 <Patashu> isn't z80 assembly?
08:58:37 <Patashu> so of course it's smaller
08:58:42 <Patashu> hmm...
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:47 <CakeProphet> oh wait....
09:01:52 <Patashu> all the short versions are people managing to call it anyway?
09:01:53 <CakeProphet> I just realized something I could try.
09:02:00 <Patashu> yeah
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:05:10 <Patashu> \o/
09:05:11 <myndzi> |
09:05:11 <myndzi> |\
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:07:48 <CakeProphet> and it's probably chrooted or something.
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 <Phantom_Hoover> What is this crap?
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:20:29 <zzo38> Know what better?
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:22:37 <CakeProphet> down to 78 bytes on Perl.
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:11:04 <cheater__> ha!
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:21:46 <Patashu> how does it work?
12:22:07 -!- augur has joined.
12:24:02 <cheater__> creating wiki entry
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:27 <Patashu> so it's a file IO quine?
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:29 <cheater__> ais523: they just copy-paste.
12:59:54 <ais523> that isn't programming for the shebang interpreter, though
13:00:07 <ais523> it's an awk program
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:48 <Vorpal> I doubt it
13:08:58 <ais523> I don't think it's intelligent enough
13:09:04 <Vorpal> right
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:16 * ais523 checks
13:09:37 <ais523> oh, of course not
13:09:41 <ais523> or, hmm
13:09:49 <ais523> all that happened was that it went back to command prompt immediately
13:09:51 * ais523 straces it
13:09:56 <Vorpal> * ais523 has quit (Connection reset by peer)
13:09:58 <Vorpal> ;)
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:28 <ais523> )
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:13 <Vorpal> ais523, no
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:28 <ais523> ah
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:38 <Vorpal> ais523, indeed
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:15:58 <Vorpal> err
13:16:00 <Vorpal> tiers*
13:16:01 <ais523> your page would be vaguely interesting if it was even remotely factually correct
13:16:06 <ais523> but it isn't
13:16:08 <cheater__> #!/bin/cat is not awk
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:00 <cheater__> ?
13:17:07 <cheater__> i didn't read that
13:17:29 <cheater__> also, your line was wrong, because cat isn't in /usr/bin on many systems
13:17:35 <ais523> well, OK
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:17:54 <ais523> cheater__: DJGPP
13:18:07 <ais523> I keep getting directories for executables wrong because I'm used to DJGPP
13:18:07 <cheater__> how does it not
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:19:30 <cheater__> never said it's complicated
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:45 <cheater__> but it's so obvious :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:45 <Patashu> heh, true
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:29:53 <cheater__> and some other things.
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:15 <Phantom_Hoover> http://www.irregularwebcomic.net/cgi-bin/poll.pl?a=9
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:34:02 <Vorpal> s/^/"/
13:34:21 <cheater__> ya
13:36:08 <Phantom_Hoover> The games are named ultimately after F. Scott Fitzgerald's wife.
13:36:18 <Vorpal> heh
13:36:40 <Vorpal> doubt that though :P
13:37:45 <Vorpal> wikipedia down heh
13:38:48 <cheater__> ya, wtf?
13:38:55 <cheater__> without wikipedia we're doomed!
13:39:27 <Vorpal> and up again
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:00 <Phantom_Hoover> http://en.wikipedia.org/wiki/Price_of_fish
14:10:01 -!- sebbu2 has quit (Ping timeout: 260 seconds).
14:11:20 -!- MigoMipo has joined.
14:15:12 <Phantom_Hoover> I'll just leave that there.
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 <cheater__> @protontorpedo
15:10:13 <lambdabot> is it hard to set up n ready my pc for programming?
15:10:17 <cheater__> @protontorpedo
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:38 <cheater__> @protontorpedo
15:10:39 <lambdabot> Im really only a bash person and even then Im tin
15:10:49 <Patashu> ?
15:10:52 <Patashu> @protontorpedo
15:10:52 <lambdabot> how does haskell compare to say java?
15:10:55 <Patashu> @protontorpedo
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:10:58 <Patashu> lol
15:11:00 <Patashu> @protontorpedo
15:11:00 <lambdabot> why haskell over lisp?
15:11:02 <Patashu> @protontorpedo
15:11:02 <lambdabot> cant u just have data in arrays and do operations using you prog lang?
15:11:06 <Patashu> @protontorpedo
15:11:06 <lambdabot> is haskell doomed to be a mysql driver?
15:11:09 <Patashu> LOL
15:11:21 <Patashu> this guy is brillant
15:11:52 <cheater__> yup
15:25:44 <Phantom_Hoover> What is protontorpedo?
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:37:56 <Phantom_Hoover> (From http://www.lazygun.net/)
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:26 <Lymia> uh.... what
16:39:37 <Lymia> Arn't higher order functions functions that take or return functions?
16:40:50 <Phantom_Hoover> Yes.
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:43:45 <Lymia> Source.
16:43:48 <Lymia> Go correct him.
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 <Phantom_Hoover> If you mean function pointers, then yes.
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:49 <Phantom_Hoover> Except you can emulate FP in C quite easily.
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:20 <Phantom_Hoover> Even more easily.
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:51 <Phantom_Hoover> Nor I.
16:50:52 <Lymia> It's var/val distinction makes it more likely to be functional by your definition, no?
16:51:04 <Phantom_Hoover> Sgeo__ does.
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:51:38 <Phantom_Hoover> Well yes, paradigms are not at all rigidly-defined.
16:52:18 <Lymia> If you gave a Haskell programmer Python, I doubt you'd see much mutable state.
16:52:21 <Lymia> mutated*
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:35 <Lymia> pikhq, no.
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:00:50 <Lymia> Well...
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:10 <pikhq> :P
17:02:16 <Lymia> Compiling Haskell to Basic?
17:02:20 <pikhq> Yuh.
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:03:29 <Lymia> Heh.
17:03:53 <Lymia> I wonder.
17:03:58 <Lymia> I still woner.
17:03:59 <Phantom_Hoover> Is Basic really all that bad?
17:04:00 <Lymia> wonder*
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:37 <Lymia> Or clojure.
17:06:48 <Lymia> ()()((())()())]
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:55:13 <lifthrasiir> i.e. separating bindings and references?
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:46 <Vorpal> hm
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:19:28 <elliott_> ais523: ping (/msg)
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:10 <elliott_> 300???
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:25 <elliott_> it's unix's REPL
18:25:30 <ais523> yep
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_> oh, and
18:26:09 <elliott_> echo '#!/usr/bin/awk {print $0}' > quine; chmod oau+x quine
18:26:10 <ais523> *languages
18:26:10 <elliott_> is broken
18:26:13 <elliott_> because there's no newline
18:26:19 <elliott_> and also, a cheat quine
18:26:20 <elliott_> even if it did work
18:26:22 <ais523> elliott_: I was wondering about that, but didn't know enough awk to tell
18:26:23 <elliott_> same with the simpler quine
18:26:28 <elliott_> wait
18:26:29 <elliott_> wtf?
18:26:31 <elliott_> it's even more broken
18:26:35 <elliott_> it reads lines of input
18:26:36 <elliott_> and outputs them
18:26:37 <elliott_> forever
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:51 <ais523> ah, no
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:08 <elliott_> yes
18:27:09 <elliott_> on unix too
18:27:12 <elliott_> but it's still a cheat
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:30 <elliott_> ais523: it uses which
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:27:55 <elliott_> didn't realise you deleted it
18:27:58 <elliott_> (I opened it earlier)
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:29 <elliott_> 2.8.0 would be exciting.
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:14 <elliott_> Shit.
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:35 <olsner> elliott_: true :)
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:02 <pikhq> Like 3 years.
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:51:44 <Vorpal> ah
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:08 <Vorpal> olsner, heh
18:55:11 <elliott_> Vorpal: 28 April
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:55:57 <Vorpal> pikhq, hm right
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:57:49 <elliott_> [asterisk]less secure
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:45 <Vorpal> elliott_, indeed.
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:37 <Vorpal> elliott_, yes indeed
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:40 <Vorpal> elliott_, yes sadly
19:02:44 <elliott_> ais523: see also DDC
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:03:59 <elliott_> ais523: yes
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:08 <elliott_> it's a phd dissertation
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:16 <ais523> I guess so
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:25 <Vorpal> ;P
19:06:35 <elliott_> you could easily bug 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:26 <pikhq_> COGITO ERGO SVM
19:07:27 <Vorpal> how can you be so sure it isn't just an illusion
19:07:31 <pikhq_> COGITO ERGO SVM
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:08:56 <Vorpal> true
19:09:13 <elliott_> suddenly this conversion is kind of stupid
19:09:32 <Vorpal> elliott_, of course
19:10:44 <elliott_> pikhq_: gtfi -minecraft
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:37:25 <Phantom_Hoover> TCC?
19:38:05 -!- zzo38 has joined.
19:43:48 <Sgeo__> Is a MSPA flash coming?
19:44:31 <elliott_> no
19:44:37 -!- sebbu has quit (Read error: Connection reset by peer).
19:44:43 <elliott_> AH is having computer problems
19:44:50 <Sgeo__> Oh
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:04 <Phantom_Hoover> <elliott_> AH is having computer problems
19:48:14 <Phantom_Hoover> Still unclear why he hasn't just bought a new one.
19:48:21 <Phantom_Hoover> And shot the old one.
19:48:31 <elliott_> Phantom_Hoover: I told you to read the Twitter so read the damn Twitter
19:48:40 <elliott_> @andrewhussie
19:48:40 <elliott_> andrewhussie
19:48:40 <lambdabot> Unknown command, try @list
19:48:40 <elliott_> buying a new one wont fix it this time, its software probs.
19:48:40 <elliott_> 22 May via web
19:48:59 <Phantom_Hoover> Yes but I don't actually understand what the hell that means.
19:49:13 <Phantom_Hoover> How can it be persistent across multiple machines?
19:49:35 <elliott_> he copies his drive over
19:49:57 <elliott_> well, re-uses it, rather
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:18 <Vorpal> elliott_, what is NF?
19:53:26 <Phantom_Hoover> Crappy BF derivative.
19:53:36 <elliott_> Vorpal: NetFuck.
19:53:40 <Phantom_Hoover> The creator seems to be touchy about it.
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:24 <elliott_> which is stupid, ofc
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:12 <elliott_> nobody wants it deleted
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:30 <elliott_> So there's that.
19:55:37 <Vorpal> elliott_, ah okay
19:55:48 <elliott_> http://esolangs.org/wiki/David_Morgan-Mar
19:55:50 <elliott_> Also Piet. :p
19:55:59 <Vorpal> elliott_, yes I know dmm made piet
19:56:08 <ais523> one BF remapping is clever
19:56:10 <ais523> more, not so much
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:28 <Vorpal> ais523, that is true
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 NetFuck 1.0 interpreter
19:57:25 <elliott_> AND
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:30 <Phantom_Hoover> Sgeo__, was that the RLE one?
20:01:39 <Sgeo__> PH, Yes
20:01:43 <ralc> cheater897, elliott_ just linked it
20:01:44 <Phantom_Hoover> It was passively stupid.
20:02:05 <Sgeo__> "passively" stupid?
20:02:13 <elliott_> <ais523> we should make a parody of stupid BF derivatives
20:02:13 <cheater897> thanks
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:20 <elliott_> arbitrarily
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:35 <elliott_> Vorpal: brilliant
20:02:41 <Vorpal> elliott_, as always
20:02:44 <Phantom_Hoover> <Sgeo__> "passively" stupid?
20:02:44 <elliott_> remove <>[]
20:02:48 <ais523> I don't even consider Deadfish a BF deriv
20:02:49 <elliott_> add a squaring instruction
20:02:52 <elliott_> make the wrapping broken
20:02:56 <elliott_> and rename + and -
20:03:00 <elliott_> plus misinterpret . as decimal output
20:03:01 <elliott_> and remove ,
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:03 <elliott_> that's genius
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:12 <elliott_> haha
20:03:14 <Phantom_Hoover> It's a bit above command substitution.
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:05 <Phantom_Hoover> Hmm I have not seen you before.
20:05:08 <Phantom_Hoover> ARE YOU A NEOPAGAN
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:36 <elliott_> an infinite string of `s
20:05:40 <Phantom_Hoover> ARE YOU SECURELY LOCKED INTO THE MATRIX OF SOLIDITY
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:05:55 <elliott_> cheater897: ais523 did.
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:06:26 <elliott_> someone doesn't give a shit
20:06:53 <cheater897> someone's really hung up on it
20:07:05 <elliott_> clearly
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:13 <ais523> `quote
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:26 <cheater897> imagination is not reality
20:12:31 <ais523> it is if it's right
20:12:35 <elliott_> IMAGINATION IS NOT REALITY
20:12:36 <elliott_> DREAMS ARE NOT REAL
20:12:39 <elliott_> YOU ARE WHAT YOU PERCEIVE
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:50 <cheater897> ais523, no
20:13:52 <cheater897> i have not.
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:15:50 <elliott_> derp derp? herp
20:15:52 <elliott_> herp a derp a derp a 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:13 <olsner> herpaderp-derp
20:16:28 <cheater897> ais523, counterexample to what?
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:42 <elliott_> olsner: deeeeeeeeeerp herp
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:16:56 <cheater897> no, not really ais523.
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:23 <elliott_> ais523: :)
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:33 <elliott_> olsner: derp_HERP.HERP-DERP
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:09 <elliott_> and so does wikipedia
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:37 <elliott_> as is pikhq_
20:19:42 <elliott_> and, also, at this point, me
20:19:42 <ais523> yep
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:07 <pikhq_> My power is immense.
20:20:13 <elliott_> I CONTROL THE UNIVERSE
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:43 <Phantom_Hoover> pikhq_, why would you even make that legal tender.
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:21 <elliott_> ralc: Rots the brain, indeed
20:21:29 <Phantom_Hoover> elliott_, sigh, you're aiming too low.
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:09 <elliott_> cheater897: he did.
20:22:16 <cheater897> well then there you go.
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:30 <elliott_> is it a quantum talking flag?
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:45 <cheater897> not an immigrant?
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:02 <cheater897> just jumped off the ship, elliott?
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 <pikhq_> ais523: Link.
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:14 <elliott_> and near-invisible wires
20:24:15 <ais523> but I can repost it on imgur or somewhere
20:24:23 <pikhq_> ais523: Please do.
20:24:26 <cheater897> ok, do it
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:40 <pikhq_> elliott_: Beautiful.
20:24:51 <ais523> $ ll OANDX.BMP
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:33 <elliott_> IIRC it hasn't
20:25:43 <ais523> gah Gnome's file chooser is the most annoying ever
20:25:48 <elliott_> ugh, yes
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:26:52 <elliott_> pikhq_: caret
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:27:22 <elliott_> oh noes
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:17 <Phantom_Hoover> Sgeo__, you have not seen the things we have.
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:26 <elliott_> Phantom_Hoover: lol
20:29:28 <elliott_> you're so dramatic
20:29:31 <Phantom_Hoover> ais523, would this work with any fill tool?
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:29:58 <ais523> but it never loses
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:34 <ais523> zzo38: indeed
20:30:43 <zzo38> Other games you might can't.
20:30:43 <elliott_> Sgeo__: that is that version
20:30:57 <ais523> Sgeo__: they were on a 640x480 screen on a computer with 4-bit color depth
20:31:06 <Sgeo__> Ah
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:13 <Phantom_Hoover> ais523, you are a god among men.
20:34:16 <elliott_> zzo38: ooh, interesting
20:34:18 <elliott_> I think so
20:34:22 <elliott_> that would allow wire-crossing
20:34:31 <elliott_> if you had a tolerance of one
20:34:33 <elliott_> then you could have
20:34:34 <elliott_> |
20:34:35 <elliott_> +-----
20:34:35 <elliott_> |
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:34:51 <elliott_> that allows wire-crossing
20:34:52 <elliott_> awesome
20:35:01 <ais523> elliott_: Burn worked along similar lines, IIRC
20:35:04 <ais523> I just can't remember how
20:35:07 <Phantom_Hoover> elliott_, I don't think it does...
20:35:12 <elliott_> hmm, there's a problem, though
20:35:16 <elliott_> you need /recursive/ tolerance
20:35:19 <Phantom_Hoover> After it runs once the crossing is reset.
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:35:41 <elliott_> :/
20:35:47 <Phantom_Hoover> elliott_, well, OK.
20:35:51 <ais523> elliott_: indeed
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:38:56 <cheater897> zzo38, kinda, yes
20:39:15 <cheater897> ais523, no
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:41:48 <cheater897> s
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:37 <ais523> *was
20:50:41 <ais523> and didn't want to check the source
20:50:53 <ais523> especially because the site uses frames
20:50:57 <elliott_> inspecting the element works
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:51:45 <elliott_> such silly browsers >:)
20:52:16 <cheater897> ais523, many versions of the interpreter will not execute scripts as the embedded interpreter
20:52:48 <Phantom_Hoover> Sgeo__, where'd you get that quote from?
20:53:04 <Sgeo__> http://www.mspaforums.com/showthread.php?37956-MSPA-Simple-Questions-Thread
20:53:22 <elliott_> Phantom_Hoover: /msg ping.
20:54:46 <elliott_> Phantom_Hoover: /msg ping.
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:47 <ais523> twice, in fact
20:55:54 <cheater897> what argument
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:18 <cheater897> that's a bit ill.
20:56:23 <elliott_> "I'm not arguing, I'm just responding to counterarguments you're making."
20:56:25 <cheater897> are you all right?
20:56:42 <elliott_> hmm, I wonder who here /isn't/ mentally ill according to cheater
20:56:45 <elliott_> probably just 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:57:54 <elliott_> cheater897: i sent you a /msg
20:58:19 * ais523 takes the powerset of elliott
20:58:21 <ais523> for no real reason
20:58:33 <ais523> (note: it's {elliott, not elliott})
20:58:34 <cheater897> haha
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:00:55 <cheater897> elliott_, nope, you've never.
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:02:29 <elliott_> so you might as well
21:03:14 <Phantom_Hoover> God cheater897 you really suck.
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:03:46 <Phantom_Hoover> It's minimalist!
21:03:52 <cheater897> ais523, oh ok
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:25 <cheater897> ais523, oh alright.
21:04:32 <cheater897> ais523, what is the category debacle?
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:22 <elliott_> Legit hate going on here.
21:06:31 <Phantom_Hoover> Hate hate hate hate hate.
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:38 <cheater897> ok
21:07:46 <ais523> assuming I've remembered the name right
21:07:50 <ais523> ah, I didn't
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:10 <elliott_> ais523: z not s?
21:08:51 <elliott_> Phantom_Hoover: this is even more breakdown-relieving than cheater897
21:08:53 <elliott_> How can I possibly thank you
21:09:18 <Phantom_Hoover> By dying. Also, dying painfully.
21:09:28 <elliott_> In sequence?
21:09:29 <Phantom_Hoover> Hatey McHate the Hate.
21:09:36 <Phantom_Hoover> Yes.
21:09:40 <elliott_> I'm on it.
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:27 <Phantom_Hoover> ais523, quick, rename it.
21:10:31 <Phantom_Hoover> GRAUE WILL NEVER KNOW
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_> main(void)
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:05 <elliott_> many of them, even
21:11:10 <elliott_> it'll corrupt the stack
21:11:18 <ais523> and main is special
21:11:35 <elliott_> hmm
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:13:39 <Phantom_Hoover> To the LHC!
21:14:00 <elliott_> anyway, http://esoteric.voxelperfect.net/wiki/User_talk:Stux#Incident is the actual beginning of the categorisation drama
21:14:02 <Phantom_Hoover> (The LHC can be used for any science whatsoever.)
21:14:09 <elliott_> although can it really be said to be drama if Graue is the only participant?
21:14:12 <Phantom_Hoover> The Categorical Incident.
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:24 <elliott_> since Graue wrote it
21:14:30 <elliott_> someone /very/ brave
21:14:38 <Phantom_Hoover> I am brave.
21:14:41 <elliott_> and also, Graue's other comment
21:14:43 <elliott_> which ends with ~~
21:14:51 <elliott_> hmm, Keymaker used ~~~~~ by mistake too later on
21:14:54 <elliott_> such sloppiness
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:18:13 <ais523> elliott_: I think so
21:18:38 * elliott_ creates
21:20:16 <elliott_> created
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:42 <elliott_> erm
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:00 <Phantom_Hoover> I am lazier.
21:21:03 <Phantom_Hoover> Also I hate you.
21:21:09 <elliott_> ais523: here, you do it
21:21:29 <elliott_> http://esoteric.voxelperfect.net/w/index.php?title=User_talk:Stux&diff=2936&oldid=2935
21:21:32 <elliott_> Graue top-posts, too
21:21:48 <Vorpal> in mediawiki that is a sin
21:22:21 <ais523> email and Usenet, too
21:22:27 <Phantom_Hoover> Yet another reason LQT is bad and people who like it should be shot.
21:22:32 <Vorpal> ais523, yes
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:41 <Vorpal> Phantom_Hoover, LQT?
21:22:45 <elliott_> ais523: I usually omit nested quotes
21:22:52 <elliott_> they're usually irrelevant/annoying in email
21:23:09 <ais523> elliott_: so do I
21:23:16 <ais523> but in the case where they're relevant, I edit them into top-posts
21:23:21 <Phantom_Hoover> Vorpal, crappy thing for thread management in MW.
21:23:56 <Vorpal> Phantom_Hoover, huh?
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:06 <Phantom_Hoover> LQT SYMPATHISER
21:26:07 <elliott_> I wonder if Vector would expose the trilime's horrible white edges.
21:26:12 <Phantom_Hoover> YET ANOTHER REASON TO HATE YOU
21:26:15 <elliott_> What.
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:02 <Vorpal> elliott_, nope
21:27:04 <elliott_> yep
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:21 <elliott_> Why what?
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:47 <Vorpal> elliott_, eh why
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:19 <ais523> oh, and Firefox's
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:14 <ais523> oh, and Haskell's too
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:31:57 <Vorpal> ah
21:32:14 <Vorpal> ais523, is it public domain?
21:32:28 <ais523> I don't know
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:32:43 <elliott_> Is it... no.
21:32:45 <elliott_> Ah.
21:32:46 <elliott_> Maybe?
21:33:24 <elliott_> Found it.
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:34:41 <elliott_> SO COOL.
21:34:47 <elliott_> And OS GC.
21:36:25 <ais523> elliott_: Algol but with first class functions? what was the syntax for declaring variables that held functions?
21:36:26 <Phantom_Hoover> So is this @lgol?
21:41:21 <Sgeo__> CURSE IT WIKIA
21:41:56 <Phantom_Hoover> Why have you been randomly cursing Wikia lately.
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:20 <Phantom_Hoover> I know I have.
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:44:54 <Phantom_Hoover> Yeah, that's extremely frustrating.
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:46:54 <ais523> elliott_: ah, OK
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:53:34 <Vorpal> night →
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:18 * Phantom_Hoover → sleep
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:06 <elliott_> SOUND THE ALARM BELLS
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:21 <oerjan> ...no
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:38 <elliott_> Maybe even thrice.
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:00 <oerjan> just like the rapture
23:09:26 <elliott_> where is my old code :((((((((
23:09:46 <oerjan> the bits rotted
23:09:51 <elliott_> har har
23:09:56 <elliott_> this is an important part of my childhood oerjan
23:10:28 <oerjan> oh
23:10:29 <elliott_> well :P
23:10:29 <elliott_> that was pretty facetious
23:10:29 <elliott_> in case you couldn't tell
23:10:29 <oerjan> whew
23:10:41 <elliott_> well i mean
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:09 <elliott_> he has?
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:34 <elliott_> <Sgeo> Aargh, curse Windows
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:13:42 <elliott_> <ais> Windows deserves it
23:13:46 <elliott_> oerjan: what event?
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:08 <elliott_> sorry if I'm being dense
23:14:19 <elliott_> Sgeo__: he doesn't care about inanimate objects, AFAICT
23:14:22 <elliott_> or indeed other people, much
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:43 <oerjan> that was it
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:02 <elliott_> obviously joking
23:15:13 <elliott_> this may not be obvious if you're not familiar with spectateswamp
23:15:23 <oerjan> indeed i am not
23:15:51 <oerjan> although the rest of the conversation seemed to imply someone a bit nutty
23:16:17 <elliott_> "bit"
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:20:08 <elliott_> WHERE IS THIIIIS
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:22:15 <elliott_> myself
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:28:51 <elliott_> the letter "is"?
23:28:55 <oerjan> i2/i2/i2/g
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:11 <Sgeo__> 2ollux
23:30:20 <elliott_> coppro: i might mean tholluckths
23:30:35 <elliott_> sorry [asterisk]tholluckth
23:30:39 <Sgeo__> coppro, s/i/ii/g
23:30:43 <Sgeo__> s/s/2/g
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:42:51 <oerjan> (it'i2 irreveri2ible)
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:20 <oerjan> what am i butchering?
23:45:44 <Sgeo__> oerjan, it's one i gets replaced with ii
23:45:49 <Sgeo__> And s gets replaced with 2
23:45:57 <oerjan> aha
23:46:03 <oerjan> 2orry about that
23:46:06 <Sgeo__> And <sound of too> gets replaced with two
23:46:20 <elliott_> sound of "to", too
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:46:34 <elliott_> god
23:46:36 <elliott_> why am i arguing about this
23:46:37 <elliott_> i'm stupid
23:47:09 <Sgeo__> And for with four, iirc
23:47:15 <Sgeo__> iiiirc
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:48:59 <elliott_> yes i agree elliott
23:49:04 <Sgeo__> y
23:49:05 <Sgeo__> Sorry
23:49:13 <elliott_> wut
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:32 <elliott_> um it is the first link here
23:52:37 <elliott_> Sollux Captor - MS Paint Adventures Wiki
23:52:42 <elliott_> i realise google personalises the results, but
23:52:52 <oerjan> oh
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:31 <elliott_> haha
23:54:45 <oerjan> apparently it's a norwegian boat company
23:55:38 <elliott_> do you use norwegian google?
23:55:39 <elliott_> that would explain it if so
23:55:57 <oerjan> well naturally
23:56:15 <oerjan> in fact that's the _only_ relevant hit on the first page
2011-05-25
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:21 <elliott_> they stole my joke CRY
00:04:29 <elliott_> i'm not going to find thesef iles am I :(
00:04:33 <elliott_> [asterisk]these files
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:20 <elliott_> : (
00:05:26 <elliott_> who said i wanted a clue
00:05:32 <elliott_> i'm happy being clueless
00:05:48 <elliott_> that Ian guy sure talks a lot
00:05:49 <oerjan> well no they don't listen to me, that's true. You should be safe.
00:05:59 <oerjan> or maybe not.
00:08:03 <elliott_> this sucks :[
00:10:05 <oerjan> i note my landlady chose the best possible week to take a vacation in mallorca...
00:10:26 <elliott_> people say mallorca? weird
00:10:35 <oerjan> might not see her again in a while.
00:10:42 <oerjan> what?
00:11:09 <oerjan> um that's how it's spelled, isn't it
00:12:30 <elliott_> i always see majorca
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:23 <elliott_> > 9
00:20:23 <lithpbot> 9
00:20:23 <lambdabot> 9
00:20:26 <elliott_> > ()
00:20:27 <lithpbot> ()
00:20:27 <lambdabot> ()
00:20:29 <elliott_> ...
00:20:30 <elliott_> :D
00:20:33 <elliott_> good prefix choice
00:20:45 <elliott_> > (<)
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:20:46 <lambdabot> arisin...
00:20:56 <elliott_> > (set x 9)
00:20:56 <lithpbot> (err) unbound: x
00:20:56 <lambdabot> Not in scope: `set'
00:20:58 <elliott_> > (define x 9)
00:20:58 <lithpbot> 9
00:20:59 <lambdabot> Not in scope: `define'
00:21:02 <elliott_> > (undefine x)
00:21:03 <lithpbot> None
00:21:03 <lambdabot> Not in scope: `undefine'
00:21:05 <elliott_> > undefine
00:21:05 <lithpbot> #native-function:9
00:21:05 <lambdabot> Not in scope: `undefine'
00:21:08 <elliott_> > (gc)
00:21:09 <lithpbot> (err) unbound: gc
00:21:09 <lambdabot> Not in scope: `gc'
00:21:12 <elliott_> huh?
00:21:17 <elliott_> i bound gc
00:21:30 -!- lithpbot has quit (Remote host closed the connection).
00:22:13 -!- lithpbot has joined.
00:22:15 <elliott_> > (gc)
00:22:16 <lithpbot> (47 47 27)
00:22:16 <lambdabot> Not in scope: `gc'
00:22:27 <elliott_> ### running gc with 47 items
00:22:27 <elliott_> ### gc done, 25 items now
00:22:30 <elliott_> I wonder what on earth it freed?
00:22:32 <elliott_> > _prev
00:22:32 <lithpbot> (py err) AttributeError: 'str' object has no attribute 'val'
00:22:32 <lambdabot> Not in scope: `_prev'
00:22:37 <elliott_> > exit
00:22:37 <lithpbot> #native-function:2b
00:22:37 <lambdabot> Not in scope: `exit'
00:22:41 <elliott_> > (exit)
00:22:42 -!- lithpbot has quit (Remote host closed the connection).
00:22:42 <lambdabot> Not in scope: `exit'
00:22:49 -!- lithpbot has joined.
00:22:54 <elliott_> > (lambda)
00:22:54 <lithpbot> (err) need at least 2 args, got 0
00:22:54 <lambdabot> Not in scope: `lambda'
00:22:56 <elliott_> > (lambda () x)
00:22:56 <lithpbot> #function:41
00:22:56 <lambdabot> Not in scope: `lambda'
00:23:33 <elliott_> > (define hog (lambda (n) (if (> n 9999) () (cons 'x (hog (+ n 1))))))
00:23:33 <lithpbot> #function:69
00:23:33 <lambdabot> <no location info>:
00:23:33 <lambdabot> lexical error in string/character literal at chara...
00:23:38 <elliott_> > (hog 0)
00:23:38 <lithpbot> (py err) AttributeError: 'bool' object has no attribute 'val'
00:23:39 <lambdabot> Not in scope: `hog'
00:23:42 <elliott_> wtf?
00:23:48 -!- lithpbot has quit (Remote host closed the connection).
00:23:49 <elliott_> OH WELL
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:31:00 <SgeoN1> honk
00:31:06 <SgeoN1> HONK
00:34:10 <oerjan> i had to use tunes
00:35:31 -!- SgeoN1 has quit (Read error: Connection reset by peer).
00:35:44 <elliott_> oerjan: tunes are like flowers
00:35:53 <oerjan> mayhaps
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:37 <elliott_> [[
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:01:39 <elliott_> ]]
01:01:41 <elliott_> --Sony, to GitHub
01:01:51 <elliott_> "we'll get right on it!"
01:05:15 <Patashu> it's gone
01:05:16 <Patashu> what was it?
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:06:25 <elliott_> :P
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:18 <elliott_> Backwards compatjewbility.
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:19:40 <elliott_> designed to match the metrics
03:20:34 <pikhq> Yeah.
03:21:01 <pikhq> The whole effort wouldn't be even slightly necessary if they used a monospace font.
03:21:12 <elliott_> SLANDER
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:27 <elliott_> i want to laugh at it
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:26 <elliott_> pikhq: rude :(
03:23:43 <pikhq> elliott_: Sorry, but I have never even *seen* your old PHP code to my recollection.
03:23:50 <elliott_> true
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:22 <elliott_> ARE YOU INSULTING
03:24:22 <elliott_> MY
03:24:23 <elliott_> OLD
03:24:23 <elliott_> CODE
03:24:26 <elliott_> good decision
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:46 <elliott_> and none of them
03:24:47 <elliott_> NONE OF THEM
03:24:49 <elliott_> are the ones im looking for
03:24:51 <elliott_> so im sad :(
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:32 <elliott_> no
03:25:33 <elliott_> believe me
03:25:34 <elliott_> worse
03:25:39 <elliott_> i was ten and a huge idiot
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:25:56 <elliott_> i am not joking
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:11 <elliott_> thank go
03:27:12 <elliott_> d
03:27:15 <elliott_> (a bit)
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:07 <elliott_> true facts
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:41 <elliott_> at the time
03:28:44 <elliott_> i took it as a compliment
03:28:45 <elliott_> now
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:11 <pikhq> (4, 5 years?)
03:29:13 <elliott_> i still look twelve :)
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:27 <pikhq> Damn.
03:30:34 <elliott_> pikhq: yes
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:36 <elliott_> since about 1997."
03:30:41 <elliott_> -- esr, neopagan and self-proclaimed sex god
03:30:55 <pikhq> *sigh* esr.
03:30:58 <elliott_> its like they found the ego button in his soul and pressed it until he exploded
03:31:02 <elliott_> http://esr.ibiblio.org/?p=208
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:14 <elliott_> uncontrollably
03:32:17 <pikhq> elliott_: Even *there*, it'd depend.
03:32:17 <elliott_> actually
03:32:23 <elliott_> i'd probably have huge trouble resisting the urge to copy it all to a usb stick
03:32:28 <elliott_> and upload it
03:32:29 <pikhq> Working on the kernel could legitimately be interesting, TBH.
03:32:29 <elliott_> huge trouble
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:33:29 <elliott_> ps apostrophes are for losers
03:33:53 <elliott_> but yeah the downside is
03:33:56 <elliott_> you'd have to use windows
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:34:59 <elliott_> just at a higher level
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:35:53 <elliott_> thats what a kernel is
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:31 <elliott_> i know but still
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:35:40 <elliott_> i know
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:41 <elliott_> lol
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:13 <pikhq> If only.
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:31 <elliott_> its good for business
04:41:40 <elliott_> can you imagine the complaints theyd get if they broke old apps
04:41:43 <pikhq> To an extent.
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:43:46 <elliott_> so that would get annoying
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:34 <elliott_> patch
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:45:46 <Patashu> hah
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:32 <elliott_> or well hm
04:48:33 <Patashu> well, the code still changes size
04:48:37 <elliott_> i guess it fixes up the pointers itself
04:48:39 <elliott_> but i mean
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:39 <Patashu> 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:05 <elliott_> BUT IT WOULD BE SO COOL.
04:50:08 <Patashu> it would be cool!
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:19 <elliott_> its called Lua
04:52:24 <elliott_> (says the guy not capitalising)
04:52:27 <Patashu> lower case?
04:52:30 <elliott_> yeah
04:52:32 <elliott_> well apart from the L
04:52:32 <Patashu> o
04:52:33 <elliott_> the L is uppercase :P
04:52:53 <elliott_> i dont see how lua would make it any easier than any interpreted language
04:52:57 <elliott_> well
04:52:58 <elliott_> it's easier
04:53:00 <elliott_> but not trivial
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:32 <elliott_> i dunno
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:24 <elliott_> yeah thats why i said plugins
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:24 <Patashu> for the whole thing?
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:12 <Patashu> Huh
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:11:06 <pikhq> Central, even.
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 <Phantom_Hoover> Wait, who owns the esolangs.org domain?
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:19:48 <Phantom_Hoover> Yaaaaaaaaaaaaaaaaaaaaaaaaaaaay
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:26:51 <Patashu> How so?
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:40:44 <ais523> not that I know of
12:47:59 <Phantom_Hoover> lifthrasiir, 99 bottles of beer?
12:48:08 <Phantom_Hoover> Although that won't really test c.
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:50 <Phantom_Hoover> Patashu, I do not get it.
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:01 <Phantom_Hoover> I doubt it.
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:06:21 <Vorpal> ais523, well okay
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:12 <ais523> ah, I see
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:01 <ais523> ouch
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:10:55 <Vorpal> ais523, yes
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:17:16 <ais523> ah, I see
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:23:02 <Vorpal> hm
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:43:28 <Vorpal> what now
15:45:25 <olsner> Vorpal: stare at the wall until you go mad
15:45:26 <Vorpal> ais523, any suggestion?
15:45:41 <ais523> Vorpal: no
15:45:42 <Vorpal> olsner, due to Arla?
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:49:38 <Vorpal> maaaybe
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:20:51 <Vorpal> god damn codecs.
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:34:34 * Phantom_Hoover → outside
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:15 <elliott> asdfq
17:19:19 <elliott> qfdsa
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:00 * elliott weighs up xmms2 vs. mpd
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:13 <ais523> yep
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 <elliott> JUST SAYIN'
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:03 <elliott> The...
17:25:05 <elliott> All-powerful boss.
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:44:21 <elliott> ?
17:48:59 <zzo38> .
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:18 <pikhq> Yes.
18:36:29 <elliott> how did they even fit in to RAM :P
18:36:39 <elliott> <pikhq> Badly.
18:36:44 <lifthrasiir> elliott: -nostdlib.
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:22 <elliott> so weird :)
18:40:23 <pikhq> (presuming STL use)
18:40:29 <pikhq> (the names of the header files changed in the ISO committee)
18:40:43 <lifthrasiir> iostream.h to iostream, right?
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:04 <elliott> pikhq: But it's so _bad_.
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:34 <elliott> Maybe DOS two?
18:42:39 <elliott> Seems like it only supported ten meg disks
18:42:47 <pikhq> "Compatibile with anything"?
18:42:55 <pikhq> Define that, man.
18:43:08 <elliott> pikhq: "Compatible with a wide range of applications and games made for DOS"
18:43:16 <pikhq> *Aaaah*. DOS 3.
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:37 <elliott> ah
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:45:56 <elliott> erm
18:45:57 <elliott> fizzie:
18:45:59 <elliott> Says Wikipedia.
18:46:02 <elliott> So I suspect the first three version was it
18:46:09 <elliott> heh, 5 introduced EDIT
18:46:13 <fizzie> Maybe so, then.
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:52:45 <elliott> Woe, it is I.
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:24 <elliott> Heh.
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:53:47 <elliott> You'll kill Microsoft.
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:56:52 <elliott> eBay is as bad as piracy.
18:57:16 <coppro> holy shit I have money
18:57:31 <elliott> coppro: buy dos
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:06 <fizzie> Yes, I guess it is.
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:25 <elliott> And the CLEAR WINNER,
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:29 <elliott> THOUGHT SO
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:03:55 <fizzie> Words.
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> Then
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:51 <elliott> File size: 333.23 KB
19:09:55 <elliott> Oh hey cool, Google pays off.
19:10:07 <elliott> It's only one disk; huh.
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:12:18 <elliott> HAWD COWE.
19:13:01 <fizzie> I think it was two 5.25" floppies, but could be the other one was something non-essential.
19:13:22 <elliott> This was three-incher.
19:13:25 <elliott> File name: Microsoft DOS 3.2 (5¼).rar
19:13:27 <elliott> Don't mind if I do.
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:13:39 <elliott> WHO NEEDS THOSE THINGS.
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:13 <elliott> Can you even install DOS.
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:06 <elliott> Ah yes there is a setup.
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:01 <elliott> it.
19:26:12 <fizzie> Weirdish.
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:28:52 <Deewiant> elliott: "move"
19:29:10 <elliott> Deewiant: I don't have any MOVE.
19:29:23 <Deewiant> Weird
19:29:31 <elliott> Maybe it is too new.
19:29:36 <elliott> Or maybe this download sucks.
19:31:42 <Vorpal> elliott, why are you messing with dos?
19:32:03 <elliott> Vorpal: Fun.
19:32:09 <Vorpal> elliott, freedos?
19:32:13 <elliott> No.
19:32:16 <Vorpal> why not
19:32:18 <elliott> OK it boots now.
19:32:21 <elliott> Vorpal: Sucks.
19:32:28 <Vorpal> elliott, in what way?
19:32:43 <elliott> Every way
19:32:52 <Vorpal> elliott, too new?
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:34:08 <Vorpal> elliott, PEH?
19:34:25 <Vorpal> brb
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:46 <Sgeo> :(
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:04 <Sgeo> No it didn't
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:48:38 <ais523> oh right, that one
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:16 <Vorpal> good idea
20:03:51 <Vorpal> hmm. accessibility.typeaheadfind.enablesound looks promising.
20:04:02 <Vorpal> nope
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:19 <Phantom_Hoover> cpressey, wha?
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:06 <cpressey> so anyway
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:30 <cheater__> like my nick????
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:18:56 <ais523> no
20:19:03 <ais523> because if I were, me being here wouldn't be interesting
20:19:03 <Vorpal> oh, read it backwards
20:19:08 <ais523> and he clearly found it interesting
20:19:11 <ais523> or she, I suppose
20:19:17 <Vorpal> ais523, I have no idea how bingo works
20:19:20 <Vorpal> so uh
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:46 <ais523> interesting
20:19:49 <Vorpal> ah
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:14 <Vorpal> aha
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 <Vorpal> ah
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:19 <Vorpal> hm
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:09 <cheater__> bingo is purely a social game.
20:23:17 <cpressey> if you are easily distracted, that can work against you.
20:23:58 <cpressey> or hard of hearing.
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:38 <cpressey> ...
20:24:41 <cpressey> BINGO!
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:02 <cheater__> cpressey, exactly
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:29 <cpressey> and I was like, wait, what?
20:26:49 <cpressey> yes, I know
20:26:52 <ais523> you can use a cross-compiler in order to break the infinite regress
20:27:09 <cpressey> well, if one existed
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:00 <cpressey> that's a crock
20:30:03 <cpressey> (sorry)
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:27 <cpressey> ok, giving up. that was fun!
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:36:04 <CakeProphet> easier than Haskell.
20:36:26 <CakeProphet> what with all that dynamic typing.
20:37:41 -!- Sgeo_ has joined.
20:37:51 <cpressey> oh jeez, it's CakeProphet!
20:38:00 <cpressey> ...
20:38:02 <cpressey> BINGO!
20:38:07 -!- Sgeo has quit (Ping timeout: 246 seconds).
20:38:22 * Sgeo_ is most certainly not CakeProphet
20:38:48 <CakeProphet> ha.
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:41:39 <cpressey> at least for today
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:46:56 <Phantom_Hoover> Not like that Haskell crap!
20:47:14 <Phantom_Hoover> God, that expressive type system makes finding bugs nigh-impossible!
20:57:42 <cheater__> hey i was thinking earlier today
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:03 <oklopol> what does "is" mean?
21:17:23 <ais523> oklopol: in what context?
21:17:42 <oklopol> don't ruin my fun by being like that
21:17:50 <oklopol> well let's see
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:49 <oklopol> please tell me more
21:19:53 <ais523> also training Pokémon for the national Pokémon championships in a couple of weeks
21:19:59 <oklopol> less interesting
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:26 <oklopol> oh.
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:20 <oklopol> well obviously
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:21:47 <oklopol> yeah sure
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:01 <oklopol> what do you mean
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:35:48 <oklopol> i could just publish it
21:35:55 <oklopol> and add it
21:36:09 <oklopol> the theory of picture-walking automata
21:36:42 <oklopol> the stuff i did in my master's thesis
21:36:48 <oklopol> simple stuff
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:40:44 <oklopol> what does recording mean
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:44:52 <Sgeo_> Playing Portal 2
21:45:01 <Sgeo_> And being obsessed with Homestuck
21:45:09 * Phantom_Hoover → sleep
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:28 <Phantom_Hoover> oklopol, it is the best thing and you should read it.
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:28 <oklopol> :D
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:10 <oklopol> *about it
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:55:42 <Sgeo_> Ok
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:35 <Sgeo_> Yes
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:38 <Sgeo_> Sattelite
22:00:46 <Vorpal> Sgeo_, ah, toshiba
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:00 <Vorpal> as well
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:11 <Vorpal> uhu
22:04:25 <Vorpal> Sgeo_, you are doing it wrong. You don't tilt laptops
22:04:28 <Vorpal> use a table for them
22:04:35 <Vorpal> laptops that is
22:04:55 <Vorpal> Sgeo_, I would argue using laptops in your lap is stupid :P
22:06:37 -!- oerjan has joined.
22:06:40 <Vorpal> night →
22:07:03 <Vorpal> oh hi oerjan! There are some bad puns in the logs. Grep for Arla.
22:07:06 <Vorpal> night →→
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:14:41 <oerjan> hm?
22:14:48 <oklopol> well that was all
22:15:04 -!- Rtype has joined.
22:15:09 <oklopol> sorry i'm drunk and tired
22:15:12 <oerjan> well simply put, they are complex
22:15:25 <oklopol> :DSDDDDDDDDDDDDDDDDD
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:17:58 <Rtype> groan
22:18:26 <cpressey> I should probably take you to another channel Rtype
22:18:27 * Rtype groans
22:18:38 <cpressey> test complete
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:21 <oklopol> homology group?
22:20:23 <oklopol> oh
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:22:48 <oklopol> up to homeomorphism
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:23:38 <cpressey> no? damn!
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:27:13 <oklopol> those being?
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:02 <oklopol> too lazy to giggle
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:33:45 <oerjan> heh
22:33:51 <oklopol> :D
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:06 <oerjan> iirc
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:29 <cpressey> in the house that jack built
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:20 <oklopol> i mean
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:24 <oklopol> best part of writing math
22:47:43 <oerjan> which is suppose is the same as relevance to other mathematics
22:47:51 <oerjan> or intersecting it
22:47:51 <cpressey> well...
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:53:44 <oklopol> yeah
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:55:32 <elliott> hi
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:26 <elliott> it is abandoned i think
22:59:55 <elliott> 20:35:59: <CakeProphet> javascript is the easiest language to debug by far.
22:59:56 <elliott> wat.
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:01:16 <oklopol> i'm go sleep
23:01:20 <oklopol> -->
23:01:25 <elliott> oklopol: loser donkey
23:01:42 <oklopol> fuck you.
23:01:53 <oklopol> :(
23:01:54 <oklopol> sorry
23:02:01 <oklopol> anyway work tomorrow ->
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:47 <elliott> because,
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:13:52 <cpressey> zzo38: http://ooc-lang.org/
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:14:23 <Sgeo_> dang m key
23:14:31 <elliott> yes we know.
23:15:23 <elliott> does bitbucket even have search by language
23:15:25 <elliott> this ui is terrible
23:15:44 <elliott> its like github but worse
23:15:49 <elliott> but then i guess that's what bitbucket is...
23:16:13 <cpressey> ghett-hub
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:26:32 <elliott> :D
23:30:00 -!- h[a]gb4rd has changed nick to hagb4rd.
23:50:40 -!- augur has joined.
2011-05-26
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:45:46 <Sgeo_> elliott et. al.
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:04 <elliott> Who doesn't?
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:24 <elliott_> Yes.
00:49:32 -!- elliott has quit (Read error: Connection reset by peer).
00:49:34 <Sgeo_> Ok
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:16 <Patashu> ???
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:18 <elliott_> it's shitty
01:06:26 <elliott_> <oerjan> although i don't think that's quite right...
01:06:28 <elliott_> howso?
01:06:31 <elliott_> that's what we agreed is a better name
01:10:26 <zzo38> Try harder!!!
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:08 <elliott_> so..
01:13:10 <elliott_> [asterisk]so...
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:36:16 <elliott_> Scaredy cat-cat.
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:43 <elliott_> finally
01:43:53 <elliott_> ive wanted to download 7 Khoon Maaf for my entire life
01:43:56 <elliott_> and now i can do it for fee
01:43:58 <elliott_> free
01:43:58 -!- lameNOT has changed nick to lament.
01:44:01 <elliott_> thank you Anicgibcamp
01:44:03 <elliott_> thank you so much
01:44:07 <elliott_> :)
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 ...)
01:54:26 <elliott_> OMG
01:54:27 <elliott_> EVEN MORE DOWNLOADS
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:35 <elliott_> ...
02:10:39 <elliott_> micahjohnston: stop
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:27 <lifthrasiir> periods*
02:11:29 <elliott_> steganickraphy
02:11:34 <lifthrasiir> the nick itself does not have any meaning.
02:11:54 <oerjan> ah a clever ruse
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:15:58 <oerjan> story of my life
02:17:20 <elliott_> oerjan you're overthin
02:17:23 <elliott_> eat a sandwich or something :/
02:19:11 <lifthrasiir> is esco still alive?
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:29:26 <elliott_> lifthrasiir: doubtful :P
02:30:35 <lifthrasiir> elliott_: yeah, actually (as i mentioned hours ago) i'm working on something like it
02:31:04 <lifthrasiir> though the main architecture differs.
02:31:55 <elliott_> Is it less terrible than Esco? :)
02:32:01 <elliott_> Is this esotope?
02:32:06 <lifthrasiir> yes
02:32:11 <lifthrasiir> http://hg.mearie.org/esotope/esotope
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:33:33 <lifthrasiir> combinations*
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:35:45 <lifthrasiir> elliott_: exactly.
02:36:05 <lifthrasiir> to this end i had to implement some kind of meta-object system in ocalm
02:36:07 <lifthrasiir> ocaml*
02:36:27 <lifthrasiir> looks feasible? :p
02:37:29 <elliott_> I haven't looked yet :)
02:37:32 <elliott_> but, obligatory -
02:37:35 <elliott_> Haskell Haskell Haskell ;D
02:37:39 <lifthrasiir> lol
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:53:50 <elliott_> pikhq: oh please :P
02:54:01 <pikhq> elliott_: :P
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.
02:59:55 * lifthrasiir afk
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:06:33 <pikhq> :P
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:45:59 <elliott_> IT IS NOW.
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:49:31 <elliott_> do we use nofollow
03:49:31 <elliott_> dunno
03:50:19 <elliott_> oerjan: anyway the permalink is still in recent changes
03:50:42 <oerjan> not as a link
03:51:14 * lifthrasiir back
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:07 <oerjan> or robots.txt, even
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:52:58 <zzo38> Also,
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:18 <elliott_> [THINLY DISGUISED JEALOUSY]
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:32 <elliott_> lifthrasiir: >:E
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:53 <elliott_> god
03:54:53 <elliott_> no
03:54:55 <elliott_> most obnoxious ais
03:54:57 <zzo38> No, it is a different set of information, it is a different kind of things.
03:55:00 <elliott_> every sentence would start
03:55:03 <elliott_> "This Troper"
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:02 <Patashu> Okay good point
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:56:25 <oerjan> zzo38: whoosh
03:57:47 <elliott_> hey zzo38
03:57:51 <elliott_> burgers are made of koala fish
03:57:54 <elliott_> also
03:57:57 <elliott_> all koalas are space
03:57:59 <elliott_> your opinions?
03:58:13 <zzo38> elliott_: I don't know.
03:59:20 <zzo38> Make up the 'unexamples' list, in case of Uncyclopedia.
03:59:32 <elliott_> no
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:02:58 <elliott_> so exotic
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:23 <elliott_> or er
04:03:25 <elliott_> maybe if it was later 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:44 <elliott_> idk
04:03:45 <augur> future D:
04:03:46 <augur> timey wimey
04:03:48 <elliott_> youll have to ask him when he starts existing
04:03:54 <elliott_> after i become him
04:03:56 <elliott_> transform into him
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:31 <augur> elliott_: :X
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:30 <augur> or
04:10:31 <augur> in other words
04:10:37 <augur> if its good enough for conor, its good enough for me
04:10:56 <elliott_> yeah but theres a difference
04:11:04 <elliott_> conor mcbride is fucking god incarnate and pretty much the best person to ever live
04:11:05 <elliott_> youre not
04:11:08 <elliott_> becuase youre not conor mcbride
04:11:14 <elliott_> if you want to do that
04:11:17 <elliott_> you will have to become conor mcbride
04:13:02 <augur> this is true
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:13:52 <elliott_> scotland
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:14:51 <elliott_> hm no wait
04:15:05 <augur> strathclyde is glasgow
04:15:08 <elliott_> well dunno
04:15:09 <augur> but isnt he also at nottingham?
04:15:10 <elliott_> yeah but nottingham isnt :P
04:15:16 <elliott_> well he used to be
04:15:24 <elliott_> is epigram two out yet
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:15:55 <elliott_> "Maybe ()"?
04:15:57 <elliott_> what a pointless type
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:14 <augur> Maybe () ~= Bool!
04:17:26 <elliott_> not quite
04:17:30 <augur> well
04:17:31 <oerjan> augur: not strictly true in haskell
04:17:31 <elliott_> Maybe () has one more element
04:17:35 <augur> modulo bottom
04:17:42 <elliott_> that's a dangerous thing to modulo :)
04:17:46 <augur> ;)
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:01 <elliott_> yep indeed it is
04:18:05 <augur> Bot, True, False vs. Bot, Nothing, Just (), Just Bot
04:18:10 <elliott_> _|_
04:18:11 <elliott_> ftfy
04:18:14 <augur> \bot
04:18:16 <augur> kthxbai
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:32 <elliott_> todayesterday
04:19:33 <augur> or was it yestertoday
04:19:34 <elliott_> what a nice word
04:19:52 <oerjan> so what will you do todaymorrow
04:20:00 <augur> and what a fucking paper man
04:20:02 <elliott_> sleep hopefully
04:20:15 <augur> hopefully indeed
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:18 <augur> night
04:22:31 <augur> /msg me with comments on the intro, elliott_, oerjan
04:22:37 <elliott_> why /msg
04:22:41 <elliott_> theres a perfectly good channel right here
04:23:12 <augur> elliott_: scrollback! :(
04:23:15 <augur> ok fine
04:23:17 <augur> just ping me
04:23:19 <elliott_> im sleeping too
04:23:26 <augur> when you comment
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:05 <elliott_> are you sure about that
04:26:09 <elliott_> hmm
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:13 <elliott_> soo
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:29 <pikhq_> 1969 vs. 1969, then.
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:28:52 <pikhq_> True, true.
04:29:21 <pikhq_> Still. *Smalltalk and C are contemporary languages*.
04:29:22 <elliott_> ok im going to
04:29:22 <elliott_> sleep
04:29:23 <elliott_> right
04:29:24 <elliott_> fucking
04:29:26 <elliott_> now
04:29:32 <elliott_> pikhq_: i wish smalltalk caught on rather than c.
04:29:34 <elliott_> :(
04:29:46 <elliott_> i should really get an fpga set-up. xeightsix sucks.
04:29:46 <elliott_> bye
04:29:47 <elliott_> jesus
04:29:48 <elliott_> fucking
04:29:48 <elliott_> bye
04:29:48 <elliott_> bye
04:29:49 <elliott_> bye
04:29:51 <elliott_> bye
04:30:41 <oerjan> gnight
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:18:42 <oerjan> !c 1^256&&1
06:19:24 <oerjan> !help languages
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:34 <oerjan> hm
06:19:47 <oerjan> !c printf("%d",1^256&&1);
06:19:49 <EgoBot> ​1
06:19:55 <oerjan> !c printf("%d",256^256&&1);
06:19:57 <EgoBot> ​0
06:20:10 <oerjan> er
06:20:14 <oerjan> !c printf("%d",256^256&&256);
06:20:16 <EgoBot> ​0
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:08 <oerjan> who, me?
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:44:47 <oerjan> pikhq: want to bet?
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:10 <EgoBot> ​1
06:57:16 <oerjan> huh
06:57:55 <oerjan> gah, && doesn't return its last argument :(
06:58:27 <oerjan> or wait
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:36 <Patashu> isn't that what ? is for?
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 !=
06:59:22 <Patashu> Maybe we need to make GoC
06:59:25 <Patashu> Along the lines of Goruby
07:00:25 <oerjan> !c printf("%d",3^256?:3);
07:00:31 <EgoBot> ​259
07:00:46 <Patashu> wow, I didn't know about that one
07:00:48 <oerjan> well that didn't help
07:00:52 <Patashu> so if the argument tests to true, it prints the argument?
07:01:11 <oerjan> huh? it prints always
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> what pikhq said
07:01:34 <Patashu> didn't know about that shortcut
07:01:42 <oerjan> but apparently ?: doesn't have low enough precedence
07:01:42 <pikhq> Just a GNU-ism.
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:02:38 <pikhq> (more GNU!)
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:45 <oerjan> that's what's wrong
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:17 <EgoBot> ​Does not compile.
07:04:23 <oerjan> bah
07:04:31 <oerjan> quintopia: yes
07:04:36 <pikhq> !c printf("%d",!3^256?:3);
07:04:36 <monqy> if anarchy golf is official
07:04:38 <EgoBot> ​256
07:04:42 <pikhq> BAH
07:04:46 <pikhq> !c printf("%d",(!3^256)?:3);
07:04:48 <EgoBot> ​256
07:05:06 <oerjan> pikhq: no point in that
07:05:06 <pikhq> ... Fuck me, I should sleep.
07:05:15 <quintopia> anagol is the MOST official
07:05:26 <oerjan> !c printf("%d",3^256?3:0);
07:05:28 <EgoBot> ​3
07:06:05 <oerjan> that one works
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:06 <oerjan> heh
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:15:27 <oerjan> and haskell
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:18:12 <Patashu> lol
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:20:57 <oerjan> sure
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:27 <Patashu> (embed) is a common one
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:30:30 <oerjan> Patashu: ^
07:30:35 <Patashu> ooo, clever
07:32:28 <oerjan> there's one with scanl for fibonacci which i have forgotten
07:33:11 * oerjan googles
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:26 <Patashu> what does fix too?
07:34:27 <oerjan> that it was
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:40:08 <oklopol> morn
07:40:26 <oerjan> morndu
07:41:12 <oklopol> it seems while my eyes were closed, some time passed.
07:41:33 <oklopol> i dislike this
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:46:58 <oklopol> isn't that just something
07:47:14 <oerjan> a very nice fact which i used in the first article i published
07:47:19 <oklopol> :D
07:47:21 <oklopol> seriously?
07:47:24 <oerjan> yes
07:47:27 <oklopol> :D
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:08 <oklopol> never heard of that
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:54:46 <oklopol> who's putnam?
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:55:45 * oklopol read "i am putnam"
07:56:08 <oklopol> what was the breakthrough paper abourt
07:56:10 <oklopol> *about
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
07:59:44 <oklopol> :P
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:02:06 <oklopol> yeah yeah
08:02:20 <oklopol> but umm
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:05:44 <oklopol> zzo38: maybe it is hitler
08:06:01 <oerjan> well CAs have their dynamics sort of in the orthogonal direction, don't they
08:06:15 <oerjan> intuitively
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:21 <oklopol> and transition graphs
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:09:51 <oklopol> wow your dad must be rich
08:10:03 <oerjan> >_>
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:08 <oklopol> we
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:14:25 <oklopol> more precisely
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:09 <oerjan> hm
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:16:54 <oklopol> consistency is important
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:14 <oklopol> which is trivial
08:18:40 <oerjan> yeah
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:32:44 <oklopol> ah
08:32:46 <oklopol> don't tell
08:32:48 <oklopol> it's umm
08:33:16 <oklopol> you can always find a refinement such that at most dimension + 1 sets intersect
08:33:17 <oklopol> ?
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:33:58 <oerjan> yeah
08:34:04 <oerjan> or actually
08:34:48 <oerjan> i'm not sure if you might have to take more than one subset of each original open set
08:34:55 <oerjan> sometimes
08:34:59 <oklopol> hmm right
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:38:59 <oklopol> HMM
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:12 <oklopol> hmm
08:41:21 <oklopol> makes sense with the refinement thing at least
08:41:22 <oerjan> it can be infinite of course
08:41:46 <oklopol> what can't these days
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:43:13 <oklopol> yeah
08:43:56 <oklopol> beyond the first infinity
08:43:57 <oklopol> :P
08:46:27 <oklopol> can you explain topological measures again? :)
08:46:34 <oerjan> argh
08:47:03 <oerjan> well you have a compact hausdorff space, and its families of closed and open sets
08:47:14 <oklopol> yes
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:05 <oklopol> ok
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:49:56 <oklopol> :D
08:49:58 <oklopol> bye zzo
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:51:37 <oklopol> so it's additive
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:53:55 <oerjan> not quite
08:55:05 <oerjan> (regularity)
08:55:22 <oklopol> yeah
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:26 <oklopol> (or closed)
08:57:32 <oerjan> yes
08:57:54 <oerjan> we have m(C) + m(X \ C) = m(X), always, which gives a duality
08:58:28 <oklopol> indeed
08:58:54 <oklopol> okay it's noon, i have to go :P
08:58:55 <oklopol> ->
08:59:04 <oerjan> bye
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:51:51 <Patashu> What's good?
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.
10:30:53 <coppro> pikhq: ping
11:06:16 -!- Phantom_Hoover has joined.
11:06:44 <Phantom_Hoover> Hello everyone.
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:08:04 <Phantom_Hoover> Noooooooooo
11:35:50 <Patashu> Yeah like .raw
11:35:54 <Patashu> Except I don't know how to convert into it
11:35:56 <Patashu> Otherwise that'd be good
11:36:07 <Patashu> Hmm
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:48:12 <Phantom_Hoover> "Normally water and electricity don't mix."
16:48:16 <Phantom_Hoover> Seriously, Cracked?
16:48:18 <Phantom_Hoover> Seriously?
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:51:19 <Sgeo_> Ah, lol
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:00:49 <Phantom_Hoover> It doesn't work that way.
17:01:16 <Lymia> It's a joke.
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:07:40 <Phantom_Hoover> http://en.wikipedia.org/wiki/Experiment
17:07:49 <Phantom_Hoover> I applaud whoever got that image onto the article.
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:09:42 <Lymia> Which image?
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:01 <Phantom_Hoover> The first one.
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:37 <Lymia> Also.
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:29 <Phantom_Hoover> I am confused by your not using Chrome.
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:22 <Phantom_Hoover> Rather than opening an alert to tell you.
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:17:56 <Phantom_Hoover> Yeah, that's what I mean.
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:20:59 <pikhq_> Which is moronic.
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:26 <cheater__> Sgeo_, are you installing it now?
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:28:51 <monqy> nice clown
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:29:25 <cheater__> a-ha
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:11 <cheater__> so it inherently sucks
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:40:40 <Phantom_Hoover> That was me, FWIW.
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:43:13 <oklopol> "related" :D
18:47:26 <Lymia> Brainfuck vs Java.
18:47:26 <Lymia> Go.
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:23 <Phantom_Hoover> I am sorry oko this is clearly false.
18:51:35 <Phantom_Hoover> You have opinions on which soft drink is best to have sex in, for instance.
18:51:40 <oklopol> oh right
18:51:43 <oklopol> well that and math
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:16 <ais523> also has no I/O
18:52:42 <oklopol> oh it combines those. i guess also the binary thing is a bit of a tarpitisation.
18:52:58 <oklopol> (well, more so)
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:51 <Phantom_Hoover> oerjan, are you watching us in Stalker Mode?
18:54:54 <oerjan> well the definition of turning tarpit is _not_ what wikipedia now says it is
18:55:07 <olsner> tur*n*ing tarpit?
18:55:11 <oerjan> (well last i checked)
18:55:13 <olsner> is that a typo or different word?
18:55:18 <oerjan> olsner: it's a pun
18:55:38 <olsner> ok. I don't get it.
18:55:50 <oklopol> is wheel a turning tarpit?
18:55:56 <oerjan> olsner: also a different word
18:56:17 <oerjan> oklopol: Whirl is
18:56:25 <oerjan> and a couple others
18:56:25 <oklopol> erm yeah that.
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
18:57:21 <oerjan> *commands
19:02:58 <oerjan> <cheater__> how much water can you dissolve in 1L of water?
19:03:15 <cheater__> yes, how much?
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:46 <oerjan> (aka neutral pH)
19:03:56 <ais523> oerjan: yep, that sounds about right
19:04:07 <oklopol> what
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:04:37 <oerjan> or wait
19:04:38 <Phantom_Hoover> oklopol, pH is defined as -log_10 concentration(H+).
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:34 <oerjan> oklopol: ^
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:54 <ais523> *oklopol:
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:14 <Phantom_Hoover> oklopol, it's just the dissociation constant.
19:06:16 <ais523> but say, if you add enough H+ to get 10^-6 H+, you get approximately 10^-8 OH-
19:06:19 <elliott_> derp
19:06:20 <ais523> so it multiplies to 10^-14 always
19:06:42 <cheater__> reading backlog
19:06:46 <Phantom_Hoover> Water molecules will pull each other apart until the concentrations are at 10^-7.
19:08:02 <cheater__> interesting, that's pretty cool
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:00 <cheater__> not water ions.
19:09:15 <oerjan> it was distilled water, it doesn't have any other kind
19:09:32 <cheater__> ais523, "self-dissolves"?
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:10 <cheater__> ok
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:17 <cheater__> that's fairly revealing
19:10:39 <cheater__> in typical distilled water, what's the percentage of water ions to all ions?
19:10:53 <Phantom_Hoover> There's no such thing as a water ion.
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:19 <cheater__> it's just a shorthand
19:11:28 <Phantom_Hoover> 10^-7 l/mol is the concentration.
19:11:48 <oerjan> Phantom_Hoover: he's a german and i'm norwegian, we're predisposed to making up new words
19:11:49 <cheater__> concentration in the solution, ok
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:22 <cheater__> and what part is impurities?
19:12:26 <oerjan> ("what do you mean it's not a word, i just made it up")
19:12:37 <Phantom_Hoover> > (10^-7 * 18)/1000
19:12:38 <lambdabot> Not in scope: `^-'
19:12:42 <ais523> cheater__: all of them come from ions
19:12:44 <Phantom_Hoover> > (10^(-7) * 18)/1000
19:12:44 <ais523> *from water
19:12:44 <lambdabot> *Exception: Negative exponent
19:12:48 <ais523> because it's pure by definition
19:12:50 <Phantom_Hoover> -_-
19:12:54 <Phantom_Hoover> > (10**(-7) * 18)/1000
19:12:54 <ais523> so they couldn't come from anywhere else
19:12:54 <lambdabot> 1.8e-9
19:12:59 <cheater__> ais523, i mean in the real world, not on paper.
19:13:01 <Phantom_Hoover> cheater__, there's your percentage.
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:08 <oerjan> |at
19:14:11 <Phantom_Hoover> Yes.
19:14:18 <oerjan> **
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:23 <cheater__> i bet
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:17:43 <cheater__> wtf?
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:29 <cheater__> oerjan, hmm, yes
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:08 <fizzie> (From the abstract.)
19:19:25 <cheater__> just don't go to stileproject
19:19:25 <elliott_> fizzie: Could they be any more political about it?
19:19:45 <Phantom_Hoover> elliott_, yes
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:02 <cheater__> fizzie
19:27:08 <cheater__> please link me up to the relevant paper and demos
19:27:16 <cheater__> i'm 100% interested in this
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:28:49 <elliott_> Resynthesizer... for SOUND.
19:28:51 <elliott_> That would be cool.
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:34 <cheater__> fizzie, where are the demos?
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:10 <cheater__> thanks
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:31 <Lymia> Maybe.
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:05 <elliott_> ahahahaha
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:33 <Lymia> :(
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:18 <Phantom_Hoover> Lymia, no.
19:33:19 <elliott_> Lymia: Yes.
19:33:19 <oerjan> elliott_: hey it was a pretty funny comment i say
19:33:42 <Phantom_Hoover> OK my breath is fogging up.
19:33:47 <Phantom_Hoover> In late May.
19:33:49 <elliott_> Phantom_Hoover: Ha ha Scotland.
19:33:50 <Phantom_Hoover> Indoors.
19:33:53 <elliott_> oerjan: /msg
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:38:47 <cheater__> splendid! thanks
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:07 <oerjan> although putty does
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:50:18 <oerjan> ah
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:52:48 <elliott_> i know vorpal too
19:52:52 <elliott_> :P
19:52:56 <fizzie> Oh; then I know two.
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:41 <cheater__> fizzie, what are the marginals?
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:42 <fizzie> s/statistics/samples/
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:01:32 <fizzie> Right. Output signal.
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:16 <cheater__> Vorpal, such as /dev/urandom ?
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:31 <elliott_> fizzie: this shit up.
20:07:34 <elliott_> fizzie: make it.
20:07:36 <elliott_> fizzie: you can't.
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 <cheater__> fizzie, ubuntu does
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:36 <elliott_> hahahahaahahahahaa
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:45 <elliott_> Phantom_Hoover: Hussie?
20:11:47 <Phantom_Hoover> A large, detailed one, at least.
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:00 <Phantom_Hoover> Best warning.
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 <Vorpal> elliott_, good idea
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:39 <oklopol> :D
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:05 <Vorpal> nice way to put it
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:37 <oklopol> crazy shit
20:15:42 <Vorpal> fizzie, CES?
20:15:48 <fizzie> Consumer Electronics Show.
20:15:50 <fizzie> Or some-such.
20:15:52 <Vorpal> heh
20:16:56 <elliott_> practical assholes
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:17:59 <Vorpal> Lymia, eh?
20:18:05 <oerjan> oklopol: well the obfuscation isn't on the loop commands
20:18:10 <Lymia> Bets are open.
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:11 <fizzie> s/\+/?/
20:19:16 <Lymia> oh...
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:39 <Lymia> No.
20:19:52 <Lymia> I'm asking how long until somebody does perverted things wiht it.
20:19:54 <oklopol> :D
20:19:54 <Lymia> with*
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:21 <Lymia> olsner, right.
20:20:45 <elliott_> <fizzie> Lymia: http://kinecthacks.net/kinect-sex/ +
20:20:50 <elliott_> Worryingly quick response :P
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:22 <elliott_> this guy is an idiot
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:44 <oerjan> fizzie: suuure
20:21:45 <elliott_> Vorpal: Suuuuuuuuuuuuuuuuuuuuuuuuuuure.
20:21:48 <elliott_> oerjan: hifive
20:21:51 <elliott_> ...
20:21:51 <elliott_> erm
20:21:53 <elliott_> fizzie:
20:21:54 <elliott_> asterisk
20:21:56 <oerjan> :D
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:20 <Phantom_Hoover> That does not work with my definition of FSM.
20:23:30 <Vorpal> Phantom_Hoover, does it have a bounded tape?
20:23:34 <elliott_> Vorpal: i changed the suure
20:23:45 <Vorpal> elliott_, oh okay
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:25:50 <elliott_> thx
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:30 <Vorpal> ah
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:32:26 <Vorpal> fizzie, heh :P
20:33:33 <oklopol> virtual reality ...?
20:33:46 <elliott_> nobody ping Sg_o
20:34:34 <lifthrasiir> $ ./esotope -f text -t minus -v
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:37 <lifthrasiir> ;)
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:09 <lifthrasiir> pikhq_: ugh, really?
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:20 <Phantom_Hoover> My mind is rarely blown, but that has blown it.
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:36:44 <lifthrasiir> but it is just fine in esotope. yeah.
20:37:10 <lifthrasiir> now gotta have some sleep..
20:37:47 <cheater__> mind being blown: .........
20:37:51 <Vorpal> <lifthrasiir> $ ./esotope -f text -t minus -v <-- eh, what does that -f and -t mean?
20:38:02 <pikhq_> "from" and "to".
20:38:19 <lifthrasiir> yes, from and to.
20:38:21 <Vorpal> you mean this is an automatic tool to find chains of esolang interpreters?
20:38:24 <Vorpal> or what?
20:38:24 <lifthrasiir> -v for verbose, obviously.
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:17 <lifthrasiir> Vorpal: shortest.
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:40:13 <Vorpal> ah
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:41:55 <Vorpal> lifthrasiir, heh
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:01 <lifthrasiir> Ocaml.
20:44:07 <Vorpal> lifthrasiir, and couldn't it call out to external interpreters possibly?
20:44:36 <Vorpal> lifthrasiir, why ocaml?
20:44:40 <lifthrasiir> not yet, but definitely in the plan.
20:45:08 <lifthrasiir> well, the prime reason is that i wanted to learn Ocaml in a hard way...
20:45:13 <lifthrasiir> (i.e. trial and error)
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:45:57 <elliott_> Vorpal: it's compilers
20:45:58 <elliott_> not interpreters
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:16 <elliott_> (as long as it's haskell)
20:46:20 <lifthrasiir> lol
20:46:26 <pikhq_> As you can do imperative and functional programming styles in just about any language younger than 50.
20:46:34 <Phantom_Hoover> elliott_, hey, you let me write gravity.lisp in CL.
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:47:56 <Vorpal> hm
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:49:41 <lifthrasiir> and the transformers for them
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:57 <lifthrasiir> implement*
20:52:59 <Vorpal> oerjan, what about a self-compiler, err wait that would be damn useless. never mind
20:53:14 <oerjan> Vorpal: :D
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:54:16 <oerjan> heh
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:43 <Vorpal> no D
20:57:51 <oerjan> oh you said _more_ than three
20:57:56 <Vorpal> yes
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:40 <Vorpal> oerjan, hm...
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:06 <oerjan> ...what is that
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:23 <oerjan> oh
20:59:30 <Vorpal> Ozzlybob or something iirc?
20:59:34 <oerjan> yeah
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:11 <oerjan> heh
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:48 <elliott_> to be precise
21:00:52 <quintopia> or beta-juliet
21:00:58 <oerjan> http://esolangs.org/wiki/Beta-Juliet_and_Portia
21:00:59 <quintopia> once of those car languages
21:01:21 <oerjan> http://esolangs.org/wiki/Oozlybub_and_Murphy
21:01:28 <Vorpal> oh hm
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:02:46 <Vorpal> oerjan, yes kind of
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:20 <elliott_> no.
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:24 <elliott_> specialisation.
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:05:53 <elliott_> yes.
21:05:59 <Vorpal> hm
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:06:55 <oerjan> or wait
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:42 <oerjan> well yeah
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:12:50 <oerjan> or for efficiency
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:15:41 <Vorpal> oerjan, yeah why
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:22 <oerjan> *easily ported
21:17:42 <oerjan> Vorpal: well i've seen it mentioned, they're completely rewriting that part
21:17:49 <oerjan> (in ghc)
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:04 <olsner> oerjan: meh!
21:22:07 <oerjan> Vorpal: the evil mangler is used by the _registered_ C backend
21:22:13 <Vorpal> oerjan, oh
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:24 <oerjan> simpler, i assume?
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:25:55 <Vorpal> ah
21:26:54 -!- CakeProphet has quit (Ping timeout: 276 seconds).
21:26:59 <oerjan> and architecture dependent details
21:28:35 <elliott_> -fvia-c is deprecated
21:28:36 <elliott_> by the way
21:28:41 <elliott_> i.e. registered C builds
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:31:50 <Lymia> Evil mangler?
21:32:00 <Vorpal> yes
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:44 <Sgeo_> This sounds old
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:33:17 <Lymia> Which does?
21:33:57 <Vorpal> olsner, oh? link?
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:07 <Lymia> Evil mangler, eh?
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:41 <oerjan> olsner: oh right
21:38:50 <oerjan> "GHC no longer has an evil mangler."
21:39:00 <Vorpal> oerjan, I said that
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:15 <oerjan> yes.
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:42:39 <oerjan> figures
21:42:43 <oerjan> pikhq_: ah.
21:42:48 <oerjan> makes sense
21:43:35 <oklopol> oerjan: i think NFA = FNFA with any amount of dimensions
21:43:54 <oerjan> good, good
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:09 <Vorpal> anyone knows?
21:45:12 * Vorpal looks at elliott_
21:45:24 <elliott_> thing
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:45:39 <Vorpal> oerjan, err, what
21:45:45 <Vorpal> oerjan, joke right?
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:46:49 <elliott_> Lymia: why not
21:46:54 <elliott_> coq is dirty-hack free :P
21:47:02 <Lymia> oh
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:48 <Vorpal> oerjan, hm
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:37 <elliott_> oklopol: is it big
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:31 <oklopol> you solved it?
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:52:55 <oklopol> oh dear
21:53:17 <Vorpal> ouch
21:53:22 <oerjan> strictly speaking i had already announced it, sort of (i SMS'ed "Eureka" to my collaborator)
21:54:31 <elliott_> oerjan: nerd :D
21:54:38 <elliott_> i suppose "dork" is more appropriate
21:54:47 <oklopol> elliott_: you wouldn't understand
21:55:21 <elliott_> oklopol: I meant the "Eureka"
21:55:34 <oklopol> err right
21:55:34 <oklopol> :P
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:55:48 <Vorpal> ah
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:58:42 <Vorpal> oerjan, ah nice
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:44 <oerjan> *it also works
21:59:51 <Vorpal> oerjan, oh, nifty. But this would only work within a single module surely?
21:59:55 <Vorpal> not across modules
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:12 <Vorpal> hm
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:13 <elliott_> oerjan: He was Greek :P
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:05:53 <Vorpal> hm okay
22:06:06 <Vorpal> elliott_, sad, darcs was better than git
22:06:16 <Phantom_Hoover> <elliott_> oerjan: He was Greek :P
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:22 <Vorpal> elliott_, indeed
22:06:26 <Vorpal> hm
22:06:28 <Vorpal> elliott_, really?
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:32 <Phantom_Hoover> Yeah, the Greeks were the ultimate nerds.
22:06:34 <elliott_> Vorpal: Really what?
22:06:37 <oerjan> *run
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:47 <Phantom_Hoover> Classic nerd.
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:06:58 <elliott_> darcs two is faster, buuut.
22:07:12 <Vorpal> elliott_, but what
22:07:43 <elliott_> Well, "fool me once, shame on you; fool me twice, can't get fooled again".
22:08:07 <Vorpal> ah
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:32 <elliott_> oerjan: ah
22:10:33 <Vorpal> elliott_, :D
22:10:47 <Vorpal> oerjan, did it work with git however?
22:11:03 <oerjan> Vorpal: presumably.
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:02 <oerjan> (speculating here)
22:12:07 <oerjan> and always had
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:39 <oerjan> *how they
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:15:38 <oerjan> Vorpal: aha
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:05 <Vorpal> oerjan, oh that yeah
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:26 <fizzie> The same, basically.
22:19:28 <oerjan> i think "those who live in glass houses shouldn't throw stones"
22:19:34 <Vorpal> ah
22:19:53 <oerjan> although "the pot calling the kettle black" also fits the theme
22:20:18 <Vorpal> yes indeed
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:50 <lambdabot> False
22:22:57 <elliott_> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 2
22:22:57 <lambdabot> True
22:22:59 <elliott_> yay
22:23:24 <Vorpal> elliott_, shouldn't you use where instead of let, iirc you told me so some time ago? ;P
22:23:35 <elliott_> um not in this context, no
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:04 <elliott_> but what oerjan said
22:24:05 <elliott_> > x where x = 9
22:24:05 <lambdabot> <no location info>: parse error on input `where'
22:24:07 <Vorpal> oerjan, oh right
22:24:12 <elliott_> besides, i wrote the function first ;)
22:24:14 <oerjan> elliott_: um lambdabot isn't ghci
22:24:20 <elliott_> oerjan: close enough :)
22:24:24 <elliott_> same "workflow"
22:24:28 <oerjan> just vaguely similar to a few subcommands of ghci
22:24:40 <Vorpal> > :t thiswontwork
22:24:40 <lambdabot> <no location info>: parse error on input `:'
22:24:43 <Vorpal> indeed
22:24:47 <Vorpal> not ghci
22:24:52 <oerjan> :t thiswontwork
22:24:53 <lambdabot> Not in scope: `thiswontwork'
22:25:04 <Vorpal> oerjan, indeed. But > is not ghci
22:25:08 <Vorpal> that was my main point
22:25:11 <oerjan> yeah
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:40 <elliott_> gah
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:31 <lambdabot> 7
22:26:53 <elliott_> class Sub a b r | a b -> r, a r -> b
22:26:53 <elliott_> instance Sub n Z n
22:26:53 <elliott_> instance (Sub n m r) => Sub (S n) (S m) r
22:26:56 <elliott_> the last instance fails :(
22:26:58 <oerjan> elliott_: um your definition above fails on divs 1 1
22:27:05 <elliott_> oerjan: ugh does it
22:27:10 <elliott_> thankfully i never use one
22:27:12 <elliott_> but what mistake did i make
22:27:22 <oerjan> or wait
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:32 <lambdabot> False
22:27:34 <Vorpal> yes
22:27:36 <Vorpal> it does
22:27:41 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 2 1
22:27:42 <lambdabot> False
22:27:45 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 1 2
22:27:45 <lambdabot> False
22:27:47 <Vorpal> um
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:27 <lambdabot> True
22:28:31 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 2 2
22:28:31 <lambdabot> True
22:28:33 <Vorpal> hm
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:44 <lambdabot> mueval-core: Time limit exceeded
22:28:48 <Vorpal> whaaaat
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:00 <lambdabot> mueval-core: Time limit exceeded
22:29:00 <Vorpal> yes
22:29:02 <Vorpal> yes it does
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:16 <Lymia> Oh.
22:29:23 <oerjan> Vorpal: same as your 2 3, actually. leaky recursion base.
22:29:27 <Vorpal> oerjan, indeed
22:29:43 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 5
22:29:45 <lambdabot> Terminated
22:29:51 <Vorpal> okay that one is new
22:29:53 <elliott_> oh wai
22:29:53 <elliott_> t
22:29:56 <Vorpal> is it different or same?
22:29:57 <elliott_> the add definition works
22:29:59 <elliott_> in this case
22:30:56 <Vorpal> Lymia, haskell
22:31:02 <elliott_> gah wtf...
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:33:58 <elliott_> probably
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:12 <Vorpal> ah
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:45 <lambdabot> Terminated
22:37:47 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 3
22:37:51 <lambdabot> mueval-core: Time limit exceeded
22:37:54 <Vorpal> hm nope
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:00 <oerjan> well yeah
22:41:01 -!- elliott_ has quit (Ping timeout: 255 seconds).
22:41:06 <Vorpal> well he left
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:42:00 <oerjan> whatever
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:30 <oerjan> (en svensk tiger)
22:43:35 -!- CakeProphet has quit (Ping timeout: 240 seconds).
22:43:36 <Vorpal> oerjan, indeed
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:04 <Vorpal> huh
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:46 * Phantom_Hoover → sleep
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:26 <augur> man
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:01 <augur> Lymia: yes
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:52:03 <zzo38> "FizzBuzz" is 86
23:55:35 <Lymia> Grats.
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.
2011-05-27
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:33:32 <Vorpal> not sure why
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:17:26 <oerjan> how rude!
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:44 * Sgeo_ faceplants
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:05 <pikhq> *sigh*
03:53:21 <Sgeo_> Huh. It just runs over IRC.
03:53:32 <Sgeo_> irc.mindfang.org #pesterchm
03:53:35 <Sgeo_> oops
03:53:37 <Sgeo_> #pesterchum
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:02:48 <oerjan> yes
04:03:19 <elliott_> oerjan: right, i'm doing peano numbers here so this is a pain
04:03:24 <elliott_> (means I need greater-than)
04:03:28 -!- augur has joined.
04:03:31 <oerjan> mhm
04:04:00 <elliott_> hm wait
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:16 <elliott_> to make it definitively False
04:04:20 <elliott_> gross
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 Z d True
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:01 <elliott_> that should do it
04:05:03 <elliott_> hmm wait
04:05:09 <elliott_> I need to make sure n in the last one is at least two
04:05:12 <elliott_> right?
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:15 <elliott_> that will probably work
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:17 <oerjan> *a
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 <elliott_> oerjan: um really?
04:10:11 <oerjan> i think you can derive LT from Sub
04:10:14 <elliott_> oh right
04:10:50 <oerjan> hm or that would give overlapping would it
04:11:23 <elliott_> probably
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:14:09 <elliott_> right
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_> Matching instances:
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:49 <elliott_> ugh
04:16:51 <elliott_> yeah i guess i do need to modify sub
04:17:20 <elliott_> hmm
04:17:26 <elliott_> I wonder how??
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:19:26 <elliott_> not again
04:19:38 <elliott_> ugh
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:35:21 <elliott_> shouldn't they fix that :(
04:35:41 <oerjan> afaik, no.
04:36:35 <elliott_> lame
04:36:40 <elliott_> so i guess i have to use type families
04:36:42 <elliott_> which are basically cheating
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:38:24 <elliott_> (the answer is nothing)
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:08 <elliott_> oerjan: well yes :)
04:41:20 <elliott_> oerjan: but talking about everything is the same thing as talking about nothing
04:41:31 <oerjan> touché
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:45:48 <elliott_> L A M E
04:48:14 <oerjan> keep it in the family
04:50:51 <elliott_> oerjan: totally
04:50:55 <elliott_> oerjan: i am sad because of this
04:50:56 <elliott_> it makes it too easy
04:51:46 <oerjan> well multiparameter typeclasses _are_ supposed to be TC
04:52:18 <elliott_> oerjan: are they?
04:52:22 <elliott_> then why is this not working
04:52:24 <elliott_> i mean
04:52:28 <elliott_> i know theres that interpreter
04:52:30 <elliott_> but i don't want to /greenspun/ this
04:52:32 <oerjan> NEEDS MORE CLEVAR
04:52:42 <elliott_> oerjan: I guess if I can write a directly recursive Divisible algorithm
04:52:48 <elliott_> that doesn't use subtraction
04:52:48 <elliott_> somehow
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:53:48 <elliott_> neat
04:53:50 <elliott_> oerjan: i made it
04:54:23 <elliott_> oerjan: http://sprunge.us/YBbd
04:54:26 <elliott_> oh and
04:54:27 <elliott_> {-# LANGUAGE MultiParamTypeClasses,
04:54:27 <elliott_> FunctionalDependencies,
04:54:27 <elliott_> FlexibleInstances, UndecidableInstances #-}
04:54:29 <elliott_> this fails:
04:54:37 <elliott_> *Main> undefined :: (Divisible (S (S Z)) (S (S (S (S Z)))) r) => r
04:54:40 <elliott_> really no idea at this point
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
04:59:43 <oerjan> )
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:38 <elliott_> <oerjan> )
05:03:40 <elliott_> yeah that does not work
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:53 <elliott_> :(
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:04 <elliott_> ---->
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_> 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:06:46 <elliott_> hmm
05:06:49 <elliott_> any way to fix that? :-P
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:00 <oerjan> oh hm let me look
05:08:11 <elliott_> it seems to mostly be raw recursive functions
05:08:14 <elliott_> and (complicated) compositions
05:08:21 <elliott_> without combining the two
05:09:06 <oerjan> heh oleg has done decimals
05:09:26 <elliott_> yeah :P
05:09:32 <elliott_> oerjan: I am considering just doing modulo myself
05:09:35 <elliott_> and checking it for ==0
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:27 <elliott_> oh come on
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:11:34 <elliott_> In the expression:
05:11:38 <elliott_> fffffffff
05:11:40 <elliott_> ok
05:11:42 <elliott_> this Sub thing does not work
05:11:43 <elliott_> at all
05:11:51 <elliott_> with the Nothing/Just
05:13:33 <elliott_> oerjan: i don't know how to make this work at all...
05:13:37 <elliott_> class Mod a b r | a b -> r
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:39 <elliott_> not even this works
05:13:58 <oerjan> of course that overlaps
05:14:17 <elliott_> aha
05:14:20 <elliott_> oerjan: I can do
05:14:23 <elliott_> class Mod a b r x | a b -> r
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:26 <elliott_> and then if I specify 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:21:48 * elliott_ reads what you SAYY
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:46 <elliott_> the maybe sub calculated?
05:22:49 <oerjan> instance DivHelper Nothing d False
05:22:52 <oerjan> yes
05:23:02 <elliott_> oh i see
05:23:41 <elliott_> oerjan: hm and then divhelper recurses into divisible?
05:23:42 <elliott_> okay
05:23:43 <oerjan> instance DivHelper (Just Z) d True
05:23:58 <oerjan> and one more for Just (S n)
05:24:04 <elliott_> right
05:24:05 <elliott_> um are you sure
05:24:07 <elliott_> not
05:24:09 <elliott_> instance (Divisible a d r) => DivHelper (Just a) d r
05:24:09 <elliott_> ?
05:24:15 <elliott_> because Divisible has the Z/d/True case
05:24:16 <elliott_> already
05:24:24 <oerjan> that with a = S n
05:24:31 <oerjan> otherwise you get overlap
05:24:36 <elliott_> um
05:24:37 <elliott_> no you don't
05:24:40 <oerjan> oh hm
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:44 <elliott_> look ma, no overlap
05:24:48 <oerjan> you are right :)
05:24:55 <elliott_> undefined :: (Divisible (S (S Z)) (S (S (S (S Z)))) r) => r
05:24:55 <elliott_> :: False
05:24:55 <elliott_> umm
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:26 <elliott_> instance Divisible Z d True
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:28 <oerjan> and, no.
05:25:31 <elliott_> (Divisible a b) => a|b
05:25:31 <elliott_> oh wait
05:25:33 <elliott_> of course not
05:25:35 <elliott_> durr
05:25:56 <elliott_> undefined :: (Divisible (S (S (S (S Z)))) (S (S Z)) r) => r :: True
05:25:57 <elliott_> awesome
05:26:51 <elliott_> ok now for a loop
05:30:21 * elliott_ wonders if oerjan has guessed what he's writing yet...
05:30:34 <elliott_> hint: three and five
05:30:45 <oerjan> hm...
05:30:52 <oerjan> ah that one
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:33:10 <oerjan> (modulo syntax)
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:35:26 <oerjan> heh
05:38:26 <elliott_> Functional dependencies conflict between instance declarations:
05:38:27 <elliott_> sdpfosdfjsdpofspf
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:38:49 <elliott_> MORE HELPER TIME
05:40:55 <oerjan> (Divisible n Five d5, FB1 n d5 r) => FB n r
05:41:21 <oerjan> indeed
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:42:32 <elliott_> Cons fb r
05:42:32 <elliott_> fail
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_> No instance for (LoopHelper
05:45:54 <elliott_> (Just FizzBuzz) Z (S (S (S (S Z)))) (Cons fb r))
05:45:57 <elliott_> this seems to be the problem
05:46:08 <elliott_> hmm
05:46:17 <elliott_> class Loop n c r | n c -> r
05:46:17 <elliott_> instance Loop n Z Nil
05:46:17 <elliott_> instance (FB n m, LoopHelper m n (S c) r) => Loop n (S c) r
05:46:22 <elliott_> don't see anything wrong
05:46:35 -!- Rugxulo has joined.
05:47:57 <oerjan> elliott_: um shouldn't it be | m n c -> r ?
05:48:11 <elliott_> ah
05:48:12 <elliott_> of course
05:48:22 <elliott_> *Main> undefined :: (Loop Z (S (S (S (S Z)))) r) => r
05:48:23 <elliott_> <interactive>:1:1:
05:48:23 <elliott_> No instance for (Show (Cons FizzBuzz Nil))
05:48:23 <elliott_> not quite...
05:48:32 <elliott_> oh wait
05:48:34 <elliott_> quite
05:48:46 <oerjan> heh
05:48:46 <elliott_> *Main> :t undefined :: (Loop Z Eight r) => r
05:48:47 <elliott_> <interactive>:1:1:
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:48:50 <elliott_> "Erm."
05:49:01 <oerjan> fancy
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:28 <oerjan> yeah not too good...
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:49:31 <elliott_> erm is that backwards...
05:50:01 <elliott_> wait, what?
05:50:03 <elliott_> that's not right is it
05:50:35 <oerjan> indeed not.
05:50:49 <elliott_> hmm...
05:50:53 <elliott_> maybe divisible is broke
05:51:26 <elliott_> wait oops
05:51:30 <elliott_> I did five and eight rather than three and five
05:51:32 <elliott_> maybe i am drunk
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:00 <oerjan> ah
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_> :: Cons
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:07 <elliott_> oops, it should not include 0
05:53:13 <elliott_> oerjan: yeah
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:31 <elliott_> good
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:53:50 <elliott_> no, that's a shitty idea
05:54:04 <oerjan> elliott_: you are not going to include the numbers not divisible by 3 or 5?
05:54:15 <elliott_> oh right
05:54:18 <elliott_> you have to do that don't you
05:54:18 <elliott_> :(
05:54:24 <oerjan> well afair
05:55:38 <elliott_> Occurs check: cannot construct the infinite type:
05:55:38 <elliott_> r = Cons (Number (S Z)) r
05:55:39 <elliott_> fgopdfgjofgodifjg
05:55:49 <oerjan> heh
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:57:10 <elliott_> maybe this won't work out
05:57:37 <oerjan> oh you do it that way
05:57:43 <elliott_> oh
05:57:45 <elliott_> I need an S
05:58:01 <elliott_> excellent, it's working now
05:58:16 <oerjan> MARVELOUS
05:58:23 <elliott_> hmm now how can I use my Sub to do addition
05:58:32 <elliott_> oh
05:58:34 <elliott_> obviously
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:58:45 <elliott_> BLUH BLUH
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_> class Ten x r | x -> r
06:00:01 <elliott_> instance (Sub Five r (Just Five)) => Ten () r
06:00:04 <elliott_> oerjan: observe the lovely grossness
06:00:29 <oerjan> ayeeh
06:01:15 <elliott_> class Twenty x r | x -> r; instance (Sub Ten r (Just Ten)) => Twenty () r
06:01:17 <elliott_> spot the error
06:01:20 <elliott_> hint: Ten is a typeclass too
06:01:33 <oerjan> fancy
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:47 <elliott_> :: (Loop (S Z) n2 r,
06:02:47 <elliott_> Sub twenty n (Just twenty),
06:02:47 <elliott_> Sub n eighty (Just n),
06:02:48 <elliott_> Sub Five n1 (Just Five),
06:02:50 <elliott_> Sub n1 twenty (Just n1),
06:02:52 <elliott_> Sub eighty n2 (Just twenty)) =>
06:02:54 <elliott_> r
06:02:56 <elliott_> nice.
06:03:07 <elliott_> wait
06:03:08 <elliott_> d'oh
06:03:26 <elliott_> hm wait what
06:03:37 <elliott_> oh
06:03:48 <elliott_> grr
06:03:50 <elliott_> more fundeps conflict
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:41 <elliott_> :: Cons
06:05:41 <elliott_> (Number (S Z))
06:05:41 <elliott_> (Cons
06:05:42 <elliott_> (Number (S (S Z)))
06:05:46 <elliott_> (Cons Fizz (Cons (Number (S (S (S (S Z))))) (Cons Buzz Nil))))
06:05:48 <elliott_> That...
06:05:50 <elliott_> No.
06:06:14 <elliott_> hm oh
06:06:15 <oerjan> it seems to think 100 = 5
06:06:16 <elliott_> my add is broken i guess
06:06:27 <elliott_> oh duh
06:06:46 <elliott_> ok now to wait for it to do all the fizzbuzzing
06:06:47 <elliott_> all of it
06:06:54 <elliott_> starting to think that type families would be preferable at this point
06:07:14 <elliott_> chuuuuuuuuurn
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:08 <oerjan> XD
06:08:48 <elliott_> still not done :D
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:06 <elliott_> i mean
06:09:07 <elliott_> this thing recurses
06:09:08 <elliott_> before it conses
06:09:13 <elliott_> obviously
06:09:16 <elliott_> since the head has to execute first
06:09:19 <elliott_> context
06:09:20 <elliott_> whatever
06:09:23 <elliott_> and
06:09:23 <elliott_> yeah
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:10:28 <elliott_> good use of half my ram
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:00 <elliott> ok i can produce forty
06:14:25 <pikhq> Anyone ever hit a decioleg?
06:14:39 <oerjan> oleg while a baby
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:14:59 <oerjan> OOOOOH
06:15:00 <hagb4rd> (wouldn't know where to paste it else either :/ )
06:15:08 <hagb4rd> punish me
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:33 <pikhq> Baaah.
06:16:55 <pikhq> Anyways, point is, are there any mortals who have achieved a tenth of Oleghood?
06:17:19 <oerjan> i don't know.
06:17:38 <elliott> oerjan
06:17:41 <elliott> i just realised
06:17:47 <elliott> i need to do decimal conversion :(
06:18:02 <oerjan> fancy
06:18:26 <elliott> im going to cry
06:18:27 <elliott> forever
06:19:01 <oerjan> um it's not like you're going to achieve correct output format anyhow...
06:19:43 <elliott> what?
06:19:43 <elliott> why not
06:19:46 <elliott> i'm planning to reify it
06:19:48 <elliott> at the value level
06:19:55 <oerjan> oh
06:19:58 <elliott> i'll construct a list of (peano) bytes at the type level
06:19:59 <elliott> then print it out
06:20:02 <elliott> just like the C++ deadfish
06:20:17 <elliott> im in this for the long haul oerjan
06:20:21 <elliott> im doing this right
06:23:02 <elliott> ps oerjan i want you to know that you have a guaranteed ticket to the martian colony
06:23:21 <oerjan> ooh
06:24:30 <elliott> yeah
06:24:33 <elliott> you're lucky
06:27:02 <elliott> and then oerjan went on with his life without even asking what he meant
06:28:18 <oerjan> funny that
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:29:33 <elliott> well i guess i do
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:30:27 <elliott> i love bread its great
06:31:11 <oerjan> ____
06:31:20 <oerjan> /____\
06:32:19 <elliott> thats a shitty breazd
06:33:10 <oerjan> :(
06:33:40 <elliott> sorry
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:38:20 <elliott> toast it right
06:38:21 <elliott> then put bacon on it
06:41:47 <oerjan> and a fried egg
06:45:38 <monqy> good job
06:47:51 <elliott> nice
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:40 <lambdabot> Couldn't match expected type `[a
06:51:40 <lambdabot> -> Data.Ma...
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:51:49 <lambdabot> ...
06:51:53 <oerjan> eek
06:52:08 <oerjan> :t lookup
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:52:55 <lambdabot> ...
06:53:06 <oerjan> er duh
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:53:24 <lambdabot> ...
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:07 <lambdabot> against...
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:55:43 <oerjan> oh
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:37 <lambdabot> against...
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:57:11 <oerjan> yeah
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:13 <lambdabot> against inf...
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)'
06:59:58 <lambdabot> against i...
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 <oerjan> huh
07:03:09 <oerjan> > "er"
07:03:09 <lambdabot> Couldn't match expected type `Data.Maybe.Maybe
07:03:09 <lambdabot> ...
07:03:09 <oerjan> no
07:03:10 <lambdabot> "er"
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:04:05 <lambdabot> aga...
07:05:35 <oerjan> > unwords $ map (join $ fromJust . (flip lookup . zip [1,3,5,15] . (show:) $ map const ["Fizz","Buzz","FizzBuzz"])) [1..]
07:05:39 <lambdabot> mueval-core: Time limit exceeded
07:05:43 -!- pikhq has quit (Ping timeout: 260 seconds).
07:05:44 -!- pikhq_ has joined.
07:06:09 <oerjan> looks busy :(
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:06:38 <oerjan> wat
07:06:45 <oerjan> oh sheesh
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:39 <oerjan> yeah
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:05 <oerjan> fancy
07:12:30 <zzo38> Can you understand this?
07:12:36 <oerjan> not a chance
07:12:49 <zzo38> Have you ever used TeX?
07:12:58 <oerjan> only latex
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:15:06 <oerjan> mhm
07:16:26 <zzo38> What kind of stuff have you made with it?
07:17:08 <oerjan> math papers
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:34 <Phantom_Hoover> Yes.
09:46:39 <Vorpal> Phantom_Hoover, liked it?
09:47:19 <Phantom_Hoover> Yes.
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:47 <Phantom_Hoover> It's a Flash update; the Next appears when it's over.
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:01 <Vorpal> Sgeo_, apng?
10:37:25 <elliott> Precisely.
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:41:59 <elliott> wizards
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:23:25 <Phantom_Hoover> Oh, I must have been mistaken.
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:45:32 <elliott> hiais523
11:46:04 <ais523> hi elliott
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:46:24 <elliott> his523
11:46:26 <elliott> but that's just lame
11:46:27 <elliott> ugh
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:45 <Vorpal> ah
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:33 <Vorpal> never seen apng
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:52:57 <Vorpal> ais523, hm
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:20 <elliott> y
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:38 <elliott> fizzie: Well that sucks.
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?
11:59:58 <elliott> libpng?
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:38 <cheater__> ais523, yeah i guess for renders
12:01:38 <elliott> pikhq_ did it recently.
12:01:42 <elliott> it compresses well.
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:01:57 <cheater__> or alternative cinema 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:31 <Vorpal> or only marginally
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:02:57 <elliott> which is important
12:03:01 <Vorpal> hm true
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:21 <elliott> and storage problems.
12:03:22 <elliott> films are big.
12:03:29 <cheater__> yes
12:03:39 <cheater__> well, .aiff's were big too.
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:07 <Vorpal> indeed
12:04:08 <elliott> zip compresses between files
12:04:10 <elliott> hmm
12:04:11 <elliott> I think
12:04:14 <elliott> maybe it doesn't
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:04:56 <elliott> (the .fla is distributed)
12:05:27 <Vorpal> elliott, for blender you could get the original blender source maybe?
12:05:29 <Patashu> lol Zip drive
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 <Patashu> colour me surprised\
12:05:42 <lifthrasiir> of course not a big win, but it is good enough for most purposes
12:05:46 <elliott> lifthrasiir: mm
12:06:02 <cheater__> Patashu, yes
12:06:13 <cheater__> JPEG is actually an organization.
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:08:16 <lifthrasiir> make*
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:23 <Patashu> 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:04 <ais523> SVG?
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:21 <elliott> disturbing
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:00 <coppro> impossible
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:22 <coppro> my objection stands
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:02 <coppro> ah
13:27:09 <ais523> (I just counted, it was actually only 11)
13:27:17 <coppro> fun
13:27:48 <coppro> I like the bit aobout the distinction between a TV and a monitor
13:28:05 <elliott> What patent?
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:09 <ais523> 6757682
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:23 <Patashu> lol wow
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:37 <Patashu> like multitouch
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:32:55 <Phantom_Hoover> Patashu, is that actually you.
13:33:17 <Patashu> yes. I have a lamprey on my head as I type this
13:33:18 <Patashu> ask me anything
13:33:27 <elliott> Patashu: have you ever seen a ghost
13:33:37 <Patashu> yes
13:33:39 <Patashu> but only lamprey ghosts
13:33:41 <Patashu> next question
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:34:32 <Patashu> lol
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:18 <Patashu> lol
13:37:20 <Patashu> the fool, it is you
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:39 <ais523> I don't get it
13:40:40 -!- MigoMipo has joined.
13:41:44 <Phantom_Hoover> elliott, no wait I shall pull the channel even higher.
13:41:48 <Phantom_Hoover> With exploding cake.
13:42:24 <Phantom_Hoover> http://www.youtube.com/watch?v=js9_EhrjDD8
13:55:49 -!- Guest17101 has joined.
13:57:19 -!- ralc has joined.
13:58:10 <Guest17101> hi
13:58:17 <elliott> hi
14:02:23 -!- ZOMGMODULES has joined.
14:02:31 <ZOMGMODULES> http://answers.yahoo.com/question/index?qid=20080726123234AALUVFA
14:03:00 <Patashu> meh
14:03:42 <ZOMGMODULES> as opposed to the language which is *most* commonly found at the bottom of a bucket, which is...?
14:04:03 <Patashu> java? C++?
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:04:47 <Patashu> This changes everything
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:22:05 <elliott> or "ZOMGMODULES"
14:33:56 <ZOMGMODULES> or "Crazy Frog"
14:34:17 <elliott> Or "ais523"
14:34:37 <ais523> my name is only scary because of its reputation
14:34:53 <elliott> And its associated humbleness obvs
15:00:48 <ZOMGMODULES> CINARA Is Not A Recursive Acronym
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:02:36 <elliott> disgusting
15:03:24 <ZOMGMODULES> i would go so far to call it reprehensible
15:03:30 <elliott> definitely
15:03:36 <elliott> reprehensipail
15:03:41 <Phantom_Hoover> Oh, also, I am now reeling at a discovery that has rocked my perception of the world.
15:03:50 <Phantom_Hoover> There is something vaguely interesting in Swindon.
15:03:58 <elliott> [dramatic music]
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:04:34 <elliott> You didn't know of that?
15:04:37 <elliott> You are a strange man.
15:04:42 <elliott> A strange and racist man.
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:36 <Phantom_Hoover> http://en.wikipedia.org/wiki/Whisker_(metallurgy)
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:16:57 <ZOMGMODULES> *so
15:17:14 <Phantom_Hoover> ZOMGMODULES, sorry, should I URLencode them first?
15:17:30 <elliott> yes and lso kill a goat
15:17:40 <ZOMGMODULES> no, just force wikipedia to disallow them
15:17:49 <ZOMGMODULES> also: plastic turd: good idea for prize
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:25 <Phantom_Hoover> They could, albeit in a roundabout way.
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:21:40 <Patashu> rubicon is that bully CA?
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:29 <Patashu> right
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:04 <Patashu> runs fine for me
15:27:13 <Patashu> chrome, windows XP, latest version of java and JDK
15:27:27 <elliott> >windows
15:27:30 <elliott> found your problem :-P
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:53 <elliott> yeah ais523 you SUCK
16:29:55 <elliott> and you should feel bad
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:32:06 <ais523> o!
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:39:53 <Deewiant> What bug?
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:16 <Deewiant> Have you reported it?
16:45:24 <zzo38> No.
16:45:32 <Deewiant> Perhaps you should.
16:45:33 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
16:45:46 <zzo38> I am unsure how.
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:02 <ZOMGMODULES> how can that be. there are no bugs in dc.
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:50:21 <ZOMGMODULES> but how, but how can that be
16:51:02 -!- augur has quit (Remote host closed the connection).
16:51:56 <ZOMGMODULES> ZOMGMODULES: STOP BEING WEIRD
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:54:09 <elliott> hi Adiolarxd256
16:54:19 <Adiolarxd256> salox dsox, elliott
16:54:37 <elliott> jsadlk
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.
16:57:21 <elliott> zzo38: So send a patch.
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?
17:48:51 <elliott> carps
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:06 <pikhq> Fucking bastards.
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:13 <elliott> Should be.
18:27:18 <TOGoS> yeah, should be
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:28 <elliott> Well, they already do.
18:28:31 <pikhq_> AND LET ME SCROLL WHEEL TO CHANGE TABS DAMMIT
18:28:35 <elliott> on X that is :P
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:21 <TOGoS> heh
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> [...]
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:05:57 <elliott> etc.
19:05:59 <elliott> Which WORRIES ME.
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:16:48 <elliott> It's "ghc --make". :p
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:51 <pikhq> (... on LostKng)
19:30:59 -!- pouns_ has quit (Client Quit).
19:31:13 <Lymia> pikhq, is the resulting code faster?
19:31:29 <pikhq> Lymia: Yes.
19:31:36 <pikhq> It's just that the compiler itself has a space leak.
19:31:39 <pikhq> Somewhere.
19:31:41 <Lymia> memory 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:56:21 <elliott> oh
19:56:21 <elliott> hey
19:56:23 <elliott> pikhq is talking
19:56:25 <elliott> pikhq: are you on testing
19:58:12 * pikhq is on testing
19:58:29 <elliott> is it stableish right now
19:58:39 <pikhq> Quite.
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:07 <elliott> are ubuntu-specific
19:59:15 <Phantom_Hoover> http://en.wikipedia.org/wiki/Boston_Molasses_Disaster
19:59:37 <Phantom_Hoover> This remains the most unsettlingly funny tragedy to date.
20:02:32 <lifthrasiir> pikhq: what pass?
20:02:51 <elliott> http://www.phpsadness.com/
20:02:53 <elliott> here is my equivalent list
20:02:58 <elliott> #1 PHP
20:03:09 <lifthrasiir> i guess you are processing the entire code as a whole
20:14:02 <Phantom_Hoover> http://en.wikipedia.org/wiki/USS_Tang_(SS-306)
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:25:49 <lifthrasiir> ugh.
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:05 <lifthrasiir> ah, okay.
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:34:55 <Vorpal> heh
20:34:56 <elliott> morbid fun
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:35:59 <lifthrasiir> ugh.
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:35 <lifthrasiir> never.
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:18 <lifthrasiir> Vorpal: definitely, but not yet.
20:37:34 <lifthrasiir> i'm good at planning and lazy at executing ;)
20:37:41 <lifthrasiir> (as everyone does)
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:39:53 <Vorpal> def -> cdef and so on
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:19 <lifthrasiir> hmm
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:11 <lifthrasiir> lots of dict, for example.
20:44:22 <lifthrasiir> dicts and sets*
20:44:24 <Vorpal> lifthrasiir, hm. I forgot if it can optimise those
20:44:29 <Vorpal> it can optimises lists certainly
20:44:34 <Vorpal> and tuples iirc
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:45:40 <Vorpal> python was prescribed
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:30 <lifthrasiir> but for other things, it won't.
20:46:32 -!- myndzi has joined.
20:46:36 <Vorpal> lifthrasiir, hm
20:46:40 <lifthrasiir> that's why i tried PyPy out
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:00 <elliott> c
20:47:02 <Vorpal> elliott, yes very retro.
20:47:09 <Vorpal> and x86-32 only iirc
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:32 <Vorpal> :D
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:46 <elliott> How does it look like ?
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:49:10 <lifthrasiir> python-esque syntax, if you meant cython.
20:49:24 <elliott> nope
20:49:30 <elliott> it was a quote
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:50:39 <lifthrasiir> lol
20:50:43 <Vorpal> lifthrasiir, why not
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:12 <elliott> What, Go?
20:51:13 <elliott> Google didn't make it.
20:51:14 <Vorpal> yes
20:51:16 <Vorpal> go
20:51:22 <lifthrasiir> Vorpal: or make it a part of esotope.
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:25 <elliott> Vorpal: nothing?
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 <Vorpal> elliott, saying what?
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:08 <elliott> etc.
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:43 <elliott> lifthrasiir: True.
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:36 <lifthrasiir> for exactly that reason
20:55:40 <lifthrasiir> have*
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:55:54 <Vorpal> were*
20:56:37 <elliott> Vorpal: same with everything in the general information channels
20:56:49 <Vorpal> elliott, heh
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:20:45 <quintopia> why does it need river demerits?
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:30 <quintopia> oh i see.
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:24:58 <quintopia> you'
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:19 <Vorpal> zzo38, TFM? GF?
21:39:28 <Vorpal> I don't know what either of these are
21:39:31 <Sgeo_> <}<
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:40:26 <Vorpal> Sgeo_, ?
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:45 <Vorpal> weird
22:04:54 <Vorpal> where is elliott when you need him
22:05:40 <Vorpal> while (p[10]) {
22:05:40 <Vorpal> p[10] = p[10]-1;
22:05:40 <Vorpal> p[16] = p[10]+1;
22:05:40 <Vorpal> }
22:05:41 <Vorpal> huh
22:05:51 <Vorpal> even my program would have optimised that heh
22:06:38 <Vorpal> or wait, maybe not
22:06:39 <Vorpal> hm
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:43 <Vorpal> and p[10] at 0
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:42 * Phantom_Hoover → sleep
23:15:45 -!- Phantom_Hoover has quit (Quit: Leaving).
23:20:07 <zzo38> How does this work? $-*=/o/?print$-,$/:($-+=/i/-/d/||$-*~-$-)!~56for<>
23:20:08 <myndzi> |
23:20:08 <myndzi> /|
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:29:34 <zzo38> s/non-//
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.
2011-05-28
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:02:32 <pikhq> What's that, awk?
00:03:06 <Lymia> Golfscript.
00:03:06 -!- FireFly has quit (Quit: swatted to death).
00:03:17 <pikhq> Aaah.
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:13:34 <variable> oerjan: pikhq: any ideas?
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:17:49 <olsner> sounds boring
00:19:20 <oerjan> hm doing this in norwegian is not as easy as i thought
00:19:30 <Vorpal> night
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:20:43 <Lymia> I wish you luck.
00:20:54 <oerjan> FUNNY GUY
00:21:09 <olsner> hur säger man lycka till på norska nu då?
00:21:15 <oerjan> lykke til
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:14 <oerjan> heh
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:23:46 <oerjan> *happen to
00:23:53 <Lymia> いいえ
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:25:39 <pikhq> oerjan: No idea.
00:25:43 <pikhq> Lymia: tsunami
00:25:52 <pikhq> :P
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:25 <pikhq> *ouch ouch ouch*
00:26:31 <Lymia> pikhq, nope.
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:27:48 <Lymia> Or at least math.
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:28:41 <oerjan> just wrong?
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:34 <pikhq> *Correct*, yes.
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:36:57 <oerjan> oh?
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:39:53 <oerjan> *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:40:36 <pikhq> Pretty sure.
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:29 <pikhq> *To the end*.
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:29 <oerjan> well...
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:43:11 <oerjan> (lost kingdom?)
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:48:21 <pikhq_> I have been.
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:53:03 <oerjan> hm... i guess.
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:42 <oerjan> and
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:11:47 <oerjan> pikhq_: ^
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:22:47 <oerjan> yay
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:25:29 <oerjan> mhm?
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:28:18 <Lymia> Made of win.
02:30:31 <pikhq> Oooor not.
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:56:55 <Sgeo_> Lymia, oooh
02:57:09 <Sgeo_> "32-bit versions only
02:57:10 <pikhq> Oh, I see. Minor issue in my DCE.
02:57:10 <Sgeo_> "
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.
02:59:03 <oerjan> DCE?
03:00:36 <oerjan> pikhq: DCE?
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:12:55 <pikhq_> 1.2 second build.
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:28:04 <oerjan> *require
03:29:05 <oerjan> well, nothing based on lists
03:29:51 <pikhq_> I'm using Ints, anyways.
03:30:23 <oerjan> ah
03:30:52 <oerjan> definitely should work for those
03:33:05 <pikhq_> Welp, my code generator is using half the time now.
03:33:16 <pikhq_> And 44% of the RAM.
03:37:23 <pikhq_> Thanks, oerjan, for the order-of-magnitude increase.
03:38:22 <oerjan> yay
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:36 <pikhq_> No.
03:47:49 <pikhq_> You'll note that I do not take the fixed point of the optimisations anymore.
03:47:54 <oerjan> aha
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:05:42 <pikhq_> DVD nowadays.
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:07:29 <Lymia> pikhq_, hah.
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:39 <lifthrasiir> gah, i just woke up.
04:40:50 <lifthrasiir> @note
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:23 <lambdabot> usage: @vote <poll> <choice>
04:42:29 <lifthrasiir> ..what?
04:42:36 <oerjan> lifthrasiir: @tell
04:42:46 <lifthrasiir> ah, okay.
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:42:54 <lambdabot> Consider it noted.
04:43:05 <fizzie> Heh, "noted".
04:43:15 <lifthrasiir> so lambdabot will tell him right after he joins again?
04:43:23 <oerjan> right after he speaks
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.
04:59:40 <hagb4rd> good day!
05:01:00 <oerjan> morning!
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:21 <Lymia> I woner.
06:28:24 <Lymia> wonder*
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:43 <Sgeo_> To kill moths
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:10 <oerjan> aha
06:44:18 <Sgeo_> I think it left my room
06:44:31 <Sgeo_> No, still here
06:44:36 <oerjan> i thought it was unhealthy to use a computer screen without ambient light...
06:44:52 <Sgeo_> How so?
06:45:06 <oerjan> harder on the eyes?
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:03 <oerjan> *-i
06:47:11 <oerjan> yeah right
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:53:38 * Sgeo_ cries
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:57:56 <Sgeo_> hm?
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:27 <coppro> Sgeo: Mozilla did it
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 <Vorpal> w. t. f.
09:59:08 <lambdabot> Vorpal: You have 1 new message. '/msg lambdabot @messages' to read it.
09:59:18 <Vorpal> hm
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> %.c : %.pyx
10:01:23 <Vorpal> $(CYTHON) $(CYTHONFLAGS) -a $^
10:01:23 <Vorpal> %.so : %.c
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:20 <Vorpal> oh found it
10:03:22 <Vorpal> http://www.gnu.org/s/hello/manual/make/Chained-Rules.html
10:03:26 <Vorpal> hm, how to avoid that
10:07:24 <Vorpal> right, found it
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:20 <Vorpal> !bf_txtgen test
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:14 <Vorpal> I see
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:53 <Vorpal> err
11:10:56 <Vorpal> the other way around I meant
11:11:17 <CakeProphet> hmmm
11:11:22 <CakeProphet> can go both ways depending on what you mean.
11:11:31 <Vorpal> hm, okay
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:12:16 <Vorpal> yeah
11:13:16 <CakeProphet> Sgeo: use Perl instead.
11:13:35 <Patashu> lol use perl in SL
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:33 <CakeProphet> bind {$_ + 1} $monad_int
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:08 <CakeProphet> if you did some like.
11:18:21 <CakeProphet> bind ($[\&&]) {...}
11:18:35 <CakeProphet> then you could pass a coderef or a literal anonymous block.
11:18:54 <CakeProphet> ...for fun and profit.
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:23:54 <CakeProphet> Vorpal: surely it's in CPAN...
11:24:06 <CakeProphet> yep, there it is.
11:24:09 <Vorpal> heh
11:24:10 <CakeProphet> Class::Monad
11:24:18 <CakeProphet> er Class::Monadic rather
11:24:22 <Vorpal> CakeProphet, what about functors?
11:24:40 <CakeProphet> oh wait this is something different
11:24:45 <CakeProphet> monadic methods are "singleton" methods
11:24:49 <CakeProphet> whatever that means.
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:07 <CakeProphet> but Monad helper functions? possibly.
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:27:19 <Vorpal> :D
11:28:11 <CakeProphet> well it's not like there's a type system or anything...
11:28:27 <CakeProphet> well, there is, but not a static one.
11:29:06 <Vorpal> CakeProphet, hm what about untyped monads...
11:29:10 <Vorpal> would that even work?
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:17 <CakeProphet> so, do notation is possible.
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:32 <CakeProphet> ...sounds horrid.
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:34:46 <CakeProphet> $monad >= {...}
11:34:58 <CakeProphet> I doubt it.
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:42:43 <Vorpal> heh
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:20:32 <Sgeo> ?
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:14 <oerjan> (x,) ?
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:09 <oerjan> huh
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:23 <Vorpal> oerjan, :P
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:36 <Vorpal> fizzie, ah
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:05 <fizzie> [1, 3, 5, 7, 9]
14:53:13 <fizzie> That sort of thing.
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:26 <Vorpal> yeah
14:54:32 <Vorpal> oerjan, the [] makes the difference
14:54:35 <Vorpal> ugly indeed
14:54:36 <fizzie> While the earlier one passes a generator to the list constructor.
14:54:37 <oerjan> huh
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:56:37 <lambdabot> [1,3,5,7,9]
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:03:53 <oklopol> hmm that too
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:21 <fizzie> I give up.
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:28 <oklopol> lol
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:06:58 <fizzie> Probably not much.
15:10:00 <oklopol> the fizitive
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:10 <oklopol> haha lol we do
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:04 <olsner> surprisative :D
15:13:17 <oklopol> surprisative!.
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:17:16 <Vorpal> heh
15:35:48 -!- BeholdMyGlory has joined.
15:41:32 -!- iconmaster has joined.
15:41:41 <iconmaster> ?join #nethack
15:41:42 <lambdabot> Not enough privileges
15:41:53 <iconmaster> oops
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:07:29 <Phantom_Hoover> What are the haps my friends.
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:08:55 <Phantom_Hoover> Ah, you are Pygmalioning?
16:09:51 <Sgeo> ?
16:10:11 <Phantom_Hoover> http://en.wikipedia.org/wiki/Pygmalion_(mythology)
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:19:06 <Sgeo> hmm?
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:21:32 <Phantom_Hoover> Sgeo, remind me how long you've been playing SL for?
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:01:20 <Phantom_Hoover> I apologise, pikhq.
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:03:53 <Vorpal> ah
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:07:17 <Vorpal> same
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:43 <pikhq> Wow.
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:02 <copumpkin> is it a common belief?
17:35:08 <copumpkin> I've always found that hard to believe
17:35:10 <Phantom_Hoover> Distressingly.
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:23 * Vorpal googles
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:02 <Phantom_Hoover> May god have mercy on us all.
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:20:51 <Vorpal> (typo)
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:21 <Vorpal> or well
18:29:23 <Vorpal> error anyway
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:00 <pikhq> Yes.
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:33:13 <pikhq> Think so.
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:21:54 <Phantom_Hoover> Hmm, no elliott today.
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:23 <pikhq> Vorpal: No idea.
20:25:29 <Vorpal> <Phantom_Hoover> Hmm, no elliott today. [...] * elliott (~elliott@unaffiliated/elliott) has joined #esoteric
20:25:32 <Vorpal> :D
20:26:27 <pikhq> Apparently, "hantà" (ハンダ、半田).
20:26:32 <pikhq> For the noun.
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> 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:40 <elliott> aww, he's not here
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:29:17 <Vorpal> as in the element 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:31:30 <Vorpal> hm
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:34:51 <Vorpal> ah
20:35:24 <pikhq> Anyways, "semiconductor" in Japanese is pretty obviously a calque from the English...
20:35:31 <Phantom_Hoover> http://i.imgur.com/RHtwS.jpg
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:37:46 <elliott> [asterisk]too.
20:38:32 <pikhq> Not only are the English classes heavily removed from any sensible pedagogy, they are *fucking lying* to students.
20:38:41 <Phantom_Hoover> pikhq, well, yes.
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:03 <pikhq> Riiiight.
20:44:04 <Phantom_Hoover> pikhq, ah, you see, we're even weirder in Scotland.
20:44:05 <elliott> and symbolism
20:44:31 <Phantom_Hoover> The Higher exam, the only one I've done, /gives literally indication what texts you should use/.
20:44:46 <Phantom_Hoover> It has to be in English and... that's it.
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:45:48 <pikhq> ?
20:45:59 <Phantom_Hoover> Oh, *no indication
20:46:08 <pikhq> Thanks for curing my confusion.
20:46:19 <Vorpal> Phantom_Hoover, huh
20:46:24 <pikhq> Define "English".
20:46:25 <pikhq> :P
20:46:36 <elliott> givesl iterally induction
20:46:41 <elliott> [asterisk]gievs literally
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:37 <Phantom_Hoover> Wait, no, you can't.
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:20 <Phantom_Hoover> Oh god pedantry
20:48:22 * Phantom_Hoover ducks
20:48:36 <Phantom_Hoover> pikhq, go on
20:48:47 <pikhq> At a minimum, Old English, Middle English, and Modern English.
20:48:55 <Vorpal> -_-
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:50:47 <Vorpal> pikhq, indeed.
20:51:20 <pikhq> There's even often gradual borders between contemporary languages...
20:51:42 <Vorpal> pikhq, indeed!
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:09 <elliott> seriously?
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:41 <ais523> even better
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:07:59 <elliott> lol
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:38 <elliott> Vorpal: hmm, good point
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:44 <Vorpal> elliott, yes.
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:37 <Vorpal> indeed
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:03 <elliott> Yes there is.
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:14:03 <Vorpal> hm
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:35 <Vorpal> for example:
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:18:54 <Vorpal> elliott, hm true
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:20:58 <Vorpal> XD
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:44 <elliott> Also the KDE 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:08 <elliott> And no, they're fanboys.
21:23:34 <Vorpal> elliott, it goes from about 1 minute to slightly less than half a minute
21:23:49 <elliott> Yes; irrelevant.
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 <elliott> LostKng is irrelevant.
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:07 <Vorpal> hm
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:25 <Vorpal> -_-
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:00 <oklopol> *is
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:12 <elliott> Completely impossible.
21:29:26 <Vorpal> elliott, err?
21:29:35 <elliott> Completely. Impossible.
21:29:38 <Vorpal> I would say it is possible
21:29:39 <Phantom_Hoover> Vorpal, also, I am the pope.
21:29:42 <Vorpal> but a stupid idea
21:29:47 <elliott> A stupid idea?
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:08 <elliott> Not speed
21:31:11 <oklopol> ohhh
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:40 <elliott> ...
21:32:43 <Vorpal> elliott, know any?
21:32:44 <elliott> Vorpal: PEBBLE
21:32:51 <Vorpal> elliott, oh that, link
21:32:56 <Vorpal> hm
21:32:58 <elliott> It's on nonlogic which evaporated.
21:33:01 <elliott> Get a tarball of pikhq.
21:33:04 <Vorpal> ah
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:51 <Vorpal> pikhq, filebin?
21:33:52 <elliott> 14:50:49: <Vorpal> oerjan, I think it is a generator, rather than a comprehension.
21:33:54 <Vorpal> or such?
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:05 <elliott> Neither; it's "yield".
21:34:06 <elliott> (But latter.)
21:34:09 <elliott> Vorpal: filebin is down.
21:34:13 <elliott> pikhq: | uuencode | sprunge :-)
21:34:13 <Vorpal> huh
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:45 <elliott> Not really.
21:34:50 <elliott> You just click a link to download it. :p
21:34:56 <Vorpal> elliott, and wait iirc
21:34:58 <elliott> No.
21:34:59 <Vorpal> and what not
21:35:00 <elliott> That's the other ones.
21:35:00 <Vorpal> hm
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:24 <Vorpal> I'm not stupid
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:17 <elliott> Vorpal: seriously?
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:40 <Vorpal> elliott, hardly
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:38:56 <Vorpal> ...
21:39:07 <elliott> Congratulations, you have not been coherent for a whole five lines.
21:39:40 <Vorpal> elliott, right
21:39:52 <elliott> Six.
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:14 <Vorpal> pikhq, nice
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:42 <pikhq> And Tcllib.
21:40:45 <elliott> 17:56:04: <quintopia> (yes, i know what you were talking about, i'm not a complete idiot)
21:40:45 <elliott> Nice jab.
21:40:47 <Vorpal> elliott, hm?
21:40:55 <elliott> Vorpal: I never pinged you.
21:40:59 <Vorpal> err
21:41:01 <Vorpal> pikhq, ^
21:41:08 <Vorpal> elliott, misnick
21:41:22 <pikhq> Tcllib is another dependency of PEBBLE.
21:41:49 <pikhq> It is almost certainly in your package manager.
21:41:58 <Vorpal> right
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:11 <elliott> Still illegal.
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:42:45 <elliott> pikhq: s/Not w/W/
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:53 <elliott> And also make it LISP
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:13 <elliott> Ninja'd.
21:48:14 <pikhq> (the P is silent)
21:48:25 <Vorpal> <elliott> Ninja'd. <-- ?
21:48:26 <pikhq> Pebble's Fucked Up Compiler, Kay?
21:48:47 <elliott> Vorpal: Yes.
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:09 <Vorpal> pikhq, strange...
21:56:17 <Vorpal> pikhq, for 255 on that page:
21:56:18 <Vorpal> - (1, 1) wrapping
21:56:18 <Vorpal> >- (2, 2) wrapping
21:56:21 <oklopol> pikhq: alrighty
21:56:21 <Vorpal> wait what
21:56:23 <Vorpal> for the last one
21:56:34 <pikhq> Vorpal: Well, it uses two cells, doesn't it? :P
21:56:40 <Vorpal> pikhq, yes but WHY
21:56:44 <Vorpal> what is the point of that
21:56:45 <pikhq> Beats me.
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 <CakeProphet> !help
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 <CakeProphet> !help languages
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:37 <CakeProphet> !sh ls
22:02:39 <EgoBot> ​interps
22:02:40 <pikhq> Vorpal: PFUCK compiles to C.
22:02:50 <CakeProphet> !sh ls interps
22:02:50 <EgoBot> ​1l
22:02:56 <CakeProphet> !sh ls interps/1l
22:02:57 <EgoBot> ​1l_a.bin
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:21 <pikhq> .bfm
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:09 <pikhq> s/module/macros/
22:05:21 <Vorpal> pikhq, ah
22:05:23 <CakeProphet> weird.
22:05:48 <Vorpal> pikhq, so it is pebble.tcl or brainfucktopebble.tcl that you use?
22:05:51 <CakeProphet> !sh echo "$PATH"
22:05:52 <EgoBot> ​/usr/local/bin:/usr/bin:/bin:/usr/games
22:05:52 <Vorpal> pikhq, both are +x
22:06:06 <CakeProphet> !sh ls /
22:06:06 <elliott> brainfucktopebble obviously converts brainfuck to PEBBLE.
22:06:06 <EgoBot> ​bin
22:06:08 <Vorpal> CakeProphet, why not use HackEgo instead?
22:06:13 <elliott> I deduced this by not being an idiot.
22:06:22 <CakeProphet> Vorpal: hmmm?
22:06:23 <Vorpal> elliott, oh I read it backwards somehow
22:06:31 <Vorpal> `help
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:08 <pikhq> pebble.tcl
22:07:13 <Vorpal> !sh ls interps/1l/
22:07:14 <EgoBot> ​1l_a.bin
22:07:18 <Vorpal> !sh ls interps/1l/ -l
22:07:18 <EgoBot> ​/bin/ls: interps/1l/: Function not implemented
22:07:23 <Vorpal> !sh ls -l interps/1l/
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:26 <Vorpal> what
22:07:41 <Vorpal> pikhq, what is with stdlib/c ?
22:07:56 <pikhq> Alternate implementation of functions for the C backend.
22:08:09 <CakeProphet> `ls /
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:26 <pikhq> Yeah.
22:08:30 <Vorpal> CakeProphet, it is sandboxed. Both are.
22:08:31 <CakeProphet> `ls /usr
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:08:38 <Vorpal> pikhq, heh
22:08:39 <CakeProphet> `ls /home
22:08:40 <HackEgo> ​hackbot
22:08:46 <CakeProphet> `ls /home/hackbot
22:08:48 <HackEgo> ​hackbot.hg
22:08:53 <CakeProphet> heh
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:01 <CakeProphet> `ps
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:12:01 <CakeProphet> `find / -name '*.pl'
22:12:02 <HackEgo> No output.
22:12:12 <CakeProphet> `find / -name '*.py'
22:12:13 <HackEgo> No output.
22:12:57 <CakeProphet> `find / -name '*.txt'
22:12:59 <HackEgo> No output.
22:13:03 <CakeProphet> :(
22:16:34 <Vorpal> `run find / -name '*.txt'
22:16:35 <HackEgo> No output.
22:16:37 <Vorpal> hm
22:16:40 <Vorpal> `run find / -name '*.pl'
22:16:42 <HackEgo> No output.
22:16:43 <Vorpal> `run find / -name '*.py'
22:16:44 <HackEgo> No output.
22:16:47 <Vorpal> `run find / -name '*'
22:16:48 <HackEgo> ​/
22:16:55 <Vorpal> `run find / -type f -name '*.*'
22:16:56 <HackEgo> No output.
22:16:58 <Vorpal> eh
22:17:03 <Vorpal> `touch test
22:17:05 <HackEgo> No output.
22:17:08 <Vorpal> `ls
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:14 <HackEgo> No output.
22:17:17 <Vorpal> okay
22:17:25 <CakeProphet> `fine / -name *.pl -printf
22:17:26 <elliott> `run which find
22:17:26 <Vorpal> CakeProphet, I don't know why it does that, but well
22:17:27 <HackEgo> No output.
22:17:27 <HackEgo> ​/usr/bin/find
22:17:37 <elliott> `find / -name \*
22:17:39 <HackEgo> No output.
22:17:40 <elliott> `run find / -name \*
22:17:41 <Vorpal> `rm test
22:17:42 <HackEgo> ​/
22:17:43 <HackEgo> No output.
22:17:45 <elliott> just needs two>andone
22:17:49 <elliott> to see errors
22:17:58 <Vorpal> `run find / -type f -name '*.*' 2>&1
22:17:59 <HackEgo> ​/usr/bin/find: `/': Function not implemented
22:18:03 <Vorpal> what
22:18:13 <Vorpal> Gregor, please explain this
22:18:59 <CakeProphet> I've never seen 2>&1 before.
22:19:11 * CakeProphet just recently learned some advanced bash stuff.
22:19:30 <elliott> That
22:19:34 <elliott> that is not advanced
22:19:36 <Vorpal> CakeProphet, redirect fd 2 to fd 1
22:19:40 <Vorpal> and yeah not advanced
22:19:43 <elliott> <Vorpal> Gregor, please explain this
22:19:44 <elliott> plash
22:19:47 <elliott> Explained.
22:19:50 <Vorpal> elliott, hm probably yeah
22:20:00 <Vorpal> elliott, weird errno for it
22:20:00 <elliott> No, definitely.
22:20:17 <elliott> `run rm -rf /bin 2>&1
22:20:18 <HackEgo> ​/bin/rm: cannot remove `/bin': Function not implemented
22:20:22 <Vorpal> heh
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:32 <Vorpal> elliott, hm
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:15 <Phantom_Hoover> I don't think that's how value works...
22:22:22 <CakeProphet> `cd / && find .
22:22:24 <HackEgo> No output.
22:22:34 <CakeProphet> `cd / && find . 2>&1
22:22:35 <HackEgo> No output.
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:43 <CakeProphet> `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:22:48 <Vorpal> yeah
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:23 <CakeProphet> ah
22:23:36 <Vorpal> well, execev or so probably
22:23:51 <Vorpal> execv*
22:24:15 <elliott> Vorpal: no, it actually only passes a single argument
22:24:18 <elliott> so that addquote etc. work
22:24:28 <Vorpal> elliott, heh
22:24:41 <Vorpal> `type run
22:24:43 <HackEgo> No output.
22:24:47 <Vorpal> `run type run
22:24:48 <HackEgo> No output.
22:24:52 <Vorpal> `run type run 2>&1
22:24:53 <HackEgo> ​/bin/bash: line 1: type: run: not found
22:24:55 <Vorpal> mhm
22:25:06 <Vorpal> elliott, I had hoped run was just eval "$1" :P
22:25:27 <CakeProphet> ..Perl?
22:25:34 <Vorpal> CakeProphet, what?
22:25:45 <CakeProphet> oh, bash I guess.
22:25:50 <Vorpal> yes...
22:26:26 <CakeProphet> that would, you know, make more sense.
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:08 <elliott> i.e. libc.
22:28:59 <elliott> How does subtraction work.
22:29:18 <CakeProphet> you add the negative of the right-hand operand. :)
22:29:55 <CakeProphet> for example, 2-1 becomes 2+(-1)
22:29:58 <CakeProphet> :P
22:30:44 <Vorpal> <elliott> How does subtraction work. <-- seriously?
22:31:27 <elliott> yes.
22:31:29 <elliott> HOW.
22:32:12 <CakeProphet> With our minds I guess?
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:15 <elliott> HOW
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:20 <elliott> GAH.
22:34:28 <elliott> HOW DOES SUBTRACTION WORK
22:34:38 <Vorpal> elliott, I told you above
22:34:49 <Vorpal> elliott, which language is that btw? haskell?
22:35:03 <elliott> Haskell type system.
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:36:36 <elliott> it's like java
22:36:59 <Vorpal> heh
22:37:34 <CakeProphet> elliott: as long as nothing matches /Manager/
22:37:38 <CakeProphet> then it's still not Java.
22:37:40 <elliott> managerfactorymanager
22:37:48 <CakeProphet> once you have a SubHelperManagerThatIsRealHelperHelperManager
22:37:57 <CakeProphet> then you might actually be coding in Java.
22:39:35 <CakeProphet> you know
22:39:44 <CakeProphet> I don't think the universe intended for us to write programs in type systems.
22:40:19 <Vorpal> `ls /proc/self
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:23 <Vorpal> `ls /proc/self/fd
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:40:58 <Vorpal> `ls -l /proc/self/exe
22:40:59 <HackEgo> No output.
22:41:02 <Vorpal> `ls -l /proc/self/exe 2>&1
22:41:04 <HackEgo> No output.
22:41:06 <CakeProphet> `ls /proc/self/personality
22:41:07 <HackEgo> ​/proc/self/personality
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:16 <Vorpal> huh
22:41:20 <Vorpal> nice one
22:41:22 <CakeProphet> `cat /proc/self/personality
22:41:23 <HackEgo> ​00000000
22:41:32 <CakeProphet> what a boring personality.
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:21 <Vorpal> err
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:07 <Vorpal> hm not that
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:56 <elliott> `run ls /proc/self
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:21 <CakeProphet> `perl -e 'open 0; print <0>'
22:44:22 <HackEgo> No output.
22:44:25 <CakeProphet> heh.
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:45 <elliott> wat
22:44:56 <Vorpal> HackEgo, buggered if I knew
22:45:05 <Vorpal> `run cat /proc/self/cmdline
22:45:06 <CakeProphet> ` echo 'open 0; print <0>' > quine.pl
22:45:07 <HackEgo> ​/usr/bin/python
22:45:07 <HackEgo> No output.
22:45:16 <CakeProphet> `perl quine.pl
22:45:18 <HackEgo> No output.
22:45:21 <CakeProphet> .. :(
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:45:43 <Vorpal> what
22:45:52 <Vorpal> hm
22:46:03 <Vorpal> `run cat /proc/self/cmdline | tr '\0' ' '
22:46:03 <elliott> Oh, right.
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:46:21 <HackEgo> ​ice -a=-n10 -e bash
22:46:24 <elliott> It'll exec itself.
22:46:28 <Vorpal> right nothing cut off
22:48:17 <CakeProphet> `ls
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:02 <CakeProphet> `ls quine
22:49:03 <HackEgo> ​quine
22:49:09 <CakeProphet> ..lol
22:49:17 <Vorpal> `cat quine
22:49:18 <HackEgo> ​`cat quine
22:49:22 <elliott> Vorpal: Why would it?
22:49:23 <Vorpal> eh
22:49:25 <elliott> `rm quine
22:49:26 <HackEgo> No output.
22:49:31 <Vorpal> elliott, what was quine
22:49:35 <Vorpal> <Vorpal> `cat quine
22:49:35 <Vorpal> <HackEgo> ​`cat quine
22:49:37 <Vorpal> come on
22:49:40 <elliott> Vorpal: A file.
22:49:40 <elliott> `cat bluhbluh
22:49:42 <HackEgo> No output.
22:49:42 <Vorpal> right
22:49:49 <elliott> `run ls -lh bluhbluh
22:49:50 <HackEgo> ​-rw-r--r-- 1 5000 5000 0 May 28 22:49 bluhbluh
22:50:02 <elliott> `quote
22:50:02 <elliott> `quote
22:50:03 <elliott> `quote
22:50:03 <elliott> `quote
22:50:03 <elliott> `quote
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:55 <CakeProphet> `echo 'open 0; print <0>' > quine.pl
22:50:56 <HackEgo> ​'open 0; print <0>' > quine.pl
22:51:13 <elliott> use `run
22:51:16 <elliott> but that is a cheat quine
22:51:21 <CakeProphet> elliott: shhh
22:51:27 <CakeProphet> `run echo 'open 0; print <0>' > quine.pl
22:51:28 <Phantom_Hoover> `quote
22:51:29 <HackEgo> No output.
22:51:29 <Phantom_Hoover> `quote
22:51:29 <Phantom_Hoover> `quote
22:51:29 <Phantom_Hoover> `quote
22:51:30 <Phantom_Hoover> `quote
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:04 <Vorpal> `quine.pl test
22:54:06 <HackEgo> No output.
22:54:12 <Vorpal> nope doesn't work
22:54:13 <CakeProphet> `perl quine.pl
22:54:15 <olsner> speaking of carbonated coffee, coffee and coca cola is a nice combination
22:54:15 <HackEgo> ​open 0; print <0>
22:54:21 <Vorpal> ah
22:54:36 -!- hagb4rd has joined.
22:55:52 <CakeProphet> Vorpal: it's very much cheating though.
22:56:01 <elliott> olsner: Er, nice :P
22:56:07 <elliott> In a really horrific way.
22:56:36 <CakeProphet> hmmm, I wonder.
22:57:11 <CakeProphet> `run echo 'print <open 0>' > quine2.pl
22:57:13 <HackEgo> No output.
22:57:17 <CakeProphet> `perl quine2.pl
22:57:19 <HackEgo> ​open0
22:57:26 <CakeProphet> ..heh, not quite.
22:57:38 <CakeProphet> `cat quine2.pl
22:57:39 <HackEgo> ​print <open 0>
22:57:58 <CakeProphet> ...though I have no idea why it produced that output.
22:58:05 <CakeProphet> `rm quine2.pl
22:58:06 <HackEgo> No output.
22:58:22 <Vorpal> night
22:58:33 <CakeProphet> good night.
22:59:40 <CakeProphet> `run echo -e '#!/bin/perl\nopen 0; print ()=<0>' > quine2.pl
22:59:42 <HackEgo> No output.
22:59:50 <CakeProphet> `run ./quine2.pl
22:59:51 <HackEgo> No output.
22:59:55 <CakeProphet> awww
23:00:42 <CakeProphet> honestly -e should be default and -E should be the option you have to type, for echo.
23:00:58 <CakeProphet> well, maybe not.
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:13 <Phantom_Hoover> Honestly, augur.
23:03:14 <CakeProphet> `rm quine2.pl
23:03:15 <HackEgo> No output.
23:03:16 <Phantom_Hoover> I'm already dead.
23:03:22 -!- MigoMipo has quit (Read error: Connection reset by peer).
23:03:39 -!- pikhq_ has joined.
23:03:48 <augur> o
23:03:57 <CakeProphet> `run echo -e '#!/bin/perl\nopen 0; print (()=<0>)' > quine2.pl
23:03:58 <HackEgo> No output.
23:04:05 <CakeProphet> `perl quine2.pl
23:04:06 <HackEgo> No output.
23:04:45 <CakeProphet> oh wait, duh.
23:04:59 <CakeProphet> `run echo -e '#!/bin/perl\nopen 0; print while <0>' > quine2.pl
23:05:01 <HackEgo> No output.
23:05:08 <CakeProphet> `perl 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:57 <pikhq_> BIOSes suck.
23:06:58 <elliott> AMD To Support Coreboot On All Upcoming Processors - Slashdot
23:07:00 <elliott> How... useful :P
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:14 <HackEgo> No output.
23:08:33 <CakeProphet> `wget --help
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:08:36 <elliott> CakeProphet: `fetch
23:08:59 <CakeProphet> `fetch --help
23:09:07 <elliott> It is just `fetch url.
23:09:13 -!- quintopia has joined.
23:09:17 -!- quintopia has quit (Changing host).
23:09:18 -!- quintopia has joined.
23:09:18 <CakeProphet> and then you use > ?
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:07 <elliott> CakeProphet: No.
23:10:09 <elliott> "`fetch url".
23:10:10 <elliott> That is it.
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:35 <coppro> lies
23:10:36 <CakeProphet> `run fetch 'http://www.perlmonks.org/bare/?abspart=1;displaytype=displaycode;node_id=119526;part=1'
23:10:38 <HackEgo> No output.
23:10:39 <CakeProphet> elliott: lame
23:10:43 <CakeProphet> `ls
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:52 <coppro> man.
23:10:56 <elliott> CakeProphet: No quotes.
23:10:57 <coppro> it feels so weird to have money
23:10:58 <elliott> And no `run.
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:35 <CakeProphet> elliott: never
23:11:47 <CakeProphet> `ls
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:04 <CakeProphet> `run mv *index quine3.pl
23:12:05 <HackEgo> No output.
23:12:11 <CakeProphet> `cat quine3.pl
23:12:13 <HackEgo> No output.
23:12:26 <CakeProphet> ..oh, lol
23:12:33 <CakeProphet> `run mv index* quine3.pl
23:12:34 <HackEgo> No output.
23:12:37 <CakeProphet> `cat quine3.pl
23:12:38 <HackEgo> ​syntax error at =# line 2, at EOF. \ Execution of =# aborted due to compilation errors..
23:12:50 <CakeProphet> `perl quine3.pl
23:12:51 <HackEgo> No output.
23:12:57 <CakeProphet> they LIED.
23:13:52 <CakeProphet> `perl quine3.pl 2<&1
23:13:53 <HackEgo> No output.
23:14:07 <elliott> <CakeProphet> `run mv *index quine3.pl
23:14:11 <elliott> wrong location of-
23:14:13 <elliott> oh you fixed it
23:14:19 <elliott> CakeProphet: fail
23:14:22 <elliott> it's > not <
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:14:36 <elliott> pikhq_: Aweome.
23:14:44 <CakeProphet> `perl quine3.pl 2>&1
23:14:46 <HackEgo> No output.
23:15:28 <CakeProphet> elliott: would help if I understood what it is. Is it (2)>(&1) or is it 2(>&)1 or....?
23:15:56 <elliott> Former.
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:20 <elliott> So 2>foo.txt works.
23:16:26 <elliott> Prefixing an ampersand means "to an fd, not a file".
23:16:34 <CakeProphet> ah
23:17:23 <CakeProphet> in any case this syntax error is not a quine.
23:17:30 <CakeProphet> or I'm doing something wrong.
23:17:31 <elliott> <CakeProphet> `perl quine3.pl 2>&1
23:17:31 <elliott> Fail.
23:17:40 <elliott> Use `run for sh.
23:17:44 <CakeProphet> oh right
23:17:46 <elliott> What you did was perl 'quine3.pl 2>&1'.
23:17:55 <CakeProphet> `run 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:02 <CakeProphet> there we go. :P
23:18:08 <CakeProphet> the best quine of all.
23:18:16 <CakeProphet> except the # needs to be changed to the file name
23:18:54 <CakeProphet> #=, even
23:21:17 <CakeProphet> `run perl -pi 's/#=/quine3.pl/g' quine3.pl
23:21:19 <HackEgo> No output.
23:21:27 <CakeProphet> `cat 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:37 <HackEgo> No output.
23:21:39 <CakeProphet> `cat quine3.pl
23:21:40 <HackEgo> ​syntax error at =# line 2, at EOF. \ Execution of =# aborted due to compilation errors..
23:21:55 <CakeProphet> ...I see
23:22:36 <CakeProphet> `run perl -pie 's/=#/quine3.pl/g' quine3.pl
23:22:38 <HackEgo> No output.
23:22:45 <CakeProphet> `cat 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:23:02 <CakeProphet> *know even
23:24:05 <CakeProphet> `run perl -pi -e 's/=#/quine3.pl/g' quine3.pl
23:24:06 <HackEgo> No output.
23:24:14 <CakeProphet> `cat 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:18 <CakeProphet> ah
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:24:50 <CakeProphet> *now ....
23:25:54 <elliott> `run quine3.pl
23:25:55 <HackEgo> No output.
23:26:00 <elliott> `run perl quine3.pl
23:26:02 <HackEgo> No output.
23:26:05 <CakeProphet> yeah it's stderr
23:26:10 <elliott> CakeProphet: replace the newline in it with " \ " for extra points :D
23:26:20 <pikhq_> ... What the *hell*?
23:26:47 <elliott> pikhq_: ?
23:26:55 <pikhq_> wodim, stop trying to write with my DVD-ROM drive.
23:27:12 <elliott> Woe di me.
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:38 <CakeProphet> nonsense.
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:48 <elliott> Lame.
23:27:50 <pikhq_> Y'know, like anyone sane would expect?
23:27:53 <CakeProphet> properness is for stuffy British gents
23:28:03 <elliott> pikhq_: And thus GHC six.
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:15 <elliott> CakeProphet: sed -i
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:31:26 <elliott> rather than -pi -e.
23:31:47 <CakeProphet> it didn't work for some reason.
23:31:59 <elliott> Hmm.
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:23 <CakeProphet> is it incredibly stupid, in other words.
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:34 <elliott> But it still uses s///.
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:36:28 <CakeProphet> *started
23:36:33 <CakeProphet> my typo rate is ridiculous today.
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:40 <elliott> Equals Z b1 b,
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:42:49 <elliott> (qt, rm)
23:42:50 <elliott> Fuck.
23:43:06 <Deewiant> Where's that from
23:43:43 <elliott> Deewiant: My code.
23:43:52 <CakeProphet> elliott: perhaps this is an indication that you shouldn't be doing this craziness. ;)
23:43:53 <Deewiant> What code
23:44:03 <elliott> Deewiant: It's a snowman in disguise.
23:44:26 <Deewiant> Cleverly disguised
23:44:48 <elliott> Yes.
23:44:49 <elliott> Very.
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:46:04 <elliott> Oh here we go.
23:47:29 <CakeProphet> elliott: perhaps if you write a Haskell compiler in Haskell types you can implement better error messages.
23:48:36 <elliott> X-D
23:48:37 <elliott> Totally.
23:50:16 * Phantom_Hoover → sleep
23:50:19 -!- Phantom_Hoover has quit (Quit: Leaving).
23:50:43 <CakeProphet> VACUOUS
23:53:47 <CakeProphet> what, Perl has a printf? why?
23:53:58 <CakeProphet> I guess for padding?
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:56:23 <CakeProphet> zzo38: yes it does.
23:57:31 <CakeProphet> except sprintf is in-place I believe, and Python's % is not
23:57:36 <CakeProphet> %= is though
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:48 <CakeProphet> ah
23:58:50 <zzo38> Since these kind of scripting languages do not work that way, it would just return the new value instead
2011-05-29
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:06:34 <elliott> people use refs?
00:06:51 <CakeProphet> yep
00:07:03 <zzo38> Probably it would be useful sometimes, isn't it?
00:07:12 <CakeProphet> somewhat often, actually.
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:40 <elliott> Oh, right.
00:14:48 <elliott> This is because Perl sucks.
00:15:02 <Lymia> 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:17:56 <pikhq> I'm... Intrigued.
00:18:17 <monqy> good name there
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:19:44 <elliott> monqy: browses the web
00:20:13 <monqy> does it have any features besides that
00:20:16 <monqy> I see a back button
00:20:17 <monqy> that's something
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:09 <monqy> all better now
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:34 <monqy> I have problems
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:40 <CakeProphet> I agree that's kind of strange.
00:25:46 <monqy> it shows https://
00:25:51 <pikhq> I've got a handful of issues with Chrome.
00:25:52 <elliott> yes, because https is actually noteworthy
00:25:53 <elliott> ftp:// too
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:21 <CakeProphet> one thing Chrome never does is crash.
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 <monqy> rather
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:16 <elliott> monqy: press backspace
00:27:18 <monqy> that's rare though
00:27:19 -!- FireFly has quit (Quit: swatted to death).
00:27:20 <elliott> that sucks i agree
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:34 <CakeProphet> oh... yes.
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:17 <monqy> and vice-versa
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:17 <CakeProphet> and then it's like "oh no, *ctrl+r"
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:49 <elliott> monqy: yes, install an ai
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 <elliott> oh wait it's in Debian
00:32:40 <zzo38> In Windows it is obvious, in UNIX it is not clear.
00:32:41 <elliott> heh
00:32:49 <elliott> okay them what about...
00:32:54 <elliott> applesmc-dkms????
00:32:57 <pikhq> monqy: Has widgets that look and act like the widgets in *every other damned program*.
00:33:05 <monqy> oh
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:33:42 <elliott> Oh good.
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:34:53 <CakeProphet> there's an extension for that. :3
00:34:53 <CakeProphet> ...
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:03 <elliott> downright wheeze factor
00:36:03 <elliott> y
00:36:07 <elliott> whactory
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:25 <elliott> zzo38: gtk tab bars do
00:36:27 <pikhq> zzo38: That's more a GTK behavior.
00:36:27 <elliott> xfce uses gtk
00:36:36 <CakeProphet> `tetris
00:36:37 <HackEgo> No output.
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:49 <elliott> pikhq: BUT I AM SCARED
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:46:41 <Lymia> No.
00:46:59 <Lymia> zzo38, actually.
00:47:04 <Lymia> Link to a C compiler that supports your target.
00:47:07 <Lymia> Make the entire program a quine.
00:47:11 <Lymia> Modify it.
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:08:21 <lament> 7.
01:09:26 <zzo38> Wbich seven things?
01:10:07 <lament> i don't know
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 <elliott> hugs chrome
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:26:57 <Patashu> BROWSER WARS
01:26:58 <Patashu> *pew pew pew*
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:28:59 <oerjan> yes i do
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:38 <elliott> oerjan: grep /geom/
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:38:56 <Patashu> oh, -every- dimension
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:51 <pikhq> Strange.
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:07 <oerjan> elliott: O_o
01:41:38 <elliott> what.
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:06 <elliott> but that's your job
01:42:15 <oerjan> @_@
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:04 <elliott> pah
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:48:40 <elliott> klein bottle world
01:48:42 <elliott> great
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:49:44 <oerjan> *this)
01:50:03 <elliott> oerjan: can't circumnavigate an infinite world :P
01:50:11 <elliott> but yeah i see
01:50:30 <oerjan> elliott: um these are twofold covers, and actually _smaller_ than the sphere and torus in a sense
01:50:42 <elliott> right
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:37 <augur> cmon guys
01:54:38 <augur> plural logic
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:38 * CakeProphet has been reading the Perl 6 spec.
01:58:40 <CakeProphet> it's so... weird.
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:05 <CakeProphet> neither of those.
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
01:59:39 <CakeProphet> ..yeah it's pretty stupid.
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:38 <oerjan> wtf
02:00:58 <CakeProphet> yeah they've added more OO, but it's apparently optional.
02:01:02 <monqy> very readable
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:01:54 <CakeProphet> I use it quite often, yes.
02:02:00 <monqy> I only use perl for the <>
02:02:05 <CakeProphet> hahaha.
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:02:47 <CakeProphet> I get yelled at in #python
02:02:53 <oerjan> XD
02:03:03 <lament> haha, i keep forgetting python has it
02:03:17 <CakeProphet> it might even be gone now.
02:03:41 <oerjan> lament: wait that wasn't a joke (entirely)?
02:03:57 <lament> waht
02:04:15 <oerjan> *CakeProphet: too
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:38 <CakeProphet> yes
02:05:59 <CakeProphet> but then there's also: for @list -> $x,$y,$z { ... }
02:06:14 <CakeProphet> and for @list <-> $x,$y,$z { ... }
02:06:18 <lament> perl is the worst
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:08:23 <CakeProphet> latter
02:08:53 <Patashu> circumfix?
02:09:00 <CakeProphet> <<<<like this>>>>
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:20 <oerjan> aha
02:11:28 <CakeProphet> @#_ :)
02:11:28 <lambdabot> Maybe you meant: . ? @ bf do ft id pl rc v wn
02:11:42 <CakeProphet> er actually $#_
02:11:43 <oerjan> what?
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:27 <CakeProphet> oh
02:12:38 <oerjan> if you wanted for to be able to be defined
02:13:10 <CakeProphet> anyways, be back later. Must party.
02:13:32 <oerjan> communist!
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:16 <Patashu> lmao
02:15:46 <oerjan> perl 6, the language that broke the camel's back
02:15:55 <lament> heh
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:18:46 <Patashu> lol
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:29:08 * oerjan readies the earplugs
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:50:41 <Lymia> *wince*
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:14 <elliott> pikhq: What phone?
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:03:46 <elliott> pikhq: Money's worth :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:37 <elliott> Befunge-93 right?
03:08:43 <elliott> Not -98?
03:08:53 <elliott> I assume [] and ()-enclosed things are some language extension.
03:09:01 <elliott> pikhq: No 99 bottles.
03:09:03 <SingingBoyo> In some ways. I added procedures to my interpreter. which are those brackets, yes
03:09:08 <pikhq> Oh, dur.
03:09:11 <elliott> Not procedures, instructions.
03:09:17 <pikhq> Clearly, I suck!
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:10:14 <SingingBoyo> yes
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:13:00 <elliott> Ah.
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:14:57 <elliott> :)
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:25 <elliott> oh
03:25:26 <elliott> DUH
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:29 <elliott> YESSSSSSSSSSS
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:30:23 <SingingBoyo> lol
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:44 <elliott> oh, duh
03:33:56 <elliott> undefined :: (DivLoop T100 T5 qt rm) => (qt,rm)
03:33:56 <elliott> :: (O (O (I (O (I Z)))), Z)
03:33:57 <elliott> woot
03:34:00 <elliott> :)
03:34:03 <elliott> divmod works
03:37:32 -!- azaq23 has quit (Ping timeout: 246 seconds).
03:40:12 <pikhq> *sigh*
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:23 <Patashu> #firstworldproblems
03:41:24 <elliott> It's ridiuclous.
03:41:31 <elliott> Patashu: Shaddap :p
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?
03:58:43 <elliott> Yes, I agree.
03:58:59 <SingingBoyo> lol
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:26 <oerjan> do you have a paste?
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:19 <oerjan> ah
04:10:43 <elliott> /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:13:39 <SingingBoyo> heh
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:25:30 <oerjan> haskell wanted by ICC
04:29:06 <elliott> so its half past five
04:29:07 <elliott> oerjan
04:29:09 <elliott> it would be
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:45 <SingingBoyo> lol
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:10 <SingingBoyo> nice
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> oerjan
04:32:32 <elliott> <elliott> it would be
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:33 <elliott> oerjan: quite urgent
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:33:25 <elliott> oerjan: ok
04:33:26 <elliott> cya
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:01:02 <pikhq_> Showers, even.
05:09:16 <oerjan> this hail show brought to you by ...
05:10:16 <SingingBoyo> geico? :P
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:51 <pikhq_> Ouch.
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:53:30 <CakeProphet> man why does Java suck so much.
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:18:51 <coppro> I do as well
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:20:43 <coppro> *UTC
07:20:48 <coppro> from -0700
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:21:51 <pikhq_> Yeah, yeah...
07:22:10 <pikhq_> Clearly, we should just use UTC as The Time Zone.
07:25:29 <coppro> yes
07:25:44 <coppro> (actually no, that would be bad. time zones are sane)
07:25:52 <CakeProphet> Here's what I do: 3:26 AM EDT
07:25:56 <CakeProphet> crazy right?
07:26:03 <coppro> yes
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:06 <coppro> *coughchina*
07:27:08 <pikhq_> The issue is that time zones are often way the hell *off* of local solar time.
07:27:19 <pikhq_> *coughchina*
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:27:49 <CakeProphet> my time zone is more sexy than yours.
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:30 <CakeProphet> noon is usually the start of my day.
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:36:50 <CakeProphet> heh, Newfoundland is URC-3.5
07:36:54 <CakeProphet> *UTC
07:38:15 <pikhq_> Wow. There is a time zone border of UTC+8 and UTC+4:30.
07:38:18 <pikhq_> Because of China.
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:45 <coppro> h8 your country, etc.
07:39:56 <coppro> *than competitors' 24oz
07:39:58 <CakeProphet> the US has pretty sane time zone divisions actually.
07:40:02 <CakeProphet> compared to the rest of the world.
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:13 <coppro> err, sorry
07:42:15 <coppro> date polygon
07:42:47 <coppro> also, you know where the time zones are the absolute worst?
07:43:28 <pikhq_> Where?
07:43:31 <coppro> antarctica
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:16 <coppro> that is true
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:49 <coppro> *solstice
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:46:48 <CakeProphet> lol what... +14?
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:06 <CakeProphet> for reasons Wikipedia doesnt explain...
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:53:54 <CakeProphet> ....why
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:36 <CakeProphet> yeah
07:55:39 <coppro> wait
07:55:43 <coppro> no, that's forwards
07:55:54 <coppro> so that would be trade with eastern nations I guess?
07:56:03 <CakeProphet> yeah
07:56:15 <coppro> (which are westwards)
07:56:20 <CakeProphet> right.
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
07:58:50 <CakeProphet> I find this hilarious.
07:59:01 <coppro> lol
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:24 <Patashu> where are you
08:50:28 <Patashu> I'll come by and pinch you just to make sure
08:51:15 <Vorpal> Patashu, Europe
08:51:26 <Patashu> oh, darn
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:08 * Vorpal checks the SWC
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:07:53 <Zwaarddijk> luftfartsverket
09:07:57 <Zwaarddijk> notice the "fart"
09:08:01 <Zwaarddijk> lol@sweden
09:09:21 <Vorpal> Zwaarddijk, what? luftfart = air traffic
09:09:50 <CakeProphet> I have a tetris addiction now.
09:09:56 <Zwaarddijk> Vorpal: obviously I now this
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:54 <Vorpal> travelness heh
09:12:57 <Zwaarddijk> then one of the meaningings (travelness) easily can be taken to refer to speed
09:13:00 <Zwaarddijk> or veloctiy
09:13:09 <Vorpal> quite probably
09:13:12 <Zwaarddijk> and the other to travelling in general
09:13:18 <Vorpal> yes
09:13:55 <Vorpal> Zwaarddijk, this makes me wonder where fara (danger) comes from though
09:15:03 <Zwaarddijk> lemme check
09:16:03 <Zwaarddijk> borrowed from german
09:16:07 <Vorpal> aha
09:16:19 <Zwaarddijk> cognate to English fear
09:16:41 <Vorpal> ah
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:23:57 <Vorpal> heh
09:24:15 <Zwaarddijk> (of course the germanic word lso has had divergences)
09:24:21 <Zwaarddijk> *also
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:24 <Vorpal> hm
09:30:41 <Vorpal> Zwaarddijk, did you say variable?
09:30:50 <Zwaarddijk> yes.
09:31:00 <Vorpal> Zwaarddijk, I think that would mean you just made parsing require executing :P
09:31:08 <Zwaarddijk> yep.
09:31:13 <Zwaarddijk> well
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:35 <Vorpal> Zwaarddijk, yes quite
09:31:54 <Zwaarddijk> obviously
09:31:56 <Vorpal> Zwaarddijk, and I would say it is undesirable even in an interpreted language
09:32:06 <Zwaarddijk> obviously it's undesirable
09:32:11 <Zwaarddijk> it makes spaghetti code worse
09:32:42 <Vorpal> Zwaarddijk, so why did you suggest it? :D
09:32:48 <Zwaarddijk> uhm
09:33:01 <Zwaarddijk> this channel is about estoteric programming langs, is it not
09:33:06 <Vorpal> oh good point
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:34:05 <Vorpal> go for it
09:34:15 <Zwaarddijk> I will.
09:34:20 <Zwaarddijk> go for it, that is.
09:34:26 <Vorpal> eh?
09:34:29 <Zwaarddijk> probably not make it
09:34:34 <Vorpal> Zwaarddijk, oh?
09:34:40 <Vorpal> now you confused me
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:35:44 <Vorpal> ah
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:22 <Zwaarddijk> some better name probably could exist
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:33:56 <Patashu> snake 2???
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:47:49 <Phantom_Hoover> I think I have a phone in theory.
10:48:00 <Phantom_Hoover> It's a relatively old Motorola.
10:48:29 <oklopol> i mostly use mine so i know what time it is
10:48:43 <Phantom_Hoover> I just have a watch.
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:06 <Phantom_Hoover> Do you not have a left wrist?
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:30 <oklopol> i don't like jackets
10:51:34 <oklopol> they are not t-shirts
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:52:53 <Vorpal> damn, revealed
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:24 <Phantom_Hoover> Why the 'ive'?
10:54:37 <Vorpal> Phantom_Hoover, why not. It is a perfectly valid word.
10:54:45 <Phantom_Hoover> It just makes the word longer for no good reason.
10:55:00 <Vorpal> Phantom_Hoover, why is that an issue
10:55:22 <oklopol> it's a perfectly cromulative word
10:55:28 <Gregor> *cromulant
10:55:31 <oklopol> ...
10:55:33 <Vorpal> oklopol, :D
10:55:37 <Gregor> Oh yeah :P
10:55:38 * Gregor fail
10:55:44 <Vorpal> Gregor, fail indeed
10:55:48 <Phantom_Hoover> Gregor, it's 'cromulent' anyway.
10:55:51 <oklopol> yes
10:55:55 -!- eremitah`off has joined.
10:56:10 <oklopol> maybe they cancel out
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:05:01 <Vorpal> olsner, hehe
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:28 <Gregor> Wooooooooooo
11:09:31 <Gregor> Who loves AIRPORTS?
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:49 <oklopol> i love airports
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:12 <Vorpal> oklopol, XD
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:20:25 <Vorpal> Patashu, very true
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:30 <oklopol> a boolean array that is
11:21:33 <Patashu> bloom filter is where you hash each incoming element and OR it onto a bitfield
11:21:43 <oklopol> oh
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:22:34 <Patashu> except murkier
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:17 <Phantom_Hoover> Linked list fetch modus.
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:23:56 <olsner> what's a fetch modus?
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:22 <olsner> mmkay
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:56 <Phantom_Hoover> Yeah, that was John.
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:25:59 <Patashu> they're all past that
11:26:08 <Vorpal> Patashu, hm true
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:30:30 <Phantom_Hoover> Quantum fetch modus: the best idea?
11:35:13 <Sgeo> honk HONK
11:35:27 <Patashu> there are some pretty interesting esoteric data structures out there
11:35:48 <Phantom_Hoover> Like the array of questacks?
11:35:53 <Phantom_Hoover> *queuestacks
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:28 <Patashu> lol
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:49:12 <Vorpal> oklopol, heh
11:49:22 <Patashu> lmao
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:32 <Vorpal> oklopol, :D
11:58:53 <Vorpal> oklopol, yes, arrays however is not a mess of cons cells. Making it fundamentally different
11:59:14 <Vorpal> are*
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:17 <Vorpal> them*
11:59:47 <oklopol> maybe i'll skip the obvious comeback
12:00:07 <oklopol> or continuation i mean
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:00 <olsner> oklopol :D
12:06:04 <Patashu> :(
12:06:24 <Phantom_Hoover> http://www.minecraftwiki.net/wiki/Version_history
12:06:28 <Phantom_Hoover> Sweet troll jegus.
12:06:29 <Patashu> I saw that
12:06:30 <Patashu> it's hilarious
12:06:43 <olsner> no problems are hard really, it's just that most people are too stupid for most of them
12:06:49 <Phantom_Hoover> "Bug Fixes:
12:06:50 <Phantom_Hoover> Fixed new item duplication bug
12:06:50 <Phantom_Hoover> New Bugs:
12:06:50 <Phantom_Hoover> The item duplication bug was not actually fixed;"
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:42:46 <Phantom_Hoover> Left without comment.
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:56:51 <oklopol> :D
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:08:36 <Vorpal> hm
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:17:19 <Phantom_Hoover> oklopol, you should tell them that.
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:21 <Vorpal> :P
13:28:40 <Phantom_Hoover> No image search.
13:28:45 <Vorpal> hm true
13:28:58 <Vorpal> Phantom_Hoover, wait, you get inline image results on encrypted.google.com still
13:29:39 <Phantom_Hoover> Oh god why did I do that aaaaaaa
13:29:56 <Vorpal> Phantom_Hoover, wait there are images on encrypted.google.com now
13:30:03 <Phantom_Hoover> There are.
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:30:37 <Vorpal> it didn't use to be
13:33:33 <Vorpal> Phantom_Hoover, interesting, googling PCMCIA rule 34 with safe search off gives me nothing still.
13:33:44 <Phantom_Hoover> PCMCIA?
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:30 <Phantom_Hoover> (Unless they're into that.)
13:35:34 <Vorpal> heh
13:35:43 <Vorpal> I wonder if there is porn on SCSI
13:35:52 <Phantom_Hoover> That's the spirit!
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:06 <Phantom_Hoover> I feel for you, I really do.
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:45:47 <Vorpal> Phantom_Hoover, :P
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:03 <Vorpal> yep
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:09:50 <Vorpal> fizzie, indeed
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:14:16 <Vorpal> hm
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:06 <Vorpal> fizzie, huh?
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:37 <Vorpal> oh that way
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:22 <Vorpal> XD
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:22:30 <Vorpal> ouch
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:42 <Vorpal> fizzie, yes
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:34:29 <Vorpal> brb
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:37:52 <Vorpal> huh
14:38:16 <Phantom_Hoover> Vorpal, it went off raiding coastal towns.
14:38:27 <Vorpal> har har
14:38:59 <Vorpal> wtf
14:39:15 <Phantom_Hoover> Told you so.
14:39:26 <Vorpal> I don't think gnome-panel likes my monitor setup... nor does it like switching between different setup
14:39:28 <Vorpal> setups*
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:39:52 <Vorpal> Phantom_Hoover, what?
14:40:07 <Phantom_Hoover> Vorpal, are you looking for Bluetooth porn now?
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:43 <Vorpal> :P
14:40:59 <Vorpal> Phantom_Hoover, such a fetish sounds way to normal anyway
14:41:02 <Phantom_Hoover> Suuuuure.
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:11 <Vorpal> fizzie, hehe
14:42:23 <Vorpal> fizzie, nah. ISA ftw
14:42:24 <Phantom_Hoover> fizzie, who isn't?
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
14:44:35 <Phantom_Hoover> oerjan, it isn't.
14:44:46 <Phantom_Hoover> It's the horribly long link Google Reader gives me.
14:45:18 <Vorpal> bbl
14:51:19 <Vorpal> back
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:40:37 <lifthrasiir> (sandboxing etc.)
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:51:48 <MigoMipo> It's a NOP statement
15:52:03 <lifthrasiir> wait, then the statement label goes *after* the statement?
15:52:11 <MigoMipo> Yes, it does :P
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:54:23 <Vorpal> without too much work
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:57:38 <oerjan> *loops
15:57:55 <lifthrasiir> but actually using it is quite difficult.
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:58:21 <Vorpal> err compiler
15:58:23 <Vorpal> not interpreter
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:26 <Vorpal> lifthrasiir, hm
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:04:57 <lifthrasiir> so it is likely for other passes to fail.
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:12 <Vorpal> unlike you
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:07 <Lymia> curious*
16:07:17 <lifthrasiir> Vorpal: that was a subject of my undergraduate thesis
16:07:27 <Vorpal> lifthrasiir, heh? the compiler?
16:07:31 <Vorpal> heh
16:07:35 <Lymia> How good is the optimization in your compiler?
16:07:45 <Lymia> +[>+]
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:02 <lifthrasiir> i think not.
16:08:07 <Vorpal> doubtful.
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:01 <Lymia> +[>[-]+]
16:09:04 <Lymia> How about that?
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:09:58 <Vorpal> I forgot
16:10:27 <lifthrasiir> for example, it was meant to optimize codes like [-[-[-[-...]...]...]...]
16:10:35 <Vorpal> lifthrasiir, into what?
16:10:41 <lifthrasiir> commonly seen in rot13 and so on
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:17 <lifthrasiir> but i never managed it
16:11:22 <Vorpal> ah okay
16:11:30 <Lymia> I should write my own optimization BF compiler.... in Brainfuck
16:11:38 <Lymia> ing*
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:13 <Vorpal> lifthrasiir, ah nice
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:13:50 <lifthrasiir> Vorpal: great.
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:43 <Lymia> Vorpal, yes.
16:15:54 <Lymia> Buh.
16:15:59 <Lymia> I would like this idea more if memory in Minecraft wasn't gian.t
16:16:01 <Lymia> giant*
16:16:44 <olsner> "Yes may refer to:
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:24 <lifthrasiir> (and flip-flops by sram)
16:18:44 -!- oerjan has quit (Quit: leaving).
16:18:48 <Lymia> Vorpal, what would a wired clear routine look like anyways?
16:19:29 <Vorpal> hm
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:29 <Vorpal> not really no
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:45 <Lymia> :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:03 <lifthrasiir> that's quite a feat
16:22:07 <lifthrasiir> (of LLVM, of course)
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:13 <lifthrasiir> augur: ... two-dimensional?
16:23:21 <augur> sort of!
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:25:43 <Vorpal> hm
16:25:50 <Vorpal> maybe not
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:17 <Vorpal> and nested ones
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:38 <lifthrasiir> Vorpal: that is handled in the other way.
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:19 <lifthrasiir> on*
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:30 <Lymia> You witches.
16:31:40 <Vorpal> then you have something like x_3 = rho(x1,x2)
16:31:42 <Vorpal> iirc
16:31:45 <lifthrasiir> yes
16:31:57 <Vorpal> lifthrasiir, how does it do it for loops though
16:31:59 <Vorpal> if is easy
16:32:03 <lifthrasiir> and that program will have three basic blocks (if you count the last empty block)
16:32:03 <Vorpal> loops are harder
16:32:13 <Vorpal> lifthrasiir, right
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:31 <Lymia> What is an 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:02 <Vorpal> lifthrasiir, indeed.
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:58 <Vorpal> olsner, ah
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:36:34 <lifthrasiir> olsner: something like rho(x2, x3) = x1?
16:36:34 <Vorpal> olsner, ah okay
16:36:40 <Lymia> Vorpal, ah.
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:32 <Vorpal> thanks
16:37:45 <Vorpal> Lymia, tell elliott. He believes I'm the only sane person here.
16:37:55 <Lymia> Oh;
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:37:57 <Lymia> .*
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:26 <Vorpal> llvm to js?
16:39:27 <Vorpal> wtf
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:01 <lifthrasiir> it's insane, but it works
16:40:03 <Vorpal> lifthrasiir, ouch.
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:41:48 <Vorpal> olsner, ooh nice
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:16 <Vorpal> *waits*
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:02 <lifthrasiir> for the firefox, yes.
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:44:44 <Vorpal> execute does nothing
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:48:15 <lifthrasiir> i should update esotope-migol then ;)
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:49:37 <lifthrasiir> i don't know much about it
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:08 <lifthrasiir> yes.
16:51:19 <Vorpal> heh
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:52:47 <Vorpal> I forgot the details
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 <lifthrasiir> (in this case, s = 2863311532;?)
16:55:12 <Vorpal> lifthrasiir, I think I could simply polynoms, nothing more
16:56:00 <Vorpal> lifthrasiir, eh?
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:28 <Lymia> Guh.
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:57:32 <lifthrasiir> yes, that's just an illustrative example
16:58:07 <Vorpal> hm
16:58:28 <pikhq> Lymia: Sorry, but the math that we care about only gets taught outside of primary and secondary education.
16:58:57 <Lymia> pikhq, oh.
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:00 <Lymia> To Google then,
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
16:59:57 <lifthrasiir> given that i is a W-bit integer.
17:00:00 <oklopol> took me under 3 sec
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:01:59 <Lymia> =p
17:02:00 <Vorpal> hm yes
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:13 <Vorpal> indeed
17:03:16 <lifthrasiir> sorry for confusion
17:03:17 <Lymia> If m[0] += 0, it is an infinite loop.
17:03:24 <Lymia> Otherwise?
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:04:52 <Vorpal> hrrm
17:05:09 <Lymia> lifthrasiir, well, in C, it does, right?
17:05:10 <Lymia> =p
17:05:14 <lifthrasiir> so we have: n * 2^W + k = j * m.
17:05:17 <lifthrasiir> Lymia: yep.
17:05:23 <lifthrasiir> (where the j is the number of iterations)
17:05:41 <Lymia> So.
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:06:41 <Vorpal> hm
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:07:37 <Vorpal> hm
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:20 <lifthrasiir> Lymia: 1 << sizeof(int) i think.
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:04 <lifthrasiir> yes
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:13 <lifthrasiir> Vorpal: what k do you mean?
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:37 <lifthrasiir> but note that j and n is not unique
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:32 <lifthrasiir> wait
17:13:35 <Lymia> Vorpal, I do believe k would be m[0]
17:13:39 <Lymia> But.. I'm not sure.
17:13:41 <lifthrasiir> for (i=0, j=0; i!=k; i+=m, j++);
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:17 <lifthrasiir> Lymia: yes.
17:15:32 <lifthrasiir> Vorpal: ah, i have to explain that bit...
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:06 <lifthrasiir> so let's say the prior value were x.
17:16:08 <Vorpal> indeed, if we know the prior value we could do this easily
17:16:13 <Vorpal> lifthrasiir, right.
17:16:19 <lifthrasiir> then m[0] = x; for (; m[0]; m[0] += 3) m[1] -= 1;.
17:16:24 <Vorpal> indeed
17:16:28 <Vorpal> makes perfect sense
17:16:44 <lifthrasiir> Vorpal: got it? :p
17:17:33 <Lymia> Yeah.
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:18:44 <Vorpal> or hm
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:14 <Vorpal> ah
17:19:15 <Vorpal> yes indeed
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:09 <lifthrasiir> yes.
17:20:20 <Vorpal> right
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:21:14 <lifthrasiir> Vorpal: we have two cases here:
17:21:59 <Vorpal> okay?
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:33 <Vorpal> hm
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:07 <Vorpal> I see
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:23:49 <Vorpal> right
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:24:36 <Vorpal> lifthrasiir, hm true
17:25:28 -!- Slereah_ has joined.
17:25:29 <Vorpal> hrrm. *reads code*
17:25:41 <Vorpal> lifthrasiir, the comment under "elif flag:"?
17:25:44 <Vorpal> in simpleloop
17:26:03 <lifthrasiir> yes
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:26:47 <lifthrasiir> yes.
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:19 <lifthrasiir> so it simply gave up
17:27:22 <lifthrasiir> give*
17:27:28 <Vorpal> ah
17:27:29 <lifthrasiir> gives*
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:28 <Vorpal> ah
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:54 <lifthrasiir> that will be optimized out.
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:31:39 <Vorpal> )
17:31:50 <lifthrasiir> it will work nevertheless for that code
17:32:21 <Vorpal> lifthrasiir, right
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:34:57 <lifthrasiir> quite a pain, indeed
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:39 <Vorpal> but meh
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:36:50 <lifthrasiir> not yet.
17:36:52 <Vorpal> ah
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:37:38 <lifthrasiir> Vorpal: but how about flatten after map?
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:38:51 <Vorpal> you get stuff like:
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:41:37 <Vorpal> pikhq, yep.
17:41:40 <lifthrasiir> right.
17:41:57 <Phantom_Hoover> Vorpal, that Prolog?
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:42:38 <Vorpal> pikhq, indeed.
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:46 <lifthrasiir> Vorpal: lol
17:43:51 <Vorpal> lifthrasiir, I had a special cleanup pass that did modulo 256 on every value :)
17:43:51 <lifthrasiir> is there any library for that?
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:33 <lifthrasiir> huh.
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:02 <lifthrasiir> :(
17:47:05 <Vorpal> pikhq, I did better, expression propagation. Quite useful.
17:47:13 <pikhq> Vorpal: Oh? Hmm.
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:02 <pikhq> Spiffy.
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:16 <lifthrasiir> the fixed offset here can be eliminated.
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:05 <Vorpal> yet you do it
17:55:24 <lifthrasiir> for example?
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:03 <pikhq> Haskell.
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.
17:59:32 <Vorpal> hm
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:00:57 <Vorpal> pikhq, oh heh
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:30 <pikhq> No, it's 8 bit...
18:01:35 <Vorpal> pikhq, why not Word8 then
18:01:41 <Vorpal> from Data.Word
18:01:54 <Lymia> lifthrasiir, so.
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:22 <Vorpal> ah
18:03:33 <Vorpal> oh my¸ asm
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:36 <Vorpal> err _start*
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:10:42 <Vorpal> pikhq, fail :P
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:35 <evincar> pikhq: Madness.
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:10 <Vorpal> lets try that for -O1
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:37 <pikhq> Vorpal: *x86*.
18:15:39 <pikhq> Not x86_64.
18:15:39 <Vorpal> oh
18:15:42 <Vorpal> pikhq, right
18:15:54 <Vorpal> pikhq, anyway, why not just push those registers on the stack?
18:16:04 <pikhq> Memory access!
18:16:08 -!- FireFly has joined.
18:16:11 <pikhq> I only access the Brainfuck stack.
18:16:14 <pikhq> Erm, array.
18:16:45 <Vorpal> pikhq, hm. I presume you optimise constant output ?
18:16:58 <pikhq> That would require constant propagation!
18:17:08 <Vorpal> pikhq, oh true
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:49 <Vorpal> 421K LostKng.clang
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:09 <pikhq> Uh. It's 472k.
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:18:59 <Vorpal> it has a symbol table
18:19:27 <Vorpal> pikhq, why? That cost is insignificant since it is shared by all the binaries using libc on my system
18:19:28 <pikhq> All 1.4M of it?
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:12 <Vorpal> actuallyt
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:34 <Vorpal> in /usr/bin
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:22:46 <Vorpal> evincar, where
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:54 <pikhq> o.O
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 <pikhq> What the *hell*.
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:32 <Vorpal> and not marked /away
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:33 <Vorpal> pikhq, so tell me.
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:13 <pikhq> :P
18:32:38 <pikhq> 342kB.
18:32:42 <Vorpal> pikhq, that is no answer, but really. Why should you include shared system resources.
18:33:00 <Vorpal> $ ps aux | wc -l
18:33:00 <Vorpal> 185
18:33:01 <pikhq> Vorpal: Because ,,|,
18:33:10 <Vorpal> so 184 (excluding header line)
18:33:14 <Vorpal> pikhq, because what?
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:27 <pikhq> We get it.
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:11 <pikhq> *That's it*.
18:37:14 <pikhq> *There is nothing more to it*.
18:37:18 <pikhq> *Stop 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:40:44 <Vorpal> fizzie, hm
18:40:58 <pikhq> And the initrd.
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:35 <Vorpal> (the IR tower)
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:14 <Vorpal> $ lsmod | wc -l
18:42:14 <Vorpal> 143
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:00 <pikhq> ... Damn.
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:44:54 <Vorpal> easier
18:46:58 <lifthrasiir> hmm, who are working on the brainfuck compiler (for the static subset, of course)?
18:47:01 <lifthrasiir> wiat
18:47:03 <lifthrasiir> befunge*
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:41 <lifthrasiir> fizzie: i meant "a".
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:48:57 <lifthrasiir> ah, well right
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:50:58 <lifthrasiir> anyway.
18:51:22 <Vorpal> and you could do x with threaded code
18:51:28 <Vorpal> probably
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:22 <lifthrasiir> oh well.
18:55:33 <Vorpal> lifthrasiir, you could do the former if you insert a "not" however
18:55:34 <Vorpal> :P
18:55:39 <Vorpal> (but not very well)
18:55:44 <fizzie> It doesn't try to figure out "illegal" uses of p, no.
18:55:59 <lifthrasiir> Vorpal: ...awwwwww yes i forgot "not".
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:05 <Vorpal> 98 or nothing
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:18 <Vorpal> lifthrasiir, quite
18:57:21 <lifthrasiir> but once we can statically analyze the program, it can be translated to others
18:57:36 <lifthrasiir> so i wanted to know the state of art
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:58:43 <Vorpal> but *shrug*
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:04 <Vorpal> suboptimally yes
19:01:15 <lifthrasiir> Vorpal: right, it is an art.
19:01:18 <pikhq> More of a very trivial JIT.
19:01:26 <Vorpal> pikhq, hm?
19:01:28 <lifthrasiir> have you seen mtve's self-interpreter?
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:53 <Vorpal> pikhq, oh true
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:04 <lifthrasiir> an interpreter packed in 6x80 space.
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:27 <Vorpal> well
19:03:30 <Vorpal> function pointers
19:03:37 <fizzie> Goto labels. :p
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:00 <Vorpal> well yes that works.
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:40 <Vorpal> pikhq, ah
19:04:53 <Vorpal> fizzie, macrology?
19:04:54 <pikhq> Vorpal: They made a point of getting computed goto to work.
19:05:12 <Vorpal> fizzie, nice work
19:05:13 <Vorpal> word*
19:05:36 <Vorpal> pikhq, in the llvm ir or by frontend magic?
19:05:45 <pikhq> I dunno.
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:26 <Vorpal> (like for gcc)
19:08:30 <fizzie> They broke it in 2.7, and fixed immediately after.
19:09:10 <Vorpal> heh
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:36 <Vorpal> hm
19:10:41 <pikhq> Well, *damn*.
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:26 <Vorpal> pikhq, hah
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:11:46 <Phantom_Hoover> What was it like?
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:12:57 <Vorpal> maybe that is why
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:38 <Vorpal> unlike you
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:18:54 <Vorpal> heh
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:21:31 <Phantom_Hoover> He does that?
19:22:42 <fizzie> Well, it has happened thrice or so now, I guess, so not *too* often.
19:22:52 <Phantom_Hoover> How do you even troll on that?
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:24:33 <Phantom_Hoover> Ah, right.
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:02:54 <fizzie> Yes.
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:52 <Vorpal> fizzie, heh
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:06:56 <Phantom_Hoover> Detective Vorpal is on the case.
20:07:03 <Vorpal> Phantom_Hoover, heh
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:09:53 <Vorpal> heh
20:10:08 <Vorpal> fizzie, are you currently at that conference?
20:10:12 <Vorpal> or back home?
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:11:35 <Phantom_Hoover> Yes.
20:11:42 <Vorpal> really?
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:12:57 <Vorpal> ah
20:12:58 <Vorpal> right
20:13:02 <Vorpal> I need to sleep
20:13:04 <Vorpal> gah
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:20:17 <fizzie> s/argue/assume/
20:21:24 -!- cheater__ has quit (Ping timeout: 252 seconds).
20:22:27 <Vorpal> fizzie, hm
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:23:39 <fizzie> Still.
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:08 <Vorpal> zzo38, loops?
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:38 <zzo38> Zzo38
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:45 <Vorpal> elliott, which is?
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:06 <Vorpal> elliott, yes
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:54:58 <Vorpal> sadly
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.
20:56:19 <Vorpal> true
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:46 <fizzie> A conspiracacy.
21:01:55 <Vorpal> <elliott> I wasn't going to logread until PH bugged me about it.
21:01:57 <Vorpal> Phantom_Hoover, !!!!
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:02:40 <elliott> (It is/was.)
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:56:51: <oklopol> :D
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:02 <elliott> 13:08:36: <Vorpal> hm
21:04:06 <elliott> Left without comment.
21:04:32 <Vorpal> elliott, read the next few lines please
21:04:38 <elliott> Waah.
21:04:41 <Vorpal> they are important :P
21:05:18 <Vorpal> night →
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:08:41 <Phantom_Hoover> fizzie, I've more often seen cardboard.
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:10 <elliott> but that's epigram one
21:16:14 <elliott> which is so obsolete it isn't even funny
21:16:21 <elliott> Lymia: ask pikhq
21:17:06 <Lymia> Or...
21:17:18 <Lymia> Can you build a clock you can slow down for one tick, or speed up one tick?
21:17:24 <elliott> Lymia: ask pikhq
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:17:46 <elliott> [asterisk]actually.
21:17:47 <elliott> or ais'.
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:20:57 <elliott> um concatMap?
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:22:46 <elliott> there is also c[two]bf
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:23 <elliott> [...]
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:06 <elliott> Not jitfunge?
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:09 <elliott> How recent?
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:40 <fizzie> April 2010, it seems.
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:37:56 <pikhq_> elliott_: \o/
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:42:56 <pikhq_> Yuh.
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:45:53 <pikhq_> Nope!
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:36 * Lymia hides.
21:46:39 <pikhq_> That wasn't me.
21:46:44 <Lymia> pikhq_, the one involving iteration counts.
21:46:47 <pikhq_> That wasn't me.
21:46:54 <Lymia> Oh.
21:46:55 <Lymia> Wrong person.
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.
22:57:15 <elliott_> pokfesgj
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).
2011-05-30
00:20:33 <elliott_> pikhq_: How do I make mplayer de-interlace.
00:23:15 <pikhq_> -vf yadif
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:19:19 <elliott_> seen Shakespeare?
01:21:34 <CakeProp1et> I have.
01:22:43 <CakeProp1et> not quite what I have in mind though.
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.
01:56:53 <zzo38> Haifu?
02:33:17 -!- oerjan has joined.
02:34:13 <CakeProp1et> oh look there's a programming language called Haifu
02:35:44 <oerjan> ah a DMM language
02:36:43 <oerjan> Kungku is then conspiciously missing
02:37:13 <oerjan> "Haifu" is Mandarin for "sea duck". maybe not.
02:37:24 <oerjan> *+''
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:18 * oerjan cackles evilly
04:38:19 <elliott> :t group
04:38:19 <lambdabot> forall a. (Eq a) => [a] -> [[a]]
04:38:23 <elliott> grr
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:39:16 <elliott> heh
04:39:42 <oerjan> :t zip`ap`tail
04:39:43 <lambdabot> forall b. [b] -> [(b, b)]
04:40:08 <oerjan> ancient aztec god of functional programming
04:40:40 -!- cheater_ has joined.
04:40:56 <pikhq> Gotta love it.
04:41:32 <oerjan> :t zip<*>tail
04:41:32 <lambdabot> forall b. [b] -> [(b, b)]
04:41:40 <Lymia> What is the most elegant fork bomb?
04:42:18 <pikhq> fork while fork
04:42:20 <pikhq> In Perl.
04:42:41 <oerjan> :t fix((>>)<*>forkIO)
04:42:42 <lambdabot> Not in scope: `forkIO'
04:42:58 <oerjan> :t fix((>>)<*>Control.Concurrent.forkIO)
04:42:59 <lambdabot> Couldn't match expected type `()'
04:42:59 <lambdabot> against inferred type `GHC.Conc.ThreadId'
04:42:59 <lambdabot> Expected type: IO ()
04:43:13 <oerjan> bah
04:43:14 <Lymia> pikhq, elegant Perl code?
04:43:32 <oerjan> :t Control.Concurrent.forkIO
04:43:33 <lambdabot> IO () -> IO GHC.Conc.ThreadId
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:45:21 <lambdabot> forall a. IO () -> a
04:46:02 <oerjan> :t forever
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:09 <oerjan> :t fix.(forever.)
04:47:10 <lambdabot> forall (m :: * -> *) a b. (Monad m) => (m b -> m a) -> m b
04:47:30 <oerjan> oh wait
04:47:40 <oerjan> :t fix$forever.Control.Concurrent.forkIO
04:47:41 <lambdabot> IO ()
04:47:45 <pikhq> XD
04:48:03 <oerjan> get your fix forever
04:48:11 <oerjan> :t fix forever
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:36 <Lymia> Actually.
04:51:39 <Lymia> fork while fork
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:04 <lambdabot> forall a b. a -> b -> b
04:52:11 <Lymia> Forks off another live process.
04:52:21 <Lymia> So.
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:51 <CakeProp1et> heh.
04:52:53 <oerjan> :t fix.join Control.Parallel.par -- wait, that won't work
04:52:54 <lambdabot> forall a. (a -> a) -> a
04:53:17 <CakeProp1et> oh wait I know what would be good.
04:53:28 <CakeProp1et> fork while fork,fork
04:53:58 <CakeProp1et> now every fork forks forever. :)
04:54:09 <CakeProp1et> well, almost.
04:54:11 <oerjan> um no?
04:54:15 <Lymia> No need.
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).
04:59:09 <CakeProp1et> fork&&fork while !fork&&!fork :D
05:00:32 <oerjan> yo fork
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:07:36 <Lymia> COW?
05:07:41 <pikhq> Copy On Write.
05:07:51 <CakeProp1et> `run perl -e 'fork while fork' #h4xx
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:08:41 <pikhq> Process limit.
05:09:55 <CakeProp1et> `run ps -e | grep perl | wc -l
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:00 <HackEgo> ​2
05:10:09 <Lymia> You wanted a deadly forkbomb?
05:10:28 <CakeProp1et> I wanted a forkbomb with no useless forks.
05:10:50 <Lymia> Here you go.
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:11:56 <Lymia> Erm
05:11:57 <CakeProp1et> something Python can't figure out..
05:12:00 <Lymia> int main(){while(true){int v=fork();if(v==-1){while(true){rand();}}}return 0;}
05:12:05 <pikhq> But Perl can.
05:12:31 <Lymia> int main(){for(;;){if(fork()==-1){for(;;){rand();}}}return 0;}
05:12:35 <Lymia> There.
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:11 <zzo38> if(~fork())
05:14:13 <fizzie> (That wasn't really the "why" though.)
05:14:21 <HackEgo> No output.
05:14:43 <zzo38> main(){if~fork())for(;;)rand();main();}
05:15:07 <CakeProp1et> unmatched ) near the if
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:00 <Lymia> Yeah.
05:16:01 <Lymia> ~ would work.
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 <CakeProp1et> syntax error?
05:16:20 <pikhq> ~ would be undefined behavior.
05:16:28 <Lymia> pikhq, fork returns -1, right?
05:16:32 <Lymia> Which is FFFF....
05:16:37 <zzo38> No ~ means if -1 then false otherwise true
05:16:41 <pikhq> Lymia: WRONG
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:04 <Lymia> Ah.
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:17:57 <CakeProp1et> or that.
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:37 <pikhq> But only in C90.
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:22:52 <HackEgo> ​1 8
05:22:57 <CakeProp1et> Python wins.
05:23:23 <CakeProp1et> carry on..
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:38:11 <CakeProp1et> not I.
05:39:26 * CakeProp1et has decided to learn Ruby.
05:40:47 <monqy> good luck
05:41:25 <CakeProp1et> so far it's not looking too bad.
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:03:52 <Lymia> 3.0?
06:03:55 <Lymia> That's new
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:34:02 <pikhq> :P
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:38:04 <fizzie> sioning."
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:49 <Lymia> fizzie, well.
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:27:51 <Sgeo> YES\
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:44 * Sgeo 's head spins
07:32:54 -!- Sgeo has quit (Quit: Leaving).
07:34:03 -!- Sgeo has joined.
07:35:11 <Sgeo> SASL working
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:15 <Lymia> Stackfuck
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:02 <oerjan> or maybe that was you
08:10:07 <fizzie> "Stue is a stack/queue language by User:CakeProphet."
08:10:12 <oerjan> aha
08:10:13 <fizzie> Says the stub.
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:04 <CakeProp1et> it's in a notebook somewhere
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:15:12 <oerjan> Ork might fit as well
08:16:09 <oerjan> i think Chef has naming too
08:16:57 <CakeProp1et> hmmmm
08:17:07 <CakeProp1et> declaring causal relationships is always fun.
08:18:17 <CakeProp1et> in other words, a "when' statement.
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:37:49 <Phantom_Hoover> I was helping you with that before.
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> "It
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:27 <Phantom_Hoover> What is?
19:06:41 <elliott> Phantom_Hoover: The next Linux release.
19:06:54 <elliott> 2.6.39 -> 3.0
19:06:58 <elliott> [asterisk]2.6.39 -> 3.0.
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:08 <coppro> 3.0.0, 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:40 <pikhq> Erm, number.
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:17 <elliott> no
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:25 <elliott> then it's 3.0
19:14:38 <pikhq> elliott: There will be more -rc releases.
19:14:44 <elliott> right
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:35 <lifthrasiir> sorta.
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:40 <pikhq> Lymia: Linux? No.
19:22:44 <Lymia> Unix?
19:22:53 <elliott> It's not a POSIX compatibility layer.
19:22:56 <elliott> It's an implementation of POSIX on NT.
19:22:59 <Lymia> Ah.
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:25 <lifthrasiir> elliott: lol
19:23:27 <elliott> (In a Windows environment.)
19:23:29 <elliott> lifthrasiir: It really does -- Gentoo Prefix
19:23:36 <elliott> It's surprisingly good.
19:23:49 <lifthrasiir> heh.
19:24:04 <elliott> Better than Cygwin.
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:44 <lifthrasiir> elliott: that hurts.
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:19 <elliott> Lymia: That's Fink.
19:26:20 <elliott> It's shit.
19:26:24 <Lymia> Oh.
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:19 <Gregor> True
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:27:57 <elliott> pikhq: It's not automake.
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:07 <elliott> Lymia: Define target.
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:20 <elliott> Lymia: Define.
19:29:22 <lifthrasiir> Gregor: for what?
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:44 <elliott> GTK does not.
19:29:57 <elliott> Gregor: With OS X I've found the easiest thing is just to live with it.
19:29:59 <lifthrasiir> hmm.
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:30:59 <olsner> *thought
19:31:01 <Gregor> olsner: Touche
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:14 <lifthrasiir> they are not very durable
19:31:17 <elliott> lifthrasiir: Eh? Mac hardware is, like, one of the only good things about a Mac.
19:31:26 <elliott> You mean the laptops?
19:31:29 <elliott> Yah, they're a bit weak.
19:31:29 <Lymia> elliott, that becomes a problem around Linux, don't you think?
19:31:30 <lifthrasiir> elliott: yes.
19:31:30 <Lymia> >>
19:31:34 <elliott> Lymia: What.
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:03 <olsner> pikhq: neat :D
19:32:07 <elliott> Lymia: Yes.
19:32:08 <pikhq> And it's older than UNIX.
19:32:09 <Lymia> Ah.
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:25 <Lymia> Yeah.
19:32:27 <Lymia> =p
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:42 <Lymia> Heh.
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:45 <Lymia> Um...
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:35:57 <elliott> Apart from '0' to '9'.
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:21 <olsner> elliott: should be!
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:45 <lifthrasiir> yes.
19:36:55 <lifthrasiir> that's why EBCDIC sucks.
19:36:55 <elliott> pikhq: Unless it's given an exemption.
19:37:20 <lifthrasiir> (or, one of reasons that EBCDIC sucks)
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:00 <elliott> It is?
19:38:07 <elliott> It's UB in C[eightynine], I know that.
19:38:12 <elliott> Shoulda said C90 :P
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:08 <lifthrasiir> elliott: oh well.
19:40:17 <pikhq> The preprocessor could very well summon nasal demons.
19:40:19 <elliott> pikhq: Really? How?
19:40:23 <Lymia> Can we make an #esoteric compliant C compiler?
19:40:24 <elliott> You mean for [hash]include?
19:40:28 <elliott> Lymia: DS9K
19:40:39 <pikhq> elliott: They made a handful of syntax errors UB.
19:40:41 <pikhq> I'm not kidding.
19:41:10 <elliott> pikhq: ais maintains that all syntax errors are UB.
19:41:12 <elliott> I'm not sure I agree.
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:02 <elliott> lifthrasiir: Dunno :P
19:42:06 <pikhq> That, too, can launch demons out of your nose.
19:42:18 <lifthrasiir> pikhq: except for #pragma STDC, i think
19:42:32 <pikhq> lifthrasiir: Oh, right, C1x is adding that namespace, isn't it?
19:42:43 <lifthrasiir> wasn't that C99?
19:42:50 <olsner> (or we could just make it require a connected nucular missile launcher)
19:42:53 * lifthrasiir opens iso-9899-1999.pdf
19:42:56 <pikhq> C99 added #pragma...
19:43:01 <pikhq> Didn't it?
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:43:50 <lifthrasiir> i don't know about C1x
19:43:52 <pikhq> Lymia: Yes.
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:08 <lifthrasiir> are*
19:44:48 <pikhq> Limited polymorphism.
19:45:13 <Sgeo_> I think ants can be almost as evil as humans
19:45:28 <pikhq> gets is gone.
19:45:31 <Sgeo_> http://www.cals.ncsu.edu/course/ent525/close/SlaveAnt.html
19:45:47 <lifthrasiir> pikhq: tgmath things for the former?
19:46:03 <pikhq> _Generic keyword.
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:05 <lifthrasiir> wha?
19:48:17 <elliott> the C committee should be fired :)
19:48:35 <pikhq> As an optional addendum.
19:48:48 <lifthrasiir> ah, that is okay
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:05 <lifthrasiir> that is a trend, man.
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:50:25 <lifthrasiir> olsner: death by being fired?
19:50:28 <elliott> How bass-ackwards :P
19:50:47 <olsner> lifthrasiir: exactly
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:34 <elliott> ?fixity (:)
20:12:34 <lambdabot> Unknown command, try @list
20:12:35 <elliott> ?info (:)
20:12:35 <lambdabot> (:)
20:12:38 <elliott> How do you find the fixity again.
20:12:48 <elliott> > (0$:)
20:12:48 <lambdabot> Not in scope: `$:'
20:12:51 <elliott> > (0 $ :)
20:12:51 <lambdabot> <no location info>: parse error on input `:'
20:12:52 <elliott> > (0 $0:)
20:12:53 <lambdabot> The operator `:' [infixr 5] of a section
20:12:53 <lambdabot> must have lower precedence th...
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:52 * Sgeo prods elliott
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:08:10 <CakeProp1et> ..every language should have a CPAN.
22:08:13 <CakeProp1et> so good.
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:09 <Vorpal> CPAN is quite a PITA
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:00 * CakeProp1et hasn't had any problems so far with CPAN.
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:21 <Vorpal> so neither could
22:17:29 <elliott> Vorpal: Wrong.
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:17:57 <Vorpal> Ever.
22:18:10 <CakeProp1et> elliott: I guess that works. I thought there was a better way to do it though.
22:18:10 <elliott> Vorpal: Precisely.
22:18:16 <elliott> CakeProp1et: Maybe there is.
22:18:20 <Vorpal> elliott, what?
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:20:29 <Vorpal> elliott, nice one
22:21:06 <Vorpal> now, night →→
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:05 <CakeProp1et> yes.
22:23:16 <pikhq_> http://www.newegg.com/Product/Product.aspx?Item=N82E16819105272 Just... Jeeze.
22:23:17 <CakeProp1et> most of the time.
22:24:07 <pikhq_> Dodeca-core CPU.
22:24:10 <elliott> pikhq_: MAGNY-COURS
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:26:52 <pikhq_> Max number is 4.
22:26:59 <pikhq_> 48-core computing.
22:27:08 <pikhq_> For the low, low price of ~$2000 before any parts.
22:27:43 <pikhq_> And 32 DDR3 slots.
22:28:59 <pikhq_> It can seriously have 256GiB of RAM.
22:29:01 <elliott> Nice :P
22:29:03 <elliott> How much would that cost.
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:37:32 * CakeProp1et !help
22:37:46 * CakeProp1et ^help
22:37:50 * CakeProp1et `help
22:38:33 <CakeProp1et> they are blind to ME
22:42:14 <Phantom_Hoover> But are they blind to ME??
22:42:45 <CakeProp1et> ...yes
22:42:50 <CakeProp1et> they a blind to all MEs :P
22:43:02 <CakeProp1et> s/\ba\b/are/
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:46:14 <elliott> :<
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:57:55 <elliott> me
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:22 <elliott> of ssd
23:02:37 <pikhq_> No, only 60 gigabytes is SSD.
23:03:18 <pikhq_> Oh, wait, lemme double that...
23:03:40 <Phantom_Hoover> pikhq_, what?
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:08:44 <Phantom_Hoover> Yay?
23:09:03 <pikhq_> ... Or you could have a sports car. But what fun's that?
23:09:35 <Phantom_Hoover> Computer, clearly.
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:09:52 <pikhq_> elliott: A fuckton.
23:10:14 <pikhq_> And draw 1.6 megawatts.
23:10:47 <elliott> pikhq_: Got the right PSU? :P
23:10:50 <elliott> PSUs, raher.
23:11:08 <pikhq_> Yes, I have the right PSU for the 9U case.
23:11:14 <pikhq_> With 50 hotswap bays.
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:06 <elliott> What GPU?
23:13:17 <pikhq_> http://www.newegg.com/Product/Product.aspx?Item=N82E16814125379 currently.
23:13:41 <elliott> Nice :P
23:13:49 <elliott> Factored in case fans?
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:14:49 <pikhq_> (8 80mm, 2 120mm)
23:15:00 <elliott> Noice :P
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:16:56 <elliott> Yah.
23:17:00 <elliott> Wait.
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:16 <pikhq_> 4.
23:17:20 -!- coppro has quit (Ping timeout: 252 seconds).
23:17:22 <elliott> Erm, right, point still stands.
23:17:27 <pikhq_> Yes.
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:19:31 <elliott> reasonable
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:01 <elliott> pikhq_: Perfect for @.
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:25:23 <pikhq_> *There* we go.
23:27:56 <pikhq_> With, uh, 13.5 ns latency on the RAM.
23:29:19 <elliott> FIND THE FASTEST RAM.
23:29:55 <pikhq_> That's the fastest 8GiB RAM.
23:30:07 <elliott> NEEDS MORE FSAT
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:18 <CakeProp1et> I can't find a libm anywhere in the repos
23:47:26 -!- Sgeo has joined.
23:47:57 <elliott> CakeProp1et: math
23:47:59 <elliott> it comes with libc
23:48:06 <CakeProp1et> oh...
23:48:24 <CakeProp1et> yes, I definitely have that then.
23:48:56 -!- coppro has joined.
23:54:41 <CakeProp1et> so, anyone have some open source projects that need contributions?
23:54:57 <elliott> there are thousands
23:55:45 <coppro> what a dumb question
23:55:49 <coppro> also what happened to your h
23:55:57 <elliott> proponet
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:35 <elliott> oh.
23:57:43 <elliott> well mcmap needs updating to the latest protocol >:)
23:57:52 -!- ralc has quit (Quit: Leaving).
23:58:01 <CakeProp1et> Marine Corps Martial Arts Program?
23:58:08 <elliott> no
23:58:15 <elliott> it's a minecraft thing
23:58:20 <elliott> fizzie wrote it
23:58:23 <elliott> i wrote some parts
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).
23:59:45 <coppro> volunteer
2011-05-31
00:00:04 <coppro> work if paid
00:00:07 <coppro> same as usual
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:34 * Phantom_Hoover → sleep
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:39:52 <elliott> pikhq_: oh well
00:40:00 <elliott> it was a rip of the first doctor who episodes
00:40:02 <elliott> probably dvd rip
00:40:07 <elliott> it was dvd resolution i thin
00:40:09 <elliott> k
00:40:09 <elliott> BUT
00:40:16 <elliott> the interlacing was really minor
00:40:18 <elliott> and then i found
00:40:18 <elliott> a torrent
00:40:18 <elliott> of
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:31 <elliott> yes yes yes
00:42:33 <elliott> the most common one
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:45:59 <elliott> 720 x 480
00:46:01 <elliott> twenty-five fps
00:46:02 <elliott> happy?
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:52:52 <pikhq> quintopia: Yes.
00:53:06 -!- pikhq_ has quit (Ping timeout: 244 seconds).
00:53:12 <quintopia> then it's probably 50i he means
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:12 <elliott> british tv framerate :P
00:59:13 <elliott> in the sixties
00:59:17 <elliott> black 'n whiiiite
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:06 <elliott> its two hundred gigabytes
01:00:07 <elliott> can you believe that
01:00:09 <elliott> two hundred gigabytes
01:00:14 <elliott> well gibibytes even
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:02:51 <pikhq> The fuck.
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:03:56 <elliott> This shit is ooooooold.
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:08:50 <elliott> pikhq: hmm
01:08:52 <elliott> this thing has
01:09:00 <elliott> one hundred fifty nine serials
01:09:03 <elliott> the average serial lasts about two hours
01:09:13 <elliott> so that's
01:09:18 <elliott> 13.25 days of raw footage
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:09:59 <elliott> which we will of course
01:10:05 <elliott> and Dimensions in Time, the EastEnders crossover
01:10:08 <elliott> and the Jim'll Fix It section
01:10:12 <elliott> pikhq_: logread :P
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:18:32 <elliott> god
01:18:35 <elliott> i need a faster internets
01:18:36 <elliott> and a bigger disk
01:25:36 <elliott> pikhq_: btw this torrent even includes the reconstructed Shada
01:25:42 <pikhq_> Wow.
01:25:46 <elliott> yeah
01:25:53 <elliott> http://torrentz.eu/122fccaa560242d3c89577d419e9e485d8e22fae
01:25:57 <elliott> insanely completist
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:31:50 <elliott> That would be ludicrous.
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:12 <elliott> It... has part four here.
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:32:59 <elliott> Nice X-D
01:33:00 <pikhq_> There's also a lot of photos of each episode.
01:33:01 <Gregor> ... lol
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:12 <Gregor> lol
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:01 <Gregor> Heh
01:37:02 <Gregor> Touche
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:37:41 <Gregor> Dun dun DUN
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:13 <Gregor> Super :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:04 <Gregor> lol
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:42:56 <elliott> IT'S JUST TOO SCAR
01:42:58 <elliott> IT'S JUST TOO SCARY
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:40 <elliott> MORMONS
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:11 <elliott> LEARNED OUR LESSON I SEE
01:46:38 <Gregor> ... wow.
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:43 <elliott> VHS rips, that is
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:37 <elliott> Gregor: Oh gawd :P
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:24 <elliott> Even the racism!
01:49:32 <elliott> The Cave of Skulls was... less good.
01:49:36 <elliott> Worst cavemen evar
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:38 <elliott> are you serious
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:17:11 <elliott> AWEEEEEESOMEEEEEEEEE
02:19:03 <elliott> For our next trick we'll binge the entirety of Guiding Light.
02:19:04 <elliott> ALL OF IT.
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:19:53 <elliott> And it'll be EVEN
02:19:54 <elliott> LESS
02:19:55 <elliott> ENJOYABLE
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:04 <elliott> DAMMIT
02:20:18 <elliott> pikhq: plz to be salvaging old episodes of bad soap opera
02:21:02 <pikhq> Oh, jesus fuck.
02:21:22 <elliott> pikhq: MUST ARCHIVE BINGE
02:21:58 <CakeProp1et> hmmm
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:47 <CakeProp1et> ...no?
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:23:27 <CakeProp1et> either way works fine, I'd say.
02:23:41 <elliott> Uhhhhh no
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:25:31 <elliott> Meh, that's tiny :P
02:25:41 <CakeProp1et> elliott: what's wrong with this approach?
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:57 <elliott> Here it is
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:04 <CakeProp1et> ...I do plenty of that. I never finish.
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:33 <CakeProp1et> elliott: C# can run in linux just fine.
02:35:57 -!- lament has changed nick to lament_.
02:36:28 <elliott> CakeProp1et: unless you use too recent .NET features
02:36:33 <elliott> then it doesn't
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:38:27 <elliott> unsuitable
02:44:19 <CakeProp1et> elliott: I was under the impression that you didn't like Perl.
02:45:10 <elliott> better than C# :)
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
04:57:46 <CakeProphet> (note the irony of the above)
04:58:22 <lament> noted.
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:24 <pikhq> coppro: C-a C-a.
05:04:30 <pikhq> Erm, C-a a
05:04:45 <oerjan> CakeProphet: C-u is shoter
05:04:54 <oerjan> *shorter
05:04:54 <CakeProphet> oh cool.
05:05:26 <CakeProphet> oerjan: as an American hearing things like "shawty" often, that made perfect sense to me. :)
05:05:38 <oerjan> aw kay
05:06:13 <oerjan> CakeProphet: also, /bind
05:06:43 <CakeProphet> oh nice.
05:09:43 <coppro> pikhq: fun
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:14:48 <CakeProphet> hahaha
05:15:02 <CakeProphet> I would. :)
05:15:28 <oerjan> "I put it there in memory of my late girlfriend"
05:15:41 <pikhq> :)
05:15:46 <pikhq> "This scar, too."
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:33 <oerjan> *are all
05:18:38 <pikhq> I dunno.
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:19 <lament> (lil wayne)
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:15 * Sgeo 's head spins
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:24:00 <CakeProphet> I think that's how they explain it.
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:27:47 <CakeProphet> (but not for great "prophet." ZING!)
05:28:25 <coppro> B Ark?
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:52:26 <Phantom_Hoover> http://www.youtube.com/watch?v=XKy_VTBq0yk
06:52:42 <Phantom_Hoover> This is so stupid it hurts...
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:19 <pikhq_> Disproved.
06:55:43 <Phantom_Hoover> pikhq_, ah, but you're using AXIOMATICS which you DON'T UNDERSTAND.
06:57:24 <Patashu> 'mathfoundations'
06:57:26 <Patashu> what is this?
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:13 <Phantom_Hoover> oerjan, http://www.youtube.com/watch?v=XKy_VTBq0yk
07:07:15 <Phantom_Hoover> Discuss.
07:07:58 <oerjan> <pikhq_> Isn't there a reason we don't use naïve set theory? :P
07:08:03 <oerjan> russell's paradox
07:08:06 <Phantom_Hoover> oerjan, yes.
07:08:06 <Patashu> Yup
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:14 <Phantom_Hoover> pikhq_, that's just silly.
07:12:28 <pikhq_> And?
07:12:29 <oerjan> this may surprise you, but your computer is not _actually_ turing-complete, pikhq_
07:12:31 <Patashu> Computers are finite
07:12:35 <Patashu> beaten
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:27 <oerjan> ic
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:31 <pikhq_> s/state/state of/
07:14:53 <pikhq_> Phantom_Hoover: Screw your "logic", I have pointless assertions.
07:15:05 <pikhq_> And a lack of sleep.
07:15:07 <Phantom_Hoover> pikhq_, SO DO I
07:15:09 <pikhq_> Jeeze, it's 01:15.
07:15:14 <Phantom_Hoover> Except for the lack of sleep part.
07:15:33 <Phantom_Hoover> BUT STILL
07:15:58 <Phantom_Hoover> <Patashu> Nothing about maths exists
07:16:16 <Phantom_Hoover> In before logreading elliott: ultimate ensemble.
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:16:58 <pikhq_> Hot.
07:17:01 <Phantom_Hoover> Did you oblige it?
07:17:09 <Patashu> No, I'm not oblique
07:20:28 <Phantom_Hoover> ...oh god I'm stuck listening to the Homestuck music again.
07:20:32 <Phantom_Hoover> I had things to do today!
07:21:31 <CakeProphet> `perl $b='$b=%c%s%c;printf$b,39,$b,39;';printf$b,39,$b,39;
07:21:34 <HackEgo> No output.
07:21:37 <CakeProphet> lies
07:21:49 <Phantom_Hoover> CakeProphet, you can run Perl on your own computer, you know/
07:21:57 <CakeProphet> nope.
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:05 <_Alex_50> Hi!
08:20:48 -!- _Alex_50 has left.
08:22:10 <Phantom_Hoover> Well that was odd.
08:24:40 -!- lament has quit (Ping timeout: 276 seconds).
08:45:45 -!- Sgeo has joined.
08:46:47 <Phantom_Hoover> Wow, you slept for a whole 40 minutes or so.
08:48:44 <Sgeo> New plan: Stay awake, sleep later in the day, take melatonin next night
09:03:13 <Phantom_Hoover> <Sgeo> Phantom_Hoover, which music?
09:03:16 <Phantom_Hoover> All the music.
09:03:18 <Phantom_Hoover> All of it.
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:23 <Phantom_Hoover> Sgeo, have you gone crazy from sleep deprivation?
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:21 <Patashu> pun?
11:36:56 <Sgeo> Patashu, have you read Homestuck?
11:37:05 <Patashu> yes
11:37:32 <Sgeo> Gamzee is a highblood, right? "high"
11:37:41 <Patashu> There's no way that's the pun
11:37:43 <Patashu> I disbelieve
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
11:38:55 <Patashu> Hmm, okay, taken
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:30 <Phantom_Hoover> http://en.wikipedia.org/wiki/File:WWI-re.png
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:21 <Phantom_Hoover> What landmass thing?
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:11 <Phantom_Hoover> 'Iraq'.
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:36:30 <Phantom_Hoover> That too.
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:17 <Phantom_Hoover> I suppose that's what kind of happens in a proxy war.
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:42:57 <CakeProphet> modern aircraft might ruin that, though.
17:42:59 <Phantom_Hoover> Not to nearly the extent we have now.
17:43:03 <CakeProphet> yes.
17:53:22 <Phantom_Hoover> http://en.wikipedia.org/wiki/Arsole
17:53:27 <Phantom_Hoover> Is this the best compound?
17:53:30 <Phantom_Hoover> The answer is yes.
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:54:56 <olsner> hehe, benzarsole :D
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:15 <Phantom_Hoover> P.U.?
17:56:40 <oerjan> http://en.wikipedia.org/wiki/P.U.
17:56:56 <Phantom_Hoover> Who the hell writes it that way.
17:57:47 <oerjan> http://en.wikipedia.org/wiki/Cummingtonite
17:59:02 <CakeProphet> haha, nice.
17:59:59 <CakeProphet> so, did we somehow get to unusual elements from WWII?
18:00:12 <Phantom_Hoover> I'd been meaning to mention that.
18:00:18 <CakeProphet> I guess that's not a far stretch.
18:00:20 <Phantom_Hoover> It had nothing to do with the conversation.
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:01:48 <Phantom_Hoover> Strange elements
18:01:49 <Phantom_Hoover> *?
18:01:55 <Phantom_Hoover> ITYM compounds.
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:03:05 <CakeProphet> yes, compounds.
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:09 <elliott> oops
18:18:11 <elliott> wrong copy
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:18:22 <elliott> platonists would disagree
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:45 <elliott> whois Kustas
18:52:48 <elliott> oops ;D
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:55:54 <Kustas> whois elliott
18:56:03 <elliott> whois yourself
18:56:08 <Gregor> whois alise
18:56:11 <Gregor> whois ehird
18:56:17 <Gregor> whois ehypocrite :P
18:56:22 <elliott> NEVER HEARD OF 'EM
18:56:46 <Gregor> All I've done is drop that pesky 'R' :P
18:57:14 <elliott> AND THE -L, -W, ET
18:57:15 <elliott> CET
18:57:15 <elliott> ER
18:57:16 <elliott> A
18:57:57 <elliott> <Gregor> I am so sorry ;_;
18:58:02 <elliott> TOUGH SHIT.
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:02:34 <Kustas> wrong
19:02:45 <elliott> oh, where then?
19:05:41 <ais523> happy australian mailman reminders day!
19:05:49 <elliott> ais523: [asterisk]mailman mailing list
19:05:56 <elliott> sloppy!
19:06:03 <ais523> meh, I like my version better
19:06:09 <elliott> it's inaccurate ;(
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:38 <ais523> ah, OK
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:04:55 <elliott> pikhq hates qs
20:06:54 <oerjan> remarkable with that nick
20:11:06 <elliott> pik
20:11:09 <elliott> hq (hate qs)
20:11:14 <elliott> h heich/hate
20:11:14 <elliott> qs
20:11:17 <elliott> pikhq hates qs
20:15:14 <cheater_> wat
20:16:07 <pikhq> elliott: Yeah, the final q is just ironic.
20:16:15 <pikhq> </hipster>
20:17:15 -!- Lymia has changed nick to qs.
20:17:15 <elliott> ok pikh
20:17:18 <qs> Hey!
20:17:20 <qs> That's mean.
20:17:33 <elliott> qs are for losers
20:17:56 <qs> :(
20:17:59 <qs> ;-;
20:18:01 * qs runs off
20:18:03 -!- qs has changed nick to Lymia.
20:18:08 -!- shachaf_ has joined.
20:18:19 <elliott> Lymia: sorry qs :(
20:19:15 <pikhq> EIN VOLK! EIN REICH! FÜNFUNDZWANZIG BUCHSTABE EIN ALPHABET!
20:20:08 <cheater_> what
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:22 <cheater_> you mean the ss
20:24:55 <oerjan> cheater_: um it's _pronounced_ ess zed, isn't it
20:25:01 <cheater_> no.
20:25:22 <cheater_> in fact, the translit for it is "ss".
20:25:28 <cheater_> for example, Strasse
20:25:51 <oerjan> cheater_: i mean, the _name_ of it
20:26:01 <cheater_> "scharfes s"
20:26:32 <elliott> rude oerjan :(
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:21 <cheater_> yes, right, the name
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:28:44 <lambdabot> parse error on input `)'
20:28:49 <oerjan> bah
20:29:08 <elliott> heh
20:29:08 <oerjan> :k (Maybe ~> Erm -> Test) --let's see if this works
20:29:09 <lambdabot> Not in scope: type variable `~>'
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:21 <elliott> heh
20:30:26 <elliott> try Either
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:34 <lambdabot> but `Maybe' has 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:41 <lambdabot> *
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:56 <lambdabot> *
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:04 <elliott> oerjan: fair nuff
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:33:26 <lambdabot> *
20:33:53 <oerjan> hm...
20:34:06 <oerjan> :t undefined :: (Int -> Int `State` Int)
20:34:06 <lambdabot> Int -> State Int Int
20:34:25 <oerjan> :t undefined :: (Int `State` Int -> Int)
20:34:26 <lambdabot> State Int Int -> Int
20:34:39 <oerjan> ok so lower than the default
20:34:45 <elliott> that's a bit obvious :)
20:34:59 <elliott> well at least to me
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:38:04 <oerjan> hm...
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:42:33 <elliott> it just feels _wrong_
20:42:45 <oerjan> :D
20:43:07 <oerjan> > 3 `mod` 5 + 9 `div` 4
20:43:07 <lambdabot> 5
20:43:25 <elliott> nooooooooooooo
20:43:56 <oerjan> > 3 `mod` 5 ^ 9 `div` 4
20:43:56 <lambdabot> 0
20:45:13 <elliott> sobbin
20:53:28 <Lymia> > div x=0
20:53:29 <lambdabot> <no location info>: parse error on input `='
20:53:56 <oerjan> wat
20:54:02 <Lymia> > div x = 0
20:54:03 <lambdabot> <no location info>: parse error on input `='
20:54:05 <Lymia> :<
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
20:54:47 <lambdabot> 0
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:06:23 <elliott> summarised for you
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:02 <Phantom_Hoover> CakeProphet, exactly my point.
21:10:10 <Phantom_Hoover> Well, related *in some way*.
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:11:58 <Phantom_Hoover> I would argue that it's worthwhile.
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:26 <Phantom_Hoover> (Although not necessarily in that order.)
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:32 <Phantom_Hoover> elliott, before you came in.
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:23 <elliott> yes
21:22:43 <CakeProphet> self-appointed.
21:22:55 <elliott> no, appointed by definition.
21:23:09 <CakeProphet> yes, as defined by elliott.
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:23:43 <CakeProphet> eh, never liked that show.
21:24:15 <elliott> CakeProphet: psht, he thinks i'm talking about just the new series
21:24:16 <coppro> out
21:24:19 <coppro> now
21:24:33 <elliott> i've got four fucking decades of it to go through
21:24:43 <coppro> where are you now?
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:23 <elliott> and not in this laptop
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:39 <elliott> coppro: seeders, I mean
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:35 <elliott> but it may be wrong
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:07 <elliott> which is... ridiculous
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:35 <coppro> don't know
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:42 <coppro> it has some I think
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:02 <elliott> for the classic series
21:29:05 <coppro> probably
21:29:29 <elliott> lmao, it has K9
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:03 <elliott> :p
21:31:12 <Phantom_Hoover> Hartnell is the best.
21:31:19 <elliott> best racist asshole
21:31:22 <Phantom_Hoover> This is the party line.
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:02 <coppro> elliott: yeah :/
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:22 <elliott> in one of the episodes
21:33:25 <elliott> that television one
21:33:26 <elliott> from the new series
21:33:35 <coppro> no, they did a weakest link with cast members for charity
21:33:40 <elliott> hahaha
21:33:46 <coppro> it's in that torrent
21:33:48 <elliott> the great thing about the weakest link is how tiny the prizes are
21:33:50 <coppro> yeah
21:33:55 <elliott> OMG I GET TO WALK AWAY WITH _TWO_ _THOUSAND_ _POUNDS_
21:33:58 <elliott> happiest day of my life
21:34:01 <coppro> "Hi, I'm David, I'm 900 years old and I'm from Gallifrey"
21:34:20 <elliott> :D
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:20 <pikhq_> Yup.
21:35:24 <elliott> aka: the person whose blog post I link to whenever I want to describe it to someone
21:35:33 <Phantom_Hoover> elliott, do you have The Curse of Fatal Death?
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:35 <coppro> pikhq_: link?
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:36:56 <elliott> you missed the update :P
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:26 <elliott> coppro: wat
21:38:31 <elliott> heh
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:19 <coppro> hah
21:39:20 <elliott> and they'll both shoot up in speed
21:39:20 <elliott> LOGIC
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:42:30 <elliott> so, thank you
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:39 <coppro> for now
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:35 <elliott> The Whodrive
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:48:39 <elliott> AWESOME
21:48:44 <coppro> yeah, I dunno
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:10 <coppro> yeah
21:50:27 <coppro> I've watched the very first episode
21:50:32 <elliott> serial or episode?
21:50:35 <coppro> episode
21:50:40 <coppro> other three finished last night
21:50:41 <elliott> yeah
21:50:42 <coppro> (downloading)
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 ())
21:54:33 <lambdabot> forall b. (b -> b) -> b
22:00:11 <CakeProphet> elliott: will that terminate?
22:00:21 <elliott> It's fix.
22:00:28 <elliott> So, depends on its argument.
22:00:30 <CakeProphet> hmmm, ah I see.
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:01:53 <elliott> Yeah.
22:03:19 <CakeProphet> so what kind of proper does something have that makes it terminate when fixed?
22:03:25 <CakeProphet> *property
22:03:37 <elliott> It just lets you do general recursion :P
22:06:02 <CakeProphet> > fix (\xs@(x:_) -> (x+1):xs)
22:06:05 <lambdabot> mueval-core: Time limit exceeded
22:06:13 <elliott> > fix (\xs@(x:_) -> 0:(x+1):xs)
22:06:17 <lambdabot> mueval-core: Time limit exceeded
22:06:19 <elliott> hm
22:06:20 <elliott> oh
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:06:59 <CakeProphet> hrm?
22:07:05 <elliott> CakeProphet: laziness
22:07:11 <CakeProphet> oh that's right
22:07:11 <elliott> you force a pattern-match before ever producing an element there
22:07:27 <CakeProphet> forgot about that caveat.
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:14 <CakeProphet> and, yes.
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:53 * Phantom_Hoover → sleep
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:29 <elliott> that's rather vague
22:12:35 -!- zzo38 has joined.
22:13:03 <CakeProphet> elliott: not really..
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:46 <CakeProphet> hmmm, that's interesting
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:25:32 <CakeProphet> ah yes, the good ol' copypasta technique.
22:25:52 <CakeProphet> I should learn how to type properly. :P
22:26:05 <elliott> eh?
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:25 <CakeProphet> I wonder what those ~~'s are doing.
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:32 <Gregor> ... wow.
22:32:43 <elliott> Gregor: Wow what
22:32:44 <Gregor> What's your amazing typing speed with only index and middle finger? :P
22:32:48 <elliott> Oh
22:32:51 <CakeProphet> uh, I don't know.
22:32:55 <CakeProphet> I haven't tested it out recently.
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:02 <CakeProphet> just did a typing test and got 97 WPM
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:38 <CakeProphet> seriously who types NFL like that.
22:36:52 <pikhq_> People more pedantic than I.
22:36:55 <pikhq_> Who apparently exist.
22:38:30 -!- zzo38 has quit (Remote host closed the connection).
22:41:06 <CakeProphet> 99 WPM on a less stupid test.
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:54 <CakeProphet> but that's it..
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:37 <CakeProphet> Left Shift Would Be Weird.
22:48:42 <coppro> I only use my pinkies for modifiers and they keys they naturally rest on actually
22:49:15 <coppro> (plus /)
22:49:44 <coppro> elliott_: stupid brit
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:05 <elliott_> coppro: uhhhhh... fagnadian
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:54 <pikhq_> cheater_: Hardcore.
22:54:57 <cheater_> well pinky and ring
22:54:58 <Gregorzilla> I'll bet if I joined ##javascript with this hostname some people would worship me :P
22:55:05 <pikhq_> XD
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:56:36 <elliott_> Do it :P
22:56:46 <elliott_> What does nat/ even mean
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:12 <CakeProphet> pikhq_: yes.
22:57:13 <Gregorzilla> e.g. for the NAT that Mozilla has for wireless.
22:57:17 <pikhq_> *cough*APL*cough*
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:57:32 <CakeProphet> so there.
22:57:34 <Gregorzilla> elliott_: Uhh, yes :P
22:58:00 <pikhq_> CakeProphet: The traditional technique is just much *easier* to achieve speed with.
22:58:01 -!- schunt has joined.
22:58:04 <schunt> hah
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:36 <CakeProphet> except not quite as bad.
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:53 <Gregorzilla> schunt: Oh noooooose!
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:16 <elliott_> TROLLFACE
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:34 <elliott_> followed by a swift lynching
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:37 <Gregorzilla> Bahaha
22:59:46 <cheater_> what is 'traditional technique'?
22:59:48 <Gregorzilla> schunt: But seriously, who are you? X-P
22:59:48 <elliott_> maybe it'll be oerjan
22:59:50 <elliott_> he DOES use IE after all
22:59:54 <elliott_> Gregorzilla: pooppy
22:59:58 <pikhq_> cheater_: Touch typing, home row, and all that.
23:00:04 <Gregorzilla> pooppy is at Google?
23:00:08 <cheater_> what is non-traditional?
23:00:14 <pikhq_> cheater_: CakeProphet apparently pecks.
23:00:17 <Gregorzilla> coppro: Which Google location?
23:00:20 <elliott_> Gregorzilla: No, he's just leeching their WiFi.
23:00:23 <elliott_> OBVIOUSLY
23:00:23 <Gregorzilla> lol
23:00:24 <cheater_> lolol
23:00:30 <CakeProphet> cheater_: I am the best pecker of all.
23:00:31 <cheater_> what a l0z3r amirite
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:00:53 <coppro> Gregorzilla: MTV
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:11 <elliott_> HYUK
23:01:18 <elliott_> Gregorzilla: coppro: OMG MEET UP
23:01:20 <elliott_> AND FIGHT
23:01:21 <elliott_> TO THE DEATH
23:01:33 <coppro> Gregorzilla: where are you?
23:01:42 <Gregorzilla> coppro: Mozilla's main HQ.
23:01:45 <CakeProphet> Gregorzilla: I hear consuming drugs is a common thing to do at a social gathering.
23:01:46 <coppro> which is...?
23:01:53 <Gregorzilla> coppro: Mountain View
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:35 <CakeProphet> I might as well give up
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:02 <elliott_> Ewwwww
23:04:09 <Gregorzilla> Dun dun DUNNNNN
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:42 <CakeProphet> you could play Yahtzee
23:04:44 <CakeProphet> HISTORICALLY
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:00 <elliott_> HISTORICALLY
23:05:03 <elliott_> coppro: hi, every Elliott here
23:05:09 <elliott_> all other elliotts are imposters
23:05:11 <Gregorzilla> coppro: Nope.
23:05:36 <Gregorzilla> elliott_: You know that you're the music hall at Purdue, right?
23:05:49 <elliott_> Gregorzilla: Yeah.
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:09 <coppro> Gregorzilla: kk
23:06:11 <Gregorzilla> Yeah ... clearly they need a SECOND poultry science annex building.
23:06:15 <CakeProphet> I guess that's English, once again.
23:06:38 <elliott_> coppro: Gregorzilla: MEET UP YOU BASTARDS
23:06:48 <elliott_> topic
23:06:51 <elliott_> oops
23:06:56 <elliott_> I gotta get better at typing slashes
23:07:41 <Gregorzilla> pooppy: Why should I know Toby Elliott?
23:07:41 <CakeProphet> learn CakeProphet's mad peck typing kungfu
23:07:56 <elliott_> he's a tory
23:07:58 <elliott_> APPARENTLY
23:07:59 <elliott_> SAYS GOOGLE
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:14 <CakeProphet> hmmm, I might switch to puredyne
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:24:54 <elliott_> CakeProphet: it does.
23:24:58 <elliott_> there are replacements, but.
23:26:32 -!- schunt has quit (Quit: leaving).
23:26:38 <coppro> I got bored
23:28:20 <elliott_> did you meet gregor
23:29:57 <coppro> not yet
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:37:36 * CakeProphet is INTRIGUED.
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:39:13 <CakeProphet> also, it's all in Haskell.
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:27 <elliott_> no
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:36 <CakeProphet> yes, JACK works very well in puredyne
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.
←2011-04 2011-05 2011-06→ ↑2011 ↑all