< 1559606817 599204 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1559607053 297009 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 245 seconds < 1559607110 53184 :tromp!~tromp@2a02:a210:1585:3200:99aa:9b18:e9b3:81bc JOIN :#esoteric < 1559607205 529777 :tromp_!~tromp@2a02:a210:1585:3200:1e6:6387:acde:471b JOIN :#esoteric < 1559607316 914948 :int-e!~noone@int-e.eu PRIVMSG #esoteric :hmm, fancy: https://clang.llvm.org/docs/BlockLanguageSpec.html#block-literal-expressions < 1559607342 913762 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(every sufficiently advanced programming language invents a closure type?) < 1559607370 876241 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :mm < 1559607377 257500 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(I encountered this because it made its way into OpenCL) < 1559607391 56080 :tromp!~tromp@2a02:a210:1585:3200:99aa:9b18:e9b3:81bc QUIT :Ping timeout: 258 seconds < 1559607391 437072 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: Oh, they took Objective C's block syntax. I think I've seen this before. < 1559607392 750726 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :blocks have a complictaed abi https://clang.llvm.org/docs/Block-ABI-Apple.html < 1559607403 391676 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :and are mainly meant to work with the objc / apple runtime < 1559607407 293590 :int-e!~noone@int-e.eu PRIVMSG #esoteric :"OpenCL C 2.0 adds support for the clang block syntax." < 1559607423 589231 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :C++ lambdas are a lot more elegant < 1559607426 674123 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :kmc: did you know you can typedef function types in c, not just function pointer types? < 1559607431 58380 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :since they are ~zero cost~ < 1559607434 94586 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :shachaf: I think so < 1559607445 583069 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :it seems nicer < 1559607448 489139 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( You do *not* use "C++" and "elegant" in a sentence. ) < 1559607451 721559 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :but i always saw people do it the other way < 1559607459 537175 :tromp_!~tromp@2a02:a210:1585:3200:1e6:6387:acde:471b QUIT :Ping timeout: 252 seconds < 1559607467 773123 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think lambdas are among the most reasonable of C++ features in the past decade. < 1559607491 436740 :int-e!~noone@int-e.eu PRIVMSG #esoteric :ACTION tries to remember where he heard this "You do not use ... in a sentence." for the first time... < 1559607517 841408 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Though they could have been more reasonable if the language had been designed with them in mind from the beginning. < 1559607585 733642 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :the same is true of most C++11 features < 1559607588 419155 :budonyc!~budonyc@c-24-62-204-147.hsd1.ma.comcast.net JOIN :#esoteric < 1559607598 668515 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :well, a lot of them are just unreasonable < 1559607610 665160 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :man < 1559607617 976831 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :c++ templates are such a joke < 1559607635 143510 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :how do they keep making them more complicated < 1559607647 439055 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :it's the most ridiculous local maximum < 1559607704 445831 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :c++ templates can't even be parsed < 1559607839 321402 :int-e!~noone@int-e.eu PRIVMSG #esoteric :kmc: I would hope that most of that ABI is avoided by inlining. < 1559608527 713125 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1559608695 607761 :adu!~ajr@pool-173-73-86-145.washdc.fios.verizon.net JOIN :#esoteric < 1559608746 558968 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 272 seconds < 1559611718 903414 :FreeFull!~freefull@defocus/sausage-lover QUIT : < 1559611919 830363 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1559611945 971388 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1559613430 745939 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net PRIVMSG #esoteric :zzo38, what do you think about the London Mulligan, if you have an opinion about it? < 1559614170 410774 :budonyc!~budonyc@c-24-62-204-147.hsd1.ma.comcast.net QUIT :Quit: Leaving < 1559617317 421510 :kallisti!466aec39@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1559617385 439878 :kallisti!466aec39@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake QUIT :Remote host closed the connection < 1559618014 621820 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1559618036 278129 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1559618727 82128 :tromp!~tromp@2a02:a210:1585:3200:2893:88a6:a964:89a3 JOIN :#esoteric < 1559619006 66575 :tromp!~tromp@2a02:a210:1585:3200:2893:88a6:a964:89a3 QUIT :Ping timeout: 258 seconds < 1559620506 296647 :contrapumpkin!~copumpkin@haskell/developer/copumpkin QUIT :Quit: My MacBook Pro has gone to sleep. ZZZzzz… < 1559621248 11512 :S_Gautam!uid286066@gateway/web/irccloud.com/x-irqyhgosbziridsa JOIN :#esoteric < 1559623800 520690 :tromp!~tromp@2a02:a210:1585:3200:ad1f:4190:1dbf:def2 JOIN :#esoteric < 1559623945 893561 :sebbu3!~sebbu@unaffiliated/sebbu JOIN :#esoteric < 1559624069 527060 :tromp!~tromp@2a02:a210:1585:3200:ad1f:4190:1dbf:def2 QUIT :Ping timeout: 252 seconds < 1559624160 463830 :sebbu!~sebbu@unaffiliated/sebbu QUIT :Ping timeout: 244 seconds < 1559626207 528101 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1559626366 580518 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1559627540 518065 :AnotherTest!~turingcom@ptr-82l26zfnlgwh4k4ewtw.18120a2.ip6.access.telenet.be JOIN :#esoteric < 1559627809 508720 :AnotherTest!~turingcom@ptr-82l26zfnlgwh4k4ewtw.18120a2.ip6.access.telenet.be QUIT :Ping timeout: 252 seconds < 1559630298 536988 :tromp!~tromp@2a02:a210:1585:3200:ad1f:4190:1dbf:def2 JOIN :#esoteric < 1559630559 513094 :tromp!~tromp@2a02:a210:1585:3200:ad1f:4190:1dbf:def2 QUIT :Ping timeout: 252 seconds < 1559630672 205985 :adu!~ajr@pool-173-73-86-145.washdc.fios.verizon.net QUIT :Quit: adu < 1559630861 87653 :tromp!~tromp@2a02:a210:1585:3200:ad1f:4190:1dbf:def2 JOIN :#esoteric > 1559632925 415381 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 N10 02https://esolangs.org/w/index.php?oldid=63049 5* 03JonoCode9374 5* (+692) 10Just want some clarification about the ENC command > 1559632959 248922 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63050&oldid=63049 5* 03JonoCode9374 5* (+93) 10Added tag > 1559633586 342741 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 10 02https://esolangs.org/w/index.php?diff=63051&oldid=63050 5* 03JonoCode9374 5* (+238) 10/* The ENC Command */ > 1559634165 535778 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 10 02https://esolangs.org/w/index.php?diff=63052&oldid=63051 5* 03JonoCode9374 5* (+369) 10/* The CHS Command */ new section < 1559634617 699734 :b_jonas!~x@catv-176-63-25-31.catv.broadband.hu JOIN :#esoteric > 1559634725 99080 PRIVMSG #esoteric :14[[07Deadfish "self-interpreter"14]]4 10 02https://esolangs.org/w/index.php?diff=63053&oldid=63013 5* 03JonoCode9374 5* (+849) 10Added python interpreter for this esolang < 1559635020 640669 :b_jonas!~x@catv-176-63-25-31.catv.broadband.hu PRIVMSG #esoteric :`? quotefmt < 1559635021 885049 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :quotefmt? ¯\(°​_o)/¯ < 1559635025 817516 :b_jonas!~x@catv-176-63-25-31.catv.broadband.hu PRIVMSG #esoteric :`? quoteformat < 1559635026 950760 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :quoteformat is: message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two. < 1559635034 26545 :b_jonas!~x@catv-176-63-25-31.catv.broadband.hu PRIVMSG #esoteric :`quote fizzie after < 1559635034 808889 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :13) Finally I have found some actually useful purpose for it. < 1559635051 337693 :b_jonas!~x@catv-176-63-25-31.catv.broadband.hu PRIVMSG #esoteric :are old quotes excloded from quoteformat? or should we amend them? < 1559636805 776835 :b_jonas!~x@catv-176-63-25-31.catv.broadband.hu QUIT :Quit: leaving < 1559637289 69533 :int-e!~noone@int-e.eu PRIVMSG #esoteric :hmm, doesn't CL_DEVICE_MAX_COMPUTE_UNITS = 10 (0xa) indicate that I should be able to subdivide the device using clCreateSubDevices ... < 1559637387 66972 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: are you making an md5 collision < 1559637387 918623 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :twh < 1559637410 353515 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Ah, no. < 1559637424 44012 :int-e!~noone@int-e.eu PRIVMSG #esoteric :There's also this: CL_DEVICE_PARTITION_MAX_SUB_DEVICES = 1 < 1559637475 126890 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: I intend to make a partial one. 80 bits, maybe 96. < 1559637535 117467 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Maybe I should use OpenCL. < 1559637537 424835 :int-e!~noone@int-e.eu PRIVMSG #esoteric :The point is really to do *something* with OpenCL. < 1559637553 377388 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Or maybe OpenGL compute shaders, since I was doing some other OpenGL things? < 1559637603 568189 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(I have a single GTX 1060. It's good for about 5GH/s, for this rainbow-like application.) < 1559637621 535786 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :5GHHz < 1559637645 623825 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I guess the right way to do this is the parallel rho algorithm? < 1559637660 870122 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(So in addition to computing MD5, it's also taking the previous hash and constructing a message from that.) < 1559637671 158261 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Yes. < 1559637743 201331 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :So you need to encode the hash in a GHC identifier, I guess. < 1559637748 335399 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Assuming that's what you're going for. < 1559637820 143904 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Yeah. I'm targeting the unicode range 0x20000 -- 0x27FFF, since those are all valid in ids. < 1559637865 662045 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> map chr [0x20000, 0x27fff] < 1559637868 230560 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : "\131072\163839" < 1559637872 378890 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> text $ map chr [0x20000, 0x27fff] < 1559637874 906647 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 𠀀𧿿 < 1559637884 844799 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`unidecode 𠀀𧿿 < 1559637885 512345 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​[U+20000 CJK UNIFIED IDEOGRAPH-20000] [U+27FFF CJK UNIFIED IDEOGRAPH-27FFF] < 1559637888 364614 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Right < 1559637921 594153 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(it's a consecutive range and covers 30% of all the valid characters for identifiers) < 1559637936 565836 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> let 𠀀𧿿 = 42 in 𠀀𧿿 < 1559637939 197637 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 42 < 1559637940 143430 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> map (generalCategory . chr) [0x20000, 0x27fff, 0x28000] < 1559637942 371426 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [OtherLetter,OtherLetter,OtherLetter] < 1559637985 735998 :int-e!~noone@int-e.eu PRIVMSG #esoteric :it's actually complicated: http://paste.debian.net/1085969/ < 1559637993 14856 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> unwords $ [printf "%x" x | x <- 0x28000, generalCategory (chr x) /= OtherLetter] < 1559637995 595653 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : error: < 1559637995 717737 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : • No instance for (Num [Int]) arising from the literal ‘0x28000’ < 1559637995 717795 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : • In the expression: 0x28000 < 1559638000 347152 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> unwords $ [printf "%x" x | x <- [0x28000..], generalCategory (chr x) /= OtherLetter] < 1559638002 950272 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : "2a6d7 2a6d8 2a6d9 2a6da 2a6db 2a6dc 2a6dd 2a6de 2a6df 2a6e0 2a6e1 2a6e2 2a6... < 1559638039 38903 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> map (generalCategory . chr) [0x2a6d7] < 1559638041 287003 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [NotAssigned] < 1559638274 895004 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> map length . sortBy (compare `on` negate . length) . filter (\x -> generalCategory (head x) `elem` [UppercaseLetter, LowercaseLetter, TitlecaseLetter, ModifierLetter, OtherLetter, NonSpacingMark, DecimalNumber, OtherNumber]) . groupBy ((==) `on` generalCategory) $ ['\0'..] < 1559638277 624749 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [42711,20941,11172,6582,4149,1143,1071,921,620,569,542,366,363,332,311,268,2... < 1559638305 654663 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> map (\(x:_) -> printf "%x" x :: String) . sortBy (compare `on` negate . length) . filter (\x -> generalCategory (head x) `elem` [UppercaseLetter, LowercaseLetter, TitlecaseLetter, ModifierLetter, OtherLetter, NonSpacingMark, DecimalNumber, OtherNumber]) . groupBy ((==) `on` generalCategory) $ ['\0'..] < 1559638308 591988 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : ["20000","4e00","ac00","3400","2a700","a016","13000","12000","1401","16800",... < 1559638329 201512 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :netcraft confirms it < 1559638361 43947 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> length $ filter (\x -> generalCategory (head x) `elem` [UppercaseLetter, LowercaseLetter, TitlecaseLetter, ModifierLetter, OtherLetter, NonSpacingMark, DecimalNumber, OtherNumber]) . groupBy ((==) `on` generalCategory) $ ['\0'..] < 1559638363 586026 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 2087 < 1559638368 718872 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Well, what I did isn't quite correct, for two reasons. But still. < 1559638394 587861 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> length $ filter (\x -> generalCategory x `elem` [UppercaseLetter, LowercaseLetter, TitlecaseLetter, ModifierLetter, OtherLetter, NonSpacingMark, DecimalNumber, OtherNumber]) $ ['\0'..] < 1559638397 588996 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 105253 < 1559638414 421553 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> 32768 / (105253+2) < 1559638416 665154 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 0.3113201273098665 < 1559638423 972173 :int-e!~noone@int-e.eu PRIVMSG #esoteric :that's the 30% figure < 1559638425 399586 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :@let reasonableCodepoint x = x `elem` [UppercaseLetter, LowercaseLetter, TitlecaseLetter, ModifierLetter, OtherLetter, NonSpacingMark, DecimalNumber, OtherNumber] < 1559638427 5479 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : Defined. < 1559638453 433855 :int-e!~noone@int-e.eu PRIVMSG #esoteric :"for two reasons" was nice. < 1559638471 382909 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Hmm? < 1559638477 954935 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It might be more than two reasons, but I thought of two. < 1559638488 827572 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I thought you meant ' and _. < 1559638514 449943 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Oh, no. Three reasons. < 1559638537 214671 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I meant that if you have OtherLetter next to UppercaseLetter or something they should count as one contiguous valid block. < 1559638554 530300 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Oh. < 1559638561 660566 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :And that surrogate code units and so on don't show up in ['\0'..] so it's not really contiguous. < 1559638576 382432 :int-e!~noone@int-e.eu PRIVMSG #esoteric :yeah the whole grouping-by-category-first is a bit weird to my mind. < 1559638579 930066 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Or do they? < 1559638585 476771 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I guess they do. < 1559638592 579641 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> '\xd800' `elem` ['\0'..] < 1559638595 171406 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : True < 1559638651 93924 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :@undef < 1559638651 443984 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Undefined. < 1559638673 48909 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :@let reasonableCodepoint x = generalCategory x `elem` [UppercaseLetter, LowercaseLetter, TitlecaseLetter, ModifierLetter, OtherLetter, NonSpacingMark, DecimalNumber, OtherNumber] < 1559638674 751946 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : Defined. < 1559638687 57271 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> (length ['\0'..], fromEnum (last ['\0'..])) < 1559638688 41616 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> map (\(x:_) -> printf "%x" x :: String) . sortBy (compare `on` negate . length) . filter (\(x:_) -> reasonableCodepoint x) . groupBy ((==) `on` reasonableCodepoint) $ ['\0'..] < 1559638689 658047 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : (1114112,1114111) < 1559638693 339128 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : ["20000","4e00","ac00","3400","2a700","a000","13000","12000","1401","16800",... < 1559638697 10299 :int-e!~noone@int-e.eu PRIVMSG #esoteric :no gaps ^^ < 1559638705 604576 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> map length . sortBy (compare `on` negate . length) . filter (\(x:_) -> reasonableCodepoint x) . groupBy ((==) `on` reasonableCodepoint) $ ['\0'..] < 1559638710 882669 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [42711,20941,11172,6582,4149,1165,1071,921,620,569,542,458,366,363,340,333,3... < 1559638725 480990 :int-e!~noone@int-e.eu PRIVMSG #esoteric :oh I see what you're really doing there. < 1559638726 866819 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I must've been thinking of Data.Text. < 1559638775 226216 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> reverse . sort . map length . group . zipWith (-) [0..] . map fromEnum . filter reasonableCodepoint $ ['\0'..] < 1559638781 986941 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [42711,20941,11172,6582,4149,1165,1071,921,620,569,542,458,366,363,340,333,3... < 1559638907 118856 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :zipWith (-) [0..] is a bit odd < 1559638934 856604 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :@undef < 1559638935 95797 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Undefined. < 1559638952 527708 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :@let reasonableCodepoint x = generalCategory x `elem` [UppercaseLetter, LowercaseLetter, TitlecaseLetter, ModifierLetter, OtherLetter, NonSpacingMark, DecimalNumber, OtherNumber] || x == '\'' || x == '_' < 1559638953 972570 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : Defined. < 1559638965 319627 :int-e!~noone@int-e.eu PRIVMSG #esoteric :zipWith (-) [0..] maps each consecutive range to a constant. < 1559638987 27829 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Right. > 1559638987 508174 PRIVMSG #esoteric :14[[07Deadfish "self-interpreter"14]]4 10 02https://esolangs.org/w/index.php?diff=63054&oldid=63053 5* 03JonoCode9374 5* (-4) 10Looks like I forgot how to use html < 1559638989 731821 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(but makes it hard to reconstruct the original values... so the proper way would be to construct a pair instead) < 1559639017 618812 :int-e!~noone@int-e.eu PRIVMSG #esoteric ::t groupBy < 1559639018 955705 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :(a -> a -> Bool) -> [a] -> [[a]] < 1559639067 987985 :int-e!~noone@int-e.eu PRIVMSG #esoteric :That zipWith may be a bit too clever for its own good. < 1559639100 201106 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :If you just want the numbers you can do something simpler. < 1559639112 686318 :lifthrasiir!~lifthrasi@ec2-52-79-98-81.ap-northeast-2.compute.amazonaws.com QUIT :Quit: No Ping reply in 180 seconds. < 1559639153 626570 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :> reverse . sort . map length . filter (id . head) . group . map reasonableCodepoint $ ['\0'..] < 1559639158 400975 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [42711,20941,11172,6582,4149,1165,1071,921,620,569,542,458,366,363,340,333,3... < 1559639181 556537 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :good luck reconstructing the original values now hth < 1559639201 992240 :lifthrasiir!~lifthrasi@ec2-52-79-98-81.ap-northeast-2.compute.amazonaws.com JOIN :#esoteric < 1559639210 315801 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :lifthrasiir: hifthrasiir < 1559639233 732888 :int-e!~noone@int-e.eu PRIVMSG #esoteric :well, same thing... keep the old values around < 1559639240 309441 :int-e!~noone@int-e.eu PRIVMSG #esoteric :"id ." is... fun. < 1559639263 270920 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(did you have a "fst" there?) < 1559639264 405224 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :gotta make sure you get the identity of the value < 1559639269 143250 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I had "filter id" < 1559639277 664408 :int-e!~noone@int-e.eu PRIVMSG #esoteric :@let papers = id < 1559639279 35541 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : Defined. < 1559639279 86238 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :And then I remembered it was a list. < 1559639352 480791 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :anyway you gotta do it on the gpu. lambdabot is too slow. < 1559640493 509883 :AnotherTest!~turingcom@ptr-82l26zfnlgwh4k4ewtw.18120a2.ip6.access.telenet.be JOIN :#esoteric < 1559641239 675860 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 JOIN :#esoteric < 1559641404 330308 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: I think it's technically even more complicated, because the middle dot is also valid inside identifier, plus there's a small set of extra identifier characters that are that only for legacy compatibility reasons (I don't know if Haskell follows that, but that's the unicode recommendation) < 1559642572 468121 :lifthrasiir!~lifthrasi@ec2-52-79-98-81.ap-northeast-2.compute.amazonaws.com PRIVMSG #esoteric :shachaf: ah, hi < 1559642579 985020 :lifthrasiir!~lifthrasi@ec2-52-79-98-81.ap-northeast-2.compute.amazonaws.com PRIVMSG #esoteric :(was afk for an hour) < 1559643477 579396 :nfd!~nfd9001@c-67-183-33-240.hsd1.wa.comcast.net JOIN :#esoteric < 1559643528 275002 :nfd9001!~nfd9001@2601:602:8500:2443:84ff:1cfc:e4b:c2a QUIT :Ping timeout: 252 seconds < 1559643717 253067 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :wob_jonas: I was following what GHC does, which int-e posted earlier. < 1559643734 918127 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Unicode is in no position to dictate to languages what is or isn't an identifier. < 1559643740 335495 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :sure < 1559643773 241719 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :it jsut gives them a reasonable default about which characters are identifier start chars and which ones are identifier continue chars, and libraries provide an implementation with that, < 1559643776 165256 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 248 seconds < 1559643807 873724 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and since that sort of thing is easy to mess up, and you need it on your computer anyway for stuff like parsing xml, it's often best to use it < 1559643844 136124 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I would be much happier if my computer never parsed any XML. < 1559643844 763487 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :of course some languages modify the rules, like allowing hyphens, allowing apostrophes, reserving some keywords or reserving some forms of identifiers for library macros, etc < 1559643880 325812 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1559643881 640324 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: I don't like XML, but there are lots of existing data available as an XML that I want to parse because I want the contained data < 1559643908 623494 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and yes, some languages count uppercase and lowercase identifiers differently < 1559643911 569995 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :including haskell and prolog < 1559644060 898288 :int-e!~noone@int-e.eu PRIVMSG #esoteric :what is OpenCL's excuse for not having something like http://paste.debian.net/1085993/ ;-) (or did I miss it...) < 1559644140 713633 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: what is c's excuse for not having that < 1559644149 949642 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :There's a certain kind of esolang of which I'd like to know if it exists, and if not, whether it's possible to make it. I'll probably think more about whether it's possible, but let me ask about it because someone else might already know about it. < 1559644174 365640 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: Well, Posix has strerror at least. < 1559644184 502254 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :The esolang I'd want is a sort of djinn esolang, a functional language where you never write function bodies, but only the types of functions you define, plus data type definitions. < 1559644191 246852 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :By the way, I have a C macro I couldn't figure out how to make fake-varargs < 1559644219 290358 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :The compiler then derives the body of each function, where what the body can contain is seriously constrained by langauge rules. < 1559644229 988962 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :#define ShowEnumVal3(val, e1, e2, e3) ((val) == (e1) ? #e1 : (val) == (e2) ? #e2 : (val) == (e3) ? #e3 : "UNKNOWN") < 1559644236 911451 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I have one of those for every k up to 8. < 1559644250 959117 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(I mean, ideally each of these errors should come with a human readable description...) < 1559644258 162154 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But the usual cpp foreach trickery doesn't work here. < 1559644262 784781 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :Only I want it to be elegant too, which includes that adding new declarations can make the program invalid because of ambiguity, but mustn't make the program valid but with a different meaning; < 1559644277 889157 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and obviously I also want the language to be powerful enough to express any program. < 1559644289 318795 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :Does an esolang like this already exist? < 1559644373 636041 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :This is used as e.g. «char *name = ShowEnumVal3(e.xmapping.request, MappingModifier, MappingKeyboard, MappingPointer);» < 1559644397 740318 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think what I need is a real macro system instead of string substitution. < 1559644443 364619 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: also, annoyingly, those values are not defined in an enum, so your macro wouldn't even help < 1559644463 350814 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :My macro doesn't rely on enums. < 1559644474 647965 :int-e!~noone@int-e.eu PRIVMSG #esoteric :hmm < 1559644475 996739 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :(In fact most uses of it are for #defines.) < 1559644489 445725 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :(Which is why the usual trick doesn't work.) < 1559644555 737717 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Oh, so it does work... Hmm. Where did I go wrong earlier... < 1559644574 923430 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Can you believe that in the year 2019 people still write #define str(x) str2(x) and #define str2(x) #x ? < 1559644605 285254 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Yes. < 1559644641 269272 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :anyway cpp is the best < 1559644647 341017 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I posted my fmt macro in here, right? < 1559644665 978327 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Yes. < 1559644668 578688 :int-e!~noone@int-e.eu PRIVMSG #esoteric :How bad of an idiom is sizeof(err)/sizeof(*err) ? < 1559644671 881679 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: no of course not. we don't define such things, we include hundred megabyte large libraries to get such a macro with a long prefixed name instead. < 1559644675 757045 :int-e!~noone@int-e.eu PRIVMSG #esoteric :yes you did < 1559644693 874180 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :because don't reinvent the wheel < 1559644713 202747 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I have a numof() macro that checks that the type of the argument is array rather than pointer. < 1559644719 545169 :int-e!~noone@int-e.eu PRIVMSG #esoteric :that wheel thing < 1559644725 508145 :int-e!~noone@int-e.eu PRIVMSG #esoteric :wheels have been reinvented numerous times < 1559644730 85150 :int-e!~noone@int-e.eu PRIVMSG #esoteric :and that's a good thing < 1559644739 365047 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :The check only works with gcc/clang but the macro can fall back to the standard behavior. < 1559644756 453833 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: #define str BOOST_PP_STRINGIZE < 1559644801 621760 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :tdnh < 1559644868 884478 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :there's probably one smewhere in the P99 library too < 1559644970 662345 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :or the G_STRINGIFY macro from glib < 1559644988 667224 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :see, there's no need to define yet another one < 1559645007 342974 :xvnvx!~xvnvx@unaffiliated/xvnvx QUIT :Quit: ZNC 1.7.1 - https://znc.in < 1559645013 87762 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :The point is not the overhead of defining it. < 1559645076 891337 :xvnvx!~xvnvx@unaffiliated/xvnvx JOIN :#esoteric < 1559645081 614606 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :incidentally, do I understand it correctly that the "g" in the name of "glib" comes from "gtk" and that comes from "gimp" and that comes from "gnu"? < 1559645101 874987 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I think "gtk" originally stood for "gimp toolkit" < 1559645116 253920 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and "gimp" stands for "GNU image manipulation program" < 1559645125 571662 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :but I don't really know where the "glib" name comes from < 1559645207 25952 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :glib stands for glib library < 1559645211 943732 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :and gtk stands for gtk toolkit < 1559645215 114629 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :and so on < 1559645221 972836 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :g never stands for anything < 1559645271 207311 :xvnvx!~xvnvx@unaffiliated/xvnvx QUIT :Excess Flood < 1559645321 655190 :Cale!~cale@2607:fea8:995f:fb71:b9c7:d768:2a:c389 QUIT :Ping timeout: 250 seconds < 1559645358 244512 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru JOIN :#esoteric > 1559645408 733252 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63055&oldid=63052 5* 03A 5* (+994) 10Specify > 1559645428 860524 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63056&oldid=63055 5* 03A 5* (+4) 10/* The ENC Command */ : Cosmetics < 1559645432 239042 :xvnvx!~xvnvx@unaffiliated/xvnvx JOIN :#esoteric > 1559645755 602734 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63057&oldid=63056 5* 03A 5* (+479) 10/* The ENC Command */ > 1559645900 619194 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63058&oldid=63057 5* 03A 5* (+263) 10/* The ENC Command */ > 1559645969 633643 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63059&oldid=63058 5* 03A 5* (+62) 10/* The ENC Command */ > 1559645998 943886 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63060&oldid=63059 5* 03A 5* (-1) 10/* The ENC Command */ Bad English < 1559646051 73000 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :GPS stands for GPS positioning system < 1559646088 507378 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Taneb invented it. < 1559646104 223024 :Cale!~cale@2607:fea8:995f:fb71:f40f:dc3c:7549:90d8 JOIN :#esoteric < 1559646108 555340 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`` cd wisdom; echo g* < 1559646109 277526 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :galaxy gamemanj gaspacho gaspasjo gaspatsjo gaszpacho gazpacho gazspaczo gblh gene ray gentlebeing gey ghci ghoti ghoul ginorst glados glass glogbot glumgot gnimmargorp go goat god's number golf gonad goofix google gopher gostak grace period graham's number grammar gray greater gregor grimmargorp ground water group grue guarantee guillible < 1559646141 380875 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :y'all went overboard with the gajpako > 1559646143 375878 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63061&oldid=63060 5* 03A 5* (+334) 10/* The CHS Command */ < 1559646145 553170 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :`? gray < 1559646146 658546 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Gray is e common misspalling of grey. < 1559646148 461212 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :`? grey < 1559646149 580848 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :grey? ¯\(°​_o)/¯ < 1559646167 301440 :xvnvx!~xvnvx@unaffiliated/xvnvx QUIT :Quit: ZNC 1.7.1 - https://znc.in < 1559646170 424581 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`? guillible < 1559646171 492278 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :A guillible person is someone who can be fooled with a Scheme script. > 1559646176 560029 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63062&oldid=63061 5* 03A 5* (+73) 10/* The CHS Command */ Add < 1559646176 902357 :xvnvx!~xvnvx@unaffiliated/xvnvx JOIN :#esoteric < 1559646193 899335 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`? god's number < 1559646194 992873 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :God's number is the maximum number of moves a Rubik's cube can require to solve. It is equal to 20. No, really. Look it up. < 1559646220 883644 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`dowg god's number < 1559646222 492659 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :8411:2016-06-08 le/rn God\'s Number/God\'s number is the maximum number of moves a Rubik\'s cube can require to solve. It is equal to 20. No, really. Look it up. < 1559646232 564432 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :`? greater < 1559646233 520779 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :A greater than sign instructs the shell to send the output of the command to a file. Not very mnemonic, but a grater is the closest thing to a file that ASCII has. < 1559646246 130701 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :oh right, that one's mine too < 1559646253 860807 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :gene ray is mine obviously < 1559646256 348844 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :`? go < 1559646257 476527 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Go is a common irregular verbal game programming language invented by the Germanic Taneb tribes catching monsters in the strategic territories of East Asia. < 1559646268 116282 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :the pen is greater than the sword < 1559646281 942101 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :`? gey < 1559646282 928883 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :I know nothing about Gey, sir. < 1559646297 516443 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Taneb: Do you like digital signal processing? < 1559646305 713103 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :Not hugely, I'm afraid < 1559646314 669583 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :Although I haven't done it much < 1559646327 905978 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I agree with you, analog signal processing is better. < 1559646337 168143 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Do you like garbage collectors? < 1559646350 973321 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :gc stands for gc collector presumably < 1559646377 21835 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :No, they didn't collect my landfill garbage properly the other week, they left half of it in the wheelie bin > 1559646420 66741 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63063&oldid=63062 5* 03A 5* (+144) 10/* The ENC Command */ Add < 1559646425 290015 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :you do wheelies with bins? < 1559646445 810332 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :most people use bicycles or motorcycles > 1559646606 105165 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63064&oldid=63063 5* 03A 5* (-5) 10 < 1559646857 352665 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :shachaf: except for tom7 of course > 1559646884 450221 PRIVMSG #esoteric :14[[07EnScript14]]4 M10 02https://esolangs.org/w/index.php?diff=63065&oldid=63048 5* 03A 5* (+44) 10/* ENC */ That is impossible > 1559647181 595661 PRIVMSG #esoteric :14[[07Collide14]]4 N10 02https://esolangs.org/w/index.php?oldid=63066 5* 03A 5* (+177) 10Created page with "[[Collide]] is an [[esoteric programming language]] that features balls inside a sandbox that maps its edges. [[Category:Languages]] [[Category:2019]] [[Category:Unimplemented]]" < 1559647318 915930 :sebbu3!~sebbu@unaffiliated/sebbu NICK :sebbu > 1559647430 843151 PRIVMSG #esoteric :14[[07Collide14]]4 M10 02https://esolangs.org/w/index.php?diff=63067&oldid=63066 5* 03A 5* (+435) 10Example program > 1559647914 651167 PRIVMSG #esoteric :14[[07Collide14]]4 10 02https://esolangs.org/w/index.php?diff=63068&oldid=63067 5* 03A 5* (+393) 10/* Example source code (this is not yet documented) */ > 1559647995 237714 PRIVMSG #esoteric :14[[07Collide14]]4 M10 02https://esolangs.org/w/index.php?diff=63069&oldid=63068 5* 03A 5* (+115) 10/* Partial syntax */ > 1559648006 421742 PRIVMSG #esoteric :14[[07Collide14]]4 M10 02https://esolangs.org/w/index.php?diff=63070&oldid=63069 5* 03A 5* (-8) 10/* Partial syntax */ > 1559648080 912658 PRIVMSG #esoteric :14[[07Collide14]]4 M10 02https://esolangs.org/w/index.php?diff=63071&oldid=63070 5* 03A 5* (+305) 10/* Syntax */ > 1559648102 538969 PRIVMSG #esoteric :14[[07Collide14]]4 M10 02https://esolangs.org/w/index.php?diff=63072&oldid=63071 5* 03A 5* (+1) 10/* Example source code (this is not yet documented) */ > 1559648200 370260 PRIVMSG #esoteric :14[[07Collide14]]4 10 02https://esolangs.org/w/index.php?diff=63073&oldid=63072 5* 03A 5* (+188) 10/* Syntax */ > 1559648253 178326 PRIVMSG #esoteric :14[[07Collide14]]4 M10 02https://esolangs.org/w/index.php?diff=63074&oldid=63073 5* 03A 5* (+85) 10/* Syntax */ < 1559648308 608117 :copumpkin!~copumpkin@haskell/developer/copumpkin JOIN :#esoteric < 1559648468 525853 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Backfilled the logs. > 1559649803 659156 PRIVMSG #esoteric :14[[07Talk:EnScript14]]4 10 02https://esolangs.org/w/index.php?diff=63075&oldid=63064 5* 03JonoCode9374 5* (+220) 10/* The ENC Command */ < 1559650814 160023 :int-e!~noone@int-e.eu PRIVMSG #esoteric :@let import GHC.Fingerprint < 1559650815 748889 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : Defined. < 1559650867 822558 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> map fingerprintString ["T\153831\150310\131091\149266\154351\131093\131072\131072\131072","T\143618\144507\156283\135458\133470\131097\131072\131072\131072"] < 1559650870 238626 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [7afb892b07b256865b1116e31478f2bf,7afb892b07b256865b11353481ce648e] < 1559650881 309882 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: ^^ 80 bit collision < 1559651804 118251 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Now crunching a 96 bit collision at 5GH/s. So it'll be a while, but should finish within a day. < 1559651808 797075 :int-e!~noone@int-e.eu PRIVMSG #esoteric :or two. < 1559651871 419660 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :int-e: are you just using a dumb birthday attack, or something specific about md5? < 1559651963 926998 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :dumb birthday attack, according to those numbers < 1559652479 906311 :int-e!~noone@int-e.eu PRIVMSG #esoteric :wob_jonas: I'm doing the dumb birthday attack indeed < 1559652499 493473 :int-e!~noone@int-e.eu PRIVMSG #esoteric :wob_jonas: and I know that it's (almost) impractical to scale it up to a full collision. < 1559652543 847206 :int-e!~noone@int-e.eu PRIVMSG #esoteric :But it's unclear how to apply the differential paths based techniques when about half of the bits of the input are fixed. < 1559652847 870177 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :int-e: ok. are you using those optimized cycle-based methods that let you get away with much less than a table of 2**48 hashes? < 1559652891 646848 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I found those quite interesting, and because you don't have enough RAM for 2**48 entries, but may have enough for a smaller table, it could be faster too < 1559652911 282286 :int-e!~noone@int-e.eu PRIVMSG #esoteric :hmm, not really cycle based... but based on distinguished elements (the rainbow table trick) < 1559652923 508308 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :yeah, that < 1559652936 595848 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :not cycle based, but computing deterministic chains that you can reproduce < 1559652964 159781 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and once you find two chains intersecting, you can compute them again from an earlier stage to find the first collision, < 1559652967 430657 :int-e!~noone@int-e.eu PRIVMSG #esoteric :2^48/2^30 is what I'm aiming for. < 1559652999 583523 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :2^48/2^30 what? < 1559653001 970509 :int-e!~noone@int-e.eu PRIVMSG #esoteric :which is probably not the best memory/time trade-off for my hardware, but who cares. < 1559653020 804822 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :2^30 entries in memory? < 1559653028 462672 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I'm only storing hashes with the 30 lowest bits zero. < 1559653032 623548 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :oh < 1559653038 5629 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :yeah, that may be too strong, but whatever < 1559653063 959448 :int-e!~noone@int-e.eu PRIVMSG #esoteric :it fits my naive approach... I'm not actually storing those in memory but in a file, because I'm lazy. < 1559653063 959496 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :that means you have to recompute a 2^30 long chain. how fast can you do that, since you don't have parallelism then? < 1559653090 167694 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :storing them in a file is fine because the OS can cache the file in RAM < 1559653115 250280 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :the point is not to have such a large database to have to spin the disk up for every access < 1559653199 10178 :int-e!~noone@int-e.eu PRIVMSG #esoteric :it'll take a couple of minutes < 1559653229 875623 :int-e!~noone@int-e.eu PRIVMSG #esoteric :on the CPU I get about 10MH/s sequentially. < 1559653252 836027 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :seems workable < 1559653295 955507 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(with plain C code) < 1559653354 585835 :int-e!~noone@int-e.eu PRIVMSG #esoteric :wob_jonas: I'm storing them in a text file... so sort | uniq works ;-) < 1559653627 333066 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ok < 1559653757 983020 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1559653799 909595 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :hi Sgeo < 1559653840 610492 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :int-e: so what was the context for this? why did you want haskell identifiers and md5 in particular? is it md5 because of git? < 1559653855 530255 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :no wait, git uses sha-1, right? < 1559653966 620517 :Sgeo!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 272 seconds < 1559654188 419410 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :> map (\s -> map ord) ["T\153831\150310\131091\149266\154351\131093\131072\131072\131072","T\143618\144507\156283\135458\133470\131097\131072\131072\131072"] < 1559654190 746981 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [<[Char] -> [Int]>,<[Char] -> [Int]>] < 1559654194 354100 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :how do string escapes work? < 1559654208 486206 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :> map (\s -> map ord s) ["T\153831\150310\131091\149266\154351\131093\131072\131072\131072","T\143618\144507\156283\135458\133470\131097\131072\131072\131072"] < 1559654210 695395 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [[84,153831,150310,131091,149266,154351,131093,131072,131072,131072],[84,143... < 1559654237 487264 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> "\84\%123" < 1559654239 494054 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : :1:6: error: < 1559654239 601147 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : lexical error in string/character literal at character '%' < 1559654244 638114 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> "\84\&123" < 1559654246 696610 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : "T123" < 1559654251 669235 :int-e!~noone@int-e.eu PRIVMSG #esoteric :that was the wrong magic character. < 1559654262 150531 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :no, I just wanted to decode those strings you typed < 1559654275 627696 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> text "T\153831\150310\131091\149266\154351\131093\131072\131072\131072" < 1559654278 696 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : T𥣧𤬦𠀓𤜒𥫯𠀕𠀀𠀀𠀀 < 1559654278 159545 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :because I didn't remember the haskell syntax < 1559654297 731574 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :um, I don't much care about the particular kanji, more like the code points < 1559654308 145319 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :but lambdabot's answer gave those < 1559654351 696995 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I used printf("\"%c\\%d\\%d\\%d\\%d\\%d\\%d\\%d\\%d\\%d\"\n", to generate those strings ;-) < 1559654464 366686 :int-e!~noone@int-e.eu PRIVMSG #esoteric :wob_jonas: the context is GHC. < 1559654527 834986 :int-e!~noone@int-e.eu PRIVMSG #esoteric :A collision would break the type safety of Data.Typeable. < 1559654534 192617 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :their digests don't seem to match for me, how do you encode them? < 1559654560 824572 :int-e!~noone@int-e.eu PRIVMSG #esoteric :as big endian 32 bit unicode points. < 1559654566 819497 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I tried utf-8, utf-16be, and utf16-le < 1559654571 560901 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ah, so utf-32be < 1559654602 809301 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :so that's why you said that almost half of the bits were fixed < 1559654619 589147 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I said about... < 1559654707 561399 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :yeah, I can reproduce that, the first 10 bytes of the digest match < 1559654745 331660 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and you'd need a full 128 bit collision to break Typeable? < 1559654763 466793 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :and you can use just identifiers with no prefix, not even a package name? < 1559654811 259871 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :it would seem strange if it didn't use a package name < 1559654826 574551 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :(would it also have to be two valid identifiers?) < 1559654827 786578 :int-e!~noone@int-e.eu PRIVMSG #esoteric :yeah the package, module, and type name are hashed separately, then combined. < 1559654834 718069 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :oh < 1559654842 147484 :int-e!~noone@int-e.eu PRIVMSG #esoteric :fingerprintTyCon tc = < 1559654842 252549 :int-e!~noone@int-e.eu PRIVMSG #esoteric : fingerprintFingerprints [ < 1559654842 252594 :int-e!~noone@int-e.eu PRIVMSG #esoteric : fingerprintString (tyConPackage tc), < 1559654842 252608 :int-e!~noone@int-e.eu PRIVMSG #esoteric : fingerprintString (tyConModule tc), < 1559654842 252620 :int-e!~noone@int-e.eu PRIVMSG #esoteric : fingerprintString (tyConName tc) < 1559654844 654388 :int-e!~noone@int-e.eu PRIVMSG #esoteric : ] < 1559654848 65597 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :Taneb: these are valid identifiers < 1559654853 369971 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :they're made of mostly kanji < 1559654857 320846 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :or at least int-e said so < 1559654860 553719 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :Ah, right < 1559654861 974132 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :let me see < 1559654874 741413 :int-e!~noone@int-e.eu PRIVMSG #esoteric :@let data T𥣧𤬦𠀓𤜒𥫯𠀕𠀀𠀀𠀀 = T𥣧𤬦𠀓𤜒𥫯𠀕𠀀𠀀𠀀 < 1559654875 967400 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : Defined. < 1559654987 787611 :int-e!~noone@int-e.eu PRIVMSG #esoteric :The "valid identifier" restriction is also the reason for that "T", because more precisely, it has to be a valid constructor name < 1559655007 355691 :int-e!~noone@int-e.eu PRIVMSG #esoteric :and there are no upper case kanjis, somehow :) < 1559655087 988916 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I was wondering if this is perhaps solved by the internet somehow, but apparently no sane people hash utf-32 strings < 1559655099 513829 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :utf-8 strings, sure, you can find collisions with a google search < 1559655121 14966 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ah < 1559655121 798051 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :https://gitlab.haskell.org/ghc/ghc/issues/7634 < 1559655140 823102 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :a bug ticket for ghc > 1559655299 495009 PRIVMSG #esoteric :14[[07User talk:A14]]4 M10 02https://esolangs.org/w/index.php?diff=63076&oldid=62864 5* 03A 5* (+188) 10/* Write some nonsense here */ Nonsense < 1559655408 402137 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :int-e: that ticket tells the hashing works differently though: it seems to think that the package name, module name, and typename are combined before they're md5-hashed < 1559655481 354769 :int-e!~noone@int-e.eu PRIVMSG #esoteric :it changed < 1559655516 114750 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :ah < 1559655520 578893 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I don't know when exactly, whether it was ghc-8.0 or ghc-8.2. We have ghc-8.8 now. > 1559656083 391913 PRIVMSG #esoteric :14[[07Esolang:Featured languages/Candidates14]]4 10 02https://esolangs.org/w/index.php?diff=63077&oldid=62865 5* 03A 5* (+310) 10/* List of candidates */ Add a lot of info > 1559656248 305635 PRIVMSG #esoteric :14[[07User talk:A14]]4 M10 02https://esolangs.org/w/index.php?diff=63078&oldid=63076 5* 03A 5* (+193) 10Add some nonsense(just for fun) > 1559656404 290898 PRIVMSG #esoteric :14[[07User talk:A14]]4 M10 02https://esolangs.org/w/index.php?diff=63079&oldid=63078 5* 03A 5* (+15) 10 < 1559657243 226064 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 248 seconds < 1559657341 194845 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric > 1559658165 861795 PRIVMSG #esoteric :14[[07Bitch14]]4 M10 02https://esolangs.org/w/index.php?diff=63080&oldid=62948 5* 03A 5* (+93) 10/* References */ < 1559659959 664059 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :are ε and ℩ interdefinable? εxA = «an x such that A, if it exists (or some garbage if it doesn’t, and terms aren’t allowed to be undefined)», ℩xA = «the only x such that A (or likewise blah blah)» < 1559660026 84031 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :they say ∀ and ∃ are definable through any of them, though ε is in some sense more powerful; and I don’t remember about ℩ < 1559660107 779169 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :for ε, ∃xA ≡ A[εxA / x] and ∀xA ≡ A[εx(¬A) / x] < 1559660268 958209 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :℩ seems less powerful < 1559660301 12792 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :I’m suddenly into formal semantics of natural languages < 1559660525 942027 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :for example, I think the section [1] is somewhat garbage-y, and I sympathize with the text at [2], but I don’t know what level the unambiguous translation mentioned there should be, and ever at least what it should look like < 1559660526 36640 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :[1] https://en.wikipedia.org/wiki/De_dicto_and_de_re#Representing_de_dicto_and_de_re_in_modal_logic < 1559660526 36670 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :[2] https://en.wikipedia.org/wiki/Theory_of_descriptions#Saul_Kripke < 1559660781 258943 :Sgeo__!~Sgeo@ool-18b98439.dyn.optonline.net JOIN :#esoteric < 1559660977 898494 :Sgeo_!~Sgeo@ool-18b98439.dyn.optonline.net QUIT :Ping timeout: 258 seconds < 1559661597 266323 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :also, regarding formulas in [1], I’m not only worried they miss the point, I’m also don’t quite get what should be meant by a formula □A with free variables. So I’ve read about approaches to first-order modal logics and now I’m still unsure ∃x□A is sensible < 1559661640 389346 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :about [1 < 1559661645 126583 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :oh sorry < 1559661907 711818 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :about [1], I’ve come to think the difference shouldn’t be forced to be expressed free of speech context and that the focus is not a different translation of the syntax per se, but a different denotation of a phrase (designator, is it?) in question. In de dicto case, it isn’t bound to something in context, and in de re case, it is but a name of a thing from the context, its identity established ear < 1559662010 264734 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :fungot, are you forced to expressed free of context speech and that the focus is not a different translation of syntax per se? < 1559662011 9797 :fungot!~fungot@2a01:4b00:82bb:1341::2 PRIVMSG #esoteric :wob_jonas: social contract. i think he will agree with fnord of common sense reasons? no; the question is, whether for war or trade; when i bring before my view the number of men in power, he holds his crown in contempt of the opinion of the intellectual eye which gives us to contemplate the fall of wise ministers and of the purity and integrity of the empire, and who serves to carry on with vigour the work of his successor, an < 1559662037 9908 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :heh < 1559662211 641099 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :so maybe it is just a plain restatement of what is already known about this phenomenon—maybe in not so different fashion, either—but I do think it shouldn’t match something too low-level. There IS speech context, and it IS being used to disambiguate the cases, so it makes sense this situation should be formalized using a formalization of this context, and not some clever transposition of ∃x and □ (or I just hope that entry is < 1559662211 731857 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric : an unqualified one by someone who understands even less than me) < 1559662241 50380 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :wob_jonas: fungot: :D < 1559662241 461998 :fungot!~fungot@2a01:4b00:82bb:1341::2 PRIVMSG #esoteric :arseniiv: vii. second reading of the bill which concerns my trade. i will only observe, in reference to this sphere of legislative action, with stars on his shoulders and his fnord is embittered into acrimony, strength fnord into fnord, or brissot, or fnord conventional messenger from the clouds, to firm ground and clear light. let us imitate him. our countrymen have always, even in that fugitive span he may either do some good < 1559662333 788371 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :(vii, oh my) < 1559662518 221454 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :https://esolangs.org/logs/2019-06-01.html#lUb " do you other people know enough about category theory to follow what this person's trying to do cuz i don't but it sounds interesting oh well" < 1559662588 815704 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 PRIVMSG #esoteric :I was wondering if I should tell xylochoron[m] that if he hangs out enough on this channel, not only will he understand the category theoretic formulation, but he'll find it natural and find the more elementary phrasings of those problems unnecessarily cumbersome, but frankly I don't understand what you guys are talking about either < 1559662590 797872 :Taneb!~Taneb@runciman.hacksoc.org PRIVMSG #esoteric :I sit with a copy of Categories for the Working Mathematician on my desk. I should probably read it more < 1559663439 38284 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :fungot: how do you think are deontological self-actualization and ontological self-deactualization dual? < 1559663439 301712 :fungot!~fungot@2a01:4b00:82bb:1341::2 PRIVMSG #esoteric :arseniiv: this great work at once became fnord which everybody still knows by fnord these chiefly lay the oratorical power both of chatham and of mirabeau. there have been famous orators whose speeches we may read for the beauty of the garden, the nurture of all living things. < 1559663485 878937 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :agree about the garden < 1559663751 373677 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :re tswett[m] discussion: presentations of categories with finite limits, is it really that simple? I should look into that someday! < 1559663848 188359 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :though a presentation could turn out an elaborate and complex thing which is hard to understand < 1559663940 660596 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :arseniiv: You can do a ton with just presentations of categories with finite limits. < 1559663949 781539 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :They're... not particularly simple. < 1559663952 535803 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :(…as it is with group presentations, it really really is no doubt) < 1559663960 304515 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :But they're much simpler than, say, Lua. < 1559663991 212425 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :But they're much simpler than, say, Lua. < 1559664007 332743 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :In particular, pretty much any kind of algebraic object can be defined by giving a presentation of a category with finite limits. < 1559664013 526844 :wob_jonas!25bf3cd1@gateway/web/cgi-irc/kiwiirc.com/ip.37.191.60.209 QUIT :Remote host closed the connection < 1559664026 723746 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric : But they're much simpler than, say, Lua. => ah, then you got me < 1559664057 801842 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :Including—and this is the fun part—categories with finite limits. < 1559664102 599641 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :a categorical self-indertion < 1559664112 779770 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :self-insertion* < 1559664113 934345 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :Well, I shouldn't say "pretty much any kind", but you can define monoids, groups, categories, rings... < 1559664123 35978 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :Probably not fields. < 1559664125 848946 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :You can *almost* define topoi. < 1559664159 74141 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :are fields undefinable because of 1 ≠ 0 constraint? I think I heard something in that regard maybe < 1559664217 866473 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :That, and the fact that division is defined everywhere except 0. < 1559664238 269691 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :Now, you can define a concept that's *almost* the concept of a topos. < 1559664264 458540 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :tswett[m]: hm also do these presentations come with a nice internal language or what it’s called? < 1559664307 629734 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :The difference is that in the definition of a topos, the word "monomorphism" is replaced with "M-morphism", where an "M-morphism" is a morphism satisfying an undefined predicate. You can assert that all M-morphisms are monomorphisms, but you cannot assert that all monomorphisms are M-morphisms. < 1559664320 983415 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :I... think so. < 1559664370 802187 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :Though the internal language is missing coproducts (sum types) and the initial object (the empty type). < 1559664396 728759 :tswett[m]!tswettmatr@gateway/shell/matrix.org/x-zadsdxeddlqlkcxy PRIVMSG #esoteric :Not to mention exponentials (function types). < 1559666117 540404 :LKoen!~LKoen@2a01cb0407597a003ce213225d27b466.ipv6.abo.wanadoo.fr JOIN :#esoteric < 1559667072 493701 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> map fingerprintString ["T\132596\149647\150416\152631\158821\150114\131116\131072\131072","T\140399\149685\144161\143085\148849\152119\131204\131072\131072"] -- <-- shachaf, wob_jonas: I got quite lucky. GPU time: 4h, CPU time: 20m < 1559667075 7393 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [9317f8f6f091ac50e1f49feb057f3098,9317f8f6f091ac50e1f49febea88f23a] < 1559667139 322846 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(Expected GPU time was around 15h.) < 1559667487 8287 :tromp!~tromp@2a02:a210:1585:3200:ad1f:4190:1dbf:def2 QUIT :Remote host closed the connection < 1559668819 466112 :moei!~moei@softbank221078042071.bbtec.net JOIN :#esoteric < 1559669086 400587 :LKoen!~LKoen@2a01cb0407597a003ce213225d27b466.ipv6.abo.wanadoo.fr QUIT :Remote host closed the connection > 1559669327 894645 PRIVMSG #esoteric :14[[07Talk:Pointless14]]4 N10 02https://esolangs.org/w/index.php?oldid=63081 5* 03Ais523 5* (+513) 10the pointer instructions aren't useful because the cell values are limited < 1559669538 686469 :sleepnap!~thomas@c-68-55-111-60.hsd1.mi.comcast.net JOIN :#esoteric < 1559670075 844405 :unlimiter!~unlimiter@41.141.20.197 JOIN :#esoteric > 1559670828 39144 PRIVMSG #esoteric :14[[07Talk:Pointless14]]4 10 02https://esolangs.org/w/index.php?diff=63082&oldid=63081 5* 03Int-e 5* (+462) 10translate from Smallfuck < 1559671087 660994 :unlimiter!~unlimiter@41.141.20.197 QUIT :Quit: WeeChat 2.4 < 1559671246 227862 :LKoen!~LKoen@lfbn-idf2-1-331-228.w82-123.abo.wanadoo.fr JOIN :#esoteric < 1559672548 602271 :sleepnap!~thomas@c-68-55-111-60.hsd1.mi.comcast.net QUIT :Ping timeout: 272 seconds < 1559673048 535628 :tromp!~tromp@2a02:a210:1585:3200:552c:b6c3:52a3:c6ba JOIN :#esoteric < 1559673305 515385 :tromp!~tromp@2a02:a210:1585:3200:552c:b6c3:52a3:c6ba QUIT :Ping timeout: 252 seconds < 1559673892 978733 :budonyc!~budonyc@c-24-62-204-147.hsd1.ma.comcast.net JOIN :#esoteric < 1559675256 208056 :adu!~ajr@pool-173-73-86-145.washdc.fios.verizon.net JOIN :#esoteric < 1559675655 140059 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu JOIN :#esoteric < 1559676337 189901 :sleepnap!~thomas@c-68-55-111-60.hsd1.mi.comcast.net JOIN :#esoteric < 1559676820 253268 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover JOIN :#esoteric < 1559677061 246505 :FreeFull!~freefull@defocus/sausage-lover JOIN :#esoteric < 1559678257 566475 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: the best thing is that the md5 implementation can be shared between OpenCL and C. https://github.com/int-e/opencl-playground/blob/master/md5_impl.h ... < 1559678342 562628 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(It appears that the OpenCL compiler takes care of vectorizing that thing, which keeps the code plain and simple.) < 1559678409 403148 :rain1!~My_user_n@unaffiliated/rain1 PRIVMSG #esoteric :wow an md5 hash collision! < 1559678424 80947 :int-e!~noone@int-e.eu PRIVMSG #esoteric :rain1: only 96 bits < 1559678473 879294 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I don't want to wait nor pay for ~2^64 md5 hashes :) 2^48 was just fine though. < 1559678508 834464 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Especially since I got away with just 2^46 of them... < 1559678663 549791 :int-e!~noone@int-e.eu PRIVMSG #esoteric :So 1/4 sqrt(N)... which suffices only 3% of the time, I think... < 1559678689 593404 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> 1 - exp(-(1/4)^2/2) -- should be close < 1559678692 70684 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 3.076676552365587e-2 < 1559679544 73634 :tromp!~tromp@2a02:a210:1585:3200:552c:b6c3:52a3:c6ba JOIN :#esoteric < 1559679818 70537 :tromp!~tromp@2a02:a210:1585:3200:552c:b6c3:52a3:c6ba QUIT :Ping timeout: 258 seconds < 1559680342 172691 :sleepnap!~thomas@c-68-55-111-60.hsd1.mi.comcast.net QUIT :Quit: Leaving. < 1559681143 169893 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :for something completely different, maybe someone remembers when I mused about a Metamath-like system (metavariables! disjointness constraints!) with solid syntax soundness base (terms with more or less simple types, basically an enriched λ-calculus where this λ core is used solely for representing substitutions, and application to user-defined term constructors is intentionally not core λ-term application), so one can then define t < 1559681143 271080 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :he language and the rules and the system would check if some proof is correct, including of course checking typeability of all terms < 1559681335 536870 :AnotherTest!~turingcom@ptr-82l26zfnlgwh4k4ewtw.18120a2.ip6.access.telenet.be QUIT :Ping timeout: 252 seconds < 1559681629 317028 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :then I needed an algorithm to check it there is a substitution σ such that A ≡ Bσ for given terms A, B with FV(A) ∩ FV(B) = ∅, and is there a unique smallest σ (how do they call such σ?) < 1559681629 407851 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :and I was sad to find I don’t know how to check it in case B ≡ CD (λ application here), as I have thought it’s sensible to think (λx. z = x)y equivalent—for this system—to y = x: and now how can I decide how many β-reductions there could be in that CD term before it would be mapped by σ to A? < 1559681629 407914 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :so I was stuck and left the thing alone and one day had an idea to make reductions a core inference rule for users to mention explicitly. It would not be a smooth UX, but at least I could write the thing and see if it’s any good at all. And then I forgot, and remembered only a hour ago < 1559681646 584566 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :maybe it would be clearer to give an example: < 1559681740 385736 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :Axiom: X = Y ∧ Φ[X] → Φ[Y] < 1559681740 488477 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :Given: x = y ∧ x = x → y = x < 1559681740 488522 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :↑ this isn’t well-prepared, it should be un-β-reduced explicitly by the user to < 1559681740 538911 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :Given′: x = y ∧ (z.z = x)[x] → (z.z = x)[y] < 1559681740 538960 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :then the system could show easily that Given′ ≡ Axiom[x/X, y/Y, z.z = x/Φ] without the need to decide when exactly (x = x, x = y) ≡ (Φ[X], Φ[Y])σ and is there a unique smallest σ at all < 1559681987 844994 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :so maybe I’m just dumb and there is no need to test someone’s patience in writing extra things like Given’ and one could write a unifier for a general case A = (CD)σ and not fall into depths of e. g. nontermination (I hope, as all terms should be typeable, could it be enough to simplify things?..) < 1559682056 836113 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :oh, I forgot to make my syntax less obscure again < 1559682121 591552 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :in the example, X, Y, Φ, x, y, z are metavariables, =, ∧ and → are user-defined term constructors, Φ[X] is ΦX and (z.z = x) is (λz. z = x) < 1559682168 616766 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :very fortunately, this example doesn’t mention disjointness constraints < 1559682278 991827 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru PRIVMSG #esoteric :they can be part of the rules and proofs, as a type of premise (other type of premises is terms, and rule conclusion can be only a term too) < 1559682537 37179 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> let f = 85375/2^18 in 1 - exp (f^2/2) < 1559682538 973875 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : -5.446513701917932e-2 < 1559682544 547659 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> let f = 85375/2^18 in 1 - exp (-f^2/2) < 1559682546 519429 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 5.165190873274805e-2 < 1559682625 560095 :int-e!~noone@int-e.eu PRIVMSG #esoteric :5% is still quite lucky :) < 1559682704 586385 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :you really squandered your luck there hth < 1559682848 952956 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Nah, I don't believe in luck being used up. < 1559682978 74849 :tromp!~tromp@2a02:a210:1585:3200:552c:b6c3:52a3:c6ba JOIN :#esoteric < 1559683157 854181 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :your dice are pre-rolled < 1559683959 165458 :int-e!~noone@int-e.eu PRIVMSG #esoteric :"IntelliCode uses open source GitHub projects with 100 stars or more to generate recommendations for your code." < 1559683966 878139 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover QUIT :Read error: Connection reset by peer < 1559683990 691205 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( What could possibly go wrong... ) < 1559684002 540948 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( This may also explain why MS bought github? ) < 1559684219 273024 :sleepnap!~thomas@c-68-55-111-60.hsd1.mi.comcast.net JOIN :#esoteric < 1559684288 180022 :Phantom_Hoover!~phantomho@cpc108439-cowc8-2-0-cust785.14-2.cable.virginm.net JOIN :#esoteric < 1559684288 286109 :Phantom_Hoover!~phantomho@cpc108439-cowc8-2-0-cust785.14-2.cable.virginm.net QUIT :Changing host < 1559684288 286150 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover JOIN :#esoteric < 1559684465 983799 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Ironically I have learned little about OpenCL... no out-of-order execution, no fancy atomic operations or shared CPU/GPU memory, no subtle memory model (yes, there is a memory model...) interactions, no pipes, no kernels spawning kernels on the OpenCL side, and no interaction with OpenGL. < 1559684512 110201 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :int-e: well sure, you just want to compute a lot of md5 checksums, surely that's something someone else has already coded, so you don't need to write any of the parallel code < 1559684518 719433 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :you only need the driver that chooses the strings etc < 1559684537 810048 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(Instead I have a fairly long-running kernel so that the overhead of communicating with the CPU is negligible anyway. And each work item works on a couple of hundred bytes of data, all completely local.) < 1559684546 251689 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :I mean sure, that has to run in the gpu too < 1559684550 61106 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :but it's not very complicated < 1559684560 662142 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :int-e: exactly < 1559684564 152798 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :very easy to parallelize < 1559684572 321934 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :yes, int-e, didn't you notice the thing where instead of doing any programing you just downloaded and ran someone else's program < 1559684579 626571 :budonyc!~budonyc@c-24-62-204-147.hsd1.ma.comcast.net QUIT :Quit: Leaving < 1559684594 397702 :int-e!~noone@int-e.eu PRIVMSG #esoteric :b_jonas: hashcat has an md5 implementation... but it seems to be specially tuned for password cracking, which surprisingly allows a few small shortcuts. < 1559684595 874054 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :that's the reason you didn't learn anything < 1559684638 605929 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: condescension: 10, helpfulness: 0. < 1559684660 629173 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :i was just making a joke about how the thing b_jonas said made no sense :'( < 1559684675 902856 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(hashcat reports 11.5MH/s in its benchmark mode on the same GPU, so I thought my 5.something was decent.) < 1559684679 458290 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :while generally I think GPU programming is overhyped these days (partly because "blockchain" and "deep learning" are fashionable ways to sell anything), but this is exactly the sort of thing where GPU is useful < 1559684694 221595 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: ah, I didn't connect it to that context. < 1559684705 630175 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( communication 1 : int-e 0. ) < 1559684717 467968 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :since obviously you did write a program so the fact that other people have written md5 implementations is irrelevant < 1559684736 327535 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :um < 1559684807 173233 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: Obviously I still had to do some basic stuff. create an OpenCL context, a command queue, a buffer, a program, a kernel... it's just that there's so much more that I didn't touch at all. < 1559684825 408525 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Yes. < 1559684899 893645 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Doing the rho thing with distinguished points is presumably a little different from trying to find preimages. < 1559684957 357824 :int-e!~noone@int-e.eu PRIVMSG #esoteric :hashcat exploits the fact that when enumerating passwords, only a small part of the message changes... so the first half dozen values can be precomputed and never change while iterating over the last one or two chracters. < 1559684995 300400 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I imagine that only saves a small amount of work? < 1559685001 200267 :int-e!~noone@int-e.eu PRIVMSG #esoteric :And IIRC it has a trick for stopping early too. I forgot. < 1559685023 149931 :int-e!~noone@int-e.eu PRIVMSG #esoteric :well saving 10 out of 64 rounds (or even 5) is still a speedup. < 1559685056 543378 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :You can compute 10 rounds without the last one or two characters? < 1559685103 490569 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I think it was about 4 at the beginning and 4 in the end. Let me check something < 1559685329 806082 :int-e!~noone@int-e.eu PRIVMSG #esoteric :There's stuff like this: If you only change the 3rd word of the message in your search, then you know the message words for the last 10 rounds. And I think you can actually invert those then. < 1559685409 106714 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(look at this: A = B + rotl(R(B, C, D) + A + K + m[j], s) -- you know the resulting A, and B,C,D,K and m[j]. So you do rotr(A - B, s) - K - m[j] - R(B,C,D)) to find the previous A. < 1559685414 875364 :int-e!~noone@int-e.eu PRIVMSG #esoteric :) < 1559685436 451368 :int-e!~noone@int-e.eu PRIVMSG #esoteric :s/3rd/4th/ < 1559685469 845166 :int-e!~noone@int-e.eu PRIVMSG #esoteric :And, uh, why don't we do that with the first word... then we can reverse the last 15 rounds. < 1559685578 354711 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> maximum [(elemIndex i [0..15] + elemIndex i (reverse [0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9]), i) | i <- [0..15]] < 1559685580 880767 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : error: < 1559685580 880813 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : • Could not deduce (Num (Maybe Int)) arising from a use of ‘+’ < 1559685580 880826 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : from the context: (Num b, Enum b, Ord b) < 1559685587 251330 :int-e!~noone@int-e.eu PRIVMSG #esoteric :meh < 1559685619 439962 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> maximum [(fromJust (elemIndex i [0..15]) + fromJust (elemIndex i (reverse [0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9])), i) | i <- [0..15]] < 1559685622 224374 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : (27,14) < 1559685653 774462 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> reverse $ sort [(fromJust (elemIndex i [0..15]) + fromJust (elemIndex i (reverse [0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9])), i) | i <- [0..15]] < 1559685656 93228 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : [(27,14),(23,12),(21,15),(21,7),(19,10),(17,13),(17,5),(15,8),(15,0),(13,11)... < 1559685766 171589 :int-e!~noone@int-e.eu PRIVMSG #esoteric :So for the password cracking application, it's the last 15 rounds that you can reasonably expect to skip. The better indices are a tad too large. < 1559685828 314059 :sleepnap!~thomas@c-68-55-111-60.hsd1.mi.comcast.net QUIT :Ping timeout: 245 seconds < 1559686232 664666 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover QUIT :Remote host closed the connection < 1559686245 856874 :int-e!~noone@int-e.eu PRIVMSG #esoteric :and you can skip 3 more rounds if you only verify 32 bits instead of all the 128 bits. < 1559686372 571742 :int-e!~noone@int-e.eu PRIVMSG #esoteric :what else is there... for password cracking you tend to have a lot of message words that are known to be 0. That should also yield a minor but noticable improvement. < 1559686854 649387 :tromp!~tromp@2a02:a210:1585:3200:552c:b6c3:52a3:c6ba QUIT :Remote host closed the connection < 1559686889 580529 :tromp!~tromp@2a02:a210:1585:3200:552c:b6c3:52a3:c6ba JOIN :#esoteric < 1559687379 251908 :sleepnap!~thomas@c-68-55-111-60.hsd1.mi.comcast.net JOIN :#esoteric < 1559687405 297396 :sleepnap!~thomas@c-68-55-111-60.hsd1.mi.comcast.net PART :#esoteric < 1559687955 619925 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :`? pencil < 1559687956 965194 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :pencil? ¯\(°​_o)/¯ < 1559687977 687747 :int-e!~noone@int-e.eu PRIVMSG #esoteric :A pencil is an abridged antibiotic. < 1559688015 314788 :LKoen!~LKoen@lfbn-idf2-1-331-228.w82-123.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.” < 1559688021 504847 :int-e!~noone@int-e.eu PRIVMSG #esoteric :(I guess it works by stabbing bacteria.) < 1559688049 574337 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu PRIVMSG #esoteric :yeah < 1559688787 205700 :arseniiv_!~arseniiv@94.41.249.159.dynamic.ufanet.ru JOIN :#esoteric < 1559688827 269264 :arseniiv!~arseniiv@94.41.227.217.dynamic.ufanet.ru QUIT :Ping timeout: 248 seconds < 1559689096 650843 :moei!~moei@softbank221078042071.bbtec.net QUIT :Quit: Leaving... < 1559689302 800662 :arseniiv_!~arseniiv@94.41.249.159.dynamic.ufanet.ru NICK :arseniiv < 1559691067 825014 :Soni!~quassel@unaffiliated/soniex2 QUIT :Quit: http://quassel-irc.org - Chat comfortably. Anywhere. < 1559691145 240265 :Soni!~quassel@unaffiliated/soniex2 JOIN :#esoteric < 1559691408 795475 :b_jonas!~x@catv-176-63-24-34.catv.broadband.hu QUIT :Quit: leaving < 1559691899 221122 :arseniiv!~arseniiv@94.41.249.159.dynamic.ufanet.ru QUIT :Ping timeout: 248 seconds < 1559691986 667445 :S_Gautam!uid286066@gateway/web/irccloud.com/x-irqyhgosbziridsa QUIT :Quit: Connection closed for inactivity