←2020-02-10 2020-02-11 2020-02-12→ ↑2020 ↑all
00:00:33 <b_jonas> `olist 1191
00:00:36 <HackEso> olist 1191: shachaf oerjan Sgeo FireFly boily nortti b_jonas
00:05:39 <b_jonas> whoa, who's that?
00:06:20 <b_jonas> ah
00:30:58 -!- zzo38 has quit (Ping timeout: 265 seconds).
00:31:34 -!- zzo38 has joined.
00:38:53 -!- Lord_of_Life_ has joined.
00:41:19 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
00:41:19 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
00:42:33 -!- zzo38 has quit (Ping timeout: 268 seconds).
00:44:07 <esowiki> [[Brainfunc]] M https://esolangs.org/w/index.php?diff=69800&oldid=69799 * PythonshellDebugwindow * (+1) /* Commands */
00:47:14 -!- arseniiv has quit (Ping timeout: 246 seconds).
00:51:14 <int-e> b_jonas: Feel free to lecture Hooloovo0 on the PoTM rules; I didn't have the heart :P
00:52:32 <int-e> (Also this was a borderline case... to my mind it was more than the minor fixes we've allowed before... otoh it's still recognizably similar.)
00:54:37 <Hooloovo0> oh, didn't realize there were rules at all
00:54:55 <int-e> Basically, it's one edit per month, first one wins.
00:55:19 <Hooloovo0> ah, got it
01:05:12 <int-e> (UTC)
01:06:06 <int-e> (The fact that we've agreed on a time zone for this tells you something... not sure what it is though.)
01:23:53 <Hooloovo0> I'm pretty sure that tells me all I need to know
01:24:12 -!- zzo38 has joined.
01:24:46 <esowiki> [[Talk:Memfractal]] https://esolangs.org/w/index.php?diff=69801&oldid=60521 * Salpynx * (+630) eso-procrastination!
01:53:30 <esowiki> [[Special:Log/newusers]] create * Apollyon094 * New user account
02:15:15 -!- zzo38 has quit (Disconnected by services).
02:15:19 -!- zzo38 has joined.
02:18:59 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=69802&oldid=69768 * Apollyon094 * (+376)
02:19:15 <esowiki> [[I like frog]] N https://esolangs.org/w/index.php?oldid=69803 * Apollyon094 * (+2365) Added page
02:19:59 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69804&oldid=69803 * Apollyon094 * (+29)
02:20:20 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69805&oldid=69804 * Apollyon094 * (-53)
02:21:21 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69806&oldid=69805 * Apollyon094 * (+28)
02:22:46 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69807&oldid=69806 * Apollyon094 * (+2)
02:22:58 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69808&oldid=69807 * Apollyon094 * (-27)
02:23:26 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69809&oldid=69808 * Apollyon094 * (+27)
02:50:53 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
03:12:28 -!- Hooloovo0 has quit (Read error: Connection reset by peer).
03:14:30 -!- Lord_of_Life has joined.
03:15:03 -!- xelxebar has quit (Ping timeout: 240 seconds).
03:15:22 -!- Hooloovo0 has joined.
03:18:38 -!- Hooloovo0 has quit (Client Quit).
03:21:54 -!- Hooloovo0 has joined.
03:22:03 -!- grumble has quit (Remote host closed the connection).
03:22:38 -!- grumble has joined.
03:25:55 -!- imode has joined.
03:46:43 -!- xelxebar has joined.
04:03:19 -!- Frater_EST has quit (Remote host closed the connection).
05:30:52 -!- FreeFull has quit.
06:41:43 <esowiki> [[6ix]] M https://esolangs.org/w/index.php?diff=69810&oldid=18233 * YamTokTpaFa * (+1) Moved Stub template to top; never have I heard of such rules, but is it a rule?
06:50:42 -!- imode has quit (Ping timeout: 268 seconds).
08:12:32 <zzo38> Is someone on today?
08:35:48 <b_jonas> on where?
08:36:37 <b_jonas> int-e: I didn't know that you agreed on a timezone. is that written somewhere? is there a wisdom entry about those rules?
08:36:40 <b_jonas> `? rules of wisdom
08:36:42 <HackEso> unless essential for the entry‘s humor, \ they should: be understandable without the lookup key, be single spaced and end in a newline with no space before that, and use proper capitalization and punctuation
08:37:11 <myname> such wisdom
09:25:01 -!- fungot has quit (Quit: Coyote finally caught me).
09:41:07 -!- b_jonas has quit (Quit: leaving).
09:45:37 <int-e> Unwritten rules are the best rules.
10:03:13 -!- shachaf has joined.
10:24:19 -!- rain1 has joined.
10:52:01 -!- fungot has joined.
11:05:02 -!- wib_jonas has joined.
11:06:06 -!- FreeFull has joined.
11:55:39 -!- tramplefoot has joined.
13:00:40 -!- wib_jonas has quit (Remote host closed the connection).
13:01:08 -!- wib_jonas has joined.
13:25:37 <esowiki> [[Brainfunc]] M https://esolangs.org/w/index.php?diff=69811&oldid=69800 * PythonshellDebugwindow * (+38) /* Examples */
13:29:02 <esowiki> [[Brainfuck extensions]] M https://esolangs.org/w/index.php?diff=69812&oldid=64751 * PythonshellDebugwindow * (+15)
13:39:11 <esowiki> [[Brainfunc]] M https://esolangs.org/w/index.php?diff=69813&oldid=69811 * PythonshellDebugwindow * (+168) /* Functions */
13:39:41 <esowiki> [[Brainfunc]] M https://esolangs.org/w/index.php?diff=69814&oldid=69813 * PythonshellDebugwindow * (+27) /* Examples */
14:07:18 -!- arseniiv has joined.
14:12:08 <esowiki> [[VD3]] M https://esolangs.org/w/index.php?diff=69815&oldid=32437 * PythonshellDebugwindow * (-1) /* Halting */ Fixing grammar
14:12:57 <esowiki> [[VD3]] M https://esolangs.org/w/index.php?diff=69816&oldid=69815 * PythonshellDebugwindow * (+1) /* Computational class */
14:14:35 <tromp_> i wonder what's the most concise definition of divmod in Church numerals
14:21:17 <tromp_> one definition is on http://users.monash.edu/~lloyd/tildeFP/Lambda/Examples/const-int/
14:22:03 <tromp_> i also found a definition for just modulo as mod = \a\b.b (\c\d.(c(\e.(d(\f\g.(f(e f g)))e)))) (\c.(c zero)) (\c.(a(b(\d\e\f.(d(\g.(e g f)))) id (\d\e.(e d)))(b true id id)))
14:23:39 <tromp_> actually, the goal is a short lambda calculus expression for goodstein(4), see https://www.reddit.com/r/math/comments/f1mr5y/expressing_grahams_number/fhar3n7/?utm_source=share&utm_medium=web2x
14:24:07 <wib_jonas> `? warranty
14:31:38 -!- grumble has quit (Quit: We've found the eight most clickbaity quit messages. #5 will surprise you!).
14:32:07 <int-e> tromp_: Is the Goodstein sequence code in the AIT repo any good? I suspect it collapses quite a bit if the initial value is known.
14:36:54 -!- grumble has joined.
14:38:20 <tromp_> i noticed the goodstein.{hs,lam} in there too, but they don't work on church numerals, but on some ordinal datatype
14:38:39 <tromp_> not sure how to translate btween
14:38:43 <int-e> The result is a Church numeral though.
14:39:13 <tromp_> oh, i see there's a test at the end that does that
14:40:50 <int-e> http://paste.debian.net/1130167/ ... hmm, 211 bits.
14:41:53 <int-e> I guess that expw thing is not so small after all.
14:42:06 <tromp_> 211 bits is very good
14:42:41 <int-e> That's hard-coded for 4, as you can probably see.
14:43:50 <int-e> Oh and it's 209 if you drop the initial \_. But I wanted to test it :)
14:46:32 <int-e> However, I only vaguely remember how that type and the expw operation in particular work.
14:50:39 <tromp_> lit sure looks like black magic
14:51:09 <tromp_> and to think that a modulo operation itseld already takes about 150 bits...
14:52:14 <int-e> Oh I guess the comment in goodstein.hs is a good starting point.
14:54:06 <tromp_> did you write that goodstein.hs ?
14:54:37 <int-e> yes, but almost 6 years ago
14:56:13 <tromp_> wow, you never cease to amaze me!
14:56:53 <tromp_> how does one understand a type like newtype O = O { o_ :: forall r. ((N -> r) -> r) -> (r -> r) -> r -> r } ?
14:57:43 <int-e> Well, it directly corresponds to data O = Limit (Nat -> O) | Succ O | Zero
14:58:17 <int-e> That's just the standard Church encoding.
15:01:39 <int-e> Note that the fold for O has type foldO :: ((N -> r) -> r) -> (r -> r) -> r -> O -> r.
15:01:45 <tromp_> oh, i see
15:04:21 <tromp_> i can add o16 = expw2 o4 to your pasted code?
15:04:47 <tromp_> i mean expw instead of expw2
15:06:10 <int-e> yes
15:06:25 <tromp_> that certainly beats graham's number
15:09:53 <tromp_> would you like to reply in that /r/math thread with your 213 bit lambda expression?
15:10:39 <int-e> Nah, feel free to do so though.
15:10:57 <int-e> (I don't have a reddit account, nor do I want to create one.)
15:18:22 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
15:18:38 <int-e> tromp_: FWIW, "the fundamental sequence" refers to this one: https://en.wikipedia.org/wiki/Fast-growing_hierarchy#The_Wainer_hierarchy
15:21:54 <int-e> which irritatingly is missing the case \omega^0[n] = 0.
15:22:58 <int-e> Err. That's because that wouldn't be a limit ordinal. Never mind.
15:28:47 <rain1> did you ever try knuths surreal numbers?
15:30:21 -!- Lord_of_Life has joined.
15:33:15 <int-e> They're Conway's more than Knuth's. Knuth wrote the nice little book about a couple discovering them step by step though.
15:33:26 <int-e> And no, I didn't.
15:35:02 <int-e> (And, apparently, Knuth supplied the "surreal" part.)
15:35:22 <int-e> according to https://en.wikipedia.org/wiki/Surreal_number#History_of_the_concept
15:37:48 <wib_jonas> int-e: yeah, http://www.madore.org/~david/weblog/d.2011-10-09.1949.jeux-et-ordinaux.html#d.2011-10-09.1949 con... agrees that Knuth gave the name
15:38:16 <wib_jonas> concurs
15:40:58 <tromp_> yes, i have Knuth's little book
15:41:35 <int-e> Oh I thought "try to implement"
15:42:10 -!- tramplefoot has quit (Quit: Leaving.).
15:43:07 <tromp_> no, i didn't try implement them:(
15:53:18 <int-e> tromp_: I think I understand the Haskell version of the Goodstein thing again. The lambda calculus version changes the fundamental sequence slightly. Too subtle.
15:56:43 <int-e> (The puzzle is that l f m = f (nS (nS m)) m becomes (\f\m. f (succ m) m) in the lambda calculus version. So evidently, the argument to f is shifted by 1. Which thanks to overzealus inlining is hard to track through expw.)
15:57:32 <int-e> *overzealous
16:03:11 -!- imode has joined.
16:03:33 -!- kritixilithos has joined.
16:05:02 <tromp_> so Haskell version takes successor of successor in nS (nS m) where lc version only takes one successor?!
16:05:45 <int-e> yeah
16:06:17 <tromp_> but shouldn't arguments for s and l be similarly shifted?
16:06:40 <tromp_> haskell and lc versions both do one successor for s case
16:08:38 <rain1> is peano numbers better than binary numbers in lambda calculus?
16:09:00 <tromp_> depends on how you define better:)
16:09:12 <rain1> lets say shortest definition in BLC
16:09:52 <tromp_> peano numbers are simpler, so have shorter defs
16:10:30 <tromp_> but if you wanted to do some arithmetic on 64-bit numbers, they'd be way too slow
16:10:47 <wib_jonas> I prefer binary numbers, as you can tell from http://www.math.bme.hu/~ambrus/pu/Bin.hs
16:12:37 <tromp_> int-e: the Haskell and lc versions match on arguments 0,1,2,3 in any case
16:12:50 <tromp_> kind of hard to test argument 4 :-(
16:23:36 <esowiki> [[Nybblang]] N https://esolangs.org/w/index.php?oldid=69817 * PythonshellDebugwindow * (+378) Created page with "'''Nybblang''' is an esolang created by [[User:PythonshellDebugwindow]]. Its name is a portmanteau of '[[Wikipedia:Nybble|nybble]]' (4 bits) and 'esolang'. ==Program structure..."
16:43:59 <int-e> tromp_: the thing that gets shifted is the N argument in N -> O
16:44:12 <int-e> But I have to leave.
16:55:45 -!- wib_jonas has quit (Remote host closed the connection).
17:00:49 -!- sprocklem has quit (Ping timeout: 272 seconds).
17:08:06 -!- tramplefoot has joined.
17:11:26 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69818&oldid=69809 * Apollyon094 * (+62) Edited unclear descriptions/fixed "Hello, World!" example program.
17:18:25 <esowiki> [[Turing tarpit]] https://esolangs.org/w/index.php?diff=69819&oldid=67942 * Apollyon094 * (+134) Added another tarpit example
17:25:44 -!- Frater_EST has joined.
17:26:36 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69820&oldid=69818 * Apollyon094 * (+350)
17:28:14 <esowiki> [[Turing tarpit]] https://esolangs.org/w/index.php?diff=69821&oldid=69819 * Apollyon094 * (+65) Added another tarpit example
17:30:55 <esowiki> [[User:Apollyon094]] N https://esolangs.org/w/index.php?oldid=69822 * Apollyon094 * (+232) Created page with "This is my page. Fun fact: I was considering "i like frog" to be a ZISC or an OISC language at some point but instead made a [[Brainfuck]]/[[Smallfuck]]-esque language instea..."
17:31:26 <esowiki> [[User:Apollyon094]] https://esolangs.org/w/index.php?diff=69823&oldid=69822 * Apollyon094 * (+0)
17:32:08 <esowiki> [[User:Apollyon094]] https://esolangs.org/w/index.php?diff=69824&oldid=69823 * Apollyon094 * (+44)
17:32:24 -!- Frater_EST has quit (Read error: Connection reset by peer).
17:38:42 -!- Frater_EST has joined.
17:38:47 <esowiki> [[I like frog]] https://esolangs.org/w/index.php?diff=69825&oldid=69820 * Apollyon094 * (+0) Forgot it's 2020
17:42:49 <esowiki> [[Talk:ROTfuck]] N https://esolangs.org/w/index.php?oldid=69826 * Apollyon094 * (+191) Created page with "This is really cool. I never imagined programs would be that easy to golf in. A 2 character cat? I think you should compress it from octal to ASCII for ultimate golfing. -Us..."
17:43:21 <arseniiv> @ask b_jonas why did you end up with Zero and Mone instead of one terminal marker?
17:43:21 <lambdabot> Consider it noted.
17:46:43 <esowiki> [[Talk:Robolang]] N https://esolangs.org/w/index.php?oldid=69827 * Apollyon094 * (+93) Created page with "You should add binary logic gates to make it (hopefully) Turing-Complete -User:Apollyon094"
17:46:52 <esowiki> [[Talk:Robolang]] https://esolangs.org/w/index.php?diff=69828&oldid=69827 * Apollyon094 * (+1)
17:46:58 <arseniiv> @tell b_jonas oh never mind, I didn’t see Mone is minus one
17:46:58 <lambdabot> Consider it noted.
17:47:16 <arseniiv> how stupid of me :D
17:47:34 <arseniiv> it was right after the definitions
17:48:48 <esowiki> [[Talk:HaltJS]] N https://esolangs.org/w/index.php?oldid=69829 * Apollyon094 * (+82) Created page with "This sounds a lot like [[Javagony]] Possibly Javagonyscript? -[[User:Apollyon094]]"
18:01:23 -!- kritixilithos has quit (Ping timeout: 240 seconds).
18:06:10 <arseniiv> though I wonder could definitions of comparison, addition, subtraction be shortened somehow
18:10:25 <rain1> i always remeber subtracting being a tricky one
18:12:25 -!- kritixilithos has joined.
18:12:31 <arseniiv> I think using pattern synonyms from later GHC versions, one could do something with comparison at least: we can declare synonyms T[erminal] Bool and C[ontinuation] Bool so that T True ↔ Mone, T False ↔ Zero, C True ↔ One, C False ↔ Oh and then we can halve case count, and that should be almost as speedy
18:14:53 <arseniiv> though maybe TemplateHaskell would be a better approach if one could write a short readable description which then generates all cases in the definition
18:15:03 -!- kritixilithos has quit (Remote host closed the connection).
18:15:25 -!- kritixilithos has joined.
18:19:36 <arseniiv> rain1: in that code subtraction is as simple as addition (that is, 2x verbose but more or less clear at the end). AFAIK it should be worse in an implementation which uses sign bit instead of two’s complement
18:20:44 -!- Frater_EST has quit (Read error: Connection reset by peer).
18:20:48 <arseniiv> by 2x verbose I meant there are two functions for each addition and subtraction: normal one and 1-carrying one
18:23:57 -!- Frater_EST has joined.
18:27:52 -!- FraterEST has joined.
18:28:19 -!- Frater_EST has quit (Read error: Connection reset by peer).
18:31:10 -!- b_jonas has joined.
18:33:16 <b_jonas> arseniiv: two markers so that I can handle negative numbers uniformly
18:33:25 <b_jonas> ah ok
18:33:27 -!- LKoen has joined.
18:33:46 <b_jonas> arseniiv: you can certainly shorten the definitions, I just wanted to write every case clearly
18:35:27 <b_jonas> if you want shorter definitions for addition and subtraction, I have them at https://www.perlmonks.com/?node_id=849296 (though that one only handles nonnegative integers)
18:36:46 <arseniiv> Perl is hard on my eyes :D
18:36:55 <arseniiv> but anyway this is cool
18:37:20 <b_jonas> and yes, you don't need separate loops for addition and subtraction, you could have them in the same one function if you add a complement function before it
18:38:29 <b_jonas> the perl code has just one function that handles addition, subtraction and comparison all together
18:39:49 <b_jonas> also you could abbreviate the Haskell code by collapsing multiple cases of a function together
18:40:15 -!- imode has quit (Ping timeout: 272 seconds).
18:40:27 <arseniiv> b_jonas: oh BTW how do you look at balanced ternary?
18:40:43 -!- kritixilithos has quit (Ping timeout: 240 seconds).
18:40:58 <arseniiv> I found a package which uses it for type-level integers
18:41:56 -!- LKoen has quit (Remote host closed the connection).
18:42:00 <arseniiv> <b_jonas> also you could abbreviate the Haskell code by collapsing multiple cases of a function together => yeah that was what I had in mind. Though I’m lazy to do it and see what would it come to
18:43:00 -!- FraterEST has quit (Read error: Connection reset by peer).
18:43:14 -!- LKoen has joined.
18:43:23 <b_jonas> arseniiv: I was considering some of these rules because I eventually want to write an arithmetical library in Consumer Society, as an example to show how you can use the language, although I'll only implement fixed size integers (say 32-bit), not bigints
18:44:20 -!- kritixilithos has joined.
18:44:47 <b_jonas> balanced ternary is not much worse than ordinary ternary, but I choose binary (or base 4, 16 etc) if I have a choice of the base. it doesn't make much difference for simple examples like this where I only implement addition and subtraction and don't care much about the performance of course.
18:53:52 <arseniiv> hm now you mention performance and I think about data Bin (s :: Peano) where { OneBit :: Bit → Bin Z; Chunks :: Bin s → Bin s → Bin (S s) } made of blocks of progressively larger sizes
18:54:19 <arseniiv> though that doesn’t play nice with things like Zero/Mone
19:08:21 -!- Frater_EST has joined.
19:20:21 -!- Frater_EST has quit (Remote host closed the connection).
19:39:50 -!- zzo38 has quit (Disconnected by services).
19:39:54 -!- zzo38 has joined.
20:07:59 -!- kritixilithos has quit (Quit: quit).
20:35:21 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
20:54:07 -!- divergence has quit (Ping timeout: 240 seconds).
20:56:34 -!- diverger has joined.
21:12:30 <esowiki> [[User:PythonshellDebugwindow]] M https://esolangs.org/w/index.php?diff=69830&oldid=69796 * PythonshellDebugwindow * (+31)
21:51:15 <esowiki> [[XENBLN]] M https://esolangs.org/w/index.php?diff=69831&oldid=69664 * PythonshellDebugwindow * (-5) /* Truth-machine (3 bytes) */ -4 bytes thanks to do-while loops
21:54:02 <esowiki> [[XENBLN]] M https://esolangs.org/w/index.php?diff=69832&oldid=69831 * PythonshellDebugwindow * (+1) /* Truth-machine (3 bytes) */
21:54:35 -!- rain1 has quit (Quit: Lost terminal).
22:04:29 -!- tramplefoot has quit (Quit: Leaving.).
22:59:38 -!- BWBellairs has quit (Remote host closed the connection).
23:00:03 -!- BWBellairs has joined.
23:12:51 -!- sprocklem has joined.
23:28:16 <b_jonas> fungot, what color of cheese is the moon made of?
23:28:16 <fungot> b_jonas: i've already told you why it isn't the same as you, iirc :)
←2020-02-10 2020-02-11 2020-02-12→ ↑2020 ↑all