←2019-09-15 2019-09-16 2019-09-17→ ↑2019 ↑all
00:09:41 <shachaf> I bet it's still less complicated than the situation in Windows with SEH.
00:10:03 <shachaf> Though to be fair SEH is more like a replacement for signal handlers, which are definitely a bunch of complexity.
00:22:23 -!- oerjan has joined.
00:34:04 -!- tromp has joined.
00:38:59 -!- tromp has quit (Ping timeout: 276 seconds).
01:21:20 <zzo38> If I rewrite TeXnicard (or maybe, can use a different name; I don't know), I might use a SQLite database as the card set file. Now that SQLite has window functions, maybe the ROW_NUMBER function can be used for assigning collector numbers. I also should make it workable with both RGB and CMYK. Separation colours might also be good to have, but that might be more difficult.
01:21:56 <zzo38> Probably I would avoid to implement hyphenation, but the TFM font metrics, PK font glyphs, and the line breaking like that of TeX, would be implemented.
01:22:37 <esowiki> [[Echidna]] https://esolangs.org/w/index.php?diff=66183&oldid=66075 * YamTokTpaFa * (+21) formatting, +WIP
01:23:10 -!- atslash has quit (Quit: Leaving).
01:24:11 -!- JimScope has joined.
01:25:20 <esowiki> [[Template:WIP]] https://esolangs.org/w/index.php?diff=66184&oldid=51711 * YamTokTpaFa * (+83)
01:27:17 <esowiki> [[Category:Works-in-Progress]] https://esolangs.org/w/index.php?diff=66185&oldid=64246 * YamTokTpaFa * (+100)
01:29:13 -!- JimScope has quit (Ping timeout: 265 seconds).
01:29:54 <esowiki> [[User talk:Erinius]] N https://esolangs.org/w/index.php?oldid=66186 * YamTokTpaFa * (+232) /* Prompting to complete Screwtape */ new section
01:31:12 <Lykaina> who's YamTokTpaFa?
01:34:03 <zzo38> One user in esolang wiki, I think; seem to be an alternative account for YamTokWae but they lost the password for that account, as far as I can tell.
01:34:27 <Lykaina> like me and lesidhetree, sorta?
01:36:08 <zzo38> I don't know.
01:36:47 <Lykaina> well, in my case, i forgot i had the lesidhetree account.
01:37:19 <esowiki> [[Higgledy Piggledy Processor]] https://esolangs.org/w/index.php?diff=66187&oldid=44416 * YamTokTpaFa * (+25)
01:37:28 <zzo38> OK
01:41:25 <esowiki> [[Blacktime]] https://esolangs.org/w/index.php?diff=66188&oldid=40276 * YamTokTpaFa * (+42)
01:42:33 <esowiki> [[Logical/Interpreter]] https://esolangs.org/w/index.php?diff=66189&oldid=65402 * YamTokTpaFa * (+4) linking
01:45:31 <esowiki> [[Malbolge20]] https://esolangs.org/w/index.php?diff=66190&oldid=51693 * YamTokTpaFa * (+24)
01:51:37 <esowiki> [[Treeng]] https://esolangs.org/w/index.php?diff=66191&oldid=45439 * YamTokTpaFa * (+30)
02:02:13 <esowiki> [[NICE]] https://esolangs.org/w/index.php?diff=66192&oldid=30326 * YamTokTpaFa * (+146)
02:05:37 -!- tromp has joined.
02:05:59 <Lykaina> http://sif.lesidhetree.com/sara/echidna/Echidna%20v0_11a1b.pdf
02:09:56 -!- tromp has quit (Ping timeout: 246 seconds).
02:15:03 <Lykaina> can someone look at the pdf and see if it has enough ops?
02:16:31 <zzo38> I think there is a mistake in the description of the "Ln" command
02:17:46 <Lykaina> crap
02:18:17 -!- xkapastel has quit (Quit: Connection closed for inactivity).
02:19:23 <Lykaina> yeah, that wassupposed to be "NOT"
02:22:58 <Lykaina> fixed the pdf and the source
02:24:18 <Lykaina> do you like the language?
02:24:33 <zzo38> I don't know
02:24:56 <Lykaina> there are five samples at the bottom
02:25:52 <Lykaina> https://github.com/lykaina/echidna
02:26:06 <zzo38> Yes, I saw the examples
02:26:26 <Lykaina> if, for some reason, you want to try it out
02:29:23 <Lykaina> if you are interested, let me know
02:30:42 <Lykaina> it's key that no cmd name can contain numbers or the letters a-f
02:30:59 <Lykaina> limits of implentation
02:31:09 <zzo38> Yes, that is what I thought
02:32:25 <Lykaina> so Lg instead of La, Oq instead of Oe...
02:40:28 <Lykaina> Oh, and if you named the compiled file "Echdebug" (you may have to put it in your path) you get a lot of debug info on stderr.
02:40:50 <Lykaina> i mean "echdebug"
03:38:04 <imode> fixed the problems in range generation.
03:38:13 <imode> wonder if I can do this recursively.
03:45:16 <imode> yeeeeeah boi.
03:48:49 -!- ArthurStrong has joined.
03:54:13 <imode> https://repl.it/repls/AptNoisyEnvironments
04:11:07 -!- cocof has quit (Ping timeout: 260 seconds).
04:32:25 -!- Lord_of_Life has quit (Ping timeout: 258 seconds).
04:37:40 -!- Lord_of_Life has joined.
05:37:07 -!- oerjan has quit (Quit: Nite).
06:15:10 -!- tromp has joined.
06:21:27 <shachaf> `5 w
06:21:30 <HackEso> 1/1:nano//nano is vi's sister. \ the five wisdoms//The first of the five wisdoms is that there is only one wisdom. \ kulør//Kulør er rett stavemåte. \ structsubural type//Something Bike is into. Not to be confused with suburban destruction. \ almond bread//Almond bread is a delicacy made from fractal dough.
06:42:15 <shachaf> ski: Did you see http://slbkbs.org/tmp/2019-08-21-test-cases.txt ? I can't remember.
06:42:25 <shachaf> I think it's like a special kind of delimited continuations.
07:36:20 <ski> i didn't
07:36:23 <ski> what's ⌜{ E; { ⋯ } }⌝ ?
07:38:04 <shachaf> It's in terms of some base semicolon behavior, I guess.
07:38:18 <shachaf> The point is that blocks nest right-associatively.
07:38:55 <shachaf> (Like in C++ when you write { A a; B b; ... }, B's constructor and destructor run inside a scope.)
07:47:05 <ski> mhm
07:50:56 <ski> oh, ⌜@⌝ and ⌜defer⌝ uses syntactical dynamic scoping (like ⌜return⌝,⌜break⌝,⌜continue⌝ in C, ⌜!⌝ in Prolog,&c.) ?
07:51:20 <shachaf> They refer to the current block.
07:51:40 <shachaf> The goal of @ is to convert a dynamically scoped thing to a lexically scoped thing.
07:52:08 <shachaf> So f() { return := @`; ... { return(5); } ... } would exit from the outer scope.
07:52:20 <ski> can you abstract out ⌜@⌝ into another operation, and call that, and get the same effect ?
07:52:43 <ski> perhaps you can't construct/define such an operation, without using the ⌜{ ⋯ }⌝ brackets ..
07:53:52 <shachaf> I'm not entirely sure about @. The origin of the name is that I had a syntax to name blocks earlier (similar to goto labels).
07:54:13 <shachaf> { @foo; ...exitfrom foo... } would exit from the block labeled foo, and so on.
07:59:17 <ski> <https://beautifulracket.com/explainer/parameters.html#syntax-parameters>,<http://www.greghendershott.com/fear-of-macros/Syntax_parameters.html>
08:00:59 -!- arseniiv has joined.
08:01:19 <ski> i'm also wondering whether this ⌜`⌝ (which would also, maybe, not be abstractable ?) behaves more like ⌜shift⌝ or more like ⌜control⌝ (or neither)
08:02:01 <ski> <http://slbkbs.org/tmp/2019-08-21-test-cases.txt> is something you were fiddling with ? someone else ?
08:02:04 <shachaf> I should figure out the difference between "shift" and "forall".
08:02:21 <ski> hm, now i also see there was a
08:02:23 <shachaf> s/forall/control/ -- mixed up channels
08:02:26 <ski> 2019-08-24 <fungot:#esoteric> b_jonas: hello ski :) ( actually i don't think you could like rephrase it? do you normally see?
08:02:26 <fungot> ski: how so? it's not improved at all: how often is it really necessary to shorten a 4-letter word to 3 letters?
08:02:31 <ski> that i forgot about
08:02:52 <shachaf> fungot is a bot that generates text by randomly
08:02:52 <fungot> shachaf: psox wtf? haha where can i find gambit scheme to be
08:03:02 <ski> (scrollback doesn't go that far back)
08:03:14 <shachaf> Yes, that file was me trying to write up the operators I was trying to figure out.
08:03:40 <ski> yea. but was that message triggered by something related to something i said ? or just a random thing ?
08:03:51 <ski> ah, ok
08:03:59 <shachaf> I think it's trained on IRC logs.
08:04:01 <shachaf> ^style irc
08:04:01 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
08:04:40 <shachaf> I should add an additional fact, before I read your links, that the context I was trying to figure this out in was a low-level language where all of these things get resolved to control flow known at compiletime, with no indirect jumps or anything like that.
08:05:01 <shachaf> Which makes them maybe more macro-like than delimited-continuation-like, though probably both.
08:08:27 <ski> i think the ⌜{ ⋯(E)`⋯; ⋯ } ⟿ (E)(λx ↦ { ⋯x⋯; ⋯ }⌝ rule suggests it's not like ⌜shift⌝, anyway; since in that case there'd been an extra ⌜reset⌝/⌜prompt⌝ wrapping the whole thing, in the output
08:09:12 * ski tries to recall how ⌜control⌝ differed, exactly
08:11:47 <ski> (<irc://open.ircnet.net:6667/#douglasadams> ? what's that ?)
08:13:49 <shachaf> I don't know.
08:21:03 <ski> (my links above are just about (selective) dynamic scoping at the syntax level. being able to introduce a construct which is only valid, lexically/syntactically, inside the scope of another construct. well, in general, one could also allow a macro (or a TH splice) to expand to such a construct, inside the scoping construct)
08:21:27 <ski> (i think there may've been some nice blag about it, too, but i can't find it atm)
08:23:31 * ski . o O ( <https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#rebindable-syntax-and-the-implicit-prelude-import> )
08:43:07 <esowiki> [[Toi]] https://esolangs.org/w/index.php?diff=66193&oldid=17413 * Kritixilithos * (-26) /* Useful algorithms */ Removed redundant code in addition
08:57:32 <shachaf> ski: Hmm, this syntax parameter thing is interesting.
08:59:10 <ski> yes
08:59:33 <shachaf> It's related to the other question which is kind of implicit in this thing that I've discussed before, about compiletime values.
08:59:52 <ski> (the "parameter" part is just one way to render the dynamic scope thing. which is more or less what "implicit parameters" do, too)
09:00:13 -!- wob_jonas has joined.
09:01:27 <wob_jonas> do you ever wonder about all the connections that are always joined to #esoteric but never speak, and, in particular, which one is read by your boss?
09:01:35 <shachaf> I want a semi-first-class (first-class at compiletime) object called a "block", which is somewhere between an AST and an inline function.
09:02:05 <wob_jonas> I mean, it's not like it's hard to figure out that I'm often on this channel
09:02:29 <wob_jonas> hi, boss. yes, I'm totally working
09:04:15 <ski> shachaf : elaborate on what "somewhere between an AST and an inline function" means ? (in particular what does "an AST" mean, and what does "an inline function" mean, in this context ?)
09:04:56 <shachaf> I mean: Macros operate on AST nodes. They're entirely syntactic things, with random name shadowing and everything. An inline function has the same semantics as a regular function, and is just compiled differently.
09:05:48 <shachaf> I want a thing which is like a function -- can be called with parameters, has its own scope without accidental shadowing -- but is guaranteed to be inlined at compiletime, and as such can do things that a regular function can't.
09:06:07 <shachaf> For example, it can do early exit from a block (without something extremely dynamic like setjmp or continuations or exceptions).
09:06:25 <shachaf> A hygienic macro is probably kind of close to this.
09:06:41 <shachaf> (By AST I meant AST node.)
09:07:07 <shachaf> It's also perhaps possible for you to take this semi-function thing and explicitly do some operation on it, like evaluate it with a different scope, or check what free variables it has, at compiletime.
09:07:22 <esowiki> [[]] https://esolangs.org/w/index.php?diff=66194&oldid=62879 * YamTokTpaFa * (-23) Undo revision 62879 by [[Special:Contributions/A|A]] ([[User talk:A|talk]]) I don't think it a language description page, seeing the history summary.
09:11:28 -!- cpressey has joined.
09:12:30 <esowiki> [[Bytemap]] https://esolangs.org/w/index.php?diff=66195&oldid=33278 * YamTokTpaFa * (-40) +WIP
09:13:53 <esowiki> [[Mbius]] https://esolangs.org/w/index.php?diff=66196&oldid=45359 * YamTokTpaFa * (+51)
09:19:47 <ski> "with random name shadowing and everything" -- depends on whether you're talking about (at least, by default) hygienic macros, or not
09:20:06 <shachaf> Yes.
09:20:40 <shachaf> Even with hygienic macros, I think inserting an AST node hygienically is a kind of different thing. But it's possible it isn't.
09:21:15 <ski> different thing, from what ?
09:21:48 <shachaf> From this "in-between" thing I'm trying to figure out.
09:22:35 <ski> hm, from your description, it sounds like you want hygienic macros, possibly ?
09:23:02 * ski . o O ( "Compiling without Continuations" by Luke Maurer,Paul Downen,Simon Peyton Jones in 2017 at <https://www.microsoft.com/en-us/research/wp-content/uploads/2016/11/join-points-pldi17.pdf> )
09:24:32 <ski> names in the definiens of a hygienic macro definition refer to what those names lexically mean at the definition site (even if those names aren't exported, but the macro is)
09:25:16 <ski> (well, of course, if the name is a parameter of the macro, it'll be expanded with the AST you pass in as parameter, when calling it)
09:26:28 <shachaf> Let me see if I can think of examples of why this feels different.
09:26:38 <ski> however, with something like syntax parameters, you can still have a (by-default) hygienic macro invokation expand to something involving a `return' or `break loop_lab' or similar)
09:27:02 <shachaf> Ignoring the whole ` thing above, say you want to define something like a loop.
09:27:50 <shachaf> Maybe a for-in loop is used like "for(xs, {\x; ... })"
09:28:44 <shachaf> Here "for" is a lot like a regular function, and {\x; ... } is a lot like a lambda. The difference is that it all must be expanded at compiletime.
09:28:56 <ski> yes
09:29:18 <shachaf> for can't be "nonstrict" in xs, because it takes its arguments just like a regular strict function does.
09:29:28 <ski> in Scheme, it could be `(for (x xs) ...)'
09:29:50 <shachaf> Sure, but that's special syntax, right? The idea is that there's no special syntax here.
09:30:07 <shachaf> You could also write something like: { body := {\x; ... }; for(xs, body); }
09:30:51 <ski> depends on what you mean by "special syntax", i suppose
09:31:06 <ski> you could certainly define such a `for' macro, yourself
09:31:41 <shachaf> I mean that the "(x xs)" is "parsed" by the macro.
09:32:03 <shachaf> (Of course it's still an S-expression, but the meaning of the S-expression is determined entirely by the macro.)
09:33:20 <ski> (define-syntax-rule for ()
09:33:26 <ski> (for (?id ?expr) ?body ...)
09:33:31 <ski> (foo* ?expr (slambda (?id) ?body ...)))
09:33:59 <ski> (where `slambda' is an imagined macro abstraction thing)
09:34:18 <shachaf> Sure. I'd call that syntax.
09:34:23 <ski> (let-syntax ((?body (slambda (x) blah)))
09:34:24 <ski> (foo* xs ?body))
09:34:45 <shachaf> It's effectively doing parsing. Not from characters to AST, but from S-expressions to something meaningful.
09:34:56 <shachaf> Pretty different from e.g. "forM_ xs (\x -> ...)"
09:35:20 <ski> yes, this is macro-expansion-time, not run-time
09:35:35 <ski> <shachaf> I mean that the "(x xs)" is "parsed" by the macro.
09:35:36 <ski> yes
09:35:51 <ski> (pattern-matching)
09:37:21 <cpressey> shachaf: Stupid question maybe: what's to stop "for" actually being (instead of just "a lot like") a function, and {\x...} from actually being a lambda, and this being a compile-time optimization akin to constant folding?
09:37:23 <shachaf> Sure, but I want a thing that happens at compiletime, but doesn't do parsing.
09:37:57 <cpressey> I mean, if you can identify how it is different from that, something might become more obvious
09:38:03 <shachaf> The name of the optimization is inlining in this case. It's a very common one. :-)
09:38:28 <shachaf> Hence "inline function".
09:38:33 <shachaf> One thing is that it might be permitted to do things that regular functions can't.
09:39:23 <shachaf> For example, maybe "..." contains a "return" statement. If you did that with general functions, you'd need something complicated like continuations or exceptions.
09:39:39 <shachaf> Whereas with this "guaranteed-to-be-inlined" thing, implementing it is very simple.
09:40:19 <shachaf> You might also have other compiletime-only value. For example, maybe early-exit labels are a first-class thing that you can pass as an argument to these "always-inlined functions". You don't want to pass those as an argument to real functions.
09:40:49 <shachaf> Maybe you can evaluate a block but with a different scope. For example, "import(module, { ... })"
09:43:06 <esowiki> [[Symbolic Python]] https://esolangs.org/w/index.php?diff=66197&oldid=61331 * YamTokTpaFa * (+31)
09:44:14 <ski> "but doesn't do parsing" -- including parsing in the above macro pattern-matching sense ?
09:44:44 <esowiki> [[Symbolic Python]] https://esolangs.org/w/index.php?diff=66198&oldid=66197 * YamTokTpaFa * (-1) /* Example Implementation */
09:44:47 <ski> (is taking multiple parameters to a macro (or whatever you want to think of this thing as) "pattern-matching" ?)
09:45:33 <ski> (also, if you want to guarantee it's happening at compile-time, then it's not an optimization anymore)
09:45:46 <cpressey> OK, idk. There are language semantics, and then there are compiler optimizations. I find tackling one or the other is easier than tackling both at once.
09:46:18 <ski> (and what you were saying there is, also, i think, why i was reminded of "Compiling without Continuations")
09:47:05 <shachaf> It's not a compiler optimization for the reason ski said.
09:47:26 <shachaf> ski: The reason I'm calling it "parsing" is that (x xs) isn't a meaningful expression by itself, but only in the context of being the first "argument" to the macro.
09:48:01 <ski> yes
09:48:16 <shachaf> Also x is an identifier, which makes "for" a binder on top of everything else. If it was more function-like, something like for(xs, x, { ... }) would be an error because x is unbound.
09:48:20 <ski> however, perhaps it can be a meaningful phrase, on its own ?
09:48:22 <cpressey> Anything you can do at compiletime, you can also do at runtime, so, ok, if you don't want to use the word "optimization", that's cool.
09:48:36 <ski> (assuming we know which "syntactic type" to assign to it)
09:48:38 <shachaf> cpressey: That seems like a bad approach to language design?
09:48:52 <shachaf> You can do type checking at runtime but I want to do it at compiletime.
09:49:02 <cpressey> shachaf: I said "can", not "should"
09:49:19 <shachaf> The other reason I don't want to call it an optimization is that it's mandatory.
09:49:50 <shachaf> If a language specification requires tail-recursive functions to use constant space, that's not an optimization.
09:50:14 <shachaf> (I think tail call optimization isn't a good optimization, either. It should either be required or not happen at all.)
09:50:29 <cpressey> Find, pretend I said "technique" instead of "optimizaion"
09:50:34 <shachaf> OK, sure.
09:50:46 <cpressey> My point is, the semantics of a language doesn't usually prescribe this
09:50:54 <shachaf> The other thing is that I want something simple, and supporting these things at runtime is many times more complicated than supporting them at compiletime.
09:50:59 <cpressey> The program has the same meaning whether you expand these things early or later
09:51:13 <shachaf> This is in theory for a low-level language that doesn't even have closures.
09:51:15 -!- wob_jonas has quit (Remote host closed the connection).
09:51:32 <shachaf> Maybe it'll have closures later. But it certainly won't have arbitrary continuations.
09:51:36 <esowiki> [[Triangular]] https://esolangs.org/w/index.php?diff=66199&oldid=53953 * YamTokTpaFa * (+24)
09:54:11 <ski> (Scheme prescribes "proper tail recursion" (which is a bit of a misnomer, because it doesn't have anything, per se, to do with recursion). may be implemented with TCO, may be implemented in other ways. the spec only cares about the asymptotic space complexity property of the operational semantics, allowing an unbounded number of active tail calls, in bounded space)
09:54:48 <shachaf> That seems fine.
09:55:12 <shachaf> I've said before that I think optimizations that change asymptotic behavior are probably a bad idea.
09:55:26 <ski> cpressey : well, but "One thing is that it might be permitted to do things that regular functions can't.","For example, maybe \"...\" contains a \"return\" statement. If you did that with general functions, you'd need something complicated like continuations or exceptions."
09:56:04 -!- ais523_ has joined.
09:57:13 -!- ais523_ has quit (Changing host).
09:57:13 -!- ais523_ has joined.
09:57:13 -!- ais523_ has quit (Changing host).
09:57:13 -!- ais523_ has joined.
09:57:36 <ais523_> hmm, it was a pain to get KiwiIRC working, but I'm here now
09:58:00 <Taneb> Hi, ais523_
09:58:11 <shachaf> Are you a Kiwi now?
09:58:17 <ais523_> I don't think so?
10:00:10 <ais523_> fwiw, I'm not really convinced I understand The Subtyping Machine
10:00:20 <ais523_> found esolangs are elegant in a way, but less elegant in other ways
10:01:51 <ski> ais523_ : cloaks don't work with Kiwi ?
10:02:10 <ais523_> apparently not
10:03:27 <ski> hm, is this the Kiwi thing on the Freenode page, or running from elsewhere ?
10:04:11 <ais523_> elsewhere, I can't get the one on the Freenode page to work
10:05:16 <esowiki> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=66200&oldid=66179 * Ais523 non-admin * (+379) /* Any features to insert mathematical formulas like TeX style? */ reply
10:06:34 -!- lob_jonas has joined.
10:06:37 <lob_jonas> did I hear KiwiIRC?
10:07:03 <ais523_> you weren't in channel at the time, but maybe?
10:07:14 <ais523_> you seem to be using it too
10:07:26 <ais523_> (what does the "l" mean?)
10:07:38 <shachaf> new zeaLand
10:08:02 <lob_jonas> ski: kiwi irc is a different web irc client. freenode runs a thing called qwebirc at http://webchat.freenode.net/ , whereas kiwiirc is a client at https://kiwiirc.com/client/irc.freenode.net that lets you connect to any irc network if you know the hostname of the server
10:08:52 <ais523_> no, webchat.freenode.net is a kiwiirc instance nowadays
10:08:58 <ais523_> but I couldn't get it to work
10:09:03 <ais523_> that's why ais523_ disappeared for ages
10:09:59 <lob_jonas> the "l" was originally trying to make the esolangs.org formatter color the nick the same sort of green as it uses for "b_jonas", but apparently it's not working that way now. either I messed up something, or the coloring hash changed. hmm.
10:10:20 <lob_jonas> wait really?
10:10:26 <lob_jonas> wow
10:10:40 <esowiki> [[Policy Policy]] N https://esolangs.org/w/index.php?oldid=66201 * A * (+229) Created page with "[[Policy Policy]] is an [[esoteric programming language]] inspired by [[Baba Is You]] that allows modifying the rules. This is a set of rules for defining rules. Category:La..."
10:10:43 <ski> Freenode used to run qwebirc, yes, but they switched to Kiwi, recently
10:12:36 <ski> <https://freenode.net/news/moving-to-kiwiirc>
10:13:57 <ski> ("it supports ... usage of emoji" is a minus, of course)
10:14:23 <ski> "Along with this change, we will no longer apply gateway cloaks to users of our webchat, treating them the same as any other client. While channel operators will still be able to recognize them via the realname field, we strongly suggest that you carefully consider the impact on legitimate users and hope that you decide not to ban webchat users as a whole."
10:15:07 <ski> seems to indicate to me that cloaks should now work, just as if you connected with a non webchat client (unlike before)
10:15:17 <lob_jonas> ski: does it support usage of emoji in the same way as mibbit does, so that when I mention std::default::Default, you see the colon-D replaced by a smiley?
10:15:30 <lob_jonas> or does it support usage of emoji like twitter?
10:15:42 <ski> "does it support usage of emoji in the same way as mibbit does .." : i hope not
10:15:52 <lob_jonas> or maybe just "support usage of emoji" in a sane way, where it just passes emoji through unmodified when you enter them into the input bar?
10:15:59 <ais523_> this computer is running Windows, so I have no easy ability to type a smiley face or whatever
10:16:15 <ais523_> however kiwiirc has an onscreen keyboard with an :] on it
10:16:21 <ski> (when i tried Discord a little, turning off all emoji stuff was the first thing i did)
10:16:23 <ais523_> does that render correctly for people using a different client?
10:16:32 <lob_jonas> ais523: which version of windows? the one that brings up an emoji popup if you press win+dot?
10:16:36 <Taneb> ais523_: it renders as colon close square bracket for me
10:16:52 <ais523_> ugh, why not just send the Unicode? :-(
10:17:11 <lob_jonas> and where if you press win+dot then colon then parenthesis then it searches for smiling emoji characters from some database/
10:17:17 <ais523_> hmm, looks like it is just replacing sequences of ASCII characters (that was a manually typed emoticon, not an emoji)
10:17:31 <int-e> > (:) 1 []
10:17:34 <lambdabot> [1]
10:17:43 <lob_jonas> ais523: I think you can turn that off in the settings menu of kiwiirc
10:17:43 <ski> > (:[]) 1
10:17:45 <lambdabot> [1]
10:17:56 <ais523_> oh, I initially misinterpreted int-e's Haskell as an attempt to emoji
10:18:15 <int-e> ais523_: There's no misinterpretation
10:18:19 <esowiki> [[Policy Policy]] https://esolangs.org/w/index.php?diff=66202&oldid=66201 * A * (+471)
10:18:23 <shachaf> @quote eat.a.comment
10:18:23 <lambdabot> SamB_XP says: I once saw it eat a comment (:[{- Help! -}])
10:18:24 <ais523_> well, it rendered literally for me
10:18:32 <int-e> ais523_: I was wondering what that feature would do to more or less ordinary code
10:18:45 <ais523_> it seems to have a decent protection against false positives
10:18:57 <shachaf> > (🐱)
10:19:00 <ais523_> although it'd probably struggle with emoticon-based esolangs (there's at least one of those, possibly more?)
10:19:10 <ais523_> shachaf: OK, that one did render as an emoji
10:19:25 <int-e> > (1 :) [] -- more delibrarate attempt
10:19:25 <ais523_> and there's no way to see what the underlying ASCII characters were
10:19:27 <ski> @slap lambdabot
10:19:27 <lambdabot> [1]
10:19:27 * lambdabot decomposes lambdabot into several parts using the Banach-Tarski theorem and reassembles them to get two copies of lambdabot!
10:19:41 <ski> > (�)
10:19:44 <lambdabot> error: Variable not in scope: �
10:19:44 <shachaf> There were no underlying ASCII characters.
10:20:03 <lob_jonas> ais523_: try the settings icon on the top left, then unset "Show emoticons"
10:20:03 <ais523_> oh, I was wondering why lambdabot didn't evaluate it :-D
10:20:07 <shachaf> The underlying character was U+1F431 CAT FACE
10:20:21 <int-e> @unidecode 🐱
10:20:21 <lambdabot> Unknown command, try @list
10:20:25 <int-e> `unidecode 🐱
10:20:28 <HackEso> ​[U+1F431 CAT FACE]
10:20:45 <Taneb> I can't believe a Weebl's Stuff character got into Unicode
10:20:51 <ais523_> oh, I didn't realise there were /two/ settings menus
10:20:53 <shachaf> Unfortunately the version of mosh-server I'm using doesn't display this correctly.
10:20:56 <int-e> > let 🐱 = 9 in 🐱
10:20:58 <lambdabot> <hint>:1:5: error: parse error on input ‘🐱’
10:21:01 <ais523_> (there is also a settings menu in the top right, with the same icon)
10:21:04 <shachaf> It's annoying because everything except mosh works fine.
10:21:15 <Taneb> int-e: I think emoji are operators for some reason
10:21:19 <int-e> > let (🐱) = 9 in (🐱)
10:21:20 <ais523_> when you find the settings menu you don't normally look for another one
10:21:21 <lambdabot> 9
10:21:23 <lob_jonas> [ 'a '{~?80$2 NB. I think they even fixed the html style so it doesn't collapse multiple spaces in messages
10:21:24 <j-bot> lob_jonas: aaa aa a a aa a aa aaaaa aa aaa a aaaaa aa aa a aaaa aa a a a aa
10:21:31 <int-e> Taneb: apparently so
10:21:43 <Taneb> int-e: I assume because they're not alphanumeric?
10:21:48 <lob_jonas> ais523_: yeah, I'm not saying it's a particularly good client
10:21:51 <Taneb> So, what's everyone's favourite emojo
10:21:55 <shachaf> `quote alphanumeric
10:21:56 <HackEso> 1132) <shachaf> A Swede who was in #esoteric / Thought his rhymes were a little generic. / "I might use, in my prose, / ꙮs, / But my poetry's alphanumeric."
10:22:01 <lob_jonas> I'm just saying it's still better than mibbit or the old qwebirc
10:22:08 <shachaf> Is ꙮ an emojo?
10:22:12 <int-e> > generalCategory '🐱'
10:22:13 <lambdabot> OtherSymbol
10:22:21 <ais523_> Taneb: "emoji" is also the singular (it has a Japanese root, and Japanese doesn't inflect plurals)
10:22:47 <Taneb> ais523_: yes but I like to facetiously decline words such as that as if they were Italian
10:22:47 <int-e> ꙮ.ꙮ
10:23:00 <Taneb> Because one susho is never enough, you know?
10:23:18 <Taneb> > generalCategory 'ꙮ'
10:23:20 <lambdabot> OtherLetter
10:23:25 <shachaf> I appreciated Taneb's usage and I might pick it up now.
10:23:36 <Taneb> > let ꙮ = 3 in ꙮ
10:23:38 <lambdabot> 3
10:23:45 <Taneb> shachaf: we can conclude that ꙮ is not an emoji
10:23:47 <shachaf> Though maybe I should go back to the older hyphenated form, e-moji
10:23:57 <shachaf> Presumably the printed version is just called "moji".
10:24:15 <Taneb> shachaf: I think it's cognate to "mojo"
10:24:21 <shachaf> Taneb: In fact it's alphanumeric, the above limerick notwithstanding.
10:24:34 <shachaf> `quote SNOWMAN
10:24:34 <HackEso> 1256) <mauris> MAHJONG TILE AUTUMN / HIRAGANA LETTER YA / SNOWMAN WITHOUT SNOW
10:24:42 <shachaf> OK, it's time for more Unicode poetry.
10:25:04 <shachaf> Any double dactyl code points?
10:26:45 <shachaf> I bet you can write a nice poem with rhyme, metre, and meaning where every line is the name of a Unicode code point.
10:27:11 <shachaf> But automated search is difficult because code point names aren't English words.
10:27:34 * ski . o O ( <http://www.pathwayslms.com/swipltuts/())).pl> )
10:27:42 <ais523_> well, false negatives aren't a huge issue, and false positives can easily be excluded by hand if they end up in the finished poem
10:27:47 <ais523_> so an inaccurate syllable counter might be good enough
10:28:13 <lob_jonas> https://github.com/fis/esolangs/blob/master/esologs/format.cc#L406 this was where it was done
10:28:23 <Taneb> `unidecode '😚'
10:28:25 <HackEso> ​[U+0027 APOSTROPHE] [U+1F61A KISSING FACE WITH CLOSED EYES] [U+0027 APOSTROPHE]
10:28:43 <shachaf> I once downloaded an English pronunciation dictionary and used it to search for rhymes fitting a particular metre.
10:29:11 <shachaf> Actually it wasn't rhymes that time, it was just the metre.
10:29:39 <Taneb> shachaf: you can fit 😚 to a double dactyl meter., I think
10:29:45 <shachaf> I was trying dactylic hexameter, and I wanted words that cross foot boundaries in particular ways.
10:30:05 * ski . o O ( Emojo bag )
10:30:11 <shachaf> KISSing face WITH closed eyes?
10:30:19 <shachaf> That sounds kind of unnatural.
10:30:54 <Taneb> Ah, I was subconsciously forcing myself to say it that way
10:31:08 <Taneb> If I relax I say "kissing FACE with closed EYES"
10:31:30 <lob_jonas> shachaf: I recommend http://wyrdplay.org/AlanBeale/CAAPR-ref.html by Alan Beale, the maintainer of 12-dict, over worse pronunciation dictionaries like http://www.speech.cs.cmu.edu/cgi-bin/cmudict
10:31:37 <shachaf> `unicode ⚯
10:31:39 <HackEso> U+26AF UNMARRIED PARTNERSHIP SYMBOL \ UTF-8: e2 9a af UTF-16BE: 26af Decimal: &#9903; \ ⚯ \ Category: So (Symbol, Other) \ Bidi: ON (Other Neutrals)
10:31:51 <shachaf> Hmm, no, even ignoring SYMBOL it doesn't work either.
10:32:05 <shachaf> lob_jonas: Oh, I was using cmudict.
10:32:29 <lob_jonas> shachaf: I didn't know about CAAPR until earlier this year either
10:32:30 <shachaf> I also used cmudict for http://slbkbs.org/major/
10:32:31 <lob_jonas> but it seems really well done
10:32:56 <shachaf> Which lets you search for https://en.wikipedia.org/wiki/Mnemonic_major_system words.
10:33:09 <lob_jonas> on the minus side, you're screwed anyway if you're trying to work with unicode character names, since they have a lot of words that aren't common english words
10:33:48 <lob_jonas> like, they name every hangul syllable and all, and you won't get the pronunciation of those from an english pronunciation dictionary
10:34:04 <ais523_> are there any Unicode character names that contain "words" that aren't actually a word in *any* language?
10:34:34 <lob_jonas> ais523: yes, there's at least one obviously typoed english word
10:35:01 <shachaf> Higgledy-piggledy / Down-pointing Triangle
10:35:27 <shachaf> The Arabic ligatures in Unicode are kind of ridiculous. I was looking at them the other day.
10:35:31 <ais523_> OK, I agree that "down-pointing triangle" is a double dactyl
10:35:35 <ais523_> `unicode down-pointing triangle
10:35:37 <HackEso> U+23F7 BLACK MEDIUM DOWN-POINTING TRIANGLE \ UTF-8: e2 8f b7 UTF-16BE: 23f7 Decimal: &#9207; \ ⏷ \ Category: So (Symbol, Other) \ Bidi: ON (Other Neutrals) \ \ U+25BC BLACK DOWN-POINTING TRIANGLE \ UTF-8: e2 96 bc UTF-16BE: 25bc Decimal: &#9660; \ ▼ \ Category: So (Symbol, Other) \ Bidi: ON (Other Neutrals) \ \ U+25BD WHITE DOWN-POINTING TRIANGLE \ UTF-8: e2 96 bd UTF-16BE: 25bd Decimal: &#9661; \ ▽ \ Category: So (Symbol, Other) \ Bidi: ON (
10:35:42 <shachaf> Unfortunately it's not a code point.
10:35:49 <ais523_> oh, but apparently it isn't a code point
10:36:04 <Taneb> "down pointing" is more of an antibacchius
10:36:33 <shachaf> I think there's some liberty if a reader would naturally read it as a dactyl if they're in the groove.
10:37:25 <shachaf> `unidecode ⊎
10:37:26 <HackEso> ​[U+228E MULTISET UNION]
10:37:33 <shachaf> Higgledy piggledy / Multiset Union
10:37:53 <ais523_> I used ⊎ a lot in my thesis
10:37:54 <Taneb> Isn't multiset an anapest?
10:38:15 <lob_jonas> see http://www.unicode.org/notes/tn27/tn27-4.html , especially near "BRAKCET"
10:38:21 <ais523_> but mostly think of it as "disjoint union" (which doesn't scan), or even "\uplus"
10:38:55 <ais523_> I think "multiset" sounds a little unnatural as an anapest, but the stress is first and third
10:38:57 <lob_jonas> ais523: really? I thought people used u-with-plus-inside to mean a multiset union
10:39:05 <lob_jonas> oh
10:39:08 <shachaf> Aha!
10:39:11 <ais523_> except in American English where it's second
10:39:19 <shachaf> `unidecode ⏘
10:39:19 <HackEso> ​[U+23D8 METRICAL TETRASEME]
10:39:27 <shachaf> Higgledy piggledy / Metrical tetraseme
10:39:46 <ais523_> (the last vowel in "multi" has an entirely different pronunciation in American English and British English, I expect that extends to "multiset")
10:40:10 <ais523_> also, isn't "metrical" stressed second?
10:40:23 <shachaf> metRIcal?
10:40:26 <shachaf> I've never heard that.
10:40:29 <ais523_> if I try to pronounce it stressed first, the third syllable more or less completely disappears
10:40:33 <ais523_> even a schwa is too long
10:40:43 <Taneb> ais523_: I definitely pronounce it stressed first
10:40:50 <Taneb> METric'l
10:40:56 <shachaf> I admit it sounds more like "metricle" but it's still three syllables in my mouth.
10:41:26 <ais523_> "MET-tric-" and then about the softest possible "l" is what it ends up like for me
10:41:28 <ais523_> and that just sounds weird
10:41:35 <shachaf> If only ⏔ worked.
10:42:07 <shachaf> Also when I say "in my mouth" I mean in my mental model of my mouth, because I didn't actually pronounce it.
10:42:16 <ais523_> "met-RIC-əl" is a lot more natural
10:42:29 <shachaf> `unicode ⏝
10:42:30 <HackEso> U+23DD BOTTOM PARENTHESIS \ UTF-8: e2 8f 9d UTF-16BE: 23dd Decimal: &#9181; \ ⏝ \ Category: Sm (Symbol, Math) \ Bidi: ON (Other Neutrals)
10:42:38 <ais523_> `unidecode ⏔
10:42:39 <HackEso> ​[U+23D4 METRICAL LONG OVER TWO SHORTS]
10:43:27 <Taneb> ais523_: I find stressed second very unnatural
10:43:42 <ais523_> hmm, maybe it's an accent difference
10:43:48 <shachaf> I agreeneb.
10:43:49 <ais523_> I don't stress second that much, just more than first
10:43:55 <shachaf> And I never met treacle I didn't like.
10:44:12 <ais523_> it's definitely less of a stress than "treacle"
10:44:22 <shachaf> (I don't think I've ever met treacle, though. I only vaguely know it as a candyish or sugary thing.)
10:44:35 <Taneb> shachaf: I think treacle is the same thing as molasses, if that helps
10:44:40 <Taneb> That said, I've not had either
10:44:53 <lob_jonas> oh no. #esoteric is trying to make English poetry. we're doomed.
10:45:07 <ais523_> I think I once ate a cake for which treacle was an ingredient? not sure though
10:45:13 <shachaf> It helps a bit.
10:45:19 <shachaf> I hear molasses is pretty dangerous.
10:45:58 <shachaf> "Bottom parenthesis" is surely a double dactyl, though.
10:46:14 * ski . o O ( "Trapped in treaps of treacle." -- some paper, i forgot which )
10:46:22 <lob_jonas> which fungot style writes poetry?
10:46:22 <fungot> lob_jonas: if one day somebody visits a store, and any patches you send will be dropped
10:46:25 <lob_jonas> ^styles
10:46:26 <ais523_> the word break is in the wrong place, but otherewise yes
10:46:27 <Taneb> shachaf: that's a triple iamb, for me?
10:46:35 <Taneb> No, I'm wrong
10:46:50 <Taneb> BOTtom parENtheSIS for me
10:47:08 <shachaf> BOTtom paRENthebro
10:47:17 <ais523_> that's the same way that other people are pronouncing it, except you stressed "SIS"
10:47:20 <ais523_> and it's really not that stressed
10:47:29 <shachaf> `icode ⨹
10:47:30 <HackEso> ​[U+2A39 PLUS SIGN IN TRIANGLE]
10:47:37 <Taneb> It's as stressed as the EN for me
10:47:47 <ais523_> maybe more than "the", but secondary stress doesn't normally factor into this sort of poetry discussion
10:48:12 <shachaf> Apparently the original motivation of Arabic ligatures wasn't actually to be used in Arabic.
10:48:18 <shachaf> It was to be used in Urdu?
10:48:27 <ais523_> I think ⨹ is cheating slightly because the first meter unit is made out of three different words, and it's hard to leave two whole words unstressed like that
10:49:24 <Taneb> Plus sign is a spondee for me?
10:49:53 <shachaf> `icode ⸒
10:49:54 <HackEso> ​[U+2E12 HYPODIASTOLE]
10:49:59 <shachaf> That one is even one word.
10:50:20 <Taneb> Maybe this explains why I wasn't very good at the poetry sections in my Latin A-level
10:50:39 <Taneb> I'm going to unirc for a bit
10:51:18 <shachaf> `unicode ⸻
10:51:20 <HackEso> U+2E3B THREE-EM DASH \ UTF-8: e2 b8 bb UTF-16BE: 2e3b Decimal: &#11835; \ ⸻ \ Category: Pd (Punctuation, Dash) \ Bidi: ON (Other Neutrals)
10:51:23 <shachaf> This is ridiculous.
10:51:23 <ais523_> OK, after thinking about it a bit more, ⊎ is fundamentally a multiset union operation
10:51:33 <shachaf> THREE-EM dash?
10:51:40 <ais523_> hmm, how wide is U+2E3B in the typical monospace character set?
10:51:47 <shachaf> That's so many ems. I can't believe I was limiting myself to single em-dashes.
10:51:56 <shachaf> My terminal displays it triple-width.
10:52:14 <shachaf>
10:52:15 <shachaf> xxx
10:52:18 <shachaf> Hmm, no.
10:52:21 <shachaf>
10:52:22 <shachaf> xxxx
10:52:23 <ais523_> I was working on a wcwidth implementation based on the official Unicode documentation, but that doesn't leave any situation in which a single character can be drawn wider than fullwidth (= wcwidth 2)
10:52:29 <shachaf> Quadruple-width.
10:52:36 <ais523_>
10:52:37 <ais523_> mmm
10:52:48 <ais523_> hmm, it renders wider than three "m"s for me
10:52:48 <shachaf> ...I suppose m is more appropriate there.
10:52:51 <lob_jonas> check oren's font maybe
10:52:54 <lob_jonas> `? font
10:52:55 <HackEso> ​#esoteric bitmap fonts include: \oren\'s font http://www.orenwatson.be/fontdemo.htm , lifthrasiir's font https://github.com/lifthrasiir/unison/ , b_jonas's font http://www.math.bme.hu/~ambrus/pu/fecupboard20-c.pcf.gz , fizzie's font https://github.com/fis/rfk86/tree/master/web/font , FireFly's fonts http://xen.firefly.nu/up/fonts/
10:53:05 <shachaf>
10:53:06 <shachaf> mm
10:53:09 <lob_jonas> it's single-width in oren's font
10:53:09 <shachaf>
10:53:10 <shachaf> mmm
10:55:14 <shachaf> By the way: If you're talking about English, is there any use to names like "dactyl", "iamb", "spondee", etc.?
10:55:31 <shachaf> They seem like words that are bad for communicating.
10:55:40 <shachaf> Instead of "iamb", I'll write xX
10:55:47 <shachaf> And Xxx for dactyl, and so on.
10:56:35 <cpressey> They sounds like names of towns in Wales and Scotland
10:57:05 <shachaf> i,i spondeeneous combustion
10:57:05 * ski . o O ( Upper and lower case <https://pbs.twimg.com/media/Dbo0pbiWkAErHPD?format=jpg&name=4096x4096> )
10:57:12 <lob_jonas> SPACE, COMMA, COLON, TILDE, MACRON, CARON, BREVE, OGONEK, HYPHEN, DAGGER, BULLET, PRIME, CARET, NABLA, ANGLE, UNION, RATIO, EXCESS, MODELS, TRUE, FORCES, XOR, NAND, NOR, BOWTIE, HOUSE, ARC, SECTOR, WATCH, FROWN, SMILE, SLOPE, FUSE, CLOUD, COMET, SUN, ANKH, EARTH, SATURN, URANUS, PLUTO, ARIES, TAURUS, GEMINI, CANCER, LEO, VIRGO, LIBRA, PISCES,
10:57:13 <lob_jonas> ANCHOR, SCALES, FLOWER, GEAR, COFFIN, NEUTER, CERES, PALLAS, JUNO, VESTA, CHIRON, RAIN, PICK, CHAINS, CHURCH, CASTLE, FERRY, SKIER, TENT, PENCIL, TINY, MINY, JOIN, HYGIEA, PHOLUS, NESSUS, CUPIDO, HADES, ZEUS, KRONOS, SEDNA, FOGGY, FOG, TACO, CACTUS, TULIP, ROSE, HERB, TOMATO, GRAPES, MELON, LEMON, BANANA, PEAR, PEACH, BREAD, DANGO, ODEN, SUSHI,
10:57:13 <lob_jonas> COOKIE, CANDY, RIBBON, CINEMA, TICKET, GUITAR, VIOLIN, RUNNER, SURFER, TROPHY, GOLFER, DESERT, BANK, HOTEL, SCHOOL, LABEL, RAT, MOUSE, OX, COW, TIGER, RABBIT, CAT, DRAGON, WHALE, SNAIL, SNAKE, HORSE, RAM, GOAT, SHEEP, MONKEY, DOG, PIG, BOAR, BUG, ANT, FISH, TURTLE, BIRD, KOALA, POODLE, EYES, EYE, EAR, NOSE, MOUTH, TONGUE, CROWN, JEANS, DRESS,
10:57:14 <lob_jonas> KIMONO, BIKINI, PURSE, POUCH, BOY, GIRL, MAN, WOMAN, FAMILY, BABY, GHOST, IMP, SKULL, DANCER, PILL, RING, KISS, BOMB, SEAT, DVD, LEDGER, BOOKS, SCROLL, MEMO, PAGER, CAMERA, RADIO, KEY, LOCK, BELL, FIRE, WRENCH, HAMMER, HOCHO, PISTOL, KAABA, MOSQUE, BOOK, CANDLE, HOLE, SPIDER, SCREEN, FOLDER, NOTE, PAGE, PAGES, LIPS, MOYAI, ROCKET, TRAIN, METRO,
10:57:14 <lob_jonas> TRAM, BUS, TAXI, SHIP, DOOR, TOILET, SHOWER, BATH, BED, STUPA, PAGODA, SHIELD, CANOE, SLED, SELFIE, PRINCE, SHRUG, FENCER, SPOON, RIFLE, BACON, POTATO, CARROT, EGG, PIE, MANGO, BAGEL, CRAB, TURKEY, EAGLE, DUCK, BAT, SHARK, OWL, DEER, LIZARD, SHRIMP, SQUID, T-REX, LLAMA, PARROT, BADGER, SWAN, BONE, LEG, FOOT, TOOTH, ADULT, CHILD, MAGE, FAIRY, ELF,
10:57:15 <lob_jonas> GENIE, ZOMBIE, BRAIN, SCARF, GLOVES, COAT, SOCKS, ABACUS, BRICK, MAGNET, BROOM, BASKET, SPONGE,
10:57:18 <ais523_> so according to glibc, 1 is the correct wcwidth for U+2E3B: https://tio.run/##VYzBCoJAFEX3fsVDEUdQaRlYbcRWklIKtRJ5M@aAjaFjBtF/Bf1NP2Jjrdyee85F94w4jgZlJRcM8mOchLv8EGf7INQMLrDuKYNVJylvvGozRyqaswGrop2jusGiZhPTuJBwKbggt4ZTGx4aQMfkXyBRkAfpKQkd0AMvS7fuUrd9ZfwucwkIa4isz@ttTfTaqrOS6CYF8647yho4lRVB2wGiJht/cctk3wpY@NpzHL8
10:57:32 <lob_jonas> ^ these are single-word unicode character names, just write a poem from them
10:57:37 * ski stares blankly
10:57:38 <lob_jonas> you don't have to work with the long names
10:57:54 <ais523_> my browser renders it at 5 monospace units wide, though
10:58:12 <ais523_> anyway. time to go
10:58:15 -!- ais523_ has quit (Quit: quit).
10:59:04 <shachaf> Please group them into equivalence classes by rhyme.
10:59:16 <lob_jonas> there's also just as many longer single-word character names, starting from AMPERSAND, including such things as DUMPLING and BLOSSOM and POPCORN
11:01:20 <lob_jonas> https://hack.esolangs.org/edit/tmp/single-word-character-names
11:03:06 <shachaf> I don't think this list of words is good for poetry.
11:03:29 <lob_jonas> yeah, there are too many verbs. hard to make complete sentences from them. let me try to find them.
11:03:31 <shachaf> Better to use some multi-word code points that contain other grammatical ingredients.
11:04:43 <int-e> hmm, new one for me: https://en.wikipedia.org/wiki/Koomey%27s_law
11:05:17 <shachaf> Why is MUSHROOM missing?
11:05:31 <shachaf> I have a poem with Unicode code points:
11:05:43 <lob_jonas> BADGER, BALLOON, BANK, BAT, BLOSSOM, BOMB, BRICK, BUG, CHICKEN, COAT, COMPLEMENT, DESERT,
11:05:49 <lob_jonas> shachaf: MUSHROOM is in the longer list
11:05:52 <lob_jonas> that I tried to paste
11:05:58 <lob_jonas> `fetch tmp/single-word-character-names https://hack.esolangs.org/get/tmp/single-word-character-names
11:06:00 <HackEso> 2019-09-16 11:05:59 URL:https://hack.esolangs.org/get/tmp/single-word-character-names [4459/4459] -> "tmp/single-word-character-names" [1]
11:06:00 <cpressey> int-e: Moore's law is much more well-publicized
11:06:18 <shachaf> BADGER, BADGER, BADGER, BADGER, BADGER, BADGER, BADGER, BADGER, BADGER, BADGER, BADGER, BADGER, MUSHROOM, MUSHROOM
11:07:10 <shachaf> int-e: Fancy.
11:07:12 <lob_jonas> DIVIDES (the first one that's primarily a verb), DOCUMENT, DRESS, DUCK, ENVELOPE, ESTIMATES,
11:07:13 <int-e> cpressey: and less relevant, somehow.
11:08:48 <lob_jonas> FORCES, FROWN, FUSE, GHOST, HAMMER, HOUSE, INCREMENT (second), INTERCALATE (third), JOIN (fourth, this is getting better),
11:10:24 <lob_jonas> KISS (fifth), LABEL, LOCK (sixth), MAN, MAXIMIZE (seventh), MINIMIZE (eighth; though I wonder if I should have counted BLOSSOM),
11:11:35 <cpressey> tbf BADGER BALLOON BANK BAT BLOSSOM and BOMB are all verbs too
11:11:56 <cpressey> and DIVIDES can easily be a plural noun
11:12:04 <lob_jonas> NEUTER, NOTE, OVERLAP (ninth), OVERLINE, PACKAGE, PAGE, PAGES, PARROT,
11:12:18 <lob_jonas> cpressey: yes, I did list BADGER BALLOON BANK BAT BLOSSOM as the first ones that can be verbs
11:13:07 <cpressey> lob_jonas: sorry, I wasn't paying attention
11:13:34 <fizzie> `quote alphanumeric
11:13:35 <HackEso> 1132) <shachaf> A Swede who was in #esoteric / Thought his rhymes were a little generic. / "I might use, in my prose, / ꙮs, / But my poetry's alphanumeric."
11:15:18 <lob_jonas> PENCIL, PICK (tenth primarily verb), PRECEDES, RING, ROSE (eleventh), SCALES, SCHOOL, SCREEN, SCROLL (12th), SEAT, SEGMENT, SHILED, SHIP, SHOWER, SHRUG (13th), SMILE (14th), SNAKE, SPACE, SPARKLE (15th), SPARKLES (16th),
11:17:12 <shachaf> lob_jonas: I was very confused by this CAAPR file.
11:17:16 <lob_jonas> STATION, SUCCEEDS (17th), TICKET, TONGUE, TRAIN, TRUMPET, WATCH (18th).
11:17:27 <lob_jonas> shachaf: read its documentation, it becomes more clear from that
11:17:28 <shachaf> But it turns out my editor was misrendering it.
11:17:39 <shachaf> So most characters weren't showing up.
11:17:44 <lob_jonas> shachaf: it's iso-8859-1 encoded
11:18:05 <shachaf> Right, I just figured that out.
11:18:28 <lob_jonas> so that's like fifty verbs usable, and if I count BLOSSOM as primarily a verb, then 19 of them are primarily a verb
11:18:45 <lob_jonas> there are probably a few more that I just don't know
11:19:48 -!- ArthurStrong has quit (Quit: leaving).
11:20:18 <lob_jonas> does Moore's law say that the number of emojis double every two years, if you include the ones that are encoded as a combination of more than one unicode code point?
11:22:39 <cpressey> lob_jonas: This is a notable open problem in Emoji Science, we need to find an eminent Emoji Scientist to answer it
11:22:43 <int-e> `grWp moore
11:22:45 <HackEso> No output.
11:24:22 <int-e> Is anybody garbage collecting the emojis that nobody ever uses?
11:24:39 <int-e> That way, maybe, we won't run out of unicode points for them ;)
11:24:51 <shachaf> Someone proposed a capybara emojo, I was happy to hear.
11:24:56 <shachaf> I was going to do it myself otherwise.
11:25:15 <shachaf> It's currently pending review as part of a larger group of emoji.
11:25:56 <shachaf> lob_jonas: What's the benefit of this over cmudict?
11:26:00 <lob_jonas> we can at least make some of those ambiguously parsing news headlines from these. FORCES DESERT, JOIN OPPOSITION.
11:26:04 <shachaf> cmudict was much easier for me to read.
11:26:49 <lob_jonas> shachaf: but alan-pron is more informative if you actually want to use it, and doesn't lack as many common words
11:27:35 <lob_jonas> SPACE SUPERHERO
11:29:30 <shachaf> This American dictionary clearly doesn't match some American pronunciations.
11:29:44 <shachaf> For example, it says: comfortable : ku'mf°rtøb°L
11:30:51 <lob_jonas> shachaf: some words have more than one possible pronunciation, and it doesn't generally list all possibilities
11:31:24 <shachaf> Oh. Sometimes it lists multiple pronunciations, but maybe only for words with different meanings.
11:31:41 <shachaf> cmudict has it wrong too: COMFORTABLE K AH1 M F ER0 T AH0 B AH0 L
11:31:54 <shachaf> Hmm, maybe I'm wrong.
11:32:05 <shachaf> Some people pronounce it a completely bizarro way, which I thought was standard.
11:32:08 <lob_jonas> yes, multiple pronunciations only when they can make a difference within one speaker, or implicitly in a few symbols that mean vowels that can be pronounced in multiple ways
11:33:51 <lob_jonas> shachaf: in any case, the docs of alan-pron describes which dictionaries it's derived from, so you can always check those sources and see what they say, and complain to Alan in email about mistakes. I know he reads emails, he fixed one doc-bug on my request.
11:34:14 <lob_jonas> you know how when a maintainer replies meaningfully to bug reports, that really increases my confidence in how much I can trust something like this, right/
11:34:47 <shachaf> @time
11:34:51 <lambdabot> Local time for shachaf is Mon Sep 16 04:34:48 2019
11:34:53 <shachaf> I'm going to sleep.
11:35:24 <shachaf> cmudict has about 4 times as many entries
11:36:00 <lob_jonas> shachaf: and yet misses lots of common words;
11:36:14 <fizzie> cuvoald710-0.2.scm:( "comfortable" j ( k uh1 m f t @ b l ) ((pos "OA%" ) ))
11:36:39 <lob_jonas> whereas Alan compiled those small english dictionaries in 12dicts, and used reputable printed dictionaries to compile this, including Wells's, so it should miss fewer common words
11:36:40 <cpressey> That's an impressive constant cluster there, I didn't realize!
11:37:04 <cpressey> *consonant
11:37:40 <cpressey> With all those consonants comfortably clustered together like that
11:38:12 <fizzie> I couldn't find where I stashed a bunch of pronunciation dictionaries I was playing with, but 'locate' found the above as part of Festival.
11:55:43 <lob_jonas> `unidecode 👥🕏🥩🕊😂🥛🍃⨔🕴🙌🧻🤣🥘🗾🗽
11:55:44 <HackEso> ​[U+1F465 BUSTS IN SILHOUETTE] [U+1F54F BOWL OF HYGIEIA] [U+1F969 CUT OF MEAT] [U+1F54A DOVE OF PEACE] [U+1F602 FACE WITH TEARS OF JOY] [U+1F95B GLASS OF MILK] [U+1F343 LEAF FLUTTERING IN WIND] [U+2A14 LINE INTEGRATION NOT INCLUDING THE POLE] [U+1F574 MAN IN BUSINESS SUIT LEVITATING] [U+1F64C PERSON RAISING BOTH HANDS IN CELEBRATION]
11:55:52 <lob_jonas> `unidecode 🙌🧻🤣🥘🗾🗽
11:55:54 <HackEso> ​[U+1F64C PERSON RAISING BOTH HANDS IN CELEBRATION] [U+1F9FB ROLL OF PAPER] [U+1F923 ROLLING ON THE FLOOR LAUGHING] [U+1F958 SHALLOW PAN OF FOOD] [U+1F5FE SILHOUETTE OF JAPAN] [U+1F5FD STATUE OF LIBERTY]
11:57:24 <fizzie> Is that a cohesive storyline that I'm just not following, or are those characters releated to each other in some other way?
11:57:45 <lob_jonas> fizzie: other way
11:58:01 <lob_jonas> I thought of what a poem would need other than verbs that is rare in character names
11:58:13 <lob_jonas> the answer is common words: "the", "of", "in", "to"
11:58:21 <lob_jonas> so all of these character names have one of those common words
11:58:40 <lob_jonas> there are much more such character names, this is just a small selection
11:59:06 <lob_jonas> some of them, like "LEAF FLUTTERING IN WIND", are poetic
11:59:16 <lob_jonas> some, like "LINE INTEGRATION NOT INCLUDING THE POLE", aren't quite
11:59:51 <lob_jonas> also the character names are mostly in alphabetic order
12:01:09 <lob_jonas> "SHALLOW PAN OF FOOD" could also work in a poem
12:01:31 <lob_jonas> "SILHOUETTE OF JAPAN" I just found that one strange because of what we said about flag emojis earlier
12:06:21 <cpressey> DID YOU KNOW THAT NAMES OF UNICODE CHARACTERS MUST BE UPPERCASE SO THAT THEY CAN BE TRANSMITTED CORRECTLY IN BAUDOT
12:06:26 <lob_jonas> despite that I think theflag situation is stupid
12:08:01 <Lykaina> cpressey: baudot is still used?
12:09:45 <lob_jonas> here? sure
12:10:58 <Lykaina> is baudot ITA-1?
12:12:39 <Lykaina> oh, ITA1
12:13:12 <Lykaina> apparently there's a difference
12:17:59 <Lykaina> ITA2 is still used in telecommunications devices for the deaf (TDD), telex, and some amateur radio applications, such as radioteletype ("RTTY").
12:18:28 <Lykaina> from https://en.wikipedia.org/wiki/Baudot_code
12:19:22 <lob_jonas> Lykaina: by baudot I just vaguely mean any of the similar codes
12:19:34 <lob_jonas> there's a lot of locally used variations
12:19:59 <Lykaina> 5-bit codes
12:20:04 <lob_jonas> they form a huge family, just like how there are a lot of codes similar to ascii and lots of codes similar to ebcdic
12:20:30 <lob_jonas> yes, they come from five-bit telexes and five-hole tape
12:20:41 <Lykaina> ebcdic was an encryption standandard
12:21:00 <lob_jonas> just like how ascii is related to seven-bit bytes and ebcdic from 12 line punch cards
12:22:08 <lob_jonas> you can tell the difference because in ascii-related codes, most letters are arranged in alphabetic order; in ebcdic-like codes, they're still in alphabetic order but grouped to nines; in baudot they're in a different order where the most frequent characters have few holes
12:22:23 <lob_jonas> or few bits set
12:22:33 <Lykaina> oh
12:22:36 <lob_jonas> admittedly that's true to ebcdic too, but in a different way
12:23:15 <lob_jonas> in ebcdic, usually there's zero or one bits set from among the 2..9 holes, and ideally as few as possible from the shift holes 12, 11, 10, 1
12:23:32 <lob_jonas> the holes are numbered 12, 11, 10, 1, 2, 3, 4, 5, 6, 7, 8, 9 iirc
12:23:44 <lob_jonas> which admittedly isn't that much worse than 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K, 1
12:24:07 <lob_jonas> or 7, 8, 9, u, o, K, 10, A
12:24:13 <lob_jonas> or any of the other ridiculous numberings
12:25:29 <lob_jonas> the ones with C, B, A, S, M, MM, MK, MV, GM; the ones with C, B, A, A+, A++, A+++; the ones with D, C, B, A, AA, AAA
12:25:57 <lob_jonas> and even the ones with 000, 00, 0, 1, 2, 3, 4
12:27:28 <lob_jonas> surely no battery will be smaller than the "mini" A battery, so let's name that from the _first_ letter of the alphabet. there could be larger batteries than the goliath D battery, so let's reserve all the letters E..Z for them.
12:29:03 <Lykaina> i've never actually seen an A battery
12:29:30 <Lykaina> N is smaller than AAA
12:29:33 <lob_jonas> Lykaina: yes, those aren't used anymore
12:29:38 <lob_jonas> https://en.wikipedia.org/wiki/List_of_battery_sizes lists a lot
12:29:43 <lob_jonas> history is complicated
12:30:49 <Lykaina> cr2016/2025/2032 are named after their size
12:31:29 <lob_jonas> and note from the table that most battery sizes have lots of aliases, because every brand calls them different
12:31:42 <lob_jonas> I have used like a dozen different battery sizes, and got confused among them several times
12:32:15 <lob_jonas> note that that article doesn't even have a photo of an A battery
12:33:25 <lob_jonas> which basically means that it doesn't exist anymore
12:41:16 <Lykaina> i had a dream that i got a series of comic books that looked and worked like 2-way frs/gmrs radios.
12:42:02 <Lykaina> dreams are weird
12:47:52 <esowiki> [[2/9 of an esolang]] https://esolangs.org/w/index.php?diff=66203&oldid=65104 * YamTokTpaFa * (+9) +WIP
12:48:32 -!- ais523 has joined.
12:50:41 <Lykaina> hi ais523
12:51:04 <ais523> hello
12:51:15 <ais523> Baudot is used in a few esolangs
12:51:18 <ais523> mostly the US-TTY variation
12:51:31 <ais523> both CLC-INTERCAL and 7 use it as part of their character encoding
12:52:11 <ais523> 7 does it because it's normally more efficient than ASCII at storing common strings (in terms of the number of bits required to represent the input), especially when workinig in base 6
12:52:22 <ais523> whereas I think CLC-INTERCAL just does it to be perverse
12:52:41 <Taneb> That's why INTERCAL does most things that it does
12:53:04 <ais523> well, yes
12:53:14 <ais523> the aim of INTERCAL is to do things differently from other languages
12:53:41 <ais523> it'll do things better if it can, but normally it does things worse because all the better options have already been taken
12:54:03 <ais523> for example, there is a POSIX standard for tarballs that basically nobody cares about or follows
12:54:42 <ais523> but it's backwards compatible with basically any `tar` implementation (and more modern `tar` implementations actually know how to read it, just in case someone decides to produce a tarball in that format)
12:54:47 <ais523> so I've been using it for C-INTERCAL's tarballs
12:55:36 <Lykaina> pax?
12:55:57 <ais523> yes
12:59:03 <Lykaina> i'm relearning how to play go
12:59:47 <Lykaina> i say relearning because i have a vague memory of me and Sgeo playing.
12:59:58 <ais523> wow, now I'm looking at the specification of the original tar format, without the modern improvements
13:00:06 <ais523> it's pretty insane
13:00:14 <ais523> e.g. the header is 257 bytes long, padded out to 512 bytes
13:00:43 <ais523> (512-byte alignment was likely considered necessary at the time, so technically there's no wasted space, but that 257 really hurts)
13:01:52 <ais523> the number encoding is ASCII-encoded octal, with a fixed length, but the last character of the fixed-length field has to be either NUL or a space
13:03:42 <lob_jonas> ah yes, tar supports like a hundred historical formats. but zip is even more complicated, with all sorts of new compression methods and extensions to store more file information.
13:04:37 <lob_jonas> ais523: gnu should have just renamed the format, rather than pretend that it's a new version of tar. they did it right when they created zlib and gzip, and zlib has grown to become the single most installed software library ever, as far as we can tell.
13:05:22 <lob_jonas> I don't want to know whether it became the most installed one before or after they fixed the stupid security bugs in it.
13:05:41 <ais523> lob_jonas: aimake actually assumes the presence of zlib's header files
13:06:04 <ais523> because some operating systems use a different location for nonstandard header files, and aimake needs to be able to find them too
13:06:21 <ais523> so I needed at least one nonstandard header file that I could assume to be installed, zlib.h seemed like the best option
13:07:03 <Lykaina> i gotta wake up now
13:09:05 <lob_jonas> and these days it has dozens of alternate implementations of zlib compression and decompression, both production and esoteric
13:11:27 <ais523> that said, I think I released at least one version of C-INTERCAL as .shar, for old times' sake
13:11:31 <ais523> (to Usenet, obviously)
13:13:09 <lob_jonas> ``` tar --help | sed -n '/Archive format se/,$p'
13:13:10 <HackEso> ​ Archive format selection: \ \ -H, --format=FORMAT create archive of the given format \ \ FORMAT is one of the following: \ \ gnu GNU tar 1.13.x format \ oldgnu GNU format as per tar <= 1.12 \ pax POSIX 1003.1-2001 (pax) format \ posix same as pax \ ustar POSIX 1003.1-1988 (ustar) format \ v7 old V7
13:15:38 <lob_jonas> and that's just the ones it can write.
13:24:00 <ais523> another thing I learned today: ar is a plaintext format (other than the data of the files it contains, which is stored literally)
13:24:32 <ais523> which is ironic given that nowadays it's basically only used for storing object files (also, IIRC, .deb's outermost wrapper is in ar format)
13:25:18 <Lykaina> ais523: weren't you in agora?
13:25:28 <Lykaina> i recognize the name
13:26:29 <ais523> yes
13:26:37 <esowiki> [[Kleinfunge]] https://esolangs.org/w/index.php?diff=66204&oldid=45154 * YamTokTpaFa * (+53)
13:26:42 <Lykaina> i think i was SCat then.
13:26:53 <ais523> I still sort-of am in spirit, but mostly just post in a-d and am not a player
13:27:09 <ais523> (I made an ambiguous registration attempt a while back but it was ruled to have failed)
13:27:10 <lob_jonas> ais523: the chunked transfer encoding on HTTP is also a text format, even when the contents aren't text. the chunk lengths are written in ascii-encoded hexadecimal. PPM header is text too, even when the body is binary.
13:28:05 <lob_jonas> MIME multipart can also contain binary data with ascii text headings.
13:28:51 <lob_jonas> in fact, even HTTP headers are text, when the bodies can be any binary content, and you can have a new header after the end of a body for a persistent connection, if either the Content-Length or the Transfer-Encoding tells where the previous body ends.
13:29:06 <lob_jonas> (this applies both for HTTP requests and responses, they're basically the same format)
13:29:17 <lob_jonas> so I don't much find text header formats too strange
13:29:52 -!- imode has quit (Ping timeout: 265 seconds).
13:29:55 <lob_jonas> there are also some binary formats like PNG and sqlite where the magic numbers in the header contain some ascii text, just to make it easier to identify the file type at a glance
13:30:30 <lob_jonas> even bmp and exe and elf are like that, but there the text is only two or three bytes, and for elf it starts at offset 1
13:30:40 <lob_jonas> iirc
13:32:01 <Lykaina> omg, did i actually store live quarantined virii on a hard drive? i must have been really crazy then
13:32:31 <Lykaina> maybe i was just too lazy to clean out the antivirus
13:33:44 -!- xkapastel has joined.
13:38:46 <Lykaina> i have fragmented memories of my past
13:39:01 <esowiki> [[Policy Policy]] M https://esolangs.org/w/index.php?diff=66205&oldid=66202 * A * (+964)
13:40:37 <Lykaina> like i didn't know i ever played Go till i started trying to remember my interactions with Sgeo in college.
13:40:55 <FireFly> heh
13:42:57 <Taneb> I have played go on at least one occasion!
13:43:18 <Lykaina> I met them at the Green Chair Club.
13:43:27 <Taneb> I understand enough of it to know that I am really bad at the game
13:43:43 <Taneb> I'm equally bad at the programming language, probably
13:43:45 <Lykaina> 1000 kyu here too
13:44:12 <Lykaina> i think that means "i suck at the game"
13:44:37 <Taneb> Maybe if we ever run into each other we should have a game
13:44:51 <Lykaina> i don't remember the rules
13:45:00 <Taneb> Then we are equally disadvantaged
13:45:16 <cpressey> Hmm, are there any esolangs based on Go (the board game)?
13:45:28 <Taneb> Not to my knowlege
13:45:37 <ais523> if there are, they were most likely created by zzo38
13:45:39 <Lykaina> what about chess?
13:45:42 <cpressey> istr seeing a paper showing that (infinite) Go is PSPACE-complete
13:46:07 <ais523> yes, that paper is basically an esolang definition in its own right
13:46:26 <ais523> also, PSPACE-completeness would imply generalized, not infinite, wouldn't it?
13:46:48 <ais523> the infinite version is likely to be TC with a plausible definition of how to arrange the initial board and what the win conditions are
13:46:54 <cpressey> Right, I misspoke when I said "infinite". I'm very sorry.
13:47:15 <lob_jonas> I have seen someone else who tried to teach Go to young people to popularize it. does that count?
13:47:33 <ais523> you could make it work by marking some of the stones of each player, and you win by capturing a marked stone
13:48:00 <Lykaina> i think my sanity level got improved after i realized I was misgendered at birth.
13:48:08 <lob_jonas> `? go
13:48:11 <HackEso> Go is a common irregular verbal game programming language invented by the Germanic Taneb tribes catching monsters in the strategic territories of East Asia.
13:48:13 <Taneb> Lykaina: often the way
13:49:40 <lob_jonas> win by capturing a marked stone => there's a variant rule for Risk the board game like that, where every player names a territory as their capital, and if it's continuously not controlled by that player for three turns, then they lose
13:49:59 <lob_jonas> and the capitals are publci
13:50:13 <Lykaina> pubic?
13:50:23 <lob_jonas> public
13:50:27 -!- imode has joined.
13:50:29 <Lykaina> sorry
13:53:19 <Lykaina> you know it costs over $200 to change your name in the state i live in?
13:53:33 <Taneb> That's a whole bunch
13:53:40 <Taneb> In the UK it's free if you know what you're doing
13:54:07 <lob_jonas> Lykaina: is that for an adult to change their name?
13:54:16 <Lykaina> yes
13:55:01 <lob_jonas> could you just get named differently in a different state where that's simpler, then come back with the identifying documents from that state to prove that you've changed your name, to get the change accepted by this state easiliy?
13:56:23 <Lykaina> i use my chosen name so much that i kinda have to change it to it. Hell, i type copyright notices for essolangs with my chosen name, not my deadname.
13:57:14 <ais523> IIRC in the UK the main requirement to have your name legally changed is that you convince sufficiently many people to interact with you using it
13:57:36 -!- user24 has joined.
13:57:48 <Taneb> ais523: there's a thingy with a standard wording that you have to fill in in the presence of witnesses
13:58:14 <ais523> Taneb: yes, that's a fairly easily complied-with requirement though
13:58:27 <Taneb> That's the only requirement
13:58:42 <Taneb> (in England and Wales)
13:58:57 <lob_jonas> ais523: that's the officially recommended way, but isn't it easier everywhere to just get id documents in another country that doesn't insist that you use exactly the same name as on your previous identification documents, and then migrate that name back?
13:58:59 <Lykaina> i will have to publish my name change in the local newspaper
13:59:30 <ais523> I think many newspapers have columns for legal notices, that nobody actually reads
13:59:43 <Lykaina> except my dad...
14:00:43 <lob_jonas> ais523: are these printed newspapers or digital newspapers or both?
14:00:51 <Lykaina> that's ho he found out the neighbors were doing something asshole-ish
14:00:58 <ais523> https://en.wikipedia.org/wiki/Deed_of_change_of_name
14:01:12 <ais523> lob_jonas: at the time the laws were created, it was printed newspapers
14:02:43 <ais523> wow, so apparently if you change your name by deed poll, you don't even need to tell anyone you've changed it; all you need is the deed poll itself, which has to be notarized but doesn't have to be officially registered
14:03:28 <ais523> but there is an official process if you want, e.g., your passport changed
14:03:52 <lob_jonas> well sure, because very few institutions are allowed to issue passports
14:05:11 <lob_jonas> it's mostly some government office for permanent passports, consulates for temporary passports, and a few more for special purpose stuff, but the biggest are government offices that issue thousands of passports so they need procedures and forms
14:13:39 <lob_jonas> apparently Wob_jonas would work to get the same green as b_jonas
14:13:59 <Lykaina> you not same person?
14:14:41 <lob_jonas> I am the same person
14:14:51 <Lykaina> what i thought
14:16:05 <lob_jonas> so would wib_jonas or bb_jonas
14:16:17 -!- ais523 has changed nick to callforjudgement.
14:16:20 -!- callforjudgement has changed nick to ais523.
14:16:22 -!- ais523 has changed nick to callforjudgement.
14:16:35 -!- callforjudgement has changed nick to ais523.
14:17:00 -!- Lykaina has changed nick to SchrodingersCat.
14:17:07 -!- SchrodingersCat has changed nick to Lykaina.
14:19:08 <Lykaina> rather be a she-wolf than a semi-dead cat
14:22:56 <Lykaina> on the internet, nobody knows if you are a werewolf.
14:26:14 <cpressey> On that note, I saw a very nice full moon a few days ago. Close to the horizon, sort of amber in colour.
14:26:39 <Lykaina> howoo!
14:26:52 <ais523> cpressey: and due to a fairly well-known optical illusion, appearing larger than normal?
14:27:59 <lob_jonas> cpressey: that seems possible, because the moon was full two days ago
14:29:20 <Lykaina> cd ..
14:29:23 <Lykaina> oops
14:29:25 <Lykaina> brb
14:29:32 <lob_jonas> ``` cd ..
14:29:33 <HackEso> No output.
14:30:14 <ais523> that's like writing (cd ..) in a shellscript
14:30:25 <ais523> running it in a subshell makes it pretty pointless
14:32:34 <lob_jonas> ais523: sure. except in DOS, or to check that you have permissions to chdir there.
14:33:30 <ais523> now I'm curious about whether there's any circumstance in which cd .. might fail due to a lack of permission
14:34:01 <ais523> obviously it can fail if you're cd'ing to a filename (lack of permission, nonexistent, not a directory, probably other things I haven't thought of)
14:35:33 <lob_jonas> ais523: it sure can change
14:35:35 <ais523> I'm trying to remember what .. is internally; I think it's a hardlink, right?
14:35:36 <lob_jonas> sure can fail
14:35:49 <lob_jonas> no, .. is just handled by the file system code magicallyi
14:36:03 <lob_jonas> it used to be represented by a hardlink on some file systems, but that barely matters now
14:36:29 <lob_jonas> the kernel parses .. to mean the parent directory even if it's not stored as an explicit name in the file system
14:36:31 <ais523> the link count of a directory still reflects .. as though it were a hardlink
14:36:44 <ais523> so I think its hardlinkness is being simulated even though it's obsolete
14:37:10 <ais523> anyway, I read through the possible failure modes of chdir(1) and none of them seem to apply to a chdir to .. apart from possibly ENOMEM and EIO
14:37:41 <lob_jonas> hmm
14:38:15 <lob_jonas> ais523: that too is only on most filesystems; on some filesystems the link count of directories doesn't show anything useful
14:38:39 <lob_jonas> hmm
14:38:55 <Lykaina> back
14:39:20 <lob_jonas> maybe cd .. rarely fails to permissions because you can't read the .. directory entry if you don't have effective execute permissio to the parent directory?
14:39:26 <lob_jonas> I don't know
14:39:45 <Lykaina> cd .. would fail on the root dir, right?
14:39:54 <lob_jonas> Lykaina: not on unix, no
14:40:08 <lob_jonas> on unix, /.. is just the same as /
14:41:11 <ais523> OK, I managed to make cd .. fail to permissions
14:41:22 <ais523> by chmodding the .. in question to 000
14:41:36 <Lykaina> why?
14:42:05 <ais523> oddly, I could chmod it back without issues
14:42:10 <ais523> even by naming it as ..
14:43:10 <ais523> oh wow, I can chmod .. if I have write+search permission to the current directory, even if I have neither permission to either .. or ../..
14:43:11 <ais523> that feels like a bug
14:43:31 <ais523> and may be part of the reason why hardlinking directories is banned
14:46:13 <lob_jonas> ais523: chmod by using its absolute pass. you can't look up .. because you don't have search permissions for .. so you can't check if . exists and .. should fail if . doesn't exist
14:46:19 <lob_jonas> s/pass/path/
14:46:57 <ais523> lob_jonas: the situation is that I'm currently in directory /a/b/c/, I have no permissions to a or b (because I removed them while chdir'd into c) but I do have permissions to c
14:47:23 <ais523> I can chmod b by naming it as ".." even though I can't chmod it by naming it with its name
14:47:54 <lob_jonas> ais523: that makes sense
14:48:20 <ais523> why? I just changed the metadata of a directory I have no permissions to, with no permissions to its parent directory either
14:48:21 <lob_jonas> the permissions to c won't be re-checked if you access it through cd or a file handle, so what I said above makes no sense
14:48:36 <lob_jonas> also don't forget that the shell does some magic for cd
14:48:38 <lob_jonas> ``` help cd
14:48:40 <HackEso> cd: cd [-L|[-P [-e]] [-@]] [dir] \ Change the shell working directory. \ \ Change the current directory to DIR. The default DIR is the value of the \ HOME shell variable. \ \ The variable CDPATH defines the search path for the directory containing \ DIR. Alternative directory names in CDPATH are separated by a colon (:). \ A null directory name is the same as the current directory. If DIR begins \ with a slash (/),
14:48:41 <ais523> it's not the permissions to c that matter, it's the permissions to b
14:48:45 <lob_jonas> which involves interpreting .. specially
14:48:55 <ais523> and although magic is involved in cd, this is not a cd command, it's a chmod command
14:49:11 <lob_jonas> so that if you cd to a symlink, .. goes back to where the symlink were, because the shell pretends that that's how it works, even if that's not the kernel's idea
14:49:54 <ais523> if I have no permission to . either, then I can't chmod either . or ..
14:50:36 <lob_jonas> ``` help cd | tail -n+16
14:50:38 <HackEso> ​ Options: \ -Lforce symbolic links to be followed: resolve symbolic \ links in DIR after processing instances of `..' \ -Puse the physical directory structure without following \ symbolic links: resolve symbolic links in DIR before \ processing instances of `..' \ -eif the -P option is supplied, and the current working \ directory cannot be determined successfully, exit with \ a non-zero status \
14:50:39 <lob_jonas> try cd -P
14:50:50 <ais523> but my problem is with the apparent situation that .. is treated as being contained in the current directory and thus I can edit its metadata if I have write permission to the current directory
14:51:04 <ais523> lob_jonas: this is nothing to do with cd
14:51:14 <ais523> cd doesn't change into directories where you're missing search permission
14:51:25 <ais523> the situation can arise without using cd at all
14:51:49 <ais523> (other than the fact that your current directory needs to somehow be a few directories away from the root)
14:52:19 <ais523> the issue is that chmod, and presumably other metadata-changing commands, are allowed on .. as long as you have write permission to the current directory, even if you don't have write permission to it or its parent directory
14:53:43 <lob_jonas> ais523: hmm
14:53:55 <lob_jonas> ais523: but isn't that because you own .. ?
14:54:27 <ais523> let me set up a test for this
14:55:37 <lob_jonas> ais523: http://man7.org/linux/man-pages/man2/chmod.2.html suggests that to be able to chmod a file, when the set?id bits are not involved, what you need is to either own the file or be root
14:55:48 <lob_jonas> in this case, you own the directory, so that permission check succeeds
14:55:57 <ais523> OK, chmod is specified to allow chmodding if a) you own the file, and b) you have +x permission to all components in the path you use other than the last
14:56:16 <ais523> so the weirdness in this case is that I can specify the directory's name despite it being in a -x directory
14:56:20 <lob_jonas> yes, the latter is needed for the path lookup to succeed
14:57:02 <ais523> the permission is related to the lookup, rather than the directory itself, so if I'm already inside the directory I don't need the lookup and chmod lets me change the directory permissions because I own it
14:57:21 <lob_jonas> I started to do some tests on hackeso, but the way it runs my commands twice complicates that
14:59:17 <lob_jonas> ais523: yes, and if you have a deep hierarchy of directories, you can traverse them with either pwd or file descriptors pointing to the directories and *at functions, and the kernel doesn't need to do any checks on the whole deep path from the root to your file
14:59:48 <lob_jonas> just like how read/write doesn't try to do permission checks once you have a file open
14:59:53 <ais523> the *at API works so much better than the cwd API
15:00:09 <ais523> and the "let's just use absolute paths everywhere" API, which is massively subject to race conditions
15:00:51 <ais523> I'm glad that WASM decided to use the *at API as the only filesystem API (this is both for allowing the program to secure itself against races, and for allowing the surrounding environment to secure itself against the program)
15:01:27 <lob_jonas> ais523: isn't that because pwd doesn't work well with multithreading, and people want multithreaded programs with WASM in a threaD?
15:01:41 <ais523> pwd is basically a global variable API
15:02:00 <ais523> those always seem to turn out to be a bad idea in retrospect (often when written, too!)
15:02:35 <lob_jonas> yes, it's sort of like an implicit file descriptor that you usually can't access as a normal file descriptor, except in specific *at calls
15:04:03 <lob_jonas> you can even go between the two, open(".",O_PATH,0) to get a file descriptor from the pwd, fchdir to get the pwd from a file descriptor
15:06:37 <lob_jonas> `olist 1180
15:06:39 <HackEso> olist 1180: shachaf oerjan Sgeo FireFly boily nortti b_jonas
15:07:10 <int-e> `? password
15:07:13 <HackEso> The password of the month is ninjaed.
15:07:34 <Lykaina> `open the pod bay door
15:07:35 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: open: not found
15:07:59 <lob_jonas> the o comic is on a separate server, you can access the published strips without the password. in fact, we ring the o-bell when one of the strips becomes accessible without a password.
15:08:06 <int-e> Lykaina: I'm afraid I can't let you do that, [single-syllable version of Lykaina].
15:08:07 <lob_jonas> `whatis open
15:08:12 <HackEso> open(2) - open and possibly create a file \ open(3p) - open file relative to directory file descriptor \ open(3glibc) - Opening and Closing Files
15:09:50 <Lykaina> int-e: Lyka, but it's two syllables
15:12:32 <Lykaina> Lyka = lee-kah
15:12:54 <Lykaina> Lykaina = Lee-keh-nah
15:14:41 <Lykaina> at least, that's how i pronounce them
15:40:24 <kmc> it's an interesting name :)
15:45:58 -!- ais523 has quit (Quit: quit).
15:52:37 -!- cpressey has quit (Quit: A la prochaine.).
15:53:10 -!- xkapastel has quit (Quit: Connection closed for inactivity).
16:02:14 <arseniiv> hi all have a nice day or night
16:02:25 <Taneb> Do we get to choose?
16:02:57 <arseniiv> no it’s ⅋
16:04:37 -!- tromp has quit (Read error: Connection reset by peer).
16:04:47 <Taneb> Aww :(
16:04:56 <Taneb> Can we refuse to have a day or night at all?
16:05:02 -!- tromp has joined.
16:05:51 <arseniiv> Taneb: no; though there is a speciall offer for the first to use it to replace their copy of ⅋ with ⊕
16:06:15 -!- lob_jonas has quit (Remote host closed the connection).
16:06:22 <Taneb> I decline
16:06:35 <arseniiv> also I didn’t know linear logic jokes are that fun
16:12:23 <Lykaina> gtg
16:12:48 -!- Lykaina has quit (Quit: leaving).
16:14:08 <kmc> hello arseniiv
16:14:39 <arseniiv> kmcello!
16:17:10 <arseniiv> also I have a stupid question. I see several people and bots have something like “unaffiliated” in theirs /WHOIS info (that “is connecting from” part of output). I don’t know the proper terminology so I don’t even know what to google to know if I can change that thing myself
16:17:47 <Taneb> I think that's called a cloak
16:18:25 <fizzie> Yes: https://freenode.net/kb/answer/cloaks
16:19:02 <arseniiv> Taneb: fizzie: oh, thank you!
16:19:26 <fizzie> fungot: Do you think we should apply for an "unaffiliated/fizzie/bot/fungot" cloak for you?
16:19:26 <fungot> fizzie: who uses it apart from graphics primitives. if built correctly it actually takes less typing for bigger stuff. :) hehe... to task switch, it just the hw you're intrested in motorola fnord :)
16:19:41 <fizzie> I can't tell if that's yes or no.
16:19:49 <Taneb> I think it's a no
16:19:58 <Taneb> Who uses cloaks, apart from graphics primitives?
16:20:03 <fizzie> At least it wasn't a very enthusiastic yes.
16:20:21 <kmc> wizards? or is that more of a robe than a cloak
16:20:30 <fizzie> fungot: We will respect your right to self-determination and not do that, then.
16:20:30 <fungot> fizzie: what unholy magic is this :o fnord hours left
16:21:03 <fizzie> I've heard assassins and spies have both a cloak and a dagger.
16:21:31 <Taneb> I think these days those are more ceremonial, awarded at the graduation ceremony
16:21:31 <arseniiv> hm are there cloak categories
16:23:50 <arseniiv> . o O ( on a graduation ceremony, a party of people threw their ceremonial daggers skywards. What is the probability of each dagger striking the wrong person )
16:24:08 <arseniiv> I mean, landing on
16:24:28 <arseniiv> striking is a striking typo
16:25:19 <int-e> needs more information
16:26:07 <Taneb> 1/n I think, assuming all the unreasonable assumptions I am making
16:30:01 <int-e> arseniiv: Is there a God? Will there be a God after They've been struck by n knives? Are they a person, and if so, are they right or wrong?
16:30:41 <int-e> But I'm thinking about this too realistically, I think... in which case most knives will land between people rather than on them.
16:31:07 <int-e> And at least one person will die in a freak accident unrelated to the knives.
16:32:30 <int-e> Taneb: Making some unreasonable assumptions myself I get (1-1/n)^n ~ 1/e, or 1/0! - 1/1! + 1/2! - + ... +/- 1/n! ~= 1/e.
16:33:27 <int-e> 1/n would be the probability of getting a permutation with a single cycle of length n, but there are many more derangements than that.
16:34:59 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
16:37:53 -!- Lord_of_Life has joined.
16:41:48 <arseniiv> int-e: hmmm
16:42:09 <arseniiv> I think they is a personal pronoun, not a person
16:42:16 <arseniiv> (I’ll show myself out)
16:43:36 <arseniiv> ah now I understand why are there God-related questions
16:44:25 <arseniiv> let’s assume They are insubstantial if existent so can’t be striken by anything but cosmic grief
16:45:04 <arseniiv> <int-e> But I'm thinking about this too realistically, I think... in which case most knives will land between people rather than on them. => even if people are packed tight?
16:45:41 <arseniiv> (if considering asymptotic behavior, this should be the case)
16:46:31 -!- FreeFull has joined.
16:46:39 <arseniiv> ≈ 1/e is the classic and right answer in the limit, yes
16:47:11 <kmc> 1/e is the answer to everpthing
16:47:37 <arseniiv> (this is a classic problem with many names and formulations so I made my own)
16:47:45 <arseniiv> kmc: not e?
16:47:57 <kmc> it depends whether the answer should be less than or greater than one
16:48:10 <arseniiv> (and what about 42, certainly 42 ≠ e)
16:48:13 <arseniiv> kmc: ah!
16:49:24 <int-e> e makes a lousy probability
16:49:46 <fizzie> arseniiv: Presumably 42 = e in base 1/4(e-2).
16:50:34 <arseniiv> one cen find e positive enswer to enything with eny nonzero precision by summing powers of e
16:50:43 <int-e> But of course -80538738812075974^3 + 80435758145817515^3 + 12602123297335631^3 isn't a good probability either.
16:51:08 <arseniiv> ah I heard that!
16:53:15 <arseniiv> > Note that cloaks are a privilege, and staff have the right to deny that privilege to users if they deem necessary.
16:53:17 <lambdabot> <hint>:1:33: error: parse error on input ‘,’
16:53:20 <arseniiv> hmmm
16:53:27 <arseniiv> oh sorry lambdabot
16:53:32 <arseniiv> @botsnack
16:53:32 <lambdabot> :)
16:53:46 <int-e> @lambdabot is used to abuse.
16:53:46 <lambdabot> Unknown command, try @list
17:02:43 <arseniiv> I’m bit afraid to write them. Now I don’t know if it’s feasible
17:35:43 -!- b_jonas has joined.
17:36:21 <b_jonas> guess what. I just got dead-tree spam about scientology. this may be a first, but of course I'm not really sure because I don't read or forget spam really quickly.
17:36:55 <b_jonas> they even succeeded to make it look different enough from normal spam that I payed attention for enough time to read that it's about scientology
17:37:49 <kmc> wow
17:37:56 <kmc> there is a scientology office just up the street from me
17:38:06 <kmc> and I see them in public areas (subway stations and plazas) pretty offten
17:38:24 <kmc> though I see the Jehova's Witnesses more
17:38:45 <b_jonas> I do know they have some presence here, but I don't follow the details
17:38:47 <kmc> also on Sundays there will be a guy down in the hispanic neighborhood wearing a suit yelling into a megaphone about Jesus in spanish
17:43:24 <b_jonas> there are a lot of religious evangelist groups on the street here, both polite ones and annoying ones
17:44:15 <b_jonas> there's a big group of polite ones who stand in underpasses with some booklets, they never bother anyone and don't try to talk to people on their own initiative, their signs are attention-catching enough
17:45:40 <b_jonas> there's a really annoying group shouting and singing about how Jesus is the only way to salvation every Wednesday evening when I return from the swimming pool, they're standing in such a huge circle in the Barross tér underpass that you can't avoid them if you have to go from the Thököly side to the Kerepesi side, you have to pass between them twice as you intersect the circle twice
17:45:46 <b_jonas> they're very loud too
17:46:50 <b_jonas> such a big circle is quite a feat, because that underpass is huge and partly open, and the circle is sparse enough that they're clearly doing it deliberately
17:47:29 <b_jonas> no Spanish ones of course, but I have met a polite guy in the Blaha underpass many years ago who was explaining to me about the grace of God in English
17:54:45 -!- Phantom_Hoover has joined.
18:48:55 -!- user24 has quit (Remote host closed the connection).
18:49:16 -!- user24 has joined.
18:51:47 -!- user24_ has joined.
18:54:39 -!- user24 has quit (Ping timeout: 264 seconds).
19:22:07 -!- Sgeo has quit (Ping timeout: 245 seconds).
19:38:45 -!- user24_ has quit (Quit: Leaving).
19:43:39 <b_jonas> argh!
19:43:59 <b_jonas> ``` date "+%^08%"
19:44:01 <HackEso> 0000000%
19:44:26 <b_jonas> gnu libc's strftime accepts width and modifiers to the %% format specifier
19:45:21 <b_jonas> I want to find the start of format specifiers in a strftime format. I thought at first it would be as easy as finding all percent signs that are preceded by exactly an event number of percent signs. no. you have to parse the modifiers in full.
19:46:10 <b_jonas> ``` date "+(%08i)" # it even accepts width for invalid format specifiers, seriously
19:46:13 <HackEso> ​(0000%08i)
19:46:41 <b_jonas> "%i" would be passed through, but "%08i" pads "%08i" to 8 wide with zeroes
19:46:51 <b_jonas> ``` date "+%^i"
19:46:53 <HackEso> ​%^I
19:47:04 <b_jonas> ^ that one uppercases the passed through invalid sequence
19:50:31 <zzo38> It seem to me that it would be sensible for invalid format specifiers to be an error. Width and modifiers for %% format specifier look like OK, though, even though it seems strange and not so useful, it still makes sense that it will work.
19:51:53 <b_jonas> zzo38: what kind of error?
19:52:39 <b_jonas> note that it makes sense for strftime to allow untrusted format strings as input, so that eg. a web form can let the user type any locale name and format string that they want to see timestamps formatted in
19:52:57 <zzo38> I don't know what kind of error.
19:53:16 <b_jonas> it would make sense to not apply the modifiers to the passed through invalid format escapes I think
19:53:28 <b_jonas> and to consider double percent with anything between invalid
19:53:50 <b_jonas> hmm no, even then it wouldn't be so simple
19:54:58 <b_jonas> ideally make the double precent invalid, but in a way where the second percent string starts a new format specifier, so even "%0%B" is turned to "%0" followed by the month name
19:57:22 <b_jonas> I guess I'll just make a half-solution that works on sane format strings, and gives garbage but doesn't segfault on general format strings
19:59:41 <zzo38> Maybe it should return 0 if an invalid format specifier is included, because that is what the man page says it otherwise does in case of an error. (But, it can also return 0 if it is empty. Still, it shouldn't be a problem, since it is easy to see if it is empty, and it is unlikely that you want %p by itself anyways; if you do, then you probably don't care why it is zero.)
20:02:00 <b_jonas> ``` date "+(%:z)(%8:z)(%:8z)" # oh, that's even funnier
20:02:06 <HackEso> ​(+00:00)(+0000:00)(%:8z)
20:02:19 <zzo38> (If it is entered by a user and the program wants to check for an error but does not check that it is empty, then, depending on the application, the user might put in a space, or a Unicode zero width space (on a web form), etc)
20:02:23 <b_jonas> "in case of an error"? what error? strftime can't give an error, can it?
20:03:17 <zzo38> I suppose one error might be that it is too long and won't fit in the provided buffer; maybe there are other errors too I don't know
20:04:46 <b_jonas> hmm, you'er right, it returns 0 if the string is too long for the buffer
20:05:17 <zzo38> I suppose %5Y is good for the Long Now Foundation
20:07:34 <b_jonas> I'll just parse by assuming each format escape is valid, in which case I can match them by /(%[-#0-9:EO^_]*[^-#0-9:EO^_])/
20:07:51 <b_jonas> no, actually
20:08:07 <b_jonas> make that /(%[-#0-9:EO^_]*[^-#0-9:EO^_]?)/ so it matches truncated ones at the end
20:12:06 <b_jonas> I should check what gnu coreutils date does, because it does add _one_ new format to strftime's repertoire, %N, which doesn't make sense for strftime
21:29:09 <b_jonas> (LC_ALL=hu_HU.utf8 date -d "2019-10-05" "+%^B") prints "OKTóBER" with a lower case ó on my machine where that locale is installed. I think that's a bug.
21:29:31 <b_jonas> not that I trust the date formats of the hu_HU.utf8 locale anyway
21:29:37 <b_jonas> but still
21:29:52 <b_jonas> ``` locale -a # can't test it on HackEso, locales aren't installed
21:29:54 <HackEso> C \ C.UTF-8 \ POSIX \ en_GB.utf8 \ en_NZ.utf8 \ en_US.utf8
21:30:45 <b_jonas> there's a C.UTF-8 locale? that's nice
21:32:57 <fizzie> b_jonas: (LC_ALL=fi_FI.utf8 date -d "2019-06-05" "+%^B") prints "KESäKUU" with a lowercase ä on my machine, which is likely the same bug.
21:33:13 <b_jonas> fizzie: good to know
21:33:21 <b_jonas> fizzie: that's on linux, right?
21:33:40 <fizzie> Yes, on a conventional glibc Debian system.
21:34:33 <fizzie> Also, "kesäkuu" translates literally to "summer month", which is I guess evidence that whoever named the Finnish months wasn't too creative.
21:34:44 -!- hppavilion[1] has joined.
21:34:44 -!- hppavilion[2] has joined.
21:34:59 <fizzie> Also syyskuu (September) translates to "autumn month".
21:35:08 <fizzie> For some reason there's no "spring month" or "winter month" though.
21:35:31 <b_jonas> Hungarian has at least two series of alternate month names, one where all of them are named of the four seasons, and one where they're named of saints
21:35:48 <b_jonas> besides the normal latin-based month names
21:35:55 <b_jonas> and roman numerals
21:36:02 <b_jonas> I still say we should just use %m to name the months
21:36:10 -!- hppavilion[2] has quit (Client Quit).
21:36:45 <b_jonas> and %Y-%m-%d for dates
21:37:28 <fizzie> The Finnish %b abbreviations are up to 6 letters, which I'm sure causes some formatting problems somewhere.
21:37:31 -!- andrewtheircer has joined.
21:37:58 <b_jonas> fizzie: like buffer overflows on particular dates, depending on the phase of the moon?
21:38:10 <andrewtheircer> hi
21:38:11 <fizzie> In fact, "%B" is always the same as "%bkuu".
21:38:32 <fizzie> ("kuu" being the Moon.)
21:39:05 <b_jonas> you know, tests misteriously failing on saturdays between 10 september and 31 september on full moon if the wind speed is over 100 km/h
21:40:12 <fizzie> I once submitted some code at work that got automagically blamed as a build-breaking change because it was the first change submitted after the time when a time-based unit test stopped working.
21:40:34 <int-e> Hmm, is "misterious" a foggy version of "mysterious"?
21:40:54 <b_jonas> oh wow
21:41:12 <b_jonas> https://hu.wikipedia.org/wiki/H%C3%B3nap#Magyar_h%C3%B3napnevek lists _four_ series of alternate months names
21:41:24 <b_jonas> many of those names don't even make sense
21:42:00 <b_jonas> but it sayss that columns 5 and 6 don't count, so only three series
21:42:26 <b_jonas> one with the saints, one with the seasons, and a weird one
21:43:07 <fizzie> That's a lot more month names than we've got.
21:48:36 -!- andrewtheircer has quit (Remote host closed the connection).
21:48:56 <b_jonas> I barely know the normal latin-based month names anyway. I always keep forgetting which names are for month 08, 09, and 10.
21:50:07 <b_jonas> calendars are supposed to track this, but half of them don't show both the month number and month name together
21:52:06 <b_jonas> ``` for m in 08 09 10; do date "+%m %B" -d "2019-$m"; done
21:52:10 <HackEso> date: invalid date '2019-08' \ date: invalid date '2019-09' \ date: invalid date '2019-10'
21:52:15 <b_jonas> stupid
21:52:19 <b_jonas> ``` for m in 08 09 10; do date "+%m %B" -d "2019-$m-01"; done
21:52:21 <HackEso> 08 August \ 09 September \ 10 October
22:02:53 <imode> what language is that.
22:03:24 <b_jonas> `locale
22:03:26 <HackEso> LANG=en_NZ.UTF-8 \ LANGUAGE= \ LC_CTYPE="en_NZ.UTF-8" \ LC_NUMERIC="en_NZ.UTF-8" \ LC_TIME="en_NZ.UTF-8" \ LC_COLLATE="en_NZ.UTF-8" \ LC_MONETARY="en_NZ.UTF-8" \ LC_MESSAGES="en_NZ.UTF-8" \ LC_PAPER="en_NZ.UTF-8" \ LC_NAME="en_NZ.UTF-8" \ LC_ADDRESS="en_NZ.UTF-8" \ LC_TELEPHONE="en_NZ.UTF-8" \ LC_MEASUREMENT="en_NZ.UTF-8" \ LC_IDENTIFICATION="en_NZ.UTF-8" \ LC_ALL=
22:03:27 <b_jonas> ``` locale
22:03:29 <HackEso> LANG=C \ LANGUAGE= \ LC_CTYPE="C" \ LC_NUMERIC="C" \ LC_TIME="C" \ LC_COLLATE="C" \ LC_MONETARY="C" \ LC_MESSAGES="C" \ LC_PAPER="C" \ LC_NAME="C" \ LC_ADDRESS="C" \ LC_TELEPHONE="C" \ LC_MEASUREMENT="C" \ LC_IDENTIFICATION="C" \ LC_ALL=
22:03:36 <b_jonas> imode: C
22:03:45 <imode> wat.
22:03:56 <b_jonas> `` locale
22:03:58 <HackEso> LANG=en_NZ.UTF-8 \ LANGUAGE= \ LC_CTYPE="en_NZ.UTF-8" \ LC_NUMERIC="en_NZ.UTF-8" \ LC_TIME="en_NZ.UTF-8" \ LC_COLLATE="en_NZ.UTF-8" \ LC_MONETARY="en_NZ.UTF-8" \ LC_MESSAGES="en_NZ.UTF-8" \ LC_PAPER="en_NZ.UTF-8" \ LC_NAME="en_NZ.UTF-8" \ LC_ADDRESS="en_NZ.UTF-8" \ LC_TELEPHONE="en_NZ.UTF-8" \ LC_MEASUREMENT="en_NZ.UTF-8" \ LC_IDENTIFICATION="en_NZ.UTF-8" \ LC_ALL=
22:04:12 <b_jonas> two backticks gives New Zealand english locale, three backticks gives C locale
22:04:23 <imode> no no no I mean the `for m in 08 09 10; do date "+%m %B" -d "2019-$m-01"; done`
22:04:30 <imode> is that just bash?
22:04:32 <b_jonas> ``` locale; for m in 08 09 10; do date "+%m %B" -d "2019-$m-01"; done
22:04:34 <HackEso> LANG=C \ LANGUAGE= \ LC_CTYPE="C" \ LC_NUMERIC="C" \ LC_TIME="C" \ LC_COLLATE="C" \ LC_MONETARY="C" \ LC_MESSAGES="C" \ LC_PAPER="C" \ LC_NAME="C" \ LC_ADDRESS="C" \ LC_TELEPHONE="C" \ LC_MEASUREMENT="C" \ LC_IDENTIFICATION="C" \ LC_ALL= \ 08 August \ 09 September \ 10 October
22:04:35 <b_jonas> yes, it's bash
22:04:37 <imode> err, shellscrip- yup, that is.
22:05:05 <b_jonas> ``` echo $BASH $BASH_VERSION
22:05:08 <HackEso> ​/bin/bash 4.4.12(1)-release
22:11:38 -!- Sgeo has joined.
22:28:50 -!- Sgeo_ has joined.
22:29:15 <zzo38> Skill Bite {XUR} Instant ;; Target creature you control deals X damage to another target creature; X can't be more than the first creature's power. If any damage is dealt in tihs way, the first creature gains copies of all of the second creature's activated abilities until end of turn. ;; Cycling {3} ;; Flashback {X2UR}
22:30:10 <zzo38> South Sunrise {2W} Instant ;; Skip the next main phase.
22:31:38 -!- Sgeo has quit (Ping timeout: 240 seconds).
22:31:47 <zzo38> Now you can write your comment/complaint of this please.
22:31:55 <b_jonas> zzo38: that latter is sort of like a Silence, right?
22:32:43 <zzo38> Maybe a little bit, but it is different.
22:33:01 -!- rickbutton has quit (Quit: ZNC 1.7.2+deb1+bionic0 - https://znc.in).
22:33:14 -!- rickbutton has joined.
22:34:18 <zzo38> O, now I thought of what feature should be adding in TeXnicard, which is, something to help with the collaboration, maybe.
22:35:36 <b_jonas> zzo38: I'm not sure that first one works. what happens if you choose a too high value of X? you choose X before the targets. it should be phrased to restrict the first target I think.
22:36:02 -!- Sgeo_ has quit (Ping timeout: 265 seconds).
22:36:06 <zzo38> Of course it does restrict the valid targets, even though the wording is like that.
22:36:19 <b_jonas> as for the cannibal abaility, that's ... weird, but might work, I dunno
22:36:40 <b_jonas> s/abai/abi/
22:37:31 <b_jonas> it's especially funny when the damage is redirected
22:39:21 <b_jonas> or when it steals loyalty abilities, and yes, I know that happens with other quicksilver abilities too
22:51:38 -!- cocof has joined.
22:51:50 <cocof> can I ask a php related question?
22:52:06 <cocof> my nick registration is pending
22:53:59 -!- tromp_ has joined.
22:56:52 <zzo38> I suppose you can try
22:57:20 -!- tromp has quit (Ping timeout: 246 seconds).
23:02:43 <b_jonas> ? php
23:02:49 <b_jonas> `? php
23:02:52 <HackEso> php is the PigeonHole Principle
23:03:11 -!- Phantom_Hoover has quit (Quit: Leaving).
23:03:37 -!- cocof has quit (Remote host closed the connection).
23:13:50 -!- rickbutton has quit (Quit: ZNC 1.7.2+deb1+bionic0 - https://znc.in).
23:26:19 -!- Sgeo has joined.
23:32:07 -!- b_jonas has quit (Quit: leaving).
23:40:16 -!- Lykaina has joined.
23:41:36 <Lykaina> hi
23:57:11 <Lykaina> bye... (feeling too sick to stay connected)
23:57:24 -!- Lykaina has quit (Quit: leaving).
←2019-09-15 2019-09-16 2019-09-17→ ↑2019 ↑all