00:04:52 -!- DHeadshot has quit (Ping timeout: 260 seconds). 00:06:52 -!- augur has quit (Quit: Leaving...). 00:11:08 -!- moony has joined. 00:13:20 -!- News has quit (Ping timeout: 260 seconds). 00:22:08 -!- otherbot has quit (Quit: Restart requested by jeffl35: irc framework had a bug, uh oh). 00:22:26 -!- otherbot has joined. 00:22:42 hello 00:22:49 `relcome godel 00:22:51 can I ask what do you think about my language? 00:22:54 https://github.com/gciruelos/quiver 00:22:54 ​godel: 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.) 00:23:57 I like the language. it feels zucchinesque. 00:24:27 zucchinii is a language? 00:24:33 what does zucchiniesque even mean? 00:25:28 oh cool 00:25:40 I'm reading, programs are graphs too 00:25:44 but the idea is different 00:26:57 godel: this is news to you? 00:27:38 what? 00:27:50 I'm not very involved in the esolang community 00:28:27 wob_jonas: wob_jellonas. it's like auberginy languages, that one is zucchinesque hth 00:29:29 godel: no in general. That programs are Directed Graphs. You never seen a flowchart of a program? 00:34:16 -!- moony has quit (Ping timeout: 260 seconds). 00:36:44 * Zarutian is somewhat proud to have made an dual stack machine variant that has only one primitive branch instruction, no add or other such ALU instructions. 00:42:48 -!- iovoid has quit (Excess Flood). 00:43:01 -!- alercah has quit (Quit: Lost terminal). 00:43:10 Wait, is she actually trying to shake hands in http://www.questionablecontent.net/view.php?comic=528 ? Early Hannelore is out of character. 00:44:34 -!- iovoid has joined. 00:51:13 demand a full refund 00:54:16 Zarutian: well yes 00:56:33 -!- imode has joined. 01:00:58 -!- iovoid has quit (Quit: Iovoid has quit!). 01:02:06 -!- iovoid has joined. 01:17:04 -!- Zarutian has quit (Quit: Zarutian). 01:25:23 `? peer gynt 01:25:23 peer gynt? ¯\(°​_o)/¯ 01:25:31 `? peer 01:25:33 Peer Gynt is a famous norwegian troll. His reviews are in high demand, but nowadays he amuses himself by resetting people's irc connections. 01:26:01 boily: the lack of capitalization there was sort of intentional, to match the irc error. 01:26:32 also you forgot norwegian, you wile francophone 01:27:00 `slwd peer//s/no/No/ 01:27:02 wisdom/peer//Peer Gynt is a famous Norwegian troll. His reviews are in high demand, but nowadays he amuses himself by resetting people's irc connections. 01:27:33 capitalizing languages is weird hth 01:27:42 (well, technically norwegian doesn't do it either) 01:28:05 s/.*es/english/ 01:29:13 -!- iovoid has quit (Remote host closed the connection). 01:29:33 English is the universal weirdness we make sense with. 01:29:54 no I don't make sense 01:30:22 german otoh doesn't capitalize the word for norwegian, but does capitalize the word for language hth 01:30:37 -!- iovoid has joined. 01:31:01 which makes perfect sense 01:31:09 to germans, yes 01:31:22 which i am :p 01:32:13 schockierend 01:32:22 outragé 01:32:24 gar nicht 01:33:13 wow outragé is genuine 01:34:17 oh outrage isn't from out+rage at all 01:34:29 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 01:34:43 "From Middle English and Old French oltrage ‎(“excess”), from Late Latin *ultragium or *ultraticum ("a going beyond") and from Latin ultra ‎(“beyond”); rather than from out and rage." 01:37:17 of course it's genuine. for whom do you take me for, tsé :P 01:47:44 . o O ( what is that hideous cacophony that appeared in the wisdom... ) 01:48:08 which one? 01:51:54 `` ls wisdom/*cacophony* 01:51:55 wisdom/the most hideous cacophony in g minor 01:52:01 ↑ this one. 01:52:12 it's also refered in at least one another entry... 01:52:16 `? music 01:52:17 The result was a short burst of the most hideous cacophony in G minor. 01:52:25 ↑ that one too, apparently. 01:56:42 `unidecode 🀤 01:56:43 ​[U+1F024 MAHJONG TILE BAMBOO] 01:57:07 * boily sighs in latexasperation... 01:57:16 iovoid: hey, I saw your VoidLang page on the wiki. using your language, how would you form an if-else construct? 02:08:17 Hm, my Viginere implementation returns incorrect output when the keychar and msgchar are the same 02:08:26 `unidecode 02:08:27 ​[U+0020 SPACE] 02:08:29 Hm 02:08:45 It might just be an issue with the IDE 02:10:07 But, like, here's an example: I am the dark lord santacus, and have come to devour your children. => R?u{+q 4rlt? }}q)u|nl:+nwvln?w}xr).or +x.nurx p{7 => I am the dark ord santacus, and have come to devou your childen. 02:10:12 (keyword used was "walrus") 02:14:00 It is using the control characters ^L and ^R instead of the proper "l" and "r" in a few cases, it look like to me? 02:14:13 is it feasible to write poetry shorter than haiku? 02:14:44 define poetry and shorter 02:15:32 boily: oh. the cacophony one was a douglas adams reference hth 02:15:59 poetry: congealed poet juice on a slice of paper. 02:16:30 shorter: that which shorts electrical circuits. 02:16:36 oerjan: tdh. 02:16:48 well, in this case "hello world" is shorter poetry 02:17:53 shocking. 02:20:05 hppavilion[1]: so, an off by 96 error? >:) 02:21:31 -!- hppavilion[1] has quit (Ping timeout: 244 seconds). 02:21:42 * oerjan seems to have started trying to solve tatham's Loopy puzzle by only removing lines instead of marking them (except at the end to check the solution) 02:24:27 this is working surprisingly well. but may have some error correcting problems. 02:30:47 -!- hppavilion[1] has joined. 02:33:12 Simple Cyphers: Block Reverse, Block Shift 02:33:54 `` rm wisdom/xkcd\ \(* 02:33:56 No output. 02:33:59 Bah! 02:34:10 `? xkcd 02:34:11 xkcd ([ɪkskɑsede]) is a webcomic that updates every M/W/F. 02:34:22 what was that 02:34:27 `before 02:34:29 wisdom/xkcd ([ɪkskɑsede]) is a webcomic that updates every m//W/F. 02:34:37 oh right 02:34:58 * boily can't learn. 02:35:55 Block Reverse: Key is a positive natural n; works by dividing message into n-length chunks (currently having a problem in deciding what to do when len(msg) % n != 0), reverse each chunk, join the message back together 02:36:09 it has been suggested making two /'s mandatory even with `le/rn 02:36:21 (decrypt is an identical algorithm) 02:36:43 since many of the mixups are now essentially about that 02:37:22 Block Shift: Key is a positive natural n, works by dividing message into n-length chunks (ditto problem), rotating each chunk by n, rejoining 02:37:31 (decrypt is the same but with reversed rotation) 02:38:36 both of them are stupid and in both of them it wouldn't be a problem if the last segment is shorter 02:39:07 also, shifting an n long block by n is basically a nop 02:39:42 myname: Oh, I explained it wrong 02:40:06 I mixed it up in my head 02:40:40 myname: I meant that it has two keys- positive integer n, integer k, it divides into n-length chunks, rotates each by k, and rejoins 02:40:42 My mistake 02:41:33 you can break both of them in seconds 02:41:39 myname: Well yeah 02:42:31 myname: It's not to be used on its own except against particularly dull human decypherers and as an educational tool 02:43:17 (And it can be done efficiently by hand, so...) 02:43:38 the only way they would somehow make any encryption better by combining is if you are doing security through obscurity 02:43:53 Full reverse (no key): Reverse entire message (pretty shit even by these standards); Full shift: key is integer k, rotate the entire message by k spaces (potentially even worse) 02:43:58 which is not a good idea in almost any case 02:44:03 myname: True, true 02:47:17 myname: Though technically, security through obscurity doesn't violate the word of Kerckhoff's principle 02:47:40 -!- ais523 has quit. 02:47:52 how so 02:48:11 myname: "A cryptosystem should be secure even if everything about the system, except the key, is public knowledge" doesn't mean that you have to voluntarily MAKE the knowledge public 02:48:36 The NSA's cyphers are (in theory) cryptographically secure, but also secret as an extra layer of security 02:49:09 the point is, most people can't do crypto 02:49:23 That is correct but the algorithm should be public if it is to be used by many people or programs or whatever, rather than just a single private communication between only two people. 02:49:26 we had rfid keys here, based on mifare classic 02:49:42 mifare decided to make its own crypto, called crypto1 02:49:56 it has a c implementation nowadays, called crapto1 02:50:23 i am sure you get why it has this name 02:50:31 `unidecode 🐚 02:50:36 U+1F41A SPIRAL SHELL \ UTF-8: f0 9f 90 9a UTF-16BE: d83ddc1a Decimal: 🐚 \ 🐚 \ Category: So (Symbol, Other) \ Bidi: ON (Other Neutrals) 02:50:41 at one point, we could make a key to open every door 02:51:02 Of course, this does mean that almost the only people who will be trying to find flaws will be malicious hackers; publishing it gives genuine, benevolent academics the opportunity to say "yep, this is good" or "hey, if you just give it the key \'admin password\' it cracks automatically", thus preventing you from using an insecure system 02:51:48 myname: None of these cyphers are meant to be used for proper over-the-internet security anyway 02:51:48 ♪ DING ♪ wisdom PDF updated!* 02:51:54 boily: Yaywhere 02:52:00 Use PGP and RSA and such for that. 02:52:13 hppavellon[1]. what's a yaywhere? 02:52:38 boily: It's a type of knapbeast 03:09:04 GURPS rules says that you are allowed to define the same person as being both your dependent and your ally. But can you define the same person to be both your dependent and your enemy? 03:12:30 -!- boily has quit (Quit: DISC CHICKEN). 03:12:56 @ask iovoid how would you creae an if-else construct in VoidLang? very interested. 03:12:57 Consider it noted. 03:13:10 imode, well you could use the if-first-item-is-0-break-loop thing 03:13:10 Like code[?dothingsiffirst-item-is-0]do-other-things 03:14:04 My current implementation in NodeJS doesnt support multiple loops, but I will improve it when I find a good way to do that 03:14:36 right, you can use loops as conditionals. my issue is how would you continue control flow after the "else" clause... 03:14:39 like. 03:15:15 if(tos == 5){push 5;}else{push 6;}push 7; 03:16:36 so if I use [?], the will always be executed. 03:17:37 -!- hppavilion[1] has quit (Ping timeout: 276 seconds). 03:20:13 reason I ask is because I have a language that uses a similar looping construct, and you can construct conditional blocks using [,:?;] 03:20:15 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 03:20:35 but I don't really have a clean way of producing an "else". 03:21:26 reason being, for an "else" you'd have to either check the negation of the condition you've already checked during the first 'if'... 03:21:46 and in order to do that you'll have to step over the potential stack effects earlier or push a flag noting the condition. 03:21:58 so you could do it.. 03:23:23 don't you have like the same problem with bf? 03:23:31 just about. 03:23:37 different loop construct though. 03:23:48 i'd say make a "global" variable that is checked on else 03:24:01 try that with a nested conditional. :\ 03:24:10 [,:? ,0;] [? ;] is a partial solution. 03:24:33 the else clause checks for 0 on the top of the stack. 03:24:43 you don't need nested conditionals to be tc 03:24:56 the goal isn't to be only tc. 03:25:16 if that were the case, then I'd be writing just another brainfuck clone. I'm not. :P 03:44:47 How about an esoteric language that is actually just C 03:45:01 No real differences 03:45:18 * pecan . o O ( C but with APL-style unicode syntax ) 03:47:45 `? segmentation fault 03:47:48 ​ The segmentation fault can be found just of the Silicon Valley and is known to produce various hiccups at the most inconvienent times. 03:47:57 -!- hppavilion[1] has joined. 03:47:57 `? segfault 03:47:58 segfault? ¯\(°​_o)/¯ 03:48:34 A student asks is professor "Professor, where is the best place to research emergent behavior online", and the professor says "Well, you open your browser, go to the search bar, and type literally anything". 03:49:10 oerjan: How's the lawn going btw 03:49:30 needs more moon repellant hth 03:49:32 `rw == 03:49:34 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: rw: not found 03:49:35 :( 03:49:41 `rm wisdom/== 03:49:42 No output. 03:49:46 `before 03:49:48 wisdom/==//Did you know you can define == recursively!? 03:50:00 `cwlprits == 03:50:02 hppavilion[1̈] fizzïe evilips̈e hppavilion[1̈] oerjän zui438̈s 03:50:14 `howg == 03:50:17 rm wisdom/== \ revert 942e964c81c1 \ ` chmod 777 / -R \ le/rn ==/Did you know you can define == recursively!? \ revert 4969 \ echo \\r\\n\\t\\0\\0\\0 > wisdom//./== 03:50:35 fancy 03:50:42 cwlprits? 03:50:58 Who named that command? 03:51:15 i may have done so 03:51:41 `culprits bin/cwlprits 03:51:43 fizzïe jeffl3̈5 shachäf 03:51:49 hm nope, was shachaf 03:51:55 `hoag bin/cwlprits 03:51:57 revert 58b9ee8f97a7 \ ` rm --no-preserve-root -rfv / # testing, plz no ban \ mkx bin/cwlprits//culprits "wisdom/$1" 03:52:27 Woooow 03:52:29 I just found http://www.robertecker.com/hp/research/leet-converter.php?lang=en 03:52:34 And it's terrible 03:52:53 hppavilion[1]: `rw doesn't exist because it's redundant with `forget hth 03:52:58 Oooooh 03:53:06 It leeterally just decoded '1337' to 'ieet' 03:53:30 @leet fancy 03:53:30 F4n(Y 03:53:54 hppavilion[1]: Lol 03:54:07 `? 1337 03:54:08 1337 15 50 905 03:54:18 I can't figure out 9 03:54:33 I feel like it should be 'g', but 'gos' means nothing to me 03:54:35 hppavilion[1]: It decodes 1 as l if you switch it into advanced leet 03:54:39 But it's probably a pun' 03:55:15 For some reason it does braille and stuff too 03:55:26 Yeah 03:55:53 Of course, truee programmers can only speak in 0x539 03:55:55 *true 03:56:16 48656c6c6f2c202365736f7465726963 03:56:37 hppavilion[1]: i think i made that i don't remember if it means anything hth 03:56:47 `cwlprits 1337 03:56:49 fizzïe evilips̈e oerjän 03:56:55 *+and 03:57:02 1337 must have been quite the year 03:57:34 The Chinese famine ended 03:58:21 had the black death started yet? 03:58:43 No, that was 1346 03:59:02 Oh, I guess 1346 is when it started peaking, so maybe 04:00:25 "Nestorian graves dating to 1338–1339 near Lake Issyk Kul in Kyrgyzstan have inscriptions referring to plague and are thought by many epidemiologists to mark the outbreak of the epidemic" 04:00:29 FreeFull: The Qinese famine ended because it doesn't count as starving if you die from the black death hth 04:01:38 hppavilion[1]: Also as people die, there are fewer people to eat the remaining food 04:01:49 FreeFull: Yes, that's true as well 04:03:30 * oerjan wonders how the poles managed to avoid it 04:03:53 oerjan: What, the Chinese famine? 04:04:12 this picture https://en.wikipedia.org/wiki/Black_Death 04:04:29 a big polish patch never got red 04:04:31 Black Polish magic 04:04:37 iceland is easier to understand 04:04:54 "The plague was somewhat less common in parts of Europe that had smaller trade relations with their neighbours, including the Kingdom of Poland, the majority of the Basque Country, isolated parts of Belgium and the Netherlands, and isolated alpine villages throughout the continent." 04:04:59 Less movement of people, it seems 04:05:21 i guess that still leaves milan 04:05:40 oerjan: They had been visiting Stockholm and didn't want to leave; they died with the rest of the Stockholmers 04:05:53 OKAY 04:06:00 (Stockholmits? Stockholmians? Stockholmosexuals?) 04:06:21 cool! [ ;] [,:?. ,~;] [~? ;] 04:06:28 imode: wat? 04:06:39 hppavilion[1]: just made an "if-else" in my language. 04:06:44 been thinking about it all day. 04:06:56 imode: What is the language like? 04:07:11 Did you implement it in the compiler or is it somehow implemented? 04:07:22 stack-based. no direct jumps. compiler/interpreter is partially implemented. 04:07:34 32 commands. 04:08:25 includes function definitions, conditionals, arbitrary-base numbers... etc. 04:08:50 There's no reason why a plague like that couldn't happen, other than increased hygiene and such 04:09:37 all single-character commands. it's quite fun to write in. easy to write down in a notebook, on paper... 04:10:04 -!- Moony has joined. 04:10:50 -!- Moony has changed nick to Guest93629. 04:13:21 http://pastebin.com/dp21tvWU 04:21:47 I think I might've just broken the record for 'weirdest cryptographic test string' 04:21:57 I used: "I am the dark lord santacus, and have come to devour your children. Bow before my unholy wrath, or be consumed with your offspring. And remember kids: He who fights monsters should be careful, lest he become a monster himself; and when you gaze long into an abyss, the abyss may gaze into you." 04:29:28 -!- Kaynato has quit (Ping timeout: 260 seconds). 04:31:07 -!- Kaynato has joined. 04:31:46 FreeFull: I guess that is a good thing about famines, that they tend to solve themselves over time 04:35:32 -!- Kaynato has quit (Ping timeout: 260 seconds). 04:39:45 `? handout 1 04:39:46 handout 1? ¯\(°​_o)/¯ 04:39:50 `? page 17 04:39:51 page 17? ¯\(°​_o)/¯ 04:39:53 `? adventure 04:39:54 You're in a 20 foot by 20 foot stone room. A stout oaken door banded with iron affords the only visible egress. As you approach the door, an imp appears. "Hello, INSERT NAME. To pass, you must solve my puzzle. SEE HANDOUT 1 ON PAGE 17." 04:40:02 I kind of want to see `? adventure expanded 04:40:18 Maybe create the adventure/ directory? 04:41:29 `cwlprits adventure 04:41:30 fizzïe evilips̈e b_jonäs 04:42:18 hppavilion[1]: it's a quote from this http://www.irregularwebcomic.net/984.html 04:42:28 Oh? 04:44:58 `slwd segmentation fault//s/can be found/is/ 04:45:00 wisdom/segmentation fault// The segmentation fault is just of the Silicon Valley and is known to produce various hiccups at the most inconvienent times. 04:45:08 hmph 04:46:04 `cwlprits segementation ault 04:46:07 No output. 04:46:07 `slwd segmentation fault//s/ // 04:46:09 wisdom/segmentation fault//The segmentation fault is just of the Silicon Valley and is known to produce various hiccups at the most inconvienent times. 04:46:13 `cwlprits segementation fault 04:46:15 No output. 04:46:31 shachaf: have you considered copying and pasting twh hth 04:46:54 oerjan: oops widdnh 04:46:56 `cwlprits segmentation fault 04:46:58 oerjän oerjän Zarutiän 04:48:01 `cat bin/slashlearn 04:48:01 sep="/"; [[ "$0" == *//* ]] && sep="//"; [[ "$1" == ?*"$sep"* ]] || exit 1; key="$(echo "${1%%$sep*}" | lowercase)"; value="${1#*$sep}"; [ -e "wisdom/$key" ] && verb="Relearned" || verb="Learned"; echo "$value" > "$(echo-p "wisdom/$key")" && echo "$verb '$key': $value" 04:48:50 it feels so crude to drop a sed into that. 04:49:21 but i'm at the point where i just want to chop [ /]* off the start of value. 04:49:36 just fail if it starts with a space 04:49:54 that way people can feel bad for violating arbitrary rules they didn't know about 04:49:57 well the thing is i'm not good enough with shell to do that. 04:50:21 `? le/rn 04:50:22 le/rn? ¯\(°​_o)/¯ 04:50:30 `? le//rn 04:50:31 le//rn? ¯\(°​_o)/¯ 04:50:34 `cwlprits le/rn 04:50:35 fizzïe evilips̈e shachäf shachäf 04:50:36 `? slashlearn 04:50:37 slashlearn? ¯\(°​_o)/¯ 04:50:48 `` dowg le/rn | tac 04:50:50 2015-06-07 ` rm wisdom/le; mkdir wisdom/le; echo \'le/rn makes creating wisdom entries manually a thing of the past\' > wisdom/le/rn \ 2015-06-07 ` sed -i \'s/$/./\' wisdom/le/rn \ 2016-09-25 ` chmod 777 / -R \ 2016-09-25 revert 942e964c81c1 04:50:58 reversed dowg ought to exist 04:51:08 i've considered it. 04:51:36 you know, i think maybe that's my fault. 04:51:40 `cat bin/? 04:51:41 ​#!/bin/bash \ topic=$(echo "$1" | lowercase | sed "s/noo\+dl/nooodl/;s/ *$//;s,\(\(..\?\)\?/\)*,,") \ topic1=$(echo "$topic" | sed "s/s$//") \ cd wisdom \ if [ \( "_$topic1"_ = "_ngevd"_ \) -a \( -e ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "$topic" ]; \ then cat "$topic" | rnooodl; \ elif [ -e "$topic1" ]; \ then cat 04:51:47 also a version of dowg that filters out evilips̈e and 942e964c81c1 04:52:35 `before bin/? 04:52:39 bin/?//#!/bin/bash \ topic=$(echo "$1" | lowercase | sed "s/noo\+dl/nooodl/;s/ *$//") \ topic1=$(echo "$topic" | sed "s/s$//") \ cd wisdom \ if [ \( "_$topic1"_ = "_ngevd"_ \) -a \( -e ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "$topic" ]; \ then cat "$topic" | rnooodl; \ elif [ -e "$topic1" ]; \ then cat "$topic1" | rnooo 04:53:21 `now bin/? 04:53:24 bin/?//#!/bin/bash \ topic=$(echo "$1" | lowercase | sed "s/noo\+dl/nooodl/;s/ *$//;s,\(\(..\?\)\?/\)*,,") \ topic1=$(echo "$topic" | sed "s/s$//") \ cd wisdom \ if [ \( "_$topic1"_ = "_ngevd"_ \) -a \( -e ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "$topic" ]; \ then cat "$topic" | rnooodl; \ elif [ -e "$topic1" ]; \ then 04:53:33 `` mkx "`before 'bin/?'`" 04:53:40 bin/? 04:53:44 ff 04:53:52 -!- otherbot has quit (Remote host closed the connection). 04:53:53 `before bin/? 04:53:56 bin/?//#!/bin/bash \ topic=$(echo "$1" | lowercase | sed "s/noo\+dl/nooodl/;s/ *$//;s,\(\(..\?\)\?/\)*,,") \ topic1=$(echo "$topic" | sed "s/s$//") \ cd wisdom \ if [ \( "_$topic1"_ = "_ngevd"_ \) -a \( -e ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "$topic" ]; \ then cat "$topic" | rnooodl; \ elif [ -e "$topic1" ]; \ then 04:53:58 you're pleased with yourself, aren't you 04:54:01 `cat bin/? 04:54:01 ​#!/bin/bash \ topic=$(echo "$1" | lowercase | sed "s/noo\+dl/nooodl/;s/ *$//") \ topic1=$(echo "$topic" | sed "s/s$//") \ cd wisdom \ if [ \( "_$topic1"_ = "_ngevd"_ \) -a \( -e ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "$topic" ]; \ then cat "$topic" | rnooodl; \ elif [ -e "$topic1" ]; \ then cat "$topic1" | rnooodl; 04:54:07 -!- otherbot has joined. 04:54:19 shachaf: i guess. 04:54:24 -!- zgrep has left. 04:54:28 `? le/rn 04:54:29 le/rn makes creating wisdom entries manually a thing of the past. 04:55:49 I meant about the mkx/before combination 04:56:10 i know. 04:56:10 Which is unfortunately not perfect. 04:56:17 why not? 04:56:36 For example, if a file contains \0, the command line is truncated. 04:56:41 OKAY 04:56:50 i don't think this file did hth 04:56:52 (So it won't work for binary files usually.) 04:56:56 And you need to explicitly choose between mk and mkx. 04:57:26 So a per-file revert might be a useful feature. 04:59:33 `` cd bin; for f in doa dow hoa how; do mkx "${f}t//${f}g "'"$@"'" | tac"; done 04:59:36 doat \ dowt \ hoat \ howt 04:59:58 `doat le/rn 05:00:00 2015-06-05 ` mkdir le; ln -s ../bin/learn le/rn \ 2015-06-05 ` rm le/rn; ls -s ../bin/slashlearn le/rn \ 2015-06-05 ` ln -s ../bin/slashlearn le/rn 05:00:10 `dowt le/rn 05:00:11 2015-06-07 ` rm wisdom/le; mkdir wisdom/le; echo \'le/rn makes creating wisdom entries manually a thing of the past\' > wisdom/le/rn \ 2015-06-07 ` sed -i \'s/$/./\' wisdom/le/rn \ 2016-09-25 ` chmod 777 / -R \ 2016-09-25 revert 942e964c81c1 05:00:39 hth 05:03:38 `` cd bin; for f in doa dow hoa how; do culprits bin/${f}t; done 05:03:43 No output. 05:04:00 `` cd bin; for f in doa dow hoa how; do culprits "bin/${f}t"; done 05:04:05 No output. 05:04:07 hm... 05:04:17 `` for f in doa dow hoa how; do culprits "bin/${f}t"; done 05:04:26 oerjän \ oerjän \ oerjän \ oerjän 05:04:56 `? hoag 05:04:57 hoag? ¯\(°​_o)/¯ 05:05:03 `? hog 05:05:03 hog? ¯\(°​_o)/¯ 05:05:11 na 05:07:40 `danddreclist 84 05:07:41 danddreclist 84: shachaf nooodl boily \ http://zzo38computer.org/dnd/recording/level20.tex 05:13:57 @tell zarutian `le/rn does not use a space after the / hth 05:13:57 Consider it noted. 05:14:08 `? chargeback 05:14:09 ​ The backside of an Coloumb. 05:14:17 `forget chargeback 05:14:20 Forget what? 05:18:34 `? isomorphism 05:18:35 isomorphism is isomorphic to Phantom_Hoover up to isomorphism. 05:18:44 `slwd isomorphism//s/i/I/ 05:18:46 wisdom/isomorphism//Isomorphism is isomorphic to Phantom_Hoover up to isomorphism. 05:18:53 `doat isomorphism 05:18:54 No output. 05:19:00 `dowt isomorphism 05:19:02 2013-05-31 learn isomorphism is isomorphic to Phantom_Hoover up to isomorphism. \ 2013-07-31 for x in wisdom/*; do rev "$x" > "$x"a; mv "$x"a "$x"; done \ 2013-07-31 revert \ 2014-03-16 revert 1 \ 2014-03-16 revert \ 2016-09-25 ` chmod 777 / -R \ 2016-09-25 revert 942e96 05:19:33 `dowg fisdom 05:19:34 2016-09-25 revert 942e964c81c1 \ 2016-09-25 ` chmod 777 / -R \ 2015-08-13 revert accbc9c5c7ec \ 2015-08-12 echo wisdom/* | shuf | head -n 10 | xargs rm \ 2015-08-03 learn fisdom is the domination by the federal inspection station. \ 2015-08-03 learn fisdom is the domination by the f 05:19:55 `slwd fisdom//s/f/F/ 05:19:59 wisdom/fisdom//Fisdom is the domination by the federal inspection station. 05:20:50 `? sand 05:20:52 Sand is what microprocessors are made of. Taneb invented it. 05:20:58 `? tanebvention 05:21:02 Tanebventions include automatic squirrel feeders, necessity, Go, submarine jousting, Fueue, the universe, special relativity, metar, weetoflakes, persistence, the BBC, _46bit, progress, sanity, the Oxford comma, and this sentence. See also tanebventions: math. He never invents anything involving sex. 05:21:28 `slwd tanebvention//s/persi/sand, persi/ 05:21:31 wisdom/tanebvention//Tanebventions include automatic squirrel feeders, necessity, Go, submarine jousting, Fueue, the universe, special relativity, metar, weetoflakes, sand, persistence, the BBC, _46bit, progress, sanity, the Oxford comma, and this sentence. See also tanebventions: math. He never invents anything involving sex. 05:21:55 `dowg sand 05:21:56 2016-10-22 slwd sand//s/GregorR/Taneb/ \ 2016-09-25 revert 942e964c81c1 \ 2016-09-25 ` chmod 777 / -R \ 2016-03-14 learn Sand is what microprocessors are made of. GregorR invented it. 05:22:06 I played the Dungeons&Dragons game. I suggested using the properties of some molecules that will be different when mirrored, but another player thinks this mirror does not work at the molecular level. 05:22:17 oh hm 05:24:44 `? grey 05:24:45 Grey is a common misspelling of Gey 05:24:53 `dowg grey 05:24:54 2016-09-25 revert 942e964c81c1 \ 2016-09-25 ` chmod 777 / -R \ 2016-05-31 le/rn Grey/Grey is a common misspelling of Gey 05:24:56 `? gray 05:24:57 Gray is e common misspalling of grey. 05:25:02 My character looked at the broken mirror and it still worked, and a duplicate of him appeared. That can be an advantage and a disadvantage; one thing it can cause is that now he can handle the shards safely. I did also think of other things to try, such as to see if it duplicates summoned creatures (my character can summon a dove or a raven, but nothing else). 05:25:29 I thought Gray was the Google death ray 05:25:57 `? gey 05:25:58 I know nothing about Gey, sir. 05:26:06 `dowg gey 05:26:08 2016-09-25 revert 942e964c81c1 \ 2016-09-25 ` chmod 777 / -R \ 2016-05-31 le/rn Gey/I know nothing about Gey, sir. 05:26:23 my memory, it is going... 05:51:58 Trying to figure out the Python IRC library... 05:52:27 -!- esoadventure has joined. 05:52:48 Yay! 05:52:55 That part worked! 05:53:01 -!- esoadventure has quit (Read error: Connection reset by peer). 05:55:21 Huh, a friend of mine has a cat named Isis (after the god; named before the terrorists were a problem) 05:55:29 She was very confused during the debate 05:58:56 the cat or your friend? 06:00:59 The debate. 06:01:27 oerjan: The cat. The friend is a dude 06:02:04 * hppavilion[1] . o O ( ^ s/has/is/ ) 06:05:09 . o O ( TOO LATE ) 06:08:47 -!- advbot has joined. 06:09:00 walrus 06:09:34 Hm... 06:09:48 -!- advbot has quit (Read error: Connection reset by peer). 06:10:20 -!- advbot has joined. 06:10:28 Walrus 06:10:37 Kvalross 06:12:25 -!- advbot has quit (Read error: Connection reset by peer). 06:12:41 oerjan: It's my test for advbot :P 06:12:43 -!- advbot has joined. 06:12:48 Kvalross 06:12:54 Nothing? 06:12:56 Sadface 06:13:02 -!- advbot has quit (Read error: Connection reset by peer). 06:13:10 Kvifor ikkje 06:13:14 (This should be being logged) 06:19:59 -!- advbot has joined. 06:20:03 advbot: Hi 06:21:01 :/ 06:21:05 -!- advbot has quit (Read error: Connection reset by peer). 06:21:58 maybe test your bot in #esoteric-blah twh 06:22:43 proposal: there must be a minimum ratio of comments/lines for a software to be called open source 06:23:10 i'm not sure exactly what it is but it must be at least 1% 06:23:22 what's your take on this? 06:24:30 i'm browsing through a repo on github with some very non obvious code and there's no comment at all 06:24:33 this is frustrating 06:24:42 -!- advbot has joined. 06:28:23 I think it depends on the code 06:28:39 ok 06:28:44 What program is it anyways? 06:29:33 https://github.com/skarnet/execline/blob/master/src/libexecline/el_parse.c basically any file in this repo 06:30:48 What line number? 06:31:13 any? 06:31:19 n > 1 06:32:25 and i even tried to do my homework but git blame didn't help at all and neither did git log 06:33:07 what are you trying to figure out? 06:33:13 i don't know 06:34:35 "hey let's look at how execline parses stuff" and there's a huge table of binary data in it 06:34:56 imho that doesn't qualify as open source 06:36:38 Eh, it's just an explicit FSM. Quite plausibly manually written. 06:36:51 yeah ok 06:37:01 Bit of work figuring out the exact state machine in question, but really not that bad. 06:37:32 if you don't count the /* ISC license. */ comments, there are 24 comments in 4100+ lines 06:37:56 And it's helped out by each state being a bit mask describing the actions taken for each given state. 06:38:07 @param x an int 06:38:07 Not enough privileges 06:38:11 @param y an int 06:38:20 Could use some commenting, granted, but this really is not super deep and impenetrable. 06:38:57 (probably the comment most merited is one describing the FSM's transitions) 06:39:11 The GPL says: « “source code” for a work means the preferred form of the work for making modifications to it.» 06:39:33 Yeah... 06:39:46 doesn't say whose preference 06:39:57 Per the GPL a binary file would count as "source code" if you literally wrote the thing with a hex editor. 06:40:16 Right, which it probably should. 06:41:08 For a sufficiently short program it seems that you might do, and then it should not be too difficult to figure out either if you do intend to change it. 06:42:02 But if the program is short you also might just rewrite it anyways if you need to make a change, which might be easier anyways; understanding the code is different to modifying it. 06:44:56 In that file el_parse.c I probably would have included a comment above line 12 so that you might more easily to see which character of which class. 06:59:03 http://www.geekherocomic.com/2009/02/11/everything-is-open-source-actually/index.html 07:19:22 so, I'm thinking of offering free computer repair and education at my local library. how bad of an idea do you think that is. 07:20:21 don't see anybody doing it around the area for less than $80/hr. 07:20:56 a sound business plan 07:21:20 I'm already in a position of "fuck you". it might be fun. 07:29:35 -!- alercah has joined. 07:43:48 -!- PinealGlandOptic has joined. 07:54:19 imode: how so? 07:59:13 -!- Lymia has quit (Quit: Hugs~ <3). 08:08:19 -!- Lymia has joined. 08:15:07 I think I discovered a new problem with the ontological argument! 08:20:15 go on? 08:22:01 This argument is irrefutable: http://agreatercourage.blogspot.com/2011/11/argumentum-ornithologicum.html 08:24:41 nortti: Basically, the assumptions themselves aren't self-evident and can be counterargued 08:24:47 shachaf: us scandinavians find that argument a bit fugly hth 08:25:11 Specifically, it's that you can reasonably reject "Something that exists is better than the same thing that doesn't exist" 08:25:16 i can't even count to ten thus god exists 08:26:16 hppavilion[1]: what makes you believe that is new criticism? out of interest 08:26:17 Example: The harry potter books are great. However, if any of that stuff actually happened, it'd be sad and have mass death involved. I conclude that Harry Potter is better on paper than in the real world. 08:26:28 nortti: I haven't seen it before, so... 08:26:38 hppavilion[1]: right now I'm financially set for a long, long time, and nobody offers free computer repair around the area... so I figure offering a public service might be nice. 08:27:06 imode: You wouldn't happen to be Elon Musk or something, would you? 08:27:20 nope, just a guy who's worked enough. 08:27:46 free computer repair and education are something sorely lacking. 08:27:55 oerjan: the rhythm doesn't translate to norwegian very well. the argument is much better scanned in avian hth 08:28:06 imode: Does 'financially set' include disasters, like cancer or getting in a nasty car accident and needing extensive long-term medical care? 08:28:14 imode: It's a noble cause, sure 08:28:29 shachaf: ba dum tss 08:28:40 hppavilion[1]: currently unemployed by choice and living off of funds from a couple years of working in tech. 08:29:18 imode: Well, my econ isn't very good 08:29:44 imode: But if it's practical, then it's a noble enough cause that I say go for it 08:29:52 I worry about liability. 08:30:00 imode: Oh? 08:30:08 probably need some form of disclaimer or insurance. 08:30:17 Ah, yes 08:30:29 imode: To be clear, you are *qualified* to repair computers, correct? 08:31:04 been a system administrator for 8 years. was a software engineer prior. hardware engineer even more prior. 08:31:15 just grab a wrench and you're qualified for computer repair 08:31:47 back then I reflowed boards, sold custom addons and carts. 08:31:59 these days it's easy. 08:32:28 imode: You're qualified. Even if you screw up, you're still doing it for free, so... 08:32:44 http://www.electronicproducts.com/Hardware/Components/These_stock_images_of_people_39_fixing_39_computers_are_so_wrong_they_ll_give_you_physical_pain.aspx 08:32:55 true. 08:33:04 if I wanted to make money I'd charge a flat rate of $10. 08:34:19 computing education is also something that'll be useful. people come in with questions saying "I can't do this" or "How do I do that?" or "how does this work?" 08:34:38 at best I'm experienced. at worst I'm a relay for google. 08:34:52 computing education will end up in ms office support 08:35:03 done that before. 08:35:15 it always ends with me printing a reference sheet. I never hear from them again. 08:35:23 apart from the occasional thanks. 08:36:06 -!- godel has quit (Ping timeout: 244 seconds). 08:41:09 `cwlprits ascii 08:41:15 fizzïe evilips̈e int-̈e ais52̈3 oerjän ellioẗt shachäf 08:46:33 -!- augur has joined. 08:50:26 -!- imode has quit (Ping timeout: 256 seconds). 08:51:24 -!- otherbot has quit (Remote host closed the connection). 08:51:58 ...oh my god 08:52:13 The addition to http://esolangs.org/wiki/Brainfuck did absolutely NOTHING 08:54:46 [wiki] [[Special:Log/move]] move * Hppavilion1 * moved [[D2]] to [[User:TuxCrafting/D2]]: Page is literally 2 sentences with a link for another braining BF derivative. Insufficient for its own page. 09:09:29 -!- oerjan has quit (Quit: *Sigh*). 09:44:32 -!- Lymia has quit (Ping timeout: 260 seconds). 09:49:07 -!- Lymia has joined. 09:49:50 https://en.wikipedia.org/wiki/User:Oddmartian2/Wikipedia!_the_Musical is... a thing... that exists 10:01:55 -!- hppavilion[1] has quit (Ping timeout: 276 seconds). 10:01:57 -!- advbot has quit (Ping timeout: 265 seconds). 10:45:09 -!- Phantom_Hoover has joined. 11:27:19 `? torus 11:27:20 Topologically, a torus is just a torus. Taneb invented it so he'd have something to drink his coffee out of. 11:27:33 Fun fact: I only drink my coffee out of a torus 11:29:38 <\oren\> I have a mug with a different homotopy group 11:30:23 <\oren\> specifically, the second homotopy group 11:30:34 <\oren\> a pity that the second hole is in the bottom 11:30:50 Second fun fact: I only drink coffee out of a sphere 11:31:01 -!- Zarutian has joined. 11:31:38 -!- Zarutian has quit (Read error: Connection reset by peer). 11:32:18 -!- Zarutian has joined. 11:44:17 -!- augur has quit (Read error: Connection reset by peer). 11:44:44 -!- augur has joined. 12:45:43 -!- AnotherTest has joined. 12:59:30 07:29  https://github.com/skarnet/execline/blob/master/src/libexecline/el_parse.c  basically any file in this repo 12:59:34 Oh my gosh. 12:59:39 That reminds me of that one NES emulator 12:59:58 which one? 12:59:58 -!- boily has joined. 13:00:02 http://bisqwit.iki.fi/jutut/kuvat/programming_examples/nesemu1/nesemu1.cc /* Decode address operand */ 13:00:51 UHMMM 13:01:49 What part of "#define t(s,code) { enum { i=o8m & (s[o8]>90 ? (130+" (),-089<>?BCFGHJLSVWZ[^hlmnxy|}"[s[o8]-94]) : (s[o8]-" (("[s[o8]/39])) }; if(i) { code; } }" don't you understand, iza?? 13:03:55 actually i can steal some of their tricks 13:04:39 0)o(A8)o(B0)o(B8) 13:04:42 o(C0)o(C8)o(D0)o(D8)o(E0)o(E8)o(F0)o(F8) o(100) 13:04:46 paste fail 13:05:13 o(00)o(08)o(10)o(18)o(20)o(28)o(30)o(38) 13:05:16 o(40)o(48)o(50)o(58)o(60)o(68)o(70)o(78) 13:05:18 o(80)o(88)o(90)o(98)o(A0)o(A8)o(B0)o(B8) 13:05:20 o(C0)o(C8)o(D0)o(D8)o(E0)o(E8)o(F0)o(F8) o(100) 13:05:22 better 13:05:24 now that's simple 13:06:11 That bit is so strange 13:06:49 Trademarks are owned by their respective owners. Lawyers love tautologies. 13:07:35 You can watch it be "created" live here https://www.youtube.com/watch?v=y71lli8MS8s 13:07:51 they use auto 13:07:54 so this is c++11? 13:08:10 Yeah, there's lots of C++11 features in here 13:08:33 then why do they use enums to ensure compile time evaluation? 13:08:36 there's constexpr 13:08:59 (1:33 is so mesmerising I love it) 13:09:46 izalove: so do some book authors ("Winter is coming" -- really? tell me more!) 13:10:45 is that a small super mario in the title bar? 13:11:11 It is. That's Bisqwit's own DOS text editor 13:16:37 izalove: If that wasn't tautological enough: The same author has written about the next book in that series, "It will be done when it's done." 13:17:11 i need a whole book of these 13:17:41 @google "the book of tautologies" 13:17:43 No Result Found. 13:17:49 (it was worth a shot) 13:17:53 fizzie: fizziello. FUNGOOOOOOOOOOOOOOOOOOOOOOOOOOOOT! 13:27:50 * boily tries to find somebody else to pass off as fungot... 13:29:16 -!- DHeadshot has joined. 13:41:28 `? sand 13:41:35 Sand is what microprocessors are made of. Taneb invented it. 13:41:56 `? fisdom 13:41:57 Fisdom is the domination by the federal inspection station. 13:42:29 `` sed -i 's/fault/Fault' wisdom/segmentation* 13:42:31 sed: -e expression #1, char 13: unterminated `s' command 13:43:31 `` sed -i 's/fault/Fault/' wisdom/segmentation* 13:43:38 No output. 13:44:15 `` sed -i 's/seg/Seg/' wisdom/segmentation* 13:44:17 No output. 13:47:19 `quote 1276 13:47:19 1276) man i just realised esolangs are subject to the inverse wadler's law nobody ever cares about lexical syntax, let alone comments 13:58:00 -!- MoALTz has joined. 13:59:50 -!- bibibi has quit (Ping timeout: 256 seconds). 14:03:02 Hm. Instead of just restarting fungot, I should maybe try to see where it's gotten stuck up. 14:03:29 Because occasionally it just quits when a read fails, but more often it's just unresponsive. 14:04:40 I don't even have gdb installed on the box. :/ 14:06:32 ♪ DING ♪ quotes updated in the PDF! 14:06:45 izalove: izellove! good news! your quote is now formatted! 14:06:59 fizzie: you can gdb fungot??? 14:07:22 You can gdb cfunge, on which a fungot is running. 14:08:01 neat. 14:08:33 Wow, I've even got debugging symbols in here. It seems to be in a blocking sendmsg call in finger_SOCK_receive. 14:09:22 Why is there a sendmsg in receive? 14:09:48 There isn't one in the sources. 14:11:01 That's pretty weird. 14:12:38 There's a "call recv" in finger_SOCK_receive which is what called it, but according to backtrace, execution is in "sendmsg () at ../sysdeps/unix/syscall-template.S:83". 14:13:46 so is it a send, or a recv? 14:14:09 I think I might've just updated the C library (including the libc6-dbg package) since starting fungot for the last time. 14:14:52 Because if I disassemble the libc code, it's at "mov $0x2d,%eax; syscall" and 0x2d == 45 -> sys_recvfrom. 14:15:33 Which makes more sense. Though I'm not sure this helped much -- looks like a recv call that's blocking forever, which is odd. 14:17:25 It's reading from fd 3, and /proc/5746/fd/3 is a socket. 14:18:37 can you artificially write to that socket and see what happens? this looks like a spurious "floating" recv that shouldn't have been called, and is expecting data that will never be. 14:19:13 It's a state-"ESTABLISHED" TCP socket to 193.10.255.100:6667, which I presume is freenode. 14:20:34 That's pretty odd. I would expect that TCP connection to eventually go away if nothing's happening. 14:20:47 freenode.net resolves to 104.24.25.39 from here, and nothing listens on :80 for 193.10.255.100... 14:21:00 I did say :6667, you know. 14:21:07 I wouldn't expect the actual IRC servers to listen to :80. 14:21:27 one never knows! 14:21:45 Anyway, I can't use DNS names with fungot -- 193.10.255.100 is wolfe.freenode.net. 14:23:12 makes sense. 14:24:51 Hmm. I've never thought of it, but I guess it's possible the TCP stack works so that if you only ever read from a socket, the connection can stay forever in 'ESTABLISHED' mode if the other end just forgets about the connection (instead of sending FIN or RST). 14:25:22 -!- DHeadshot has quit (Ping timeout: 244 seconds). 14:25:45 -!- Guest93629 has quit (Ping timeout: 260 seconds). 14:29:48 If I call write() on the socket from GDB, I wonder if that unstucks it. 14:32:36 Hm. call write(3, "PRIVMSG #esoteric :hi\r\n", 23) in gdb returned EFAULT. Maybe it doesn't like string literals. 14:34:15 Everything seems to do that. Strange. 14:34:26 I think I need breakfast to figure this out. 14:39:58 @localtime fizzie 14:40:00 Local time for fizzie is Sun Oct 23 14:39:59 2016 14:40:52 -!- `^_^v has joined. 14:46:47 -!- TuxCrafting has joined. 14:46:50 Hi 14:46:57 Someone is here? 14:47:14 boily: Look, it's Sunday. 14:47:45 `welcome TuxCrafting 14:47:46 TuxCrafting: 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.) 14:49:43 fizzie: a fine time for breakfast. 14:51:48 I'll just try this again once I have the matching version of glibc for the debugging info, it's too confusing otherwise. 14:52:04 -!- fungot has joined. 14:52:16 In the meanwhile, I think I had HackEgo things to try. 14:53:35 -!- TuxCrafting has quit (Quit: Page closed). 14:53:59 fungot: fungellot! 14:54:00 boily: it's just something gregor would have to be?' ' mul?' ' static' with neither rhyme nor reason is a sure sign of unclear thinking, and 14:54:18 -!- TuxCrafting has joined. 14:54:32 -!- PinealGlandOptic has quit (Quit: leaving). 14:57:37 `relcome TuxCrafting 14:57:39 ​TuxCrafting: 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.) 14:59:10 -!- TuxCrafting has left. 14:59:18 -!- TuxCrafting has joined. 15:00:51 `` ls bin/*elcom* 15:00:53 bin/autowelcome \ bin/elcome \ bin/relcome \ bin/rwelcome \ bin/velcome \ bin/welcome \ bin/welcome \ bin/Welcome 15:01:02 `rwelcome TuxCrafting 15:01:03 ​TuxCrafting: 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.) 15:01:13 meh... 15:01:20 `velcome TuxCrafting 15:01:21 TuxCrafting: Velcome to the international hub for esoteric programming language design and deployment! For more information, check out our viki: . (For the other kind of esoterica, try #esoteric on EFnet or DALnet.) 15:01:39 That's a lot of welcome commands 15:02:07 there were more, or less, depending on whom you ask. 15:14:13 @tell oerjan The revert-file-additions thing was more subtle than I thought. 15:14:14 Consider it noted. 15:14:39 @tell oerjan Turns out "hg revert" *does* remove (tracked) files that did not exist in the revision to revert to. The problem is that it *removes* them instead of *deleting* them. 15:14:40 Consider it noted. 15:14:53 @tell oerjan Mercurial has both "deleted" (doesn't exist but is still tracked) and "removed" (doesn't exist and is no longer tracked) states for a file. 15:14:53 Consider it noted. 15:15:17 @tell oerjan As far as I can tell, the transact code wasn't expecting anything to be "removed" (because commands in the sandbox can't), so it only checked for deleted file in the status and never made a commit if the only change was files having been "removed" (like after a `revert of adding a file). 15:15:18 Consider it noted. 15:15:21 -!- Cale has joined. 15:15:42 @tell oerjan So after a `revert of a file addition, the repository was left in an inconsistent state, and the next command that caused a commit inadvertently restored the removed file when it cleaned up the state for the second run. 15:15:43 Consider it noted. 15:16:39 @tell oerjan I think it doesn't hurt to just include removed files in the "commit or not?" check as well, so I'll propose that. 15:16:39 Consider it noted. 15:17:34 (Although I do wonder why it was originally restricted to -umad instead of the default, which does include removals as well.) 15:19:29 @tell oerjan that's a lot of @tell oerjans! 15:19:29 Consider it noted. 15:19:42 indeed 15:20:25 -!- boily has quit (Quit: PARASITE CHICKEN). 15:20:36 > Quit: PARASITE CHICKEN 15:20:36 wat 15:20:38 error: Data constructor not in scope: Quiterror: 15:20:38 Data constructor not in scope: PARASITE :: t0 -> [a]error: Data construc... 15:20:50 Oh 15:20:52 > 1 + 1 15:20:54 2 15:21:40 > 2+2 where let 2+2=5 15:21:42 :1:5: error: parse error on input ‘where’ 15:22:56 > 2+2 where 2+2=5 15:22:58 :1:5: error: parse error on input ‘where’ 15:24:08 > let 2+2=5 in 2+2 15:24:10 5 15:24:13 \o/ 15:28:23 -!- ais523 has joined. 15:35:21 -!- Cale has quit (Remote host closed the connection). 15:47:16 -!- bibibi has joined. 15:47:17 -!- bibibi has quit (Read error: Connection reset by peer). 15:47:34 -!- bibibi has joined. 16:12:32 [wiki] [[Special:Log/newusers]] create * Coates * New user account 16:22:52 [wiki] [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=50033&oldid=50029 * Coates * (+176) Added Coates 16:23:14 [wiki] [[Bitwise Cyclic Tag]] M https://esolangs.org/w/index.php?diff=50034&oldid=43592 * Coates * (+90) Added another interpreter 16:25:28 @help 16:25:29 help . Ask for help for . Try 'list' for all commands 16:25:34 @list 16:25:34 What module? Try @listmodules for some ideas. 16:25:41 @listmodules 16:25:42 activity base bf check compose dice dict djinn dummy elite eval filter free fresh haddock help hoogle instances irc karma localtime metar more oeis offlineRC pl pointful poll pretty quote search 16:25:42 slap source spell system tell ticker todo topic type undo unlambda unmtl version where 16:25:49 @help slap 16:25:49 slap . Slap someone amusingly. 16:25:57 @slap lambdabot 16:25:57 * lambdabot locks up lambdabot in a Monad 16:26:13 @help pretty 16:26:13 pretty . Display haskell code in a pretty-printed manner 16:26:24 @help dice 16:26:25 @dice . Throw random dice. is of the form 3d6+2. 16:26:32 @help unlambda 16:26:32 unlambda . Evaluate an unlambda expression 16:26:40 @help todo 16:26:41 todo. List todo entries 16:26:49 @help poll 16:26:49 poll provides: poll-list poll-show poll-add choice-add vote poll-result poll-close poll-remove 16:26:54 `help 16:26:55 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 16:27:34 `run echo Hi 16:27:45 `echo hi 16:27:46 Hi 16:27:50 hi 16:28:02 `ls 16:28:05 bin \ canary \ cdescs \ emoticons \ esobible \ etc \ evil \ factor \ good \ hw \ ibin \ interps \ karma \ le \ lib \ misle \ out \ paste \ ply-3.8 \ quines \ quotes \ -r * \ share \ src \ tmflry \ tmp \ wdiff-latest.tar.gz \ wisdom \ wisdom.pdf 16:29:02 @slap HackEgo 16:29:02 stop telling me what to do 16:29:06 ಠ_ಠ 16:29:28 haha 16:30:38 `` stat -- '-r *' 16:30:42 ​ File: `-r *' \ Size: 0 Blocks: 0 IO Block: 1024 regular empty file \ Device: 12h/18dInode: 664677 Links: 1 \ Access: (0644/-rw-r--r--) Uid: ( 5000/ UNKNOWN) Gid: ( 0/ UNKNOWN) \ Access: 2016-10-12 00:16:16.000000000 +0000 \ Modify: 2016-10-12 00:16:15.000000000 +0000 \ Change: 2016-10-12 00:16:15.000000000 +00 16:30:59 `` rm -- '-r *' 16:31:07 No output. 16:32:30 @slap @slap 16:32:30 * lambdabot beats up @slap 16:35:41 @tell oerjan btw fyi https://bitbucket.org/GregorR/hackbot/pull-requests/5 hth hand 16:35:41 Consider it noted. 16:35:50 <\oren\> `echo @slap 16:35:53 ​@slap 16:36:06 `echo @slap \oren\ 16:36:08 ​@slap \oren\ 16:36:21 Huh 16:36:54 There's a non-visible character added by HackEgo in front of messages that start with non-letters, to stop that sort of thing. 16:37:00 (Well, mostly to stop botloops.) 16:37:20 `unidecode o> ​@s 16:37:23 ​[U+006F LATIN SMALL LETTER O] [U+003E GREATER-THAN SIGN] [U+0020 SPACE] [U+200B ZERO WIDTH SPACE] [U+0040 COMMERCIAL AT] [U+0073 LATIN SMALL LETTER S] 16:37:42 \u200b, apparently. 16:38:08 [wiki] [[User:Coates]] N https://esolangs.org/w/index.php?oldid=50035 * Coates * (+95) Created page with "Hi there! I am Coates, a young programmer and musician. C is my favourite programming language." 16:38:26 (;´༎ຶД༎ຶ`) unicode 16:38:57 -!- Zarutian has quit (Quit: Zarutian). 16:39:26 > "`echo hi" 16:39:28 "`echo hi" 16:39:37 hmmm 16:39:51 > putStrLn "`echo hi" 16:39:53 16:40:03 ._. 16:40:16 > "hi" 16:40:19 "hi" 16:40:25 > main = putStrLn "hi" 16:40:28 :1:6: error: 16:40:28 parse error on input ‘=’ 16:40:28 Perhaps you need a 'let' in a 'do' block? 16:40:39 oic it's in a do block 16:40:42 @help run 16:40:42 run . You have Haskell, 3 seconds and no IO. Go nuts! 16:41:00 -!- sebbu2 has changed nick to sebbu. 16:41:17 there was this weird function to actually print a string 16:41:33 i can't remember 'cause i never need it 16:41:35 the function to print a string is putStrLn but it don't work :/ 16:41:49 > text "foo" -- didn't this used to work at some point? 16:41:52 foo 16:41:57 At least now there's a space. 16:41:58 aha! 16:42:12 > printString "hi" 16:42:14 error: 16:42:14 Variable not in scope: printString :: [Char] -> t 16:42:21 > text "\hfoo" 16:42:24 :1:8: error: 16:42:24 lexical error in string/character literal at character 'h' 16:42:29 :( 16:42:31 > text "\nfoo" 16:42:33 foo 16:42:36 It doesn't exactly print a string, more like makes a thing that gets outputted without extra quotes. 16:43:17 > show "Hi" 16:43:19 "\"Hi\"" 16:43:27 That's even worse 16:43:31 I'm vaguely considering wrting my own init system 16:43:36 > show$show$show "Hi" 16:43:39 "\"\\\"\\\\\\\"Hi\\\\\\\"\\\"\"" 16:43:50 on the basis that sysvinit is lacking features that most OSes care about nowadays, and most of the others are instane 16:44:17 I probably won't get around to it ever but am nonetheless wondering if people have opinions about it 16:44:17 systemd have some flaws but it work 16:44:22 <\oren\> ais523: that sounds like a great idea 16:44:27 ^ 16:44:44 <\oren\> TuxCrafting: systemd has the problem that it takes over too much 16:44:59 fair enough 16:45:10 I would be hoping to replicate the functionality of systemd (so that it can replace systemd on systemd-based systems) but with a suite of programs, rather than a single init 16:46:04 <\oren\> https://www.youtube.com/watch?v=ifkYccnfmK4 17:01:41 -!- idris-bot has quit (Quit: Terminated). 17:02:36 -!- Melvar has quit (Quit: rebooting). 17:11:46 -!- Melvar has joined. 17:15:41 -!- `^_^v has quit (Quit: This computer has gone to sleep). 17:15:51 -!- Zarutian has joined. 17:16:04 -!- `^_^v has joined. 17:17:00 -!- Zarutian has quit (Read error: Connection reset by peer). 17:17:02 -!- Zarutian has joined. 17:21:44 how do i tell github that i want to search for code that contains foo and not my_foo or foo_x? 17:24:39 -!- Melvar` has joined. 17:25:36 -!- Melvar has quit (Disconnected by services). 17:25:40 -!- Melvar` has changed nick to Melvar. 17:26:12 izalove: I don't know with github specifically, but the normal syntaxes for that include «" foo "», «\bfoo\b», and «\» 17:26:56 " foo " can't work because i want to find foo(...) in code 17:27:06 and github ignores backslashes afaics 17:27:13 and special characters 17:28:47 actually, I have a question on another topic 17:28:52 the use I want for it is insane but there are sane uses too 17:29:39 the question is, suppose someone is behind a NAT; is there something that they can do to allow other people to make inbound connections to them? (It's OK if this requires them to make a specific outbound connection of their own just before, but that outbound connection can't go to the person connecting inbound) 17:30:09 I'm thinking about something on the lines of giving someone else the port that you're using for the return half of a TCP connection 17:30:31 You probably could 17:31:16 certainly if you had kernel access on the machine behind the NAT 17:31:39 usermode would be helpful but I'm willing to accept something that needs kernel powers if necessary 17:32:02 actually no wait, you could do it usermode assuming you're willing to make sacrifices 17:32:11 what sort of sacrifices? 17:32:24 inability (or at least difficulty) to see where the connection originated 17:32:41 oh, I'm OK with that 17:32:42 what you could do is have a relay at a fixed address outside the NAT 17:32:54 and.... oh wait you could just set up a VPN 17:33:11 oh, I want to do this without additional hardware outside the NAT, at least in terms of relaying the connection 17:33:17 ohhh 17:33:22 obviously you can do it using ssh port forwarding 17:33:23 then I don't know if you can 17:33:56 it probably depends on the details of the NAT 17:34:00 yeah 17:34:07 exactly how it handles port opening 17:37:34 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds). 17:40:49 There's a whole terminology related to that sort of thing; the strict/moderate/open terms used by I think some Microsoft things, and full-cone/restricted/port-restricted terms in https://en.wikipedia.org/wiki/Network_address_translation#Methods_of_translation -- they all differ in terms of what sort of incoming packets they accept on the translated port (from everywhere, or from any port on ... 17:40:55 ... the same host as the original destination, or just from the original destination host:port). 17:41:16 In the most open case you can do that sort of thing -- open a connection somewhere, and publish the visible port for anyone else to connect to you. 17:46:02 fizzie: hmm, I'm not sure; I don't think you can listen on the visible port 17:46:11 without closing the previous connection 17:46:44 at least with TCP 17:46:47 let me try this with UDP 17:48:13 ais523: On common consumer routers, you can use UPNP to temporarily request a port forward. 17:51:58 -!- idris-bot has joined. 17:52:28 ais523: you can close the previous connection 17:52:42 but if the router isn't paying attention, that's fine 17:52:48 alercah: the close is visible to the router, does it leave the port assignment around for a while anyway? 17:52:53 the purpose of UDP is that the close wouldn't be visible 17:53:24 probably depends on the router 18:00:11 ugh, these UDP tests are so awkward 18:00:17 because this connection has a ton of packet loss for some reason 18:00:29 and it's hard to tell whether I've done something wrong or whether the packet simply decided not to arrive 18:01:50 -!- ineiros has quit (Read error: Connection reset by peer). 18:11:21 hmm, apparently UPNP+IGDP is sufficiently obscure that Wireshark hasn't heard of it 18:13:32 ais523: That smells, cause... Nearly all consumer routers support it, video game consoles for the past decade have used it, and every BitTorrent client uses it. 18:13:53 yes, I'm wondering if maybe Wireshark has an outdated list 18:14:02 Could be. What version of Wireshark? 18:14:13 2.0.2 18:14:14 -!- Vorpal has joined. 18:14:32 `welcome Vorpal 18:14:41 That's outdated, but not *super* outdated. 18:14:44 Vorpal: 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.) 18:14:45 we could really do with a `welcome-back, I guess 18:17:16 ais523: hi! 18:17:42 I haven't seen you here for a while 18:18:39 ais523: lets see if the rpi running the bouncer is more stable this time around. That RPi managed to corrupt external USB drive file systems several times (even when they were attached to a USB hub with separate power supply) 18:19:15 hmm, this is not really helping out my irrational hatred of IRC bouncers 18:19:24 ais523: why? 18:19:26 even if it's probably the rpi that corrupted the bouncer rather than vice versa 18:19:46 ais523: it managed to corrupt /. Not the bouncer as such 18:21:35 currently I'm asking the channel for help with doing something that could be used for sensible purposes, but my purpose is ridiculous 18:21:45 ais523: I wish I had the sort of rock solid industrial grade computers we use at work. That just run forever assuming there are no software bugs. I have never seen more reliable hardware. 18:21:49 also there's an esolang contest which I should really be working on, I'm going to miss the deadline at this rate 18:21:55 But then they cost about $50k... 18:22:08 (and are not very powerful) 18:22:29 ais523: That's quite possibly true API-wise, but in theory there should be no reason why you couldn't do it. I mean, you can accept several incoming TCP connections on the same port, there's no reason why some of those couldn't be outgoing connections using it as a source port (as long as the protocol-host-port-host-port-5-tuples are unique). 18:22:50 Vorpal: a set of 1000 redundant raspberry pis would be cheaper and possibly even more reliable 18:23:34 ais523: true, but they wouldn't be IP66 and able to handle running salt water at high temperatures 18:23:39 Also not -80 C 18:24:09 Not that I need that part 18:24:46 you could perhaps distribute them geographically, in the hope that they wouldn't all be exposed to boiling salt water and/or liquid nitrogen simultaneously 18:25:19 hah 18:25:31 actually you'd think computers would run better at -80°C as it'd reduce issues with cooling 18:25:32 also would require special software 18:25:47 the world record for overclocking was set with the computer immersed in liquid nitrogen; it still managed to overheat and shut down 18:25:54 but not before they'd managed to boot Windows and verify the clock speed 18:25:57 True, but presumably some components might have issues with the thermal stresses 18:26:02 unfortunately I haven't managed to find the article on it 18:28:38 -!- OriginalOldMan has joined. 18:28:44 -!- imode has joined. 18:28:54 Going to reboot the rpi, installed kernel update on it 18:29:06 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net). 18:31:10 -!- Vorpal has joined. 18:31:33 -!- Vorpal has changed nick to Guest17360. 18:35:01 <\oren\> https://www.youtube.com/watch?v=kunO5ydDxvg 18:36:27 -!- Guest17360 has quit (Changing host). 18:36:27 -!- Guest17360 has joined. 18:36:47 -!- Guest17360 has changed nick to Vorpal. 18:36:55 Wtf was going on there 18:37:07 <\oren\> argh I hate it when I want to show someone a funny video, but it's in japanese and they won't understand a word 18:38:03 if it is a gameshow you dont need translation, they are hillarious those vids. 18:38:15 Had to reset the password hm 18:38:22 ais523: Based on a quick check with socat, as long as you specify SO_REUSEADDR on both sockets, you can connect() somewhere with an automatically bound local port, and subsequently listen on that same port to receive connections. 18:38:27 ais523: I did "socat tcp4-listen:18080 stdout" + "socat stdin tcp4:localhost:18080,reuseaddr" to make one connection, netstat to find the source port for that (37576 in this case), and then "socat tcp4-listen:37576,reuseaddr stdout" + "socat stdin tcp4:localhost:37576", and I now have two independent connections in "opposite directions" sharing the same port. 18:38:32 (Not that there really is a direction once the connection has been established.) 18:39:28 aha, I have to go lower level that netcat, but it's apparently doable 18:39:50 *than 18:40:02 oerjan: duly nodet 18:41:12 -!- augur has quit (Remote host closed the connection). 18:41:40 -!- augur has joined. 18:42:09 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net). 18:42:22 -!- Vorpal has joined. 18:46:01 fizzie: well that doesn't seem to work through my NAT, unfortunately 18:46:10 even though the IPs were the same 18:46:48 -!- augur has quit (Ping timeout: 260 seconds). 18:46:54 ais523: what are you trying to do? 18:47:06 And yes I can imagine a NAT getting confused by this 18:47:35 Vorpal: the ideal answer would be "open a port on the external side of the NAT that arbitrary people can connect to and get a connection to your machine" 18:47:53 variations of that might also be better than nothing, though 18:47:59 ais523: yes, called port forwarding usually, check your router settings 18:48:34 right, I was hoping to do it entirely from the device inside the NAT by somehow fooling it into allowing more through than it should 18:48:44 it seems that there are a ton of protocols designed for this already, though 18:49:48 anyway, this is mostly just out of curiosity, as the use I have for it is fairly ridiculous when much more sensible ones exist 18:50:01 -!- contrapumpkin has joined. 18:50:56 -!- copumpkin has quit (Ping timeout: 244 seconds). 18:51:24 Yes, I don't think many NATs do the "full cone" behavior, at least by default. I don't know if you can even do one with Linux netfilter. 18:51:35 well this configuration file for znc is broken. It has the empty string channel set as sticky rejoin. And I can't fix it without stopping znc and fixing the file myself 18:52:00 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net). 18:53:03 aha, the reason it didn't work is probably that the ephemeral port number on the end of the connection outside the NAT doesn't match the (non-ephemeral) port number used for the original outbound connection 18:53:06 -!- Vorpal has joined. 18:53:06 -!- Vorpal has quit (Changing host). 18:53:06 -!- Vorpal has joined. 18:54:01 ais523: I imagined your proposed solution involved connecting to a third party, which would tell your client what the externally visible source port was, so that it could then advertise that. 18:54:42 fizzie: yes, that's the direction I was experimenting with (I believe the existing implementation of this is called STUN) 18:55:35 I believe STUN's generally for UDP, which is more likely to work. 18:56:12 Oh you are trying to do this for TCP? Good luck 18:56:13 it's primarily for UDP but it has a TCP version too 18:56:29 Vorpal: at this point I don't really care, although I was hoping to use it with HTTP 18:56:40 heh 18:56:48 and HTTP doesn't work well over UDP 18:57:04 ais523: I would suggest just setting up port forwarding in the router instead 18:57:26 Didn't google experiment with HTTP over UDP? 18:57:30 QUICK or something like that 18:57:39 Think it was a 4-letter name though 18:57:43 so QUIC maybe? 18:57:48 QUIC, yes. 18:57:55 It's a little more than "experiment" now. 18:58:00 Ah 18:58:09 fizzie: do you run HTTP/2 over it then I guess? 18:58:09 I would share numbers but they're probably confidential. 18:58:19 Vorpal: the thing is, this isn't really intended for me, I already have a server with a publicly visible IP 18:58:31 ais523: then what is the goal of it? 18:58:58 to let arbitrary people broadcast their terminal sessions over HTTP 18:59:41 heh, viewing only or? 18:59:45 viewing only, yes 18:59:53 I'm not /that/ insane 19:00:12 fizzie: I don't think it's *that* confidential. I mean, QUIC is in the wild, both clients and servers. 19:00:16 ais523: well, there are "remote help" thingies 19:00:26 Well, okay, maybe some of the exact details of the Chrome telemetry are confidential. 19:00:49 pikhq: Yes, I meant things like number of QUIC sessions and so on. 19:00:57 how much better is the performance of quic compared to HTTP/2 over TCP? 19:01:05 At some point in time Google published that, I'm pretty sure. 19:01:18 We might've published a relative number. 19:01:22 ... But, then that'd be the particular publication that wouldn't be confidential. 19:01:50 Vorpal: IIRC, quite notably in cases of packet loss. 19:02:00 Because QUIC isn't subject to head-of-line blocking. 19:02:02 ah 19:02:24 well, probably best to get someone who doesn't work at Google to find the numbers, to avoid the risk of accidentally leaking something they shouldn't 19:02:26 IIRC connection setup is quicker as well? 19:02:37 There's a 0-RTT thing for the connection setup. 19:02:44 Yeah, that's what I thought. 19:02:50 pikhq: oh the http level? ah 19:03:01 on* 19:03:06 Vorpal: On the TCP level. 19:03:13 If you've connected to a server before, and are doing an idempotent request, there's a chance of just being able to start talking without any handshake packets at all. 19:03:28 It's not quite HTTP/2 over QUIC, it's more a protocol related to HTTP/2. 19:03:52 pikhq: wouldn't you still need all the packets to arrive before you can interpret and display the data, (except for video data I guess) 19:04:07 Vorpal: Yes, but you can treat each stream independently. 19:04:16 Fair enough 19:04:19 Yes, *but* you don't need the packets to arrive for independent files on the HTTP session. 19:05:29 really for something HTTP-like, you should just send a packet for each byte range simultaneously 19:05:49 and have the recipient send out requests for the ones it didn't get 19:05:58 you want to have each packet reliably but you don't care about the order you get them in 19:07:27 ais523: Well, that's not quite true. I mean, if you mean the all the subresources -- not all of them are needed before you can start rendering. 19:08:37 Not to mention that you want the client to be able to do flow control instead of filling their pipe; it might be that they want to do two things at a time, and not dedicate all their incoming bandwidth to your site. 19:11:43 HTTP/2 and QUIC both have rather explicit flow-control mechanisms built on WINDOW_UPDATE frames the client can use to essentially specify how many octets the other side is allowed to send before stopping to wait for some acks. 19:12:22 While HTTP/2 is great in a lot of ways, it makes me sad you can no longer test the server using netcat. 19:12:23 s/the client/one side/ 19:12:41 -!- TuxCrafting has quit (Quit: Leaving). 19:13:07 I wonder when browsers will stop supporting HTTP/0.8 19:13:20 0.8? Really? What is that one 19:13:28 0.9 I heard of 19:13:50 maybe I'm thinking of 0.9 19:14:04 but basically it interprets the response as HTML if it doesn't have any headers 19:14:15 ais523: https://groups.google.com/a/chromium.org/forum/#!topic/Blink-dev/OdKnpLlvVUo for Chrome. 19:14:38 "According to our numbers, about 0.01% of HTTP responses are HTTP/0.9 (that count excludes HTTP/2 and QUIC requests). Each week, about 1% of Chrome users see a response that's interpreted as HTTP/0.9. Note that these numbers likely overstate the prevalence of HTTP/0.9. If we get anything from a server in response to an HTTP/1.x request, and it's not HTTP/1.x, then we assume it's HTTP/0.9. ... 19:14:45 ... It could well be we're talking to a broken server, or a non-HTTP server." 19:15:16 Ah 19:15:17 I seem to recall they decided to only drop support of it when talking to non-default ports, because there were some routers that only did HTTP/0.9 on their web config interface. 19:15:39 And it's a rather bad experience if you no longer can use Chrome to configure your router. 19:16:07 https://bugs.chromium.org/p/chromium/issues/detail?id=624462 is actually a more concise summary. 19:16:22 "Revert HTTP/0.9 removal -- This broke compatibility with the Tenda D301 router, --" 19:16:28 oh wow, I just looked up the standard way to make a TCP connection between two computers, both of which is behind a NAT 19:16:34 and it's beautifully stupid 19:16:43 "It turns out that we can't just remove HTTP/0.9 support without breaking the interfaces of at least some home routers (Tenda D301), which we're not currently comfortable doing. So instead, we're going to reduce the cases where it's supported." 19:16:58 fizzie: Hm, I think the major browser vendors together should put pressure on vendors by disabling certain legacy features in a coordinated way. That way they don't need to fear it will cause users to migrate to a different browser 19:17:22 basically you guess which port the other person's NAT is going to assign to the connection, then both of you start the connection simultaneously 19:17:26 Which seems to to be the main reason for why SSL downgrade attacks and such work 19:17:31 Vorpal: TLS version deprecation is I think already happening like that. 19:17:43 -!- `^_^v has quit (Quit: This computer has gone to sleep). 19:17:44 fizzie: really? news to me, but great 19:18:44 Vorpal: At least for some things. Mozilla, Chrome and Firefox coordinated dropping support for RC4, and I think everyone's agreed when to stop accepting SHA-1 certificates as well. 19:19:03 fizzie: you need IE and Safari too 19:19:16 Er, I was going to include IE in the RC4 thing. 19:19:23 "Mozilla and Firefox" didn't really make much sense. 19:19:24 rather than firefox twice? 19:19:26 yeah 19:20:01 hmm, now I'm wondering how many simultaneous outbound connections you can make at once 19:20:21 the idea is very simple: each end of the connection simultaneously tries to connect to /every/ port on the other end (sort-of like a portscan) 19:20:42 hmm, now I'm wondering how many simultaneous outbound connections you can make at once <-- depends on your computer and probably on your NAT 19:20:58 I remember reading that number for my router. Apparently it is something Asus advertises 19:21:03 really we should all be on IPv6, without NAT, but the ISPs aren't cooperating 19:21:06 Probably because it is a "pro-consumer" router 19:21:12 rather than cheap crap 19:21:26 ais523: yeah... why is that? 19:21:50 I don't even know 19:22:28 I'm currently online via a very wireless router (connection to the computers inside the NAT is wireless, connection to the Internet outside the NAT is also wireless, and the thing can run on batteries so it doesn't always even need a power supply) 19:22:41 but it's IPv4 only for some bizarre reason (at least the connection is; I don't know if the router itself knows how to IPv6) 19:23:22 ais523: my router can definitely do IPv6. I can also ssh to it 19:23:26 I'm guessing it's because IPv6 migration would cost money to do (in terms of taking up engineering time etc.), and doesn't immediately increase profits. 19:24:05 My ISP does native IPv6, though. 19:24:10 fizzie: oh? neat 19:24:47 But these are people who give a static /29 subnet of IPv4 addresses to consumer users (who ask) as well, so they're not exactly typical. 19:26:13 Ah 19:26:34 Some of the more mainstream ones in Finland have done IPv6 for the last few years, though. 19:26:39 Hm 19:26:52 huh, I just discovered that my router knows my laptop's hostname 19:26:56 And the trend certainly points up. 19:27:01 I wonder how it determined that, is it a field in DHCP or something? 19:27:03 https://www.google.com/intl/en/ipv6/statistics.html 19:27:09 There is a field for that in DHCP, yes. 19:27:33 12% isn't *too* bad, to be fair. 19:27:43 It's approximately the same as Trump's chances to win, I believe. 19:28:46 fizzie: https://www.google.com/intl/en/ipv6/statistics.html#tab=per-country-ipv6-adoption&tab=per-country-ipv6-adoption is interesting 19:28:51 Sweden is quite behind 19:29:13 I see UK has jumped to 15%, which probably means somebody big here has done the migration since I last looked. 19:29:13 Looks like US and Greece are way ahead 19:29:22 Greece? That is a bit weird 19:30:34 There aren't generally that many "major" ISPs per country, so it's probably rather random as to how many of them do IPv6. 19:30:47 Ah 19:30:52 In the UK, it seems that Sky's doing it, which probably explains the 15% figure. 19:31:06 -!- DHeadshot has joined. 19:31:36 https://corporate.sky.com/media-centre/news-page/2016/sky-completes-roll-out-of-ipv6-becoming-the-first-major-uk-internet-provider-to-future-proof-its-service-for-customers 19:31:43 September 6th, that's very recent. 19:32:09 "Each customer is provided with a /56 prefix, that can support up to 256 networks within the home." That's not too shabby. 19:32:19 yeah, that is reasonable 19:33:05 fizzie: I think SiXXS went overboard with my tunnel. I have a /48. That is silly huge. 19:43:17 Personally I find the "no subnets smaller than /64" thing a little odd. 19:45:47 -!- godel has joined. 19:53:49 fizzie: well, it is due to how the stateless autoconfiguration works 19:54:04 where you basically use the network prefix followed by your MAC 19:57:18 48 bits would've been enough for *that*. 19:59:55 fizzie: not for wifi 20:00:21 I belive wifi uses 64-bit MACs? 20:01:04 hi Vorpal 20:01:17 hi 20:01:56 Is hg the future? 20:02:23 hm? 20:02:26 we'll know when git grows a hg fs backend 20:02:57 "The IEEE has a target lifetime of 100 years for applications using MAC-48 space, but encourages adoption of EUI-64s instead." 20:03:27 fizzie: looks like that is why it is 64 bits 20:04:53 I think I remember seeing a VPS provider giving you a discount for an IPv6-only host. 20:04:58 Maybe not quite yet enough for general-purpose use, but I guess for some more backendy stuff. 20:05:14 would make sense 20:06:56 -!- ineiros has joined. 20:11:27 the /56 is suggested by RFC 6177 (BCP 157) 20:13:53 Seems reasonable as well 20:14:25 A /48 is unreasonably large though I think 20:18:08 good night 20:30:26 -!- clog has quit (Ping timeout: 250 seconds). 20:31:06 -!- Cale has joined. 20:41:20 bye clog 20:41:32 `welcome Cale 20:41:45 Cale: 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.) 20:50:15 hey 20:51:10 ugh, I really need to work on my CALESYTA entry more 20:51:30 I /think/ I've worked out how to write a hello world, at least in terms of what order to write the commands in 20:51:34 but I need a working interp to test 21:09:27 -!- contrapumpkin has changed nick to copumpkin. 21:31:18 -!- hppavilion[1] has joined. 21:39:45 -!- OriginalOldMan has quit (Ping timeout: 260 seconds). 21:45:48 CALESYTA, huh? 21:47:10 -!- hppavilion[1] has quit (Ping timeout: 276 seconds). 21:47:21 -!- Phantom_Hoover has joined. 21:51:01 -!- hppavilion[1] has joined. 21:51:03 `? hppavilion[1] 21:51:05 hppavilion[1] se describe en las notas al pie. ¿Porqué no los dos? Nadie lo sabe. No es tan cluecless. 21:51:13 `? hppavilion1 21:51:15 higgledy piggledy / hp pavilion / doesn't like jokes that are / written in text; // uncontroversially, / one in a million is / roughly the chance they won't / be left perplexed 21:51:18 Hm... 21:51:35 I'm trying to (re)learn piano (with my sister) 21:56:16 -!- hppavilion[1] has quit (Ping timeout: 276 seconds). 22:01:18 -!- hppavilion[1] has joined. 22:01:25 `? metronome 22:01:27 metronome? ¯\(°​_o)/¯ 22:02:36 `learn A metronome is an ancient and highly sophisticated instrument typically used in the player variety in conjunction with another, simpler instrument. hppavilion[1] is learning to play one. Taneb invented parts of it at regular intervals. 22:02:40 Learned 'metronome': A metronome is an ancient and highly sophisticated instrument typically used in the player variety in conjunction with another, simpler instrument. hppavilion[1] is learning to play one. Taneb invented parts of it at regular intervals. 22:07:15 -!- Cale has quit (Read error: Connection reset by peer). 22:09:26 -!- MoALTz has quit (Quit: Leaving). 22:12:21 -!- Frooxius has quit (Quit: *bubbles away*). 22:12:39 -!- Frooxius has joined. 22:21:28 -!- DHeadshot has quit (Ping timeout: 260 seconds). 22:22:55 -!- hppavilion[1] has quit (Ping timeout: 276 seconds). 22:30:43 -!- clog has joined. 22:32:03 -!- augur has joined. 22:34:08 -!- DHeadshot has joined. 22:35:24 -!- AnotherTest has quit (Quit: ZNC - http://znc.in). 22:48:14 -!- iovoid has quit (Remote host closed the connection). 22:48:15 -!- jeffl35 has quit (Remote host closed the connection). 22:51:03 fungot: How do you like it? https://zem.fi/tmp/fungotshirt.jpg 22:51:04 fizzie: 1 cakeprophet: ps ( thread-id 5)) `(begin ( pp ,a) `(pp ,a)) 22:51:19 Speechless, huh? I understand. 22:54:00 fungot must be disgusted looking at fungot innards like that. 22:54:00 shachaf: to prove that ( in scheme) but it would be really, really small initrd that would create an awesome language of their own 22:55:05 -!- hppavilion[1] has joined. 22:56:02 -!- DHeadshot has quit (Ping timeout: 250 seconds). 23:03:16 -!- jeffl35 has joined. 23:07:14 -!- iovoid has joined. 23:09:15 -!- advbot has joined. 23:09:46 -!- advbot has quit (Read error: Connection reset by peer). 23:09:56 Wait, forgot to move to #esoteric-blah 23:41:03 -!- DHeadshot has joined.