< 1572220826 885909 :Sgeo!~Sgeo@ool-18b982ad.dyn.optonline.net QUIT :Ping timeout: 240 seconds < 1572221158 835945 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Nite < 1572221217 399526 :int-e!~noone@int-e.eu QUIT :Remote host closed the connection < 1572221260 899040 :int-e!~noone@int-e.eu JOIN :#esoteric < 1572221332 573538 :Sgeo__!~Sgeo@ool-18b982ad.dyn.optonline.net JOIN :#esoteric < 1572221521 600506 :Sgeo_!~Sgeo@ool-18b982ad.dyn.optonline.net QUIT :Ping timeout: 250 seconds < 1572221585 112366 :FreeFull!~freefull@defocus/sausage-lover QUIT : < 1572222591 545110 :Sgeo_!~Sgeo@ool-18b982ad.dyn.optonline.net JOIN :#esoteric < 1572222794 882576 :imode!~linear@unaffiliated/imode QUIT :Ping timeout: 240 seconds < 1572222821 536957 :Sgeo__!~Sgeo@ool-18b982ad.dyn.optonline.net QUIT :Ping timeout: 276 seconds > 1572226254 327782 PRIVMSG #esoteric :14[[07Semantic Brain14]]4 10 02https://esolangs.org/w/index.php?diff=66826&oldid=66326 5* 03SilverWingedSeraph 5* (-216) 10Fix jump instruction behavior. < 1572226286 990725 :imode!~linear@unaffiliated/imode JOIN :#esoteric < 1572226907 689109 :Sgeo_!~Sgeo@ool-18b982ad.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1572227062 675900 :Sgeo!~Sgeo@ool-18b982ad.dyn.optonline.net JOIN :#esoteric > 1572227815 224715 PRIVMSG #esoteric :14[[07Semantic Brain14]]4 10 02https://esolangs.org/w/index.php?diff=66827&oldid=66826 5* 03SilverWingedSeraph 5* (-1966) 10Remove the unused instructions, bringing the instruction size down to 5 bits. > 1572227853 205497 PRIVMSG #esoteric :14[[07Semantic Brain14]]4 M10 02https://esolangs.org/w/index.php?diff=66828&oldid=66827 5* 03SilverWingedSeraph 5* (+0) 10 < 1572231337 95020 :moony!moony@hellomouse/dev/moony QUIT :Ping timeout: 240 seconds < 1572231914 983606 :iovoid!iovoid@hellomouse/dev/iovoid QUIT :Ping timeout: 246 seconds < 1572231947 556246 :wlp1s1!iczero@hellomouse/dev/iczero QUIT :Ping timeout: 276 seconds < 1572231949 767873 :Bowserinator!Bowserinat@hellomouse/dev/Bowserinator QUIT :Ping timeout: 268 seconds < 1572234152 120010 :atslash!~atslash@46.188.0.82 JOIN :#esoteric < 1572234198 214269 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :How to disable kerning for editable text in Firefox? < 1572234396 988676 :atslash!~atslash@46.188.0.82 QUIT :Ping timeout: 240 seconds < 1572235102 56772 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Why do you want to disable kerning for editable text in Firefox? < 1572235153 597097 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Because kerning is not very good for text editing; it is suitable only for text that is only for reading and not for editing. < 1572235221 16450 :imode!~linear@unaffiliated/imode PRIVMSG #esoteric :override the editable text field to use a monospace font, then. < 1572235273 572583 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Yes, I suppose that would be one way to do. < 1572235280 806886 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :keming < 1572235480 192865 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :If you use a font without kerning information I assume it would work. < 1572235649 597088 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Yes, although it uses fonts with kerning by default < 1572236096 995166 :imode!~linear@unaffiliated/imode QUIT :Ping timeout: 240 seconds < 1572236950 672606 :moony!moony@hellomouse/dev/moony JOIN :#esoteric < 1572237007 952913 :Bowserinator!Bowserinat@hellomouse/dev/Bowserinator JOIN :#esoteric < 1572237034 987434 :iovoid!iovoid@hellomouse/dev/iovoid JOIN :#esoteric < 1572237057 194511 :wlp1s1!iczero@hellomouse/dev/iczero JOIN :#esoteric < 1572237107 99852 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I added a fax encoder/decoder in Farbfeld Utilities now. Unlike the other programs, these ones are written in PostScript, although an implementation in C might also be added later. < 1572237225 933303 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :ImageMagick will only decode Group 3 files if you specify EndOfLine=true for fffax, but ImageMagick will only decode Group 4 files if you specify EndOfLine=false for fffax. I don't know why. Also, when decoding a Group 4 file, ImageMagick will display 'Bad value 0 for "Orientation" tag.' even though it successfully decodes it. < 1572237231 930534 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Do you know why ImageMagick does that? > 1572240973 615040 PRIVMSG #esoteric :14[[07User:Moon/common.js14]]4 10 02https://esolangs.org/w/index.php?diff=66829&oldid=66764 5* 03Moon 5* (+237) 10add sandbox link > 1572241172 822135 PRIVMSG #esoteric :14[[07MediaWiki talk:Common.js14]]4 10 02https://esolangs.org/w/index.php?diff=66830&oldid=56460 5* 03Moon 5* (+526) 10/* Add a sandbox link */ new section < 1572248619 620555 :b_jonas!~x@catv-176-63-14-63.catv.broadband.hu PRIVMSG #esoteric :I don't know. I only saw fax files on one website (though a large quantity there), and ImageMagick could read them fine. < 1572250074 68486 :b_jonas!~x@catv-176-63-14-63.catv.broadband.hu PRIVMSG #esoteric :zzo38: re kerning: https://developer.mozilla.org/en-US/docs/Web/CSS/font-kerning < 1572250160 408243 :b_jonas!~x@catv-176-63-14-63.catv.broadband.hu PRIVMSG #esoteric :that said I think kerning is still useful for editable text. it's non-greedy action-at-a-distance line break finding that you usually disable for editable text so that words don't jump around between lines. < 1572251973 533972 :cpressey!~cpressey@5.133.242.4 JOIN :#esoteric < 1572252887 490533 :b_jonas!~x@catv-176-63-14-63.catv.broadband.hu QUIT :Remote host closed the connection < 1572253220 547020 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :Good morning. I have another esolang and I plan to release it today. > 1572256420 404471 PRIVMSG #esoteric :14[[07Oxcart14]]4 N10 02https://esolangs.org/w/index.php?oldid=66831 5* 03Chris Pressey 5* (+4013) 10Initial article for Oxcart, a continuation-passing concatenative language. < 1572256481 511374 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :^^ < 1572256508 46477 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :An implementation is available in the GitHub repo linked to therein. < 1572257123 763344 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I rewrote my printf-style function as a state machine, but I ran into the unfortunate issue that it supports custom formatters, and those also need to be written as state machines for maximal correctness. > 1572257151 1506 PRIVMSG #esoteric :14[[07Language list14]]4 10 02https://esolangs.org/w/index.php?diff=66832&oldid=66797 5* 03Chris Pressey 5* (+13) 10/* O */ Add Oxcart < 1572257202 871701 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I thought just restarting each formatter from scratch would be sufficient, but it can lead to infinite loops if you're using a fixed size buffer and the formatter tries to write something larger than that. < 1572257215 515768 :LKoen!~LKoen@81.255.219.130 JOIN :#esoteric < 1572257225 521526 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Oh, hmm, there's actual esolang activity in here. < 1572257314 519070 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric ::t let comp f g x k = f x (\s -> g s k) in comp < 1572257316 106454 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :(t1 -> (t2 -> t3) -> t4) -> (t2 -> t5 -> t3) -> t1 -> t5 -> t4 < 1572257385 589053 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Too general. < 1572257511 62447 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I guess I should just read it as (b -> (c -> r) -> r) -> (a -> (b -> r) -> r) -> a -> (c -> r) -> r < 1572257530 142186 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Which is the obvious thing. < 1572257751 836937 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :cpressey: I think you copied some text from the Wagon page. < 1572257903 323361 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :I did copy some text from the Wagon page, to start it off, but did I fail to update it appropriately? < 1572257927 91811 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :ACTION reads < 1572257968 534543 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I just mean the Primitives section. < 1572257992 200916 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :Ah, I see some errors. I'll fix them < 1572258043 438102 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Maybe (a -> (b -> r) -> r) should be ((b -> r) -> a -> r) instead. > 1572258107 783742 PRIVMSG #esoteric :14[[07Oxcart14]]4 10 02https://esolangs.org/w/index.php?diff=66833&oldid=66831 5* 03Chris Pressey 5* (+8) 10Fix lead paragraph in Primitives section > 1572258177 814370 PRIVMSG #esoteric :14[[07Oxcart14]]4 M10 02https://esolangs.org/w/index.php?diff=66834&oldid=66833 5* 03Chris Pressey 5* (+106) 10Note that Oxcart is not a minimal language < 1572258285 71199 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :What is "continue as normal"? < 1572258329 446974 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think I'm confused about how evaluation works. < 1572258335 519945 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Also I think I should go to sleep. < 1572258346 599105 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 JOIN :#esoteric < 1572258441 966396 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric > 1572258496 393754 PRIVMSG #esoteric :14[[07Oxcart14]]4 M10 02https://esolangs.org/w/index.php?diff=66835&oldid=66834 5* 03Chris Pressey 5* (+179) 10Clarify what "continue as normal" means, and what the initial continuation is. < 1572258561 177361 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ACTION disables layout.css.text-decoration-skip-ink.enabled in firefox after an annoying update made underlined text look ugly < 1572258569 590947 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :in the about:config that is > 1572258643 139892 PRIVMSG #esoteric :14[[07Oxcart14]]4 M10 02https://esolangs.org/w/index.php?diff=66836&oldid=66835 5* 03Chris Pressey 5* (+25) 10Add extra section in order to make ToC appear higher up in page < 1572258707 829137 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :cpressey: there's also the magic word __TOC__ to insert the table of contents right where that magic word is < 1572258714 357247 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :https://www.mediawiki.org/wiki/Help:Magic_words < 1572258756 867763 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :What is the current continuation? Is it part of the program state? < 1572258786 989829 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: I think you'll have to read the source code of the implementation < 1572258850 815936 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :shachaf: The current continuation is the second argument that the function receives. < 1572258855 597693 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 JOIN :#esoteric < 1572258878 339437 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :cpressey: but is the tape of stacks part of that continuation? < 1572258890 87866 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :or does that live outside with only one copy? < 1572258894 51196 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :wib_jonas: No, that's the first argument. < 1572258914 567072 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :shachaf: if you have a sufficiently pure programming model, the current continuation is the %Ientire%I state of the interpreter / the running program; impure languages tend to leave bits of it out though < 1572258915 546206 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :f(x, k) = f(state, kontinuation) < 1572258920 686762 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :cpressey: so there's only one tape of stacks? < 1572258938 615970 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :also apparently my usual shortcut for italics doesn't work with this client < 1572258983 42459 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :although, "current" continuation is a bit misleading, the continuation that call/cc generates is the continuation that its first argument returns to < 1572258985 580184 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :wib_jonas: No, it's a purely functional language, so each operation takes a state and passes a new, transformed state to its continuation < 1572259008 349136 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :ais523_: How much of what you said is applicable to this language? < 1572259016 338202 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I know what continuations are in general. < 1572259021 736588 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :I don't know, I don't know the language, haven't logread yet < 1572259073 959937 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I see. My question was about this language, not continuations in general. < 1572259079 690077 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ah, the github has more explanation, not only an implementation < 1572259081 620713 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :let's see < 1572259196 712941 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :looking at the definition of Oxcart, the spec seems to treat continuations as opaque data that is acted on by the program < 1572259216 575613 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :I think a literal understanding of the esolangs.org page would have the stacks not be part of it < 1572259224 255565 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :hmm, this reminds me of an Underload derivative I was working on a while back < 1572259233 547126 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :with some introspection primitives < 1572259261 791850 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :one captured the state of the entire stack; the other captured the entire list of commands that were yet to run > 1572259264 108965 PRIVMSG #esoteric :14[[07Oxcart14]]4 10 02https://esolangs.org/w/index.php?diff=66837&oldid=66836 5* 03Chris Pressey 5* (+236) 10Try to clarify what continuation-passing style means in this instance. < 1572259289 122083 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :those could be used to create various continuation-alikes that captured different amounts of state < 1572259305 3285 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :cpressey: I see now. I forgot that each symbol represents a function of one argument. < 1572259371 9058 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :cpressey: two arguments < 1572259377 998838 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :cpressey: I think there's still an ambiguity, as to whether stack operations look at a stack that's stored within κ, or at a separate global stack < 1572259398 504685 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :I think the latter is more likely given the specification on the page but it doesn't rule out either possibility < 1572259408 778339 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :ais523_: κ is a function, there's nothing "stored within" it < 1572259436 75706 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :OK, I guess that makes sense, functions-with-metadata aren't the sort of thing you expect to see unannounced < 1572259448 764953 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ais523: the tape of stacks is passed around in a separate argument < 1572259457 771007 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I still think there's only one of it, because there's no way to copy it < 1572259461 958017 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :oh yes < 1572259470 758781 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :so I think you can imagine it as a separate global stack, and functions with just the continuation argument < 1572259471 598847 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :so it definitely isn't part of the continuation as it has an argument of its own < 1572259473 829409 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Ugh, the biggest problem with writing explicit state machines is that they don't compose well. < 1572259502 275035 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :what notion of composition are you thinking of here? or do you not care? < 1572259515 427381 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :there's more than one way I can think of to compose state machines < 1572259537 351327 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :but those definitions seem to map to the explicit state machine notation fairly well? < 1572259543 87954 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I mean, it's certainly possible. < 1572259554 678308 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It's just much more awkward than function calls, in a language with no special support. < 1572259598 269971 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: about the printf function state machine, what exactly does that mean? can you feed it the format pattern character by character? can it output the formatted output character by character? both? < 1572259608 934826 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :oh, I see; state machines compose well in the sense of function composition (Haskell . or Underload *), but not in the sense of function application (Haskell $ or Underload ^) < 1572259623 552604 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :wib_jonas: No, you give it the format string all up-front. It produces output into a fixed size buffer. < 1572259649 569841 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: I sort of think that allowing general custom formatters in a printf function is a waste, and I think when I write my printf function, I'll make it so that you can't do that. I'll still add some limited hooks, but they have to behave in restricted ways. < 1572259651 724110 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I'm not quite sure what you mean by that. < 1572259656 530957 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :although if you don't have recursion, you can statically allocate a state for every possible call stack < 1572259669 475234 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Yes, you can build your own call stack effectively. < 1572259679 371781 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: in what sense is it a state machine then? do you feed the arguments to be formatted one by one? < 1572259694 629673 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :wib_jonas: You provide all the arguments upfront too. > 1572259702 52579 PRIVMSG #esoteric :14[[07Oxcart14]]4 10 02https://esolangs.org/w/index.php?diff=66838&oldid=66837 5* 03Chris Pressey 5* (+291) 10Define what a continuation is in this instance < 1572259742 603518 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: how is it a state machine then? < 1572259791 646318 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It might be used something like this: sprintf_init(&state, fmt, va); while (!state.done) { char buf[4096]; int written = sprintf_chunk(&state, buf, sizeof buf); fwrite(buf, 1, written, stdout); } < 1572259815 215707 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :The normal sprintf API doesn't let you do that -- it requires you to allocate an arbitrary-sized buffer. < 1572259863 485442 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: ah, so it's the second one that I said, it can continue output after it's ran out of a buffer < 1572259881 747563 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :interesting, and potentially useful < 1572259891 160327 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Yes. I thought I said that but now I read my message again and it was unclear. < 1572259900 379157 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: do you have a wrapper that lets it write to a file descriptor easily? < 1572259904 874319 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I meant that each call puts some of the output into a fixed-size buffer. < 1572259917 578068 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :You can write a wrapper like that, can't you? < 1572259932 319990 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I'm just worried about figuring out the core API that lets you write all the wrappers you want. < 1572259946 377884 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: also, is it possible to define a formatter that formats a bignum in hexadecimal, where the output can be longer than a few of the output chunks? < 1572259967 68270 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Formatters can produce arbitrary strings. < 1572259973 164129 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :That's the problem. < 1572259979 933706 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :hmm, I wonder if it might be more efficient to simply restart the sprintf from the start with a larger buffer < 1572259989 545739 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :rather than maintain all the state needed for restarting < 1572259991 384375 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :not sure though < 1572259992 69727 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Even the built-in formatters like %s have the same issue. < 1572260009 131793 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :What state needed for restarting? < 1572260047 794804 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :the "state" parameter of your sprintf_init < 1572260048 136425 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Certainly that state is no larger than a stack frame of snprintf's. < 1572260063 340132 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :yes, it's not the size I'm concerned about, but the memory accesses used to update it < 1572260095 529210 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :as for that M:tG three card deck game, I think the start is successful because we've got 4 new players in round 1, and one of them won the round < 1572260119 567073 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It's a very small amount of state. < 1572260178 822930 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Other than the varargs, the state is less than two pointersworth. < 1572260186 208465 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: it's not that simple. if you want to format big numbers in decimal (and they're stored in hexadecimal) then it's more efficient to do the conversion in one go, and that requires memory proportional to the size of the bignum < 1572260216 1561 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :mind you, it's sort of pointless to print bignums in decimal to full precision < 1572260226 314097 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :wib_jonas: Oh, well, you're free to allocate more memory and store it in your custom state, I guess. < 1572260240 899555 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :(Store a pointer to it, I mean.) < 1572260244 325615 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :sure < 1572260268 756387 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I don't think efficiency is a huge concern here anyway. < 1572260271 157354 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :though now you need an abort function to deallocate the state if you don't want to continue the printf < 1572260279 830763 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But of course it would be a big concern in fairly similar APIs. < 1572260295 891018 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Yes, that's not ideal. < 1572260310 382125 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Although you can just store your extra state in an arena probably. < 1572260315 971493 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :oh, I assumed getting maximum efficiency would be the reason for something like this < 1572260331 881797 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :(rather than simply counting the characters needed for the output buffer in advance) < 1572260364 895871 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru JOIN :#esoteric < 1572260371 673848 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I think I'll just use the more traditional approach where I call a callback when the output buffer runs out -- that callback can still give an error to abort, but I won't convert it to cps where you can pause the printf and store the state for later < 1572260425 31434 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :hmm, if you can inline the callback, that's probably more efficient (it's less efficient if you have to call through a function pointer, especially given the workarounds needed for Spectre) < 1572260436 592115 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think state machine APIs are generally much nicer and more flexible. < 1572260444 179449 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :the callbacks are simply anyway, they either write, or allocate more memory, or always fail, plus in the first two cases there could be an output length limit that they obey < 1572260510 698694 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ais523: it's not just the callback that helps, I can also enforce that I can call flush early and require that the output buffer is always at least, say, 64 bytes long, which means I don't need to worry about the callback during converting fixed integers or floating point numbers < 1572260515 334303 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :(the currently recommended way of calling through a function pointer is to call yourself twice and then overwrite the return address for the second call on the stack with the address of the function you actually want to call; this guarantees that the function call will be mispredicted, thus preventing it being used as a Spectre gadget) < 1572260530 135368 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric : cpressey: I think you copied some text from the Wagon page. . o O ( maybe cpressey is secretly A ) < 1572260536 105785 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :(mind you, formatting floats is still tricky for other reasons) < 1572260568 816600 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :you also need something that halts speculation at the address that you don't return to because it's overwritten < 1572260569 611765 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :a callback is effectively also what gnu libc and libstdc++ does < 1572260584 640909 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :for libc, you can define FILE handles with custom callbacks, < 1572260607 306584 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :for the C++ standard library, you can define custom classes for the output buffer < 1572260646 633884 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :actually, the important point here isn't specifically that the call is mispredicted, rather it's that you statically know it'll be predicted to a specific value that's under your control (which prevents the predicted value being attacker-controlled) < 1572260664 455509 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ais523: it might not even involve a function pointer, since I will probably only use three different behaviors < 1572260671 879973 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :possibly two because the last one isn't hard to unify < 1572260675 84232 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I can just use conditionals < 1572260680 726884 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :wib_jonas: right, sorry, I started on an aside < 1572260692 597124 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :and then needed to make my aside as technically precise as possible, lest I end up misinforming someone < 1572260704 875916 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :sure, that's also important. for some things other than printf, you do want function pointers < 1572260720 881086 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :oddly, the Spectre-proof indirect function call sequence is eerily similar to conditionals in INTERCAL-72 < 1572260735 110621 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :(not the same, but reminiscent) > 1572260751 156538 PRIVMSG #esoteric :14[[07Oxcart14]]4 M10 02https://esolangs.org/w/index.php?diff=66839&oldid=66838 5* 03Chris Pressey 5* (-64) 10Move where it is explained what "current continuation" refers to < 1572260773 97470 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Do you like this style of API? https://gist.github.com/pervognsen/d57cdc165e79a21637fe5a721375afba < 1572260783 112109 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :(The one in that post and also the one it links to.) < 1572260809 838488 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ais523: I really don't follow how sceptre-like prediction attacks can be prevented. at this point I sort of think I just have to buy separate (cheap) computer hardware to run the untrusted code on if I want to prevent all such attacks. < 1572260861 559488 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :separating things to separate computer hardware can be useful for other reasons too, as in to prevent various human errors that cause security bugs < 1572260867 499147 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :wib_jonas: I believe the commonly accepted technique is to ensure that you have control over all locations to which a branch could possibly be predicted to lead, and then audit them to ensure that they can't leak information when running speculatively < 1572260869 869862 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :other than sceptre < 1572260924 853071 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ais523: how can that be possible? you can guarantee that the cpu can't falsely speculatively predict a location? < 1572260935 329782 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :it's not as bad as it seems; most branches can only be predicted as taken or not taken, so there are only two places to check, and compilers can verify that, e.g., you don't make any memory accesses via potentially attacker-controlled pointers < 1572260951 409072 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I thought the jump target prediction is such that you can't do that < 1572260957 814950 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :the crazy workarounds are needed for indirect branches and indirect function calls, which could lead anywhere < 1572260970 731115 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :so you need to control the prediction yourself < 1572260977 959087 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :because it would, like, predict targets of unrelated jumps if it doesn't recall the jump instructino that you're trying to predict < 1572261005 366605 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :that's why you go via a function call and then rewrite the return value on the stack, because if you make a function call followed by a return, it's always predicted to return to the place the call came from < 1572261029 325724 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :hmm < 1572261043 558189 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :oerjan: That's one of more frightening Jekyll-and-Hyde theories I've heard lately. Perhaps I've been sleepwalking (and sleepwikiediting) < 1572261044 97974 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :that could work, if you're careful not to confuse the return address cache < 1572261055 466644 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :there's a separate return target cache from the usual stack cache, right? < 1572261078 194051 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :wib_jonas: actually it's the opposite of "careful not to confuse", you're intentionally confusing the return address stack < 1572261127 28732 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :which theory? the one where every esoteric language author is secretly the same person? < 1572261138 575573 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ais523: yes, but after that < 1572261145 254885 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :dunno, it could work < 1572261148 776103 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :the point is simply to make sure you have a known value on the return address predictor so that it can't be attacker-controlled < 1572261157 820459 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :but the whole sceptre prevention seems hopelessly large in scope to me < 1572261186 203126 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :well, it's at the point where the known spectre variants can be automatically fixed by compilers < 1572261201 906879 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :there are probably unknown speculative-execution-related exploits, but at least the known ones were fixable < 1572261220 149412 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ok < 1572261276 905781 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :though I am hoping that most of them will be fixed in new hardware, so in like 15 years all the cpu with most of the vulnerabilities will be phased out < 1572261341 131664 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :that's like a close enough timescale that I'll probably still be alive and programming for cpus then < 1572261482 942400 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :If you don't support user-defined formats, it's probably simple enough. < 1572261496 82494 :LKoen!~LKoen@81.255.219.130 QUIT :Remote host closed the connection < 1572261536 829369 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric : Do you like this style of API? => interesting < 1572261549 813485 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think %s is the only arbitrary-length format? You can just rerun the other ones if they happen to cross a boundary. < 1572261568 442447 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Or even just store a fixed-size buffer of what's left in the current argument. < 1572261578 463779 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr JOIN :#esoteric < 1572261623 359388 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :although then we'll still have to worry about how to make efficient but secure quantum-attack resistant public key cryptography primitives. if the crypto theorists don't figure out soon, every fricking ssl handshake will take centiseconds because we can't do a key exchange without number theory. < 1572261701 975979 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But what's the right thing to do for custom formatters? < 1572261719 844286 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I could declare that they just can't produce more than 64 bytes of output. < 1572261784 619244 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: I wouldn't allow them in general. I'll have to figure out something to allow bignum formatters, and those can produce long output, plus I will allow custom complex types, but I'll format them with built-in formatters, it's just a type system magic that disappears at compile time. < 1572261836 147280 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I have types like struct V2 { F32 x, y; };. < 1572261842 66829 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It seems pretty useful to be able to format them. < 1572261863 800186 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I don't expect a huge number of custom formatters but it'll be nice to have the common ones. < 1572261876 967808 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: printf("(%f,%f)", p.x, p.y); < 1572261896 65818 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :replace the "%f" with whatever specific format you want obviously < 1572261950 771456 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :for more complicated cases, the users can write a formatter function that doesn't hook into printf < 1572261959 950456 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :from the link there: “API design is still considered a black art of programming, even today. Only little information can be found and mostly you just find small tips I hope every programmer already knows.” => BTW there are no books on that, really? With yet many books on code style practices? < 1572261962 546262 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :but can use the same output buffer solutino as your printf < 1572261991 331499 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :so you don't mix them in the same printf format string, but you can mix them into the same output file or output buffer or whatever you can output to < 1572261999 471756 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I think your api still allows that < 1572262028 174032 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :arseniiv: I don't think there are many good books on that sort of thing. < 1572262078 711306 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :I think API design is in part a language design problem < 1572262095 778846 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :APIs are influenced so much by the language you're calling them from < 1572262114 306914 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :I have a theory that perhaps, in a sufficiently tightly defined language, there would only be one obvious way to write any given API < 1572262140 379399 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 QUIT :Remote host closed the connection < 1572262140 415606 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 QUIT :Remote host closed the connection < 1572262164 652333 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 JOIN :#esoteric < 1572262228 594971 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 JOIN :#esoteric < 1572262264 518363 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :arseniiv: Maybe https://gist.github.com/uucidl/495e7f1c2646fc8b5196 has some useful things to say. < 1572262280 27073 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :arseniiv: fwiw I think API design is related to abstract datatype design... but different enough that I hesitate to say "closely related". < 1572262295 201718 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :also, as a bonus, I'd like a printf that outputs utf16 directly, and can take both utf-8 and utf-16 strings as arguments to format < 1572262309 268813 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :shachaf: that link appears to require logging in? < 1572262335 684709 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :wib_jonas: I think Windows has one of those < 1572262342 698276 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :(the same function in Linux outputs UTF-32) < 1572262350 915247 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :any particular reason you want UTF-16? < 1572262420 414264 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ais523: at work I'm writing tables for a siemens program that can only read utf-16-le < 1572262435 337066 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :that's a good enough reason, I guess < 1572262437 646927 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I could of course output utf-8 and iconv it afterwards < 1572262444 749170 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :it's not like I need this very efficiently < 1572262448 719212 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :ais523_: Which link? < 1572262449 897604 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :but it'd be simpler < 1572262464 446124 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :shachaf: the gist link you posted a few lines above < 1572262480 28208 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I'm reading it in a Private Browsing window logged out. < 1572262556 126882 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I also read utf-16 files < 1572262578 308395 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I have no particular interest in UTF-16 support. < 1572262583 775448 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :currently I do these with perl and python, both of which have ways to input and output utf-8 and utf-16 streams, though perl's is somewhat buggy < 1572262584 270191 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It's a niche feature. < 1572262670 247313 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :other than Microsoft-related code (which seems to use UTF-16 as default), the main use I see for UTF-8 is writing Funciton programs < 1572262680 93116 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :*for UTF-16 < 1572262687 67807 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :funciton <3 < 1572262703 971641 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :i need to make a programming game out of that < 1572262711 792770 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :because they're made primarily of non-ASCII characters, and yet there's no standard 8-bit character set that contains all the characters it uses + its standard library < 1572262722 922622 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :so UTF-16 is normally the most efficient storage < 1572262736 672784 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :(UTF-8 can be more efficient when the programs are primarily made of large constants) < 1572262748 191999 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :to be fair, funciton uses something like utf-21 or the like internally < 1572262774 949550 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :shachaf: thanks, let’s see… < 1572262791 617033 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :UTF-16 is also more efficient than UTF-21 if you rarely use astral plane characters :-P < 1572262815 887935 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :also I think the UTF-21 is just for I/O, not used for storing the program internally < 1572262839 355727 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :cpressey: ah I think there is some kind of relatedness too, though I don’t have anything externalized on that count < 1572262842 940243 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ais523: this dataset is made of mostly ascii, so utf-8 would be more efficient < 1572262895 581691 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :what do you think of the shift-code-based Unicode encodings which are efficient when outputting lots of characters from the same Unicode block? < 1572262931 796410 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :hmm, thinking about it, you could probably do better with Huffman coding based on a digraph frequency table < 1572263020 591509 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :one potential problem with both systems is that you can't split a string between characters any more, and concatentating strings will lead to an overlong encoding due to the shift state (or previous character state) being explicitly reset in between < 1572263379 200431 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric : what do you think of the shift-code-based Unicode encodings which are efficient when outputting lots of characters from the same Unicode block? => my friend considered that but I don’t know if he succeeded in something. It seems he has the idea abandoned for a while < 1572263431 157041 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr QUIT :Remote host closed the connection < 1572263436 895243 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :there are at least two "standardised" encodings like that, at least one is IIRC patented/commercial (of course, there's doubts about whether a text encoding can be patentable!) < 1572263733 340354 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :http://www.unicode.org/notes/tn6/ ? < 1572263751 421806 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr JOIN :#esoteric < 1572263766 772230 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :this is based on a memory from a Wikipedia page, I can't remember which one < 1572263943 670024 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 PRIVMSG #esoteric :that unicode.org link is probably the same thing, though, given that there's a reference to an IBM patent at the bottom < 1572263957 206099 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 QUIT :Quit: lunch < 1572264345 222003 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Later < 1572265169 105585 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :fungot: a week passed since #1183. please publish the next o strip. < 1572265169 284154 :fungot!~fungot@unaffiliated/fizzie/bot/fungot PRIVMSG #esoteric :wib_jonas: and to optimize the code, < 1572265458 994820 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :for some reason, the constitution of Hungary requires that the president of the republic must be at least 35 years old. the president of the US is also limited to at least 35 years of age. so now I'm trying to imagine a sci-fi story where the president gets a sci-fi rejuvenation threapy and that takes his age under the bound, so they have to retire < 1572265459 495076 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :from the position. < 1572266050 167537 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr QUIT :Remote host closed the connection < 1572266175 448966 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :So then they change the rule to "must have at least 35 years experience as a human being" < 1572266224 75461 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :And then a 12-yo who claims to be the reincarnation of [insert famous dead person here] runs for president < 1572266239 417483 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :cpressey: no, I think they should just drop that lower bound < 1572266242 467569 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :it's a stupid rule < 1572266300 702235 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :they can still tie it to people who have the right to vote, just like for members of the parliament, so that excludes almost all people under 18 years old < 1572266443 595170 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr JOIN :#esoteric < 1572266863 340429 :cpressey!~cpressey@5.133.242.4 PRIVMSG #esoteric :Stupid rules often make for better stories though < 1572266904 88512 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :yes, there's at least one sci-fi story about this 35 year rule and relativistic speed space travel < 1572266928 33091 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :the story is that the rule is stupid, people realize that, so want to work it aruond < 1572266953 168645 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :https://scifi.stackexchange.com/q/181346/4918 < 1572266990 416818 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :which is exactly the sort of thing why the rule shouldn't be there < 1572267015 295398 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :if someone is inexperienced, then the parlament just won't elect them as president because of that, and the age bound is irrelevant < 1572267059 978851 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 JOIN :#esoteric < 1572267233 919800 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr QUIT :Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.” < 1572268600 402791 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :fungot, what is the abbreviation for the US state of Louisiana? < 1572268600 708136 :fungot!~fungot@unaffiliated/fizzie/bot/fungot PRIVMSG #esoteric :wib_jonas: somewhere it is.)) yields 6, as does cl iirc. dylan got repurposed, but eventually i'll know what the accessors are right? > 1572272499 635000 PRIVMSG #esoteric :14[[07User:AnimaLibera14]]4 M10 02https://esolangs.org/w/index.php?diff=66840&oldid=66654 5* 03AnimaLibera 5* (-145) 10 > 1572274019 10044 PRIVMSG #esoteric :14[[07Transfinite program14]]4 N10 02https://esolangs.org/w/index.php?oldid=66841 5* 03Chris Pressey 5* (+3072) 10Start on this article. Hope to be able to add more material, from examples found in the wiki, over time. > 1572274277 627520 PRIVMSG #esoteric :14[[07Transfinite program14]]4 M10 02https://esolangs.org/w/index.php?diff=66842&oldid=66841 5* 03Chris Pressey 5* (+209) 10Note another interpretation of "inifinite" that we do not mean here. > 1572274719 68902 PRIVMSG #esoteric :14[[07Transfinite program14]]4 10 02https://esolangs.org/w/index.php?diff=66843&oldid=66842 5* 03Chris Pressey 5* (+663) 10Incorporate material from Sequential tag system article. > 1572274807 232245 PRIVMSG #esoteric :14[[07Sequential tag system14]]4 M10 02https://esolangs.org/w/index.php?diff=66844&oldid=42801 5* 03Chris Pressey 5* (+100) 10Link to the Transfinite program article. < 1572275952 23112 :kspalaiologos!~kspalaiol@176.221.122.71 JOIN :#esoteric < 1572276075 553080 :ais523_!93bcc3da@gateway/web/cgi-irc/kiwiirc.com/ip.147.188.195.218 QUIT :Quit: quit > 1572276212 852958 PRIVMSG #esoteric :14[[07Transfinite program14]]4 10 02https://esolangs.org/w/index.php?diff=66845&oldid=66843 5* 03Chris Pressey 5* (+755) 10Add brief mention of SMETANA > 1572276606 515206 PRIVMSG #esoteric :14[[07Transfinite program14]]4 M10 02https://esolangs.org/w/index.php?diff=66846&oldid=66845 5* 03Chris Pressey 5* (-14) 10Bump up heading levels. > 1572276678 119177 PRIVMSG #esoteric :14[[07Transfinite program14]]4 M10 02https://esolangs.org/w/index.php?diff=66847&oldid=66846 5* 03Chris Pressey 5* (-3) 10Link to infinite loop < 1572277032 783499 :atslash!~atslash@213.87.133.85 JOIN :#esoteric < 1572277938 630777 :LKoen!~LKoen@81.255.219.130 JOIN :#esoteric < 1572279464 103464 :voidio!iovoid@hellomouse/dev/iovoid JOIN :#esoteric < 1572279476 907099 :iczero!iczero@hellomouse/dev/iczero JOIN :#esoteric < 1572279480 20707 :wlp1s1!iczero@hellomouse/dev/iczero QUIT :Ping timeout: 246 seconds < 1572279484 35888 :iovoid!iovoid@hellomouse/dev/iovoid QUIT :Ping timeout: 264 seconds < 1572280074 825826 :cpressey!~cpressey@5.133.242.4 QUIT :Quit: A la prochaine. < 1572281084 935 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 QUIT :Remote host closed the connection < 1572281936 764679 :atslash!~atslash@213.87.133.85 QUIT :Ping timeout: 268 seconds < 1572281946 3081 :atslash!~atslash@static.231.107.9.5.clients.your-server.de JOIN :#esoteric < 1572283475 877858 :kspalaiologos!~kspalaiol@176.221.122.71 QUIT :Quit: Leaving > 1572284425 705132 PRIVMSG #esoteric :14[[07Cliff L. Biffle14]]4 10 02https://esolangs.org/w/index.php?diff=66848&oldid=30798 5* 03CMinusMinus 5* (+261) 10Added Informations. I will add more stuff later. Maybe (Shoud I send him an Email?) > 1572285139 570903 PRIVMSG #esoteric :14[[07PTSL14]]4 N10 02https://esolangs.org/w/index.php?oldid=66849 5* 03Moon 5* (+1204) 10begin < 1572285536 774638 :kspalaiologos!~kspalaiol@176.221.122.71 JOIN :#esoteric > 1572286426 879129 PRIVMSG #esoteric :14[[07User:Moon/sandbox14]]4 N10 02https://esolangs.org/w/index.php?oldid=66850 5* 03Moon 5* (+11) 10Created page with "s a n d box" > 1572287112 174978 PRIVMSG #esoteric :14[[07PTSL14]]4 10 02https://esolangs.org/w/index.php?diff=66851&oldid=66849 5* 03Moon 5* (+42) 10Begin defining instructions. < 1572287125 290065 :FreeFull!~freefull@defocus/sausage-lover JOIN :#esoteric > 1572287125 572684 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 N10 02https://esolangs.org/w/index.php?oldid=66852 5* 03Moon 5* (+113) 10large table > 1572287252 243003 PRIVMSG #esoteric :14[[07PTSL14]]4 10 02https://esolangs.org/w/index.php?diff=66853&oldid=66851 5* 03Moon 5* (+74) 10 > 1572287397 418651 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66854&oldid=66852 5* 03Moon 5* (+159) 10 > 1572287441 261960 PRIVMSG #esoteric :14[[07PTSL14]]4 10 02https://esolangs.org/w/index.php?diff=66855&oldid=66853 5* 03Moon 5* (+96) 10 > 1572287545 324226 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66856&oldid=66854 5* 03Moon 5* (+56) 10add header > 1572287723 892248 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66857&oldid=66856 5* 03Moon 5* (+236) 10 < 1572287935 899346 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :is there (I think there is) a special name for algebraic types isomorphic to a sum of products of such types? < 1572288011 775934 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :like, { data Nat = Z | S Nat; data NatList = Nil | Cons Nat NatList } is a subset of these. Or { data T = TA | TB U; data U = UA | UB T } is too < 1572288067 670964 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :I think I heard “polynomial functor” regarding sums and products but these aren’t exactly one-to-one with functors < 1572288111 374809 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :as of “simple inductive type”, I’m not sure the term isn’t too general < 1572288542 589862 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :or maybe I should allow something like data T = T (U → T). I consider how to define generalized Minsky machines / recursive functions < 1572288623 42801 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :hm I think it won’t be good. How on earth could I make values of U → T there < 1572288667 22956 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :okay I think I’ll call these datatypes polynomial, seems not too general, not too specific < 1572288754 424579 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru PRIVMSG #esoteric :hm no, there’s recursion… polynomial-inductive it should be < 1572288795 371829 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :So in order to make the state machine printf API actually correct for sprintf, I think it'll need a bunch more state. < 1572288844 933919 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I was only outputting formatted arguments all-or-nothing, but the snprintf API actually requires you to output them to the last byte possible. > 1572289345 517849 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66858&oldid=66857 5* 03Moon 5* (+697) 10 < 1572289549 600801 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Apparently subtracting two null pointers is undefined behavior in C? > 1572289680 365493 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66859&oldid=66858 5* 03Moon 5* (+91) 10 < 1572289909 699181 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Subtracting even one should be, surely. < 1572289955 312232 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"When two pointers are subtracted, both shall point to elements of the same array object, or one past the last element of the array object; --" < 1572289967 105566 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Yep. < 1572289979 835068 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But that doesn't say anything about what happens when one pointer is subtracted. > 1572290273 252558 PRIVMSG #esoteric :14[[07PTSL14]]4 10 02https://esolangs.org/w/index.php?diff=66860&oldid=66855 5* 03Moon 5* (+655) 10Example. < 1572290277 414799 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I guess it's the same as the one hand clapping. > 1572290324 588760 PRIVMSG #esoteric :14[[07PTSL14]]4 10 02https://esolangs.org/w/index.php?diff=66861&oldid=66860 5* 03Moon 5* (+2) 10fix < 1572290392 954697 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :If a tree falls in the forest, does it generate a log? > 1572290942 478159 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66862&oldid=66859 5* 03Moon 5* (+227) 10 > 1572291188 196365 PRIVMSG #esoteric :14[[07Language list14]]4 10 02https://esolangs.org/w/index.php?diff=66863&oldid=66832 5* 03Moon 5* (+11) 10/* P */ Add PDSL > 1572291217 915657 PRIVMSG #esoteric :14[[07Language list14]]4 10 02https://esolangs.org/w/index.php?diff=66864&oldid=66863 5* 03Moon 5* (+0) 10/* P */ err, PTSL. Yea, PTSL. > 1572291619 607695 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66865&oldid=66862 5* 03Moon 5* (+28) 10Casually forgets return instruction. > 1572292239 499088 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66866&oldid=66865 5* 03Moon 5* (+430) 10Add comparison instructions. > 1572292500 449979 PRIVMSG #esoteric :14[[07Special:Log/newusers14]]4 create10 02 5* 03DeeBo 5* 10New user account > 1572292535 153714 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66867&oldid=66866 5* 03Moon 5* (+243) 10 < 1572292635 990365 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover JOIN :#esoteric < 1572293800 57634 :subleq!~gavin@207.173.246.52 QUIT :Remote host closed the connection < 1572293819 597816 :subleq!~gavin@207.173.246.52 JOIN :#esoteric < 1572294243 599106 :subleq!~gavin@207.173.246.52 QUIT :Ping timeout: 250 seconds < 1572294357 430604 :subleq!~gavin@207.173.246.52 JOIN :#esoteric < 1572294671 951940 :subleq!~gavin@207.173.246.52 QUIT :Remote host closed the connection < 1572294688 892991 :subleq!~gavin@207.173.246.52 JOIN :#esoteric > 1572294767 625409 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66868&oldid=66867 5* 03Moon 5* (+413) 10More arithmetic ops. < 1572294856 386173 :kspalaiologos!~kspalaiol@176.221.122.71 QUIT :Quit: Leaving > 1572294909 242557 PRIVMSG #esoteric :14[[07PTSL/instrtable14]]4 10 02https://esolangs.org/w/index.php?diff=66869&oldid=66868 5* 03Moon 5* (+112) 10 > 1572295198 459882 PRIVMSG #esoteric :14[[07Esolang:Introduce yourself14]]4 10 02https://esolangs.org/w/index.php?diff=66870&oldid=66821 5* 03DeeBo 5* (+227) 10/* Introductions */ < 1572297482 883279 :subleq!~gavin@207.173.246.52 QUIT :Ping timeout: 240 seconds < 1572297607 714632 :subleq!~gavin@207.173.246.52 JOIN :#esoteric < 1572297738 760381 :voidio!iovoid@hellomouse/dev/iovoid NICK :iovoid < 1572298475 651034 :subleq!~gavin@207.173.246.52 QUIT :Ping timeout: 268 seconds < 1572298576 363712 :subleq!~gavin@207.173.246.52 JOIN :#esoteric < 1572299311 519250 :LKoen!~LKoen@81.255.219.130 QUIT :Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.” < 1572299439 665713 :b_jonas!~x@catv-176-63-13-217.catv.broadband.hu JOIN :#esoteric < 1572299797 970446 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric < 1572299907 754937 :imode!~linear@unaffiliated/imode JOIN :#esoteric < 1572300160 329094 :subleq!~gavin@207.173.246.52 QUIT :Ping timeout: 265 seconds < 1572300273 718232 :subleq!~gavin@207.173.246.52 JOIN :#esoteric < 1572300962 916129 :arseniiv!~arseniiv@94.41.13.149.dynamic.ufanet.ru QUIT :Ping timeout: 240 seconds < 1572301398 670730 :subleq!~gavin@207.173.246.52 QUIT :Ping timeout: 268 seconds < 1572301483 768002 :subleq!~gavin@207.173.246.52 JOIN :#esoteric < 1572301583 657523 :imode!~linear@unaffiliated/imode QUIT :Ping timeout: 268 seconds > 1572302400 482978 PRIVMSG #esoteric :14[[07ZALIBY14]]4 N10 02https://esolangs.org/w/index.php?oldid=66871 5* 03Groowy 5* (+2191) 10Created page with "'''ZLIBY''' is a simple programming language created as part of a programming competition run by students at Charles University. An implementation by [[User:Groowy]] can be..." > 1572302733 851209 PRIVMSG #esoteric :14[[07ZALIBY14]]4 10 02https://esolangs.org/w/index.php?diff=66872&oldid=66871 5* 03Groowy 5* (-19) 10 < 1572305560 448444 :b_jonas!~x@catv-176-63-13-217.catv.broadband.hu PRIVMSG #esoteric :"Cleaning and maintenance shall not be performed by children." says the user's manual. I can see that my new electric toothbrush is american lawyer compliant. < 1572305727 718388 :subleq!~gavin@207.173.246.52 QUIT :Ping timeout: 268 seconds < 1572306083 977850 :imode!~linear@unaffiliated/imode JOIN :#esoteric < 1572306317 15249 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover QUIT :Ping timeout: 240 seconds < 1572307103 298418 :FreeFull!~freefull@defocus/sausage-lover QUIT : < 1572307199 855325 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Nite