< 1576110820 715349 :FreeFull!~freefull@defocus/sausage-lover QUIT : < 1576111326 11067 :arseniiv!~arseniiv@94.41.35.79.dynamic.ufanet.ru QUIT :Quit: gone completely :o < 1576112160 160094 :ArthurStrong!~ArthurStr@slow.wreckage.volia.net QUIT :Quit: leaving < 1576115738 633400 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1576115877 175640 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 240 seconds < 1576115877 306732 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 NICK :Lord_of_Life > 1576125441 474380 PRIVMSG #esoteric :14[[07Talk:Grime MC14]]4 N10 02https://esolangs.org/w/index.php?oldid=67908 5* 03IFcoltransG 5* (+319) 10Created page with "Is this the sort of language where an interpreter would be impossible because it's subjective what a lyric means, or does it have a finite set of possible commands? If the lat..." > 1576126576 498145 PRIVMSG #esoteric :14[[07StackBeat14]]4 M10 02https://esolangs.org/w/index.php?diff=67909&oldid=37539 5* 03IFcoltransG 5* (+1) 10/* Other notes */ Typo < 1576127981 923487 :fungot!~fungot@unaffiliated/fizzie/bot/fungot QUIT :Ping timeout: 246 seconds < 1576128309 124790 :fungot!~fungot@unaffiliated/fizzie/bot/fungot JOIN :#esoteric < 1576130902 121455 :sparr!~sparr@pdpc/supporter/active/sparr QUIT :Ping timeout: 252 seconds < 1576131075 491978 :sparr!~sparr@2604:a880:800:10::103:f001 JOIN :#esoteric < 1576137526 486305 :xkapastel!uid17782@gateway/web/irccloud.com/x-psryftaflwapgdyw JOIN :#esoteric < 1576142119 421424 :b_jonas!~x@catv-176-63-13-234.catv.broadband.hu QUIT :Quit: leaving < 1576145212 692711 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1576145560 12100 :Deewiant!~deewiant@de1.ut.deewiant.iki.fi QUIT :Ping timeout: 264 seconds < 1576145637 150078 :Deewiant!~deewiant@de1.ut.deewiant.iki.fi JOIN :#esoteric < 1576145845 260155 :xkapastel!uid17782@gateway/web/irccloud.com/x-psryftaflwapgdyw QUIT :Quit: Connection closed for inactivity < 1576146175 351569 :ais523!~ais523@unaffiliated/ais523 QUIT :Remote host closed the connection < 1576146249 189642 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1576146465 577877 :mroman!b2c5e16e@178.197.225.110 JOIN :#esoteric < 1576148227 129369 :mroman!b2c5e16e@178.197.225.110 QUIT :Remote host closed the connection < 1576148238 696281 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :@messages? < 1576148238 702883 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Sorry, no messages today. < 1576148261 578312 :bunnyocte!b2c5e16e@178.197.225.110 JOIN :#esoteric < 1576148324 327575 :bunnyocte!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :hm. < 1576148368 303745 :bunnyocte!b2c5e16e@178.197.225.110 QUIT :Remote host closed the connection < 1576148385 577544 :bunnyocto!b2c5e16e@178.197.225.110 JOIN :#esoteric < 1576148387 647761 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :no rename command on freenode? < 1576148454 243908 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :or maybe it was /nick and not /rename < 1576148458 259487 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :ah yep < 1576148699 116476 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :aight. let me check out the newest bf derivatives. < 1576149198 656119 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :verify register bunnyocto azdixccwwmkk < 1576149396 657015 :ArthurStrong!~ArthurStr@slow.wreckage.volia.net JOIN :#esoteric < 1576150019 929584 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`relcome bunnyocto < 1576150023 424613 :HackEso!~h@unaffiliated/fizzie/bot/hackeso PRIVMSG #esoteric :​08bunnyocto: 09Welcome 02to 06the 13international 04hub 07for 08esoteric 09programming 02language 06design 13and 04deployment! 07For 08more 09information, 02check 06out 13our 04wiki: 07. 08(For 09the 02other 06kind 13of 04esoterica, 07try 08#esoteric 09on 02EFnet 06or 13DALnet.) < 1576150057 54249 :ais523!~ais523@unaffiliated/ais523 QUIT :Ping timeout: 240 seconds < 1576150206 599347 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :fungot: hi < 1576150207 26421 :fungot!~fungot@unaffiliated/fizzie/bot/fungot PRIVMSG #esoteric :bunnyocto: ah well... thanks to intel addressing modes and variable-length opcodes it's not that < 1576150381 208831 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :github workflows has a weird directory structure < 1576150395 95556 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :it's /reponame/reponame < 1576151082 50638 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :g'fternoon < 1576151493 724857 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :github deprecated integrations? < 1576151497 497645 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :How do I do CI Now then? < 1576151514 656685 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :Like require pull requests to have passing tests. < 1576152485 441230 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :lel I can't review my own pull requests. < 1576152487 829365 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :hm. < 1576152496 560569 :arseniiv!~arseniiv@94.41.35.79.dynamic.ufanet.ru JOIN :#esoteric < 1576153090 801516 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Oops, I believe I accidently got some AoC points. < 1576153120 594051 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Ah, no. Phew. < 1576154386 271883 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: Do you think surjections have right inverses? < 1576154546 926193 :tromp_!~tromp@2a02:a210:1585:3200:248f:341f:ae33:5bb2 JOIN :#esoteric < 1576154762 552552 :tromp!~tromp@2a02:a210:1585:3200:cde5:ff44:7fb:db68 QUIT :Ping timeout: 276 seconds < 1576154978 520828 :bunnyocto!b2c5e16e@178.197.225.110 QUIT :Remote host closed the connection < 1576155392 242566 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: depends < 1576155544 752156 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Oh there are actually two issues here. < 1576155600 774389 :int-e!~noone@int-e.eu PRIVMSG #esoteric :One of convention, and one of choice. < 1576155602 346221 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :int-e: I got some for the one time I was awake at 5am, and now I have to fight the urge to try again. :/ < 1576155627 750952 :int-e!~noone@int-e.eu PRIVMSG #esoteric :fizzie: I was awake. I deliberately didn't look. < 1576155696 623183 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :What's the axiom of convention? < 1576155701 336466 :int-e!~noone@int-e.eu PRIVMSG #esoteric :And now I was worried that today's second part was really hard so I might have earned points for it, but only because I momentarily misread the statistics page. < 1576155723 403928 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: The conventional issue is which way function composition composes. < 1576155906 175083 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: Also I had trouble connecting dots... while I typed "AoC" I thought and read the whole "Advent of Code". < 1576155938 577018 :bunnyocto!b2c5e16e@178.197.225.110 JOIN :#esoteric < 1576156040 333878 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Oh, sure. < 1576156049 861051 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :What should I call f and g such that f.g = id? < 1576156191 767169 :int-e!~noone@int-e.eu PRIVMSG #esoteric :f is a left inverse of g; g is a right inverse of f < 1576156197 413900 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :yup < 1576156238 435527 :int-e!~noone@int-e.eu PRIVMSG #esoteric :It's pretty uncontroversial this far. < 1576156250 988045 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think those are pretty confusing terms. < 1576156267 629614 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But if you say that's uncontroversial, where's the controvery? < 1576156288 688595 :int-e!~noone@int-e.eu PRIVMSG #esoteric :doe (f.g)(x) = f(g(x)) or (f.g)(x) = g(f(x))? < 1576156292 408235 :int-e!~noone@int-e.eu PRIVMSG #esoteric :*does < 1576156304 288666 :int-e!~noone@int-e.eu PRIVMSG #esoteric :that's the confusion. < 1576156340 932692 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :how so? it's clearly the first < 1576156350 665167 :int-e!~noone@int-e.eu PRIVMSG #esoteric :The latter happens in some category theory texts. < 1576156355 572371 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :f(g(x)) is the usual convention? < 1576156373 66975 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Because they want (.) : (a -> b) -> (b -> c) -> (a -> c) < 1576156380 332316 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :also it's the haskell way thus muh < 1576156387 79231 :int-e!~noone@int-e.eu PRIVMSG #esoteric :and the inner -> are abstract anyway. < 1576156407 30307 :int-e!~noone@int-e.eu PRIVMSG #esoteric :As much as I like Haskell, it's not defining the world. < 1576156416 397499 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :also, there are people that are using \subset for implication < 1576156420 755696 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :what? it isn't? < 1576156421 104769 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :I don't like that < 1576156423 839188 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :why am I using it then. < 1576156439 17077 :int-e!~noone@int-e.eu PRIVMSG #esoteric :not \subset... \supset < 1576156455 220881 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :right < 1576156458 578769 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :still hate it < 1576156463 117854 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :no, but (f.g) x = f ( g ( x ) ) is more intuitive imo < 1576156476 985017 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :but that may just be because I'm accustomed to it < 1576156504 758291 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :that's the definition I am used to from math classes < 1576156510 274045 :int-e!~noone@int-e.eu PRIVMSG #esoteric :You'll be surprised how little people value other's opinion in general. < 1576156516 490759 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :coincidentally, haskell does it that way < 1576156521 805331 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :yep. And thus I don't value their opinions. < 1576156524 387397 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :Cruel world. < 1576156547 675027 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Also some people really like >>> < 1576156557 813458 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :for what? < 1576156559 845647 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :is that arrow notation? < 1576156573 305513 :int-e!~noone@int-e.eu PRIVMSG #esoteric :And I believe we've had at least one proposal to flip the order of arguments of (.). < 1576156576 321131 :int-e!~noone@int-e.eu PRIVMSG #esoteric ::t (>>>) < 1576156576 636356 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :haven't used haskell in a while < 1576156580 670164 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :forall k (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k). Category cat => cat a b -> cat b c -> cat a c < 1576156615 446757 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :>>, >=>, $>, >>>, < 1576156620 542014 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric ::t (>=>) < 1576156622 512011 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Monad m => (a -> m b) -> (b -> m c) -> a -> m c < 1576156626 769193 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :I am okay with >>> < 1576156637 397140 :int-e!~noone@int-e.eu PRIVMSG #esoteric :bunnyocto: The thing is, if you want to read math texts, you better keep an open mind about notation. < 1576156665 700366 :int-e!~noone@int-e.eu PRIVMSG #esoteric :And unfortunately that includes basic things like the order of arguments of function composition. < 1576156753 979717 :int-e!~noone@int-e.eu PRIVMSG #esoteric :That said, I /prefer/ (f.g)(x) = f(g(x)). > 1576156902 413098 PRIVMSG #esoteric :14[[07Special:Log/newusers14]]4 create10 02 5* 03Leo9 5* 10New user account < 1576158129 749914 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :I though the Haskell thing was to use (&) for the g(f(x)) case < 1576158134 518342 :kspalaiologos!~root@206.ip-51-91-102.eu JOIN :#esoteric < 1576158153 332196 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :no need to pollute established notation with confusion.. < 1576158197 285261 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :I mean I like the forward-direction composition just fine, but under a differet notation < 1576158298 58685 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :(&) is normally flip ($), not flip (.) < 1576158322 607998 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :oh right < 1576158330 941799 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :hmm, point < 1576158336 954167 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :I've seen (f;g)(x) = g(f(x)) but that doesn't work as a Haskell operator < 1576158396 855410 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :Clojure calls it (->>) IIRC, but that's more in a prefix, s-expr setting < 1576158416 14546 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :but thee's he (>>>) from Category as mentioned, etc < 1576158992 199716 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1576159130 639609 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 276 seconds < 1576159130 975984 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 NICK :Lord_of_Life < 1576159258 497807 :kspalaiologos!~root@206.ip-51-91-102.eu QUIT :Quit: leaving < 1576159397 59897 :sprocklem!~sprocklem@unaffiliated/sprocklem QUIT :Ping timeout: 240 seconds < 1576159434 596960 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos JOIN :#esoteric < 1576160200 755058 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 JOIN :#esoteric < 1576160524 306178 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :the order of arguments for function composition is simple. if you write the evaluation of the function f at input value x as f(x) or fx then the function composition is (f o g)(x) = f(g(x)) or (f o g)x = f (g x); but if you write it as x f or x^f, then the function composition is x (f o g) = (x f) g or x^(f o g) = (x^f)^g < 1576160571 511539 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and int-e, they're functions, so the left inverse and the right inverse are the same, we can just call it the inverse or inverse function < 1576161115 564374 :int-e!~noone@int-e.eu PRIVMSG #esoteric :wib_jonas: ... < 1576161123 722420 :int-e!~noone@int-e.eu PRIVMSG #esoteric :wib_jonas: you might want to think that through < 1576161494 352755 :int-e!~noone@int-e.eu PRIVMSG #esoteric :wib_jonas: what is true is that if a function has both a left inverse and a right inverse then they're equal (and that implies the inverse is unique in that case). < 1576161548 37392 :int-e!~noone@int-e.eu PRIVMSG #esoteric :But existence is a bit of an issue. < 1576162473 242575 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :f being left inverse of g and g being right inverse of f doesn't imply that f . g = g . f < 1576162491 128277 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :or does it? < 1576162492 728446 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :int-e: hmm ok < 1576162494 525194 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I wouldn't think so < 1576162532 696317 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :wait so if f . g = id and h . f = id then g = h? < 1576162551 327183 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :that doesn't _sound_ right? < 1576162849 876684 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :i don't think so < 1576162868 333617 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :especially if the signatures differ < 1576162916 203983 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :f .g = id -> h . f . g -> h . id -> h < 1576162968 688148 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :since h . f = id -> h . f . g -> id . g -> g < 1576162970 246931 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :thus h = g < 1576162971 59507 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :hm. < 1576162972 968402 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :it true < 1576163008 665854 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :interesting < 1576163029 316438 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :wait < 1576163034 362956 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I need paper for this. < 1576163088 275358 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :no it's right. < 1576163112 60773 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :h . f .g = id . g but also h . f .g = h . id thus id .g = h . id and id . g = g and h . id = h thus h = g = h < 1576163199 924646 :sprocklem!~sprocklem@unaffiliated/sprocklem JOIN :#esoteric < 1576163206 870717 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :now the question is whether there are functions (a,b) and (c,d) such that a . f = id and f . b = id and c . f = id and f . d = id but a /= c and b /= d < 1576163239 909246 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I mean... evidently a=b and c=d < 1576163265 108495 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so that leaves us with a . f = id and c . f = id where a /= c < 1576163293 953225 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :which trivially if a . f = id and c . f = id then a . f = c. f < 1576163346 504161 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so the inverse is unique < 1576163347 544910 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :hm. < 1576163870 927569 :sprocklem!~sprocklem@unaffiliated/sprocklem QUIT :Ping timeout: 246 seconds < 1576164240 684534 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :assuming id is unique < 1576164245 256667 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric ::D < 1576164306 793830 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esoteric :if you define equality of functions as the same mappings from input to output, id is unique < 1576164414 807429 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :Whats' f x = x / 0 called < 1576164422 219342 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :it's a function that isn't defined forall X < 1576164486 161145 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :the codomain is the empty set. < 1576164532 868146 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :but the domain too < 1576164533 992717 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :hm. < 1576164964 996190 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :wouldn chr(0)+x work to convert to hex < 1576165060 760646 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I mean my current version (https://pastebin.com/C3kHSXMb) is probably awfully complicated and requires mem lookups < 1576165075 514172 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I could just add 0x30 to the nibbles < 1576165403 610425 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :oh no < 1576165462 9679 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :the guys making ASCII clearly didn't design for this. < 1576165466 858931 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :BIG MISTAKE < 1576165485 940840 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :on the other hand it would work if I wouldn't use ASCII < 1576165673 979086 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :also I hate it when people say a byte is a number from 0-255 < 1576165681 210168 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :it's not accurate. bytes are typeless. < 1576168878 745010 :kritixilithos!~kritixili@gateway/tor-sasl/kritixilithos QUIT :Quit: quit < 1576169384 3129 :wib_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 QUIT :Remote host closed the connection < 1576170595 617982 :bunnyocto!b2c5e16e@178.197.225.110 QUIT :Ping timeout: 260 seconds < 1576171469 329487 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr JOIN :#esoteric < 1576172407 577691 :bunnyocto!b2c5e16e@178.197.225.110 JOIN :#esoteric > 1576173305 69915 PRIVMSG #esoteric :14[[07Special:Log/newusers14]]4 create10 02 5* 03Nirex0 5* 10New user account < 1576173364 353633 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr QUIT :Remote host closed the connection > 1576173620 150549 PRIVMSG #esoteric :14[[07Esolang:Introduce yourself14]]4 10 02https://esolangs.org/w/index.php?diff=67910&oldid=67875 5* 03Nirex0 5* (+314) 10My First Edit as required by esolangs.org < 1576173634 324873 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :bunnyocto, re: bytes (last i checked anyways) well more than that, eg. rfcs say "octet"; "byte" is totally arbitrary and IIRC basically IBM started doing it (engineers wanted 24-bits, so it was flexible for integer and some floating thing; but they found it was either no machine or compromise on this) and then everyone copied IBM < 1576173649 573708 :LKoen!~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr JOIN :#esoteric < 1576173660 702559 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :i found that buried in an interview with a designer of that particular IBM CPU :) 8 bits is totally arbitrary from what i found; everyone just wanted to be "compatible" basically < 1576173691 448924 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :and IIRC IBM might have even been trying to be "compatible" with some competitor in the first place! totally arbitrary from what i found < 1576173713 172405 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :(the interviewed person didnt say this, but it was implied) < 1576173768 588169 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :and e.g. knuth IIRC claims trinary would be more efficient (assuming everyone switched, economy of scale, etc.) < 1576173799 183313 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :more efficient pricewise versus performance i mean, but only if everyone switched < 1576173858 266555 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :i dont trust people who say "bytes" if you mean 8 bits "octet" < 1576174241 17018 :arseniiv!~arseniiv@94.41.35.79.dynamic.ufanet.ru PRIVMSG #esoteric :[23:03] more efficient pricewise versus performance i mean, but only if everyone switched => is it that one argument about e-ary system? Because there it’s assumed that each state of each bit/trit/etc. is equally costly to make, which isn’t that true in reality — AFAIR bits are cheaper to make work reliably than trits, statewise < 1576174260 367183 :arseniiv!~arseniiv@94.41.35.79.dynamic.ufanet.ru PRIVMSG #esoteric :sorry about timestamp, wasn’t mean to paste that :D > 1576174327 891511 PRIVMSG #esoteric :14[[07Language list14]]4 10 02https://esolangs.org/w/index.php?diff=67911&oldid=67821 5* 03Nirex0 5* (+10) 10Add: oof programming language (not to be confused with oof!) < 1576174350 88912 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :i dunno, i think knuth says it in aocp so youd have to dig 3 volumes and whatever else i dunno if he ever finished them :) < 1576174364 559984 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :if you google around you might find more detail < 1576174399 309194 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :somehow he claimed either trinary or some other non-binary base would be cheaper for equal performance (paraphrase on my part) < 1576174434 767368 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :theres lots of potential weird bases ... < 1576174454 440607 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :non-integer i mean < 1576174484 503870 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :apologies if i sound vague, not really "trained" in that kinda stuff < 1576174510 204858 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :(and doesnt come up in real life programming for me, however interesting it might be) < 1576174555 37160 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :(plus its been like 20 years since i skimmed that stuff) > 1576174821 482205 PRIVMSG #esoteric :14[[07Oof14]]4 N10 02https://esolangs.org/w/index.php?oldid=67912 5* 03Nirex0 5* (+1351) 10Add: oof programming language (not to be confused with oof!) < 1576174918 354559 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :how does C return structs? < 1576174927 771179 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :doesn't fit into register < 1576174931 378571 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so presumably on the stack < 1576174974 371326 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :but then presumably it's memcpied somewhere into the callee stack < 1576174981 188268 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I mean.. later pushes might destroy the struct on the stack < 1576174985 115983 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so you gotta save it somehow > 1576175082 67858 PRIVMSG #esoteric :14[[07Oof14]]4 10 02https://esolangs.org/w/index.php?diff=67913&oldid=67912 5* 03Nirex0 5* (+1) 10 < 1576175180 285970 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :oh well... who needs to return structs :( < 1576175208 736319 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :just pass a pointer to the struct as the callee and let the caller fill that one in > 1576175448 282598 PRIVMSG #esoteric :14[[07Oof14]]4 M10 02https://esolangs.org/w/index.php?diff=67914&oldid=67913 5* 03Nirex0 5* (+6) 10Better Documentation < 1576175465 618434 :Jefe!~jeff@66.51.195.8 JOIN :#esoteric < 1576175523 897171 :Jefe!~jeff@66.51.195.8 PRIVMSG #esoteric :Hi, my friend told me about a language where only the white space is significant, so all visible characters constitute comments. Anybody happen to know the name? < 1576175549 788822 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :i think it was called whitespace < 1576175556 602737 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :and probably made slashdot < 1576175561 795922 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :long ago < 1576175608 137602 :Jefe!~jeff@66.51.195.8 PRIVMSG #esoteric :Well that would just make too much sense, wouldn't it? > 1576175612 439038 PRIVMSG #esoteric :14[[07Oof14]]4 M10 02https://esolangs.org/w/index.php?diff=67915&oldid=67914 5* 03Nirex0 5* (+30) 10 < 1576175613 692157 :Jefe!~jeff@66.51.195.8 PRIVMSG #esoteric :Thanks. < 1576175648 774280 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :ACTION cries himself to sleep that slashdot moderation is actually something missing from a gazillion other sites; at least slashdot's perl forum you could browse the -5 flamebait if you wanted; the modern web stuff just vanishes < 1576175684 134864 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :murphy's law: someone can always do worse implementation of something you don't particularly like < 1576175739 212044 :Jefe!~jeff@66.51.195.8 PRIVMSG #esoteric :That's kind of like "every bad idea will eventually be implemented in JavaScript." < 1576175794 243151 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :we called it jabbascript or jabbadabbascript in ##programming about 24 hours ago ; as in node.js is modular like slicing a chunk of lard off jabba the hut and moving it somewhere else < 1576175810 933898 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :i dont know if those are common nicknames < 1576175849 132780 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :(referring to node having 5000 dependencies i suppose) < 1576175940 688947 :Jefe!~jeff@66.51.195.8 PRIVMSG #esoteric :The Signal desktop client is apparently written in Node. I ran it for a week, my load average wouldn't drop below 3.0, and frequently shot over 15. < 1576176039 392397 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1576176139 210075 :kingoffrance!~x__@c-67-161-241-22.hsd1.ut.comcast.net PRIVMSG #esoteric :thats good, i dont feel bad for being cruel now < 1576176560 300934 :sprocklem!~sprocklem@unaffiliated/sprocklem JOIN :#esoteric < 1576176712 225045 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :https://stackoverflow.com/questions/22593259/check-if-string-is-int-golang < 1576176713 943282 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so terrible < 1576176768 422994 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I mean... the unicode.isDigit is bullshit. < 1576176780 659647 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :then using regexps? pff... > 1576177088 341964 PRIVMSG #esoteric :14[[07Oof14]]4 10 02https://esolangs.org/w/index.php?diff=67916&oldid=67915 5* 03Dart 5* (-94) 10 < 1576177133 748850 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :is that Ook but s/k/f? < 1576177268 775966 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :OLen / 8 < 1576177269 729528 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :uhm. < 1576177285 298945 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :oof has on OLen of 2 so 2 / 8 = 0 so it's executed zero number times < 1576177301 568905 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :probably should be (OLen / 8 ) + 1 as well < 1576177312 26291 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :also... > is f with zero os < 1576177313 824208 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so... < 1576177317 239725 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :OLen always zero < 1576177324 978938 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :means you can't express >>>> with this mechanism < 1576177679 137138 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric : https://stackoverflow.com/questions/22593259/check-if-string-is-int-golang ← the question is poorly defined; many of the answers produce different results in specific cases < 1576177700 821760 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :for example, is "123456789012345678901234567890" a string representing an integer? < 1576177726 835375 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the answer depends on your use case; you can't convert it to an integer but in many cases you'd want to recognise it as one < 1576177739 175824 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :yeh I'm aware of that. < 1576177746 52911 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i've so far avoided starting an argument with my girlfriend about golang. < 1576177750 281876 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :she seems to be a fan < 1576177775 752748 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in languages with compiled regexes, the regex solution is actually one of the most efficient ways of doing that, because it's basically a domain-specific language for generating string validators, and the compiler will have a lot of rules to optimise it < 1576177788 29094 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but I suspect golang doesn't actually compile regexes at compile time < 1576177797 730154 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I don't know any language that does? < 1576177804 52370 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Rust does < 1576177811 548396 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :Interesting. < 1576177836 968760 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :kmc: I like golang a lot. < 1576177843 124525 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :unless it's for GUI stuff < 1576177845 238997 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :then puh < 1576177861 686436 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I don't think there are any reasonably good bindings to do GUI stuff with golang yet. < 1576177888 404979 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :but you know < 1576177903 448986 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :GUI is done in things.. < 1576177906 135085 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :html < 1576177946 90107 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :webviews? < 1576178045 149701 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I mean I'm not sure I'd say "rust does" < 1576178051 381412 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i'm sure someone has a library that does it with a procedural macro < 1576178080 839552 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i don't think the 'regex' crate does < 1576178092 206062 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :it suggests using lazy_static so that each regex is compiled once, but that still happens at runtime < 1576178110 463309 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :looking it up, it seems regex! isn't the recommended way of doing things that the moment < 1576178113 814678 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I'm also sure someone has written a Lisp or Scheme regex library that does it at compile time < 1576178116 798457 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :ok < 1576178125 963024 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so it's more like it could be done in Rust but isn't the default < 1576178130 620426 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :yeah < 1576178132 892584 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(that's disappointing, I thought it would be) < 1576178142 798674 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :muahaha. suck it rust. < 1576178148 691973 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :no, but rust is cool. < 1576178157 471681 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think Perl compiles regexes on first use rather than compile time, too < 1576178159 247120 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :static memory safety is a neat concept. < 1576178165 76906 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :not sure though, its optimiser does weird things sometimes < 1576178190 633254 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :it's just that most oldschool programmers are too scared of it yet so few use it < 1576178214 146421 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :even newschool programmers < 1576178230 293718 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :we had "tech discovery" meetings back at the place I worked < 1576178255 97480 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I introduced Rust at one point. < 1576178287 749462 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I don't know. People just aren't really fond of learning new concepts I guess. < 1576178325 92847 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, I suspect that most compilers will not generate the fastest asm for verifying that a string consists only of digits on any input, short of outright writing the asm < 1576178335 287182 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so we used golang. Which is awesome... better than python, C or Java < 1576178337 890838 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :or C# < 1576178435 486209 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :Rust has a steep learning curve < 1576178442 764786 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :because it tries to provide all of safety, convenience, and performance < 1576178448 304837 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :this means it's nearly as complex as C++ < 1576178455 339233 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :but the complexity is more necessary and less historical/accidental < 1576178482 283306 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :Rust is largely an attempt to take modern C++ concepts and build a similar language without the historical baggage < 1576178487 911791 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :and in fact those concepts are getting backported into C++ < 1576178493 272909 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :(which will make it even more complicated, but that's life) < 1576178564 715205 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :Rust is a cool language with an annoying community and dickish leadership < 1576178570 264108 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :that is also life < 1576178583 943343 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :computers suck, people suck too but in a different way < 1576178664 978424 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :the Rust community is like the Haskell community, a bunch of really excited beginners who think Rust will solve every problem under the sun, plus they're full of themselves for being 'friendly and welcoming' but they don't want to hear about it if your experience is to the contrary < 1576178727 614805 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :11:18 < ais523> hmm, I suspect that most compilers will not generate the fastest asm for verifying that a string consists only of digits on any input, short of outright writing the asm < 1576178733 7638 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i've seen LLVM do some clever things in that direction < 1576178768 782615 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :if you have a switch-case with two branches over a set with less than 64 elements it will make a bitmask and use that as an immediate operand < 1576178876 833960 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :https://gcc.godbolt.org/z/Ce-LBo < 1576178915 27451 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm: https://godbolt.org/z/n3PKGD < 1576178924 810930 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :ok gotta go < 1576178926 80791 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :ttyl < 1576178940 921547 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :https://pastebin.com/WYsqm4aj is how I'd probably go about it if we're talking about no signs involved :D < 1576178949 47225 :APic!apic@apic.name QUIT :Quit: Boot tut gut™. < 1576179011 970652 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :not tested yet < 1576179097 80300 :myname!~myname@ks300980.kimsufi.com QUIT :Ping timeout: 240 seconds < 1576179224 258400 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I suspect the correct option is probably to use the asm instruction VPCMPISTRI, but good luck getting a compiler to generate it < 1576179277 671279 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(I put in the check to make sure that the string's starting address was divisible by 32 to make sure that any resulting overread wouldn't cause issues with page faults, in case the compiler was scared to do an overread and that was suppressing the optimisation) < 1576179360 283682 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :this would be particularly good on long strings or if you were checking lots of different strings in a loop (because you can loop-invariant-code-motion the loading of the list of permitted character ranges) < 1576179531 13423 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so the string has to be <=128 bytes for pcmpistri? < 1576179537 925432 :APic!apic@apic.name JOIN :#esoteric < 1576179540 721931 :Jefe!~jeff@66.51.195.8 PART #esoteric :"Leaving" < 1576179543 456812 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :bunnyocto: <= 128 bits for each call to pcmpistri (16 bytes) < 1576179551 826637 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :however it lets you know if the whole segment of the string you're looking at matches < 1576179562 143101 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if it does you can just look at the next 16 bytes, and so on < 1576179574 397893 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the length limit makes sense because this is using a hardware string-tesing circuit < 1576179575 292358 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :yeh but what about \0? < 1576179583 553665 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :pcmpistri handles \0 itself < 1576179592 601391 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu JOIN :#esoteric < 1576179598 80732 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it has a friend pcmpestri for length-prefixed strings < 1576179622 859614 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :so it stops at a \0? < 1576179662 915623 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes < 1576179693 113437 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the basic idea is to use pcmpistri in a similar way to strspn to check how many bytes at the start of the string are digits < 1576179699 459624 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then you look for the byte just beyond those and see if it's \0 < 1576179709 147740 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if it is, the string's entirely digits < 1576179721 623486 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(you can then adjust for ensuring the string's nonempty, checking for +/-, etc., if you want to) < 1576179744 645539 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if pcmpistri tells you that the 16-byte section of string you're looking at has 16 digits in it, you have to move onto the next section, otherwise you're done < 1576179756 563881 :myname!~myname@ks300980.kimsufi.com JOIN :#esoteric < 1576179855 149965 :FreeFull!~freefull@defocus/sausage-lover JOIN :#esoteric < 1576179858 874077 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(16 digits consecutively at the start, that is) < 1576179895 374867 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :unfortunately it wouldn't work for UTF-8 (you could make it work for UTF-16 though, at least if you confined yourself to ASCII digits) < 1576179902 908554 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or ,hmm < 1576179911 248866 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :actually it does work for UTF-8 if you confine yourself to ASCII digits < 1576179925 621674 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :because you don't actually have to parse it < 1576179953 644786 :xkapastel!uid17782@gateway/web/irccloud.com/x-hdluaemqsjdxbizx JOIN :#esoteric < 1576180437 620934 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :my neighbour is singing since like 3 hours < 1576180483 556615 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :ais523: thx for your explanations. < 1576180576 76222 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :PUNPCKLDQ < 1576180580 304474 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :nice mnemonics. < 1576180712 602094 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :"I suspect that most compilers will not generate the fastest asm for verifying that a string consists only of digits on any input, short of outright writing the asm" => the problem with that stuff is that "fastest" depends on whether you are allowed to assume 31 readable bytes after the end of the string or not, and we still don't have interfaces to malloc that even let you allocate vectors that way, or < 1576180718 518459 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :reference types or containers or any high-level abtstractions to track that info < 1576180770 924647 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :"I put in the check to make sure that the string's starting address was divisible by 32" => yes, that < 1576180788 827848 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oddly enough, C doesn't allow aligned pointers as function arguments < 1576180807 822302 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it supports aligned pointers but there's an explicit rule that prevents you putting an _Alignas on a function argument, or sneaking one in via a typedef < 1576180829 564661 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :hu? < 1576180830 892609 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :why? < 1576180834 214109 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(16 would actually be enough alignment, but I put 32 just in case the compiler could think of something clever to do with the 256-bit vector units) < 1576180840 505102 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :ais523: sure, but you can put those things in a struct < 1576180848 128016 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :why does it care whether a char* is aligned? < 1576180855 912707 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :bunnyocto: it lets you overread safely < 1576180874 634438 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :on basically all modern processors, there's a limit to the memory protection's granularity < 1576180888 843635 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so, say, memory can only go from readable to unreadable at a multiple of 512, or a multiple of 2048 < 1576180906 596447 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so if you know the address is divisible by 16, either the first byte is unreadable or the whole thing is readable < 1576180918 160731 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :on a multiple of 4096 bytes on x86 actually < 1576180927 401473 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I forgot the modern number < 1576180937 35199 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :and I think 8192 in linux userspace, but I'm not sure of that < 1576180937 790060 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :yeh yeh page sizes and what not.... but how does this matter for this purpose? < 1576180938 387874 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it keeps changing, wasting 4K of memory isn't really a big deal nowadays < 1576180958 364644 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :because if you have a string like "12", it might be right at the end of a page < 1576180965 851148 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :if I make like uhm void bar() { char* __align(16) blubb = "blubberlutsch"; foo(blubb); }? < 1576180967 890209 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so you can't read the first 16 bytes in case there's unreadable memory just after it < 1576180990 62188 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :bunnyocto: that works but the function isn't allowed to know that it was given a pointer that's 16-byte aligned, it just gets a char* < 1576181011 707796 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :and, I know I ranted about this a lot, I wish we could eventually transition to larger pages required system-wise, because there's a hard limit that the L1 data cache can be at most 8 pages large, and that's very often the bottleneck < 1576181041 811740 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :that reminds me < 1576181057 14549 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: huh, why the limit? < 1576181058 794031 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :did izabera return after she asked that question about graph algorithm to which I first gave a stupid answer? < 1576181073 422791 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :hi < 1576181077 428856 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :hello < 1576181080 846479 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :like, it doesn't seem significantly harder to make the L1 cache bigger by doubling the page size, and by doubling the number of pages it supports < 1576181081 969548 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :i have returned < 1576181108 800986 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in either case the main cost is going to be the silicon that actually stores the values in the cache, rather than the control circuitry < 1576181121 835045 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and if the control circuitry is the issue, you might want to make cache lines longer instead < 1576181134 432731 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :ais523: the L1 cache has to have a very low latency, so it needs to find which cache line to return when it only knows the linear address, and then verify if that's correct after the physical address is computed. < 1576181134 480738 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :is the issue actually the TLB rather than the L1 cache? that would be more believable < 1576181157 653067 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :ok wait, I'm explaining that wrong < 1576181161 163066 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :b_jonas: i ended up running bfs from each node < 1576181174 891730 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: oh, the L1 cache works on virtual addresses? I'd have expected it to work on physical addresses (as the TLB that caches virtual addresses) < 1576181175 369200 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :easily parallelizable < 1576181183 658803 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :the L1 cache needs to have a very low latency, so it has to do most of the computation when only the linear address is available, the physical isn't < 1576181212 695293 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :so how it works is that it finds the bunch of 8 cache lines whose address matches the linear address modulo the page size, then when the physical address arrives, it chooses one of those < 1576181220 692080 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :it has to be able to do this on two reads in parallel by the way < 1576181227 869052 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :or one read and one write < 1576181246 953555 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :in order to keep the latency low, it can't have more than 8 cache lines with the same address modulo page size < 1576181268 752106 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :that's not actually a limit of 8 pages, though; it's just a limit of 8 addresses that are on the same place within the page < 1576181278 803673 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :the size of the individual cache lines, which happens to be 64 bytes on x86, doesn't influence this < 1576181280 829562 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :there are a huge number of caching effects that have limitations like that < 1576181288 378024 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :ais523: yes, 8 page sizes of total data < 1576181318 846140 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :32 kilobytes, divided to 64 bytes sized cache lines, such that each address modulo 4 kilobyte has at most 8 cache lines < 1576181353 940621 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you could have more while retaining the virtual address lookup behaviour, though < 1576181396 165546 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :"it doesn't seem significantly harder to make the L1 cache bigger by doubling the page size" => you can do that only if the OS guarantees that there can't be small pages anywhere, not even in other processes, because processes can share memory, and even then the cpu would need extra circuitry to handle the compatibility node for old OSes that can't guarantee that, so it's a bit messy < 1576181489 961030 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: no, if you end up with more than 8 addresses in cache that would clash with each other, you just evict one to avoid hte problem < 1576181506 478582 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but if the addresses happen to not clash, you can go with it < 1576181529 220645 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :ais523: no, it's definitely the L1 cache, not the TLB cache. the TLB cache is improved by making most pages large pages (2 megabyte in x86_64), while the OS can still allocate some normal 4 kilobyte sized pages, the TLB can handle the mixing reasonably efficiently < 1576181594 733226 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :ais523: yes, you evict one if you have more than 8 addresses that clash, which means that the total L1 data cache (on a single cpu core) can be no larger than 32 kilobytes total, or 512 cache lines of 64 bytes if you wish. < 1576181639 686096 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :and 32 kilobytes is rather small, it would be nice to be able to increase that for some applications, because the L1 data cache is often the bottleneck < 1576181645 751221 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :it isn't always for all computations, obviously < 1576181670 151540 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :bottleneck for what... < 1576181671 972337 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :these cache lines could be from 512 different pages possibly < 1576181678 642032 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :back in the old day we had 333mhz something < 1576181683 155111 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :and it was running smoothly < 1576181688 291368 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :it should run incredibly fast now < 1576181688 679528 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :or they could contain the entirety of 8 pages < 1576181800 656492 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :also excel 2019 probably has still the same set of features as good old lotus < 1576181839 355712 :ais523!~ais523@unaffiliated/ais523 QUIT :Ping timeout: 265 seconds < 1576182177 839655 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :izabera: good, that's what I figured too eventually. you may have read my answer in the logs. < 1576182355 691863 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :this is really interesting. < 1576182372 180900 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :I don't think that current basic software is any more advanced than like 15y ago < 1576182387 163861 :bunnyocto!b2c5e16e@178.197.225.110 PRIVMSG #esoteric :sure... it looks less pixely but other than that < 1576182726 638788 :ArthurStrong!~ArthurStr@slow.wreckage.volia.net QUIT :Quit: leaving < 1576182886 605189 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1576183849 446832 :ais523!~ais523@unaffiliated/ais523 QUIT :Remote host closed the connection < 1576183921 984949 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1576185173 962586 :bunnyocto!b2c5e16e@178.197.225.110 QUIT :Remote host closed the connection < 1576185221 559766 :myname!~myname@ks300980.kimsufi.com QUIT :Ping timeout: 276 seconds < 1576185592 728889 :myname!~myname@ks300980.kimsufi.com JOIN :#esoteric < 1576187589 281180 :ais523!~ais523@unaffiliated/ais523 QUIT :Quit: quit < 1576188748 796191 :xkapastel!uid17782@gateway/web/irccloud.com/x-hdluaemqsjdxbizx QUIT :Quit: Connection closed for inactivity < 1576190361 696647 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :so the UK general election was today? < 1576190394 384457 :aloril!~aloril@mobile-access-b0484b-248.dhcp.inet.fi QUIT :Ping timeout: 265 seconds < 1576190409 336662 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Yes, the polling places just closed 40 minutes ago. < 1576190451 267756 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :My phone tried to keep telling me how to vote, I don't think it realizes I'm not enfranchised. < 1576190671 745868 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :fizzie: you lied to websites that you're older than your real age because they don't allow you to use the website or buy drugs otherwise, and now your lie bites back in the form of election ads? < 1576190744 510435 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I don't think it's that. < 1576190806 779541 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I did want to share a picture of one of the most misleading infographics from the ads in our mailbox, but I threw it away already. < 1576190849 78898 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :you may be able to find a copy online < 1576190849 334808 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It had a bar chart for Tories, Labour and Lib Dems, and the bar heights were not to scale. < 1576190879 639287 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :was it one of these plots that show bars in 3D with exaggerated perspective for no reason? < 1576190929 810246 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It was flat, but the height difference indicating a 5 percentage-point difference was more or less the same as that for 9. < 1576191009 281823 :int-e!~noone@int-e.eu PRIVMSG #esoteric :well the glyphs are similar too so what's your complaint... < 1576191033 672291 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :They had also drawn an up-pointing triangle on top of their own bar, but it didn't make any more sense even treating the top of the triangle as their bar height. < 1576191066 268467 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :what if you consider the areas of the bars, with the triangle included? < 1576191090 789765 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Hmmm, well. Too late now. < 1576191103 791587 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :search the web, there's probably a copy online < 1576191194 372918 :aloril!~aloril@mobile-access-2e840c-41.dhcp.inet.fi JOIN :#esoteric < 1576191253 921147 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I did find an article about generally misleading leaflets -- https://www.bbc.co.uk/news/uk-politics-50375532 -- though this is mostly about dodgy data and other misrepresentation, rather than graphical tricks. < 1576191383 664015 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu QUIT :Ping timeout: 250 seconds < 1576191435 379155 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :IMO they should just stop with this FPTP stuff. < 1576191446 608352 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu JOIN :#esoteric < 1576191492 769271 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :another of those stupid power outages that they do some nights, when electricity goes down in the whole block for two minutes, then stays up for 10 to 15 minutes, then goes down for 2 minutes again < 1576191504 347600 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :I don't know why they do this so often < 1576191518 194220 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :so expect me to disconnect again within 10 minutes < 1576191623 780911 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :the internet takes two more minutes to come back after the power of course, and even mobile phone disconnects for half a minute at the start of the power outage before the aggregator for the cell tower starts up < 1576192170 860458 :izabera!~izabera@unaffiliated/izabera QUIT :Ping timeout: 268 seconds < 1576192203 586233 :LBPHacker!lbphacker@trigraph.net QUIT :Quit: Entering cryogenic sleep in three, two, on-- < 1576192218 153868 :LBPHacker!lbphacker@trigraph.net JOIN :#esoteric < 1576192218 469707 :b_jonas!~x@catv-176-63-14-129.catv.broadband.hu PRIVMSG #esoteric :hmm, maybe they're skipping the second outage this time? < 1576192242 317175 :izabera!~izabera@unaffiliated/izabera JOIN :#esoteric < 1576192281 836872 :myname!~myname@ks300980.kimsufi.com QUIT :Ping timeout: 268 seconds < 1576192651 684682 :subleq!~gavin@207.173.246.52 QUIT :Ping timeout: 268 seconds < 1576193441 29522 :myname!~myname@ks300980.kimsufi.com JOIN :#esoteric < 1576193639 927637 :subleq!~gavin@207.173.246.52 JOIN :#esoteric < 1576193717 1949 :myname!~myname@ks300980.kimsufi.com QUIT :Ping timeout: 240 seconds < 1576193955 332549 :myname!~myname@ks300980.kimsufi.com JOIN :#esoteric < 1576193956 254255 :Cale!~cale@2607:fea8:9960:35:e9fd:6993:2c05:9aa8 QUIT :Remote host closed the connection > 1576194031 953771 PRIVMSG #esoteric :14[[07Oof14]]4 M10 02https://esolangs.org/w/index.php?diff=67917&oldid=67916 5* 03IFcoltransG 5* (+94) 10Shamelessly plagiarised some categories from Ook! > 1576194315 115223 PRIVMSG #esoteric :14[[07Oof14]]4 M10 02https://esolangs.org/w/index.php?diff=67918&oldid=67917 5* 03IFcoltransG 5* (+5) 10Moved to joke langs cat (w/ permission of author) > 1576194423 392225 PRIVMSG #esoteric :14[[07Joke language list14]]4 10 02https://esolangs.org/w/index.php?diff=67919&oldid=67886 5* 03IFcoltransG 5* (+10) 10/* Brainfuck derivatives */ + Oof (from serious lang list) > 1576194502 131460 PRIVMSG #esoteric :14[[07Language list14]]4 10 02https://esolangs.org/w/index.php?diff=67920&oldid=67911 5* 03IFcoltransG 5* (-10) 10/* O */ Move Oof to joke langs list > 1576194570 15914 PRIVMSG #esoteric :14[[07Oof!14]]4 M10 02https://esolangs.org/w/index.php?diff=67921&oldid=8487 5* 03IFcoltransG 5* (+34) 10Added hint for disambiguation w/ Oof < 1576194698 490104 :Cale!~cale@2607:fea8:9960:35:b53b:253f:7139:ebf6 JOIN :#esoteric > 1576195042 10947 PRIVMSG #esoteric :14[[07Talk:Grime MC14]]4 10 02https://esolangs.org/w/index.php?diff=67922&oldid=67908 5* 03Salpynx 5* (+3598) 10clarifying this was NOT meant to be a finite prescriptive language, but interpreter should still be possible, just never complete