00:00:58 <oerjan> i am not sure you could do it shorter than just writing them all out :P
00:01:39 <Sgeo> http://forum.world.st/cull-protocol-td1560122.html
00:02:03 <Sgeo> Is this sort of sentiment, that prettyness is better than actually working for more uses, a common one in the Smalltalk community?
00:02:06 <elliott> oerjan: no but it's the principle of the thing
00:02:21 <Sgeo> (The AXAnnouncement code breaks for more than a certain number of arguments)
00:02:51 <elliott> oerjan: I'm pretty sure that languages without some kind of self-modifying/macro facility produce inherently longer programs than ones without
00:03:05 <elliott> which I like to think is quite a deep revelation
00:03:18 <oerjan> for a certain minimal length...
00:03:55 <oerjan> although by kolmogorov complexity there's only an additive constant difference...
00:10:10 <elliott> oerjan: hmm is that necessarily so?
00:10:26 <elliott> oerjan: consider a language where every constant literal is unary
00:10:33 <oerjan> it occured to me it could be linear
00:10:40 <elliott> but you somehow can't parse strings into integers
00:10:48 <elliott> you can take strings as arguments to macros
00:10:54 <elliott> and they can be turned into code somehow
00:11:03 <elliott> but i guess that's specific to that language...
00:12:04 <elliott> oerjan: anyway you should concentrate on figuring out an elegant structure that's basically a list and a pointer within that list >:D
00:12:16 <elliott> (if the advance-the-pointer operation is automatically cyclic too that's even better I suppose...)
00:14:04 -!- Wamanuz4 has joined.
00:15:38 <oerjan> this is essentially a queue afaict. i thought we'd already discussed on a previous occasion using a zipper for that
00:15:58 <elliott> queues don't have a pointer to the first element do they
00:17:10 -!- Wamanuz3 has quit (Ping timeout: 246 seconds).
00:17:18 <oerjan> oh hm i misread the trace
00:17:28 <oerjan> (or rather didn't read much at all)
00:18:44 <crystal-cola> elliott: Consider a space/surface (the plane, the outline of a circle, the torus, klien bottle..) and pick two points on and think of every possible path between the two points.
00:19:37 <crystal-cola> elliott: two paths are /homotopy equivalent/ if you can continuously deform one into the other. So if you pick the same point twice on a torus, the path that goes through the hole once is not homotopy equivalent to the path that goes all the way around it.
00:20:45 <crystal-cola> Homotopy type theory seems to be about interpreting dependent types stuff as topological spaces and functions as continuous maps between spaces
00:21:25 <oerjan> elliott: i don't know about elegant but you could split the list into a few segments... one from L a bit rightward, one reversed from there until the pointer, one from the pointer a bit on, and one reversed at the end
00:22:03 <elliott> before pointer (in original order), pointer onwards cyclically (in original order)
00:22:58 <oerjan> elliott: um the whole point of my suggestion is that it's a couple of zippers that allows you to advance efficiently except when you hit the end
00:23:05 <oerjan> (when you have to rewind)
00:23:10 <elliott> crystal-cola: it makes as much sense as anything makes when i'm also listening to oerjan :D
00:23:17 <elliott> oerjan: well hitting the end is sort of a big thing in BCT...
00:23:33 <oerjan> elliott: the end here means end of segment duh
00:23:41 * Sgeo oohs at Teachables
00:25:31 -!- sebbu has quit (Read error: Connection reset by peer).
00:25:42 <oerjan> because what you _really_ want is a cyclic list with two zipper cursors.
00:25:54 <elliott> oerjan: do i really want two cursors?
00:26:05 <elliott> one to delete bits and cycle back
00:26:14 -!- sebbu has joined.
00:26:15 -!- sebbu has quit (Changing host).
00:26:15 -!- sebbu has joined.
00:26:16 <elliott> oerjan: is that what your couple of zippers provide?
00:26:23 <elliott> it just seems like it should be more elegant :P
00:26:48 <oerjan> well i'm not enough of an expert on zippers to know how to do more than one cursor elegantly
00:27:22 <elliott> maybe i'll just write it in C ;D
00:27:26 <oerjan> alternatively, you could use two Seq queues
00:27:44 <oerjan> one for L -> current, one for current -> R
00:28:05 <elliott> what is it with you and Seq
00:28:26 <oerjan> ...it's the only way i know of to do queues elegantly in haskell?
00:28:40 <crystal-cola> two paths are homotopy equivalent if ___________?
00:29:03 <oerjan> in fact what i said above is just two queues emulated with two list zippers
00:29:19 <elliott> hmm, wow, I think this is actually more elegant in C
00:29:30 <elliott> easier to do fairly elegantly
00:29:57 <crystal-cola> elliott: " The mistake is to start thinking of identity types as representing paths, but to keep trying to interpret Σ and Π as logical quantifiers"
00:32:14 <elliott> 08:31:51 <ais523> also I don't have a phone on me right now
00:32:14 <elliott> 08:31:54 <ais523> and also I don't own a phone
00:32:22 <elliott> i think i see your problem
00:36:41 <elliott> http://www.kde-look.org/CONTENT/content-pre2/54708-2.png senses Gregor lacks: smell, sight
00:36:48 <elliott> instead he has fnarf and... turgr
00:36:54 <oerjan> <ais523> and also I'm mute
00:37:21 <Gregor> elliott: The loss of support for KDE-LCARS is part of why KDE4 sucks so horribly :P
00:37:27 <oerjan> ais523 was dead the whole time
00:37:50 <elliott> Gregor: i never realised people could actually be born without any kind of taste before now ;D
00:38:10 <Gregor> LCARS is about efficiency!
00:38:17 <elliott> Gregor: omg I'm going to buy an iPad and make it look like that and go around horrifying Apple fans
00:38:24 <elliott> Hey check out my totally tricked out iPad dude
00:38:44 <Gregor> If you gave iPad an LCARS display, some people would pay SERIOUS money for dat shizzle.
00:39:00 <elliott> Gregor: Whereby some people is used to mean you.
00:39:12 <Gregor> More like "trekkies with more money than me"
00:39:27 <Gregor> Also, "trekkies who hate Apple less than me"
00:39:54 <elliott> Honestly, the iPad is pretty damn close to LCARS :P
00:40:06 <elliott> If it weren't for the typical Apple lockdown douchebaggery it'd be schweeet.
00:41:19 <pikhq> It'd work a bit better with actual tactile feedback.
00:41:42 <elliott> 10:04:13 --- join: oerjan (n=oerjan@hagbart.nvg.ntnu.no) joined #esoteric
00:41:43 <elliott> 10:05:05 * oerjan declares the optbot topic idea to be a strike of genius
00:41:48 <elliott> pikhq: did LCARS have that canonically?
00:42:06 <elliott> apart from typing, tactile feedback isn't that useful, though
00:42:16 <elliott> your mouse doesn't really have it (it clicks, sure, but it clicks regardless of whether you actually did anything)
00:42:43 <pikhq> It does make repetitive, *automatic* use of an interface possible.
00:43:15 <pikhq> Which it seems like you'd want for some of the tasks LCARS was depicted doing.
00:44:03 <pikhq> But for some other things, it's little more than a nicety.
00:45:06 <Gregor> All we need is a display that's touch sensitive, and can also adjust the height of individual pixels (or even just "cells") up or down a few millimeters.
00:45:07 <Gregor> The actual response could be produced entirely by software. This bit acts like a button because when you exert pressure on it, the software signals it to click.
00:46:49 <elliott> Gregor: Honestly the problem is that that's not enough.
00:46:56 <elliott> With keyboards, you can feel the keys _before_ you press them.
00:47:00 <elliott> That's not really possible with that system.
00:47:12 <elliott> I don't generally mis-hit a key ever.
00:47:21 <elliott> But my fingers sure do occasionally not get in the right place.
00:47:42 <Gregor> elliott: It would only have to have embossment between the "keys" to simulate everything necessary.
00:48:05 <elliott> Hmm, you mean keeping them up permanently?
00:48:19 <elliott> LCARS was totally flat though because durp durp Science Trek durp
00:48:23 <Gregor> I mean they're up whenever you're not pressing on them.
00:48:28 <Gregor> Well yeah, I'm not talking about LCARS any more :P
00:48:36 <Gregor> That's tactile feedback by MAGIC>
00:48:56 <elliott> Gregor: You misspelled SCIENCE.
00:49:59 <Gregor> But more to the point, they're up whenever you're not pressing them, and it's in "keyboard mode"
00:50:04 <elliott> oerjan: self-BCT visualisation might be a bit hard for rapidly growing patterns :P
00:50:13 <Gregor> Since the height is software-configured, it doesn't have to simulate a keyboard.
00:50:16 <elliott> Gregor: Problem is, it'd have to be more than a few mm.
00:50:28 <elliott> Gregor: Not even scissor-switches have /that/ little bumpiness.
00:50:52 <elliott> Gregor: ALSO, the software would need super good latency, because lord knows your fingers won't be kind to lag.
00:51:03 <Gregor> Oh yeah, it'd have to be CRAZYfast.
00:51:19 <elliott> Yeah, and the mechanics would have to be practically instant :P
00:51:21 <Gregor> But that's not infeasible so long as it's done right (which it won't be because ... well, software)
00:51:22 <pikhq> elliott: Which is to say that it would need by done by intelligent people.
00:51:29 <elliott> Otherwise there'd be no transition, it'd be "I'm touching this key" -> "Whoops there is now air below my finger"
00:51:35 <Gregor> I would think about 10mm total would be sufficient though ...
00:51:58 <elliott> Gregor: I dunno about that... scissor switch keyboards are fine, but they get away with it by requiring tons of force to press.
00:52:00 <pikhq> Sub-20ms is entirely doable, and sufficiently low that humans can't freaking notice.
00:52:05 <elliott> Which sort of "simulates" more tactile reaction than they have.
00:52:10 <elliott> pikhq: Yeah, except that it has to be CONTINUOUS.
00:52:19 <elliott> It has to move down by at LEAST one mm precision AS you press the key.
00:52:42 <pikhq> elliott: 20ms latency is perceived as "instant".
00:53:01 <elliott> We're talking instinctual here.
00:53:19 <Gregor> I'm inclined to agree with elliott, but I still think it's entirely doable.
00:53:30 <elliott> But don't expect to do it with Linux :P
00:53:30 <pikhq> Oh, right, may want to make that smaller still. What's the spinal cord-finger latency?
00:53:43 <elliott> It'd need some serious real-time operating system mojo.
00:53:50 <elliott> And ridiculously optimised standard button components :P
00:54:01 <elliott> In fact, some kind of hyper-parallel architecture might help, just dedicate one per button :P
00:54:08 <pikhq> elliott: It's definitely not non-zero.
00:54:20 <pikhq> Erm, definitely non-zero.
00:54:41 <elliott> Gregor: OK, let me clarify.
00:55:03 <elliott> Gregor: You can't do it with a stock Ubuntu configuration running on regular PC hardware :P
00:55:09 <pikhq> The display itself would probably need to be controlled by a dedicated microcontroller.
00:55:19 <elliott> (Linux by default is ridiculously configured anyway as far as desktops are concerned.)
00:55:31 <elliott> pikhq: Yep, but Gregor wants software-controlled buttons...
00:56:11 <Gregor> I want the location, size and function of buttons to be software-controlled.
00:56:11 <pikhq> elliott: Well, you could send configuration of that from the main system to the display over the connecting bus.
00:56:29 <Gregor> I see no reason why the actual response has to be controlled by the main CPU, though I also see no reason why it has to be hardware.
00:56:31 <elliott> Gregor: Oh, so it's OK for the actual depressing to be uncontrollable?
00:56:40 <elliott> Gregor: What if you just want a permanent emboss effect ;D
00:56:57 <elliott> Oh my god imagine CSS five with font-style: emboss.
00:57:05 <elliott> Then pages with white on white text, just it's embossed.
00:57:48 <crystal-cola> I wish they would make the web simpler instead of more complicated ;/
00:58:16 <Gregor> COMPLICATION IS ALWAYS THE SOLUTION
00:58:38 <crystal-cola> they probably play that on a loop to all the w3c folks
00:58:50 <elliott> crystal-cola: Define simpler :P
00:59:37 <elliott> oerjan: Hmm, maybe the self-BCT thing should just scale down lines if they get too long... that's ugly though.
01:00:23 <pikhq> crystal-cola: Step one to make the web simpler: start with Gopher.
01:01:08 <elliott> ENFILAAAAAAAADEEEEEEEEEEEEES
01:05:43 <elliott> oerjan: ouch, i just thought about a /// self-interp
01:08:22 -!- TeruFSX has quit (Quit: No Ping reply in 180 seconds.).
01:08:50 -!- TeruFSX has joined.
01:09:24 <oerjan> <elliott> Oh my god imagine CSS five with font-style: emboss. <-- no, font-style: crochet
01:15:59 <oerjan> http://giftrash.com/post/5008479548
01:16:11 <oerjan> (don't watch on a bad stomach)
01:17:16 <pikhq> It occurs to me that an aquaduct system would be a pretty awesome means of transport in Minecraft.
01:17:32 <elliott> pikhq: you mean just travelling along a stream?
01:17:38 <pikhq> Admittedly, not as fast/convenient as minecarts, but hey.
01:18:18 <pikhq> More resource-efficient.
01:18:45 <pikhq> Could, in fact, be done entirely with renewable resources.
01:19:43 <crystal-cola> I just mean setting up a 3D grid of cubes which you can render at a decent speed
01:19:52 <elliott> oerjan: argh bct also writes at the /end/
01:19:58 <crystal-cola> you must have to do something clever to make it render fast enough
01:20:08 <elliott> so you need the beginning, the end, and an advancing cyclic pointer within
01:20:18 <elliott> crystal-cola: not really? it's just opengl
01:20:19 <Sgeo> Well, that was an ugly hack
01:20:26 <elliott> crystal-cola: hardware does it all for you
01:20:27 <Sgeo> true ifTrue: [^true].
01:20:27 <pikhq> crystal-cola: Requires more creativity than programming-chops, really.
01:20:36 <oerjan> elliott: the beginning + end is also an advancing cyclic pointer so to speak
01:20:46 <pikhq> Presuming, of course, that you're not using an utterly sadistic language for the task.
01:21:14 <elliott> oerjan: if i didn't think it'd make such a pretty visualisation i'd stop coding right now ;D
01:21:39 -!- crystal-cola has quit (Quit: leaving).
01:22:07 <pikhq> If you're using C, then you need to actually have notable programming skill for a Minecraft-alike.
01:22:21 <pikhq> Just like for everything non-trivial.
01:25:20 <pikhq> The biospheres mod is approximately "awesome".
01:28:03 <Gregor> C: Best language for all tasks.
01:28:12 <elliott> Gregor: Yeaaaaaaaaaaaaaaaahno
01:30:32 <elliott> wow ok i hate c strinf handling so bad
01:31:09 <pikhq> Yeah, the API makes it damned difficult to just do *safely*.
01:31:31 <elliott> can i have the first toaster
01:32:43 <elliott> i know what i'll write it in PYTHON
01:32:47 <elliott> the best language for shitting yourself with
01:34:24 -!- augur has quit (Remote host closed the connection).
01:40:48 -!- BeholdMyGlory has quit (Remote host closed the connection).
01:40:49 <elliott> hmm, my self-bct interp is broken...
01:50:25 <elliott> this program isn't supposed to stop running
01:50:53 <oerjan> must be your evil streak
01:53:23 <elliott> self.pos = (self.pos + 1) % len(self.state)
01:53:23 <elliott> ZeroDivisionError: integer division or modulo by zero
01:53:26 <elliott> THIS PROGRAM IS NOT MEANT TO END DAMMIT
01:54:21 <elliott> but it's meant to take a long time
01:56:27 -!- augur has joined.
02:03:00 <elliott> oerjan: hm concatenating a BCT program with itself has no observable effects as far as execution goes, right?
02:04:59 <oerjan> an ordinary BCT program? no.
02:05:09 <elliott> oerjan: well i mean self-bct
02:05:39 <oerjan> well then it definitely matters yeah
02:17:56 -!- lament has quit (Quit: Lost terminal).
02:43:27 <pikhq> Seems that tar on this system does not interact nicely with LD_PRELOAD.
02:44:12 <pikhq> I get the feeling GNU tar is too clever for its own good.
02:47:07 -!- Sgeo has quit (Read error: Connection reset by peer).
02:48:01 -!- Sgeo has joined.
03:15:04 <oerjan> explicitly explain exploding explorers
03:17:04 <copumpkin> explicitly explain exciting exploding excrement explorers excluding excellent expletives
03:24:21 -!- Wamanuz4 has quit (Ping timeout: 260 seconds).
03:24:53 -!- Wamanuz4 has joined.
03:41:40 -!- augur has quit (Remote host closed the connection).
03:44:54 <pikhq> elliott: Tar not interacting with LD_PRELOAD.
03:45:05 <pikhq> elliott: But it's dynamically linked.
03:45:42 <pikhq> I tried making a tup rule using it. It got absolutely no information from the process.
03:47:46 <pikhq> Even if it *is* actually having the LD_PRELOAD'ed library work, it is still *definitely* being too clever for its own good.
03:51:15 -!- pikhq_ has joined.
03:53:54 <pikhq_> elliott: And I suppose tup doesn't intercept mmap?
03:54:09 <elliott> wait, mmap requires open()
03:54:10 -!- pikhq has quit (Ping timeout: 252 seconds).
03:54:19 <pikhq_> Oh, right, so it does.
04:01:30 <elliott> well it could use syscalls directly instead of going through libc :P
04:06:02 -!- augur has joined.
04:07:07 -!- oerjan has quit (Remote host closed the connection).
04:07:16 -!- oerjan has joined.
04:11:15 <pikhq_> I'm checking the source code, presently.
04:15:00 <pikhq_> It definitely goes through libc's open.
04:35:59 -!- TeruFSX has quit (Read error: Operation timed out).
04:45:06 -!- elliott has quit (Ping timeout: 240 seconds).
04:57:12 -!- oerjan has quit (Quit: Good night).
05:02:01 -!- quintopia has quit (Ping timeout: 250 seconds).
05:03:16 -!- quintopia has joined.
05:06:39 -!- aloril has quit (Ping timeout: 248 seconds).
05:20:37 -!- aloril has joined.
05:29:10 <micahjohnston> !slashes @so !slashes /not available/!slashes @so !slashes \/not available\/\//
05:31:25 <EgoBot> 0000******************
06:00:38 -!- quintopia has quit (Ping timeout: 240 seconds).
06:07:04 -!- quintopia has joined.
06:17:25 -!- Sgeo_ has joined.
06:18:44 -!- Sgeo has quit (Ping timeout: 250 seconds).
06:42:25 -!- copumpkin has changed nick to danp_.
06:42:41 -!- danp_ has changed nick to bambam.
06:49:36 -!- bambam has changed nick to copumpkin.
07:07:34 <pikhq_> http://www.youtube.com/watch?v=n-AbPav5E5M&feature=youtu.be This boggles the mind.
07:21:47 -!- pikhq_ has quit (Quit: Lost terminal).
07:57:59 -!- CakeProphet has joined.
08:00:32 <siracusa> How does !slashes work, what language is this?
08:13:05 -!- crystal-cola has joined.
08:16:46 -!- azaq23 has joined.
08:23:34 -!- CakeProphet has quit (Quit: Lost terminal).
08:24:12 <siracusa> !slashes /1/0@so !slashes //0//111
08:24:13 <EgoBot> @so !slashes @so !slashes @so !slashes
08:24:13 <lambdabot> !slashes @so !slashes @so !slashes not available
08:24:14 <EgoBot> @so !slashes @so !slashes not available
08:24:14 <lambdabot> !slashes @so !slashes not available not available
08:24:15 <EgoBot> @so !slashes not available not available
08:24:15 <lambdabot> !slashes not available not available not available
08:24:16 <EgoBot> not available not available not available
08:33:14 <crystal-cola> @so !slashes /not/1//available/1//1/@so !slashes/
08:33:15 <lambdabot> !slashes /not/1//available/1//1/@so !slashes/ not available
08:33:16 <EgoBot> @so !slashes @so !slashes
08:33:16 <lambdabot> !slashes @so !slashes not available
08:33:17 <EgoBot> @so !slashes not available
08:33:17 <lambdabot> !slashes not available not available
08:33:18 <EgoBot> not available not available
08:42:18 <siracusa> Not completely sure what I'm doing there :-)
08:44:15 <crystal-cola> is it possible to output every string with this language??
08:50:10 <EgoBot> Sorry, I have no help for slashes!
08:54:06 <crystal-cola> !slashes /s/\\\///b/\\\\//t/\s\h\s\b\b\b\s\s\s\k\s\b\b\b\b\s/tt
08:55:47 <crystal-cola> !slashes /t/\s\h\s\b\b\b\s\s\s\k\s\b\b\b\b\s//s/u//b/v//u/\\\///v/\\\\/tt
08:55:48 <EgoBot> /h/\\\///k/\\\\//h/\\\///k/\\\\/
08:56:09 <crystal-cola> how to make it print \s\h\s\b\b\b\s\s\s\k\s\b\b\b\b\s??
08:57:01 <crystal-cola> !slashes /q/\\\\/t/qsqhqsqbqbqbqsqsqsqkqsqbqbqbqbqs//s/u//b/v//u/\\\///v/\\\\/tt
09:01:48 -!- Wamanuz5 has joined.
09:04:32 -!- Wamanuz4 has quit (Ping timeout: 240 seconds).
09:05:29 <crystal-cola> if you have /s/blahblahblah/ how do produce "s"s
09:10:34 <crystal-cola> like if you have /s/xyz/ and x->a,y->b,z->c how do you produces xyzabc
09:33:19 -!- monqy has quit (Quit: hello).
09:53:23 -!- ais523 has joined.
10:21:29 -!- sebbu2 has joined.
10:21:30 -!- sebbu2 has quit (Changing host).
10:21:30 -!- sebbu2 has joined.
10:24:24 -!- sebbu has quit (Ping timeout: 240 seconds).
10:29:49 -!- BeholdMyGlory has joined.
10:46:40 <cheater2> amazing blog, search for "Assembly is the most powerful programming language": http://www.linuxjournal.com/article/7684?page=0,1
11:31:04 -!- azaq231 has joined.
11:33:12 -!- azaq23 has quit (Ping timeout: 260 seconds).
11:35:53 -!- FireFly has joined.
11:42:00 -!- azaq231 has quit (Ping timeout: 250 seconds).
11:56:24 <Vorpal> ais523, arguably vhdl > microcode then :D
12:01:04 -!- siracusa has quit (Ping timeout: 250 seconds).
12:02:40 -!- siracusa has joined.
12:12:04 -!- TeruFSX has joined.
12:20:33 <ais523> probably (<) > (>) would be a bit clearer
12:48:03 -!- Dentist[1] has joined.
12:49:33 <Dentist[1]> Free IRC Bouncers! irc://irc.bitsjointirc.net:6667/ZNC
12:49:35 <Dentist[1]> Free IRC Bouncers! irc://irc.bitsjointirc.net:6667/ZNC
12:49:35 -!- Dentist[1] has quit (Killed (idoru (Spam is off topic on freenode.))).
12:53:09 -!- BeholdMyGlory has quit (Remote host closed the connection).
12:55:46 -!- ais523 has quit (Remote host closed the connection).
12:58:03 -!- TeruFSX has quit (Ping timeout: 264 seconds).
12:59:36 -!- ais523 has joined.
13:01:35 <ais523> are you playing the stable version or the dev version?
13:04:01 <cheater2> i'm playing the aptitude version.
13:04:48 <ais523> that's the stable version
13:04:54 <cheater2> why - does it make such a difference?
13:05:01 <ais523> the only really user-noticeable difference between the two is a lot more levels
13:05:04 <ais523> but they changed most of the internals
13:05:10 <ais523> so new levels can't easily be added to the old version
13:05:33 <ais523> because the old level file format was awkward and rather hard to write clever things in
13:05:56 <cheater2> well, i just got to the rollercoaster level, and it was annoying, so i turned it off.
13:06:09 <ais523> you can skip levels you don't like or can't solve; I think everyone does that
13:06:30 <cheater2> yeah, but the fun threshold was passed
13:06:45 <cheater2> now i'm up to other things, such as rescuing data from my failed hdd
13:07:19 <cheater2> that is, rescue data from hard disk drives
13:07:29 -!- azaq23 has joined.
13:09:15 <ais523> cheater2: no, I just restored from backups
13:09:21 <cheater2> i wonder what the difference is between a "/" and a "-" in gnu ddrescue
13:09:27 <ais523> (I /have/ had hard drives fail on me, though)
13:09:35 <cheater2> '-' failed block bad-sector(s)
13:10:25 <cheater2> according to its info manual, it takes blocks which failed to read, and does something like bsp, trying to reduce the irrecoverable area as much as possible
13:10:46 <cheater2> but i'm not sure whether / or - are going to be reduced still, or if they're ones it's given up on
13:11:30 <cheater2> i think non-split is the ones it's going to do BSP on
13:11:50 <cheater2> out of a 460 GB file system, it reduced the error to only about 30 mb
13:11:58 <cheater2> i think it's nowhere near giving up now
13:12:55 <cheater2> after it totally gives up, i'll mount the file system and find out which files have bad sectors in them
13:13:18 <cheater2> usually it'll be system internals which can be replaced easily
13:13:33 <cheater2> or media files which can be redownloaded
13:13:54 <cheater2> afterwards i'll boot the OS and run debsums on it
13:14:10 <cheater2> hopefully finding only a few packages which fail, that i can reinstall
13:15:43 <ais523> cheater2: you have so much more a sensible attitude to a hard disk crash than Sgeo
13:19:03 <cheater2> ais523, in support of my current plan, do you know how to add hex numbers in awk?
13:19:23 <cheater2> i've got a file full of lines that name hex numbers, i just need to add them and output in decimal
13:19:41 <cheater2> i know awk handles hex literals, but it doesn't seem to handle hex input
13:20:56 <ais523> cheater2: I don't know awk
13:21:15 <ais523> you could use perl (awk compiles to it, and it can parse hex numbers using the "hex" builtin function)
13:21:20 <cheater2> how can you not know the most used esoteric programming language on earth!
13:21:44 <ais523> perl's probably more eso than awk (although not eso), and also more popular
13:22:19 <Deewiant> cheater2: gawk --non-decimal-data
13:24:16 -!- wareya_ has joined.
13:26:46 -!- wareya has quit (Read error: Operation timed out).
13:28:38 <cheater2> cat /tmp/gddrescue.log | grep '/' | awk --non-decimal-data 'BEGIN {a = 0} {print $2; a += $2} END {print a/1024/1024}'
13:29:01 <cheater2> well, not really *that* perfect, but still good.
13:31:01 <cheater2> i wish there was an application that let you display text in gnome's notification area on the panel
13:31:17 <cheater2> i remember searching for it a lot about 6 months ago, i should search again
13:32:41 <Deewiant> All variables are initialized to 0, that BEGIN is superfluous
13:33:15 <Deewiant> And you can match in awk too, put /\// in front of your print-+=-block
13:33:35 <cheater2> you know, this option you brought up surprised me, i'd expect this to be something that is handled inside the language, not when invoking the runtime
13:34:31 <Deewiant> IIRC that option is very much not recommended by the manual
13:34:48 <Deewiant> But it's the only way of doing it that I remember by heart
13:36:23 <cheater2> hmm.. if the thing is *splitting* bad blocks.. why would the sum *increase* in size?
13:36:50 <cheater2> i see it steadily growing from 13.0049 to nearly 14 by now
13:40:36 <cheater2> man watch is ridiculous underdocumentation.
14:39:12 <cheater2> even though the error size, as reported by ddrescue, is monotonically decaying
15:19:29 -!- sebbu has joined.
15:21:48 -!- crystal-cola has quit (Quit: leaving).
15:22:39 -!- sebbu2 has quit (Ping timeout: 264 seconds).
15:28:34 -!- sebbu has quit (Read error: Connection reset by peer).
15:28:59 -!- sebbu has joined.
15:28:59 -!- sebbu has quit (Changing host).
15:28:59 -!- sebbu has joined.
15:32:12 -!- Phantom_Hoover has joined.
15:33:02 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
15:38:30 -!- sebbu2 has joined.
15:38:31 -!- sebbu2 has quit (Changing host).
15:38:31 -!- sebbu2 has joined.
15:40:46 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
15:40:53 -!- clog_ has quit (Remote host closed the connection).
15:41:06 <micahjohnston> !slashes /9/0*********//8/0********//7/0*******//6/0******//5/0*****//4/0****//3/0***//2/0**//1/0*//*0/0**********//0//3
15:41:12 <micahjohnston> !slashes /9/0*********//8/0********//7/0*******//6/0******//5/0*****//4/0****//3/0***//2/0**//1/0*//*0/0**********//0//72
15:41:13 <EgoBot> ************************************************************************
15:41:30 -!- sebbu has quit (Ping timeout: 240 seconds).
15:41:32 <cheater2> Deewiant, thanks for your awk help earlier
15:42:00 <micahjohnston> !slashes /9/0*********//8/0********//7/0*******//6/0******//5/0*****//4/0****//3/0***//2/0**//1/0*//*0/0**********//0//10
16:05:11 -!- MigoMipo has joined.
16:06:14 -!- sebbu2 has quit (Read error: Connection reset by peer).
16:06:42 -!- sebbu has joined.
16:06:43 -!- sebbu has quit (Changing host).
16:06:43 -!- sebbu has joined.
16:14:28 -!- Phantom_Hoover has joined.
16:18:54 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
16:28:44 -!- BeholdMyGlory has joined.
16:36:55 -!- Kouta_ has joined.
16:58:38 -!- elliott has joined.
16:59:42 <elliott> 08:44:15: <crystal-cola> is it possible to output every string with this language??
16:59:42 <elliott> 08:44:20: <crystal-cola> I think some strings cannot be output
17:00:07 <elliott> 09:05:29: <crystal-cola> if you have /s/blahblahblah/ how do produce "s"s
17:00:14 <elliott> you can't, you have to find another way to structure hings
17:00:51 <elliott> 12:48:03: -!- Dentist[1] has joined #esoteric.
17:00:51 <elliott> 12:49:33: <Dentist[1]> Free IRC Bouncers! irc://irc.bitsjointirc.net:6667/ZNC
17:00:51 <elliott> 12:49:35: <Dentist[1]> Free IRC Bouncers! irc://irc.bitsjointirc.net:6667/ZNC
17:00:51 <elliott> 12:49:35: -!- Dentist[1] has quit (Killed (idoru (Spam is off topic on freenode.))).
17:00:56 <elliott> awesome i can't wait to get my free bouncer
17:01:32 <elliott> 13:15:43: <ais523> cheater2: you have so much more a sensible attitude to a hard disk crash than Sgeo
17:01:45 <elliott> ais523: how can a hard disk lose data just by sitting around broken for days IT MAKES NO SENSE I'll recover the data later
17:02:00 <ais523> by sitting around broken for days while you repeatedly try to start it up
17:02:21 <elliott> ais523: [proceeds to ignore you and then acts incredulously later when told that the data is likely unrecoverable]
17:05:32 <cheater2> ais523, so what did sgeo do with his hard drive?
17:05:36 -!- olsner has quit (Ping timeout: 240 seconds).
17:05:53 <ais523> cheater2: repeatedly tried to start it up, then left it for weeks
17:06:06 <Sgeo_> It was not inside a computer for weeks
17:06:10 <Sgeo_> If that's any help
17:06:23 -!- crystal-cola has joined.
17:06:30 <Sgeo_> But if it's not any help: It's now months
17:06:38 <elliott> youve lost all that valuable nothing
17:06:45 <cheater2> Sgeo_, did it show up in bios?
17:06:55 <cheater2> as in, was it found during POST?
17:07:01 <Sgeo_> cheater2, I don't remember, I think so
17:07:13 <cheater2> how many bad sectors did it have?
17:07:13 -!- olsner has joined.
17:07:33 <Sgeo_> I do remember this channel helping me figure out a dd to use
17:07:35 <cheater2> did it have your operating system on it?
17:07:42 <Sgeo_> But I don't have any other computer to actually do it with
17:07:57 <elliott> we told you exactly what to do
17:08:04 <elliott> you gave up after you realised it would take at least a day
17:08:10 <Sgeo_> Well, I have another computer. It's just it doesn't support the hard drive
17:08:17 <elliott> ask for help -> get help -> refuse to perform help -> repeat
17:08:37 <Sgeo_> When I get a HD .. thing, then I'll do it
17:08:38 <cheater2> Sgeo_, it would be fairly nice if you could answer :3
17:08:40 <olsner> ergh, linux does *not* do well in oom situations
17:08:50 <Sgeo_> cheater2, yes, my OS was on it
17:08:55 <elliott> You had your chance, the disk is totally fucked at this point, give up.
17:09:03 <cheater2> Sgeo_, did it boot up or at least begin to boot up?
17:09:48 <myndzi> it's weird, most of the hard drive crashes i've encountered in more recent years have been failures of the circuit board or something, not mechanical failures/bad sectors/whatever
17:09:56 <myndzi> i don't know why that should be
17:10:01 <cheater2> Sgeo_, did it show something to the effect "no system disk found" etc?
17:10:16 <Sgeo_> cheater2, this was months ago, I don't remember
17:10:21 <elliott> myndzi: in this case it's because sgeo's hands are fucking retarded and he dropped it
17:10:30 <cheater2> because if that's what it was, then you can probably recover 100% of your data
17:10:31 <elliott> because its really easy to drop a laptop you're holding
17:10:37 <elliott> especially if it's covered in butter
17:10:57 <myndzi> unfortunately the only time i tried there were a LOT of problems and the dude never called us back
17:11:10 <Sgeo_> In the meantime, this laptop has been dropped several times with no issues
17:11:14 <cheater2> oh if it's mechanically damaged it might be more difficult
17:11:16 <myndzi> yeah, he was hungry and ate it for lunch
17:11:25 <elliott> Sgeo_: wow would you please concentrate on not being a moron who drops things for no reason
17:11:28 <cheater2> but it's still possible you'd recover most of your data
17:11:30 <elliott> rather than selecting laptops based on their resilience to dropping
17:11:35 <myndzi> Sgeo_: yes, that just goes to show that dropping laptops is never going to have problem
17:11:37 <elliott> maybe itll be an incentive if your laptop breaks every few days
17:11:44 <myndzi> get yourself a toughbook
17:11:46 <cheater2> what's elliott's problem? not taken the pills today?
17:11:49 <myndzi> then you can drop it all you like
17:12:02 <elliott> myndzi: no Sgeo_ lives on top of a gigantic mesa
17:12:05 <myndzi> drive over it, leave it outside in puddles, etc.
17:12:06 <elliott> with gigantic holes everywhere
17:12:18 <elliott> whoops there goes another one down the hole
17:12:22 <myndzi> i think they dropped a toughbook in testing from some fairly high buildings :P
17:12:52 <myndzi> oh, apparently they say 6 feet
17:12:55 <elliott> myndzi: were talking miles high here
17:13:01 <cheater2> but the lenovos are fairly resilient to droppage too
17:13:04 <myndzi> but i wanna say they were dropping from like 3 stories or 6
17:13:37 <myndzi> i know a military dude who's used toughbooks in the field, he says they're amazing
17:13:44 <elliott> ok wow my bct interpreter is a bit slow i guess
17:13:48 <myndzi> except he doesn't think the new ones are good
17:15:12 <elliott> yah ok this program is only meant to last 43074 steps
17:15:31 <elliott> the test program was wrong
17:16:53 <elliott> woo this is going to be like a hundred megabyte trace
17:17:14 <elliott> hey does anyone know how to turn a file with lines of zeros and ones
17:17:18 <crystal-cola> I asked a question in math software if anyone knows software to solve this problem.. but it's just this guy saying he has years of experience in problems like this and I should learn linear algebra
17:17:32 <elliott> there's that text to pbm thing...
17:21:50 <cheater2> Sgeo_, if you still want to recover that stuff, i could walk you through it
17:22:11 <Sgeo_> cheater2, I think I know what to do
17:22:20 <Sgeo_> It's just a matter of getting the hardware to do it
17:22:32 <elliott> lol it literally just renders the text
17:24:32 <Sgeo_> I don't remember offhand
17:32:30 <elliott> maybe ill just use pygame or whatever
17:35:36 <olsner> use sed to convert your file into an xpm
17:35:46 <ais523> yay, just got up to the top 100 in the world on this Pokémon simulator (playing the "official" Pokémon Company rules, not the fanmade ones)
17:36:07 <ais523> although it's a really luck-based format, so it's hard to see just how good individual people are
17:36:18 <elliott> olsner: i don't really know the xpm format
17:36:23 <elliott> i guess i could learn it OH
17:37:08 <elliott> i'll need to pad out all lines though
17:37:15 <elliott> you know what pygame will be easier
17:37:18 <myndzi> congrats on your pokeymans i guess?
17:37:32 <myndzi> there would be fanmade rules, are they totally broken or just somewhat? :P
17:38:32 <elliott> ais523: condolences on your potemkins
17:47:16 -!- zzo38 has joined.
17:49:57 <elliott> hmm, the results from this bct visualiser aren't so interesting so far
17:55:32 <elliott> oh now this is interesting
17:55:54 <elliott> it barely looks like it's doing anything at all
18:04:29 -!- monqy has joined.
18:39:05 -!- calamari has joined.
18:54:13 -!- sebbu has quit (Read error: Connection reset by peer).
18:54:41 -!- sebbu has joined.
18:54:41 -!- sebbu has quit (Changing host).
18:54:41 -!- sebbu has joined.
19:24:30 -!- calamari has quit (Ping timeout: 240 seconds).
19:29:23 -!- oerjan has joined.
19:29:41 <elliott> i wrote a self-bct visualisation program but it is a bit boring?
19:30:40 <oerjan> ...how do you make something like that not boring, anyway
19:30:53 <elliott> oerjan: well wolfram CAs tend to be quite pretty?
19:31:00 <elliott> this not as much, it's kind of cool though
19:31:31 <elliott> in fact it looks pretty much like keymaker's clue :D http://esolangs.org/w/images/1/1e/Clue-110data.png
19:31:37 <oerjan> i think this is more like a TM in that it only changes in a couple places at a tie
19:31:48 <elliott> oerjan: it literally only changes in one place at a time
19:31:55 <elliott> it either appends a bit or deletes the first bit
19:32:01 <elliott> that's the only change you'll ever see
19:32:45 <oerjan> ok "a couple places" applies to a little longer time than one generation
19:33:06 <elliott> i think if you rendered it in a sort of DNAy spiral way it might look pretty?
19:34:58 <elliott> oerjan's just sitting on his proof that selfbct is tc
19:35:03 <elliott> sitting on it and cackling
19:35:57 <oerjan> elliott has such a lively imagination
19:36:53 -!- calamari has joined.
19:38:16 <crystal-cola> Does anyone know how to solve this problem? I have integer rectangle matrix A and want to find Ax = 0
19:38:45 <crystal-cola> can Gaussian elimination do it? I don't have code for that :/
19:40:03 <oerjan> yes, gaussian elimination preserves rationality so you should get a rational basis
19:41:53 <zzo38> I am trying to write the TeX file for recording D&D (3.5e) games
19:42:25 <cheater2> you know what Ker A is, right?
19:42:41 <elliott> oerjan: hmm, maybe I should graph length of data string over time or something
19:43:10 <oerjan> i'm sure there are lots of implementations. my determinant code uses it but it's a bit too intertwined
19:43:37 <elliott> crystal-cola: want to play with my self-bct stuff? :P
19:44:43 <cheater2> is it for a 3d computer graphics problem?
19:45:13 <crystal-cola> im trying to generate a number theoretically interesting polynomial
19:45:13 <cheater2> no you're not the king and queen of cheese
19:46:38 <crystal-cola> (that's why I need rationals as opposed to numerical)
19:46:41 <cheater2> if A: V->W, then take the basis of V
19:47:07 <crystal-cola> cheater2: I would really like code that solves it
19:47:09 <cheater2> then W\span{AB} is going to be Ker A
19:47:20 <cheater2> i would really like you to caress my nuts
19:47:30 <cheater2> yes, that's why it has a kernel
19:48:31 <cheater2> actually no, it's not why it has a kernel
19:48:54 <cheater2> just transform the basis of V by A and see what you do not get
19:48:55 <oerjan> afair basically you append an identity matrix to A, then reduce to row-echelon form. the final rows where the part from A has become 0 give the x coordinates for a kernel basis in the appended part
19:49:23 <cheater2> oerjan, your solution isn't so easy to implement in code 'tho
19:49:56 <cheater2> because you can take numpy and whip up what i mentioned right away
19:50:27 <oerjan> you did remember he needed _rationals_?
19:50:52 <oerjan> so unless numpy can do exact arithmetic, it need not apply
19:51:09 <cheater2> rationals are fine, just define __mul__
19:51:31 <cheater2> also i think it might be able to, oerjan
19:51:43 -!- Kouta_ has quit (Quit: Leaving).
19:51:49 <elliott> import http://foo.blogspot.com/...
19:52:08 <oerjan> hm actually you need to reduce columns not rows maybe
19:52:15 <elliott> oerjan: i think cheater2 is wrong, i don't think numpy works with arbitrary objects
19:52:28 <elliott> especially since a large amount of the point is to have tight C loops...
19:52:32 <elliott> which calling into python would break
19:53:30 <cheater2> just multiply all entries so that everything will be integers
19:55:55 <oerjan> <cheater2> then W\span{AB} is going to be Ker A <-- i don't think that is quite right. i vaguely recall the correct theorem involves transposing the matrices somewhere
19:58:29 <cheater2> oerjan, B is a set, not a matrix.
19:58:54 <cheater2> \mathbb{B} is the usual denotation for the basis of a vector space.
19:59:22 <cheater2> think about it.. the range of A is defined by the basis of V
19:59:24 <oerjan> and what do you mean by W\ anyway
19:59:57 <oerjan> in that case you're _really_ wrong
20:00:51 <cheater2> you'd need to A^-1 that stuff, wouldn't you
20:01:26 <oerjan> which rather defeats the purpose
20:01:30 <cheater2> anyways, the idea is to find the basis of \span{AB}, then extend that to a basis of W, then take just the extension and translate it back to V. then you have Ker A.
20:02:03 <oerjan> except that doesn't work, the span of A does not determine the kernel of A, period
20:03:39 <oerjan> i am not entirely sure, but i think the correct theorem may be something like ker A = (span(A^T))^{_|_}
20:04:29 <crystal-cola> fuck it ill just fucking solve the system myself by hand
20:04:39 * oerjan used to know this stuff once :)
20:05:19 <oerjan> that theorem extends to hilbert space operators and stuff
20:09:34 <crystal-cola> I wish I had a tool that would let me do row operations really easily
20:12:33 <oerjan> crystal-cola: i think my suggestion requires column operations, although that's a trivial difference
20:13:08 <oerjan> erm rows are horizontal and columns are vertical...
20:13:30 <elliott> wait wait wait i feel a witty coming on
20:13:48 <oerjan> yes, afair we didn't bury her standing
20:14:10 <elliott> im gonna go into #deadrelatives and make your mom and dead baby jokes all day long
20:16:27 <elliott> i sure hope XigXag is TC :)
20:16:39 <elliott> it has exponential growth for almost all programs
20:16:43 <elliott> so I guess it inherently isn't?
20:16:48 <elliott> unless you can encode a halting state
20:17:45 <Vorpal> evangelic spam on freenode, in #perl. Huh
20:17:55 <Vorpal> (speaking of which, why was my client in there)
20:18:04 <elliott> maybe it's larry wall doing it
20:18:17 <Vorpal> "IDLEONE HERE! IF YOU DIED TODAY DO YOU KNOW WHERE YOU WOULD END UP? NIGGERS, GAYS, JEWS AND FREENODE STAFF ARE ALL GOING TO BURN IN HELL.. IF YOU ARE ONE OF THESE YOU NEED TO ASK JESUS CHRIST FOR FORGIVENESS. [proceeding to highlight every nick in channel]"
20:18:39 <elliott> crystal-cola: stop being intolerant to larry wall
20:18:45 <Vorpal> crystal-cola, evangelism is trolling!
20:18:54 <elliott> i like the idea of a religion where being freenode staffer is a sin though
20:19:20 <crystal-cola> I know that what's going ot happen is... I solve thsi thing then the answer doesn't work
20:19:49 <Vorpal> sorry I meant tyop dya
20:20:01 <Vorpal> elliott, tyop not tpyo
20:20:28 <elliott> i'm allowed to typo a typo
20:20:49 <elliott> Vorpal: stop discriminatingery
20:21:06 <Vorpal> elliott, I meant: what does "jgeus" mean?
20:22:03 <cheater2> larry wall has a black on blinding yellow website about perl and cornea transplants.
20:22:12 <Vorpal> elliott, uh "No definitions were found for jegus."
20:22:25 <elliott> days since vorpal has told elliott he doesn't know what jegus is: 0
20:22:30 <elliott> previous days since vorpal has told elliott he doesn't know what jegus is: like two? maybe three
20:25:38 <Vorpal> elliott, jegus was never used before 2011-04-30 in this channel as far as clog knows
20:25:53 <Vorpal> > select * from irc.logs where body ilike '%jegus%';
20:25:53 <Vorpal> serial | tstamp | nick | target | uhost | type | body
20:25:53 <Vorpal> ---------+---------------------+----------+--------+-------+------+------------------------------------------------------
20:25:53 <Vorpal> 2276817 | 2011-04-30 06:43:48 | elliott | | | 0 | crystal-cola: jegus go to bed already
20:25:54 <lambdabot> <no location info>: parse error on input `where'
20:25:54 <Vorpal> 2277258 | 2011-04-30 20:35:42 | elliott_ | | | 0 | Sgeo: don't know/care/anything/really/honestly/jegus
20:25:59 <elliott> also why arent you rsyncing the glogbot logs thats quicker
20:26:15 <Vorpal> elliott, I need to parse them. Different parser
20:26:29 <Vorpal> elliott, than a FTS index
20:26:33 <elliott> you can narrow it down to just this year obviously...
20:26:38 <elliott> and fgrep is insanely fucking fast
20:26:45 <Vorpal> elliott, my disks are not!
20:26:56 <Vorpal> elliott, I have SATA 1
20:27:13 <Vorpal> and medium-speed (7200 RPM) disks.
20:27:29 <oerjan> need to upgrade to SATA N
20:28:03 <oerjan> lots of wind here today
20:28:29 <Vorpal> oerjan, I just inserted n for you
20:46:32 <oerjan> <siracusa> Can you do loops with slahes?
20:46:45 <oerjan> yes. it is rather complicated though, see the wiki page.
20:47:24 <oerjan> (you need to use quine-making techniques)
20:49:01 -!- copumpkin has quit (Ping timeout: 240 seconds).
20:49:28 -!- copumpkin has joined.
20:49:40 <siracusa> oerjan: Yeah, I already found the mechanism on that wiki page. But thanks anyway.
20:50:54 <elliott> can i have exclamation mark
20:51:32 <elliott> ugh wow a slashes quine with \/ will be hard (trying to replicate your achievement)
20:51:35 <elliott> whoops look at that i give up
20:52:31 <oerjan> <crystal-cola> is it possible to output every string with this language??
20:53:02 <oerjan> just prepend \ to every / and \
20:54:36 <oerjan> elliott: the quine is heavily influenced by the previous work of the BCT interpreter in finding out how to encode tokens without ambiguity. moreover there's a small adjustment because the exact same encoding didn't work
20:54:47 <elliott> oerjan: you're an ambiguity
20:54:56 <elliott> he meant IO-complete style
20:55:31 <oerjan> but still yes in my opinion
20:55:58 <siracusa> oerjan: I think his problem was, if you have a construct /x/s/, you can't use x as a character in s.
20:56:12 <oerjan> siracusa: all you have to do is be careful not to use single-character abbreviations and tokens, and then printing any single character is relatively easy
20:56:19 <elliott> after /x/s/ you can never have x again
20:56:22 <elliott> so you need to do it a different way
20:56:33 <elliott> oerjan: any thoughts on thue->/// compilation btw?
20:56:47 <oerjan> but there is no problem as long as you do tokens with more than one character
20:56:56 <oerjan> elliott: yes i've pondered that occasionally
20:57:12 <siracusa> So you just use a character combination that will never occur in the rest of the program?
20:57:22 <oerjan> i believe it's easiest if you do it in a parallel fashion
20:58:18 <oerjan> siracusa: an important trick here is that if you have more than one character in a token, say CH, then you can still "mention" that token by escaping it with C\H
20:58:40 <elliott> oh does that actually work
20:58:44 <oerjan> and the mention itself won't be affected
20:59:19 <oerjan> and you can use the mention to make new copies of the token
21:01:49 <oerjan> (in practice when using the loop quoting mechanism, you use that for separating a token instead. although sometimes i've had to do both, it depends on when the new program copy is unpacked and what needs to be done after that
21:03:27 <crystal-cola> also what strings is it not possible for slashes to output?
21:03:37 <oerjan> elliott: about thue, because it is non-deterministic you can simply apply _all_ the thue substitutions each cycle, and the result will be a consistent thue running path
21:04:07 <oerjan> which i believe would simplify the compilation into /// greatly
21:04:27 <oerjan> crystal-cola: it is possible to output all strings
21:05:43 <oerjan> <crystal-cola> how to turn abba into abbaxyyz <-- you will need to use the quoting trick to be able to handle different copies of abba differently
21:06:50 <crystal-cola> oh nevermind that's the same thing, just the second one takes two steps.
21:07:27 <oerjan> crystal-cola: well i was assuming you meant in a general fashion
21:08:08 <oerjan> !slashes /ba/Zxyyx//Z/b\a//abba
21:08:32 <oerjan> !slashes /ba/Zxyyx//Z/b\a/abba
21:09:22 <oerjan> crystal-cola: another possibility is to iterate over the abba from one side to the other.
21:09:58 <oerjan> but in general things get simpler if you don't demand your strings be represented "raw"
21:10:18 <oerjan> iteration requires some kind of loop, of course
21:10:46 <oerjan> (although possibly a simpler, fixed number iteration one)
21:16:34 -!- augur has quit (Remote host closed the connection).
21:17:19 <crystal-cola> I couldn't get any software that I wanted and I couldn't solve by hand either
21:17:37 <crystal-cola> I will have to write a proper program to do this some day in the future
21:19:11 <oerjan> crystal-cola: maybe http://hackage.haskell.org/packages/archive/Vec/0.9.6/doc/html/Data-Vec-LinAlg.html ?
21:19:26 <crystal-cola> oerjan: I couldn't figure out how to use that :RS
21:19:56 <oerjan> the type classes do look a little hairy...
21:20:40 <siracusa> Haha, the context of solve goes over two lines.
21:21:01 <oerjan> but you'd imagine there would be _some_ instance combination involving Rationals and lists available...
21:21:55 <crystal-cola> I think it might be an interesting programming problem when im not so annoyed about not being able to solve it immediately
21:22:03 <oerjan> or maybe that :. thing
21:23:01 <siracusa> "The list of instances here is not meant to be readable"
21:23:40 <oerjan> "Vectors are represented by lists with type-encoded lengths."
21:23:59 <oerjan> i guess that means [] lists are out of the question
21:26:34 <oerjan> and hmatrix seems to be single and double floating point only...
21:32:19 <SimonRC> it seesm that I have been /away since the begninng of November :-S
21:33:09 -!- MigoMipo has quit (Read error: Connection reset by peer).
21:34:15 <elliott> SimonRC: where have you been :P
21:34:47 <SimonRC> (not actually drawn in MS paint)
21:34:50 <elliott> lol it's eating up all of us
21:35:09 <elliott> soon there will be no #esoteric, just a bunch of idlers
21:35:13 <SimonRC> I am running a forum adventure on the forums
21:35:46 -!- elliott has set topic: "Programming may one day be about getting the maths right" -- Alan Alda | "Functional programming is more than just esoteric; it’s becoming somewhat cool." -- Tiger Woods | "Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D" --John McCain.
21:35:49 <SimonRC> given how inventive I am with usernames, I think you have the information to find it
21:36:04 -!- elliott has set topic: "Programming may one day be about getting the maths right" -- Alan Alda | "Functional programming is more than just esoteric; it’s becoming somewhat cool." -- Tiger Woods | "Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D" -- John McCain.
21:36:25 <oerjan> ancient babylonian quote
21:37:28 <SimonRC> "Sooner or later, any sufficiently-good quotation will become attributed to someone more famous than whoever originally said it." -- Winston Churchill
21:38:11 <quintopia> mark twain suits that quote better than winston
21:40:17 <SimonRC> also, it is better to re-arrange the phrases: "Any sufficiently-good quotation sooner ora later becomes attributed to someone more famous than whoever originally said it."
21:41:26 <SimonRC> because it's "forall quotations (exist a time after which (...))", not the other way round
21:41:30 <quintopia> eh i think the original phrasing was better
21:42:08 <quintopia> they both map to the same fol expression semantically
21:42:10 <SimonRC> get out of this channel you... liberal-arts major
21:42:22 <oerjan> Any sufficiently-good quotation is indistinguishable from fame
21:42:57 <quintopia> any sufficiently formulaic expression is indistinguishable from its snowclones
21:43:25 <SimonRC> <strk>any sufficiently-well understood magic is by definition a technology</strk>
21:43:34 <crystal-cola> "99% of quotations are misattributed" -- Einstein
21:43:52 <oerjan> SimonRC: i read approximately that one in girl genius
21:43:53 <SimonRC> 83% of statistics are made up on the spot
21:44:06 <SimonRC> oerjan: oh, yeah I remember that
21:44:20 <crystal-cola> "83% of quotations are made up on the spot" - SimonRC
21:44:53 <quintopia> "100% of quotations have been made up by someone" - quintopia
21:45:55 <quintopia> 96% of fictional matter isn't real
21:46:08 <quintopia> (and fiction is far stranger than truth)
21:46:40 <crystal-cola> "US Patent #5,893,120 has been reduced to mathematical formulae as a demonstration of the oft-ignored fact that there is an equivalence relation between programs and mathematics. You may recognize Patent #5,893,210 as the one over which Google was ordered to pay $5M for infringing due to some code in Linux." -- Shakespear
21:47:08 <SimonRC> (And I invented the mle form of that independantly AFAICR)
21:47:17 <SimonRC> (After reading some articles on feminism.)
21:48:53 <elliott> now i'm just appending it to every typo you make :P
21:49:25 <SimonRC> I invented "loq" for when I loled silently too.
21:50:00 -!- augur has joined.
21:50:40 <SimonRC> elliott: ( http://www.urbandictionary.com/define.php?term=FOL <-- so now you know)
21:50:48 <elliott> crystal-cola: you're radical
21:51:49 <oerjan> elliott: i am pretty sure it wasn't a typo when quintopia made it
21:52:01 <elliott> oh right first-order logic
21:52:23 <oerjan> yes i keep quantifying things
21:53:05 <crystal-cola> The founding principle of the Journal of Universal Rejection (JofUR) is rejection. Universal rejection. That is to say, all submissions, regardless of quality, will be rejected. Despite that apparent drawback, here are a number of reasons you may choose to submit to the JofUR:
21:53:46 <ais523> elliott: it'll be delayed until they have enough accepted submissions to make a full issue
21:53:54 <elliott> ais523: they've released issues, see the site
21:54:03 <SimonRC> they could sell it as a joke to fund the place
21:54:09 <elliott> ais523: i'm not your web browser
21:54:51 <oerjan> "You may claim to have submitted to the most prestigious journal (judged by acceptance rate)."
22:03:10 -!- poiuy_qwert has joined.
22:03:18 <Sgeo_> http://reprobatiocerta.blogspot.com/
22:03:50 -!- p_q has quit (Ping timeout: 250 seconds).
22:09:49 -!- p_q has joined.
22:12:24 -!- poiuy_qwert has quit (Ping timeout: 240 seconds).
22:19:01 <crystal-cola> "A life spent coming up with inane quotes is wasted" - Mark Twain
22:19:43 <oerjan> I HOPE HE SAID NOTHING ABOUT PUNS
22:21:04 <Sgeo_> <insert Death quote that prompted elliott to /ignore Sgeo here>
22:21:49 <Sgeo_> (I mean, the real spelling's pun, but Death's spelling is pune)
22:23:02 <ais523> Sgeo_: I doubt that was the sole reason elliott ignored you, although it might have been the last straw
22:23:23 <Sgeo_> I'm not entirely certain that he really did ignore me, just said that he was. I hope >.>
22:23:28 -!- elliott has quit (Ping timeout: 248 seconds).
22:26:06 -!- Gregor has set topic: "Programming may one day be about getting the maths right" -- Alan Alda | "Functional programming is more than just esoteric; it’s becoming somewhat cool." -- Tiger Woods | "Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D" -- John "Satan" McCain.
22:28:56 <ais523> also, the above is proof that my fingers have memorised pinging Gregor on one character
22:29:20 * Gregor renames EgoBot to GregoBot and HackEgo to GackEgo
22:29:33 * Gregor particularly likes "GregoBot" :P
22:29:42 <oerjan> and also that your client doesn't apply last speaker priority
22:29:52 -!- p_q has quit (Ping timeout: 248 seconds).
22:31:49 <ais523> oerjan: it does, Gregor hadn't spoken all day
22:31:58 <ais523> so I think it just picked the first in alphabetical order
22:34:54 <Gregor> * Ping reply from ais523: 1304238071.85 second(s)
22:35:14 <ais523> Gregor: are you /sure/ you didn't send me a ping that long ago?
22:35:32 <ais523> the Internet wasn't that developed back then
22:35:39 <ais523> so it would have taken a long time to roundtrip
22:36:00 <Gregor> It appears that that was the current Unix timestamp :P
22:36:10 <Gregor> So you pinged me on January 1, 1970.
22:36:34 <SimonRC> is it scary that I recognised the timestamp?
22:36:59 <SimonRC> 'cause I keep seeing things around that are named after it, so it is only natural
22:37:18 <oerjan> 00:34 CTCP PING reply from Gregor: 0.687 seconds
22:37:18 <oerjan> 00:34 CTCP PING reply from Gregor: 0.832 seconds
22:37:18 <oerjan> 00:34 CTCP PING reply from Gregor: 1.122 seconds
22:37:32 <oerjan> ais523: _someone_ is outdoing you, here...
22:37:45 <SimonRC> oh of course, oerjan is in Acandanavia
22:37:49 <zzo38> oerjan: You are outdoing them here!!!
22:38:01 <ais523> Gregor: I entered a plausible timestamp, but your client seems to use a different format for its pings
22:38:06 <ais523> and so failed to parse it
22:38:37 <oerjan> ...ping replies are not supposed to make up timestamps
22:38:49 <ais523> oerjan: they're meant to be a copy of the ping itself
22:38:58 <ais523> most clients, when pinging, put the current time in the ping, in some format
22:39:06 <ais523> so they can match up pings and pongs
22:39:11 <Gregor> I never PINGED though.
22:39:18 <ais523> and often, if you pong them with a timestamp, they assume they sent the matching ping
22:40:41 <ais523> zzo38: my client doesn't parse that without an argument
22:40:47 <ais523> it just showed the NOTICE literally
22:40:52 <siracusa> "Malformed ping reply from zzo38." O.o
22:40:58 <ais523> also, I don't think it parses ping replies sent to channel
22:41:11 <zzo38> I did that just to see what would happen
22:41:21 <ais523> <CTCP>PING 1304238071<CTCP>
22:41:35 <ais523> siracusa: was mine correctly formed?
22:41:36 <oerjan> 00:40 CTCP PING reply from ais523: 51404.370 seconds
22:41:55 <ais523> oerjan: that's... bizzarre
22:41:58 <ais523> I gave a recent UNIX timestamp
22:42:12 <oerjan> well that is recent, sort of :D
22:44:57 <oerjan> <ais523> and often, if you pong them with a timestamp, they assume they sent the matching ping <-- well if a client _does_ check for matches then it doesn't actually need to send a timestamp, it could use any id
22:45:24 <oerjan> but since the main point of matching would then be to find the original time sent...
22:54:46 -!- MDude1350 has joined.
22:55:30 <ais523> [CTCP] Received CTCP-PING reply from zzo38: 1,304,289,356 seconds.
22:57:17 -!- siracusa has left.
22:59:49 -!- ais523 has changed nick to scarf.
22:59:58 -!- scarf has changed nick to ais523.
23:03:40 * SimonRC goes /away for a few months again.
23:04:30 -!- poiuy_qwert has joined.
23:04:57 <oerjan> SimonRC is secretly a STL starship captain
23:09:20 -!- poiuy_qwert has quit (Ping timeout: 248 seconds).
23:12:08 <zzo38> What category of programming languages would classified TeX?
23:12:46 <zzo38> Yes it is, but in addition to commands it also has macro expansions
23:13:09 <zzo38> I mean in other words too; imperative programming languages can belong to other categories too
23:13:23 <oerjan> i think that's a category
23:14:29 <oerjan> rendering might be one...
23:14:43 <zzo38> Macros can also modify themself!! And you can save the old state of things for later, for example: \ifnum\pageno=0 {\let\xyzzy} \else [Do Something Else] \fi \xyzzy
23:15:37 <zzo38> It does typesetting as well, it doesn't actually render fonts though (that is what the printer driver will do)
23:16:13 <oerjan> it needs to know sizes though
23:16:39 <zzo38> Yes it does need to know sizes and various other information about the fonts, except for the actual pictures
23:19:37 <zzo38> Other information includes: design size, em width, ex height, natural space width, space shrinkability, space stretchability, kerning, ligatures, italic corrections, height/depth of characters, widths of the bar above a math radical, etc
23:19:47 -!- poiuy_qwert has joined.
23:20:19 -!- poiuy_qwert has quit (Client Quit).
23:20:52 -!- FireFly has quit (Quit: swatted to death).
23:23:04 <zzo38> The file format that stores this information is very sensible in my opinion, and works without floating point.
23:25:19 -!- ais523 has quit (Remote host closed the connection).
23:32:37 <zzo38> One thing missing from TeX in my opinion is the #0 command (like #1 and #2 and so on to access macro parameters, #0 would access the name of the macro itself, like $0 in shell scripts)
23:38:27 <Gregor> Sometimes aptitude makes some truly bizarre decisions. I try to install something which, as it turns out, requires a newer version of libc than I have. So its first suggestion is to uninstall half the system AND not install the package I requested. The SECOND suggestion is to upgrade libc and a few other packages that need to be upgraded with it (nothing uninstalled).
23:39:04 <zzo38> Why does it do that? If it is wrong, can you correct it or file a bug report?
23:46:43 -!- augur has quit (Remote host closed the connection).
23:52:58 -!- oerjan has quit (Remote host closed the connection).
23:56:39 -!- oerjan has joined.
23:57:37 * Sgeo_ has no idea how to type in arbitrary unicode things
23:58:30 <Sgeo_> +0e angers at h5s Fn 2ey.