00:00:25 -!- trn has joined. 00:02:13 <\oren\> the same process has been running since May 16th <-- you did get the message that irssi has a security flaw, right? 00:03:47 @ask \oren\ <\oren\> the same process has been running since May 16th <-- you did get the message that irssi has a security flaw, right? 00:03:47 Consider it noted. 00:05:18 -!- Cale_ has changed nick to Cale. 00:05:20 oerjan: only relevant for people who use TLS, though 00:06:31 Also only relevant for people who use irssi version in [0.8.17,0.8.19] 00:06:43 \oren\_ isn't using TLS and is using (according to CTCP VERSION) 0.8.15 00:06:44 shachaf: i thought there was a part that was relevant anyhow... 00:06:57 ok that would do it. 00:07:20 Or maybe he cleverly set his version number back to fool attackers. 00:07:21 i see i'm running .17 on this host, although the admin _did_ apply the patch to it... 00:07:42 On Debian I'm using 0.8.17-1+deb8u1 which is said to be fixed. 00:07:59 shachaf: https://irssi.org/security/irssi_sa_2016.txt ... nothing TLS specific there. 00:08:15 int-e: Maybe I misunderstood. 00:08:21 OK then. 00:08:30 I might have confused two bugs. 00:08:34 (it says something about TLS, but that's a limitation of irssi's /restart command) 00:09:01 I should write a new IRC client in JavaScript; currently the one I use is with PHP, but JavaScript is a better programming language I think. If I do that then I can also add TLS, and proper asynchronous stuff 00:09:04 on this host, the perl script i'm running isn't messing up tmux ... but tmux messes up itself in other ways :( 00:09:31 zzo38: What about a Gopher-IRC bridge? 00:09:56 shachaf: I think there isn't much point, although logs could be served using Gopher. 00:10:01 shachaf: 0.8.15 may be fine though 00:10:13 hard to say, and perhaps there were other bugs 00:10:19 figures that my admin would apply a patch in such a way that no one can see that it's a fixed version. i hope he at least did it right. 00:11:07 A server that has a built-in gopher too that can be used to serve status information too, though, could be made up. 00:11:23 -!- bibibi has joined. 00:11:23 it is annoying that he didn't fix it on hagbart. so i have a choice between two partially broken setups... 00:12:00 I could also write IRC server program with JavaScript too. 00:12:34 oerjan: If you have Perl enabled, there's apparently a workaround script you can install. 00:13:20 -!- boily has joined. 00:13:29 bohily 00:14:31 shachaf: i already did. it messes up tmux, as i said, although strangely not on this host, where tmux is however broken in other ways. 00:14:31 . o O ( if this is debian, check dpkg-query -W irssi .. 0.8.17-1+deb8u1 is the patched one. ) 00:14:40 int-e: ooh thanks 00:15:04 yep, it's got that one. 00:16:47 hm i think hagbart isn't debian then, explain why he didn't fix it. 00:17:01 * oerjan has no idea how to find out the distribution 00:17:13 uname -a doesn't tell what it is 00:17:26 *explains 00:18:16 int-e: do you know a general linux command to find out which distribution you are using 00:20:03 hellørjan, int-ello. 00:20:05 oerjan: I usually cat /etc/issue ... there's also lsb_release -idc 00:20:47 \S 00:20:47 Kernel \r on an \m (\l) 00:20:53 very helpful :P 00:21:16 > cat /etc/issue 00:21:16 Debian GNU/Linux 8 \n \l 00:21:18 error: 00:21:18 Variable not in scope: etc :: [Doc] -> Docerror: 00:21:18 Variable not in scope: issue :: [Doc] -> Doc 00:21:27 @botsnack 00:21:27 :) 00:22:08 ah it's fedora. as i vaguely suspected. 00:22:14 anyway, lsb_release is sort of standard (lsb = linux standard base) 00:22:23 yeah that worked 00:24:35 ^botsnack 00:24:47 fizzie: fizziello. FUNGOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOT! 00:30:20 -!- moonythedwarf_ has joined. 00:30:23 moo 00:38:12 not very reliable logs today 00:38:24 s/logs/network/ 00:38:32 s/today// 00:38:51 pretty sure today is exceptional hth 00:39:13 also you left a trailing space, that will not do 00:40:19 -!- Zarutian has quit (Quit: Zarutian). 00:40:52 -!- ais523 has quit. 00:40:59 -!- callforjudgement has joined. 00:41:37 i was about to say it's the end times, but clearly it's the day of judgement. 00:46:02 moonythedwarf_: moo? 00:46:17 -!- callforjudgement has changed nick to ais523. 00:46:32 today is a good day for 찌개. 00:47:28 boily: http://www.irregularwebcomic.net/961.html 00:48:32 it fits. 00:48:52 I put pork belly in mine ^^ 00:49:21 as long as you can stomach it. 00:51:25 * boily is tempted to thwack oerjan, but will wait after he's done eating 00:52:16 helloily 00:58:23 mhellonythellodwarf_. 00:58:30 -!- FreeFull has joined. 01:06:54 oh come on, there has to be a limit to porthello complexity :-) 01:16:21 his523. it's just like hot peppers: you start off with the easy ones, then next thing you know you're wolfing down ghosts. 01:32:12 -!- super_bender has joined. 01:33:24 -!- trn has quit (Quit: quit). 01:43:36 -!- trn has joined. 01:44:45 -!- boily has quit (Quit: NOSY CHICKEN). 01:45:49 `` find -iname '*hello*' -a -perm -a=x 01:45:58 ​./bin/hello-world-in-any-language \ ./bin/hello \ ./share/hello \ ./src/ploki/examples/hello.pk 01:46:09 `` find -iname '*port*' -a -perm -a=x 01:46:12 ​./bin/sport \ ./bin/joustreport \ ./.hg/store/data/git-master/contrib/fast-import \ ./.hg/store/data/git-master/contrib/p4import \ ./.hg/store/data/perl-5.22.2/dist/_exporter \ ./.hg/store/data/perl-5.22.2/dist/_exporter/lib/_exporter \ ./.hg/store/data/perl-5.22.2/cpan/_devel-_p_p_port \ ./.hg/store/data/perl-5.22.2/_porting \ ./.hg/store/data/ 01:46:30 `` find -iname 'port*' -a -perm -a=x 01:46:34 ​./.hg/store/data/perl-5.22.2/t/porting 01:47:40 i am not sure you really want to look in .hg 01:48:15 seems like it poisoned the search results 01:49:22 `` find -iname '*port*' -perm -a=x 01:49:25 ​./bin/sport \ ./bin/joustreport \ ./.hg/store/data/git-master/contrib/fast-import \ ./.hg/store/data/git-master/contrib/p4import \ ./.hg/store/data/perl-5.22.2/dist/_exporter \ ./.hg/store/data/perl-5.22.2/dist/_exporter/lib/_exporter \ ./.hg/store/data/perl-5.22.2/cpan/_devel-_p_p_port \ ./.hg/store/data/perl-5.22.2/_porting \ ./.hg/store/data/ 01:49:29 bah 01:50:42 `` find -iname '*port*' -a -perm -a=x | grep -v '\.hg' 01:50:46 ​./bin/sport \ ./bin/joustreport \ ./interps/fukyorbrane/report \ ./interps/bfjoust/report 01:51:33 i don't think those latter ones are working in HackEgo. 01:51:41 `file bin/joustreport 01:51:42 bin/joustreport: POSIX shell script, ASCII text executable 01:51:56 `dowg bin/joustreport 01:51:58 No output. 01:52:01 `doag bin/joustreport 01:52:03 2015-06-21 revert \ 2015-06-21 rm bin -r \ 2014-03-16 revert \ 2014-03-16 revert 1 \ 2013-02-13 revert 87c64ef250a0 \ 2013-02-13 revert 3 \ 2013-01-12 revert 1492 \ 2013-01-12 revert 4 \ 2012-12-09 revert 999 \ 2012-12-09 revert 0 \ 2012-06-08 01:52:17 `` doag bin/joustreport | tac 01:52:19 2012-06-08 run echo '#!/bin/sh' >bin/joustreport \ 2012-06-08 run echo "echo 'http://codu.org/eso/bfjoust/report.txt'" >>bin/joustreport \ 2012-06-08 run chmod +x bin/joustreport \ 2012-12-09 revert 0 \ 2012-12-09 revert 999 \ 2013-01-12 revert 4 \ 2013-01-12 revert 1492 \ 2013- 01:52:41 oh 01:52:54 Hi 01:53:54 i suppose that one isn't very useful any longer. 01:54:23 `cat bin/sport 01:54:24 distort "${1:-/dev/stdin}" | spore 01:57:26 -!- trn has quit (Ping timeout: 265 seconds). 02:00:44 -!- Moonheart08 has joined. 02:01:29 -!- moonythedwarf_ has quit (Ping timeout: 244 seconds). 02:08:26 -!- trn has joined. 02:11:23 -!- hppavilion[2] has joined. 02:15:01 -!- super_bender has quit (Ping timeout: 272 seconds). 02:23:45 -!- ais523 has quit. 02:25:43 `cat bin/spore 02:25:43 echo 1 > /hackenv/tmp/spline; cat "${1-/dev/stdin}" > /hackenv/tmp/spout; spam 02:26:04 `cat bin/spam 02:26:05 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; echo "$((line+1))" > /hackenv/tmp/spline 02:26:14 Jeez 02:26:17 `spam 02:26:20 2/16:s channel. kmc has good quotes. `quote kmc 686) COCKS [...] truly cocks Well, in theory. \ 619) shachaf: wait, _you_ are in northumberland? No. whew we don't have room for more esolangers there. oerjan: Wait, *you* are in Northumberla 02:28:43 very logical naming scheme, that feature. 02:29:11 `sport test 02:29:12 1/1:ha 02:29:47 `run echo "test 1 2 3 hello hi!" | sport 02:29:48 1/1:test 1 2 3 hello hi! 02:29:49 -!- Moonheart08 has quit (Ping timeout: 265 seconds). 02:32:12 `` yes | nl | head -1000 | sport 02:32:13 1/34: 1y \ 2y \ 3y \ 4y \ 5y \ 6y \ 7y \ 8y \ 9y \ 10y \ 11y \ 12y \ 13y \ 14y \ 15y \ 16y \ 17y \ 18y \ 19y \ 20y \ 21y \ 22y \ 23y \ 24y \ 25y \ 26y \ 27y \ 28y \ 29y \ 30y \ 02:32:31 hm tabs aren't very pretty 02:41:27 spam is a great feature 02:42:05 Let me see if I can figure out all those names. 02:43:01 spam, spore = spam store?, sport = spore distort, spline = spam line, spout = spam out 02:43:05 very easy 02:43:32 `` ls bin/sp* 02:43:33 bin/spam \ bin/speek \ bin/spore \ bin/sport \ bin/spot \ bin/sprunge 02:44:23 speek = spam seek. or spout seek? 02:44:56 And of course there's 1 02:45:15 `cat bin/1 02:45:16 ​\` "$@" |& sport 02:50:07 -!- hppavilion[2] has quit (Ping timeout: 255 seconds). 02:52:43 <\oren\_> OK! 02:53:10 `cat bin/spot 02:53:11 echo Woof! 02:53:19 <\oren\_> I think I've solved the last bug in the hangul generation software! 02:53:26 `doag bin/spot 02:53:28 2015-06-21 revert \ 2015-06-21 rm bin -r \ 2014-03-16 revert \ 2014-03-16 revert 1 \ 2014-01-17 echo "echo Woof!" >bin/spot; chmod +x bin/spot 02:53:29 <\oren\_> http://orenwatson.be/allchars.htm 03:10:43 -!- bibibi has quit (Ping timeout: 244 seconds). 03:11:26 <\oren\_> http://orenwatson.be/korean.PNG 03:11:36 -!- hppavilion[1] has joined. 03:12:24 <\oren\_> hippavellon[1] 03:15:52 <\oren\_> is anyone who can judge the quality of korean fontery around? 03:16:00 <\oren\_> i mean typography 03:16:27 <\oren\_> "fontery" <-- srsly brain, why do you invent such stupid words 03:17:45 <\oren\_> some of the more complex hangul sylables still look bad, but it seems they aren't used much 03:44:28 @messages-lewd 03:44:28 oerjan said 13h 6m 11s ago: Jafet said 1h 56m 15s ago: at the risk of rapid cerebral impact for this chilly necro: I was referring to http://pizzachili.dcc.uchile.cl <-- in this case, your cerebral 03:44:28 impact is due to not quoting context for something i've forgotten ages ago -----### 04:20:38 -!- Frooxius has joined. 04:27:28 -!- oerjan has quit (Quit: Nite). 04:42:17 <\oren\_> @messages-lead 04:42:17 oerjan said 10m 7d 2h 23m 19s ago: <\oren\_> oh its god damn tmux fucking up unicide <-- no problems with that character with tmux + irssi here 04:42:57 <\oren\_> I already forgot what character is was 04:44:04 -!- \oren\_ has changed nick to \oren\. 04:44:14 <\oren\> there we go. stupid _ 04:44:28 <\oren\> @messages-lead 04:44:28 oerjan asked 4h 40m 41s ago: <\oren\> the same process has been running since May 16th <-- you did get the message that irssi has a security flaw, right? 04:44:38 <\oren\> uh no 04:44:41 <\oren\> uh oh 04:45:18 `unicode LATIN SMALL LETTER A WITH GRAVE 04:45:19 ​à 04:57:56 <\oren\> `u8tbl 0x2673 0x2679 04:57:56 ​♳♴♵♶♷♸♹ 04:59:55 <\oren\> plastic type 1 thru 7 05:03:16 <\oren\> what characters should I add next? maybe Elvish! 05:03:37 <\oren\> er, the Tengwar of Feanor to be exact 05:43:27 -!- `^_^v has joined. 05:58:20 <\oren\> ok, done that. what next 05:58:55 <\oren\> oh, right what wikipedia article should I use for a korean sample? 05:59:03 -!- super_bender has joined. 06:02:02 ⌠ 06:02:04 ⌡ 06:02:05 tg 06:02:17 -!- Yurume___ has joined. 06:02:30 hm 06:02:32 ⌠ 06:02:41 ⎮ dx 06:02:44 ⌡ 06:03:30 ENOINTEGRAND 06:03:42 dx is the integrand 06:03:57 no 06:04:06 unless you have a hidden 1 there 06:04:19 no, dx is a form 06:04:32 exactly, so you have no integrand 06:04:43 ? 06:04:52 you need a function to integrate 06:05:05 no, i'm integrating a form 06:05:52 the dx is defined as part of the notation to integrate 06:06:41 that's one definition 06:06:57 are you objecting because i didn't specify a manifold? 06:07:51 no, it's assumed you're doing lagrange integration over the complexes unless otherwise specified 06:08:42 i bet you hate it when people write 06:09:09 it's the worst 06:10:27 ⌠ dx 06:10:29 ⎮ ──── 06:10:30 ⌡ x² 06:10:58 if Manyfold writes an analysis textbook, would it be called Manyfold's On Calculus? 06:11:34 shachaf: yeah it's awful 06:11:39 no, it's great 06:11:42 leibniz notation is too good 06:11:59 <\oren\> yay liebniz 06:18:15 -!- relrod_ has changed nick to relrod. 06:20:29 hi relrod 06:20:37 The standard integral notation is actually pretty odd. 06:21:05 hi shachaf 06:21:44 Say I : (R -> R) -> {R -> R} is the indefinite integration operator. 06:22:26 Then I guess "∫ e dx" means something like I(\x. e)(x) 06:22:54 Where e and the whole expression both have x free. 06:24:25 relrod: How's the topology or whatever it was you were doing? 06:24:54 I no longer remember. 06:25:02 shachaf: well I got through the category theory course last semester, but the prof made it very topology-focused, and I haven't taken topology yet so I was lost for part of it 06:25:09 a rather large part of it :( 06:25:14 he hadn't taught the course before 06:25:39 and he primarily does topology, so of course most of his examples drew from that 06:25:51 shachaf: do you intend to use the indefinite integral there? 06:26:00 Where? 06:26:07 ∫ e dx 06:26:15 Why not? 06:26:46 relrod: well, how can you be expected to learn anything? i think he owes you a topology 06:27:18 heh 06:27:47 I'm taking Real Analysis this semester...which is interesting because I suck at analysis. But assuming that goes okay, I'll be taking topology next semester. 06:27:59 that prof usually doesn't teach it though, he just researches it. 06:28:05 relrod: You should take the sneaky path by readin _Topology via Logic_ by Vickers 06:28:11 reading 06:28:19 shachaf: He _loves_ that book. It's on my reading list 06:28:32 Oh, then he can't be that bad. 06:29:00 That book is good if you're used to thinking about computer science and logic and things. 06:29:18 Even though the sorts of spaces it talks about aren't the sorts people usually talk about. 06:29:19 He's good at what he does. I think he could perhaps improve in how he conveys ideas to others, but he's really good at what he does. 06:29:20 shachaf: well because the indefinite integral isn't actually a function (R -> R) -> R -> R 06:29:30 it's actually a function (R -> R) -> R -> R -> R 06:29:31 alercah: But I wrote (R -> R) -> {R -> R} 06:29:48 shachaf: do you mean something other than implicit by the curlies? 06:29:52 I mean a set. 06:30:13 indexed by R? 06:30:14 I guess that's not good notation. 06:30:17 -!- Akaibu has quit (Quit: Connection closed for inactivity). 06:30:19 not really, no 06:30:25 Well, you can point out that it's indexed by R if you want. 06:30:35 since the result is indeed indexed 06:30:38 But all I was saying was that it's a set of functions. 06:30:57 Which happen to have the property that they all differ by a constant. 06:31:03 yep 06:31:48 ∫ e dx is more like I(\x . e) 06:31:52 though 06:31:59 I think 06:32:01 No, it's an expression in x 06:32:05 (And C.) 06:32:33 hmm I guess you can see it that way 06:32:35 Fine, index it by a real. 06:32:47 alercah: Well, there are many arguments about these things. 06:32:47 no I mean seeing it as an expression and not a function 06:32:53 What would you say dy/dx means? 06:33:05 it means you're a horrible person :P 06:33:26 If you have D : (R -> R) -> (R -> R), then the obvious meaning (to me) for dy/dx is D(\x. y)(x) 06:33:41 I'm not familiar with formalisms of leibniz notation, though I know it can be done 06:33:43 But there are some issues because Leibniz notation is so good. 06:33:58 I'm not talking about infinitesimals or anything like that. 06:34:12 Just what people mean by the expression "dy/dx". Which is usually not divison. 06:34:49 -!- Sgeo has joined. 06:35:23 indeed 06:35:42 can you believe they teach people how to do matrix multiplication before telling them what the individual numbers in a matrix actually mean? 06:35:49 I don't think of them as operating on expressions really though, at least not in the syntactic sense 06:35:51 how do they expect them to make any sense of it 06:36:06 You would say that it implicitly operates on functions? 06:36:09 yes 06:36:27 But you agree that dx^2/dx = 2x 06:36:35 yes 06:36:59 So at least syntactically those things look like expressions. 06:37:05 of course 06:37:25 Anyway, Leibniz notation is much better than that. 06:37:36 Say y^3 = x^2 06:38:16 Then dy/dx = 2x/3y^2 or something like that. 06:38:41 Well, let's say y^2 = x^2 06:38:56 Then dy/dx = x/y 06:39:12 Even though neither x nor y is a function of the one. 06:40:37 but there you're relying on implicitly viewing y as a function anyway 06:41:01 the real ambiguity comes before leibniz notation enters the picture 06:41:05 what is y \circ y? 06:41:21 is it x \mapsto x^4? is it not defined? 06:41:23 What is circ? 06:41:25 composition 06:41:30 y isn't a function 06:41:43 then you can't take its derivative 06:41:48 Sure you can. 06:41:58 You can make a graph of all the points where y^2 = x^2 06:42:10 -!- `^_^v has quit (Quit: This computer has gone to sleep). 06:42:11 And you can ask what the slope of a line tangent to the graph is. 06:42:29 sure, but that's not a derivative, and in any case you're ascribing far more meaning 06:42:42 not to mention leaving open ambiguity when the graph fails the vertical line test 06:43:01 "slope of a tangent line" is a pretty good meaning for "derivative" 06:43:05 Even if it's not of a function. 06:46:26 actually wait 06:46:43 your example doesn't even work 06:47:01 because if you're making a graph of all the points where y^2 = x^2 06:47:24 that's the union of the lines x = y and y = x 06:47:47 Yes, it's kind of a boring graph 06:47:56 but what does this derivative mean? 06:48:10 But for any point (x,y), dy/dx = x/y 06:48:23 like, what mathematical object is "dy/dx" in this case 06:48:36 it seems to me you keep adding assumptions to the notation here 06:48:58 Er, I assume you mean y = x and y = -x 06:49:00 Or something like that. 06:49:02 err yes 06:49:04 an X 06:49:16 What do you even mean when you say "y^2 = x^2"? 06:49:17 Let's take a better example. 06:49:34 Well, I can say what I mean. I mean a graph. 06:49:52 This one: http://www.wolframalpha.com/input/?i=y^2=x^2 06:51:02 But let's take the graph defined by x^2 + y^2 = 1, which is a bit more interesting. 06:51:09 http://www.wolframalpha.com/input/?i=x^2%2By^2=1 06:52:23 We agree that this is a graph, and that neither x nor y is a function of the other one, and that at every point (x,y) in that graph, there's a tangent line? 06:59:30 I guess we don't agree. 07:00:04 Well what I mean is 07:00:32 What is the mathematical thing you are trying to do here? 07:00:43 this is exploration, nt exploitation, yo 07:00:44 not 07:00:57 I'm talking aboout the great things that this notation lets you do. 07:01:10 Then maybe we can figure out how to formalize it. 07:01:33 I think the meaning of that graph, and the meaning of the tangent lines, is very intuitively obvious 07:01:37 yes 07:01:54 So now we can say: d(x^2 + y^2) = d(1); 2x dx + 2y dy = 0; dy/dx = -x/y 07:02:02 What's d? I don't know exactly. 07:02:15 But at any point (x,y) on our circle, the slope of the tangent line is -x/y 07:04:17 mhmm 07:05:02 In fact this is true for any radius of circle. Imagine we were only looking at the top half of the circle, and we said something like y = sqrt(1-x^2). Then the derivative as a function of x would be different for each radius. But this method reveals that it's always the same in terms of (x,y). 07:06:13 agreed 07:06:52 So that's pretty good. But you don't like this notation. 07:07:32 How about this old trick people do: 07:07:53 I don't like it when people don't understand what they are doing 07:08:20 In this case, I do agree that it shows something interesting, but that thing must be backed by a proof 07:08:38 dy/dx = Ky; dy/y = K dx; ∫ dy/y = ∫ K dx; log(y) + C = kx + D 07:08:38 is there a way to formalize d in such a way as to make what you did a proof? probably, but I don't know it 07:08:49 alercah: Yes. I agree wholeheartedly. 07:09:12 I think this is a really good notation, and there must be a formalism that makes it work, more than just handwaving and special cases. 07:09:18 But I don't know what it is. 07:09:45 so in the common case where it's being used for explicit differentiation, viewing dy/dx as a syntactic shorthand for a complex expression is fine 07:09:57 but then you must be careful how you manipulate differentials 07:10:09 Can you give me a case where the obvious mafipulations don't work? 07:10:19 not offhand, no 07:10:20 I call it mafipulation because it's unjustified manipulation. 07:10:28 I can't think of one either. 07:12:03 probably something that inadvertently divides by 0 07:12:19 Can you find one? 07:12:26 it's too late 07:12:29 One where the differentials are to blame. 07:12:32 I'll ponder it as I sleep maybe 07:12:37 sgtm 07:12:41 `? sgtm 07:12:42 Sergeant Mustard 07:12:49 `? lgtm 07:12:50 lgtm? ¯\(°​_o)/¯ 07:16:43 alercah: If you think of counterexamples or formalizations or anything, I'd be interested. 07:31:42 -!- hppavilion[1] has quit (Ping timeout: 264 seconds). 07:45:04 -!- `^_^v has joined. 07:58:27 (such an amount of research level math might overflow this channel) 07:58:46 -!- `^_^v has quit (Quit: This computer has gone to sleep). 07:59:17 Jafet: into mathoverflow 07:59:19 ? 08:45:10 -!- AnotherTest has joined. 09:15:46 -!- carado has joined. 09:46:59 -!- `^_^v has joined. 10:01:11 -!- wanderman has joined. 10:06:54 -!- keemyb has quit (Quit: https://fnordserver.eu). 10:34:37 -!- wanderman has quit (Quit: Leaving). 10:35:18 -!- fungot has joined. 11:09:37 -!- MoALTz has joined. 11:14:26 -!- `^_^v has quit (Quit: This computer has gone to sleep). 11:25:56 http://www.cyclingweekly.co.uk/news/latest-news/bike-manufacturer-reduces-delivery-damage-70-per-cent-printing-tv-box-285180 11:27:19 -!- `^_^v has joined. 11:27:56 -!- `^_^v has quit (Client Quit). 12:12:20 -!- `^_^v has joined. 12:13:26 -!- `^_^v has quit (Client Quit). 12:24:05 -!- AnotherTest has quit (Quit: ZNC - http://znc.in). 12:25:09 -!- Zarutian has joined. 12:25:46 -!- Zarutian has quit (Read error: Connection reset by peer). 12:25:46 -!- Zarutian_ has joined. 12:25:46 -!- Zarutian_ has changed nick to Zarutian. 12:36:11 -!- `^_^v has joined. 12:47:27 -!- augur_ has quit (Remote host closed the connection). 12:49:14 where did noah keep his bees? 12:49:19 in the ark hives 13:06:16 -!- boily has joined. 13:14:34 >.< 13:15:34 did he have more than 2 bees? i guess 2 would probably have died horribly 13:15:35 ŏ_ô? 13:19:36 boily: don' worry, he probably had two chickens too 13:20:23 <\oren\> kon boily ha! 13:20:28 always carry a spare chicken with you. 13:20:48 ヘッロレン! 13:20:49 it may you help cross ravines 13:21:09 or was it a river 13:21:16 or a raven? 13:21:25 <\oren\> can you judge typographical quality of these hangul?: http://orenwatson.be/korean.PNG 13:21:36 I don't recall any ravens in the vicinity of Guybrush... hmm. 13:22:17 \oren\: looks convincingly foreign *ducks* 13:23:30 or alien. 13:23:51 \oren\: looks good to me. maybe stretch your ieungs a little bit more when they appear with a w- diphtong, and you're good to go. 13:24:42 for example, the ieung on 의 is too round. 13:25:45 <\oren\> oh, yeah. I should definitely fix that one. I think I'll just adjust it manually 13:29:35 <\oren\> speaking of alien, has anyone been so far as to make a sans-serif tengwar font? 13:30:43 there's a monospace one out there... 13:33:41 \oren\: probably the most noticable problem is "고" and "과" (the vertical bit of ㅗ should be on the left side of the vertical stroke in ㄱ) 13:33:43 <\oren\> http://orenwatson.be/workingOnTengwar.PNG I knocked these off yesterday, I'm not sure if they're any good 13:34:08 <\oren\> lifthrasiir: got it. I'll fix that 13:34:18 otherwise quite readable IMHO 13:35:20 tengwar's wikipedia article links to georgian script: https://en.wikipedia.org/wiki/Georgian_scripts#Form_of_Asomtavruli_letters 13:41:15 -!- adu has joined. 13:41:19 <\oren\> tengwar alwats reminds me more of gujarati 13:42:04 -!- `^_^v has quit (Quit: This computer has gone to sleep). 13:42:11 <\oren\> or maybe arabic 13:44:56 -!- adu has quit (Client Quit). 13:51:41 -!- ocharles_ has quit (Ping timeout: 272 seconds). 13:52:57 -!- Frooxius has quit (Ping timeout: 272 seconds). 13:53:44 -!- ocharles_ has joined. 15:30:13 -!- boily has quit (Quit: MUSCULAR CHICKEN). 15:36:09 -!- oerjan has joined. 15:40:36 @tell \oren\ <\oren\_> I already forgot what character is was <-- well it is hard to @tell people who keep changing nicks all the time tdnh 15:40:37 Consider it noted. 15:41:49 -!- Reece` has joined. 15:42:09 -!- DHeadshot has joined. 15:43:46 -!- Moonheart08 has joined. 15:45:03 Moooorning 15:49:33 fternoon 16:17:21 -!- heroux has quit (Remote host closed the connection). 16:17:32 -!- heroux has joined. 16:20:00 -!- ais523 has joined. 16:29:49 -!- villasukka has joined. 16:31:12 -!- wob_jonas has joined. 16:31:39 \oren\, I see you added hangul to your font! 16:31:42 congratulations 16:57:20 * oerjan swats izalove -----### 16:57:31 there was a bee sitting on you hth 16:57:35 thanks 16:59:34 oerjan: a bee like http://pbfcomics.com/246/ 17:00:19 `perl-e 3**1.5 17:00:20 No output. 17:00:25 `perl-e print 3**1.5 17:00:26 5.19615242270663 17:01:40 boily: don' worry, he probably had two chickens too <-- fourteen hth 17:01:48 -!- nitrix_ has changed nick to nitrix. 17:03:01 `perl -eprint 3**1.5 17:03:02 5.19615242270663 17:03:45 redundant command is redundant 17:04:16 ``` cat bin/perl-e 17:04:17 ​#!/bin/bash \ perl -e "$@" 17:05:23 `perl -e print 3**1.5 17:05:24 5.19615242270663 17:12:57 oerjan, that seems a lot of chickens 17:14:40 `perl -e $x=sqrt 3;print$x+$x+$x; "I don't know what you guys are doing, but I must join" 17:14:41 5.19615242270663 17:14:55 `lua -eprint(3^(3/2)) 17:14:55 5.1961524227066 17:15:08 `ruby -ep 3**1.5 17:15:09 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ruby: not found 17:15:10 Taneb: seven pairs hth 17:15:18 -!- ais523 has quit (Ping timeout: 276 seconds). 17:15:38 oerjan, or two sevens 17:16:39 -!- ais523 has joined. 17:16:40 well each pair is supposed to be one male and one female. which, come to think of it, is a bit weird for chickens. 17:19:43 -!- gremlins has joined. 17:20:51 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 17:22:20 -!- Reece` has quit (Ping timeout: 260 seconds). 17:25:25 -!- callforjudgement has joined. 17:25:30 -!- ais523 has quit (Read error: Connection reset by peer). 17:28:58 -!- callforjudgement has quit (Read error: Connection reset by peer). 17:29:54 oerjan: do please expound your deep knowledge of chicken 17:31:43 -!- callforjudgement has joined. 17:32:17 quintopia: my aunt once had some hth 17:32:32 (alive ones, that is) 17:32:57 also, i think you usually keep only one rooster 17:34:22 did she keep brood hens or broilers? 17:35:03 i think the former 17:35:47 not very sure. it's been more than 30 years... 17:35:51 oh 17:43:44 -!- callforjudgement has quit (Read error: Connection reset by peer). 17:43:53 -!- callforjudgement has joined. 17:45:16 -!- Zarutian has quit (Quit: Zarutian). 18:02:56 -!- `^_^v has joined. 18:04:42 -!- clog has quit (Ping timeout: 276 seconds). 18:04:49 -!- clog has joined. 18:07:05 -!- ais523 has joined. 18:07:23 -!- callforjudgement has quit (Read error: Connection reset by peer). 18:11:31 -!- wob_jonas has joined. 18:12:56 -!- wob_jonas has quit (Client Quit). 18:16:42 -!- ais523 has quit (Remote host closed the connection). 18:17:45 -!- Moonheart08 has quit (Ping timeout: 260 seconds). 18:18:48 -!- ais523 has joined. 18:18:48 -!- ais523 has quit (Remote host closed the connection). 18:20:21 -!- ais523 has joined. 18:20:33 -!- Moonheart08 has joined. 18:31:46 -!- Zarutian has joined. 18:32:17 -!- Zarutian has quit (Read error: Connection reset by peer). 18:32:45 -!- Zarutian has joined. 18:40:42 -!- carado has quit (Quit: Leaving). 18:41:14 -!- carado has joined. 18:49:05 -!- ais523 has quit (Read error: Connection reset by peer). 18:49:11 -!- callforjudgement has joined. 18:53:03 -!- callforjudgement has quit (Read error: Connection reset by peer). 18:53:42 -!- ais523 has joined. 18:55:34 -!- Moonheart08 has changed nick to moonythedwarf. 19:05:05 -!- moonythedwarf has changed nick to d. 19:05:17 -!- d has changed nick to h. 19:05:20 -!- h has changed nick to i. 19:05:20 -!- i has changed nick to Guest36722. 19:05:28 -!- oerjan has quit (Quit: Later). 19:05:30 -!- Guest36722 has changed nick to j. 19:05:32 -!- j has changed nick to k. 19:06:02 -!- k has changed nick to Guest47811. 19:06:03 -!- Guest47811 has changed nick to moon-e. 19:08:48 -!- moon-e has changed nick to e2. 19:19:49 -!- e2 has changed nick to moonythedwarf. 19:22:35 -!- AnotherTest has joined. 19:30:00 -!- moonythedwarf has changed nick to tachyon. 19:30:15 -!- tachyon has changed nick to luxon. 19:53:37 -!- moonythedwarf_ has joined. 19:54:28 -!- luxon has quit (Disconnected by services). 19:54:30 -!- moonythedwarf_ has changed nick to luxon. 19:55:56 -!- luxon has changed nick to evilmoon. 19:59:11 -!- evilmoon has changed nick to evilnoon. 20:00:34 -!- `^_^v has quit (Quit: This computer has gone to sleep). 20:05:05 -!- evilnoon has changed nick to insane. 20:05:21 -!- insane has changed nick to evilnoon. 20:05:25 <\oren\> `unicode ی 20:05:27 U+06CC ARABIC LETTER FARSI YEH \ UTF-8: db 8c UTF-16BE: 06cc Decimal: ی \ ی \ Category: Lo (Letter, Other) \ Bidi: AL (Right-to-Left Arabic) 20:06:23 `unicode­ 20:06:23 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: unicode­: not found 20:06:33 `unicode ­ 20:06:35 U+00AD SOFT HYPHEN \ UTF-8: c2 ad UTF-16BE: 00ad Decimal: ­ \ ­ \ Category: Cf (Other, Format) \ Bidi: BN (Boundary Neutral) 20:10:06 <\oren\> `unicode cool, i can change the topic again | http://esolangs.org/ | logs: http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D | htt 20:10:07 No output. 20:10:09 <\oren\> 17:35 -!- Moonheart08 [~IceChat9@unaffiliated/moonythedwarf] has joined #esoteric 20:10:12 <\oren\> 17:46 -!- Zarutian [~zarutian@168-110-22-46.fiber.hringdu.is] has joined #esoteric 20:10:15 <\oren\> 17:46 -!- Zarutian [~zarutian@168-110-22-46.fiber.hringdu.is] has quit [Read error: Connection reset by peer] 20:10:19 <\oren\> 17:47 -!- Zarutian [~zarutian@168-110-22-46.fiber.hringdu.is] has joined #esoteric 20:10:22 <\oren\> 17:55 -!- carado [~carado@bea44-1-78-193-226-57.fbxo.proxad.net] has quit [Quit: Leaving] 20:10:25 <\oren\> 17:55 -!- carado [~carado@bea44-1-78-193-226-57.fbxo.proxad.net] has joined #esoteric 20:10:28 <\oren\> 18:03 -!- ais523 [~ais523@unaffiliated/ais523] has quit [Read error: Connection reset by peer] 20:10:31 <\oren\> 18:03 -!- callforjudgement [~ais523@unaffiliated/ais523] has joined #esoteric 20:10:32 <\oren\> rrgh 20:10:34 <\oren\> 18:07 -!- callforjudgement [~ais523@unaffiliated/ais523] has quit [Read error: Connection reset by peer] 20:10:38 lol 20:10:42 \oren\: ? 20:10:52 <\oren\> `unicode ک 20:10:52 U+06A9 ARABIC LETTER KEHEH \ UTF-8: da a9 UTF-16BE: 06a9 Decimal: ک \ ک \ Category: Lo (Letter, Other) \ Bidi: AL (Right-to-Left Arabic) 20:11:04 is ! a valid nick? 20:11:04 `unicode­ ais523 20:11:05 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: unicode­: not found 20:11:08 <\oren\> stupid bluetoth mouse is malfunctioning 20:11:21 <\oren\> selecting things on its own 20:11:23 ais523: it is not 20:11:27 hmm, how come \oren\ can spell unicode and evilnoon can't 20:11:30 `unicode a 20:11:31 No output. 20:11:41 `cat bin/unicode 20:11:42 ​#!/usr/bin/env python \ # -*- encoding: utf-8 -*- \ import re \ import sys, os \ import unicodedata \ def l(c): m = re.match('(?:U[+])?([0-9a-f]{1,5})$', c, re.I); return unicodedata.lookup(c) if m is None else unichr(int(m.group(1),16)) \ try: \ print u''.join(map(l, sys.argv[1:])).encode('utf-8') \ except KeyError: \ os.execvp("multico 20:11:45 `unicode­ ais523 20:11:46 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: unicode­: not found 20:12:02 `unidecode `unicode 20:12:03 ​[U+003C LESS-THAN SIGN] [U+0065 LATIN SMALL LETTER E] [U+0076 LATIN SMALL LETTER V] [U+0069 LATIN SMALL LETTER I] [U+006C LATIN SMALL LETTER L] [U+006E LATIN SMALL LETTER N] [U+006F LATIN SMALL LETTER O] [U+006F LATIN SMALL LETTER O] [U+006E LATIN SMALL LETTER N] [U+003E GREATER-THAN SIGN] [U+0020 SPACE] [U+0060 GRAVE ACCENT] [U+0075 LATIN SMALL 20:12:13 `unidecode `unicode 20:12:14 ​[U+0060 GRAVE ACCENT] [U+0075 LATIN SMALL LETTER U] [U+006E LATIN SMALL LETTER N] [U+0069 LATIN SMALL LETTER I] [U+0063 LATIN SMALL LETTER C] [U+006F LATIN SMALL LETTER O] [U+0064 LATIN SMALL LETTER D] [U+0065 LATIN SMALL LETTER E] 20:12:23 well that looks like it was spelled correctly… 20:12:34 `unidecode de­ ai 20:12:34 ais523: because im fooling with you, (SOFT HYPHEN) 20:12:35 ​[U+0064 LATIN SMALL LETTER D] [U+0065 LATIN SMALL LETTER E] [U+00AD SOFT HYPHEN] [U+0020 SPACE] [U+0061 LATIN SMALL LETTER A] [U+0069 LATIN SMALL LETTER I] 20:12:38 <\oren\> ais523: he put a soft hyphen 20:12:42 ah, there we go 20:12:51 I found the shy just before you told me about it 20:13:02 <\oren\> which if you had a good font, you'd be able to see 20:13:15 doesn't that defeat the point of a soft hyphen? 20:13:19 ^ 20:13:24 <\oren\> yes 20:13:48 they are good for messing with people :P 20:14:15 evilnoon: nah, I was fairly convinced there was a hidden character or homograph character in there somewhere 20:14:17 silly evilnoon 20:14:29 just took me a while to find it 20:15:22 (SOFT HYPHEN)s are also good for messing with e *winks at firefly) 20:16:03 I though shy's was how e messed with one 20:17:43 <\oren\> `unicode 20AF 20:17:44 ​₯ 20:17:55 -!- alakra has quit (Read error: Connection reset by peer). 20:18:03 -!- alakra has joined. 20:18:18 <\oren\> that character is an interesting one because it never actually appeared on the greek drachma notes 20:18:22 `unicode 00AF 20:18:23 ​¯ 20:18:26 `unicode 00AD 20:18:28 ​­ 20:19:24 <\oren\> instead, notes and coins bore 'Δρχ' on them 20:20:20 `` echo `unicode­ ais523 | cat -c 20:20:21 ​/hackenv/bin/`: eval: line 4: unexpected EOF while looking for matching ``' \ /hackenv/bin/`: eval: line 5: syntax error: unexpected end of file 20:20:24 `` echo `unicode­ ais523 | cat -v 20:20:25 ​/hackenv/bin/`: eval: line 4: unexpected EOF while looking for matching ``' \ /hackenv/bin/`: eval: line 5: syntax error: unexpected end of file 20:20:31 `` echo ' `unicode­ ais523' | cat -v 20:20:32 `unicodeM-BM-- ais523 20:20:36 there we go 20:20:38 take that, soft hyphen 20:25:21 -!- ybden has changed nick to __builtin_ybden. 20:28:18 -!- copumpkin has joined. 20:34:55 -!- evilnoon has changed nick to qwerty. 20:35:04 -!- qwerty has changed nick to qwertyuiop[]\. 20:35:14 -!- qwertyuiop[]\ has changed nick to qwertyuiop[]\asd. 20:35:33 -!- \oren\ has changed nick to stopchangingnick. 20:35:41 -!- stopchangingnick has changed nick to \oren\. 20:35:54 -!- qwertyuiop[]\asd has changed nick to luxon. 20:37:11 <\oren\> @messages-lead 20:37:11 oerjan said 4h 56m 34s ago: <\oren\_> I already forgot what character is was <-- well it is hard to @tell people who keep changing nicks all the time tdnh 20:43:19 @messages 20:43:19 You don't have any messages 20:45:17 `` cd wisdom; grep -l invalid * 20:45:25 grep: ¯\_(ツ)_: Is a directory \ grep: icbm: Is a directory \ grep: le: Is a directory \ grep: ¯\(°_o): Is a directory \ grep: ¯\(°​_o): Is a directory \ ☾_ \ ørjan \ reflection 20:45:40 `? ☾_ 20:45:40 ​☾_ is moon_'s lawful twin. He's banned in the IRC RFC for being an invalid character. He sometimes eats papers. 20:45:56 `? reflection 20:45:57 cat.reflection. 20:46:03 oh, right. 20:47:06 * luxon is anti ☾_, he sometimes spits out papers 20:47:13 -!- luxon has changed nick to moon_. 20:47:39 -!- moon_ has changed nick to moon__. 20:47:51 well then, somone clamed the nickname 'moon_' 20:48:23 cocoon is free 20:48:32 im good 20:48:35 `? cocoon 20:48:36 Cocoon was built by the fal'Cie, and floats above Gran Pulse. 20:48:43 truth 20:49:13 `? #esoteric 20:49:14 ​#esoteric is the only channel that exists. After monqy left it became slightly off-centër. It's a 7-codimensional hyperenchilada about 30 m (100 ft) across. oerjan seems to be making a lawn in the northern part, but it keeps getting dug up by free ranging moons. May contain crude drawings of nuts. 20:49:25 -!- gremlins has quit (Ping timeout: 260 seconds). 20:49:38 `? music 20:49:39 music? ¯\(°​_o)/¯ 20:49:43 :o 20:49:51 is music not a tanebvention? 20:50:09 taneb didn't invent everything, you know 20:50:21 `addwisdom music is one of few things taneb did not invent 20:50:21 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: addwisdom: not found 20:50:39 `le/rn music/The result was a short burst of the most hideous cacophony in G minor. 20:50:43 Learned «music» 20:51:02 `? music 20:51:03 The result was a short burst of the most hideous cacophony in G minor. 20:51:57 `le/rn the most hideous cacophony in G minor/The Most Hideous Cacophony in G Minor is a musical work often incorrectly attributed to Beethoven and/or Taneb 20:52:01 Learned «the most hideous cacophony in g minor» 20:52:19 `? the most hideous cacophony in G mino 20:52:20 the most hideous cacophony in G mino? ¯\(°​_o)/¯ 20:52:23 `? the most hideous cacophony in G minor 20:52:24 The Most Hideous Cacophony in G Minor is a musical work often incorrectly attributed to Beethoven and/or Taneb 20:52:33 Given the context it should be Bach, not Beethoven. 20:52:51 fine 20:53:05 `le/rn the most hideous cacophony in G minor/The Most Hideous Cacophony in G Minor (Op. -3) is a musical work often incorrectly attributed to Bach and/or Taneb 20:53:08 Relearned «the most hideous cacophony in g minor» 20:53:12 (Douglas Adams, Dirk Gently's Holistic Detective Agency) 20:53:31 I've been working on something with a friend but given I don't have access to a Rust compiler right now I've handwritten the code 20:54:00 -!- Phantom_Hoover has joined. 20:54:00 -!- evilipse has joined. 20:54:06 evening ladies 20:54:14 `relcome evilipse 20:54:17 ​evilipse: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric on EFnet or DALnet.) 20:54:36 noice 20:54:39 evilipse: hai 20:54:56 hiya 20:56:49 hackego's prefix is `, ` runs a script with a single argument, `` runs valid bash 20:57:22 -!- shachaf has left. 20:57:32 `ls 20:57:33 advice \ bin \ canary \ candide \ cdescs \ emoticons \ esobible \ etc \ evil \ factor \ good \ hw \ ibin \ interps \ karma \ le \ lib \ ls \ misle \ out \ paste \ ply-3.8 \ ps \ quines \ quotes \ share \ src \ test \ theorems \ tmflry \ tmp \ wisdom \ wisdom.pdf 20:57:44 sooo 20:57:48 `stat advice 20:57:48 `pwd 20:57:48 ​ File: `advice' \ Size: 4096 Blocks: 8 IO Block: 1024 directory \ Device: 12h/18dInode: 927683 Links: 2 \ Access: (0755/drwxr-xr-x) Uid: ( 5000/ UNKNOWN) Gid: ( 0/ UNKNOWN) \ Access: 2016-09-25 00:49:20.000000000 +0000 \ Modify: 2016-05-03 23:15:07.000000000 +0000 \ Change: 2016-05-03 23:15:07.000000000 +0000 \ B 20:57:48 ​/hackenv 20:57:54 `whoami 20:57:55 whoami: cannot find name for user ID 5000 20:58:02 -!- ais523 has quit (Ping timeout: 265 seconds). 20:58:24 hackego is built off a custom sandbox made by Gregor (hasent been seen in a while) 20:58:29 moon__: do i try and break it 20:58:37 `paste advice 20:58:37 go ahead, they dont care :P 20:58:39 http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/advice 20:58:50 read the advice tho 20:59:01 int-e thats a invalid file 20:59:10 `rm -rf ~ 20:59:12 o.......o 20:59:12 rm: invalid option -- ' ' \ Try `rm --help' for more information. 20:59:31 err... pleasedont. 20:59:34 `>~ 20:59:35 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: >~: not found 20:59:44 `~ 20:59:44 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ~: not found 20:59:47 `` ~ 20:59:48 ​/hackenv/bin/`: line 4: /tmp: Is a directory 20:59:48 `rm 20:59:49 rm: missing operand \ Try `rm --help' for more information. 20:59:51 `rm -rf 20:59:51 No output. 20:59:55 `rm -rf 1 20:59:55 rm: invalid option -- ' ' \ Try `rm --help' for more information. 20:59:59 `rm -rf ~ 21:00:00 rm: invalid option -- ' ' \ Try `rm --help' for more information. 21:00:20 moon__: I can see it's a directory, but I wonder why it's not in the repo 21:00:27 `ls advice 21:00:28 No output. 21:00:28 same 21:00:31 Etherium was forked? :/ 21:00:38 evilipse: we can rollback you know 21:00:49 Sgeo: old news, or did they do that again? 21:01:02 Old news (from this year) 21:01:03 `wget https://raw.githubusercontent.com/itslukej/ComputerCrashyCrashy/master/Main.py 21:01:04 ​--2016-09-25 20:01:00-- https://raw.githubusercontent.com/itslukej/ComputerCrashyCrashy/master/Main.py \ Resolving raw.githubusercontent.com (raw.githubusercontent.com)... failed: Name or service not known. \ wget: unable to resolve host address `raw.githubusercontent.com' 21:01:07 sick 21:01:13 Sgeo: I mean that was more than a month ago ;-) 21:01:17 -!- jeffl35 has joined. 21:01:31 `relcome jeffl35 21:01:32 ​jeffl35: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric on EFnet or DALnet.) 21:01:36 `help fetch 21:01:37 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 21:03:06 `run lci 21:03:06 bash: lci: command not found 21:03:09 :( 21:04:06 moon__: poke 21:04:09 mooo 21:04:11 `ls 21:04:12 advice \ bin \ canary \ candide \ cdescs \ emoticons \ esobible \ etc \ evil \ factor \ good \ hw \ ibin \ interps \ karma \ le \ lib \ ls \ misle \ out \ paste \ ply-3.8 \ ps \ quines \ quotes \ share \ src \ test \ theorems \ tmflry \ tmp \ wisdom \ wisdom.pdf 21:04:18 moon__: did you make hackego? 21:04:22 uh no. 21:04:31 Gregor (hasent been seen in a while) did 21:04:36 Sgeo: 3 months even... time passes so quickly. 21:04:44 ``rm -rf ~ 21:04:45 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `rm: not found 21:04:51 `` rm -rf ~ 21:04:52 rm: cannot remove `/tmp': Permission denied 21:04:56 wat 21:04:57 lul 21:05:00 `revert 942e964c81c1 21:05:04 rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/store/data/canary.orig': Is a directory \ Done. 21:05:12 `` chmod ~ 777 -R 21:05:12 Done 21:05:13 chmod: invalid mode: `/tmp' \ Try `chmod --help' for more information. 21:05:20 `` chmod 777 ~ -R 21:05:21 chmod: changing permissions of `/tmp': Operation not permitted 21:05:23 `revert 942e964c81c1 21:05:23 `` ls -al / 21:05:24 rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/store/data/canary.orig': Is a directory \ Done. 21:05:25 total 32 \ drwxr-xr-x 15 0 0 0 Sep 25 20:05 . \ drwxr-xr-x 15 0 0 0 Sep 25 20:05 .. \ drwxr-xr-x 2 0 0 4096 Jan 29 2014 bin \ drwxr-xr-x 3 0 0 4096 Jan 29 2014 dev \ drwxr-xr-x 4 0 0 0 Sep 25 20:05 etc \ drwxr-xr-x 27 5000 5000 4096 Sep 25 19:53 hackenv \ drwxr-xr-x 3 0 0 0 Sep 25 20:05 home \ d 21:05:38 `` echo $SHELL 21:05:39 ​/bin/sh 21:05:40 `` chmod 777 / -R 21:05:49 `revert 942e964c81c1 21:05:50 `` node 21:05:54 `` nodejs 21:05:56 did i break it 21:05:58 lol 21:06:05 `` bash 21:06:05 hehee 21:06:06 it will end in 30 seconds or a minute, depends 21:06:14 there _is_ a timeout 21:06:28 rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/store/data/canary.orig': Is a directory \ Done. 21:06:35 `` chmod 777 / -R 21:06:35 `` chmod 777 / -R 21:06:40 oops 21:06:44 evilipse: i recommend you stop 21:06:46 `revert 942e964c81c1 21:06:49 why 21:06:51 `` ps aux 21:06:54 why 21:06:58 dont abuse the darn thing :P 21:07:02 rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/store/data/canary.orig': Is a directory \ Done. 21:07:03 make me 21:07:06 chmod: changing permissions of `/': Operation not permitted \ chmod: changing permissions of `/sys': Operation not permitted \ chmod: changing permissions of `/sys/fs': Operation not permitted \ chmod: changing permissions of `/sys/fs/ext4': Operation not permitted \ chmod: changing permissions of `/sys/fs/ext4/features': Operation not permitted \ 21:07:07 chmod: changing permissions of `/': Operation not permitted \ chmod: changing permissions of `/sys': Operation not permitted \ chmod: changing permissions of `/sys/fs': Operation not permitted \ chmod: changing permissions of `/sys/fs/ext4': Operation not permitted \ chmod: changing permissions of `/sys/fs/ext4/features': Operation not permitted \ 21:07:09 its slow, it runs on the same server as the wiki ( i beleive) 21:07:10 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND \ 0 1 0.0 0.1 1012 272 ? S 20:07 0:00 /init \ 0 2 0.0 0.0 0 0 ? S 20:07 0:00 [kthreadd] \ 0 3 0.0 0.0 0 0 ? S 20:07 0:00 [ksoftirqd/0] \ 0 4 0.0 0.0 0 0 ? 21:07:10 lul 21:07:14 `` chmod 000 / -R 21:07:15 `` top 21:07:25 uh 21:07:26 ??? 21:07:28 `` htop 21:07:33 * jeffl35 pokes HackEgo 21:07:36 *sigh* 21:07:39 fizzie halp 21:07:40 chmod: changing permissions of `/': Operation not permitted \ chmod: changing permissions of `/sys': Operation not permitted \ chmod: changing permissions of `/sys/fs': Operation not permitted \ chmod: changing permissions of `/sys/fs/ext4': Operation not permitted \ chmod: changing permissions of `/sys/fs/ext4/features': Operation not permitted \ 21:07:41 kiddies 21:07:41 ​/hackenv/bin/`: line 4: htop: command not found 21:07:55 kids in a candy store at night 21:07:59 `` ls 21:08:12 No output. 21:08:12 No output. 21:08:12 No output. 21:08:12 moon__: lets add a lolcode interpreter to otherbot :P 21:08:13 No output. 21:08:13 No output. 21:08:13 No output. 21:08:18 `` ls 21:08:19 No output. 21:08:20 `` ls -al 21:08:21 No output. 21:08:25 `` ls -al / 21:08:25 ahhhhhh 21:08:26 No output. 21:08:28 uh 21:08:29 ??? 21:08:31 uhhh 21:08:43 int-e i think i broke something halp, either me or them 21:08:43 `` chmod 000 / -R 21:08:44 No output. 21:08:56 lol 21:08:58 `revert 942e964c81c1 21:08:59 abort: repository /home/hackbot/hackbot.hg/multibot_cmds/env not found! 21:08:59 * evilipse high fives 21:09:05 * evilipse high fives jeffl35 21:09:07 uhhh 21:09:15 we did it 21:09:16 :o 21:09:29 * moon__ runs screaming 21:09:34 -!- moon__ has left ("FIZZIE HALP"). 21:09:40 lul 21:09:44 we did it 21:09:49 i didn't --no-preserve-root yet 21:09:59 -!- moon__ has joined. 21:10:10 `` rm --help 21:10:11 No output. 21:10:16 `revert 942e964c81c1 21:10:16 abort: repository /home/hackbot/hackbot.hg/multibot_cmds/env not found! 21:10:17 `` echo $SHELL 21:10:17 No output. 21:10:19 `` sh 21:10:19 No output. 21:10:25 `` sh -c 'echo $SHELL' 21:10:26 No output. 21:10:35 `` ls -alR / 21:10:36 apparently hackego suffered annihilation 21:10:36 No output. 21:10:39 we bork it 21:10:40 rip 21:10:41 w000000000 21:11:47 fizzie? int-e? the mercuial is down 21:11:55 the repository is gone 21:12:03 What you did was to remove all permissions from the hg repo directory. 21:12:13 that was evilipse and jeffl35 21:12:15 So I will need to revert back a bit manually. 21:12:25 moon__: not me 21:12:28 that was eclipse 21:12:32 `` ls -alR / 21:12:33 No output. 21:12:36 but ^ 21:12:36 true. 21:13:08 Yes, the sandbox stuff wasn't apparently really expecting that. 21:13:27 `` chmod -Rfv 777 / 21:13:27 No output. 21:13:31 so they found a way to bonk it. might want to patch that 21:13:37 ^ 21:13:52 IF you know how Gregor's sandbox software works 21:14:40 I'm just looking at a suitable commit to revert back to (plus how to do it), because I'd rather not have those all-777 permissions everywhere, they look spectacularly ugly. 21:15:01 942e964c81c1 should do it, iots the first one before they came along 21:15:11 fizzie: 942e964c81c1 was fine. were the chmods actually committed? 21:15:14 its the one i reverted it back to repeatedly 21:15:55 int-e: Only the "chmod 777 / -R" is in. 21:16:08 pity 21:16:56 `revert 942e964c81c1 21:17:37 rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/store/data/canary.orig': Is a directory \ Done. 21:17:43 That took quite a while. 21:17:47 `ls 21:17:50 advice \ bin \ canary \ candide \ cdescs \ emoticons \ esobible \ etc \ evil \ factor \ good \ hw \ ibin \ interps \ karma \ le \ lib \ ls \ misle \ out \ paste \ ply-3.8 \ ps \ quines \ quotes \ share \ src \ test \ theorems \ tmflry \ tmp \ wisdom \ wisdom.pdf 21:18:57 `le\rn evilipse\ the most evil of evil people, likes to use chmod 000 / -R 21:18:57 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: le\rn: not found 21:19:11 `ls bin 21:19:12 ​` \ `` \ ^.^ \ ̊ \ \ ! \ ? \ ?? \ ¿ \ ' \ " \ @ \ * \ ؟ \ \ \ \ welcome \ 1 \ 1492 \ 2014 \ 2015 \ 2016 \ 2017 \ 5 \ 5quote \ 7z \ 7za \ 8ball \ 8-ball \ aaaaaaaaa \ addquote \ addtodo \ aglist \ allquotes \ analogy \ anonlog \ append \ arienvenido \ as86 \ aseen \ asm \ autowelcome \ bardsworthlist \ before \ 21:19:18 It's the other sort of slash. 21:19:24 `` ls -alR / 21:19:25 ​/: \ total 32 \ drwxr-xr-x 15 0 0 0 Sep 25 20:19 . \ drwxr-xr-x 15 0 0 0 Sep 25 20:19 .. \ drwxr-xr-x 2 0 0 4096 Jan 29 2014 bin \ drwxr-xr-x 3 0 0 4096 Jan 29 2014 dev \ drwxr-xr-x 4 0 0 0 Sep 25 20:19 etc \ drwx--x--x 27 5000 5000 4096 Sep 25 20:17 hackenv \ drwxr-xr-x 3 0 0 0 Sep 25 20:19 21:19:29 `le/rn evilipse/ the most evil of evil people, likes to use chmod 000 / -R 21:19:31 Learned «evilipse» 21:19:41 That extra space in the beginning is a bit silly. 21:19:52 o: 21:20:01 `? evilipse 21:20:01 ​ the most evil of evil people, likes to use chmod 000 / -R 21:20:05 well i am evil indeed 21:20:32 From what I've seen so far, I think "obnoxious" is a better adjective. 21:20:50 `le/rn evilipse/ the most obnoxious of evil people, likes to use chmod 000 / -R 21:20:52 Relearned «evilipse» 21:21:33 ls -alR /home/hackbot/hackbot.hg/multibot_cmds/env 21:21:38 `` ls -alR /home/hackbot/hackbot.hg/multibot_cmds/env 21:21:40 ls: cannot access /home/hackbot/hackbot.hg/multibot_cmds/env: No such file or directory 21:21:55 thats a artifact of the bot's main script 21:22:16 `` ls -alR /home/../home/../././././../home/./././././hackbot/hackbot.hg/multibot_cmds/env 21:22:18 ls: cannot access /home/../home/../././././../home/./././././hackbot/hackbot.hg/multibot_cmds/env: No such file or directory 21:23:20 `` rm --no-preserve-root -rf /home 21:23:21 rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/lib/sandbox': Read-only file system \ rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/lib/revert': Read-only file system \ rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/lib/limits': Read-only file system \ rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/lib/fe 21:23:24 That's not a path that makes sense inside the environment the commands run in. 21:23:36 `` chmod 000 / -R 21:23:40 lol 21:23:44 *scree* 21:23:46 Okay, that's just *stupid*. 21:23:46 No output. 21:24:02 fizzie: if hackego has a block list, use it 21:24:44 There was some sort of a thing, but I'm not terribly familiar with it. 21:25:09 `` cmake 21:25:10 No output. 21:25:14 -!- ais523 has joined. 21:25:19 `` git clone https://github.com/justinmeza/lci && cd lci 21:25:20 No output. 21:25:23 -!- Time-Wrap has joined. 21:25:26 -!- evilipse has left ("Leaving"). 21:25:30 oh right Time-Wrap borked it 21:25:39 ais523: dont look now, but evilipse decided to chmod 000 / -R 21:25:59 moon__: where? hackego? 21:26:04 * Time-Wrap hides 21:26:08 that's easy enough to fix 21:26:12 ais523: It's not. 21:26:20 :DDDDDDDDDDDDd 21:26:21 oh, does `revert not handle file modes? 21:26:29 fizzie has to manually repair it 21:26:32 ` ls 21:26:33 `ls 21:26:33 No output. 21:26:34 No output. 21:26:41 it borks the bot entirely 21:26:42 ais523: `revert does, but the sandbox is all confused if there's no access to the repo working directory. 21:26:50 ais523: So I need to manually chmod, then revert. 21:26:55 in that case maybe we've found a second way to break the bot 21:27:12 no, i ddi 21:27:13 I was quite pleased with myself when I (admittedly inadvertently) broke `revert 21:27:13 ais523: The stupid part here is that it was already done once, and then just repeated. 21:27:14 *did 21:27:17 ^ 21:27:18 so that it displayed an error message every time 21:27:31 IIRC that still hasn't been fixed 21:27:53 I was trying to figure out if freenode's chanserv has some sort of auto-timed ban feature, actually. 21:28:28 I don't think so; I've only seen the eir service bot handle ban timeouts. 21:28:41 fizzie: you can timed akick 21:28:49 (I think) 21:28:59 it does 21:29:01 a timed akick 21:29:19 Well, maybe third time will be the charm. 21:29:23 fizzie: is there a tr_60.cmd script with a hard-coded list of nicks? 21:29:27 `` ls 21:29:28 advice \ bin \ canary \ candide \ cdescs \ emoticons \ esobible \ etc \ evil \ factor \ good \ hw \ ibin \ interps \ karma \ le \ lib \ ls \ misle \ out \ paste \ ply-3.8 \ ps \ quines \ quotes \ share \ src \ test \ theorems \ tmflry \ tmp \ wisdom \ wisdom.pdf 21:29:34 int-e: There was something like that, yes. 21:29:37 -!- hppavilion[1] has joined. 21:29:44 int-e: Though a nick-based list isn't exactly the most robust thing in the world. 21:29:47 `` rm --no-preserve-root -rfv / # testing, plz no ban 21:29:57 rm: cannot remove `/sys/fs/ext4/features/meta_bg_resize': Permission denied \ rm: cannot remove `/sys/fs/ext4/features/batched_discard': Permission denied \ rm: cannot remove `/sys/fs/ext4/features/lazy_itable_init': Permission denied \ rm: cannot remove `/sys/fs/cgroup': Permission denied \ rm: cannot remove `/sys/bus/cpu/devices/cpu0': Permission 21:30:15 recursive rm /is/ something that the bot should be able to guard against 21:30:20 (that may also be the right place to fix up permissions... though I'm a bit confused by the fact that they are getting messed up permanently in the first place. 21:30:26 ) 21:30:27 `ls 21:30:28 canary \ candide \ cdescs \ emoticons \ esobible \ etc \ factor \ good \ hw \ interps \ karma \ le \ lib \ ls \ misle \ out \ paste \ ply-3.8 \ quotes \ src \ test \ theorems \ tmflry \ tmp \ wisdom \ wisdom.pdf 21:30:46 come to think of it, it's even possible it'd delete the incorrect permissions and let the revert restore the correct ones 21:30:53 can i find more ways to break it? 21:31:03 anyways i want my lolcode interpreter 21:31:07 although bin seems to be missing 21:31:09 int-e: Well, they aren't, really. The chmod 000 just sets the working copy directory permissions, and doesn't commit anything. 21:31:15 ``l* 21:31:16 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `l*: not found 21:31:16 `` git clone https://github.com/justinmeza/lci && cd lci 21:31:17 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `: not found 21:31:32 `` curl icanhazip.com 21:31:32 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `: not found 21:31:33 Huh, that's the weirdest. 21:31:43 ` curl icanhazip.com 21:31:43 `revert 58b9ee8f97a7 21:31:44 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found 21:31:46 oh wow, it seems it deleted advice, bin, and ibin 21:31:50 rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/store/data/canary.orig': Is a directory \ Done. 21:31:53 and left everything else the same? 21:31:57 yeeeeaahhhhhh boiiiiiiiiiiiiiiiiiiiiii 21:31:59 ais523: Yeah. I think that might've been the timeout. 21:32:06 `revert 942e964c81c1 21:32:07 rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/store/data/canary.orig': Is a directory \ Done. 21:32:08 `` git clone https://github.com/justinmeza/lci && cd lci 21:32:08 ​/hackenv/bin/`: line 4: git: command not found 21:32:12 :( 21:32:18 `` unzip 21:32:19 ​/hackenv/bin/`: line 4: unzip: command not found 21:32:22 jeffl35: it mostly doesn't have internet access 21:32:28 :( 21:32:43 y u no git 21:32:57 -!- ais523 has quit. 21:33:15 That's probably Gregor's peculiarities, he's sort of a mercurial guy. 21:33:43 :( 21:33:49 if your lucky fizzie may be nice and throw the git repository in the bot for you 21:34:08 i just like lolcode for some random reason 21:34:23 tip: hackego does not support multiline 21:34:24 I'm not sure it's very well-suited for IRC, isn't it a bit verbose? 21:34:30 HAI 1.2, I HAZ A POKE, GIMMEH POKE, VISIBLE "I POKES :{POKE}", KTHXBYE 21:34:34 *HAS 21:34:45 it's fine 21:34:51 afaik 21:34:59 Well, there's a built-in `fetch command that has internet access, you can download a tarball. 21:35:02 `` which sh 21:35:03 ​/bin/sh 21:35:09 `` rm -f /bin/sh 21:35:10 rm: cannot remove `/bin/sh': Read-only file system 21:35:12 lol 21:35:23 jeffl35: thre is a article for it on the esolang wiki: http://esolangs.org/wiki/LOLCODE 21:35:26 could use some updating 21:35:28 moon__: i saw 21:35:37 nah 21:35:45 just tell people to go to wikipedia 21:35:49 i'd rather edit wikipedia 21:35:50 -!- Cale has quit (Ping timeout: 250 seconds). 21:36:04 (and the wikipedia article is fine except for file i/o) 21:36:33 the esolang wiki article contains more info than the wikipedia article 21:36:34 :P 21:36:43 fizzie: I'm irritated that the permissions on the working directory prevent it from executing any command, even if it's in /bin. But I only know some bits and pieces of the bot, and they're probably outdated. 21:37:16 int-e: Yeah, it's a bit scow. 21:37:19 (gleaned from gregor's public repos) 21:38:00 * Zarutian hopes that \oren\ gets over the Bluetoothache. 21:38:22 * jeffl35 21:38:32 * moon__ 21:39:46 does anybode know an android app that lets you do basic image processing? most stuff i find just puts filters over everything 21:40:00 int-e: It might even be the UML refusing to run if given a --translate-write path with no permissions; I could imagine it trying to stat it or something. 21:41:22 I don't know; I seem to recall some logfile somewhere, but at least the main log (with all input/output) had no error messages in it. 21:42:04 fizzie: Oh, darn, if the mount target directory isn't accessible, the mount call will probably fail. 21:42:32 And there are quite a few things mounted directly under /hackenv 21:43:48 -!- otherbot has joined. 21:44:10 jeffl35: please state the purpose of having otherbot here >_> 21:44:18 (well, at least .hg) 21:45:40 -part #esoteric 21:45:41 -!- otherbot has left. 21:45:42 -!- augur has joined. 21:46:15 int-e: At any rate, since `revert runs outside, as an easy fix it could do some sanity-restoring of the working copy first, since it then is going to run the 'hg revert' on it anyway. 21:48:05 Yeah. In fact, ensuring that $HACKENV has +rwx for the user could just be enough, because then the mercurial repo is readable, and mercurial might be smart enough to figure out the rest. 21:48:17 -!- otherbot has joined. 21:51:15 It's also scow how the web repository browser goes inaccessible when the working copy permissions are bad. Makes it harder to see what has happened so far. Maybe the whole transact logic should just in general enforce u+rwx on the env directory. 21:51:20 It's nice to speculate, but it's not like we've gotten around to fixing the previous issue either. I don't want to too much to the existing bot instance because I don't know if Gregor's actually "using" it still, and it might complicate future updates if I do a patch that's not in whatever source control he's using. 21:51:57 Well, maybe a shower will help. 21:52:54 woo, my CaC has 8 days uptime and still no write or read errors on sda! 21:53:06 I think that's some sort of record. 21:56:38 -help 21:56:38 Use 'help ' 21:57:30 -poke moon__ 21:57:30 * otherbot pokes moon__ 21:57:32 teehee 21:57:39 you're pokable now 21:58:03 -!- moon__ has changed nick to moonythedwardf. 21:58:06 -!- moonythedwardf has changed nick to moonythedwarf. 21:58:15 please save that for the bots channel :P 22:02:00 `? esoteric 22:02:03 This channel is about programming -- for the other kind of esoterica, try #esoteric on EFnet or DALnet. 22:02:11 `? #esoteric 22:02:12 ​#esoteric is the only channel that exists. After monqy left it became slightly off-centër. It's a 7-codimensional hyperenchilada about 30 m (100 ft) across. oerjan seems to be making a lawn in the northern part, but it keeps getting dug up by free ranging moons. May contain crude drawings of nuts. 22:02:25 ... 22:02:54 `? #esoteric-blah 22:02:55 ​#esoteric-blah? ¯\(°​_o)/¯ 22:03:45 [wiki] [[Special:Log/newusers]] create * CatIsFluffy * New user account 22:04:08 i wonder if mr/ms/mrs new user will get on the channel 22:05:21 -!- Cale has joined. 22:05:43 is Cale new? 22:05:57 `relcome cale #hopefully i did this right 22:06:00 ​cale: #hopefully: i: did: this: right: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric 22:06:27 `` relcome cale #hopefully i did this right 22:06:28 ​cale: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric on EFnet or DALnet.) 22:08:17 int-e: who's monqy anyways? 22:09:01 Not particularly new 22:09:41 Cale is an oldtimer who has recently found the way to #esoteric. 22:09:51 ah 22:10:08 int-e: who was monqy 22:10:21 [wiki] [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=49760&oldid=49749 * CatIsFluffy * (+247) 22:10:40 -!- hppavilion[1] has quit (Ping timeout: 255 seconds). 22:10:50 (and I've also not been on this channel for most of its existence... I don't recall monqy) 22:10:52 [wiki] [[Minebit]] M https://esolangs.org/w/index.php?diff=49761&oldid=46230 * CatIsFluffy * (+171) added detail about computational class with infinite data tape 22:11:15 bbiab, I'm actually moving this computer :) 22:11:50 -!- Cale has quit (Remote host closed the connection). 22:12:29 looks like someone hit the 'random esolang' button 22:12:44 -reload 22:12:44 Reloading modules... 22:12:57 jeffl35: dont test it in here >_> 22:12:58 -lol HAI 1.2,VISIBLE "OHAI",KTHXBYE 22:13:02 test it in your channel. 22:13:03 ok fine 22:13:41 [wiki] [[User:CatIsFluffy]] N https://esolangs.org/w/index.php?oldid=49762 * CatIsFluffy * (+72) Created page with "I made the [[Talk:Quiney|Quiney interpreter]] and [[Syms]]. Good for me." 22:14:38 [wiki] [[User talk:50.161.94.113]] https://esolangs.org/w/index.php?diff=49763&oldid=46320 * CatIsFluffy * (+49) 22:16:51 -!- MoALTz has quit (Quit: Leaving). 22:17:40 -pad HAI 1.2, VISIBLE "OHAI", KTHXBYE 22:17:41 -lolr 22:17:42 Error opening file '/home/ubuntu/workspace/modules/lcipadcode'. 22:17:44 lol 22:17:57 [wiki] [[Lazy evaluation]] https://esolangs.org/w/index.php?diff=49764&oldid=42771 * CatIsFluffy * (+1) Finished article by request 22:17:58 -reload 22:17:58 Reloading modules... 22:18:02 -pad HAI 1.2, VISIBLE "OHAI", KTHXBYE 22:18:03 -lolr 22:18:03 OHAI 22:18:11 yay, lolcode 22:18:41 -pad HAI 1.2, I HAS A POKE, POKE R "moonythedwarf", VISIBLE "I POKES :{POKE}", KTHXBYE 22:18:44 -lolr 22:18:45 OHAI 22:18:55 might want to -padclr 22:18:55 -padclr 22:19:00 -pad HAI 1.2, I HAS A POKE, POKE R "moonythedwarf", VISIBLE "I POKES :{POKE}", KTHXBYE 22:19:03 -lolr 22:19:03 I POKES moonythedwarf 22:19:05 -padclear 22:19:06 and test in ##jeffl35 damnit 22:19:06 :D 22:20:56 [wiki] [[Syms]] https://esolangs.org/w/index.php?diff=49765&oldid=46587 * CatIsFluffy * (-9) Hi! 22:22:26 -!- moonythedwarf_ has joined. 22:22:57 For aircraft weight and balance calculation the plot will have an envelope that has a polygon that it is necessary for the plot to be inside of. Is such polygon guaranteed to be monotone or other properties? 22:23:25 ?! 22:23:25 Maybe you meant: v @ ? . 22:24:03 -!- moonythedwarf has quit (Ping timeout: 272 seconds). 22:25:55 zzo38: doesn't look that way: https://sites.google.com/site/aerodynamics4students/table-of-contents/aircraft-performance-1/flight-envelope 22:27:10 even less convex: http://s6.aeromech.usyd.edu.au/aerodynamics/index.php/sample-page/aircraft-performance/flight-envelope/ 22:27:14 -pad HAI 1.2,I HAS A YAY,YAY R "IOVOID",YAY,WTF?,OMG "IOVOID",VISIBLE "PING.IO",GTFO,OMG "JEFFL35",VISIBLE "OHAI JEFF",GTFO,OMGWTF,VISIBLE "OHAI",GTFO,OIC,KTHXBYE 22:27:20 -lolr 22:27:20 PING.IO 22:27:36 fizzie: verbose but workable :) /me pokes jeffl35 22:27:40 ... 22:27:54 oh and don't forget padclr 22:27:59 -padclr 22:28:03 moonythedwarf_: can you make padclr run automatically after lolr 22:28:06 so people don't like die 22:28:14 because once you KTHXBYE you can't really add anything to it 22:28:17 wait, i'll do it 22:28:18 jeffl35: feel free to add it _urself_ 22:29:46 -relado 22:29:48 -reload 22:29:48 Reloading modules... 22:30:00 -pad HAI 1.2,VISIBLE "lol",KTHXBYE 22:30:00 -lolr 22:30:01 lol 22:30:04 -lolr 22:30:04 /home/ubuntu/workspace/modules/lcipadcode:1: expected HAI at: end of file 22:30:07 ok 22:30:17 int-e: That looks different from the weight and balance plots that I have seen, and I do not see weight and balance calculation mentioned there. 22:33:06 For the record, putting a lolcode thing on HackEgo would be quite okay, though you'd likely need to find/make a tarball to get it there. And you could also add commands for a pad-like thing using a /hackenv/tmp/pad file for unversioned state. 22:33:17 The plots I meant have weight plotted on the Y axis and position on the X axis. 22:33:39 [wiki] [[MATL]] https://esolangs.org/w/index.php?diff=49766&oldid=49055 * Luis Mendo * (+29) Turing-complete category 22:33:53 fizzie: i understand that, me and jeffl develop otherbot in javascript, a language we are familiar with, i may try and tackle it for hackego however 22:34:16 [wiki] [[MATL]] https://esolangs.org/w/index.php?diff=49767&oldid=49766 * Luis Mendo * (+0) 22:34:39 Well, that's fine too. 22:36:07 Heh, I hadn't logged in to bitbucket for so long, they've completely revamped their account system as well. 22:36:34 -pad hia 1.2 22:36:46 -padclr 22:36:52 -ad HAI 1.2 22:36:56 -pad HAI 1.2 22:37:58 -pad VISIBLE "HAI WORLD" 22:38:03 -pad KTHXBYE 22:38:05 -lolr 22:38:05 Error opening file '/home/ubuntu/workspace/modules/lcipadcode'. 22:38:18 Ugh. Atlassian's account verification thing sends an HTML-only email, and the HTML-only email contains Download images and then verify your email address! 22:39:25 O.o 22:39:57 I'm not sure what's in the images, because the verify-my-email link is also in the text. 22:40:04 Maybe they'll quiz me on the images later. 22:40:46 (The verify link is 520 characters long.) 22:43:32 -!- AnotherTest has quit (Quit: ZNC - http://znc.in). 22:43:41 [wiki] [[NRSRSSOMN]] https://esolangs.org/w/index.php?diff=49768&oldid=39323 * CatIsFluffy * (+154) 22:45:38 -list 22:45:38 jeffl35: echo ping pong eval flushq help list use store cash inv savecstate buy sell give kick ban unban op deop attack poke join part reload whois nick pyc pad pyr giac befr padclr lol lolr 22:46:28 -list 22:46:29 jeffl35: echo ping pong eval flushq help list use store cash inv savecstate buy sell give kick ban unban op deop attack poke join part reload whois nick pyc pad pyr giac befr padclr lolr 22:47:12 well, now it runs befunge and lolcode 22:47:13 ya 22:47:22 yay 22:47:30 That's even more suitable for IRC. 22:47:35 its storming outside 22:48:07 fizzie: what is? 22:48:29 zzo38: okay. take https://www.tc.gc.ca/media/images/ca-publications/chart1b.jpg then. (see also https://en.wikipedia.org/wiki/Chord_%28aeronautics%29) 22:48:59 Befunge. 22:49:05 ah 22:49:22 -!- Warrigal has changed nick to tswett. 22:49:43 hi tswett 22:50:00 Hi. 22:50:15 i wonder what the perfect programming language (that can be ran by a computer) would be for IRC 22:51:14 fizzie: maybe if you don't download the images from the server then it won't let you verify, lol 22:51:19 How about Javascript? 22:51:39 tswett: annoying to sandbox safely, especially on a bot written in it (otherbot) 22:52:28 tswett: my friend has broken every single javascript sandbox in existence 22:52:35 moonythedwarf_: you can pass your code to something that runs in qemu 22:52:38 including math.js, the VM module, etc 22:52:51 izalove: that's no longer a sandbox, lol, that's virtualization 22:53:06 it's a safe sandbox 22:53:07 -eval 1+1+1+1+1 22:53:07 5 22:53:16 -calc 22:53:21 we dont have time to set that up a of now izalove 22:53:22 jeffl35: including, say, Firefox? 22:53:34 tswett: no, i mean in node.js 22:53:38 moonythedwarf_: there's geirha/shbot on github 22:53:40 int-e: O, OK. It isn't a polygon, although it is still seeming monotone property. 22:53:50 jeffl35: calc was replaced by -giac 22:53:52 like something that is written in javascript but wishes to safely execute js code 22:53:55 moonythedwarf_: yeah, ik 22:54:06 If you want something sandboxable, the only other things that come to my mind are Lua and .NET. 22:54:07 -giac solve(32x^23-31x^2+1,x) 22:54:07 Help file /usr/share/giac/doc/local/aide_cas not found Added 0 synonyms Warning, argument is not an equation, solving 32*x^23-31*x^2+1=0 list[-0.179605302027,0.179605302027,0.996921666093] // Time 0.01 // Total time 0.01 22:54:12 yay 22:54:23 Oh, and don't forget Java. 22:54:25 Do you have version 6 of Node.js? If so, then you can use proxy objects. 22:54:41 tswett: well with pypy-c-sandbox, python (rather limited) is sandboxable 22:54:47 -pyc efef 22:54:48 ​Traceback (most recent call last): | File "app_main.py", line 72, in run_toplevel | File "app_main.py", line 578, in run_it | File "", line 1, in | NameError: global name 'efef' is not defined | [Subprocess exit code: 1] | 22:55:17 -pyr 22:55:18 You dont have a valid codepad! 22:56:14 if one of you can make a sandbox Iovoid cannot break, then i will use that for JS 22:56:19 i doubt you can 22:56:29 When using Node.js's VM module there are many considerations to make when executing sandboxed code. For one thing, to make the sandbox object with no prototype. 22:57:00 we'll look into it 22:57:02 moonythedwarf_: What version of Node.js are you using though? 22:57:07 ill check 22:57:23 zzo38: when iovoid reported the bug, they were like "oh well it wasn't designed for that" 22:57:28 idk 22:57:33 but he broke math.js too 22:57:43 with constructors and such 22:57:59 aand math.js is a _CALCULATOR_ 22:58:15 jeffl35:~/workspace $ node -v | 22:58:19 wow cloud9 22:58:28 wow. we cant afford a server right now, but thats old 22:58:28 -calc x=f.constructor("return process.exit()");x() 22:58:30 and it dies 22:58:46 moonythedwarf_: what 22:58:49 Yes, there are things like that that can be done. 22:58:59 cloud9 uses node v4.5.0 jeffl 22:59:05 So, don't bring external functions into the sandbox exposed! 22:59:41 zzo38: we may try using a custom compiled copy of google's v8 engine for JS 22:59:49 You can create a function inside of the sandbox instead. 23:00:08 Can you install the latest version of Node.js? Version 4.5.0 is too old 23:00:10 for now, another suggustion please? :P 23:00:33 zzo38: i dunno if cloud9 workspaces would let us 23:00:59 moonythedwarf_: HQ9+ with an abridged version of 9. 23:01:03 -!- otherbot has quit (Quit: Caught SIGINT). 23:01:15 doot trying 23:01:54 I have version 6.4.0 on my own computer 23:06:05 done 23:06:19 -!- otherbot has joined. 23:08:57 Also if you ensure that "use strict" is specified then you cannot use the callee/caller values to determine what called it. 23:10:30 our sandbox code is written with use strict already 23:10:43 OK, so you have already done that. 23:12:55 You could possibly to execute something like this in the sandbox to bring a function into the sandbox: (x=>y=>{ "use strict"; if(typeof y!=="number") throw new TypeError(); return x(y); }) 23:13:13 (I don't konw if there are other problems with this, but this is one thing I have thought of.) 23:14:02 int-e: I like umlbox's sophisticated kernel autoconfiguration mechanism. (Makefile with "yes '' | $(MAKE) ARCH=um oldconfig" in it.) 23:16:41 (You also will have to be safe if the function you are wrapping is going to return any kind of object.) 23:18:59 Do you know how to write Node.js addons? I don't understand it, so I hoped you would know. 23:20:57 Nope! 23:21:00 ask jeffl35 23:21:28 OK 23:22:20 im thinking underload would be good for IRC 23:22:35 -!- pikhq has quit (Remote host closed the connection). 23:23:10 what do you think /(zzo38|int-e|fizzie)/ 23:23:41 -!- iovoid has joined. 23:23:53 `relcome iovoid 23:23:56 I don't know, but I thought we might already have Underload on this IRC 23:24:00 ​iovoid: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric on EFnet or DALnet.) 23:24:00 hi 23:24:01 true 23:24:02 we do 23:30:21 -!- moonythedwarf_ has changed nick to evilmoon. 23:31:42 -!- jeffl35 has changed nick to eviljeff. 23:32:11 -!- iovoid has changed nick to evilvoid. 23:32:11 iovoid: Do you know the way to sandbox that cannot break? I had several ideas including one is that the sandbox object should have no prototype, and other is to bring a function into the sandbox by executing a code like this inside of the sandbox: (x=>y=>{ "use strict"; if(typeof y!=="number") throw new TypeError(); return x(y); }) Other idea involved using proxy objects 23:33:45 sandboxes at the code level can be broken easy 23:34:07 Just because of how javascript works you can hide constructors 23:34:55 we tried that remember evilvoid? you can use the constructor's constructor 23:35:09 I meant cant 23:35:27 javascript can be considered self modifiying 23:35:36 in a semifinal way 23:35:56 I think since ES6 you can hide constructors if you are careful. 23:35:56 All the things can be turned into functions with constructors 23:36:12 not of core things 23:36:28 like Number, Function, Symbol and that 23:36:31 Or instances of them 23:36:42 You can create an object with no prototype, and primitives are not objects. 23:37:03 Everything is JS is a object when operations are done 23:37:13 like Object.toString(42) returns [object Number] 23:37:36 So a primitive number or symbol can be used without being an object. Yes, other than undefined and void, everything can be accessed their properties as if it is an object, but it isn't an object. 23:38:20 try 42.constructor, it will return Number, and the constructor of Number is Function 23:38:27 A function is an object, but I suggested a way to wrap a function like the way I mentioned above 23:38:32 evilvoid: Yes, I know that. 23:38:47 -!- Sprocklem has quit (Ping timeout: 272 seconds). 23:40:05 -!- Sprocklem has joined. 23:40:15 In the function you said it wouldnt be a real sandbox, just a calculator with very limited options 23:40:35 Try this: vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42)==Function the result is false. 23:41:06 Because, the value passed is a primitive and not an object, so it has the sandbox's Function and not the outside's Function, that is why it is false. 23:41:27 -!- Cale has joined. 23:41:41 Do you understand what I mean now? 23:41:47 > vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42).toString() 23:41:47 'function Function() { [native code] }' 23:41:49 error: 23:41:49 Not in scope: ‘Object.create’ 23:41:49 No module named ‘Object’ is imported. 23:42:17 oh haha very funny lambdabot 23:42:24 thats JS not haskell 23:42:28 lol 23:42:44 `? #esoteric evilvoid 23:42:45 ​#esoteric evilvoid? ¯\(°​_o)/¯ 23:42:47 -eval vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42).toString() 23:42:47 ReferenceError: vm is not defined 23:42:48 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:1) 23:42:48 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:42:49 Yes, the result is Function, but the sandbox's Function. 23:42:49 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:42:50 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:42:51 at emitThree (events.js:116:13) 23:42:51 at EventEmitter.emit (events.js:194:7) 23:42:52 -flushq 23:42:52 at /home/ubuntu/workspace/ircbot.js:192:17 23:42:53 Send queue flushed 23:42:56 ... 23:42:58 ops 23:42:59 So, it is a different Function. 23:43:06 Its Function 23:43:22 -eval global.vm = require("vm"); // There, now it will work 23:43:22 { Script: [Function: ContextifyScript], 23:43:23 createScript: [Function], 23:43:23 createContext: [Function], 23:43:24 runInDebugContext: [Function], 23:43:25 runInContext: [Function], 23:43:25 -flushq 23:43:26 Send queue flushed 23:43:36 -eval vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42).toString() 23:43:36 'function Function() { [native code] }' 23:43:36 -eval vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42).toString() 23:43:37 'function Function() { [native code] }' 23:43:40 there 23:43:55 -eval vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42).toString() 23:43:55 'function Function() { [native code] }' 23:44:06 -eval vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42) 23:44:07 [Function: Function] 23:44:21 -eval vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42)("return 2+2")() 23:44:21 4 23:44:22 lol Function is a Functin 23:44:41 -eval vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42)("return process.exit")() 23:44:41 ReferenceError: process is not defined 23:44:42 at eval (eval at (eval at (/home/ubuntu/workspace/ircbot.js:65:27)), :2:8) 23:44:42 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:115) 23:44:43 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:44:44 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:44:44 -flushq 23:44:44 Send queue flushed 23:44:45 -flushq 23:44:45 Send queue flushed 23:44:46 -eval Function == Function 23:44:46 true 23:44:46 AAAAAAAAAAAAA 23:44:50 Try: new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("process.exit(1)")() See that it doesn't work. 23:44:53 -eval Function.constructor == Function 23:44:53 true 23:45:06 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("process.exit(1)")() 23:45:07 ReferenceError: process is not defined 23:45:07 at eval (eval at (eval at (/home/ubuntu/workspace/ircbot.js:65:27)), :2:1) 23:45:08 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:118) 23:45:09 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:45:10 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:45:10 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:45:11 -flushq 23:45:11 Send queue flushed 23:45:19 ... 23:45:20 See? 23:45:21 You have to escape the context there 23:45:44 If you pass {} instead of 42 then it will exit, though. 23:45:50 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("process.exit(1)").toString() 23:45:50 'function anonymous() {\nprocess.exit(1)\n}' 23:45:57 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("process.exit(1)")() 23:45:57 ReferenceError: process is not defined 23:45:57 at eval (eval at (eval at (/home/ubuntu/workspace/ircbot.js:65:27)), :2:1) 23:45:58 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:118) 23:45:59 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:45:59 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:46:00 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:46:01 at emitThree (events.js:116:13) 23:46:01 -flushq 23:46:02 Send queue flushed 23:46:09 wait, restarting 23:46:14 -!- otherbot has quit (Quit: Caught SIGINT). 23:46:32 -!- otherbot has joined. 23:46:54 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return this")() 23:46:54 ReferenceError: vm is not defined 23:46:55 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:7) 23:46:56 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:46:56 Because, the {} passed is an object from outside of the sandbox and therefore has the constructor from outside of the sandbox, but if you pass 42 then it is a primitive so it is converted inside of the sandbox instead. 23:46:56 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:46:57 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:46:58 at emitThree (events.js:116:13) 23:46:58 at EventEmitter.emit (events.js:194:7) 23:46:59 at /home/ubuntu/workspace/ircbot.js:192:17 23:47:00 at Array.forEach (native) 23:47:00 -flush 23:47:01 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:173:9) 23:47:01 at emitOne (events.js:96:13) 23:47:02 -flushq 23:47:02 Send queue flushed 23:47:06 -eval global.vm = require("vm"); // There, now it will work 23:47:07 { Script: [Function: ContextifyScript], 23:47:07 createScript: [Function], 23:47:08 createContext: [Function], 23:47:09 runInDebugContext: [Function], 23:47:09 runInContext: [Function], 23:47:10 runInNewContext: [Function], 23:47:10 -flushq 23:47:11 Send queue flushed 23:47:13 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return this")() 23:47:13 {} 23:47:26 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return this.constructor.constructor('return this')")() 23:47:26 [Function: anonymous] 23:47:31 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return this.constructor.constructor('return this')")()() 23:47:31 {} 23:48:10 See? It is not the same Function object. 23:48:16 -eval test 23:48:17 ReferenceError: test is not defined 23:48:17 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:1) 23:48:18 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:48:19 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:48:19 -fushq 23:48:19 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:48:20 at emitThree (events.js:116:13) 23:48:21 at EventEmitter.emit (events.js:194:7) 23:48:21 -flushq 23:48:22 Send queue flushed 23:48:32 * eviljeff dies 23:48:34 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return this.constructor.constructor('return this')()")() 23:48:34 Do you believe me now? 23:48:35 {} 23:49:03 zzo38; give evilvoid time to test your theory out 23:49:08 OK 23:49:10 ^ 23:49:42 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return (this.constructor.constructor('this'))()")() 23:49:42 undefined 23:49:56 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function(this.constructor.constructor('this'))()")() 23:49:56 undefined 23:50:00 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function(this.constructor.constructor('this'))()") 23:50:00 [Function: anonymous] 23:50:04 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function(this.constructor.constructor('this'))()").toString() 23:50:04 'function anonymous() {\nreturn Function(this.constructor.constructor(\'this\'))()\n}' 23:50:11 is the undefined incontext our out of context? 23:50:25 s/our/or/ 23:50:33 s/incontext/in context/ 23:50:36 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function(\this.constructor.constructor(\'this\')')()") 23:50:36 SyntaxError: missing ) after argument list 23:50:37 done 23:50:37 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:50:38 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:50:38 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:50:39 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:50:40 at emitThree (events.js:116:13) 23:50:40 -flushq 23:50:40 Send queue flushed 23:50:40 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function(this.constructor.constructor(\'this\')')()") 23:50:41 SyntaxError: missing ) after argument list 23:50:42 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:50:42 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:50:43 If it is a primitive then it is irrelevant. 23:50:43 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:50:44 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:50:44 -flushq 23:50:45 Send queue flushed 23:50:56 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function('this.constructor.constructor(\'this\')')()") 23:50:56 SyntaxError: missing ) after argument list 23:50:57 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:50:58 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:50:58 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:50:59 otherbot is good for proving points in JS 23:50:59 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:51:00 at emitThree (events.js:116:13) 23:51:01 at EventEmitter.emit (events.js:194:7) 23:51:01 at /home/ubuntu/workspace/ircbot.js:192:17 23:51:02 at Array.forEach (native) 23:51:03 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:173:9) 23:51:03 at emitOne (events.js:96:13) 23:51:12 evilmoon: not when it dumps exceptions into a channel 23:51:23 lol 23:51:41 * evilmoon waits for fizzie to be done with his now hour long shower to come yell at us 23:51:42 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function('this.constructor.constructor(\'this\')')()")() 23:51:43 SyntaxError: missing ) after argument list 23:51:43 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:51:44 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:51:45 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:51:45 ugh 23:51:45 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:51:46 at emitThree (events.js:116:13) 23:51:47 at EventEmitter.emit (events.js:194:7) 23:51:47 at /home/ubuntu/workspace/ircbot.js:192:17 23:51:48 -flushq 23:51:48 Send queue flushed 23:51:50 maybe it's just because we're using old node.js 23:51:53 lemme see if i can update it 23:52:00 eviljeff: did you use nodejs? 23:52:02 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function('this.constructor.constructor(\'this\')')()") 23:52:02 SyntaxError: missing ) after argument list 23:52:02 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:52:03 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:52:04 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:52:04 the nodejs command 23:52:05 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:52:05 at emitThree (events.js:116:13) 23:52:06 at EventEmitter.emit (events.js:194:7) 23:52:07 at /home/ubuntu/workspace/ircbot.js:192:17 23:52:07 at Array.forEach (native) 23:52:08 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:173:9) 23:52:09 at emitOne (events.js:96:13) 23:52:09 i already installed the update 23:52:23 nodejs is the latest, node is the 4.5.0 23:52:39 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42)) 23:52:39 [Function: anonymous] 23:52:42 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))() 23:52:43 [Function: anonymous] 23:52:45 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))()() 23:52:46 undefined 23:52:49 removing package nodejs... 23:52:59 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))(42)("return Function('this.constructor.constructor(\'this\')')()") 23:52:59 undefined 23:53:04 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function('this.constructor.constructor(\'this\')')()") 23:53:04 SyntaxError: missing ) after argument list 23:53:05 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:53:06 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:53:06 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:53:07 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:53:08 at emitThree (events.js:116:13) 23:53:08 eviljeff: rlly? 23:53:08 at EventEmitter.emit (events.js:194:7) 23:53:09 at /home/ubuntu/workspace/ircbot.js:192:17 23:53:10 at Array.forEach (native) 23:53:10 re-installing nodejs... 23:53:10 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:173:9) 23:53:11 at emitOne (events.js:96:13) 23:53:17 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function('this.constructor.constructor(\'this\')'))()") 23:53:17 SyntaxError: missing ) after argument list 23:53:18 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:53:19 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:53:20 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:53:20 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:53:21 at emitThree (events.js:116:13) 23:53:22 at EventEmitter.emit (events.js:194:7) 23:53:22 at /home/ubuntu/workspace/ircbot.js:192:17 23:53:23 at Array.forEach (native) 23:53:24 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:173:9) 23:53:24 at emitOne (events.js:96:13) 23:53:49 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return 2+2") 23:53:49 [Function: anonymous] 23:53:51 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return 2+2")() 23:53:51 4 23:54:34 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function('this.constructor.constructor(\'return this\')')") 23:54:34 SyntaxError: missing ) after argument list 23:54:35 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:54:36 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:54:36 -flushq 23:54:37 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:54:37 Send queue flushed 23:55:17 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function('this.constructor.constructor(\'return this\')')") 23:55:17 SyntaxError: missing ) after argument list 23:55:17 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:55:18 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:55:18 -flushq 23:55:19 Send queue flushed 23:55:23 eviljeff: its alreayd installed idiot >_< 23:55:23 restarting otherbot (update node.js) 23:55:27 -!- otherbot has quit (Quit: Caught SIGINT). 23:55:36 eviljeff: wut 23:55:37 on 23:55:38 uh 23:55:39 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return Function('return this')") 23:55:42 were we using node 23:55:44 >_< 23:55:46 lol 23:55:47 -!- otherbot has joined. 23:55:57 jeffl35:/etc/apt/sources.list.d $ node -v 23:55:57 v4.5.0 23:55:57 jeffl35:/etc/apt/sources.list.d $ nodejs -v 23:55:57 v6.6.0 23:56:00 ... 23:56:13 nvm... 23:56:17 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return x.constructor('return this')") 23:56:17 ReferenceError: vm is not defined 23:56:18 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:7) 23:56:19 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:56:19 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:56:19 -flushq 23:56:20 Send queue flushed 23:56:31 of course 23:56:32 -eval global.vm = require("vm") 23:56:32 { Script: [Function: ContextifyScript], 23:56:32 createScript: [Function], 23:56:33 createContext: [Function], 23:56:34 lemme fix nvm... 23:56:34 runInDebugContext: [Function], 23:56:35 runInContext: [Function], 23:56:35 runInNewContext: [Function], 23:56:35 -flushq 23:56:36 Send queue flushed 23:56:42 -eval global.vm = require("vm"); // There, now it will work 23:56:42 { Script: [Function: ContextifyScript], 23:56:43 createScript: [Function], 23:56:44 createContext: [Function], 23:56:44 runInDebugContext: [Function], 23:56:45 runInContext: [Function], 23:56:46 runInNewContext: [Function], 23:56:46 runInThisContext: [Function], 23:56:47 -flush 23:56:47 -flushq 23:56:47 isContext: [Function: isContext] } 23:56:48 Send queue flushed 23:56:50 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return x.constructor('return this')") 23:56:50 [Function: anonymous] 23:56:53 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return x.constructor('return this')")() 23:56:54 ReferenceError: x is not defined 23:56:54 at eval (eval at (eval at (/home/ubuntu/workspace/ircbot.js:65:27)), :2:8) 23:56:55 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:138) 23:56:56 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:56:56 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:56:56 -flushq 23:56:57 Send queue flushed 23:57:06 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return 42.constructor.constructor('return this')")() 23:57:06 SyntaxError: Invalid or unexpected token 23:57:07 at eval (eval at (/home/ubuntu/workspace/ircbot.js:65:27), :1:2) 23:57:07 at .code (/home/ubuntu/workspace/ircbot.js:65:17) 23:57:08 at run (/home/ubuntu/workspace/ircbot.js:48:10) 23:57:08 fixed nvm... 23:57:09 at EventEmitter. (/home/ubuntu/workspace/ircbot.js:252:25) 23:57:09 at emitThree (events.js:116:13) 23:57:10 at EventEmitter.emit (events.js:194:7) 23:57:11 at /home/ubuntu/workspace/ircbot.js:192:17 23:57:11 at Array.forEach (native) 23:57:12 -!- otherbot has quit (Client Quit). 23:57:17 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this')")() 23:57:25 (sorry evilvoid ) 23:57:34 -!- otherbot has joined. 23:57:45 lets hope 6.6.0 doesn't break anything 23:57:50 it shouldnt 23:57:51 -eval global.vm = require("vm"); // There, now it will work 23:57:51 { Script: [Function: ContextifyScript], 23:57:51 createScript: [Function], 23:57:52 createContext: [Function], 23:57:53 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this')")() 23:57:53 runInDebugContext: [Function], 23:57:54 runInContext: [Function], 23:57:54 runInNewContext: [Function], 23:57:55 runInThisContext: [Function], 23:57:55 -flush 23:57:56 isContext: [Function: isContext] } 23:57:56 "return this" won't help and won't depend on where the function comes from anyways. 23:57:56 -flushq 23:57:56 Send queue flushed 23:57:58 i already tested it jeffl 23:58:00 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this')")() 23:58:00 [Function] 23:58:03 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this')")()() 23:58:03 {} 23:58:51 evilvoid esoterically attempts to prove a point 23:59:11 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this.constructor.constructor(\'return this\')')")()() 23:59:11 [SyntaxError: missing ) after argument list] 23:59:19 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this.constructor.constructor(\"eturn this\")')")()() 23:59:19 [SyntaxError: Unexpected token this] 23:59:21 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this.constructor.constructor(\"return this\")')")()() 23:59:22 [Function] 23:59:35 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this.constructor.constructor(\"return this\")')")()()() 23:59:36 {} 23:59:43 -eval new (vm.runInContext("(x=>x.constructor.constructor)",vm.createContext(Object.create(null)))(42))("return JSON.stringify.constructor('return this.constructor.constructor(\"return process\")')")()()() 23:59:43 [ReferenceError: process is not defined]