00:02:19 -!- ski_ has joined. 00:02:37 -!- newsham_ has joined. 00:02:47 -!- yorick_ has joined. 00:02:55 -!- ineiros_ has joined. 00:04:04 -!- fizzie has quit (Remote host closed the connection). 00:07:39 -!- newsham has quit (Remote host closed the connection). 00:07:41 -!- yorick has quit (Read error: Connection reset by peer). 00:08:23 -!- ski has quit (Remote host closed the connection). 00:10:21 -!- fizzie has joined. 00:11:31 -!- ineiros has quit (Ping timeout: 250 seconds). 00:21:18 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…). 00:21:30 -!- copumpkin has joined. 00:21:50 -!- copumpkin has quit (Client Quit). 00:46:27 -!- newsham_ has changed nick to newsham. 00:54:17 -!- AndoDaan has quit (Ping timeout: 252 seconds). 00:57:04 -!- rodgort has quit (Remote host closed the connection). 01:01:57 -!- ^4 has quit (Ping timeout: 240 seconds). 01:08:46 -!- rodgort has joined. 01:17:04 -!- rodgort has quit (Remote host closed the connection). 01:22:19 -!- AndoDaan has joined. 01:22:55 -!- rodgort has joined. 01:28:51 Is the antiderivative always the integral? <-- depends how you define each of them. 01:29:21 you can have something that has a derivative but the derivative isn't lebesgue integrable 01:32:45 -!- AndoDaan has quit (Ping timeout: 240 seconds). 01:33:20 -!- AndoDaan has joined. 01:33:34 but there's an integral definition that corresponds closer, known as Henstock integral 01:33:58 (another student studied those when i was at university) 01:35:17 just read http://cr.yp.to/papers/calculus.pdf hth 01:38:15 shachaf: you need restrictions on the function for it to be true that antiderivative = riemann integral 01:38:50 oerjan: yes 01:39:10 that's why that pdf uses the integral you mentioned instead, and talks about that in the last paragraph 01:39:17 what, it does? 01:40:00 shachaf: you cannot expect me to read to the end on something that looks like ordinary first year stuff on a brief glance hth 01:40:30 oh luzin, i vaguely remember that 01:45:14 -!- FireFly has quit (Ping timeout: 240 seconds). 01:51:27 -!- FireFly has joined. 01:52:17 oerjan: i should learn some analysis hth 01:54:39 twh 01:55:53 JetBrains is stil running an ad for an expired contest. Isn't that kind of expensive/ 01:57:27 i don't know who jetbrains is and why anyone cares that they're running an ad 01:57:49 or whether it's expensive 02:03:50 -!- boily has quit (Quit: ALFALFALFA CHICKEN). 02:03:53 ^elikoski 02:03:53 eliott elliot eliott eliott elliot elliott eliot elliot eliott elliot elliot eliott eliott elliot eliott eliot elliot elliott eliott elliot eliott eliott elliot elliot eliott eliot elliott eliott elliot eliott eliott elliot elliott eliot elliot eliott eliott elliot elliot eliott elliot elliott eliot elliot elliott eliott e ...too much output! 02:04:08 um. hi 02:04:12 oh hi 02:04:21 ^show elikoski 02:04:21 ((io)S(t)~^( )S~:)((e)S(l)~^~:):(S)~^(:SS)~^(*a((((S)~^)~a*^)~a*^~:)~*^~)(:**a((((:SS)~^)~a*^)~a*^~:)~*^~):(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^ 02:04:50 -!- shikhout has joined. 02:05:22 elliott: i may be having it bad. i got 260 rep and mortarboard yesterday, and am apparently #2 on the monthly haskell rank 02:05:48 heh 02:07:22 -!- shikhin has quit (Ping timeout: 240 seconds). 02:20:12 -!- copumpkin has joined. 02:39:03 -!- ChrisMM has joined. 02:39:03 heyo 02:39:12 heeyo 02:39:31 i assume fungbot is doing well 02:39:41 *fungot 02:39:41 ChrisMM: the electronic feel of this crap on another site. its not exactly a classic rendition. it's not a fan! 3 " fuck you", and now your hostile feelings have clouded your past good judgment and you didn't see that one" 02:39:50 ^style 02:39:50 Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack oots pa qwantz sms speeches ss wp youtube* 02:39:59 well if not politely 02:41:34 yah 02:45:34 ^show 02:45:34 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 backwards output 02:45:46 ^show srmlebac 02:45:46 >2,[>,]<[<]>[.>2]<[>2]<2[.<2] 02:48:33 ^show celebrate 02:48:34 (\o| c.c \o/ ಠ_ಠ \m/ \m/ \o_ c.c _o/ \m/ \m/ ಠ_ಠ \o/ c.c |o/)S 02:48:34 | c.c.c | ¯|¯⌠ `\o/´ | c.c.c | `\o/´ ¯|¯⌠ | c.c.c | 02:48:34 /| c.c /| /| | | /| c.c |\ | |\|/'\ c.c >\ 02:48:34 (_|¯'\ /`\ 02:48:35 |_) (_| |_) 02:48:41 ....huh. 02:48:48 ^show ha 02:48:48 ((ha)(ha))(~:^:(. )*S( )~**a~^!a*~:^):^ 02:49:34 -!- zzo38 has joined. 02:55:57 ^style jargon 02:55:58 Selected style: jargon (UNIX-HATERS mailing list archive) 02:56:45 -!- ^4 has joined. 02:58:36 -!- Sorella has quit (Remote host closed the connection). 03:02:08 in Thue is the string replacement chosen entirely at random? 03:02:48 nondeterministically, iirc 03:03:13 where nondeterministally means "you cannot even count on random" 03:03:26 right. 03:03:39 because you're 'too good' for pseudorandom numbers 03:03:56 always taking the first one is perfectly legal :P 03:04:09 (well maybe. i haven't actually checked the spec.) 03:04:15 one can imagine an optimizing thue implementation that chooses in some deterministic but hard to think about fashion based on the rule contents 03:04:38 my problem is on the wiki page it says '...The program outputs bits in an undefined (and quite possibly random) sequence.' 03:04:51 where, if the string rewrites were nondeterministic, it WOULD be ENTIRELY random 03:04:55 no 03:04:57 and it has that (and quite possibly...) in there 03:05:05 it /can/ be random, but it doesn't have to be 03:05:09 ahh. 03:05:10 it could implement all zeroes probably 03:05:30 yes. 03:05:42 I see 03:05:51 output, not implement 03:06:29 i had this vague idea of implementing thue in itflabtijtslwi which has no randomness, but because of the implementation idea it wouldn't be easily predictable either 03:06:30 catseye's interpreter lets you choose a deterministic rule, if you want 03:06:46 but you can also not do that, see. 03:07:41 (it has left-to-right and right-to-left, so you could make that program output all zeroes or all ones) 03:07:51 mm. I get it 03:09:35 mine would be essentially "do all substitutions in turn globally, but in such a way that you cannot substitute on something that's already been changed this round" 03:11:15 I'm gonna look into thue now, it seems very nice... 03:18:06 c::= 03:18:07 b::=~foo 03:18:07 b::=~bar 03:18:07 b::=~baz 03:18:07 b::=~bin 03:18:07 ac::=abc 03:18:07 ::= 03:18:08 abccccccccccccccc 03:18:15 I think that's generating simlish 03:18:34 barbinbarfoobaz 03:19:03 -!- not^v has joined. 03:19:39 couldn't it wipe out the c's first 03:19:59 or well... why do you ahve both the ac::=abc and c::= rules. 03:20:30 well I want it to generate them but I also want it to halt 03:20:38 if it runs out of c's it'll halt 03:20:50 yes, it could wipe out all the c's first. Ya just hope. This isn't a good program. 03:20:52 Should I privilege the function profunctor in my code? I feel like maybe I shouldn't, since forget is also a profunctor 03:20:57 And conceptually a function too 03:21:13 Although I guess Haskell privileges it 03:21:38 (By priviledge I mean not doing a Racket equivalent of a newtype) 03:21:55 ChrisMM: if you want a fixed finite output, you could do the b::=~ rules, and then just have ::=bbbbb, no? 03:22:02 (to output five, of course) 03:22:21 -!- ^4 has quit (Ping timeout: 240 seconds). 03:22:50 yeah I just realized v_v 03:22:53 >.> 03:27:53 Wrote a script to interpret http://esolangs.org/wiki/Verbose. what a chore. 03:28:37 the roman numerals must be the most annoying part 03:28:42 what programming language has like 03:28:49 a roman numeral library 03:29:06 Yeah, just looked up the algorithms and translated them to lua. 03:29:27 common lisp has a function to print an integer in roman. still not sure why 03:32:06 wow 03:33:47 * Sgeo_ wouldn't be surprised if Factor had something 03:34:03 http://docs.factorcode.org/content/article-roman.html 03:35:04 "Computes the quotient and remainder of two Roman numerals." 03:35:12 Hmmm... I can't figure out thue 03:35:17 I mean i get it but 03:35:26 I'm trying to figure out how to properly make code 03:35:30 hmm hmmhmm 03:40:29 Roman numeral is not difficult to implement 03:42:49 More difficult than brainfuck numerals? 03:43:20 optimized brainfuck numerals are uncomputable, so that's probably harder than romans 03:43:32 The shortest possible program that outputs a given numeric value 03:44:30 Are you sure it's an uncomputable problem rather than just an infeasible one? 03:44:59 Hmm, halting problem 03:45:00 yeah, it's perfect compression 03:45:12 which is uncomputable bla bla kolmogorov. 03:45:20 Yeah, I can see why it'd be uncomputable 03:45:23 The halting problem 03:46:51 . and +. are provably the shortest possible representations 03:47:03 Bike: What if you add some restriction that ensures halting? 03:47:28 http://en.wikipedia.org/wiki/Kolmogorov_complexity#Uncomputability_of_Kolmogorov_complexity behold 03:47:44 I mean, it won't be kolmogorov complexity 03:47:49 And it will become actually computable 03:48:06 There may be other restrictions too that might be possible, such as restricted amount of memory use, and maximum number of steps; you don't need necessarily a restriction that ensures halting, although if there is one that will work too. 03:50:05 There are ones which ensure halting and allow multiplication 03:50:18 I'm not sure about how powerful you can go though 03:51:52 i think the shortest representations in presburger arithmetic or something are computable in double exponential time 03:52:18 oh no that's some other bullshit about presburger. eh. 03:52:56 I'd believe that, given that you can only add numbers 03:53:19 just use system F hth 03:56:33 (someone here managed to do goodstein sequences in it, that's more powerful than peano arithmetic 03:56:36 ) 04:08:52 -!- axtens has joined. 04:09:30 -!- axtens has quit (Quit: Leaving.). 04:13:57 -!- not^v has quit (Ping timeout: 240 seconds). 04:14:04 -!- shikhout has quit (Ping timeout: 260 seconds). 04:19:18 'http://docs.factorcode.org/content/word-binary-roman-op%2Croman.private.html 04:19:26 * Sgeo_ runs in the opposite direction 04:23:52 -!- ^v has quit (Ping timeout: 240 seconds). 04:44:34 -!- ChrisMM has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 04:48:10 -!- AndoDaan has quit. 05:00:38 -!- J_Arcane_ has joined. 05:01:57 -!- J_Arcane has quit (Ping timeout: 240 seconds). 05:02:01 -!- J_Arcane_ has changed nick to J_Arcane. 05:08:09 I forgot to save a part of my forget code. 05:08:18 Sgeo_: apparently it works 05:12:32 I don't know if (provide gen:profunctor) is the proper way to provide a generic 05:14:38 So yeah https://github.com/Sgeo/racket-optics/blob/master/profunctors.rkt 05:14:44 Still a work in progress 05:17:57 -!- Lorenzo64 has joined. 05:19:26 I definitely wrong dimap's order of arguments that way for a reason: If there's a consistent flow that's easier for me to remember 05:26:16 racket is more reliant on reader macros than i thought. 05:26:58 I don't think #:foo are reader macros 05:27:20 oh, are they just symbols 05:27:59 They're keywords. I think natively parsed, but every piece of data is surrounded by a macro which by default rejects keywords 05:28:15 ...surrounded by? 05:28:22 Well, hmm. (f a b c) where f is a macro, gets a different macro, so hmm 05:28:45 Well, (f a b c) where f is a macro gets turned into (#%app f a b c). I think something similar happens to bare data 05:28:57 erm, where f is a function. 05:29:13 (both lines) 05:50:33 -!- Frooxius has joined. 05:53:37 -!- ^v has joined. 06:16:30 -!- augur has quit (Quit: Leaving...). 06:34:26 -!- TieSoul-mobile has joined. 06:37:22 -!- TieSoul has quit (Ping timeout: 240 seconds). 06:37:31 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…). 06:43:47 Taneb: ? 06:51:18 I guess a hypothetical 'sum' is an example of a optics Fold? 06:52:08 -!- copumpkin has joined. 06:53:54 :t sumOf 06:53:55 Num a => Getting (Endo (Endo a)) s a -> s -> a 06:54:30 Sgeo_: a Fold is something you _can_ take a sum (or any monoidal summary) of. 06:55:12 :t foldlOf' 06:55:13 Getting (Endo (Endo r)) s a -> (r -> a -> r) -> r -> s -> r 06:57:06 :t foldrOf 06:57:07 Profunctor p => Accessing p (Endo r) s a -> p a (r -> r) -> r -> s -> r 06:57:18 Ok, so a quick test of my code at the REPL failed... and I have no idea if my definitions are wrong or my REPL test is wrong 06:57:40 fiendish 06:58:19 REPL code was wrong 07:08:19 -!- TieSoul-mobile has quit (Read error: Connection reset by peer). 07:36:43 -!- oerjan has quit (Quit: leaving). 07:37:04 -!- variable has quit (Ping timeout: 260 seconds). 07:45:44 -!- mtve has joined. 07:47:32 -!- variable has joined. 08:26:53 -!- Patashu has joined. 08:28:45 I notice sometimes the computer screen is getting blurry horizontally when the CPU is busy; does this have anything to do with the fan? 08:30:12 It doesn't seem to give me any problems with any programs though, with the exception of Visual Pinball. 08:31:25 (Not only is it fuzzy horizontally but also vertically makes scanlines brigher and darker) 08:38:40 zzo38: I can think of two things: 08:40:04 firstly, if it's a notebook, then it's usually a problem with that the notebook isn't grounded because there is no ground pin in the cable from the power supply to the notebook, and this can cause problems. the solution is usually to replace your power supply, or, 08:40:54 if it only causes problems with the image on your monitor, not static when you touch the keyboard, and your video card has a DVI or HDMI output, then use an all-digital cable to the monitor. 08:40:56 It isn't. 08:42:21 Secondly, if you're using a VGA cable (even on a desktop computer), it could be an inductive interference between a power cable and your VGA cable, or something simliar inside the machine, in which case moving to all digital DVI or HDMI often helps. 08:42:21 -!- zzo38 has quit (Read error: Connection reset by peer). 08:42:53 ja 08:43:05 -!- zzo38 has joined. 08:43:08 Can I deactivate certain keycombinations in the Dvorak layout 08:43:22 zzo38: Secondly, if you're using a VGA cable (even on a desktop computer), it could be an inductive interference between a power cable and your VGA cable, or something simliar inside the machine, in which case moving to all digital DVI or HDMI often helps. 08:43:25 Sorry my computer turned off while I was trying to figure out what a power cord was connected to. I wonder if that is the problem? 08:43:26 Other possibilities are that you have an extra-long VGA cable or a faulty KVM switch or a very old and bad quality monitor, but you probably know if you do that. 08:44:05 I am not using a KVM switch 08:44:11 zzo38: in that case hope that the power cable was connected losely somewhere and you accidentally moved it, so try to unplug and plug everything. 08:44:13 I do have a surge protector though. 08:44:40 It only happens when it is computationally intensive though. 08:45:01 it's also possible that you simply have a faulty motherboard (or possibly power supply or something) which is why the computer sometimes turns off at random times, but that's hard to debug. find someone who is good with hardware. 08:45:23 zzo38: are you using a VGA cable? 08:45:41 Yes, although it is pretty close to the computer and monitor 08:45:51 (or a VGA to DVI adapter) 08:45:57 It is a "Certified Data" LCD monitor 08:46:20 zzo38: in that case, try to move around the cables a bit, especially try to make sure the VGA cable isn't close to power cables, and check if that makes the image better. 08:47:35 -!- augur has joined. 08:50:42 -!- Hjulle has quit (Ping timeout: 245 seconds). 09:03:31 But I wonder if it is really just an effect of a different kind of problem inside of the computer. 09:03:51 I did have many other problems before but replacing the power supply fixed most of them. 09:04:13 (The picture is the only thing it did not fix.) 09:08:00 I hate typing '+space+s for 's 09:08:04 because '+s gives me ś 09:08:21 itś a me, mario 09:08:21 Disable that function then (or change it) 09:08:25 You should have a separate key for ' and ´ like we do. 09:08:42 I wanna use Dvorak with support for german Umlauts 09:08:48 Yes, using separate dead keys would help 09:08:53 which Dvorak international with deadkeys has 09:09:07 but that Layout also has this silly śáń combination-keys 09:09:44 I use US International with AltGr deadkeys. 09:09:49 it's p. good 09:10:04 ü 09:10:05 wow 09:10:08 it's a me 09:10:11 hm 09:10:13 neat 09:10:15 ö 09:10:37 üö wheres the third? 09:10:49 I'm using the "nodeadkeys" variant of the standard Finnish layout, which is slightly silly in that it has a key for ' and a key for ´ and you can get e.g. á with composing with either one of those, which makes the ´ relatively useless, since I don't think I've ever needed a standalone ´. 09:10:50 over the q? 09:10:52 ä 09:10:59 äüö 09:11:01 k 09:11:04 altgr+w 09:11:12 altgr+w å 09:11:14 although it's technically , for dvorak 09:11:30 (dvorak's , is where qwert'z w is) 09:12:21 The TI-92 uses the 2ND key together with a letter has a prefix to indicate if you want an accented or Greek letter. 09:12:35 (with the exception of theta, which has its own key.) 09:21:22 fizzie: Except now in order to explain its working, but that's only because it has it anyways 09:23:16 I suppose another way to make typing accented letters would be for example you can push the apostrophe and while holding it down, push the A and the software could be designed to accept that. 09:28:22 I noticed that a lot of old UNIX programs use a filter interface, although many new programs don't (except for the ones I wrote); why is that, and can we fix this? 09:29:47 -!- Lorenzo64 has quit (Ping timeout: 245 seconds). 09:33:24 zzo38: well, part of that is safety, making sure you don't overwrite files you don't want to, 09:33:57 and of course some programs allow using either filter or filename-in-command-line interface, and some programs I write take input from a file but output to stdout. 09:37:31 It is really the user's job to figure out which files you want to overwrite and don't; if you are worried about it you can also set permissions/file-attributes, too. 09:38:32 I know that dvilj4 supports filter but requires that it is explicitly specified by putting - as the filename; if you put nothing at all you get a help message and I think would be better to put the help message in the man page and make it use a filter interface. 09:38:54 (And, the filter interface by putting - is normally how I use it, too) 09:41:35 -!- drdanmaku has quit (Quit: Connection closed for inactivity). 09:43:38 Something like this, generally: tex abcde; dvilj4 - < abcde.dvi | lp (although generally I would preview first) 09:55:09 Many other kind of program would be useful to work by filter as well, such as, to capture a picture from a scanner or webcam, to read captions from a TV broadcast, to do OCR or reading barcodes, preprocessors for text (or possibly even binary inputs), conversion from one format to another, and many more, too. This way you can use it with pipes and/or redirect to files. 09:55:29 Or even just to put the text on the screen, or typed in on the keyboard. 09:55:49 -!- AnotherTest has joined. 09:57:33 Isn't it? 09:59:16 zzo38: yes, maybe. I'm not sure really. 10:00:15 of course some programs require at least a seekable input file, and some even require a seekable output file. 10:00:52 for example, a video encoder like ffmpeg may or may not need to seek the input and output files, depending on the formats and options used. 10:00:55 b_jonas: Yes, I am aware of that, but many don't, even if it normally seems like it does, there are often (not always) simple ways around it. 10:01:37 I have also written a program for writing music in Amiga format; it is also working using filters (so far it ignores all command-line parameters as I have had no need to add any; however later I may want to add options for version information, search paths, and extra diagnostic outputs) 10:02:25 can you give particular examples of programs that you would like to work as a filter but they don't? 10:03:31 there's one program that I sometimes try to use with the filename in command line but that actually requires the input from stdin always: tr 10:04:19 it makes sense for avoiding human errors actually because tr takes one or two non-filename arguments, so you could make a mistake where a filename argument is interpreted as a transliteration key or the opposite 10:05:25 b_jonas: Well, dvilj4 can, but it doesn't unless you put a minus sign. And of course a lot of GUI programs are such examples too; many could possibly be designed for filter 10:06:31 maybe it's that I don't use filters too much because I'm overcompensating for how some people try to avoid temporary files at all costs even when temporary files aren't the problem (especially on sane modern operating systems where the files typically don't even have to hit the disk, and when they do have to hit the disk, then they'd better hit the swap even if you don't use a temporary file) 10:06:51 Programs such as ppMCK also are not a filter. 10:07:21 zzo38: oh, I don't use dvilj4 because I print through postscript or pdf, but I do write the laser jet printer output file with ghostscript to a temp file 10:07:59 gui programs are different, there the problem is often that the program is gui-only, and it's very hard to automate them. but I don't meet many of those programs except at work. 10:08:10 what's ppMCK? 10:08:24 ppMCK is program for writing .NSF musics. 10:09:02 Do you know anything about .NSF musics? 10:09:06 no 10:12:26 Also is there a way for a pipeline with several programs to redirect its output to the first program's input? In some cases this would be useful for making some kind of programs that could take advantage of this. 10:14:18 zzo38: there is, but most often that just leads to deadlocks that you don't discover at first 10:14:31 which is why that ability should not be well known 10:14:49 you should do that only if you're certain your program and use case can handle it 10:15:41 if you mean per #esoteric, then yes, you can do that, though I don't know why it helps 10:16:37 -!- Hjulle has joined. 10:18:47 (this seems to be a faq btw, people often want that, even if it's a bad idea.) 10:21:06 Yes I know you would have to be careful about such deadlocks and that kind of stuff 10:22:40 especially careful about deadlocks if you want the programs to be portable, because the default buffer size for the pipes depends heavily on the OS kernel you're using 10:23:27 b_jonas: libbfd is unable to read/write object files from/to streams (it needs a seekable file, which is reasonable, though it could work around that in memory), which makes it slightly more awkward to do things like a script to convert between assembly/hex given on the command line. 10:24:00 fizzie: ok 10:24:57 I use "echo ... | gcc -x c - -o - -S" reasonably often to check what sort of code gets generated by C constructs, which is nice. 10:25:15 It may also depend if a program is using nonblocking I/O and may be doing other things at the same time such as internet 10:25:30 maybe what we need is more easier and safer syntax in the shell to pass temporary files to programs such that the files are already unlinked before starting the programs and passed as /dev/fd stuff, to ensure they're always cleaned up. 10:26:10 But I think filters are the best way 10:26:12 bash has the starts for this: it has such redirection syntax now that doesn't require you to hardcode file descriptor numbers, instead bash choses them and puts them to a shell variable. 10:26:28 now we just need a syntax for such redirection that opens an unlinked temp file. 10:27:28 hmm.... 10:27:44 maybe we already have that? let me ask the bash folks. 10:33:37 Maybe what might help a bit is a syntax to start a process and pass it as a parameter to another program, so that such other program controls its file descriptors and so on. 10:34:50 (And, this process it start could actually be a pipeline instead; it shouldn't necessarily have to be a single program) 10:35:01 zzo38: I don't think you can do that. you have to start the process after you open its file descriptors to somewhere. you can make a program that does fancy setup stuff with file descriptors and then starts a program whose command line you pass to it. 10:39:00 -!- KingOfKarlsruhe has joined. 10:40:21 -!- tromp has quit (Ping timeout: 240 seconds). 10:44:51 I have no sound on this thing :( 10:48:09 unmute the volume control 10:48:23 fungot, any idea about zzo38's problem with the monitor image? 10:48:23 b_jonas: swiss federal institute of technology. the 10:48:29 um 10:49:05 fungot: Do you mean they're to blame? 10:49:05 fizzie: the behavior of your modifications of the utmost importance. implementations should be 10:49:30 ^style 10:49:30 Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc iwcs jargon* lovecraft nethack oots pa qwantz sms speeches ss wp youtube 10:49:32 Oh. 10:49:45 ^style europarl 10:49:45 Selected style: europarl (European Parliament speeches during approx. 1996-2006) 10:49:46 fungot: Do you have a statement at this juncture? 10:49:47 fizzie: mr president, mr president-in-office, commissioner, the euro is allowed to go on forever. we condemn attacks on jewish symbols and institutions in the member states in improving nuclear safety. 10:49:51 b_jonas: if it were that easy... 10:50:21 `addquote fizzie: mr president, mr president-in-office, commissioner, the euro is allowed to go on forever. we condemn attacks on jewish symbols and institutions in the member states in improving nuclear safety. 10:50:22 fizzie: madam president, under our proposals for reform, but it is not acceptable either to parliament or any parliament, even if the cost is very high and each project's timescale is measured over many years and decades. but in thinking about and working on this issue was raised by a number of other factors involved and we have to ensure that it is right to raise the issue of preventing and combating drug addiction. i should l 10:50:22 1217) fizzie: mr president, mr president-in-office, commissioner, the euro is allowed to go on forever. we condemn attacks on jewish symbols and institutions in the member states in improving nuclear safety. 10:51:07 fungot: I'm pretty sure it's right to raise the issue of preventing drug addiction. Go on. 10:51:08 fizzie: madam president, commissioner, over the past months, i have evidence that this is a very good example when it comes to the presence of certain ingredients for health reasons. 10:55:38 I wonder how much the formalities affect their productivity 10:55:50 (or possibly, their productivity is zero) 10:58:56 IIRC, there's about a 10% chance of fungot in europarl mode starting with something else than one of the customary formalities. 10:59:37 fungot, the winners of the ICFP 2014 contest will be announced tomorrow. are you excited? 10:59:38 b_jonas: mr president, i find it regrettable for them, are extremely harmful? i hope i have replied to all the members who have spoken before in this chamber and that therefore the policies that the commission does share the feelings of my group that we wish to call on all my fellow members that it is important for them to grant their approval or not, whether to work part-time or not, which is being managed so well by my collea 11:00:19 Heh. 11:00:55 ICFP 2014 tagline: "extremely harmful". 11:01:53 Their victories are regrettable. 11:14:33 Neat. One of the Racket folks is giving a talk there. 12:00:21 b_jonas: Since you were advising on monitor problems, on my netbook, since a while ago, every scanline wiggles left and right independently. 12:01:11 hey, I'm not a hardware guy really 12:01:29 um, no idea 12:02:10 Okay. 12:03:07 (I'm not even really a "programmer with a screwdriver". I only do hardware only so much as I'm required for myself so I can work with software, or quick troubleshooting for my mother or things like that.) 12:09:12 If telling off the lvds ribbon sternly doesn't work, you may need to make veiled threats against the panel. 12:10:02 fungot knows how to deal with panels. 12:10:03 Jafet: mr president, this time, aid to afghanistan, i find it extremely harmful should this not produce a single kilo of bananas, requiring a study of possible consequences for a person to have any impact on the banana market and is the first time, has been the subject of enlargement and the accession of a further court judgment will be able to move easily around the european elections, for the council and the commission share 12:12:19 -!- Lorenzo64 has joined. 12:41:42 -!- Lorenzo64 has quit (Ping timeout: 250 seconds). 13:12:46 -!- boily has joined. 13:20:55 -!- ski_ has changed nick to ski. 13:31:10 Hmm. 13:31:15 @help djinn 13:31:15 djinn . 13:31:15 Generates Haskell code from a type. 13:31:15 http://darcs.augustsson.net/Darcs/Djinn 13:31:24 That doesn’t lead anywhere. 13:33:14 @djinn a -> a 13:33:14 f a = a 13:33:50 @djinn (a -> b) -> a -> b 13:33:50 f a = a 13:34:01 @djinn (Functor f, Functor g) => (a -> b -> c) -> f a -> g b -> f (g c) 13:34:01 Error: Class not found: Functor 13:34:28 I don't know if it can work with "concrete" types 13:34:34 @djinn Int -> String 13:34:34 Error: Undefined type Int 13:34:54 No, but these are classes, and AIUI it can use Monad at least. 13:35:06 @djinn (Monad f, Monad g) => (a -> b -> c) -> f a -> g b -> f (g c) 13:35:06 -- f cannot be realized. 13:35:10 @djinn Integer -> String 13:35:10 Error: Undefined type Integer 13:35:15 oh 13:35:16 hm 13:35:25 @djinn Num a => a -> a -> a 13:35:25 Error: Class not found: Num 13:35:27 :( 13:35:36 @djinn Bool -> Bool 13:35:36 f a = a 13:36:09 @djinn f a -> a 13:36:10 -- f cannot be realized. 13:36:10 Thing is, I would have liked to read on the exact restrictions, but the help link goes nowhere. 13:36:22 @djinn Functior f => f a -> a 13:36:22 Error: Class not found: Functior 13:36:27 @djinn Functor f => f a -> a 13:36:27 Error: Class not found: Functor 13:36:33 Maybe is a Functor, right? 13:36:39 Yes. 13:36:45 -!- Patashu has quit (Ping timeout: 240 seconds). 13:36:48 @info Functor 13:36:48 Functor 13:37:19 hm 13:37:25 Functors don't have f a -> a 13:37:32 Yes. 13:37:52 @djinn Functor f => (a -> b) -> f a -> f b 13:37:52 Error: Class not found: Functor 13:38:06 Ah right. It doesn't know Functors at all 13:39:42 :t tabulate 13:39:44 Not in scope: ‘tabulate’ 13:40:08 @hoogle (Functor f, Functor g) => (a -> b -> c) -> f a -> g b -> f (g c) 13:40:10 Data.IntMap.Strict intersectionWith :: (a -> b -> c) -> IntMap a -> IntMap b -> IntMap c 13:40:11 Data.IntMap.Lazy intersectionWith :: (a -> b -> c) -> IntMap a -> IntMap b -> IntMap c 13:40:11 Data.Sequence zipWith :: (a -> b -> c) -> Seq a -> Seq b -> Seq c 13:40:21 … 13:40:35 @let tabulate op rs cs = fmap (\r => fmap (op r) cs) rs 13:40:35 Parse failed: Parse error: => 13:40:41 @let tabulate op rs cs = fmap (\r -> fmap (op r) cs) rs 13:40:43 Defined. 13:42:21 :t tabulate 13:42:22 (Functor f1, Functor f) => (a -> a1 -> b) -> f a -> f1 a1 -> f (f1 b) 13:43:02 -!- Melvar has quit (Quit: WeeChat 0.4.3). 13:43:20 -!- gyrusbam has joined. 13:43:20 -!- Melvar has joined. 13:45:46 @djinn (a -> b -> c) -> (a -> b) -> a -> c 13:45:46 f a b c = a c (b c) 13:46:46 -!- conehead has joined. 13:47:25 -!- tromp has joined. 13:48:39 -!- nisstyre has quit (*.net *.split). 13:48:44 @djinn (forall a b. (a -> b) -> f a -> f b) -> (forall a b. (a -> b) -> g a -> g b) -> (a -> b -> c) -> f a -> g b -> f (g c) 13:48:44 -- f cannot be realized. 13:49:22 @djinn (forall a b. (a -> b) -> f a -> f b) -> (forall a b. (a -> b) -> g a -> g b) -> (x -> y -> z) -> f x -> g y -> f (g z) 13:49:22 -- f cannot be realized. 13:50:03 -!- nisstyre has joined. 13:50:24 -!- gyrusbam has quit (Read error: Connection reset by peer). 13:53:48 -!- TieSoul-AWAAAY has changed nick to TieSoul. 14:12:52 -!- b_jonas has quit (Quit: Changing server). 14:18:45 -!- impomatic_ has quit (Ping timeout: 240 seconds). 14:58:08 @djinn (a -> b) -> (b -> c) -> (a -> c) -> Bool 14:58:09 f _ _ _ = False 14:58:16 hm 14:58:24 @djinn (a -> b) -> (b -> c) -> (a -> c) -> a -> b -> Bool 14:58:24 f _ _ _ _ _ = False 14:58:45 oh wait 14:58:56 @djinn (a -> c) -> (b -> c) -> a -> b -> Bool 14:58:56 f _ _ _ _ = False 14:59:07 how uncreative 14:59:38 @let apCmp f g a b = (f a) == (g b) 14:59:41 Defined. 14:59:44 @type apCmp 14:59:45 Eq a => (t -> a) -> (t1 -> a) -> t -> t1 -> Bool 14:59:48 @djinn (a -> c) -> (b -> c) -> (c -> c -> d) -> a -> b -> d 14:59:48 f a b c d e = c (a d) (b e) 15:00:02 Taneb: You highlighted me some hours ago? 15:00:26 Regarding ESOSC and the brainfuck survey 15:00:37 Ah. 15:00:51 I remember that I wrote a draft based on the survey results 15:01:49 http://eso.mroman.ch/ESOSC/s/2014-3/ESOSC-2014-D3-R1.pdf 15:02:02 I'm not sure what the state of that Draft was though 15:03:54 Could you close the poll and release the results? 15:05:07 Taneb: sure 15:05:17 Let me just use this "Forgot password" function :D 15:06:20 -!- b_jonas has joined. 15:08:07 Taneb: https://de.surveymonkey.com/results/SM-JZ78GR8L/ 15:09:01 oh 15:09:16 produce error on leave the tape to the left 15:09:25 has just barely won the race 15:09:30 a while ago it was clearly behind 15:10:39 I think perhaps we should make the standard say that should be implementation defined 15:11:12 well 15:11:14 yeah 15:11:26 otherwise we'd ignore the poll if we keep it "unbounded to the left" 15:11:56 We *could* recommend to make it unbounded to the left but it's implementation defined in the end 15:12:20 but 15:12:21 I mean 15:12:26 we'd ignore the poll by that too 15:12:34 since the poll says it should produce an error 15:13:01 so the first question is: How seriously do we take the results? 15:14:01 We asked for them, so I think we should take them fairly seriously 15:14:24 Although for question 1 I would have rather answered "the cells should be unbounded" 15:14:29 You could start a poll for that. 15:14:40 Jafet: psst 15:16:09 Well, then leaving the tape to the left is an error 15:16:13 that's what the poll said 15:16:17 with a 1% lead or so 15:18:03 Because it was so close, can we add a note that says something to the effect of "Implementations are welcome to expand the tape to the left also, but programs should not depend on this behaviour" 15:18:59 You can always add something like "but your interpreter might offer a language extension that can be enabled to support unbounded cells to the left" as well 15:19:51 generally I'd recommend not relying on unbounded memory to the left, yes 15:20:22 -!- AndoDaan has joined. 15:20:36 technically a standard compliant interpreter *has to* produce an error 15:20:41 at least in standard compliant mode 15:21:05 but you could add a switch --non-std or whatever 15:21:19 I'd still prefer "May produce an error or may extend to the left" 15:21:38 Me too 15:22:35 but just be aware, that we somehow interpret the close lead differently than a huge lead ;) 15:22:42 by doing that 15:22:57 They're one vote away from parity! 15:23:11 it's closed now ;) 15:23:14 but ok 15:23:22 I'll vote for "implementation defined" too 15:24:40 nortti? 15:24:45 When reaching an intersection, you should yield to the left. But it's ok to yield to the right, too. Some drivers may do that. 15:24:51 nortti is away 15:26:24 gotta catch train 15:26:27 until later 15:27:30 -!- boily has quit (Quit: VARNISHED CHICKEN). 15:29:00 -!- Ando has joined. 15:29:15 -!- AndoDaan has quit (Ping timeout: 255 seconds). 15:44:21 -!- Ando has quit. 15:50:14 -!- impomatic_ has changed nick to impomatic. 16:04:18 fungot: Will you make yourself standards-compliant now? 16:04:19 fizzie: we have voted ecu 200 billion per year, and is a credit to the substantive improvements which are being presented to this tribunal. i hope that in the neighbouring country of cambodia? this question is vital, and urgent, for the closing-down of sellafield? 16:04:47 Man, making a brainfuck interpreter is more expensive than I thought. 16:05:53 I used to have a teddy bear called "Sellafield Bear" 16:05:58 Because he glowed in the dark 16:06:13 -!- Phantom_Hoover has joined. 16:09:33 -!- Hjulle has quit (Ping timeout: 240 seconds). 16:11:32 how do you say: pack an umbrella (eg. for the vacation)? {se bevri punji lo santa}? 16:11:58 or, um, {se bevri setca lo santa}? 16:12:04 I feel there must be some better way to say this 16:12:24 What language is this? 16:12:31 ah, sorry, wrong channel then 16:12:38 :-( 16:12:48 (it's lojban, and supposed to go to #lojban ) 16:18:10 * Melvar giggles. 16:19:07 I thought for a moment this was #jbopre and Tene had sarcastically commented. 16:32:06 -!- TieSoul has left. 16:43:07 Taneb: I'd say left on cell 0 is an error 16:44:32 -!- boily has joined. 16:49:37 -!- DootBot has quit (Remote host closed the connection). 16:52:30 Taneb: The problem with implementation defined is 16:52:41 that you can't say no more "it will run in any ESOSC-BF compliant interpreter" 16:53:20 I just thought about that in the train 16:53:33 so I've changed my opinion to "it has two be one of those two but not both" 16:53:37 either unbounded or error 16:53:40 but not both 16:54:07 What again were the reasons for unbounded/error? 16:54:14 unbounded because of symmetry to >? 16:54:48 error because most BF implementations don't support unbouned-to-left 16:55:10 I think a great amount of implementations really don't support it, yes 16:55:26 although some implementations use an array of size N 16:55:35 and have the pointer initialized to N/2 16:55:49 but then the array is of fixed size 16:55:55 so neither unbounded to the left nor right 16:56:33 also moving to the left requires a realloc 16:56:47 with an extra copy 16:57:00 (as realloc usually appends more space to the right, and not to the left) 16:58:03 regarding that error looks really like a good option 16:58:14 and it's still the leading option in the poll 16:58:36 also "unbounded to the left but not recommended to rely on" is well.... 16:58:41 might as well say it's an error 16:58:49 rather than supporting it but not recommending it 16:59:00 maybe you could allocate to the right but use even cells as greater than zero and odd as less than zero, or something 16:59:03 fuck ur cache 16:59:07 Implementors are always free to add a command line switch to switch to "unbounded to the left" 16:59:19 Bike: some implementations do that 16:59:23 (mine does for example) 17:00:39 I'm in favor of error 17:01:56 -!- MoALTz has joined. 17:11:40 -!- boily has quit (Quit: WeeChat 0.4.2). 17:15:34 https://ghc.haskell.org/trac/ghc/ticket/9439 17:17:00 lol. 17:22:03 The Factor subreddit is called "Factor wanking" 17:22:25 I do not know why... and I assume nor does the person who asked about it 3 years ago and received 0 responses 17:24:46 "Macros akin to those in Common Lisp, but hygienic like Scheme, because if you don’t have variables, you can’t capture them." 17:25:06 Hmm.... but there's a lexical variable macro... how might other 'macros' interfere with that? 17:51:48 How strict are you with respect to the functional style in your own programs? 17:51:58 J_Arcane: lazy 17:52:20 :D 17:53:47 i only write in snobol, so that would be impractical 17:54:39 J_Arcane: I do not quite understand the question. 17:54:57 Well, when working with Lisps or other functional programming languages. 17:55:22 I don't know; I have not written a program in Lisp. 17:55:56 Like, I know we have some Haskellers here, and that always seems to me like it more or less doesn't work any other way, but Lisp is more flexible, and it seems like there's an attitude in the community towards nevertheless programming in the functional style as much as possible. 17:56:02 J_Arcane: I always try to adhere to functional style, especially when coding in an imperative language 17:56:36 Actually I have thought that combining Haskell and Lisp might be good idea 17:56:51 i only write lisp as our forfathers intended: with prog 17:58:38 zzo38: Well, there have been a number of efforts to introduce monads into various lisps. 18:00:02 I confess to having no familiarity with them at all yet, so I wouldn't know what to do with them. 18:00:30 I am not talking about monads 18:00:44 I mean Haskell with Lisp-like macros 18:00:46 monads are just a particular API, if you want "haskell" you're gonna want more like, recursive data whatever 18:01:01 Ahh. 18:02:15 Sum types. Sum types are good. 18:03:46 Monads are just a particular type class; or, in object oriented programming, is like an interface. But there are also comonads and stuff like that too. 18:06:34 But anyways I meant macros 18:09:42 -!- Imaginer1 has joined. 18:09:47 Hey guys. 18:09:58 Anyone here versed a bit in Python? I need a smidge of help. 18:10:26 I know a bit of Python. 18:10:41 Well, I'm not exactly dealing with a low-level problem. 18:10:55 I'm trying to allow Python to accept inputs from command-line, would that be a sys module? 18:10:56 and which one? 18:11:18 sys.argv 18:11:30 Yeah, but 18:11:31 not that 18:11:44 It's interpreting code in another language 18:11:51 once it's interpreted it might prompt the user for input 18:12:00 sys.stdin 18:12:08 thanks, I'll look up the syntax... 18:17:17 This is... horrific 18:17:18 agahds. 18:23:48 -!- Lorenzo64 has joined. 18:29:15 -!- Vorpal has joined. 18:31:52 < nortti> error because most BF implementations don't support unbouned-to-left – Why is that? 18:32:33 why most don't support it? 18:32:56 probably since it would, in many cases, be harder to implement 18:43:23 Wahoo! I did it 18:44:35 Melvar: It's harder to implement, I'd say 18:45:36 @aks Taneb Can you live with error on leaving left? 18:45:36 Maybe you meant: ask arr 18:45:41 no 18:45:48 @ask Taneb Can you live with error on leaving left? 18:45:48 Consider it noted. 18:45:54 I didn't mean to aks arr 18:45:57 whoever arr is 18:46:01 @arr 18:46:02 Keelhaul the swabs! 18:46:06 data Tape a = Tape a [a] a [a] 18:46:06 @arr foo 18:46:07 Aye 18:46:12 @arr bar? 18:46:12 Smartly me lass 18:46:18 oh 18:46:22 it's pirate talk. 18:46:35 Why does Tape a have two heads? 18:46:43 Tape [a] a [a]? 18:46:51 [wiki] [[Cork]] http://esolangs.org/w/index.php?diff=40381&oldid=40329 * 173.17.62.235 * (+102) 18:46:56 wahoo 18:46:57 That's not what Melvar emitted 18:47:04 Yeah 18:47:09 I know 18:47:35 -!- Imaginer1 has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 18:48:29 Sgeo_: I decided I wanted to be able to dump the touched portion of the tape, so I made only the touched portion exist. The first a is the value of untouched cells. 18:51:04 Ah 18:52:20 left (Tape z [] m rs) = Tape z [] z (m:rs); left (Tape z (l:ls) m rs) = Tape z ls l (m:rs) 18:53:36 You're doing it wrong 18:53:52 Apparently that file is from 2011. 18:53:55 If it aint Zippers, Functors, Monads you ain't doi'n it wrong. 18:54:02 damn 18:54:08 you ain't doin' it right 18:54:11 Which is newer than I thought. 18:54:23 It's got to have at least Zippers 18:54:41 and you should work some lenses in there too 18:55:19 I’m pretty sure I had never heard of lenses when I wrote that file. 18:55:25 :) 18:55:34 I mean, in programming context. 18:55:39 Rule of thumb is that if I can understand it you're not using enough fancy stuff 18:56:22 branch :: (Boolesy a) => BF a -> BF a – And Boolesy, what silliness that was. 18:57:58 Apparently I did know what a monad transformer is: type BF a = StateT (Tape a) IO () 18:58:05 left <$> inc `app` $>> right `app` dec 18:58:09 ;) 18:58:36 @type (<$>) 18:58:37 Functor f => (a -> b) -> f a -> f b 18:58:50 that's just fmap? 18:58:55 Yes. 18:59:00 hu 18:59:10 why did I think <$> is some complicated cattheory stuff 18:59:20 > (+1) <$> Just 5 18:59:21 Just 6 19:00:10 In Haskell, anyway; one of the traps of Idris is that its (<$>) is Haskell’s (<*>) instead. 19:00:22 ( :t (<$>) 19:00:22 Prelude.Applicative.(<$>) : Applicative f => f (a -> b) -> f a -> f b 19:00:22 Effects.(<$>) : Eff (a -> b) xs (\v => xs) -> Eff a xs (\v7 => xs) -> Eff b xs (\v8 => xs) 19:00:22 BotPrelude.LiftEq.(<$>) : (f = g) -> (x = y) -> f x = g y 19:00:29 @type (<*>) 19:00:31 Applicative f => f (a -> b) -> f a -> f b 19:00:37 Or, well, one of them. 19:00:43 hm 19:01:00 Just (\x -> x + 1) <*> Just 6 19:01:06 > Just (\x -> x + 1) <*> Just 6 19:01:08 Just 7 19:01:11 sweet 19:01:47 > [(+1), (+6), (*3)] <*> [8, 4, 8, 33] 19:01:48 can't find file: L.hs 19:01:52 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 19:01:55 alas 19:02:08 i guess [] isn't an applicative probably. 19:02:23 > [(+1), (+6), (*3)] <*> [8, 4, 8, 33] 19:02:24 [9,5,9,34,14,10,14,39,24,12,24,99] 19:02:46 lambdabot what'd i ever do to you 19:02:51 -!- doesthiswork has joined. 19:04:09 ( [(+1), (+6), (*3)] <$> [8, 4, 8, 33] 19:04:10 (input):1:20:When elaborating an application of function BotPrelude.LiftEq.<$>: 19:04:10 Can't unify 19:04:10 Vect (S n) a 19:04:10 with 19:04:10 f = g↵… 19:04:43 Aha. I was wondering what the failure mode would be, and it did two failure modes at once. 19:04:49 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…). 19:05:00 ( with List [(+1), (+6), (*3)] <$> [8, 4, 8, 33] 19:05:00 [9, 5, 9, 34, 14, 10, 14, 39, 24, 12, 24, 99] : List Integer 19:06:19 ( with Vect [(+1), (+6), (*3)] <$> [8, 4, 8] 19:06:20 [9, 10, 24] : Vect 3 Integer 19:07:51 ha. so what's with do 19:08:52 I wonder, is there a name for Monads where for all mx and f, do { x <- mx; y <- mx; f x y } == do { x <- mx; f x x } ? 19:09:16 Bike: ? 19:09:27 with List, with Vect, wassat 19:10:26 “with NS expr” prefers names from namespace NS when elaborating expr, if ambiguity arises. 19:12:34 -!- AnotherTest has quit (Ping timeout: 250 seconds). 19:29:02 -!- Imaginer1 has joined. 19:29:09 Hey guys 19:29:20 fungot, nice to see ya 19:29:20 Imaginer1: i can confirm that technical measures cannot be allowed to continue, you also welcome the european commission’s argument, as regards the coordination of measures by the international criminal court is going to ask just one question: in this third series of speeches, even though not everything is, apparently, it is unacceptable, since a lot of difficulties with this. 19:37:36 -!- ais523 has joined. 19:42:19 NOOOOO 19:42:26 I JUST WROTE A AWESOME PROGRAM IN THU 19:42:29 AGHB 19:42:43 AND NOW THE THING FROZE AND I CAN'T SAVE IT OR EVEN COPY IT GAHDSIHG 19:43:06 rip 19:43:52 it was a tag system emulator 19:44:30 for the collatz sequence 19:47:20 argh 19:47:26 what froze? 19:49:35 http://lolwh.at/~amb/thue.html 19:49:38 it freezes with infinite loops 19:49:58 I would add a counter to the javascript to let it prompt you every few hundred loops if you want to continue 19:53:02 awesome 19:53:05 got it working 19:57:58 Or don't use a Javascript loop at all? 20:00:35 -!- Imaginer1 has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 20:04:41 -!- drdanmaku has joined. 20:05:49 -!- Phantom_Hoover has joined. 20:14:18 -!- Imaginer1 has joined. 20:14:21 Well, you kinda have to if you're using javascript to run Thue 20:14:51 i mean, the idea is 'find replacement -> substitute -> repeat while substitutions exist' 20:15:34 ^show 20:15:35 echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell eval elikoski list ping def a thanks tmp2 backwards output 20:16:35 Underload has no input support and that is soul-crushing 20:18:46 Imaginer1: sorry 20:18:58 I'm planning input support with Underlambda 20:19:01 but it's actually really hard to do 20:19:03 Also, I have trouble understanding why -any- finite memory machine can be -entirely- turing complete 20:19:13 (I understand, ais ^^) 20:19:25 Imaginer1: it can't be without some sort of access to an external memory store 20:19:37 knew it 20:26:19 -!- Hjulle has joined. 20:33:24 Is Unison considered good for file sync? 20:37:13 The Thue thing should probably just run a few hundred iterations and then reschedule itself using setTimeout; that way you don't need to prompt, yet you don't make an unresponsive browser (and can provide a "stop working" button somewhere on the page). 20:37:18 (Web Workers would be the fancy HTML5 solution to this.) 20:40:59 -!- barrucadu has joined. 20:45:19 Few hundred, instead of every? 20:45:48 -!- Imaginer1 has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 20:48:29 Well, I'm no web developer, but my gut feeling is that there would be overly much overhead with an every-iteration setTimeout. 20:48:47 Depending, of course, how costly each iteration is. 20:52:27 I was remembering RequestAnimationFrame or whatever it’s called but that probably doesn’t work if you’re not animating something. 20:55:08 There seems to be a fixed 4ms lower bound for setTimeout(..., 0), so that'd give a hard upper limit of 250 replacements/second (if you were to call it on every round), which doesn't sound like very much. 20:55:40 Anyway, Web Workers lets you spawn real OS-level background threads so it's clearly superior, if more convoluted. 20:55:46 Melvar: RequestAnimationFrame is basically the web equivalent of vsync 20:55:56 except it isn't literally vsync IIRC, just vaguely similar 20:57:02 Apparently there's also a very non-standard interface called (silly name) setImmediate: https://developer.mozilla.org/en-US/docs/Web/API/Window.setImmediate 21:00:12 -!- rollertrump has joined. 21:03:39 -!- Patashu has joined. 21:08:26 ais523: To my understanding, it’s about the browser saying when and how often rendering should happen, such as not at all if none of the window or tab is visible. 21:25:12 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds). 21:26:27 -!- Patashu has quit (Ping timeout: 245 seconds). 21:32:22 -!- qlkzy has quit (Ping timeout: 240 seconds). 21:32:28 -!- impomatic has quit (Read error: Connection timed out). 21:35:51 -!- oerjan has joined. 21:36:03 -!- Phantom_Hoover has joined. 21:36:33 -!- callforjudgement has joined. 21:38:42 -!- ais523 has quit (Ping timeout: 255 seconds). 21:38:48 -!- callforjudgement has changed nick to ais523. 21:41:59 -!- qlkzy has joined. 21:58:05 -!- Imaginer1 has joined. 21:58:08 I need help. 21:58:12 http://pastebin.com/5UrJNPcP 21:58:15 What's wrong with this code/ 21:58:42 it stops after what should be the second loo and freezes up 22:01:02 elif cmd in responses.keys(): 22:01:03 responses[prevout].append(cmd) 22:01:26 You test for 'cmd', yet try to look up 'prevout'. 22:01:37 aaaah 22:01:45 thanks ^^ i knew it would be something dumb 22:01:54 (Same for the other branch.) 22:06:25 -!- vravn has joined. 22:07:17 Incidentally, foo.setdefault('key', []).append('x') may come in handy: http://sprunge.us/LZHd 22:07:20 Might be slightly suboptimal w.r.t. creating and discarding the [] every time. 22:07:40 thanks! 22:12:48 Awesome. 22:12:57 I just wanted to demonstrate how I was told Cleverbot worked to a friend. 22:13:06 But actually, I think I might mess around with this :D 22:13:25 But for it to be useful I'll add a $(words) that lets you think 'for the computer' 22:20:31 -!- Imaginer1 has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 22:22:48 $words and $worcery 22:41:43 -!- Hjulle has quit (Quit: Konversation terminated!). 23:45:24 -!- doesthiswork has quit (Ping timeout: 260 seconds). 23:45:49 -!- ais523 has quit. 23:52:12 It seems weird that to and from aren't opposites 23:52:32 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 23:56:35 heh 23:57:44 with pure profunctor lenses you can make a much better from 23:58:31 I know how to write from I think, but what's the name of that profunctor? 23:58:40 Unless you mean make from and to actual opposites 23:59:16 That's boring. The inverse of to is view.