00:00:07 quintopia, a) I was only mistaken for him by a drunk middle-aged unattractive man, and b) I'm asexual 00:00:38 And c) no 00:00:57 i don't see how the being mistaken for mark zuckerberg by such an outlier has any bearing on the present decision on whether to go out in a bowtie 00:01:44 Hmm, maybe you're right 00:06:54 -!- carado has quit (Ping timeout: 252 seconds). 00:13:01 -!- Bike has joined. 00:13:30 -!- realz has joined. 00:13:42 -!- realz has quit (Changing host). 00:13:42 -!- realz has joined. 00:35:35 do people actually use fibonacci heaps for anything 00:37:34 http://www.quora.com/What-is-a-Fibonacci-Heap?share=1 has an answer in the negative from "Adam D'Angelo, former algorithms TA" 00:41:50 kmc: I've used a heap library that had a fibonacci heap as one of the backends 00:41:57 but I'm not sure whether it used that backend or not 00:42:12 when I've written heaps manually, I typically use binary heaps 00:43:19 hmm… I remember that paper which had an article hitting all the heap complexity bounds in actual time 00:43:21 rather than amortized time 00:43:30 using a really crazy and complex heap impl 00:44:40 http://exoplanets.org/ attention astro nerds 00:45:21 btw, I didn't tell you about my latest programming project that I haven't told you about yet 00:45:36 ais523\unfoog: that's neat 00:45:37 it's not particularly eso, but it's about the same order of bad idea 00:45:42 I guess there is general research on de-amortization 00:45:57 basically, it's a deparser for text documents 00:46:00 -!- yorick has quit (Remote host closed the connection). 00:46:14 you know how you can format HTML or Texinfo or nroff or whatever as text? 00:46:26 this would go the other way, with no knowledge of the source format 00:46:31 trying to infer how various things were formatted 00:46:44 I can think of a huge many usecases for this 00:46:49 but it's likely to be quite difficult to write 00:47:06 there are some startups doing this, or similar 00:47:13 finding PDFs on the web and extracting them to data tables 00:47:30 that's not exactly what I want to do, but it's the same field 00:49:24 actually the motivating example was to write a program that could display all the random files lying around /usr/share/doc in whatever format the user wanted 00:49:30 and the motivating reason for /that/ was writing a better man/info/yelp 00:49:56 I was going to say "smoothsort", but it turns out that uses a completely different sort of heap. 00:50:38 The Leonardo numbers, apparently. 00:50:55 (anyone who hangs out in #acehack will know that I have trivial motivating reasons for really complex projects) 00:52:01 I think I'll start by converting everything to elastic tabs 00:52:09 (something that text editors should do anyway) 00:53:56 kmc: i feel like i should read _Purely-Functional Data Structures_ 00:53:58 did you read it 00:55:24 -!- Taneb has quit (Quit: Leaving). 00:58:11 -!- john_metcalf has quit (*.net *.split). 00:58:11 -!- FreeFull has quit (*.net *.split). 00:58:11 -!- ski has quit (*.net *.split). 00:58:11 -!- Lymia has quit (*.net *.split). 00:58:11 -!- rodgort has quit (*.net *.split). 00:58:11 -!- FireFly has quit (*.net *.split). 00:58:19 -!- ski has joined. 00:58:24 some of it 00:58:26 it's good 00:58:29 -!- FreeFull has joined. 00:58:38 -!- Lymia has joined. 00:58:47 -!- rodgort has joined. 00:58:57 -!- FreeFull has quit (Changing host). 00:58:57 -!- FreeFull has joined. 00:59:13 -!- Lymia has quit (Changing host). 00:59:13 -!- Lymia has joined. 01:00:42 -!- FireFly has joined. 01:05:26 :t flip (foldr id) 01:05:27 [c -> c] -> c -> c 01:07:08 > (flip (foldr id)) [succ, pred] 17 01:07:10 17 01:07:14 metal 01:07:26 > (flip (foldr id)) [(7+),(2*)] 17 01:07:27 41 01:08:44 @pl \f.\g.\h.\x.g(f(h(x))) 01:08:44 (line 1, column 3): 01:08:44 unexpected "." 01:08:45 expecting letter or digit, operator, pattern or "->" 01:08:53 @pl \f->\g->\h->\x->g(f(h(x))) 01:08:56 flip ((.) . (.)) . (.) 01:08:57 optimization suspended, use @pl-resume to continue. 01:09:06 bleh, lambdabot, why don't you work on Verity? 01:09:08 @pl-resume 01:09:14 is @pl still ill 01:09:14 flip ((.) . (.)) . (.) 01:09:14 optimization suspended, use @pl-resume to continue. 01:09:21 @pl-resume 01:09:24 oerjan: I think so 01:09:26 i've yet to see @pl-resume give a different answer 01:09:33 flip ((.) . (.)) . (.) 01:09:34 optimization suspended, use @pl-resume to continue. 01:09:55 anyway, that function seems to be the programming-language version of the functor \Rightarrow 01:09:57 which is kind-of important 01:10:00 so I was wondering if it had a name 01:10:47 @pl \f g h x -> g (f (h x)) 01:10:50 flip ((.) . (.)) . (.) 01:10:50 optimization suspended, use @pl-resume to continue. 01:10:52 @pl \(f,g)->\(x,y)->(f(x),g(y)) 01:10:52 uncurry (flip flip snd . (ap .) . flip flip fst . ((.) .) . flip . (((.) . (,)) .)) 01:11:00 that's even worse 01:11:03 that one's \otimes 01:11:15 and it looks reasonable that that one might have a name 01:11:18 or at least a short impl 01:11:24 @pl \f g h -> g . f . h 01:11:28 flip ((.) . (.)) . (.) 01:11:28 optimization suspended, use @pl-resume to continue. 01:11:44 is Haskell this bad at functors? 01:11:52 @pl \f g -> (.) (g . f) 01:11:56 ((.) .) . flip (.) 01:11:56 optimization suspended, use @pl-resume to continue. 01:11:57 isn't "\(f,g)->\(x,y)->(f(x),g(y))" a short implementation 01:12:41 :t uncurry (***) 01:12:42 Arrow a => (a b c, a b' c') -> a (b, b') (c, c') 01:12:57 uh i'm pretty sure arrow is the antichrist....>??? 01:13:03 OKAY 01:13:23 going off reliable esoteric information here 01:13:23 -!- prooftechnique has joined. 01:13:37 > uncurry (***) ((+1),(*2)) (5,10) 01:13:37 in the categorical semantics I'm working on 01:13:38 (6,20) 01:13:38 uncurry = id 01:14:01 oerjan: I like your impl 01:14:03 ais523\unfoog: anyway @pl doesn't know much about Arrows. 01:14:12 right 01:14:27 Arrow's a bit of an ironic name, though 01:14:46 given that arrow/morphism in categorical semantics = function in programming language 01:15:59 sometimes I feel that Haskell isn't as category-theoretical as its supporters make it out to be 01:17:16 i feel betrayed. 01:19:09 ais523\unfoog: well Arrow is a subclass of Category nowadays. 01:19:20 oerjan: that makes even less sense 01:19:21 in particular, (->) is only one instance. 01:19:26 category theory doesn't work like that 01:19:37 the name Arrow is not particularly well-chosen, though. 01:20:15 It seems better it should have: functor between categories, tensor categories, fanout category, etc, instead of being like such Arrow class 01:20:52 ais523\unfoog: the idea is that a value of type Arrow a x y is an arrow from x to y in a category given by a. 01:21:00 oerjan: right 01:21:18 although the class heaps on stuff that isn't just arrow requirements. 01:21:26 (Category alone has those.) 01:21:32 the only actual requirement is for a composition operator 01:21:33 I think it'd be fun to make a nethack clone with ed keybindings 01:21:49 prooftechnique: NetHack 4 (my fork) has rebindable keys 01:22:02 not sure if ed's keybindings even remotely correspond to the commands ed has, though 01:22:08 prooftechnique: Try it, what key would they command 01:22:18 ais523: What changes did you make though? 01:22:22 zzo38: loads 01:22:25 mostly to internals 01:23:03 Did you add rebindable keys or is that already in there? 01:23:52 NetHack 3.4.3 doesn't have rebindable keys 01:24:03 but the key rebinding code was copied from another NetHack fork (NitroHack) 01:24:12 O, well that is good you add it, then; it was missing then 01:24:18 however, the key /parsing/ code is new 01:28:14 OK 01:32:48 is there a bf clone that does non-deterministic computations in deterministic time? because if not, i want to make one 01:33:00 quintopia: interesting 01:33:04 a sort of quantum BF? 01:33:07 yes 01:33:08 q: what does that mean 01:33:12 everettian BF 01:33:13 actually, I think Brainfork can do that 01:33:19 * quintopia looks 01:33:21 so long as there's a way to kill threads, not sure if there is 01:33:44 who is the guy in the google logo 01:34:18 btw, Brainfork was invented before BF derivs got old 01:34:23 quintopia: The doodle today? 01:34:26 it was like the second or third semantics-changing deriv 01:34:48 prooftechnique: yes 01:34:52 i'm too lazy to click it 01:34:54 http://en.wikipedia.org/wiki/Shakuntala_Devi 01:35:02 Mental math world record or something 01:36:50 ais523\unfoog: yeah, it doesn't look like there's a way to kill forked threads in brainfork. but you can sort of do nondeterministic computations by doing some very fancy algorithming. but my idea would add no new commands and wouldn't require thread management. 01:37:04 -!- glogbackup has joined. 01:37:18 hi glogbackup 01:38:35 `welcome glogbackup 01:38:37 glogbackup: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric on irc.dal.net.) 01:40:12 -!- Uguubee1111113 has joined. 01:40:52 ais523\unfoog: my idea is to have the semantics of . change to "append byte to waiting-to-output queue" and the semantics of program halt change to "if waiting-to-output queue matches the tail of the input list, output, otherwise, move all amplitude of this universe's wavefunction into the universe where the tail of the input list is equal to the contents of the current waiting-to-output queue at the moment of program instantiation" 01:41:17 obviously, , would not consume the input list, just advance an index into it 01:41:37 `run grep '^: Welcome to the' /var/logs/_esoteric/*.txt | cut -f1 -d':' | cut -f2 -d'>' | sort | uniq -c 01:41:38 grep: /var/logs/_esoteric/*.txt: No such file or directory 01:41:48 `run grep '^: Welcome to the' /var/irclogs/_esoteric/*.txt | cut -f1 -d':' | cut -f2 -d'>' | sort | uniq -c 01:42:03 wait, there's a stray ^ there 01:42:06 `run grep ': Welcome to the' /var/irclogs/_esoteric/*.txt | cut -f1 -d':' | cut -f2 -d'>' | sort | uniq -c 01:42:19 No output. 01:42:37 No output. 01:43:08 hmm 01:43:10 is it timing out? 01:43:17 `run grep ': Welcome to the' /var/irclogs/_esoteric/2013*.txt | cut -f1 -d':' | cut -f2 -d'>' | sort | uniq -c 01:43:25 or is there something wrong with the line? 01:43:31 ​ 18 /var/irclogs/_esoteric/2013-01-04-raw.txt \ 18 /var/irclogs/_esoteric/2013-01-04.txt \ 1 /var/irclogs/_esoteric/2013-01-05-raw.txt \ 1 /var/irclogs/_esoteric/2013-01-05.txt \ 1 /var/irclogs/_esoteric/2013-01-06-raw.txt \ 1 /var/irclogs/_esoteric/2013-01-06.txt \ 1 /var/irclogs/_esoteric/2013-01-07-raw.t 01:43:38 One thing is you should indicate whether you want raw or non-raw 01:43:39 oh, right 01:43:54 -!- Sgeo has joined. 01:44:13 `run grep -h ': Welcome to the' /var/irclogs/_esoteric/2013-??-??.txt | cut -f1 -d':' | cut -f2 -d'>' | sort | uniq -c 01:44:17 ​ 7 00 \ 16 01 \ 18 02 \ 6 03 \ 7 04 \ 11 05 \ 10 06 \ 11 07 \ 2 08 \ 2 09 \ 4 10 \ 10 11 \ 6 12 \ 7 13 \ 6 14 \ 11 15 \ 11 16 \ 14 17 \ 16 18 \ 15 19 \ 16 20 \ 19 21 \ 20 22 \ 18 23 01:44:36 aha, there are colons in the timestamp 01:44:40 `run grep -h ': Welcome to the' /var/irclogs/_esoteric/2013-??-??.txt | cut -f1 -d'4' | cut -f2 -d'>' | sort | uniq -c 01:44:43 ​ 7 0 \ 2 ​ \ 2 00: \ 1 00:10:3 \ 1 00:3 \ 1 00:32: \ 7 01: \ 1 01:05:3 \ 1 01:08: \ 1 01:13: \ 1 01:31: \ 1 02: \ 1 02:09: \ 1 02:56: \ 1 03: \ 1 03:19:0 \ 1 03:31:2 \ 1 03:5 \ 1 ​{^Raven^}: Welcome to the international 01:44:48 `run grep -h ': Welcome to the' /var/irclogs/_esoteric/2013-??-??.txt | cut -f4 -d':' | cut -f2 -d'>' | sort | uniq -c 01:44:50 ​ 1 ​boily \ 1 ​lambdabot \ 1 ​Phantom_Hoover \ 1 ​{^Raven^} \ 1 ​intensity \ 1 ​kyyni \ 1 ​shikhin \ 1 ​matthiaskrgr \ 1 ​simmarine_ \ 1 ​snuffeluffegus \ 1 ​audioPhil 01:44:56 this is good 01:45:02 `run grep -h ': Welcome to the' /var/irclogs/_esoteric/2013-??-??.txt | cut -f4 -d':' | cut -f2 -d'>' | sort | uniq -c | sort -rn 01:45:05 ​ 13 Bike \ 8 oerjan \ 5 monqy \ 5 kmc \ 4 sivoais \ 4 `run grep -h ' \ 3 Taneb \ 3 SirCmpwn \ 3 Sgeo \ 3 Regis_ \ 3 Fiora \ 2 yhojeyisaac \ 2 windmill \ 2 Tritonio \ 2 ThatOtherPerson \ 2 surma \ 2 sploknee \ 2 Snowyowl \ 01:45:15 :o 01:45:21 `run grep -h ': Welcome to the' /var/irclogs/_esoteric/20??-??-??.txt | cut -f4 -d':' | cut -f2 -d'>' | sort | uniq -c | sort -rn 01:45:36 ​ 22 fdhsfdsgdsg \ 19 oerjan \ 16 elliott \ 15 Bike \ 13 monqy \ 9 shachaf \ 8 ais523 \ 6 HackEgo \ 5 Taneb \ 5 sivoais \ 5 `run grep -h ' \ 5 -!- oerjan changed the topic of #esoteric to \ 5 kmc \ 5 fungot \ 5 Fiora \ 4 zzo38 \ 4 shub 01:46:10 who was fdhsfdsgdsg and why did they get welcomed so much? 01:46:16 `pastlog fdhsfdsgdsg 01:46:24 2012-03-02.txt:12:29:26: ​^ul (?so `ok fdhsfdsgdsg: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page)S 01:46:38 botloop, I guess 01:46:50 ais523\unfoog: sorry to be zzo38ish, but does my description above make sense? should i wiki it? 01:46:53 wait, i've been welcomed 15 times 01:46:54 ? 01:46:58 Bike: yes 01:47:11 quintopia: it needs to be explained in a bit more detail, I think 01:47:38 `run grep -h ': Welcome to the' /var/irclogs/_esoteric/20??-??-??.txt | cut -f4 -d':' | cut -f2 -d'>' | sort | uniq -c | sort -rn | grep -v '!' | xargs 01:47:43 xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option \ 22 fdhsfdsgdsg 19 oerjan 16 elliott 15 Bike 13 monqy 9 shachaf 8 ais523 6 `run grep -h 01:47:56 bleh 01:48:09 ais523\unfoog: so it doesn't make sense? 01:48:14 `run grep -h ': Welcome to the' /var/irclogs/_esoteric/20??-??-??.txt | cut -f4 -d':' | cut -f2 -d'>' | sort | uniq -c | sort -rn | grep -v '!' | grep -v '`' | xargs 01:48:17 it almost makes sense 01:48:20 22 fdhsfdsgdsg 19 oerjan 16 elliott 15 Bike 13 monqy 9 shachaf 8 ais523 6 HackEgo 5 Taneb 5 sivoais 5 kmc 5 fungot 5 Fiora 4 zzo38 4 shubshub 4 Sgeo 4 Gracenotes 4 CHeReP 4 carado 4 andrew12 3 WeThePeople 3 tswett 3 ThePope 3 test 3 Snowyowl 3 sirdancealot 3 SirCmpwn 3 segorev 3 Regis_ 3 ogrom 3 mean 3 john_metcalf 3 Jafet 3 hi 3 GreyKnight 3 Grego 01:48:25 there, that's what I wanted 01:48:36 sorry about all the pings, everyone 01:49:02 ais523\unfoog: can you add background coloration to each number/name pair to make it easier to group them mentally? 01:49:15 quintopia: no, because my client doesn't support background colors 01:49:41 ais523\unfoog: colors are cool. lrn2bcolorful. 01:50:00 it does support foreground colors except I disabled them 01:50:15 which lead to this bug report: https://bugs.kde.org/show_bug.cgi?id=317034 01:50:32 you could be coolour with more colour. 01:51:50 -!- nisstyre has quit (Ping timeout: 264 seconds). 01:52:09 ais523\unfoog: do you know of a way to compare two positive numbers in unbounded-cell BF using less than 5 cells? 01:52:39 quintopia: does the interp support negative numbers? 01:52:47 but yeah, I think regardless, it's doable 01:52:47 sure 01:53:14 i can't think of a way to do it in less than 5 01:53:15 or, hmm 01:53:24 yeah, the way I was thinking of takes 5, if you include the two numbers themselves 01:53:37 what way are you thinking? 01:53:46 http://esolangs.org/wiki/Brainfuck_algorithms#z_.3D_x_.E2.89.A5_y 01:53:57 oh, hmm, that needs a wrapping impl 01:54:24 hadn't looked at that algo in a while 01:54:51 you can do it in 2 if you don't mind an infinite loop if one particular number is higher 01:54:56 haha 01:54:58 and don't mind destroying the original number 01:55:01 *numbers 01:55:23 let's call that "might compare" :P 01:55:58 I bet it's doable in 3 if they're all consecutive and you don't mind the algo destroying the original numbers and returning using the position of the tape pointer 01:56:20 show me 01:56:52 the method i'm thinking of requires both those conditions and still takes 5 01:59:10 -!- Sprocklem has joined. 02:00:09 actually no, that takes 4 02:00:14 put a zero either side of the two numbers you're comparing 02:00:32 then from the first number, do [->-[>]<<] 02:01:12 the two zeros never change, though 02:02:02 come to think of it, that looks like the fastest compare algo I've ever seen 02:02:34 it runs in O(a-b) if a is larger, O(a) if a is smaller, and the constant's pretty low too 02:03:11 if you had an if rather than a while, you could do it in 3 02:03:20 by changing the [>] to an if[>] 02:05:09 that's better than what i had, but the basic idea is the same. 02:05:38 but how do you do a conditional on the result? 02:05:44 without using an extra cell? 02:06:42 -!- nisstyre has joined. 02:07:26 go right one cell 02:07:29 then check for zero 02:07:50 that leaves you still uncertain where the pointer is if you find that it's zero 02:08:00 because it'll be in a different position for equal and for less than 02:08:06 but it does technically fulfil the conditions 02:09:35 no 02:09:46 one cell to the right will always be nonzero unless x=y 02:10:26 if x>y, then one cell to the right is x, and nonzero 02:10:35 if x=y then one cell to the right is x, and zero 02:10:46 if x err, no 02:10:51 it is nonzero :( 02:10:53 you're right 02:11:02 hmm 02:12:10 the problem is it leaves either x or y at zero 02:12:23 and the pointer to the left of the other one 02:12:36 i think you never test the cell to the left of x 02:12:42 so why not initialize it to 1 02:12:48 you do 02:12:53 it's tested in the loop termination 02:12:56 ah right 02:12:59 when x>y 02:13:19 what would happen if you initialized it to 1 02:13:46 you end up back there with it zero 02:13:47 you'd go round the loop again, it'd become 0, x would be tested for equality to 1 02:13:59 depending on the result you'd either end up there or to the left 02:14:09 if you know that x-y isn't 1 it would work 02:14:16 what would happen if you initialized it to -1 02:15:06 then it'd keep being decremented until x became 0, then you'd end up on the cell to the left 02:15:37 yep 02:15:39 -!- shikhin has joined. 02:16:21 which makes 5 cells :) 02:16:47 what if you replace the << with <[<]>? same algorithm basically? 02:17:08 oh no 02:17:09 nvm 02:17:30 that acts differently in the x=0 case 02:17:34 err, x=y 02:17:45 it also acts differently if y is less :P 02:18:07 ah i know 02:19:20 oh yeah, it just continues looping 02:20:21 [>->-[>]<<<->[<]+] or something like that. starting with the left cell at 1. 02:21:17 that may not terminate :P 02:21:26 idea 02:21:35 wait, no 02:21:50 ah yes 02:22:01 start the left cell at 1 and do [>-[>]<<-] 02:22:26 not sure if that helps though :P 02:22:47 huh? i'm not sure what that does... 02:22:58 did you start it at x or at 1 02:23:31 I started it at the x 02:23:34 ah 02:23:40 makes more sense 02:24:38 looks like it runs off the left edge printing -1s 02:24:49 no it doesn't 02:24:55 * quintopia looks again 02:25:07 if x is smaller or equal, it ends when x is set to 0 02:25:16 if x is larger, it moves to the 1, sets it to 0, and exits 02:25:40 ah i see 02:25:41 so you end up at (0) x-y 0 0, or at 1 (0) y-x 0 02:25:56 sadly those still can't be distinguished without extra cells 02:26:11 also there's an off by one in there somewhere I think 02:26:38 yeah 02:26:51 so it misses x=y 02:27:16 i'll just stick with my five cell solution then :) 02:28:38 it feels like it /should/ be possible :) 02:32:38 -!- shikhin has quit (Ping timeout: 264 seconds). 02:35:03 i think i might have a way. it's pretty damn slow, but i think it can be done in 4 02:35:21 it's long so i'll just describe 02:36:08 start by turning x,y,0,0 into 0,0,x-y,y-x in the obvious way 02:36:57 then, increment the second cellwait no 02:37:02 forget y-x 02:37:06 * Bike writes this down 02:37:12 you can't forget y-x 02:37:24 there's no test for negative/positive in nonwrapping BF without loads of temporaries 02:37:27 because you have to keep taking it past 0 02:37:29 wiggle clear style 02:37:35 err, past its original value 02:37:38 that's what i was going to do 02:37:41 wow 02:37:45 test the sign of x-y 02:37:54 by going down 1, up 2, down 3, up 4 etc. 02:38:00 well you have three temporaries to do that 02:38:03 but I'm not sure that's enough 02:38:11 using the two temps as indices, used alternately 02:40:27 so one round increments temp0 temp1 and test until temp0 (known to be negative) is zero, then tests the test value. then temp1 is incremented and the next round decrements temp0 temp1 and test until temp1 (known to be positive) is zero, then tests, then temp0 is decremented and repeat 02:40:33 uses only 3 cells 02:41:06 which round you get test=0 in (even or odd) gives you test's sign 02:42:38 -!- utopian has quit (Quit: Lost terminal). 02:44:07 (i'll still use the five-cell solution for being blindingly faster) 02:44:12 hmm 02:44:17 what's that in code 02:44:26 let's start with x-y temp0 temp1 02:44:38 x-y (temp0) temp1 02:44:39 I think you have problems leaving the loop 02:44:45 nah you have to start on x-y 02:44:54 to test for zero 02:45:17 the test is "which round am i on" so it doesn't matter where you start 02:45:34 I'm not going to believe this doesn't need a fourth cell until you write it out 02:45:47 okay give me a few 02:46:14 Is it wrong that I was expecting Prolog to be a bit saner than the List monad? 02:46:58 yes, turn yourself in 02:47:31 Prolog's more /interesting/ than the List monad :) 02:47:47 actually, Prolog has two main features 02:48:03 nondeterminism, which the List monad does in a different and arguably saner way 02:48:10 and unification, which the List monad doesn't do at all 02:49:06 Then you would need to make up the unification monad too 02:49:15 get on it 02:49:22 I want Prolog to be more like the Logic monad 02:49:33 Or, well, using the non-monady bits like >>- iirc 02:49:34 is that a real monad 02:49:45 http://hackage.haskell.org/package/logict-0.2.3/docs/Control-Monad-Logic.html 02:49:47 I think the Logic monad is equivalent to the list monad as far as I can tell? 02:50:20 I think the monad is equivalent but it also provides variations of bind and other things that make it... backtrack differently 02:50:44 I think 02:50:59 No, that is a class, which is provided to list monad too 02:51:38 But there is LogicT which may be useful in some way as a kind of list monad transformer that is correct 02:51:43 > do { x <- [1..]; y <- [2..]; guard (x == 2 && y == 2); return "Hi" } 02:51:50 mueval-core: Time limit exceeded 02:52:40 but the result is of the correct type! 02:56:00 > [1..] >>- \x -> [2..] >>- \y -> do guard (x == 2 && y == 2); return "Hi" 02:56:01 Not in scope: `>>-' 02:56:01 Perhaps you meant one of these: 02:56:01 `>>' (imported from... 02:56:07 eep 02:56:14 elliott!!! 02:56:35 oerjan: (>>-)? 02:56:40 Is that from semigroupoids? 02:56:55 shachaf: no from logict 02:57:24 oerjan: I don't think (Num a) => [a] is a (Num a) => Logic a, is it? Although I'd expect a different error 02:57:40 http://hackage.haskell.org/package/semigroupoids-4.0/docs/Data-Functor-Bind.html has it too 02:57:56 Sgeo: istr >>- worked just find with lists in previous versions of lambdabot 02:58:00 *fine 02:58:48 at least we were having fun with it 03:00:09 :t (Control.Monad.Logic.>>-) 03:00:12 Control.Monad.Logic.Class.MonadLogic m => m a -> (a -> m b) -> m b 03:00:15 oh. 03:00:45 > [1..] Control.Monad.Logic.>>- \x -> [2..] Control.Monad.Logic.>>- \y -> do guard (x == 2 && y == 2); return "Hi" 03:00:46 Not in scope: `Control.Monad.Logic.>>-' 03:00:46 Perhaps you meant one of these: 03:00:46 ... 03:00:52 wat 03:00:57 elliott!!!!!!!!!!!!!!!!!!!!!!! 03:01:08 :t (>>-) 03:01:09 Not in scope: `>>-' 03:01:09 Perhaps you meant one of these: 03:01:09 `>>' (imported from Control.Monad.Writer), 03:02:17 @let import Control.Monad.Logic 03:02:18 Defined. 03:02:51 huh 03:03:07 > [1..] >>- \x -> [2..] >>- \y -> do guard (x == 2 && y == 2); return "Hi" 03:03:09 *Exception: stack overflow 03:03:13 OKAY 03:03:17 AN IMPROBEMENT 03:04:21 > take 1 $ [1..] >>- \x -> [2..] >>- \y -> do guard (x == 2 && y == 2); return "Hi" 03:04:23 *Exception: stack overflow 03:04:28 fff 03:05:49 > take 1 $ [1..] >>- \x -> do guard (x == 2); return "Hi" 03:05:51 ["Hi"] 03:05:56 YAY 03:06:02 SO POWEFRYL 03:06:44 -!- shikhin has joined. 03:07:17 how illogical 03:08:05 > [1..] >>- \x -> [2..] >>- \y -> [(x,y)] 03:08:07 [(1,2),(2,2),(1,3),(3,2),(1,4),(2,3),(1,5),(4,2),(1,6),(2,4),(1,7),(3,3),(1... 03:08:24 oerjan: someone (Martin Escardo) at Birmingham University's looking into how you can search infinite spaces in finite time 03:08:26 > [1..] >>- \x -> [2..] >>- \y -> ["hi"] 03:08:28 ["hi","hi","hi","hi","hi","hi","hi","hi","hi","hi","hi","hi","hi","hi","hi"... 03:08:37 his research probably would allow you to filter a list of all integers to see which were 2 03:09:16 -!- shikhin_ has joined. 03:09:17 ais523\unfoog: i recall some haskell discussion about using bottom checking for that. 03:09:35 doesn't particularly work for integers, though. 03:10:00 How worthless is the one million dollar wedge? I do not expect it to be worth much. 03:10:14 i'm going to guess it's worth less than one million one dollars 03:11:08 -!- shikhin has quit (Ping timeout: 240 seconds). 03:11:22 Bike: let's not jump to conclusions here 03:11:47 > [1..] >>- \x -> [2..] >>- \y -> [] 03:11:49 *Exception: stack overflow 03:12:24 cool 03:12:39 It may be worth as much as a lottery card. 03:12:58 -!- lexande has joined. 03:15:01 -!- shikhin_ has quit (Ping timeout: 245 seconds). 03:30:42 Prolog strikes me as the sort of language that probably shouldn't have unrestricted side effects, like a lazy language probably shouldn't have unrestricted side effects 03:31:07 My AI professor looooooves Prolog 03:31:35 I've never seen someone gush so much about a language, and my PL prof used Ocaml 03:31:41 zing 03:33:01 Is there a reason for Ada wanting variables to be declared at the top of procedures/declare blocks/etc, other than historical reasons? 03:33:05 Does it improve readability?' 03:33:50 i tend to do that in any language 03:34:07 @tell elliott not sure if you changed anything, but the abuse filter configuration started working again, time to filter out these spambots 03:34:08 Consider it noted. 03:37:16 -!- shikhin has joined. 03:37:33 oh wow 03:37:42 some of these spambots are triggering the existing filters 03:37:49 that explains why they don't seem to be editing 03:38:16 charming 03:39:09 Prolog strikes me as the sort of language that probably shouldn't have unrestricted side effects <-- have you checked out mercury 03:39:49 Some time ago, but I think last time I was put off my lack of living environment... which doesn't really explain why I checked out Racket recently 03:40:10 were you homeless...? 03:40:35 Also lack of macros. I mean, ISO Prolog also lacks macros, but most environments have them I think 03:41:44 Although earlier I saw mention of Mercury's debugger 03:42:08 Haven't looked more into it, but it in and of itself sounds awesome 03:42:20 the unrestricted side effects are half the fun of Prolog 03:42:52 not the useful half, admittedly 03:43:26 -!- shikhin has quit (Ping timeout: 264 seconds). 03:45:37 Is there a language like Prolog except Cont monad instead of List monad? I'm not entirely sure what that means, but it sounds good >.>. And I don't mean 'scheme', although I guess Schemes that use delimited continuations might qualify 03:46:01 sc... oh darn. 03:47:09 now you've got me thinking instead about logic programming with continuations 03:54:45 -!- Oj742 has joined. 03:58:25 but I don't really know what that would mean 03:58:27 so it's hard to think about 03:58:50 amb? 03:58:52 of course you can implement standard backtracking with continuations easily enough 03:59:01 right >_> 03:59:03 what about amb 03:59:28 basically you just said it. 04:03:11 ais523\unfoog: I changed the caching to use memcache rather than APC, which broke because APC was removed in the PHP version I upgraded to (by upgrading Debian) 04:03:19 ais523\unfoog: it may have been that the PHP upgrade fixed it in general 04:03:24 elliott: yeah, could be 04:03:32 Is it just my imagination, or does Prolog seem like a very good language for manipulating data structures? 04:03:33 I wonder if this new filter has been hit yet 04:03:35 it's hard to test 04:03:37 It's like pattern matching on drugs 04:03:45 03:08:24 oerjan: someone (Martin Escardo) at Birmingham University's looking into how you can search infinite spaces in finite time 04:03:53 huh, Escardo is at bham? 04:03:53 ais523\unfoog: alright, i did need an extra cell, but it *did* work in 4. so, mission accomplished i guess. 04:04:14 ais523\unfoog: but, http://math.andrej.com/2007/09/28/seemingly-impossible-functional-programs/ 04:04:17 (written by him) 04:04:21 elliott: yeah, actually he's in charge of making sure I'm making progress in my PhD (as opposed to my supervisor, who's in charge of helping me make progress) 04:04:30 oh, that was escuardo? 04:05:05 oh, your Dan Ghica is even mentioned in that post 04:05:33 ais523\unfoog: http://sprunge.us/JPjE 04:05:41 -!- shikhin has joined. 04:05:51 elliott: well he doesn't really belong ot me 04:05:53 *to me 04:06:32 quintopia: you left a hyphen in a comment ;) 04:06:37 on line 1 04:06:41 I don't think that counts though 04:07:08 it's not part of the program yeah. just background info. 04:07:41 quintopia: ah clever 04:07:50 you just waddle back and forth in the middle once you've found the result 04:07:56 and jump between the edges when you haven't 04:08:40 it's that >[>]> early on that I wasn't sure how you were going to implement it 04:08:54 although, it does use four cells 04:09:02 which is how much I thought it would take 04:09:28 nope, I made a mistake in the filter 04:09:30 but now I can test it 04:10:44 ais523\unfoog: well, i wasn't convinced it could be done in less than 5, so now we concur :D 04:12:10 OK, it matches now 04:13:11 I can't stop the spambots registering with my perms 04:13:14 but I can stop them editing 04:13:36 mediawiki needs an editable-via-the-wiki captcha system 04:13:47 http://zero.milosz.ca/ 04:13:49 actually, one thing that I don't want to implement yet, but I could 04:13:53 would be a post-registration CAPTCHA 04:14:03 where a user's first edit has to be a particular string on a particular page 04:14:17 -!- shikhin_ has joined. 04:14:18 that way the spambots would need human intervention in the registration process twice 04:14:24 once to beat the registration CAPTCHA 04:14:27 once to beat the first edit CAPTCHA 04:15:14 I'll keep that as a last resort though, or at least a later resort 04:15:22 How is the captcha implemented? Is it just a reCAPTCHA? 04:15:34 ais523\unfoog: but, http://math.andrej.com/2007/09/28/seemingly-impossible-functional-programs/ <-- huh i somehow had got the idea that this kind of stuff needed trapping of undefineds 04:15:47 ais523\unfoog: I can change the captchas if you give me new ones in a few days or something 04:15:58 Sgeo: it's a question/answer CAPTCHA 04:16:01 oerjan: http://lukepalmer.wordpress.com/2010/11/17/searchable-data-types/ has a maybe more accessible explanation of how the general technique works? 04:16:07 Oh, right that 04:16:09 you're asked a question about esoprogramming 04:16:29 elliott found the spammers reading the logs to get the answers, though 04:16:41 -!- shikhin has quit (Ping timeout: 245 seconds). 04:16:48 I love the clc.intercal.org.uk CAPTCHA but it's probably too hard to implement 04:17:01 it's effectively "go to this other web page and copy the answer you see there" 04:17:17 But.... why would you need to read the logs to get the answers? 04:17:35 Or are you not talking about IRC logs? 04:17:56 ais523\unfoog: I feel like the INTERCAL CAPTCHA should have the answer in plain text on the page you get when you fail the CAPTCHA, so you need to submit to a different tab and then resubmit the original form 04:17:59 Why is a human even involved, what human would decide that the wiki is a high-enough-value target to waste their time? 04:18:30 a question i ask myself every day 04:18:31 Sgeo: we think it's a CAPTCHA-solving farm 04:18:44 they get bots to look at all the possible CAPTCHA options 04:18:49 get a human to record the values in a database 04:18:51 then the bots just use them 04:19:05 Why hasn't qntm falled? 04:19:06 fallen? 04:19:42 elliott: anyway, I recommend you use "who created [[language]]", for some languages taken from Special:Random (filtering out boring ones) 04:19:54 because the article text isn't regimented enough for that to be easily parseable yet 04:21:58 or, hmm, I'll do that now 04:22:30 oh wow, I just hit the language list off [[Special:Random]] 04:23:12 actually I'll do years, even if it's potentially bottable I bet they'll use humans anyway 04:23:21 the input format for those is more obvious 04:28:34 -!- shikhin__ has joined. 04:29:09 -!- shikhin_ has quit (Ping timeout: 246 seconds). 04:31:34 this is only taking as long as it is because I decided to ignore BF derivatives 04:32:49 I'm taking BFO, though, because BF impls are not BF derivatives 04:35:37 spammers are reading #esoteric logs? 04:36:20 cool, I hope they enjoyed my drunken ramblings and my oversharing about my sex life and such 04:36:38 elliott: here are your CAPTCHAs: http://esolangs.org/w/index.php?title=Special:Undelete&target=Esolang%3ACAPTCHAs×tamp=20131105043608 04:36:44 ais is going to make a captcha quiz based on your sex life, kmc 04:36:58 what an honor 04:39:14 -!- shikhin_ has joined. 04:41:21 You've talked about your sex life? Huh. 04:41:32 i thought so 04:41:39 -!- shikhin__ has quit (Ping timeout: 260 seconds). 04:41:40 or was that sarcasm ;P 04:42:18 I hadn't noticed it quite honestly. 04:43:09 -!- shikhin__ has joined. 04:44:39 -!- lifthras1ir has quit (Ping timeout: 252 seconds). 04:44:54 -!- lifthrasiir has joined. 04:45:00 `oohlist (928) 04:45:02 oohlist (928): shachaf oerjan Sgeo FireFly 04:45:20 You mean no one did it already? 04:45:51 -!- shikhin_ has quit (Ping timeout: 260 seconds). 04:48:21 -!- shikhin__ has quit (Ping timeout: 245 seconds). 04:51:53 what's that about xykon being chilly 04:52:59 oerjan: http://www.giantitp.com/forums/showpost.php?p=16356153&postcount=76 04:53:05 hth 04:53:15 http://math.andrej.com/2007/09/28/seemingly-impossible-functional-programs/ <<< i didn't quite bother to read all of this, but if you have a computable function (say, any haskell function) P of type Cantor -> Bool, then there exists n such that the value of P(x) each sequence x in the cantor space is a function of x_{[0,n]}. 04:53:24 and you can effectively find such n by simulation 04:53:44 this is well-known an obvious 04:53:47 *and 04:54:08 oh i love that shit so much 04:54:11 (might be that it's some in some way that looks cool though) 04:54:13 it fucking rocks my socks 04:54:15 trivial, one might say 04:54:20 yes 04:54:34 i just read a paper that proved that actually 04:54:48 and i was like come on everyone knows that 04:54:57 (well proved something similar) 04:54:59 oklopol: Are you missing a word? 04:55:02 maybe! 04:55:16 "there exists n such that the value of P(x) each sequence x in the cantor space" 04:55:21 oh. 04:55:26 each sequence x in the cantor space is a function of x_{[0,n]}. 04:55:30 got cut off maybe 04:55:39 No, it wasn't cut off. 04:55:43 erm 04:55:50 oh 04:55:53 !!! 04:55:54 i know 04:55:55 !!! 04:56:00 i'm missing a "for" 04:56:03 OK. 04:56:05 erm 04:56:07 yes 04:56:10 that's it 04:56:11 yeah 04:56:16 i'm indeed missing a "for" 04:56:19 there should be one 04:56:24 s/\n/ /g 04:56:30 -!- shikhin__ has joined. 04:56:32 yes 04:56:33 good point 04:56:39 will keep that in mind 04:57:00 excellent. 04:58:08 i'm pretty sure i had some proof in my "masters" thesis that used a version of this. 04:58:24 but anyway, if there were, for each n, a point x_n such that the machine inspects the nth coordinate of x_n before deciding P(x_n), then on any limit point of the sequence, the machine will run forever 04:58:59 except with continuous instead of computable 04:59:01 so P is a partial function, which is forbidden 04:59:28 oerjan: all functions are continuous and computable anyway 04:59:53 then it's even easier i guess: {0} is clopen in {0, 1}, so it's preimage is too 05:00:01 and clopens are cylinders 05:00:36 What's a cylinder, and what's {0, 1}? 05:00:41 well in my case they were integer functions. 05:00:48 a cylinder is basically a fancy name for a set of words 05:00:48 i think. 05:01:22 but compactness means only a finite of points in the range. 05:01:30 *number of 05:01:48 more precisely, a cylinder C is a set of points of the cantor space which is defined by a set of words w_1, ..., w_k such that x \in C if and only if x starts with w_i for some i 05:02:14 you can take those w_i to have the same length by extending them in all possible ways 05:02:39 I don't even know what the Cantor space is. :-( 05:02:55 oerjan: oh okay 05:03:11 OK, so {0, 1} is the discrete topology. 05:04:16 yeah it has the discrete topology (a computable function will be continuous w.r.t. that topology) 05:05:17 oerjan: so the proof is, cantor space is compact so image is compact so image is a finite set so image has a discrete topology so image has clopen base so function value is determined by clopen partition 05:05:43 maybe you could remove some of those but anyway i like that 05:05:43 that's about it 05:06:00 maybe in a master's thesis, you would explain stuff a bit 05:06:29 that was the idea. there weren't any really new results there, just explaining clearly some known stuff 05:07:55 shachaf: the ordinary cantor set is an example. more generally, anything homeomorphic to that. 05:08:45 oerjan: what are those things floating around her head anyway (in `olist) 05:09:06 shachaf: i wondered about that too... probably related to her powers somehow? 05:09:12 it was in the previous one too 05:09:21 it's been around since she appeared 05:09:26 just wondering what it is 05:09:29 oerjan: can you give me your master's thesis again 05:09:40 oerjan has no master 05:10:41 * shachaf greps logs. 05:10:43 http://oerjan.nvg.org/main.pdf 05:11:09 i thought that might be it. 05:11:31 thanks 05:12:19 http://oerjan.nvg.org/main.pdfRecent results in topological dynamics, described in [3], have shown that ordered cohomology is the key to investigate the orbit structure of Cantor minimal dynamical systems. 05:12:33 erm 05:12:38 pasting failure 05:12:56 but er yeah ordered cohomology? omg 05:13:20 -!- Oj742 has quit (Quit: irc2go). 05:15:47 is a topological conjugate a natural transformation thing 05:15:51 -!- shikhin__ has quit (Ping timeout: 245 seconds). 05:17:09 rather it's an isomorphism in the category of dynamical systems 05:17:10 oklopol: lemma 2.4 may be one version. 05:18:11 that's a proof of cylinders = clopens right 05:18:16 oh 05:18:20 yes 05:18:27 * Bike looks suspiciously at chat. this doesn't seem very ODEy. 05:18:54 yeah this ain't no ordinary differential equation 05:19:08 -!- shikhin__ has joined. 05:19:34 oerjan: that's the hard thing about proving what you said, but i was more interested in the way topology lets you state these results _after_ you know it. 05:19:38 erm 05:19:43 did that make any sense, prolly not 05:23:48 cylinder sets are defined on the previous page 05:24:37 or well at the top of the same page 05:25:31 okay we have different cylinders 05:25:40 by cylinder, i mean finite unions of cylinders 05:25:50 SORRY 05:26:28 -!- shikhin__ has quit (Ping timeout: 240 seconds). 05:26:44 they are meant to be a clopen basis of the topology 05:26:45 -!- shikhin_ has joined. 05:26:58 well they are with my definition too! 05:27:00 not all clopen sets 05:27:48 i'm pretty sure some use them as i do 05:27:50 this definition is more closely related to the diagrams 05:28:16 i mean i think your definition is better but i'm still apparently using this one 05:28:29 why would i do that if i was not _brainwashed_ 05:29:30 do you mean because in the dynamics, the cylinders dance round and round 05:29:30 well your definition makes them equivalent to clopen sets, so independent of basis 05:29:43 yes they do... 05:30:11 although the cylinders corresponding to maximal paths do get split up 05:30:59 so erm these bratteli whatever diagrams, are they just some sort of generalization of an adding machine 05:31:34 i suppose so. the case where there is only one vertex at each level we call an "odometer" 05:31:53 and is even more the same thing. 05:31:54 oh right that's how it goes 05:33:23 oh my god dimension groups 05:33:54 i wish i knew as much cool stuff as you do 05:34:22 i think your master's thesis is deeped shit than my phd thesis will be 05:34:27 *deeper 05:34:29 -!- prooftechnique has quit. 05:34:33 well take solace in the fact that some of these things have faded quite a bit. 05:34:43 oh dear 05:35:33 food -> 05:36:33 my thesis will be like lolol here's a picture of a CA doing some weird shit -- maybe it indicates that simple machines can perform complex computations?? i call this the theory of simplicial complexes. 05:37:37 -!- asie has joined. 05:37:41 u mad 05:40:14 after this i'm gonna write a book called "THE THEORY OF SIMPLICIAL COMPLEXES -- THE STORY OF HOW ONE MAN REALIZED WHAT NO MAN COULD BEFORE: THAT SIMPLE MACHINES ARE AT THE _CORE_ OF COMPUTATION" 05:40:43 and there's a footnote that says that that man is me 05:40:55 oklopol: um you realize simplicial complexes is already a term in homology 05:41:05 i think that's part of the joke 05:41:18 it was yes 05:41:47 good, good. 05:41:53 i've been reading quite a bit of complex systems cancer recently because i'm google scholaring for anything that might contain interesting constructions of cellular automata 05:41:57 as long as you stay funnier than wolfram. 05:42:26 (i will give some examples of such constructions in the first section, my thesis will be about subshifts where cellular automata are boring, i'm the anti-wolfram) 05:44:14 usually i find it most exciting when after months of research, it turns out that an object we're studying is completely trivial, for some weird-ass reason 05:45:24 the grand theorem of your thesis will prove that the set of systems you've defined is empty 05:45:53 that would be so awesome 05:46:24 i hear that's happened in some sense, although it's probably an urban legend 05:46:29 i'm gonna write a book called "The Beer, Burritos, and Bonghits Diet" 05:46:39 and on the cover is a picture of me wearing a lab coat (stolen) 05:46:39 like someone made some class and wrote a phd thesis where they proved tons of cool stuff about it 05:46:46 -!- shikhin__ has joined. 05:47:09 all functions are continuous, a problem of hilbert's is solved, and it does your laundry 05:47:15 kmc: i like burritos is that close enough 05:47:38 and the what'shistitle told him that there are no such systems because trivially 05:48:02 the opponent maybe 05:48:19 the story says this happened at the actual dissertation, but that just sounds horribly mean 05:48:21 -!- shikhin_ has quit (Ping timeout: 245 seconds). 05:48:31 oklopol: i think the urban legend is about someone who had someone _else_ prove that at their thesis defence. not a good day. 05:48:53 oh, i've heard oklopol's story too 05:48:58 some guy at the audience? 05:49:16 yeah at the actual thesis defence, not dissertation. 05:49:28 yeah, some guy in the audience pops up and says lol that's trivial 05:49:29 i'm good at anglis 05:49:42 i assume "lol" is literally pronounced 05:50:08 -!- Sprocklem has quit (Ping timeout: 245 seconds). 05:51:07 i vaguely think that _possibly_ it wasn't empty but they were all constant functions. probably there are myriad versions. 05:56:45 -!- tertu has quit (Ping timeout: 272 seconds). 06:08:10 -!- shikhin_ has joined. 06:10:47 -!- shikhin__ has quit (Ping timeout: 260 seconds). 06:13:54 -!- asie has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz...). 06:21:24 -!- shikhin__ has joined. 06:24:12 -!- shikhin_ has quit (Ping timeout: 252 seconds). 06:24:40 -!- shikhin has joined. 06:25:51 -!- shikhin__ has quit (Ping timeout: 245 seconds). 06:35:25 The list monad doesn't have a good way to fail with information, does it? 06:35:43 Maybe is a specialization of List, but Either isn't 06:36:52 There is EitherT, as well as LogicT 06:37:43 I think Prolog is stuck in the List monad, though. Although it (or just most impls?) does have exceptions 06:40:31 prolog has the database modification commands though. 06:41:43 I should read about ancestor cuts to see if continuations are implementable atop them 06:43:49 oklopol: somebody claimed there used to be theorems about doubly-periodic entire functions on the complex plane 06:44:36 the best functions 06:45:43 i.e. entire functions that repeated along two different vectors in the complex plane 06:45:47 which implies bounded 06:45:54 and therefore by liouville's theorem, constant 06:46:30 what if it's not analytic!! 06:46:44 "entire" implies analytic 06:47:01 yeah just managed to find the proof, and realized i should've realized that 06:47:12 i thought it just meant defined everywhere, wow go me 06:47:42 hexande 06:49:59 Prolog : List :: Icon : Maybe ? 06:50:44 No, Icon is also List 06:51:24 hachaf 06:52:35 -!- ais523\unfoog has quit. 06:54:18 you keep coming and going 07:04:03 mroman: i asked a German person about the space-before-period thing and they didn't know about it 07:04:56 maybe mroman wasn't entirely serious . 07:06:30 maybe oerjan wasn't entirely serious . 07:07:14 i think you may be illegally violating my copyright . 07:07:33 i think you may be illegally violating my copyright . 07:07:38 i also think you have a time machine . 07:09:04 http://www.irregularwebcomic.net/230.html 07:10:59 that one was obvious from the beginning; C-; did not read again 07:12:33 well in this context, naturally. 07:13:10 there was a puzzle in the computer game Discworld II based on this 07:13:25 with what's-her-name answering questions before you ask them 07:30:30 -!- FreeFull has quit. 07:43:56 -!- oerjan has quit (Quit: leaving). 07:44:24 lexande: do you think train stations are a good environment for maths lectures 07:45:48 not usually 08:32:20 -!- shikhin_ has joined. 08:34:18 -!- shikhin has quit (Ping timeout: 245 seconds). 09:01:50 -!- fangkui has joined. 09:05:11 哈哈哈哈哈哈哈 09:05:15 work 09:05:18 maybe 09:05:21 good 09:05:24 ok 09:05:32 美好的注意 09:05:53 Why do Asian IP addresses never have a reverse? 09:06:56 -!- fangkui has left. 09:07:08 We should have a CJK `welcome. 09:09:53 #japanese is talking about republican bananas, and #esoteric is listing japanese characters 09:09:55 i was very confused 09:10:28 What’s a republican banana? 09:11:23 Wait… Japanese characters? 09:11:42 ion: Well, you know, CJK. 09:14:11 -!- carado has joined. 09:14:20 ion: i'm pretty sure 美好的注意 are japanese characters 09:14:53 something like beauty, like, don't remember, don't remember, sound, maybe 09:14:54 Even when spoken by a Chinese person? 09:15:41 those particular ones exist in both i think 09:16:09 although in japanese, that's a list of characters, whereas in chinese it might mean something 09:16:13 I just realized the channel is full of Finnish characters. 09:17:03 While #finnish is probably talking about monarchic bananas. 09:17:03 quite a bit of non-finnish characters too 09:17:16 but okay maybe my message was phrased badly, i'll fix it 09:17:58 #japanese is talking about how some guy always associates the word republican with bananas, and #esoteric is listing chinese characters. i'm not confused because the first one isn't very esoteric, and the second one has nothing to do with japanese. 09:18:38 Why does said guy always associate the word republican with bananas? 09:18:58 " aah, banana republic" he eventually realized 09:19:06 i didn't actually read the conversation 09:19:07 ah 09:20:31 okay i guess 的 isn't a japanese character 09:20:56 just looks very familiar 09:25:42 -!- carado has quit (Ping timeout: 252 seconds). 09:32:37 -!- shikhin_ has changed nick to shikhin. 09:41:01 huh 09:41:08 i actually recognize both of those radicals 09:41:19 white moon? something like that 09:41:45 wait no, that's ummm 09:42:00 it's so small i can't make things out hardly, but i think that one is bullseye 09:42:28 haha, i actually remembered :D 09:42:39 'mato' - target, mark 09:51:01 \o/ 09:51:01 | 09:51:01 >\ 09:51:14 :( 09:52:35 :) 09:54:06 -!- shikhin_ has joined. 09:56:41 -!- Uguubee1111113 has left. 09:56:48 -!- shikhin has quit (Ping timeout: 245 seconds). 09:58:20 -!- shikhin__ has joined. 09:58:28 -!- shikhin_ has quit (Ping timeout: 240 seconds). 10:01:16 -!- shikhin_ has joined. 10:02:42 -!- shikhin__ has quit (Ping timeout: 246 seconds). 10:22:24 -!- augur has quit (Remote host closed the connection). 10:22:50 -!- augur has joined. 10:24:05 -!- augur has quit (Read error: Connection reset by peer). 10:24:16 -!- augur has joined. 10:25:26 -!- nisstyre has quit (Ping timeout: 245 seconds). 10:26:08 -!- KingOfKarlsruhe has joined. 10:45:11 -!- augur has quit (Read error: Connection reset by peer). 10:45:23 -!- augur has joined. 10:49:27 -!- Jafet has quit (Changing host). 10:49:27 -!- Jafet has joined. 10:54:18 -!- monotone has quit (Ping timeout: 245 seconds). 11:27:53 -!- carado has joined. 11:32:40 -!- carado_ has joined. 11:37:34 -!- yorick has joined. 11:37:42 -!- carado_ has quit (Ping timeout: 252 seconds). 11:40:10 -!- carado_ has joined. 11:45:24 -!- carado_ has quit (Ping timeout: 252 seconds). 11:49:00 -!- john_metcalf has joined. 12:02:29 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.90.1 [Firefox 25.0/20131025151332]). 12:16:41 -!- carado has quit (Quit: Leaving). 12:16:57 -!- Sgeo has quit (Read error: Connection reset by peer). 12:35:03 -!- carado_ has joined. 12:36:19 -!- carado_ has quit (Client Quit). 12:36:30 -!- carado has joined. 12:53:50 -!- MindlessDrone has joined. 13:11:38 -!- Taneb has joined. 13:14:06 -!- boily has joined. 13:14:15 -!- metasepia has joined. 13:16:04 -!- shikhin_ has quit (Read error: Operation timed out). 13:22:44 good kettle morning! 13:23:19 Afternoon 13:23:38 shachaf, sometimes 13:24:38 -!- monotone has joined. 13:25:08 Tanellob, shachellof, monotonello. 13:29:59 -!- shikhin_ has joined. 13:43:25 -!- shikhin_ has changed nick to shikhin. 13:51:37 Aaaah something in my room has just one dling and I don't know what 13:55:28 `? dling 13:55:30 dling? ¯\(°_o)/¯ 13:55:52 @wn dling 13:55:53 No match for "dling". 13:56:14 -!- tertu has joined. 14:00:14 -!- lambdabot has quit (Ping timeout: 246 seconds). 14:06:34 ~duck dling 14:06:34 --- No relevant information 14:06:50 hi boily 14:06:57 hintopia! 14:07:45 i've gotta pick out some southern things to send you. things you can only get down here afaik. 14:07:57 do you like pickled pig's feet? 14:08:15 never tried them, but they sound good :D 14:08:41 me neither 14:10:56 wikipédia always surprises me with the precisiveness of their articles → https://en.wikipedia.org/wiki/Lowcountry_cuisine 14:12:22 @wn precisiveness 14:12:35 -!- mrhmouse has joined. 14:13:06 Bike: fizzie kille lambdabot. 14:13:14 s/e l/ed l/ 14:13:25 ~duck precisiveness 14:13:25 --- No relevant information 14:13:59 boily: hominy is one thing i could probably acquire that you might like. i don't know where off the top of my head, but i know it can be had somewhere around here. 14:15:55 oh, interesting choice! 14:16:11 hominy grits that is 14:16:35 i could easily get the instant microwave kind 14:20:59 "kille /c/ 1. (colloquial) Boy, lad. 2. (colloquial) A (younger) adult male person; guy, bloke. 3. (colloquial) Boyfriend." 14:34:19 hmm... I wonder if I can ship some cretons through the borders... 14:56:49 I've got a truck 14:57:05 sing it mrhmouse! 14:57:23 -!- asie has joined. 14:58:25 so what's up with the spamswarm over at the wiki? 14:59:21 how are all these spambots making accounts? 14:59:27 CrAzY 15:01:15 -!- yorick has quit (Ping timeout: 246 seconds). 15:01:27 -!- yorick has joined. 15:03:09 do we have a captcha for account creation? 15:06:05 Has there previously been any research into whether all x86 SINGLE byte instructions would form a more-or-less turing complete language? 15:06:19 more-or-less because you obviously can't address infinite memory 15:08:31 you can't do call 15:08:39 but you can do push reg; ret; combinations 15:08:59 and I assume you can encode i.e. brainfucks [ ] in a jump table 15:09:12 and then load the address from there somehow and push; ret; it 15:09:20 but whether that can be done conditionally :( 15:09:37 also you can load es, ds, si, di which enables you to do movsb 15:10:07 (by inc ax * N; push ax; pop es;) 15:10:55 -!- nooodl has joined. 15:11:02 the assumption is that some bootstrapping programming loads your code to memory and sets the registers correctly for programm start 15:11:11 *bootstrapping program 15:11:38 i.e. the bootloader may use multi-byte instructions :) 15:13:15 also you can use xlat 15:15:25 @tell ais523 SPAMRUSH! 15:15:36 hm. lambdabot is still a young lad... 15:17:52 meanwhile, some Japanese bots are trying to sell sneakers, watches, and lodgings in Africa... 15:29:25 We might have an approach if we can get al to ah 15:31:56 which might be doable by writing it to a given location in memory using movsb 15:32:04 and then again with movsb with direction flag reversed? 15:32:46 -!- Sprocklem has joined. 15:34:27 ah 15:34:32 not necessary 15:34:40 movsb can write the address directly to the stack :) 15:35:24 and then ret it 15:38:21 -!- Lymia has quit (Ping timeout: 245 seconds). 15:58:33 -!- Taneb has quit (Quit: Leaving). 16:05:36 -!- KingOfKarlsruhe has joined. 16:09:32 -!- FreeFull has joined. 16:11:29 -!- asie has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz...). 16:19:27 -!- conehead has joined. 16:22:31 -!- tertu has quit (Quit: Leaving). 16:51:31 -!- augur has quit (Remote host closed the connection). 16:51:58 -!- augur has joined. 16:56:23 -!- augur has quit (Ping timeout: 245 seconds). 17:01:48 -!- Sprocklem has quit (Ping timeout: 245 seconds). 17:11:41 -!- asie has joined. 17:26:24 -!- carado has quit (Ping timeout: 252 seconds). 17:27:42 -!- oerjan has joined. 17:28:17 -!- shikhin has quit (Quit: Leaving). 17:40:49 -!- carado has joined. 17:46:52 -!- asie has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz...). 17:49:59 -!- oerjan has quit (Quit: leaving). 18:06:42 -!- metasepia has quit (Read error: Connection reset by peer). 18:06:42 -!- boily has quit (Read error: Connection reset by peer). 18:08:00 -!- boily has joined. 18:08:09 -!- metasepia has joined. 18:20:58 -!- augur has joined. 18:31:04 -!- Phantom_Hoover has joined. 18:31:06 will the spambot flood NEVER END 18:33:35 cat <<< "int getuid(void) { return 0; }" > /tmp/getuid.c; gcc -o /tmp/getuid.so /tmp/getuid.c -shared; LD_PRELOAD=/tmp/getuid.so id 18:34:41 @tell ais523 While you're smacking down some spam accounts, you might move [[Paulo Jorente]] to [[User:Paulo Jorente]] 18:34:45 fakeroot id 18:34:54 oh right 18:34:57 no lambda 18:34:59 sad day 18:35:02 lambdabot is dead? 18:35:03 what have you done, fizzie? 18:35:07 does fungot do that 18:35:07 quintopia: even just having lists and vectors?" " ugh... ( pause) ( display 18:35:10 quintopia: that's probably incorrect 18:35:25 we generally prefer mainspace encyclopedic articles for people 18:35:36 hi elliott 18:35:40 http://esolangs.org/w/index.php?title=Paulo_Jorente&action=history oh we've actually gone through this before 18:35:45 fungot: Why can't you do memos? 18:35:45 fizzie: those pythonistas wanted to make public and sell, i wouldn't need to store the drives remotelly? ( physically or maybe network connections)? 18:35:46 elliott: oh okay then 18:35:55 -!- Lymia has joined. 18:35:55 -!- Lymia has quit (Changing host). 18:35:55 -!- Lymia has joined. 18:36:33 elliott: can you smack down spam accounts? 18:37:10 -!- FireFly has quit (Excess Flood). 18:38:40 -!- FireFly has joined. 18:40:00 -!- lambdabot has joined. 18:43:39 quintopia: I can block them manually but not all of them are actually managing to edit and I don't have the time 18:43:49 can see about changing the captchas sometime today 18:43:54 cool 18:50:30 -!- Bike has quit (Ping timeout: 246 seconds). 19:10:30 -!- Taneb has joined. 19:20:15 -!- tertu has joined. 19:24:37 -!- Phantom_Hoover has quit (Ping timeout: 272 seconds). 19:32:54 -!- lambdabot has quit (Ping timeout: 252 seconds). 19:37:37 -!- Bike has joined. 19:38:55 -!- njm has quit (Quit: Reconnecting). 19:39:01 -!- njm has joined. 19:42:28 -!- nortti has quit (Ping timeout: 264 seconds). 19:42:53 -!- nortti has joined. 19:42:53 -!- Bike has quit (Ping timeout: 240 seconds). 19:44:54 -!- Bike has joined. 19:48:47 Bow tie experiment: two people noticed 19:49:42 did your bow tie spin and shoot water? 19:49:45 Noticed the experiment? 19:51:20 shachaf, notice the bow tie 19:51:43 Doctor Who wears a bow tie. Bow ties are cool. 19:52:04 john_metcalf: does he still, or was that just Smith and the one older one? 19:52:32 doctor who is not cool, sorry 19:52:46 you know who's cool? doctor whoooo 19:52:52 mrhmouse, we're still on Smith technically 19:52:54 shachaf: no such preson 19:53:00 Capaldi has been announced but not taken over yet 19:53:04 john_metcalf: no such person 19:53:23 kmc, it was a reference to the show, not an implication 19:53:41 kmc: do you have a coolness oracle 19:54:13 I'm a few seasons behind, actually. Saw Smith's first season but started over (2005, not 1960) when my GF wanted to watch it 19:54:29 Just Smith as far as I know. Don't remember about the older ones. 19:55:02 I think Troughton or Pertwee wore one? 19:55:59 john_metcalf: protip: his name is "The Doctor" 19:55:59 I assume that Capaldi as the Doctor will in each episode unleash a several minute long stream of inventively graphic profanity at some creature or another 19:56:08 some of these have bow tie-like decorations: http://en.wikipedia.org/wiki/File:Versions_of_the_Doctor.jpg 19:57:00 -!- copumpkin has quit (Ping timeout: 246 seconds). 19:57:46 kmc: The Doctor doesn't swear, generally. 19:58:08 Though I agree it would be amusing. 20:00:05 "A man walks into a police call box. It's slightly smaller on the inside." 20:00:24 give this man a medal 20:01:55 quintopia: ++++ 20:02:27 i stole it. there are more: https://twitter.com/HardSciFiMovies 20:02:35 coppro: I think you meant +[+] 20:02:40 mrhmouse: no 20:02:53 mrhmouse: that's equivalent to nothing 20:02:58 or bottom 20:03:00 I suppose that would overflow, depending on which interpreter you use 20:03:34 it isn't clear, though, whether it should always overflow 20:08:28 mrhmouse: there is a surprising dearth of algorithms for non-wrapping implementations on the wiki. perhaps you'd like to add some? 20:09:20 quintopia: I'd probably have to write one. I don't know of any implementations that don't wrap, only that the original design isn't clear whether it should wrap 20:10:20 Correct me if I'm wrong here, please 20:10:27 i've been adding algorithms without testing them. it's hard to analyse them entirely in my head, so if you happen to find or write a BigNum impl, let me know. 20:11:31 I didn't mean that it necessarily used BigNum, only that it didn't wrap. Could just stop at 255 or whatever the max value is. 20:12:25 Unless the behavior is defined in the original design for what happens at value boundaries. I'm working off of memory here. 20:15:30 What would be fun is that if you ever try to increment past 255, the cell gets replaced with a random value 20:15:38 Or a pointer to some other cell 20:16:44 FreeFull: How would the pointer work? Incrementing/decrementing would modify a different cell..? Moving left/right would move relative to the other cell..? 20:17:49 mrhmouse: i like to think that nonwrapping implies unbounded 20:18:16 mrhmouse: forcefully stopping a number from overflowing is just stupid and inelegant 20:18:57 quintopia: brainfuck is elegant otherwise? 20:19:45 mrhmouse: wrapping algorithms tend to be very elegant. 20:20:31 however, i suspect that an algorithm that works in the unbounded case should also work in the forcefully-size-limited case, assuming the numbers involved don't push up against that limit. 20:20:50 that said, writing algorithms for the unbounded case is straight-up challenging 20:21:39 challenging, or just time-consuming? 20:22:08 challenging 20:22:40 -!- Lymia has quit (Ping timeout: 264 seconds). 20:22:53 mrhmouse: You know what, not a pointer, but just randomly teleport you to a different position in the program 20:23:00 That would be easier 20:23:10 FreeFull: It's also easier to explain :) 20:23:11 Or maybe randomly teleport to a different cell 20:23:15 easier eh 20:23:45 Depending on your implementation, I think teleporting to a different location in the source code is trivial 20:24:14 so is moving to a different cell in the array 20:24:20 That's far easier 20:24:34 apparently virtualbox causes my machine to panic. so I installed libvirt, which is very nice and nifty and fungot and everything else. but then, the kvm vagrant plugin refuses to compile, so I can't use that with projects that run on vagrant. fml. 20:24:34 boily: i'll let this fnord do this, unchecked conversion in code i've pasted from my fnord 20:24:46 but from the programmer's perspective, the random cell seems easier to manage than the random instruction 20:25:53 Far easier, I would think. Especially if you're implementing a compiler (and not an interpreter) 20:26:48 not the compiler programmer, the bf programmer 20:26:54 Ah, I see 20:34:13 duduu 20:34:59 oklellopol. 20:36:22 i am! :) 20:37:44 oklopol is a walrus. 20:37:58 that i am? i am??? 20:39:11 Does #esolang house any Lojban speakers? 20:39:42 i don't think so 20:39:58 I tried to learn once, didn't get very far 20:40:11 yeah there are a few aficionados 20:40:31 including myself (i even have the grammar in my bookshelf) 20:40:50 I'm thinking of taking a swing at it, thought there might be a few people here interested in that sort of thing 20:42:11 Taneb: me too, long ago 20:42:19 -!- MindlessDrone has quit (Quit: MindlessDrone). 20:43:09 i was dating this woman and her other boyfriend was into lojban 20:47:15 i was in some lojban channels for a while 20:50:03 It’s popular enough for there to be channels? 20:50:41 shachaf may be referring to a conlang channel in general 20:52:15 there are multiple lojban channels on freenode.. 20:52:17 no, #lojban (and #jbopre) 20:52:23 or were, last time I joined them, anyway 20:52:32 there's #ckule ("school") too 20:53:33 i also went to a meeting of lojban speakers once 20:54:15 was confused 20:54:50 FireFly: Thanks for directing me to #ckule! That's incredibly useful. 20:55:24 Have fun 21:02:13 * kmc thinks his last message is one of the nerdiest things he's said in a while 21:04:39 kmc, I disagree, it suggests you were dating someone 21:04:54 nerds have dates, too! 21:05:55 yes 21:06:20 i think dating a poly conlang enthusiast is nerdier than not dating anyone 21:06:27 and i ♥ it 21:06:33 @ping 21:07:31 today will be remembered as the Day the Fizzie Killed the Lambdabot. 21:07:59 fizzie did that? 21:09:02 indeed. he is the perp. 21:16:00 fungottttt, why can't you evaluate haskell? 21:16:01 FireFly: i was mistaken!! i want my five pounds. i feel bad making you read paul graham's account on viaweb and fnord and fnord 21:16:17 (I love wikipédia. “instead of sounding like "YEEEEEE"”.) 21:16:39 fungot: do you evaluate haskell if I pay you five pounds? 21:16:39 FireFly: my bot can evaluate Haskell. fsvo evaluate. Error 1. 21:16:39 FireFly: i know; it's an occupational hazard for all of my mail.) 21:16:47 ~ 7 + 2 21:16:48 --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi 21:16:51 ~eval 7 + 2 21:16:54 Error (1): 21:17:02 ~eval 7 + 2 21:17:04 9 21:17:06 fungot: stop replying with kinda sensical replies; it's scary 21:17:06 FireFly: undefined variable ' a' combinator, which is all the rage 21:17:10 ~duck dog 21:17:11 Dog a domesticated canid, Canis familiaris, bred in many varieties. 21:17:27 ~duck cat 21:17:27 cat definition: a carnivorous mammal ('''Felis catus''') long domesticated as a pet and for catching rats and mice. 21:17:32 fungot is sentient. it's just... sentient on a different axis. 21:17:32 boily: why not just disable web access then, the output just after i checked. how shall i hand a long list of books to buy 21:17:47 ~ duck befunge 21:17:48 --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi 21:17:52 ~duck befunge 21:17:52 Befunge is a stack-based, reflective, esoteric programming language. 21:17:58 fungot: very good question, I say 21:17:58 FireFly: every time someone bothers to look at them 21:18:01 neat 21:20:10 fungot: duck! 21:20:10 olsner: he's a pathological liar 21:20:25 what is fungot written in? 21:20:26 mrhmouse: need to sleep on right now, not sure 21:20:30 fungot, stop being sentient! 21:20:30 boily: you're missing the forest for the trees. :) 21:20:34 -!- lambdabot has joined. 21:20:35 mrhmouse: befunge. 21:20:46 impressive. Is the source available? 21:20:48 woohoo! fizzie casted necroresurrection! 21:21:09 mrhmouse: ask the aforementioned necromancer. 21:21:48 Nevermind, found the website :) 21:21:55 `source 21:21:56 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: source: not found 21:22:00 er 21:22:04 befungeprefixsource 21:22:12 er, s/befunge/fungot/ 21:22:12 FireFly: fnord it. if our body likes it, it's only tangentially related 21:22:20 Yes. Fnord it. 21:25:48 someone will end up writing F&F&F slashfiction, I can sense it :D 21:25:56 Huh. "Fnord" is actually in fungot's source. I may have to learn Befunge. 21:25:56 mrhmouse: eval ( 1 0) returns 0 here 21:28:26 really, fungot 21:28:26 FireFly: the devil is in the pipeline for that kind of language 21:29:28 * boily gives botcrackers to fungot 21:29:29 boily: i remember well. besides that perl is a neat write-only language if you know about t when he did it 21:29:44 * boily pets fungot 21:29:44 boily: perhaps not flying, as such 21:32:16 perhaps I should get a pet fungot 21:32:16 olsner: or pre-scheme. 21:32:26 i thought of making a whitespace dialect with MONGOLIAN VOWEL SEPERATOR and the 2 zero width spaces 21:32:35 fungot: yes, or that 21:32:35 olsner: today: " zomg my vimrc broke u sux") ( bundle " mostly/ harmless") ( scheme-report-environment 5))) 21:32:40 so you essentially can only write it with a hey editor 21:33:14 myname: is that Fonzi mode for emacs? 21:33:25 myname: it should also use COMBINING GRAPHEME JOINER 21:33:38 not to be confused with a hay editor, for when you are in performance horse-tuning. 21:33:50 kmc: as long as it is zero width, everything should be fine 21:34:16 fungot: good evening 21:34:17 shachaf: i have no idea at the moment, so i would favor the name " mono". err... 21:34:19 -!- Bike has quit (Ping timeout: 260 seconds). 21:34:26 -!- boily has quit (Quit: there may be unidentified chicken.). 21:34:28 -!- metasepia has quit (Remote host closed the connection). 21:34:32 what about a hax editor 21:34:34 or a sax editor 21:34:36 good mono fungot 21:34:36 olsner: i tend to be very useful, as is necessary to tie the scheme system: a set of knowledge and irrational disdain for anything that reminds me of ' if' 21:34:39 fungot: are you writing a .NET implementation 21:34:39 shachaf: well, essentially, but i'm still unsure about needing a clos-style type dispatch system, et cetera, as well as 21:34:45 sex editor? 21:35:32 i hardly know 'er! 21:35:40 fungot's .NET implementation actually sounds interesting 21:35:41 FireFly: fnord? :d *goes to upload lost fnord partner. riastradh, you're always loading it fnord some later version... ( i think that's enough fnord. 21:36:00 fungot: me too 21:36:00 kmc: and they reported this to dorai a year or so 21:36:05 fungot: there's never enough fnord 21:36:06 mrhmouse: why not quack? never heard of 21:36:08 hmm, these muffins may have been slightly moldy.. will I die? 21:36:28 are they shot through with fungot? 21:36:28 kmc: ah i see what you mean by " c in scheme 21:36:28 fungot: will olsner die? 21:36:28 FireFly: how? tetris requires delays and reflexes could make him type ' hi tusho' and hit enter 21:36:43 -!- Sprocklem has joined. 21:36:44 olsner: if you type 'hi tusho' and hit enter I think you'll survive 21:36:51 dr fungot 21:36:51 kmc: and adding interesting tidbits of teh information fnord industry every now and then. :d) 21:36:57 The Fungot Diet 21:36:59 ' hi tusho' 21:37:05 fungot: am I safe now? 21:37:06 olsner: alice owns the room i take it you can't do it on my own 21:38:18 -!- carado has quit (Ping timeout: 252 seconds). 21:38:36 Has fungot's chatter actually improved as of lately, or have I just been oblivious to it before? 21:38:36 FireFly: is that really you? done with exams? nothing, so it must be 21:39:00 I'm probably just imagining things 21:39:01 this song is called Alice's Room, and it's about Alice, and the Room 21:39:14 and tommy wiseau 21:39:26 FireFly: we've just been doing a whole lot of fungot lately, and I guess you're filtering out the stuff that's not very good 21:39:26 olsner: well it starts to make sense now, thanks for the movie by the way, 21:39:39 you're welcome fungot 21:39:39 olsner: he's saying what the code is blazing fast, but it's not what i think 21:39:41 Probably 21:39:59 we were just outside of barstow, on the edge of the desert, when the fungot began to take hold 21:39:59 kmc: eval ( lambda foo) is usually syntax for () x 21:40:23 oh is that how Scheme works? thanks fungot, it all makes sense now 21:40:23 kmc: in stew everything is a side-effect. 21:40:37 ((lambda (fungot) (fungot fungot)) (lambda (fungot) (fungot fungot))) 21:40:37 kmc: yes i have a " color", and such typos probably won't be able to get it 21:40:49 fungot: im white 21:40:50 kmc: i mean, blender does it too. 21:41:35 what happens when you get two fungot's talking to one another? mindless chatter? 21:41:35 mrhmouse: reference implementations, like... 500-600 lines, iirc. any docs on why, even though there's no exclamation mark in the cases i'm familiar with 21:41:39 fungot: is #esoteric a stew 21:41:39 shachaf: there are two gc's. look at " how an electron interacts", for that matter 21:42:42 fungot, fungot, fungot 21:42:42 shachaf: as in, you can use syntax-case to pattern match on e.g. spidermonkey. c2bf. egobfi) in pseudo-haskell 21:42:54 mrhmouse: there was a famous dialogue between ELIZA and PARRY 21:42:58 fungot is p. obsessed with scheme 21:42:58 shachaf: and then tell me about x 5, y 4, z x+1 21:43:32 fungot: i don't know about those things 21:43:32 shachaf: iirc it will not be easy for me to update my own site. 21:43:33 "Scheme is like a stew: everything is a side-effect." 21:43:47 Today's fungot wisdom 21:43:47 FireFly: new environment every time you want to do in one line on irc matches the regex on the whole) pretty fun. 21:44:03 fizzie: you should fix fungot's punctuation 21:44:03 shachaf: ahh, i get porn sites and forum messages complaining about network problems at the office ' til 1am and drum loudly, yeah, i understood to be magical 21:44:36 you could match parens and just strip unmatched ones 21:44:45 the spacing is also an issue 21:44:56 fungot would seem much more realistic without the broken spacing 21:44:56 shachaf: paint shop fnord string to compare /etc/ password for its fnord. 21:45:27 I like to think of fungot as a drunken CS major, which makes the whitespace and parens just character points 21:45:27 mrhmouse: hello back. i think i'm about to drop a very large stream that contains all of the 21:45:37 fungot: all of the what? 21:45:38 mrhmouse: orbit's back end ( forgive the bad intentation.) 21:45:50 see, he's even sorry about the whitespace 21:46:08 I thought it was "forgive the bad intent" 21:46:12 is fungot a he? 21:46:12 shachaf: " fold" by haskell terminology and a fold-right by srfi-1... i wonder 21:46:21 I thought it was a typo of "indentation" 21:46:30 Like, "sorry that I'm about to drop a very large stream that contains all of the orbit' back end" 21:46:38 orbit's* 21:47:09 Curse you fungot, now I'm snickering in the office and getting odd looks 21:47:10 mrhmouse: for each stage there's a variable that is downcased. apple laptop loves qt. and i want to subtract " alpha" is that it 21:47:20 fungot: I think that's it 21:47:20 mrhmouse: http://pastebin.ca/ fnord my way through fnord right now, bkhl 21:47:38 fungot: you can fnord it. 21:47:39 FireFly: ( in case the offset changes. i wouldn't be surprised if it was made 21:48:02 fungot: should i read The Illuminatus! Trilogy? 21:48:02 shachaf: char is a number that inp will never return, some values must be the font. that's just for starters. that will require using it for 21:48:14 fungot is as enigmatic as always 21:48:14 shachaf: no idea at all) 21:48:42 fungot has a special brand of enlightenment 21:48:42 mrhmouse: although i probably got the usage stuff for import ten times or anything.) i've had this for years without a problem 21:49:12 fungot: do you like #drugz 21:49:13 shachaf: i'd prefer, say, scheme48.) 21:49:25 very into scheme indeed 21:50:29 -!- Lymia has joined. 21:51:56 I think fungot secretly gets high on scheme 21:51:56 FireFly: why wouldn't they look like locale names to me, a doylestown restaurant would have people dressed as 18th-century fnord, serving... i dunno 21:55:55 FireFly: if that's a secret, then fungot is very bad at secrecy 21:55:56 shachaf: i gotta get me some o that sweet yelling, but noooo. you were talking about a forbidden page, whats to talk about 21:56:13 fungot: tell me more about the forbidden page 21:56:14 shachaf: scheme is optimized for sparcs, but the list isn't laid out in readme and now m-x slime automatically loads slime48 stuff and doesnt ask me to, naa naa naa. 21:56:24 (does it contain scheme source code?) 21:56:30 fungot: naa naa naa yourself 21:56:30 shachaf: he is pretty fnord. between germany and france. --south. now 21:56:33 ^style 21:56:33 Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube 21:56:39 ^style fungot 21:56:39 Selected style: fungot (What I've said myself) 21:56:49 fungot.fungot.moed++ 21:56:49 shachaf: " and this is a new game. there is no particularly good human translation for this concept. a concept usually denoted by a single, savage thrust of her was certain that the noise was as a distress signal is 21:57:43 -!- Bike has joined. 22:01:28 -!- augur has quit (Remote host closed the connection). 22:01:31 -!- ^v has joined. 22:01:48 -!- mrhmouse has quit (Quit: fungot!). 22:15:23 -!- lambdabot has quit (Quit: #lesswrong). 22:19:08 -!- Sprocklem has quit (Ping timeout: 240 seconds). 22:28:15 -!- ais523 has joined. 22:29:57 -!- heroux has quit (Ping timeout: 248 seconds). 22:31:07 -!- heroux has joined. 22:33:21 elliott: the new abusefilter seems to be holding, at least 22:34:09 except, hmm 22:34:17 it doesn't seem 100% reliable 22:36:10 ^style ss 22:36:10 Selected style: ss (Shakespeare's writings) 22:36:54 fungot: shakespeare huh? 22:36:55 nooodl: ale man. hold! in the orient when the gracious light lifts up his head, for the close night doth play the runaway, and we are come to fetch you home: i meete the captaines at the cittadell 22:37:22 oh, bleh 22:37:36 it gets automatically turned off because it assumes it's hitting false positives 22:37:39 because it matches so many actions 22:37:57 Can you remove that feature? 22:40:33 -!- ^v has quit (Remote host closed the connection). 22:45:00 -!- augur has joined. 22:48:51 -!- ^v has joined. 22:49:22 elliott: Can you restart lambdabot? 22:49:42 Maybe set something up to restart like things used to work? 22:50:04 (This time it looks like some admin told it to "@quit #lesswrong".) 22:51:56 -!- augur_ has joined. 22:52:32 elliott: can you please reconfigure MediaWiki to change $wgAbuseFilterEmergencyDisableThreshold to 1.0? 22:54:26 ais523: in a minute 22:54:29 shachaf: is it even in #lesswrong? 22:54:39 No, it's not even online. 22:54:53 sigh 22:55:03 -!- elliott has left. 22:55:09 -!- augur has quit (Ping timeout: 246 seconds). 22:57:27 -!- elliott has joined. 22:58:16 -!- lambdabot has joined. 22:59:04 -!- njm has quit (Quit: getting off irc for a while). 23:03:22 I have made up something called "Block RPG" I don't know if it already exist under other name. How it works is, there is a hierarchy of referees and players, and both the referees and the players have to be ready in order to play something. If something depends on what someone else did in the past, or is encountering another player (or referee), that part of the game is blocked until it is resolved (the rest of the game can still continue). 23:04:51 Are you aware of such things? 23:05:38 I am not aware of such things. 23:06:03 Do you like this kind of idea, it could work if there are too many players and stuff like that? 23:17:46 -!- oerjan has joined. 23:26:15 -!- Lymia has quit (Ping timeout: 245 seconds). 23:36:26 shachaf: it's confusing that «foo 2>&1 >out» writes only stdout to 'out' but «foo 2>&1 | tee out» writes both stdout and stderr 23:38:42 what about foo >out 2>&1 23:38:55 that will redirect both and is generally what you want 23:39:33 if you think of it like «stdout = open("out"); stderr = stdout;» then it makes sense 23:39:38 but it still "feels backwards" to me 23:40:16 wait, so what's foo 2>&1 >out do 23:40:43 -!- Taneb has quit (Quit: Leaving). 23:40:44 Writes stderr to where stdout would have gone, and stdout to "out". 23:40:45 writes stderr to stdout and stdout (without stderr) to out? 23:40:50 right. weird 23:41:13 exec 3>&2 > >(ts >> "$log") 2>&1 23:41:28 wat 23:42:43 Appends stdout and stderr with timestamps to $log, and keeps fd 3 around for referring to the original stderr? 23:42:45 redirect stdout and stderr to append to $log through the program 'ts' (which timestamps each line), also keep original stderr open as fd 3 23:42:48 yep 23:43:05 See, not rocket science. 23:43:07 and it takes effect within the current shell script, because that's what 'exec' does without a command 23:43:21 kmc: that's why there should be a write-to-file command, like a dual to cat (the way people actually use it) 23:43:28 and then everything should be done with pipes, no < or > 23:43:36 imo better that way 23:44:08 readfile foo | ... | writefile bar 23:44:52 sponge is like that, but it also buffers 23:44:58 m>&n means "assign file descriptor m to point to whatever file descriptor n previously pointed to, with no further indirection through n" 23:45:03 also tee >/dev/null 23:45:05 http://en.wikipedia.org/wiki/Hartmann_pipeline 23:45:22 There's no way to "branch" in a pipeline, though. You couldn't "... | ts | writefile bar" just the stderr, and pipe stdout somewhere elsewhere. 23:45:37 kmc: also cat > file 23:45:39 oerjan, kmc, fizzie: oh, i was confused because i wasn't sure what 3 was (like how 1 is stdout and 2 is stderr) 23:45:40 if you're willing to use > 23:45:54 Bike: yeah, 3 isn't anything by default, but doing that opens it 23:46:08 fizzie: yeah, but process substitution can do that! which is why i used it above 23:46:14 my old enemy, create-a-variable and assign-a-variable being conflated 23:46:14 Yes there should be write file command; it can be used, then, if you cannot use > for some reason; can dd write a file like that? 23:46:25 The >(foo) and and <(foo) things always look kind of clunky to me for some reason. 23:46:27 fizzie: well, it's kind of unfair that you can say 2>x 1>y but you can't pipe them to two different commands 23:46:30 i <3 them so much 23:46:35 argh 23:46:37 colordiff -u <(command) <(othercommand) | less -SR 23:47:22 Bike: then you can do whatever >&3 later in the script to send things to original stderr, but all the stderr and stdout of the commands you run will be captured 23:47:49 @_@ 23:48:02 i <($((3))) bash 23:48:14 -!- Phantom_Hoover has joined. 23:50:32 shachaf: There's the "clean" approach of (prog 2>&3 | stdoutpipeline) 3>&1 | stderrpipeline for that, of course. 23:52:14 `run ((echo "aabb"; echo "bbaa" >&2) 2>&3 | tr 'a' 'A' >&2) 3>&1 | tr 'b' 'B' # so clean 23:52:16 AAbb \ BBaa 23:53:53 -!- nisstyre has joined. 23:54:48 Yes, you can do that!!! 23:58:47 -!- yorick has quit (Remote host closed the connection).