00:42:26 -!- sprocklem has quit (Ping timeout: 240 seconds). 00:58:31 -!- sprocklem has joined. 01:17:44 kmc: do you know about intel's thing where you're required to mark valid branch targets with an otherwise-nop instruction 01:17:51 no 01:18:39 though apparently returns don't count as indirect branches for this purpose 01:18:46 and they have some other thing for that 01:24:38 -!- arseniiv has quit (Ping timeout: 276 seconds). 01:25:58 "required"? 01:26:15 I mean, if whatever this feature is is enabled. 01:26:55 Apparently ARM has this too, with bti ("branch target indicator"). 01:35:37 -!- sprocklem has quit (Remote host closed the connection). 01:44:37 huh 01:44:39 what's the point? 01:44:59 what's intel's version called? 01:45:01 and how do you enable it? 01:45:28 -!- xkapastel has quit (Quit: Connection closed for inactivity). 01:45:31 ah, it's for security? 01:45:37 that's kind of clever 01:45:52 -!- sprocklem has joined. 01:47:30 Oh, yes, for security. 01:47:50 The Intel version is called CET (Control-flow Enforcement Technology). 02:08:39 -!- sprocklem has quit (Ping timeout: 258 seconds). 02:34:20 -!- sprocklem has joined. 02:48:50 -!- sprocklem has quit (Ping timeout: 240 seconds). 02:54:51 -!- sprocklem has joined. 03:19:25 I made a self-deleting shell script 03:19:37 it's generated by another script, intended to be edited once and then deleted 03:19:46 edited, run once* 03:23:05 `cat bin/slist 03:23:06 echo -n "$(basename "$0")${@:+ }$@: "; tail -n+2 "$0" | xargs; exit \ Taneb \ atriq \ Ngevd \ nvd \ Fiora \ Sgeo \ ThatOtherPerson \ alot 03:23:11 hm 03:23:22 sorry, all pinged 03:23:29 for sale: shell script, never run 03:23:35 `` doag bin/slist | rot13 03:23:37 5366:2015-05-12 frq -v "5vaiq" ova/fyvfg \ 5075:2014-10-18 frq -v \'/abeggv/q\' ova/fyvfg \ 5073:2014-10-18 erireg \ 5072:2014-10-18 erireg 5069 \ 5070:2014-10-18 frq -v \'f|ez ova/fyvfg; ||\' ova/fyvfg \ 5069:2014-10-18 erireg \ 5068:2014-10-16 fyvfg \ 3924:2013-10-18 erireg \ 3923:2013-10-18 fyvfg Arjf: Tvtncnhfr \ 3920:2013-10-18 frq -v \'f/rkvg/ez 03:23:51 also I learned that bash printf has a %q format specifier which escapes the parameter for use in further bash commands 03:23:55 `doag bin/slist 03:23:57 5366:2015-05-12 sed -i "5invd" bin/slist \ 5075:2014-10-18 sed -i \'/nortti/d\' bin/slist \ 5073:2014-10-18 revert \ 5072:2014-10-18 revert 5069 \ 5070:2014-10-18 sed -i \'s|rm bin/slist; ||\' bin/slist \ 5069:2014-10-18 revert \ 5068:2014-10-16 slist \ 3924:2013-10-18 revert \ 3923:2013-10-18 slist News: Gigapause \ 3920:2013-10-18 sed -i \'s/exit/rm 03:23:58 `` echo "foo ' bar" | printf "%q\n" 03:23:59 ​'' 03:24:10 er 03:24:19 `` printf "%q\n" "foo ' bar" 03:24:20 foo\ \'\ bar 03:24:22 there we go 03:24:24 kmc: Oh, that's pretty fancy. 03:24:28 'tis 03:24:41 If you're writing bash commands something has gone wrong, though. :-( 03:24:46 you can also do ${X|@Q} in more recent bashes 03:24:47 I mean scripts. 03:24:51 perhaps 03:25:05 life involves lots of things going wrong 03:25:11 and yet we muddle through 03:26:11 i wrote a small amd64 assembler 03:26:23 it supports movs and jumps so maybe it's turing-complete? 03:26:38 except for the finite-state bit 03:28:31 neat 03:28:34 why'd you do it? 03:31:23 I just wanted to generate some code and I was tired of handwriting it. 03:34:06 ok 03:34:11 why not use nasm or something? 03:37:47 Seems silly to go through a whole program that has to parse text and everything? 03:37:57 Maybe nasm is available as a library. 03:39:55 well 03:40:01 i support your efforts anyway 03:40:04 writing an assembler is fun 03:40:09 it could be 03:40:15 is it a 2 pass thing 03:40:43 does it generate relocatable files? 03:42:16 it's a v. simple 1-pass assembler that always uses 4-byte jump offsets and so on, right now 03:42:30 smart assemblers presumably use more than two passes for edge cases 03:43:42 It generates ELF executables right now. 03:43:48 I guess they're dynamically relocatable? 03:44:07 It doesn't support non-internal linkage or anything. 03:51:22 -!- sprocklem has quit (Read error: Connection reset by peer). 03:54:08 ok 03:54:12 did you use a library to output ELF 03:56:03 no, i wrote out all the bytes 03:56:35 -!- sprocklem has joined. 04:00:38 -!- sprocklem has quit (Client Quit). 04:10:58 [[Talk:ZOWIE]] M https://esolangs.org/w/index.php?diff=66231&oldid=66213 * Ais523 * (-23) /* Turing completeness */ use the correct link syntax for an internal link 04:36:56 -!- Lord_of_Life has quit (Ping timeout: 265 seconds). 04:38:25 -!- Lord_of_Life has joined. 04:43:19 -!- sprocklem has joined. 05:37:58 -!- Sgeo_ has joined. 05:41:08 -!- Sgeo__ has quit (Ping timeout: 246 seconds). 07:37:17 Huh, when you write code in continuation-passing style, you should name the continuation "return". 08:15:52 -!- Frater_EST has joined. 08:16:09 -!- Frater_EST has left. 09:04:18 I thought you should name it "k". 09:04:31 Only if you're reasonable. 09:30:50 -!- imode has quit (Ping timeout: 276 seconds). 09:43:16 -!- cpressey has joined. 09:43:20 -!- wib_jonas has joined. 10:08:46 Does the k stand for "kontinuation"? 10:17:06 I think so. 11:19:40 -!- PaniniTheDevelop has joined. 11:21:06 Hello 11:21:25 Hi PaniniTheDevelop 11:22:16 do you develop stickers? 11:22:35 fizzie: κ is very traditional, if your chosen notation supports it. 11:28:15 I've been reduced to translating some code of mine from Haskell to Javascript so that I can debug it. 11:28:48 cpressey: that's a depth of hell I've never visited 11:32:17 cpressey: that sounds scary 11:32:25 Perhaps it isn't the best idea 11:32:28 can't you put printfs in the Haskell code? 11:32:51 uneval(function(x) { return x; }) === "(function(x) { return x; })" 11:33:16 But can I say "deriving (Show)" for a function value in Haskell? Not as far as I'm aware. 11:34:32 dunno. you could ask #haskell but you already said they're too abstract and category theorist for you 11:39:58 `js uneval(function(x) { return x; }); 11:39:59 ​[eval]:1 \ uneval(function(x) { return x; }); \ ^ \ \ ReferenceError: uneval is not defined \ at [eval]:1:1 \ at Object.exports.runInThisContext (vm.js:54:17) \ at Object. ([eval]-wrapper:6:22) \ at Module._compile (module.js:409:26) \ at node.js:648:27 \ at nextTickCallbackWith0Args (node.js:489:9) \ at process._tickCallback (node.js:418:13) 11:40:12 Apparently you can't say that in "JavaScript" either. 11:41:16 hmm 11:41:48 (It's apparently unique to Firefox.) 11:42:11 you can do that in lisp, though 11:42:36 `js (function(x) { return x; }).toString(); 11:42:37 function (x) { return x; } 11:42:41 Looks like you can do that on nodejs. 11:48:09 but does it give you only the body, or also the identity of the closed variables? 11:50:32 I think it's only the source text. 11:51:49 `js function f(x) { return function(){return x+1} } f(1).toString() + f(2).toString(); 11:51:50 function (){return x+1}function (){return x+1} 11:52:17 what engine does this `js run? 11:52:18 `? `js 11:52:20 ​`js? ¯\(°​_o)/¯ 11:52:23 It's nodejs. 11:52:42 I just added it to replace the broken previous `js, so it doesn't have an entry anywhere. 11:52:48 `cat bin/js 11:52:49 ​/usr/bin/js -p "$*" 11:53:28 The previous one was I think Rhino. But it got broken in the migration because there's no JRE installed on the system. 11:55:07 `js process.versions.v8 11:55:09 4.5.103.46 11:55:16 I guess strictly speaking that's the "engine". 11:56:02 `js JSON.stringify(process.versions) 11:56:06 ​{"http_parser":"2.7.0","node":"4.8.2","v8":"4.5.103.46","uv":"1.9.1","zlib":"1.2.8","ares":"1.10.1-DEV","icu":"57.1","modules":"46","openssl":"1.0.2k"} 12:03:43 Yeah, it wasn't the best idea. But I don't know where y'all're getting this "depth of hell" stuff from, Javascript's a lovely language! 12:04:18 -!- atslash has joined. 12:04:22 * cpressey tries hard to keep a straight face 12:08:25 cpressey: of course it seems enticing at first. 12:08:50 it only reveals its true face once you've invested enough to no longer be able to change your existing code to a different language easily. 12:09:43 -!- arseniiv has joined. 12:13:50 -!- PaniniTheDevelop has quit (Remote host closed the connection). 12:14:59 wow what a weather. September onwards until snow falls, here are usually rains only. Now I heard thunder two times, and tiny ice chunks fall. Didn’t think convection is still good enough, given there weren’t thunderstorms for weeks 12:15:20 -!- arseniiv has quit (Quit: gone completely :o). 12:19:03 -!- PaniniTheDevelop has joined. 12:19:10 rip 12:25:55 -!- arseniiv has joined. 12:26:11 -!- PaniniTheDevelop has quit (Remote host closed the connection). 12:49:11 [[Fishing]] https://esolangs.org/w/index.php?diff=66232&oldid=66211 * Dtuser1337 * (+24) 13:04:39 [[Truth-machine]] https://esolangs.org/w/index.php?diff=66233&oldid=66135 * Dtuser1337 * (+73) /* > */ 13:06:16 [[Hello world program in esoteric languages]] https://esolangs.org/w/index.php?diff=66234&oldid=66210 * Dtuser1337 * (+57) /* FiM++ */ 13:06:58 [[Fishing]] https://esolangs.org/w/index.php?diff=66235&oldid=66232 * Dtuser1337 * (-12) /* Hello, World! */ why adding
 when there a space before it.
13:08:19  [[Turth-machine]]  https://esolangs.org/w/index.php?diff=66236&oldid=65569 * Dtuser1337 * (+22) 
13:10:51  [[Talk:MSM]]  https://esolangs.org/w/index.php?diff=66237&oldid=65203 * Dtuser1337 * (-41) Nani!? This must be the work of a enemy stand! they blanked the page and removed the redirect!!!!!!!!!!11111111111111111 this is awfullll!!!!!!!!!!!!!!!!!!!!11111!!!!!!!111111111!!!!!!!!
13:11:12  oh dear
13:14:34  [[User:Dtuser1337/Sandbox]]  https://esolangs.org/w/index.php?diff=66238&oldid=66101 * Dtuser1337 * (+2696) 
13:15:00  [[User:Dtuser1337/Sandbox]]  https://esolangs.org/w/index.php?diff=66239&oldid=66238 * Dtuser1337 * (-1) /* commands */
13:27:07  [[User:Dtuser1337/Sandbox]]  https://esolangs.org/w/index.php?diff=66240&oldid=66239 * Dtuser1337 * (+66) /* commands */
14:22:02 -!- arseniiv has quit (Ping timeout: 276 seconds).
14:24:25 -!- arseniiv has joined.
14:26:15 -!- APic has quit (Ping timeout: 268 seconds).
14:30:44 -!- APic has joined.
15:20:14  [[Flop]]  https://esolangs.org/w/index.php?diff=66241&oldid=65750 * InfiniteDonuts * (-239) 
15:41:06  [[Special:Log/move]] move  * InfiniteDonuts *  moved [[Flop]] to [[Brainflop]]: Name changed
15:41:20  [[Brainflop]]  https://esolangs.org/w/index.php?diff=66244&oldid=66242 * InfiniteDonuts * (+5) 
15:44:49 -!- tromp_ has joined.
15:47:23 -!- tromp has quit (Ping timeout: 252 seconds).
15:54:29 -!- wib_jonas has quit (Remote host closed the connection).
15:59:39 -!- cpressey has quit (Quit: I got BLISTERS on my FINGERS *thwannggg*).
16:15:08 -!- arseniiv has quit (Ping timeout: 276 seconds).
16:28:25 -!- arseniiv has joined.
16:31:20 -!- FreeFull has joined.
16:33:53  [[Hexar]] N https://esolangs.org/w/index.php?oldid=66245 * Enchant3d * (+6052) Created page with "'''Hexar''' is an [[esoteric programming language]] which uses almost only hexadecimal numbers. ==Language overview== Hexar runs on an array that can contain only positive num..."
16:35:04 -!- Lord_of_Life_ has joined.
16:35:06  [[Language list]]  https://esolangs.org/w/index.php?diff=66246&oldid=66223 * Enchant3d * (+12) /* H */
16:37:07 -!- Lord_of_Life has quit (Ping timeout: 245 seconds).
16:37:07 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
16:46:56  [[ABC]] M https://esolangs.org/w/index.php?diff=66247&oldid=65492 * Dtuser1337 * (+59) 
18:29:12  [[@NUM]]  https://esolangs.org/w/index.php?diff=66248&oldid=66209 * KrystosTheOverlord * (-4261) 
18:57:54 -!- Phantom_Hoover has joined.
19:03:06 -!- dingwat has joined.
19:22:43 -!- MrBismuth has quit (Read error: Connection reset by peer).
19:23:55 -!- MrBismuth has joined.
19:34:51 -!- imode has joined.
19:47:02 -!- APic has quit (Ping timeout: 276 seconds).
19:51:13 -!- Cale has quit (Ping timeout: 252 seconds).
19:56:05  [[Special:Log/newusers]] create  * Tetratrary *  New user account
20:04:19 -!- Cale has joined.
20:13:46 -!- APic has joined.
20:18:22 -!- APic has quit (Ping timeout: 245 seconds).
20:28:50 -!- MDude has quit (Ping timeout: 240 seconds).
20:49:45 -!- MDude has joined.
20:55:26 -!- b_jonas has joined.
21:05:08  Are there any interesting esolangs based on the idea of jumping into the middle of an instruction?
21:06:02  dunno. you can do that in a lot of low-level languages, but I don't know any that really require it
21:06:21  I know you can do it but usually it's only in special cases.
21:06:43  I'm thinking of a language where doing things like that is required to do computation.
21:07:22  maybe you could advance the instruction pointer by one byte instead of the size of an instruction (and have all instructions be at least 2 bytes large to make it interesting)
21:07:37  shachaf: there might be something like bytepusher, but that modifies an instruction as it executes it. I might have even seen one but I don't recall which esolang
21:08:32  I guess more broadly you could ask for something that interprets the same instructions multiple different ways.
21:10:11  shachaf: that's a bit easier. Piet can interpret the same instruction in different ways
21:10:51  heck, even in befunge we have instructions that we use in multiple ways depending on the direction of execution
21:11:01  I guess so.
21:11:03  that should count as similar to jumping into the middle of an instruction
21:11:11  It's funny that these disassemble differently:
21:11:16  `asm jmp 0
21:11:17  0:  e9 00 00 00 00   jmpq 0x5
21:11:18  `asm jmp $0
21:11:19  0:  e9 00 00 00 00   jmp 0x5
21:14:19  shachaf: I think that's because the `asm command guesses different assembly syntaxes from your input
21:14:57  Yes, that's why.
21:18:18  Forte, SMETANA, ///, Fuun DNA are all self-modifying, and in an interesting way where the self-modifying entails more than just modifying plain memory offset or immediate operands of instructions, but I don't think you could say that you usually jump into the middle of an instruction in them
21:18:37  even though in /// and Fuun DNA, you could overlap instructions in interesting ways if you wanted to
21:18:49  but that's impractical just like in x86
21:19:05  so all that you normally do is to put instructions as arguments into other instructions
21:19:15  or put parts of instructions as arguments into other instructions if you wish
21:19:36  ah yes
21:19:40  it was MiniMAX
21:19:54  hmm no
21:20:05  I think you can't overlap instructions in MiniMAX
21:20:30  no wait
21:20:32  you CAN overlap them
21:20:51  in fact iiuc, MiniMAX does essentially require you to overlap instructions if you want to write useful programs
21:20:56  shachaf: that's your answer, you want MiniMAX
21:22:32  Aha.
22:15:05 -!- APic has joined.
22:36:36  Today's possible GCC bug: with `#define b +` as the context, the expression `0b10` is either treated as a binary literal (-std=c11) or an error (-std=c11 -pedantic), while in a strictly conforming implementation I believe it should be treated as `0+10`.
22:39:08 -!- Lykaina has joined.
22:39:48  hi
22:39:56  Rationale: In translation phase 3 the input is decomposed into preprocessing tokens. C11 6.4p4 says "the next preprocessing token is the longest sequence of characters that could constitute a preprocessing token", which should at the start be "0" (as a pp-number), next "b" (as an identifier) and then finally "10" (again a pp-number). That sequence of tokens would then in translation phase 4 have the "b" 
22:40:02  token undergo macro invocation to expand to "+".
22:41:20  made a tiny version of echidna (unfortunately with all different letters) for my arduino
22:43:08  fizzie: so b10 is not an identifier?
22:43:13  I think "#define b +" should just crash the compiler.
22:43:41  int-e: Oh, I guess it is. Good point.
22:43:49  int-e: Well, you can modify the example appropriately.
22:44:15  Let's say `#define b10 +10` then.
22:45:42  Although maybe `#define b1 -1` and `0b1` is better, it's pleasantly symmetrically either +1 or -1. Or would be if it didn't get treated as a binary literal in all cases.
23:02:50 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
23:12:35 * Lykaina lets out an f-bomb
23:13:02  i just saved over something i was working on for a while
23:14:53  no way to effing restore the douments
23:16:36  sucks... the only condolence I can offer is that it'll likely be better the second time
23:17:32  `grWp backup
23:17:34  taneb:Taneb is not elliott, no matter whom you ask. He also isn't a rabbi although has pretended in the past. He has at least two backup keyboards with dodgy SHIFT KEys, cube root of nine genders, one of which is a Czech woman, and above average, not too voluminous, but calm eyebrows. He sometimes invents without noticing it (see: tanebventions).
23:17:40  `quote backup
23:17:41  791)  Backups are so like one of those circus guys walking on a wire except with a safety rope. \ 1082)  Possible business plan: data storage on the moon?   Getting at it after the collapse of civilization here might be an issue.   who cares about civilization? you have backups!
23:18:34  This channel is populated by smart people. Sometimes it shows.
23:19:07  Not sure this was one of those times.
23:20:02  int-e: Huh. Somehow I read your 16:16 comment as starting with the word "life", several times.
23:20:11  The word doesn't seem to be present now. Very odd.
23:22:33  shachaf: I went back in time and erased it, mwahahaha.
23:22:50  Was life better the second time?
23:23:05  no, it was gone
23:26:14  video game universe, everyone gets 3
23:26:29  that seems unfair to cats
23:27:02  `? cat
23:27:03  Cats are cool, but should be illegal.
23:27:14  Where do I express my membership in the cat fan club?
23:28:50  That's the sole purpose of Instagram I believe.
23:30:01  always these extrapolation problems... 0m0.175s / 0m1.565s / 0m13.975s / 2m5.592s / 18m58.191s / ???
23:30:29  (I was estimating 3 hours and it's at 164m)
23:30:38  http://sif.lesidhetree.com/sara/echidna/Echidna%20v0_11a1b_1.pdf
23:31:01  http://sif.lesidhetree.com/sara/echidna/echidna-uno-doc.pdf
23:32:05  I wish C varargs were better.
23:32:24  shachaf: fwiw, the statement "life sucks" would not face much opposition from my side.
23:32:45  `? life
23:32:46  ​‘Life,’ said Marvin, ‘don't talk to me about life.’
23:32:47  I'd probably limit myself to pointing out that it's better than the alternative.
23:32:56  is it?
23:33:23  Well, s/pointing out/claiming/ if you like.
23:33:51  There's potential in life. There's no potential in death.
23:33:54  It would be nice, I think, if C had some kind of runtime-accessible type info.
23:34:04  And then varargs included information about it.
23:34:29  I fake that for http://slbkbs.org/tmp/fmt.txt
23:35:11  the thing i had to redo and was swearing about the original: http://sif.lesidhetree.com/sara/echidna/dec%20sixbit.pdf
23:36:04  shachaf: but would it still be C then?
23:36:10  int-e: The ??? is 1h16m7.135s hth
23:36:29  fizzie: we're way past that point :P
23:36:38  int-e: No, but I guess that's OK.
23:36:56  I guess I should use this language: https://github.com/pervognsen/bitwise/blob/master/notes/ion_motivation.md
23:37:58  fizzie: https://gist.github.com/int-e/21f328a88bfd96146a5df0937b9b743d is the context... it *is* hard to predict these kind of searvhes.
23:38:37  What are you searching for?
23:38:44  fizzie: but I'd fit an exponential function
23:39:00  My extrapolation advice is: If f(1) = 1 and f(2) = 3, f is probably TREE.
23:39:12  shachaf: the current run is powers of two such that all but 13 of the last k digits are 9... maximizing k.
23:39:53  shachaf: the file has results for 13 replaced with 8..12
23:40:17  int-e: I always fit a polynomial of degree n if given n+1 points to work with.
23:40:27  Oh, it's done.
23:40:30  user    173m33.476s
23:40:47  what were you compiling?
23:40:57  or running?
23:41:13  Lykaina: see the above link... it's a C++ program
23:44:58  int-e: That reminds me, my "time" program only shows seconds, not minutes.
23:45:03  Is that worth fixing?
23:45:32  I think "time" should be built in to my shell. It should time every command it runs automatically, and give me the information if I request it.
23:45:36  shachaf: entirely up to you
23:45:51  arguably minutes are more human readable
23:46:02  but not much
23:46:52  "but not by much" is more proper I guess
23:47:16  The few times I ran it on time scales where minutes were useful, I divided by 60 manually.
23:48:23  Man, my time program is so good. It's the best.
23:51:53  did i pick the right subset of echidna for the arduino?
23:52:47  shachaf: It's great to hear that you're happy with *something*.
23:52:52  `which time
23:52:53  No output.
23:52:56  int-e: Oh no. :-(
23:53:02  Huh, there's no time program on HackEso at all.
23:53:03  int-e: Have I been complaining too much?
23:53:14  Just a shell builtin. Or maybe several of them.
23:53:21  `` type -a time
23:53:22  time is a shell keyword
23:53:28  Not even a builtin!
23:53:54  `time
23:53:55  ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: time: not found
23:54:07  `date
23:54:09  Wed Sep 18 23:54:08 UTC 2019