00:02:11 How are you supposed to tell the files apart? <-- well-known bug? maybe one could make a \NUL separating version? 00:02:12 `` cd tmp/wdiff/wdiff-1.2.2/; ./configure 00:02:44 No output. 00:02:54 `` cd tmp/wdiff/wdiff-1.2.2/; ls Make* 00:02:55 Makefile.am \ Makefile.in 00:03:07 `1 cd tmp/wdiff/wdiff-1.2.2/; ls 00:03:08 1/1:ABOUT-NLS \ aclocal.m4 \ AUTHORS \ BACKLOG \ build-aux \ ChangeLog \ confdefs.h \ config.h.in \ config.log \ configure \ configure.ac \ COPYING \ doc \ GNUmakefile \ INSTALL \ lib \ m4 \ maint.mk \ Makefile.am \ Makefile.in \ man \ NEWS \ po \ README \ src \ tests \ THANKS \ TODO 00:03:14 `1 cd tmp/wdiff/wdiff-1.2.2/; make 00:03:16 1/1:make: -n: Command not found \ There seems to be no Makefile in this directory. \ You must run ./configure before running 'make'. \ make: *** [abort-due-to-no-makefile] Error 1 00:03:23 -!- hppavilion[1] has joined. 00:03:39 `1 cd tmp/wdiff/wdiff-1.2.2/; ls src 00:03:40 1/1:Makefile.am \ Makefile.in \ mdiff.c \ pipes.c \ unify.c \ wdiff2.c \ wdiff.c \ wdiff.h 00:04:03 `1 cd tmp/wdiff/wdiff-1.2.2/; gcc -o test src/*.c -I src/ 00:04:07 1/3:In file included from src/mdiff.c:20:0: \ src/wdiff.h:19:20: fatal error: config.h: No such file or directory \ compilation terminated. \ In file included from src/pipes.c:20:0: \ src/wdiff.h:19:20: fatal error: config.h: No such file or directory \ compilation terminated. \ In file included from src/unify.c:23:0: \ src/wdiff.h: 00:04:16 Sounds like a mess. 00:04:23 `1 cd tmp/wdiff/wdiff-1.2.2/; ./configure 00:04:36 If we define 'lying' as 'saying something that you do not believe to be true', then it seems 'I\'m lying' ceases to be a paradox 00:04:56 "paradox" is kind of meaningless, so it doesn't. 00:05:01 No output. 00:05:11 shachaf: But if paradox is meaningless then... oh, wait, that's logically consistent 00:05:50 i answer hard acrostics, i've a pretty taste for paradox 00:06:20 (That particular definition is important- you have to not believe it to be true (not the same as- but containing if you're consistent- believing it to be false), that doesn't mean your belief has to be correct) 00:07:21 There's no excuse for a program this simple not being buildable within the constraints. 00:08:58 (Quick definition: ZF is Zermelo-Fraenkel explicitly excluding the Axiom of Choice, ZFC is including it, and ZF* covers both ZF and ZFC, for when the Axiom of Choice isn't needed here) 00:15:12 Does the part of ZF* that bans a universal set (a set containing itself) only ban sets directly containing themselves (that is, S ∈ S), or does it ban it recursively (which is defined as v ∈∈ S iff v ∈ S ∨ ∃s:[s ∈ S](v ∈∈ S) )? 00:15:19 (I hope that that's legible) 00:15:52 -!- DHeadshot has quit (Ping timeout: 260 seconds). 00:16:27 hppavilion[1]: there is no explicit ban. it simply does not give a means of constructing such a set. 00:16:34 Ah 00:16:39 That's even more evil xD 00:17:09 I want to be able to quantify over all sets (or a subset of all sets satisfying a property), and Russell ruined it for me :,( 00:17:09 ZF doesn't exclude the axiom of choice. 00:17:12 however, the axioms of regularity might be considered a ban, but it's optional. 00:17:33 *axiom 00:17:59 (it says, in one of its equivalent formulations, that there is no infinitely descending chain of sets.) 00:18:01 shachaf: I seem to remember that the C in ZFC means "ZF with the Axiom of Choice", which presumably means ZF is just ZF (and doesn't have the axiom of choice) 00:18:08 Yes. 00:18:15 It doesn't have its negation either. 00:18:20 Well yeah 00:18:31 Any theorem of ZF is a theorem of ZFC. 00:18:38 shachaf: Oh, whoops, I meant "exclude" as in "doesn't include" 00:18:39 -!- Froox has joined. 00:18:50 OK, but the thing you called ZF* is just ZF. 00:19:13 shachaf: OK, then how do I say "ZF, explicitly without taking the Axiom of Choice" 00:19:23 hppavilion[1]: also i cannot read your fancy math symbols in this putty terminal. 00:19:34 oerjan: I felt that may be a problem 00:19:37 What's the difference? 00:20:14 shachaf: Formally, nothing. The distinction is just so you can say "this is true without the axiom of choice" 00:20:19 I suppose it isn't necessary 00:20:26 You say it's true in ZF. 00:20:35 But then again, you don't need a symbol for and and or; you can do it all with nor 00:20:36 Or provable or something. 00:20:40 But we have that symbol anyway 00:20:52 What? 00:21:14 shachaf: Strictly speaking, you don't need a symbol that means AND or a symbol that means OR in logic 00:21:23 shachaf: We could do with nothing but a symbol for NOR 00:21:30 -!- Froox has quit (Client Quit). 00:21:35 But we have those symbols anyway because it makes everything easier to understand 00:21:37 What does that have to do with anything? 00:21:54 shachaf: Well I figured that was a good reason to have ZF*, but I concede that you have a good poitn 00:21:55 *point 00:21:56 -!- Frooxius has quit (Ping timeout: 260 seconds). 00:22:07 I don't see any distinction here. 00:22:21 shachaf: I'm saying that you win. 00:22:49 Because you're right 00:23:13 -!- carado has quit (Ping timeout: 260 seconds). 00:23:35 didn't oerjan invent Tanebventions? <-- pretty sure i didn't. 00:24:16 `` dowg tanebvention | tac 00:24:18 2013-01-31 mv wisdom/tanebventions wisdom/tanebvention \ 2013-02-13 revert 3 \ 2013-02-13 revert 87c64ef250a0 \ 2013-08-27 mv wisdom/tanebvention{s,} \ 2013-08-28 cp wisdom/tanebventions wisdom/tanebvention \ 2013-11-30 sed -i \'s/torus,/torus, Stephen Wolfram,/\' wisdom/tanebvention \ 2013 00:24:25 `` dowg tanebventions | tac 00:24:27 2013-01-31 learn Tanebventions include D-modules and automatic squirrel feeders \ 2013-01-31 mv wisdom/tanebventions wisdom/tanebvention \ 2013-08-27 learn Tanebventions include D-modules, automatic squirrel feeders, and Go \ 2013-08-27 mv wisdom/tanebvention{s,} \ 2013-08-28 learn Tanebventions includ 00:25:00 Taneb: i get a sense you're a bit slow on the uptake 00:25:38 -!- Frooxius has joined. 00:26:03 `` dowg tanebventions | tac | tail -4 00:26:05 2013-08-27 learn Tanebventions include D-modules, automatic squirrel feeders, and Go \ 2013-08-27 mv wisdom/tanebvention{s,} \ 2013-08-28 learn Tanebventions include D-modules, automatic squirrel feeders, the torus, and Go. \ 2013-08-28 rm wisdom/tanebventions 00:26:30 `1 dowg tanebventions | tac 00:26:32 1/2:2013-01-31 learn Tanebventions include D-modules and automatic squirrel feeders \ 2013-01-31 mv wisdom/tanebventions wisdom/tanebvention \ 2013-08-27 learn Tanebventions include D-modules, automatic squirrel feeders, and Go \ 2013-08-27 mv wisdom/tanebvention{s,} \ 2013-08-28 learn 00:26:38 `spam 00:26:43 2/2:Tanebventions include D-modules, automatic squirrel feeders, the torus, and Go. \ 2013-08-28 rm wisdom/tanebventions 00:26:49 oh. 00:33:00 shachaf: Perhaps we could go with "every open set contains an open set homeomorphic to R^n" <-- seems to me that you want a covering by them. 00:33:31 `` dowg d-module | tac 00:33:32 2013-01-24 fmt wisdom/d-modules >wisdom/d-module; rm wisdom/d-modules \ 2013-01-24 sed -i -e \'1N\' -e \'s/\\n//\' wisdom/d-module \ 2013-02-13 revert 3 \ 2013-02-13 revert 87c64ef250a0 \ 2013-04-14 >>wisdom/d-module echo \' Possibly they are also a torus.\' \ 2013-04-14 revert 00:33:39 `` dowg d-modules | tac 00:33:41 2013-01-24 learn D-modules are just modules over the ring of differential operators. \ 2013-01-24 echo >>wisdom/d-modules " Taneb invented them." \ 2013-01-24 fmt wisdom/d-modules >wisdom/d-module; rm wisdom/d-modules \ 2013-01-24 learn D-Modules are simply modules in the ring of differential 00:33:56 Aha, Phantom_Hoover invented Tanebventions. 00:34:25 AHA 00:35:55 `? tanebvention 00:35:56 Tanebventions include automatic squirrel feeders, necessity, Go, Windows 98, submarine jousting, Fueue, the universe, the triverse, metar, weetoflakes, Tanebventions, persistence, the BBC, progress, and this sentence. See also tanebventions: math. He never invents anything involving sex. 00:36:04 -!- centrinia has joined. 00:36:25 `slwd tanebventions//s#Tanebventions, ## 00:36:26 Rosebud! 00:36:40 `slwd tanebvention//s#Tanebventions, ## 00:36:42 wisdom/tanebvention//Tanebventions include automatic squirrel feeders, necessity, Go, Windows 98, submarine jousting, Fueue, the universe, the triverse, metar, weetoflakes, persistence, the BBC, progress, and this sentence. See also tanebventions: math. He never invents anything involving sex. 00:37:06 Taneb is trying to take credit for something he didn't invent. 00:37:19 more like Taneblagiarism 00:38:02 `slwd tanebventions//s#and#the Oxford comma, and# 00:38:02 Rosebud! 00:38:14 ugh 00:38:24 I keep rememering that it's not the one I expect it to be. 00:38:26 `slwd tanebvention//s#and#the Oxford comma, and# 00:38:28 wisdom/tanebvention//Tanebventions include automatic squirrel feeders, necessity, Go, Windows 98, submarine jousting, Fueue, the universe, the triverse, metar, weetoflakes, persistence, the BBC, progress, the Oxford comma, and this sentence. See also tanebventions: math. He never invents anything involving sex. 00:38:46 `? this sentence 00:38:48 This sentence was invented by shachaf. Taneb invented it. 00:39:20 `slwd this sentence//s#[^\.]+#This sentence is just# 00:39:21 wisdom/this sentence//This sentence was invented by shachaf. Taneb invented it. 00:39:30 `slwd this sentence//s#[^\.]\+#This sentence is just# 00:39:33 wisdom/this sentence//This sentence is just. Taneb invented it. 00:39:50 `` cat bin/slwd 00:39:51 sled "wisdom/$1" 00:41:01 `sled bin/slwd//s/$/ | sed 's/^Rosebud!$/Roswbud!/' 00:41:02 sed: -e expression #1, char 15: unknown option to `s' 00:41:26 `sled bin/slwd//s,$, | sed 's/^Rosebud!$/Roswbud!/', 00:41:28 bin/slwd//sled "wisdom/$1" | sed 's/^Rosebud!$/Roswbud!/' 00:42:24 `slwd testations//hi 00:42:26 Roswbud! 00:43:14 hm... 00:43:32 that's not foolproof is it. 00:44:08 `sled bin/slwd//s,s/,1s/, 00:44:10 bin/slwd//sled "wisdom/$1" | sed '1s/^Rosebud!$/Roswbud!/' 00:46:30 `` echo 'test' > "$(echo 'Rosebud!')" 00:46:32 No output. 00:46:43 `ls 00:46:45 bin \ canary \ cdescs \ emoticons \ esobible \ etc \ evil \ factor \ good \ hw \ ibin \ interps \ karma \ le \ lib \ misle \ out \ paste \ ply-3.8 \ quines \ quotes \ Rosebud! \ share \ src \ test \ tmflry \ tmp \ wdiff-latest.tar.gz \ wisdom \ wisdom.pdf 00:47:09 `cat bin/sled 00:47:10 `` ls Rose* 00:47:11 ​[[ "$1" == ?*//* ]] || { echo 'usage: sled file//script'; exit 1; }; key="${1%%//*}"; value="${1#*//}"; [[ -f "$key" ]] || { echo 'Rosebud!'; exit 1; }; sed -i "$value" "$key" && { echo -n "$key//"; cat "$key"; } 00:47:12 Rosebud! 00:47:19 `` ls Rose*;echo hi 00:47:20 Rosebud! \ hi 00:47:26 oerjan: Maybe use exit status instead? 00:47:36 oh it does have that 00:47:42 -!- Zarutian has quit (Quit: Zarutian). 00:48:09 except how do you do that and handle output 00:48:33 the perils of confusing user interfaces and apis 00:48:35 `` rm Ros* 00:48:38 No output. 00:49:03 well it'd require someone making a very special file, anyway. 00:49:08 so i guess it's fine enough. 00:49:14 (and outside wisdom/) 00:49:22 Make it even more special by requiring ^Rosebud!$ 00:49:51 `slwd ../test//1ahi 00:49:53 wisdom/../test//huh \ hi 00:49:57 oh 00:50:16 it doesn't even work then. i think it's good enough. 00:50:47 the output will always start with wisdom/ 00:51:43 tmux locked up in that bad mode again. and killing the oldest one fixed it, again. 00:52:11 it seems to happen after network errors. 00:54:22 (or potentially, with usage, which works just as well.) 00:56:30 <\oren\> Looks like my suggestion has gotten into some of the more prominent unicode people's heads. horray 00:57:31 hyrra 00:58:28 Not that surprised. Unicode seems like it'll add anything that's faintly reasonable to encode. 01:00:13 `? censorship 01:00:15 censorship? ¯\(°​_o)/¯ 01:01:14 `le/rn censorship/The worst part of censorship is that it kills humor, thus preventing us from ironically redacting this wisdum. 01:01:17 Learned «censorship» 01:01:33 What's the word for a single entry into the wisdom database? 01:01:41 I used 'wisdum', but I don't know what's best 01:01:43 \oren\: Can you please get play/pause/fast forward/rewind/etc. into the Unicode people's heads? 01:02:05 Best would be to delete that wisdom entry. 01:02:17 shachaf: I seem to remember Unicode already having it... 01:02:26 <\oren\> shachaf: it has them 01:02:28 `rm wisdom/censorship 01:02:31 Since when? 01:02:31 No output. 01:02:36 `? censorship 01:02:37 censorship? ¯\(°​_o)/¯ 01:02:41 `? test 01:02:42 test failed. HackEgo-JUnit is not available. 01:04:07 <\oren\> i dunno. but my font has them  01:04:15 \oren\: And yet they don't have question comma or any of Brah's stuff... 01:04:39 *Brahm 01:04:50 What code points? 01:05:08 Wait, no, I mean Hervé Bazin 01:05:42 <\oren\> the characters for some reason can't be pasted into this terminal?A??A 01:06:20 <\oren\> or perhaps can't be copied? 01:06:39 <\oren\> ⍿ 01:06:40 <\oren\> ⌜⌝⌞⌟ 01:06:43 <\oren\> WTF 01:07:16 <\oren\> `u8tbl 0x23E4 0x23E8 01:07:18 ​⏤⏥⏦⏧⏨ 01:07:20 Ψ̣ is a decent approximation of his sarcasm mark 01:07:52 Unicode Character 'STRAIGHTNESS' (U+23E4) 01:08:14 ⏤(Alan Turing) = 0 01:08:34 <\oren\> `u8tbl 0x23F4 0x23F8 01:08:35 ​⏴⏵⏶⏷⏸ 01:08:39 <\oren\> WAT 01:08:55 \oren\: wat wat? 01:09:02 That is not a play or pause button. 01:09:12 I see play and pause 01:09:13 It's a triangle and a double vertical bar. 01:09:24 <\oren\> something is terribly worng 01:09:51 <\oren\> at least on my end, apparently hppavilion[1] it is working 01:10:18 <\oren\> `u8tbl 0x23F4 0x23FA 01:10:18 ​⏴⏵⏶⏷⏸⏹⏺ 01:10:31 Never mind fast forward and rewind and everything. 01:10:50 <\oren\> shachaf: they should be showing up 01:11:13 <\oren\> shachaf: anyway, they are here http://unicode-table.com/en/blocks/miscellaneous-technical/ 01:11:21 <\oren\> at the end of that block 01:11:50 whoa, so they are ish 01:12:03 Fast forward: ⏵⏵; rewind: ⏴⏴ 01:12:04 Not sure why I didn't find them when I was doing http://slbkbs.org/jsgif/ 01:12:15 Or maybe I did find them but they didn't render properly. 01:13:05 <\oren\> yeah, and I have no idea why they, of all the characters, show up online but not in my terminal 01:17:48 <\oren\> I think tmux may be screwing with them 01:18:13 <\oren\> I shall be very pissed if that is so 01:18:43 my tmux sees them fine 01:19:12 <\oren\> well, your tmux might not be the newest version 01:19:32 2.1 01:19:51 i wouldn't know 01:20:01 <\oren\> that's the newest 01:20:15 <\oren\> I shall investigate 01:20:22 it has at least one other annoying bug, as mentioned above 01:24:41 <\oren\> Ok, never mind, it is ultimately caused by whatever morons wrote the wchar.h on my system 01:26:14 moronis mutandis 01:26:32 -!- otherbot has quit (Remote host closed the connection). 01:30:46 Which libc you using? 01:33:06 <\oren\> not sure 01:33:15 <\oren\> I think it must be glibc 01:33:40 shachaf: jsgif doesn't work on the example given. HTH. 01:38:13 <\oren\> glibc 2.19 it seems 01:38:49 <\oren\> we are 5 versions behind therefore 01:39:04 <\oren\> `` ldd -version 01:39:04 ldd: unrecognized option `-version' \ Try `ldd --help' for more information. 01:39:09 <\oren\> `` ldd --version 01:39:10 ldd (Debian EGLIBC 2.13-38) 2.13 \ Copyright (C) 2011 Free Software Foundation, Inc. \ This is free software; see the source for copying conditions. There is NO \ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. \ Written by Roland McGrath and Ulrich Drepper. 01:39:24 <\oren\> but hackego is even further behind 01:40:09 <\oren\> I think I'll just modify tmux to use a custom wcswidth function 01:40:38 Aaaah, yes, you're using a version of glibc with an old wcwidth table. 01:40:38 <\oren\> instead of figuring out how to install a newer libc on my computer 01:41:20 <\oren\> which, for some reason, assumes that invalid characters have zero width 01:41:29 <\oren\> or something? 01:41:38 Yup, it does exactly that. 01:41:44 <\oren\> FUUUUUUUUUUU 01:42:11 <\oren\> yah, I'm modifying it to have block-based assumptions 01:42:48 2.22 up do just that. 01:43:00 <\oren\> e.g. it's probable that any character added to the supplementary ideographic plane is wide 01:43:45 <\oren\> or maybe i'll grab the new libc's wcwidth 01:43:54 <\oren\> and jam it in there 01:44:40 If you download http://ftp.gnu.org/gnu/glibc/glibc-2.22.tar.xz , gzip localedata/charmaps/UTF-8 into /usr/share/i18n/charmaps/UTF-8.gz , and copy localedata/locales/i18n to /usr/share/i18n/locales/i18n , and rerun locale-gen, you'll have it updated. 01:45:24 (this is because glibc uses a stupidly generic locale system and doesn't have it compiled into libc at all. Which means it can handle arbitrary charsets.) 01:46:58 If we were to encounter advanced alien life 01:47:18 That, through the roll of the dice, happens to reproduce sexually in a way similar to humans 01:47:32 Would it still be meaningful to sort "male" and "female"? 01:47:44 <\oren\> ooh, let's try that 01:48:05 * hppavilion[1] . o O ( cotriangle) 01:49:14 `quørjan 01:49:15 920) <ørjan> maybe i was violated by a pole once \ 18) IN AN ALTERNATE UNIVERSE: <ørjan> In an alternate universe, I would say "In an alternate universe, ehird has taste" \ 302) ørjan you're swedish, right? \ 357) <ørjan> i never meta turing. he died before i was born. \ 362) <ørjan> as i was filled with zzo38 mystery at the moment i 01:50:06 ...why is there a command for that? 01:50:26 hppavilion[1]: I think the tradition is that the big reproductive cells are considered female and the little reproductive cells are considered male. 01:50:27 Wait, did oerjan formerly actually use ørjan as a nick? 01:50:32 What are those called? Gametes? 01:50:41 tswett: Haploids? 01:50:45 hppavilion[1]: no, I think the command replaces all occurrences of "oe" with "ø". 01:50:52 Gametes, yes. 01:50:53 Ah 01:51:01 They are haploid cells. 01:51:05 pikhq: And gametes are typically haploids 01:51:13 Of course, you can't tell which gametes are bigger without a microscope. 01:51:36 Apparently there's also "rules" for how to handle the case when the two reproductive cells are identical in size. 01:51:51 I seem to be spending a lot of time thinking about bags 01:51:58 ... Namely, you pick one arbitrarily. 01:52:22 Though typically they're classed as "+" and "-" rather than "male" and "female". 01:52:25 pikhq: What if they're also identical in everything else? That is, sexual reproduction with only 1 mating type 01:52:42 (Shut up, it could happen) 01:52:57 ...well then you don't have to distinguish, do you? 01:53:05 Would that still be called sexual? 01:53:10 Yeah, I think it would be. 01:53:13 * hppavilion[1] grabs the spare mapole and commits harikari 01:53:24 `? harikari 01:53:26 harikari? ¯\(°​_o)/¯ 01:53:28 tswett: If it's a sharing of genetic material between two individuals, it would be. 01:53:32 tswett: Yes, sexual reproduction is just "exchange and mix DNA" 01:53:35 hppavilion[1]: You wouldn't have to distinguish. 01:53:43 This reminds me of my... 01:53:44 pikhq: ...yeah, I figured that out 01:53:52 Well, it's probably not appropriate for this channel. 01:54:10 First, I'm heirarchizing the various types of set the same way as numbers 01:54:14 That alien race I fantasized one day. 01:54:21 I call them the "Musaro". 01:54:28 tswett: ...should I ask? 01:54:31 Black, fuzzy, no eyes. 01:54:51 (So a bag (aka multiset) isn't similar-to-but-different-from a set; a set is just a special case of a bag) 01:55:05 They're genderless, or all the same gender or whatever. 01:55:18 Should you ask? I'll let you use your own judgement. 01:55:24 tswett: You can say genderless, because the gender flag is 0 bits 01:55:45 -!- \oren\ has quit (Quit: Lost terminal). 01:55:46 pikhq: ? 01:55:54 How not? 01:56:08 (that's why a HUMAN can't be truly genderless; they still identify as *something*, even if it's just abstaining- they're like atheists) 01:56:26 shachaf: It can't parse the GIF, apparently 01:56:48 (Atheism isn't a religion, but if you were to ask their religion they'd say "Atheist" (or more likely "none", which is equivalent)) 01:57:31 So the relation between sets and bags is like the relation between integers and rationals; rationals aren't a distinct object with similarities to integers, they're a strict superset 01:57:50 Oh, d'oh! I have Chrome's "data saver" on, which is serving me something other than a GIF. 01:58:10 Also, the reciprocal of an ibag (integral bag; multiplicity can be negative) is the same BUT with all multiplicities negated 01:58:18 Wait, did oerjan formerly actually use ørjan as a nick? <-- that isn't technically possible on freenode 01:58:27 oerjan: I didn't think so 01:59:26 pikhq: What? 01:59:30 Which browser? 01:59:48 -!- ais523 has joined. 01:59:51 Oh. 02:00:03 (Which is nice for, for example, positive rational numbers; since any number >= 1 can be represented as a unique product of primes, you can represent a number as its prime factorization- with negative powers for the denominator- in the form of a bag with items in the factorization with multiplicity of its power) 02:00:13 Yup, it's because the data saver transcodes GIF to WebP. 02:00:29 And jsgif *clearly* doesn't do jack with a WebP. 02:00:39 It should, though. 02:00:43 Actually it should be scrapped. 02:00:52 It has the most inefficient LZW algorithm imaginable. 02:01:02 Something like O(n^2) space, I think it was? 02:01:04 And if you take the reciprocal of such an ibag as defined, it represents the reciprocal of the rational number the original ibag represents 02:01:10 Well, Theta(n^2) 02:01:18 (Which leads me to fuzzy bags...) 02:02:39 Θ(n^2)? 02:02:49 That one. 02:02:55 Unless that one is a phi. I don't know Greek. 02:03:04 No, it's theta 02:03:07 (THETA) 02:03:09 The point is, it's awful. 02:03:14 Phi is Φ 02:03:23 I don't know Scientology either. 02:04:03 Is it considered better practice to transcribe Greek symbols into plain Latin by writing the names of capitals in FULL CAPS or just Capitalizing the first letter? 02:04:08 I saw a Scientology bus in Mountain View once. 02:04:45 fizzie: Where I live, Mountain View is the name of the bad part of town, so every time I see it referring to Google I get confused 02:04:46 hppavilion[1]: I think just the first letter is generally the way to done? 02:05:03 zzo38: That's what I've seen and usually do, but it's also pretty subtle; 02:05:18 -!- centrinia has quit (Quit: Leaving). 02:05:27 It was downtown Mountain View, which isn't all that Google. 02:06:05 fizzie: They used to have a, uh, place on Castro St. 02:06:10 `learn Harikari is the act of comitting suicide because you've mangled a word in an honor-destroying way. 02:06:13 Learned 'harikari': Harikari is the act of comitting suicide because you've mangled a word in an honor-destroying way. 02:06:28 If I capitalize the first letter of one for no apparent reason in the middle of a sentence, then you might not even notice (you do fairly often, but not 100%- and it's much harder when it's just a Standalone name in an expression) 02:06:42 BUT IF I WRITE IN FULL CAPS, YOU'RE REALLY GOING TO NOTICE 02:07:05 If I drop one in the middle of a sentence, you'll probably notice. 02:07:24 shachaf: But less often if it's in a mathematical expression 02:07:43 theta(x)+Theta(y)+theta(z) could VERY easily be read as theta(x+y+z) 02:07:54 If You write like Shubshub, I'll almost certainly Notice. 02:08:21 That individual has A Very distinctive mode Of writing. 02:08:27 (Oh, theta is multiplicative function by the way for no reason) 02:08:43 (Other than that I didn't want to rewrite theta(x)+theta(y)+theta(z)) 02:08:44 I'm not even managing to replicate it. 02:09:11 you weren't duly impressed by addition under atanh earlier imo 02:09:32 I wasn't? 02:09:37 Allow me to check what it was 02:09:53 You should give it a name. 02:10:07 shachaf: I had to leave school. 02:10:12 (Wait, give what a name?) 02:10:30 a (+) b = (a+b)/(1+ab) 02:10:40 Very useful operation, I guess. 02:10:44 Never seen that, but OK 02:10:49 Actually it already has a name. 02:11:21 shachaf: What I was talking about earlier was a(+)b = 1/((1/a)+(1/b)) 02:11:28 Which is just harmonic sum 02:11:36 It's called parallel sum by this one person on Wikipedia. 02:11:39 Whose page I linked to. 02:11:45 Ah, yes 02:12:34 Ooooh 02:12:39 So they're equivalent 02:13:48 There's a link to http://www.ellerman.org/wp-content/uploads/2012/12/IntellectualTrespassingBook.pdf 02:13:50 (If this is parallel sum, does that make + perpendicular sum?) 02:13:51 `slwd harikari//s/comi/commi/ 02:13:53 wisdom/harikari//Harikari is the act of committing suicide because you've mangled a word in an honor-destroying way. 02:15:10 It's called series sum on the page I linked to. 02:15:36 In fact, general sum: a(+_k)b = (a^k+b^k)^(1/k) 02:16:07 Maybe you mean -k 02:16:17 shachaf: Why -k? 02:16:18 you weren't duly impressed by addition under atanh earlier imo <-- was he at least relatively impressed? 02:16:26 I meant 1/k 02:16:40 Er, I don't mean -k 02:16:45 Sum is k = 1, harmonic sum is k = -1 02:17:17 oerjan: I feel there's a pun there, but I don't see what... 02:17:33 Is there some part of math where 'due' and 'relative' are related concepts? 02:17:34 hppavilion[1]: well, you're no einstein hth 02:17:41 hmm, that can come across as rude 02:17:54 shachaf: In what part in particular 02:18:05 coming up with a non-rude pun is left as an exercise 02:18:20 shachaf: It is weird that that could sound rude... the entire POINT of Einstein is that he's probably smarter than you 02:18:24 (for generic you) 02:18:36 `quote ais.*obscure 02:18:37 1243) (on another note, I love the way that the standard way to indicate that you get a reference is to make a different obscure reference to the same thing) 02:18:45 The joke is: (a+b)/(1+1/ab) is how you add velocities in special relativity. 02:18:59 Aaaah 02:19:07 (Velocities from 0 to 1, where 1 is the speed of light.) 02:19:21 Makes sense 02:19:52 And also, (a+b)/(1+1/ab) = tanh(atanh(a) + atanh(b)) 02:19:59 Ooooh 02:20:08 (that's 'oo', not 'oh') 02:21:09 -!- oren has joined. 02:21:20 The old-fashioned way to add velocities is a+b. 02:21:33 shachaf: Yeah, but the math doesn't work ;-; 02:21:47 Can you explain this analogy please: 02:22:05 I tried refreshing the UTF8.gz thing. didn't work. so now I'm compiling a costom tmux with my own char width fucntion 02:22:05 shachaf: i think you mangled the formula this time 02:22:22 oerjan: Which time? 02:23:30 the last one 02:23:41 OK, implemented gsum 02:24:03 oerjan: a+b? 02:24:04 The 0.5-sum of 3 and 5 is... 15.745966692414834 02:24:09 -!- oren has quit (Client Quit). 02:24:09 > tanh(atanh 0.5 + atanh 0.5) 02:24:11 0.8 02:24:23 2-sum is 5.830951894845301 02:24:45 > (0.5 + 0.5)/(1 + 1/(0.5+0.5)) 02:24:47 0.5 02:24:49 How do you define in lambdabot again? 02:24:53 Is it @let? 02:24:55 argh 02:24:59 @let ooga = 5 02:24:59 > (0.5 + 0.5)/(1 + 1/(0.5*0.5)) 02:25:00 Defined. 02:25:02 0.2 02:25:02 > ooga 02:25:03 hppavilion[1]: please see https://en.wikipedia.org/wiki/Lp_space#The_p-norm_in_finite_dimensions hth 02:25:05 5 02:25:08 OK, good 02:25:10 > (0.5 + 0.5)/(1 + (0.5*0.5)) 02:25:12 0.8 02:25:25 shachaf: no nested division 02:25:26 -!- oren has joined. 02:25:36 now I'll try again 02:25:38 @type (^) 02:25:40 (Num a, Integral b) => a -> b -> a 02:25:45 @type (^^) 02:25:47 (Integral b, Fractional a) => a -> b -> a 02:25:52 @type (**) 02:25:53 Floating a => a -> a -> a 02:25:54 oerjan: Oh, did I add 1/? 02:25:59 So I did. 02:26:14 `u8tbl 0x23f4 0x23fA 02:26:15 ​⏴⏵⏶⏷⏸⏹⏺ 02:26:17 Of course I mean (a+b)/(1+ab) 02:26:27 YAAAAAAAY 02:26:27 @let gsum g a b = ((a^^g)+(b^^g))**(1/g) 02:26:29 Defined. 02:26:34 @gsum 1 3 5 02:26:34 Unknown command, try @list 02:26:42 > gsum 1 3 5 02:26:45 error: 02:26:45 • Ambiguous type variable ‘a0’ arising from a use of ‘show_M352684250960... 02:26:45 prevents the constraint ‘(Show a0)’ from being solved. 02:26:49 ...wait, what? 02:26:57 now, i think this will work too? ⏴⏵⏶⏷⏸⏹⏺ horray! 02:27:05 You're using both ^^ and ** 02:27:08 Oh? 02:27:11 Of course it's confused. 02:27:16 @let gsum g a b = ((a^^g)+(b^^g))^^(1/g) 02:27:18 .L.hs:164:1: warning: [-Woverlapping-patterns] 02:27:18 Pattern match is redundant 02:27:18 In an equation for ‘gsum’: gsum g a b = ... 02:27:25 (...right, dammit) 02:27:32 @let gsum' g a b = ((a^^g)+(b^^g))^^(1/g) 02:27:34 Defined. 02:27:38 > gsum' 1 3 5 02:27:41 error: 02:27:41 • Could not deduce (Fractional b0) arising from a use of ‘gsum'’ 02:27:41 from the context: Fractional a 02:27:49 ...I'm going to leave now 02:27:55 -!- hppavilion[1] has quit (Quit: Leaving). 02:28:11 Oh, so I was saying: 02:28:16 I replaced the call to wcwidth with a call to u8chrwid from http://orenwatson.be/u8.c.htm 02:28:39 In this one computer game, I have a bunch of things, and they generate resources. 02:28:49 which is a rough and ready character width estimation 02:28:52 Say I have thing X that generates 60% of my resources. 02:29:06 Now I make X twice as efficient. It doesn't generate 120% of my resources, of course. 02:29:20 It generates (0.6+0.6)/(1+0.6) of them. 02:29:27 > (0.6+0.6)/(1+0.6) 02:29:29 0.7499999999999999 02:29:40 74.99999999999999% 02:30:18 So this seems kind of similar to the velocity addition thing, except that that would say, if you "double" your velocity from 0.6, you get (0.6+0.6)/(1+0.6*0.6) 02:30:24 > (0.6+0.6)/(1+0.6*0.6) 02:30:27 0.8823529411764707 02:30:34 So what's that about? 02:30:43 Does the analogy work or not? 02:30:44 I should probably work on making it less rough and ready though 02:31:39 less rough, more ready? 02:33:01 yeah 02:34:09 but seriously it is total shit that I had to put in such a havk just to get a stupid play an pause buttons to show up. 02:34:10 «For fractions, the series sum is the usual addition expressed by the annoyingly asymmetrical rule: "Find the common denominator and then add the numerators." The parallel sum of fractions restores symmetry since it is defined in the dual fashion: "Find the common numerator and then (series) add the denominators."» 02:34:16 This is pretty good. 02:34:45 shachaf: if X generates proportion p of your resources, and you make X twice as efficient, it now generates (p+p)/(1+p) = 1/(1/(p+p)+p/(p+p)) = 1/(1/2p + 1/2) = 2p (+) 2 of your resources 02:35:05 it's not immediately obvious how this generalizes 02:35:23 ais523: Well, I was trying to make an analogy to the velocity addition thing. 02:35:30 shachaf: which is (+) 02:35:34 I was expressing it in terms of that 02:35:37 and it does look simpler 02:35:47 but is also confusing as it's not clear why it has that form specifically 02:36:01 Wait, isn't that (+) parallel sum? 02:36:03 ooh, let's do it like this 02:36:05 shachaf: yes 02:36:16 let X become n times as efficient; and let q = (1-p) 02:36:27 How is that related to velocity addition? 02:36:27 (btw, "q = 1-p" should be the standard definition of q, IMO) 02:36:47 `addquote (btw, "q = 1-p" should be the standard definition of q, IMO) 02:36:56 1290) (btw, "q = 1-p" should be the standard definition of q, IMO) 02:36:59 `doag quotes 02:37:00 2016-10-11 addquote (btw, "q = 1-p" should be the standard definition of q, IMO) \ 2016-10-09 sled quotes//82s/[[]/ [/ \ 2016-10-09 sled quotes//82s/ \\.\\.\\. /[...]/ \ 2016-09-25 revert 942e964c81c1 \ 2016-09-25 ` chmod 777 / -R \ 2016-09-24 sled quotes//1289s/ // \ 2016-09- 02:37:40 shachaf: Not that you likely *care*, there is a workaround to make gifjs still work in the face of transforming proxies like that. Add a quick .setRequestHeader("Cache-Control", "no-transform") to your XMLHttpRequest. 02:37:56 pikhq: TG 02:38:05 TG = ? 02:38:08 too good 02:38:17 Alas. 02:38:27 I'm pretty far removed from that code, though. 02:38:38 * pikhq assumed so 02:38:39 Apparently Buzzfeed forked it and made it into a nice library or something. 02:38:51 Which is why it has all those stars on Github. 02:38:59 I didn't even find out about it until recently. 02:39:07 X previously generated p/(p+q); now it generates np/(np+q) = np / (1 + (n-1)p) = 1/(1/np + (n-1)p/np) = np (+) np/(n-1)p = np (+) n/(n-1) 02:39:18 Maybe I'll just send them a patch if they care. :) 02:39:58 Though it's pretty possible they already did that. 02:39:59 shachaf: what does "that code" refer to? 02:40:09 The jsgif code. 02:40:31 Also apparently between the time I wrote it (summer 2010) and the time I released it, someone else released another library with the same name. 02:40:34 Oh well. 02:40:39 That'll teach me to release any code. 02:41:08 ais523: OK, let me read what you said. 02:41:25 shachaf: it doesn't really come out as neatly as I expected 02:41:28 I was trying to connect it to the velocity addition thing but I think it's unrelated. 02:41:31 although it's still fairly neat 02:41:43 right, I don't think there's a connection either, just a nice formula 02:41:47 can someone try to break my wcwidth code? 02:41:48 -!- copumpkin has quit (Ping timeout: 250 seconds). 02:42:01 like, find a character that breaks it 02:42:07 I did enough maths when I was younger that I can appreciate a neat formula even if it doesn't solve my original problem 02:42:12 oren: does it return -1 for backspace? 02:42:13 No, I think there probably is a connection. 02:42:30 But I was just saying that I'll appreciate your formula even if it isn't connected. 02:42:55 ais523: no. returns 0. but it doesn't seem to use wcwidth to handle backspace anyway 02:42:57 ais523: Were you here when I talked about volume time? It's also related. 02:43:14 shachaf: no (or if I was, I wasn't paying attention) 02:43:35 There's this thing on stock exchanges called volume time, which measures time using volume instead of a clock. 02:43:56 (Also other exchanges.) 02:43:59 I didn't actually look up what the specifications for wcwidth I just sort of pasted some old code of mine into tmux and compiled 02:44:01 Every time one person buys N things from someone else, the volume is increased by N. 02:44:06 shachaf: ah right 02:44:08 shachaf: Welp, they definitely don't have the cache-control set like that. :) 02:44:14 this is like valgrind measuring time by counting CPU instructions 02:44:20 Now do I care enough to hand 'em an issue... 02:44:30 or massif measuring time in megabytes 02:44:32 There are a lot of things that work out nicely when you use volume time instead of clock time. 02:45:09 You can measure your trading speed in terms of volume time, e.g. "buy 10000 shares, and be 20% of the total volume" 02:45:25 Which means that over the next 50000 volume time, you want to have been 10000 of it. 02:45:38 It means you can treat things that trade frequently and infrequently in a similar way. 02:45:58 Anyway, 100% is the speed limit for trading, is the point. 02:46:08 -!- copumpkin has joined. 02:46:28 If you're 100% of the volume, you can't get your volume time speed, no matter how much faster you trade. 02:46:32 this is like the reverse of the lightspeed limit 02:46:41 if you go faster, time speeds up to compensate 02:47:01 The interesting thing there is that time and position are measured in the same units. 02:47:15 Which I guess is true for spacetime too. 02:47:46 So how does "velocity addition" work in this world? 02:48:17 kind-of like relativity I think 02:48:18 hi copumpkin 02:48:22 maybe you know 02:48:38 hmm, would be great if it were exactly like relativity 02:48:57 in this world, things going at the speed of light go at the speed of light from any viewpoint, don't they? 02:48:57 That's what I said! 02:49:13 Well, this global volume time ticker is kind of annoying. 02:49:37 basically, velocities don't add linearly 02:49:39 But I'm not sure what you mean by viewpoint. 02:49:39 I was taught about relativity in school but can hardly remember the details at this point 02:49:49 shachaf: nor am I 02:50:01 but however it's defined it doesn't seem capable of changing the speed of light, so maybe it doesn't matter 02:50:23 instead rapidities add linearly 02:50:43 It's also annoying that stocks and volume are discrete. But we can probably ignore that. 02:51:17 stocks don't have any mathematical reason to be discrete 02:51:18 that is, if a bullet is shot at speed v forward on a train going at speed w, 02:51:22 that's just the wayt he stock market is set up 02:51:38 Right. 02:51:43 Well, that's not quite true. 02:52:14 Prices also have a reason to be discrete, and there's a real trade-off between finer and coarser prices. 02:52:20 the speed of the bullet relative to the ground is c*tanh(arctanh(v/c)+arctanh(w/c)) 02:52:24 (But that's not related to any of this, anyway.) 02:52:33 what a share in a company gives you is: a) voting power on the company's decisions (typically only used to elect a board who handle the day-to-day decisions); b) a proportion of dividends 02:52:40 neither of those have a reason to be discrete 02:53:02 ais523: https://en.wikipedia.org/wiki/Rapidity 02:53:48 Hmm, maybe shares don't need to be discrete. 02:53:59 But prices should be. 02:54:05 At least the way markets work right now. 02:55:15 now I've had a mental image of high frequency trading bots coming up with prices that are so precise they need to be expressed as computable rals 02:55:16 *reals 02:55:27 and the stock market taking hours just to figure out what the price of the trade actually is 02:55:55 Why restrict prices to the computables? >:D 02:56:10 Well, figuring out prices is one of the main purposes of the stock market. 02:56:17 So I don't mind if it takes hours. 02:56:32 But it's so volatile anyway, the extra precision probably wouldn't get you much in most cases. 02:57:06 pikhq: one big advantage of a computable real over an uncomputable real is that it's possible to communicate it to someone else 02:57:22 having a price that you can't describe or name in any way is useless for actually making trades 02:57:41 *shrug* 02:57:49 Well, it could be describable but not computable. 02:57:50 Some people have no imagination 02:58:00 (btw, "q = 1-p" should be the standard definition of q, IMO) <-- except in L^p theory you want 1/q = 1 - 1/p instead hth 02:58:27 huh, I just realised that q and p are even mirror images in most fonts 02:58:27 oerjan: I was going to suggest q = 1/p 02:58:42 (they aren't in my handwriting, which probably explains why I didn't notice this before) 02:59:07 how did you write those inverted d and b? 02:59:09 (it's been a while since I did probability calculations using algebra, and back then I was mostly using paper rather than computers) 02:59:32 there are websites you can use to turn your text upside-down 02:59:57 it makes it so much easier to write 03:01:02 ais523: Anyway, this volume time thing seems more analogous to the resource thing I said before. 03:01:57 Say I'm buying at 60% of the volume. I double my buying speed. Now I'm (0.6 + 0.6)/(1 + 0.6) of the volume. 03:02:09 Or am I? I should figure out what I mean by double. 03:02:51 ugh, now I'm reminded of the question of a plane on a treadmill 03:02:56 Maybe I mean I'm measuring everything in clock time. 03:03:22 -!- imode has joined. 03:03:34 the question is "if you place an aeroplane on a giant treadmill, and make the treadmill spin backwards to counteract the plane's motion and keep it steady in the x axis, can the plane take off?" 03:04:26 So if 60% participation is 60 shares/minute, that means other people are trading at 40 shares/minute. I "double" my speed by trading at 120 shares/minute, so that's 120/160 = 75% 03:04:42 This is the reason I brought up the resource thing in analogy to the speed of light in the first place. 03:04:56 hm 03:05:25 hmm, would be great if it were exactly like relativity <-- . o O ( what if this world is an emergent property of a stock exchange somewhere ) 03:06:23 oerjan: oh, i get it, stackexchange.com is a pun on "stock exchange" 03:06:25 oerjan: what do you think of the theory that there is only one electron in existence, but it's capable of time travel 03:06:27 I didn't realize until now. 03:06:52 and manages to do the jobs of every electron in the universe via looping through time 03:06:52 ais523: What do you think of the theory that there's only one soul/consciousness in existence, but it moves between everyone's minds zillions of times a second? 03:07:16 shachaf: I think it's very hard to disprove, and may not be well-defined 03:07:32 I think that too. 03:07:43 I think I read it in a book by Raymond Smullyan, where he maybe put it better than I did. 03:11:05 I didn't realize until now. <-- eek me neither 03:12:20 https://en.wikipedia.org/wiki/User:Paulproteus/List_of_puns_that_took_Asheesh_more_than_a_year_to_get 03:12:20 ais523> oerjan: what do you think of the theory that there is only one electron in existence, but it's capable of time travel <-- i vaguely there was some argument against that idea. 03:15:09 Do you know Raymond Smullyan's secret to immortality? 03:15:13 It comes in two parts. 03:15:27 1. Always tell the truth. Never say something that isn't true. 03:15:41 2. Say "I will repeat this sentence tomorrow". 03:20:54 hah. 03:21:24 shachaf: 1. is probably impossible, it requires you to be accurate 03:21:35 Yes, 1 is the hard part. 03:21:40 and if you were actually accurate, then 1 and 2 would likely contradict each other 03:21:48 Why? 03:22:01 Actually you could work around it by getting rid of the sun or something. 03:23:24 stating you'll do something on a nonexistent day is a false statement, isn't it? 03:23:43 Hmm, maybe. 03:27:02 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 03:31:56 -!- encodingcollecto has quit (Remote host closed the connection). 03:34:49 something something closed world assumption. 03:35:19 ais523: Ah, http://www.ellerman.org/wp-content/uploads/2012/12/IntellectualTrespassingBook.pdf talks about this maybe. 03:35:31 "In high school algebra, parallel sums occur in the computation of completion times when activities are run in parallel. If pump A can fill a reservoir in a hours and pump B can fill the same reservoir in b hours, then running the two pumps simultaneously will fill the reservoir in a:b hours." 03:35:36 (Where : is parallel sum.) 03:38:09 damnit. I need to either handle only signed numbers or find two symbols to represent a signed comparison. 03:39:24 imode: Verity uses +< and +> for signed less-than and signed greater-than 03:39:48 ais523: needs to be single-char. 03:39:48 -!- Cale has quit (Ping timeout: 260 seconds). 03:40:04 (just an artificial constraint I set.) 03:41:37 the plane on a treadmill can take off easily, because the wheels aren't pushing the plane 03:42:14 imode: ≺ and ≻ perhaps? although those make more sense as unsigned with < and > as signed 03:42:26 that is, the plane doesn't push the treadmill at all, so the treadmill doen't move 03:42:48 ais523: unicode? 03:42:55 doesn't display well on my terminal. 03:42:57 imode: well there aren't many possibilities in ASCII! 03:43:03 I know D: 03:43:05 damn this charset! 03:43:07 they're \prec and \succ in LaTeX 03:43:09 and this keyboard. 03:43:23 need more symbols and less latin letters. 03:43:39 imode: try a better font 03:43:49 in ASCII about the best you'll do is [ and ] I think 03:43:59 [ and ] are reserved for loops. 03:43:59 imode: |spelling error 03:43:59 imode: | and ] are reserved for loops. 03:43:59 imode: | ^ 03:44:03 oh man. 03:44:10 http://orenwatson.be/fontdemo.htm <- like this one 03:44:20 oh god that font. 03:44:30 no thanks. 03:45:05 it has almost every math symbol you can imagine 03:45:33 jsut having the font on your system is enough since characters not found in any other font witll use it 03:45:56 you could also use gnu unifont 03:45:58 oerjan: that font probably wants to be a vector font rather than a pixel font 03:46:03 ^ 03:46:16 http://www.unifoundry.com/unifont.html 03:46:20 and, I'm good. the characters display and everything, it's just that they're a tiny bit aliased.. 03:46:46 (I haven't checked, but from the description, it looks like a pixel font) 03:46:46 *oren: 03:47:08 it is a pixel font on purpose in order to prevent aliasing 03:47:17 because I hate cleartype 03:48:57 I dig that font. 03:51:13 the things I have against gnu unifont that led me to make my own font are: I don;t like gnu unifont's style, gnu unifont doen't have accurate widths for its characters especially symbols, and its style differs from language to language 03:51:33 I just use Dina. 6pt font. 03:52:13 yeah I prefer a bigger font these days 03:54:01 alhough soon I might need glasses so maybe that's part of why 03:54:08 * pikhq isn't too fond of the style on that font either 03:54:50 pikhq: which one, gnu unifont, Dina, or neoletters? 03:54:56 Neoletters 03:55:10 Though unifont ain't exactly attractive either. 03:55:20 And at least neoletters is stylistically consistent. 03:59:26 I happen to prefer Fixed, although I would want a UTCE version of it (possibly in addition to the existing Unicode version) 04:03:16 The main problem I've had using gnu unifont wasn't the style though. it was that certain characters have the wrong width in the font, causing roguelikes that use unicode to look all messed up 04:07:19 ←↑→↓↔↕ for example were all shown as wide 04:09:13 I think they have now fixed that, but there are still hundreds of characters shown as wide that should be one space 04:10:39 such as ➊➋➌➍➎➏➐➑➒➓ 04:33:39 Weird, they're not following the Unicode width table? 04:34:35 That's just bizarre. 04:38:08 -!- oren has quit (Quit: leaving). 05:00:42 -!- oren has joined. 05:00:52 ok it turned out my crappy wcwidth was too crappy 05:01:19 and caused a crash somehow 05:01:45 so I copied this one, which seems to work better http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c 05:03:21 oren: Is that up-to-date though? IIRC some of the blocks which had characters added later than 5.0 have a width of 2, not 1. 05:03:46 hmm, I'll have to fix it up then! 05:04:23 I invented UTCE in order to avoid those problems with the width 05:04:34 although,the supplementary ideographic plane is all just blocked out as width two in that function 05:04:50 Yup, it's missing 1 block I know of: the Miscellaneous Symbols and Pictographs block has a width of 2. 05:05:16 (which is not in the ideographic plane) 05:06:35 ok, I'll figure thta out too 05:06:57 Should be simple enough to fix though. 05:20:35 -!- `^_^v has joined. 05:23:43 -!- Deewiant has quit (*.net *.split). 05:24:19 -!- powerOfTwo has joined. 05:24:38 -!- powerOfTwo has quit (Remote host closed the connection). 05:25:02 -!- Deewiant has joined. 05:26:38 -!- oerjan has quit (Quit: Nite). 05:31:43 -!- oren has quit (Quit: leaving). 05:36:37 -!- oren has joined. 06:01:27 -!- ais523 has quit. 06:03:33 -!- otherbot has joined. 06:19:21 -!- jeffl35 has changed nick to jeffl36. 06:19:23 -!- jeffl36 has changed nick to jeffl35. 06:34:58 -!- otherbot has quit (Remote host closed the connection). 06:35:13 -!- otherbot has joined. 06:48:54 -!- augur has quit (Remote host closed the connection). 06:52:45 :( c2.com is still down... that wiki was awesome. 06:55:58 -!- Sgeo__ has joined. 06:59:08 -!- Sgeo_ has quit (Ping timeout: 260 seconds). 07:14:04 -!- `^_^v has quit (Quit: This computer has gone to sleep). 07:24:26 -!- AnotherTest has joined. 07:29:44 -!- augur has joined. 07:31:09 -!- AnotherTest has quit (Ping timeout: 260 seconds). 07:45:08 -!- Sgeo__ has quit (Ping timeout: 250 seconds). 07:46:00 -!- fractal has quit (Ping timeout: 250 seconds). 07:46:37 -!- augur has quit (Read error: Connection timed out). 07:46:37 -!- Sgeo__ has joined. 07:47:20 -!- augur has joined. 08:01:29 -!- carado has joined. 08:02:25 -!- hppavilion[1] has joined. 08:06:24 -!- fractal has joined. 08:08:06 -!- `^_^v has joined. 08:19:56 -!- hppavilion[1] has quit (Quit: Leaving). 08:20:44 -!- hppavilion[1] has joined. 08:21:03 -!- dolphinmaster has joined. 08:21:16 -!- dolphinmaster has left. 08:25:34 -!- Sgeo_ has joined. 08:28:02 -!- Sgeo__ has quit (Ping timeout: 250 seconds). 08:39:18 -!- pikhq has quit (Ping timeout: 250 seconds). 08:41:18 -!- pikhq has joined. 08:52:04 -!- imode has quit (Ping timeout: 260 seconds). 08:59:49 -!- imode has joined. 09:02:41 Apparently the person Trump is talking to on that tape is Billy Bush 09:02:45 ...one of the Bushes... 09:02:46 Wow... 09:30:17 -!- otherbot has quit (Remote host closed the connection). 09:36:20 -!- ski has quit (Ping timeout: 260 seconds). 09:36:24 -!- scoofy_ has joined. 09:36:43 -!- jix_ has joined. 09:37:40 -!- nycs has joined. 09:40:19 Someone just contributed a brilliant simpler proof for the chameleon game problem. 09:41:22 -!- imode has quit (*.net *.split). 09:41:22 -!- `^_^v has quit (*.net *.split). 09:41:23 -!- deltab_ has quit (*.net *.split). 09:41:24 -!- Akaibu has quit (*.net *.split). 09:41:24 -!- scoofy has quit (*.net *.split). 09:41:25 -!- incomprehensibly has quit (*.net *.split). 09:41:25 -!- xfix has quit (*.net *.split). 09:41:25 -!- gniourf has quit (*.net *.split). 09:41:25 -!- Hoolootwo has quit (*.net *.split). 09:41:25 -!- Lymia has quit (*.net *.split). 09:41:25 -!- Tiktailk has quit (*.net *.split). 09:41:25 -!- jix has quit (*.net *.split). 09:42:45 -!- ski has joined. 09:44:04 -!- imode has joined. 09:49:51 -!- deltab_ has joined. 09:49:51 -!- gniourf has joined. 09:49:51 -!- Akaibu has joined. 09:49:51 -!- incomprehensibly has joined. 09:49:51 -!- xfix has joined. 09:49:51 -!- Hoolootwo has joined. 09:49:51 -!- Lymia has joined. 09:49:51 -!- Tiktailk has joined. 09:52:57 -!- incomprehensibly has quit (Ping timeout: 256 seconds). 09:58:04 -!- incomprehensibly has joined. 09:59:11 that was three months ago... 09:59:26 int-e: Wat? 09:59:42 b_jonas: ...care to share the link again? 10:03:28 -!- carado has quit (Ping timeout: 260 seconds). 10:06:51 int-e: I don't have a link to the logs, because I don't remember when exactly it was 10:06:59 -!- carado has joined. 10:06:59 I don't have a copy of the logs 10:07:09 wait, can HackEgo search the archives? 10:10:01 https://twitter.com/lachlan/status/785595392385687552 10:12:09 `` cat bin/log 10:12:10 ​#!/bin/sh \ cd /var/irclogs/_esoteric \ if [ "$1" ]; then \ grep -P -i -- "$1" ????-??-??.txt | shuf -n 1 \ else \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ fi 10:12:27 `` /bin/ls /var/irclogs/_esoteric 10:12:28 ​/bin/ls: cannot access /var/irclogs/_esoteric: No such file or directory 10:12:31 doesn't actually exist 10:13:14 does HackEgo have the logs now? 10:14:06 ARGH! 10:28:59 -!- hppavilion[1] has quit (Ping timeout: 268 seconds). 10:40:27 no, HackEgo *had* the logs in the past 10:40:49 b_jonas: so where did this contribution happen then 10:41:57 -!- erdic has quit (Ping timeout: 248 seconds). 10:42:58 -!- erdic has joined. 11:00:43 int-e: http://www.komal.hu/forum/forum.cgi?a=to&tid=309&st=25&dr=1 , post [19] and [21] 11:01:31 http://www.komal.hu/forum/forum.cgi?a=to&tid=309&st=25&dr=1#28505 11:01:35 it has anchors now? 11:01:47 I totally assumed there were no anchors earlier! 11:35:11 -!- boily has joined. 11:39:34 according to linkedin one of the people i may know is "Gmane Authorizer" 11:43:28 izellove. what's a gmane authorizer? 11:47:07 the thing you use to authorize your gmanes 11:48:58 ... 11:50:40 what else would you use it for? 11:55:33 argh 11:56:17 so I'm trying to make something take less disk space by deleting unnecessary files from it, and as a temporary state during this, I'm about to have almost six copies of the whole damn thing on my hard disk 12:13:35 btw, https://johncarlosbaez.wordpress.com/2016/10/07/kosterlitz-thouless-transition/ can be worth a read 12:21:34 -!- Phantom_Hoover has joined. 12:28:17 -!- boily has quit (Quit: MOUSSE CHICKEN). 12:28:18 -!- ais523 has joined. 13:12:45 -!- AnotherTest has joined. 13:14:14 I've just been bitten by escaping rules. 13:17:19 What were the rules escaping from 13:20:41 Taneb: perl regex inside windows cmd shell 13:21:01 My commiserations 13:21:12 I put the regex command-line argument in quotes, and wanted to match a literal backslash as the last character 13:21:23 b_jonas: cmd's escaping rules are outright bizarre 13:21:39 you could probably make the Perl oneliner prompt for the regex interactively 13:21:43 to avoid having to escape it at all 13:21:47 the reasonable thing to write would have been "foobar\x5c" or "foobar\\(?:)" but I wrote "foobar\\" and that's wrong and produces a strange error message 13:22:40 ais523: yes, they're bizarre and hard to use. I had to learn about them for some script I made, but that doesn't mean I have it as a finger reflex to know how many backspaces to type 13:23:02 let me tell the story of that 13:24:10 I have some batch files that are thin wrappers around a program, just invoking it and passing all the command-line arguments, possibly prefixing or suffixing some more command-line arguments 13:24:58 Those are easy to write, you just have to put @"C:\Program Files\Some Path\someprogram.exe" %* into the batch file 13:25:40 It _mostly_ works. Only mostly, because when you invoke it then interrupt the program with control-c, you need an additional control-c or something like that to exit. 13:25:56 But there are at least two hard cases. 13:26:30 Namely, I want a wrapper around a program such that it sets some environment variables, but only for running that program, not for the rest of the shell session. 13:26:52 -!- oren has quit (Ping timeout: 260 seconds). 13:26:58 I absolutely can't figure out how to do that in pure cmd. I tried experiments with CALL and SET and stuff, but nothing worked. 13:27:47 So I wrote a batch file with a very ugly perl script that sets an environment variable and then calls another program 13:28:11 But the easiest way to spawn a program from perl involves going through the shell (you'd need some windows-specific module otherwise, and that might be worth investigating), 13:28:24 so I made the perl script try to quote the parameters of the program for the shell. 13:28:29 That mostly works. Only mostyl. 13:28:43 It can fail if the command-line parameters are strange or if the program handles them in a strange way, 13:29:07 b_jonas: have you seen the command line quoting argument on CPAN? 13:29:09 but it works when there's only a couple of double quotes, backslashes, carets and ampersands and pipes and angle brackets involved. 13:29:11 the way it handles Windows is very weird 13:29:24 ais523: no 13:29:28 AFAICT the Windows escaping rules for a string depend on the content of the string 13:29:38 Here's an example of such a script: 13:29:44 @"C:\Perl64\bin\perl.exe" -M-lib=. -e "use 5.016; $ENV{PATH} = qq(C:\x5cWin-builds\x5cbin;$ENV{PATH}); say my$c = qq(\x22) . join(qq(\x22 \x22), map s/(\x5c*(\x22|\z))/\Q$1/gr, qw(g++ -march=core2 -mavx -Wall -O), @ARGV) . qq(\x22); exit system $c;" -- %* 13:29:45 Unknown command, try @list 13:29:48 so it has to add a few useless characters which cancel each other out in order to force a particular escaping method 13:30:03 lambdabot doesn't know Perl? 13:30:24 `perl-e print sub { $_[0] + 1}; 13:30:24 CODE(0x626c78) 13:30:28 Perl has lambdas 13:30:49 ais523: it knows perl. it just doesn't have the particular g++ executable for which that works. 13:31:08 it can't find the g++ command 13:31:47 I'm not sure what happens if any command-line argument contains percent signs or newlines by the way 13:34:19 ais523: the problem with windows shell quoting is that it's sort of rigid. contents of double-quoted strings must be escaped by putting excatly the backslashes that regex puts in them. if you try to put any other backslash escape, you end up with the wrong result. 13:34:46 if you allow exitting the double quote, then there might be more ways 13:35:21 also, I have no fucking idea how percent escapes work, or if they work at all 13:35:30 their syntax seems completely random 13:35:40 so if your command has percent signs, you're probably screwed 13:35:46 and many commands I type do have percent signs 13:36:00 I have absolutely no idea how to escape them properly 13:36:54 doesn't cmd have caret escapes too? 13:37:06 ais523: I don't know. 13:37:17 I don't know how cmd works, and I probably shouldn't even do this stuff 13:37:40 I should use a perl module that lets me execute a program on windows without using the shell, or some other solution 13:37:45 rather than trying to beat cmd into submission 13:38:14 Or if a perl module is not convenient, just write something new in C++ using the windows api or whatever. 13:38:39 I put that batch file stuff down when it started to more or less work 13:39:02 I'm sure it escapes backslashes and double quotes properly, but there are more problems with batch file stuff than that. 13:51:54 system and exec in Perl behave differently when handed a single argument 13:53:06 -!- nycs has quit (Quit: This computer has gone to sleep). 13:53:07 `perldoc -f exec` and `perldoc -f system` have more details 13:53:08 You need to install the perl-doc package to use this program. 13:53:18 perl's useless without its docs 13:53:25 presumably powershell has less esoteric quoting rules 13:53:42 it's only a few hundred man pages, last time I counted :-) 13:54:32 perldoc is probably larger than some fungot corpora 13:54:33 Jafet: not sure exactly what you want? perl exists already, and there are 13:59:26 hmm, I just remembered that I was formally trained to tune harps 13:59:30 ^ b_jonas asked me to repost that here 13:59:32 -!- AnotherTest has quit (Ping timeout: 260 seconds). 13:59:41 `addquote ais523 hmm, I just remembered that I was formally trained to tune harps 13:59:43 1291) ais523 hmm, I just remembered that I was formally trained to tune harps 13:59:49 is that how I use addquote? 13:59:52 `quote ais523 13:59:53 24) after all, what are DVD players for? \ 69) so a.b.c.d.e.f.g.h.i.j.k.com might be self-relative, but a.b.c.d.e.f.g.h.i.j.k.l.com always means a.b.c.d.e.f.g.h.i.j.k.l.com.? \ 70) let's put that in the HackEgo quotes files, just to completely mystify anyone who looks back along them in the future \ 77) (still, w 13:59:59 no, you have to format it properly 14:00:00 `delquote 1291 14:00:02 hmm 14:00:03 ​*poof* ais523 hmm, I just remembered that I was formally trained to tune harps 14:00:06 `? quoteformat 14:00:07 quoteformat is: message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two. 14:00:11 -!- otherbot has joined. 14:00:21 `addquote hmm, I just remembered that I was formally trained to tune harps 14:00:23 1291) hmm, I just remembered that I was formally trained to tune harps 14:00:29 `quote harps 14:00:29 1291) hmm, I just remembered that I was formally trained to tune harps 14:00:34 `quote ais523 14:00:35 24) after all, what are DVD players for? \ 69) so a.b.c.d.e.f.g.h.i.j.k.com might be self-relative, but a.b.c.d.e.f.g.h.i.j.k.l.com always means a.b.c.d.e.f.g.h.i.j.k.l.com.? \ 70) let's put that in the HackEgo quotes files, just to completely mystify anyone who looks back along them in the future \ 77) (still, w 14:00:36 `countquote ais523 14:00:37 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: countquote: not found 14:00:39 I have a lot of skills; some are more useful than others 14:00:45 -!- moonythedwarf has joined. 14:00:47 moo 14:08:16 so I just stumbled across the standard ISO 16 14:08:51 what's it for 14:08:52 it is one page long, and not publicly available, although you can purchase it for 38 swiss francs; it does not seem to be available in other currencies 14:09:02 it defines the A above middle C as being 440 Hz 14:09:31 what's the date for that standard? 14:09:47 below middle C, hopefully 14:10:01 Jafet: that's 220 Hz 14:10:12 b_jonas: Jan 1 1975 14:10:16 oops 14:10:39 ais523: does that standard also define a particular tuning scale for pianos? 14:10:56 I don't think you could fit that into one page 14:11:04 -!- oren has joined. 14:11:28 b_jonas: I can't tell from the publicly available information, but it seems very unlikely 14:11:50 "Jan 1 1975" -- hehe, suddenly I imagine musicians suddenly retuning their instruments at the end of a New Year concert when the clock chimes midnight and the standard goes into effect 14:12:22 I doubt many performers strive to be ISO 16 compliant 14:13:14 Obviously that wouldn't happen. The M:tG rules changes always specifically state that the modified rules are applied to contests that start after the time when the modification goes to effect. Similarly, a tuning standard would only apply to a whole concert, not change between. 14:13:25 Still, it was a funny image. 14:13:43 couldn't they just re-tune their instruments at midnight? 14:13:59 oh, that's what you said 14:14:03 I misread it as "returning" 14:14:07 because it's a much more common word 14:15:25 I did the same 14:16:07 Same-o 14:16:34 throw new MisreadError() 14:20:07 -!- trn has joined. 14:24:45 note that piano (and harp?) strings are not tuned to the ideal frequencies: http://physics.stackexchange.com/a/268635 14:30:01 They use 2/3 somewhere where they shouldn't, right? 14:31:16 Jafet: combinations like, say, F sharp and G flat are not identical on a harp 14:31:30 they have different inputs 14:32:01 the way harps work is that they have seven strings per octave which can each be set to natural, flat, or sharp 14:32:01 (C flat is not the same as B, although they're very close) 14:46:14 -!- ais523 has quit. 14:46:52 -!- DHeadshot has joined. 15:00:53 -!- `^_^v has joined. 15:04:34 -!- moonythedwarf has changed nick to death-moon. 15:05:43 <`^_^v> wb death-moon 15:05:54 -!- death-moon has changed nick to moonythedwarf. 15:05:57 ohai 15:09:53 -!- MoALTz has joined. 15:14:23 -!- AnotherTest has joined. 15:16:48 -!- MoALTz has quit (Quit: Leaving). 15:27:08 -!- MoALTz has joined. 15:52:45 -!- otherbot has changed nick to otterbot. 16:09:31 -!- Cale has joined. 16:21:55 -!- oerjan has joined. 16:29:34 :( c2.com is still down... that wiki was awesome. <-- aw. not just that, it's the _first_ wiki. 16:42:29 -!- lambdabot has quit (Ping timeout: 248 seconds). 16:49:48 hmmm. "An error occurred processing your request. The host is currently unavailable. Please try again later" 16:50:16 Someone just contributed a brilliant simpler proof for the chameleon game problem. <-- which problem? the one with 3 colors i'm finding is already trivial with modulo arithmetic... or is that a new proof? 16:50:44 leftabot 16:54:36 oerjan: no, a different chameleon problem 16:55:01 which one 16:55:05 I'm glad I solved that unicode problem in my tmux 16:55:09 the 3 color one is very old, the one I'm talking about is newer and has more colors 16:56:58 now I can have ☕ in the ☔ and watch the ☄ when the ★s come out 16:57:07 * oerjan maybe should read the rest of the logs before complaining 16:57:22 without having some of those characters be missing 16:57:33 oren: yay i can read two of those! 16:58:14 `unidecode ☕☔☄★ 16:58:16 ​[U+2615 HOT BEVERAGE] [U+2614 UMBRELLA WITH RAIN DROPS] [U+2604 COMET] [U+2605 BLACK STAR] 16:58:30 is there a comet? 16:58:51 I heard there was a shooting star the other day over toronto 16:59:44 i think i saw a shooting star the other night. 17:00:25 assuming they look like small lights flashing quickly over the sky 17:01:20 * oerjan briefly googled to see if he was missing a song reference but found nothing 17:01:30 no song reference 17:07:22 Of course, the main problem was with ⏩⏪⏫⏬⏭⏮⏯⏴⏵⏶⏷⏸⏹⏺ whcih for some reason are still a little glitchy. 17:08:05 oren: wait.... 17:08:12 are you thinner by some backslashes? 17:08:33 oops 17:08:52 yeah I had to restart my irssi so I could restart tmux 17:08:59 -!- oren has changed nick to \oren\. 17:09:11 <\oren\> ⏻⏼⏽⏾ were also buggy 17:10:13 oerjan: that's the problem, it's somewhere in the logs months back from now, but I don't know where 17:10:23 I don't have a cpoy of the logs, and nor does HackEgo, so I can't search 17:13:56 -!- lambdabot has joined. 17:16:23 and tunes.org excludes web spiders :( 17:17:06 while codu hasn't updated for months. 17:17:27 yeah 17:19:04 fizzie seems idle, but i believe he keeps comprehensive private logs 17:21:52 <\oren\> how much loging could he posibly be doing? 17:21:56 fizzie: can you search your logs for the date b_jonas discussed the chameleon problem? 17:22:10 -!- otterbot has quit (Remote host closed the connection). 17:22:16 \oren\: well all of #esoteric, since he idles here... 17:22:27 oerjan: if it was really important, I could crawl the logs too, but I don't feel like it's important now 17:22:45 heaven knows, I've downloaded larger irc logs for stuff like this (years of #haskell logs once) 17:24:27 -!- otherbot has joined. 17:24:44 -!- otherbot has changed nick to otterbot. 17:26:49 otterly ridiculous 17:27:07 oerjan: what 17:27:37 <\oren\> otterbot: help 17:27:44 jeffl35: your bot seems a bit fishy. 17:28:27 <\oren\> fungot? 17:28:27 \oren\: what's the macro?' 17:28:59 fungot knows all, but can only describe it confusingly. 17:29:00 oerjan: where are those made? trying to find procedures in scheme that would make valid brainfuck code from a forth compiler 17:29:01 <\oren\> fungot: the macro is #define if if(0)if 17:29:01 \oren\: and threads is bad?" 17:29:18 <\oren\> veyr bad 17:29:35 oerjan: lol 17:29:36 fungot: you seem unusually succinct today 17:29:36 oerjan: i'm not opposing object-oriented thinking as such 17:31:18 oerjan: 2016-07-11 in my time zone. 17:32:25 yay 17:32:32 http://tunes.org/~nef/logs/esoteric/16.07.11 17:32:38 #define if if(0)if // now that's evil 17:33:02 i like it 17:43:23 <\oren\> #define if if(rand()&1)if 17:44:02 b_jonas: is the expected number of steps independent of strategy regardless of star... oh, it'll have to be. 17:44:44 because otherwise you could change the expectation for the usual starting position by adjusting when you get to the other position 17:45:27 so it's a function of current state. 17:48:01 (my idea here is that by assuming the conclusion, we can find the function explicitly, and then use it to prove the conclusion.) 17:48:19 hmm, the lambdabot vps actually crashed, 40 minutes uptime now. 17:48:51 but I'm happy that it came back by itself :) 17:54:46 -!- TuxCrafting has joined. 17:54:52 Hello 18:02:37 -!- zzo38 has quit (Remote host closed the connection). 18:04:51 -!- oerjan has quit (Quit: Later). 18:07:58 -!- trn has quit (K-Lined). 18:15:21 oerjan: yes, for any starting position the expected number of remaining steps is independent of the strategy 18:34:09 -!- TuxCrafting has quit (Quit: Page closed). 18:46:06 -!- Zarutian has joined. 18:49:26 -!- DHeadshot has quit (Ping timeout: 250 seconds). 18:51:42 wouldn't if(1){}else if be better than if(0)if? 18:55:13 -!- otterbot has changed nick to otterbot_. 18:55:24 -!- otterbot_ has changed nick to otterbot. 18:55:39 int-e: that wouldn't mess up elses, would it? 18:55:49 -!- moonythedwarf has changed nick to moony. 19:00:45 I made it to mornington crescent! \o/ 19:00:51 `? logical induction 19:00:55 logical induction? ¯\(°​_o)/¯ 19:01:05 lol 19:01:14 `? /hackenv/bin/? 19:01:15 ​/hackenv/bin/?? ¯\(°​_o)/¯ 19:01:21 `` which ? 19:01:23 ​/hackenv/bin/? 19:01:28 darn 19:01:34 they *fixed it* :( 19:09:01 -!- PinealGlandOptic has joined. 19:12:48 -!- otterbot has quit (Remote host closed the connection). 19:29:46 -!- moony has changed nick to jbot-42. 19:29:50 -!- jbot-42 has changed nick to moony. 19:34:12 -!- hppavilion[1] has joined. 19:39:46 (sorry about that) 19:40:15 -!- otterbot has joined. 19:42:13 -!- `^_^v has quit (Ping timeout: 248 seconds). 19:43:24 -!- `^_^v has joined. 19:51:18 -!- otterbot has quit (Quit: Quit requested by jeffl35: update ircbot.js). 19:51:44 -!- otherbot has joined. 19:52:53 -!- otherbot has changed nick to otterbot. 19:53:53 -!- otterbot has quit (Client Quit). 19:54:21 -!- otherbot has joined. 19:55:07 -!- otherbot has changed nick to otterbot. 19:58:21 -!- `^_^v has quit (Quit: This computer has gone to sleep). 20:02:14 -!- hppavilion[1] has quit (Ping timeout: 250 seconds). 20:06:02 -!- hppavilion[1] has joined. 20:12:29 hey 20:12:32 i need help 20:12:56 to test a thing 20:13:19 what's an example of a program that reads input and processes it and prints something out? 20:13:27 it must be simple to write 20:13:39 but not too trivial so the compiler can't just optimize the whole thing away to a cat program 20:14:22 Is there a proper name for f(a, b) = 1-(1-a)*(1-b), where 0 ≤ a, b ≤ 1 ? 20:15:12 i'll go with rot13 20:17:22 <\oren\> how about sort 20:17:25 <\oren\> or grep 20:17:45 <\oren\> or rainbow 20:17:51 what's rainbow? 20:18:11 <\oren\> `` rainbow <<<"this is rainbow" 20:18:18 ​this is rainbow 20:18:47 `paste bin/rainbow 20:18:48 http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/bin/rainbow 20:19:01 well that wasn't helpful 20:19:11 It's the probability of either of two things happening. 20:19:16 <\oren\> it's written in C anyway 20:19:17 Well, independent things, I guess? 20:19:28 `cat bin/pikhqbow 20:19:29 ​ELF............>.....d@.....@.......°..........@.8..@.........@.......@.@.....@.@.....À.......À................. ...........@......@............................................@.......@.....4......4........ ............8......8`.....8`.....H......X........ ...........P......P`.....P`.....à.......à.............. .. 20:19:32 fuck 20:19:46 <\oren\> `ls tmp/orenbow.c 20:19:47 ls: cannot access tmp/orenbow.c: No such file or directory 20:19:57 <\oren\> `ls tmp/pikhqbow.c 20:19:58 ls: cannot access tmp/pikhqbow.c: No such file or directory 20:20:11 Alas. It's probably in the logs somewhere, but I'unno. 20:20:38 `` find -name '*pikhq*' 20:20:42 is it just printing ^C and a random color before each letter? 20:20:50 ​./bin/pikhqbow \ ./.hg/store/data/bin/pikhqbow.i \ ./.hg/store/data/src/pikhqbow.c.i \ ./src/pikhqbow.c 20:20:52 s/color/number/ 20:21:00 `cat src/pikhqbow.c 20:21:01 ​#include \ #include \ #include \ int main(){wint_t c;int a=0;setlocale(LC_ALL,"C.UTF-8");b:c=fgetwc(stdin);if(c==EOF) return 0;printf("\x03%d%lc%s",(int[]){4,8,9,11,12,13}[a],c,c==L','?"\x0f":"",c);if(++a==6)a=0;goto b;} 20:21:10 I remember that now. 20:21:16 so glad astyle exists 20:21:20 <\oren\> `ls src/orenbow.c 20:21:20 src/orenbow.c 20:21:25 <\oren\> `cat src/orenbow.c 20:21:26 ​#include \ int main(){printf("\e[1m");int a,c=0;b:a=getchar();if(a==EOF)return 0;if(!(a&128)||(a&64))printf("\e[%dm","\37! $\"#"[c]),c=c+1-6*(c>4);putchar(a);goto b;} 20:21:42 <\oren\> mine was shorter but crazier 20:21:43 wait what 20:21:49 those are terminal colors 20:21:53 <\oren\> yes 20:21:56 not irc colors 20:22:01 <\oren\> yes 20:22:04 Yes, most IRC clients accept both mIRC and ANSI color escapes. 20:22:06 ah i see, pikhq's are irc 20:22:18 i thought the server stripped terminal escapes 20:22:25 <\oren\> nope 20:22:40 No, they're treated as equally valid to mIRC color escapes. 20:22:55 good to know 20:38:38 -!- hppavilion[1] has quit (Ping timeout: 250 seconds). 20:40:40 -!- MoALTz has quit (Quit: Leaving). 20:47:17 -!- hppavilion[1] has joined. 20:57:26 <\oren\> [31mtesting[1m 20:57:31 <\oren\> yep 21:00:26 <\oren\> [91mtest two[1m will it work? 21:00:55 <\oren\> [91m testing testing 1 2 3 21:01:30 <\oren\> seems the basic ansi escapes only work, the 9x and 10x colors don't 21:01:42 Oh my 21:01:51 my terminal has flashing elfs 21:02:36 <\oren\> [31;1mbut I think this will work 21:02:38 <\oren\> yep 21:03:26 <\oren\> how about this 21:04:03 <\oren\> test 21:05:18 ^Itest 21:05:20 <\oren\> ab 21:05:25 <\oren\> ab 21:05:29 I think you get those at an ^Optician 21:05:35 I've translated Tie-Dye into Deutsch: Zim Farbstoff 21:06:22 (But I did it by interpreting Tie as 'TIE'- as in Star wars- expanded it into "Twin Ion Engine", translated each word, taking the first letters, forming an acronym, and putting it before German for "Dye") 21:06:40 <\oren\> [1Ftest 21:06:55 <\oren\> [1Etest 21:08:12 <\oren\> [3mtest 21:08:18 <\oren\> [35mtest 21:08:24 <\oren\> [5mtest 21:08:31 <\oren\> [6mtest 21:08:39 <\oren\> [7mtest 21:08:46 <\oren\> [9mtest 21:08:57 <\oren\> [11mtest 21:09:00 <\oren\> [14mtest 21:09:07 <\oren\> [20mtest 21:09:24 <\oren\> [2mtest 21:10:00 <\oren\> [107mtest 21:10:05 <\oren\> [47mtest 21:10:12 <\oren\> [97mtest 21:10:15 <\oren\> [95mtest 21:12:07 <\oren\> [38;2;100;200;50mtest 21:12:15 <\oren\> [38;5;100mtest 21:12:34 <\oren\> ok, done with that crap 21:20:16 -!- otterbot has quit (Remote host closed the connection). 21:20:52 -!- Froox has joined. 21:22:38 -!- otherbot has joined. 21:22:39 -!- otherbot has quit (Changing host). 21:22:39 -!- otherbot has joined. 21:22:46 <\oren\> It seems that GNU unifont never actually had width correctness as a goal 21:22:46 -!- otherbot has quit (Remote host closed the connection). 21:23:06 -!- otherbot has joined. 21:23:24 -!- Frooxius has quit (Ping timeout: 260 seconds). 21:23:55 <\oren\> they intended to have each character take up 8 x 16 or 16 x 16 pixels, but never had an intent to make the widths correct outside of the typical repertory used in terminal applicatiobs 21:25:57 <\oren\> I see some bugs and discussions about particular characters where someone complained that the width was wrong and they fixed it, but no intent to have the problem completely eliminated 21:26:50 Nearly all natural languages have words for color, but do any have words for discussing gradients in an elegant, uniform way? 21:28:01 -!- otherbot has quit (Quit: Caught SIGINT). 21:28:36 \oren\: Well that's just braindamaged. 21:28:40 Well, for terminal use, at least. 21:29:03 -!- otherbot has joined. 21:29:31 * Zarutian does not like proportional font that make 1 I | and l indisguishable 21:29:39 fonts* 21:31:08 -!- Froo has joined. 21:31:18 Limit average of a function: avg_(s -> e) f(x) = lim_(k -> 0) amean({f(x) : x \in [s, e], k | x}) 21:31:54 -!- Froox has quit (Ping timeout: 268 seconds). 21:33:17 <\oren\> pikhq: yeah, I'm trying to figure out who to email to tell them how brain damaged it is 21:35:56 -!- hppavilion[1] has quit (Ping timeout: 260 seconds). 21:36:55 <\oren\> hmm, I guess I can try the mailing list unifont at gnu org? 21:37:08 -!- Froo has quit (Ping timeout: 250 seconds). 21:37:22 -!- Frooxius has joined. 21:38:48 "So who do you envision using your terminal-incompatible fixed width font?" 21:40:19 -!- DHeadshot has joined. 21:40:51 <\oren\> using that 21:40:57 <\oren\> excellent 21:46:42 <\oren\> Hopefully, I can anger them enough that they will fix the problem 21:47:44 <\oren\> "If this is the intended behaviour, who do you envision using your terminal-incompatible fixed width font?" 21:48:12 <\oren\> "I ask because from the look of things, many, many characters have been drawn in full width 16 x 16 pixels, when they have narrow wcwidth, and terminals display them in one 8 x 16 character space. This leads to an unacceptable appearance, with characters either overlapping, (in xterm and similar terminals) or being squashed horizontally (in PIEtty)." 21:50:27 -!- Froox has joined. 21:52:52 -!- Frooxius has quit (Ping timeout: 268 seconds). 22:00:12 [wiki] [[Esoteric programming language]] M https://esolangs.org/w/index.php?diff=49929&oldid=47084 * Dlosc * (+0) Fixed GolfScript link 22:11:06 -!- Froox has quit (Quit: *bubbles away*). 22:11:26 -!- Frooxius has joined. 22:12:53 -!- AnotherTest has quit (Quit: ZNC - http://znc.in). 22:21:48 -!- PocketKiller has changed nick to DeadPerson. 22:26:16 I'm dead 22:27:40 * Zarutian duly issues an death certificate. 22:43:28 <\oren\> yeah I still don't knwo whose ass I have to kick to get the people behind unifont to take notice 22:45:12 [wiki] [[EsoInterpreters]] https://esolangs.org/w/index.php?diff=49930&oldid=49720 * Nthern * (-2253) Removed BCL 22:48:39 -!- moonythedwarf_ has joined. 23:10:25 -!- moony has quit (Disconnected by services). 23:10:27 -!- moonythedwarf_ has changed nick to moony. 23:10:52 -!- ubuntu has joined. 23:11:15 -!- ubuntu has changed nick to Guest17008. 23:12:16 -!- Zarutian has quit (Quit: Zarutian). 23:20:07 [wiki] [[Special:Log/newusers]] create * Furozo * New user account 23:21:26 -!- Cale has quit (Remote host closed the connection). 23:26:00 -!- boily has joined. 23:27:09 -!- oerjan has joined. 23:27:33 @tell quintopia QUINTHELLOPIA. i have the paper thing to go fetch the thing at the place to fetch things. tomorrow night it will be fetched. 23:27:33 Consider it noted. 23:27:37 hellørjan! 23:28:07 helloily! 23:28:49 <\oren\> コンボアリハ 23:29:12 boily: darn this destroys my theory that you and quintopia are living in different realities only connected via internet 23:29:20 oerjan: 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 EFnet or DALnet.) 23:29:27 (which, admittedly, i just made up.) 23:29:59 `` welcome shachaf | zalgo | rainwords 23:30:02 ​s̀ͥh̢̀a̡̙c̨̚h̡ͣä̦f͇̙:̓ͧ ̸͌W̸͞e̫̦l̵͈c̩̰o͍҉m͙͋e͈͈ ̴͑t̓̄o̘͔ ̣̆t͕̟hͮͨe̷̢ ͤ͝i̞̹n͖͑t͑͜ḛ͇r̄̒ń̜å͞t̓͝i̔͡ơ̮nͯͣa̸̧l̪̓ ͏ͤh̅͞u̒̚b̔ͨ ̸̜f̙̿ȏ͔rͧ͟ ͇̾è̗s̄̊o͉̔t͙̆ȩ͕r̷͔ì̭c͐͘ ̜҉p̘͠r̛̙o͊͑g͋̄r̻ͣá͜m̍̿m̩͆įͣ 23:30:22 <\oren\> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 23:30:25 that was maybe a little too much to hope for 23:30:45 <\oren\> `` orenbow <<<"AAAAAAAAAAAAAAAAAAAAAAAAAA" 23:30:47 ​[1m[31mA[33mA[32mA[36mA[34mA[35mA[31mA[33mA[32mA[36mA[34mA[35mA[31mA[33mA[32mA[36mA[34mA[35mA[31mA[33mA[32mA[36mA[34mA[35mA[31mA[33mA[32m 23:31:00 `doag bin/orenbow 23:31:02 2016-09-25 revert 58b9ee8f97a7 \ 2016-09-25 ` rm --no-preserve-root -rfv / # testing, plz no ban \ 2016-07-05 <\oren\> ` gcc src/orenbow.c -o bin/orenbow \ 2016-07-05 ` gcc src/orenbow.c -Os -s -o bin/orenbow \ 2016-07-05 ` gcc src/orenbow.c -Os -g -o bin/orenbow \ 2016-07-05 ` gcc src/orenbow.c -Os 23:31:24 `rainbow AAAAAAAAAAAAAAAAAAAAAAAAA 23:31:25 ​AAAAAAAAAAAAAAAAAAAAAAAAA 23:31:39 \oren\: you seem redundant tdnh 23:32:05 <\oren\> oerjan: well they differ 23:32:12 -!- wob_jonas has joined. 23:32:19 <\oren\> the rainbow command does 23:32:29 <\oren\> `` cat src/pikhqbow.c 23:32:29 ​#include \ #include \ #include \ int main(){wint_t c;int a=0;setlocale(LC_ALL,"C.UTF-8");b:c=fgetwc(stdin);if(c==EOF) return 0;printf("\x03%d%lc%s",(int[]){4,8,9,11,12,13}[a],c,c==L','?"\x0f":"",c);if(++a==6)a=0;goto b;} 23:32:35 <\oren\> `` cat src/orenbow.c 23:32:36 ​#include \ int main(){printf("\e[1m");int a,c=0;b:a=getchar();if(a==EOF)return 0;if(!(a&128)||(a&64))printf("\e[%dm","\37! $\"#"[c]),c=c+1-6*(c>4);putchar(a);goto b;} 23:32:47 `` file bin/rainbow 23:32:48 `file bin/rainbow 23:32:48 bin/rainbow: ASCII text 23:32:48 bin/rainbow: ASCII text 23:32:56 `cat bin/rainbow 23:32:56 print_args_or_input "$@" | pikhqbow 23:32:59 aha 23:33:02 he\\oren\. don't panic, this is #esoteric. the worse that can happen to you is an unshackled fungot bent on sentiencing you. 23:33:02 boily: not that the code it's connected to all of this... if i had to write a 23:33:26 oerjan: we're also postally connected hth 23:33:38 hellochaf. 23:33:38 \oren\: they seemed to give identical output on that input, anyway. 23:33:55 oerjan: except you missed one A hth 23:34:00 <\oren\> oerjan: the output differs invisibly 23:34:14 \oren\: I think it would be worth to put a selection of the hangul characters in a new section in the main demo page of your font http://www.orenwatson.be/fontdemo.htm , 23:34:20 hm let's check for unicode 23:34:28 if a program strips off irc colors from a message, would it be called rainstern? 23:34:35 `rainbow hallå i'm ørjan 23:34:36 ​hallå i'm ørjan 23:34:54 `` orenbow <<<'hallå i'm ørjan' 23:34:55 ​/hackenv/bin/`: eval: line 4: unexpected EOF while looking for matching `'' \ /hackenv/bin/`: eval: line 5: syntax error: unexpected end of file 23:35:04 <\oren\> you need to use "" hth 23:35:04 `` orenbow <<<"hallå i'm ørjan" 23:35:05 ​[1m[31mh[33ma[32ml[36ml[34må[35m [31mi[33m'[32mm[36m [34mø[35mr[31mj[33ma[32mn[36m 23:35:18 still no visible difference 23:35:22 specifically for each of initial, medial, final, and for each size the jamo in that place can have in your font, choose a nice representative of the rest of the character that results in that size, and put a sequence of hangul where you change that part to all values and keep the rest fixed. 23:35:55 that would demonstrate how hangul look in your font in a similar way the sequences of all characters demonstrates it for other scripts, but without showing too many characters. 23:36:12 `` mv bin/orenbow{,.raw}; mkx 'bin/orenbow//print_args_or_input "$@" | orenbow' 23:36:14 bin/orenbow 23:36:20 oops 23:36:30 \oren\: does what I said make sense/ 23:36:37 `sled bin/orenbow//s/$/.raw/ 23:36:39 bin/orenbow//print_args_or_input "$@" | orenbow.raw 23:36:41 <\oren\> wob_jonas: yeah I can do that 23:36:48 thanks 23:36:54 `orenbow hallå i'm ørjan 23:36:55 ​[1m[31mh[33ma[32ml[36ml[34må[35m [31mi[33m'[32mm[36m [34mø[35mr[31mj[33ma[32mn[36m 23:37:20 (I'm still sort of proud of that font because of the early feedback I gave, and admire it for the large amount of characters it has.) 23:37:22 there's a way of doing that inline but it only works for scripts. 23:37:40 <\oren\> `` orenbow AAAAA >tmp/aaaaa 23:37:43 No output. 23:38:04 <\oren\> `` rainbow AAAAA | diff - tmp/aaaaa 23:38:06 1c1 \ < AAAAA \ --- \ > [1m[31mA[33mA[32mA[36mA[34mA[35m 23:38:25 <\oren\> `` orenbow AAAAA >tmp/aaaaa; rainbow AAAAA | diff - tmp/aaaaa 23:38:26 1c1 \ < AAAAA \ --- \ > [1m[31mA[33mA[32mA[36mA[34mA[35m 23:38:43 -!- hppavilion[1] has joined. 23:38:46 why are you polluting tmp/ tdnh 23:38:48 `` ls /tmp 23:38:49 No output. 23:38:58 Me? 23:39:08 Not everything is about you. 23:39:18 But that PDF talking about parallel sum was pretty good. 23:39:19 <\oren\> shachaf: tmp hgets deleteted after every qery anywa 23:39:29 shachaf: I was polluting tmp/ the other day and I thought you might have noticed 23:39:33 /tmp does. tmp/ doesn't, which is the point of tmp/. 23:39:51 <\oren\> shachaf: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa 23:39:58 (Well, I was putting things in tmp/ the other day, at least) 23:39:59 if a program strips off irc colors from a message, would it be called rainstern? 23:40:02 <\oren\> whyyyyyyyyyyyyyyyyyy 23:40:09 `` ls tmp 23:40:10 1padfile \ ${$1}padfile \ aaaaa \ args \ at \ foo \ fruit \ linetest \ sh \ spline \ spout \ tempcmd \ testcmd \ tmp_jonas \ wdiff \ wegians 23:40:23 thanks, i was wondering what the word for a ship's front was the other day 23:40:39 oerjan: https://en.wikipedia.org/wiki/List_of_ship_directions 23:40:41 hth 23:40:45 <\oren\> `` rainbow A | od 23:40:45 0000000 032003 001501 005070 \ 0000006 23:40:51 <\oren\> `` rainbow A | od -c 23:40:51 0000000 003 4 A 003 8 \n \ 0000006 23:40:57 <\oren\> `` orenbow A | od -c 23:40:57 0000000 033 [ 1 m 033 [ 3 1 m A 033 [ 3 3 m \n \ 0000020 23:41:05 <\oren\> that's the diference 23:41:06 oerjan: seems that ships naturally live in 20-dimensional space hth 23:41:50 <\oren\> `` orenbow AAAAA | od -c 23:41:50 0000000 033 [ 1 m 033 [ 3 1 m A 033 [ 3 3 m A \ 0000020 033 [ 3 2 m A 033 [ 3 6 m A 033 [ 3 4 \ 0000040 m A 033 [ 3 5 m \n \ 0000050 23:41:56 <\oren\> `` rainbow AAAAA | od -c 23:41:57 0000000 003 4 A 003 8 A 003 9 A 003 1 1 A 003 1 2 \ 0000020 A 003 1 3 \n \ 0000025 23:42:04 List of ship directions: {slash, lesbian, het, threesome}, {competitive, romance, tragic, impossible} 23:42:05 Etc. 23:42:16 bow (or stem): front of a ship (opposite of "stern")[1] 23:42:31 Are "stern" and "stem" really opposites? 23:42:38 <\oren\> bow, port, stern, starboard 23:42:38 stem and stern is just begging for serious keming problems. 23:42:50 front, back, writing hand, other hand. 23:42:52 boily: keming being the opposite of kerning 23:43:40 shachaf: Yes. Prates hate kerning 23:43:52 Wait, whoops 23:44:02 I accidentally switched to Dvorak for some reason 23:44:02 shachaf: figures 23:44:07 boily: yes, and "starboard" is called like that because "board" and "port" sounds too similar so they added a random syllable to one of them 23:44:11 *Pṙates hate kerning 23:44:25 Did you learn about parallel sum yet? 23:44:43 (The joke, for the Unicode challenged, is that the 'r' has a combining dot above to look vaguely like an 'ir') 23:44:57 You parallel-add fractions by adding the denominators after establishing a common numerator. 23:45:00 (It doesn't do it very well, but it was the only kerning joke I could find in the word 'Pirates') 23:45:06 Oooh, fancy 23:45:19 hppavilion[1]: is that really a combining dot, rather than a precomposed character? I can't see the difference from sight. 23:45:27 a/b : a/c = a/(b+c) 23:45:28 wob_jonas: Yes, it is 23:45:40 shachaf: :? (+). 23:45:53 wob_jonas: really? 23:45:55 : is parallel sum. a:b = 1/(1/a + 1/b) 23:46:00 <\oren\> https://i.reddituploads.com/5bd3f1bf2f094941ba73d76063331293?fit=max&h=1536&w=1536&s=f20f29280bc95eba374db96d96762c82 23:46:08 I feel I should make a quick fraction-reducer (etc) program 23:46:19 <\oren\> HAM DECLARES STATE OF EMERGENCY 23:46:20 a/c : b/c = (a:b)/c 23:46:23 That allows you to find gcds, lcms, reduce fractions, etc. 23:46:26 \oren\: Wait, really? 23:46:33 boily: well, it would show up as a precomposed character if such is in the font regardless of how you encode it. I could examine the bytes that went through irc, but I'm lazy. 23:46:35 Is this a joke or was it terrorists? 23:46:53 Ah, Hati. 23:46:55 I see. 23:47:04 Terrific kerning. 23:47:11 <\oren\> HAITI -> HAM 23:47:16 I saw 23:48:23 but even if there's no precomposed character in this font (which is quite possible, r with a dot is one of those practically nonexistant characters that's added to unicode for some rarely written african languages or rarely used transcription modes of asian languages), I wouldn't be able to tell from sight whether it's a precomposed glyph in the fo 23:48:23 nt or one synthetized right now 23:48:27 shachaf: Wait, do you parallel-add the denominators after finding a common numerator or just normal-add? 23:49:12 You said "add", but then- oh, I see 23:49:18 I see what happened, that was different math 23:50:05 wob_jonas: Probably because they're identical in most fonts 23:50:55 I'm pretty sure that combining diacritics can be automatically placed by default, but that common ones can be overridden to use a more aesthetically-pleasing one (which will usually be identical to a builtin one) 23:51:17 I don't know, look at the PDF. 23:52:23 "In high school algebra, parallel sums occur in the computation of completion times when activities are run in parallel. If pump A can fill a reservoir in a hours and pump B can fill the same reservoir in b hours, then running the two pumps simultaneously will fill the reservoir in a:b hours." 23:52:54 shachaf: OK, what PDF? I only see one PDF- or any link at all- from you in my scrollback, and it definitely isn't the one you're reading 23:54:22 http://www.ellerman.org/wp-content/uploads/2012/12/IntellectualTrespassingBook.pdf 23:54:32 shachaf: ...wait, really? That's it? 23:54:45 That's the one I found, and it didn't really look like it was what you found 23:54:46 But OK 23:55:48 I think it's chapter 10. 23:55:59 But you can use the search functionality of your PDF reader. 23:56:15 * hppavilion[1] . o O ( Are there any easy-to-teach by-hand algorithms for harmonic sum? Like the write-the-numbers, add-columns, carry method for (serial) sum ) 23:56:42 In other news, my younger sister was apparently never taught long division. They wanted her to use it for school and she had no clue what they meant. 23:56:47 So I'll have to teach her that. 23:56:57 What you should do is invent a way to construct the rationals or something that uses parallel sum instead of regular sum. 23:57:00 (Unless #esoteric has a strategy that is just OBJECTIVELY better) 23:57:16 Well, the trouble is, you can't define parallel sum on the integers. 23:57:21 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 23:57:30 So you have to start with an algebraic structure of some sort that has parallel sum defined. 23:57:34 But that's not so bad. 23:57:52 shachaf: You mean like Peano arithmetic, but with parallel/harmonic successor (which is presumably equal to x(+)1) 23:57:59 Well, not Peano. 23:58:14 Anyway, the other issue is that parallel sum doesn't have an identity. 23:58:18 shachaf: Not Peano, but similar, with the successor function 23:58:20 Or rather that its identity is infinity. 23:58:32 Ah, yes, that would be a problem 23:58:50 But you can extend the positive reals with 0 on one side and infinity on the other side, as outlined in that PDF. 23:58:57 (Maybe you'd just have to define infinity with "There's a value called infinity because fuck you that's why") 23:58:59 And it more or less works, very symmetrical and all. 23:59:11 But 0 * infinity is undefined. 23:59:19 (But division by zero is fine.) 23:59:29 I think?