←2019-10-20 2019-10-21 2019-10-22→ ↑2019 ↑all
00:02:35 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
00:41:53 -!- imode has quit (Quit: WeeChat 2.6).
01:12:54 -!- xkapastel has quit (Quit: Connection closed for inactivity).
01:14:33 <ornxka> new esolang idea: c but with bash scoping
01:15:19 -!- FreeFull has quit.
01:39:20 -!- Sgeo_ has quit (Read error: Connection reset by peer).
01:41:10 -!- Sgeo has joined.
02:44:34 <zzo38> How will that work?
03:15:13 -!- imode has joined.
03:53:25 <ornxka> all variables have global scope :p and are defined as NULL until you assign to them (which you may do without declaring them)
03:54:35 <ornxka> you could also introduce the local keyword which introduces a new global scope for your function (so if you declare FOO as "local" in a function, then call another function which accesses FOO, it will access the local FOO of the function that called it)
03:55:06 <ornxka> at least i think thats how bash scoping works
05:44:43 -!- Sgeo_ has joined.
05:48:05 -!- Sgeo has quit (Ping timeout: 250 seconds).
07:46:37 -!- b_jonas has quit (Remote host closed the connection).
08:03:33 -!- hakatashi has quit (Remote host closed the connection).
08:03:40 -!- hakatashi1 has joined.
08:20:36 -!- imode has quit (Ping timeout: 265 seconds).
08:25:14 -!- Sgeo__ has joined.
08:28:02 -!- Sgeo_ has quit (Ping timeout: 240 seconds).
08:39:53 -!- wib_jonas has joined.
09:06:48 -!- oerjan has joined.
09:18:42 -!- izabera has quit (Disconnected by services).
09:19:14 -!- izabera1 has joined.
10:56:35 -!- oerjan has quit (Quit: Later).
11:18:24 -!- arseniiv has joined.
11:24:43 -!- Sgeo__ has quit (Read error: Connection reset by peer).
11:25:10 -!- Sgeo__ has joined.
11:28:31 <wib_jonas> Newly created dogs come from dog shelters, so we should replace the stork mythology by one that says that babies come from human shelters.
11:31:15 <myname> that sounds like you need a talk about how dogs are created
11:34:16 <wib_jonas> from little dogs growing up, usually
11:39:39 <Lykaina> okay...
11:40:22 <myname> so they just spawn out of atoms?
11:40:40 <fizzie> AIUI, first you have a little dog, then at level 4 it becomes a dog, then at level 6 it becomes a large dog.
11:41:11 <myname> that sounds wrong. i would expect a large dog at level 8 or later
11:44:02 <fizzie> MON("large dog", S_DOG, LVL(6, 15, 4, 0, 0), ...)
11:50:42 <Lykaina> i thought that, like how humans come from the stork, doggies come from the squirrel
11:51:13 <myname> i like that one
11:51:26 <myname> where do storks come from, though?
11:51:36 <Lykaina> humans
11:51:45 <myname> how?
11:51:57 <Lykaina> i don't know
11:52:08 <Lykaina> i'll ask my parents
11:52:37 <wib_jonas> stork come from stork nests that are built on top of chimneys by other storks
11:53:26 <Lykaina> oh, so now we're bringing reality into this?
11:54:43 <wib_jonas> dog shelters are reality
11:54:54 <wib_jonas> there's a dog right here that came from dog shelters
11:58:01 <myname> i would assume that this is not the usual way of creation of new dogs
11:58:29 <Lykaina> the catholic church is pro "birth control" when it comes to dogs and cats.
12:00:14 <Lykaina> and against it when it comes to humans, iirc
12:01:00 <myname> of course, because humans are designed to be god-like, dogs clearly are not
12:01:50 <wib_jonas> Lykaina: that's not, in itself, inconsistent. we know experimentally that there are much more new dogs created than how much people want to adopt, but fewer children up for adoption than people want.
12:02:13 <Lykaina> humans are meant to be fruitful and multiply like rabbits
12:02:46 <Lykaina> according to my memory of the book of genesis
12:03:13 <myname> wib_jonas: is that so?
12:03:23 <Lykaina> and monty python's sperm song
13:02:24 <esowiki> [[Talk:Or]] https://esolangs.org/w/index.php?diff=66745&oldid=66740 * A * (-15)
13:23:13 -!- Sgeo__ has quit (Read error: Connection reset by peer).
13:23:40 -!- Sgeo__ has joined.
13:29:13 <wib_jonas> you won't wait three weeks to post the next o strip again, right, fungot? in fact, you can post the next one soon.
13:29:13 <fungot> wib_jonas: obviously you can't use your macro language inside scheme code)
13:29:31 <wib_jonas> what macro language?
13:35:31 <esowiki> [[Iavac]] N https://esolangs.org/w/index.php?oldid=66746 * A * (+3127) Created page with "'''Idvac''' is a language created by [[User:FireCubez]]. Idvac stands for '''I'''ncrement and '''d'''ecrement '''v'''alues '''a'''nd '''c'''ompare. It is an [[OISC]]. Since th..."
13:37:09 <myname> shoudln't it be named Iadvac? and the title has a typo
14:27:30 -!- Lord_of_Life has joined.
14:32:26 -!- imode has joined.
14:42:34 -!- shikhin has quit (Quit: Quittin'.).
14:43:45 -!- shikhin has joined.
15:12:26 -!- imode has quit (Quit: WeeChat 2.6).
15:31:01 -!- Lord_of_Life has quit (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine).
15:32:02 -!- Lord_of_Life has joined.
15:36:07 -!- Lord_of_Life_ has joined.
15:37:03 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
15:38:15 -!- Lord_of_Life_ has quit (Remote host closed the connection).
15:39:57 -!- Lord_of_Life has joined.
15:44:38 -!- Lord_of_Life has quit (Client Quit).
15:47:00 -!- imode has joined.
15:53:20 -!- wib_jonas has quit (Remote host closed the connection).
16:11:07 <esowiki> [[Headshot!]] M https://esolangs.org/w/index.php?diff=66747&oldid=60342 * CrazySqueak * (-26) Fixed a mistake describing the state of the iteration/conditional commands.
16:25:02 <zzo38> Is this a suitable way to initialize the random number generator in PostScript? (%Calendar%) /IODevice resourcestatus { pop pop (%Calendar%) currentdevparams dup /Running get { [/Year /Month /Day /Hour /Minute /Second] {1 index exch get rand xor srand} forall } if } if rand rand rand rand rand clear
17:16:40 -!- FreeFull has joined.
17:21:09 -!- b_jonas has joined.
17:26:16 <b_jonas> `olist 1183
17:26:17 <HackEso> olist 1183: shachaf oerjan Sgeo FireFly boily nortti b_jonas
17:26:20 <b_jonas> `thanks fungot
17:26:20 <fungot> b_jonas: are you in contact with the r6rs fnord decisions? or is it in? :p) have a fullscreen irc client.
17:26:21 <HackEso> Thanks, fungot. Thungot.
17:54:46 -!- LKoen has joined.
19:08:18 -!- LKoen has quit (Remote host closed the connection).
19:09:41 -!- LKoen has joined.
19:16:02 <b_jonas> [ 80*0.0254
19:16:03 <j-bot> b_jonas: 2.032
19:40:06 <fizzie> First time I've seen anyone write Apple's mobile operating system's name as "iOs".
19:40:14 <fizzie> (In the marketing materials of this insurance company.)
19:40:58 -!- LKoen has quit (Remote host closed the connection).
19:41:14 <b_jonas> fizzie: insurance company? are the rates higher or lower for apple users?
19:52:36 -!- LKoen has joined.
19:55:49 <arseniiv> type IOs = [IO]
19:55:58 <arseniiv> > type IOs = [IO]
19:55:59 <lambdabot> <hint>:1:1: error: parse error on input ‘type’
19:56:33 <fizzie> No, they've just got an app for "Android" and for "iOs".
19:57:24 -!- atslash has quit (Quit: This computer has gone to sleep).
19:57:34 <imode> https://repl.it/repls/MealySarcasticFact
19:58:11 <imode> the action is in prelude.modal. it's a REPL. try reverse ((1234) in trinary)
19:58:21 <imode> or sum reverse ((1234) in trinary)
19:59:57 <arseniiv> I made a huge mistake today, I thought ([0; 1], (x, y) ↦ xy, (x, y) ↦ x + y − xy) is a lattice :o
20:00:10 <arseniiv> the operations aren’t even idempotent
20:00:27 <arseniiv> and I had seen that fact a year or so ago
20:13:41 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
20:55:10 <ornxka> is there an irc bot in here that lets people run programs in arbitrary esolangs? like ,eso brainfuck +[>.+<] or something
20:55:46 <b_jonas> ornxka: yes, hackeso and fungot can both run brainfuck
20:55:46 <fungot> b_jonas: you mean it. so we need something for os-level thread communication, and i'm not even sure there is
20:56:03 <b_jonas> ^bf +[>.+<]
20:56:10 <b_jonas> no wait
20:56:20 <int-e> @bf +[>.+<]
20:56:25 <lambdabot> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij...
20:56:25 <lambdabot> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij...
20:56:25 <lambdabot> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij...
20:56:28 <b_jonas> fungot doesn't run brainfuck, he only runs unefunge and underload
20:56:28 <fungot> b_jonas: stk calls that closures
20:56:34 <b_jonas> yeah, lambdabot runs brainfuck
20:56:44 <b_jonas> `! bf +[>.+<]
20:56:45 <HackEso> ​.. \
20:57:02 <ornxka> ahh thats cool!
20:57:02 <b_jonas> hackeso too but he truncates replies at a carriage return so we have to modify that
20:57:10 <b_jonas> `! bf +++++++++++++++[>.+<]
20:57:11 <HackEso> ​.. \
20:57:11 <int-e> oh right, newlines. (lambdabot filters control characters for sanity reasons)
20:57:29 <b_jonas> int-e: filtering makes sense, but truncating at a carriage return is an odd decision
20:57:45 <b_jonas> it has to remove carriage return because irc thinks it's not a valid character
20:57:57 <b_jonas> (irc is sort of like bbc, but at least only with three of the 256 bytes)
20:58:07 <b_jonas> `! bf >+++++++++++++++[+.]
20:58:09 <HackEso> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~.
20:58:14 <fizzie> b_jonas: fungot *does* run brainfuck.
20:58:14 <fungot> fizzie: we are probably talking more like 100 lines here, if your terminal is really old) who was well-respected
20:58:16 <int-e> b_jonas: it skips to the next line on LF, hence we got three lines of output
20:58:19 <b_jonas> `! bf >+++++++++++++++++++++++[+.]
20:58:20 <HackEso> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~.
20:58:25 <ornxka> >ÑÒÓÔÕ
20:58:27 <b_jonas> `! bf >++++++++++++++++++++++++++++++[+.]
20:58:27 <HackEso> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~.
20:58:30 * ornxka scream in norwegian
20:58:36 <b_jonas> int-e: huh
20:58:51 <b_jonas> ^help
20:58:51 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
20:59:00 <b_jonas> `? bf
20:59:01 <HackEso> See: brainfuck
20:59:02 <b_jonas> `whois bf
20:59:03 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: whois: not found
20:59:04 <b_jonas> `whois brainfuck
20:59:05 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: whois: not found
20:59:08 <b_jonas> `whatis bf
20:59:09 <HackEso> bf(1hackeso) - no description \ bf(1egobot) - no description \ bf(8fungot) - evaluate brainfuck program \ bf(8lambdabot) - evaluate brainfuck snippet
20:59:10 <b_jonas> `whatis brainfuck
20:59:11 <HackEso> brainfuck: nothing appropriate.
20:59:17 <ornxka> `ls
20:59:18 <HackEso> a.out \ bin \ canary \ emoticons \ esobible \ etc \ evil \ f \ factor \ good \ hw \ ibin \ interps \ izash.c \ karma \ le \ lib \ misle \ paste \ ply-3.8 \ quines \ quinor \ quotes \ share \ src \ test2 \ testfile \ tmflry \ tmp \ wisdom
20:59:29 <ornxka> `cat /etc/passwd
20:59:30 <HackEso> cat: /etc/passwd: No such file or directory
20:59:34 <ornxka> ah its a chroot
20:59:36 <b_jonas> `bf ++++++++[>++++<][.+]
20:59:38 <ornxka> that makes more sense
20:59:45 <fizzie> ornxka: It's not a chroot, it's a UML.
20:59:48 <b_jonas> `! bf ++++++++[>++++<][.+]
20:59:53 <imode> UML?
20:59:58 <b_jonas> `? uml
20:59:58 <fizzie> imode: User-mode Linux.
21:00:00 <HackEso> uml? ¯\(°​_o)/¯
21:00:01 <imode> righto.
21:00:03 <ornxka> ahh
21:00:07 <HackEso> No output.
21:00:18 <fizzie> Well, an UML inside a namespaced container inside kvm.
21:00:19 <HackEso> No output.
21:00:37 <b_jonas> oh
21:00:47 <b_jonas> `! bf ++++++++[->++++<][.+]
21:00:48 <HackEso> No output.
21:00:53 <ornxka> thats actually a pretty cool way to do a bot actually
21:01:00 <b_jonas> `! bf ++++++++[->++++<].+.+.+.+
21:01:01 <HackEso> ​..
21:01:03 <ornxka> very unixy
21:01:05 <b_jonas> `! bf +++++++++[->++++<].+.+.+.+
21:01:06 <HackEso> ​..
21:01:09 <b_jonas> `? hackeso
21:01:10 <HackEso> HackEso is almost but not quite unlike HackEgo.
21:01:14 <b_jonas> `? hackego
21:01:15 <HackEso> HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing. HackEgo is the slowest bot in all Mexico!
21:01:16 <b_jonas> `? help
21:01:17 <HackEso> Help is on the way. We don't know where the way is, though. You might try `help instead.
21:01:19 <b_jonas> `help
21:01:19 <HackEso> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch [<output-file>] <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
21:01:23 <b_jonas> yeah, one of those
21:01:36 <ornxka> >Make sure you imagine it's running as root with no sandboxing. HackEgo is the slowest bot in all Mexico!
21:01:39 <ornxka> laughing at that
21:01:54 <b_jonas> I think I can't brainfuck
21:02:05 <b_jonas> `! bf +++++++++[->++++<]>[.+]
21:02:07 <HackEso> ​$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
21:02:14 <fizzie> HackEso's brainfuck interpreter is the one inherited from EgoBot, that's why it's accessible via !.
21:02:26 <b_jonas> but then what's
21:02:28 <b_jonas> ``` type bf
21:02:29 <HackEso> bf is /hackenv/bin/bf
21:02:31 <b_jonas> that?
21:02:36 <fizzie> `url bin/bf
21:02:37 <HackEso> https://hack.esolangs.org/repo/file/tip/bin/bf
21:02:44 <ornxka> `! bf ++++++++[>++++[>++>+++>+++>+<<<<-]>+>->+>>+[<]<-]>>.>>---.+++++++..+++.>.<<-.>.+++.------.--------.>+.>++.
21:02:44 <HackEso> Hello World!
21:02:45 <fizzie> A wrapper, apparently.
21:02:53 <b_jonas> `bf
21:02:53 <HackEso> Run what?
21:03:05 <b_jonas> hmm, that broke
21:03:13 <b_jonas> or something
21:03:17 <fizzie> A wrapper with the !-style standard input thing, further.
21:03:29 <fizzie> `bf ,[.,]!foobar
21:03:29 <HackEso> foobar
21:03:33 <b_jonas> @bf +++++++++[->++++<]>[.+]
21:03:33 <lambdabot> $%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn...
21:04:37 <fizzie> And fungot does the ! input thing natively.
21:04:37 <fungot> fizzie: armed bear common lisp instead if i want. is to get the 3m binaries. can't open new ssh connection either
21:04:38 <fizzie> ^bf ,[>,]<[.<]!hello
21:04:39 <fungot> olleh
21:05:40 <ornxka> i feel like a jerk being responsible for you doing all this work just because i wanted to know if there was a brainfuck bot :p
21:07:05 <int-e> ornxka: don't feel bad
21:07:34 <int-e> this is perfectly normal for #esoteric, and I suspect everybody's enjoying this.
21:07:38 -!- imode has quit (Quit: WeeChat 2.6).
21:07:52 <b_jonas> what work? oh right, modifying characters in the code until it starts to appear to work, without thinking or looking up anything. yeah, a lot of people get payed for that, so you could count that as work. I don't.
21:09:42 -!- atslash has joined.
21:10:36 <b_jonas> you could probably also convince j-bot to evaluate brainfuck, if you first write a brainfuck interpreter in J
21:15:45 <fizzie> fungot's ^bf interpreter is approximately lines 298-310 and 355-376 of https://github.com/fis/fungot/blob/master/fungot.b98
21:15:45 <fungot> fizzie: the report is cute. http://gehennom.org/fizban/ fnord/ music/ fnord if you're using c++, we can get the position of substituting atoms or groups of signed 8-bit values. there should be
21:16:16 <fizzie> The former is the actual core, which runs a bf-style bytecode (except with consecutive +s, -s, <s and >s folded), the latter parses brainfuck source into that form.
21:42:07 <esowiki> [[Talk:Or]] https://esolangs.org/w/index.php?diff=66748&oldid=66745 * Areallycoolusername * (+252)
21:42:20 <esowiki> [[Talk:Or]] https://esolangs.org/w/index.php?diff=66749&oldid=66748 * Areallycoolusername * (+119)
21:43:00 <esowiki> [[Talk:Or]] https://esolangs.org/w/index.php?diff=66750&oldid=66749 * Areallycoolusername * (+0)
21:43:18 <esowiki> [[Talk:Or]] https://esolangs.org/w/index.php?diff=66751&oldid=66750 * Areallycoolusername * (-2) /* Is Or really stack-based? */
21:43:50 <esowiki> [[Or]] https://esolangs.org/w/index.php?diff=66752&oldid=66743 * Areallycoolusername * (-28) /* Implementation */
21:44:07 -!- imode has joined.
21:54:25 -!- imode has quit (Ping timeout: 250 seconds).
21:56:29 <b_jonas> `whatis bf
21:56:30 <HackEso> bf(1hackeso) - no description \ bf(1egobot) - evaluate brainfuck snippet \ bf(8fungot) - evaluate brainfuck program \ bf(8lambdabot) - evaluate brainfuck snippet
21:56:38 <b_jonas> I added a description to the egobot command, seeing that I used it
22:00:04 <b_jonas> ideally at some point I should amend the whatis program to accept a section name as first argument
22:00:22 <b_jonas> although that can be tricky, because we have genuine commands whose names are section names
22:00:26 <b_jonas> `whatis 1
22:00:27 <HackEso> 1(1hackeso) - run command, wrap output to irc lines
22:00:28 <b_jonas> `whatis 5
22:00:29 <HackEso> 5(1hackeso) - run command 5 times, wrap output to irc lines
22:00:30 <b_jonas> `whatis 4
22:00:31 <HackEso> 4(1hackeso) - run command 4 times, wrap output to irc lines
22:00:41 <b_jonas> `whatis 2
22:00:42 <HackEso> 2(1hackeso) - run command, wrap output to irc lines, show second line
22:06:47 <int-e> b_jonas: out of curiosity, does 0xef 0xbf 0xbd mean anything to you?
22:07:00 <int-e> (as a recurring byte sequence in some data)
22:07:49 <b_jonas> int-e: is that the byte order mark in utf-8?
22:07:58 <int-e> close, actually.
22:08:17 <int-e> (though that wouldn't be recurring)
22:08:21 <int-e> `unidecode �
22:08:21 <HackEso> ​[U+FFFD REPLACEMENT CHARACTER]
22:08:45 <int-e> It took me much longer to home in on UTF-8.
22:08:56 <b_jonas> `perl -euse Encode;printf"%vX",encode_utf8("\xFFFD")
22:08:57 <HackEso> C3.BF.46.44
22:09:07 <b_jonas> `perl -euse Encode;printf"%vX",encode_utf8("\x{FFFD}")
22:09:08 <HackEso> EF.BF.BD
22:09:17 <b_jonas> `perl -euse Encode;printf"%vX",encode_utf8("\x{FEFF}")
22:09:18 <HackEso> EF.BB.BF
22:09:24 <b_jonas> ok
22:09:52 <b_jonas> I don't remember all these numbers
22:10:21 <int-e> It's of no importance, but I guess you passed the test.
22:11:21 <b_jonas> these days I work with a lot of utf-16 and utf-8 files that have a byte order mark and are made of almost completely ascii otherwise
22:12:13 <b_jonas> `perl -euse Encode;printf"%vX",decode_utf8("\xEF\xBF\xBD")
22:12:14 <HackEso> FFFD
22:12:19 <b_jonas> `perl -euse Encode;printf"%vX",decode_utf8("\xB9")
22:12:20 <HackEso> FFFD
22:12:32 <b_jonas> right, that's cheating, it decodes replacement character for invalid utf-8 input
22:12:45 <int-e> Yeah, but that's probably what happened!
22:12:50 <b_jonas> `perl -euse Encode;printf"%vX",decode_utf8("\xB9",Encode::FB_CROAK)
22:12:51 <HackEso> utf8 "\xB9" does not map to Unicode at /usr/lib/x86_64-linux-gnu/perl/5.24/Encode.pm line 243.
22:12:59 <int-e> (Somebody taking raw data and decoding it as UTF-8.)
22:12:59 <b_jonas> `perl -euse Encode;printf"%vX",decode_utf8("\xEF\xBF\xBD",Encode::FB_CROAK)
22:13:00 <HackEso> Modification of a read-only value attempted at /usr/lib/x86_64-linux-gnu/perl/5.24/Encode.pm line 244.
22:13:15 <int-e> (Which explains how you get *a lot* of these replacement characters.)
22:13:38 <b_jonas> hmm
22:13:42 -!- imode has joined.
22:13:56 <b_jonas> `perl -euse Encode;printf"%vX",decode("utf-8","\xEF\xBF\xBD",Encode::FB_CROAK)
22:13:57 <HackEso> Modification of a read-only value attempted at /usr/lib/x86_64-linux-gnu/perl/5.24/Encode.pm line 204.
22:14:00 <b_jonas> what
22:14:04 <int-e> (I don't know for sure what happened because I was just helping somebody look at the resulting mess.)
22:14:17 <b_jonas> `perl -euse Encode;printf"%vX",decode("utf-8","\xEF\xBF\xBD",1)
22:14:17 <HackEso> Modification of a read-only value attempted at /usr/lib/x86_64-linux-gnu/perl/5.24/Encode.pm line 204.
22:14:22 <b_jonas> what why?
22:15:21 <int-e> doesn't like the ,1?
22:16:09 <b_jonas> `perl -euse Encode;decode("utf-8","\xEF\xBF\BD",9)
22:16:10 <HackEso> utf8 "\xEF" does not map to Unicode at /usr/lib/x86_64-linux-gnu/perl/5.24/Encode.pm line 202.
22:16:37 <int-e> 'If *CHECK* is 1, methods immediately die with an error message.' -- I guess you got *some* error message.
22:17:00 <b_jonas> int-e: no, the relevant part is that if bit 3 is not set, it shifts the characters that it did decode from the string
22:17:15 <b_jonas> on an error that is
22:17:31 <b_jonas> but now why doesn't it deocde "\xEF\xBF\xBD"?
22:17:33 <int-e> ah, what an awkward interface
22:18:01 <b_jonas> int-e: I think there are high-level constants for this 9 and stuff, I just don't recall right now
22:18:45 <int-e> `` perl '-euse Encode;printf"%vX\n",decode("utf-8","\xEF\xBF\xBD",9)'
22:18:46 <HackEso> FFFD
22:18:57 <int-e> ...so what's different...
22:19:06 <b_jonas> `perl -euse Encode;printf"%vX\n",decode("utf-8","\xEF\xBF\xBD",9)
22:19:06 <HackEso> FFFD
22:19:11 <b_jonas> probably doesn't like void context
22:19:17 <b_jonas> `perl -euse Encode;$x=decode("utf-8","\xEF\xBF\xBD",9)
22:19:18 <HackEso> No output.
22:19:21 <b_jonas> `perl -euse Encode;()=decode("utf-8","\xEF\xBF\xBD",9)
22:19:21 <HackEso> No output.
22:19:28 <b_jonas> `perl -euse Encode;decode("utf-8","\xEF\xBF\xBD",9)
22:19:29 <HackEso> No output.
22:19:49 <b_jonas> `perl -euse Encode;printf"%vX\n",decode("utf-8","\xBF\xBD",9)
22:19:49 <HackEso> utf8 "\xBF" does not map to Unicode at /usr/lib/x86_64-linux-gnu/perl/5.24/Encode.pm line 202.
22:19:53 <b_jonas> `perl -euse Encode;printf"%vX\n",decode("utf-8","\xEF\xBF\xBD",9)
22:19:54 <HackEso> FFFD
22:20:01 <b_jonas> `perl -euse Encode;printf"(%vX)\n",decode("utf-8","\xEF\xBF\xBD",9)
22:20:04 <HackEso> ​(FFFD)
22:20:08 <b_jonas> good enough
22:23:51 <b_jonas> `python3 b"\xEF\xBF\xBD".decode()
22:23:52 <HackEso> python3: can't open file 'b"\xEF\xBF\xBD".decode()': [Errno 2] No such file or directory
22:23:57 <b_jonas> `python3 -cprint(b"\xEF\xBF\xBD".decode())
22:23:58 <HackEso> ​�
22:24:45 <b_jonas> `python3 -cprint(list(map(ord,b"\xEF\xBF\xBD".decode())))
22:24:46 <HackEso> ​[65533]
22:24:47 <b_jonas> `python3 -cprint(list(map(ord,b"\xBD".decode())))
22:24:47 <HackEso> Traceback (most recent call last): \ File "<string>", line 1, in <module> \ UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 0: invalid start byte
22:28:15 -!- arseniiv has quit (Ping timeout: 264 seconds).
22:39:47 -!- xkapastel has joined.
22:49:53 -!- imode has quit (Ping timeout: 276 seconds).
23:39:45 -!- FreeFull has quit.
23:49:57 -!- imode has joined.
←2019-10-20 2019-10-21 2019-10-22→ ↑2019 ↑all