←2017-02-16 2017-02-17 2017-02-18→ ↑2017 ↑all
00:01:24 -!- hppavilion1 has joined.
00:05:09 <erkin> hecko
00:05:21 <boily> `? erkin
00:05:22 <HackEgo> erkin? ¯\(°​_o)/¯
00:05:29 <erkin> ‾\_(o_o)_/‾
00:05:57 <quintopia> helloily
00:06:01 <boily> `le/rn An erkin is a sort of small ickle, popular in Stern Urope.
00:06:02 <HackEgo> All le//rn variants now use two slashes in the format.
00:06:06 <boily> aurgh.
00:06:09 <boily> `le//rn An erkin is a sort of small ickle, popular in Stern Urope.
00:06:09 <HackEgo> All le//rn variants now use two slashes in the format.
00:06:16 <boily> ...
00:06:18 <fizzie> In the *format*, not in the command name.
00:06:18 <erkin> nice
00:06:20 <boily> `learn An erkin is a sort of small ickle, popular in Stern Urope.
00:06:22 <HackEgo> Learned 'erkin': An erkin is a sort of small ickle, popular in Stern Urope.
00:06:33 <erkin> 🤔
00:07:06 <boily> fizziello. I do not have a recent history of confuzzling HackEgo. sleep deprivation has nothing to do with that.
00:07:08 <quintopia> well that was loud
00:07:26 -!- atehwa has quit (Read error: Connection reset by peer).
00:09:40 <shachaf> a heffalump or wuzzle
00:09:43 <shachaf> is very confuzzle
00:09:50 <erkin> indubitably
00:14:27 -!- moonythedwarf has joined.
00:14:48 <moonythedwarf> i noticed the esolang http://esolangs.org/wiki/Clue_(Keymaker) and i've been pondering if its Turing Complete, any ideas?
00:18:34 -!- atehwa has joined.
00:19:20 -!- DHeadshot has joined.
00:37:32 <boily> `wisdom
00:37:33 <HackEgo> ​//everyone: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
00:38:28 <boily> mhelloonythellodwarf. it looks similar to BCT, so it may be TC maybe?
00:40:52 -!- Sgeo has joined.
00:46:12 -!- FreeFull has quit (Ping timeout: 245 seconds).
00:46:50 <shachaf> `` grwp -l 'eryone: W'
00:46:51 <HackEgo> ​ \ reflection
00:47:22 -!- FreeFull has joined.
00:47:45 <Phantom_Hoover> moonythedwarf, these visualisations are terrible
00:54:34 -!- sebbu has joined.
00:55:42 <boily> alercah: hellorcah. will you Montréal this June for the Tile?
00:55:55 <fizzie> `` grwp -l 'e.*v.*e.*r.*y.*o.*n.*e.*:.*W.*e.*l.*c.*o' | head -n 1 | hd
00:55:56 <HackEgo> 000000 03 0a >..< \ 000002
00:56:31 <fizzie> Oh, it was in the simpler thing as well, just didn't notice.
00:57:12 <fizzie> `dowg
00:57:13 -!- oerjan has joined.
00:57:14 <HackEgo> 3616:2013-09-03 <Rouj̈o> relcome everyone > wisdom/\x03 \ 3615:2013-09-03 <Rouj̈o> echo \x03 > wisdom/\x03
00:57:25 <fizzie> Guess it was intentional then.
00:58:13 -!- sebbu2 has quit (Ping timeout: 260 seconds).
00:58:30 <fizzie> Odd, but intentional. Oddentional.
00:58:51 <oerjan> hm
00:59:58 -!- Sprocklem has quit (Ping timeout: 268 seconds).
01:00:10 <fizzie> oerjan: I did the "no edits to .hgignore" thing, at least up to some point.
01:01:31 <oerjan> @tell CalvinGames <CalvinGames> What does NAND have to offer that NOR doesn't? <-- they're duals of each other, so not much.
01:01:31 <lambdabot> Consider it noted.
01:01:42 <oerjan> yay
01:01:42 <fizzie> oerjan: It's got one more letter.
01:02:15 <oerjan> you are technically correct, etc.
01:03:02 <fizzie> Technically correct is the best kind of correct.
01:04:07 <oerjan> @tell rdococ <rdococ> you might need a false value F but it'll work. unless you want symmetry. <-- yep. didn't i mention post's lattice already...
01:04:07 <lambdabot> Consider it noted.
01:04:13 <oerjan> fizzie: that was the etc. part.
01:04:29 <fizzie> Oh.
01:04:34 <fizzie> 5. technical -- (resulting from or dependent on market factors rather than fundamental economic considerations; "analysts content that the stock market is due for a technical rally"; "the fall is only a technical correction")
01:08:36 -!- DHeadshot has quit (Ping timeout: 268 seconds).
01:20:06 <Jafet> technically, it is the only kind of correct
01:30:25 -!- krok_ has quit (Quit: Leaving).
01:34:49 <oerjan> fizzie: for some reason i'm unable to view https://bitbucket.org/fizzie/hackbot/src/b78838e4ef4696f34106bdc06005b6fb74b89122/multibot_cmds/PRIVMSG/tr_60.cmd?at=default
01:35:08 <oerjan> ...and there it fixed itself
01:38:14 <oerjan> fizzie: it seems to me that if anything manages to raise and error inside the try, the rest of the cleanup won't work?
01:38:21 <oerjan> *an
01:38:25 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:38:33 * boily pokes hellørjan
01:40:05 * oerjan swellots boily -----###
01:41:27 * boily wobbles
01:42:44 <oerjan> `ls tmp
01:42:45 <HackEgo> paste \ spline \ spout
01:42:58 <oerjan> `url tmp/spout
01:42:59 <HackEgo> http://www2.codu.org/projects/hackbot/tmp/spout
01:46:20 -!- Perenelle has joined.
01:50:57 -!- moonythedwarf has quit (Ping timeout: 260 seconds).
01:51:22 <Perenelle> Bf is cool
01:51:51 <fizzie> oerjan: bitbucket's source view is a little oddishly slow sometimes. Yeah, that's fair -- in fact, I think would have broken if you just removed .hgignore entirely, because of that. Fixed now.
01:51:55 <Perenelle> I need a 20 byte compiler
01:51:58 <fizzie> oerjan: Can you tell there are no unit tests?
01:53:12 <oerjan> fizzie: also, your PR at Gregor's bitbucket doesn't mention the latest changes
01:53:23 <oerjan> (in the description)
01:53:31 <fizzie> Oh, does it have the commits?
01:53:36 <fizzie> I didn't know Bitbucket would do that.
01:53:36 <oerjan> yep
01:54:16 <fizzie> I would have liked to use separate branches for this, but I couldn't figure out a good way to then update the live HackEgo without making it very confusing.
01:55:05 <oerjan> maybe you could use separate branches, but merge into your own default branch?
01:55:22 * oerjan is wildly guessing
01:55:31 <fizzie> Mmmmaybe. It's a little too late now.
01:58:10 <fizzie> Description updated.
02:12:18 <tswett> Okay, is THIS definition of a triangle correct?:
02:12:31 <tswett> A triangle is the union of three line segments such that the intersections are exactly the endpoints.
02:13:34 <oerjan> `? `n
02:13:35 <HackEgo> ​`n? ¯\(°​_o)/¯
02:14:05 <shachaf> `? `spam
02:14:06 <HackEgo> ​`spam <n> prints the nth output piece of the previous `1, `2, `5, sport or spore command. n defaults to the next piece to display. Abbreviation: `n.
02:15:19 <tswett> `? ¯\(°​_o)/¯
02:15:20 <HackEgo> ​¯\(°​_o)/¯ is a misspelling of ¯\(°_o)/¯
02:15:57 <shachaf> `dowg¯\(°​_o)/¯
02:15:58 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/dowg¯\(°​_o)/¯: No such file or directory
02:16:02 <shachaf> `dowg ¯\(°​_o)/¯
02:16:04 <HackEgo> 4800:2014-09-10 <oerjän> mkdir wisdom/\'\xc2\xaf\\(\xc2\xb0\xe2\x80\x8b_o)\'; learn \'\xc2\xaf\\(\xc2\xb0\xe2\x80\x8b_o)/\xc2\xaf is a misspelling of \xc2\xaf\\(\xc2\xb0_o)/\xc2\xaf\'
02:16:14 <tswett> I'm trying to reason through my proposed definition, here.
02:16:39 <oerjan> tswett: looks good to me
02:17:00 <tswett> We've got three line segments. All of their endpoints must be intersections. So this certainly means, at least, that "triangles" must be connected.
02:17:19 <tswett> I'm trying to think... given that a point is an endpoint, what can we conclude?
02:17:29 <tswett> Like, suppose we have a line segment AB, with an endpoint A.
02:17:53 <tswett> Well, A must be an intersection, so there's another line segment containing A.
02:18:19 <oerjan> as much B. and those cannot be the same segment.
02:18:22 <oerjan> *as must
02:19:18 <tswett> Right, there can't be another line segment containing both A and B.
02:19:37 <tswett> So there must be line segments L and M, besides AB, such that L contains A and M contains B.
02:19:49 <tswett> So how do we show that A is an endpoint of L?
02:20:03 <oerjan> oh hm
02:20:18 <tswett> Well, if A is *not* an endpoint of L, that means that L contains two endpoints besides A (and besides B).
02:20:31 <tswett> So we can relabel L as CD, and C and D, being endpoints, must also be intersections.
02:20:35 <boily> fungot: before I go to sleep, sandefjordsmør.
02:20:35 <fungot> boily: is debian's gnome meant to feel fnord? well those and the list is empty
02:20:49 -!- boily has quit (Quit: SERIOUS CHICKEN).
02:21:13 * oerjan has no idea how sandefjordsmør tastes
02:22:06 <oerjan> C and D cannot be on AB. but they also cannot be on the third segment. contradiction.
02:22:21 <tswett> Yeah, that pretty much does it.
02:22:27 <oerjan> *cannot both be
02:22:30 <tswett> No two of the segments can share multiple points.
02:23:24 <tswett> So... the fact that no two segments can share multiple points, along with the fact that each segment has to have exactly two intersections, means that each segment intersects each other segment at exactly one point.
02:23:40 <tswett> Right?
02:23:44 <oerjan> right
02:24:10 <tswett> You have to have two intersections, but you can't have two intersections with the same segment, so you have to have two intersections with two different segments.
02:24:55 <oerjan> s/two/at least two/
02:25:00 <oerjan> (first instance)
02:25:20 <tswett> Well, there only exist two other segments at all.
02:25:43 <oerjan> yes, but that's how you prove there's exactly two
02:27:06 <tswett> Right, so line segment AB intersects the other two segments, L and M, at A and B, respectively. L has to have A as an endpoint, because if not (and its endpionts are C and D), then C has to lie on M (since it can't lie on AB since that would mean sharing multiple points), and D likewise has tolie on M, but C and D can't both lie on M.
02:27:38 <tswett> So all this, applying some WLOG, means that the line segments can be written as AB, AC, and BD, with C and D not necessarily distinct.
02:27:56 <tswett> Well, C has to be an intersection, and it can't be an intersection with AB, so it has to be an intersection with BD.
02:28:06 <tswett> Likewise, D has to be an intersection with AC.
02:28:23 <tswett> This means that AC and BD share point C, and they share point D, so we have C = D.
02:28:55 <tswett> Thus, we have line segments AB, AC, and BC, with no intersections besides the endpoints.
02:28:58 <tswett> Boom. Triangle.
02:31:13 <oerjan> `? erkin
02:31:14 <HackEgo> An erkin is a sort of small ickle, popular in Stern Urope.
02:31:38 <oerjan> i'm not entirely sure there's a common logic to what's left off
02:32:32 <oerjan> i guess it wobbles.
02:33:42 <oerjan> `cat bin/slashlearn
02:33:43 <HackEgo> sep="//" \ [[ "$1" == ?*"$sep"* ]] || { echo 'All le//rn variants now use two slashes in the format.' >&2 ; exit 1; } \ key="$(echo "${1%%$sep*}" | lowercase)" \ value="${1#*$sep}" \ [ -e "wisdom/$key" ] && verb="Relearned" || verb="Learned" \ echo "$value" > "$(echo-p "wisdom/$key")" && echo -n "$verb '$key': $(echo "$value" | sed 's.^[ ].&.
02:33:51 <tswett> Yeah, I don't immediately see what logic would produce Stern Urope.
02:34:01 <tswett> What's the difference between those two digraphs? Or is it their environment?
02:34:15 <oerjan> digraph?
02:34:28 <tswett> Yeah. Stern Urope.
02:34:51 <tswett> You're not going to force me to communicate clearly, are you?
02:34:58 <oerjan> heaven forbid
02:35:13 <oerjan> well, it goes like 2-1-2-1
02:35:49 <tswett> You're suggesting that the chop isn't determined entirely by the content of the word? This is adness.
02:35:58 <oerjan> ndeed
02:36:41 <tswett> Maybe the ule is that you can't alter the onunciation of the word too much.
02:36:54 <tswett> "Rope" is pronounced way too ongly.
02:37:05 <oerjan> ocking
02:39:03 <oerjan> `sled bin/slashlearn//1s,'.*','Usage: `le/[/]rn <key>//<wisdom>',
02:39:04 <HackEgo> bin/slashlearn//sep="//" \ [[ "$1" == ?*"$sep"* ]] || { echo 'All le//rn variants now use two slashes in the format.' >&2 ; exit 1; } \ key="$(echo "${1%%$sep*}" | lowercase)" \ value="${1#*$sep}" \ [ -e "wisdom/$key" ] && verb="Relearned" || verb="Learned" \ echo "$value" > "$(echo-p "wisdom/$key")" && echo -n "$verb '$key': $(echo "$value" | sed
02:39:12 <oerjan> fff
02:39:17 <oerjan> `revert
02:39:18 <HackEgo> Done.
02:40:08 <oerjan> oh
02:40:19 <oerjan> `sled bin/slashlearn//2s,'.*','Usage: `le/[/]rn <key>//<wisdom>',
02:40:21 <HackEgo> bin/slashlearn//sep="//" \ [[ "$1" == ?*"$sep"* ]] || { echo 'Usage: `le/[/]rn <key>//<wisdom>' >&2 ; exit 1; } \ key="$(echo "${1%%$sep*}" | lowercase)" \ value="${1#*$sep}" \ [ -e "wisdom/$key" ] && verb="Relearned" || verb="Learned" \ echo "$value" > "$(echo-p "wisdom/$key")" && echo -n "$verb '$key': $(echo "$value" | sed 's.^[ ].&.')"
02:40:36 <oerjan> `le/rn *MWAHAHAHA*
02:40:38 <HackEgo> Usage: `le/[/]rn <key>//<wisdom>
02:41:24 <shachaf> What's the point of that [/]?
02:42:00 <oerjan> TRADITION
02:42:20 <shachaf> i,i `le///rn
02:44:16 <oerjan> `? le/rn
02:44:17 <HackEgo> le/rn makes creating wisdom entries manually a thing of the past.
02:45:23 <shachaf> That joke is no longer applicable. :-(
02:46:45 <oerjan> isn't it?
02:48:39 <shachaf> Am I missing a level?
02:49:07 <shachaf> At the time, the joke was that le/rn couldn't be used to create the entry le/rn, because it didn't support entries containing /.
02:49:10 <shachaf> But now it does.
02:55:49 -!- hppavilion1 has quit (Ping timeout: 260 seconds).
02:56:21 <shachaf> `? tmp
02:56:22 <HackEgo> 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.
02:56:29 <shachaf> `hurl tmp/abc
02:56:30 <HackEgo> File is outside web-viewable filesystem repository.
02:56:37 <shachaf> `url tmp/abc
02:56:37 <HackEgo> http://www2.codu.org/projects/hackbot/tmp/abc
03:05:33 -!- staffehn has quit (Quit: No Ping reply in 180 seconds.).
03:05:52 -!- staffehn has joined.
03:10:16 <shachaf> `url /hackenv/tmp/abc
03:10:17 <HackEgo> http://www2.codu.org/projects/hackbot/tmp/abc
03:12:59 <shachaf> `url .hg/abc
03:12:59 <HackEgo> File is outside web-viewable filesystem repository.
03:13:52 <shachaf> `url abc/def
03:13:52 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/abc/def
03:21:34 <fizzie> I was once wondering if I should make those URLs something like http[s]://hackego.esolangs.org/{fshg,tmp}/... instead.
03:22:46 <fizzie> (Or more preferably http://hackegousercontent.com/... but domains don't grow in trees.)
03:22:54 -!- zzo38 has joined.
03:23:23 <shachaf> They don't?
03:43:34 -!- deepbook5broo has joined.
04:04:23 -!- adu has joined.
04:23:02 <shachaf> `cat bin/edit
04:23:03 <HackEgo> cat: bin/edit: No such file or directory
04:29:30 -!- doesthiswork has quit (Quit: Leaving.).
04:29:31 <shachaf> `` >bin/edit echo '#!/usr/bin/env python'; >>bin/edit echo 'import sys, urllib'; >>bin/edit echo 'print "http://slbkbs.org:5196/edit?path=" + urllib.quote(sys.argv[1])'; chmod +x bin/edit
04:29:33 <HackEgo> No output.
04:29:39 <shachaf> `edit tmp/spout
04:29:39 <HackEgo> http://slbkbs.org:5196/edit?path=tmp/spout
04:29:50 <shachaf> Oops.
04:30:02 <shachaf> I forgot a step.
04:30:25 <shachaf> `` >bin/edit echo '#!/usr/bin/env python'; >>bin/edit echo 'import sys, os, urllib'; >>bin/edit echo 'print "http://slbkbs.org:5196/edit?path=" + urllib.quote(os.path.realpath(sys.argv[1]))'; chmod +x bin/edit
04:30:27 <HackEgo> No output.
04:30:29 <shachaf> `edit tmp/spout
04:30:29 <HackEgo> http://slbkbs.org:5196/edit?path=/hackenv/tmp/spout
04:30:33 -!- Perenelle has quit (Ping timeout: 260 seconds).
04:30:57 <shachaf> `fetch /hackenv/tmp/spout http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspout
04:30:58 <HackEgo> In another world: /hackenv/tmp/spout
04:31:07 <shachaf> `fetch tmp/spout http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspout
04:31:08 <HackEgo> 2017-02-17 04:30:54 URL:http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspout [0/0] -> "tmp/spout" [1]
04:31:14 <shachaf> `n
04:31:15 <HackEgo> 1/0:
04:31:19 <shachaf> `cat tmp/spout
04:31:19 <HackEgo> No output.
04:31:28 <shachaf> Oops.
04:34:01 <zzo38> When are you going to implement Checkout on GPU?
04:34:35 <shachaf> `fetch tmp/spline http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspline
04:34:36 <HackEgo> 2017-02-17 04:34:22 URL:http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspline [3/3] -> "tmp/spline" [1]
04:34:39 <shachaf> `cat tmp/spline
04:34:40 <HackEgo> 5
04:35:31 <shachaf> `fetch /hackenv/bin/edit http://slbkbs.org:5196/get?path=%2Fhackenv%2Fbin%2Fedit
04:35:32 <HackEgo> In another world: /hackenv/bin/edit
04:35:37 <shachaf> `fetch bin/edit http://slbkbs.org:5196/get?path=%2Fhackenv%2Fbin%2Fedit
04:35:38 <HackEgo> 2017-02-17 04:35:24 URL:http://slbkbs.org:5196/get?path=%2Fhackenv%2Fbin%2Fedit [210/210] -> "bin/edit" [1]
04:35:50 <shachaf> `edit
04:35:51 <HackEgo> ​/usr/bin/env: python
04:36:20 <shachaf> `cat bin/edit
04:36:21 <HackEgo> ​#!/usr/bin/env python
04:36:30 <shachaf> `xxd bin/edit
04:36:31 <HackEgo> 0000000: 2321 2f75 7372 2f62 696e 2f65 6e76 2070 #!/usr/bin/env p \ 0000010: 7974 686f 6e0d 0a0d 0a69 6d70 6f72 7420 ython....import \ 0000020: 7379 732c 206f 732c 2075 726c 6c69 620d sys, os, urllib. \ 0000030: 0a0d 0a69 6620 6c65 6e28 7379 732e 6172 ...if len(sys.ar \ 0000040: 6776 2920 3c20 323a 0d0a 2020 7072 696e gv) < 2:.. prin \ 00000
04:37:45 <shachaf> Hmm.
04:40:53 * oerjan cannot imagine why files are not dumped as bytes by default
04:42:25 <shachaf> `fetch bin/edit http://slbkbs.org:5196/get?path=%2Fhackenv%2Fbin%2Fedit
04:42:26 <HackEgo> 2017-02-17 04:42:12 URL:http://slbkbs.org:5196/get?path=%2Fhackenv%2Fbin%2Fedit [201/201] -> "bin/edit" [1]
04:42:32 <shachaf> `edit
04:42:33 <HackEgo> usage: edit <path>
04:42:48 <shachaf> `edit bin/abc
04:42:48 <HackEgo> http://slbkbs.org:5196/edit?path=/hackenv/bin/abc
04:42:55 <shachaf> `edit tmp/spout
04:42:56 <HackEgo> http://slbkbs.org:5196/edit?path=/hackenv/tmp/spout
04:43:17 <shachaf> `fetch tmp/spout http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspout
04:43:18 <HackEgo> 2017-02-17 04:43:04 URL:http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspout [13/13] -> "tmp/spout" [1]
04:43:24 <shachaf> `n 1
04:43:24 <HackEgo> 1/2:one
04:43:25 <shachaf> `n
04:43:26 <HackEgo> 2/2:two
04:43:34 <shachaf> `cat tmp/spout
04:43:34 <HackEgo> one \ two \ three
04:43:38 <shachaf> `n
04:43:38 <HackEgo> 1/2:one
04:43:42 <shachaf> pretty good
04:44:09 <oerjan> i sense an off by one error
04:44:18 <shachaf> `xxd tmp/spout
04:44:19 <HackEgo> 0000000: 6f6e 650a 7477 6f0a 7468 7265 65 one.two.three
04:44:22 <shachaf> There's no final newline.
04:44:29 <oerjan> aha
04:44:29 <shachaf> So the wrapping logic happens too early.
04:44:43 <shachaf> Anyway, this will be good enough for editing, I guess.
04:44:45 <oerjan> `wc tmp/spout
04:44:45 <HackEgo> ​ 2 3 13 tmp/spout
04:44:59 <shachaf> @time fizzie
04:45:00 <lambdabot> Local time for fizzie is Fri Feb 17 04:44:59 2017
04:45:07 <shachaf> @tell fizzie please allow absolute paths in `fetch twh
04:45:07 <lambdabot> Consider it noted.
04:48:50 <oerjan> shachaf: you could also strip the /hackenv/ in your page hth
04:49:04 <oerjan> `cat bin/spam
04:49:04 <HackEgo> line="${1-$(cat /hackenv/tmp/spline)}"; len="$(wc -l /hackenv/tmp/spout | awk '{print $1}')"; echo -n "$line/$len:"; sed -n "${line}{p;q}" /hackenv/tmp/spout; echo "$((line<len?line+1:1))" > /hackenv/tmp/spline
04:49:34 <shachaf> oerjan: I could. In fact I do it anyway when I fetch the files.
04:49:42 <shachaf> But `fetch ought to support canonical paths.
04:49:50 <shachaf> But fine.
04:49:53 <oerjan> technically correct
04:50:24 <oerjan> i didn't know wc -l was this scow
04:50:35 <oerjan> `n 3
04:50:35 <HackEgo> 3/2:three
04:50:44 <oerjan> `n 4
04:50:45 <HackEgo> 4/2:
04:51:29 <shachaf> `edit bin/url
04:51:29 <HackEgo> http://slbkbs.org:5196/edit?path=/hackenv/bin/url
04:57:23 <oerjan> what was the awk in bin/spam for, agai
04:57:25 <oerjan> n
04:59:25 <shachaf> `doat bin/spam
04:59:27 <HackEgo> 8289:2016-06-03 <shachäf> mkx bin/spam//line="$(cat /hackenv/tmp/spline)"; sed -n "${line}p" /hackenv/tmp/spout; echo "$((line+1))" > /hackenv/tmp/spline \ 8292:2016-06-03 <shachäf> mkx bin/spam//line="$(cat /hackenv/tmp/spline)"; len="$(wc -l /hackenv/tmp/spout | awk \'{print $1}\')"; echo -n "$line/$len:"; sed -n "${line}p" /hackenv/tmp/spout
05:00:00 <shachaf> Maybe because wc precedes the line count with whitespace?
05:00:12 <shachaf> `` wc -l tmp/spout
05:00:13 <HackEgo> 2 tmp/spout
05:00:22 <shachaf> Oh, no, it includes the name.
05:00:39 <oerjan> hm not if piped
05:00:54 <shachaf> `` cat tmp/spout | wc -l
05:00:55 <HackEgo> 2
05:00:58 <shachaf> `` cat tmp/spout | wc -l | xxd
05:00:59 <HackEgo> 0000000: 320a 2.
05:01:01 <shachaf> Oh well.
05:01:15 <shachaf> The annoying thing is that I have a hilight on that domain name.
05:07:44 <shachaf> `` cd bin; wc * | sort -rn
05:07:53 <HackEgo> ​ 160398 430569 17108271 total \ 103525 133799 3407446 macro \ 19353 57384 592337 word \ 9289 48572 3027945 jq \ 7751 45913 1638192 7za \ 5254 42641 2301021 tclkit \ 4853 27899 1613113 units \ 1645 9418 415968 ploki \ 1428 13345 806552 udcli \ 1224 4048 44974 gs2.py \
05:21:05 <shachaf> `nooodl: nooodl
05:21:06 <HackEgo> nooodl
05:22:15 -!- erkin has quit (Quit: Leaving).
05:23:02 <oerjan> `cat bin/nooodl:
05:23:03 <HackEgo> ​ELF............>.....¤@.....@.......€b..........@.8..@.........@.......@.@.....@.@.....ø.......ø....................8......8@.....8@............................................@.......@.....”W......”W........ ............à]......à]`.....à]`.....°......`........ ...........ø]......ø]`.....ø]`.....à.......à................
05:23:06 <oerjan> wat
05:23:15 <oerjan> `doag bin/nooodk
05:23:16 <HackEgo> No output.
05:23:19 <pikhq> Welp.
05:23:19 <oerjan> `doag bin/nooodl
05:23:20 <HackEgo> No output.
05:23:23 <oerjan> silly keys
05:23:32 <shachaf> hikhq
05:23:33 <oerjan> `doag bin/nooodl:
05:23:35 <HackEgo> 2787:2013-04-23 <noood̈l> ln -s /bin/echo bin/nooodl:
05:23:42 <shachaf> `edit wisdom/pikhq
05:23:42 <HackEgo> http://slbkbs.org:5196/edit?path=/hackenv/wisdom/pikhq
05:23:44 <oerjan> ah.
05:23:55 <shachaf> `? pikhq
05:23:56 <HackEgo> pikhq? ¯\(°​_o)/¯
05:24:36 <oerjan> shocking
05:24:42 <oerjan> `dowg pikhq
05:24:44 <HackEgo> No output.
05:24:51 <pikhq> Woe betides.
05:30:08 -!- adu has quit (Quit: adu).
05:35:27 -!- Sprocklem has joined.
05:37:00 -!- deepbook5broo has left.
05:44:38 <HackEgo> [wiki] [[Jolverine Turing-completeness proof]] https://esolangs.org/w/index.php?diff=50996&oldid=33932 * Oerjan * (+48) Why isn't this on by default...
05:56:33 -!- The has joined.
05:56:43 -!- The has changed nick to TheNeolutionist.
05:56:49 <TheNeolutionist> Hey everybody!
05:57:11 -!- oerjan has quit (Quit: Nite).
05:57:56 -!- TheNeolutionist has left.
07:19:59 -!- hppavilion1 has joined.
07:21:41 -!- hppavilion1 has quit (Client Quit).
07:24:16 <int-e> fizzie: "Oerjan * (+48) Why isn't this on by default..." <-- the CSS served by esolangs has two entries for pre,.mw-code; the first one sets white-space:pre, and the second one sets white-space:pre-wrap; As a wild guess, maybe the former is a wikimedia default and the latter may be some custom theme?
07:29:38 -!- Sprocklem has quit (Ping timeout: 240 seconds).
07:34:47 <shachaf> hint-e
08:00:43 -!- augur has quit (Remote host closed the connection).
08:12:34 <rdococ> when I make an antivirus, it will detect windows as spyware
08:25:04 -!- augur has joined.
09:18:39 -!- augur has quit (Read error: Connection reset by peer).
09:19:14 -!- augur has joined.
09:22:45 -!- moonythedwarf has joined.
09:23:34 <fizzie> shachaf: The problem with absolute paths is that "/hackenv" is not a path from the perspective of `fetch.
09:24:03 <fizzie> /hackenv is a piece of fiction inside the sandbox, but `fetch doesn't run inside it.
09:24:22 <fizzie> It already supports absolute paths if you make them the right kind of absolute paths.
09:24:54 <fizzie> What do you need absolute paths for anyway?
09:27:49 -!- moonythedwarf has quit (Ping timeout: 260 seconds).
09:29:05 <fizzie> Oh, that's a thing.
09:29:45 <fizzie> Well. Maybe.
09:29:47 <fizzie> @ask shachaf What does the "Edit" button do? And see above for some comments on absolute paths.
09:29:47 <lambdabot> Consider it noted.
09:34:00 <b_jonas> fizzie: what? I can download to an absolute path, and I can overwrite the sandboxing executable with it?
09:34:23 <int-e> fizzie: the "edit" button updates the on-server copy of the file to what's in the textarea...
09:35:07 <int-e> fizzie: apparently the workflow is clickfetch -> edit textarea -> click edit -> copy command line displayed at top to hackego
09:35:28 <fizzie> Oh, "on-server" as in the one that comes out of /get. Right. Got it.
09:35:37 <fizzie> @tell shachaf Never mind, I was already told.
09:35:37 <lambdabot> Consider it noted.
09:35:59 <fizzie> b_jonas: You can download to an absolute path if it's within the directory that shows up as /hackenv inside the sandbox.
09:36:16 <fizzie> (And outside .hg and so on.)
09:36:31 <int-e> http://slbkbs.org:5196/edit?path=foobar
09:42:00 <b_jonas> fizzie: ah
09:45:35 <fizzie> It's not common knowledge what that path is, but I think there was some way it shows up.
09:46:27 <fizzie> `` cat /proc/mounts | grep /hackenv
09:46:28 <HackEgo> none /hackenv hostfs rw,nosuid,relatime,/home/hackbot/hackbot.hg/multibot_cmds/env/ 0 0 \ none /hackenv/.hg hostfs ro,nosuid,relatime,/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/ 0 0
09:46:34 -!- AnotherTest has joined.
09:47:17 <fizzie> `fetch /home/hackbot/hackbot.hg/multibot_cmds/env/tmp/test http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspline
09:47:19 <HackEgo> 2017-02-17 09:47:04 URL:http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspline [0/0] -> "tmp/test" [1]
09:47:23 <fizzie> `rm tmp/test
09:47:23 <HackEgo> No output.
09:47:52 <int-e> ugh, how secure is that?
09:51:41 <fizzie> Discussed off-channel.
09:52:01 <fizzie> `fetch /hackenv/tmp/test http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspline
09:52:02 <HackEgo> 2017-02-17 09:51:48 URL:http://slbkbs.org:5196/get?path=%2Fhackenv%2Ftmp%2Fspline [0/0] -> "tmp/test" [1]
09:52:35 <fizzie> Made that work too, although in the simplest possible way (just scrubbing "/hackenv/" out if the argument starts with that).
10:00:21 <b_jonas> fizzie: wait, you put the filename _before_ the url? ouch
10:00:32 <b_jonas> oh well
10:02:55 -!- augur_ has joined.
10:03:09 <fizzie> b_jonas: Yes, because of
10:03:10 <fizzie> <oerjan> `fetch minsk https://esolangs.org/wiki/The Amnesiac From Minsk
10:03:10 <fizzie> <HackEgo> 2017-02-16 01:05:46 URL:https://esolangs.org/wiki/The%20Amnesiac%20From%20Minsk [41183] -> "minsk" [1]
10:03:44 <fizzie> It seemed to me the URL was more likely (even if it's not all *that* likely) to contain spaces than the filename.
10:06:18 -!- augur has quit (Ping timeout: 240 seconds).
10:11:45 -!- Phantom_Hoover has joined.
10:11:45 -!- Phantom_Hoover has quit (Changing host).
10:11:45 -!- Phantom_Hoover has joined.
10:51:21 <shachaf> fizzie: Ah, I see.
10:51:36 <shachaf> @messages-low
10:51:36 <lambdabot> fizzie asked 1h 21m 49s ago: What does the "Edit" button do? And see above for some comments on absolute paths.
10:51:36 <lambdabot> fizzie said 1h 15m 59s ago: Never mind, I was already told.
10:52:52 <shachaf> int-e: Yes, just a mutable pastebin that supports fetching from codu.
10:53:59 <shachaf> I think it's sufficient for simple changes to multiline files.
10:54:33 <shachaf> fizzie: Anyway I already updated the `fetch command to remove /hackenv/
10:55:24 <shachaf> fizzie: Why not support HTTP inside the sandbox? Wasn't that possible in the past?
10:57:29 <b_jonas> shachaf: I think it's deliberately limited that way
10:57:55 <b_jonas> it would be possible to allow it, but users could abuse that
10:59:34 <shachaf> I thought there was a proxy once.
10:59:44 <shachaf> There are remnants of it.
11:01:44 <b_jonas> At one point I added an experimental function to jevalbot that could send any command to buubot and wait for the reply. This was a true function so it could be called (multiple times) programmably from a jeval command.
11:02:06 <b_jonas> That was an experiment on what kind of limited external interfacing I could add in it
11:05:04 <fizzie> shachaf: There was a proxy with a whitelist of addresses.
11:05:23 <fizzie> I don't think it's been set up in the new system, that's all.
11:06:14 <fizzie> There's still the port forwarding out of umlbox, and probably proxy environment settings, but nothing listening on it.
11:07:19 <shachaf> `hurl
11:07:20 <HackEgo> http://codu.org/projects/hackbot/fshg/
11:08:19 <fizzie> Away for a while.
11:08:39 <shachaf> `2017
11:08:40 <HackEgo> Hello, world!
11:08:54 <shachaf> `2016
11:08:55 <HackEgo> No output.
11:08:58 <shachaf> `2015
11:08:59 <HackEgo> Hello, world!
11:09:01 <shachaf> `2014
11:09:02 <HackEgo> No output.
11:10:40 <shachaf> What happened with CALESYTA 2016?
11:11:20 <shachaf> https://esolangs.org/wiki/CALESYTA says the website was taken down as of Jan 2016. I guess it means 2017.
11:13:01 <shachaf> `? keenlist
11:13:02 <HackEgo> keenlist is notification for when Tom Hall finally acquires the necessary intellectual property rights to create the videogame series Commander Keen: The Universe is Toast
11:14:29 -!- augur_ has quit (Remote host closed the connection).
11:35:38 -!- boily has joined.
12:16:19 <b_jonas> shachaf: it fell off the internet
12:16:21 -!- boily has quit (Quit: IMITATION CHICKEN).
12:16:39 <b_jonas> and yes, it means 2017-01, sorry, I always make that kind of mistake near the start of the year
12:16:48 <b_jonas> I keep writing 2016 in dates still and it's february
12:17:16 <HackEgo> [wiki] [[CALESYTA]] https://esolangs.org/w/index.php?diff=50997&oldid=50830 * B jonas * (+0) /* 2016 CE */
12:17:29 -!- Qunar has joined.
12:36:12 -!- Qunar has quit (Quit: Ex-Chat).
12:44:20 -!- AnotherTest has quit (Ping timeout: 255 seconds).
13:15:52 <b_jonas> `card-by-name tinder-wall
13:15:53 <HackEgo> No output.
13:15:57 <b_jonas> `card-by-name tinder wall
13:15:58 <HackEgo> Tinder Wall \ G \ Creature -- Plant Wall \ 0/3 \ Defender (This creature can't attack.) \ Sacrifice Tinder Wall: Add {R}{R} to your mana pool. \ {R}, Sacrifice Tinder Wall: Tinder Wall deals 2 damage to target creature it's blocking. \ IA-C, ME2-C
13:37:39 -!- doesthiswork has joined.
13:45:15 <b_jonas> Stupid M:TG question. What the heck is rule 702.42a for? It talks about a creature having multiple instances of modular, but as far as I can see, that's impossible. It's not an activated ability, so it can't be stolen, and there's nothing printed that gives modular to any object.
13:51:01 -!- ski has quit (Ping timeout: 260 seconds).
14:08:09 -!- ski has joined.
14:37:05 <HackEgo> [wiki] [[Language list]] https://esolangs.org/w/index.php?diff=50998&oldid=50989 * Calvin Games * (+16) /* I */
14:53:02 -!- sirnaysayer has quit (Ping timeout: 255 seconds).
14:54:19 -!- heroux has quit (Ping timeout: 268 seconds).
14:54:29 -!- heroux has joined.
14:55:07 -!- sirnaysayer has joined.
14:59:09 -!- heroux has quit (Ping timeout: 260 seconds).
15:13:37 -!- sirnaysayer has quit (Ping timeout: 260 seconds).
15:14:15 -!- heroux has joined.
15:17:55 -!- sirnaysayer has joined.
15:22:16 <b_jonas> `scheme
15:22:17 <HackEgo> Rotted Ones, Lay Siege
15:22:23 <b_jonas> `recipe
15:22:24 <HackEgo> ions; chopped \ 4 tb Sugar \ 1 ds Pepper sauce \ 1 c Kikkoman salt \ \ Preheat oven to 350F. On let stand around the bones with a skewers. Arrange peaks \ in a glass skillet chopped fresh golden pecans with freeze or the mustard \ sauces has barbecue. Remove and canned the cookies, and cook \ till the flavors (about 30-45 minutes). FATFREE
15:22:34 <b_jonas> `ftoc 350
15:22:35 <HackEgo> 350.00°F = 176.67°C
15:23:00 <b_jonas> "On let stand around the bones with a skewers."?
15:23:27 <b_jonas> and "glass skillet"? definitely has a skillet obsession
15:23:55 <b_jonas> but at least it's fat-rfee
15:34:09 -!- rottytooth has joined.
15:35:00 -!- rottytooth has quit (Client Quit).
15:37:54 -!- tromp has quit (Remote host closed the connection).
15:38:39 -!- ais523 has joined.
15:38:47 -!- rottytooth has joined.
15:39:22 -!- Sprocklem has joined.
15:46:47 -!- tromp has joined.
15:54:03 <zgrep> `recipe
15:54:03 <HackEgo> le boiler till the mixture is absorbed. Remove and blend until the \ consistenches from the heat and stir in the flour, and all the vegetables \ and toss in boiling water. Sprinkle with \ the reserved star the milk. Sprinkle a serving with rice, or brown stockered, and \ tear's freezed with the following as possible. \ \ In large bowl, combi
15:54:43 * zgrep tries to prepare chopped ions
15:55:22 <zzo38> b_jonas: Do you mean 702.42b? In my opinion that rule is redundant but may be for clarification; but at least I like to have the rules even in cases that there may be no existing cards, although rule 702.42b is unnecessary anyways.
15:58:23 -!- otherbot has joined.
16:04:45 <b_jonas> zzo38: yes, I mean 702.42b, sorry
16:05:46 <b_jonas> zzo38: my problem is that it both looks like a clarification rule that doesn't add anything to the other rules but an explanation, but it also refers to a situation that's clearly impossible, and isn't even likely to happen in the future accidentally from a rules hole, so I don't see why they need to clarify it?
16:06:46 <zzo38> b_jonas: Yes, although I think the clarification is unnecessary even if it can happen in future; it is clear enough already I think.
16:07:26 <b_jonas> zzo38: there are some rules that only give reminders about other rules for common situations, that I understand; and there are rules that refer to situations that are probably impossible but could occasionally result from accidental rules holes and tries to mitigate them, I can understand that too.
16:07:39 <b_jonas> but I don't get the combination
16:07:49 <b_jonas> also, #mtgrules confirmed that the situation is impossilbe
16:08:14 <b_jonas> (so it's not just some obscure thing like Cairn Wonderer printed with "modular" in the list that I didn't notice)
16:08:16 -!- furozo has joined.
16:08:39 <zzo38> b_jonas: Yes, although in this case I think it is clear enough anyways, that a clarification shouldn't be needed even if it is possible; other rules make it clear, I think.
16:09:48 -!- moonythedwarf has joined.
16:13:24 -!- tromp has quit (Remote host closed the connection).
16:19:48 <int-e> so are there any static abilities that have no reminder or rule about what happens when they're duplicated?
16:20:17 <int-e> (well, keyword abilities)
16:20:19 <HackEgo> [wiki] [[A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer.]] https://esolangs.org/w/index.php?diff=50999&oldid=47172 * Rottytooth * (+79)
16:20:23 <b_jonas> int-e: there probably are, in cases when it's obvious
16:20:46 <b_jonas> let me check
16:20:57 <b_jonas> do you specifically want static only, as opposed to modular?
16:21:08 -!- DHeadshot has joined.
16:25:11 -!- Sprocklem has quit (Ping timeout: 240 seconds).
16:25:27 <ais523> b_jonas: fizzie: AFAICT, the weird nonUTF8 garbage in the Google ngrams files is meant to be a comma
16:25:42 <ais523> every other ASCII punctuation mark is in the files, but not comma, and the garbage has a frequency that's really believable for commas
16:26:51 <b_jonas> ais523! you're here, I didn't see you enter
16:26:54 <b_jonas> I have a question for you
16:27:00 <int-e> b_jonas: maybe it would be fair to consider keyword abilities in general. I guess I don't really know what I'm after.
16:27:21 <\oren\> https://www.youtube.com/watch?v=1HF2InFzcdI
16:27:32 <moonythedwarf> *coughing*
16:28:16 <ais523> b_jonas: what's the question?
16:28:39 <b_jonas> int-e: buyback doesn't have such a reminder rule
16:29:08 <b_jonas> int-e: nor does cycling
16:29:42 <b_jonas> even though some people can lead a second bike next to them while cycling slowly
16:30:35 <b_jonas> echo, fading, flashback don't have reminders either
16:30:54 <b_jonas> I'll stop reading there, but probably a lot of abilities starting with [g-z] don't either
16:31:52 <HackEgo> [wiki] [[A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer.]] https://esolangs.org/w/index.php?diff=51000&oldid=50999 * Rottytooth * (+442) /* Implementation */ added Python source by M654
16:31:56 <ais523> if something has two instances of fading, it clearly loses counters twice as fast
16:32:08 <ais523> echo would force you to pay twice, I suspect
16:32:40 <ais523> if you have multiple instances of flashback, you could likely use either of them, but only flash back an individual card once (note: this situation can actually happen using Past in Flames)
16:33:07 <int-e> echo is a good example to my mind
16:33:12 <b_jonas> zzo38: rule 702.43c exists for a single card that has the ability "Modular--Sunburst", yet it is phrased in a very general way so you could write Rampange--Sunburst or Vanishing--Sunburst or even Amplify--Sunburst. That ability looks like it's made for you, since you like to use keyword abilities in a strange way.
16:33:42 -!- Sprocklem has joined.
16:34:20 <b_jonas> ais523: that is explained in the explanatory rules for Cumulative Upkeep, whereas the rules for Vanishing just say "If a permanent has multiple instances of vanishing, each works separately." which doesn't really explain anything
16:34:38 <ais523> b_jonas: Fabricate--Sunburst strikes me as being potentially interesting
16:34:58 <ais523> also, fading isn't based on cumulative upkeep
16:35:06 <ais523> other than that they both use upkeep-adjusted counters
16:35:27 <int-e> . o O ( so where's the enchantment that says "While $this is in play, all permanents have echo"? )
16:35:27 <b_jonas> I'm not sure, but I think you can give a permanent multiple instances of cumulative upkeep with Balduvian Shaman plus standard techinques, but you can't have multiple copies of Vanishing or Fading on a permanent.
16:35:32 <zzo38> Maybe "Fabribate--Sunburst" is interesting, although I don't really like "Modular--Sunburst"; I would have preferred "Sunburst, Modular 0" for the single card that uses that.
16:35:37 <HackEgo> [wiki] [[Special:Log/move]] move * Rottytooth * moved [[A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer.]] to [[A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.]]: As per the rule of the language, it is re
16:36:36 <ais523> b_jonas: I wonder if an older version Reality Acid ever granted Vanishing, but it was changed to make the rules easier to understand?
16:37:10 <rdococ> ..
16:37:17 <b_jonas> ais523: older version? Vanishing is the new keyword, fading is the old one, so that would be impossible
16:37:22 <int-e> . o O ( wtf is that page title )
16:37:41 <ais523> b_jonas: I mean, an unreleased/alpha/playtest version
16:38:05 <ais523> int-e: some esolangs are weirdly named
16:38:26 <b_jonas> ais523: dunno, but how would that work? that wouldn't put counters on the enchanted permanent
16:38:35 <b_jonas> ok wait, that's a stupid argument
16:38:41 <HackEgo> [wiki] [[A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.]] https://esolangs.org/w/index.php?diff=51003&oldid=51001 * Rottytooth * (+186) updated due to change in name
16:38:42 <ais523> you'd put them on in an ETB trigger
16:38:48 <HackEgo> [wiki] [[Talk:Not a brainfuck derivative]] N https://esolangs.org/w/index.php?oldid=51004 * Rdococ * (+185) Created page with "== wtf is this? == seriously. ik it's a joke but at least tell us its structure, like HQ9+ and Hello do. ~~~~"
16:38:56 <ais523> however I suspect it might potentially be broken when combined with cards that use time counters for something else
16:39:05 <b_jonas> we have two or three cards with that explicitly exile permanents with time counters and make them suspended
16:39:29 <ais523> yes but I don't know of an enchantment that can enchant an exiled card
16:39:37 <ais523> (I think this is rules-legal, just something that's never been done)
16:41:13 <rdococ> wth why is mindscrew a redirect to b****fuck
16:41:29 <b_jonas> ais523: I don't think it would be broken. counters are usually balanced in ways that more counters is better, so removing counters is cheap but adding counters is expensive; counters are often broken when it goes against this, namely in the case of Dark Depths, undying, persist, and -1/-1 counters, especially as used in the Shadowmoor blocks.
16:41:40 <b_jonas> at least on permanents
16:41:51 <b_jonas> TSP uses counters on permanents correctly: more time counters is always better for you.
16:42:02 <\oren\> tablespoon?
16:42:06 <b_jonas> there's a fading card that uses removing time counters as a cost
16:42:14 <b_jonas> \oren\: Time Spiral
16:42:17 <\oren\> oh
16:42:31 <b_jonas> the block that introduced Vanishing and that card ais talked about
16:42:58 <HackEgo> [wiki] [[A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.]] https://esolangs.org/w/index.php?diff=51005&oldid=51003 * Rottytooth * (+301) some commentary
16:43:16 <int-e> rdococ: clearly it's a better-than-brainfuck-derivative language despite its lack of specification because we all agree that brainfuck derivatives are the worst languages.
16:43:29 <rdococ> true, but it could be made even better.
16:43:58 <int-e> but then it would no longer have a chance of being in the second tier of languages ;)
16:44:04 <HackEgo> [wiki] [[Language list]] https://esolangs.org/w/index.php?diff=51006&oldid=50998 * Rottytooth * (+4) /* A */ A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.
16:44:09 <int-e> (just above the bottom)
16:44:17 <rdococ> heh
16:44:26 <rdococ> it could be in the third tier
16:44:53 <ais523> isn't a language defined purely by not being a brainfuck derivative, in some sense, a brainfuck derivative?
16:44:57 <b_jonas> ais523: Here's the question. Intercal has the rule that a program is valid only if at least one third and at most one fifth of the statement introducers are polite. If your input is a string of polite and non-polite, is there a CF grammar that determines if the polite symbols are in this range? Is there an unambiguous CF rule?
16:44:59 <ais523> it wouldn't exist if not for brainfuck
16:45:16 <rdococ> true too
16:45:28 <ais523> b_jonas: well, it's clearly impossible with a regular language, as those only have a finite amount of state
16:45:35 <b_jonas> ais523: yep
16:45:38 <ais523> however context-free languages are more powerful than that
16:46:10 <b_jonas> ais523: I think, but I'm not sure, that the language of strings with exactly as many polite and non-polite symbols, in any order, can be matched with an unambiguous CF grammar,
16:46:13 <ais523> clearly you can match any /specific/ ratio, e.g. "exactly ¼ polite"
16:46:41 <ais523> this means that you can also match "at least ⅕ polite" and "at most ⅓ polite"
16:46:47 <b_jonas> and I think the language of strings where at least half of the symbols is polite can also be matched with an unambiguous CF grammar
16:46:51 <ais523> so the remaining question is as to whether you can match both at the same time
16:46:52 <b_jonas> ais523: what why?
16:47:07 <b_jonas> oh, you mean if you just want CF, not unambiguous FC
16:47:23 <ais523> I'm not caring about unambiguity at this point
16:47:42 <rdococ> . o O ( is a flux capacitor a way to temporarily store flux? )
16:47:44 <ais523> is there a theorem that says that CF grammars can/can't always be disambiguated?
16:48:02 <b_jonas> ais523: yes, there is that they can't always be disambiguated
16:48:16 <ais523> IIRC it's undecidable whether they actually are ambiguous, but that's a different question
16:48:25 <b_jonas> ais523: quoting myself from the wiki: The classic textbook Aho, Ullman, ''The Theory of Parsing, Translation, and Compiling'', (1972), explains in chapter 2.46 that there exist such context-free languages that have no unambiguous context-free grammars, and that such languages are called inherently ambiguous. After that, it states that “no inherently ambiguous programming languages have been devised yet”. This sounds like a challenge to find a program
16:48:36 <ais523> like, it's not obviously impossible to have grammars for which you can't decide whether they're ambiguous, but you know there's an unambiguous equivalent
16:48:45 <ais523> ah right
16:48:52 -!- erkin has joined.
16:48:56 <ais523> I like the idea of an inherently ambiguous programming language
16:49:03 <b_jonas> ais523: an example for an inherently unambiguous language is the language of strings where the round brackets are balanced OR the square brackets are balanced
16:49:24 <ais523> you mean inherently ambiguous?
16:49:28 <b_jonas> yes, inherently ambiguous
16:50:35 <ais523> so are there any theorems about whether, given a grammar that matches set of strings A, and a grammar that matches set of strings B, there exists a grammar that matches the set of strings (A intersection B)?
16:50:38 <b_jonas> and because of this, I've been struggling to make an esolang with an inherently ambiguous CF grammar where that property seems natural rather than tacked on, and the most obvious way is to take an existing language and allow you to use alternate pair of characters for parenthesis, but only if you use them consistently through the program,
16:50:39 <ais523> especially wrt CF grammars
16:50:43 <ais523> I know that with regexes there is
16:51:01 <b_jonas> but I don't want to make a bf-alike, and I haven't found a really good way to make such a language yet.
16:51:10 <b_jonas> But I wonder if INTERCAL would naturally be like that.
16:51:16 <ais523> b_jonas: ooh, this matches up with a golfing language idea I had
16:51:27 <ais523> the point is that most programs only care about using a subset of the language's primitives
16:51:33 <ais523> so you can use some of the others for your own purposes
16:52:19 <b_jonas> Mind you, in the defense of Aho, Ullman, it's clear that they understand in their book that you use CF parsers only for some parts of a language, and you eg. match identifiers or do type-checking later after that grammar, so
16:52:24 <ais523> and another idea in which every keyword was in two halves, and you put the arguments inside the keyword between the halves, and you could mix and match halves to get a large supply of keywords
16:52:42 <b_jonas> a politeness-checking language wouldn't be a contradiction to their claim even if it were inherently ambiguous, because you wouldn't put that part of the syntax into the CF grammar.
16:52:45 <ais523> if you combine those ideas, I think it ends up inherently ambiguous, perhaps?
16:52:53 -!- oerjan has joined.
16:54:12 <b_jonas> "so are there any theorems about whether, given a grammar that matches set of strings A, and a grammar that matches set of strings B, there exists a grammar that matches the set of strings (A intersection B)?" => yes, and there are two CF langauges whose intersection isn't CF, eg. {a**n b**n c**n} is a language that can be written as an intersection of two CF langauges.
16:54:54 <ais523> oh of course
16:55:17 <ais523> now I'm wondering if CF languages and PDAs have the same amount of power, but thinking about how yacc works, it seems likely
16:55:26 <rdococ> wonder if you could use lazy evaluation to mimic a retrocausal language
16:55:48 -!- DHeadshot has quit (Ping timeout: 268 seconds).
16:55:50 <b_jonas> rdococ: doesn't the mfix implementation for IO do that?
16:56:08 <ais523> I still haven't really got my head around the reverse state monad
16:56:15 <rdococ> ?
16:56:16 <b_jonas> ais523: CF languages and *nondeterministic* PDAs have the same amount of power
16:56:28 <ais523> b_jonas: oh right
16:56:45 <ais523> because limited systems like PDAs aren't powerful enough to simulate nondeterminism
16:56:57 <ais523> so adding nondeterminism makes them more powerful
16:58:19 <oerjan> the intersection of two CF languages can be TC, i believe... it's almost the same as the proof that unambiguity is undecidable for CF grammars
16:58:43 <oerjan> (encode the post correspondence problem)
16:59:52 <b_jonas> oerjan: wow
17:00:00 <ais523> what does it mean for a language to be TC, though?
17:00:29 <oerjan> ais523: being universal for TMs, i guess
17:00:31 <ais523> I mean, there's a deterministic algorithm that runs in finite time and determines whether a string belongs to a given CF language
17:00:38 <oerjan> oh.
17:00:43 <oerjan> right. i must be wrong.
17:00:55 <ais523> so there's a deterministic algorithm that runs in finite time and determines whether a string belongs to the intersection of any given set of CF languages
17:01:17 <oerjan> MOVE ON, NOTHING TO SEE HERE...
17:01:19 <b_jonas> I wonder if this would be a sane enough question for cstheory.stackexchange.com
17:01:53 <HackEgo> [wiki] [[User:Rottytooth]] https://esolangs.org/w/index.php?diff=51007&oldid=47171 * Rottytooth * (+4)
17:03:53 <ais523> oerjan: I think what you might be thinking of is that it's TC to determine if two CF languages (in fact, regexes) intersect at all
17:04:05 <ais523> i.e. if there's some string that's simultaneously valid in both regexes
17:04:22 <oerjan> <b_jonas> rdococ: doesn't the mfix implementation for IO do that? <-- mfix only handles values, not actions, though. at least for the IO monad. if the value recursion affects which _actions_ run, it hangs.
17:04:26 <ais523> or, I should say, undecidable
17:04:42 <ais523> finding the intersection involves running a TC program, but if there isn't one, it won't terminate
17:05:08 <oerjan> (or perhaps throws an "MVar not set" kind of exception, iirc the implementation)
17:07:27 <oerjan> ais523: yeah if two CF languages intersect at all is the thing that's used in the unambiguity undecidability proof. (obvious if the two CFs are each constructed to be unambiguous as well)
17:09:25 <oerjan> ais523: um, if by regex you mean the FA equivalent concept, then it's decidable.
17:09:48 <ais523> oerjan: you can encode the post correspondence problem with regexes very easily
17:09:58 <ais523> (ab|cd|ef)*
17:10:10 <ais523> or, now I'm really confused
17:10:40 <oerjan> you can trivially combine two DFAs into one that checks both
17:10:44 <ais523> because I'm simultaneously convinced of things that contradict each other
17:10:50 <oerjan> heh
17:10:50 <ais523> thus I must have made a mistake somewhere
17:12:01 <ais523> so Wikipedia gives the example a, ab, bba and baa, aa, ab as an example PCP
17:12:31 <ais523> that's equivalent to saying "is there a string that matches both the regex ^(a|aab|bba)*$ and the regex ^(baa|aa|ab)*$"
17:12:59 <ais523> aha, no
17:13:04 <ais523> it has to match the two regexes /in the same way/
17:13:06 <oerjan> b_jonas: seems to hang in GHCi
17:13:16 <oerjan> b_jonas: no wait
17:13:21 <ais523> which can actually be written really easily in Cyclexa, even though I haven't worked out the language's syntaxes or semantics
17:13:25 <oerjan> it eventually gav
17:13:28 <ais523> I just know this is one of the language's basic operations
17:13:34 <oerjan> *** Exception: thread blocked indefinitely in an MVar operation
17:13:44 <oerjan> which iirc is something caught by GC
17:13:47 <ais523> (Cyclexa is a TC regex notation I was working on a while back, but never really pinned down)
17:14:02 -!- tromp has joined.
17:14:14 <oerjan> (which means it might _not_ catch it if there's no GC)
17:15:37 -!- erkin has quit (Quit: Leaving).
17:15:55 <oerjan> ais523: did you keep running in cycles?
17:16:14 <ais523> nah
17:16:30 <ais523> it's just that it was very hard to parse, IIRC it had a nontransitive tokeniser
17:16:50 <ais523> and that disheartened me enough that I didn't even get around to working out what the semantics were
17:18:41 -!- tromp has quit (Ping timeout: 240 seconds).
17:22:25 <HackEgo> [wiki] [[Special:Log/delete]] delete * Oerjan * deleted "[[A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer.]]": If this is going to keep moving, probably delete the tracks
17:22:39 -!- AnotherTest has joined.
17:22:52 -!- Sprocklem has quit (Ping timeout: 240 seconds).
17:23:57 <oerjan> hm was that actually a good idea...
17:24:54 <oerjan> there are others, too, including a broken redirect
17:26:22 <oerjan> (well, i just broke all of them, didn't i, but some already were double or triple)
17:27:13 <oerjan> ais523: hm can you make a redirect with a template?
17:27:45 <ais523> oerjan: not a proper redirect; you can make a soft redirect or a transclusion redirect
17:27:55 <oerjan> well that doesn't help here
17:28:04 <ais523> you can place a template on a redirect page, but it can only serve to add categories and/or add text viewable when visiting the redirect page directly
17:28:59 <HackEgo> [wiki] [[Special:Log/delete]] delete * Oerjan * deleted "[[A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer.]]": This too
17:29:37 <HackEgo> [wiki] [[Programming Language]] https://esolangs.org/w/index.php?diff=51008&oldid=39271 * Oerjan * (+4) fix
17:30:08 <rottytooth> Thanks -- I'll clean up the previous names next time I change it
17:31:13 <HackEgo> [wiki] [[Aplifcldtcitampac]] https://esolangs.org/w/index.php?diff=51009&oldid=42470 * Oerjan * (-3) Fix; seems to miss an a, but did so already
17:31:34 <oerjan> the acronym didn't really change, so didn't delete that
17:31:53 <oerjan> rottytooth: i don't think you have deletion privileges though
17:33:08 <oerjan> but fixing redirects would be nice
17:34:37 <HackEgo> [wiki] [[A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.]] https://esolangs.org/w/index.php?diff=51010&oldid=51005 * Rottytooth * (+51) /* Concept */ note about current name
17:37:11 -!- Sprocklem has joined.
17:43:40 -!- Zarutian has joined.
17:47:40 <oerjan> <int-e> [...] As a wild guess, maybe the former is a wikimedia default and the latter may be some custom theme? <-- well it doesn't seem to be in either Mediawiki:Common.css or Mediawiki:Vector.css, which i'm pretty sure is our default theme...
17:48:54 <oerjan> @tell int-e <int-e> [...] As a wild guess, maybe the former is a wikimedia default and the latter may be some custom theme? <-- well it doesn't seem to be in either Mediawiki:Common.css or Mediawiki:Vector.css, which i'm pretty sure is our default theme...
17:48:54 <lambdabot> Consider it noted.
17:50:44 <oerjan> rottytooth: technically your language briefly had an even more convoluted name, as it included "or constructed" at a point you weren't watching :P
17:50:54 <oerjan> (and who knows about actual vandalism)
17:52:25 <oerjan> (that Fmadd guy really did go wild in wikipedia last month...)
17:54:05 <ais523> hey, could someone please visit http://nethack4.org/latest/nethack4/libnethack/src/objnam.c and let me know whether it opens directly in the browser or whether it asks for a download?
17:54:16 <ais523> I'm getting inconsistent results when testing this myself
17:54:27 <oerjan> opens in browser for me
17:54:31 <ais523> ah good
17:54:37 <ais523> must be some sort of insane caching problem at my end then
17:54:51 <ais523> because it asks for a download in both Chrome and Firefox, but not if I connect via netcat
17:55:02 <oerjan> well i'm using IE >:)
17:55:20 <oerjan> (i may have to change soon, github was starting to give warnings...)
17:55:34 <ais523> oh right, I forgot you used IE
17:56:21 <ais523> must be caching, I stuck a question mark at the end of the URL and it worked :-)
17:58:12 <rdococ> IE?!
17:58:13 <rdococ> ffs
17:58:33 * oerjan waves
17:58:36 <rdococ> it opens in browser for me though
17:59:04 <rdococ> it is a single .c file, I think most browsers would open it in the browser
17:59:23 <rdococ> and I use firefox
18:01:14 <oerjan> rdococ: i'm sure ais523 is asking because he's just changed his server from a setup that _didn't_ show it in the browser
18:01:30 <oerjan> it's not really the filename that decides it these days.
18:01:40 <ais523> oerjan: indeed
18:01:41 <rdococ> oh
18:01:52 <rdococ> I guess
18:02:47 * oerjan suddenly gets an epiphany about emotions over the internet
18:03:09 <oerjan> because emotionally, i was _not_ gloating when saying that, then realized it could be interpreted that way
18:04:40 * oerjan resolves to sprinkle all his messages with emoji ... just kidding
18:04:45 <zzo38> At least in Firefox and other Mozilla-based browsers you can force it to display text by adding "view-source:" at the front of the URL. I also added a code into Firefox to make the ask for a download to include the "view source" choice.
18:06:43 <oerjan> alas, in IE you cannot view source before the page is displayed in the browser (BUT OTHERWISE IT'S JUST FINE THANK YOU VERY MUCH)
18:06:53 <rottytooth> oerjan: Ha that is an even more terrible! I should really have a script to monitor it for changes
18:07:33 <oerjan> rottytooth: if you do, i'd like to propose a rule that the change has to stay for at least a day before you move the page :)
18:15:57 <rottytooth> I wonder if having the redirect on the initialism (Aplifcldtcitampac) is useful at all, since it would also need to keep changing each time
18:17:14 <rottytooth> Maybe having no history and no working redirects is better anyway, people have to look at Wikipedia to figure out its url
18:17:27 <rdococ> that's it
18:17:32 <rdococ> we must create a channel where IE users are banned
18:18:25 <oerjan> @tell fizzie now your latest change _isn't_ showing up in Gregor's bitbucket.
18:18:25 <lambdabot> Consider it noted.
18:19:01 <oerjan> rottytooth: well there is Programming Language.
18:19:13 * oerjan swats rdococ -----###
18:19:57 * rdococ grabs the swatter and breaks it. it gains sentience and flies up into space.
18:20:08 <zzo38> Some of the commands of ARB assembly language there is currently no equivalents in Checkout as far as I can see, and should probably be defined. This includes trigonometry, exponent base 2, logarithm base 2, and reciprocal square root, and compare. Also, how would you do kill fragment and texture accesses with Checkout?
18:20:38 <oerjan> rdococ: don't be ridiculous, it's been sentient since the start
18:20:57 <rdococ> oerjan: yeah and it's been in space since the start </sarcasm>
18:21:33 <oerjan> . o O ( some emotions transfer _too_ well over the internet )
18:21:44 <zzo38> ais523: Can you please to explain to me so that I can understand?
18:22:10 <ais523> zzo38: read-only checkouts are designed for texture access
18:22:15 <rdococ> IE will be good when pigs fly
18:22:15 <ais523> however not all GPU operations are implemented in checkout
18:22:26 <ais523> rdococ: hasn't Microsoft given up on IE, in favour of Edge?
18:22:31 <rdococ> . o O ( soon Microsoft will invent pigs with wings )
18:22:37 <rdococ> Edge is IE + paint
18:22:43 * oerjan applies some Status Quo is God liniment to the swatter
18:22:51 <rdococ> like how Windows = malware + a coating of paint
18:23:25 * rdococ applies the swatter to some lambda calculus. suddenly, currying, and the swatter turns into a bowl of curry.
18:24:23 <oerjan> you're successfully getting me annoyed. good job.
18:24:40 * rdococ gives oerjan the curry to make up for it
18:25:04 <zzo38> ais523: Yes, I thought that you might use read-only checkouts for textures, but is there the example? And, some GPU operation which isn't currently have, I think should be added on? That way, shader programs can then be written with them, I think.
18:25:23 <ais523> the language hasn't been implemented yet
18:25:45 <ais523> I think that if someone wanted to implement it, and added features as they did so, I wouldn't have a problem with that as long as they kept to the general idea behind the langugae
18:26:51 <zzo38> The specification of the preprocessor would then also have to be written I would think
18:28:25 <HackEgo> [wiki] [[A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.]] https://esolangs.org/w/index.php?diff=51011&oldid=51010 * Rottytooth * (+333) /* Concept */ expanded on content a bit
18:28:32 <zzo38> I would hope that an implementation can be made up which can be use as a better alternative than OpenGL, GLSL, and ARB assembly language, perhaps.
18:33:59 <oerjan> `edit tmp/spout
18:34:00 <HackEgo> http://slbkbs.org:5196/edit?path=/hackenv/tmp/spout
18:38:52 <fizzie> For the record, I was expecting the "edit" button to make a bot on channel do the `fetch.
18:43:41 <oerjan> the names aren't the best
18:44:00 <oerjan> `` awk 'END{print NR}' tmp/spout
18:44:01 <HackEgo> 3
18:44:03 <oerjan> darn
18:44:35 <oerjan> `` perl -e 'while(<>){$i++};print $i;' tmp/spout
18:44:36 <HackEgo> 3
18:44:44 <oerjan> cat tmp/spout
18:44:50 <oerjan> `cat tmp/spout
18:44:51 <HackEgo> one \ two \ three
18:44:51 <fizzie> That was me. :)
18:44:57 <fizzie> If you mean the extra "four".
18:44:59 <oerjan> argh
18:45:03 <oerjan> yes
18:45:08 <fizzie> I pressed edit on it. :)
18:45:20 <oerjan> `` wc -l tmp/spout
18:45:20 <HackEgo> 2 tmp/spout
18:45:36 <oerjan> you messed up my test :P
18:45:49 <oerjan> `` awk 'END{print NR}' tmp/spout; wc -l tmp/spout
18:45:49 <HackEgo> 3 \ 2 tmp/spout
18:45:58 <oerjan> ok so awk works
18:46:06 <fizzie> `` hd tmp/spout
18:46:07 <HackEgo> 000000 6f 6e 65 0a 74 77 6f 0a 74 68 72 65 65 >one.two.three< \ 00000d
18:46:08 <oerjan> `edit bin/spam
18:46:09 <HackEgo> http://slbkbs.org:5196/edit?path=/hackenv/bin/spam
18:46:12 <fizzie> Is it the lack of trailing newline?
18:46:15 <oerjan> yeah
18:47:21 <oerjan> `fetch bin/spam http://slbkbs.org:5196/get?path=/hackenv/bin/spam
18:47:22 <HackEgo> 2017-02-17 18:47:07 URL:http://slbkbs.org:5196/get?path=/hackenv/bin/spam [206/206] -> "bin/spam" [1]
18:47:26 <oerjan> `n
18:47:27 <HackEgo> 1/3:one
18:47:29 <oerjan> `n
18:47:29 <HackEgo> 2/3:two
18:47:31 <oerjan> `n
18:47:31 <HackEgo> 3/3:three
18:47:33 <oerjan> `n
18:47:34 <HackEgo> 1/3:one
18:49:07 <fizzie> Man, this new multi-line editing is such a cheat.
18:49:29 <fizzie> Back when nicks were nicks, we edited HackEgo uphill both ways.
18:49:37 <oerjan> shocking
18:49:49 <fizzie> I appreciate you keeping it all in one line, anyway.
18:51:31 <rdococ> wonder if a programming language with real numbers could ever achieve some form of supertc
18:51:52 <oerjan> `n
18:51:53 <HackEgo> 2/3:two
18:52:16 <oerjan> ? `edit
18:52:22 <oerjan> `? `edit
18:52:23 <HackEgo> ​`edit? ¯\(°​_o)/¯
18:53:35 <rdococ> `? HackEgo
18:53:36 <HackEgo> HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing. HackEgo is the slowest bot in all Mexico!
18:53:55 <rdococ> HackEgo is in Mexico?
18:53:57 <rdococ> `help
18:53:57 <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/
18:54:02 <oerjan> `learn `edit <file> gives you a url, then in your browser: (1) Press Fetch (2) Make your changes (3) Press edit (4) Paste the command line at the top into the channel.
18:54:05 <HackEgo> Learned '`edit': `edit <file> gives you a url, then in your browser: (1) Press Fetch (2) Make your changes (3) Press edit (4) Paste the command line at the top into the channel.
18:54:34 <rdococ> `n
18:54:35 <HackEgo> 3/3:three
18:54:41 <oerjan> `slwd `edit//s,s edit,s Edit,
18:54:43 <HackEgo> ​`edit//`edit <file> gives you a url, then in your browser: (1) Press Fetch (2) Make your changes (3) Press Edit (4) Paste the command line at the top into the channel.
18:54:55 <rdococ> `run sudo cat hi
18:54:56 <HackEgo> bash: sudo: command not found
18:55:00 <rdococ> er
18:55:01 <rdococ> ok
18:55:04 <rdococ> `run cat hi
18:55:05 <HackEgo> cat: hi: No such file or directory
18:55:12 <oerjan> is press the right word?
18:55:45 <oerjan> rdococ: the Mexico is a Speedy Gonzales pun (or possible SG's brother pun)
18:56:17 <rdococ> k
18:56:48 <oerjan> `? shavention
18:56:49 <HackEgo> Shaventions include: before/now/lastfiles, culprits, hog/{h,d}oag, le//rn, tmp/, mk/mkx, sled/sedlast, spore/spam/speek/sport/1. Taneb did not invent them yet.
18:57:21 <oerjan> `slwd shavention//s,[.],, edit.,
18:57:22 <HackEgo> ​/bin/sed: -e expression #1, char 10: unknown option to `s'
18:57:39 <oerjan> `slwd shavention//s;[.];, edit.;
18:57:41 <HackEgo> shavention//Shaventions include: before/now/lastfiles, culprits, hog/{h,d}oag, le//rn, tmp/, mk/mkx, sled/sedlast, spore/spam/speek/sport/1, edit. Taneb did not invent them yet.
18:58:27 -!- Lord_of_Life has quit (Excess Flood).
18:59:21 <oerjan> or wait was it cousin
19:00:14 -!- tromp has joined.
19:00:29 -!- Lord_of_Life has joined.
19:01:49 -!- oerjan has quit (Quit: Eep late).
19:04:18 -!- tromp has quit (Ping timeout: 240 seconds).
19:07:28 <HackEgo> [wiki] [[A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.]] https://esolangs.org/w/index.php?diff=51012&oldid=51011 * Rottytooth * (-12) /* Concept */ clean up
19:14:33 -!- tromp has joined.
19:18:52 -!- tromp has quit (Ping timeout: 240 seconds).
19:20:17 <doesthiswork> I've been wondering; what is rottytooth's position on heliopaths?
19:24:01 -!- augur has joined.
19:24:32 <rdococ> whatever those are
19:26:08 -!- Lord_of_Life has quit (Excess Flood).
19:26:59 -!- Lord_of_Life has joined.
19:30:59 <shachaf> fizzie, oerjan: Look, it was a very quick program.
19:31:19 <shachaf> Do you want to improve it?
19:36:23 <shachaf> oerjan: By the way, I'm a bit dubious about keeping `edit running permanently the way it is right now, so maybe you shouldn't integrate it so closely into HackEgo.
19:36:47 <shachaf> If it is going to be running permanently, I should probably figure out some better way to do it.
19:37:21 -!- furozo has quit (Quit: Lost terminal).
19:39:50 -!- Sprocklem has quit (Ping timeout: 268 seconds).
19:58:11 <shachaf> It occurs to me that both "fetch" and "edit" sound like they might modify HackEgo, but neither does.
19:59:11 <zzo38> Now I made a animation from SDLTERM and OpenGL, with colourful balls moving from centre of screen to the edge and becomes larger when they move more closely to the edge.
20:02:31 <zzo38> (No music yet)
20:06:24 <rdococ> `? 1+1
20:06:24 <HackEgo> 1+1? ¯\(°​_o)/¯
20:06:31 <rdococ> ...
20:07:08 <rdococ> 1+1 should be Window.
20:07:12 <doesthiswork> It sounds like it would go well with the zombocom music
20:07:40 -!- idris-bot has joined.
20:08:22 <zzo38> Why? I think 1+1 makes 2
20:08:26 <rottytooth> doesthiswork: At my council's advice, I have no position on heliopaths at this time
20:08:41 <doesthiswork> typical politician
20:10:17 <rdococ> zzo38, you're no fun
20:15:32 -!- tromp has joined.
20:20:13 -!- tromp has quit (Ping timeout: 260 seconds).
20:20:50 -!- MDude has quit (Ping timeout: 258 seconds).
20:27:20 <HackEgo> [wiki] [[A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.]] https://esolangs.org/w/index.php?diff=51013&oldid=51012 * Rottytooth * (-100) Still messing with the description, trying to make this clear
20:34:41 -!- hppavilion1 has joined.
20:39:01 -!- augur has quit (Remote host closed the connection).
20:43:43 <fizzie> shachaf: It occurs to me that maybe I should put an editor thing like that on the same webserver as everything else.
20:44:42 <shachaf> I would not object.
20:45:06 <shachaf> You could even permit people to push commits?
20:45:09 <shachaf> Maybe that's going too far.
20:45:36 <fizzie> In theory. I think I like the idea of there being one degree of separation. Less chance to make mistakes with the locking and such.
20:46:12 <shachaf> I was sort of going to implement the multiline tmp editor.
20:46:30 <shachaf> But that seemed like a lot of trouble and limited usability.
20:54:12 -!- hppavilion1 has quit (Quit: HRII'FHALMA MNAHN'K'YARNAK NGAH NILGH'RI'BTHNKNYTH).
21:03:14 <\oren\> bleh, the build is 15 minutes longer than last month
21:03:44 <\oren\> shachaf: why not just use ed?
21:04:19 <\oren\> luckily I managed to fix the bug in my code before anyone noticed
21:05:51 <shachaf> Why does the build take so long?
21:06:25 <shachaf> Can you at least reuse some of the output from previous builds maybe?
21:06:30 <shachaf> Do you have reproducible builds?
21:08:09 <\oren\> shachaf: it takes a long time partially becauase separate compilation doesn't work with C++ templetes
21:08:30 <shachaf> Ah, it's all C++ template code. Makes sense.
21:08:37 <shachaf> But it can still be parallelized, right?
21:09:00 <\oren\> not only that but the templates are generated from an internal language
21:09:31 <\oren\> which creates hundreds of json parsers for some reason
21:10:47 <\oren\> I don't know if it CAN be paralelized, but it isn't afaict
21:11:29 <shachaf> You should fix it.
21:11:57 <\oren\> can I filter out processes from ps -x that are waiting for somehting
21:12:41 <\oren\> yes it looks like it only runs one compiler at once
21:13:00 <shachaf> I meant across machines.
21:13:06 <shachaf> But it's not even doing -j?
21:13:16 -!- rottytooth has quit.
21:16:17 <\oren\> whats -j
21:16:54 <shachaf> make -j
21:17:08 <\oren\> what's make we dont use make
21:17:14 <shachaf> Or ghc -j
21:17:19 <shachaf> j stands for parallel, I guess.
21:17:39 <\oren\> uhhh I didn't knwo make had a paralel option
21:17:56 <\oren\> but yeah it's jsut running one thing at a time
21:19:58 <\oren\> gcc -c SomeCamelCaseThing.cpp -o SomeCamelCaseThing.o
21:20:16 <\oren\> and SomeCamelCaseThing.cpp and a
21:20:31 <\oren\> SomeDromeDary.cpp
21:20:58 <\oren\> will usually both #include SomeStupidTemplate.h
21:21:56 <\oren\> but each gcc invokation has no way to know this so it has to recompile SomeStupidTemplate.h over and over and over
21:22:56 <\oren\> er, that should be SomeStupidClassBasedOnATemplate.h
21:23:22 <\oren\> which then includes the actual template
21:23:52 <\oren\> C++ tmeplates. #notevenonce
21:39:12 <zzo38> Why is OpenGL using normalized device coordinates? Do you know if there is a way to make the output of the vertex program to be treated as integer coordinates, or is is it always necessary to convert them from integer coordinates if wanted into normalized device coordinates in the vertex program or transformation matrix?
21:39:44 <zzo38> (But I think the vertex program and transformation matrix cannot be used together.)
21:40:49 -!- doesthiswork has left.
21:40:59 -!- doesthiswork has joined.
21:44:25 -!- augur has joined.
21:48:50 -!- augur has quit (Ping timeout: 255 seconds).
21:50:46 <shachaf> `hurl bin/spam
21:50:47 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/log/tip/bin/spam
21:54:33 -!- augur has joined.
21:56:05 -!- DHeadshot has joined.
22:01:23 <\oren\> `? template
22:01:24 <HackEgo> template? ¯\(°​_o)/¯
22:01:29 <\oren\> `? c++
22:01:30 <HackEgo> Along with C, C++ is a language for smart people.
22:01:44 <\oren\> `? generate
22:01:45 <HackEgo> generate? ¯\(°​_o)/¯
22:01:47 <\oren\> `? generated
22:01:48 <HackEgo> generated? ¯\(°​_o)/¯
22:01:59 <\oren\> `? compiler
22:02:00 <HackEgo> A compiler (lit. "with-piler") is one who builds piles together with someone else.
22:02:13 <\oren\> `? gcc
22:02:14 <HackEgo> gcc? ¯\(°​_o)/¯
22:02:17 <\oren\> `? gnu
22:02:18 <HackEgo> gnu? ¯\(°​_o)/¯
22:02:25 <\oren\> bah
22:02:32 <\oren\> `widsom
22:02:33 <HackEgo> jit//JIT is just in time.
22:02:36 <\oren\> `widsom
22:02:37 <HackEgo> metaplace//Metaplace ♫ is where I want to be, ♫ I never m*%¤)&"#NO CARRIER
22:02:41 <\oren\> `widsom
22:02:42 <HackEgo> vim//vim equals to cmxciv or cmxcvi, depending on which part of Roman Empire you are.
22:02:57 <\oren\> `widsom
22:02:58 <HackEgo> rhubarb//Rhubarb rhubarb rhubarb, rhubarb: rhubarb rhubarb? Rhubarb, rhubarb, rhubarb rhubarb.
22:03:19 <\oren\> `widsom
22:03:20 <HackEgo> native//The natives are restless, also armed with sed.
22:05:54 -!- DHeadshot has quit (Read error: Connection reset by peer).
22:06:55 -!- DHeadshot has joined.
22:16:05 -!- tromp has joined.
22:20:28 -!- tromp has quit (Ping timeout: 240 seconds).
22:39:23 -!- otherbot has quit (Remote host closed the connection).
22:43:53 -!- AnotherTest has quit (Quit: ZNC - http://znc.in).
22:51:45 -!- hppavilion1 has joined.
23:04:58 -!- hppavilion1 has quit (Ping timeout: 240 seconds).
23:17:02 -!- tromp has joined.
23:21:31 <int-e> `` diff bin/wisdom bin/widsom
23:21:32 <HackEgo> No output.
23:21:54 -!- tromp has quit (Ping timeout: 260 seconds).
23:23:39 -!- idris-bot has quit (Ping timeout: 260 seconds).
23:24:44 -!- tromp has joined.
23:28:28 -!- DHeadshot has quit (Ping timeout: 240 seconds).
23:30:35 -!- DHeadshot has joined.
23:37:05 -!- tromp has quit (Remote host closed the connection).
23:39:17 -!- Lord_of_Life has quit (Excess Flood).
23:43:59 -!- Lord_of_Life has joined.
23:46:00 -!- oerjan has joined.
23:46:22 -!- hppavilion1 has joined.
23:53:30 -!- zgrep has changed nick to zgrep_cloud.
23:55:20 <oerjan> hm i seem not to have finished my previous logreading
23:55:37 -!- idris-bot has joined.
23:55:44 <oerjan> `? backlog
23:55:45 <HackEgo> backlog? ¯\(°​_o)/¯
←2017-02-16 2017-02-17 2017-02-18→ ↑2017 ↑all