00:00:12 <fizzie> 23:29 <fizzie> The rationale, per the man page, is that "wget -O foo ..." is supposed to work like "wget ... > foo", which would also have created/truncated the output file even if it fails.
00:00:20 <fizzie> I might go as far as to call it a scow.
00:00:40 <oerjan> any option to disable it?
00:01:13 <zgrep> oerjan: Hello. What did I mess up now?
00:01:48 <HackEgo> rm: cannot remove `bin/ ': No such file or directory
00:02:13 <oerjan> zgrep: you tried to make "bin/ " about a year ago, but it failed for two different reasons.
00:02:27 <oerjan> so now i removed it, since it's useless.
00:02:45 <zgrep> Past zgrep is a whole other zgrep.
00:02:55 * zgrep doesn't remember that in the slightest
00:02:58 <oerjan> (the first reason is that you can't get ` cmd to work that way, the other is that you messed up quoting)
00:04:03 <zgrep> I wonder, how many esoteric interpreters / compilers are inside HackEgo.
00:04:43 <HackEgo> zgrep: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
00:05:22 <zgrep> ` echo does # this work?
00:05:23 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found
00:05:59 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found
00:06:17 <zgrep> `` ls -1 bin | grep relcome | wc -l
00:06:34 <zgrep> I'm just going to continue being confused then.
00:06:42 <zgrep> Does HackEgo behave weirdly with notices?
00:06:59 <zgrep> Err... oh, wait, I'm not looking at my screen properly.
00:07:02 <zgrep> Maybe I should take a nap.
00:08:38 <oerjan> fizzie: hm a simple workaround would be to drop the commit if the file ends up empty
00:09:27 <oerjan> (once again, tmp/ gets left out :P)
00:13:27 <oerjan> zgrep: shachaf is cheating hth
00:15:10 <oerjan> (possibly you can see it in your client, i cannot)
00:16:11 <juju2143> fizzie: thanks for the help. I also made a musical brainfuck, this should be interesting.
00:20:53 <oerjan> it's between the ` and the space fwiw
00:20:53 <zgrep> Grr. Now I'm going to have to figure this out.
00:21:18 <oerjan> but with my client, even that doesn't help.
00:22:33 * zgrep looks at a 4 column ascii chart
00:22:59 <oerjan> the control codes have special meaning for irc.
00:23:17 <oerjan> ^O is "cancel formatting" or something like that
00:23:36 <fizzie> oerjan: Plausible, but would involve a little interaction with lib/fetch and the transaction logic.
00:23:36 <zgrep> So it is, it seems.
00:24:13 <zgrep> `` which `python -c 'print"\x0f"'`
00:24:24 <zgrep> `` which `python -c 'print"\u200b"'`
00:24:38 <fizzie> oerjan: As it stands, fetch runs under the same transaction logic. (Yes, it fetches the URL twice.)
00:24:42 <HackEgo> [wiki] [[User:Juju2143]] N https://esolangs.org/w/index.php?oldid=50978 * Juju2143 * (+421) Created page with "I'm '''juju2143''' (or '''Juju''', mind the capitals) and I program things. I wrote my first [[Brainfuck]] interpreter in TI-83+ BASIC around 2009 and it keeps happening sinc..."
00:24:53 <oerjan> `` hg cat wisdom/fetch
00:24:54 <HackEgo> wisdom/fetch: no such file in rev 1b9e4e8dbb85
00:24:57 <HackEgo> [wiki] [[User:Juju2143]] M https://esolangs.org/w/index.php?diff=50979&oldid=50978 * Juju2143 * (+1)
00:25:01 <oerjan> `` hg cat wisdom/revert
00:25:01 <HackEgo> wisdom/revert: no such file in rev 1b9e4e8dbb85
00:25:13 <oerjan> `` hg cat wisdom/\`revert
00:25:14 <HackEgo> `revert now works fine. Yay fizzie!
00:25:24 <oerjan> fizzie: you could use that ^
00:26:46 <oerjan> or perhaps whatever the command is for reverting the file back to rep
00:27:04 <oerjan> you could run it inside lib/fetch
00:27:58 <oerjan> and then the transaction logic should recognize that nothing changed, by itself.
00:32:16 <fizzie> I'll do that after the current behaviour turns out to be a problem.
00:33:01 <fizzie> Presumably if you're overwriting a file, and it fails, you're going to just keep trying until it has the contents you want, anyway.
00:33:35 <oerjan> ...will it give an error message, then?
00:33:55 <oerjan> if so, that's probably unlikely to be a problem.
00:33:58 <fizzie> It'll say whatever wget says. So usually an error message of some sort.
00:34:11 <fizzie> It may not be a particularly good error message.
00:38:03 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch [<output-file>] <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
00:38:12 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: source: not found
00:38:15 <HackEgo> Sources for HackEgo can be found at https://bitbucket.org/GregorR/hackbot + https://bitbucket.org/GregorR/multibot + https://bitbucket.org/GregorR/umlbox
00:38:46 <fizzie> There's one really quirky corner case it currently gets wrong, which I'm not going to bother worrying about. (Mostly because I already made the pull request.)
00:38:46 <oerjan> `mkx source//\? source
00:38:54 <fizzie> `fetch tmp/foo https://zem.fi/tmp/home/hackbot/hackbot.hg/multibot_cmds/env/foo
00:38:57 <HackEgo> 2017-02-16 00:38:45 URL:https://zem.fi/tmpfoo [4/4] -> "/home/hackbot/hackbot.hg/multibot_cmds/env/tmp/foo" [1]
00:39:18 <shachaf> fizzie: Can we get access to tmp/ via HTTP somehow?
00:39:59 <fizzie> There's a .replace() that converts the "raw" path in the wget output to the "logical" path, but it fails if the $HACKENV path happens to be a substring in the URL.
00:42:54 <oerjan> oh, it's just about the output printed?
00:43:21 <oerjan> oh well, it wouldn't be HackEgo if it weren't hacky.
00:45:11 <fizzie> shachaf: That might be a bit tricky. Definitely not via fshg, and I don't think it would be feasible in the naive way of just pointing the web server at the directory.
00:45:42 <fizzie> Besides, if I make that happen you'll start asking for a way to NFS-mount tmp/ on your machines.
00:48:17 <zgrep> How much disk space does HackEgo have...
00:48:55 <HackEgo> df: cannot read table of mounted file systems: No such file or directory
00:49:05 <zgrep> Makes sense, given how it works.
00:49:14 <fizzie> There's probably some way to work around that.
00:49:20 <fizzie> Anyway, there's 28 gigs or so free.
00:49:37 <zgrep> For some reason I was thinking of loading some dictionaries onto there, unless there's already some there.
00:50:34 <HackEgo> df: Warning: cannot read table of mounted file systems: No such file or directory \ Filesystem Size Used Avail Use% Mounted on \ - 39G 9.6G 28G 27% /hackenv
00:50:58 <zgrep> `` df -h /hackenv 2>/dev/null
00:50:59 <HackEgo> Filesystem Size Used Avail Use% Mounted on \ - 39G 9.6G 28G 27% /hackenv
00:51:26 <fizzie> A statfs call on the UML bind mount is fine, it's just the getting of mountpoints that it can't do.
00:52:52 <zgrep> Does mk / mkx let you make multiline things in an easy fashion?
00:53:18 <fizzie> I think they're single-line-only.
00:53:35 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/bin/mk
00:53:59 <fizzie> There's been some talk of a line editor, which I think should use tmp/ for state, if someone goes ahead and does one.
00:54:28 <zgrep> I was about to ask why, then I realised IRC.
00:55:00 <fizzie> I think people generally just fall back to `fetch at the point things get too tricky.
00:55:56 <zgrep> E-except mercurial says not found?
00:56:06 <HackEgo> File is outside web-viewable filesystem repository.
00:56:13 <shachaf> fizzie: I was thinking of doing it.
00:56:28 * zgrep has a bad idea of how to do it
00:58:35 <fizzie> There was an attempt already, but it went nowhere, except for leaving some cruft in tmp.
00:58:39 <HackEgo> 8 \ foo \ metar \ pad.1 \ pad.1 print 1+! \ pad.print 1+! \ spline \ spout
00:59:06 <fizzie> I wonder if I could in fact do it the naive way after all.
01:00:15 <shachaf> Does the naive way involve mv for the final step?
01:00:34 <fizzie> Oh, I meant the "expose tmp over HTTP".
01:00:47 <fizzie> The permissions look plausible (after all, the web server can access the repository too), and nginx might be configurable to override content-type with something safe-ish.
01:01:05 <shachaf> You should use application/octet-stream and annoy everyone.
01:01:19 <fizzie> That's what the fshg raw links do.
01:02:01 <fizzie> They used to serve a guessed MIME type, but there's obvious problems if there's anything else on the same domain.
01:02:20 <zgrep> Hm. I guess it would be safer.
01:02:30 <fizzie> I don't know if text/plain would be okay.
01:02:37 <shachaf> I think text/plain should be fine?
01:03:00 -!- krok_ has quit (Quit: Leaving).
01:03:10 <fizzie> It can look a bit odd if it's a big binary file, but maybe that's not too bad.
01:03:33 <fizzie> "Risks of serving untrusted content under HTTP Content-Type: text/plain"
01:04:03 <oerjan> isn't text/css supposedly a workaround people use
01:04:24 <fizzie> That sounds vaguely familiar.
01:05:06 <shachaf> imo do it and ask questions later
01:05:23 <zgrep> And question answers.
01:05:56 <oerjan> `fetch minsk https://esolangs.org/wiki/The Amnesiac From Minsk
01:05:58 <HackEgo> 2017-02-16 01:05:46 URL:https://esolangs.org/wiki/The%20Amnesiac%20From%20Minsk [41183] -> "minsk" [1]
01:06:27 <fizzie> Yes, it splits at most once, at the first whitespace.
01:07:15 <oerjan> oh that's what , 1) is for, i guess
01:07:31 <shachaf> Spaces are invalid in URIs anyway.
01:08:42 <oerjan> `fetch .hg/test https://esolangs.org/wiki/The Amnesiac From Minsk
01:08:44 <HackEgo> 2017-02-16 01:08:32 URL:https://esolangs.org/wiki/The%20Amnesiac%20From%20Minsk [41183] -> ".hg/test" [1]
01:09:06 <HackEgo> <!DOCTYPE html> \ <html lang="en" dir="ltr" class="client-nojs"> \ <head> \ <meta charset="UTF-8"/> \ <title>The Amnesiac From Minsk - Esolang</title> \ <script>document.documentElement.className = document.documentElement.className.replace( /(^|\s)client-nojs(\s|$)/, "$1client-js$2" );</script> \ <script>(window.RLQ=window.RLQ||[]).push(functio
01:09:14 <HackEgo> rm: cannot remove `.hg/test': Read-only file system
01:10:26 * oerjan hopes there was no .hg/test already
01:10:38 <shachaf> I can think of more interesting things to overwrite in .hg.
01:10:51 <HackEgo> 00changelog.i \ branch \ branchheads.cache \ cache \ dirstate \ last-message.txt \ requires \ store \ tags.cache \ test \ undo.bookmarks \ undo.branch \ undo.desc \ undo.dirstate
01:11:21 <fizzie> I don't think there was a test.
01:12:00 <fizzie> (This is why we can't have nice things, incidentally.)
01:12:33 <shachaf> `fetch /tmp/test https://esolangs.org/wiki/The Amnesiac From Minsk
01:12:34 <HackEgo> In another world: /tmp/test
01:12:50 <shachaf> fizzie: Did you play that game?
01:13:55 <fizzie> That game as in that link? No.
01:14:02 <shachaf> As in https://en.wikipedia.org/wiki/Another_World_(video_game)
01:14:05 <oerjan> fizzie: i'm pretty sure i mentioned the .hg/ issue previously tdnh
01:14:11 <shachaf> I didn't, but I did play _Heart of Darkness_.
01:14:24 <shachaf> 10:23 <oerjan> also, you should make sure not to put it outside /hackenv, or in .hg
01:15:35 <fizzie> (I've disabled fetch temporarily, incidentally.)
01:15:40 -!- atslash has quit (Quit: This computer has gone to sleep).
01:17:02 -!- atslash has joined.
01:20:10 <fizzie> `fetch .hg/test https://esolangs.org/wiki/The Amnesiac From Minsk
01:20:11 <HackEgo> In another world: .hg/test
01:23:02 -!- doesthiswork has joined.
01:23:51 <fizzie> I wonder if Mercurial has any other special files than .hgignore outside of .hg/.
01:23:52 <oerjan> i can still see a possible issue with race condition in the unlocked first run...
01:24:19 <oerjan> if someone replaced a directory by a symbolic link at the right moment...
01:24:42 <fizzie> That's certainly true.
01:46:57 <oerjan> fizzie: um never mind. fetch actually _doesn't_ run twice. it sets always_exclusive to True.
01:46:58 -!- hppavilion1 has joined.
01:48:49 <oerjan> (transact's second argument)
01:50:35 <fizzie> No, I mean... I think I did that.
01:50:51 <fizzie> https://bitbucket.org/GregorR/hackbot/commits/b866d833
01:51:35 <fizzie> In that case, I'm calling it safe.
01:52:52 <fizzie> It would be, if I hadn't gotten sidetracked by this symlink thing.
01:54:47 * oerjan whacks HackEgo with his new skillet ==\____/
01:56:13 <shachaf> Is it one of those fancy skillets?
01:56:30 <shachaf> With aluminium in the middle for heat retention between two layers of stainless steel?
01:57:08 <oerjan> (it is, alas, purely virtual)
01:57:28 <oerjan> (not that i cook anything but pizza, anyway)
01:57:49 <shachaf> You can cook that in a skillet.
01:58:25 <shachaf> Should I get a fancy pizza stone so I can bake pizza?
01:58:30 <shachaf> Or maybe I should bake pizza on steel instead?
01:58:42 <shachaf> Or maybe just get a cheap stone.
01:58:45 <shachaf> It's a steel at that price.
01:58:52 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:58:53 <oerjan> i think boily is a better to ask than me. maybe.
01:59:09 <oerjan> how did i think that word without typing it, again
01:59:35 <oerjan> it seems to be happening lately.
02:00:54 * oerjan swats shachaf for buildup effort -----###
02:10:13 <oerjan> <juju2143> Is there some sort of graphical brainfuck variant? Because I just implemented one. <-- see Paintfuck
02:10:52 <oerjan> it's one of the few brainfuck derivatives that actually got some interest here in the channel
02:23:50 <fizzie> Okay, let's give this a go.
02:23:54 <fizzie> `` sed -i -e 's/|tmp//;10i\' -e ' elif re.match(r"tmp/(?:|$)",f):' -e '10i\' -e ' print ("http://www2.codu.org/projects/hackbot/" + urllib.quote(f))' bin/url
02:23:57 <fizzie> `url tmp/diff_help.txt
02:23:58 <HackEgo> http://www2.codu.org/projects/hackbot/tmp/diff_help.txt
02:25:16 <HackEgo> #!/usr/bin/env python \ import sys, os.path, re, urllib \ if len(sys.argv) <= 1: \ print "http://codu.org/projects/hackbot/fshg/" \ else: \ f = os.path.abspath(sys.argv[1]) \ f = re.sub(r"^/+hackenv/", "", f) \ if re.match(r"/|(?:\.hg)(?:/|$)",f): \ sys.exit("File is outside web-viewable filesystem repository.") \ eli
02:25:18 <fizzie> Whoops, that / was supposed to be inside the thing.
02:25:40 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/bin/url
02:25:45 <fizzie> `` sed -i -e 's#/(?:#(?:/#' bin/url
02:25:56 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/log/tip/bin/url
02:28:20 <HackEgo> #!/usr/bin/env python \ import sys, os.path, re, urllib \ if len(sys.argv) <= 1: \ print "http://codu.org/projects/hackbot/fshg/" \ else: \ f = os.path.abspath(sys.argv[1]) \ f = re.sub(r"^/+hackenv/", "", f) \ if re.match(r"/|(?:\.hg|tmp)(?:/|$)",f): \ sys.exit("File is outside web-viewable filesystem repository.") \
02:28:34 <oerjan> i guess that one remains the same.
02:29:30 <fizzie> I'm definitely not going to implement a historical log of tmp.
02:32:33 <HackEgo> File is outside web-viewable filesystem repository.
02:32:38 <HackEgo> http://www2.codu.org/projects/hackbot/tmp
02:32:50 <fizzie> `` sed -i -e 's#(?:\.hg)#\.hg#' bin/url # optomize it a little
02:33:08 <zgrep> It could do with a automagic / on the end of directories.
02:33:27 <oerjan> . o O ( why isn't http://www2.codu.org/projects/hackbot/bin/url working )
02:33:56 <fizzie> Yeah, it's not supposed to.
02:34:53 <oerjan> `` ln -s ../bin/url tmp/url
02:34:54 <fizzie> `` sed -i -e 's#(?:\\.hg)#\.hg#' bin/url # retry optomize
02:35:30 <fizzie> What, it follows symlinks with no extra configuration?
02:35:40 * oerjan wonders if fizzie will break soon
02:35:58 <fizzie> Whoever came up with symlinks should be mauled.
02:36:23 <oerjan> hm that could indeed be a problem if there are things that shouldn't be visible.
02:36:26 <zgrep> Hm. A bad version of a persistent ed could be simply writing every command to a file, and re-running it all through ed every time. The file would be cleared for a small subset of commands, such as q, w, etc.
02:36:44 <oerjan> (outside /hackenv, presumably)
02:37:23 <fizzie> I think that's fixed now.
02:37:41 <shachaf> fizzie: I was going to do the symlink thing as soon as you set up tmp/
02:37:48 <shachaf> But apparently oerjan beat me to it while I wasn't looking.
02:38:09 <HackEgo> 8 \ diff_help.txt \ foo \ metar \ pad.1 \ pad.1 print 1+! \ pad.print 1+! \ spline \ spout \ url
02:38:28 <fizzie> I'm too tired to figure out what's the incantation to get nginx to append that last /.
02:38:38 <shachaf> Not sure why tmp/8 isn't working.
02:39:01 <fizzie> It works for me in a browser too.
02:39:01 <shachaf> Just my browser was broken.
02:39:47 <fizzie> Fun fact: the fshg is actually served at http://www2.codu.org/projects/hackbot/fshg/ which is why that tmp is where it is.
02:40:15 <fizzie> The normal http://codu.org/... is just another server reverse-proxying in front of it.
02:40:51 <shachaf> Great, now we need a version of paste that doesn't pollute history.
02:41:08 <HackEgo> bin \ canary \ emoticons \ esobible \ etc \ evil \ factor \ good \ hello_output_test.txt \ hw \ ibin \ index.html \ index.html.1 \ interps \ karma \ le \ lib \ misle \ out \ paste \ ply-3.8 \ quines \ quotes \ share \ source \ src \ test1 \ test2 \ tmflry \ tmp \ wdiff-latest.tar.gz \ wisdom
02:41:18 <HackEgo> bin/ \ canary \ emoticons/ \ esobible/ \ etc/ \ evil/ \ factor/ \ good/ \ hello_output_test.txt \ hw/ \ ibin/ \ index.html \ index.html.1 \ interps/ \ karma \ le/ \ lib/ \ misle/ \ out \ paste/ \ ply-3.8/ \ quines/ \ quotes \ share/ \ source* \ src/ \ test1 \ test2 \ tmflry/ \ tmp/ \ wdiff-latest.tar.gz \ wisdom/
02:41:20 <fizzie> `` mkdir tmp/paste # just checking what a directory would look like
02:41:21 <HackEgo> paste.10027 \ paste.10030 \ paste.10068 \ paste.1009 \ paste.10124 \ paste.10129 \ paste.1013 \ paste.10183 \ paste.10185 \ paste.10198 \ paste.1022 \ paste.10249 \ paste.10305 \ paste.10325 \ paste.10348 \ paste.1037 \ paste.10378 \ paste.10413 \ paste.10517 \ paste.10519 \ paste.10538 \ paste.10571 \ paste.10590 \ paste.10605 \ paste.10757 \ past
02:41:52 <shachaf> `` rm -r paste; ln -s tmp/paste paste
02:41:52 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/bin/paste
02:43:55 <fizzie> I wonder if your operation was just too big.
02:44:33 <fizzie> Anyway, it'd be easy enough to edit bin/paste instead.
02:50:35 <shachaf> I wish `spam wasn't required for every line of spam.
02:50:49 <shachaf> It doubles the amount of spam.
02:51:33 <HackEgo> #!/bin/bash \ if [ "$1" ] && url "$1" 2>/dev/null # Save making a file when it already exists. \ then \ true \ else \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ url paste/paste."$PASTENUM" \ cat -- "${1--}" > $HACKENV/paste/paste."$PASTENUM" \ fi
02:53:18 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/bin/paste
02:56:41 <HackEgo> #!/usr/bin/env python \ import sys, os.path, re, urllib \ if len(sys.argv) <= 1: \ print "http://codu.org/projects/hackbot/fshg/" \ else: \ f = os.path.abspath(sys.argv[1]) \ f = re.sub(r"^/+hackenv/", "", f) \ if re.match(r"/|.hg(?:/|$)",f): \ sys.exit("File is outside web-viewable filesystem repository.") \ elif re.
02:57:23 <oerjan> `sled bin/url//s,[|].hg,|\\.hg,
02:57:24 <HackEgo> bin/url//#!/usr/bin/env python \ import sys, os.path, re, urllib \ if len(sys.argv) <= 1: \ print "http://codu.org/projects/hackbot/fshg/" \ else: \ f = os.path.abspath(sys.argv[1]) \ f = re.sub(r"^/+hackenv/", "", f) \ if re.match(r"/|\.hg(?:/|$)",f): \ sys.exit("File is outside web-viewable filesystem repository.") \ e
02:58:27 <fizzie> Guess I optimized away the \ entirely.
02:59:47 <HackEgo> http://codu.org/projects/hackbot/fshg/
03:00:09 <shachaf> fizzie: whoa whoa whoa, sed -i -e?
03:02:10 <fizzie> If you mean it should have been sled or something, I can't keep track of all this newfangled stuff.
03:02:25 <HackEgo> 8235:2016-05-31 <shachäf> ` mv bin/sedk bin/sled; sedk \'bin/sled//s-sedk-sled-\' \ 8236:2016-05-31 <shachäf> sled bin/sled//s-sedk-sled- \ 8259:2016-06-01 <shachäf> sled bin/sled//s#\\|\\| exit 1#|| { echo \'no such file\'; exit 1; }# \ 8260:2016-06-01 <shachäf> revert \ 8261:2016-06-01 <oerjän> sled bin/sled//s/exit 1; sed/{ echo \'Rose
03:02:35 <HackEgo> #!/bin/bash \ /bin/sed "$@" && if [[ $# == "3" && "/$1" == "/-i" ]]; then echo -n "$3//"; cat "$3"; fi
03:03:05 <oerjan> i distinctly modified sed to catch -i use but fizzie breaks stuff by using -e
03:03:10 <HackEgo> `sled <filename>//<sed script>
03:03:15 <\oren\> 滑 why does water + bone = slide???? WTF chinese characters
03:03:16 <shachaf> fizzie: that's all you gotta do hth
03:04:16 <fizzie> I think I'll just start using `/bin/sed.
03:04:46 <oerjan> fizzie: it's just so that the resulting file is printed, like with sled.
03:05:14 <shachaf> oerjan: What you should do is use hg status to decide which files to print.
03:06:59 <fizzie> Why would I want to print the resulting file? It's generally not going to even fit on a line.
03:07:59 <HackEgo> [[ "$1" == ?*//* ]] || { echo 'usage: sled file//script'; exit 1; }; key="${1%%//*}"; value="${1#*//}"; [[ -f "$key" ]] || { echo 'Rosebud!'; exit 1; }; sed -i "$value" "$key" ;
03:08:09 <\oren\> fizzie if youre using slwd you want to make sure it fits on a line
03:08:47 <HackEgo> `slwd <wisdom name>//<sed script>
03:08:57 <oerjan> fizzie: mostly because boily kept using it for wisdoms, and he sometimes messed it up
03:09:29 <oerjan> and i want it to print the result so i can see obvious errors without checking the repo.
03:09:38 <fizzie> I'm definitely not going to start remembering anything that involves a w.
03:10:05 <oerjan> it's ok, h is old hat we use d these days.
03:10:44 <HackEgo> fizzie is not fnord with a monad but the sneaky canary prime minister of #esoteric, see https://zem.fi/static/img/square_fizzie_320px_white.jpg
03:11:34 <fizzie> `` ls bin/* | grep '[wh]' | /bin/sed -e 's|bin/||'
03:11:35 <HackEgo> welcome \ addscowrevs \ autowelcome \ bardsworthlist \ chroot \ cwlprits \ dowg \ downvote \ dowt \ echo \ echo \ echo-p \ ehlist \ emoclew \ forth \ grph \ grwp \ gwn \ gwni \ h \ ?h \ h! \ halp \ hatesgeo \ hd \ hello \ hello-world-in-any-language \ ?hh \ hi \ hlnp \ hoag \ hoat \ hog \ howg \ howt \ hurl \ hwrl \ hyf
03:11:51 <\oren\> `slwd fizzie//s/$/ He never remembers w's./
03:11:53 <HackEgo> fizzie//fizzie is not fnord with a monad but the sneaky canary prime minister of #esoteric, see https://zem.fi/static/img/square_fizzie_320px_white.jpg He never remembers w's.
03:12:23 <HackEgo> fizzie: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
03:12:31 <shachaf> The punctuation was a mess.
03:12:52 <shachaf> And also it's an inside joke that won't make any sense to anyone who didn't happen to be around right now.
03:14:29 <shachaf> The US stock market keeps going up. #hashtag #scow
03:14:29 <\oren\> WHY IS THERE NO FULLWIDTH INTERROBANG
03:14:34 <oerjan> apparently google translate has had someone review the translation of えええええええ
03:16:11 <pikhq> shachaf: I'm pretty sure most finance people figure we're in a bubble, and the stock market is probably going to keep going up until the bubble pops.
03:18:01 <pikhq> No, I'm insufficiently liquid to invest much of anything.
03:18:29 <\oren\> dunno how those are afected
03:19:44 <shachaf> I don't think it's affected.
03:20:03 <shachaf> What sort of interest do you get?
03:22:29 <\oren\> (had to loginto the stupid bank wobsite)
03:23:34 <shachaf> Seems that inflation in 2016 was a bit higher than that.
03:23:52 <shachaf> I guess it's better than cash.
03:24:12 <\oren\> note all this is canadian dolars
03:24:28 <shachaf> Right, I mean inflation in Canada.
03:25:06 -!- sirnaysayer has joined.
03:25:25 <\oren\> I only have less than half my money in the GIC tho I should probably put more in
03:27:41 <shachaf> Do you think it's a good idea?
03:30:50 <fizzie> shachaf: You should buy this because it's p. cute: http://www.standard.co.uk/news/london/one-of-londons-smallest-houses-goes-on-sale-in-chelsea-for-600k-a3468051.html
03:33:00 <shachaf> I have ~90% of my money in the US stock market. But lately I've been thinking that it should be more like 200%.
03:39:31 <\oren\> Hmm, I wonder if I should try living in london?
03:40:05 <\oren\> chelsea appears to be pretty expensive tho
03:41:25 -!- hppavilion1 has quit (Ping timeout: 260 seconds).
03:42:13 <\oren\> is it rainy all year round in london?
03:46:30 <fizzie> Depends on what counts as "rainy".
03:46:51 <fizzie> It rains less in terms of volume than in Helsinki.
03:47:21 <fizzie> There might be more rainy days, though. Haven't checked the statistics.
03:47:56 <fizzie> It definitely isn't rainy every day, but there is probably some rain every month.
03:49:03 <fizzie> "On average there are 164 days per year with more than 0.1 mm (0.004 in) of rainfall (precipitation) or 13.7 days with a quantity of rain, sleet, snow etc. per month."
03:51:53 <fizzie> Looks like even that metric is higher in Helsinki: "On average there are 191 days per year with more than 0.1 mm (0.004 in) of rainfall (precipitation) or 15.9 days with a quantity of rain, sleet, snow etc. per month."
03:52:09 <shachaf> What is the metric in Seattle?
03:52:41 <fizzie> These were from http://www.london.climatemps.com/precipitation.php if you want to compare.
03:53:45 <fizzie> Seattle: On average there are 150 days per year with more than 0.1 mm (0.004 in) of rainfall (precipitation) or 12.5 days with a quantity of rain, sleet, snow etc. per month.
03:56:07 <fizzie> Seattle's 965 mm of rainfall / year does have both Helsinki and London quite thoroughly beaten.
04:13:07 <zgrep> Persistent ed, implemented using a Probably Bad Idea™. http://sprunge.us/YbIW?sh
04:14:15 <zgrep> I'm also not certain it'll work on HackEgo. But it works using whatever ed comes bundled with OS X.
04:16:06 <zgrep> Heh. It'll start messing things up if you try to make a sed-like change, then save, and continue editing.
04:16:18 <zgrep> s/Probably // Then.
04:23:21 -!- atslash has quit (Quit: This computer has gone to sleep).
04:23:36 -!- atslash has joined.
04:27:59 -!- atslash has quit (Ping timeout: 264 seconds).
04:32:12 -!- erkin has joined.
04:52:46 <HackEgo> [wiki] [[Graphical Brainfuck]] N https://esolangs.org/w/index.php?oldid=50980 * Juju2143 * (+1409) Created page with "'''Graphical Brainfuck''' (GBF) is a [[esoteric programming language]] created by [[User:Juju2143|juju2143]] in Febuary 2017. It is a multi-dimensional extension of Brainfuc..."
04:56:31 -!- erkin has quit (Quit: Leaving).
04:57:44 <HackEgo> [wiki] [[Special:Log/newusers]] create * Npaul * New user account
05:10:01 -!- doesthiswork has quit (Quit: Leaving.).
05:13:36 <HackEgo> [wiki] [[Graphical Brainfuck]] https://esolangs.org/w/index.php?diff=50981&oldid=50980 * Juju2143 * (+1826)
05:14:08 -!- augur has quit (Remote host closed the connection).
05:14:22 <juju2143> I hope I'm clear enough because it's kinda hard to explain
05:22:26 -!- oerjan has quit (Quit: Nite).
05:23:56 <HackEgo> [wiki] [[Graphical Brainfuck]] https://esolangs.org/w/index.php?diff=50982&oldid=50981 * Juju2143 * (+506)
05:25:52 <HackEgo> [wiki] [[Graphical Brainfuck]] M https://esolangs.org/w/index.php?diff=50983&oldid=50982 * Juju2143 * (-28)
05:29:10 <HackEgo> [wiki] [[User:Juju2143]] M https://esolangs.org/w/index.php?diff=50984&oldid=50979 * Juju2143 * (+24)
05:33:13 <HackEgo> [wiki] [[Graphical Brainfuck]] M https://esolangs.org/w/index.php?diff=50985&oldid=50983 * Juju2143 * (+72)
05:34:04 <HackEgo> [wiki] [[Language list]] https://esolangs.org/w/index.php?diff=50986&oldid=50964 * Juju2143 * (+26) /* G */
05:39:25 <juju2143> I have an implementation in SmileBASIC, but I never got anything interesting to show. I'm not even sure how I'd do an hello world. I'm not even sure if there's bugs in my implementation.
06:09:37 -!- haavardp has changed nick to haavard.
06:15:13 -!- hppavilion1 has joined.
06:25:20 -!- augur has joined.
06:25:36 -!- kiki` has quit (Quit: Connection closed for inactivity).
06:28:28 <HackEgo> [wiki] [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=50987&oldid=50962 * Npaul * (+257)
06:28:37 <HackEgo> [wiki] [[Aya]] N https://esolangs.org/w/index.php?oldid=50988 * Npaul * (+6319) The Aya Programming Language
06:30:06 <HackEgo> [wiki] [[Language list]] https://esolangs.org/w/index.php?diff=50989&oldid=50986 * Npaul * (+10)
07:22:20 -!- AnotherTest has joined.
07:29:11 -!- AnotherTest has quit (Ping timeout: 264 seconds).
07:32:03 -!- hppavilion1 has changed nick to hppavilion1^.
07:32:08 -!- hppavilion1^ has changed nick to hppavilion[1].
07:32:41 -!- hppavilion[1] has changed nick to ^hppavilion[1].
07:32:44 -!- ^hppavilion[1] has changed nick to hppavilion[1].
07:45:46 -!- MoALTz has joined.
08:00:53 -!- hppavilion[1] has quit (Ping timeout: 260 seconds).
08:04:54 -!- augur has quit (Remote host closed the connection).
08:05:29 -!- augur has joined.
08:09:32 -!- augur has quit (Ping timeout: 245 seconds).
08:13:05 <rdococ> youtube stop giving me suggestions relating to "The <work of fiction> [Idiots] Theorists"
08:13:29 <rdococ> [Idiots] meaning the word is not there but implied, and <work of fiction> can be substituted for any medium eg film or game
08:28:26 -!- augur has joined.
08:38:55 -!- augur has quit (Remote host closed the connection).
08:41:23 -!- augur has joined.
09:34:17 -!- MoALTz has quit (Ping timeout: 240 seconds).
09:48:09 -!- AnotherTest has joined.
10:03:37 -!- MoALTz has joined.
10:05:21 -!- MoALTz_ has joined.
10:08:11 -!- MoALTz has quit (Ping timeout: 240 seconds).
10:18:59 -!- augur has quit (Remote host closed the connection).
10:37:22 <HackEgo> [wiki] [[Graphical Brainfuck]] https://esolangs.org/w/index.php?diff=50990&oldid=50985 * Juju2143 * (+31) /* Examples */
10:37:35 <Jafet> 8 :-) REM what I imagine it looks like
11:07:39 <int-e> rdococ: conform! obey! consume!
11:34:48 -!- boily has joined.
11:50:54 <HackEgo> lettuce//Lettuce is a vegetable with two dressings, join and meet.
11:50:57 <lambdabot> oerjan said 17h 35m 18s ago: * boily thwacks the HackEgo in the random bits <-- will you two be here all week
11:51:15 <boily> @ask oerjan hellørjan. eh?
11:51:29 <b_jonas> and two patties, less than and greater than?
11:53:21 <boily> what is the ground beef of mathematics?
12:02:39 <HackEgo> klein bottle:A Klein bottle is like a torus, but more insidious. Taneb tried to invent it, but got trapped inside. \ Binary file reflection matches \ tanebventions: math:Mathematical tanebventions include D-modules, Chu spaces, the torus, Stephen Wolfram, Klein bottles, string diagrams, the reals, Lambek's lemma, Curry's paradox, the long line, loc
12:04:22 <HackEgo> angband:Angband is Morgoth's second dungeon. When the valar finally defeated Morgoth, they were too lazy to go to for 100% completion, so some evil spirits in Angband survived for a sequel. \ cipation:A cipation is an evil scheme that only works if no one is prepared for it. \ damnation:The Damnation was an evil empire of yore, until the dam no lon
12:04:32 <HackEgo> 2/6:the dam no longer held and they got flooded. \ evil:Evil is a special thing, it must be followed by 4 letters of your nickname. It is very evil, and thus is recursive. \ evilipse:evilipse, the most obnoxious of evil people, likes to use chmod 000 / -R \ evil throne:The evil throne belongs to oerjan, when he's not being overthrone. He
12:04:42 <HackEgo> 3/6:rarely sits on it, though, since that time it tried to eat him. \ fabric of reality:The fabric of reality is *not* plaid corduroy, no matter what evil tongues say. \ google:Google is where people are working on [NAME WITHHELD] and [REDACTED], without being evil at all. \ grammar:Grammar is just the evil subset of syntax. \ lystrosaur:
12:05:34 <HackEgo> 4/6:The lystrosaurs were an ancient genus of evil reptiles who successfully took over the world in the early Triassic. \ myname:myname is not your name. You don't know what they are doing. Or you are doing. Or am I? He is Perl's evil twin brother. \ orin:orin is oren's evil twin, stalking him from the other side of the international date
12:06:00 <HackEgo> 5/6:line. \ overlord:Evil overlords do evil acts like taking over the world, kicking puppies, and changing their own wisdom entries. \ Binary file reflection matches \ unicode:Unicode is a mess invented in 1988 by Xerox, Microsoft, the Spanish Inquisition, and the evil Human Supremacy Corporation, in order to make it easier for the govern
12:06:25 <HackEgo> 6/6:ment to spy on Chinese people.
12:08:13 <boily> b_jellonas, Tanelle, Jafellot.
12:08:18 <boily> Taneb: are you evil?
12:27:11 -!- boily has quit (Quit: SYNAPSE CHICKEN).
13:10:43 -!- Sgeo_ has quit (Read error: Connection reset by peer).
13:37:32 <b_jonas> Debian jessie was released already in 2017-01-14. I missed the news, I thought it would take a few more months.
13:38:11 <b_jonas> no wait, that's the previous release, and it's just an update
13:39:32 <b_jonas> the next version is stretch
13:55:58 -!- sebbu2 has joined.
13:56:17 <HackEgo> The evil throne belongs to oerjan, when he's not being overthrone. He rarely sits on it, though, since that time it tried to eat him.
13:59:11 -!- sebbu has quit (Ping timeout: 240 seconds).
14:00:34 -!- doesthiswork has joined.
14:07:50 -!- erkin has joined.
14:17:23 -!- furozo has joined.
14:51:59 -!- AnotherTest has quit (Ping timeout: 256 seconds).
14:53:59 -!- AnotherTest has joined.
14:58:33 -!- AnotherTest has quit (Ping timeout: 260 seconds).
15:03:42 -!- `^_^v has joined.
15:10:01 <HackEgo> [wiki] [[Special:Log/newusers]] create * Theonlygusti * New user account
15:12:15 <HackEgo> [wiki] [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=50991&oldid=50987 * Theonlygusti * (+126) /* Introductions */
15:16:20 <HackEgo> [wiki] [[Talk:Itflabtijtslwi]] https://esolangs.org/w/index.php?diff=50992&oldid=42449 * Theonlygusti * (+335)
15:25:59 -!- MoALTz_ has changed nick to MoALTz.
15:26:15 -!- erkin has quit (Quit: Leaving).
15:42:05 -!- augur has joined.
15:50:18 -!- oerjan has joined.
15:55:57 <lambdabot> boily asked 4h 4m 42s ago: hellørjan. eh?
15:56:33 <oerjan> @tell boily boily asked 4h 4m 42s ago: hellørjan. eh? <-- you were thwacking HackEgo because of your own mistake
15:57:19 <oerjan> @tell ais523 the new system finally gets a real spammer workout
15:58:58 <oerjan> @tell ais523 wait, misread
16:44:35 <fizzie> Let's maybe just do this thing.
16:44:37 <fizzie> `sled bin/paste//s,\(HACKENV/\|url \)paste,\1tmp/paste,
16:44:39 <HackEgo> bin/paste//#!/bin/bash \ if [ "$1" ] && url "$1" 2>/dev/null # Save making a file when it already exists. \ then \ true \ else \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/tmp/paste \ \ url tmp/paste/paste."$PASTENUM" \ cat -- "${1--}" > $HACKENV/tmp/paste/paste."$PASTENUM" \ fi
16:44:53 <fizzie> `` echo i am a hacky bot | paste
16:44:54 <HackEgo> http://www2.codu.org/projects/hackbot/tmp/paste/paste.10024
16:47:10 <fizzie> b_jonas: If by system you mean a different (virtual) machine, then no, it's always been www2.codu.org.
16:48:07 <fizzie> (It's just that codu.org runs a reverse proxy kind of thing to hide it for the fshg repository-browser URL, presumably for historical reasons.)
16:51:42 <oerjan> what's new is that fizzie made the tmp/ directory accessible from the web.
16:52:04 <oerjan> so now pastes don't need to go in the repository.
16:52:48 -!- furozo has quit (Quit: Lost terminal).
16:52:57 <fizzie> I still have reservations about the way I did it, but I guess most of the problems about hosting untrusted content are already present in the fshg raw links.
16:58:25 <b_jonas> fizzie: if you're serving the untrusted content over http, you could add a "X-Robots-Tag: nofollow" HTTP response header, per https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag , which is sort of the equivalent of the ref=nofollow HTML attribute.
16:58:36 <HackEgo> [wiki] [[Talk:Itflabtijtslwi]] https://esolangs.org/w/index.php?diff=50993&oldid=50992 * Oerjan * (+518) Not so golfable
16:59:02 <nortti> http://neilk.net/blog/2000/06/01/abigails-regex-to-test-for-prime-numbers/
16:59:52 <fizzie> b_jonas: Does that make a difference if the files are all forced Content-Type: text/plain?
17:00:09 <fizzie> They don't really have proper links to follow, in that case.
17:00:31 <b_jonas> fizzie: the plain text can still have urls in it, so I think so
17:00:37 <fizzie> I also believe I should add "X-Content-Type-Options: nosniff" for IE.
17:01:03 <fizzie> Let's see if I can make that happen with add_header.
17:01:09 -!- augur_ has joined.
17:03:12 <fizzie> That seems to have worked.
17:04:17 -!- augur has quit (Ping timeout: 240 seconds).
17:06:34 <b_jonas> argh, more brainfuck derivatives
17:10:20 <int-e> . o O ( brainfuck = e^x )
17:12:59 <int-e> is there a compendium of brainfuck derivatives including their genealogy? :P
17:15:21 <oerjan> i think there's a page listing the features some of them implement
17:15:32 <oerjan> but it's not up to date.
17:16:22 <oerjan> `fetch tmp/test http://esolangs.org
17:16:23 <HackEgo> 2017-02-16 17:16:10 URL:http://esolangs.org/wiki/Main_Page [18484] -> "tmp/test" [1]
17:16:29 <HackEgo> http://www2.codu.org/projects/hackbot/tmp/test
17:16:52 <oerjan> well, IE did not turn that into HTML.
17:17:09 <HackEgo> 8 \ diff_help.txt \ foo \ metar \ pad.1 \ pad.1 print 1+! \ pad.print 1+! \ paste \ spline \ spout \ test \ url
17:17:58 <HackEgo> #!/bin/bash \ icao="$(airport "$*" | sed -e "s/.*, //;s/)//" | head -n 1)" \ echo lambdabot: @metar "${icao:-$1}"
17:18:18 <HackEgo> rm: cannot remove `tmp/paste': Is a directory
17:18:32 <oerjan> it's supposed to be temporary, after all.
17:25:10 <oerjan> `le/rn tmp//tmp/ is a directory for files that are too temporary to bother saving in HackEgo history, but which still need to survive a single command. Note that it interacts funnily with HackEgo's lock and re-run commit check, so files may simply disappear if you don't know what you're doing. For basic safety, don't modify files inside and outside tmp in the same HackEgo command.
17:25:12 <HackEgo> Learned 'tmp': tmp/ is a directory for files that are too temporary to bother saving in HackEgo history, but which still need to survive a single command. Note that it interacts funnily with HackEgo's lock and re-run commit check, so files may simply disappear if you don't know what you're doing. For basic safety, don't modify files inside and outs
17:26:41 <fizzie> oerjan: They may have made their content-sniffing less aggressive even without the header.
17:28:18 -!- Phantom_Hoover has joined.
17:28:18 -!- Phantom_Hoover has quit (Changing host).
17:28:18 -!- Phantom_Hoover has joined.
17:28:20 <oerjan> `le/rn tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still survive a single command. Note that it interacts funnily with HackEgo's lock and re-run commit check: files can disappear if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo command.
17:28:22 <HackEgo> Relearned 'tmp': tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still survive a single command. Note that it interacts funnily with HackEgo's lock and re-run commit check: files can disappear if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo c
17:28:39 <HackEgo> tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still survive a single command. Note that it interacts funnily with HackEgo's lock and re-run commit check: files can disappear if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo command.
17:29:50 <oerjan> i guess that last is slightly over-strict, but better safe than sorry.
17:32:37 <oerjan> `slwd tmp//s,survive,outlive,
17:32:39 <HackEgo> tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still outlive a single command. Note that it interacts funnily with HackEgo's lock and re-run commit check: files can disappear if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo command.
17:37:27 <oerjan> `slwd tmp//s,Note,NOTE,;s,disappear,DISAPPEAR,
17:37:28 <HackEgo> tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still outlive a single command. NOTE that it interacts funnily with HackEgo's lock and re-run commit check: files can DISAPPEAR if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo command.
17:40:55 <oerjan> `slwd tmp//s,NOTE,Note,;s,DISAPPEAR,disappear,
17:40:57 <HackEgo> tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still outlive a single command. Note that it interacts funnily with HackEgo's lock and re-run commit check: files can disappear if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo comma
17:41:20 <HackEgo> tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still outlive a single command. Note that it interacts funnily with HackEgo's lock and re-run commit check: files can disappear if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo comma
17:41:28 <shachaf> maybe bold it for the people who disable colors hth
17:41:47 <oerjan> right now that's not the problem...
17:42:31 <oerjan> `slwd tmp//s,Note,NOTE,;s,disappear,DISAPPEAR,;s, that it,: it,
17:42:33 <HackEgo> tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still outlive a single command. NOTE: it interacts funnily with HackEgo's lock and re-run commit check: files can DISAPPEAR if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo command.
17:43:36 <oerjan> `slwd tmp//s,it in,It in,;s,: f,; f,
17:43:37 <HackEgo> tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still outlive a single command. NOTE: It interacts funnily with HackEgo's lock and re-run commit check; files can DISAPPEAR if you don't know what you're doing. Basically, don't modify files inside and outside tmp/ in the same HackEgo command.
17:44:43 <\oren\> I got around to watching the whole video, and I was wrong. PewDiePie, I misjudged you, you're not a nazi, you're the same idiot swede you've always been.
17:45:12 <oerjan> does he at least vote SD now?
17:45:42 <\oren\> I bet he doesn't even vote, just smears a booger on the ballot
17:45:59 <oerjan> that might count as a vote in sweden afaik
17:47:04 -!- AnotherTest has joined.
17:48:57 <\oren\> hmm, apparently they don't use secret ballots in seden
17:49:26 <\oren\> https://en.wikipedia.org/wiki/Elections_in_Sweden#/media/File:Swedish_election_ballots_2014.jpg
17:49:51 <\oren\> they have ballots for each party, and the voter just grabs the one from the party they want openly
17:50:09 -!- haavard has quit (Ping timeout: 240 seconds).
17:50:15 <oerjan> um, we have that in norway, but the ballots are in a closed room...
17:51:51 <Phantom_Hoover> so the way that ballots work in the uk is that ambiguous ones get batched together and then representatives of each party get together and agree on how to interpret them
17:52:41 <Phantom_Hoover> this famously lead, a couple of years ago, to a ballot in the western isles which was marked with "wank" next to the names of all of the candidates except the SNP one, who was marked "good guy"
17:52:52 <Phantom_Hoover> this was interpreted as a clear preference and therefore a valid vote
17:53:06 -!- Zarutian has joined.
17:54:02 <fizzie> The booths in UK at least where I voted weren't very private.
17:54:02 -!- Zarutian has quit (Read error: Connection reset by peer).
17:54:07 -!- Zarutian_ has joined.
17:54:08 <fizzie> There was a bit of a screen, but not much.
17:56:04 * oerjan wonders if that swedish policy is artificially reducing SD votes...
17:56:17 <oerjan> because it's too shameful to choose on their ballots
17:57:31 <\oren\> wait WTF sweden? why is your liberal party the right wing one?
18:01:12 <oerjan> in europe, "liberal" has different connotations.
18:02:35 -!- haavard has joined.
18:03:09 <oerjan> apparently they drifted rightward recently.
18:08:53 <HackEgo> cat: bin/grwpi: No such file or directory
18:09:03 <HackEgo> bin/datei \ bin/gwni \ bin/hi \ bin/hyphenate.fi \ bin/ploki \ bin/sqli \ bin/u8tbli \ bin/udcli
18:09:14 <HackEgo> cd wisdom; shopt -s dotglob; grep -ERlis "$@" -- *
18:09:35 <HackEgo> #! /bin/bash \ cd wisdom; shopt -s dotglob; grep -R "$@" -- *
18:10:44 <HackEgo> 6198:2015-11-08 <b_jonäs> ` echo $\'#!/bin/sh\\nexec sqlite3 :memory: "$@"\' > bin/sqli && chmod a+x bin/sqli
18:11:02 <HackEgo> 9193:2016-10-07 <hppavilion[1̈]> mkx bin/u8tbli//unidecode `u8tbl $1 $2` \ 9192:2016-10-07 <hppavilion[1̈]> mkx bin/u8tbli//unidecode `u8tbl $1 $2 | sed \'s/ //g\'` \ 9191:2016-10-07 <hppavilion[1̈]> mkx bin/u8tbli//u8tbl $1 $2 | sed \'s/ //g\' | unidecode
18:11:15 <HackEgo> 4426:2014-02-09 <km̈c> mv udcli bin/ && chmod +x bin/udcli
18:11:39 <oerjan> huh all were false alarm
18:11:47 <HackEgo> 6178:2015-11-03 <b_jonäs> ` x=bin/datei; >"$x" echo $\'#!/bin/sh\\nexec date --rfc-3=n "$@"\' && chmod a+x "$x" \ 6177:2015-11-03 <b_jonäs> ` x=bin/datei; >"$x" $\'#!/bin/sh\\nexec date --rfc-3=n "$@"\' && chmod a+x "$x"
18:12:13 * oerjan was expecting at least one instance of someone having done sed -ei
18:12:31 <HackEgo> bin/5quote \ bin/addquote \ bin/age \ bin/autowelcome \ bin/before \ bin/bienvenue \ bin/blame \ bin/card-by-name \ bin/define \ bin/delquote \ bin/dice \ bin/disce \ bin/downvote \ bin/elcome \ bin/espletive \ bin/footnote \ bin/fortune \ bin/fueue \ bin/google \ bin/hello-world-in-any-language \ bin/hyfinate \ bin/icode \ bin/loudlye \ bin/lowerc
18:12:50 <HackEgo> 6500:2016-01-03 <Melvär> ` sed -ie \'s/inp[)]$/unicode(inp, locale.getpreferredencoding())).encode(locale.getpreferredencoding())/\' -e \'2s/$/, locale/\' bin/loudly; \ 6491:2016-01-03 <oerjän> revert 6483 \ 6489:2016-01-03 <oerjän> revert 6486 \ 6488:2016-01-03 <oerjän> revert 6483 \ 6486:2016-01-03 <oerjän> revert \ 6485:2016-01-03 <oer
18:13:30 <HackEgo> 10295:2017-02-16 <oerjän> rm bin/disce \ 7347:2016-04-01 <prooftechniqüe> ` ln -sfv /hackenv/bin/learn /hackenv/bin/disce \ 7346:2016-04-01 <prooftechniqüe> ` ln -sfv /hackenv/bin/slashlearn /hackenv/bin/disce \ 7345:2016-04-01 <prooftechniqüe> ` ln -s bin/slashlearn bin/disce
18:13:53 <oerjan> oh well, it's not a large fraction.
18:13:55 <HackEgo> 4426:2014-02-09 <km̈c> mv udcli bin/ && chmod +x bin/udcli \ 4425:2014-02-09 <km̈c> fetch http://ugcs.net/~keegan/drop/udcli
18:17:02 <oerjan> `` dowg 'tanebventions: math' | grep line
18:17:04 <HackEgo> 9609:2016-11-02 <shachäf> slwd tanebventions: math//s#loc#the long line, &#
18:17:32 -!- augur_ has quit (Remote host closed the connection).
18:17:38 <HackEgo> patching file 'wisdom/tanebventions: math' \ Hunk #1 FAILED at 1. \ 1 out of 1 hunk FAILED -- saving rejects to file 'wisdom/tanebventions: math.rej'
18:17:59 <HackEgo> wisdom/tanebventions: math.orig wisdom/tanebventions: math.rej
18:17:59 <kmc> hi shachaf
18:18:33 <kmc> what's all this
18:18:43 <oerjan> `sled tanebventions: math//s;the long line, ;;
18:18:44 <shachaf> Do you get highlighted by km̈c?
18:18:59 <oerjan> `slwd tanebventions: math//s;the long line, ;;
18:19:01 <shachaf> It's supposed to avoid pinging people.
18:19:01 <HackEgo> tanebventions: math//Mathematical tanebventions include D-modules, Chu spaces, the torus, Stephen Wolfram, Klein bottles, string diagrams, the reals, Lambek's lemma, Curry's paradox, locales, and histograms.
18:19:13 -!- LKoen has joined.
18:20:21 <oerjan> shachaf: no, there was a url from his domain in ther
18:21:08 <shachaf> Anyway I think oerjan is doing some sort of wisdom surgery but I'm not sure what's going on exactly.
18:21:16 <shachaf> HackEgo has so many great tools nowadays.
18:21:48 <oerjan> well right now i'm removing a fake tanebvention.
18:22:05 <oerjan> and i was optimistically using undo in case it was the last addition.
18:24:24 <oerjan> `slwd tanebventions: math//s;locale;algebraic geometry, locale;
18:24:26 <HackEgo> tanebventions: math//Mathematical tanebventions include D-modules, Chu spaces, the torus, Stephen Wolfram, Klein bottles, string diagrams, the reals, Lambek's lemma, Curry's paradox, algebraic geometry, locales, and histograms.
18:25:10 <olsner> \oren\: you can obfuscate your choice by picking up a bunch of different ballots before going into the private booth
18:25:57 <shachaf> There used to be a cafeteria at Google called Long Life: https://www.facebook.com/pages/long-life-cafe-Google/142771999118070
18:26:12 <shachaf> But many people called it Long Line because they liked to complain about everything.
18:26:33 <oerjan> people have an uncountable number of complaints.
18:26:55 <shachaf> Even the regular line has an uncountable number of points.
18:27:17 <olsner> iirc one of the motivations for that system is to prevent manipulation of ballots (like stealing the other parties ballots to make them harder to vote for, or replacing them with invalid ones)
18:30:24 -!- DHeadshot has joined.
18:31:19 -!- furozo has joined.
18:33:23 -!- DHeadshot has quit (Read error: Connection reset by peer).
18:34:44 -!- DHeadshot has joined.
19:12:09 -!- Zarutian_ has quit (Read error: Connection reset by peer).
19:14:08 -!- Qunar has joined.
19:14:58 -!- CalvinGames has joined.
19:16:16 -!- oerjan has quit (Quit: I, oerjan, must leave!).
19:16:50 <CalvinGames> I learned yesterday that XOR is not functionally complete.
19:17:34 <CalvinGames> I thought that I could make a different version of Nors.
19:18:50 <CalvinGames> What does NAND have to offer that NOR doesn't?
19:18:53 <rdococ> I'm looking up logical implication right now to see if it could be FC.
19:19:18 <rdococ> well, all functionally complete logical connectives are going to give the same result so I don't see what you're getting at
19:20:39 <CalvinGames> For some reason I have a bias of NOR over NAND. Are there any arguments that one is better than the other?
19:21:37 <rdococ> p → false is equivalent to not p
19:21:57 <rdococ> say p = true, then true → false is clearly false. say p = false, and false → false is true
19:23:01 <CalvinGames> It seems like implies should be FC but intuition tells me no.
19:23:08 <rdococ> OR is equivalent to (p → false) → q, or ¬¬p∨q
19:23:26 <rdococ> nope, turns out → is indeed FC
19:23:37 <rdococ> is the name of your new language.
19:23:49 <rdococ> tho you'll need true and false constants
19:23:59 <rdococ> actually p → p is always true
19:24:48 <rdococ> you might need a false value F but it'll work. unless you want symmetry.
19:25:37 <rdococ> the only symmetric gates are OR, AND, XOR, and their inverses.
19:25:49 <rdococ> since NXOR is only as FC as XOR itself is
19:26:14 <rdococ> you're stuck with NOR, NAND, or the less symmetric but more original IMPLIES.
19:26:29 <rdococ> as long as you have a false constant. without the ability to specify false you're stuck.
19:26:54 <CalvinGames> Implieses is more powerful than Nors however.
19:26:57 <rdococ> you could give every gate an extra input f that's always meant to be false
19:27:03 <rdococ> but that's a bit hacky
19:27:28 <rdococ> as in v(p, q, f) = (p → f) → q
19:27:42 <CalvinGames> It isn't as hacky as using NOTs like in Nors.
19:28:21 <rdococ> you don't need to use NOT gates, ¬(pvp) is equivalent to ¬p
19:31:04 <CalvinGames> Nors is only TC if you can invert some bits in the initial state.
19:31:48 <CalvinGames> You cannot possibly implement a XOR b without it.
19:33:58 <HackEgo> [wiki] [[Implieses]] N https://esolangs.org/w/index.php?oldid=50994 * Calvin Games * (+876) Created page with "'''Implieses''' is a [[Zero Instruction Set Computer]] created by Calvin Games and rdococ on February 16, 2017. It is Turing complete because it is equivalent to a 2-tag syste..."
19:34:30 <rdococ> a XOR b = (a OR b) AND (a NAND b)
19:34:49 <rdococ> now, a AND b = NOT ((NOT a) OR (NOT b))
19:35:11 -!- Qunar has quit (Ping timeout: 264 seconds).
19:35:17 <rdococ> a OR b = NOT (a NOR b)
19:35:31 -!- Lord_of_Life has quit (Excess Flood).
19:36:58 <CalvinGames> 01001100aabb¬a¬a¬b¬b returns a XOR b. There is no initial state in Nors that can return a XOR b without including ¬a or ¬b in itself.
19:38:46 <rdococ> "outputs the successive bits in Pn."?
19:39:17 <rdococ> so say it was 101101010, would it output 01101010 (or its equivalent character)?
19:39:29 -!- Lord_of_Life has joined.
19:40:17 <rdococ> 1111111111111111111... to infinity is technically a quine :P
19:40:26 <rdococ> but I guess that doesn't count
19:41:16 <CalvinGames> I don't consider that as dippy as 01001100aabb¬a¬a¬b¬b.
19:42:07 <rdococ> 01001100aabb¬a¬a¬b¬b... "odd bits of Pn NOR the even bits of Pn." assume a = 1 and b = 0 so 0100110011000011 so 01010110, 0000, 11...er
19:42:20 <APic> In a 0-dimensional World, every 0 looks like a 1 and/or the other Way round. ☺
19:42:20 <rdococ> does the first bit of Pn count as an odd or even bit?
19:42:48 <rdococ> can you make any other gate with it?
19:43:14 <CalvinGames> That doesn't matter because NOR is symmetrical.
19:44:19 <CalvinGames> You can make any gate as long as you allow ¬n in the initial state.
19:44:55 <rdococ> 0100110011000011 01010110 0000 11... by your method 1 NOR 0 outputs 1
19:45:20 <rdococ> APic: in a 0-dimensional world you would be 0
19:45:32 <rdococ> in fact, in a 0-dimensional world only one point can exist
19:45:37 <rdococ> 1 NOR 0 is meant to be 0
19:46:15 <rdococ> 0100110011001100 01010101 0000 11
19:46:29 <APic> rdococ: I already know i am a Solipsist, but thanks Mate ;)
19:46:54 <rdococ> 0100110000001111 01011100 0001 10
19:47:15 <rdococ> I think you accidentally implemented OR...
19:47:44 <rdococ> 0100110011110000 01010011 0010 10 0... wait
19:49:31 <CalvinGames> Are you simulating Nors? What is the goal of that program?
19:49:40 <rdococ> I'm going through the steps
19:49:54 <rdococ> how about 0aa. 000 -> 1-er
19:50:18 <rdococ> 00aa? 1!a... so 00aa is 1!a
19:51:41 <rdococ> 00aa -> 1!a -> printing !a
19:52:46 <CalvinGames> But aa by itself will either return 1 if a=1 or nothing if a=0
19:53:18 <CalvinGames> I'll just replace the description in Implieses with the equivalent Tag system.
19:53:31 -!- CalvinGames has quit (Quit: Page closed).
19:53:55 <rdococ> a XOR b = (a OR b) AND (a NAND b)
19:54:17 <rdococ> a OR b = ((a NOR b) NOR (a NOR b)) = abab
19:54:26 <rdococ> a XOR b = (abab) AND (a NAND b)
19:55:18 <rdococ> a AND b = (NOT a) NOR (NOT b) = aabb
19:56:14 <rdococ> a XOR b = (abab)(abab)aabbaabb?
19:58:23 -!- hppavilion1 has joined.
20:06:57 <shachaf> Why don't stock options etc. get adjusted for dividends?
20:17:51 -!- wob_jonas has joined.
20:24:16 -!- augur has joined.
20:24:45 -!- _-___-_ has joined.
20:24:45 -!- _-___-_ has left.
20:28:17 -!- augur has quit (Ping timeout: 240 seconds).
20:31:21 -!- hppavilion1 has quit (Remote host closed the connection).
20:31:45 -!- hppavilion1 has joined.
20:38:23 -!- LKoen has quit (Remote host closed the connection).
20:40:52 <HackEgo> [wiki] [[Implieses]] https://esolangs.org/w/index.php?diff=50995&oldid=50994 * Calvin Games * (+87)
20:49:58 -!- hppavilion1 has quit (Ping timeout: 240 seconds).
20:53:07 <Taneb> wob_jonas, Birmingham, I believe
20:53:38 <Taneb> shachaf, York, currently
20:54:17 <Taneb> I'm more of a fan of the classics
20:54:30 <shachaf> You already upgraded your Haskell compiler.
20:54:41 <shachaf> So it makes sense to upgrade your location to match.
20:54:43 <\oren\> PewDiePie did nothing wrong
20:54:46 <Taneb> (I don't find large cities comfortable to hang around in for a while)
20:55:48 <shachaf> How do you feel about Berkeley, CA?
20:55:59 <Taneb> I don't think I've ever been
20:56:08 <Taneb> Is it near Los Angeles
20:56:57 <Taneb> That's not very near
20:57:35 <shachaf> I'll give you a bunch of Magic: The Gathering cards to make it worth your while.
20:58:30 <fizzie> shachaf: Does the BART go to Berkeley?
20:58:46 <fizzie> I think I may have seen it on the BART map then.
20:59:33 -!- augur has joined.
21:00:41 <\oren\> the daily stormer just rebranded itself
21:00:44 <\oren\> "the world's #1 Wall Street Journal Fansite"
21:01:21 <fizzie> shachaf: I've only taken it from SFO to Millbrae to get to the Caltrain.
21:01:44 -!- hppavilion1 has joined.
21:01:57 <fizzie> I think that was a yellow line and then a red line.
21:02:02 <shachaf> "Today, the Millbrae BART station is the largest intermodal terminal west of the Mississippi, featuring a cross-platform connection to Caltrain."
21:02:06 <shachaf> https://www.bart.gov/stations/mlbr
21:02:14 <shachaf> What do you think of that?
21:02:22 <fizzie> It didn't look that big.
21:25:58 -!- hppavilion1 has quit (Ping timeout: 240 seconds).
21:40:54 -!- krok_ has joined.
21:47:01 <doesthiswork> something interesting today was that my girlfriend thought that a 'for' statement initialized the index variable to a time sequence of values so that any expression that used that variable would be applied to each of those values in turn.
21:48:09 <shachaf> You can almost think of it that way in Haskell.
21:48:10 <doesthiswork> I think I've seen people do that with continuations
21:48:28 <wob_jonas> shachaf: um what? Haskell has for statements?
21:48:33 <fizzie> `` echo ^something-else/ >> .hgignore
21:49:18 <shachaf> `` rm -rf .hgignore; mkdir .hgignore
21:49:19 <doesthiswork> the only change she had to make was moving the expression so that it was within the body of the for statement
21:49:28 <fizzie> shachaf: This time I thought about that.
21:49:37 -!- DHeadshot has quit (Ping timeout: 256 seconds).
21:50:06 <fizzie> There's probably something else I didn't think about, though. I'll let oerjan come up with that.
21:50:19 <shachaf> > do { x <- [1..10]; return (x+1) }
21:50:23 <fizzie> shachaf: https://bitbucket.org/fizzie/hackbot/commits/d2b76e62
21:51:26 <HackEgo> code:[11,11,11,15,15,23,12],[5,5,5,3,53,45,16,26,00,20,15,16,22,25,45,91,32,11,15,27,06,01,11,01,47,22,30,13,43,21,11,13,29,61,65,17,19,12,28,17,11,01,23,20,16,20,81,18,32,25,58,22.,1985,10.301350435,1555466973690094680980000956080767,13720946704494913791885940266665466978579582015128512190078... \ evilipse:evilipse, the most obnoxious of evil peop
21:51:26 <fizzie> At least I don't think my change made that worse.
21:51:50 -!- FreeFull has quit (Quit: New graphics driver reboot).
21:51:56 <HackEgo> ---------- 1 5000 0 6 Feb 16 21:49 .hgignore
21:52:10 <fizzie> I think you probably broke it.
21:52:14 <shachaf> fizzie: Why don't you just use a .hgignore outside the repository?
21:52:21 <shachaf> http://stackoverflow.com/questions/12783198/local-mercurial-ignore-file
21:52:45 <fizzie> shachaf: Because I could not figure out a way to ignore the .hgignore inside the repository.
21:53:18 <fizzie> Although it might be easier to enforce "this file should not exist" than "this file should be like that".
21:53:29 <shachaf> Oh, hg has one global .hgignore file, not per-directory like git.
21:53:54 <wob_jonas> shachaf: git allows per directory too
21:54:14 <shachaf> Why do you care about people adding additional ignores?
21:56:06 -!- FreeFull has joined.
22:00:55 <fizzie> shachaf: Because it's too easy to get into messy situations by ignoring everything. Also, it's th to have the ignore list be somehow halfway between immutable and mutable.
22:09:04 -!- hppavilion1 has joined.
22:11:06 <fizzie> `` for t in th tb; do \? $t; done # sorry, temporary merge conflicts
22:11:08 <HackEgo> th? ¯\(°_o)/¯ \ tb? ¯\(°_o)/¯
22:14:37 -!- AnotherTest has quit (Quit: ZNC - http://znc.in).
22:15:10 <fizzie> Wonder if there's other magical files inside the repository that hg treats specially.
22:15:27 <wob_jonas> presumably there are some that it ignores
22:15:55 <fizzie> `` echo would this have been a feasible way to maintain unversioned state > some-stuff; chmod 0 some-stuff
22:16:11 <fizzie> `` chmod 400 some-stuff; cat some-stuff; chmod 0 some-stuff
22:16:13 <HackEgo> chmod: cannot access `some-stuff': No such file or directory \ cat: some-stuff: No such file or directory \ chmod: cannot access `some-stuff': No such file or directory
22:16:54 <fizzie> I guess that won't work because of the cleanup.
22:19:23 <fizzie> Yeah, it does make a file that doesn't get committed in, but then the next command causes it to be deleted, because hg things the repository is dirty and cleans it up (and rerunning the next command obviously won't recreate it).
22:20:27 <HackEgo> ln: failed to create hard link `test1' => `/dev/zero': Invalid cross-device link
22:21:21 <\oren\> hey if I say evething like this am i vaporwave
22:26:03 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
22:30:26 -!- Phantom_Hoover has joined.
22:30:26 -!- Phantom_Hoover has quit (Changing host).
22:30:26 -!- Phantom_Hoover has joined.
22:35:40 -!- juju2143 has quit (Ping timeout: 260 seconds).
22:37:08 -!- furozo has quit (Quit: Lost terminal).
22:37:28 <wob_jonas> Question. Is there a trusted third party public service that publishes public keys for which they will publish the private key at some predetermined time in the future, so that you can make crypto commitments that will be revealed at that predetermined time even if you disappear?
22:38:49 <shachaf> i,i https://www.gwern.net/Self-decrypting%20files
22:55:16 -!- `^_^v has quit (Quit: This computer has gone to sleep).
22:56:17 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
22:57:49 <\oren\> wob_jonas: you could make one?
22:58:30 <\oren\> and host it in like, russia
22:58:45 <wob_jonas> \oren\: not currently, because I'm not currently paying for a good enough persistently online server
22:59:16 <wob_jonas> that is, one that's both reliable in that you can trust it will be online in the future, and secure
22:59:34 <wob_jonas> also, this has to be ran by a *trusted* third party. why would you trust me/
23:00:51 -!- hppavilion1 has quit (Quit: HRII'FHALMA MNAHN'K'YARNAK NGAH NILGH'RI'BTHNKNYTH).
23:04:39 -!- erdic has quit (Remote host closed the connection).
23:06:00 -!- Sprocklem has joined.
23:08:44 -!- erdic has joined.
23:13:28 -!- Phantom_Hoover has joined.
23:13:28 -!- Phantom_Hoover has quit (Changing host).
23:13:28 -!- Phantom_Hoover has joined.
23:17:19 -!- erkin has joined.
23:18:22 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
23:27:11 -!- boily has joined.
23:27:49 -!- erkin has quit (Read error: Connection reset by peer).
23:28:07 -!- erkin has joined.
23:28:35 <HackEgo> future//We know nothing about the future.
23:28:37 <lambdabot> oerjan said 7h 32m 4s ago: boily asked 4h 4m 42s ago: hellørjan. eh? <-- you were thwacking HackEgo because of your own mistake
23:29:05 <HackEgo> 1/2:mason jar//A Mason jar is a jar made by someone named Mason. \ brain//Brains are just receptacles for bricks. \ cosplay//Cosplay is the art of dressing up as people to show off to other people dressed up as people. \ onëliner//onëliners are pairs of unfathomable vectors in the category of exponential distance. \ york//York used to b
23:34:28 * boily autothwacks himself to restore balance
23:35:03 -!- Phantom_Hoover has joined.
23:35:04 -!- Phantom_Hoover has quit (Changing host).
23:35:04 -!- Phantom_Hoover has joined.
23:48:33 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
23:52:21 <boily> hellochaf, wellob_jo`nas.
23:53:27 -!- tromp has quit (Read error: Connection reset by peer).
23:53:42 -!- tromp has joined.
23:58:46 -!- atehwa has quit (Ping timeout: 258 seconds).
23:59:16 -!- atehwa has joined.