←2023-09 2023-10 2023-11→ ↑2023 ↑all
2023-10-01
00:13:42 <esolangs> [[Trianguish]] N https://esolangs.org/w/index.php?oldid=117278 * Ais523 * (+34807) documenting someone else's language + TCness proof
00:46:10 -!- Lord_of_Life_ has joined.
00:46:13 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
00:47:30 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
00:56:39 -!- A_Dragon has changed nick to DemonDerg.
01:31:27 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117279&oldid=117183 * Ais523 * (+17) /* T */ +[[Trianguish]]
02:10:55 <esolangs> [[A Queue which can't grow]] https://esolangs.org/w/index.php?diff=117280&oldid=113346 * Kaveh Yousefi * (+279) Introduced an examples section comprehending two initial members, one being a counter, the other an adder.
02:12:53 <esolangs> [[A Queue which can't grow]] https://esolangs.org/w/index.php?diff=117281&oldid=117280 * Kaveh Yousefi * (+205) Added a hyperlink to my implementation of the A Queue which can't grow language on GitHub and changed the category tag Unimplemented to Implemented.
04:23:41 <esolangs> [[Pairpointing]] https://esolangs.org/w/index.php?diff=117282&oldid=117211 * Fazaazafg * (+1760) /* Examples */
04:24:55 <esolangs> [[Pairpointing]] https://esolangs.org/w/index.php?diff=117283&oldid=117282 * Fazaazafg * (-9) /* Examples */
04:37:27 <esolangs> [[99 bottles of beer]] https://esolangs.org/w/index.php?diff=117284&oldid=116320 * Fazaazafg * (+1763) /* List of implementations */
04:38:47 <esolangs> [[Pairpointing]] https://esolangs.org/w/index.php?diff=117285&oldid=117283 * Fazaazafg * (-8)
04:44:11 -!- razetime has joined.
04:44:17 -!- ais523 has quit (Quit: quit).
04:51:02 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117286&oldid=117214 * BoundedBeans * (+18)
04:51:35 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117287&oldid=117286 * BoundedBeans * (-18)
05:16:23 <esolangs> [[Omam]] M https://esolangs.org/w/index.php?diff=117288&oldid=66990 * PythonshellDebugwindow * (+155) /* Implementation */ Categories
05:19:08 <esolangs> [[FunctionsFTW/Cat]] M https://esolangs.org/w/index.php?diff=117289&oldid=108711 * PythonshellDebugwindow * (+23) Back
05:50:55 -!- razetime has quit (Remote host closed the connection).
05:51:21 -!- razetime has joined.
06:06:53 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117290&oldid=117287 * Esolanger12345 * (-1)
06:06:56 -!- razetime has quit (Ping timeout: 255 seconds).
06:16:00 -!- razetime has joined.
07:13:37 -!- tromp has joined.
07:37:32 -!- tromp has quit (Read error: Connection reset by peer).
07:39:33 -!- cpressey has joined.
07:45:48 <esolangs> [[Talk:Broken Calculator]] M https://esolangs.org/w/index.php?diff=117291&oldid=117174 * Europe2048 * (+32)
08:03:55 <cpressey> I have an idea for how to help ensure that grammars in my formalism describe CSLs.  Every time a symbol is consumed from input, accumulate some fixed amount of "fuel".  Every time new storage is allocated, expend some fixed amount of "fuel".  -->  The storage used is proportional to the length of the input.
08:08:10 <cpressey> http://esolangs.org/wiki/Linear_bounded_automaton
08:15:06 -!- razetime has quit (Ping timeout: 272 seconds).
09:34:48 <esolangs> [[A Queue which can't grow]] https://esolangs.org/w/index.php?diff=117292&oldid=117281 * Kaveh Yousefi * (+65) Added further page categories and amended a few orthographic mistakes.
09:35:33 <cpressey> There's a sort of Buridan's-ass problem with having a wide range of interests: you can't focus on any one interest enough to do anything significant with it, without neglecting all the other interests.
10:08:08 -!- Sgeo has quit (Read error: Connection reset by peer).
10:14:20 <esolangs> [[Category:Sandies]] N https://esolangs.org/w/index.php?oldid=117293 * Lilchiky * (+0) Created blank page
10:15:38 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117294&oldid=117290 * Lilchiky * (+22)
10:17:06 <esolangs> [[Category:Sandies]] M https://esolangs.org/w/index.php?diff=117295&oldid=117293 * Lilchiky * (+26)
10:24:30 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117296&oldid=117294 * Lilchiky * (+120)
10:26:47 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117297&oldid=117296 * Lilchiky * (+36) /* you can't see me */
10:31:09 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117298&oldid=117297 * Lilchiky * (+104) /* i is ghost */
10:34:24 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117299&oldid=117298 * Lilchiky * (+15) /* ghost */
10:40:50 -!- raz3time has joined.
10:41:25 -!- raz3time has quit (Client Quit).
11:49:16 -!- Koen has joined.
12:12:27 <esolangs> [[Chicken]] M https://esolangs.org/w/index.php?diff=117300&oldid=117269 * None1 * (+9) /* undefined */
12:44:49 <esolangs> [[Template:Wrongname]] N https://esolangs.org/w/index.php?oldid=117301 * Lilchiky * (+155) /* this is a joke, just like Template:Sus */
12:46:08 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117302&oldid=117299 * Lilchiky * (+33)
12:48:33 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117303&oldid=117302 * Lilchiky * (+5) /* Play Area (Don't clear after use!) */
12:49:38 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117304&oldid=117303 * Lilchiky * (+52) /* (The Limit)+1 */
13:11:45 -!- arseniiv has joined.
14:17:11 -!- arseniiv_ has joined.
14:21:19 -!- arseniiv has quit (Ping timeout: 264 seconds).
14:31:12 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117305&oldid=117257 * Lilchiky * (+116) Truth machine gets an upgrade!
14:31:44 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117306&oldid=117305 * Lilchiky * (+2) Adding some appropriate bullet points
14:32:06 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117307&oldid=117306 * Lilchiky * (-1) bullet point went wrong
14:32:23 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117308&oldid=117307 * Lilchiky * (+1) went wrong again
14:35:21 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117309&oldid=117308 * Lilchiky * (+0) /* again */
14:36:42 <esolangs> [[Truth-machine]] M https://esolangs.org/w/index.php?diff=117310&oldid=117225 * Lilchiky * (+7) /* Bawkbawk */
14:37:09 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117311&oldid=117309 * Lilchiky * (+2) /* missing one character */
14:44:03 -!- ais523 has joined.
15:00:31 -!- razetime has joined.
15:00:53 -!- cpressey has quit (Quit: Client closed).
15:35:54 <ais523> an observation I made recently: the primary difference between https://esolangs.org/wiki/Spiral_Rise and a tag system is that tag systems push onto the end of the queue, whereas Spiral Rise pushes onto a known location that might be before or after the end of the queue
15:36:41 <ais523> apart from that, it's basically just Genera Tag where all the symbols have the same production map, but can have different widths (not quite the same because the way the position wraps is different)
15:37:51 <ais523> meanwhile, Genera Tag with all the productions padded to the same length has the same behaviour for the end of the queue – the queue length increases by a constant on every step, so you can find the location to push to via just increasing the location by a constant (as in Spiral Rise) rather than looking for where the end of the queue is
15:39:22 <ais523> so, the question: is Genera Tag Turing-complete under the restrictions that a) all symbols have the same production map, differing only in width; b) that map maps all positions but 0 to the same single symbol, with the production for 0 being different?
15:39:46 <ais523> the resulting language is basically the common subset of Genera Tag and Spiral Rise, which is really interesting to me because I didn't even realise those languages had a common subset until just now
15:41:39 <ais523> fwiw, this is making me think of a generalisation of Spiral Rise where productions can move the "tail of the queue" pointer a different distance from the amount that they write to that pointer
15:43:31 <ais523> and if you write onto the same cell twice, the symbols "add" in some sense (at least obeying the rule 0 + x = x)
15:43:52 <ais523> * a generalisation of Genera Tag
15:43:54 <ais523> although I guess it's both
15:48:31 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
15:56:31 <esolangs> [[Prime numbers generator]] M https://esolangs.org/w/index.php?diff=117312&oldid=97085 * PythonshellDebugwindow * (+9) Stub
15:58:40 <esolangs> [[Meta Memes]] M https://esolangs.org/w/index.php?diff=117313&oldid=96948 * PythonshellDebugwindow * (+24) Category
16:07:18 -!- Koen has quit (Remote host closed the connection).
16:10:41 -!- Koen has joined.
16:31:34 -!- tromp has joined.
16:33:16 -!- ais523 has quit (Ping timeout: 248 seconds).
16:50:01 -!- Thelie has joined.
17:13:51 -!- ais523 has joined.
17:15:15 -!- cpressey has joined.
17:28:33 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:31:07 -!- tromp has joined.
17:53:36 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:30:58 -!- tromp has joined.
18:52:04 -!- Thelie has quit (Remote host closed the connection).
18:52:11 <esolangs> [[Special:Log/newusers]] create * WaywardFractal * New user account
19:03:27 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=117314&oldid=117151 * WaywardFractal * (+102) Said hi
19:05:24 <cpressey> Showing that some given thing is Turing-complete (or more generally foo-complete) is a common activity in this community.
19:09:33 <ais523> I find TCness proofs to be a good way to improve the language that you're compiling from / interpreting in order to prove the TCnes
19:09:35 <ais523> * TCness
19:10:08 <ais523> if you have a lot of proofs of languages A, B, C, etc. by compiling from X, you can then look at your implementations of X in A, B, C, and think, what other languages could I also implement using these same implementations?
19:10:30 <ais523> and is there a change to X that would simplify all the original programs, and would X still be TC after that change?
19:11:15 <ais523> and then maybe you come up with Y, which is an improved version of X, in that it has more power in ways that don't make it harder to implement, and is easier to implement in ways that don't make it less powerful
19:18:00 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=117315&oldid=117262 * Europe2048 * (+1)
19:43:27 <esolangs> [[NASAL]] https://esolangs.org/w/index.php?diff=117316&oldid=109306 * Kaveh Yousefi * (+614) Added a hyperlink to my implementation of the NASAL programming language on GitHub and supplemented two page category tags.
19:46:01 <esolangs> [[NASAL]] https://esolangs.org/w/index.php?diff=117317&oldid=117316 * Kaveh Yousefi * (+368) Introduced an examples section comprehending two initial members: one demonstrating the while loop in conjunction with the pop operation, the other the same iterative facility with rearrangements.
19:48:46 <esolangs> [[NASAL]] https://esolangs.org/w/index.php?diff=117318&oldid=117317 * Kaveh Yousefi * (+0) Rectified the BitBrain equivalency entry for the start of the program, as the same lacked the zero-valued integer argument and instead employed m instructions.
19:56:30 -!- arseniiv_ has quit (Quit: gone too far).
20:08:45 -!- Sgeo has joined.
20:49:38 <esolangs> [[The Waterfall Model]] https://esolangs.org/w/index.php?diff=117319&oldid=115309 * Ais523 * (+207) add See also section, and a little discussion of the Flooding variant
20:54:08 <cpressey> I was thinking that most of these proofs are bisimulation proofs, or rather compiler correctness proofs. You have the language of foo, you have a compiler from foo to bar (call it foobar), and you show that, for all x, foo(x) ~ bar(foobar(x)).  Where ~ means "equivalent to" and includes non-termination.
20:55:11 <cpressey> I was going to say "language of Turing machines" instead of "language of foo", but I think in practice there are very few TCness proof that refer directly to Turing machines. I think most go back to a language that has already been established to be Turing-complete.
20:55:23 <ais523> right
20:55:30 <b_jonas> I don't see why you'd want foo(x) ~ bar(foobar(x)) directly
20:55:40 <b_jonas> oh I see
20:55:41 <ais523> the most recent proof where I did Turing machines directly was https://esolangs.org/wiki/Addition_Automaton and that was only because it was trivially easy
20:55:43 <b_jonas> foobar is the compiler
20:56:26 <ais523> Turing machines are unnatural in a way because they move along a tape but have to eject the same amount of tape on one side that they consume on the other
20:56:47 <ais523> which means that you can't store arbitrary data in arbitrary parts of the tape, you have to go all the way to the end to find new memory to write to
20:57:09 <b_jonas> yep
20:57:28 <ais523> I agree with cpressey that the way you formalise an "X is TC" proof is to prove that Y is TC and to prove that a compiler from Y to X is correct
20:57:33 <b_jonas> usually you instead naturally simulate two stacks
20:58:02 <ais523> I am increasingly coming to believe that tarpits basically fall into two categories, queue machines and counter machines
20:58:10 <ais523> and anything else is insufficiently restrictive to be a tarpit
20:58:45 <b_jonas> the Blindfolded arithmetic proof naturally gives you three stacks; two different Consumer Society proofs give you two stacks directly (though you can go faster than with a two-stack machine, which is why Consumer Society is more of a language of my style than the tarpits)
20:59:14 <ais523> the two-variable blindfolded arithmetic proof is a counter machine rather than stack machine
21:00:07 <ais523> it only gets one number to store data in because the other is needed as a temporary, so it uses the "product of prime powers" technique to store arbitrarily many counters (and from there I implemented The Waterfall Model, which in this context is basically a special case of FRACTRAN)
21:00:50 <b_jonas> hmm
21:00:52 <ais523> the speed question has been intriguing me to some extent: it's why I created https://esolangs.org/wiki/Esimpl
21:01:06 <ais523> which is as fast as a Turing machine, or if restricted to queues only, as fast as a queue automaton
21:01:22 <ais523> that said, I think "as fast as a Turing machine" is beatable by things that aren't Turing machines
21:01:43 <b_jonas> is there a way to distinguish between "as fast as a Turing machine" and "as fast as a two-stack machine"?
21:02:43 <b_jonas> I know there's a distinction between two-stack machine and three-stack machine because the two-stack machine can't reverse (or sort) a list of bits quickly
21:02:51 <ais523> a Turing machine can implement an n-stack machine with only a constant factor slowdown
21:03:00 <ais523> or, no, that's wrong
21:03:06 <ais523> I got confused with something else
21:03:15 <ais523> I think it probably is possible to distinguish
21:03:52 <b_jonas> I think a Turing-machine is as fast as brainfuck, within constant factor
21:04:17 <b_jonas> (where the constant factor might depend on the program)
21:04:31 <ais523> for non-bignum brainfuck, you can compile brainfuck into a Turing machine directly
21:04:42 <ais523> bignum brainfuck is substantially different though I think
21:05:00 <b_jonas> ah
21:05:21 <b_jonas> yes, I was thinking of brainfuck with 8-bit cells
21:05:59 <ais523> Esimpl can do bignum brainfuck, implementing all the commands in O(1) apart from < and > which are O(log n) of the value on the cell
21:06:05 <ais523> which is actually probably faster than a Turing machine
21:06:24 <ais523> unless there's some clever encoding I haven't thought of
21:06:41 <ais523> or, actually, no, + and - are also O(log n)
21:07:05 <b_jonas> I wonder if turing machine can actually simulate two-stack with constant slowdown with some clever amortized copying solution
21:07:10 <ais523> amortized O(1) is possible for + and - I think, but would add a bunch of complexity
21:07:51 <ais523> (while retaining O(log n) < and >)
21:09:30 <ais523> b_jonas: a two-stack machine can sort a list of bits quickly: you do a radix sort with the 0s in 1 stack and the 1s in the other stack
21:09:39 <ais523> * 0s in one stack and 1s in the other stack
21:10:23 <ais523> oh, you're assuming that the list of bits starts on one of the stacks, so you only get the other one to work with
21:10:30 <b_jonas> another question is how you measure the difference between a three-stack machine and a more powerful machine, like one with pointers (a machine with finite control, a bunch of pointer registers, and it can cons and setcar) or one on a tree-shaped memory of cells (like Treehugger but with finite control)
21:10:34 <esolangs> [[Not Python]] M https://esolangs.org/w/index.php?diff=117320&oldid=117275 * PythonshellDebugwindow * (+0) /* Syntactic extensions */ Fix capitalisatoin
21:11:00 <b_jonas> ais523: yes, I phrased that in a silly way, sorting bits is easy because you can just count the number of 0s and 1s
21:11:18 <ais523> one of the things that I feel like I've been fighting against recently is the assumption that programs have an arbitrary FSM available to control them
21:11:21 <b_jonas> I should say sorting a list of words of arbitrary lengths
21:11:23 <ais523> and just need to do the data storage
21:12:06 <ais523> in practice, implementing the control part of a language can be just as hard as implementing the data part, and most of my recent languages have been trying to find ways to make the control and data the same thing
21:12:13 <b_jonas> sure
21:12:27 <esolangs> [[Not Python]] M https://esolangs.org/w/index.php?diff=117321&oldid=117320 * PythonshellDebugwindow * (+1) /* Comparison */
21:12:41 <b_jonas> that's kind of the point of Blindfolded arithmetic
21:12:49 <ais523> e.g. tag systems don't have an FSM, if they did they would be queue automata instead
21:13:26 <ais523> if you are programming in a tag system, you have to resign yourself to the fact that the position in which a symbol is interpreted is based on the sum of widths of everything to its left
21:13:39 <ais523> which were determined on the generation before
21:14:19 <ais523> so, any sort of communication from one symbol to another a) has a time delay and b) affects a segment of the tape up to the symbol that cancels it again
21:15:33 <b_jonas> isn't that only true for a restricted tag system that consumes input in fixed width chunks?
21:15:39 <ais523> there are some minor modifications to tag systems that would avoid this problem, e.g. imagine a tag system symbol that causes the next symbol to also be produced from if this symbol is produced from (rather than skipping the next m-1 symbols as usual)
21:15:53 <b_jonas> the time delay comes from the queue, it's not specific to tag systems
21:16:34 <ais523> b_jonas: no, for me it's true by definition for tag systems, as in I define whether something is a tag system variant or not by whether a symbol can have a "local" effect on the symbols near it or on whether it can only affect the far end of the queue
21:16:55 <ais523> a queue automaton can, say, scan a queue and output all the symbols that immediately follow a given symbol X
21:17:09 <ais523> thus, e.g., "ABXCDEXFXG" would output "CFG"
21:17:25 <ais523> in a tag system, you can't do that all, not even if X is a different width from the other symbols
21:17:49 <b_jonas> ok
21:17:54 <ais523> the input would need to look more like "ABXCYDEXFYXGY", i.e. with a separate symbol to say "stop outputting here"
21:18:51 <ais523> an interesting side effect is that tag systems are bad at interpreting queue-based languages (including interpreting other tag systems), they are better at interpreting counter-based languages
21:19:05 <ais523> …which is also why tag system TCness is normally proved using compilers rather than intepreters
21:21:44 <esolangs> [[]] N https://esolangs.org/w/index.php?oldid=117322 * BoundedBeans * (+6996) Created page with " is an esolang by [[User:BoundedBeans]] intended to achieve a certain visual appearance, and to use a lot of his favorite symbol. ==Syntax== Every line should have exactly 20 regular characters and 20 combining diacritical marks. They should be paired up in such a way th
21:21:57 <b_jonas> that's even if you allow a large number of symbols for the tag system, right?
21:22:03 <ais523> yes
21:22:15 <ais523> assuming you need to be able to handle arbitrarily long strings
21:23:31 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117323&oldid=117279 * BoundedBeans * (+11)
21:23:43 <ais523> "print the first character of this string" is possible in tag systems in O(log n) time, which is better than I initially expected but still slower than a queue automaton
21:24:01 <esolangs> [[User:BoundedBeans]] https://esolangs.org/w/index.php?diff=117324&oldid=116395 * BoundedBeans * (+10)
21:25:04 <ais523> (you can find every character in a position that's 1 mod 2, then every character in a position that's 2 mod 4, then 4 mod 8, etc., until eventually only the character in position 0 has been found)
21:25:29 <ais523> err, only the character in position 0 has been unfound, and then it knows it's the character in position 0
21:26:30 <ais523> huh, does this work for AORS too? if so then it might be possible to get a sub-exponential TCness proof (but still not linear)
21:26:59 <ais523> the difference is that in a tag system, the string is capable of knowing for itself when the last character has been found, but in AORS some external thing to the left would need to have an idea of how long the string is
21:27:18 <ais523> which it can't know exactly in general, but it's possible to get an estimate that's always exactly right or too high, never too low
21:28:05 <ais523> so I guess the problem reduces to "what's the slowest-growing increasing function that you can calculate in AORS" which is non-obvious
21:33:47 <esolangs> [[Cammy/Hives]] https://esolangs.org/w/index.php?diff=117325&oldid=117025 * Corbin * (+1065) /* Encoding of v2 Hives */ Flesh out the rest of the current hive functionality.
21:53:03 -!- cpressey has quit (Ping timeout: 245 seconds).
23:59:48 -!- Koen has quit (Quit: Leaving...).
2023-10-02
00:12:31 <fizzie> You know how it's typical for ELF executables to put the ELF headers into a segment that gets loaded into memory? Is there also a convenient magic symbol for the address that's the start of the executable, the same way there's _etext / _edata / _end?
00:12:33 <fizzie> I have a binary that wants to introspect its own headers, and it currently just `open`s /proc/self/exe, but it seems silly if they're already loaded.
00:27:53 <fizzie> The extended context is, I'm embedding some resources in the binary that I don't want persistently loaded in memory, so I'm putting them in a special section that's not loaded into the process image, but instead at runtime mapping the relevant section of the file when needed. But this needs the file offset of the section.
00:32:03 <zzo38> I don't know much about it (or how to access them from a C code, how to program the linker to do such things, etc; it is probably documented but I have not read all of them)
00:40:11 <fizzie> I guess it's possible the linker could even directly provide the file offset of the section as a symbol, but that'd probably require writing a custom linker script.
00:45:51 -!- Lord_of_Life has quit (Ping timeout: 258 seconds).
00:48:21 -!- Lord_of_Life has joined.
01:38:43 -!- b_jonas has quit (Ping timeout: 264 seconds).
02:13:11 <esolangs> [[Special:Log/newusers]] create * Paracompact633 * New user account
02:17:56 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117326&oldid=117314 * Paracompact633 * (+217) /* Introductions */ Add introduction
02:58:25 <esolangs> [[Parenthesis Hell]] https://esolangs.org/w/index.php?diff=117327&oldid=70709 * Paracompact633 * (+343) /* Description */ Add explanation on how values work
04:05:26 -!- CAT_S has quit (Ping timeout: 255 seconds).
04:18:23 -!- CAT_S has joined.
05:01:18 <esolangs> [[Eitherf*ck]] M https://esolangs.org/w/index.php?diff=117328&oldid=75781 * PythonshellDebugwindow * (+47) Categories
05:46:42 <zzo38> Does any programming language have a scientific numeric type, that will keep track of the precision and sigfigs as well?
06:42:11 <ais523> zzo38: yes, e.g. Math::BigFloat in Perl
06:42:14 <ais523> I think "BigDecimal" is a common name
06:44:46 <ais523> that said, I don't think it adapts the precision as arithmetic operations occur
06:45:26 <ais523> so 1.00001 - 1.00002 is stil believed to be accurate to six significant figures, even though only about 0-1 significant figure is actually available
06:47:01 -!- ais523 has quit (Quit: quit).
06:51:51 -!- Koen has joined.
06:52:51 <esolangs> [[Talk:Transet]] https://esolangs.org/w/index.php?diff=117329&oldid=117239 * GUAqwq * (+105) /* Personal problem on the interpreter or on haskell */
07:21:54 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117330&oldid=117323 * Lilchiky * (+17) /* B */
07:28:52 <esolangs> [[(SIASL)]] M https://esolangs.org/w/index.php?diff=117331&oldid=108168 * K.avi * (+6) /* Meta instructions */
07:48:43 <esolangs> [[Chicken]] M https://esolangs.org/w/index.php?diff=117332&oldid=117300 * None1 * (+16) /* NaN */
07:49:44 -!- Sgeo has quit (Read error: Connection reset by peer).
08:25:05 -!- Noisytoot has quit (Ping timeout: 255 seconds).
08:36:00 -!- Noisytoot has joined.
08:49:05 -!- sprout has quit (Ping timeout: 240 seconds).
08:49:54 <esolangs> [[Dip]] M https://esolangs.org/w/index.php?diff=117333&oldid=117231 * D * (+58)
08:50:02 <esolangs> [[Dip]] M https://esolangs.org/w/index.php?diff=117334&oldid=117333 * D * (-1)
08:55:05 -!- sprout has joined.
09:08:09 <esolangs> [[Dip]] M https://esolangs.org/w/index.php?diff=117335&oldid=117334 * D * (+6) More descriptive intro
09:08:28 <esolangs> [[Dip]] M https://esolangs.org/w/index.php?diff=117336&oldid=117335 * D * (+0)
09:36:59 -!- arseniiv has joined.
09:40:59 -!- __monty__ has joined.
10:55:29 <esolangs> [[List of ideas]] https://esolangs.org/w/index.php?diff=117337&oldid=114874 * GUAqwq * (+38) /* Ideas for Names */
11:55:41 -!- Thelie has joined.
12:55:40 -!- arseniiv has quit (Ping timeout: 248 seconds).
13:03:33 -!- arseniiv has joined.
13:23:06 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117338&oldid=117234 * GUAqwq * (-82) /* Binary numbers to integer */
13:24:25 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117339&oldid=117338 * GUAqwq * (+30) /* Computational class */
13:24:33 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117340&oldid=117339 * GUAqwq * (-2) /* Computational class */
13:33:56 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117341&oldid=117340 * GUAqwq * (+99) /* Computational class */ now Transet is Turing Complete. Yeahhhhhhhhh
13:34:24 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117342&oldid=117341 * GUAqwq * (+1) /* Binary numbers to integer */
13:37:11 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117343&oldid=117342 * GUAqwq * (+118) /* Binary numbers to integer */
13:37:34 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117344&oldid=117343 * GUAqwq * (-28) /* Computational class */
13:38:06 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117345&oldid=117311 * Lilchiky * (+465) adding minor help stuff
13:38:11 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117346&oldid=117344 * GUAqwq * (+0) /* Overview */
13:38:32 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117347&oldid=117346 * GUAqwq * (+0) /* Overview */
13:38:48 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117348&oldid=117345 * Lilchiky * (-2) small grammar mistake
13:40:36 <esolangs> [[Talk:Transet]] https://esolangs.org/w/index.php?diff=117349&oldid=117329 * GUAqwq * (+99)
13:40:55 <esolangs> [[Talk:Transet]] https://esolangs.org/w/index.php?diff=117350&oldid=117349 * GUAqwq * (+9) /* Personal problem on the interpreter or on haskell */
13:41:21 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117351&oldid=117348 * Lilchiky * (-10) forgot about the pentadecimal part
13:42:51 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117352&oldid=117351 * Lilchiky * (+0) no edits
13:44:20 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117353&oldid=117352 * Lilchiky * (+79) disclaimer
13:45:34 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117354&oldid=117353 * Lilchiky * (-68) oops no need for that
14:58:07 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117355&oldid=117347 * GUAqwq * (+244) Add Info Box
14:58:40 -!- Lymia has quit (Quit: zzzz <3).
15:00:21 -!- Lymia has joined.
15:00:25 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117356&oldid=117355 * GUAqwq * (+6)
15:04:37 <esolangs> [[Brainlove]] M https://esolangs.org/w/index.php?diff=117357&oldid=105199 * PythonshellDebugwindow * (+29) Categories
15:04:50 -!- Thelie has quit (Quit: Leaving.).
15:05:48 -!- Thelie has joined.
15:13:22 -!- Thelie has quit (Quit: Leaving.).
15:30:26 -!- Thelie has joined.
15:35:28 -!- Thelie has quit (Ping timeout: 272 seconds).
15:38:46 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=117358&oldid=117315 * Europe2048 * (+18)
15:39:39 -!- tromp has quit (Read error: Connection reset by peer).
15:59:11 -!- Thelie has joined.
16:26:26 -!- cpressey has joined.
16:59:53 -!- cpressey has quit (Quit: Client closed).
17:06:01 -!- cpressey has joined.
17:07:40 <cpressey> Ha, I just accidentally posted something in #haskell that I meant to post in here.
17:08:01 <cpressey> Something interesting I stumbled across recently, hadn't encountered before, might be of interest here: Augmenting a finite automaton with a single memory cell that holds an element of a given monoid or group: https://arxiv.org/abs/math/0601061v2
17:08:21 -!- cpressey has quit (Client Quit).
17:17:55 -!- cpressey has joined.
17:17:57 <shachaf> Hmm, do you get more from two monoid/group memory cells rather than one (like you do from two integer cells)?
17:21:49 <cpressey> I would imagine you could (often? sometimes?) use a single memory cell with the Cartesian product of the two monoids / groups.
17:21:58 <cpressey> Then again, it's been a long day, my brain is guessing
17:29:13 <shachaf> So for a finite automaton with some sort of cell containing an integer and some reasonable operations (increment/decrement/check for zero?), I vaguely remember that one gives you something weird, but two gives you something Turing-equivalent.
17:31:33 -!- Koen has quit (Remote host closed the connection).
18:01:24 -!- Thelie has quit (Ping timeout: 240 seconds).
18:05:03 <cpressey> Yeah, it's something like, a counter can emulate a stack, so a 1-counter automaton can simulate a PDA and a 2-counter automaton can simulate an automaton with two stacks, i.e., a tape, i.e. a TM.
18:05:59 <shachaf> I don't think a 1-counter automaton can simulate a PDA.
18:06:20 <shachaf> I think you need two counters for a stack, with one scratch counter to do any operations on it.
18:06:22 <cpressey> I'm not sure what carries over when you generalize from integers to these algebraic objects though.  The idea seems to be the automaton accepts only if the value returns to the identity element.  If you have e.g. a free monoid, that's basically never going to happen
18:06:38 <shachaf> So you can do two stacks with four counters. But you can also simulate four counters with two counters. Something like that.
18:28:40 -!- b_jonas has joined.
18:31:15 <b_jonas> cpressey: what operations do you have on that element? if you have an element that's a pair of integers, but you can only multiply it with a constant or compare to zero, then that probably won't let you make a two-counter machine.
18:34:04 <b_jonas> although it's possible that it might give you more power than a one-counter machine, because you could eg. recognize strings from {a,b,c,d} alphabet that has an equal number of a to b and equal number of c to d, which I think you can't do on a one-counter machine. if you have just one counter, you can't multiply it with primes so you can't do the encoding trick like with two counters.
18:34:18 -!- cpressey has quit (Ping timeout: 245 seconds).
18:34:27 <b_jonas> I don't really know what you can recognize with one counter in fact
18:44:21 -!- cpressey has joined.
18:45:04 <cpressey> shachaf: you're right, I had to look it up again; you need 2 counters to simulate a stack.  So 4 counters can simulate a tape.  But (somehow) 2 counters can also simulate 4 counters so can simulate a tape.
18:50:55 <zzo38> I had started to read the linked PDF.
18:51:04 -!- Thelie has joined.
18:55:12 <b_jonas> fungot, how do you spell "antediluvian"?
18:56:56 <b_jonas> cpressey: yes, two counters (or, if you prefer, two stacks with just one possible symbol on the stack but an empty stack distinguishable) is Turing-complete, you just get another level of exponential slowdown compared to having three or more counters, see https://esolangs.org/wiki/Minsky_machine
19:00:05 <cpressey> b_jonas: re "what operations do you have on that element" -- that element is a member of a monoid (or group).  The operation you get, is the monoid (or group) operation.
19:01:08 <b_jonas> cpressey: right, but you need some operation in how it can affect the automata, like the finite control part can compare the value to zero and go to a different state depending on whether it is, but it could be something more than that
19:01:44 <b_jonas> or it could be less, like the value is only accessable at the very end when the machine wants to halt, and forces the machine to fail to terminate if the value is nonzero
19:13:58 -!- SGautam has joined.
19:15:58 -!- cpressey has quit (Ping timeout: 245 seconds).
19:23:13 -!- Koen has joined.
19:24:39 -!- cpressey has joined.
19:25:51 <cpressey> b_jonas: How the element effects the automaton is, the automaton only accepts if the element is the identity element of the (monoid|group).  This is all pretty clearly described on the first page of the paper
19:27:00 <zzo38> I would think that the blind counter automata could accept e.g. ("xyz",0) if it originally accepted "xyz" according to the definition of "blind counter automata" in the document
19:51:40 <b_jonas> cpressey: oh, so you were reading a paper. ok.
19:52:06 <b_jonas> yeah, you linked to https://arxiv.org/abs/math/0601061v2
20:12:20 -!- __monty__ has quit (Quit: leaving).
20:20:32 -!- Thelie has quit (Ping timeout: 260 seconds).
20:21:23 -!- Thelie has joined.
20:24:39 <esolangs> [[Talk:Nice]] N https://esolangs.org/w/index.php?oldid=117359 * Europe2048 * (+136) Created page with "An interepter for Nice may not be possible. --~~~~"
20:31:48 -!- ais523 has joined.
20:32:14 <ais523> cpressey: in a stunning example of incredibly slow TCness constructions, my TCness proof for Netrunner uses two counters to simulate two counters
20:33:02 <ais523> (using the normal "2 counters to simulate n counters" construction where one of the counters is a temporary, and the other stores products of primes Fractran-style
20:33:05 <ais523> )
20:33:30 <ais523> so there's an extra exponential slowdown on top of the usual for two-counter machines
20:34:23 <ais523> I did it that way because control flow around one of the counters is incredibly limited and I could only just about get a doubler, tripler, halver and thirder implemented in the space available
20:36:39 <ais523> <cpressey> shachaf: you're right, I had to look it up again; you need 2 counters to simulate a stack. So 4 counters can simulate a tape. But (somehow) 2 counters can also simulate 4 counters so can simulate a tape. ← to simulate a stack, you need 1 counter + 1 temporary; to simulate two stacks, you only need 2 counters + 1 temporary because they can share the temporary as long as you don't try to read from / write to both stacks at the same time
20:37:19 <ais523> the temporary is needed to do multiplications/divisions, for much the same reason that you need a temporary to multiply/divide a cell in brainfuck
20:38:07 <shachaf> Isn't there a construction that uses 1 counter + 1 temporary for two stacks?
20:38:28 <ais523> shachaf: you can do it indirectly, but not directly
20:39:00 <ais523> by encoding two counters and a temporary into one of the counters, then using the other counter as a temporary to operate on it
20:52:07 <b_jonas> right, encoding as prime products, so your one counter is 2**a*3**b*5**c*... to encode a small number of counters (a,b,c,...), and you use the temporary to do multiplications and divisions (undoing the division if you find that it's not divisible) on the one real counter to simulate increment and decrement-zero-test on the simulated counters
20:53:06 <b_jonas> thus two levels of exponential slowdown to a two-counter Minsky machine, and three levels to ais523's netrunner proof
20:54:23 -!- cpressey has quit (Quit: Client closed).
20:55:11 <ais523> I suspect at least one of those levels is not essential to the Netrunner proof
20:58:39 <shachaf> Oh boy, I haven't seen this one before: https://knexator.itch.io/tres-undos
20:59:30 <b_jonas> shachaf: that is either the same or similar to another game that someone mentioned on this channel
21:00:45 <b_jonas> shachaf: https://logs.esolangs.org/libera-esolangs/2023-03.html#l2u
21:02:07 <b_jonas> so no, not the same game
21:02:59 <b_jonas> but they do have some things in common
21:10:56 -!- arseniiv has quit (Quit: gone too far).
21:10:56 <esolangs> [[Spiral Rise]] https://esolangs.org/w/index.php?diff=117360&oldid=95429 * Ais523 * (-4405) tag systems are Turing-complete with only 5 symbols, because you can compile any (without loss of generality) Spiral Rise program into a 5-symbol tag system
21:11:43 <esolangs> [[Spiral Rise]] M https://esolangs.org/w/index.php?diff=117361&oldid=117360 * Ais523 * (+15) /* 5-symbol tag system */ fix table formatting
21:12:30 <zzo38> I have not play game (it is not working on my computer), although, it does resemble other game I saw mentioned here before, which also I had seen some picture and guess its working, like it is based on undo some things but not others, I think.
21:12:47 <ais523> I didn't expect tag systems to get quite *that* small – 19 seemed improvable-on but 5 is a big improvement from there
21:15:43 <esolangs> [[Spiral Rise]] https://esolangs.org/w/index.php?diff=117362&oldid=117361 * Ais523 * (+5564) restore the rest of the page, which accidentally got deleted (my browser crashed while I was making a previous edit, which may have caused the problem)
21:21:47 -!- Thelie has quit (Remote host closed the connection).
21:23:26 -!- SGautam has quit (Quit: Connection closed for inactivity).
21:59:09 <esolangs> [[User:Theki/Dummy]] https://esolangs.org/w/index.php?diff=117363&oldid=107804 * Theki * (+19) /* Data Types */
22:04:54 <esolangs> [[Fish]] https://esolangs.org/w/index.php?diff=117364&oldid=108174 * Theki * (+2)
22:32:54 -!- Koen has quit (Quit: Leaving...).
22:52:42 -!- Sgeo has joined.
22:55:39 -!- moony has quit (Ping timeout: 255 seconds).
22:56:09 -!- moony3 has joined.
2023-10-03
00:11:43 <zzo38> I have installed Xfig 3.2.8 and already found two things wrong that I corrected; one is that one file doesn't check if it should use Xaw3d or not (and therefore won't compile without Xaw3d), and other is that clicking the rulers to scroll will always scroll the same amount instead of depending on where you clicked on.
00:12:59 <zzo38> (Fix amounts scrolling is still possible by pushing the arrows, though)
00:23:06 <zzo38> (Although, the scrolling working is not really a bug; it is documented. But, it is inconsistent with xterm.)
00:32:46 <zzo38> In future, hopefully function to be added can include: additional keyboard commands (e.g. quick access to object attributes), text with TRON code, and possibly some others too.
00:46:36 -!- Lord_of_Life has quit (Ping timeout: 248 seconds).
00:47:31 -!- Lord_of_Life has joined.
01:52:38 -!- Noisytoot has quit (Remote host closed the connection).
01:59:43 -!- Noisytoot has joined.
02:37:27 <esolangs> [[User:GUAqwq]] https://esolangs.org/w/index.php?diff=117365&oldid=117230 * GUAqwq * (-1959) Replaced content with "==My esolangs== * [[Tetrastack]] (TC) * [[Transet]] (TC)"
02:39:34 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117366&oldid=117356 * GUAqwq * (-3)
03:00:44 -!- ais523 has quit (Quit: sorry about my connection).
03:07:05 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117367&oldid=117354 * Lilchiky * (+4) /* +4 bytes */
03:16:12 -!- moony3 has quit (Ping timeout: 255 seconds).
03:16:46 -!- moony has joined.
04:15:43 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117368&oldid=117367 * Lilchiky * (+240) two new commands!
04:17:25 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117369&oldid=117368 * Lilchiky * (+32) /* Truth machine */ gets an upgrade!
05:01:22 <zzo38> Why doesn't Xfig set the focus of windows when they are displayed? All other Xaw-based programs (including ones that I write myself) do so automatically, without needing to adding anything special into the program.
07:23:50 <zzo38> I fixed it by adding a window manager setting specific for this program, although that doesn't seems best way to do it.
07:32:22 -!- Koen has joined.
08:12:22 -!- Sgeo has quit (Read error: Connection reset by peer).
08:37:21 -!- sprout_ has joined.
08:37:51 -!- sprout has quit (Ping timeout: 260 seconds).
09:30:49 <esolangs> [[NASAL]] M https://esolangs.org/w/index.php?diff=117370&oldid=117318 * Kaveh Yousefi * (-4) Rectified an orthographic mistake.
09:35:01 -!- cpressey has joined.
09:42:24 <cpressey> I haven't read the paper in detail, but to shachaf's original question, I can't see what having more than one group-based memory cell could give you over having just one, because I can't think of any case where you can't encode the information that resides in two elements of a group into a single element of a combined group.  Then again, IANAGT.
09:44:13 <cpressey> I think there probably groups that you can augment a FSM with, that make it Turing-complete, or make it into a PDA, etc.  I think the idea is more about investigating what groups relate to what computability classes.
09:44:37 -!- arseniiv has joined.
09:45:06 -!- __monty__ has joined.
10:25:52 <int-e> PDA seems easier with a monoid
10:26:38 <int-e> (The point is, you can have pure right inverses with a a^-1 = 1 but not a^-1 a = 1. Can't do that in groups.)
10:37:50 <int-e> cpressey: Especially in the case of groups, the term "memory" is a bit misleading since the automaton can't inspect it. With inspection capabilities having more than one group could become useful. Without I agree that you get the same effect with direct products.
10:41:32 <int-e> (There are /probably/ tricks to get a PDA with a group. I just can't work it out.)
10:41:58 <esolangs> [[Special:Log/newusers]] create * Moltony112 * New user account
10:44:41 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117371&oldid=117326 * Moltony112 * (+152) /* Introductions */
11:06:43 <esolangs> [[Talk:Nice]] https://esolangs.org/w/index.php?diff=117372&oldid=117359 * None1 * (+151)
11:07:27 <esolangs> [[User:None1/ToDo]] https://esolangs.org/w/index.php?diff=117373&oldid=117178 * None1 * (+67) /* Content */
11:10:10 -!- sprout_ has changed nick to sprout.
11:26:22 <cpressey> Yeah, groups might have too much symmetry to make a PDA, I dunno.
11:27:36 <cpressey> For a more bizarre take, we might observe that 1 counter isn't enough to make a PDA and 2 counters is too many, so how many counters do you need to make a PDA, anyway?  1.414, perhaps?
13:00:58 <cpressey> int-e: true, the automaton can't inspect the "memory", but a thought just occurred to me.  If the automaton is non-deterministic then we can think of its choice points as guesses of the value of the memory cell, and the accepting paths will be those where all of those guesses were correct.  Not sure if this is a good substitute for actually being
13:00:58 <cpressey> able to inspect the cell, but it... sounds somewhat plausible.
13:02:19 <cpressey> I should probably read the paper, it's just that that's, like, a lot of concentration-commitment that I don't want to make atm
13:02:35 <cpressey> Would rather run my mouth off on IRC apparently
13:20:24 <int-e> Yeah, I assumed that we were going to use non-determinism.
13:21:02 <int-e> I have not read the full paper either. I skimmed for keywords, saw some hints of product constructions...
13:21:15 <int-e> And I checked some definitions.
13:25:45 <int-e> cpressey: The point I was making about monoids was basically that yes, you can actually get inspection through speculative execution, so to speak. If you have a a^-1 = 1 but no reduction for b a^-1 (b != a) or a^-1 b (b = a allowed), then thats exactly the same as popping a from a stack. And you still have product monoids, so you can have many stacks. So that'll be TC.
13:26:17 <int-e> "that" being "appending a^-1 to the monoid component"
13:30:28 <esolangs> [[Starfish]] M https://esolangs.org/w/index.php?diff=117374&oldid=107982 * ApisNecros * (+1) Change link to https
13:40:13 <esolangs> [[Alpha]] N https://esolangs.org/w/index.php?oldid=117375 * Infinitehexagon * (+589) Created page with "'''Alpha''' is an esoteric programming language that is part of a series by [[User:Infinitehexagon]] on Greek esolangs that will be a derivative of the previous esolang with more commands, less commands, or modified commands. So far it has 6 commands. {| class="wik
13:41:27 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117376&oldid=117375 * Infinitehexagon * (+69)
13:44:28 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117377&oldid=117376 * Infinitehexagon * (+106)
13:49:32 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117378&oldid=117377 * Infinitehexagon * (+115)
13:53:37 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117379&oldid=117378 * Infinitehexagon * (+22)
14:04:48 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117380&oldid=117379 * Infinitehexagon * (+180)
14:10:23 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117381&oldid=117380 * Infinitehexagon * (+245)
14:10:41 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117382&oldid=117381 * Infinitehexagon * (+7) /* Hello World */
14:13:05 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117383&oldid=117382 * Infinitehexagon * (+43)
14:16:16 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117384&oldid=117383 * Infinitehexagon * (+59)
14:16:31 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117385&oldid=117384 * Infinitehexagon * (+1)
14:17:57 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117386&oldid=117385 * Infinitehexagon * (+2)
14:18:17 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=117387&oldid=116600 * Infinitehexagon * (+14) /* My Esolangs (chronological order) */
14:26:04 <esolangs> [[DStack]] M https://esolangs.org/w/index.php?diff=117388&oldid=51744 * Europe2048 * (+0) Fixed a typo.
14:54:19 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117389&oldid=117369 * Lilchiky * (+437) life becomes easier
14:55:59 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117390&oldid=117389 * Lilchiky * (+0) /* Commands */ wut happened?
14:56:29 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117391&oldid=117390 * Lilchiky * (-9) /* Commands */ wut happnd agen?
14:56:52 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117392&oldid=117391 * Lilchiky * (-1) /* Commands */ HUH?
14:57:14 -!- Europe2048 has joined.
14:57:23 <Europe2048> Hi everyone!
14:57:32 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117393&oldid=117392 * Lilchiky * (+12) /* Commands */ this must work
14:58:16 <Europe2048> Oh, hi +esolangs! I'm User:Europe2048 on Esolangs.
15:00:37 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117394&oldid=117393 * Lilchiky * (+7) /* Text to Bawkbawk */ fixin' the script
15:02:29 <Europe2048> I think he's a bot.
15:03:00 -!- Europe2048 has left.
15:03:03 -!- Europe2048 has joined.
15:03:24 <cpressey> Hi Europe2048!
15:03:25 <Europe2048> Hi, anyone here?
15:03:42 <Europe2048> Hi cpressey, I'm User:Europe2048!
15:04:51 <cpressey> The IRC channel is quiet a lot of the time these days, but there is occasional activity.  The logs tell the story
15:05:09 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117395&oldid=117394 * Lilchiky * (-443) script doesn't work :c
15:05:58 <Europe2048> Also, I joined Libera just now.
15:07:45 <cpressey> I joined Libera recently too.  The last time I was here was back in the freenode era.
15:11:12 <Europe2048> What's your Esolangs username and how long ago did you join Esolangs?
15:11:52 -!- wib_jonas has joined.
15:12:01 <wib_jonas> cpressey: you were here in spirit though. and in the quotes file.
15:12:47 <Europe2048> Hi wib_jonas!
15:13:52 -!- ais523 has joined.
15:14:23 <Europe2048> Welcome to this server, ais523!
15:14:36 <ais523> hi Europe2048
15:14:51 <ais523> cpressey and I have both been involved with esolangs for ages (cpressey longer than me)
15:15:04 <Europe2048> My Esolangs username is Europe2048, what's yours?
15:15:24 <ais523> ais523
15:15:31 <ais523> both somewhat predictable
15:15:33 <Europe2048> Also, I joined at September 18.
15:15:57 <Europe2048> Also, wow, you created a lot of esolangs.
15:16:27 <ais523> I got better at it over time
15:16:44 <ais523> I am mostly interested in Turing tarpits and golfing languages, but the tarpits are much easier to create
15:17:16 <Europe2048> Which of your languages needs to be improved?
15:18:05 <ais523> the newer ones generally don't have a whole lot of decisions to be made when designing them – and when I do find an improvement, often it's a language of its own
15:18:32 <Europe2048> Which languages in particular?
15:18:35 <wib_jonas> yep, you can't really modify them, keep it or condemn it, those are the choices
15:18:43 <ais523> e.g. https://esolangs.org/wiki/Brainpocalypse_II is usually easier to implement than https://esolangs.org/wiki/Brainpocalypse, and also runs faster, but some languages find the original Brainpocalypse to be a better fit
15:19:06 <ais523> the sorts of languages that can be modified easily are the sort that have lots of commands
15:19:30 <ais523> e.g. I modified https://esolangs.org/wiki/Esimpl earlier this year because the program wasn't conveying all the information that an interpreter needed
15:20:03 <ais523> (and to answer your earlier question, yes, esolangs is a bot)
15:21:54 <ais523> for Turing tarpits, the computational class proof is often part of the language in spirit; it is often possible to improve those
15:22:09 <ais523> typically by allowing the language to be implemented using fewer resources
15:22:15 <esolangs> [[Pokecontest]] M https://esolangs.org/w/index.php?diff=117396&oldid=88351 * PythonshellDebugwindow * (+9) Stub
15:23:03 <wib_jonas> that's often true for toy languages with lots of choices too, funnily. it's easier to make entirely new languages than trying to save my old interpreted languages (psz, geo and scan)
15:23:24 <Europe2048> wib_jonas and ais523, check out my language: https://esolangs.org/wiki/Deadfish++
15:24:38 <Europe2048> Note: it's high-level because you can store strings in variables.
15:24:45 <ais523> Europe2048: I think that sort of language is designed pretty commonly
15:24:53 <ais523> there are a lot of esolangs like it, and it gets hard to choose between them at some point
15:24:57 <cpressey> I used to design esolangs, but not as much anymore.  I still, uh, do things with, uh, languages an' stuff, but yeah
15:25:10 <ais523> not that it's a bad design, just that it's a commonly repeated one
15:25:32 <Europe2048> But I think my extension is the most powerful by now.
15:27:13 <wib_jonas> you get one point from me for pretending that you are extending Deadfish instead of Brainfuck, even if in these sorts of extensions the base language is totally irrelevant because all the power comes from the extensions
15:28:26 <ais523> power in esolangs can be hard to define, when you get up to higher levels
15:28:50 <ais523> (at the lowest level, you can consider X to be more powerful than Y if X can implement Y more efficiently than Y can implement X – with very low-level esolangs this is normally obvious)
15:29:28 <wib_jonas> ais523: you said recently that Blindfolded Arithmetic is Turing-complete with just two variables. have you ever written a draft proof down for that? or did I misunderstand that and you only said three variables?
15:29:33 <ais523> wib_jonas: no, two
15:29:36 <ais523> it's linked at the bottom of the article
15:29:50 <wib_jonas> oh right, there's a link
15:29:56 <ais523> http://nethack4.org/esolangs/blindfolded-arithmetic-2var.txt
15:31:05 -!- tromp has joined.
15:31:15 <Europe2048> ais523, this definition proves that Deadfish++ is indeed more powerful than Deadfish.
15:31:50 <wib_jonas> I'll have to look at that because two variables needs more complicated tricks than three. This is a good way to get more value out of existing interesting languages, by considering obvious restrictions.
15:31:52 <Europe2048> Because you can't implement Deadfish++ with Deadfish - there is no input in Deadfish.
15:32:11 <ais523> Europe2048: most languages are more powerful than Deadfish
15:32:14 <wib_jonas> I should perhaps get back to trying to figure out how the restricted versions of Amycus work
15:32:39 <ais523> today I have been trying to find the minimum Turing-complete value of d in Spiral Rise
15:33:28 <ais523> I'm think it's likely that 3 is possible – instead of implementing a tag system, you would implement a Couplet 2C variant
15:33:47 <ais523> (which is more powerful than tag in terms of efficiency with which it can implement things, so it'd be a good change anyway)
15:34:18 <ais523> 2 does not seem obviously impossible, but is a very obnoxious language to program in
15:34:48 <ais523> obviously you can't do 1, because "divmod by 1" does not have any computational power
15:35:06 <ais523> err, minimum Turing-complete *integer* value
15:35:10 <ais523> Spiral Rise technically works on non-integers
15:35:55 <Europe2048> So you can do Spiral Rise on 3π?
15:36:51 <ais523> the language would be defined – it might be hard to implement though
15:37:23 <wib_jonas> as for blindfolded arithmetic, https://esolangs.org/wiki/Analytical_Engine_Programming_Cards , which claims to be kind of a reconstruction based on Babbage's plans, somehow uses 50 digit wide numbers, with full multiplication of two 50 digit numbers to 100 digits, and full division of 100 digits by 50 digits to 50 digits divisor and reminder. the
15:37:24 <wib_jonas> 50 digits sounds way too many to me, and I don't understand why anyone would plan for that wide numbers. I understand why we want SIMD on wide registers today, but nothing that would allow that is present in the language that they describe, so it's not about that.
15:37:27 <ais523> it turns out that, once you go beyond the rationals, there isn't a reliable way to tell whether an expression evaluates to 0 or not
15:38:06 <ais523> wib_jonas: the Analytical Engine's predecessor was intended to produce tables of various expressions
15:38:19 <wib_jonas> ais523: I still say that there is a decently easy way for quadratic irrationals (expressions with numbers, field operations, and square roots), despite that when I once tried to implement the algorithm I failed
15:38:24 <ais523> presumably some level of accuracy was required in the output, and more accuracy would be required in the intermediate calculations for the output to be right
15:38:53 <wib_jonas> ais523: ok, but I don't think even that would require 50 digits
15:39:14 <ais523> I get the feeling that Babbage was pretty ambitious
15:39:26 <ais523> and computer programming was pretty undeveloped at the time
15:39:36 <ais523> so maybe Babbage thought it'd require 50 digits, even if he was wrong?
15:40:21 <wib_jonas> I get the feeling that Babbage is irrelevant here, and people are just projecting whatever retrofuturistic thing they want to imagine to Babbage because it sounds better that way, sort of like with Leonardo da Vinci
15:40:38 <wib_jonas> (but you could say that I do the same with Gauss so who am I to say that)
15:40:52 <Europe2048> What are you guys talking about?
15:41:06 <wib_jonas> Europe2048: https://esolangs.org/wiki/Analytical_Engine_Programming_Cards
15:41:38 <ais523> wib_jonas: https://en.wikipedia.org/wiki/Nested_radical implies it can be done for square roots specifically
15:42:06 <ais523> unless, there is some sum of square roots that can't be proven to equal or not equal 0
15:43:13 <wib_jonas> ais523: yes it can be done for square roots, the question is just whether you can consider that algorithm easy, and I am arguing that you can
15:43:44 <ais523> there is complexity due to the distinction between the positive square root and the negative square root
15:43:56 <Europe2048> How do you output in Babbage?
15:44:13 <wib_jonas> you can also do computations with roots of arbitrary algebraic numbers described by a polynomial of which it is a root and some bounds, but nobody claims that the algorithms for that one is easy, and there are very few implementations for that
15:45:04 <wib_jonas> ais523: no, I don't believe there is complexity from the sign of the square root. you only allow real numbers and positive square roots, and that doesn't cause any complexity.
15:45:33 <wib_jonas> the algorithm is so simple that it's taught to high school mathematics competition preppers at least
15:46:11 <ais523> Europe2048: the syntax b_jonas linked appears to have a P command that prints numbers
15:47:21 <wib_jonas> as for Babbage, are there any esoteric programming languages that claim to be based on *Leibniz's* plans instead of Babbage's? Leibniz lived much earlier so I think you could get away with much more freedom there, yet everyone refers to Babbage instead.
15:47:53 <Europe2048> ais523: No, I meant to output characters.
15:48:32 <ais523> I don't think the Analytical Engine could output characters
15:48:49 <ais523> after all, it was intended for calculating tables of numbers
15:48:53 <ais523> …and ASCII hadn't been invented yet
15:49:30 <ais523> or even Hollerith
15:50:10 <Europe2048> Anyways, what should I do with AE?
15:51:23 <ais523> you don't necessarily have to do anything with it
15:51:26 <wib_jonas> oddly enough, https://esolangs.org/wiki/Analytical_Engine_Programming_Cards seems to describe that it can output characters, near the bottom of "Attendant Cards", which would be statements executed by the human operators of the machine, so presumably the machine just instructs them to copy the table header from the card to the printout with a pen
15:52:46 <cpressey> wib_jonas: Did Leibniz have any ideas for machines other than https://en.wikipedia.org/wiki/Stepped_reckoner and the https://en.wikipedia.org/wiki/Calculus_ratiocinator ?  The former might be a tad too basic, and the latter a tad too ambitious...
15:54:18 <Europe2048> Let's talk about something else.
15:54:23 <wib_jonas> cpressey: I'm thinking of the latter. it's too ambitious, which is exactly why you can write good fan fiction about it, since it's not a specific planned machine but a goal for what the machine should do
15:55:37 <cpressey> Europe2048: what languages do you like?  Not just esolangs, but other languages also
15:55:43 <ais523> I think the reason people like the Analytical Engine is that it's very well-documented and we know pretty much exactly what Babbage was planning
15:56:56 <wib_jonas> ais523: if that's so then why is https://esolangs.org/wiki/Analytical_Engine_Programming_Cards so different from https://www.ioccc.org/years-spoiler.html#1992_buzzard.1 when both claim to be based on the Analytical Engine?
15:57:57 <wib_jonas> Buzzard's IOCCC entry claims that the Engine would be doing blindfolded arithmetic, only with more than just six variables; while the Programming Cards has usable conditional branches
15:59:00 <wib_jonas> I can understand if the IOCCC entry uses built-in C integer arithmetic just to work as an IOCCC entry, but the blindfolded part is central to that entry and is not required for it to work as an IOCCC entry
15:59:25 <ais523> it may be that not all the people have actually read the documentation
15:59:35 <wib_jonas> the entry specifically wants to show how to program blindfolded, because Babbage supposedly designed his machine blindfolded
15:59:38 <ais523> I haven't, just read reports written by other people who read it
16:00:36 <ais523> oh right, re: conditionals, I think they might still have been in development when Babbage died?
16:05:06 -!- FreeFull has joined.
16:05:38 <Europe2048> cpressey: Python & JavaScript.
16:06:04 -!- Europe2048 has set topic: Welcome to the 20th international hub of esoteric programming languages of the noncriminal sort, and unicorns! | https://esolangs.org | logs: https://logs.esolangs.org/.
16:13:03 <ais523> wib_jonas: I'm actually reading Ada Lovelace's notes, she definitely mentions conditionals existing
16:13:27 -!- Europe2048 has left.
16:13:31 -!- Europe2048 has joined.
16:13:32 <wib_jonas> hmm, that's a bit disconcerting, that means the IOCCC entry was based on a lie
16:14:12 <wib_jonas> or at least a mistake
16:14:19 <ais523> actually, that was even in a bit she translated from Babbage's notes, rather than one she came up with herself
16:14:31 <ais523> although Babbage didn't give details, just said conditionals would be required
16:15:30 <ais523> oh wow, Ada Lovelace invented single static assignment
16:15:48 <ais523> …and then it took decades for compiler writers to rediscover it :-D
16:16:42 <Europe2048> Let's talk about something else.
16:19:19 <cpressey> Europe2048: What do you want to talk about?
16:19:58 <wib_jonas> for variables or functions?
16:20:22 <ais523> wib_jonas: for variables
16:20:24 <Europe2048> Maybe implementing my esolang?
16:20:36 <Europe2048> (to cpressey)
16:23:54 <cpressey> Europe2048: Deadfish++ looks not very hard to implement (I say this as someone who's been writing language implementations for many years though).
16:24:19 <cpressey> (And also, in contrast to some languages on the wiki that are literally impossible to implement)
16:25:13 <Europe2048> But the real hardest part about implementing is the Unicode variables and strings in variables.
16:25:41 <ais523> you're using Python, aren't you? Python 3 supports Unicode very well, and can store strings in variables that are normally used to store numbers
16:25:57 <Europe2048> But I don't know much about OOP...
16:25:58 <cpressey> I was just about to say that.  It was a pain in 2.x, but much better now
16:26:29 <cpressey> "It" being Unicode
16:26:53 <ais523> you don't need OOP for this, old-fashioned imperative code will work fine
16:26:55 <Europe2048> Also, it is very hard to implement the if-else syntax.
16:27:05 <Europe2048> Because of these problems, my language is high-level.
16:27:25 -!- Thelie has joined.
16:27:36 <cpressey> If you don't have much experience writing parsing code, then the "if" syntax might seem difficult, because of the nesting
16:28:37 <cpressey> There's also some infix expressions and, well, not much indication of what the precedence rules are
16:28:44 <ais523> I am upset that efficient parser generators aren't generally easier to use (to the extent that parser combinator libraries have caught on despite having terrible worst-case performance)
16:29:30 <cpressey> I think I will need to be afk for a little bit now though.  Nice meeting you Europe2048
16:29:48 <Europe2048> Why will you afk?
16:30:24 <cpressey> afk = away from keyboard
16:30:28 <wib_jonas> ais523: dunno, the impression that I get is that people just keep making ambiguous hard to parse languages for some reason. I no longer believe the traditional narrative that old languages like Fortran had an odd grammar and ambiguities because the theory of formal languages wasn't developed yet.
16:30:50 <wib_jonas> Modern languages are the same, so the problem can't be the lack of theory of formal languages.
16:31:21 <ais523> wib_jonas: a good parser generator would be able to detect most reasonable ambiguities in a language
16:31:36 <ais523> or, to put it a better way, prove reasonable languages unambiguous, or complain if they aren't
16:31:42 <wib_jonas> people can already detect the ambiguities, and they insist on keeping the language that way
16:31:52 <wib_jonas> I don't think the problem is the lack of tools there
16:31:59 <ais523> there are languages for which ambiguity checks are uncomputable, but they don't resemble anything you'd design intentionally
16:33:27 <wib_jonas> but on the plus side, rustc now manages to parse three different syntaxes, such that not only you can link crates compiled from different syntaxes to the same runtime, but you can actually invoke macros that are written in one syntax inside a source file with another syntax. that means they can fix some of the more annoying ambiguities.
16:33:38 <ais523> I think lack of *good* tools is a problem – people don't currently use the tools because they aren't good enough, and thus don't get the ambiguity warnings
16:34:29 <ais523> wib_jonas: the Rust ambiguity that bothers me most is probably that in «x.f(a)», «f» could either be an inherent impl or a trait impl
16:34:36 <wib_jonas> I am very much hoping that at some point they'll allow Foo() instead of Foo when Foo is an argumentless constructor for a struct or enum variant, and then in yet another version they *require* the parenthesis after argumentless constructors in patterns (not in expressions), to solve that ambiguity
16:35:01 <Europe2048> OK, let's finish talking with implementation. What do you think should be added to my language?
16:35:02 <ais523> and the rules for resolving the ambiguity have some really weird consequences
16:35:28 <ais523> wib_jonas: I personally believe that Rust should have enforced case-of-first-letter for identifiers
16:36:00 <wib_jonas> ais523: why is that one a problem? in `x.f(a)`, f can also be a trait impl from multiple different traits, so that's like ordinary clash between imported identifiers. do inherent impls make this any more complicated?
16:36:01 <ais523> that would also solve that ambiguity (in addition to other annoying situations like the turbofish)
16:37:11 <ais523> wib_jonas: basically the problem is that there is no way to disambiguate to use *only* an inherent impl and not a trait impl – the default is to use the inherent, and the only disambiguator picks the trait impl
16:37:16 <wib_jonas> ais523: I'm not sure. I don't like case-of-first-letter rule, but I'm not sure if that's because it's inherently a bad idea, or only because it reminds me of Haskell and prolog
16:37:35 <ais523> this means that, if both the inherent and trait impl exist, and then the inherent impl gets deleted, there is no way to stop the trait impl being used, so your code breaks silently in cases where you really want to use the inherent impl only
16:37:49 <ais523> (unless you don't import the trait, but you might need to use it elsewhere in the code)
16:38:15 <Europe2048> OK, let's finish talking with implementation. What do you think should be added to my language?
16:38:45 <int-e> deja vu
16:38:57 <wib_jonas> ais523: if that's the problem, can't you just define a new trait, move the method changing it from inherent to trait, because of the ambiguous syntax existing code that tries to call the old inherent method will still work, but you can disambiguate by naming the trait
16:39:35 <Europe2048> Hi int-e!
16:39:46 <wib_jonas> at one point some ruster tried to explain to me why inherent methods are different from a train method from an anonymous trait, but I forgot what the reasoning was and whether it made sense
16:39:49 <ais523> wib_jonas: assuming you control both files in question, that probably works
16:41:16 <ais523> one ambiguity that isn't a problem in practice, but I find amusing, is the lexer ambiguity on input like «0.0»
16:41:32 <ais523> which could lex as either a single float, or as "the first tuple field of the integer 0"
16:42:04 <wib_jonas> yes, that comes up in python and languages like that. not quite 0.0, but for eg. 2.sin which you have to write as 2 .sin instead
16:42:27 <int-e> :t 0 . 0
16:42:28 <lambdabot> (Num (b -> c), Num (a -> b)) => a -> c
16:42:48 <ais523> wib_jonas: that actually isn't an ambiguity, it's just a consequence of using a lexer that isn't sufficiently context-aware
16:43:21 <ais523> «(2.)» sin doesn't parse, after all, so the other meaning is invalid and thus it isn't ambiguous
16:43:54 <ais523> I am increasingly convinced that using a separate lexer is wrong, and the better solution is to improve the quality of scannerless parsers
16:43:54 <wib_jonas> ais523: it can be an ambiguity if you have numeric literals like 0.5f or 0x4p-3
16:44:38 <ais523> wib_jonas: you mean on "0.f" specifically? I can't see a way to do it with the hex float
16:45:17 <wib_jonas> 0x0.A is a hex float, with A being a hex digit, but 0x0 is a number and you can try to call the .A method on it
16:45:31 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117397&oldid=117386 * Infinitehexagon * (+328)
16:45:51 <wib_jonas> or 0x0.Ap0 if you insist on the p being present
16:45:52 <ais523> wib_jonas: I thought hex floats had a mandatory "p" specifically because of that
16:46:06 <wib_jonas> 0x0.Ap0 is a hex float, 0x0 .Ap0 is a method call on 0x0
16:46:07 <ais523> but right, I forgot they could have decimal points earlier
16:46:24 <ais523> 0x0 .Ap0 isn't a method call, it's a property query
16:46:39 <wib_jonas> it's a method call in python or ruby where this problem comes up
16:46:41 <ais523> …ooh, unless you can call a hex float as a function?
16:46:47 <ais523> I think parsers allow that even if lexers don't
16:46:55 <ais523> * even if the compiler as a whole doesn't
16:47:19 <ais523> "SyntaxWarning: 'int' object is not callable; perhaps you missed a comma?" "TypeError: 'int' object is not callable"
16:47:30 <ais523> no, ipython3, I was actually trying to call an int to see what the error message would be
16:47:39 <wib_jonas> in C++ traditionally it's no problem because numeric literals are of built-in types and they don't have members so you can't subscript them. this is no longer true because of user-defined literals, but those come with their ambiguities already
16:47:47 <ais523> the SyntaxWarning suggestst that the parser does understand that calling an int isn't a sensible thing to do
16:48:10 <ais523> …curious that it's only a warning, though
16:48:14 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117398&oldid=117397 * Infinitehexagon * (+40)
16:48:52 <ais523> oh, because it might be dead code, and type errors happen at runtime not compile time in Python!
16:49:06 <Europe2048> Let's stop talking about implementing my language.
16:49:07 <ais523> so erroring at compile time would violate the spec
16:50:35 <ais523> yep, «if False: 0()» gives a SyntaxWarning but runs without issue
16:50:38 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117399&oldid=117398 * Infinitehexagon * (+38)
16:51:29 <ais523> I really don't know Python that well, partly because a) I don't like it very much and b) I know Perl very well, meaning that I rarely have an incentive to use Python for anything
16:51:36 <ais523> (other than dealing with existing code that's already written in Python)
16:52:04 <wib_jonas> wait, do you *still* know Perl very well, even the changes from the last ten years or so?
16:52:53 <ais523> wib_jonas: not as well as I used to, although I've been catching up to some extent recently
16:53:11 <ais523> part of the problem is that the static analysis tool I have hooked up to my editor isn't so great at modern Perl
16:54:17 <ais523> …also it mislead me recently, I had a function that actually did need to "return undef;" (which is normally a classic Perl mistake), I managed to silence the warning with "return (undef);" instead
16:55:26 <esolangs> [[User:Europe2048]] M https://esolangs.org/w/index.php?diff=117400&oldid=117237 * Europe2048 * (+20)
16:56:18 <wib_jonas> I don't understand, why is that misleading?
16:56:48 <ais523> wib_jonas: because linters shout at you when you do it and thus you assume your code is wrong, when actually you got it right first time
16:57:15 <ais523> I think all this stems from the usual ambiguity about what null, undef and friends actually mean
16:58:19 <ais523> when undef represents the lack of valid data, it should become () in list context; but when it represents one valid datum (that itself represents the lack of valid data), it should become (undef) in list context
16:59:13 <ais523> the former is more common, but in this case I waned the latter
16:59:15 <ais523> * wanted
16:59:26 <wib_jonas> .oO( see NONE vs None1 recently on the esowiki)
17:00:53 <wib_jonas> and you could be explicit about it and write `return scalar();` but then that might confuse readers who don't know all the rules of perl because they'll that that means `return scalar($_);`
17:01:27 <ais523> or «return scalar(())» which is 0 I think?
17:01:36 <wib_jonas> what?
17:01:40 <ais523> or, no
17:01:42 <ais523> now I'm confused
17:02:16 <ais523> is there an easier way to pass a 0-element list to «scalar» than «scalar(@{[]})»?
17:03:28 <ais523> ah right, (0,1,2) parses as a comma expression in scalar context, not a list literal, so you really do need @{[…]} to force list context
17:03:48 <wib_jonas> that question doesn't literally make sense, but for what you want, perhaps `scalar(my@k)` or, if you're golfing, `scalar(my@~)`
17:04:09 <ais523> wib_jonas: I most commonly use «scalar» to get at the length of an array
17:04:34 <wib_jonas> you can, but that's what the 0+ grenade is for
17:05:21 <ais523> if you're golfing, «scalar(@_)» (outside a function) :-)
17:05:39 <ais523> pick a variable that doesn't need to be declared
17:07:00 <ais523> (or, well, if you're golfing normally you don't turn strict mode on, so that you don't need to declare anything)
17:07:04 <wib_jonas> `perl -weuse strict; print "A=", scalar(@~);
17:07:07 <HackEso> A=0
17:07:10 <wib_jonas> `perl -weuse strict; print "A=", scalar(@k);
17:07:12 <HackEso> Global symbol "@k" requires explicit package name (did you forget to declare "my @k"?) at -e line 1. \ Execution of -e aborted due to compilation errors.
17:07:32 <wib_jonas> punctuation variables are implicitly in main:: regardless your current package, and don't need to be declared
17:08:25 <wib_jonas> the drawback is that most punctuation variables with @ sigil don't get recognized as an interpolation in a string-like literal, only with a $ sigil
17:08:37 <wib_jonas> but in your case with scalar that's not a problem
17:09:27 <ais523> I don't commonly interpret arrays into strings anyway, unless I badly need to use $" as the separator rather than $,
17:09:37 <ais523> * interpolate
17:11:02 <ais523> actually, more recently I've generally been doing the commas "by hand" – probably influence from all the Rust programming I've been doing
17:12:44 <wib_jonas> perl's syntax rules are arcane and I may have misrepresented them above by the way
17:16:17 <Europe2048> I'm here!
17:16:37 <ais523> BEGIN{} is possibly one of the hardest-to-implement constructs in any practically used language, which is impressive given how innocent it initially looks (and given that there's an END{} which is apparently symmetrical but actually not)
17:17:41 -!- wib_jonas has quit (Quit: Client closed).
17:20:35 <ais523> Europe2048: really we should have a guide on how to implement esolangs, but I'm not sure whether there's anyone who'd be in an appropriate place to write it
17:20:46 <ais523> it is normally easier than implementing non-esoteric programming languages
17:21:22 <Europe2048> Yeah, non-esolangs are much more complex than esolangs.
17:21:38 <Europe2048> Take, for example, Python and LOLCODE.
17:21:56 <ais523> LOLCODE is basically a simple practical language with swapped-out keywords
17:37:40 <Europe2048> Anyone?
17:54:28 -!- chiselfuse has quit (Remote host closed the connection).
17:54:43 -!- chiselfuse has joined.
18:18:22 <Europe2048> Hi chiselfuse!
19:02:43 -!- cpressey88 has joined.
19:06:23 -!- cpressey has quit (Ping timeout: 245 seconds).
19:07:00 <b_jonas> yeah, I don't think there's much to say about how to implement esolangs in general that doesn't apply to implementing any programming language. if the esolang is hard to implement with traditional techniques, that's because it has some unique twist that is specific to that one esolang and so you the writer of that esolang-implementation book won't predict it.
19:09:46 <Europe2048> Hi b_jonas!
19:10:53 -!- cpressey88 has changed nick to cpressey.
19:11:11 -!- Thelie has quit (Quit: Leaving.).
19:15:39 <cpressey> ais523: I differ from your position on seperate lexing.  A seperate lexer is exactly what makes "0.0" unambiguously a float.  The idea of "oh how can I can disambiguate this from someone trying to access the field "0" of the integer "0" doesn't even come up.  I consider this a good thing.
19:20:03 <b_jonas> cpressey: yeah, but in modern C++, the lexer has a bunch of exceptions, and at least one exception to an exception, in how to lex certain digraphs. they aren't about that particular case, but still
19:20:51 <b_jonas> (and ruby's lexer and parser handily beats that in its odd rules and exceptions and exceptions to exceptions and whitespace-dependence)
19:21:01 <zzo38> I also think that since there is no field "0" of integer "0", that it makes sense. However, in C the /* for beginning of comments is like two tokens that would be able to go together, so that is not as sense.
19:21:21 <b_jonas> (though I think for ruby it's only at parsing stage, not the lexing stage)
19:24:24 <Europe2048> What are you talking about?
19:24:34 <Europe2048> Also, hello!
19:28:53 <b_jonas> C comments remind me. many languages that have a nontrivial lexer or parser have their parsing rules defined such that they're easy to parse when you read the input string forward, but may be hard if you read it backwards. C comments are like this: if you have a long file with lots of instances of `/*/` and a `/**/` at the end but no other instances of `*/` then, if you read backwards, you won't know
19:28:59 <b_jonas> which parts of the file are comments and which aren't, each `/*/` flips them back and forth, you only find out which ones were comments when you reach the beginning of the file and find out the parity of the `/*/` markers.
19:30:12 <b_jonas> (this gets worse with modern C++ R-strings)
19:30:29 <b_jonas> so my question is, what languages do you know of that are easier to parse when you read the string backwards?
19:35:07 -!- Europe2048 has quit (Quit: Client closed).
19:38:03 -!- cpressey has quit (Ping timeout: 245 seconds).
19:41:42 -!- cpressey has joined.
19:44:33 -!- Europe2048 has joined.
19:44:49 <Europe2048> Hi everyone!
19:48:38 -!- arseniiv has quit (Quit: gone too far).
19:52:01 <zzo38> I don't know of any that are easier backward, at least, that I can think of right now. Do you know?
19:56:18 <b_jonas> I have one candidate that may be easier
19:56:30 <zzo38> (Although, I think there are some where you might have to search backward to find an ending delimiter of something)
19:58:12 <b_jonas> the lexer of lojban the constructed language (not programming) is easier backwards, on two counts
19:58:21 <ais523> cpressey: I don't think that argument changes my mind – the separate lexer is in effect making an arbitrary decision, and even though that decision is correct this time, it could easily be incorrect in other cases
19:58:36 <ais523> having a combined parser and lexer means that you become aware that the case exists, and can choose how to resolve it
19:59:14 <ais523> b_jonas: I think yacc's grammar is LR(1) backwards but LR(2) forwards
19:59:45 -!- Europe2048 has quit (Quit: Client closed).
20:00:40 <ais523> (assuming a separate lexer, and that the lexer doesn't have a special case for "identifier followed by colon" – that special case is a hack used to get yacc to be able to parse itself)
20:01:36 <b_jonas> the lexer rules are defined such that you can find the boundaries of words in spoken lojban, where the speaker doesn't usually pause between every pair of words, from the sequence of phonemes, assuming you can also distinguish stressed vowels and hear the rare mandatory pauses
20:04:43 -!- cpressey has quit (Quit: Client closed).
20:05:11 <b_jonas> there are three common kinds of tokens (words) in lojban: grammar words which are short, substance words, and names. names end with a consonant followed by a mandatory pause, so it's easy to find their end, and you search backwards for some substrings to find the start. in substance words the syllable before the last is stressed but other syllables aren't stressed, so it's easy to find the end of the
20:05:17 <b_jonas> word. each substance word has two adjacent consonants as either its first or second consonant cluster, and grammar words are always single syllables with no adjacent consonants. so once you cut at pauses and after syllables following a stressed syllable, you have chunks that are made of a number of grammar words followed by a substance word, and from the first consonant cluster you can *almost* tell
20:05:23 <b_jonas> where the substance word starts, but that can leave two possibilities for the boundary.
20:06:35 <b_jonas> there is a nice but kind of hard to understand set of lexer rules that always disambiguate between those two possibilities, and it's a regular language too so in theory it's easy either forwards or backwards, but I find that in practice it's easier to understand backwards.
20:09:19 -!- Franciman has joined.
20:09:35 <b_jonas> you need in theory unbounded lookahead forwards for the lexing, though of course in practice very long words will be hard to understand anyway so they won't occur often regardless of this disambiguation problem
20:10:01 <b_jonas> ais523: that's a nice example
20:10:15 -!- Franciman has left.
20:11:42 <b_jonas> fizzie: in the HTML render of the channel logs, for a TOPIC message, the render puts a sentence ending period right after the topic, which is confusing because the topic often ends in an URL. I wonder if we should do something about that.
20:12:03 <b_jonas> like put a space before the period for example
20:12:21 <b_jonas> uh, full stop. that's what people call a sentence-ending period.
20:15:09 <b_jonas> ais523: I guess if you're used to LL and LR parsers then you could even say that your basic RPN calculator language is easier to parse backwards, which is ironic because RPN syntax was designed because it's easy to interpret when read forwards
20:21:20 -!- cpressey has joined.
20:25:28 -!- Europe2048 has joined.
20:25:35 -!- Europe2048 has left.
20:25:38 -!- Europe2048 has joined.
20:25:44 <Europe2048> Hi!
20:25:58 <b_jonas> fungot: when you return, will you logread and answer all our questions from when you were away?
20:26:28 <Europe2048> What are you talking about>
20:27:42 <b_jonas> Europe2048: this channel is logged, so fungot will in theory be able to read what people had said earlier
20:28:32 <Europe2048> OK!
20:30:13 <cpressey> ais523: Well, I'm not trying to change anyone's mind.  When I have a hand-coded parser I almost always use a seperate lexer. (I once had an esolang where the lexer's rules could be changed dynamically, btw.)  But, when I write in Haskell I use parsec, and having it use a seperate lexer is more hassle than it's worth.  But I usually miss it, to
20:30:13 <cpressey> some degree, as it forces me to think about whitespace and such in all the places where I normally wouldn't.
20:34:38 <b_jonas> I have recently (in the last three years) written two different simple parsers for my dayjob, both in python, and they both have a separate lexer. One is just a tab-separated csv parser, where fields can be quoted with double-quotes in which case crs and lfs and tabs in the quoted part aren't special, and doubled double quotes represent a single double quote. so the lexer finds double-quoted fields,
20:34:44 <b_jonas> unquoted fields, unquoted tabs, unquoted newlines. then the parser acts turns this to a table (with possibly header lines), or a sequence of such tables separated by blank lines.
20:36:42 <cpressey> One of the 'orrible things about parsing in the stone age of FORTRAN and BASIC was that space was at such a premium that Every Byte was Sacred, so puttingtokenstogetherwithnointerveningwhitespaceorsymbols was a thing.  That is something that we can luckily afford to avoid now.
20:37:27 <b_jonas> The other parses a custom line-oriented format, one for which I made the other end that writes it too. I designed quoted strings sensibly for this so I don't have to deal with the mess of quoted or unquoted newlines or separators. So the source file is line-oriented, newlines always separate lines, \x1F always ends a string, and you quote a control character as \x10 followed by the control character
20:37:33 <b_jonas> xored with \x20, plus there's a special abbreviation to quote crlfs as \x11 because they're common in the strings that I want to quote.
20:40:14 <b_jonas> The lexer still has to tokenize the line to various tokens, which it just does left to right with a simple regex. And then the parser takes the first word of the line, which tells what kind of line it is, and handles it accordingly to put most of the data in some custom objects (and ignore the rest), and calls some callback functions so in theory I can parse files without keeping the whole structure in
20:40:20 <b_jonas> memory (this is currently unnecessary, I could easily have the whole structure in memory without problems, but it doesn't cost much to plan ahead).
20:43:42 -!- cpressey96 has joined.
20:46:48 -!- cpressey has quit (Ping timeout: 245 seconds).
20:47:05 <ais523> cpressey96: some early BASIC interpreters stored the parse tree rather than the text, I think
20:47:11 <ais523> and pretty-printed it when you asked for a program listing
20:47:35 <ais523> presumably the parse tree either a) was smaller or b) needed to be stored anyway
20:48:28 -!- cpressey96 has quit (Ping timeout: 245 seconds).
20:49:22 -!- cpressey has joined.
20:54:11 -!- cpressey has quit (Client Quit).
20:56:13 <b_jonas> ais523: really? I believe they stored a *lexed* string, encoding keywords in a consistent easy to parse way, and so printed the listing with canonical form of tokens and whitespace. the tokens are encoded as one or two bytes for compactness. still other interpreters already *input* keywords differently from ordinary identifiers, so you can't type PRINT or COS as its sequence of letters, you have to use
20:56:19 <b_jonas> a possibly shifted key combination for them. I think this was also used for algol besides basic.
20:57:52 <esolangs> [[Special:Log/newusers]] create * Thatgaypigeon * New user account
21:00:58 -!- cpressey has joined.
21:01:52 <b_jonas> my Sharp EL-5120 calculator is of the latter kind. all keywords are stored as just one byte, even though they can take up up to six character cells on screen. ABS looks like the letters A B S followed by a space, but if you enter them that way they won't mean the ABS function.
21:02:30 <b_jonas> representing keywords as one byte makes sense of course because the hardware is limited: slow CPU and just 20 kilobytes of RAM
21:06:58 * cpressey is more than passingly familiar with the [de]tokenization of Commodore BASIC 2.0 programs
21:07:12 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117401&oldid=117371 * Thatgaypigeon * (+314)
21:08:01 <b_jonas> cpressey: what machine is that basic used on?
21:08:01 <esolangs> [[User:Thatgaypigeon]] N https://esolangs.org/w/index.php?oldid=117402 * Thatgaypigeon * (+29) Created page with "''Nothing to see here... :p''"
21:08:08 * cpressey wonders if that dynamically-change-the-lexing-rules gimmick would be worth resurrecting into a new esolang
21:09:18 <ais523> b_jonas: oh, storing it lexed rather than parsed is possible – it's hard to tell as a user
21:09:24 <cpressey> b_jonas: At least the VIC-20 and the Commodore 64, possibly other Commodore computers.
21:09:52 <b_jonas> cpressey: I assume you don't count C where the parser needs to know if an identifier is a type for making the parse tree; or prolog where you can declare any ordinary identifier to be parsed as an infix operator from now
21:11:07 <ais523> hmm, I thought the most vexing parse was C++-specific; is there a C version of it?
21:11:43 <cpressey> b_jonas: I may be confused - surely the *lexer* doesn't need to know the type of anything in C?
21:13:04 <ais523> cpressey: I think it's sort-of backwards, the parser needs to know what's been declared as a type which means that the lexer has to work it out so that it can tell the parser
21:13:18 <cpressey> Being able to define infix operators is of course a handy thing, but that too is mostly in the parser; to the lexer the identifier is still an identifier
21:13:46 <ais523> C-INTERCAL has lexing rules for pretty much any possible infix operator, including ones that don't exist, in case it ends up getting defined at runtime
21:14:06 <ais523> I have no idea if this is the usual way to handle runtime-defined syntax, but it seemed esoteric enough
21:14:53 <b_jonas> cpressey: the lexer doesn't need to know to separate words, but there has to be a layer above the lexer but below the LR-parser or similar that changes identifier tokens to one of two different tokens, as in type name or normal identifier (more than two for C++).
21:15:46 <b_jonas> and prolog is similar, you can tokenize the input without such tricks, but then between the tokenizer and the parser you have to tell which identifiers are infix operators (and their precedence and fixity)
21:16:32 <cpressey> You can regard this logic as "between the lexer and the parser" if you like; I see it as part of the parser; at any rate there is nothing requiring you to see it as part of the lexer
21:16:57 <ais523> in OCaml, the precedence and fixity of a user-defined operator is based on its first character
21:17:19 <ais523> which is a clever fix to this sort of problem
21:17:46 <b_jonas> I think FORTH has a different trick: it has identifiers that are executed right after they're lexed, so you can define a token so that the part of the source code after that has a custom lexical syntax instead of using the normal lexer, and this is how the " comment marker is implemented, it just reads characters and ignores them until it finds a terminating "
21:17:56 <b_jonas> nut I don't use FORTH much so I may be wrong here
21:17:59 <ais523> (and also makes programs easier to read, you can see an operator you don't recognise whose name starts with «>» and still be able to mentally parse it because you know how the «>» operator parses)
21:19:22 <cpressey> For dynamically changing the lexing rules in an esolang, I was thinking that (unlike in Bear Food, my old esolang) this facility should be used in some non-gratuitous way.  i.e. you have to change the lexing rules, in order to... perform conditionals or something.
21:19:30 <fizzie> b_jonas: I don't know if it could just omit the full stop. I mean, it's maybe a little inconsistent with the other lines, but the colon kind of serves the purpose of delimiting the fixed part, and it's not that unreasonable to expect everything after the colon is just literal.
21:19:34 <fizzie> Alternatively, I could format it the same way quit messages are formatted. "X has quit (foo)." "X has set the topic (bar)."
21:20:29 <b_jonas> also J has the colon conjunction which, if its right argument is the number 0 (for example like 0 :0), will read lines from the same input as the source code so they aren't parsed like normal source code lines, and while usually you use this in a static way like bash here documents, you can invoke it at runtime conditionally or in a loop if you want
21:20:53 <ais523> cpressey: did you see Advance The Wheel!
21:20:58 <b_jonas> fizzie: I'm fine with omitting the full stop
21:20:59 <ais523> it's not quite the same, but you reminded me of it
21:21:20 <ais523> (it's a turning tarpit, but conditionals affect the wheel rather than the instruction pointer, meaning that the same commands run but are interpreted differently)
21:21:26 <b_jonas> cpressey: also I think perl6 was planned to have a crazy dynamic lexer and parser where you can define syntax at runtime in ways that make me (and probably ais) shudder
21:21:35 <b_jonas> but I don't know how much of that ever got implemented
21:21:57 <Europe2048> I'll be back tomorrow, bye!
21:22:00 -!- Europe2048 has left.
21:22:00 <fizzie> I am not sure how I'm going to remember to make that happen the next time I do some changes. I was also supposed to update the HTTP server library to see if it would let me re-enable stalker mode without it hanging up.
21:22:12 <ais523> b_jonas: Perl 6 regex is basically a full-on context-free language parser, but I think it's implemented by backtracking
21:22:32 <ais523> but it wouldn't surprise me if the interpreter was supposed to parse itself with regex that could be changed at runtime
21:23:46 <cpressey> I'll have to look at Advance The Wheel but for now I've got to call it a night
21:24:00 <b_jonas> fizzie: parenthesis around the topic don't help, it joins the URL just as much as the period does
21:35:54 -!- __monty__ has quit (Quit: leaving).
21:36:05 <b_jonas> cpressey: oh, and TeX has runtime definable lexer, but only in as much as it has a table of the 256 bytes and you can assign each one to one of, I think, 17 possible built-in categories
21:36:25 <b_jonas> you can't define new lexing rules or anything, just say which character is which kind
21:37:49 <b_jonas> and the categories are actually changed during runtime in a few cases
21:39:35 <b_jonas> I presume you're not interested in cases where the lexer just has a small fixed number of modes with similar but slightly different lexing modes, and you can switch between those modes dynamically, like bash in which (shopt -s extglob) changes how round parenthesis are lexed in some cases, but only starting from the next line
21:40:58 <b_jonas> (and this is dynamic because you can run shopt programmatically so the lexer can't tell from just lexing when it will be called)
21:45:34 <Noisytoot> fizzie: How quit messages are formatted varies by client. In the protocol, they're formatted as ":X!user@host QUIT :foo"
21:46:29 <fizzie> Yes, but I meant on the logs website.
21:48:29 <b_jonas> Noisytoot: what fizzie says, I specifically asked about the html renders on his log wibsite
21:56:33 -!- Melvar has quit (Quit: WeeChat 4.0.4).
22:04:38 -!- Melvar has joined.
22:12:20 <zzo38> In PostScript you can't change the lexer but you can read from currentfile (which is the file containing the program), so that can make syntax highlighting difficult sometimes.
22:13:19 <zzo38> Is there regular expression library that you can use units other than bytes and Unicode?
22:14:07 <b_jonas> oh right, TeX can also read lines from its source file, can't it?
22:15:10 <zzo38> I don't think so (other than by opening it as a separate file), although you can change the catcodes in TeX
22:16:46 <b_jonas> zzo38: I think the C++ standard's regex library can use user-defined character types. there are serious restrictions on what such a type can be like, but I believe it can at least be bigger than what holds a unicode character.
22:17:31 <zzo38> How much bigger?
22:18:59 <b_jonas> zzo38: any fixed size, it's a C++ template. I think it has to be trivially copiable and stuff like that so it can't own memory on heap, but I'm not sure about the details, you'll have to ask #C++ to be sure
22:20:14 <b_jonas> zzo38: https://en.cppreference.com/w/cpp/regex/regex_traits describes the details, but I never looked at what that does because I don't think I'll ever define custom character types
22:21:01 <zzo38> OK
22:24:14 <b_jonas> also I think perl regexen supports UTF8-E or something similar, I don't know if you'd count that as unicode
22:26:48 <b_jonas> hmm, I wonder if that's true
22:27:30 <zzo38> Well, even if it is true, it means it is limited to the size and requires converting to UTF-8 if it is not already, anyways
22:27:42 <Melvar> regex-applicative (a Haskell library) has the symbol type as a type parameter. You can use an arbitrary predicate to build a one-symbol matcher so there’s no real constraint on what can be used for the symbol type.
22:28:03 -!- cpressey has quit (Ping timeout: 245 seconds).
22:30:42 <zzo38> Due to the document about a finite automaton before, I had considered you could also use an arbitrary monoid, although actually implementing such a thing may be difficult in the general case other than a free monoid.
22:32:00 <b_jonas> zzo38: UTF-8 and UTF8-E are self-synchronizing so the regex implementation can mostly just use a byte string matcher, except when unicode character properties or unicode case sensitivity is used.
22:33:54 <zzo38> Yes, I know UTF-8 has that property that you can easily use that, although you might want to define your own properties and macros, and like I said you might not want UTF-8 anyways since the data might be in a different format
22:36:11 <b_jonas> sure, but I can't really imagine how supporting arbitrary formats could work, so byte-based and utf16-based is what you have, plus C++'s crazy library
22:37:34 <b_jonas> oh, and ucs32-based, I think python can match ucs32 though probably only limited to the 21 bits of modern unicode
22:39:11 <zzo38> Most likely the units would be some integer, e.g. 8-bits, 16-bits, 32-bits, or 64-bits; you probably won't need more than that, although external procedures for matching might sometimes be needed (which is possible with PCRE, anyways), and some kind of syntax to be able to work such a thing (perhaps including macros, e.g. if it is UTF-8) might be of use
22:41:26 <b_jonas> right. existing libraries can already do 8-bit and 16-bit, with basically character sets except that the few dozen characters special for regex syntax will be interpreted as ascii. the C++ regex library can do 32-bit or 64-bit.
22:42:00 <b_jonas> and any byte-based matcher can do 31 bits or 63 bits if you encode the string as UTF8-G or UTF8-E respectively
22:43:29 <b_jonas> if you want something fancier then you'll probably have to study the research paper and implementation of TRE https://laurikari.net/tre/ and then write your own regex matcher
22:44:54 <zzo38> OK, then
22:46:12 <b_jonas> although there might be something for the legacy japanese encodings, you'll have to ask the ruby folks if they have a regex matcher for that
23:03:46 -!- Koen has quit (Quit: Leaving...).
23:20:39 -!- Sgeo has joined.
23:24:13 -!- FreeFull has quit.
23:25:36 -!- user3456 has quit (Ping timeout: 260 seconds).
2023-10-04
00:47:16 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
00:48:29 -!- Lord_of_Life has joined.
00:59:13 -!- user3456 has joined.
01:42:11 -!- ais523 has quit (Quit: quit).
03:28:23 -!- Sgeo has quit (Read error: Connection reset by peer).
03:29:51 -!- Sgeo has joined.
03:42:38 <zzo38> I had written some code for working with TRON-16 character codes in X window system, although it will not work without suitable fonts. (It also includes a function conversion TRON-8 to TRON-16.) (Actually, it uses the XChar2b structure and works like the other 16-bit text functions in Xlib except that if byte1 is 0xFE then it will automatically switch the font rather than treating it as a visible character code.)
03:43:23 <zzo38> The other thing which should then be added, other than output, is the support for input too, but that is not implemented yet.
04:04:57 -!- chiselfuse has quit (Read error: Connection reset by peer).
04:05:13 -!- chiselfuse has joined.
04:24:45 -!- SGautam has joined.
04:58:41 <int-e> `? password
04:58:44 <HackEso> The password of the month is suboptimal
05:03:54 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117403&oldid=117395 * Lilchiky * (+596) upgwaide!
05:04:25 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117404&oldid=117403 * Lilchiky * (-37) /* Text to Bawkbawk */ when did that get here????
05:10:10 <int-e> `learn The password of the month is prematurely spooky
05:10:14 <HackEso> Relearned 'password': The password of the month is prematurely spooky
05:14:25 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117405&oldid=117404 * Lilchiky * (+1160) /* Examples */ a new one!
05:16:12 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117406&oldid=117405 * Lilchiky * (+88) /* 99 bottles of beer */ ummm
05:20:12 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117407&oldid=117406 * Lilchiky * (-91) /* 99 bottles of beer */ nothing
05:26:00 <esolangs> [[Piet++]] M https://esolangs.org/w/index.php?diff=117408&oldid=103945 * Lilchiky * (+7) formatting
05:27:00 <esolangs> [[Piet++]] M https://esolangs.org/w/index.php?diff=117409&oldid=117408 * Lilchiky * (-2) I did it wrong, sorry
05:37:09 <esolangs> [[BIRL]] M https://esolangs.org/w/index.php?diff=117410&oldid=72663 * PythonshellDebugwindow * (+9) Stub
05:38:36 <esolangs> [[BIRL]] M https://esolangs.org/w/index.php?diff=117411&oldid=117410 * PythonshellDebugwindow * (+49) Categories
05:42:01 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117412&oldid=117407 * Lilchiky * (+132) /* Chickens */ ooh yes, upgwaide
05:43:50 <esolangs> [[Template:Strike]] N https://esolangs.org/w/index.php?oldid=117413 * Lilchiky * (+24) making life easier
05:44:31 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117414&oldid=117412 * Lilchiky * (-6) /* Chickens */ gotta look cool
05:48:35 <esolangs> [[Big Man Computer]] M https://esolangs.org/w/index.php?diff=117415&oldid=115691 * Lilchiky * (+10) /* adding stub */
05:56:26 -!- Koen has joined.
06:07:11 <esolangs> [[Template:Link]] N https://esolangs.org/w/index.php?oldid=117416 * Lilchiky * (+239) shortcut
06:07:46 <esolangs> [[Template:Link]] M https://esolangs.org/w/index.php?diff=117417&oldid=117416 * Lilchiky * (-9)
06:08:04 <esolangs> [[Template:Link]] M https://esolangs.org/w/index.php?diff=117418&oldid=117417 * Lilchiky * (+7)
06:08:41 <esolangs> [[Template:Link]] M https://esolangs.org/w/index.php?diff=117419&oldid=117418 * Lilchiky * (-8)
06:09:57 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117420&oldid=117414 * Lilchiky * (+6) /* Commands */ shortcut
06:45:23 -!- Europe2048 has joined.
06:45:41 <Europe2048> Hi everyone!
07:14:12 -!- SGautam has quit (Quit: Connection closed for inactivity).
07:41:48 <laerling> Morning
07:53:17 <b_jonas> I traditionally obfuscate my email address by duplicating its characters. This used to work because everyone knew that hhuu isn't a real top-level domain, since there were only like twenty top-level domain names that aren't two letters long and people knew the list. But now there are a thousand top level domain names, so someone might think that hhuu is a real top-level domain name.
07:53:44 <int-e> huh
07:54:24 <b_jonas> although the doubled @ sign might still help. I'll have to test if that's valid syntax, and whether the doubled dot in the hostname is accepted in place of a single dot
07:54:37 <b_jonas> (I think the double dot is valid; the double @ sign hopefully isn't)
07:55:50 <b_jonas> drat, stupid high-level email client, it complains "please enter at least one recipient"
07:59:07 <laerling> b_jonas: Any particular reason against the classic (at)/[.] obfuscation? Or just preference?
07:59:29 <int-e> lack of obscurity
08:00:35 <b_jonas> what int-e says, every email harvester already replaces that
08:02:36 <b_jonas> this is, of course, mostly theoretical because I treat my email address as public enough that every spammer already has it on their list
08:02:58 <laerling> Do you make use of those + extensions?
08:03:26 <b_jonas> occasionally
08:06:46 -!- Sgeo has quit (Read error: Connection reset by peer).
08:15:25 -!- Europe2048 has quit (Quit: Client closed).
08:23:58 -!- Koen has quit (Remote host closed the connection).
08:43:23 -!- cpressey has joined.
08:53:21 -!- Koen has joined.
09:10:23 <esolangs> [[Template:Style]] N https://esolangs.org/w/index.php?oldid=117421 * Lilchiky * (+459) Created page with "<includeonly><span style="{{#if: {{{color|}}} | color:{{{color}}} !important;}}{{#if: {{{size|}}} | font-size:{{{size}}}px !important;}}{{#if: {{{font|}}} | font-family:{{{font}}} !important;}}">{{{text}}}</span></includeonly><noinclude>Shortcut for text styling.
09:25:23 -!- cpressey30 has joined.
09:28:28 -!- cpressey has quit (Ping timeout: 245 seconds).
09:47:46 -!- cpressey30 has changed nick to cpressey.
09:51:59 <esolangs> [[Binary lambda calculus]] M https://esolangs.org/w/index.php?diff=117422&oldid=108937 * Pro465 * (+44) add category
09:54:50 <esolangs> [[Category talk:Programs]] https://esolangs.org/w/index.php?diff=117423&oldid=115267 * Pro465 * (+86) /* I don't know what this is for */ agree with op
09:55:17 -!- __monty__ has joined.
09:59:08 <esolangs> [[Category talk:Themed]] N https://esolangs.org/w/index.php?oldid=117424 * Pro465 * (+146) Created page with "== suggestion to remove this == in favor of [[Category:Thematic]] --~~~~"
09:59:29 <esolangs> [[Category talk:Themed]] M https://esolangs.org/w/index.php?diff=117425&oldid=117424 * Pro465 * (+1) /* suggestion to remove this */
10:08:55 -!- cpressey89 has joined.
10:09:18 -!- cpressey has quit (Ping timeout: 245 seconds).
10:12:34 -!- cpressey89 has changed nick to cpressey.
10:25:13 <cpressey> <b_jonas> I presume you're not interested in cases where the lexer just has a small fixed number of modes with similar but slightly different lexing modes <------ You presume right. The more powerful the dynamic-lexer-reprogramming is, the better.
10:26:20 <cpressey> My recollection of Bear Food is that you could register a new arbitrary regexp for any of the built-in token classes.  Which would be a good start at least.
10:26:28 <cpressey> It was otherwise a Forth-like language.
10:27:25 -!- Thelie has joined.
10:31:49 <esolangs> [[Template:Style]] https://esolangs.org/w/index.php?diff=117426&oldid=117421 * Lilchiky * (+585) Expanding on this
10:38:04 <esolangs> [[Template:Style]] https://esolangs.org/w/index.php?diff=117427&oldid=117426 * Lilchiky * (+68) Expanding on this
10:58:59 -!- Europe2048 has joined.
10:59:05 <Europe2048> Hi everybody!
10:59:49 <APic> Heya ☺
11:12:42 <Europe2048> I'm User:Europe2048, and you?
11:20:43 <esolangs> [[Template:Style]] M https://esolangs.org/w/index.php?diff=117428&oldid=117427 * Lilchiky * (-22) /* Boxes */
11:21:06 <esolangs> [[Template:Style]] M https://esolangs.org/w/index.php?diff=117429&oldid=117428 * Lilchiky * (+1) /* Boxes */
11:36:16 -!- Europe2048 has quit (Quit: Client closed).
11:39:16 -!- wib_jonas has joined.
11:48:22 -!- Koen has quit (Remote host closed the connection).
12:02:46 -!- Koen has joined.
12:03:35 -!- arseniiv has joined.
12:23:05 -!- Thelie has quit (Remote host closed the connection).
12:42:00 -!- Europe2048 has joined.
12:42:15 <Europe2048> Hi everyone!
12:43:22 <esolangs> [[Tetrastack]] https://esolangs.org/w/index.php?diff=117430&oldid=116046 * GUAqwq * (+29)
12:45:07 <esolangs> [[Tetrastack]] https://esolangs.org/w/index.php?diff=117431&oldid=117430 * GUAqwq * (-1)
12:46:02 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117432&oldid=117366 * GUAqwq * (+58)
12:46:18 <esolangs> [[Transet]] https://esolangs.org/w/index.php?diff=117433&oldid=117432 * GUAqwq * (-1)
12:50:19 <Europe2048> No human's online right now.
12:55:33 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117434&oldid=117304 * Lilchiky * (+29)
12:55:46 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117435&oldid=117434 * Lilchiky * (+0)
12:57:00 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117436&oldid=117435 * Lilchiky * (-16)
12:58:43 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117437&oldid=117436 * Lilchiky * (+50) this gotta work
12:59:53 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117438&oldid=117437 * Lilchiky * (-63) no diebeto, loll back do gidgen
13:05:33 <int-e> Hmm does "the" tar file format have any silly file size restrictions?
13:06:14 <wib_jonas> int-e: I think that depends on which of the handful of tar format dialects you're talking about
13:06:31 <wib_jonas> remember, tar is an ancient format
13:06:33 <Europe2048> Hi everyone!
13:06:37 <Europe2048> How are you?
13:06:44 <int-e> (4GB would be the relevant file size, but yeah I put "the" into quotes because I know that there are several versions)
13:06:44 <Europe2048> What are you talking about?
13:07:34 <wib_jonas> int-: in particular, https://www.gnu.org/software/tar/manual/html_node/Formats.html#Formats note that it says the v7 format is limited to file sizes less than 8 GB
13:07:38 <int-e> sometimes we just exchange obscure details of software and hardware.
13:08:41 <wib_jonas> int-: note that there's also a table for the limitations, including on file sizes and file name lengths
13:09:27 <int-e> wib_jonas: Ah, thanks for that link. (I probably should've found it myself. Probably would have, eventually...)
13:09:28 <wib_jonas> I think the practical answer is that there's no silly limitation unless you're using ancient software
13:10:48 <wib_jonas> also it seems that freebsd tar can read all the tar formats including the gnu ones
13:11:18 <wib_jonas> and openbsd has the same tar as freebsd and also can
13:12:44 <Europe2048> I don't think .tar is an esolang.
13:13:54 <wib_jonas> I don't see any specific claim for 7zip, so test if you want to make sure, but I expect it can also expect the newer tar formats, since even the newer tar formats are pretty old now
13:14:03 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117439&oldid=117420 * Lilchiky * (+49) /* Commands */ new update!!111!!!
13:14:20 <wib_jonas> (I mean it can probably extract large files or long filenames from tar; it might not be able to extract xattrs.)
13:15:22 <wib_jonas> I should look into these BSD tars, it seems like they might be better than gnu tar, I should check if there's a linux port
13:16:25 <wib_jonas> nah, it's probably irrelevant and not worth my time
13:19:38 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117440&oldid=117439 * Lilchiky * (+291) /* Commands */ an even better upgrade!!!!!!
13:22:44 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117441&oldid=117440 * Lilchiky * (+83) /* Memory */
13:25:33 <int-e> Oh, wrong format... the relevant thing is actually a zip file. Which does have a 32 bit limit, though there's a 64 bit variant... but that is embarrassingly recent (2017).
13:25:49 -!- Europe2048 has quit (Quit: Client closed).
13:26:34 <int-e> (I ran into `gog` packaging a 15GB file in four parts, then concatenating them, causing me to run out of disk space... this seems to be why. SIGH.)
13:26:41 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117442&oldid=117441 * Lilchiky * (+18) /* 99 bottles of beer */ fixing
13:26:50 <wib_jonas> int-e: ah, zip.
13:27:28 -!- Europe2048 has joined.
13:27:39 <Europe2048> Hi everyone!
13:27:53 <int-e> wib_jonas: `tar` is involved too... they have a shell script that is followed by a `tar.gz` file containing the installer executable, and then finally the actual game package as a zip file.
13:28:39 <cpressey> Hi Europe2048.  I noticed something about Deadfish++
13:28:51 <Europe2048> What is it?
13:29:14 <int-e> So the `zip` file support comes from the installer and that means 6 years may not be enough time for it to support the zip64 format yet.
13:29:33 * int-e sad
13:29:59 <cpressey> "Unlike Deadfish, memory pointers can be above 255 or below 0."  -- this is a bit difficult to understand, because (a) Deadfish doesn't have "memory pointers" as such, and (b) numbers in Deadfish can be above 255.
13:30:40 <Europe2048> I meant here that memory pointers can also be 256 or below 0.
13:30:46 <Europe2048> Let me fix this.
13:30:56 <wib_jonas> https://7-zip.org/history.txt says that 7zip started to support zip64 in year 2004
13:31:52 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=117443&oldid=117358 * Europe2048 * (-5) Made "Unlike Deadfish..." more understandable.
13:32:11 <Europe2048> See? I fixed it!
13:32:23 <wib_jonas> with typical software that wouldn't count as embarrassingly recent, but archivers like this, and zip especially, are supposed to be much more stable in formats than normal software
13:32:52 <wib_jonas> 2004 is not bad though, I think I still only had a 2 gigabyte sized hard disk back then
13:36:09 <int-e> AH.
13:38:02 <int-e> wib_jonas: Sorry, that was another failure to comprehend information on my part. Wikipedia says "Retrieved" and then a date in 2017 for the ZIP specification, and it was probably a later version anyway.
13:38:06 <cpressey> Aww.  The fact that you can't, for a completely arbitrary reason, make the number 256 in Deadfish, is one of its biggest charms, IMO.  To make a Deadfish derivative, and leave that out, is... awww.
13:38:09 <wib_jonas> admittedly I was also in a university that had servers serving many students at once and those had much bigger hard disks, but even so you'd rarely meet individual files larger than 2G
13:39:35 <cpressey> In other news, I'm implementing, uh, a language, in, uhhhh... another language
13:39:36 -!- Koen has quit (Quit: Leaving...).
13:40:05 <wib_jonas> cpressey: hehe, that's like trying to send data unescaped on IRC, where exactly three of the 256 bytes is banned
13:41:03 <wib_jonas> of course we also have a *systematic* way to make some numbers impossible to use, even as intermediate results in arithmetic
13:41:19 <wib_jonas> (it's https://esolangs.org/wiki/Forte )
13:41:22 <int-e> wib_jonas: So it's actually from 2001. That's far less embarrassing.
13:41:24 <int-e> phew
13:42:09 <int-e> But of course that still doesn't guarantee that third party libraries support it.
13:42:12 <Europe2048> "Aww.  The fact that you can't, for a completely arbitrary reason, make the number 256 in Deadfish, is one of its biggest charms, IMO.  To make a Deadfish derivative, and leave that out, is... awww." Thanks, I guess.
13:42:15 <int-e> Oh well.
13:42:36 <wib_jonas> int-e: yeah, DVD images which are larger than 4 gigabyte existed at that time
13:43:27 <fizzie> According to https://ourworldindata.org/grapher/historical-cost-of-computer-memory-and-storage when "normalized" by price a 2 gigabyte hard disk in 2004 "corresponds" to a 85-gigabyte hard disk in 2022, meaning it would have been pretty small at the time.
13:44:20 <int-e> did they even make 89 GB HDDs in 2022 though ;)
13:44:27 <wib_jonas> fizzie: is that for new drives? the 2 gigabyte hard disk was rather old by that time, and I may have also been mistaken above and had got a larger drive by 2004
13:44:53 <int-e> (yeah I'm ignoring the "normalized")
13:45:05 <fizzie> I don't know the sources of that data, and since it covers a timespan from 1957 to 2022 it's probably not all that "uniform".
13:45:32 <wib_jonas> I think I had the 2 gigabyte disk starting from around 1995 when I first had my own PC separate from my father's PC, so by 2004 I probably got a bigger one
13:45:48 <int-e> Gotta admire the company that paid $200T for a TB in 1956
13:45:56 <int-e> Just to put that dot on the graph.
13:46:04 <int-e> (Again ignoring the "normalized" of course)
13:46:05 <fizzie> Looks like new drives sold in 2004 were typically in the 80, 120, 160, maybe 250 gigabyte range.
13:46:16 <wib_jonas> yes, that's believable
13:46:45 <wib_jonas> int-e: that's for RAM though, not disk
13:46:46 <int-e> Those sizes are familiar
13:47:23 <int-e> wib_jonas: Sure. That's a lot of wires and ring magnets.
13:47:31 <wib_jonas> and I think that graph is for the largest RAMs and disks that you can reasonably buy for a server, not for a cheaper stuff that a uni student has at home from their parents' money
13:47:55 <wib_jonas> hehe, yes
13:47:55 <int-e> (I /think/ that was the technology? Or was it still relays and tubes...)
13:49:16 <wib_jonas> int-e: it was magnetic core memory, yes
13:49:42 <wib_jonas> that but also spinning magnetic disks for memory, and even delay lines
13:50:47 <wib_jonas> wait a moment, on that graph, what's the difference between "flash" and "solid state"?
13:51:05 <int-e> I've read about delay lines (maybe because of this channel?)... what a weird technology. Ingenius of course.
13:51:44 <int-e> wib_jonas: Good question... I'd guess (but not with great confidence) that SSD implies wear levelling.
13:51:59 <wib_jonas> int-e: they make much more sense for analog data, specifically one line of color information for television in formats that send color in alternating lines
13:52:05 <fizzie> wib_jonas: It's apparently from https://jcmit.net/flashprice.htm
13:52:42 <fizzie> So "flash" is USB thumb drives and memory cards, while "solid state" is internal SATA or PCIe storage devices.
13:54:05 <int-e> So no real functional distinction then. Fair enough.
13:55:21 <int-e> But then it's weird that they stop tracking `flash` in the graph once internal SSDs take off...
13:58:11 <fizzie> int-e: Regarding your other question, I can still find an Amazon listing for a 80GB mechanical (IDE) hard drive as new: https://www.amazon.co.uk/Western-Digital-Scorpio-Cache-Internal/dp/B000RHTIZO/ref=sr_1_9
13:58:14 <fizzie> "Massive capacity - WD Scorpio Blue 2.5-inch drives offer the most available capacity for space-hungry operating systems like Windows Vista, plus plenty of room left over for photos, music, and video"
13:58:17 <fizzie> Not so sure about that.
14:00:24 <cpressey> I like how all the reviews are from around 2010
14:00:27 <int-e> I'm not convinced that this isn't decades old stock
14:00:38 <fizzie> Well, a 2017 review mentions "sticker dates manufacture as Oct 2008", so...
14:00:54 <int-e> Oh! :)
14:01:45 <wib_jonas> lol
14:02:47 <fizzie> It seems nontrivial to find what's the smallest hard drive that's still actually being manufactured at the time.
14:03:22 <int-e> It's not exactly a marketable feature.
14:04:42 <wib_jonas> fizzie: I'm not completely sure that's not even infinite. Most of the hard disk manufacturers started to make solid state drives instead because it's more profitable, so reputedly all three big hard disk brands are made in one factory in china these days, and that sounds like a fragile situation.
14:04:55 <int-e> I would imagine that it won't be a consumer product, but something for industrial use or other high robustness high durability purposes.
14:05:16 <int-e> But yeah SSDs will be in that niche too.
14:05:53 <wib_jonas> int-e: no, we have the 4 megabyte SD cards for that, so if you want something smaller than an 80 gigabyte hard disk, you can just use a 16 gigabyte SD card plus a reader
14:06:22 <wib_jonas> I don't think anyone uses hard disk for that kind of *low capacity* industrial stuff anymore
14:06:36 <wib_jonas> high capacity sure, but low capacity works better with solid state
14:06:39 <int-e> Let's pretend I said SSD/Flash
14:07:14 <wib_jonas> ok, in that case I can confirm that there are low capacity solid state memory cards in use for industry at my dayjob
14:08:33 <wib_jonas> they're a ripoff like a lot of the expensive stuff we sell, you're not paying for it being better than normal SD cards, you're paying for a brand name and for saying that you're following "the industry standard" so that you can't easily be held responsible when something fails
14:09:34 <int-e> . o O ( More than 50x more durable than the floppy disks that they replace! )
14:10:10 <wib_jonas> int-e: is that measured in how many times you access them, or in how long you store them idle?
14:10:21 <int-e> The former is what I had in mind.
14:10:42 <int-e> And I made up the number of course. It's not like I could be bothered to find any data on this.
14:12:26 <int-e> (The fact in the back of my mind that inspired it was that there were floppies in industrial devices long after floppies were considered dead. And I believe you still have SD readers with an MFM interface?)
14:17:12 -!- wib_jonas has quit (Quit: Client closed).
14:18:59 <Europe2048> What are you talking about?
14:29:23 -!- Thelie has joined.
14:32:35 -!- wib_jonas has joined.
14:37:08 -!- arseniiv has quit (Ping timeout: 255 seconds).
14:38:22 <esolangs> [[Category talk:Programs]] https://esolangs.org/w/index.php?diff=117444&oldid=117423 * None1 * (+117)
14:38:52 -!- FreeFull has joined.
14:41:36 <wib_jonas> int-e: I checked a computer distributor's homepage for low capacity, they definitely sell 512 GB spinning hard disks, and likely 256 GB spinning hard disks, definitely 8 GB SD cards, and 700 MB writable CDs. also the largest microSD cards that they sell is 512 GB, I assumed it would have grown past that by now, but no, it's almost like there's a
14:41:37 <wib_jonas> physical limitation in how much data they can cram into a card the size of a fingernail.
14:44:53 <int-e> Europe2048: I think you'll find that that's not a conversation starter on IRC, especially on a channel that has public logs (see the topic).
14:45:26 <Europe2048> Oh.
14:49:42 <int-e> wib_jonas: Amazon has 1TB offers. And a hit for 2TB that looks fake.
14:53:34 <cpressey> Physical limitations, are those still a thing?  I thought Moore's Law made all that a non-issue, what with the Singularity being near and all
14:54:10 <int-e> `? mapole
14:54:13 <HackEso> A mapole is a thwackamacallit built from maple according to Canadian standards. The army version includes a spork, a corkscrew and a moose whistle. A regulatory mapole measures 6’ by 12 kg, ±0.5 inHg.
14:55:01 <int-e> cpressey: (that seemed whack-worthy)
14:56:39 <wib_jonas> not a distributor but an OEM but https://www.kingston.com/en/memory-cards lists 512 GB as the largest. 1 TB sounds believable though.
14:59:20 <wib_jonas> https://www.kingston.com/en/memory-cards does list 1 TB microSD card though
14:59:21 <fizzie> Same for Transcend at https://www.transcend-info.com/product/memory-card/ -- but their largest regular SD card is 1 TB as well (and 512 GB for µSD), so maybe they don't cater for the extreme-capacity niche.
14:59:34 <int-e> Good point about checking manufacturer sites. https://www.westerndigital.com/de-de/products/memory-cards/sandisk-ultra-uhs-i-microsd#SDSQUA4-032G-GN6MA
14:59:59 <int-e> (down to 32GB though of course as with HDDs that may be old stock)
15:00:17 <int-e> why de-de, but whatever
15:00:34 <wib_jonas> um, wrong link
15:00:55 <int-e> (I know why of course, I just hate that nobody seems to respect the Accept-Languages header)
15:00:58 <wib_jonas> https://www.westerndigital.com/products/memory-cards/microsd (SanDisk) lists 1 TB microSD card
15:02:30 <fizzie> I have a 16 MB CF card rolling around at the bottom of a chest of drawers that seems hard to find a reasonable use for.
15:02:32 <wib_jonas> int-e: that's probably for the best. sure, homepages can already learn everything using client-side scripts, but let them work for it rather than broadcast my preferred languages, operating system, monitor resolution, and all other info in the header of every HTTP query. accept-languages sounds nice in theory but is probably best not used by
15:02:32 <wib_jonas> clients.
15:03:31 <int-e> but what they do instead is worse, guessing a language based on IP
15:04:33 <wib_jonas> int-e: yes, but they have to pick a language *somehow*, so I don't care too much if it's by IP. the problem is when they don't let me override the language easily from a menu entry, which I think is orthogonal to how they guess.
15:05:17 <int-e> fizzie: I think that fits all of Monkey Island 2! Barely.
15:05:31 <wib_jonas> and I can't just use a uniform Accept-Languages because I want to see certain homepages in hungarian and others in english, in both case when the homepage exists in both english and hungarian (in some state at least)
15:06:42 <fizzie> I think it might just DOS 6.22 and Windows for Workgroups 3.11 install media, since that was 3 + 8 floppies.
15:07:13 <int-e> Hehe, "Games that spaned the most Disks" https://www.lemonamiga.com/forum/viewtopic.php?t=186
15:07:40 <fizzie> (Hmm, is it Windows for Workgroups 3.11 or Windows 3.11 for Workgroups?)
15:08:03 <int-e> Memory suggests the latter.
15:08:04 <wib_jonas> fizzie: unlikely. you wouldn't use an SD card as DOS 6.22 or Windows 3.11 installer media, since old computers where you installed those didn't have drivers for SD card readers \so you couldn't install from them
15:08:27 <wib_jonas> even CD-ROM would be stretching it
15:08:35 <int-e> so does $SEARCHENGINE
15:08:35 <fizzie> I like those plurals where there's a two-word unit and the suffix goes in the first word, like 'postmasters general'.
15:09:36 <fizzie> I think Baldur's Gate came on 6 CD-ROMs, that was quite something too.
15:09:52 <wib_jonas> fizzie: I write those a lot when talking about Factorio, especially about putting 4 red modules 3 each into assemblers 3\
15:11:28 <cpressey> Some days I think I would like to pare down a NetBSD distribution until it fits in 16MB.  Just because.
15:12:03 <cpressey> Other days I think I have better things to do.
15:13:07 <wib_jonas> cpressey: do you also want to make it run on a system with just 2 MB of RAM? I had heard a legend of Linux 1 running on such a system, but I'm not sure if I believe it.
15:14:28 <wib_jonas> back when I started to use linux, the kernel version number started with 2.2., it strictly required at least 4 MB RAM, and rescue systems came on 2 or 3 floppies.
15:15:30 <cpressey> I think the NetBSD kernel still "fits on a floppy", if that floppy is the 2.88M kind, which I've never seen in real life but which can be used as the El Torito boot image on an ISO 9660 image.
15:15:50 <cpressey> But 2.88M > 2M so I would be OK if 4M was the minimum RAM
15:17:17 <wib_jonas> cpressey: the trick with two floppy rescue images was that one floppy has the kernel and one the file system, so the file system ones stays in the floppy drive and so you don't have to load it in RAM. but I think 2 MB RAM was impossible by then even if you have a many megabyte large hard disk.
15:18:26 <wib_jonas> my DOS rescue floppy loads the whole rescue file system to a RAM disk, and since it has to fit the decompressed version twice into the RAM disk when loading, 2 MB of RAM would certainly not be enough for it
15:19:28 <wib_jonas> I never tried to make a Linux rescue system, I just used stock images for that
15:24:20 <wib_jonas> these days even a linux kernel without modules doesn't fit in 2 MB
15:31:33 <cpressey> The default ("GENERIC") NetBSD kernel (for i386, I should note) is about 20MB.  You can compile a stripped-down version ("GENERIC_TINY") with minimal hardware support.  I did this recently, went and looked how big it is: 2.6M
15:32:02 <cpressey> More precisely, 2684240 bytes according to "ls -l"
15:36:18 <wib_jonas> is that compressed?
15:37:06 <cpressey> No, not compressed.
15:38:00 <cpressey> gzip brings it down to 1.2M
15:38:28 <cpressey> Not sure what kind of support there is for booting from that these days.  There probably is, but it's increasingly obscure how to do it
15:38:54 <wib_jonas> booting from what?
15:39:57 <cpressey> Booting from a compressed kernel.  Oh hey, that means it DOES fit on a floppy, a "normal" 1.44MB one.
15:40:58 -!- cpressey has quit (Quit: Client closed).
15:41:06 <wib_jonas> I think the decompression used to be built into the kernel image itself, but these days I'm not sure if it's in the kernel or the boot loader anymore. In any case, grub2 is customizable so you can probably build a very tiny one if it only needs to support one thing.
15:41:15 -!- cpressey has joined.
15:42:12 <fizzie> One-floppy Linuxes were definitely a thing still in 2002-2003.
15:44:05 <fizzie> I had my "civil service" (alternative way for doing the compulsory Finnish military service thing) then, at a place, where I had to answer phones between, I don't know, something like 3pm-5pm when the normal receptionists had gone home, and there was a computer I didn't have account on, but I could reboot it into a single-floppy Linux with an SSH client to chat in IRC during the 95% of the time
15:44:07 <fizzie> nobody was calling.
15:44:31 <esolangs> [[HQ9+B]] M https://esolangs.org/w/index.php?diff=117445&oldid=30545 * PythonshellDebugwindow * (+32) Stub, category
15:45:31 <esolangs> [[Dbfi]] M https://esolangs.org/w/index.php?diff=117446&oldid=112834 * PythonshellDebugwindow * (+29) Category
15:45:47 <fizzie> (It probably had many megabytes of RAM though.)
15:46:25 <esolangs> [[4Head/AuthorImplementation.c]] M https://esolangs.org/w/index.php?diff=117447&oldid=108690 * PythonshellDebugwindow * (+16) Back
15:53:02 -!- Europe2048 has quit (Quit: Client closed).
15:55:11 -!- arseniiv has joined.
16:00:03 -!- Europe2048 has joined.
16:00:07 <Europe2048> I'm back!
16:01:25 -!- Europe2048 has quit (Client Quit).
16:15:11 -!- isabella has changed nick to isabellatrix.
16:22:32 -!- Thelie has quit (Quit: Leaving.).
16:32:50 -!- wib_jonas has quit (Quit: Client closed).
16:39:40 -!- Europe2048 has joined.
16:39:46 <Europe2048> Anyone here?
18:38:28 <esolangs> [[4Head]] https://esolangs.org/w/index.php?diff=117448&oldid=114220 * 1hals * (+364) explain more
18:39:27 <esolangs> [[4Head]] M https://esolangs.org/w/index.php?diff=117449&oldid=117448 * 1hals * (+3)
19:03:22 <esolangs> [[Counting]] https://esolangs.org/w/index.php?diff=117450&oldid=89293 * Kaveh Yousefi * (+822) Rectified several examples which were based on the assumption of a counter start value of 1, another which employed the undefined print statement, and introduced a 99 Bottles of Beer program.
19:04:14 <esolangs> [[Counting]] https://esolangs.org/w/index.php?diff=117451&oldid=117450 * Kaveh Yousefi * (+166) Added a hyperlink to my implementation of the Counting programming language on GitHub and changed the category tag Unimplemented to Implemented.
19:17:01 -!- __monty__ has quit (Quit: leaving).
19:26:20 -!- arseniiv has quit (Quit: gone too far).
19:33:51 <esolangs> [[Standard single-character instructions]] M https://esolangs.org/w/index.php?diff=117452&oldid=44833 * PythonshellDebugwindow * (+13) Stub, link
19:35:27 <Europe2048> No human is online.
19:38:28 <esolangs> [[Stack]] M https://esolangs.org/w/index.php?diff=117453&oldid=112892 * PythonshellDebugwindow * (+26) /* See Also */ Link to push-down automaton
19:44:07 -!- cpressey has quit (Quit: Ping timeout (120 seconds)).
20:08:10 <Europe2048> Anyone?
20:08:38 <esolangs> [[Counting]] https://esolangs.org/w/index.php?diff=117454&oldid=117451 * Kaveh Yousefi * (+588) Added a pseudocode formulation of the program concepts, and amended two mistakes.
20:13:06 -!- cpressey has joined.
20:14:39 -!- cpressey has quit (Client Quit).
20:25:00 -!- cpressey has joined.
20:28:25 -!- cpressey has quit (Client Quit).
20:37:17 <zzo38> Right now I am on
20:39:04 <Europe2048> Hi zzo38!
20:40:07 <zzo38> Do you have any question or something else to write about? (Note, there are also logs, that if the question is written on a different day, someone might still read it; but I am on now so if you have a question now then maybe I might be able to answer (or maybe I don't know).)
20:45:29 <Europe2048> No. Anyways, go check out my esolang (Deadfish++).
20:45:38 <Europe2048> If you haven't already.
20:45:47 <zzo38> OK, I will look
20:56:44 <Europe2048> Thanks
20:59:21 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=117455&oldid=117443 * Europe2048 * (+44) One-line coding is here.
21:00:53 <Europe2048> Sorry for the afk.
21:04:54 <esolangs> [[SimpliVode]] M https://esolangs.org/w/index.php?diff=117456&oldid=58366 * PythonshellDebugwindow * (+51) Stub, categories
21:21:16 <esolangs> [[Counting]] https://esolangs.org/w/index.php?diff=117457&oldid=117454 * Kaveh Yousefi * (+5041) Introduced a commands section comprehending the binary operations in a tabular illustration.
21:22:31 -!- Sgeo has joined.
21:30:24 -!- Europe2048 has quit (Quit: Client closed).
21:43:24 <esolangs> [[Betterfunge]] M https://esolangs.org/w/index.php?diff=117458&oldid=98455 * LEOMOK * (+106) fixed mistakes and added a note
21:43:58 <esolangs> [[Betterfunge]] M https://esolangs.org/w/index.php?diff=117459&oldid=117458 * LEOMOK * (+3) fixed another mistake
21:45:54 -!- FreeFull has quit.
21:55:15 <esolangs> [[Rotary Quine]] M https://esolangs.org/w/index.php?diff=117460&oldid=68895 * PythonshellDebugwindow * (+4) Link
23:04:13 <esolangs> [[Counting]] https://esolangs.org/w/index.php?diff=117461&oldid=117457 * Kaveh Yousefi * (+456) Supplemented a tabular aperu concerning the unary operators.
23:14:22 <esolangs> [[Counting]] https://esolangs.org/w/index.php?diff=117462&oldid=117461 * Kaveh Yousefi * (+1121) Added information regarding the three available statements halt, out, and read, as well as such concerning comments.
2023-10-05
00:32:01 -!- Guest71 has joined.
00:32:01 <Guest71> hi
00:32:41 <Guest71> hi
00:32:52 <Guest71> bye
00:32:55 -!- Guest71 has quit (Client Quit).
00:47:37 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
00:48:32 -!- Lord_of_Life has joined.
01:07:05 -!- Zefoo has joined.
01:07:31 -!- Zefoo has quit (Client Quit).
01:13:50 -!- raz3time has joined.
01:14:28 -!- raz3time has quit (Client Quit).
01:14:45 -!- razetime has joined.
02:12:59 -!- Noisytoot has quit (Killed (lead.libera.chat (Nickname regained by services))).
02:13:01 -!- Noisytoot has joined.
02:13:06 -!- user3456_ has joined.
02:13:38 -!- user3456 has quit (Ping timeout: 272 seconds).
02:14:14 -!- user3456_ has changed nick to user3456.
04:20:28 <int-e> b_jonas: The plot thickens: https://github.com/icculus/mojosetup/commit/1ad762b82a7dbd435285afd74fca9f334d6c5930 is newer than GOG, so if they forked mojosetup they may not have ZIP64 support.
04:23:01 <zzo38> I know you had mention before the "So Broken" sokoban game. Is this the proper rules? http://sprunge.us/h6Sk6W (I have not actually played the game, so I guessed)
04:25:52 <int-e> how does that differ from sokoban?
04:26:30 <int-e> The main point of So Broken is that undo/redo do not move the player, only the boxes.
04:27:53 <int-e> (And it's okay for the player to be on the same square as a box; the player just can't move then.)
04:30:11 <shachaf> Hmm, did you play Tres Undos?
04:30:13 <int-e> Other than that... hmm I seem to recall colored boxes and targets? I don't remember all the mechanics.
04:30:17 <shachaf> I guess I mentioned it in here before?
04:30:22 <shachaf> Maybe that's the context the other one came up in?
04:31:00 <int-e> Anyway I can't read zzo38's paste.
04:31:19 <zzo38> Is the player supposed to not move if the box is in the same position than player?
04:32:04 <zzo38> Does the paste not work, it works but is unreadable?
04:32:40 <int-e> I do not know what it does. I do not know what language that is.
04:33:38 <zzo38> It is the Free Hero Mesh programming language, and it is (intended to be) a implementation of So Broken game.
04:33:47 <int-e> In the original game, if the player is on the same square as a box, then only the box is displayed; the player is hidden and trying to move has no effect.
04:34:57 <int-e> One way this happens is that you push a box one square and then "undo"... the box will revert to its previous position, and the player will stay there.
04:35:21 <zzo38> This implementation uses S and R to save/restore the position of the boxes, by creating a invisible (and non-interacting) object to save its position. (VisualOnly means it is non-interacting with movement; Invisible is implied because Image is not specified for that class.) (The game engine has undo/redo function but its meaning cannot be changed like that.)
04:36:11 <int-e> You can move through a box by pushing it twice (provided there is enough space) and then "undo" twice.
04:36:33 * int-e shrugs.
04:36:50 <zzo38> This one doesn't prevent the player from moving where there is a box, although it could be changed to prevent that easily enough if it is desired. (Although, I thought it would be necessary to be in the same position due to one of the screenshots?)
04:37:42 <zzo38> (The player can't move into the same cell as a box except by pushing R to move the box where there is the player, but if that is the case, the player can then move out of that cell.)
04:37:48 <int-e> I actually forgot... I seem to recall that the undo/redo stack is unaffected as long as the player moves without pushing a box?
04:38:10 <int-e> Been a while.
04:44:24 <zzo38> (Making the player invisible if there is a box in the same cell would also be possible, but I think merely to prevent being movement would be good enough)
04:45:10 <zzo38> (Making many colour of boxes also would be possible to do but also I had not done; none of the screenshots shown there have colours of boxes, anyways)
04:55:51 <zzo38> Do you like to make up the puzzle game, too?
04:56:20 <int-e> shachaf: oh god, how many levels of "really" does that game add to "undo"?
04:59:12 <shachaf> int-e: The name is a hint.
05:00:48 <int-e> So it is.
05:02:36 <zzo38> What I had read a comment of Tres Undos says four undo levels, but only three are actually used
05:18:47 -!- razetime has quit (Ping timeout: 255 seconds).
05:21:22 -!- razetime has joined.
05:29:01 -!- Hooloovoo has quit (Remote host closed the connection).
05:30:09 -!- Hooloovoo has joined.
05:41:53 <int-e> hats?!
05:42:12 <int-e> oh I see. FANCY
05:52:13 <int-e> I'm missing the point of the puzzle though.
05:56:07 -!- chiselfuse has quit (Remote host closed the connection).
05:56:25 -!- chiselfuse has joined.
05:58:09 <shachaf> There's only one puzzle with hats, right?
05:58:36 <shachaf> I'm guessing it's more to show the idea.
05:58:44 <shachaf> Oh, no, there's also a "Player Pack" with extra puzzles.
06:00:04 <shachaf> And they also have another new element, hmm.
06:00:42 <int-e> I'll get back to it later but for the time being I'm stuck on that one, hmm, "official" hat level.
06:57:05 <shachaf> Ah, I misunderstood.
07:16:27 <b_jonas> int-e: which game is the hat in? I'm confused among all these games mentioned now
07:17:00 <int-e> The Tres Undo one
07:17:06 <int-e> +s
07:47:45 <int-e> Ah, got it... basically forgot a trick.
08:03:56 -!- user3456 has quit (Ping timeout: 248 seconds).
08:16:36 -!- razetime has quit (Ping timeout: 240 seconds).
08:28:11 -!- razetime has joined.
08:34:37 -!- user3456 has joined.
08:43:23 -!- Sgeo has quit (Read error: Connection reset by peer).
09:28:03 -!- __monty__ has joined.
09:28:50 -!- cpressey has joined.
09:35:49 -!- arseniiv has joined.
10:02:26 <esolangs> [[Counting]] https://esolangs.org/w/index.php?diff=117463&oldid=117462 * Kaveh Yousefi * (+781) Introduced a section treating of the involved data types.
10:08:12 <cpressey> Hi arseniiv
10:08:22 <arseniiv> hi!
10:12:18 <int-e> shachaf: the player pack looks difficult... I have solved *one* of those so far
10:26:11 <arseniiv> int-e: what are you and shachaf playing? Sorry I missed the start of discussion
10:26:48 <int-e> we have logs :P
10:27:09 <arseniiv> IDK what to search for :')
10:28:00 <arseniiv> don’t want to read them, I’ll won’t know how to stop and will eventually forget what I look for
10:28:50 <arseniiv> btw were it some of you here who’ve suggested to play Patrick’s Parabox? It was absolute masterpiece
10:29:09 <arseniiv> very much liked the experience
10:30:50 <int-e> arseniiv: it's literally in the past 10 messages, well, was, before your monolog
10:30:53 <int-e> :P
10:31:24 <arseniiv> int-e: oh sorry I thought it was earlier this week or something
10:34:06 <arseniiv> found it, thankso
10:34:55 <arseniiv> int-e: then was it a different game that I seem to remember you discuss a week or so earlier?
10:35:12 <arseniiv> idle curiosity
10:37:58 <arseniiv> btw have I written anything about microtonal music here? No themed esolang though, I don’t think there can be a fruitful idea to marry the two
10:38:33 <int-e> a week ago?
10:38:41 <arseniiv> (there is plenty of esomath though: linear algebra applications, including exterior algebra; and some other things)
10:39:15 <shachaf> Oh, speaking of linear algebra, what's going on with cyclic codes?
10:39:21 <arseniiv> int-e: if you don’t remember then I either synthesized something that wasn’t, or bad with time. No problem then
10:39:21 <shachaf> Why are people into them?
10:40:12 <arseniiv> (cyclic codes looked pretty esoteric to me last time I’ve seen them, but I have barely an understanding)
10:40:39 <shachaf> So one thing is codes generated by a polynomial. Fix some field, and take a polynomial p of degree k in that field, and consider strings of length n > k. The code words are exactly the multiples of p.
10:40:44 <shachaf> Right?
10:41:29 <shachaf> And one property of cyclic codes is that they're always generated by a polynomial -- specifically the (unique) lowest-degree monic polynomial in the code -- and also that polynomial divides x^n - 1
10:42:22 <shachaf> I've gathered this much.
10:42:50 <shachaf> And these things aren't that hard to prove.
10:43:03 <shachaf> Oh, and also any polynomial that divides x^n - 1 generates a cyclic code.
10:43:52 <int-e> arseniiv: There was that Niagara board game discussion
10:43:58 <shachaf> I'm confused about why people call CRC on variable-length messages -- where there's no particular n -- "cyclic redundancy check", since it seems like it's only cyclic for some message lengths. But maybe people are just being general.
10:44:13 <arseniiv> int-e: aah
10:45:32 <int-e> `? like
10:45:35 <HackEso> like? ¯\(°​_o)/¯
10:47:23 <int-e> arseniiv: and before that the last thing I remember is me discussing shapez.io and its puzzle DLC
10:47:27 * int-e shrugs
10:50:57 <shachaf> int-e: Remind me, did you play SquishCraft?
10:51:40 <int-e> doesn't ring a bell
10:51:55 <int-e> (i.e. I don't even recall a recommendation or anything)
10:52:03 <shachaf> Uh oh!
10:52:18 <shachaf> I should get back to that one, I only played a bit.
10:52:43 <shachaf> But I suspect it's up your alley?
10:52:45 <cpressey> shachaf: I never found that name too confusing; I took it to mean that the check cycles at n even if the message is shorter or longer than n (or 2n or whatever)
10:53:01 <int-e> we did have a square-squishing puzzle game though.
10:53:56 <shachaf> cpressey: Fair enough.
10:54:04 <int-e> so hmm
10:54:07 <shachaf> Hmm, is there always some n for any polynomial?
10:54:15 <int-e> shachaf: that looks familiar, I must have forgotten the name
10:54:51 <shachaf> Ah, OK.
10:55:24 <razetime> squishcraft has an interesting promotional video on steam.
10:55:26 <int-e> https://bcat112a.itch.io/squishcraft was in my browser history
10:55:49 <shachaf> Oh, that's the demo.
10:56:24 <razetime> there's a "full" version for 259 rupees.
10:57:12 -!- cpressey has quit (Quit: Client closed).
10:57:57 <shachaf> Hmm, it costs about twice as many rupees here!
10:58:31 <razetime> seems like a nice way to spend a few hourse
11:01:31 <shachaf> I guess polynomial codes, or maybe cyclic codes, are much easier to do error correction with?
11:09:27 <arseniiv> int-e: hmmmmmmm
11:09:58 <razetime> reasoning about how these squishes skew the blocks is getting quite difficult.
11:20:37 -!- wib_jonas has joined.
11:23:55 <wib_jonas> shachaf: it's a matter of taste but I'd say no. zip uses crc32 checksum while gzip uses adler checksum, and if you have one corrupted bit it's easier to find which one it is with adler than with crc, because for crc you need to find the logarithm of a polynomial in your field
11:24:32 -!- Koen has joined.
11:30:39 <wib_jonas> crc32 is linear in GF(2**32), the byte in position n is weighted with the nth power of some generator; while Adler is linear in GF(65521)**2, the byte in position n is weighted with (1, n), except I think the position is counted backwards from the end of the file
11:43:25 <int-e> arseniiv: oh did you ever see this: https://logs.esolangs.org/libera-esolangs/2023-09-18.html#lgd ff. (not sure whether that's still of interest after 2 weeks...)
11:45:23 <int-e> (I forgot except that somehow, CRC32 has now come up once again)
11:47:08 <arseniiv> int-e: I ended up rediscovering it myself but thanks! My implementation was without prepending 0xff bytes though, I think I might have been used something else instead
11:47:46 <int-e> That's just a weirdly easy trick to change the internal state back to 0.
11:48:56 <arseniiv> I played with that for a bit that time, was satisfied crcs are now all right, timed it in a cheap way, tinkered for a bit with different speed improvements and left as is, as I wasn’t in need to extract ogg tracks from anything anymore :D
11:50:15 <int-e> "weirdly easy"... I spent those 30-40 minutes trying various more complicated variations because I thought it should be harder. Silly me.
11:51:10 <wib_jonas> also don't trust what I say above, I have only very little understanding of error-correcting codes, and may be wrong about the specifics above
11:51:39 <arseniiv> eyah I get why all that xoring with 0xff and nonzero intial state to make zero-run-prepending errors catchable, and I get why OGG doesn’t need that (because each chapter should already start with fixed nonzero bytes) but why oh why OGG and zlib are bit-backwards to each other
11:51:57 <wib_jonas> int-e: yes, that's normal in programming, the hard part is to find the simple solutions
11:52:21 <arseniiv> ha
11:52:46 <int-e> arseniiv: Because of Gulliver's Travels of course.
11:53:31 <arseniiv> before reading about backward bits I checked I think 8 or 16 variations in code, and only after all of them were wrong did I try to search for anything
11:54:13 <arseniiv> int-e: what wh… ah yes I remember. I didn’t read that part myself but I read about that after
11:55:14 <int-e> arseniiv: AIUI this, hmm, essay is the actual origin of the term "endianness": https://www.rfc-editor.org/ien/ien137.txt
11:56:58 <int-e> (Well, not the term, but its application to computers and networking technology.)
11:57:29 <wib_jonas> arseniiv: zlib is ancient but I think CRC32 is older still than it, and CRC32 is kind of a simple mathematical idea, so zlib doesn't get to define one canonical version for it. we talked on #esolangs earlier on how x86 has three different unrelated instructions for multiplication in a two-power finite field like you need for CRC, they use two or
11:57:29 <wib_jonas> three different encodings that differ in the choice of generating polynomial, and that while these all represent the field element as a polynomial of a generator, there are two other ways to represent elements of these fields, the logarithmic one that https://www.perlmonks.com/?node_id=862789 uses, and the one that David Madore's IOCCC entry uses
11:58:48 <wib_jonas> the representation that David Madore's IOCCC entry uses is still linear, but the coeffs aren't powers of a generating polynomial
12:00:05 <arseniiv> <wib_jonas> x86 has three different unrelated instructions for multiplication in a two-power finite field => ow ow
12:05:57 <wib_jonas> arseniiv: PCLMULQDQ , GF2P8AFFINEQB , and CRC32. search the chat logs for it, we discussed them two or three times.
12:12:34 <arseniiv> wib_jonas: thanks!
12:33:01 -!- wib_jonas has quit (Quit: Client closed).
12:55:56 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117464&oldid=117133 * None1 * (+100)
12:56:59 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117465&oldid=117464 * None1 * (+101)
12:59:43 -!- razetime has quit (Ping timeout: 255 seconds).
13:01:58 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117466&oldid=117465 * None1 * (+64) /* Commands */
13:02:13 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117467&oldid=117466 * None1 * (+3) /* Commands */
13:09:42 -!- cpressey has joined.
13:11:07 <cpressey> I tried to learn more about probability theory over the summer.
13:13:21 <cpressey> I learned that Kolmogorov's 2nd axiom, while indisputably necessary, also prevents probability distributions from having nicer algebraic properties
13:15:01 <cpressey> You can combine distributions in various ways, but you have to keep normalizing the result so that it sums to 1, and that is a buzzkill, algebraically speaking
13:17:18 <cpressey> So I started thinking, maybe you can apply operations to underlying "populations" of some sort, something more concrete, and then derive the probability distribution from that, only when you need a probability distribution, at the end of some sequence of operations.
13:17:32 <cpressey> That seems to work more nicely.
13:21:00 <cpressey> But it also seems likely that it's too artificial to have much practical use.
13:23:17 -!- tromp has quit (Read error: Connection reset by peer).
13:26:52 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=117468&oldid=117310 * Infinitehexagon * (+60)
13:30:24 <cpressey> Oh, I also learned that the philosophical basis for probability theory is far from uncontroversial.
13:32:16 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117469&oldid=117399 * Infinitehexagon * (+24)
13:34:11 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117470&oldid=117469 * Infinitehexagon * (+126)
13:34:25 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117471&oldid=117470 * Infinitehexagon * (+15) /* Input Problem */
13:44:04 <esolangs> [[Beta]] N https://esolangs.org/w/index.php?oldid=117472 * Infinitehexagon * (+1169) Created page with "'''Beta''' is an esoteric programming language that is part of a series by User:Infinitehexagon on Greek esolangs that will be a derivative of the previous esolang with more commands, less commands, or modified commands. It has 4 more extra commands than Alpha. ==C
13:44:34 <esolangs> [[Beta]] https://esolangs.org/w/index.php?diff=117473&oldid=117472 * Infinitehexagon * (+0)
13:57:36 -!- Koen has quit (Remote host closed the connection).
13:57:38 -!- cpressey has quit (Ping timeout: 245 seconds).
14:00:36 <esolangs> [[Beta]] https://esolangs.org/w/index.php?diff=117474&oldid=117473 * Infinitehexagon * (+376)
14:01:05 <esolangs> [[Beta]] https://esolangs.org/w/index.php?diff=117475&oldid=117474 * Infinitehexagon * (+2)
14:01:31 <esolangs> [[Beta]] https://esolangs.org/w/index.php?diff=117476&oldid=117475 * Infinitehexagon * (+4)
14:02:28 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117477&oldid=117442 * Lilchiky * (+2) /* 99 bottles of beer */ +1
14:06:07 <esolangs> [[Beta]] https://esolangs.org/w/index.php?diff=117478&oldid=117476 * Infinitehexagon * (+12)
14:08:58 <esolangs> [[Beta]] https://esolangs.org/w/index.php?diff=117479&oldid=117478 * Infinitehexagon * (+75)
14:10:57 -!- cpressey has joined.
14:12:21 -!- razetime has joined.
14:13:08 <esolangs> [[Beta]] https://esolangs.org/w/index.php?diff=117480&oldid=117479 * Infinitehexagon * (+38)
14:13:36 <esolangs> [[Alpha]] https://esolangs.org/w/index.php?diff=117481&oldid=117471 * Infinitehexagon * (+33) /* Truth machine */
14:14:51 <arseniiv> cpressey: how about probability frameworks à la random matrices? I forget what it was called, dressed as an abstract thing (something like C-algebra); it also was described somewhere at Terry Tao’s blog and might be called “noncommutative probability” or “free probability”. I’ll look at my bookmarks
14:15:06 <arseniiv> that framework might be free from some of Kolmogorov-style pitfails
14:15:25 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=117482&oldid=117387 * Infinitehexagon * (+9) /* My Esolangs (chronological order) */
14:15:36 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=117483&oldid=117482 * Infinitehexagon * (+4) /* My Esolangs (chronological order) */
14:15:44 <arseniiv> but I don’t remember if one can describe an arbitrary distribution that way, or only, say, ℂ-valued ones
14:15:54 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=117484&oldid=117483 * Infinitehexagon * (+2) /* Things I might do */
14:16:20 <arseniiv> this post: https://terrytao.wordpress.com/2010/02/10/245a-notes-5-free-probability/
14:17:23 <arseniiv> it was where I learned that this exists at all, first. But I’ve already forgotten most of it. I just noted it looks quantum-mechanically (because these things are really related in the end)
14:26:01 <arseniiv> yeah, an unital *-algebra and a *-linear functional which sends 1 to 1. The latter should be, I presume, equivalent to the axiom you’ve mentioned, so this would be no way out, then
14:27:20 -!- razetime has quit (Ping timeout: 255 seconds).
14:27:36 <arseniiv> yeah, Tao writes the same right away. 1 is like the whole sample space (its projection operator)
14:28:07 -!- razetime has joined.
14:29:06 -!- Koen has joined.
14:42:08 <cpressey> Mmm that is very interesting though
14:48:24 <esolangs> [[Listack]] M https://esolangs.org/w/index.php?diff=117485&oldid=117032 * McChuck * (+19) /* Listack: A symmetric, flat, stack-based, concatenative language */
14:50:23 <cpressey> way over my head for the most part, but still, very interesting
14:51:37 <esolangs> [[User:McChuck]] https://esolangs.org/w/index.php?diff=117486&oldid=104613 * McChuck * (+14)
14:52:42 <esolangs> [[User:McChuck]] https://esolangs.org/w/index.php?diff=117487&oldid=117486 * McChuck * (+99)
14:54:06 <esolangs> [[User:McChuck]] https://esolangs.org/w/index.php?diff=117488&oldid=117487 * McChuck * (+14)
14:55:49 -!- Sgeo has joined.
15:02:33 -!- razetime has quit (Remote host closed the connection).
15:02:59 -!- razetime has joined.
15:19:16 <esolangs> [[Beta]] M https://esolangs.org/w/index.php?diff=117489&oldid=117480 * PythonshellDebugwindow * (+69) Link, categories
15:24:19 -!- Cale has quit (Ping timeout: 264 seconds).
15:37:59 -!- Cale has joined.
15:43:12 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
16:12:13 -!- cpressey has quit (Quit: Client closed).
16:22:59 -!- wpa has joined.
16:53:14 -!- Koen has quit (Remote host closed the connection).
16:54:29 -!- Europe2048 has joined.
16:55:27 <Europe2048> Hi everyone!
16:56:32 <wpa> hi
16:59:29 <Europe2048> I'm adding escape sequences to my esolang, Deadfish++.
17:14:10 -!- FreeFull has joined.
17:18:34 <Europe2048> Hi FreeFull, check out my esolang, Deadfish++!
17:18:46 <FreeFull> Alright, lemme have a look at it
17:20:46 <FreeFull> That's a lot of commands
17:21:15 <FreeFull> Hm, a good name for Deadfish with input would be Readfish
17:28:51 <Europe2048> "Hm, a good name for Deadfish with input would be Readfish" Great idea!
17:48:29 <esolangs> [[Deadfish++]] https://esolangs.org/w/index.php?diff=117490&oldid=117455 * Europe2048 * (+1580) Added escape sequences and many more operations.
17:49:11 -!- Koen has joined.
17:53:56 <Europe2048> Welcome, Koen! Go try out my esolang: https://esolangs.org/wiki/Deadfish++
18:06:31 <esolangs> [[Deadfish++]] https://esolangs.org/w/index.php?diff=117491&oldid=117490 * Europe2048 * (+476) Added errors.
18:08:43 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=117492&oldid=117491 * Europe2048 * (+70) 1 new error
18:43:02 -!- Koen has quit (Remote host closed the connection).
18:43:28 -!- Koen has joined.
18:48:10 -!- Koen has quit (Ping timeout: 258 seconds).
19:03:40 -!- arseniiv has quit (Quit: gone too far).
19:18:33 -!- __monty__ has quit (Quit: leaving).
19:21:41 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=117493&oldid=117492 * Europe2048 * (+29)
19:38:29 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=117494&oldid=117493 * Europe2048 * (+6)
19:38:39 <Europe2048> No human is online...
19:41:19 <zzo38> I am on right now (and, I have seen Deadfish++)
19:42:15 <zzo38> Do you like Hero Hearts game?
19:47:23 <Europe2048> I don't even know what's Hero Hearts.
19:52:24 -!- wpa has quit (Quit: Connection closed for inactivity).
19:54:56 -!- Europe2048 has quit (Quit: Client closed).
20:02:35 -!- Europe2048 has joined.
20:06:14 <Europe2048> ANYONE?
20:14:36 -!- Wryl-o-the-wisp has quit.
20:25:52 -!- Europe2048 has quit (Quit: Client closed).
20:40:34 <esolangs> [[Deadfish]] M https://esolangs.org/w/index.php?diff=117495&oldid=116836 * Europe2048 * (+180) Added Deadfish++ to interpreter list.
20:40:45 -!- Europe2048 has joined.
21:07:39 <APic> Good Night!
21:17:43 -!- Europe2048 has quit (Quit: Client closed).
21:21:15 -!- Koen has joined.
22:01:25 -!- Koen has quit (Remote host closed the connection).
22:03:08 -!- Koen has joined.
22:07:56 -!- Koen has quit (Ping timeout: 260 seconds).
22:21:17 <esolangs> [[Deadfish]] https://esolangs.org/w/index.php?diff=117496&oldid=117495 * Zzo38 * (-169) The implementation in Free Hero Mesh can be done by (Control) to not needing placing objects in the level.
22:43:44 -!- FreeFull has quit.
22:52:57 -!- [iovoid] has joined.
22:54:20 -!- iovoid has quit (Ping timeout: 272 seconds).
22:54:39 -!- [iovoid] has changed nick to iovoid.
2023-10-06
00:49:36 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
00:50:12 -!- Lord_of_Life has joined.
01:33:47 <esolangs> [[COVID-19]] M https://esolangs.org/w/index.php?diff=117497&oldid=84059 * Lilchiky * (-7) Missing some formatting
01:35:27 -!- razetime has joined.
01:56:02 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117498&oldid=117477 * Lilchiky * (-1) /* 99 bottles of beer */
02:12:55 -!- Wryl-o-the-wisp has joined.
02:27:12 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117499&oldid=117498 * Lilchiky * (+4) /* 99 bottles of beer */ +2
02:31:53 <esolangs> [[99 bottles of beer]] https://esolangs.org/w/index.php?diff=117500&oldid=117284 * Lilchiky * (+1125) /* List of implementations */ Adding [[Bawkbawk]] implementation
02:35:16 -!- Wryl-o-the-wisp has quit.
02:35:18 <esolangs> [[Talk:Bawkbawk]] M https://esolangs.org/w/index.php?diff=117501&oldid=116799 * Lilchiky * (+9)
02:37:25 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117502&oldid=117499 * Lilchiky * (+23) /* Memory */
02:39:01 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117503&oldid=117502 * Lilchiky * (+73) /* 99 bottles of beer */ aha
02:39:59 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117504&oldid=117503 * Lilchiky * (-37) /* Text to Bawkbawk */ eehe
02:45:54 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117505&oldid=117504 * Lilchiky * (+10) /* invisible */ visible
05:20:08 -!- razetime has quit (Ping timeout: 255 seconds).
06:07:24 -!- razetime has joined.
06:26:37 <esolangs> [[For The Worthy]] M https://esolangs.org/w/index.php?diff=117506&oldid=116049 * PythonshellDebugwindow * (+25) Category
06:27:52 <esolangs> [[Dropsort]] M https://esolangs.org/w/index.php?diff=117507&oldid=44547 * PythonshellDebugwindow * (+23) Category
06:45:23 -!- arseniiv has joined.
07:23:26 -!- Koen has joined.
07:57:06 -!- Cale has quit (Ping timeout: 260 seconds).
08:13:56 -!- sprout has quit (Ping timeout: 258 seconds).
08:22:11 -!- cpressey has joined.
08:28:39 <cpressey> <cpressey> You can combine distributions in various ways, but you have to keep normalizing the result so that it sums to 1, and that is a buzzkill, algebraically speaking <------ I had a thought late last night that make me seriously question this.  Of course, I don't know if I should trust that thought.  But I need to investigate this again.
08:32:26 -!- Sgeo has quit (Read error: Connection reset by peer).
08:41:55 -!- sprout has joined.
08:48:59 <cpressey> Instead of making sure the result sums to 1 always, can we not let the result sum to whatever (positive) value n, and divide by n only when necessary?  And our operations that combine probabilities would also have to combine n's.
08:49:17 <cpressey> s/result/distribution/
08:59:07 <cpressey> The two operations I care about are AND or OR, naturally.  For AND you multiply probabilities.  To extend it to this should be easy: it's just multiplying fractions instead.  Really, just another way of looking at the numbers you're multiplying.
08:59:36 <cpressey> OR is a little more involved, I need to go look it up
09:01:48 <cpressey> P(A∪B)=P(A)+P(B)−P(A∩B)
09:04:06 <Taneb> That AND assumes the probabilities are independent
09:04:23 <cpressey> I'm happy with getting something that works with only independent probabilities
09:04:57 <Taneb> OK
09:05:09 -!- tromp has joined.
09:17:51 <cpressey> It sort of came from stuff I was doing with Markov chains, and every transition in a Markov chain is independent.
09:30:55 -!- razetime has quit (Ping timeout: 264 seconds).
09:45:25 <cpressey> OK, I see where my thinking is wrong
09:51:39 <cpressey> It doesn't matter whether you normalize the probability to 1 or whether you maintain it as a ratio.  It doesn't change the fact that there are a number of laws that multiplication of ratios doesn't obey.
10:00:56 <cpressey> If we arbitrarily say that AND is min and OR is max, then we get more laws, and we can form a distributive lattice, even.  But these operations don't correspond with anything in practice.
10:01:49 <cpressey> But I think that is not a showstopper for my purposes.  It would be nice if they corresponded with something in practice.  But it's not critical.  I'd rather have the lattice
10:13:22 <cpressey> This does raise the question for me, of what does it mean intuitively, to apply min and max to probabilities, which is a bit vexing.  But I can try to ignore that
10:16:23 -!- moony has quit (Quit: Ping timeout (120 seconds)).
10:22:37 <cpressey> Well, OK, it means "as least as probable that", doesn't it?  Flipping a coin and getting heads is as least as probable as rolling a 1 on a 6-sided die.  min() and max() are, like, picking one of the two events based on a ranking, rather than combining them to form a new probability.
10:24:38 <cpressey> s/a ranking/their rank according to their probabilities/
10:42:55 -!- razetime has joined.
10:58:59 -!- __monty__ has joined.
11:09:31 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117508&oldid=117505 * Lilchiky * (+0) moving `see also` to the bottom
11:10:22 -!- Europe2048 has joined.
11:10:50 <Europe2048> Hi everyone! If I made yet another IPA esolang, will it be cell-based or stack-based?
11:11:47 <Europe2048> Should it be turing-complete or not?
11:12:00 <Europe2048> Will it be based on another esolang or not?
11:19:22 <cpressey> Europe2048: In this context, soes IPA mean International Phonetic Alphabet?
11:19:28 <cpressey> *does
11:19:33 <Europe2048> Yes.
11:21:06 <cpressey> Europe2048: Thanks.  Re your questions, I don't know if I can give you any answer besides "Follow your heart".
11:21:52 <Europe2048> cpressey: So you can't give me an answer for yourself?
11:23:36 <cpressey> Well, I've never made an esolang based on IPA, so I can't say.  I did design one where every program element was pronounceable, years and years ago, but I shelved it.  I don't clearly remember what its semantics were, I'd have to dig it up and puzzle over it.
11:23:58 <Europe2048> Some other people made IPA esolangs too!
11:24:40 <cpressey> Actually, I believe one of the attributes of standardized FORTH was that every symbol had a standardized pronounciation
11:25:26 <cpressey> You don't want some programmers saying "dupp" and others saying "doop", do you.  Makes debugging over the telephone harder than it needs to be.
11:26:49 <Europe2048> To fix that problem, I'll make a sound for each example program.
11:30:30 <Europe2048> Also, I'll also make sure every program is pronouncable in my esolang.
12:05:27 <Europe2048> Anyone?!
12:09:50 <int-e> doop dee dup
12:38:24 <esolangs> [[Template:Quote]] N https://esolangs.org/w/index.php?oldid=117509 * Lilchiky * (+32) shortcut4quotes
12:42:52 <esolangs> [[Bawkbawk]] https://esolangs.org/w/index.php?diff=117510&oldid=117508 * Lilchiky * (+757) /* Implementations */ a big discovery
12:43:38 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117511&oldid=117510 * Lilchiky * (-14) fixiy
12:46:16 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117512&oldid=117511 * Lilchiky * (-9) small grammar mistake
12:48:01 -!- Koen has quit (Remote host closed the connection).
13:06:34 <Europe2048> Hello, int-e!
13:14:06 <Europe2048> ANYONE?!!?!?!??!?
13:18:53 <Taneb> Are cell-based and stack-based the only two options?
13:33:01 <razetime> not really.
13:33:14 <razetime> you'll find a lot more if you try a little bit.
13:33:41 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117513&oldid=117467 * None1 * (+324) /* Commands */
13:34:26 <Europe2048> Hi razetime, should I make an IPA esolang?
13:35:56 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117514&oldid=117513 * None1 * (+110) /* Commands */
13:36:58 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117515&oldid=117514 * None1 * (+56) /* Commands */
13:39:36 <razetime> you should make whatever you like.
13:40:18 <razetime> it doesn't matter if it's unoriginal. we have a lot to go around. just make something.
13:52:31 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117516&oldid=117515 * None1 * (+643) /* Commands */ Add examples
13:52:51 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117517&oldid=117516 * None1 * (+1) /* Examples */ Close open brackets
13:53:03 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117518&oldid=117517 * None1 * (+1) /* =Hello World */
13:53:48 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117519&oldid=117518 * None1 * (+105)
13:54:23 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117520&oldid=117519 * None1 * (-1574) Moved out of sandbox
13:55:17 <esolangs> [[Wsad]] N https://esolangs.org/w/index.php?oldid=117521 * None1 * (+1712) Created page with " {{bf}} wsad is a [[brainfuck]] derivative, that uses only 4 characters. ==Commands== Every command consists of two characters in {{cd|w, s, a, d}}, for example: {{cd|wa}} is equivalent to the {{cd|+}} command in brainfuck. It is case insensitive. {|class=wikitable ! First
13:56:11 -!- Koen has joined.
13:56:13 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117522&oldid=117330 * None1 * (+11) /* W */
13:57:37 <esolangs> [[WCDA]] https://esolangs.org/w/index.php?diff=117523&oldid=76373 * None1 * (+23)
13:59:54 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=117524&oldid=117184 * None1 * (+76) /* My Esolangs */
14:00:35 -!- Koen has quit (Ping timeout: 240 seconds).
14:07:35 <esolangs> [[4 esolang + Python polyglot]] https://esolangs.org/w/index.php?diff=117525&oldid=117073 * None1 * (+764) /* External Resources */
14:07:50 <esolangs> [[4 esolang + Python polyglot]] M https://esolangs.org/w/index.php?diff=117526&oldid=117525 * None1 * (-1) /* External Resources */
14:12:31 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117527&oldid=117520 * None1 * (+302)
14:15:09 <esolangs> [[Wsad]] M https://esolangs.org/w/index.php?diff=117528&oldid=117521 * None1 * (+13)
14:15:57 <esolangs> [[Wsad]] https://esolangs.org/w/index.php?diff=117529&oldid=117528 * None1 * (+14)
14:16:37 <esolangs> [[Wsad]] https://esolangs.org/w/index.php?diff=117530&oldid=117529 * None1 * (+2)
14:17:48 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=117531&oldid=116446 * None1 * (+27) /* WeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeBasic */
14:20:25 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=117532&oldid=117531 * None1 * (+8666) /* JSFuck */
14:21:15 <esolangs> [[User:XKCD Random Number]] M https://esolangs.org/w/index.php?diff=117533&oldid=117532 * None1 * (+45) /* JSFuck */
14:51:38 -!- cpressey has quit (Quit: Client closed).
15:05:41 -!- cpressey has joined.
15:13:43 -!- Europe2048 has quit (Quit: Client closed).
15:29:14 -!- Sgeo has joined.
15:35:23 -!- cpressey has quit (Quit: Client closed).
15:46:15 -!- Europe2048 has joined.
15:46:43 <Europe2048> Hi everyone!
15:48:40 -!- cpressey has joined.
15:50:59 -!- cpressey has quit (Client Quit).
15:57:26 <river> hello
16:04:49 <Europe2048> Hi river!
16:04:55 <Europe2048> Should I make an IPA esolang?
16:04:59 <river> yes
16:05:17 <Europe2048> Would it be cell-based, stack-based, or something else?
16:15:44 -!- cpressey has joined.
16:27:10 -!- arseniiv has quit (Ping timeout: 255 seconds).
16:28:44 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
16:37:04 -!- arseniiv has joined.
16:38:02 -!- Thelie has joined.
16:55:44 <arseniiv> int-e: finally got my hands on Tres Undos, some funny moments there
16:58:24 <Europe2048> Hi, arseniiv!
16:58:43 <Europe2048> If I made an IPA esolang, would it be cell based, stack based, or something else?
16:59:45 <arseniiv> Europe2048: well if that’s IPA, it won’t be of any justice to not make it phonetics-based in some way. Stacks and tapes are too mundane for that
17:00:27 <Europe2048> So you're saying it should be cell-based?
17:00:44 <arseniiv> so one’d better investigate computational capabilities of human articulatory system, of course, why should it be cell-based
17:01:34 <Europe2048> So you're saying it should be stack-based?
17:01:43 <arseniiv> creaky voice can be a source of computational units, then oral-nasal distinction can be used for branching
17:03:29 <arseniiv> Europe2048: no it shouldn’t. What makes you believe that
17:03:31 <arseniiv> (I’m just curious a bit how it all works)
17:04:08 <arseniiv> also, lateral consonants are of utmost importance, moreso lateral affricates
17:04:10 <Europe2048> Just say cell- or stack-based already! I can't understand!
17:04:55 <arseniiv> Europe2048: I’m not keen on either, why should it be cell- or stack-based when it can be so much more, like monkey paw based
17:05:29 <arseniiv> or Yog-Sothoth based, I probably minced the name but that’s for the best
17:05:40 <arseniiv> the possibilities!
17:06:02 <Europe2048> Should it be based on conlangs or something?
17:07:17 <arseniiv> even better, Yog-Sothoth over a field of characteristic two. Can’t do spicier than that, char 2 makes all sorts of ridiculous nuisances
17:07:22 <arseniiv> or Ithkuil, yes
17:07:28 <arseniiv> (that’s a conlang)
17:07:44 <arseniiv> I’d be very pleased to look at an esolang which does Ithkuil a justice
17:08:55 <Europe2048> OK, anyways, tell me what should it be based on in particular.
17:11:30 <arseniiv> Ithkuil, bonus points for a quine which translates from Ithkuil as “this program is licenced under LGPL, MIT and CC0 and is a valid excuse to learn some Lojban in turn”
17:11:53 <arseniiv> but each valid program should be a valid Ithkuil sentence
17:12:14 <arseniiv> even more bonus points: each Ithkuil sentence is a valid program
17:12:22 <Europe2048> How can I do that? Ithkuil is literally the hardest language to learn!
17:12:38 <arseniiv> that’s where the challenge lies!
17:12:45 <arseniiv> maybe not the hardest though
17:14:05 <arseniiv> Ithkuil 3 should be simpler than Өłð Ɨṱħķüįɫ
17:14:30 <arseniiv> (which should not be mentioned by its true name either)
17:14:56 <Europe2048> Are there digraphs in New Ithkuil (2023)
17:14:58 <Europe2048> ?
17:15:39 <arseniiv> Europe2048: don’t know, sorry
17:16:34 <Europe2048> I found out that no.
17:18:28 <Europe2048> Anyways, do you mean to make an Ithkuil language?
17:41:22 <arseniiv> Europe2048: using valid Ithkuil grammar but endowing it with computational semantics, hopefully somehow related to what the original constructs mean
17:42:19 <Europe2048> "valid Ithkuil grammar" How the heck would I do that?
17:47:52 <esolangs> [[Rotary]] M https://esolangs.org/w/index.php?diff=117534&oldid=43218 * PythonshellDebugwindow * (+1380) Add examples and category, link to interpreter
17:47:55 -!- cpressey has quit (Quit: Client closed).
18:24:03 -!- Europe2048 has quit (Quit: Client closed).
18:34:49 -!- arseniiv_ has joined.
18:38:20 -!- arseniiv has quit (Ping timeout: 255 seconds).
18:39:31 -!- arseniiv_ has quit (Client Quit).
18:39:48 -!- Europe2048 has joined.
20:00:23 <esolangs> [[Bukkake]] M https://esolangs.org/w/index.php?diff=117535&oldid=46434 * PythonshellDebugwindow * (+187) Categories
20:00:35 <esolangs> [[Bukkake]] M https://esolangs.org/w/index.php?diff=117536&oldid=117535 * PythonshellDebugwindow * (+1) /* Further reading */ Category
20:05:56 -!- Europe2048 has quit (Quit: Client closed).
20:34:08 -!- Europe2048 has joined.
20:34:09 <b_jonas> "Should it be based on conlangs or something?" => I would say no, there are already too many of those
20:34:34 <Europe2048> Hi b_jonas!
20:34:51 <Europe2048> Should I make an IPA esolang? If yes, would it be cell-based or stack-based?
20:37:45 <b_jonas> sure, but probably only if you're at least drinking age
20:38:11 <Europe2048> I'm 9...
20:38:21 <Europe2048> But I can pronounce many IPA sounds.
20:40:26 <b_jonas> do not brew ale if you are younger than drinking age. it could get you into trouble.
20:41:07 <Europe2048> "brew ale" What's ale?
20:41:49 <b_jonas> ale is alcoholic drink with low alcohol content, provided it's not brewed from grapes (because then it's called wine) or cereal (because then it's called beer instead)
20:42:12 <Europe2048> Don't you know that IPA is International Phonetic Alphabet?
20:42:27 <b_jonas> or honey (because then it's called mead instead). English is weird, why do you need so many names for spirits?
20:42:38 <b_jonas> Europe2048: no, IPA is a type of ales
20:43:08 <Europe2048> That's your opinion.
20:43:26 <Europe2048> Also, IPA for International Phonetic Alphabet is more widely used.
20:43:40 <Europe2048> I meant this definition when I said "I can pronounce many IPA sounds.".
21:02:27 -!- Europe2048 has quit (Quit: Client closed).
21:05:13 -!- cpressey has joined.
21:38:50 -!- Europe2048 has joined.
21:38:56 <Europe2048> Hi everyone!
21:52:51 -!- Europe2048 has quit (Quit: Client closed).
22:01:49 -!- sam has joined.
22:02:50 -!- __monty__ has quit (Quit: leaving).
22:18:05 <esolangs> [[Special:Log/newusers]] create * MagmaMcFry * New user account
22:21:48 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117537&oldid=117401 * MagmaMcFry * (+130) o/
22:22:29 -!- cpressey has quit (Quit: Client closed).
22:23:21 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117538&oldid=117537 * MagmaMcFry * (+69) uh i copied the nowiki tags by accident
22:50:11 -!- Thelie has quit (Remote host closed the connection).
23:45:21 -!- razetime has joined.
23:57:49 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
2023-10-07
00:01:19 -!- razetime has joined.
00:45:35 -!- razetime has quit (Ping timeout: 240 seconds).
00:50:20 -!- Lord_of_Life_ has joined.
00:50:35 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
00:51:40 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:32:14 -!- razetime has joined.
03:31:43 -!- Wryl-o-the-wisp has joined.
05:06:11 -!- razetime has quit (Ping timeout: 255 seconds).
06:34:11 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117539&oldid=117147 * * (+1476) /* Commands */
06:54:20 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117540&oldid=117539 * * (+92) /* Commands */
07:19:17 -!- Europe2048 has joined.
07:19:22 <Europe2048> Hi everyone!
07:22:15 -!- chiselfuse has quit (Ping timeout: 252 seconds).
07:24:11 -!- chiselfuse has joined.
07:57:35 -!- cpressey has joined.
08:00:40 <cpressey> GitHub has recently begun getting on my nerves in a serious way.  I'm very seriously considering moving to Codeberg.
08:12:37 <int-e> Hmm, anything in particular? (He asks after creating a cosmetic filter for the dashboard to hide the "explore repositories" noise.)
08:14:07 <int-e> I guess my real question is whether this is about the constant UI changes or about stuff like Copilot.
08:37:00 -!- razetime has joined.
08:37:12 -!- Sgeo has quit (Read error: Connection reset by peer).
08:37:32 -!- Sgeo has joined.
08:41:14 <esolangs> [[PricK]] https://esolangs.org/w/index.php?diff=117541&oldid=115613 * Olus2000 * (-24) Corrected example definitions
08:41:18 -!- razetime has quit (Read error: Connection reset by peer).
08:45:44 <cpressey> int-e: They radically changed how their feed works.  It is now far more geared towards self-promotion and far less geared to finding out about interesting niche projects through the grapevine.  Or as one commentator put it, "It's turning into LinkedIn".
08:46:02 <cpressey> Which should be no surprise given that it's owned by the same entity that owns LinkedIn
08:46:19 <int-e> I see. I never used the feed, though its existence bothers me slightly because that's where I sometimes end up when I log in.
08:46:51 <int-e> (Usually I just have a link to an issue or a repo so I don't see it at all.)
08:47:26 <int-e> But eh, it's a good enough reason to switch in my book. I'm just too lazy.
08:49:05 -!- razetime has joined.
08:49:10 -!- razetime has quit (Remote host closed the connection).
08:51:08 <cpressey> Yeah, it's not just the feed change per se, it's also their attitude in making the change, and all the little annoying things that have been added in recent years.
08:51:34 <cpressey> When MSFT bought them I decided to not leave immediately, but to give them a chance.  Well, they've had their chance.
08:57:52 <Europe2048> Hi cpressey!
09:03:28 -!- sam has quit (Quit: leaving).
09:09:05 <cpressey> Hi Europe2048
09:09:41 <Europe2048> How are you?
09:10:20 <cpressey> Of course there's another dimension here: git is a distributed VCS, and insofar as my stuff is open-source I can't actually *stop* it showing up on GitHub.  But I can, like, stop linking to the instance of my stuff that's on there at least.
09:12:04 <cpressey> Europe2048: "I'm fine", how are you?
09:12:28 <Europe2048> Good!
09:16:57 <cpressey> I'm designing a language, or rather I'm implementing a language but changing a few things here and there, it's not an esolang, there are reasons that I'm doing this and I imagine they're good ones but who can say, really?
09:22:00 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117542&oldid=117540 * None1 * (+564) /* Commands */
09:26:13 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117543&oldid=117542 * None1 * (+203) /* Commands */ Add the (U+2212) command
09:30:40 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117544&oldid=117543 * None1 * (+261) /* Commands */ Add self-modifying command
09:31:03 <esolangs> [[BFInfinity]] M https://esolangs.org/w/index.php?diff=117545&oldid=117544 * None1 * (+28) /* See also */
09:43:17 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117546&oldid=117545 * None1 * (+33) /* Examples */
09:44:20 <esolangs> [[BFInfinity]] M https://esolangs.org/w/index.php?diff=117547&oldid=117546 * None1 * (+0) /* Commands */ minor mistake by others
09:52:06 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117548&oldid=117547 * None1 * (+159) /* Commands */
09:52:29 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117549&oldid=117548 * None1 * (+19) /* Examples */
09:53:24 <esolangs> [[BFInfinity]] M https://esolangs.org/w/index.php?diff=117550&oldid=117549 * None1 * (-2) /* Infinite loop */
09:54:57 <esolangs> [[BFInfinity]] M https://esolangs.org/w/index.php?diff=117551&oldid=117550 * None1 * (-17) /* Examples */
09:55:35 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117552&oldid=117551 * None1 * (-68) /* Commands */
10:00:57 <esolangs> [[Prime numbers generator]] https://esolangs.org/w/index.php?diff=117553&oldid=117312 * None1 * (+283)
10:01:16 <esolangs> [[Prime numbers generator]] M https://esolangs.org/w/index.php?diff=117554&oldid=117553 * None1 * (+2)
10:19:16 <esolangs> [[User:None1/ToDo]] https://esolangs.org/w/index.php?diff=117555&oldid=117373 * None1 * (+76) /* Content */
10:27:52 <esolangs> [[Brainfuck Powershell interpreter]] N https://esolangs.org/w/index.php?oldid=117556 * None1 * (+1571) Created page with ":{{Back|brainfuck}} {{lowercase}} The following is a Powershell implementation of [[brainfuck]] by [[User:None1]], the first line is the program, and the rest are the input. EOF returns 0. <pre> $code=Read-Host function getchar(){ return [Syst
10:28:46 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=117557&oldid=117524 * None1 * (+39) /* My Articles */
10:29:09 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=117558&oldid=117557 * None1 * (+13) /* My Implementations */
10:30:02 <esolangs> [[Brainfuck]] https://esolangs.org/w/index.php?diff=117559&oldid=117051 * None1 * (+105) /* Python interpreters */ Added Powershell interpreter
10:32:03 <esolangs> [[User:None1/ToDo]] M https://esolangs.org/w/index.php?diff=117560&oldid=117555 * None1 * (+1) /* Content */
10:38:22 -!- razetime has joined.
10:39:28 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117561&oldid=117552 * None1 * (+151) /* Commands */
10:39:40 <esolangs> [[BFInfinity]] M https://esolangs.org/w/index.php?diff=117562&oldid=117561 * None1 * (-3) /* Commands */
10:41:15 <esolangs> [[BFInfinity]] M https://esolangs.org/w/index.php?diff=117563&oldid=117562 * None1 * (-21) /* Implementations */ An empty section is unnecesaary
10:43:39 <Europe2048> Hi razetime!
10:45:46 <razetime> evening.
11:04:21 <esolangs> [[,()]] N https://esolangs.org/w/index.php?oldid=117564 * None1 * (+866) New langauge
11:04:51 <esolangs> [[,()]] M https://esolangs.org/w/index.php?diff=117565&oldid=117564 * None1 * (-2)
11:05:16 <esolangs> [[In-parens-comma]] N https://esolangs.org/w/index.php?oldid=117566 * None1 * (+17) Redirected page to [[(,)]]
11:05:33 <esolangs> [[Out-parens-comma]] N https://esolangs.org/w/index.php?oldid=117567 * None1 * (+17) Redirected page to [[,()]]
11:05:52 <esolangs> [[,()]] M https://esolangs.org/w/index.php?diff=117568&oldid=117565 * None1 * (+10) /* Commands */
11:06:09 <esolangs> [[,()]] M https://esolangs.org/w/index.php?diff=117569&oldid=117568 * None1 * (+36) /* Implementation */
11:08:09 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=117570&oldid=116838 * None1 * (+35) /* General languages */
11:08:24 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=117571&oldid=117558 * None1 * (+35) /* My Esolangs */
11:10:30 <APic> Hi *
11:11:59 <esolangs> [[Programming abillities of different esolangs]] https://esolangs.org/w/index.php?diff=117572&oldid=114850 * None1 * (+300) /* W */
11:23:28 -!- Sgeo has quit (Read error: Connection reset by peer).
11:40:22 <esolangs> [[Wsad]] https://esolangs.org/w/index.php?diff=117573&oldid=117530 * None1 * (+46) /* Examples */
11:43:33 <esolangs> [[Wsad]] https://esolangs.org/w/index.php?diff=117574&oldid=117573 * None1 * (+221)
11:43:55 <esolangs> [[Wsad]] M https://esolangs.org/w/index.php?diff=117575&oldid=117574 * None1 * (+0) /* Interpreter */ Change category
11:49:01 -!- razetime has quit (Ping timeout: 260 seconds).
11:50:39 -!- razetime has joined.
12:30:16 <Europe2048> Good afternoon in UTC+3, razetime!
12:30:57 <Europe2048> Can you give me some ideas for making yet another IPA esolang?
12:35:02 -!- Thelie has joined.
12:49:25 -!- arseniiv has joined.
13:24:12 -!- razetime has quit (Read error: Connection reset by peer).
14:06:36 -!- razetime has joined.
14:22:21 -!- razetime has quit (Read error: Connection reset by peer).
14:28:22 -!- raz3time has joined.
14:33:14 <Europe2048> Hi raz3time!
14:36:04 -!- raz3time has quit (Read error: Connection reset by peer).
14:42:31 -!- raz3time has joined.
14:42:39 -!- raz3time has quit (Client Quit).
14:42:56 -!- raz3time has joined.
15:06:36 <b_jonas> heck. I hope by "UTC+3" you meant Finland, not Israel
15:13:50 -!- raz3time has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
16:16:48 -!- __monty__ has joined.
16:19:32 <Europe2048> Hi __monty(mole)__!
16:22:21 -!- Beakbonk has joined.
16:31:30 -!- FreeFull has joined.
16:38:53 -!- Beakbonk has quit (Ping timeout: 245 seconds).
16:44:31 <esolangs> [[Number2D]] M https://esolangs.org/w/index.php?diff=117576&oldid=93278 * PythonshellDebugwindow * (+39) Category
16:57:50 <Europe2048> Hi humans!
16:58:03 <Europe2048> "heck. I hope by "UTC+3" you meant Finland, not Israel" I meant Ukraine.
16:58:22 <Europe2048> Also, I'm making an IPA esolang right now.
18:10:08 -!- Europe2048 has quit (Ping timeout: 245 seconds).
18:13:22 <esolangs> [[Special:Log/newusers]] create * Squib * New user account
18:14:02 <arseniiv> ŋ͜θʷː
18:15:01 -!- arseniiv has quit (Quit: gone too far).
18:28:24 -!- __monty__ has quit (Quit: leaving).
18:36:43 <zzo38> cpressey: What language are you implementing and what changing?
18:46:31 -!- cpressey has quit (Quit: Ping timeout (120 seconds)).
18:49:55 -!- Europe2048 has joined.
18:50:03 <Europe2048> Humans?
18:59:07 -!- cpressey has joined.
19:10:34 <esolangs> [[IPALang]] N https://esolangs.org/w/index.php?oldid=117577 * Europe2048 * (+6415) Initial release.
19:12:49 <esolangs> [[IPALang]] M https://esolangs.org/w/index.php?diff=117578&oldid=117577 * Europe2048 * (-416) Bug fixing.
19:24:43 -!- cpressey has quit (Ping timeout: 245 seconds).
19:25:09 -!- cpressey has joined.
19:27:56 <cpressey> zzo38: I'm making a language where the syntax is distinctly inspired by Scheme and the semantics is distinctly inspired by Scheme.  But it's not Scheme.  ...That's how I've decided to describe what I'm doing.
19:28:16 -!- cpressey has quit (Client Quit).
19:38:09 -!- rodgort has quit (Quit: Leaving).
19:38:56 -!- cpressey has joined.
19:39:50 <cpressey> It is intentionally missing a lot of things, including mutable cons cells, tail recursion, the numeric tower, vectors...
19:40:13 -!- FreeFull has quit.
19:44:51 -!- cpressey has quit (Quit: Ping timeout (120 seconds)).
19:46:50 <Europe2048> Hi cpressey, I made yet another International Phonetic Alphabet esolang.
19:48:08 -!- cpressey has joined.
19:48:43 <cpressey> Europe2048: yeah I see you called it IPALang
19:49:11 -!- Sgeo has joined.
19:56:51 <b_jonas> cpressey: funny, I already have a language whose syntax and semantics is distinctly inspired by Scheme but it's not Scheme
19:57:39 <cpressey> b_jonas: Did you implement it, and if so, in what language and was it a compiler or an interpreter?
20:00:58 -!- rodgort has joined.
20:07:38 <esolangs> [[IPALang]] M https://esolangs.org/w/index.php?diff=117579&oldid=117578 * Europe2048 * (-118) The NOP messages are all the same now.
20:07:38 -!- cpressey has quit (Ping timeout: 245 seconds).
20:09:16 <Europe2048> "Did you implement it, and if so, in what language and was it a compiler or an interpreter?" No one implemented it yet.
20:12:04 <b_jonas> cpressey: yes, see https://esolangs.org/wiki/Olvashat%C3%B3
20:15:29 <b_jonas> and you could say that the syntax is more similar to common lisp than scheme in that the head and the arguments of a function call has different syntax
20:57:00 <esolangs> [[User talk:Infinitehexagon]] N https://esolangs.org/w/index.php?oldid=117580 * Europe2048 * (+206) Created page with "== You got mail! == This is a turing-complete language, based on the International Phonetic Alphabet: [[IPALang]] --~~~~"
21:37:06 <esolangs> [[Brainbits]] N https://esolangs.org/w/index.php?oldid=117581 * Yb1 * (+859) My esolang, created a page
21:47:14 -!- sam has joined.
21:47:14 -!- sam has quit (Client Quit).
21:48:13 -!- Europe2048 has quit (Quit: Client closed).
21:50:28 <esolangs> [[User:Yb1]] https://esolangs.org/w/index.php?diff=117582&oldid=110561 * Yb1 * (+150)
22:27:00 -!- Thelie has quit (Remote host closed the connection).
22:44:57 <esolangs> [[Wsad]] M https://esolangs.org/w/index.php?diff=117583&oldid=117575 * None1 * (+44) /* Interpreter */
22:49:12 <esolangs> [[Wsad]] M https://esolangs.org/w/index.php?diff=117584&oldid=117583 * None1 * (+22) /* Interpreter */
23:31:57 <esolangs> [[Counting]] https://esolangs.org/w/index.php?diff=117585&oldid=117463 * Kaveh Yousefi * (+93) Amended the orthography, relocated the preamble into the newly introduced Concept, and subsumed all extant program into a dedicated examples section.
2023-10-08
00:50:00 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
00:52:03 -!- Lord_of_Life has joined.
04:27:07 -!- sprout has quit (Ping timeout: 260 seconds).
04:50:32 -!- sprout has joined.
04:55:00 -!- sprout has quit (Ping timeout: 240 seconds).
04:57:52 -!- sprout has joined.
04:59:51 -!- razetime has joined.
05:02:36 -!- sprout has quit (Ping timeout: 240 seconds).
05:03:00 -!- sprout has joined.
05:17:39 <zzo38> Is there such thing as zoned spreadsheet where the grid is split into named zones (which may have their own properties)? I think that it is better than problem with most spreadsheets when you try to deal with adding and deleting cells it is messy.
05:47:36 <esolangs> [[IPALang]] M https://esolangs.org/w/index.php?diff=117586&oldid=117579 * PythonshellDebugwindow * (+77) Categories
05:54:38 <esolangs> [[Arithmetic while]] M https://esolangs.org/w/index.php?diff=117587&oldid=45350 * PythonshellDebugwindow * (+50) Link, category
06:04:26 -!- razetime has quit (Ping timeout: 260 seconds).
06:09:41 -!- razetime has joined.
06:19:05 -!- razetime has quit (Ping timeout: 255 seconds).
06:20:15 -!- razetime has joined.
06:54:35 -!- razetime has quit (Ping timeout: 240 seconds).
07:02:39 -!- razetime has joined.
07:49:26 -!- cpressey has joined.
07:58:00 -!- Europe2048 has joined.
07:59:06 <esolangs> [[User:Europe2048]] M https://esolangs.org/w/index.php?diff=117588&oldid=117400 * Europe2048 * (+65)
07:59:25 <esolangs> [[User:Europe2048]] M https://esolangs.org/w/index.php?diff=117589&oldid=117588 * Europe2048 * (+1)
08:09:41 -!- Europe2048 has quit (Quit: Client closed).
08:29:17 <cpressey> b_jonas: Ah, yes, I think I remember reading the Olvashato article once before.  I'm also hoping to eventually compile to multiple targets.
08:40:49 <cpressey> I'm trying to keep the Scheme parts relatively close to Scheme, but compatible with the targets.
08:42:30 <cpressey> One thing I'm running up against is that the targets have module systems where Scheme has... what it has.
08:43:51 <cpressey> SRFIs remind me of Befunge-98 fingerprints a bit
08:45:43 -!- arseniiv has joined.
09:03:20 -!- razetime has quit (Ping timeout: 255 seconds).
09:28:09 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=117590&oldid=117563 * None1 * (+37) /* Commands */
09:28:44 <cpressey> One reason I mention it here, is because I'm planning to implement some esolangs in it when it's done.
09:28:54 <myname> there are 3d spreadsheet tools for the terminal, which do have some value, but i never got into those
09:39:29 -!- Sgeo has quit (Read error: Connection reset by peer).
09:40:31 -!- razetime has joined.
10:15:32 <esolangs> [[Brainbits]] https://esolangs.org/w/index.php?diff=117591&oldid=117581 * None1 * (+38) Add Truth Machine (probably correct)
10:16:08 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=117592&oldid=117591 * None1 * (+5) /* Truth Machine */
10:19:58 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=117593&oldid=117468 * None1 * (+39) /* Brace For Impact */ Add [[Brainbits]]
10:22:06 <esolangs> [[Hello world program in esoteric languages (N-Z)]] https://esolangs.org/w/index.php?diff=117594&oldid=117264 * None1 * (+227) /* WooYeah */ Add [[wsad]]
10:23:22 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=117595&oldid=117593 * None1 * (+28) /* Wierd Machine */
10:26:21 -!- arseniiv has quit (Ping timeout: 260 seconds).
10:33:12 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117596&oldid=117512 * None1 * (-24) /* Truth machine */ Modify external link to Esolang to an internal link
10:45:47 -!- cpressey has quit (Quit: Client closed).
10:48:51 <esolangs> [[IPALang]] M https://esolangs.org/w/index.php?diff=117597&oldid=117586 * Europe2048 * (+0)
10:51:20 -!- arseniiv has joined.
10:55:00 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=117598&oldid=117592 * None1 * (+3) /* Examples */
10:55:50 <esolangs> [[Truth-machine]] M https://esolangs.org/w/index.php?diff=117599&oldid=117595 * None1 * (+3) /* Brainbits */ Fix the program on this page, too
11:24:13 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117600&oldid=117527 * None1 * (+643)
11:25:27 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117601&oldid=117600 * None1 * (+148) /* Comments */
11:28:09 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117602&oldid=117601 * None1 * (+157)
11:35:33 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117603&oldid=117438 * GUAqwq * (+19) /* but only one line */
11:38:15 <esolangs> [[A+B Problem]] https://esolangs.org/w/index.php?diff=117604&oldid=116316 * None1 * (+252) /* Gofe */ Add Headache
11:38:22 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117605&oldid=117603 * GUAqwq * (+105) /* */
11:40:03 <esolangs> [[A+B Problem]] https://esolangs.org/w/index.php?diff=117606&oldid=117604 * None1 * (+257) /* Implementations */
11:42:38 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117607&oldid=117605 * GUAqwq * (+14) /* Recursion */
11:48:09 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117608&oldid=117607 * None1 * (+89) /* Recursion */
11:54:37 <esolangs> [[Esolang talk:Categorization]] https://esolangs.org/w/index.php?diff=117609&oldid=115909 * None1 * (+362) /* Is Category:Unimplemented really neccessarry? */ new section
12:01:32 -!- Thelie has joined.
12:04:46 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=117610&oldid=117608 * None1 * (+35) /* */
13:59:35 -!- Thelie has quit (Ping timeout: 240 seconds).
14:17:23 <esolangs> [[Special:Log/newusers]] create * Kwon-Young * New user account
14:23:57 -!- cpressey has joined.
14:29:01 -!- cpressey has quit (Quit: Ping timeout (120 seconds)).
14:36:29 -!- razetime has quit (Ping timeout: 258 seconds).
14:51:25 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117611&oldid=117538 * Kwon-Young * (+228)
15:14:52 <esolangs> [[Deadfish]] https://esolangs.org/w/index.php?diff=117612&oldid=117496 * Kwon-Young * (+926) prolog implementation of the deadfish interpreter
15:18:16 -!- razetime has joined.
15:58:19 -!- Thelie has joined.
16:26:07 -!- Thelie has quit (Ping timeout: 264 seconds).
16:29:46 <esolangs> [[NONE]] https://esolangs.org/w/index.php?diff=117613&oldid=117216 * Jaip * (+69)
16:30:07 <esolangs> [[NONE]] M https://esolangs.org/w/index.php?diff=117614&oldid=117613 * Jaip * (+0)
16:30:24 <esolangs> [[NONE]] https://esolangs.org/w/index.php?diff=117615&oldid=117614 * Jaip * (+1) /* Weblinks */
16:33:01 <esolangs> [[NONE]] https://esolangs.org/w/index.php?diff=117616&oldid=117615 * Jaip * (+64) /* Weblinks */
16:34:30 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
16:39:06 -!- Thelie has joined.
16:51:54 <esolangs> [[Do loop until failure or condition else]] M https://esolangs.org/w/index.php?diff=117617&oldid=45349 * PythonshellDebugwindow * (+24) Category
16:52:30 <esolangs> [[Do loop until failure]] M https://esolangs.org/w/index.php?diff=117618&oldid=71448 * PythonshellDebugwindow * (+24) Category
16:59:49 -!- cpressey has joined.
17:05:58 -!- cpressey has quit (Ping timeout: 245 seconds).
17:07:58 -!- arseniiv_ has joined.
17:12:07 -!- arseniiv has quit (Ping timeout: 258 seconds).
17:53:26 -!- Koen has joined.
18:03:33 -!- cpressey has joined.
18:39:34 -!- arseniiv_ has quit (Quit: gone too far).
18:42:59 -!- craigo has joined.
19:10:34 -!- tromp has quit (Read error: Connection reset by peer).
19:25:28 -!- Thelie has quit (Quit: Leaving.).
19:50:28 -!- Koen has quit (Quit: Leaving...).
20:29:47 -!- Sgeo has joined.
20:54:26 <esolangs> [[Lananang]] M https://esolangs.org/w/index.php?diff=117619&oldid=116654 * PythonshellDebugwindow * (+68) Categories
21:36:23 -!- craigo has quit (Quit: Leaving).
21:36:49 -!- craigo has joined.
21:49:18 <zzo38> I don't mean 3D. An example of how I mean is, if the zone grid has two rows named X and TX and two columns named Y and TY, then the zone grid contains four zones named X:Y, X:TY, TX:Y, and TX:TY. Let's say X has five data rows, TX has one data row, Y has six data columns, and TY has one data column. Then the zone X:Y has thirty data cells, X:TY has five data cells, etc.
21:50:54 <zzo38> And then, if the X:TY zone cell contains the calculation "SUM(:X)" then it will contain the totals of each row in the X:Y zone. (Data cells can also contain calculations, but if a zone cell does then the data cells are only by the zones.) (You would use this instead of "A1" and "R1C1" references.)
21:57:56 -!- craigo has quit (Ping timeout: 272 seconds).
23:08:12 <esolangs> [[Meow]] M https://esolangs.org/w/index.php?diff=117620&oldid=88002 * PythonshellDebugwindow * (+72) /* Factorial */ Categories
23:08:57 <esolangs> [[Do-if]] M https://esolangs.org/w/index.php?diff=117621&oldid=87785 * PythonshellDebugwindow * (+33) Stub, category
2023-10-09
00:40:58 -!- cpressey has quit (Ping timeout: 245 seconds).
00:50:51 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
00:50:58 -!- Lord_of_Life_ has joined.
00:52:19 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:16:42 <esolangs> [[EVM]] M https://esolangs.org/w/index.php?diff=117622&oldid=54045 * PythonshellDebugwindow * (+174) External resources, categories
02:17:18 <esolangs> [[EVM]] M https://esolangs.org/w/index.php?diff=117623&oldid=117622 * PythonshellDebugwindow * (+25) Category
02:22:31 <esolangs> [[Special:Log/newusers]] create * Baltdev * New user account
02:24:04 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=117624&oldid=117611 * Baltdev * (+171)
02:24:52 <esolangs> [[User:Baltdev]] N https://esolangs.org/w/index.php?oldid=117625 * Baltdev * (+74) Created page with "hi!!! [https://balt.sno.mba check out my wwebed siute :<nowiki>]</nowiki>]"
02:37:04 -!- Sgeo has quit (Read error: Connection reset by peer).
02:40:25 -!- Sgeo has joined.
03:00:00 -!- Taneb has quit (Quit: I seem to have stopped.).
03:01:13 -!- Taneb has joined.
03:02:03 <esolangs> [[Lasagna]] N https://esolangs.org/w/index.php?oldid=117626 * Baltdev * (+9940) Created page with "=== Note === This article is copied from the [https://github.com/balt-dev/Lasagna GitHub repository]. = Lasagna = Lasagna is an esoteric programming language defined by an unsized LIFO stack (hence the name, stack) of bytes, inspired by assembly languages. == Basic
03:02:34 <esolangs> [[Lasagna]] https://esolangs.org/w/index.php?diff=117627&oldid=117626 * Baltdev * (-168)
06:02:38 -!- Koen has joined.
06:07:06 -!- raz3time has joined.
06:12:24 <Sgeo> Apparently FTP over NCP supported non-8-bit-bytes
06:12:33 <Sgeo> Or at least that's my takeaway from " FTP:
06:12:33 <Sgeo> This is specified in RFC 765. It is very similar to the FTP
06:12:33 <Sgeo> used with the NCP. The primary differences are that in
06:12:33 <Sgeo> addition to the changes for Telnet, that the data channel is
06:12:33 <Sgeo> limited to 8-bit bytes so FTP features to use other
06:12:34 <Sgeo> transmission byte sizes are eliminated."
06:12:37 <Sgeo> https://www.ietf.org/rfc/rfc0801.txt
06:30:32 -!- tromp has joined.
07:23:18 -!- cpressey has joined.
07:28:50 <cpressey> Sgeo: I see that references RFC 765 -- I just looked at https://www.ietf.org/rfc/rfc0765.txt and it has a few interesting things to say about "byte size".  In one place it mentions "32-bit bytes".
07:29:40 <cpressey> "Byte" was once a more flexible concept than it is today.  This also explains the prevalence of the word "octet" in some RFCs.
07:31:22 <int-e> 9 bit bytes were popular for a while too
07:31:52 <int-e> The C standard has a concept of a smallest addressable unit (tied to the size of a char), do *they* call that a byte?
07:33:25 <cpressey> zzo38: I think I've seen a spreadsheet have a locked area of some kind inside it, so that e.g. deleting a row in that area only affected that area and not the rest of the spreadsheet.  I'm not sure if there could be more than one of these in the spreadsheet at any given time though.
07:35:15 <cpressey> And your idea seems to go beyond just that
07:39:26 <Sgeo> Is there an RFC for NCP FTP?
07:40:20 <Sgeo> https://www.w3.org/Protocols/rfc959/2_Overview.html
07:41:11 <Sgeo> I should sleep
07:56:39 -!- Sgeo has quit (Read error: Connection reset by peer).
08:03:06 -!- arseniiv has joined.
08:03:12 <river> how did they squeeze that extra bit in? must have been very tight
08:04:22 <int-e> well, computers were bigger then ;-)
08:04:35 <river> hehe
08:09:18 -!- Koen has quit (Remote host closed the connection).
08:15:58 <b_jonas> river: they configured their RAM and peripherials to not use error correction bits, and use those as extra value bits instead.
08:39:18 <esolangs> [[Talk:List of quines]] https://esolangs.org/w/index.php?diff=117628&oldid=87216 * PlaceReporter99 * (+92)
08:57:17 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117629&oldid=117610 * PlaceReporter99 * (+20)
09:01:56 <esolangs> [[List of quines]] https://esolangs.org/w/index.php?diff=117630&oldid=115435 * PlaceReporter99 * (+176) /* Prelude */
09:02:20 <esolangs> [[List of quines]] M https://esolangs.org/w/index.php?diff=117631&oldid=117630 * PlaceReporter99 * (+12) /* Python (Python 3) */
09:13:19 -!- __monty__ has joined.
09:20:22 -!- raz3time has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
09:56:22 -!- Koen has joined.
10:23:26 -!- Thelie has joined.
10:49:43 <APic> Moin
10:55:45 <esolangs> [[List of quines]] https://esolangs.org/w/index.php?diff=117632&oldid=117631 * None1 * (+143) /* Python (Python 3) */ Added a much simpler one
11:32:37 <cpressey> There are constants that aren't literals, but are there literals that aren't constants?
11:34:28 -!- craigo has joined.
11:38:12 <FireFly> what about strings with interpolation in languages that allow it?
11:53:26 <river> i think that you can redefine literals in python
11:53:28 <river> so 0 = 3
11:56:14 <__monty__> Only for the first 256(?) or so integers because those are cached somehow or something.
11:58:09 <int-e> [citation needed]
11:58:20 <esolangs> [[Esolang talk:Sandbox]] https://esolangs.org/w/index.php?diff=117633&oldid=109336 * PlaceReporter99 * (+143)
11:58:44 <int-e> (I imagine it's not an assignment but some direct poking into memory instead)
11:59:52 <cpressey> You used to (in Python 2.x) be able to assign a different value to the boolean constants True and False
12:00:46 <FireFly> my brain parsed "assignment" there as in a task/exercise
12:01:09 <FireFly> which I mean, "find a way to redefine integer literals in python" might make a fun one
12:01:11 <cpressey> For a non-constant literal I was thinking something like NOW as in "start_time = NOW;"
12:01:26 <FireFly> __LINENO__? :p
12:01:29 <FireFly> (ok it
12:01:32 <FireFly> 's a macro)
12:01:55 <FireFly> (it's also __LINE__, but anyway)
12:03:24 <cpressey> "It's a macro" versus "it's a literal" is largely a matter of narrative... I think I'm going to consider __LINE__ the current reigning champion for this category
12:04:02 <esolangs> [[Talk:Palindrome]] https://esolangs.org/w/index.php?diff=117634&oldid=20090 * None1 * (+112)
12:04:49 <FireFly> I think "foo ${bar}" is the most "syntactic literal but its value is dynamic" in my book
12:08:03 -!- tromp has quit (Read error: Connection reset by peer).
12:10:56 <esolangs> [[Talk:BF+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]] https://esolangs.org/w/index.php?diff=117635&oldid=113591 * None1 * (+182) /* palindrome */ new section
12:36:51 <esolangs> [[Lasagna]] M https://esolangs.org/w/index.php?diff=117636&oldid=117627 * None1 * (+23)
13:27:13 -!- cpressey has quit (Ping timeout: 245 seconds).
13:34:54 -!- cpressey has joined.
14:16:25 -!- Koen has quit (Remote host closed the connection).
14:16:46 -!- Koen has joined.
14:28:09 -!- Thelie has quit (Remote host closed the connection).
14:56:48 <esolangs> [[Brainappend]] N https://esolangs.org/w/index.php?oldid=117637 * Joaozin003 * (+979) Created page with "'''Brainappend''' is a [[brainfuck]] derivative by [[User:Joaozin003]], partly inspired by [[Vague]] where the braces (<code>[</code> and <code>]</code>) append their contents to the source code (including themselves). This makes looping much more difficult. == I
16:05:08 -!- cpressey has quit (Quit: Client closed).
16:32:44 -!- Thelie has joined.
16:37:12 -!- SGautam has joined.
16:37:45 -!- b_jonas has quit (Read error: Connection reset by peer).
16:45:28 <zzo38> cpressey: The way I had meant though, is that, in my example, you can delete a data row from the zone row X, in which case the zone cells X:Y and X:TY now have one less data row, without leaving any gap, and likewise you can add new rows, and this won't damage any calculations. A calculation that refers to the number of rows in a zone will still work.
16:46:39 -!- b_jonas has joined.
16:46:48 <zzo38> And, data cells only contain data (but may also contain calculations, although usually calculations would be put in zone cells instead); other properties (formatting, validation, view mode, etc) would be properties of the zone grid and not of data cells.
16:51:19 <esolangs> [[Special:Log/newusers]] create * KeyScrew159 * New user account
17:00:21 <esolangs> [[Lasagna]] M https://esolangs.org/w/index.php?diff=117638&oldid=117636 * PythonshellDebugwindow * (+25) /* Instructions */ category
17:02:41 <esolangs> [[Woefully]] M https://esolangs.org/w/index.php?diff=117639&oldid=52044 * PythonshellDebugwindow * (+49) Categories
17:22:52 -!- Koen has quit (Remote host closed the connection).
18:27:08 -!- arseniiv has quit (Quit: gone too far).
18:59:45 <esolangs> [[Xt]] N https://esolangs.org/w/index.php?oldid=117640 * Rehydratedmango * (+1635) create
19:00:50 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=117641&oldid=117522 * Rehydratedmango * (+9) xt
19:05:18 -!- cpressey has joined.
19:16:01 -!- cpressey has quit (Quit: Client closed).
19:40:00 -!- cpressey has joined.
19:55:22 <esolangs> [[Brainappend]] https://esolangs.org/w/index.php?diff=117642&oldid=117637 * Joaozin003 * (+39) added categories
19:56:39 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117643&oldid=117641 * Joaozin003 * (+18) added brainappend
20:02:35 <esolangs> [[User:Joaozin003]] https://esolangs.org/w/index.php?diff=117644&oldid=112645 * Joaozin003 * (+47) added brainappend
20:10:21 <esolangs> [[PTL]] https://esolangs.org/w/index.php?diff=117645&oldid=110710 * Joaozin003 * (+19) examples section
20:13:05 <esolangs> [[Talk:List of ideas]] https://esolangs.org/w/index.php?diff=117646&oldid=110329 * Aadenboy * (+126)
20:21:41 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=117647&oldid=99703 * Aadenboy * (+334) j
20:22:02 <esolangs> [[User:Aadenboy]] M https://esolangs.org/w/index.php?diff=117648&oldid=117647 * Aadenboy * (+16) formatting fail
20:22:16 <esolangs> [[User:Aadenboy]] M https://esolangs.org/w/index.php?diff=117649&oldid=117648 * Aadenboy * (+4) formatting fail TWO!
20:23:47 <esolangs> [[Brainappend]] M https://esolangs.org/w/index.php?diff=117650&oldid=117642 * PythonshellDebugwindow * (+45) Categories
20:25:25 <esolangs> [[Xt]] M https://esolangs.org/w/index.php?diff=117651&oldid=117640 * PythonshellDebugwindow * (+120) See also, categories
20:27:19 <esolangs> [[PLAWIHA]] M https://esolangs.org/w/index.php?diff=117652&oldid=101532 * PythonshellDebugwindow * (+24) Category
20:30:15 -!- Koen has joined.
20:48:30 -!- __monty__ has quit (Ping timeout: 258 seconds).
21:04:41 -!- craigo has quit (Remote host closed the connection).
21:16:38 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117653&oldid=117643 * Melvin * (+14) /* J */
21:16:40 -!- SGautam has quit (Quit: Connection closed for inactivity).
21:35:29 <esolangs> [[Jottary]] N https://esolangs.org/w/index.php?oldid=117654 * Melvin * (+1503) Implemented Jottary
21:37:31 <esolangs> [[Jottary]] https://esolangs.org/w/index.php?diff=117655&oldid=117654 * Melvin * (+4) /* Converting Jot to Jottary */
21:39:31 <esolangs> [[Jottary]] M https://esolangs.org/w/index.php?diff=117656&oldid=117655 * Melvin * (+3)
21:42:42 <esolangs> [[Jot]] https://esolangs.org/w/index.php?diff=117657&oldid=87473 * Melvin * (+37) /* Related languages */
21:46:32 <esolangs> [[Jottary]] M https://esolangs.org/w/index.php?diff=117658&oldid=117656 * Melvin * (+4) 's
22:03:48 <esolangs> [[Pairpointing]] https://esolangs.org/w/index.php?diff=117659&oldid=117285 * Fazaazafg * (+164) /* Pairs */
22:09:38 <esolangs> [[Pairpointing]] https://esolangs.org/w/index.php?diff=117660&oldid=117659 * Fazaazafg * (+170) /* Examples */
22:09:55 <esolangs> [[Pairpointing]] https://esolangs.org/w/index.php?diff=117661&oldid=117660 * Fazaazafg * (+2) /* Examples */
22:10:12 <esolangs> [[Pairpointing]] https://esolangs.org/w/index.php?diff=117662&oldid=117661 * Fazaazafg * (-1) /* Examples */
22:10:50 -!- Thelie has quit (Remote host closed the connection).
22:26:09 -!- Koen has quit (Quit: Leaving...).
22:28:31 -!- Sgeo has joined.
23:07:25 <esolangs> [[User talk:Aadenboy]] M https://esolangs.org/w/index.php?diff=117663&oldid=107971 * Aadenboy * (+97)
23:07:41 <esolangs> [[User talk:Aadenboy]] M https://esolangs.org/w/index.php?diff=117664&oldid=117663 * Aadenboy * (+1) formatting fail
23:10:49 <esolangs> [[Jottary]] https://esolangs.org/w/index.php?diff=117665&oldid=117658 * Melvin * (+8)
23:58:49 <esolangs> [[Special:Log/newusers]] create * Sam137 * New user account
2023-10-10
00:06:16 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117666&oldid=117624 * Sam137 * (+109)
00:08:10 <esolangs> [[User talk:Sam137]] N https://esolangs.org/w/index.php?oldid=117667 * Sam137 * (+11) Created page with "Talk pages?"
00:17:46 <esolangs> [[User:Sam137]] N https://esolangs.org/w/index.php?oldid=117668 * Sam137 * (+15) Created page with "== User Page =="
00:37:40 -!- cpressey has quit (Quit: Client closed).
00:50:23 -!- joast has quit (Ping timeout: 258 seconds).
00:51:37 -!- Lord_of_Life_ has joined.
00:51:48 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
00:52:56 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
00:53:57 -!- sprout_ has joined.
00:54:04 -!- sprout has quit (Ping timeout: 248 seconds).
01:05:25 -!- joast has joined.
03:25:12 -!- MrAureliusR has quit (Quit: ZNC - https://znc.in).
03:26:28 -!- MrAureliusR has joined.
03:48:43 -!- ^[ has quit (Quit: ^[).
03:59:48 -!- ^[ has joined.
04:36:44 -!- chiselfuse has quit (Remote host closed the connection).
04:36:57 -!- chiselfuse has joined.
05:47:30 <esolangs> [[Ix]] M https://esolangs.org/w/index.php?diff=117669&oldid=102806 * PythonshellDebugwindow * (+75) Categories
05:52:51 -!- __monty__ has joined.
07:09:25 -!- Europe2048 has joined.
07:09:26 -!- cpressey has joined.
07:09:32 <Europe2048> Hi everyone!
07:09:45 <Europe2048> Looks like cpressey joined right after me.
07:11:03 <cpressey> Hi Europe2048
07:11:52 <Europe2048> I know it is possible to make a 99 bottles of beer program in IPALang!
07:21:32 <cpressey> I'm writing a wrapper script in Bourne shell and I am struck by the fact that $* throws away quoting
07:22:21 <cpressey> I remember looking this up a while ago and not finding a good answer to how to retain the quoting
07:24:40 <Europe2048> What's a wrapper script? What's a Bourne shell?
07:25:09 -!- Koen has joined.
07:33:22 <b_jonas> cpressey: it's "$@"
07:34:13 <b_jonas> with the quotes
07:39:34 <cpressey> b_jonas: Thank you!  That's so much nicer than the hack I was using that looked like something out of an MS-DOS batchfile
07:40:35 <b_jonas> for reference, on modern Windows it's %* instead
07:45:14 -!- Sgeo has quit (Read error: Connection reset by peer).
08:14:21 <FireFly> the special behaviour of "$@" is such a weird one
08:15:08 <FireFly> very convenient to use all the time, but also one that confused me greatly and I still don't know the precise rules I think (is it only an exact $@ inside double-quotes that expands to multiple quoted arguments?
08:16:35 -!- Europe2048 has quit (Quit: Client closed).
08:27:25 <esolangs> [[Jottary]] M https://esolangs.org/w/index.php?diff=117670&oldid=117665 * Melvin * (+43) Unicode -> Tag sub/sup
08:33:03 -!- __monty__ has quit (Ping timeout: 240 seconds).
08:34:52 <fizzie> No, I believe for example "foo$@bar" does expand into the equivalent of "foofirst argument" "second argument" "last argumentbar". Not that I can think of a likely use case for that.
08:37:25 <fizzie> `` f() { echo "[$1] [$2] [$3]"; }; g() { f "foo$@bar"; }; g "first argument" "second argument" "last argument" # just checking
08:37:26 <HackEso> ​[foofirst argument] [second argument] [last argumentbar]
08:37:30 -!- arseniiv has joined.
08:41:58 <fizzie> Also, quoted $* (but not $@) uses IFS.
08:42:12 <fizzie> `` f() { IFS=":"; echo $*; echo "$*"; }; f foo bar baz # like so
08:42:13 <HackEso> foo bar baz \ foo:bar:baz
08:43:04 <int-e> `"
08:43:05 <HackEso> 1/1:1274) <Ken M> If we don't study the mistakes of the future we're doomed to repeat them for the first time :( \ 217) <oerjan> <Gregor> oerjan: Tell us what (a(b{c}d)*2e)%2 expands to <-- ababcdbcdedbabcdbcdede, i think <Gregor> oerjan: What - the - fuck
08:43:11 <int-e> (speaking of quotes)
08:44:17 <int-e> is 217 a bfjoust question?
09:00:08 -!- cpressey has quit (Ping timeout: 245 seconds).
09:01:56 -!- cpressey has joined.
09:02:57 <fizzie> Must be.
09:06:23 -!- cpressey has quit (Ping timeout: 245 seconds).
09:09:44 <int-e> ah fungot is dead as usual
09:16:18 -!- cpressey has joined.
09:24:29 -!- wib_jonas has joined.
09:26:09 <wib_jonas> ``` m=(black red yellow gray); printf "<%s> " "start${m[@]}end"
09:26:11 <HackEso> ​<startblack> <red> <yellow> <grayend>
09:40:58 -!- cpressey has quit (Ping timeout: 245 seconds).
10:19:59 -!- sprout_ has changed nick to sprout.
10:25:47 -!- wib_jonas has quit (Quit: Client closed).
10:42:12 -!- cpressey has joined.
10:58:45 <esolangs> [[Jottary]] https://esolangs.org/w/index.php?diff=117671&oldid=117670 * Melvin * (+58) Added categories
11:08:53 <esolangs> [[User:Rehydratedmango]] M https://esolangs.org/w/index.php?diff=117672&oldid=107226 * Rehydratedmango * (+8)
12:43:31 <esolangs> [[Xt]] https://esolangs.org/w/index.php?diff=117673&oldid=117651 * Rehydratedmango * (+474) cleaning up my mistakes, fixed some grammar and added comp. class section
12:47:53 -!- Europe2048 has joined.
12:59:01 -!- Europe2048 has quit (Quit: Client closed).
13:04:20 -!- Europe2048 has joined.
13:04:24 <Europe2048> Hi!
13:50:32 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117674&oldid=117629 * Rehydratedmango * (+121)
13:53:03 <esolangs> [[Fish Code]] M https://esolangs.org/w/index.php?diff=117675&oldid=115187 * None1 * (+25) /* Turing completeness */ Add stack-based category
14:26:55 -!- craigo has joined.
14:28:35 -!- wib_jonas has joined.
14:29:13 <wib_jonas> `olist 1289
14:29:15 <HackEso> olist <https://www.giantitp.com/comics/oots1289.html>: shachaf oerjan Sgeo FireFly boily nortti b_jonas
14:29:22 -!- FreeFull has joined.
14:39:11 -!- Koen has quit (Remote host closed the connection).
15:01:14 -!- Koen has joined.
15:27:45 <esolangs> [[D]] M https://esolangs.org/w/index.php?diff=117676&oldid=52238 * PythonshellDebugwindow * (+24) Category
15:59:25 <esolangs> [[Monolog]] M https://esolangs.org/w/index.php?diff=117677&oldid=67858 * PythonshellDebugwindow * (+49) Categories
16:04:56 <esolangs> [[Codesine/implementation]] M https://esolangs.org/w/index.php?diff=117678&oldid=66256 * PythonshellDebugwindow * (+19) Back
16:07:50 -!- Europe2048 has quit (Quit: Client closed).
16:10:12 -!- wib_jonas has quit (Quit: Client closed).
16:10:50 <esolangs> [[HeacunQ9+]] M https://esolangs.org/w/index.php?diff=117679&oldid=95463 * PythonshellDebugwindow * (+37) Category
16:15:06 <esolangs> [[User:Joaozin003]] https://esolangs.org/w/index.php?diff=117680&oldid=117644 * Joaozin003 * (+94) /* Other Links */
16:41:47 -!- cpressey has quit (Quit: Client closed).
17:04:43 <esolangs> [[User:Joaozin003]] https://esolangs.org/w/index.php?diff=117681&oldid=117680 * Joaozin003 * (+0) proper casing
17:05:02 <esolangs> [[Brainappend]] https://esolangs.org/w/index.php?diff=117682&oldid=117650 * Joaozin003 * (+15) proper casing
17:05:09 <esolangs> [[Brainappend]] https://esolangs.org/w/index.php?diff=117683&oldid=117682 * Joaozin003 * (-1)
17:40:06 -!- tromp has joined.
17:43:02 <esolangs> [[User:Rehydratedmango]] https://esolangs.org/w/index.php?diff=117684&oldid=117672 * Rehydratedmango * (+14)
17:55:07 -!- Europe2048 has joined.
17:55:27 <Europe2048> Anyone?
18:03:27 <esolangs> [[List of ideas]] M https://esolangs.org/w/index.php?diff=117685&oldid=117337 * Rehydratedmango * (+159)
18:32:00 -!- Europe2048 has quit (Quit: Client closed).
18:45:04 -!- cpressey has joined.
18:47:12 -!- FreeFull has quit.
19:14:44 -!- arseniiv has quit (Quit: gone too far).
19:56:30 -!- Europe2048 has joined.
20:05:27 <Europe2048> Anyone?
20:05:43 <river> `relcome Europe2048
20:05:46 <HackEso> Europe2048: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <https://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
20:06:15 <Europe2048> `reclome river
20:06:16 <HackEso> reclome? No such file or directory
20:06:32 <Europe2048> `welcome river
20:06:34 <HackEso> river: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <https://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
20:07:10 <river> thank you
20:07:12 <Europe2048> Anyways, hi River!
20:17:38 -!- Koen has quit (Remote host closed the connection).
20:49:00 <Europe2048> Anyone?
20:49:03 <Europe2048> Anyone?
20:55:37 <esolangs> [[User:Joaozin003]] https://esolangs.org/w/index.php?diff=117686&oldid=117681 * Joaozin003 * (+0) alphabetical order
21:13:27 -!- Wryl-o-the-wisp has quit.
21:20:44 -!- Europe2048 has quit (Quit: Client closed).
21:39:54 -!- cpressey has quit (Quit: Client closed).
21:50:25 <esolangs> [[NOPQRST]] N https://esolangs.org/w/index.php?oldid=117687 * LEOMOK * (+1434) Created page with "NOPQRST is a programming language designed to do nothing. It is a push-down automaton. == Instructions == NOPQRST operates on an unbounded stack of values. As the name of the programming language says, NOPQRST only uses the letters N, O, P, Q, R, S and T. There are
22:02:04 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:33:52 <esolangs> [[IPALang]] https://esolangs.org/w/index.php?diff=117688&oldid=117597 * Infinitehexagon * (+49)
22:45:32 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=117689&oldid=117484 * Infinitehexagon * (+37)
22:47:56 <esolangs> [[SDOTOS]] https://esolangs.org/w/index.php?diff=117690&oldid=116103 * Infinitehexagon * (-40)
22:55:22 -!- Sgeo has joined.
22:58:49 <esolangs> [[X strike]] N https://esolangs.org/w/index.php?oldid=117691 * Infinitehexagon * (+427) Created page with "'''X strike''' is an esolang created by [[User:Infinitehexagon]]. It has 4 commands and a keyword. ==Commands== {| class="wikitable" |- ! Command !! Description |- | X! || increment the cell under the memory pointer by 1 and shift the memory pointer right |- |
22:59:40 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117692&oldid=117691 * Infinitehexagon * (+39)
23:00:05 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117693&oldid=117692 * Infinitehexagon * (+14)
23:00:17 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117694&oldid=117693 * Infinitehexagon * (+9)
23:00:27 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117695&oldid=117694 * Infinitehexagon * (+0)
23:03:08 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117696&oldid=117695 * Infinitehexagon * (+6)
23:08:30 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117697&oldid=117696 * Infinitehexagon * (+108)
23:15:07 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117698&oldid=117697 * Infinitehexagon * (-21)
23:23:50 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117699&oldid=117698 * Infinitehexagon * (+149)
23:26:22 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117700&oldid=117699 * Infinitehexagon * (+37)
23:31:19 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117701&oldid=117700 * Infinitehexagon * (+18)
23:36:15 -!- sprout has quit (Ping timeout: 240 seconds).
23:56:00 -!- craigo has quit (Quit: Leaving).
2023-10-11
00:40:57 -!- sprout has joined.
00:51:35 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
00:52:39 -!- Lord_of_Life has joined.
01:28:05 -!- Wryl-o-the-wisp has joined.
01:54:24 <esolangs> [[Special:Log/newusers]] create * Gus-caribe * New user account
02:01:38 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117702&oldid=117666 * Gus-caribe * (+178) /* Introductions */
02:03:09 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117703&oldid=117702 * Gus-caribe * (+11) /* Introductions */
02:26:53 -!- Melvar has quit (Ping timeout: 255 seconds).
02:29:59 <esolangs> [[Special:Log/newusers]] create * Notaprotago * New user account
02:50:52 -!- Melvar has joined.
03:11:31 -!- __monty__ has joined.
03:15:48 -!- __monty__ has quit (Ping timeout: 240 seconds).
03:59:08 -!- sprout has quit (Ping timeout: 248 seconds).
04:38:46 <esolangs> [[Multi-Set Manipulator/Smaller]] M https://esolangs.org/w/index.php?diff=117704&oldid=68245 * PythonshellDebugwindow * (+43) See also
04:39:34 <esolangs> [[Multi-Set Manipulator]] M https://esolangs.org/w/index.php?diff=117705&oldid=75883 * PythonshellDebugwindow * (+50) See also
04:51:46 <esolangs> [[LMCode]] M https://esolangs.org/w/index.php?diff=117706&oldid=58127 * PythonshellDebugwindow * (+96) Categories
05:01:42 -!- __monty__ has joined.
06:11:34 -!- tromp has joined.
07:16:26 <esolangs> [[Special:Log/newusers]] create * Peter01 * New user account
07:19:01 -!- Europe2048 has joined.
07:19:40 <Europe2048> Hi everyone!
07:24:04 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117707&oldid=117703 * Peter01 * (+118) /* Introductions */
07:24:22 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=117708&oldid=117653 * Peter01 * (-20) /* H */ Remove unnecessary boldness and extra empty lines
07:29:08 -!- b_jonas has quit (Quit: leaving).
07:38:23 <esolangs> [[User:Peter01]] N https://esolangs.org/w/index.php?oldid=117709 * Peter01 * (+22) Created page with "Totally not a spambot."
07:40:50 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
07:56:14 -!- tromp has joined.
08:01:17 -!- Europe2048 has quit (Quit: Client closed).
08:33:26 -!- cpressey has joined.
08:38:43 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:49:15 <esolangs> [[]] https://esolangs.org/w/index.php?diff=117710&oldid=115861 * PlaceReporter99 * (+10)
08:53:01 <esolangs> [[User talk:Peter01]] N https://esolangs.org/w/index.php?oldid=117711 * PlaceReporter99 * (+150) Created page with "Yes I know youre not a spambot. ~~~~"
08:55:05 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117712&oldid=117708 * PlaceReporter99 * (+20) Not your language, not your job.
09:02:41 -!- Sgeo has quit (Read error: Connection reset by peer).
09:05:54 -!- tromp has joined.
09:13:24 -!- sam__ has joined.
09:13:47 -!- sam__ has changed nick to Guest219.
09:31:01 -!- arseniiv has joined.
09:40:53 <esolangs> [[Talk:Brainfuck]] https://esolangs.org/w/index.php?diff=117713&oldid=114938 * GUAqwq * (+149)
09:46:53 -!- Koen has joined.
09:47:16 -!- Koen_ has joined.
09:49:46 -!- sprout has joined.
09:51:27 -!- Koen has quit (Ping timeout: 258 seconds).
10:09:46 <cpressey> One sure sign of novice programmers is that they have a hard time seeing that boolean expressions evaluate to booleans so they write code like "if a and b and c then return true else return false"
10:10:35 <cpressey> But then, in languages with truthiness, if you look at that code you can't be too sure it wasn't an experienced programmer ensuring the type is Actually A Boolean to meet some obscure requirement somewhere else in the code
10:12:28 -!- __monty__ has quit (Ping timeout: 248 seconds).
10:19:34 -!- wib_jonas has joined.
10:20:56 -!- __monty__ has joined.
10:24:50 <wib_jonas> cpressey: yes, I see that sometimes. I take it as a sign of a non-programmer who writes programs, rather than novice programmers, but maybe I'm wrong. funnily there are some programming languages that actually push you to this. Notably Olvashato gives a warning if you try to store a boolean in a variable or a function parameter or function return
10:24:50 <wib_jonas> value. I believe it still compiles the code correctly, but the prolog code gets ugly because it always reifies the boolean to a term even in cases when a function returns a boolean, in which case you could normally represent the return value as success or failure.
10:26:56 -!- __monty__ has quit (Ping timeout: 272 seconds).
10:32:14 <wib_jonas> the other notable language that does this is SQL: as far as I understand, tables (or views) can't have boolean columns, so you'll always have a comparison in a where expression
10:48:51 -!- cpressey has quit (Quit: Client closed).
10:54:30 -!- cpressey has joined.
11:14:47 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
11:18:35 -!- __monty__ has joined.
11:36:31 -!- sprout has quit (Ping timeout: 260 seconds).
11:38:19 <esolangs> [[M?!]] M https://esolangs.org/w/index.php?diff=117714&oldid=89540 * PythonshellDebugwindow * (+23) Category
12:10:14 -!- Thelie has joined.
12:14:26 -!- wib_jonas has quit (Quit: Client closed).
12:15:58 <esolangs> [[Brainappend]] https://esolangs.org/w/index.php?diff=117715&oldid=117683 * Joaozin003 * (+4) better description
13:27:42 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117716&oldid=117701 * Infinitehexagon * (+182)
13:30:46 <esolangs> [[TXt]] N https://esolangs.org/w/index.php?oldid=117717 * Rehydratedmango * (+1212) Created page with "{{lowercase}} tXt is every [[brainf**k]] derivative, on account of it being a derivative of [[Xt]]. == Syntax == A tXt source code file (.txt) is structured similarly to Xt, with a set of [[TrivialBrainfuckSubstitution]]s defined by a set of eight characters: ><+-
13:34:39 <esolangs> [[Talk:Brainfuck]] https://esolangs.org/w/index.php?diff=117718&oldid=117713 * None1 * (+182) /* Is there any compilers/interpreters for useful luaguages made by brainfuck? */
13:35:00 <esolangs> [[User:Rehydratedmango]] https://esolangs.org/w/index.php?diff=117719&oldid=117684 * Rehydratedmango * (+12)
13:36:54 -!- cpressey has quit (Quit: Client closed).
13:44:26 -!- Europe2048 has joined.
13:44:55 <Europe2048> Anyone?
13:49:40 -!- __monty__ has quit (Ping timeout: 255 seconds).
13:51:05 -!- __monty__ has joined.
14:03:41 <Europe2048> Hi __monty__!
14:03:50 <Europe2048> `eelcome __monty__
14:03:52 <HackEso> eelcome? No such file or directory
14:04:11 <Europe2048> `relcome __monty__
14:04:14 <HackEso> __monty__: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <https://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
14:07:22 <arseniiv> @tell cpressey if a == true ...
14:07:22 <lambdabot> Consider it noted.
14:12:00 <Europe2048> @tell lambdabot test
14:12:00 <lambdabot> Nice try ;)
14:12:19 <Europe2048> @tell HackEso test
14:12:19 <lambdabot> Consider it noted.
14:12:25 <Europe2048> ?!
14:12:25 <lambdabot> Maybe you meant: v @ ? .
14:12:39 <Europe2048> @help
14:12:40 <lambdabot> help <command>. Ask for help for <command>. Try 'list' for all commands
14:12:46 <Europe2048> @list
14:12:46 <lambdabot> What module? Try @listmodules for some ideas.
14:12:50 <Europe2048> @listmodules
14:12:50 <lambdabot> activity base bf check compose dice dict djinn dummy elite eval filter free fresh haddock help hoogle instances irc karma localtime metar more oeis offlineRC pl pointful poll pretty quote search
14:12:50 <lambdabot> seen slap source spell system tell ticker todo topic type undo unlambda unmtl version where
14:12:59 <Europe2048> list
14:13:16 <Europe2048> @list commands
14:13:16 <lambdabot> No module "commands" loaded
14:13:44 <Europe2048> 'list'
14:13:52 <Europe2048> @list
14:13:52 <lambdabot> What module? Try @listmodules for some ideas.
14:13:56 <Europe2048> @list command
14:13:56 <lambdabot> No module "command" loaded
14:13:59 <Europe2048> @list cmd
14:13:59 <lambdabot> No module "cmd" loaded
14:14:02 <Europe2048> @listmodules
14:14:02 <lambdabot> activity base bf check compose dice dict djinn dummy elite eval filter free fresh haddock help hoogle instances irc karma localtime metar more oeis offlineRC pl pointful poll pretty quote search
14:14:02 <lambdabot> seen slap source spell system tell ticker todo topic type undo unlambda unmtl version where
14:14:11 <Europe2048> @list bf
14:14:11 <lambdabot> bf provides: bf
14:14:20 <Europe2048> @list activity
14:14:20 <lambdabot> activity provides: activity
14:14:40 <Europe2048> @list help
14:14:40 <lambdabot> help provides: help
14:26:20 -!- sprout has joined.
14:32:34 -!- Europe2048 has quit (Quit: Client closed).
14:48:43 <esolangs> [[Hebe Script]] M https://esolangs.org/w/index.php?diff=117720&oldid=25115 * PythonshellDebugwindow * (-7) Stub, formatting
14:52:56 <esolangs> [[Idego]] M https://esolangs.org/w/index.php?diff=117721&oldid=97528 * PythonshellDebugwindow * (+49) Categories
14:55:14 -!- Franciman has joined.
14:58:54 -!- cpressey has joined.
15:22:37 <esolangs> [[Special:Log/newusers]] create * EvyLah * New user account
15:32:12 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=117722&oldid=117689 * Infinitehexagon * (+21) /* My Esolangs (chronological order) */
15:33:39 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117723&oldid=117716 * Infinitehexagon * (+40)
15:33:54 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117724&oldid=117723 * Infinitehexagon * (+6)
15:34:38 -!- sprout_ has joined.
15:36:05 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117725&oldid=117724 * Infinitehexagon * (+58)
15:36:14 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117726&oldid=117725 * Infinitehexagon * (+6) /* User:XKCD Random Number */
15:37:32 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117727&oldid=117726 * Infinitehexagon * (-5) /* User:XKCD Random Number */
15:37:48 -!- sprout has quit (Ping timeout: 240 seconds).
15:37:52 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117728&oldid=117727 * Infinitehexagon * (+24) /* XKCD Random Number */
15:39:17 <esolangs> [[SDOTOS]] https://esolangs.org/w/index.php?diff=117729&oldid=117690 * Infinitehexagon * (+20)
15:39:27 <esolangs> [[SDOTOS]] https://esolangs.org/w/index.php?diff=117730&oldid=117729 * Infinitehexagon * (-2) /* blank / null character */
15:39:39 <esolangs> [[SDOTOS]] https://esolangs.org/w/index.php?diff=117731&oldid=117730 * Infinitehexagon * (-1) /* blank / null character */
15:42:17 <esolangs> [[SDOTOS]] https://esolangs.org/w/index.php?diff=117732&oldid=117731 * Infinitehexagon * (+0) /* 99 bottles of beer / 99 bottles of beer on the wall */
15:45:25 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117733&oldid=117728 * Infinitehexagon * (+10) /* Cat program */
15:48:21 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117734&oldid=117733 * Infinitehexagon * (+54)
16:03:05 <esolangs> [[EsoLogic]] M https://esolangs.org/w/index.php?diff=117735&oldid=45446 * PythonshellDebugwindow * (+23) Category
16:07:55 <esolangs> [[TRANSCRIPT]] M https://esolangs.org/w/index.php?diff=117736&oldid=30814 * PythonshellDebugwindow * (+28) Category
16:15:59 <esolangs> [[Special:Log/newusers]] create * PaxtonPenguin * New user account
16:22:06 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117737&oldid=117707 * PaxtonPenguin * (+29)
16:22:55 -!- Guest219 has quit (Quit: leaving).
16:23:53 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117738&oldid=117737 * PaxtonPenguin * (+100)
16:27:14 <esolangs> [[User:PaxtonPenguin]] N https://esolangs.org/w/index.php?oldid=117739 * PaxtonPenguin * (+63) Created page with "Hi, Visit my site [http://PaxtonPenguin.com Click Here to Win!]"
16:28:01 <esolangs> [[User talk:PaxtonPenguin]] N https://esolangs.org/w/index.php?oldid=117740 * PaxtonPenguin * (+106) Created page with "--~~~~Peep"
16:35:57 -!- sprout has joined.
16:37:24 -!- Koen_ has quit (Remote host closed the connection).
16:39:14 -!- sprout_ has quit (Ping timeout: 245 seconds).
16:42:46 <esolangs> [[Special:Log/upload]] upload * PaxtonPenguin * uploaded "[[File:C+.jpg]]"
16:43:04 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117742&oldid=117674 * PaxtonPenguin * (+34)
16:44:04 -!- cpressey has quit (Quit: Client closed).
16:54:31 -!- cpressey has joined.
17:09:50 -!- cpressey has quit (Quit: Client closed).
17:10:41 -!- cpressey has joined.
17:20:56 <esolangs> [[Barrous]] N https://esolangs.org/w/index.php?oldid=117743 * Abyxlrz * (+3194) Created page with "Barrous is an improvement on [[Modulous]] inspired by [[APL]] made by [[User:Abyxlrz|Abyxlrz]]. It is a 1D stack based esoteric programming language with variables. =Non-commands= ^ can be used in place of a value to refer to the top of the stack. Variables may be de
17:31:29 -!- b_jonas has joined.
17:32:14 <esolangs> [[Special:Log/newusers]] create * User43215 * New user account
17:54:04 -!- Thelie has quit (Ping timeout: 258 seconds).
17:56:55 -!- cpressey has quit (Quit: Client closed).
18:17:43 -!- cpressey has joined.
18:18:00 <esolangs> [[User:Abyxlrz]] https://esolangs.org/w/index.php?diff=117744&oldid=82981 * Abyxlrz * (+43)
18:19:03 -!- tromp has joined.
18:30:43 -!- Thelie has joined.
18:36:48 <esolangs> [[User:Abyxlrz]] https://esolangs.org/w/index.php?diff=117745&oldid=117744 * Abyxlrz * (+64)
18:37:25 <esolangs> [[User:Abyxlrz]] M https://esolangs.org/w/index.php?diff=117746&oldid=117745 * Abyxlrz * (+3)
19:00:27 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117747&oldid=117738 * EvyLah * (+161)
19:01:19 <esolangs> [[User:EvyLah]] N https://esolangs.org/w/index.php?oldid=117748 * EvyLah * (+61) Created page with "making 1fish and will upload (if I figure how) when it's done"
19:41:20 -!- arseniiv has quit (Quit: gone too far).
20:14:11 <b_jonas> heck. my psz interpreter is more than 20 years old. I can now claim 20 years of experience with esoteric programming language development. and in a few months, geo will be 20 years old too.
20:24:32 <fizzie> fungot's 15 years old now. (Its birthdate was 2008-08-14.)
20:24:54 <fizzie> I really should bring it back, I just couldn't figure out that identd thing quickly and then keep getting distracted.
20:25:23 <fizzie> But maybe if I update Debian from oldstable to stable that'll accidentally fix it. There's a thought.
20:25:23 <b_jonas> don't worry, my irc bot cbstream has had longer downtimes
20:28:01 -!- cpressey has quit (Quit: Client closed).
20:37:12 -!- cpressey has joined.
20:39:23 -!- __monty__ has quit (Ping timeout: 255 seconds).
20:39:45 -!- __monty__ has joined.
21:12:32 -!- Thelie has quit (Read error: Connection reset by peer).
21:24:02 -!- cpressey has quit (Quit: Client closed).
21:44:01 -!- __monty__ has quit (Quit: leaving).
21:52:45 -!- sprout_ has joined.
21:56:43 -!- sprout has quit (Ping timeout: 264 seconds).
22:01:50 -!- leah2 has quit (Ping timeout: 255 seconds).
22:10:15 -!- Sgeo has joined.
22:14:03 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:14:19 <esolangs> [[Down the Mountain]] https://esolangs.org/w/index.php?diff=117749&oldid=107320 * Joaozin003 * (+70) added example
22:14:47 -!- leah2 has joined.
22:51:29 <esolangs> [[Brainfuck]] https://esolangs.org/w/index.php?diff=117750&oldid=117559 * Gus-caribe * (+333) /* Notable implementations */
23:08:39 <esolangs> [[User:Gus-caribe]] N https://esolangs.org/w/index.php?oldid=117751 * Gus-caribe * (+212) Created page with "I'm Gustavo Caribe, a software engineer who likes to work with a bit of everything. ==My Esolang Interpreters== * [https://github.com/gus-caribe/bfck bfck]: A Dart command-line interpreter for brainfuck esolang."
2023-10-12
00:03:19 <zzo38> Which Linux distribution is: without systemd, without Wayland, without Unicode, and without D-bus?
00:52:39 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
00:53:23 -!- Lord_of_Life has joined.
00:59:58 -!- craigo has joined.
02:38:16 <esolangs> [[^!]] https://esolangs.org/w/index.php?diff=117752&oldid=111808 * Ninesquared81 * (+1826) /* Examples */
03:23:51 -!- craigo has quit (Ping timeout: 260 seconds).
04:50:47 <esolangs> [[Perm]] M https://esolangs.org/w/index.php?diff=117753&oldid=20805 * PythonshellDebugwindow * (+55) Categories
04:50:58 <esolangs> [[Perm]] M https://esolangs.org/w/index.php?diff=117754&oldid=117753 * PythonshellDebugwindow * (+0) /* I/O */ Category
06:14:33 -!- tromp has joined.
06:56:20 -!- Koen has joined.
07:28:50 -!- cpressey has joined.
07:37:58 -!- Lord_of_Life has quit (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine).
07:38:18 -!- Lord_of_Life has joined.
08:52:11 -!- Sgeo has quit (Read error: Connection reset by peer).
09:19:05 -!- Koen has quit (Remote host closed the connection).
09:23:30 -!- sprout_ has changed nick to sprout.
09:28:45 -!- arseniiv has joined.
09:41:12 -!- cpressey has quit (Quit: Client closed).
09:41:24 -!- cpressey has joined.
10:09:29 -!- wib_jonas has joined.
10:12:46 -!- cpressey has quit (Quit: Client closed).
10:21:00 -!- Koen has joined.
10:21:01 -!- Koen_ has joined.
10:24:08 -!- cpressey has joined.
10:25:05 -!- Koen has quit (Ping timeout: 240 seconds).
10:25:59 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
10:28:34 -!- tromp has joined.
11:03:19 -!- cpressey has quit (Quit: Client closed).
11:16:02 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
11:20:48 -!- tromp has joined.
11:21:06 <esolangs> [[Ruck]] N https://esolangs.org/w/index.php?oldid=117755 * None1 * (+2107) Created page with "Ruck is an esolang invented by [[User:None1]], it has one extra command then [[Minimized BF]]: <code><</code> and its tape has infinite size, making it [[Turing complete]]. ==Examples== ===Hello World (unoptimized)=== <pre class="rectwrap"> ++++++++++++++++++++++++++++++++++
11:21:41 -!- cpressey has joined.
11:22:57 <esolangs> [[Minimized BF]] https://esolangs.org/w/index.php?diff=117756&oldid=112394 * None1 * (+83) /* Example Programs */
11:27:55 -!- wib_jonas has quit (Quit: Client closed).
11:28:17 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117757&oldid=117712 * None1 * (+11) /* R */
11:34:38 <esolangs> [[LABEL]] M https://esolangs.org/w/index.php?diff=117758&oldid=46633 * PythonshellDebugwindow * (+24) Category
11:39:44 <esolangs> [[Time]] N https://esolangs.org/w/index.php?oldid=117759 * None1 * (+843) Created page with "Time is an esolang invented by [[User:None1]] and inspired by [[rand.Next()]], the behavior of this esolang depends on how many times you run it. ==Execution== When run, Time gets the number of times you run ''before'' this run (for example, 0 for the first run). Then, it ex
11:40:58 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=117760&oldid=117571 * None1 * (+135) /* My Esolangs */
11:42:09 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=117761&oldid=117570 * None1 * (+85) /* Brainfuck derivatives */
11:44:29 <esolangs> [[Esolang talk:Categorization]] https://esolangs.org/w/index.php?diff=117762&oldid=117609 * None1 * (+270) /* Propose Category:Languages that involve deletion */ new section
11:44:46 <esolangs> [[Esolang talk:Categorization]] M https://esolangs.org/w/index.php?diff=117763&oldid=117762 * None1 * (+0) /* Propose Category:Languages that involve deletion */
11:53:03 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:08:15 -!- mich181189_ has changed nick to mich181189.
12:08:29 -!- mich181189 has quit.
12:08:39 -!- mich181189 has joined.
12:08:50 <esolangs> [[Category:Pages with broken file links]] N https://esolangs.org/w/index.php?oldid=117764 * Lilchiky * (+0) it is a wanted category douh
12:24:18 <esolangs> [[KittyKittyMewMew]] https://esolangs.org/w/index.php?diff=117765&oldid=74458 * None1 * (+67) /* Python 3 */
12:24:44 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=117766&oldid=117760 * None1 * (+36) /* My Implementations */
12:52:41 -!- tromp has joined.
12:56:29 <esolangs> [[^!]] M https://esolangs.org/w/index.php?diff=117767&oldid=117752 * Ninesquared81 * (-1) /* Less than */
12:56:49 <esolangs> [[^!]] M https://esolangs.org/w/index.php?diff=117768&oldid=117767 * Ninesquared81 * (+4) /* Integer division */
13:11:26 <esolangs> [[Explode]] M https://esolangs.org/w/index.php?diff=117769&oldid=52586 * PythonshellDebugwindow * (+129) Stub, categories
13:36:04 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117770&oldid=117734 * Infinitehexagon * (+40)
13:37:20 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=117771&oldid=117533 * Infinitehexagon * (+36)
13:37:31 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=117772&oldid=117771 * Infinitehexagon * (+2) /* X strike */
13:42:31 -!- Europe2048 has joined.
13:43:07 <esolangs> [[Hello world program in esoteric languages (N-Z)]] https://esolangs.org/w/index.php?diff=117773&oldid=117594 * Infinitehexagon * (+264)
13:45:13 <esolangs> [[X strike]] https://esolangs.org/w/index.php?diff=117774&oldid=117770 * Infinitehexagon * (-4) /* One-time Cat program */
13:49:33 <esolangs> [[This esolang is a brainfuck derivative]] M https://esolangs.org/w/index.php?diff=117775&oldid=114943 * None1 * (+0) /* Cat Program */ Fixed
13:50:07 <esolangs> [[^!]] https://esolangs.org/w/index.php?diff=117776&oldid=117768 * Ninesquared81 * (+1298) /* Notes on the transpiler */
13:55:33 <esolangs> [[This esolang is a brainfuck derivative]] https://esolangs.org/w/index.php?diff=117777&oldid=117775 * None1 * (+1420) Added Python interpreter and change Unimplemented to Implemented
13:55:59 <esolangs> [[This esolang is a brainfuck derivative]] M https://esolangs.org/w/index.php?diff=117778&oldid=117777 * None1 * (-10) /* Interpreter */
14:09:25 -!- Europe2048 has quit (Quit: Client closed).
14:09:40 -!- Europe2048 has joined.
14:12:50 <esolangs> [[Gamma]] N https://esolangs.org/w/index.php?oldid=117779 * Infinitehexagon * (+1724) Created page with "'''Gamma''' is an esoteric programming language that is part of a series by [[User:Infinitehexagon]] on Greek esolangs that will be a derivative of the previous esolang with more commands, less commands, or modified commands. It has 3 more extra commands than [[Be
14:14:12 <esolangs> [[This esolang is a brainfuck derivative]] M https://esolangs.org/w/index.php?diff=117780&oldid=117778 * None1 * (+6) /* Interpreter */
14:14:31 <esolangs> [[Gamma]] https://esolangs.org/w/index.php?diff=117781&oldid=117779 * Infinitehexagon * (+55) /* Commands */
14:15:26 <esolangs> [[Gamma]] https://esolangs.org/w/index.php?diff=117782&oldid=117781 * Infinitehexagon * (+27)
14:16:07 <esolangs> [[Gamma]] M https://esolangs.org/w/index.php?diff=117783&oldid=117782 * None1 * (+1)
14:17:49 <esolangs> [[Gamma]] https://esolangs.org/w/index.php?diff=117784&oldid=117783 * Infinitehexagon * (+0) /* Commands */
14:24:38 -!- Koen_ has quit (Remote host closed the connection).
14:26:15 <esolangs> [[Arraything]] N https://esolangs.org/w/index.php?oldid=117785 * PaxtonPenguin * (+919) Arraything Sucks
14:28:45 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=117786&oldid=117785 * PaxtonPenguin * (+69)
14:42:51 <esolangs> [[This esolang is a brainfuck derivative]] M https://esolangs.org/w/index.php?diff=117787&oldid=117780 * None1 * (+5) /* Syntax */
14:43:27 <esolangs> [[This esolang is a brainfuck derivative]] M https://esolangs.org/w/index.php?diff=117788&oldid=117787 * None1 * (+21) /* Interpreter */
15:01:39 -!- Koen has joined.
15:07:19 <esolangs> [[Esolang talk:Categorization]] https://esolangs.org/w/index.php?diff=117789&oldid=117763 * Ais523 * (+668) /* Is Category:Unimplemented really neccessarry? */ I think it is
15:13:33 -!- Sgeo has joined.
15:16:13 -!- Europe2048 has quit (Quit: Client closed).
15:20:40 <esolangs> [[Special:Log/newusers]] create * Harumafuji Kohei * New user account
15:25:08 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=117790&oldid=117747 * Harumafuji Kohei * (+209) edit ?
15:38:50 -!- j-bot has quit (Remote host closed the connection).
15:39:04 -!- j-bot has joined.
16:19:25 -!- shikhin has quit (Quit: Quittin'.).
16:19:32 -!- ecs has quit (Ping timeout: 246 seconds).
16:19:43 -!- shikhin has joined.
16:19:46 -!- j4cbo has quit (Read error: Connection reset by peer).
16:19:57 -!- j4cbo has joined.
16:20:20 -!- tromp has quit (Ping timeout: 258 seconds).
16:20:25 -!- ecs has joined.
16:21:39 -!- JAA has quit (Ping timeout: 246 seconds).
16:22:42 -!- JAA has joined.
16:23:10 <esolangs> [[Sus]] M https://esolangs.org/w/index.php?diff=117791&oldid=93644 * PaxtonPenguin * (+17)
16:23:45 <esolangs> [[Category:Sus]] N https://esolangs.org/w/index.php?oldid=117792 * PaxtonPenguin * (+56) Created page with "How many among us programming languages are there? A lot"
16:23:57 -!- river has quit (Remote host closed the connection).
16:24:30 <esolangs> [[Among Us]] M https://esolangs.org/w/index.php?diff=117793&oldid=89921 * PaxtonPenguin * (+17)
16:24:34 -!- riv has joined.
16:24:43 -!- riv has changed nick to river.
16:25:07 <esolangs> [[SussyLang]] M https://esolangs.org/w/index.php?diff=117794&oldid=86908 * PaxtonPenguin * (+17)
16:27:13 <esolangs> [[Suscript]] M https://esolangs.org/w/index.php?diff=117795&oldid=89931 * PaxtonPenguin * (+17)
16:30:30 <esolangs> [[lang]] M https://esolangs.org/w/index.php?diff=117796&oldid=110429 * PaxtonPenguin * (+17)
16:31:20 <esolangs> [[Suscript 2.0]] M https://esolangs.org/w/index.php?diff=117797&oldid=116575 * PaxtonPenguin * (+17)
16:31:55 <cpressey> Philosophical question: Is this spam?
16:32:40 <esolangs> [[SusLang]] M https://esolangs.org/w/index.php?diff=117798&oldid=95871 * PaxtonPenguin * (+17)
16:32:47 * cpressey waits for "SussyLangScript" page to be created
16:33:04 <river> i dont think its spam
16:33:26 <cpressey> Is it a sign that our community is extremely inclusive?
16:33:31 <river> yes
16:33:34 <cpressey> OK cool
16:36:15 <int-e> But... oh no! Another category page without prior discussion.
16:36:17 -!- Europe2048 has joined.
16:36:41 <esolangs> [[LOLSUS]] M https://esolangs.org/w/index.php?diff=117799&oldid=86772 * PaxtonPenguin * (+16)
16:37:43 <esolangs> [[AmogusScript]] https://esolangs.org/w/index.php?diff=117800&oldid=114282 * PaxtonPenguin * (+17)
16:37:51 <Europe2048> Anyone?
16:38:47 <esolangs> [[ALMBARC12YO]] https://esolangs.org/w/index.php?diff=117801&oldid=108722 * PaxtonPenguin * (+17)
16:40:08 -!- cpressey has quit (Ping timeout: 245 seconds).
16:40:41 <esolangs> [[User:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=117802&oldid=117739 * PaxtonPenguin * (+33)
16:44:47 -!- cpressey has joined.
16:47:08 <esolangs> [[Chefs Kiss]] N https://esolangs.org/w/index.php?oldid=117803 * PaxtonPenguin * (+218) Created page with "Basically just *[[+-=]] but with emojis {| class="wikitable" |+ h |- ! Emoji !! The other column |- | || Add the Accumulator |- | || Decrease the Accumulator |- | || Print |} Also thought during class"
16:47:26 <esolangs> [[Chefs Kiss]] M https://esolangs.org/w/index.php?diff=117804&oldid=117803 * PaxtonPenguin * (-5)
16:48:34 <esolangs> [[Chefs Kiss]] https://esolangs.org/w/index.php?diff=117805&oldid=117804 * PaxtonPenguin * (+52)
16:48:57 <esolangs> [[Chefs Kiss]] M https://esolangs.org/w/index.php?diff=117806&oldid=117805 * PaxtonPenguin * (+0)
16:49:30 <esolangs> [[User:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=117807&oldid=117802 * PaxtonPenguin * (+16)
16:51:02 <esolangs> [[Category:Sus]] https://esolangs.org/w/index.php?diff=117808&oldid=117792 * PaxtonPenguin * (+28)
16:53:24 -!- craigo has joined.
16:55:15 -!- craigo has quit (Client Quit).
16:55:17 -!- Europe2048 has quit (Quit: Client closed).
17:06:36 -!- Thelie has joined.
17:09:33 -!- craigo has joined.
17:10:10 -!- arseniiv has quit (Ping timeout: 258 seconds).
17:11:27 <esolangs> [[Chefs Kiss]] https://esolangs.org/w/index.php?diff=117809&oldid=117806 * PaxtonPenguin * (+17)
17:12:28 <esolangs> [[Arraything]] M https://esolangs.org/w/index.php?diff=117810&oldid=117786 * PaxtonPenguin * (+30)
17:12:43 <esolangs> [[Arraything]] M https://esolangs.org/w/index.php?diff=117811&oldid=117810 * PaxtonPenguin * (-2)
17:37:22 -!- arseniiv has joined.
18:29:08 -!- Koen has quit (Remote host closed the connection).
18:46:51 <esolangs> [[Celum]] https://esolangs.org/w/index.php?diff=117812&oldid=8685 * Kaveh Yousefi * (+187) Added a hyperlink to my implementation of the Celum programming language on GitHub and introduced the category tag Implemented.
18:47:48 -!- cpressey has quit (Quit: Client closed).
18:49:36 <esolangs> [[Celum]] https://esolangs.org/w/index.php?diff=117813&oldid=117812 * Kaveh Yousefi * (+1951) Added several example programs, including a Hello, world! printer, a truth-machine, and an infinite loop.
18:52:25 -!- Europe2048 has joined.
18:52:54 -!- Thelie has quit (Ping timeout: 258 seconds).
18:58:31 -!- cpressey has joined.
19:06:19 <esolangs> [[Celum]] https://esolangs.org/w/index.php?diff=117814&oldid=117813 * Kaveh Yousefi * (+1417) Reformatted, reformulated, and extended the command table by pieces of information extrapolated from the descriptions and example programs, in particular the Boolfuck equiparation.
19:06:53 <esolangs> [[Celum]] M https://esolangs.org/w/index.php?diff=117815&oldid=117814 * Kaveh Yousefi * (+4) Inserted a missing the in the command table.
19:13:53 -!- Europe2048 has quit (Ping timeout: 245 seconds).
19:19:35 -!- cpressey has quit (Quit: Client closed).
19:25:54 -!- Europe2048 has joined.
19:27:36 -!- cpressey has joined.
19:27:55 -!- arseniiv has quit (Quit: gone too far).
19:28:28 <Europe2048> Hi cpressey! Heard of IRP?
19:35:10 <b_jonas> cpressey: we're very inclusive on what we allow on the wiki, and this is by design. the original purpose of the wiki was to keep non-notable or primary research esolangs away from en.wikipedia by attracting them to here.
19:36:42 <esolangs> [[Category:Sus]] https://esolangs.org/w/index.php?diff=117816&oldid=117808 * PaxtonPenguin * (+8)
19:37:38 <esolangs> [[Esolang talk:Categorization]] https://esolangs.org/w/index.php?diff=117817&oldid=117789 * B jonas * (+360) /* Is Category:Unimplemented really neccessarry? */
19:41:29 <b_jonas> int-e: if you're speaking of https://esolangs.org?curid=17937 then yes, let's just delete that one, it doesn't need much discussion
19:44:57 <cpressey> Europe2048: no
19:46:03 <Europe2048> IRP is a programming language whose interepter is always a human. Join #irp on libera.chat for the interepter. Ask nicely in the interepter.
19:48:30 <Europe2048> For a more precise meaning, visit the esolangs page.
20:06:58 -!- Europe2048 has quit (Quit: Client closed).
20:50:26 <esolangs> [[ALMBARC12YO]] M https://esolangs.org/w/index.php?diff=117818&oldid=117801 * PythonshellDebugwindow * (+188) Categories
20:55:01 -!- Thelie has joined.
21:12:47 -!- tromp has joined.
21:40:20 -!- Thelie has quit (Remote host closed the connection).
23:41:12 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=117819&oldid=117811 * PaxtonPenguin * (+11)
23:45:08 -!- awewsomegamer has joined.
23:50:05 -!- awewsomegamer has quit (Quit: WeeChat 4.0.5).
23:56:36 <zzo38> I had made the programming language for puzzle games (with turn-based, level-based, objects moving in the grid), already. Later I intended also making up programming language suitable for making the rules of a variant of mahjong game, and another one for a solitaire card games, too.
2023-10-13
00:53:48 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
00:54:46 -!- Lord_of_Life has joined.
01:04:38 <esolangs> [[^!]] https://esolangs.org/w/index.php?diff=117820&oldid=117776 * Ninesquared81 * (+774) /* Examples */
01:09:51 <esolangs> [[Hello world program in esoteric languages (nonalphabetic and A-M)]] https://esolangs.org/w/index.php?diff=117821&oldid=117131 * McChuck * (+44) Listack
01:12:23 <esolangs> [[Hello world program in esoteric languages (nonalphabetic and A-M)]] M https://esolangs.org/w/index.php?diff=117822&oldid=117821 * McChuck * (+78) /* Listack */
01:13:09 <esolangs> [[Hello world program in esoteric languages (nonalphabetic and A-M)]] M https://esolangs.org/w/index.php?diff=117823&oldid=117822 * McChuck * (+32) /* Listack */
01:28:26 <shachaf> zzo38: Is it PuzzleScript?
01:29:32 <zzo38> No, it is not PuzzleScript.
01:36:11 <zzo38> I had made up a different one, which in my opinion is much better in many ways, although it could be arguable.
01:49:35 -!- craigo has quit (Ping timeout: 258 seconds).
02:00:34 -!- craigo has joined.
02:11:17 <esolangs> [[^!]] https://esolangs.org/w/index.php?diff=117824&oldid=117820 * Ninesquared81 * (+8) /* Get number */
02:34:01 <zzo38> (Although, different programs have their own advantages and disadvantages, anyways.)
02:44:48 -!- awewsomegamer has joined.
03:20:58 -!- cpressey has quit (Ping timeout: 245 seconds).
03:22:50 <esolangs> [[Funge-98]] https://esolangs.org/w/index.php?diff=117825&oldid=107314 * BoundedBeans * (+2171) Fixed rcfunge links
03:51:31 -!- craigo has quit (Ping timeout: 260 seconds).
04:18:18 -!- awewsomegamer has quit (Quit: WeeChat 4.0.5).
04:28:31 -!- simcop2387 has quit (Read error: Connection reset by peer).
04:28:32 -!- perlbot has quit (Read error: Connection reset by peer).
04:29:03 -!- simcop2387 has joined.
04:34:24 -!- perlbot has joined.
05:10:47 <esolangs> [[MemPanic]] M https://esolangs.org/w/index.php?diff=117826&oldid=70862 * PythonshellDebugwindow * (+26) Wayback
05:17:01 <esolangs> [[Multiprogramming]] M https://esolangs.org/w/index.php?diff=117827&oldid=69312 * PythonshellDebugwindow * (+28) Wayback
05:23:44 <esolangs> [[YoptaScript]] M https://esolangs.org/w/index.php?diff=117828&oldid=110150 * PythonshellDebugwindow * (+124) Categories
05:24:50 <esolangs> [[Esolang talk:Categorization]] M https://esolangs.org/w/index.php?diff=117829&oldid=117817 * None1 * (+174) /* Is Category:Unimplemented really neccessarry? */
05:32:30 <esolangs> [[!!Fuck Python interpreter]] M https://esolangs.org/w/index.php?diff=117830&oldid=113539 * PythonshellDebugwindow * (+34) Link, category
05:37:38 <esolangs> [[Esolang talk:Categorization]] M https://esolangs.org/w/index.php?diff=117831&oldid=117829 * None1 * (+85) /* Is Category:Unimplemented really neccessarry? */
05:47:15 <esolangs> [[lang]] M https://esolangs.org/w/index.php?diff=117832&oldid=117796 * None1 * (+29) /* Specs */
05:47:53 <esolangs> [[No-code esolang]] M https://esolangs.org/w/index.php?diff=117833&oldid=115873 * None1 * (+57)
06:01:26 <esolangs> [[lang]] M https://esolangs.org/w/index.php?diff=117834&oldid=117832 * None1 * (+31) /* Specs */
06:09:28 -!- arseniiv has joined.
06:18:15 <arseniiv> holá
06:24:46 <esolangs> [[Brainfuck]] N https://esolangs.org/w/index.php?oldid=117835 * None1 * (+410) Created page with "Brainfuck is an esolang invented by [[User:None1]], it is very stupid. ==Commands== The only valid program - <code>Brainfuck</code> increases the accumulator. ==Examples== ===Increase the accumulator=== Brainfuck ==Interpreter== ===[[Python]]=== a,x=input(),0 if a=='
06:32:43 <esolangs> [[Brainfuck]] M https://esolangs.org/w/index.php?diff=117836&oldid=117835 * None1 * (+21) /* Interpreter */
06:33:54 -!- cpressey has joined.
06:35:15 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=117837&oldid=117761 * None1 * (+64) /* General languages */
06:35:44 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=117838&oldid=117766 * None1 * (+64) /* My Esolangs */
06:36:16 <esolangs> [[Brainfuck]] M https://esolangs.org/w/index.php?diff=117839&oldid=117836 * None1 * (+32)
06:38:57 <esolangs> [[Brainfuck]] M https://esolangs.org/w/index.php?diff=117840&oldid=117839 * None1 * (+119)
06:40:47 <esolangs> [[This esolang is a brainfuck derivative]] M https://esolangs.org/w/index.php?diff=117841&oldid=117788 * None1 * (+17) /* Interpreter */
06:50:33 <esolangs> [[Chefs Kiss]] M https://esolangs.org/w/index.php?diff=117842&oldid=117809 * None1 * (+11)
07:05:41 -!- arseniiv_ has joined.
07:06:02 -!- shikhin has changed hostmask to ~shikhin@offtopia/offtopian.
07:07:58 -!- arseniiv has quit (Ping timeout: 255 seconds).
07:24:15 <cpressey> zzo38: I once started designing a language where the domain objects were tabletop game elements (cards, dice, counters, ...)
07:25:50 <cpressey> And then the programs would've been instructions that the players followed, like "If the card on the top of the discard pile is a queen, move the yetllow counter to the'"go' square"
07:26:31 <cpressey> I never finished it because I couldn't think of a satisfying way to make it TC given that the number of objects on the table would be finite
07:26:53 <int-e> . o O ( What if the card on the top of the discard pile is a pawn... )
07:34:27 <cpressey> An unsatisfying way to make it TC: say there can be a board with an infinite number of numbered squares.
07:36:02 <cpressey> This leads me to think, it's not enough to have an infinite set of something.  All the things in the set have to stand in relation to one another
07:36:38 <int-e> . o O ( Ooh what if the discard pile is a Jenga tower... and you have MtG-like abilities to recover, well, blocks from the discard pile, but only if you manage to get it without knocking over the tower... )
07:37:37 <int-e> (not programming related... just following the idea of having non-cards on a discard pile, which can lead to questionable stability.)
07:47:29 <cpressey> int-e: I eventually got the queen/pawn joke, but "MtG-like abilities to recover blocks" is quite beyond me -- but then, I don't MtG.
07:51:18 <Taneb> I _think_ you might be able to get Turing completeness in the same way MtG is claimed to achieve it, by abusing the action stack (don't quote me on this)
07:51:28 <int-e> The discard pile in MtG is called the graveyard (because cards that represented killed monsters go there), and there are some spells that get cards back from the graveyard into your hand or into play. (There's also a concept of removing a card from game completely.)
07:51:47 <int-e> cpressey: and I used "block" because Jenga doesn't have cards.
08:10:28 -!- __monty__ has joined.
08:13:23 <b_jonas> int-e: you mean https://scryfall.com/card/und/2/awol ?
08:14:28 <int-e> b_jonas: I think you read more into "completely" than I intended :P
08:15:26 <b_jonas> ante zone? chaos confetti?
08:15:33 <b_jonas> hehe
08:16:27 <int-e> There's also this kind of permanent "removal": https://scryfall.com/card/ugl/70/blacker-lotus
08:17:04 <cpressey> I remember being impressed by this distinction In a very old D&D game for 8-bit computers, where characters could be Conscious, Unconscious, Dead or Gone
08:17:19 <cpressey> If they were Gone they couldn't be resurrected
08:26:39 <b_jonas> int-e: yes, that's the chaos confetti one
08:27:24 <int-e> ah
08:27:50 <b_jonas> cpressey: yeah, some D&D variants have an extra step, because if you have at least a small part of the body then it's easier to resurrect the dead, and if they died only a few times ago then it's even easier and more importantly they might not even lose a level from the resurrection then
08:28:47 <int-e> "a few times ago" is kind of cute too
08:28:53 <int-e> (turns, I guess)
08:29:49 <b_jonas> oops, a few turns ago
08:30:56 <b_jonas> and these days there are all sorts of programs, like email clients, that have the concept of deleting an object to the trashcan or recycle bin, and deleting it completely so it's not even in the trashcan
08:31:55 <b_jonas> oh, and I think D&D has a weird three-way distinction between conscious with positive hitpoints, unconscious on zero hitpoint, and unconscious on negative hit points
09:06:55 -!- Lord_of_Life has quit (Ping timeout: 264 seconds).
09:22:56 -!- Lord_of_Life has joined.
09:34:32 <cpressey> It should make a weird two-way distinction on having +0 hit points and having -0 hit points too.  I will write Wizards of the Coast a strongly-worded letter on this matter.
09:35:11 <cpressey> In other news, I have written a (not-actually-)Scheme to (not-actually-)JavaScript compiler, in Lua
09:35:47 <cpressey> It's (not-actually-), but it's quite close.
09:36:40 <int-e> . o O ( At least the Lua is real. )
09:41:07 -!- Sgeo has quit (Read error: Connection reset by peer).
09:43:18 <cpressey> I realize a lot of my language ideas aren't weird enough to be "esolangs" anymore, but they're too weird for the "proglangdesign" channel.  (Which seems to be more about pet languages and complaining about systems issues, anyway.)
09:44:28 -!- cpressey has quit (Quit: Client closed).
09:53:17 -!- cpressey has joined.
10:01:54 -!- wib_jonas has joined.
10:02:18 <wib_jonas> oh, and D&D creatures can also have the status where they died of old age or their soul is destroyed so even True Resurrection can't fix them
10:03:23 <wib_jonas> apparently there's another condition, True Resurrection can't resurrect creatures who have been dead for longer than 10 years. odd.
10:04:01 <wib_jonas> probably there so you don't try to resurrect famous people who died like fifty years ago
10:11:45 -!- Thelie has joined.
10:30:52 -!- cpressey has quit (Quit: Client closed).
10:41:52 -!- cpressey has joined.
10:45:59 <cpressey> I found a very interesting quote about Lisp in a book about Modula-3:
10:45:59 <cpressey> "Lisp is the hybrid of the lambda calculus and the theory of a pairing function"
10:46:33 <cpressey> I wouldn't but it that way exactly, myself, but it's an interesting take
10:46:36 <cpressey> *put
10:50:59 <int-e> fungot, why does worm not rhyme with dorm?
10:53:49 <cpressey> fungot's not here, man
10:58:20 <wib_jonas> sword doesn't rhyme with word either
11:00:35 <esolangs> [[Listack]] M https://esolangs.org/w/index.php?diff=117843&oldid=117485 * McChuck * (+125) /* Advanced Control Flow */
11:02:55 <fizzie> That sword alone can't stop.
11:03:53 <fizzie> Why is it that 'prospect', 'prospective' and 'perspective' are all words, but 'perspect' is not.
11:05:38 <wib_jonas> fizzie: because some idiot brand named plexiglass as perspex and perspect conflicts with that
11:28:00 <esolangs> [[Hello++]] https://esolangs.org/w/index.php?diff=117844&oldid=94015 * Harumafuji Kohei * (+213) I hope this works
11:51:36 -!- cpressey has quit (Quit: Client closed).
11:52:50 <wib_jonas> that said, I think it's fine if you use "perspect" as a verb instead of "project perspectively"
11:57:10 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
11:59:35 -!- cpressey has joined.
12:00:39 -!- tromp has joined.
12:06:02 -!- arseniiv_ has quit (Ping timeout: 255 seconds).
12:14:00 <esolangs> [[User:Harumafuji Kohei]] N https://esolangs.org/w/index.php?oldid=117845 * Harumafuji Kohei * (+23) ok
12:19:24 -!- arseniiv_ has joined.
12:22:35 <arseniiv_> <cpressey> An unsatisfying way to make it TC: say there can be a board with an infinite number of numbered squares. => what about unbounded card piles?
12:29:37 <cpressey> arseniiv_: That's slightly better, but it would need an unbounded card deck.  I play the 18,091,716 of Clubs.
12:31:40 <cpressey> Maybe the positions between objects could be measured in real numbers with unlimited precision, and those distances... nah, see, tabletop games are supposed to abstract things like that away.  They're more topological than geometrical.
12:32:46 <Taneb> Not only are tabletops topological, they're often discrete
12:34:01 -!- arseniiv_ has changed nick to arseniiv.
12:35:01 <arseniiv> cpressey: why are unbounded card ranks needed? Like, one can encode something just in the sequence of cards stacked
12:35:16 <cpressey> arseniiv: OK, true.
12:35:37 <int-e> . o O ( But card counters are much cooler. )
12:37:07 <cpressey> You still need an unbounded number of cards though, that was my sticking point.  For whatever reason I was thinking of it very much in concrete terms.  And no one could afford that many cards. (This was all many years ago.)
12:38:08 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:38:35 <cpressey> Maybe cards could be like "fuel" that's used to ensure computations terminate in some contexts
12:39:04 <cpressey> (I'd be less concerned with it being TC or not these days.)
12:39:28 -!- tromp has joined.
12:46:16 <wib_jonas> cpressey: no, you'd just have an unbounded number of copies of a finite number of different cards, like as many Forests as the players need
12:47:01 <wib_jonas> it wouldn't be the 18091716 of clubs, unless perhaps you want to represent that with an ace of clubs with 18091715 +1 counters on it
12:47:35 <arseniiv> btw on fungot not being available: why?
12:48:15 <cpressey> something about fizzie not wanting to troubleshoot something about identd, or something
12:48:30 <wib_jonas> arseniiv: he is implemented in an esoteric language and so is hard to change
12:48:32 <cpressey> or maybe I'm confusing that with another bot
12:48:45 <cpressey> wib_jonas: Docker
12:48:51 <cpressey> Docker is the solution to everything
12:49:46 <cpressey> Actually, I had a bot here once too
12:50:34 <cpressey> Adapting it to work with "ircs" was something I had to research, but in the end, not black magic or anything
12:50:47 <arseniiv> one of my friends thinks the same about Docker; also another one asks right now what’s a pairing function. I think it’s probably that Cantor ℕ × ℕ → ℕ bijection?
12:51:54 <arseniiv> wib_jonas: ah, I probably get it now, libera.chat expects this new more secure login
12:52:35 <cpressey> arseniiv: Yes, Cantor, and later others: https://en.wikipedia.org/wiki/Pairing_function  -- I think in that book they were talking more abstractly, about cons cells
12:53:13 <arseniiv> thanks I’ll relay!
12:54:54 <arseniiv> now that the topic of board games giving rise to esolangs was established, it occurred to me if one could somehow make a game with entities forming an inductive data type (or an inductive family of types)
12:55:31 <arseniiv> something less mundane like trees of some kind
12:57:32 <wib_jonas> "no one could afford that many cards" => the M:tG solution to this is threefold. (1) normally you need to own a physical copy of a card manufactured by Wizards if you want to use it in a tournament-legal game, even if you use a proxy to represent that card in game instead. a card moved to a zone is an object. you can't create cards or add new cards
12:57:32 <wib_jonas> during tournament-legal gameplay, only move cards that are already in the game or in the sideboard, but when the rules want to create a new object regardless, it instructs you to create a token or a copy of a spell. tokens and copies of spells don't have an underlying card that they reference, and so an unlimited number of them can be created
12:57:33 <wib_jonas> during the game without owning cards that you buy from M:tG. (2) the number of cards in your deck is bounded. the rules don't give a specific number, but they say that the deck should be small enough that one person can shuffle it. that's a small enough limit that I have more (cheap) cards than I could put in a deck. (3) in limited tournaments, the
12:57:33 <wib_jonas> tournament organizer must provide an unlimited number of the five eternal basic lands, and during deckbuilding you can add as many of them into your deck. (you may have to return the lands to the organizer afterwards of course).
13:00:11 <wib_jonas> arseniiv: hard to be sure without context, but I think no, that's just the cons function that makes an ordered pair, where the car of the resulting pair is the first argument of the function, and the cdr of the resulting pari is the second argument to the function. this is useful only in a language that has multi-argument functions (or at least
13:00:12 <wib_jonas> curried ones)
13:01:56 <wib_jonas> arseniiv: doesn't basically any discrete but potentially infinite game work with inductive types?
13:01:57 <arseniiv> wib_jonas: might be this too, yeah
13:02:42 <arseniiv> <wib_jonas> doesn't basically any discrete but potentially infinite game work with inductive types? => I mean, in a sufficiently transparent way. A puny deck of cards doesn’t feel like a value of an inductive type!
13:02:53 <esolangs> [[Miser]] https://esolangs.org/w/index.php?diff=117846&oldid=113132 * Kaveh Yousefi * (+179) Added a hyperlink to my implementation of the Miser programming language on GitHub, changed the category tag Unimplemented to Implemented, and supplemented the category 2023.
13:04:06 <wib_jonas> arseniiv: sure, but this is about the game state, not just a deck of cards packed away
13:04:51 <wib_jonas> some games like Poker have a very simple type for game states, but games like M:tG have ridiculously complicated ones
13:05:30 <arseniiv> wib_jonas: hmmmmmm. But again, the whole state feels like too much too, yeah your note about M:tG shows this exactly
13:06:03 <arseniiv> what I intended is for players to manipulate data like they manipulate single cards, pieces and other things
13:06:20 <wib_jonas> of course a lot of it is hard to manipulate freely in game, so attempts for simulations with M:tG: like the ones ais523 does usually use very restricted subsets of the states
13:06:38 <arseniiv> this would probably be clumsy in most cases, of course, with practicality and interestingness being the heart of the question
13:08:08 <arseniiv> btw I sometimes try to invent algebraic-y combinatory decks of cards which would allow interesting simple games with that deck (something like what was done with Set, but Set is too simple)
13:09:04 <esolangs> [[Miser]] M https://esolangs.org/w/index.php?diff=117847&oldid=117846 * None1 * (+25) /* Interpreter */
13:09:40 <wib_jonas> Set is a bounded game (if the number of players is bounded at least), I specifically said unbounded games to avoid that sort of thign
13:09:58 <arseniiv> I had a peculiar result with Möbius like ranks which allow for there to be ranks that are opposite to each other, or for each rank there to be two opposites, depending on where do we try to draw a prism or antiprism on a Möbius strip
13:10:25 <arseniiv> yeah this is not about Turing-complete games and inductive types, I digressed
13:15:21 <fizzie> arseniiv: Yeah, the problem was/is that it only accepts "admin" commands with a specific "user@cloak" suffix, and due to some inexplicable indentd breakage I'm now "~user@cloak" instead, so it refuses to obey me and join the channel.
13:15:25 <fizzie> It'd be quite easy to just patch that ~ in there, but I wanted to fix that identd situation, just haven't gotten around to it.
13:18:06 -!- fungot has joined.
13:18:16 <fizzie> (I just added the ~.)
13:18:30 <fizzie> fungot: How was your extended vacation off the channel?
13:18:31 <fungot> fizzie: good lord, mr fnord has gained... uh... something warp flux thingy worked. answer: " quite well, the u of o dominates eugene or, but, which one shows more idle time?
13:18:40 <arseniiv> interesting
13:18:46 <fizzie> Maybe a little more incoherent than normal.
13:19:50 <arseniiv> “mr fnord” is interesting too, though it should be by all means the expected state transition
13:19:52 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117848&oldid=117602 * None1 * (+371)
13:19:52 <arseniiv> `style
13:19:54 <HackEso> style? No such file or directory
13:20:02 <arseniiv> `prefix
13:20:03 <HackEso> prefix? No such file or directory
13:20:05 <fizzie> If it was written in a proper language I'd probably just make it do the IRCv3 `account-tag` thing for command authentication.
13:20:07 <fizzie> `prefixes
13:20:08 <arseniiv> uh my poor memory
13:20:09 <HackEso> Bot prefixes: fungot ^, HackEso `, EgoBot !, lambdabot @ or ? or > , thutubot +, metasepia ~, idris-bot ( , jconn ) , j-bot [ , bfbot =, velik \.
13:20:12 <arseniiv> thanks
13:20:20 <arseniiv> ^style
13:20:20 <fungot> Available: agora alice c64 ct darwin discworld elon enron europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack oots pa qwantz sms speeches ss wp ukparl youtube
13:20:30 <arseniiv> hm what is the current one
13:20:36 <fizzie> "irc"
13:20:40 <fizzie> That's why there's a * next to it.
13:20:51 <fizzie> (A very easy-to-miss *.)
13:21:07 <arseniiv> ah ah now I see; uh
13:21:28 <arseniiv> I thought it was one of parliaments
13:21:54 <arseniiv> though then mr fnord is not as expected
13:22:00 <fizzie> They may not talk that much about warp flux thingies in the parliaments.
13:22:09 <fizzie> Although who knows, maybe they do.
13:22:21 <fizzie> ^style ukparl
13:22:21 <fungot> Selected style: ukparl (UK Parliament debates from brexit referendum to late 2018)
13:22:21 <arseniiv> reasonable
13:22:30 <arseniiv> I overlooked that part too
13:22:34 <fizzie> fungot: What do you think of the tax rate nowadays?
13:22:35 <fungot> fizzie: government new clause 1. one interesting point from the hon. and learned friend the minister for that. i have an opportunity to make the government think of themselves as dictators, but
13:23:01 <arseniiv> it’s so homey
13:24:55 <fizzie> fungot: I think someone told me that freezing the income tax bands like they did instead of updating them in line with inflation is in fact effectively a rather large tax increase, just in a more sneaky fashion. What do you think about that?
13:24:55 <fungot> fizzie: he has the better cakes, i may, from september, we have the right to the protection of a british citizen, to whom governments should have a direct opportunity to do the right things, local developers to do precisely that.
13:25:16 <fizzie> Oh, well, if we get the better cakes I guess it's worth it.
13:28:01 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117849&oldid=117848 * None1 * (+319)
13:28:30 <arseniiv> 🎂
13:29:25 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117850&oldid=117849 * None1 * (+69) /* I/O */
13:29:55 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117851&oldid=117850 * None1 * (+4)
13:30:06 <int-e> `? fungot
13:30:06 <fungot> int-e: to the hon. and learned friend the member for leeds north through the northern ireland
13:30:08 <HackEso> fungot is our beloved channel mascot and voice of reason.
13:30:13 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=117852&oldid=116181 * PaxtonPenguin * (+103)
13:30:18 <int-e> <3
13:30:45 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117853&oldid=117851 * None1 * (+66) /* Commands */
13:31:59 <wib_jonas> arseniiv: would you count Hercules and the hydra as a game? it works on trees. http://www.madore.org/~david/weblog/d.2008-03-27.1537.html http://www.madore.org/~david/weblog/d.2008-03-16.1534.ordinaux-et-hydres.html#d.2008-03-16.1534 http://www.madore.org/~david/math/hydra0.xhtml http://www.madore.org/~david/math/hydra.xhtml (these are two
13:31:59 <wib_jonas> different games, the hydra and the dire hydra)
13:32:09 <esolangs> [[Chefs Kiss]] M https://esolangs.org/w/index.php?diff=117854&oldid=117842 * PaxtonPenguin * (+18)
13:32:14 <wib_jonas> or do the lambda crocodiles count as a game?
13:32:47 <arseniiv> lambda crocodiles sound familiar hmm
13:33:21 <wib_jonas> http://worrydream.com/AlligatorEggs/ explicitly calls it a game, but of course they might be using that word differently from what youw ant
13:34:16 -!- tromp has quit (Read error: Connection reset by peer).
13:35:12 <wib_jonas> wait, fungot returned? hi fungot
13:35:13 <fungot> wib_jonas: i have to be clear, the government i have nothing good going fnord and grieving families to have the best of the public sector.
13:35:14 <esolangs> [[AMONGUSISABIGSUSSYBAKAHAHAHAHAHATHISLANGUAGEISREALLYCOOLPLEASEUSEITMYLIFEDEPENDSONITORELSEPLSPLSPLSPLSPLSPLSPLSkahyghdfhm]] M https://esolangs.org/w/index.php?diff=117855&oldid=114132 * PaxtonPenguin * (+17)
13:35:22 <wib_jonas> `? prefixes
13:35:24 <HackEso> Bot prefixes: fungot ^, HackEso `, EgoBot !, lambdabot @ or ? or > , thutubot +, metasepia ~, idris-bot ( , jconn ) , j-bot [ , bfbot =, velik \.
13:36:58 <cpressey> arseniiv: According to WP the game of Nim has been adaptedto graphs ("The starting board is a disconnected graph, and players take turns to remove adjacent vertices." is all it says though?)  So I wonder if it could be adapted to inductive types.  I don't know.
13:37:06 <wib_jonas> perlbot prefixes
13:37:06 <perlbot> wib_jonas: fungot ^, HackEso `, EgoBot !, lambdabot @ or ? or > , thutubot +, metasepia ~, idris-bot ( , jconn ) , j-bot [ , bfbot =.
13:38:01 <arseniiv> cpressey: oh huh
13:38:18 <fizzie> If we get a ,-prefixed bot, it'll look a little confusing in that list, no matter whether it's `..., commabot ,, ...` or `..., commabot , , ...`.
13:39:07 <wib_jonas> fungot, why does worm not rhyme with dorm? int-e wanted to know
13:39:07 <fungot> wib_jonas: is the hon. and learned friend the member for glasgow north, for the scottish government the powers to the tenant to the county, the proud and justified. it and the associated secretary of states and government
13:39:27 <fizzie> (I've been thinking of (re)using ! for `esolangs` if it ever gets any functionality that's user-triggerable, like logsearching or something.)
13:39:27 <wib_jonas> fungot: When will Unicode become Turing complete?
13:39:28 <fungot> wib_jonas: i have a number, has a capacity of about 690 people in my local police, i have to make a public statement, which may have a sustained and at what amazon, we are a country of only 5.5 million. through the bill,
13:39:40 <wib_jonas> fungot, have you ever decried anything?
13:39:40 <fungot> wib_jonas: to fnord part of the uk, creating a new, integrated and fully support the government,
13:39:51 <wib_jonas> fungot, is a "weatherspoon" the propeller thing under a weathercock that spins to show how fast the wind is?
13:39:54 <esolangs> [[User:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=117856&oldid=117807 * PaxtonPenguin * (+23) Me when
13:40:08 <int-e> that's a good list of things to decry tbh
13:40:32 <cpressey> arseniiv: I very much do not understand most of the things in type theory.  I'm not sure if I want to go down that road or not.
13:48:29 <wib_jonas> fizzie: my plan, if I ever again make a queryable IRC bot (that doesn't just take over a full channel and answer there) is to again respond to their irc nick, but also have six three-character shortcuts for the six most frequent commands, namely -0= -=0 0-= 0=- =-0 =0- ; unless it's a bot that implements Niagara, in which case the shortcut is the
13:48:30 <wib_jonas> three-character waterfall ~|_ or the shorter two-character waterfall ~| for brevity
13:49:35 <wib_jonas> single-character prefixes are annoying, HackEso and lambdabot both get triggered by accident two often
13:49:43 <wib_jonas> even when it's two characters but the second is space
13:51:09 <wib_jonas> and yes, I'm saying that despite that I first programmed jevalbot to be triggerable by a single character plus space, and then, when someone asked, I added a setting to make the space optional, and that option was used for whatever instance used ) as its invocation shortcut
13:56:24 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=117857&oldid=117191 * None1 * (+246) /* Delete a page */ new section
13:56:58 -!- cpressey has quit (Quit: Client closed).
13:59:37 -!- cpressey has joined.
14:03:15 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=117858&oldid=117838 * None1 * (+318) /* My projects about esolangs */
14:05:14 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=117859&oldid=117858 * None1 * (+34) /* jitbf */
14:06:49 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=117860&oldid=117859 * None1 * (+0) /* jitbf */ WTF Jul. is July not June
14:07:28 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=117861&oldid=117860 * None1 * (+1) /* jitbf */
14:09:10 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117862&oldid=117742 * Lilchiky * (+169) /* */
14:09:25 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=117863&oldid=117852 * None1 * (+84) /* Commands */
14:14:38 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=117864&oldid=117863 * None1 * (+217) /* Commands */
14:15:00 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] M https://esolangs.org/w/index.php?diff=117865&oldid=117864 * None1 * (+0) /* Commands */
14:16:12 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] M https://esolangs.org/w/index.php?diff=117866&oldid=117865 * None1 * (-11) /* Commands */
14:18:53 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=117867&oldid=117862 * None1 * (+373) /* Recursion */
14:29:36 <esolangs> [[Category:Accumulator-based]] https://esolangs.org/w/index.php?diff=117868&oldid=116430 * Lilchiky * (+85) adding onto this
14:30:40 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=117869&oldid=117258 * Lilchiky * (+31) a new cat
14:31:00 <esolangs> [[Category:Accumulator-based]] M https://esolangs.org/w/index.php?diff=117870&oldid=117868 * Lilchiky * (-1)
14:46:04 <cpressey> "Inductive types usually come with a function to prove properties about them." (WP again) -- I dunno about "usually" -- I don't know what you'd call an inductive type that doesn't support proof by induction -- isn't that just a recursive type?
14:58:30 -!- wib_jonas has quit (Quit: Client closed).
14:59:08 -!- wib_jonas has joined.
14:59:41 <esolangs> [[Chefs Kiss]] M https://esolangs.org/w/index.php?diff=117871&oldid=117854 * PythonshellDebugwindow * (+114) Stub, categories
15:01:53 -!- Thelie has quit (Remote host closed the connection).
15:04:59 <esolangs> [[User:B jonas]] https://esolangs.org/w/index.php?diff=117872&oldid=112607 * B jonas * (+216) /* Todo */ pointer machine
15:09:06 -!- Sgeo has joined.
15:19:07 -!- wib_jonas has quit (Quit: Client closed).
15:32:04 -!- arseniiv has quit (Ping timeout: 252 seconds).
15:35:58 -!- arseniiv has joined.
15:36:35 <cpressey> Ah, craziness!  I just discovered by accident that L. C. Paulson has a blog on GitHub: https://lawrencecpaulson.github.io/
15:43:10 <river> nice
15:50:02 <esolangs> [[Swapfuck/Implementation]] M https://esolangs.org/w/index.php?diff=117873&oldid=86422 * PythonshellDebugwindow * (+4) Back, category
15:51:29 <river> https://quoteme.github.io/posts/sheaves_in_minecraft
15:54:24 -!- Cale has joined.
16:03:50 <cpressey> OK I *kind of* followed that :)
16:06:04 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=117874&oldid=117819 * PaxtonPenguin * (+186)
16:06:14 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=117875&oldid=117874 * PaxtonPenguin * (+1)
16:06:42 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=117876&oldid=117875 * PaxtonPenguin * (+6)
16:07:24 -!- cpressey has quit (Quit: Client closed).
16:08:23 <esolangs> [[Parrot]] M https://esolangs.org/w/index.php?diff=117877&oldid=11377 * PythonshellDebugwindow * (+23) Category
16:12:38 -!- cpressey has joined.
16:23:01 -!- Franciman has left (WeeChat 3.8).
16:31:34 -!- cpressey has quit (Quit: Client closed).
17:10:26 -!- Thelie has joined.
17:30:43 -!- craigo has joined.
17:30:58 -!- craigo has quit (Remote host closed the connection).
17:44:15 -!- arseniiv has quit (Ping timeout: 240 seconds).
18:16:41 -!- craigo has joined.
18:30:18 <esolangs> [[Special:Log/delete]] delete * Ais523 * deleted "[[Python program which generates code that prints the certain text]]"
18:31:41 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=117878&oldid=117857 * Ais523 * (+134) /* Delete a page */ deleted
18:33:23 -!- Thelie has quit (Ping timeout: 255 seconds).
18:35:36 -!- ais523 has joined.
18:36:27 <ais523> b_jonas: there's a TCness construction for Magic: the Gathering where the only game object you need unlimited quantities of is +1/+1 counters (although the program is represented by tokens, you only need finitely many of them to represent any given program)
18:36:53 <ais523> although, the current "best" (=simplest and most flexible) construction stores data in the quantity of tokens and in the amount of damage marked on them, so needs arbitrarily many tokens
18:38:05 <ais523> incidentally, there's no rule saying that the five land-typed-and-non-snow basic lands have to be always available – they do have to keep being reprinted in order to remain legal in Standard
18:40:48 <b_jonas> ais523: isn't there now a new rule that you can replace a card in your deck with one of the five basic lands in *constructed* if you registered with a deck but it turns out you can't play one of your cards because the physical card is damaged or some similar problem?
18:42:06 <ais523> I don't think that rule's new, I remember it from the first time I looked at the tournament rules
18:42:29 <ais523> but I'm not sure specifically which lands it allows
18:42:46 -!- arseniiv has joined.
18:43:16 <ais523> Netrunner also has a rule allowing cards to be replaced in order to make a deck legal, but the prescribed replacement cards actually don't exist in the game
18:44:00 <ais523> e.g. if your deck doesn't have enough agenda points, you have to replace cards with vanilla 4/2 agendas until you have enough, but there are no vanilla 4/2 agendas printed
18:44:03 <b_jonas> what do you mean by "don't exist in the game"?
18:44:08 <ais523> I think the idea is that you proxy one
18:44:15 <b_jonas> I see
18:45:10 <ais523> (a vanilla 4/2 agenda would be really bad and numerous cards are strictly better than it – I think the intention is for the replacement card to be worse than any card you might play intentionally)
18:46:24 <b_jonas> I think I've seen something like that in casual to define how goldfishing work. My preference is that the goldfish player has a deck of 60 cards of Forest (or whatever number of cards is normal in the format); but other people prefer 60 cards with no type or mana cost
18:46:50 <ais523> that got updated to 60 Wastes at one point, because the basic land types on the opponents' lands ended up mattering sometimes
18:47:04 <ais523> * at some point
18:47:42 <ais523> and, well, it's more symmetrical to pick the basic land that isn't part of a cycle
18:49:47 -!- Europe2048 has joined.
18:49:57 <Europe2048> Hi everyone!
18:50:30 <b_jonas> ais523: I think the principled solution would be to use Plains because there are almost no creatures with plainswalk; I prefer Forests, but if I play a deck with cards with forestwalk then I would use Plains instead
18:50:31 <ais523> this reminds me, I proved a language Turing-complete for a team of people working on M:tG Turing-completeness, simplifying the construction, but haven't been able to tell them about it because they communicate via a forum that needs a Twitch account to log into
18:50:59 <b_jonas> ais523: that must be the Scryfall forum
18:51:02 <ais523> forestwalk doesn't usually matter against an all-land deck, unless you're giving the opponent creatures to block with
18:51:07 <ais523> b_jonas: actually no, MTG Salvation
18:51:15 <Europe2048> Please finish this: https://esolangs.org/wiki/Nice
18:51:16 <b_jonas> right, that one
18:52:46 <Europe2048> So you agree with me?
18:53:25 <ais523> Europe2048: the page *was* finished, but it was using images illegally stolen from other websites
18:53:26 <ais523> so they had to be deleted
18:53:47 <Europe2048> So now you have to remake 'em, all by yourself.
18:53:52 <ais523> no I don't
18:54:10 <Europe2048> Why?
18:54:37 <ais523> because that isn't how obligations work
18:54:41 <b_jonas> ais523: so why can't you get an account on twitch? have they started to require phone verification for all new accounts or some such nonsense?
18:54:49 <ais523> b_jonas: I don't agree with their terms of service
18:55:18 <b_jonas> including parts that would impact you if you don't stream?
18:55:25 <b_jonas> s/would/would not/
18:55:47 <b_jonas> their terms of service is quite weird for sure
18:55:58 <b_jonas> but most of the weird rules are for streaming or for twitch chat
18:56:09 <ais523> b_jonas: last time I looked they had a rather overreaching indemnification clause
18:56:11 <esolangs> [[Talk:Nice]] https://esolangs.org/w/index.php?diff=117879&oldid=117372 * Europe2048 * (+183)
18:56:21 <b_jonas> hmm, I'll look at that
18:56:57 <ais523> I imagine the entire ToS has changed since – those things tend to have a lot of churn – but it's still not something I particularly want to get involved with
18:57:34 <zzo38> Is there any newsgroup on Usenet that is suitable to write about Turing-completeness of Magic: the Gathering?
18:57:58 <ais523> zzo38: technically yes, but it's unlikely anyone is still reading it
18:58:31 <ais523> Usenet used to be the primary forum for discussing Magic: the Gathering a couple of decades ago, and as such there's at least one newsgroup for general M:tG discussion
18:58:39 <ais523> although I'm not 100% confident about what it was called
18:59:33 <ais523> I think it started rec.games., but there's a chance it was in alt.
19:00:34 <b_jonas> oh the ToS definitely keeps changing and growing for sure
19:01:52 <b_jonas> Wizards hosted a web forum about M:tG and more for a while, but they sadly removed it from the web since. that forum did contain a lot of useful information.
19:02:13 <ais523> they also turned off Gatherer comments
19:02:21 -!- arseniiv has quit (Quit: gone too far).
19:05:55 <b_jonas> https://www.twitch.tv/p/en/legal/terms-of-service/#a-indemnification ah, this is probably what you're talking about
19:07:21 <ais523> wow, yes, that clause is *still* ridiculous
19:07:26 <b_jonas> yes it is
19:07:46 <b_jonas> I guess in that case you'll have to find other contacts for someone involved
19:08:16 <ais523> I have been trying
19:08:35 <ais523> at this point the easier approach seems to be to find someone who already has a Twitch account and would be willing to relay the message
19:08:41 <b_jonas> or write up on http://nethack4.org/pastebin/unfinished-mtg-tc-combo.html and hope they read it
19:08:54 <ais523> it seems weird to edit a pastebin
19:09:05 <b_jonas> oh, that's a pastebin
19:09:05 <ais523> even though I can do it, due to having control of the server it's implemented on
19:09:06 <b_jonas> hmm
19:09:24 <b_jonas> I thought you had something outside of the pastebin
19:09:31 <ais523> it's on the wiki
19:09:35 <ais523> https://esolangs.org/wiki/Flooding_Waterfall_Model
19:10:05 <int-e> Oh lovely indeed. I especially like "[...] Twitch reserves the right, at your expense, [...]"
19:10:50 <esolangs> [[User:Ais523]] https://esolangs.org/w/index.php?diff=117880&oldid=117119 * Ais523 * (+55) link [[Flooding Waterfall Model]], not my language but relevant to the M:tG discussion
19:12:03 <ais523> if they ever tried to enforce that clause in full, they would be destroyed by the media
19:12:11 <fizzie> I got a badge on our intranet team page from having had a source control client named after a M:tG card, but it was completely accidental.
19:12:15 <fizzie> (I think it was just "knight" or something, named after a project/group/thing.)
19:13:02 <b_jonas> just "Knight" isn't an M:tG card. it's an M:tG creature type.
19:13:17 <ais523> b_jonas: it was the name of a token, until the rule change to token names
19:13:24 <ais523> but yes, tokens are not cards
19:14:01 <fizzie> It was probably pulled from some database of some kind by someone who didn't pay attention good.
19:14:18 <b_jonas> there are M:tG cards with very generic names admittedly.
19:14:40 <b_jonas> also Slay the Spire seems to have proportionally more generic names than M:tG apparently
19:15:15 <ais523> Slay the Spire naming is weird, many of the names are generic but many of them aren't
19:15:21 <Europe2048> Also, I'm building a bf interepter in Scratch.
19:15:32 <Europe2048> It will have 256 memory cells.
19:15:46 <ais523> incidentally, when I went onto a Netrunner forum to tell people about the TCness proof, it turned out that the creator of Slay the Spire was owner of the forum
19:16:23 <ais523> (the forum came first)
19:17:20 <int-e> Oh they also have one of those lovely "symmetric" arbitration clauses that aren't symmetric at all when you're a consumer and the other party is a billion dollar company.
19:18:21 <ais523> int-e: the funny thing there is, the asymmetry actually ends up benefiting the consumer usually, there's at least one case semi-recently of a company ending up hugely burdened by their own arbitration caluse
19:18:21 <fizzie> Apparently it was for having one called "knight" but also for having one called "launch", which does appear -- https://scryfall.com/card/usg/82/launch is what the 'why I have this badge?' script links to -- to be an actual card.
19:18:41 <ais523> `card-by-name Launch
19:18:43 <HackEso> Launch \ 1U \ Enchantment -- Aura \ Enchant creature \ Enchanted creature has flying. \ When Launch is put into a graveyard from the battlefield, return Launch to its owner's hand. \ US-C \ \ Launch Party \ 3B \ Instant \ As an additional cost to cast this spell, sacrifice a creature. \ Destroy target creature. Its controller loses 2 life. \ RTR-C \ \ Launch the Fleet \ W \ Sorcery \ Strive -- This spell costs {1} more to cast for each target beyond the
19:19:04 <ais523> `card-by-name Rancor
19:19:06 <HackEso> Rancor \ G \ Enchantment -- Aura \ Enchant creature \ Enchanted creature gets +2/+0 and has trample. \ When Rancor is put into a graveyard from the battlefield, return Rancor to its owner's hand. \ UL-C, ARC-C, PC2-C, M13-U, EMA-U, PCA-C, E02-U, A25-U, DDD-C
19:19:17 <ais523> ah, I was wondering if it was a cycle, apparently not though
19:19:26 <ais523> would be a *very* unbalanced cycle if so :-)
19:20:52 <int-e> ais523: I'm not sure whether I agree with the conclusion... to my mind that case was an outlier where the company (I forgot which one) actually lost in arbitration. I don't have any data though.
19:21:08 <ais523> int-e: it was more about the costs to the company
19:21:20 <ais523> I think it was some "arbitration rather than class action" thing
19:21:37 <ais523> and the class action would have been *much* cheaper for the company than a huge number of individual arbitration cases
19:21:49 <ais523> which they had to deal with individually
19:21:57 <int-e> Ah, I don't think I saw that.
19:22:31 <b_jonas> ais523: I think Rancor is a cycle
19:22:34 <b_jonas> is in a cycle
19:22:40 <int-e> The case I saw was a company who lost in arbitration and tried to appeal and found that their ToS said they couldn't do that... so they lost.
19:23:09 <int-e> But it was a while ago and I forgot all the details. :-/
19:24:57 <esolangs> [[Placement]] M https://esolangs.org/w/index.php?diff=117881&oldid=97071 * PythonshellDebugwindow * (+79) Categories
19:25:11 -!- __monty__ has quit (Quit: leaving).
19:27:22 <b_jonas> ais523: hmm, it looks like it might be two different cycles, one is Cessation, Slow Motion, Sleeper's Guile, Sluggishness, Rancor; the other is Brilliant Halo, Launch, Despodency, Fiery Mantle, Fortitude.
19:27:33 <b_jonas> I have multiple of these cards
19:27:48 <b_jonas> and I did remember that Rancor is a cycle
19:28:07 <b_jonas> they come from old sets so unbalanced cycles aren't unlikely
19:29:29 <ais523> ooh, I think I have a Reddit account for one of the people in the thread, it surely has to be the same person
19:30:53 <ais523> wow, the Reddit send private message thing isn't working any more
19:30:57 <ais523> how much have they managed to break that site
19:31:19 <ais523> shift-refresh fixed it
19:31:21 <ais523> still, wow
19:32:31 <b_jonas> fizzie: https://www.irregularwebcomic.net/draakslair/viewtopic.php?p=179213&hilit=atog#p179213 is relevant for how easy it is to accidentally name something the same as a M:tG card, so I can easily believe that you named a software the same as a card, it's just that "Knight" doesn't match
19:33:29 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=117882&oldid=117876 * PaxtonPenguin * (+23) When the h
19:33:50 <b_jonas> maybe you called it Minamo, School at Water's Edge instead
19:34:12 <ais523> let's see if this works
19:35:29 <b_jonas> oh yeah, ais523's version control system shares its name with an M:tG card
19:35:51 <b_jonas> so does Apache's
19:35:56 <b_jonas> wow
19:36:48 <ais523> b_jonas: mine also shares its name with a Yu-Gi-Oh! card, which is more notable because it's one of the most famous cards in the game – an entire format is named after it
19:37:18 <b_jonas> nice
19:37:21 -!- cpressey has joined.
19:37:54 <b_jonas> next we need to find a collectible card game that has a card named "Mercurial"
19:38:33 <ais523> M:tG has Mercurial Spelldancer, but I don't think it has Mercurial as a single word
19:38:41 <b_jonas> oh, that reminds me, what's the Knight card in Settlers of Catan called? is it "Knight"?
19:39:48 <b_jonas> looks like it is "Knight"
19:39:50 <Europe2048> What are you talking about?
19:39:55 <b_jonas> fizzie: ^
19:40:57 <ais523> Europe2048: we're a little offtopic at the moment, talking about cards in card games that have the same name as other things
19:41:51 <b_jonas> the reference to ais's version control software is obscure. it doesn't exist yet and it's called scapegoat.
19:42:20 <Europe2048> ais523: OK!
19:42:59 <ais523> planning software projects is so much easier than actually writing them
19:43:19 <ais523> especially for me at the moment, I was trying to write more of a program earlier today and just couldn't do it
19:45:48 <ais523> at present, it feels like I'm only able to program for about a week at a time, and then it takes a couple of weeks to recover from it
19:46:11 -!- tromp has joined.
19:49:02 <Europe2048> "> tromp has joined"
19:49:19 <Europe2048> This isn't the White House.l
19:49:39 <Europe2048> (the l was typed accidentally)
19:50:02 <ais523> turns out that sometimes, some surnames have several letters in common with other surnames
19:53:11 <cpressey> ais523: I spent the week writing a (not-quite-)Scheme to JavaScript compiler.  Which kind of works, but a lot of the library procedures aren't implemented.
19:53:37 <cpressey> It also interprets! And it's written in Lua.
19:53:50 <cpressey> It cheats very much by leaving out tail recursion.
19:54:23 <cpressey> The next step is to implement some esolangs in it.
19:54:33 <ais523> oh right, being a compiler rather than an interpreter, it isn't trivial to implement tail recursion without support in the host language
19:54:50 <cpressey> Yah.
19:54:55 <ais523> is JavaScript allowed to support tail-recursion? if so, I imagine most of the browser engines would implement it
19:55:13 <ais523> some languages have semantics which make tail-recursion an invalid optimisation for one reason or another
19:56:01 <ais523> out of interest, how good is Lua at writing compilers? I don't think I've ever tried that combination
19:56:36 <b_jonas> each of "commit", "clone", "clean", "reset", "restore", "status", are both M:tG card names and git subcommands. They should print a "bisect" instant and add an "index" subcommand.
19:59:11 <ais523> isn't "commit" half an aftermath card? which makes the pronounced card name "commit to memory"
19:59:28 <ais523> but the names of the halves are treated separately by the game, so I expect it counts
20:00:47 <b_jonas> I'm not sure but I think the aftermath cards just have the first name as their name unless they're on the stack cast with aftermath
20:02:26 <b_jonas> cpressey: is this the scheme-like language that you were talking about a few days ago?
20:11:18 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=117883&oldid=117882 * PaxtonPenguin * (+43)
20:19:21 <esolangs> [[Udymts]] M https://esolangs.org/w/index.php?diff=117884&oldid=92264 * PythonshellDebugwindow * (-25) Link, categories
20:20:08 <zzo38> I think JavaScript is allowed to implement tail-recursion in some cases only, as far as I know
20:22:21 <zzo38> Planning software project easier than writing it might also depend what plans are being made, I think
20:23:59 <zzo38> One thing I wanted to design (and might be good with better discussion of it) is operating system design.
20:24:07 <zzo38> b_jonas: What is "bisect" instant going to mean?
20:25:00 <ais523> presumably some sort of removal spell
20:25:21 <ais523> although there is already Saw In Half (too new to be in the bot, I think), which changes one creature into two tokens with each have half the stats
20:25:27 <ais523> I think, at least
20:26:01 <ais523> not 100% sure, it's hard for me to remember all the details of a card that's never been particularly relevant to me
20:39:17 <b_jonas> yeah, I'm thinking it's a creature removal spell
20:39:29 <esolangs> [[Fm]] M https://esolangs.org/w/index.php?diff=117885&oldid=69397 * PythonshellDebugwindow * (+29) Category
20:41:32 <b_jonas> or it could be a red removal spell that kills a creature or artifact
20:52:29 -!- cpressey has quit (Quit: Client closed).
20:52:43 -!- cpressey has joined.
20:53:55 <cpressey> Was torn away for a bit there.  ais523: I don't know if tail calls can be optimized in JS - I suspect they can't but only because I can't recall reading about it, and I know I've read about some optimizations JS compilers do.  This is the largest project I've done in Lua, and it's not much worse than using say Python, but it's a bit goofier /
20:53:55 <cpressey> less intuitive.
20:55:23 <cpressey> b_jonas: Yes, it's that one.  I don't know how similar to actual Scheme it will turn out to be, but it's, erm, "mutually intelligible".
21:02:13 <cpressey> According to some web searches, the ES6 spec permits implementations to do TCO, but as of 2023 the only engine that actually does it is Safari.  I wouldn't've guessed that.
21:02:51 <ais523> cpressey: Firefox and Chromium both have very advanced debuggers, maybe they don't implement TCO because it would mess with the debugger
21:16:23 <cpressey> It is apparent that they Have Reasons Not To, whatever they exactly are.  Apparently Chromium tried, back in 2016, but then backed out.  Anyway, it's no matter.  The functions I'll be writing in this don't do much recursion at all, and it iteration is needed, it can be done in library functions.  And if I ever DO feel like writing a
21:16:23 <cpressey> trampolining compiler, I now have something I can extend in that direction instead of starting from scratch.
21:16:58 <cpressey> Actually, if there are recursion schemes, can't there also be iteration schemes?  Instead of fold(), you have iter()
21:17:41 <b_jonas> there's also the compromise where you optimize some tail calls but don't guarantee optimizing all of them
21:17:53 <b_jonas> real world compilers do that
21:28:37 -!- Europe2048 has quit (Quit: Client closed).
21:47:15 -!- cpressey has quit (Quit: Client closed).
23:59:22 -!- Penguin has joined.
23:59:31 -!- FortyTwoBB has joined.
23:59:32 -!- Penguin has quit (Client Quit).
2023-10-14
00:00:02 -!- FortyTwoBB has quit (Client Quit).
00:02:33 <ais523> gah, FortyTwo was here and gone before I noticed
00:02:41 -!- FortyTwoBB has joined.
00:02:44 <ais523> hi FortyTwoBB
00:02:49 <ais523> https://esolangs.org/wiki/Flooding_Waterfall_Model
00:02:56 <FortyTwoBB> hi apparently flooding is TC?
00:02:58 <ais523> yep
00:03:05 <FortyTwoBB> how does that work?
00:03:12 <ais523> you can't meaningfully store data in the quantity of tokens, but you can store it in the amount of damage marked on them
00:03:28 <FortyTwoBB> because that is fantastic news
00:03:49 <ais523> there's a summary on the wiki page, and I wrote a compiler into Flooding Waterfall Model (and an interpreter for the language) to make sure it worked
00:03:55 <FortyTwoBB> oh? but the damage is done the same very tick?
00:04:00 <FortyTwoBB> every*
00:04:05 <ais523> it depends on when the first token was made
00:04:12 <ais523> because when the oldest token dies, they all die
00:04:36 <ais523> so, if you have say 1000 tokens, the tokens die 1000 ticks after the first token was made
00:04:49 <ais523> and by changing the timing of the first token you can store information, even though the number of tokens is fixed
00:06:05 <FortyTwoBB> ok? but you can only create tokens when others die, so being a few ticks earlier or later is not easy to control right?
00:06:20 <ais523> it does need controlling, but it wasn't too bad to control it
00:06:28 <ais523> there are two basic ideas
00:06:53 <ais523> one is that we split the creature types into two groups, and alternate between the two groups: most of the time, either all the tokens belong to one group or all the tokens belong to the other
00:07:23 <ais523> (so each creature type spends a lot of time with no creatures at all, other than the one used for halting)
00:07:52 <FortyTwoBB> sure
00:08:05 <ais523> if we have, say, one Ape makes two Beasts, and one Beast makes three Cats, then the fact that a group empties means that the number of tokens of any given type is always known – it's just a linear equation, so we have a recurrence relation
00:08:56 <ais523> call one change from one group to the other a "cycle"
00:09:00 <FortyTwoBB> yeah a cycle of linked types making each other
00:09:23 <FortyTwoBB> because the apes need to be made from something
00:09:25 <ais523> then, the number of tokens of any given type can be made to be some constant b, to the power of the number of cycles, plus a number that follows a repeating pattern from one cycle to the next
00:10:36 <ais523> the way you do that is to have some "baseline" types which follow a very simple pattern (e.g. you always have one more Ouphe than Homarid), and use those to build up more complicated patterns
00:10:57 <ais523> and for the baseline types, the timing of the tokens doesn't matter, it's set up so that they always finish changing over after the other types do
00:11:24 <ais523> now, for the non-baseline types, they are created either from baseline types or from each other, and we can make those follow a known pattern in quantity
00:11:59 <ais523> because we know how much are created from each other (the quantity is always known) and can use baseline types to adjust the quantity (e.g. if we want to increase the amount by one, we add one more Ouphe creating them and one less Homarid)
00:12:12 <ais523> so, our program can make the quantities change in a pattern
00:12:24 <ais523> and the quantity determines the time period between the first token being created and the tokens dying
00:13:00 <ais523> so, we can effectively do arithmetic on these time moments, death time = creation time + X where we choose the value of X
00:13:18 <FortyTwoBB> hmm
00:13:28 <ais523> but, if two different non-baseline creature types each create the same creature type, then only the first one counts for the creation time
00:13:51 <ais523> which makes it possible to do conditionals, because it in effect gives a minimum operator
00:14:56 <FortyTwoBB> because they would get swept into the cycle
00:15:21 <ais523> the details are in the comments here: http://nethack4.org/esolangs/waterfall-to-flooding-waterfall.pl
00:15:44 <FortyTwoBB> yeah i have that open and am swapping back and forth
00:17:19 <ais523> the one complexity is that there are a few cases where a creature needs to create another of the same group – that produces a sort of "sharp edge" transition that's used to handle control flow in the program being implemented (I implemented regular Waterfall Model, so this is control flow and the zeroing triggers)
00:17:54 <ais523> but, there's never a loop within a group, and each cycle uses exponentially more tokens than the cycle before, so the groups still alternate as intended
00:18:25 <ais523> I'm glad my message got through to the thread, anyway – I don't have a Twitch account and couldn't find a reliable way to send the message
00:18:54 <FortyTwoBB> yeah its silly the channels of communication
00:18:56 <ais523> Reddit has become surprisingly broken since it imploded, there were technical issues sending it (and, I gather from the thread, receiving it)
00:20:41 <FortyTwoBB> so basically there's cycles like A->B->C->D->A and X->Y->Z->X with one like Z->C link?
00:21:32 <ais523> no, it's more like all of A,B,C create all of X,Y,Z with like one A->B link
00:21:51 <ais523> the trick is to deal with the "token creation time" and "token quantity" parts of it separately
00:22:07 <ais523> because once the first token has been created, you can add more and it doesn't change the amount of damage marked on the first token
00:22:27 <ais523> as long as you create all the tokens before the first one dies, the timing of the later ones doesn't matter
00:24:07 <ais523> in more detail, the types are in two groups A and B, each of which is divided into baseline and non-baseline types
00:24:17 <FortyTwoBB> well adding more tokens effectively is the same as making fewer tokens later
00:24:26 <ais523> baseline A types create baseline B types and vice versa, the timing doesn't hugely matter and the quantity follows a very simple pattern
00:24:31 <FortyTwoBB> except for the magnitude of the resulting flood
00:24:57 <ais523> the flood magnitudes are controlled to follow a simple pattern
00:25:18 <ais523> the baseline loop basically works to "top up" each token type to the flood magnitude required
00:25:55 <ais523> and then there's a separate loop, where non-baseline A types create non-baseline B types and vice versa, and baseline A also creates non-baseline B and baseline B also creates non-baseline A in order to get the quantities right (but doesn't affect the timing)
00:26:51 <ais523> btw, I used the term "velocity" in the proof to talk about the size of a flood, because it's the distance between the position of the flood of one type and the flood of the types it initially creates
00:27:01 <FortyTwoBB> so like for one clock always being 1 higher than the other, that i can see being done with initial conditions, and having a copied column in the program
00:27:43 <ais523> yep, you get into that position using initial conditions, and then ensure it always remains true throughout the program
00:27:55 <FortyTwoBB> except for a little 2x2 identity matrix at their intersection so the larger one can actually trigger?
00:28:30 <ais523> the actual baseline setup used in the proof is to have one "negative baseline", one "neutral baseline", and n "positive baselines" where n is the number of counters in the emulated program
00:28:47 <ais523> negative baseline has quantity 1 below neutral; one of the positive baseline counters has quantity 1 above neutral, the others are equal
00:29:21 <ais523> and the positives are connected in a sort of twisted loop, so that which positive baseline counter it is that has the higher quantity changes every large cycle (from one group to the other and back)
00:30:40 <ais523> once you have that, you can make the quantities of a counter follow any pattern you like (with repeat length n) via varying how many tokens are created by which of the baselines
00:31:08 <ais523> e.g. say you want the quantities to multiply by 1000 every cycle, and the zeroing triggers from non-baseline counters add up to 5 floods
00:31:32 <ais523> you need 95 from the baselines, and to control the exact quantity, you can choose how many of those 95 are from negative, how many from neutral, how many from each of the positives
00:31:50 <ais523> err, 995, not 95
00:31:54 <FortyTwoBB> yeah
00:32:03 <ais523> and the new velocity wlil end up as 1000 times the old one plus a constant, and you can choose the constant
00:32:27 <ais523> and make it vary in any pattern with a repeat length of n
00:34:32 <FortyTwoBB> This is one of those times where having a vastly more inefficient computation method will actually make the resulting function grow much much faster lol.
00:34:45 <ais523> if you want to try out the compiler, it can be run online at tio.run/#perl (you can copy-and-paste the compiler into the "program" box and write the program to compile in the "input" box)
00:35:05 <ais523> FortyTwoBB: well, it's just one exponential slower than the original Waterfall Model, and uses a lot more counters
00:35:44 <ais523> as such I think the resulting function probably grows more slowly, at least with this construction – you would get a faster-growing function in the original by writing the same program with fewer counters, then using the remaining counters to do an exponentiation
00:36:24 <ais523> it still fits well within creature type limits though
00:36:51 <FortyTwoBB> yeah but we also get to have another card in the deck
00:37:08 <FortyTwoBB> because we dont need dralnu's crusade anymore
00:37:44 <ais523> and I get to have another sideboard card in my competitive Turing-complete deck
00:37:54 <FortyTwoBB> yeah
00:38:13 <ais523> trying to make the deck Turing-complete still seems to damage competitive chances somewhat, though
00:38:49 <ais523> the decks which can naturally reach states which let you do anything tend to either a) care about their sideboard a lot or b) have no way to access it, forcing you to dilute the maindeck
00:39:03 -!- craigo has quit (Remote host closed the connection).
00:39:25 -!- craigo has joined.
00:42:03 -!- craigo has quit (Remote host closed the connection).
00:43:06 <ais523> the creature type usage seems to be 6 flooding counters per original counter, plus 8 flooding counters, plus 1 halt type, plus some way to get into the desired starting state (which in this construction requires additional creature types – as an alternative you could start with damage marked on some of the creatures, or toughness reductions on them)
00:43:16 -!- craigo has joined.
00:43:21 <ais523> but there's enough room to fit, say, a Spiral Rise interpreter
00:44:17 <FortyTwoBB> yeah theres like 270 types now
00:44:21 <shachaf> I'm trying to remember what architectures have interesting memory ordering quirks.
00:44:38 <ais523> oh, in addition to the link to the wiki, have a link to this conversation: https://logs.esolangs.org/libera-esolangs/2023-10-14.html#ld (would be a good thing to post in the MTG Salvation thread)
00:44:50 <shachaf> The two examples I always think of are: POWER doesn't necessarily have multicopy atomicity; Alpha has the split-cache issue with data dependencies.
00:45:31 <shachaf> But I think I'm forgetting other wacky behaviors (I vaguely remember there was some SPARC-specific thing?).
00:46:31 <ais523> shachaf: I find architectures with more guarantees more difficult because it's hard to remember exactly what is and isn't guaranteed
00:47:23 <ais523> like, why does x86 have the SFENCE instruction? normally the memory ordering guarantees make that a no-op, but its existence implies that there are cases where it does something
00:47:24 <FortyTwoBB> yeah im posting it, and I did try the complier and it made a reasonable looking output
00:47:58 <shachaf> I think SFENCE is relevant for non-temporal store visibility.
00:48:17 <ais523> shachaf: but only if you want to overwrite it with another store? it doesn't give store/load ordering
00:48:22 <ais523> you need MFENCE for that
00:48:44 <shachaf> I don't think it's particularly about overwriting it.
00:49:02 <shachaf> It certainly doesn't give store-load ordering or flush the store buffer or anything like that.
00:49:22 <ais523> FortyTwoBB: by the way, thanks to all of you in the MTG Salvation thread for working on this – the Turing-completeness construction is so much neater and simpler than when I started working on this
00:49:51 <FortyTwoBB> so that makes me hopeful for things to work out. I'll need to check some more but you haven't made a mistake so far and this looks good.
00:49:59 <shachaf> But in the classic example where you do store_nt(a, ...); store_nt(b, ...); store(is_ready_flag, true); , I think you need SFENCE to guarantee that if the flag store is visible, so are the a and b stores.
00:50:14 <shachaf> (Whereas for regular stores on x86 that behavior is guaranteed, of course.)
00:50:26 <ais523> shachaf: ah right, to pair with an LFENCE on some other processor
00:50:56 <FortyTwoBB> no thank you! i bashed my head against this and though it was game over for it when the damage doubling version was not TC.
00:51:05 <shachaf> I guess you only ned the LFENCE if you have a non-temporal load, too?
00:51:17 <shachaf> I've never used LFENCE.
00:51:23 <ais523> regular reads can be reordered by the processor
00:51:38 <ais523> if you read memory location X, then read memory location Y, then Y can be given an older value than the value you just read from X
00:51:40 <shachaf> On x86 all regular loads behave like load-acquire.
00:51:50 <ais523> no
00:51:53 <shachaf> And all regular stores behave like store-release.
00:51:58 <ais523> regular stores are release, but regular loads are relaxed
00:52:08 <ais523> so you need to use lfence a lot in multithreaded code
00:52:38 <ais523> FortyTwoBB: I was so worried about making mistakes
00:52:50 <shachaf> I don't think that's true.
00:52:51 <ais523> I wasn't confident this was right until I had the Flooding Waterfall Model interpreter actually running programs
00:53:15 <shachaf> E.g. https://godbolt.org/z/brfjbEKEx
00:54:23 -!- Lord_of_Life_ has joined.
00:54:37 <FortyTwoBB> Yeah if this works it solves our layers problem and shaves a cardslot
00:54:46 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
00:55:29 <shachaf> Ah, https://stackoverflow.com/a/50780314 says that even the use I mentioned isn't necessary:
00:55:32 <shachaf> "_mm_lfence is almost never useful as an actual load fence. Loads can only be weakly ordered when loading from WC (Write-Combining) memory regions, like video ram. Even movntdqa (_mm_stream_load_si128) is still strongly ordered on normal (WB = write-back) memory, and doesn't do anything to reduce cache pollution."
00:55:42 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
00:56:27 <FortyTwoBB> Well I'll need to take some time to go over this, but it looks very very good.
00:57:07 <ais523> shachaf: I was testing on godbolt too, you seem to be right
00:57:32 <ais523> …this means that I have been using a lot more fences than necessary in my x86 code!
01:00:42 <ais523> now I'm wondering how out-of-order execution even works, if it isn't allowed to reorder the loads – presumably it tries to keep all the values it's working with in exclusive cache so that it knows they haven't been written by other processors, and just remembers whether it's written them itself
01:01:03 -!- FortyTwoBB has quit (Quit: Client closed).
01:07:19 <ais523> hmm, I am dreading the technical issues that will happen the *next* time I try to get in contact with the MTG Busy Beaver time, this time was bad enough…
01:08:41 <shachaf> ais523: My vague understanding is that it's pretty speculative.
01:09:23 <shachaf> So it can maybe reorder some loads speculatively and verify later that it turns out to be OK.
01:09:28 <shachaf> But I don't really know the details at all.
01:09:32 <ais523> oh right, you do a speculative load out of order, then check whether it was correct when you retire
01:09:49 <ais523> and end up with a whole load of timing-based sidechannels that end up leaking kernel internals and causing huge security issues
01:10:37 <ais523> I probably knew that at some point
01:10:58 <shachaf> How does this work, though? Say you have "load A; load B;", and B is in your cache but A isn't. You speculatively do the B load while waiting for A.
01:11:37 <shachaf> How can you tell when you get A whether you need to reload B?
01:12:03 <ais523> don't you just throw away all your speculative effort when retiring the "reload B" instruction?
01:12:17 <esolangs> [[^!]] https://esolangs.org/w/index.php?diff=117886&oldid=117824 * Ninesquared81 * (+432) /* Examples */
01:12:27 <ais523> like, the sequence is dispatch load A → dispatch load B → calculation based on B → calculation based on A → retire load A → retire load B
01:13:17 <ais523> by the time you retire the load of B, a) you know whether B has changed since you dispatched the load, b) nothing that was based on B has actually affected memory yet
01:13:35 <ais523> so one simple solution would be to just flush the pipeline, although I suspect actual processors have some faster way to recover
01:13:56 <ais523> * when retiring the "load B" instruction
01:14:06 <shachaf> Hmm, I'm probably confused.
01:14:23 <shachaf> My concern is that another core did "store A; store B", and e.g. was preempted between the two stores.
01:14:29 <shachaf> Uh, wait.
01:14:35 <shachaf> It does "store B; store A", oops.
01:14:42 <shachaf> Sorry, I was thinking complete nonsense.
01:15:17 <ais523> yes, the general pattern is store B; sfence; store A on one processor, and load A; lfence; load B on the other (delete fences if you have a processor that doesn't need them)
01:15:24 <shachaf> Yep.
01:15:56 <shachaf> OK, when you ignore my nonsense this makes sense.
01:16:04 <shachaf> You just need to retire in order.
01:16:27 <ais523> which x86(-64) does, of course
01:16:47 <ais523> although, this conversation has made me realise why retiring load instructions is important
01:20:25 <shachaf> There's nothing like this for stores, right?
01:20:32 <shachaf> You just need to flush the store buffer in FIFO order.
01:22:08 <ais523> stores are confusing because they happen at the retire, so the execution units don't have to do anything special at all – all the complexity is in how the cache works
01:23:48 <shachaf> At retire they just go in the store buffer, not the cache, I assume, right?
01:23:55 <ais523> yes
01:24:11 <ais523> some quick searching implies that this is the primary reason why mfence is not a no-op on x86
01:24:22 <shachaf> Yes, that's my understanding.
01:24:22 <ais523> because a load from cache can cross a store that's still in the store buffer
01:25:00 <shachaf> Still in another core's store buffer, specifically.
01:25:13 <ais523> yes, processors know which addresses they've stored to
01:25:25 <shachaf> The classic store-load ordering thing -- you do "store-load" and you want the load to only happen after the store is globally visible.
01:25:43 <shachaf> So you need cross-core communication to happen between the store and the load.
01:25:59 <shachaf> Whereas for store-store, load-load, and load-store, you don't need that.
01:29:36 <shachaf> Ah, https://stackoverflow.com/a/62480523 describes this.
01:29:45 <shachaf> Uh, describes the memory order mis-speculation thing.
01:29:54 <shachaf> And it says there's a performance counter for it?
01:31:20 <ais523> there are a huge number of performance counters, not all of which have obvious meanings
01:31:32 <ais523> this is the sort of thing that I'd definitely expect to have a performance counter
01:31:58 <shachaf> But it doesn't say what it's called and I'm trying to find it.
01:32:21 <ais523> is it machine_clears.memory_ordering?
01:32:25 <ais523> or is that something else?
01:32:42 <shachaf> Oh, it's probably https://perfmon-events.intel.com/index.html?pltfrm=icelake.html&evnt=MACHINE_CLEARS.MEMORY_ORDERING
01:32:46 <shachaf> Yep, I think so.
02:14:17 -!- chiselfuse has quit (Ping timeout: 252 seconds).
02:16:14 -!- chiselfuse has joined.
02:16:21 -!- chiselfuse has quit (Remote host closed the connection).
02:21:29 -!- chiselfuse has joined.
03:40:59 <esolangs> [[^!]] https://esolangs.org/w/index.php?diff=117887&oldid=117886 * Ninesquared81 * (+564) /* Examples */
04:01:31 -!- Noisytoot has quit (Ping timeout: 264 seconds).
04:04:21 -!- ais523 has quit (Quit: quit).
04:06:20 -!- Noisytoot has joined.
05:07:06 <esolangs> [[Trampolines]] https://esolangs.org/w/index.php?diff=117888&oldid=117261 * Aadenboy * (+406) fixed velocities for trampolines, and added pipes again
05:22:40 <esolangs> [[Trampolines]] M https://esolangs.org/w/index.php?diff=117889&oldid=117888 * Aadenboy * (+1) stack based not cell based
05:37:38 -!- awewsomegamer has joined.
05:39:13 -!- awewsomegamer has quit (Client Quit).
07:06:18 <esolangs> [[Capsule]] https://esolangs.org/w/index.php?diff=117890&oldid=109094 * Leol22 * (+76)
07:08:50 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=117891&oldid=117757 * Leol22 * (+14)
07:32:38 <esolangs> [[Special:Log/upload]] upload * Aadenboy * uploaded "[[File:Text BABA 0.webp]]": BABA text from Baba is You
08:20:56 <esolangs> [[Baba Is You]] https://esolangs.org/w/index.php?diff=117893&oldid=88244 * Aadenboy * (-6706) completely overhauled the page :P
08:49:58 -!- Europe2048 has joined.
08:50:08 <Europe2048> Hi everyone!
09:07:32 -!- craigo has quit (Quit: Leaving).
09:32:18 -!- Koen has joined.
10:23:01 -!- Sgeo has quit (Read error: Connection reset by peer).
10:26:35 <esolangs> [[Talk:Nice]] https://esolangs.org/w/index.php?diff=117894&oldid=117879 * None1 * (+182) Content on this wiki must be public domain or equivalent
10:28:55 <esolangs> [[Talk:Nice]] https://esolangs.org/w/index.php?diff=117895&oldid=117894 * None1 * (+181)
10:29:23 <esolangs> [[Talk:Nice]] M https://esolangs.org/w/index.php?diff=117896&oldid=117895 * None1 * (+11)
10:29:57 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=117897&oldid=117861 * None1 * (-4) /* My Articles */
10:30:15 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=117898&oldid=117897 * None1 * (-15) /* My Articles */
10:32:30 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117899&oldid=117853 * None1 * (+298) /* Arithmetic */
10:33:18 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117900&oldid=117899 * None1 * (+6) /* Arithmetic */ periods
10:33:43 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117901&oldid=117900 * None1 * (+10) /* Declaration */
10:54:29 -!- arseniiv has joined.
10:57:05 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117902&oldid=117901 * None1 * (+60) /* I/O */
10:59:21 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117903&oldid=117902 * None1 * (+229) /* Commands */
11:00:40 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117904&oldid=117903 * None1 * (+130) /* Commands */
11:47:29 <b_jonas> and, I assume, even with all the overhead for the flooded encoding, a Turing-universal machine will fit into the 280 or so creature types?
11:49:15 <b_jonas> "but there's enough room to fit, say, a Spiral Rise interpreter" => ah
11:56:47 <b_jonas> "<ais523> how out-of-order execution even works, if it isn't allowed to reorder the loads – presumably it tries to keep all the values it's working with in exclusive cache" => that's what I would think, since accessing main memory is so slow that at that point out of order execution doesn't help much, except… doesn't hyperthreading share the L1D cache between two threads of execution that alternate
11:56:53 <b_jonas> instructions in a single core? and don't all the processor cores in a processor share their L3 cache usually?
11:58:08 <b_jonas> I never really tried to understand x86's multi-threaded memory model, I figure I don't need to write code that communicates between threads so much that the optimization matters for me.
12:08:58 <b_jonas> I wonder how efficiently that M:tG construction can simulate computation
12:10:03 <int-e> . o O ( Will it ever be tournament viable :P )
12:11:04 <int-e> . o O ( "Don't worry, we're just computing the 5th Fibonacci number; it'll be done in 5 minutes." )
12:11:38 <b_jonas> int-e: I meant the other efficient, as in how slow it is asymptotically to simulate arbitrary programs
12:12:08 <b_jonas> probably just like two to eight levels of exponential
12:21:19 <Europe2048> Tried making a bf interepter in Scratch, but I coudln't get it to work. Not even "+." worked as expected.
12:23:10 <Europe2048> I can't even share it with text due to how many blocks it has.
12:25:40 <Europe2048> Should I give up?
12:33:01 <int-e> b_jonas: that's less funny :-P
12:33:15 -!- Koen has quit (Remote host closed the connection).
12:36:14 -!- Koen has joined.
12:38:40 <Europe2048> Since you weren't answering, I'll give up by myself...
12:45:28 -!- __monty__ has joined.
12:46:42 -!- Koen has quit (Quit: Leaving...).
13:23:24 -!- ais523 has joined.
13:25:03 <ais523> <b_jonas> I wonder how efficiently that M:tG construction can simulate computation ← it's exponentially slower than The Waterfall Model, which if using the Spiral Rise implementation to fit into the required amount of memory, is exponentially slower than a tag system
13:25:08 <ais523> and tag systems are polynomially slower than Turing Machine
13:25:14 <ais523> * Turing machines
13:25:34 <ais523> so, actually not that bad as these things go
13:26:23 <ais523> (also, there may be a faster programming technique using the same sort of setups with the same cards)
13:30:12 <b_jonas> right
13:32:21 <ais523> one thing I am interested in is esolang interpreters that can optimise out all the levels of exponential explosion in this sort of simulation
13:32:45 <ais523> optimising out one level is normally fairly easy – both ratiofall and floodfall can do it (via different mechanisms)
13:32:51 <ais523> but it would be nice to get the optimisation to recurse
13:38:13 <b_jonas> yes, and for M:tG that doesn't even sound too impossible, by simulating stacks
13:38:34 <b_jonas> it's just hard if you want a somewhat competitive deck
13:42:31 <ais523> right, I am mostly interested in golfing the implementation so that the rest of the deck can be as competitive as possible
13:43:27 <ais523> a deck like Ruby Storm can make hundreds of mana and play every card in its sideboard – but because it can do that, its sideboard is normally full of useful cards that help it win in various different situations that might come up during a game, rather than actual sideboard cards
13:43:37 <b_jonas> what's the newest card that seems to help (as in, you can't just replace it with older cards) these days?
13:43:42 <ais523> so, using up sideboard slots on Turing-completeness cards reduces the win rate even in game 1
13:44:09 <b_jonas> is the hundreds of mana colorless?
13:44:39 <ais523> it's red, you get some amount of other colors too
13:45:19 <ais523> e.g. Ruby Storm commonly runs Inspired Tinkering in the sideboard, which generates treasure tokens as one of its effects
13:45:23 <ais523> `card-by-name Inspired Tinkering
13:45:26 <HackEso> No output.
13:45:58 <ais523> but this means that if you want lots of non-red mana you can't cut the Inspired Tinkering from the sideboard, even though it's one of the less important sideboard cards
13:46:52 <ais523> (the deck also runs Manamorphose, but that can't generate too much colored mana without decking you out, unless you have some way to reshuffle cards back into your library or some way to protect yourself against decking)
13:48:47 <b_jonas> the color is probably more required if you want to set up your computer than if you just want to win many games
13:49:37 <ais523> right, once the combo fully goes off you can win with just about any damage spell – the deck has copy effects, so you can win with just one Lightning Bolt if you want to
13:49:39 <b_jonas> or does it not matter because you go off infinitely powerful before you need the color?
13:50:01 <ais523> so most of the sideboard is there for if the deck only partially goes off and needs to try to salvage a fizzled combo
13:50:03 <b_jonas> well, before you need all colors
13:50:22 <ais523> a fizzled combo generally wouldn't have non-red mana available, so the salvaging cards are red
13:50:32 <ais523> things like Empty the Warrens and Galvanic Relay
13:50:51 <b_jonas> and your opponent will probably have a lot of the most annoying disruption
13:50:59 <FireFly> does this construction only require one player for computation, or does it depend on cooperation?
13:51:00 <b_jonas> some of the opponents at least
13:51:14 <ais523> FireFly: it requires an opponent but they don't have to be cooperative
13:51:16 <b_jonas> FireFly: the goal for this construction is to not require cooperation by the opponent
13:51:27 <FireFly> right, *nod*
13:51:30 <b_jonas> that's why it's so hard to make it competitive
13:51:51 <ais523> b_jonas: watching Ruby Storm play through disruption is glorious, it basically keeps on trying combos until the opponent runs out of counterspells, and brute-forces its way through prison pieces
13:52:11 <b_jonas> in cooperative you can usually just spend 50 turns to draw most of your deck and then set up a fragile combo
13:52:22 <ais523> I think it can even win through Trinisphere if it's given enough time to sculpt its hand
13:52:49 <ais523> the main cards that stop it are Deafening Silence and Maddening Hex, which can't be burst through simply by making more mana
13:54:34 <ais523> it is possible that some other Storm variant, that is less sideboard-dependent, would be more competitive after you replace 6-7 sideboard cards with a Turing-complete construction though
13:54:35 <b_jonas> I'm still curious, what's the newest card that's useful for the computation setup
13:55:00 <ais523> sorry, I tried to work it out and then got distracted, for most of the cards old cards are acceptable
13:55:04 <ais523> probably Arcbond?
13:55:06 <ais523> `card-by-name Arcbond
13:55:07 <HackEso> Arcbond \ 2R \ Instant \ Choose target creature. Whenever that creature is dealt damage this turn, it deals that much damage to each other creature and each player. \ FRF-R
13:55:26 <ais523> there are other ways to repeatedly damage every creature in an unstoppable loop, though
13:55:51 <b_jonas> I See
13:55:55 <ais523> but double Arcbond is very efficient – the problem with it is that you need a lifegain source in order to avoid the game ending due to burn damage
13:56:47 <ais523> (also it is hard to ensure that the triggers always stack in the correct order – the current construction uses an Arcbond that was controlled by the turn player as it resolved, with everything else controlled by their opponent)
13:58:00 <b_jonas> everything else controlled by the opponent? does that mean you need Donate?
13:58:16 <b_jonas> or is there some other card that helps with that
13:58:26 <ais523> `card-by-name Fractured Identity
13:58:27 <HackEso> Fractured Identity \ 3WU \ Sorcery \ Exile target nonland permanent. Each player other than its controller creates a token that's a copy of it. \ C17-R
13:58:45 <ais523> so you need to be able to a) make a huge number of tokens and b) give them to your opponent
13:58:47 <b_jonas> ah, that's better
13:58:53 <b_jonas> that plays double duty
13:59:14 <ais523> Fractured Identity plays double duty, but it implies you need to add an un-exiler to the deck
13:59:28 <ais523> or, hmm, maybe not
13:59:56 <b_jonas> that card is newer than Arcbond
14:00:09 <ais523> it's not part of the computation, it's part of the setup
14:00:15 <ais523> I didn't realise you were counting those too
14:00:22 <b_jonas> I'm not sure what I'm counting
14:00:27 <ais523> but yes, you need an unexiler in order to create multiple tokens
14:00:44 <b_jonas> I know that there's power creep so new cards are likely useful if you want to just not lose
14:00:48 <ais523> `card-by-name Mirror of Fate
14:00:49 <HackEso> Mirror of Fate \ 5 \ Artifact \ {T}, Sacrifice Mirror of Fate: Choose up to seven face-up exiled cards you own. Exile all the cards from your library, then put the chosen cards on top of your library. \ M10-R
14:00:52 <ais523> `card-by-name Riftsweeper
14:00:53 <HackEso> Riftsweeper \ 1G \ Creature -- Elf Shaman \ 2/2 \ When Riftsweeper enters the battlefield, choose target face-up exiled card. Its owner shuffles it into their library. \ FUT-U, MMA-U
14:00:59 <ais523> `card-by-name Coax from the Blind Eternities
14:01:00 <HackEso> Coax from the Blind Eternities \ 2U \ Sorcery \ You may choose an Eldrazi card you own from outside the game or in exile, reveal that card, and put it into your hand. \ EMN-R
14:01:33 <ais523> I think those are the most viable options for unexilers
14:01:46 <ais523> there aren't a whole lot of unexilers printed
14:02:20 <b_jonas> `card-by-name Pull from Eternity
14:02:21 <HackEso> Pull from Eternity \ W \ Instant \ Put target face-up exiled card into its owner's graveyard. \ TSP-U
14:02:31 <b_jonas> I think Pull from Eternity was the first one
14:02:36 <ais523> alternatively, you can run a create-a-token effect and a donate effect separately, but the unexilers are useful for creating infinite (rather than large finite) loops and setting up an arbitrarily large program
14:02:55 <ais523> Pull from Eternity doesn't work because you then have to get the card out of the graveyard
14:03:22 <b_jonas> don't you need something to replicate instants anyway, for other cards?
14:03:41 <ais523> Ruby Storm is based around the card Bonus Round which copies instants
14:03:59 <ais523> that's one of the reasons I wanted to use it as a base – it runs four copies of an instant-copier maindeck
14:04:27 <ais523> so that saves space in finding a way to copy your instants and sorceries
14:04:33 <b_jonas> huh
14:04:41 <ais523> `card-by-name Bonus Round
14:04:42 <HackEso> No output.
14:04:47 <ais523> too new, I thoughti t would be
14:04:50 <b_jonas> that does mandatory copy, so it just tries to go infinite if you have two of them?
14:04:58 <ais523> it's a cast trigger
14:05:07 <ais523> it goes exponential rather than infinite
14:05:09 <b_jonas> ah right
14:05:26 <b_jonas> exponential? isn't it just linear?
14:05:36 <ais523> it's linear in the number of copies of Bonus Round which resolved
14:05:47 <ais523> which is exponential in the number that were cast, because they copy each other
14:05:51 <b_jonas> ah
14:09:59 <Europe2048> What are you talking about>
14:10:31 <ais523> building a Turing-complete programming language inside a card game
14:11:09 <ais523> actually there are two games that can manage it, Magic: the Gathering and Netrunner
14:11:31 <ais523> but Magic finds it much easier, we're wondering if it's possible to do it with an opponent trying to stop you (implying that you play a competitive deck)
15:59:27 -!- Guest55 has joined.
16:00:41 -!- Guest55 has quit (Client Quit).
16:27:25 -!- Thelie has joined.
16:35:26 <esolangs> [[Capsule]] M https://esolangs.org/w/index.php?diff=117905&oldid=117890 * PythonshellDebugwindow * (+59) Fix link to userpage, add categories
17:05:05 <esolangs> [[N]] M https://esolangs.org/w/index.php?diff=117906&oldid=44078 * PythonshellDebugwindow * (+13) Deadlink
17:08:36 <esolangs> [[Metat]] M https://esolangs.org/w/index.php?diff=117907&oldid=36168 * PythonshellDebugwindow * (+52) Categories
17:28:55 -!- Thelie has quit (Remote host closed the connection).
17:30:35 <Europe2048> Hi everyone!
18:45:27 -!- __monty__ has quit (Ping timeout: 240 seconds).
18:50:47 -!- __monty__ has joined.
19:11:31 -!- arseniiv has quit (Quit: gone too far).
19:28:58 -!- __monty__ has quit (Ping timeout: 255 seconds).
19:30:48 -!- __monty__ has joined.
19:35:16 -!- __monty__ has quit (Ping timeout: 255 seconds).
19:41:43 -!- Sgeo has joined.
20:37:32 <esolangs> [[Sultan's daughter]] M https://esolangs.org/w/index.php?diff=117908&oldid=91441 * CreeperBomb * (-4) Corrected punctuation, added necessary conjunction
20:39:39 <esolangs> [[Oifi]] M https://esolangs.org/w/index.php?diff=117909&oldid=115346 * CreeperBomb * (-1) /* Conclusion */
20:47:28 <esolangs> [[Neg]] M https://esolangs.org/w/index.php?diff=117910&oldid=70733 * PythonshellDebugwindow * (+53) Categories
20:55:53 <esolangs> [[NUMBRS++]] M https://esolangs.org/w/index.php?diff=117911&oldid=94370 * PythonshellDebugwindow * (+25) Category
21:21:12 -!- Europe2048 has quit (Quit: Client closed).
22:14:49 -!- craigo has joined.
22:17:28 -!- Koen has joined.
22:27:34 -!- craigo_ has joined.
22:32:21 -!- craigo has quit (Ping timeout: 260 seconds).
22:34:18 <esolangs> [[Three Star Programmer]] https://esolangs.org/w/index.php?diff=117912&oldid=74391 * Tux1 * (+105)
23:28:05 -!- Koen has quit (Quit: Leaving...).
23:48:39 -!- Sgeo_ has joined.
23:48:42 -!- Sgeo has quit (Read error: Connection reset by peer).
2023-10-15
00:20:21 <esolangs> [[Make me blush]] https://esolangs.org/w/index.php?diff=117913&oldid=116815 * Kaveh Yousefi * (+207) Added a hyperlink to my implementation of the Make me blush programming language on GitHub and introduced the category tag Implemented.
00:21:16 <esolangs> [[Make me blush]] https://esolangs.org/w/index.php?diff=117914&oldid=117913 * Kaveh Yousefi * (+4) Rectified the ASCII Loop examples, the same was inflicted with two mistakes: (1) The token becuase in lieu of because, (2) a missing and.
00:25:46 <esolangs> [[Make me blush]] https://esolangs.org/w/index.php?diff=117915&oldid=117914 * Kaveh Yousefi * (+499) Supplemented a character-based cat program and introduced a truth-machine example.
00:30:48 <esolangs> [[Make me blush]] M https://esolangs.org/w/index.php?diff=117916&oldid=117915 * Kaveh Yousefi * (+202) Reformatted the command listing as a table.
00:55:57 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
00:55:59 -!- Lord_of_Life_ has joined.
00:57:19 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
01:20:06 <esolangs> [[Three Star Programmer]] https://esolangs.org/w/index.php?diff=117917&oldid=117912 * Ais523 * (-60) merge "implementations" and "external resources" sections, these are normally combined and there isn't an obvious reason for them to be separate
01:52:42 -!- craigo_ has quit (Read error: Connection reset by peer).
01:53:00 -!- craigo_ has joined.
02:33:16 <esolangs> [[Trampolines]] https://esolangs.org/w/index.php?diff=117918&oldid=117889 * Aadenboy * (+479) new commands
04:33:01 -!- b_jonas has quit (Ping timeout: 255 seconds).
05:02:10 <esolangs> [[B sharp]] M https://esolangs.org/w/index.php?diff=117919&oldid=75182 * Lilchiky * (+38) wrongtitle
05:02:47 -!- ais523 has quit (Quit: quit).
05:39:52 <esolangs> [[A?b.]] M https://esolangs.org/w/index.php?diff=117920&oldid=105539 * Lilchiky * (+13) 'not capitalised'
07:16:35 -!- Koen has joined.
07:55:55 -!- cpressey has joined.
08:14:50 -!- awewsomegamer has joined.
08:16:32 -!- awewsomegamer has quit (Client Quit).
08:21:23 -!- cpressey has quit (Ping timeout: 245 seconds).
08:51:09 -!- cpressey has joined.
09:59:19 -!- Sgeo_ has quit (Read error: Connection reset by peer).
09:59:49 -!- arseniiv has joined.
10:15:09 -!- cpressey has quit (Quit: Client closed).
10:42:43 -!- FireFly has changed nick to Luci-ghoule.
11:08:37 -!- b_jonas has joined.
11:56:25 -!- Thelie has joined.
13:12:46 -!- Koen has quit (Remote host closed the connection).
13:15:32 -!- Koen has joined.
13:20:07 -!- Koen has quit (Ping timeout: 264 seconds).
13:31:00 -!- op_4 has quit (Quit: ZNC - https://znc.in).
13:31:21 -!- Thelie has quit (Quit: Leaving.).
13:31:41 -!- op_4 has joined.
13:41:09 <esolangs> [[F!--]] https://esolangs.org/w/index.php?diff=117921&oldid=112716 * Kaveh Yousefi * (+159) Added a hyperlink to my implementation of the F!-- programming language on GitHub and changed the category tag Unimplemented to Implemented.
13:44:23 <esolangs> [[F!--]] https://esolangs.org/w/index.php?diff=117922&oldid=117921 * Kaveh Yousefi * (+281) Supplemented a juxtaposition of the commands defined for F!--, F!, and Deadfish.
13:50:54 <esolangs> [[B2C]] https://esolangs.org/w/index.php?diff=117923&oldid=115061 * None1 * (+21) /* Hello World (last because it's the hardest one) */ Fixed Hello World program that previously prints "Hdkkn Mehbz/"
13:52:42 <esolangs> [[B2C]] https://esolangs.org/w/index.php?diff=117924&oldid=117923 * None1 * (+2576) Added JavaScript interpreter and implemented category tag
13:55:45 <esolangs> [[B2C]] M https://esolangs.org/w/index.php?diff=117925&oldid=117924 * None1 * (-10) /* Interpreter */
14:07:37 <esolangs> [[Interpret Esolangs Online]] https://esolangs.org/w/index.php?diff=117926&oldid=115598 * None1 * (+10) /* Introduction */ Interpret Esolangs Online now supports B2C
14:40:13 -!- cpressey has joined.
15:48:30 <esolangs> [[Brainfuck]] https://esolangs.org/w/index.php?diff=117927&oldid=117750 * Hakerh400 * (+163) Add an implementation in Haskell
15:56:41 <cpressey> OK, new plan.  Scrapping the Scheme compiler.  Just gonna write the state transformation functions in Lua.
16:22:20 -!- craigo_ has quit (Quit: Leaving).
16:30:27 <b_jonas> ah yes, that's a good way to get an esoteric language. plan a domain-specific language that you want to use for some particular purpose, then find that you don't want to use it after all, ends up unused and esoteric
16:33:17 -!- Europe2048 has joined.
16:52:25 -!- Europe2048 has quit (Quit: Client closed).
16:54:35 -!- FortyTwoBB has joined.
16:59:15 <FortyTwoBB> @ais523 does flooding waterfall get tripped up by having clocks with minimum values? Because Xathrid Necromancer must share a type with the creature that triggers it, effectively every waterclock starts at a minimum of [the sum of their row]. We can add more indestructible creatures to flatten the disruption for each clock.
16:59:15 <lambdabot> Unknown command, try @list
17:00:53 <esolangs> [[NONE]] https://esolangs.org/w/index.php?diff=117928&oldid=117616 * Jaip * (-20)
17:02:00 <FortyTwoBB> So if every clock has 413612 or whatever dummy creatures pumping it up, the first one to fall to 413611 will be the first to zero. The dummy creatures don't affect the multiplier because they don't die.
17:09:40 <FortyTwoBB> I think this shift works a similar way it did for normal FWC?
17:15:58 -!- ais523 has joined.
17:17:10 <ais523> hi FortyTwoBB
17:17:17 <ais523> reading now
17:17:20 <ais523> (I just got online)
17:18:31 <ais523> so the problem is that the tokens come in with a fairly large toughness, based on the number of zeroing triggers that mention them, rather than 1 like they're supposed to
17:19:22 <ais523> that adjusts the length of time between first token creation and token death, but without adjusting the multiplier on the zeroing trigger
17:20:31 <ais523> so this can be compensated for by making all the tokens have the same toughness boost, yes – this will spread the cycles out in time more, but the computation will still proceed the same way with the same numbers, just with a small delay as it changes from one cycle to the next
17:20:51 <ais523> (this fix doesn't work for arbitrary Flooding Waterfall Model programs but does work for the programs generated by the compiler)
17:21:08 <ais523> also I suspect you don't need multiple copies of Coat of Arms in order to handle steady damage values greater than 1
17:21:24 <FortyTwoBB> yeah having 3 CoA is easy
17:21:40 <ais523> I would expect you could just make the zeroing triggers larger to compensate
17:22:04 <ais523> the baseline counters used by the compiler can compensate for almost anything, it is a pretty flexible construction
17:22:05 <FortyTwoBB> But that requires more material than just making 2 artifacts
17:22:14 <ais523> oh, I see
17:22:36 <ais523> you want to save on tokens, so a token Coat of Arms is cheaper than a token Xathrid Necromancer
17:22:49 <FortyTwoBB> no they are the same cost
17:22:54 <ais523> or, at least, not massively more expensive, so one Coat of Arms is cheaper than millions of Necromancers
17:23:01 <FortyTwoBB> yeah that
17:23:47 <ais523> incidentally, as long as your Bishop of Wings / Xathrid Necromancer / etc. has two creature types
17:23:54 <ais523> it does not need to be indestructible in order to make the construction work
17:24:05 <FortyTwoBB> yeah we know
17:24:15 <ais523> ah good
17:24:24 <ais523> it is a bit hard to remember what has and hasn't been discovered in the thread
17:24:30 <ais523> seeing as it's over 200 pages long now
17:25:22 <FortyTwoBB> but we need exactly either !martyr of spores or !Resolute Watchdog and might as well go with the indestructible option.
17:25:33 <ais523> I tried to reread it yesterday to figure out how the iterated (and hyperiterated) busy beavers work, but got a little confused
17:25:37 <ais523> `card-by-name martyr of spores
17:25:39 <HackEso> Martyr of Spores \ G \ Creature -- Human Shaman \ 1/1 \ {1}, Reveal X green cards from your hand, Sacrifice Martyr of Spores: Target creature gets +X/+X until end of turn. \ CSP-C
17:25:47 <ais523> `card-by-name resolute watchdog
17:25:48 <HackEso> No output.
17:26:00 <ais523> the bot is somewhat outdated in terms of its M:tG knowledge
17:26:22 <FortyTwoBB> 1 sac self: target creature gaind indestructable until eot
17:26:28 <FortyTwoBB> gains*
17:26:37 <ais523> fwiw, the hardest part of the construction seems to me to be to make sure that there are no infinite loops in it
17:26:50 <FortyTwoBB> no, really? Lol
17:26:57 <FortyTwoBB> yeah of course
17:28:10 <ais523> btw, do you know of any good substitutes for Arcbond? I have been a bit frustrated with my "competitive Turing-complete deck" project because I am so close to getting it down to 6 cards (beyond those that already exist in the deck I'm basing this on)
17:28:51 <ais523> but need a seventh to prevent the turn player from having the option to die from their own Arcbond triggers while their lifegain triggers from Bishop of Wings are still on the stack
17:28:53 <FortyTwoBB> that's why I'm not sure visuvian duplimancy is ok, because now there can be waiting triggers to make a token of something that would have fizzled if the copy effect was a spell like fated infatuation
17:29:14 <FortyTwoBB> no theres nothing better than arcbond
17:29:28 <ais523> there are four obviously required cards (Arcbond, Bishop of Wings or an equivalent, Coat of Arms, Artificial Evolution)
17:29:56 <ais523> and two cards is not *quite* enough to cover token creation, token donation, and keeping the turn player alive
17:30:20 <FortyTwoBB> yeah
17:30:48 <ais523> (also stock Ruby Storm doesn't have any infinite loops in it, unless I missed one, so I had the opposite problem from your thread – I needed to add a way to create an infinite loop so that I could set up arbitrarily large programs)
17:31:12 <ais523> my current attempt is to add Fractured Identity, Riftsweeper, and any random lifelinker
17:32:00 <ais523> (the deck naturally contains Inspired Tinkering , Past In Flames and Bonus Round, which collectively give you an infinite but somewhat stupid combo with Fractured Identity and Riftsweeper)
17:32:43 <ais523> (in addition to Fractured Identity + Riftsweeper being able to give the opponent tokens without losing the original card)
17:34:23 <FortyTwoBB> yeah that looks optimal to me
17:34:50 <FortyTwoBB> just need some lifelink source
17:34:57 <FortyTwoBB> or equivalent
17:35:04 <ais523> `card-by-name Soulfire Grand Master
17:35:05 <HackEso> Soulfire Grand Master \ 1W \ Creature -- Human Monk \ 2/2 \ Lifelink \ Instant and sorcery spells you control have lifelink. \ {2}{(u/r)}{(u/r)}: The next time you cast an instant or sorcery spell from your hand this turn, put that card into your hand instead of into your graveyard as it resolves. \ FRF-M
17:35:15 <ais523> that has the most relevant ability I could find on a lifelinker
17:35:33 <ais523> having both lifelink and an infinite
17:35:49 <FortyTwoBB> yeah, i was trying to remember that exact card lol
17:35:51 <ais523> but I couldn't find a single other card to pair it with
17:37:39 <ais523> ah, I was wondering if that lingering effect could be used as a counter for some sort of stage construction, but it can't, it has the Netrunner-style wording where it doesn't stack with itself properly
17:39:01 <FortyTwoBB> yeah it just goes infinite or doesnt do much
17:39:57 <APic>
17:40:50 <ais523> I've been kind-of wondering whether I should just try to find a maindeck slot for The One Ring
17:42:18 <ais523> ooh, Last Laugh is probably usable, but seems to have no advantages over Arcbond
17:42:22 <ais523> `card-by-name Last Laugh
17:42:23 <HackEso> Last Laugh \ 2BB \ Enchantment \ Whenever a permanent other than Last Laugh is put into a graveyard from the battlefield, Last Laugh deals 1 damage to each creature and each player. \ When no creatures are on the battlefield, sacrifice Last Laugh. \ TOR-R
17:42:46 <FortyTwoBB> same with like massacre girl
17:43:41 <ais523> Massacre Girl might actually work for my constructoin
17:43:49 <ais523> because it doesn't hurt players
17:43:50 <FortyTwoBB> arcbond is unique in that it always triggers itself the same amount no matter how many creatures die
17:44:02 -!- FreeFull has joined.
17:44:05 <APic>
17:44:22 <ais523> for me, the actual number of triggers doesn't matter as long as there are enough of them, because they just pile up on the bottom of tge stack
17:44:24 <FortyTwoBB> yeah you just need to do a bit more setup to have a clock that always dies
17:45:13 <ais523> but I agree that making the clock die would be a problem – you probably have to kill all the token creators
17:47:57 <FortyTwoBB> well with bishop of wings, you get to keep them alive
17:48:22 <FortyTwoBB> yeah you dont need a lifelinker
17:48:32 <FortyTwoBB> they control bishop of wings
17:48:37 <FortyTwoBB> you control arcbond
17:48:44 <ais523> but arcbond damages yourself
17:49:07 <FortyTwoBB> yeah but you can keep a bishop to keep yourself alive
17:49:20 <ais523> the problem is that you get to stack the bishop triggers and arcbond triggers
17:49:29 <ais523> and if you always stack the bishop triggers on the bottom, you lose
17:49:40 <ais523> so it isn't a perfect choiceless loop
17:49:49 <ais523> of course, this doesn't matter for your construction, because you can choose to stack them correctly
17:49:58 <FortyTwoBB> yeah
17:50:06 <FortyTwoBB> so it is still tc?
17:50:40 <ais523> there's more than one definition of Turing-complete
17:50:59 <FortyTwoBB> because a nondeterministic turing machine that has the option to catch fire at any step would still be turing complete no?
17:51:01 <ais523> for the Netrunner Turing-complete proof, I had to resort to "it's Turing-complete unless a player makes a decision that causes them to immediately lose the game"
17:51:48 <ais523> for Magic, it's possible to get a zero-choices Turing-completeness construction, which is more interesting than a "Turing complete unless you choose to lose" construction, although both would normally be considered to be Turing-complete
17:52:00 <APic>
17:52:13 <ais523> but zero-choices is nice because you can F6 (or the in-person equivalent) and just have the program run itself
17:52:16 <APic> o/
17:52:30 <APic> Good old self-running Programs alias Multiverses 😉
17:52:32 <ais523> (Flooding Waterfall Model doesn't run on MTGO, incidentally, because the numbers get too large too quickly)
17:52:47 <FortyTwoBB> yeah you can set triggers to auto stack in a certain order
17:52:56 <FortyTwoBB> and then f6
17:53:36 <APic> ais523: Can You explain the Niagara-Falls to me, please? 😉
17:53:58 <ais523> APic: what, the real life geographical landmark? or the various waterfall-based esolangs?
17:54:09 <APic> ais523: Both
17:54:10 <APic> Pleae
17:54:11 <APic> +s
17:54:17 <ais523> the esolangs are defined at https://esolangs.org/wiki/The_Waterfall_Model and https://esolangs.org/wiki/Flooding_Waterfall_Model
17:54:18 <FortyTwoBB> lol
17:54:25 <APic> Some People seem to like going down with wooden Barrels
17:54:28 <APic> ktnx
17:54:42 <ais523> and there is a tutorial for the former at http://nethack4.org/esolangs/waterfall/
17:54:56 <ais523> unfortunately I can't explain the real-life waterfall
17:55:24 <APic> Aaah, good old Magick
17:55:27 <ais523> (Flooding Waterfall Model is rather harder to understand than the original because each of the waterclocks is associated with two counters rather than one)
17:55:40 <APic> Okay, at least You tried, ktnx 😌
17:56:14 <APic> Good old JSON ♥
17:56:36 <FortyTwoBB> yeah mtgo/mtga etc really don't like large numbers
17:57:42 <FortyTwoBB> I did the polyraptor forerunner of the empire combo in limited to get several million 5/5
17:58:23 <ais523> I don't think I've ever done a large combo in limited – the best I ever managed was winning both games of the same match with Coalition Victory
17:58:46 <ais523> but, my opponent had mostly only played multiplayer, meaning that they were playing much more defensively than a typical limited player would, so it doesn't really count
18:00:26 <FortyTwoBB> yeah that's still pretty rare
18:01:32 <APic>
18:05:02 -!- Koen has joined.
18:06:31 <ais523> ooh, actually getting halting to work is pretty easy using Massacre Girl and Bishop of Wings – Bishop of Wings shares no creature types with the creatures it creates, so you just use Human or Cleric as the halt counter
18:07:14 <ais523> this is probably best for my construction because I don't actually need an output from it, just halt / non-halt
18:08:20 <FortyTwoBB> yeah
18:08:34 <ais523> it does have the problem of your combo finisher giving the opponent double-exponentially large amounts of life, making it hard to cause an automatic game win
18:09:13 <ais523> but it's probably possible to set up a computation that creates a token army on one side of the field or the other
18:09:28 <ais523> depending on the result
18:09:42 <FortyTwoBB> yeah and then you make more coat of arms and use the giant creatures to win
18:11:50 <APic>
18:13:11 <ais523> I'm not sure if the coat of arms would even matter at that point, quadratic doesn't put a dent in double-exponential
18:13:54 <ais523> likewise, Flooding Waterfall Model doesn't give you a meaningful amount of extra output compared to the original (and may even give less) because exponential growth is trivially small compared to busy beaver numbers
18:17:43 <FortyTwoBB> oh right you cant convert the bb output into coat of arms
18:17:49 <APic> yay
18:21:13 -!- Europe2048 has joined.
18:21:32 <Europe2048> Hi everyone
18:23:30 <ais523> hi Europe2048
18:29:35 <ais523> FortyTwoBB: by the way, what's the best way for me to contact the rest of you when I have something to say?
18:32:27 <Europe2048> How are you?
18:32:36 <APic> ais523: Just let Your Client stay here 24/7
18:32:56 <ais523> APic: my computer isn't switched on 24/7, nor is my Internet connection
18:33:01 <ais523> and I read the logs quite a lot
18:33:10 <ais523> Europe2048: tired, as usual
18:33:23 <Europe2048> What are you working on?
18:33:30 <ais523> a parser generator
18:33:52 <ais523> I am fed up with existing parser generators, and feel like I could do better
18:33:55 <Europe2048> What's a parser generator? Also, what language?
18:34:39 <b_jonas> wait, it's Bishop of Wings now?
18:34:47 <b_jonas> I thought it was one of two other similar cards
18:34:48 <ais523> a parser generator is a program that generates a parser, and a parser is a program or subroutine that converts text input into a machine-readable form
18:34:53 <APic> ais523: I switch my Zarniwoop off when i go to sleep too, but i have a VM in the Switzerlands
18:35:00 <ais523> b_jonas: it depends on what specific construction we're talking about
18:35:23 <ais523> Bishop of Wings is the most convenient in most respects, but the lifegain trigger often screws things up
18:35:27 <b_jonas> I'm not following Magic at all these days so I shouldn't be surprised that there are useful cards that I hadn't heard of
18:35:29 <Europe2048> ais523: So it's like a [language]-to-assembly converter.
18:35:40 <Europe2048> Right?
18:35:43 <ais523> so some constructions use, e.g., Xathrid Necromancer instead
18:35:46 <ais523> Europe2048: not to assembly
18:35:54 <ais523> just to a data structure that represents the original program
18:36:15 <ais523> going all the way to assembly is called a compiler; compilers will normally contain a parser but they have other parts too
18:36:41 <Europe2048> b_jonas: I don't have any Pokemon, Yu-Gi-Oh, etc. cards.
18:36:47 <APic> Good old Lexer
18:37:09 <ais523> Europe2048: that's probably for the best, they are not good value for money
18:37:10 <Europe2048> APic: I don't have any Pokemon, Yu-Gi-Oh, etc. cards.
18:37:18 <APic> Europe2048: So?
18:37:35 <Europe2048> But have you heard of PokeFarm Q?
18:40:12 <APic> Nope
18:42:07 <Europe2048> It's an online Pokémon thingy.
18:42:17 <Europe2048> ( pokefarm.com )
18:42:31 <APic> Does reading in the IRCs count as hearing?
18:43:19 <int-e> depends on how literal you are
18:43:34 <zzo38> I sometimes play Pokemon card, since I have some older cards
18:43:59 <APic> Uh huh
18:44:15 <b_jonas> wait, *another* parser generator?
18:44:20 <b_jonas> or just the same one
18:44:40 <ais523> b_jonas: not ayacc
18:45:11 <ais523> ayacc was primarily intended as something that could be used to compile programs that depend on POSIX yacc
18:45:55 <b_jonas> making more output templates for ayacc sounded plausible, eg. I might want a rust one, or a stackless C++ one
18:46:24 <ais523> whereas with the new one, I'm trying to create something much better than yacc – able to handle more grammars, better at detecting mistakes in the grammar, and the resulting parsers run faster
18:47:03 <ais523> one principle I want is that the parser generator should be powerful enough to handle a combined parser/lexer that's produced simply by writing the lexer rules as parser rules
18:47:03 <b_jonas> ok, though ayacc is already better at detecting mistakes than yacc, and the resulting parsers likely run faster
18:47:08 <ais523> current yacc completely fails at that
18:47:27 <ais523> and ayacc uses the same algorithm for compatibility, so it fails too
18:47:38 <b_jonas> the lexer rules as parser rules? I specifically don't want that, that would just make the grammar harder for humans to understand
18:47:55 <b_jonas> if you want to make a separate lexer generator, that could make sense of course
18:48:57 <ais523> b_jonas: say you don't have the same tokens in every place in your document
18:49:10 <b_jonas> also someone pointed out on this channel that the problem with having the parser grammar handle lexing is that it's harder to tell it to ignore whitespace and comments between almost any two tokens
18:49:28 <ais523> that is a problem I've been thinking a lot about
18:50:08 <b_jonas> sure, I want that for my python syntax extension, but if I have control over both the parser and the lexer than that's not a hard problem
18:50:10 <ais523> I think the correct solution to both of these problems is to have parser-ish rules and lexer-ish rules separate in the input format, but you're allowed to mix them in ways that a separate parser and lexer normally wouldn't be able to
18:50:38 <ais523> b_jonas: it's not a hard problem with respect to correctness, but it is a hard problem with respect to efficiency
18:50:52 <ais523> because if the parser is going to tell the lexer what sort of tokens to lex, that limits the evaluation order of the parser
18:51:15 <ais523> which invalidates a lot of possible optimisatiions
18:51:33 <b_jonas> right, and it gets worse if you also want the execution stage to tell the parser or lexer what to accept
18:52:10 <ais523> C-INTERCAL's parser currently does spark/ears matching in the lexer
18:52:41 <ais523> I'm not sure whether it's possible to write it in pure yacc+lex
18:52:54 <ais523> but if it is it'd probably involve duplicating a lot of rules
18:54:08 <b_jonas> I don't like lex. I only used it like once, after a teacher teaching the course involving lex and yacc told me that he can't give me full marks for homework if my simple tokenizer does not actually use lex.
18:54:36 <ais523> now I'm wondering how good yacc is at tokenising
18:54:42 <ais523> (apart from the output format, which is wrong)
18:54:51 <ais523> just in terms of the algorithms
18:55:11 <b_jonas> that's how geo ended up with a flex tokenizer
18:55:18 <b_jonas> no wait, it's not geo
18:55:18 <ais523> I think it is very difficult to specify things like "identifier that isn't a keyword" in yacc
18:55:24 <b_jonas> or is it?
18:55:26 <b_jonas> yes, it's geo
18:55:46 <b_jonas> and scan too. then I used lex twice.
18:55:59 <ais523> (not impossible but you have to basically write a trie of every prefix that no keyword starts with manually)
18:57:12 <b_jonas> I think the original use case of lex was to create a tokenizer that efficiently recognizes a dozen to a few hundred keywords, which look like identifiers until you learn the list
18:57:27 <ais523> C-INTERCAL has a pre-lexer that expands ! to '. (and 🐰 to ".)
18:57:54 <b_jonas> that's a pre-lexer, not a post-lexer?
18:58:01 -!- Sgeo has joined.
18:58:15 <ais523> I think it runs before the lexer, not sure though
18:58:17 <zzo38> I had mostly just wrote the parser and lexer in C, although having it separately might be useful sometimes too.
18:58:54 <b_jonas> I guess it can be a pre-lexer, since intercal doesn't have string/format literals
18:58:56 <ais523> I have handwritten a few parsers recently
18:59:10 <ais523> b_jonas: if it did the expansion would have to be before the lexer
18:59:22 <ais523> the whole point is that a ! can match a later '
19:00:37 <b_jonas> ais523: I don't mean string literals delimited by apostrophes or rabbit ears, I mean string literals in which an exclamation mark has to be preserved as is without transforming to apostrophe and dot
19:01:05 <b_jonas> oh, you're saying that the lexer determines which apostrophe is opening or closing
19:01:16 <ais523> b_jonas: right
19:01:20 <b_jonas> yes, then it makes sense to expand exclams after that
19:01:31 <b_jonas> expand excalms *before* that
19:01:46 <ais523> anyway, my point is that if INTERCAL did have '-delimeted string literals, an exclamation mark would ned the string
19:01:57 <ais523> * delimited
19:02:11 <zzo38> Note that keywords need not look like identifiers if they are distinguished somehow (like they are in LLVM by adding sigils, for example; some of my own designs of programming languages do something similar, too).
19:02:46 <ais523> zzo38: in the specification for Algol, identifiers and keywords are written in different fonts, and are allowed to have the same spelling
19:02:57 <ais523> that created some interesting challenges for implementations
19:03:32 <ais523> I think the portable standard was to write a . before keywords so that they could be distinguished from identifiers formed from the same letters
19:03:34 -!- arseniiv has quit (Quit: gone too far).
19:03:35 <cpressey> I avoid most "parser generators".  I either handcode the lexer and parser, or I want to use something more solidly theory-based than lex and yacc
19:03:53 <ais523> cpressey: what do you mean by "solidly theory-based"?
19:03:56 <b_jonas> they probably got that from the fortran .LE. operator then
19:04:15 <cpressey> ais523: like a parser combinator library, or an attribute-grammar-based formalism
19:04:42 <cpressey> lex and yacc be all like "let's intersperse some C code with some other junk in an expedient fashion"
19:04:53 <cpressey> like, no
19:05:07 <ais523> cpressey: I am hugely opposed to parser combinator libraries, for two reasons: a) they make it easy to write an ambiguous grammar without realising it, b) they make it easy to write a very slow parser without realising it
19:05:33 <APic>
19:05:33 <ais523> I also disagree with many decisions lex/yacc have made, including that one
19:05:51 <zzo38> You could use a character set that uses different character codes for keywords vs identifiers, if such a thing is necessary
19:05:56 <ais523> …this is part of why I want to write my own parser generator
19:05:58 <APic> My Friend who studies Informatik at the Fernuni Hagen has to write Pascal-Code
19:06:12 <APic> Very easy to make a Pascal Compiler
19:06:17 <APic> Very ugly to program in it
19:06:21 <ais523> zzo38: a common nonportable approach at the time was to use uppercase vs. lowercase
19:06:26 <b_jonas> well, in theory you could have a parser combinator library that doesn't have full backtracking alteration, but only alternation where you explicitly have to specify the lookahead and the lookahead condition is more limited than the rest of the grammar
19:06:28 <cpressey> ais523: I don't really disagree, a lot of parser combinator libraries are annoying to use
19:06:37 <ais523> but in 1968 I'm not sure that all computers even supported two cases
19:07:23 <ais523> the thing I am most opposed to in yacc is the way it handles precedence
19:07:28 <zzo38> I wrote this file: http://sprunge.us/y2f0gi Could something like this be possible for parsing?
19:07:40 -!- Thelie has joined.
19:07:47 <ais523> basically because it is very easy to handle precedence in a mathematically rigorous way, but yacc does something else
19:07:55 <b_jonas> I find yacc precedences confusing, but that might be only because I don't understand itsrules
19:08:27 <ais523> zzo38: most parser generators have input that looks something like that, but typically not with exactly that syntax
19:08:33 <b_jonas> I think you explained to me at one point that they don't work anything like I thought they work
19:08:49 <ais523> b_jonas: no, you're right to be confused, its rules are designed for implementation convenience rather than making any sense
19:08:53 <zzo38> (Although, this file I did does not have precedence since it is for a programming language that does not have precedence.)
19:09:19 <b_jonas> anyway, if you get this new parser generator to work I'll be interestd
19:09:52 <ais523> zzo38: any grammar that can be expressed using precedence can be expressed without it, it just becomes bigger and harder to read
19:10:18 <ais523> as such, my opinion about precedence is that parser generators should simply be written to do that transformation before generating the parser
19:11:30 <ais523> which would give the most intuitive possible behaviour – it would not be tied to the parser internals at all, and there would never be a case where the parser generator doesn't tell you about an ambiguity because it thought you had resolved it with precedence rules, when you were actually trying to resolve some other ambiguity
19:13:49 <ais523> b_jonas: there's a great example in the paper about IELR where yacc (and Bison in LALR mode) can't parse some inputs because there is a lossy optimisation in LALR that is normally not a problem because it causes an ambiguity to be reported in cases where the optimisation is applied lossily, but that ambiguity ends up getting overridden by a precedence rule, with the consequence that some valid input just doesn't parse
19:14:08 <ais523> and this was actually discovered to affect at least one real-world program
19:16:48 <b_jonas> ais523: is that in a situation when the token that is in the yacc precedence rule is used in more than one different way, and the precedence was supposed to have affected only one of them? because that's the obvious easy way to mess up yacc precedence, but I assume it's not the only way
19:17:31 <ais523> b_jonas: probably; I can't remember the details, but that is a very common way to go wrong in yacc
19:18:39 <APic> What exactly differentiates Lexers from Parsers, apart from the Input-Chain-Length?
19:20:23 <ais523> APic: the distinction is sort-of artificial; but normally lexer generators generate finite state machines and parser generators generate push-down automata, so lexers have to be finite state transducers to be generated with a typical lexer generator
19:21:57 <APic> Thanks
19:22:14 <ais523> although, nowadays languages often have fancy forms of string literal that can't be parsed finite-state, e.g. raw string literals which are surrounded by arbitrarily long sequences so you can pick one that doesn't appear in the string itself, or here-documents
19:22:27 <APic> ic
19:22:32 <ais523> so it's unclear whether there's actually a mathematical distinction at this point or whether it's just a matter of tradition
19:23:10 <ais523> (that said, a push-down automaton can't do the raw string literals either, so some sort of generalisation is needed)
19:23:38 <APic> lol
19:23:51 <APic> Just noticed „unclear“ has „nuclear“ as an Anagramm
19:23:56 <APic> s/mm/m/
19:32:36 <b_jonas> if you make a parser generator that knows how to make a lexer too, that could be useful, because it could tell you if you want to introduce a new digraph symbol when that is ambiguous with the existing tokens in a way that can occur according to the parser, eg. it could tell you if : > could occur in C++ so you might not want to use :> as a digraph (it's way too late not to use :> as a digraph in C++
19:32:42 <b_jonas> obviously)
19:35:50 <b_jonas> funnily, push-down automatons are enough for lua's long delimited string literal, but not for C++'s long delimited string literals (unless you want to add like 2**128 states because the standard says that the extra delimiter is at most 16 characters long)
19:36:37 <b_jonas> and then there's mime's delimited format, which uses even longer delimiters, so that you can just make the delimiter long and random and hope it doesn't occur in the data that you're delimiting
19:38:34 <cpressey> ais523: the ease with which you can accidentally make a backtracking parser with most parser combinator libraries reminds me that I thought about taking measures to avoid that in my AG formalism: a production has to be marked as "backtracking ok" otherwise it won't be allowed to.  (haven't worked out the details yet though.)
19:38:36 <ais523> b_jonas: I have actually been seriously considering the "add like 2**128 states" solution, and simply storing the parser table compressed in such a way that you can use the compressed format directly
19:39:11 <cpressey> zzo38: is sprunge.us a good pastebin?
19:39:16 <ais523> cpressey: hmm, that's interesting
19:39:38 <ais523> sprunge is pretty good for short-term pastes, as long as you're OK with pasting from the command line rather than using a web interface
19:39:47 <ais523> the pastes seem not to last forever, though
19:39:58 <b_jonas> the problem about parser generators for me is that, if I invent a language then I'll make one for which I understand the grammar enough that I know how to handwrite a parser for it, so parser generators are mostly useful for the ugly cases when you want to parse some existing language with lots of silly historical cruft, like SQL
19:40:00 <ais523> which can be a problem in some cases
19:40:29 <ais523> b_jonas: what about things like generating good error messages for every possible invalid input?
19:40:43 <ais523> I find that a pain to do when writing by hand, admittedly many parser generators aren't too good at it either
19:45:04 <cpressey> Good error messages contain line and column and source file name.  Those can be a chore to track, too.
19:52:14 <ais523> yes, to the extent that it makes sense to have a utility class/structure/library that does file reading and tracks the line/column as it goes (and source file if you have more than one of them)
19:52:28 <ais523> (but most of the time I need a parser, I only have one source file anyway)
19:53:14 <b_jonas> ais523: yes, perhaps a parser generator might help generate useful error messages, though I think only if the input for the parser generator has useful hints for that
19:54:20 <ais523> I think a lot can be done without hints, but maybe not everything
19:55:01 <b_jonas> I usually add good error messages lazily, as in my program is full of cases where it just gives up, but until I actually encounter such a give up case or I expect to encounter it, the error message that it prints isn't informative
19:55:52 <b_jonas> if my program dies and I don't understand why, then I make it print useful info to that error message, and possibly print debug info earlier too
19:56:32 <b_jonas> of course this won't work well with programs that you can't rerun reproducibly, or with programs that other peoplee have to run without me being available
20:02:31 <cpressey> In the olden days, people wanted to see as many syntax errors as possible in an error message, so they could fix them all before trying to compile again.
20:02:52 <cpressey> That's also what the semicolons were for, to help "error recovery".
20:03:17 <b_jonas> cpressey: semicolons are still useful for that
20:03:23 <cpressey> So that was another thing a parser generator could take off your hands.
20:03:40 <b_jonas> well, not specifically error recovery, but to get useful error messages if you forget a closing paren
20:03:51 <cpressey> But compiling is so much cheaper these days, these things matter so much less.
20:04:39 <b_jonas> yeah
20:05:06 <cpressey> I still use parens in JS but I feel like I get nasty looks for doing so
20:05:24 <b_jonas> parens for what?
20:05:39 <cpressey> doh I meant semicolons
20:06:08 <ais523> wait, there are people who don't use semicolons in JS?
20:06:25 <ais523> is this some sort of micro-golf in order to save a few pennies on bandwidth?
20:07:18 <b_jonas> I expect there are people who don't use semicolons (most of the time) beacuse JS has some quite complicated grammar rules for when you can omit semicolons and they wouldn't have added those unless someone wanted to use them
20:10:05 <fizzie> It looks more modern without semicolons.
20:11:32 <fizzie> But I don't think *using* them is uncommon either. The style guide at work mandates them, and MDN says it's "considered best practice, however, to always write a semicolon after a statement, even when it is not strictly needed."
20:12:28 <b_jonas> fizzie: do you have an interpreter or linter that can warn you when you miss a semicolon?
20:22:23 -!- Koen has quit (Remote host closed the connection).
20:42:26 <FortyTwoBB> ais523 yeah im not sure what the best way to connect with us would be.
20:44:45 <esolangs> [[QwertyScript]] M https://esolangs.org/w/index.php?diff=117929&oldid=105078 * PythonshellDebugwindow * (+93) Categories
20:58:02 <esolangs> [[Expressive]] M https://esolangs.org/w/index.php?diff=117930&oldid=116118 * PythonshellDebugwindow * (+24) Category
21:03:55 <esolangs> [[Trampolines]] https://esolangs.org/w/index.php?diff=117931&oldid=117918 * Aadenboy * (+1943) a
21:09:33 -!- Europe2048 has quit (Quit: Client closed).
21:17:23 <esolangs> [[User talk:Europe2048]] https://esolangs.org/w/index.php?diff=117932&oldid=116933 * PixelatedStarfish * (+97) /* Project Euler problem 10 implementation */
21:17:57 <esolangs> [[User talk:Europe2048]] https://esolangs.org/w/index.php?diff=117933&oldid=117932 * PixelatedStarfish * (+27)
21:24:23 -!- cpressey has quit (Quit: Client closed).
21:27:07 <zzo38> cpressey: Sprunge seems good enough to me. (Although, in the past I think once I tried to send a file with a few non-ASCII characters and they were deleted, so that might be of a consideration)
21:29:29 <zzo38> (Also, both command-line and web interface work OK)
21:32:47 <fizzie> b_jonas: I don't remember if I've actually tried writing JS at work, but I would imagine there is something. Other languages definitely do.
21:41:58 <zzo38> Why does C have fmemopen and open_memstream but not a function to open a new in-memory file for reading and writing (without needing to specify a pointer to the buffer or a pointer to a variable to store the pointer to the buffer) which is automatically destroyed when the file is closed?
21:42:17 <zzo38> I think that the automatic semicolon insertion is one of the bad ideas of JavaScript.
21:43:49 <zzo38> (The fmemopen function allows to open a fixed-size in-memory file similar than the above, but not dynamic sizing which is what open_memstream does, which requires specifying the pointers and is meant only for writing and not for reading)
22:37:35 -!- FreeFull has quit.
22:45:23 <esolangs> [[F!--]] M https://esolangs.org/w/index.php?diff=117934&oldid=117922 * None1 * (+59) /* Commands */ The output command in F!-- exists, but outputs an integer
22:52:21 <esolangs> [[F!--]] https://esolangs.org/w/index.php?diff=117935&oldid=117934 * None1 * (+111) Added an example (XKCD Random Number) to show that F!-- has integer output
22:53:15 -!- Thelie has quit (Remote host closed the connection).
22:57:02 <esolangs> [[F!--]] M https://esolangs.org/w/index.php?diff=117936&oldid=117935 * None1 * (+82) /* Interpreter */ The lisp interpreter is wrong, I changed it to a Python interpreter
23:19:01 <Noisytoot> I don't use unnecessary semicolons in JS
23:19:34 <esolangs> [[--yay]] M https://esolangs.org/w/index.php?diff=117937&oldid=82414 * PythonshellDebugwindow * (+8) Link, categories
23:39:21 -!- ais523 has quit (Remote host closed the connection).
23:40:34 -!- ais523 has joined.
23:55:05 -!- GreenHat has joined.
2023-10-16
00:48:13 -!- GreenHat has quit (Quit: Quit).
00:56:19 -!- Lord_of_Life has quit (Ping timeout: 245 seconds).
00:57:04 -!- Lord_of_Life has joined.
01:38:25 -!- ais523 has quit (Quit: quit).
03:08:51 -!- FortyTwoBB has quit (Quit: Client closed).
04:33:22 <zzo38> Can nonzero scalar multiplication with monads with category of matrices?
08:02:42 -!- Sgeo has quit (Read error: Connection reset by peer).
08:04:49 <int-e> I feel that that question is missing a verb and perhaps a few other words.
08:12:23 -!- mcfrdy has quit (Ping timeout: 255 seconds).
08:12:43 -!- mcfrdy has joined.
08:13:17 -!- V has quit (Ping timeout: 255 seconds).
08:13:57 -!- V has joined.
08:44:30 -!- arseniiv has joined.
08:56:30 -!- Koen has joined.
09:02:25 -!- __monty__ has joined.
09:03:27 -!- cpressey has joined.
11:10:34 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117938&oldid=117904 * None1 * (+428) /* Commands */
11:12:58 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117939&oldid=117938 * None1 * (+176)
11:16:00 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117940&oldid=117939 * None1 * (+322)
11:22:51 <esolangs> [[StringSafunge]] N https://esolangs.org/w/index.php?oldid=117941 * None1 * (+377) Created page with "StringSafunge id an esolang created by [[User:None1]], it is [[Befunge]]-93, but string-save in most languages. ==Commands== {| class="wikitable" |+ Commands that are different in StringSafunge and Befunge-93 |- ! In StringSafunge !! In Befunge-93 |- | a || \ |- | b
11:23:27 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=117942&oldid=117898 * None1 * (+55) /* My Esolangs */
11:25:57 <esolangs> [[StringSafunge]] M https://esolangs.org/w/index.php?diff=117943&oldid=117941 * None1 * (-7)
11:26:14 <esolangs> [[StringSafunge]] M https://esolangs.org/w/index.php?diff=117944&oldid=117943 * None1 * (+0)
11:31:43 <esolangs> [[Hrdfsh]] M https://esolangs.org/w/index.php?diff=117945&oldid=52974 * PythonshellDebugwindow * (+24) Category
12:14:34 -!- Koen has quit (Remote host closed the connection).
12:44:45 <esolangs> [[Hardfish]] M https://esolangs.org/w/index.php?diff=117946&oldid=108529 * None1 * (+34) /* Interpreter */
12:44:54 <esolangs> [[Hardfish]] M https://esolangs.org/w/index.php?diff=117947&oldid=117946 * None1 * (+0) /* Interpreter */
12:45:22 <esolangs> [[Hrdfsh]] M https://esolangs.org/w/index.php?diff=117948&oldid=117945 * None1 * (+34) /* Computational class */
12:49:03 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117949&oldid=117940 * None1 * (+261) /* Commands */
12:51:57 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117950&oldid=117949 * None1 * (+203)
12:52:12 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117951&oldid=117950 * None1 * (+0) /* Comments */
12:53:15 -!- Koen has joined.
12:54:58 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117952&oldid=117951 * None1 * (+109)
12:55:19 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117953&oldid=117952 * None1 * (+37) /* I/O */
12:55:44 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117954&oldid=117953 * None1 * (+6) /* Cat program */
12:56:49 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117955&oldid=117954 * None1 * (+69) /* Example programs */
12:58:00 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117956&oldid=117955 * None1 * (+49) /* Example programs */
13:38:08 <esolangs> [[B2C]] M https://esolangs.org/w/index.php?diff=117957&oldid=117925 * None1 * (-74) /* Example Programs */ Now there is an interpreter to verify programs
13:41:35 <esolangs> [[B2C]] M https://esolangs.org/w/index.php?diff=117958&oldid=117957 * None1 * (+411)
13:42:29 -!- cpressey has quit (Quit: Client closed).
13:47:14 <esolangs> [[B2C]] https://esolangs.org/w/index.php?diff=117959&oldid=117958 * None1 * (+35) /* External resources */
14:35:20 -!- GregorR has quit (Ping timeout: 255 seconds).
14:46:20 -!- cpressey has joined.
15:29:21 -!- GregorR has joined.
15:33:48 -!- Koen has quit (Remote host closed the connection).
15:38:52 -!- cpressey has quit (Quit: Client closed).
16:05:13 -!- Koen has joined.
16:12:24 -!- cpressey has joined.
16:40:31 -!- Koen has quit (Quit: Leaving...).
16:50:26 <esolangs> [[8xn]] https://esolangs.org/w/index.php?diff=117960&oldid=116286 * Infinitehexagon * (+28)
16:50:37 <esolangs> [[8xn]] https://esolangs.org/w/index.php?diff=117961&oldid=117960 * Infinitehexagon * (-28)
17:38:38 -!- cpressey has quit (Quit: Client closed).
17:41:53 <esolangs> [[?]] N https://esolangs.org/w/index.php?oldid=117962 * Jaip * (+2492) Created Article
17:44:44 <esolangs> [[User:Jaip]] https://esolangs.org/w/index.php?diff=117963&oldid=117130 * Jaip * (+44)
17:46:26 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117964&oldid=117891 * Jaip * (+24) /* Non-alphabetic */
17:48:03 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=117965&oldid=117964 * Jaip * (-16) /* Non-alphabetic */
17:48:58 <esolangs> [[NONE]] https://esolangs.org/w/index.php?diff=117966&oldid=117928 * Jaip * (+5)
18:10:07 -!- Thelie has joined.
18:51:11 <esolangs> [[Marble Machine]] https://esolangs.org/w/index.php?diff=117967&oldid=105583 * Masalt * (+108)
18:51:57 <esolangs> [[User:Masalt]] https://esolangs.org/w/index.php?diff=117968&oldid=105616 * Masalt * (+14)
18:56:31 -!- Noisytoot has quit (Remote host closed the connection).
18:57:29 -!- Noisytoot has joined.
19:05:52 <int-e> `w
19:05:54 <HackEso> nostril//Nostril is a common Québécois greeting.
19:17:08 <esolangs> [[Woodchuck/Implementation]] M https://esolangs.org/w/index.php?diff=117969&oldid=93045 * PythonshellDebugwindow * (+3) Back, category
19:22:59 -!- Thelie has quit (Quit: Leaving.).
19:27:14 -!- arseniiv has quit (Quit: gone too far).
19:27:50 <zzo38> (As far as I can tell, they will be made by an identity matrix multiplied by a scalar number and by an identity matrix divided by the same scalar number (therefore, it cannot be zero), that it is a "scalar monad", and that there is a comonad just as good as the monad, and the Kleisli category just as good as the original category, and that identity monads are also scalar monads (regardless of the category).)
19:28:47 <zzo38> Do you know what I meant, now?
19:30:58 -!- cpressey has joined.
20:28:54 -!- FortyTwoBB has joined.
20:29:28 <FortyTwoBB> This still seems a bit like black magic to me, but you seem to be right.
20:29:28 <FortyTwoBB> @ais523, can you confirm the final state of a FWC running the last example program in the interactive waterfall tutorial when it halts?
20:29:28 <lambdabot> Unknown command, try @list
20:29:29 <FortyTwoBB> I used your converter but my own (inefficient) implementation of FWCs
20:31:03 <FortyTwoBB> My simulation has it stopping after 3989 floods with the first 23 clocks having the following values:
20:31:04 <FortyTwoBB> 2896, 2896, 2897, 2896, 2896, 2896, 2895, 2896,
20:31:04 <FortyTwoBB> 1, 1, 1, 19, 27, 3, 1, 0, 1, 1, 0, 19, 27, 3
20:31:05 <FortyTwoBB> Clocks 23, 34, and 40 holding nearly identical gigantic 770 digit numbers starting with 91521821... clock 23 being 2 less than the other two.
20:31:05 <FortyTwoBB> Every other clock at zero.
20:31:36 <FortyTwoBB> does this match what you get with yours?
20:31:37 <FortyTwoBB> If so I think I'm convinced, even with not fully understanding the proof.
20:32:20 <FortyTwoBB> (I'll check the logs later for a reply, though we really should work out a better system lol)
20:36:19 <FortyTwoBB> the example waterclock program for reference:
20:36:20 <FortyTwoBB> [[12,6,6,6,6,6,6],
20:36:20 <FortyTwoBB>  [ 2,2,2,2,0,4,4],
20:36:21 <FortyTwoBB>  [ 3,2,2,2,4,2,0],
20:36:21 <FortyTwoBB>  [ 3,0,0,0,0,0,0],
20:36:22 <FortyTwoBB>  [11,3,1,2,4,0,0],
20:36:22 <FortyTwoBB>  [ 7,1,1,1,1,3,1],
20:36:23 <FortyTwoBB>  [ 3,2,3,1,0,2,4]]
20:53:08 -!- Europe2048 has joined.
20:53:51 <Europe2048> Anyone online?
20:56:50 <FortyTwoBB> Oh, and also the issue with massacre girl in your ruby storm construction is with halting, however I think a special 'unwinding' clock can be used to absorb all of the death triggers and keep the other clocks alive so that you can actually move to combat, by doubling itself and adding triple its value to the other clocks it will always be the
20:56:50 <FortyTwoBB> smallest and it will eventually be able to live all of the -1/-1 triggers.
21:14:12 -!- cpressey has quit (Quit: Client closed).
21:15:15 <esolangs> [[Campbell]] M https://esolangs.org/w/index.php?diff=117970&oldid=92338 * PythonshellDebugwindow * (+89) Stub, categories
21:20:03 -!- __monty__ has quit (Quit: leaving).
21:28:36 <b_jonas> zzo38: no, you'll have to start over because I still can't parse what you're trying to say
21:28:39 -!- Europe2048 has quit (Quit: Client closed).
21:42:37 <zzo38> I meant by category of matrices, if a monad can be a identity matrix multiplied by a nonzero scalar to multiply the matrix by a scalar (so, it is commutative), and the Kleisli category just as good as the original category. (It cannot be zero because it has to be canceled out, by dividing by a scalar, and if it is zero then you would have to divide by zero, which is not allowed, of course.)
21:44:22 <zzo38> (Although, multiplication by zero would correspond with the zero-morphisms, which, since 0 (number of rows or columns) is zero-object that the Initialize comonad and Finalize monad are effectively zero.)
21:44:57 <zzo38> (although Initialize and Finalize are not scalar monads, so it is difference than the above)
22:28:02 -!- Sgeo has joined.
22:42:04 -!- craigo has joined.
22:45:55 -!- craigo_ has joined.
22:46:28 -!- craigo has quit (Remote host closed the connection).
22:49:02 <esolangs> [[Campbell]] M https://esolangs.org/w/index.php?diff=117971&oldid=117970 * None1 * (+29) /* Discussion */
23:37:16 -!- FortyTwoBB has quit (Quit: Client closed).
2023-10-17
00:04:43 <zzo38> Also, is there a name for a category of the walks of a undirected graph such that if you walk backward along the same path that you had just done then it cancels it out? (For example, if you have a graph which is a triangle with notes A B C then A-B-C-A-B-A has the final A-B and B-A canceling each other out being considered equal to A-B-C-A.)
00:55:59 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
00:56:39 -!- Lord_of_Life has joined.
01:30:00 <esolangs> [[Deadfish]] M https://esolangs.org/w/index.php?diff=117972&oldid=117612 * Dnm * (+472) /* Umka, now for Umka 1.2 */
01:49:26 -!- Melvar has quit (Ping timeout: 255 seconds).
01:51:54 <esolangs> [[Counting]] M https://esolangs.org/w/index.php?diff=117973&oldid=117585 * Kaveh Yousefi * (+0) Amended an instance of cacography.
02:02:11 -!- Melvar has joined.
03:30:13 <esolangs> [[User talk:PixelatedStarfish]] https://esolangs.org/w/index.php?diff=117974&oldid=117175 * PixelatedStarfish * (+31) /* Logo suggestions */
03:32:59 <esolangs> [[Special:Log/upload]] upload * PixelatedStarfish * uploaded "[[File:DeadFishPlusPlus.png]]": logo!
03:35:01 <esolangs> [[User talk:PixelatedStarfish]] https://esolangs.org/w/index.php?diff=117976&oldid=117974 * PixelatedStarfish * (+25) /* Logo suggestions */
03:35:26 <esolangs> [[User talk:PixelatedStarfish]] https://esolangs.org/w/index.php?diff=117977&oldid=117976 * PixelatedStarfish * (-56) /* Logo suggestions */
03:35:53 <esolangs> [[Talk:Deadfish++]] https://esolangs.org/w/index.php?diff=117978&oldid=117260 * PixelatedStarfish * (+68)
03:36:26 <esolangs> [[Talk:Deadfish++]] https://esolangs.org/w/index.php?diff=117979&oldid=117978 * PixelatedStarfish * (-68) /* Logo */
03:36:49 <esolangs> [[User talk:Europe2048]] https://esolangs.org/w/index.php?diff=117980&oldid=117933 * PixelatedStarfish * (+61)
03:58:22 <esolangs> [[?]] M https://esolangs.org/w/index.php?diff=117981&oldid=117962 * PythonshellDebugwindow * (+49) Categories
03:59:29 <esolangs> [[?]] M https://esolangs.org/w/index.php?diff=117982&oldid=117981 * PythonshellDebugwindow * (+19) Category
04:59:05 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=117983&oldid=117598 * Yb1 * (-15) thanks None1
06:19:11 -!- arseniiv has joined.
08:37:09 -!- Koen has joined.
09:25:28 -!- Sgeo has quit (Read error: Connection reset by peer).
09:44:31 -!- __monty__ has joined.
10:19:12 <esolangs> [[Talk:Snowflake]] https://esolangs.org/w/index.php?diff=117984&oldid=107486 * PkmnQ * (+405) /* Segmented transposition */ new section
10:42:28 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=117985&oldid=117494 * None1 * (+41)
10:47:16 -!- craigo__ has joined.
10:50:11 -!- craigo_ has quit (Ping timeout: 260 seconds).
10:56:33 -!- craigo__ has quit (Quit: Leaving).
11:31:16 -!- Thelie has joined.
11:46:41 <esolangs> [[Hsamsniarb]] M https://esolangs.org/w/index.php?diff=117986&oldid=116387 * Kaveh Yousefi * (+1) Rectified an orthographic mistake.
11:47:31 <esolangs> [[Hsamsniarb]] M https://esolangs.org/w/index.php?diff=117987&oldid=117986 * Kaveh Yousefi * (+1) Rectified an orthographic mistake.
11:48:54 <esolangs> [[Imput]] M https://esolangs.org/w/index.php?diff=117988&oldid=115793 * Kaveh Yousefi * (+1) Rectified an orthographic mistake.
11:51:13 <esolangs> [[...]] M https://esolangs.org/w/index.php?diff=117989&oldid=114873 * Kaveh Yousefi * (-3) Amended an erroneous statement in the Common Lisp implementation's documentation concerning the memory's componency.
11:55:13 <esolangs> [[Skim machine]] M https://esolangs.org/w/index.php?diff=117990&oldid=105910 * Kaveh Yousefi * (-1) Rectified an orthographic mistake.
11:56:35 <esolangs> [[O o]] M https://esolangs.org/w/index.php?diff=117991&oldid=106020 * Kaveh Yousefi * (+0) Rectified an orthographic mistake.
12:03:40 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=117992&oldid=117983 * None1 * (+10) Fixed truth machine
12:06:42 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=117993&oldid=117992 * None1 * (+137) /* Examples */
12:12:35 <esolangs> [[Brainfuck]] M https://esolangs.org/w/index.php?diff=117994&oldid=117927 * None1 * (+145) /* Related languages */
12:20:01 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117995&oldid=117956 * None1 * (+288) /* Commands */
12:20:52 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117996&oldid=117995 * None1 * (+3) /* Errors */
12:21:07 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=117997&oldid=117996 * None1 * (+4) /* Example programs */
12:28:49 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=117998&oldid=117997 * None1 * (+107)
12:30:23 <esolangs> [[Programming abillities of different esolangs]] https://esolangs.org/w/index.php?diff=117999&oldid=117572 * None1 * (+304) /* B */
12:37:46 <Koen> !msg cpressey I've read the first half of the first half of "counterexamples in topology". it's fun. but "Don't worry if you don't know topology -- it's not the topology that makes this a worthwhile read" seriously? this can be read by someone who hasn't studied topology? there are so much formal symbols everywhere and so many abstract words describing different kinds of abstract topologies!!
12:38:17 <Koen> !send cpressey I've read the first half of the first half of "counterexamples in topology". it's fun. but "Don't worry if you don't know topology -- it's not the topology that makes this a worthwhile read" seriously? this can be read by someone who hasn't studied topology? there are so much formal symbols everywhere and so many abstract words describing different kinds of abstract topologies!!
12:58:20 -!- Thelie has quit (Quit: Leaving.).
13:00:42 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=118000&oldid=117998 * None1 * (+115)
13:01:10 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=118001&oldid=118000 * None1 * (+0) /* Reverse Cat program */
13:01:51 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=118002&oldid=118001 * None1 * (+13) /* Jump */
13:04:51 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=118003&oldid=118002 * None1 * (+130) /* Example programs */
13:05:39 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=118004&oldid=118003 * None1 * (-3478)
13:12:08 <esolangs> [[Stack-based]] N https://esolangs.org/w/index.php?oldid=118005 * None1 * (+3718) Created page with " Stack-based is a stack-based esolang invented by [[User:None1]]. ==Commands== They are case-insensitive. Legend: ''x'', ''y'' and ''z'' are variables, ''integer'' is an integer literal, ''string'' is a string literal without quotes. ===Declaration=== VAR ''x'' Decl
13:16:28 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=118006&oldid=117965 * None1 * (+13) /* B */
13:17:56 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118007&oldid=118006 * None1 * (+18) /* S */
13:18:27 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118008&oldid=117942 * None1 * (+44) /* My Esolangs */
13:19:17 <esolangs> [[Stack-based]] M https://esolangs.org/w/index.php?diff=118009&oldid=118005 * None1 * (+80) /* Errors */
13:20:14 <esolangs> [[Hello world program in esoteric languages (N-Z)]] M https://esolangs.org/w/index.php?diff=118010&oldid=117773 * None1 * (+38) /* Spoon */
13:20:56 <esolangs> [[Nope.]] M https://esolangs.org/w/index.php?diff=118011&oldid=115845 * None1 * (+35) /* Setlang */
13:21:50 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=118012&oldid=117599 * None1 * (+56) /* Squishy2K */
13:22:17 -!- arseniiv_ has joined.
13:22:49 <esolangs> [[A+B Problem]] M https://esolangs.org/w/index.php?diff=118013&oldid=117606 * None1 * (+74) /* Sokolang */
13:23:22 <esolangs> [[Looping counter]] https://esolangs.org/w/index.php?diff=118014&oldid=113543 * None1 * (+123) /* Examples */
13:23:47 <esolangs> [[Looping counter]] M https://esolangs.org/w/index.php?diff=118015&oldid=118014 * None1 * (+2)
13:23:54 -!- Thelie has joined.
13:24:03 <esolangs> [[Looping counter]] M https://esolangs.org/w/index.php?diff=118016&oldid=118015 * None1 * (-1)
13:25:32 -!- arseniiv has quit (Ping timeout: 248 seconds).
13:25:41 <esolangs> [[Looping counter]] M https://esolangs.org/w/index.php?diff=118017&oldid=118016 * None1 * (+1)
13:33:55 <river> "BB(745) requires proving the consistency of ZFC"
13:33:57 <river> I don't understand this
13:34:10 <river> can't you just calculate BB(n)?
13:34:36 <river> i guess not because some turing machines may not terminate, but it wont be obvious
13:34:42 <river> https://www.sligocki.com/2023/10/16/bb-3-3-is-hard.html
13:35:12 <river> so BB(n) isnt just something you can calculate, you actually have to prove termination for every turing machine of a certain length
13:46:29 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=118018&oldid=117993 * None1 * (+1) /* Truth Machine */
13:46:48 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=118019&oldid=118018 * None1 * (-1) /* Cat program */
13:55:32 <esolangs> [[Brainbits]] https://esolangs.org/w/index.php?diff=118020&oldid=118019 * None1 * (+615) /* Examples */
13:56:15 <esolangs> [[Brainbits]] https://esolangs.org/w/index.php?diff=118021&oldid=118020 * None1 * (+77) No longer unimplemented!
13:56:41 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118022&oldid=118008 * None1 * (+22) /* My Implementations */
13:57:55 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=118023&oldid=118021 * None1 * (+4) /* Hello World! */
13:58:20 <esolangs> [[Hello world program in esoteric languages (nonalphabetic and A-M)]] https://esolangs.org/w/index.php?diff=118024&oldid=117823 * None1 * (+534) /* BoolX */
14:02:19 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=118025&oldid=118023 * None1 * (-29) /* Interpreter */ It's not TC
15:19:22 -!- wib_jonas has joined.
15:21:09 <wib_jonas> `dontaskdonttelllist
15:21:10 <HackEso> dontaskdonttelllist: q​u​i​n​t​o​p​i​a​ m​y​n​a​m​e​ i​n​t​-​e​
15:21:24 <wib_jonas> Koen: try @tell
15:21:38 <Koen> thanks
15:21:47 <Koen> @tell cpressey I've read the first half of the first half of "counterexamples in topology". it's fun. but "Don't worry if you don't know topology -- it's not the topology that makes this a worthwhile read" seriously? this can be read by someone who hasn't studied topology? there are so much formal symbols everywhere and so many abstract words describing different kinds of abstract topologies!!
15:21:47 <lambdabot> Consider it noted.
15:21:47 <wib_jonas> river: proving termination is the easier hard part, the hard (or impossible for larger n) part is proving non-termination
15:22:11 <esolangs> [[Special:Log/newusers]] create * Codeguy9 * New user account
15:24:00 <wib_jonas> ok, so the C++ function std::regex_search and the python function re.search tries to find how a regex matches any infix of a string; the python function re.match tries to find how a regex matches any prefix of a string; the C++ function std::regex_match and the python function re.fullmatch tries to find how a regex matches a whole string. that's
15:24:00 <wib_jonas> another annoying naming conflict.
15:35:33 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118026&oldid=117790 * Codeguy9 * (+177) /* Introductions */
15:36:27 <esolangs> [[User:Codeguy9]] N https://esolangs.org/w/index.php?oldid=118027 * Codeguy9 * (+98) Created page with "I make programming languages for fun and then post them as open source projects on my Google Drive"
15:47:39 -!- wib_jonas has quit (Quit: Client closed).
15:47:54 <esolangs> [[User talk:Codeguy9]] N https://esolangs.org/w/index.php?oldid=118028 * Codeguy9 * (+12) Created page with ""
16:43:10 <esolangs> [[8-Bit]] N https://esolangs.org/w/index.php?oldid=118029 * Infinitehexagon * (+911) Created page with "'''8-Bit''' is an esolang created by [[User:Infinitehexagon]] in hopes of making his first Turing tarpit using Binary numbers, but it is unknown whether this is Turing-complete due to the fact that the cells are NOT unbounded and are limited to 8 cells. This langua
16:44:00 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118030&oldid=118029 * Infinitehexagon * (+204)
16:44:21 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118031&oldid=118030 * Infinitehexagon * (+1)
16:44:38 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118032&oldid=118031 * Infinitehexagon * (+0) /* Hello World */
16:46:12 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118033&oldid=118032 * Infinitehexagon * (+212)
16:47:05 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118034&oldid=118033 * Infinitehexagon * (-12)
16:50:02 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118035&oldid=118034 * Infinitehexagon * (+131)
16:52:32 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118036&oldid=118035 * Infinitehexagon * (+53)
16:55:54 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118037&oldid=118036 * Infinitehexagon * (+159)
16:57:30 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118038&oldid=118037 * Infinitehexagon * (+46)
17:00:55 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118039&oldid=118038 * Infinitehexagon * (+24)
17:01:28 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=118040&oldid=117722 * Infinitehexagon * (+2) /* Things I might do */
17:02:07 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=118041&oldid=118040 * Infinitehexagon * (+14) /* My Esolangs (chronological order) */
17:05:38 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118042&oldid=118039 * Infinitehexagon * (+75)
17:06:01 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118043&oldid=118042 * Infinitehexagon * (+6)
17:08:05 -!- Koen has quit (Quit: Leaving...).
18:21:13 -!- arseniiv_ has quit (Quit: gone too far).
18:36:54 -!- Wryl-o-the-wisp has quit.
18:46:44 -!- Wryl-o-the-wisp has joined.
18:51:21 -!- cpressey has joined.
19:09:59 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=118044&oldid=117985 * Europe2048 * (+20) Changed syntax: /x\ mx
19:20:47 -!- rodgort has quit (Write error: Connection reset by peer).
19:37:28 -!- rodgort has joined.
19:47:23 -!- sprout_ has joined.
19:50:39 -!- sprout has quit (Ping timeout: 240 seconds).
19:56:13 -!- cpressey has quit (Quit: Ping timeout (120 seconds)).
20:07:27 -!- sprout_ has changed nick to sprout.
20:28:10 -!- cpressey has joined.
20:30:23 -!- cpressey has quit (Client Quit).
20:30:55 -!- Thelie has quit (Remote host closed the connection).
20:39:00 -!- cpressey has joined.
20:44:53 <esolangs> [[Blackberry]] M https://esolangs.org/w/index.php?diff=118045&oldid=46427 * PythonshellDebugwindow * (+32) Stub, category
20:49:11 -!- sprout_ has joined.
20:52:36 -!- sprout has quit (Ping timeout: 272 seconds).
21:05:19 -!- craigo has joined.
21:09:22 <cpressey> <b_jonas> ah yes, that's a good way to get an esoteric language. plan a domain-specific language that you want to use for some particular purpose, then find that you don't want to use it after all, ends up unused and esoteric  <-- Yes, this is a good design metholodology for esolangs.
21:11:16 <cpressey> My compiler's not a write-off but was driven off the road by the fact that Scheme is a bad fit for what I need.  I'll probably change the source language someday, try to salvage something from it.
21:17:08 <cpressey> @tell Koen There are lots of nice pictures in it you can look at if you don't like puzzling over math symbols.
21:17:08 <lambdabot> Consider it noted.
21:18:46 <zzo38> I have invented some domain-specific language and had some intention of others that I had not yet designed (I have a few ideas but not enough). I could also consider that too, though
21:26:32 <zzo38> (Specifically, I had made up one for puzzle games (like Sokoban, Hero Hearts, etc); and I thought to also make one for specifying rules of variants of mahjong.)
21:27:36 <zzo38> (And, PostScript is both general-purpose and domain-specific programming language, as well as both text and binary, and I seem to remember also reading somewhere that it is also both esoteric programming and not esoteric programming at the same time, too.)
21:33:28 <cpressey> I owned this book on PostScript, once, a long time ago: https://archive.org/details/postscriptlangua00adobrich
21:33:29 <cpressey> I don't think I would call PostScript truly esoteric, but it definitely has its moments.
21:35:20 <zzo38> I think you are probably correct
21:37:18 <zzo38> PostScript is one of the programming languages that I use, although I think some improvements could be made, such as adding a /Environment resource, non-buffered pipes, alpha transparency, setting the encoding separately from the font, auto-allocation for some operators, string concatenation, and some others
21:39:48 <b_jonas> cpressey, zzo38: re unused domain-specific language, https://esolangs.org/wiki/Legasm is the main example that I was thinking of
21:52:51 -!- Sgeo has joined.
22:06:26 <zzo38> My opinion is that, nevertheless, PostScript is much better designed than many newer programming languages. One advantage of PostScript is that it does not use Unicode strings.
22:11:05 -!- sprout_ has changed nick to sprout.
22:11:39 <zzo38> And, the PostScript binary object sequence format is good but is not very good if you want 64-bit values.
22:17:29 <zzo38> Other than that, it has the advantage of not needing parsing the entire structure to find one part
22:20:56 -!- ais523 has joined.
22:21:28 -!- __monty__ has quit (Quit: leaving).
22:24:21 <ais523> for the logs (for if FortyTwoBB reads them, or someone can otherwise link this portion of the logs if they show up):
22:24:39 <ais523> my Flooding Waterfall Model compile+simulation on the same program gives:
22:24:41 <ais523> Waterclock values: 11×260+36 11×260+36 11×260+37 11×260+36 11×260+36 11×260+36 11×260+35 11×260+36 1 1 1 19 27 3 1 0 1 1 0 19 27 3 260^318-11 0 0 0 0 0 0 0 0 0 0 260^318-13 0 0 0 0 0 260^318-13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
22:26:26 <ais523> 260^318-11 is a 768-digit number starting with 9152182143
22:26:38 <ais523> so I suspect we have the same result and you just miscounted the digits
22:27:12 <ais523> also, I realised I was slightly wrong when saying a constant toughness boost wouldn't affect the Flooding Waterfall Model compiler output
22:27:31 <ais523> it actually does affect one part of it: the halt counter, which won't work correctly if you add a constant toughness boost and the program is otherwise unmodified
22:27:52 <ais523> this isn't a major issue, it is possible to change the baseline a little to compensate for the constant toughness boost
22:29:34 <ais523> also I get 3989 floods, just like you do
22:31:30 <ais523> as for the Massacre Girl construction, when using Bishop of Wings it can be halted very simply by using the Bishops (whose creature types are unique) as the halt counter (the halt counter is formed of the Bishops + lots of tokens), when the program halts all the Bishops die so there are no token-creation triggers left
22:32:14 <ais523> however, I prefer your approach, because it makes it possible to use Xathrid Necromancer instead, meaning that we don't have to give the opponent life (making it possible to have a lethal Grapeshot on the stack immediately below the damage source, also a Grapeshot, that starts off the combo)
22:33:10 <ais523> on another side note, Spiral Rise can interpret n-tag directly, you don't have to go via 2-tag
22:38:33 <ais523> (sorry for not being online yesterday – I am often busy on Mondays)
22:47:37 <esolangs> [[Talk:8-Bit]] N https://esolangs.org/w/index.php?oldid=118046 * None1 * (+144) Created page with "If the data in a language is bounded, then its definitely not TC. --~~~~"
22:50:54 <esolangs> [[Springboard]] M https://esolangs.org/w/index.php?diff=118047&oldid=94912 * PythonshellDebugwindow * (+74) Categories
22:55:01 -!- FortyTwoBB has joined.
22:55:19 <FortyTwoBB> just read the logs Thanks @ais523
22:55:37 <FortyTwoBB> I did miscount, there was a comma and a space at the end i counted
22:57:00 <esolangs> [[Pity]] M https://esolangs.org/w/index.php?diff=118048&oldid=12157 * PythonshellDebugwindow * (+84) Stub, WIP, categories
22:57:11 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=118049&oldid=118025 * None1 * (+2) /* Interpreter */
22:58:17 <FortyTwoBB> the problem with using the bishops as the halt counter is that killing all of the halting type makes a ton of massacre girl triggers that will wipe out any output from the computation.
22:59:46 <FortyTwoBB> So you need to keep at least some token makers alive to absorb those triggers.
23:00:35 <FortyTwoBB> though if you don't care about output beyond "does it halt?" then your method is fine
23:04:38 <FortyTwoBB> I'm still a bit mystified by the FWC proof but can't deny that it works.
23:23:15 <ais523> if it was easier to understand, it probably wouldn't have taken three years to come up with it :-)
23:23:23 <ais523> (although I wasn't working on it continuously all that time, of course)
23:24:04 <ais523> Turing-completeness doesn't actually require output, although of course a Busy Beaver construction does, and having output is always nice
23:26:04 <ais523> I think there's some sort of intermediate language which compiles into FWM, which would make the proof easier to understand
23:26:21 <FortyTwoBB> that would be nice
23:27:14 <ais523> you have two basic operations on positions (= damage marked): "a = min(b, c, d, …) + constant", and "if e<b, then don't include b in any minimums this cycle"
23:28:27 <ais523> for the former, you get b's, c's, d's, … flood triggers to create some amount of a, the exact amount doesn't matter, and then use the baseline to get the constant and to get the values correct
23:28:47 <ais523> for the latter, you get e's flood trigger to boost b within the same cluster (rather than cross-cluster like things normally work)
23:29:37 <ais523> and the baseline is conceptually simple, just a bit fiddly because you have to work out all the non-baseline changes that are happening in the program and compensate for them
23:29:41 <FortyTwoBB> yeah you have a lot more control over the valuse than I had been able to get
23:29:59 <ais523> the trick is to never lose control over velocities / token counts ever
23:30:40 <FortyTwoBB> yeah, that was easier said than done
23:30:58 <ais523> but this is easier than it sounds, because if 1 X token creates a Y tokens, and 1 Y token creates b Z tokens, then one X token always creates ab Z tokens, the flood sequence doesn't matter at all
23:31:34 <ais523> (this is also the reason it's probably impossible to use the token quantities to do meaningful computation, and I had to use the damage marked instead)
23:32:22 <FortyTwoBB> but the damage marked will be the same as the quantity when it floods
23:32:39 <ais523> yes, but it controls the timing of the flood
23:33:20 <ais523> there is one counter, that I called "zero", which everything is measured relative to – data is stored in the timing of the floods of that relative to the floods of other things
23:33:44 <FortyTwoBB> yeah im wrapping my head around it, its a different way than I had been thinking of them
23:34:21 <ais523> I find that programming in this sort of language is all about finding the right way to think about the problem – what can we control, and is the language still TC if we control it
23:34:49 <ais523> Three Star Programmer was mystifying to me and everyone else when I created it, but if looked at from the right perspective it's almost trivially easy
23:34:59 <ais523> (https://esolangs.org/wiki/Three_Star_Programmer if you're interested)
23:36:12 <FortyTwoBB> yeah three star programmer is a cool 1-operation language
23:43:06 <esolangs> [[Three Star Programmer]] https://esolangs.org/w/index.php?diff=118050&oldid=117917 * Ais523 * (+960) /* Computational class */ explain the right way to think about this language
23:44:57 <ais523> for what it's worth, my breakthrough in solving FWM Turing-completeness was to observe that the values are hard to control, then "so if we can't control the values we have to control the velocities", then "we can't control the velocity separately from the value if we're ensuring the counters are always nonzero, like in The Waterfall Model, so we have to leave them zero for a while – changing how long they're zero would change things in a possibly
23:44:59 <ais523> controllable way"
23:45:33 <ais523> and the simplest construction I could think of where things spend a lot of time at zero was to split into two groups and have each group be zero around half the time
23:45:57 <FortyTwoBB> Yeah I knew zero-ed counters were useful but I couldn't figure it out.
23:46:29 <ais523> you wrote in the original article that counters were permitted to remain at zero, rather than being undefined behaviour – that may well have been a useful clue
23:47:26 <FortyTwoBB> yeah I wanted to be clear how it worked in the MTG implementation so that it was transferrable
23:48:23 <ais523> I find it fascinating how even closely related languages can have different restrictions and permissions based on what "naturally works" for the language
23:48:50 <ais523> The Waterfall Model hates zeroed counters because they would be supposed to trigger continuously, but in Flooding Waterfall Model the trigger is multiplied by 0 so it's fine
23:49:38 <FortyTwoBB> yeah lol
23:50:32 <ais523> something similar happened with Spiral Rise, the "add the remainder to the modulus" thing helped solve two problems (TCness and implementation difficulty), and then later I implemented Spiral Rise in a tag system and that *also* wanted to naturally add the remainder to the modulus
23:51:04 <ais523> and I realised that this actually makes a lot of sense with how division works in the real world, divisions don't actually round down, if you have a remainder you have a remainder
23:51:09 <ais523> and when the remainders add up they carry
23:51:43 <FortyTwoBB> yeah TCness can come from unexpected places and its kind of serendipitous sometimes
23:52:16 <ais523> I was interested in this back when I was very young, before I realised that esolangs existed or what TCness was
23:52:35 <ais523> trying (and mostly failing) to implement algorithms in things not meant to be programmed
23:53:57 <FortyTwoBB> I've been more interested in the mathematics behind the structure
23:54:24 <ais523> I find that the underlying mathematics is often really neat, once you pare away enough unnecessary features
23:55:03 <ais523> back when Turing machines were first discovered, mathematicians were interested in what the very simplest universal machines would be, hoping it would teach them something interesting
23:55:16 <ais523> and then they changed their mind, deciding that it probably wouldn't reveal anything interesting after all
23:55:45 <ais523> but I think that, if you go far enough down that path, it does produce some pretty interesting mathematical constructs and some neat insights into the nature of computation
23:56:01 <FortyTwoBB> well the smallest is arguably wofram's (2,3)
23:56:19 <FortyTwoBB> though that is very weakly universal
23:56:20 <ais523> in case you didn't realise, I'm the person who proved that weakly TC
23:56:29 <FortyTwoBB> lol
23:57:18 <ais523> it lead to a lot of controversy because nobody was quite sure what the correct definition of TCness was, and I still am not sure
23:57:46 <FortyTwoBB> well congrats, I spent a week reading the FOM archives a few months ago.
23:58:16 <ais523> it's made me more interested in the strong TCness constructions (i.e. blank initial state and explicit halting) because a) at least those are usually uncontroversial and b) there's more room for optimisation
23:59:06 <ais523> I came up with a strongly universal (2,14) pretty recently: https://codegolf.stackexchange.com/questions/111278/turing-complete-language-interpreter/265539#265539
2023-10-18
00:00:30 <FortyTwoBB> yeah universaility is very odd and tricky to pin down
00:00:44 <FortyTwoBB> a good definition for without splitting into strong and weak
00:02:51 <ais523> interestingly, experiments with proving things Turing-complete have me convinced that the simplest models are all variants of either counter machines or queue automata, and neither of those allow infinite inputs in the first place
00:03:03 <b_jonas> though it's probably not hard to add output to the M:tG Flooding Waterfall construction, something like you add two special counters and the output is the quotient of their value at termination
00:03:35 <ais523> b_jonas: the construction that FortyTwoBB et al are working on does require output, although they're doing busy beaver so they just need the output as large as possible
00:04:03 <ais523> fwiw the "natural" definition of output in Flooding seems to be "distance in time between two counters zeroing"
00:04:19 <b_jonas> right, though I was thinking yours, with the tournament viable deck, since in that case just rerunning the machine multiple times in parallel to get bits of the output isn't viable
00:04:30 <FortyTwoBB> yeah we just have a counter that tracks how many iterations its been
00:04:47 <b_jonas> ok, that's the output then
00:05:10 <ais523> with FortyTwoBB's idea for halting the program via stopping the death triggers via stopping the deaths rather than stopping the sources of the triggered abilities
00:05:41 <ais523> you could easily have multiple output states by varying which trigger is used to do the stopping, and thus what the creature type that floods the board at the end would be
00:06:08 <FortyTwoBB> we also want the output to be in a nice stairstep pattern so we can easily convert the output to input.
00:07:02 <ais523> I'm not sure what you mean by a stairstep pattern
00:07:09 <FortyTwoBB> of the n creatures we have each of {1...n} remaining toughness
00:07:11 <b_jonas> large number as output is slightly weaker than arbitrary output from the program, so you probably use whatever large number is convenient for the M:tG construction, and don't care if you can make the program output a result of its calculation there
00:07:19 <ais523> ah, I see
00:07:50 <ais523> b_jonas: right, one of the properties of busy beavers is that if you can produce a number X as output, there is no need to be able to produce any number < X
00:08:48 <FortyTwoBB> then to make input of i<n we can make the i+1st output creature a different type and exactly the first i outputs become inputs with an i->o necromancer
00:09:25 <FortyTwoBB> err O->I necromancer
00:10:42 <ais523> is the current construction able to cast Artificial Evolution infinitely? or does it consume a limited resource?
00:10:54 <FortyTwoBB> it consumes a limited resource
00:11:08 <FortyTwoBB> we are unable to do anything infinitely
00:11:29 <ais523> I kind-of assumed there would be some things that would be infinite, but not convertible into damage
00:11:50 <FortyTwoBB> there have been versions with infinite colorless mana and similar
00:12:45 <FortyTwoBB> but free AEs would give us infinite TYS storm which we can convert into say infinite lingering souls tokens
00:13:02 <ais523> ah right, you have something that cares about something storm-count-ish
00:14:14 <JAA> 7105
00:14:17 <JAA> Oops
00:14:20 <FortyTwoBB> so an AE costs a TYS copy from a TYS trigger from ... from a spellweaver volute trigger from casting lingering souls for 2 life.
00:14:38 <ais523> JAA: that's a surprisingly large number to typo into IRC
00:14:54 <ais523> normally when people do that it's something like a tab number, and is often in the hundreds, but I don't think I've seen thousands
00:15:02 <JAA> ais523: / = shift + 7 on my keyboard layout, 105 is the window number.
00:15:10 <ais523> ah right
00:15:33 <ais523> I guess that people who have hundreds of tabs are more likely to typo tab numbers, because they switch more oftne
00:15:55 <JAA> It happens so regularly that I should look into writing a script that stops me from sending such messages...
00:15:59 <FortyTwoBB> so an AE costs a small sliver of a life
00:16:44 <FortyTwoBB> bbiab driving
00:16:47 -!- FortyTwoBB has quit (Quit: Client closed).
00:18:41 <b_jonas> do you need to spend an Artificial Evolution cast on each copy of the Xantrid Necromancer, or do you clone the evolved version and spend a more abundant resource on cloning?
00:19:19 <b_jonas> Xathrid Necromancer
00:22:17 <ais523> I guess it'd be nice to have a list of level/stage resources, in order, to make this sort of question easier to answer – I lost track of it ages ago
00:55:59 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
00:56:45 -!- Lord_of_Life has joined.
00:58:45 -!- cpressey has quit (Quit: Client closed).
01:07:31 -!- FortyTwoBB has joined.
01:10:29 <ais523> welcome back
01:13:35 <FortyTwoBB> currently, roughly the resources are: colorless mana < creature tokens (can animate artifacts and enchantments) < resolute watchdog tokens < instants < computation happens here < life=black mana < red mana = sorceries < blue mana < green mana < white mana < card draw < poison counters
01:14:22 <ais523> `card-by-name Resolute Watchdog
01:14:24 <HackEso> No output.
01:14:48 <ais523> "Defender \ {1}, Sacrifice Resolute Watchdog: Target creature you control gains indestructible until end of turn."
01:15:18 <FortyTwoBB> its really any card that costs colorless to sacrifice itself and target a creature
01:15:44 <FortyTwoBB> `card-by-name Martyr of Spores
01:15:46 <HackEso> Martyr of Spores \ G \ Creature -- Human Shaman \ 1/1 \ {1}, Reveal X green cards from your hand, Sacrifice Martyr of Spores: Target creature gets +X/+X until end of turn. \ CSP-C
01:15:57 <FortyTwoBB> is the other good option for that slot
01:16:12 <ais523> presumably this is imprinted on Soul Foundry?
01:16:16 <FortyTwoBB> yup
01:17:07 <FortyTwoBB> from hand we can either imprint it on soul foundry to get psychic battle ->cowardice triggers
01:17:25 <FortyTwoBB> or cast and counter it to get bloodbond march triggers
01:17:55 <FortyTwoBB> we need both types of triggers to get the dog back in hand
01:18:30 <ais523> oh, I see, you counter it in response to the bloodbond march trigger
01:19:18 <FortyTwoBB> yeah, thats what chancellor of the annex is for
01:20:03 <ais523> the chancellor of the annex had me both flummoxed and amused
01:20:18 <ais523> in competitive play, you play it in decks that go all-in turn 1 in order to increase the chance that your opponent can't stop you
01:20:31 <ais523> which is exactly what this deck would do, if you ever actually tried to win with it
01:20:46 <FortyTwoBB> but we don't want it in our opening hand
01:20:58 <FortyTwoBB> we just give it to our opponent
01:21:00 <FortyTwoBB> lol
01:21:28 <ais523> it is actually quite amusing that the TCness construction gives basically everything to the opponent
01:22:04 <ais523> in both your construction and mine, the only relevant thing we control during the whole TCness operation is one lingering effect from Arcbond or Massacre Girl
01:22:34 <ais523> (and in fact you are using Kaervek's Spite, so you control no permanents and have no cards in hand)
01:22:43 <FortyTwoBB> yeah we use APNAP to force the stack to stay the way we want
01:23:03 <ais523> same here
01:23:17 <ais523> my first attempt to prove magic TC failed because i wasn't able to control the stack order precisely enough
01:23:23 <ais523> so I was very cognisant of that the second time around
01:23:38 <FortyTwoBB> we actually can have some 2/2 zombies from ratadrabrick but none of the legends can affect the board anymore
01:24:38 <ais523> I've debated the infinite loop rules several times in this channel, to work out what happens rules-wise if you do end up creating a nonterminating program (intentionally or by mistake)
01:24:52 <ais523> the obvious answer is "the game is a draw" but I don't think that's actually correct
01:25:01 <FortyTwoBB> its a draw
01:25:08 <ais523> instead, I think someone gets a slow play penalty unless they concede, but I'm not sure whether it's you or your opponent
01:25:31 <ais523> I think the Magic rules are unable to call the situation a loop unless it actually repeats in a predictable manner
01:26:42 <ais523> if they *were* able, then Magic would probably be uncomputable rather than Turing-complete (but not with a Vintage-legal deck because it involves Shahrazad in order to be able to continue playing after a game is drawn)
01:27:18 <FortyTwoBB> 104.4b If a game that’s not using the limited range of influence option (including a two-player game) somehow enters a “loop” of mandatory actions, repeating a sequence of events with no way to stop, the game is a draw. Loops that contain an optional action don’t result in a draw
01:27:41 <ais523> the controversial wording is "repeating a sequence of events"
01:27:54 <ais523> because if it isn't a trivial loop, the sequence doesn't actually repeat
01:27:59 <FortyTwoBB> yeah
01:28:24 <ais523> the judges I talked to persuaded me that non-repeating infinite sequences are played out rather than automatically causing a draw
01:28:59 <ais523> (even though I originally thought it would be a draw)
01:29:54 <FortyTwoBB> I considered trying to make a Shahrazad-oracle but its difficult to actually make use of the output of which player(s) loses half their life
01:30:02 <ais523> Yu-Gi-Oh!'s infinite loop rules are way more fun in this respect, if an infinite loop is formed there, then the "card responsible" gets destroyed to stop the loop, and it often isn't 100% obvious which card that should be
01:30:19 <FortyTwoBB> lol
01:31:38 <ais523> the rule used to be that it was illegal to make a play that would form an infinite loop, but that got changed when someone created a deck which set up a gamestate in which the opponent doing anything at all would cause an infinite loop to start
01:32:00 <FortyTwoBB> thats impressive
01:32:03 <ais523> (which was mostly a griefing manouver because if you can set up a gamestate that complex, you might as well just win on the spot)
01:33:24 <FortyTwoBB> still impressive
01:33:48 <FortyTwoBB> though i don't know yugioh's card pool very well
01:34:11 <ais523> nor do I – I've been trying to learn enough of it to determine whether yugioh is TC
01:34:25 <ais523> but I suspect it currently isn't, effects are almost always optional rather than mandatory in yugioh
01:34:49 <FortyTwoBB> and isn't boardspace very limited? same problem as like hearthstone
01:35:11 <ais523> yes, although counters and monster stats both exist as resources that could reasonably be manipulated
01:35:30 <ais523> it's still hard to do anything useful – there isn't a Wild Evocation equivalent, so almost every card is unusable
01:35:34 <ais523> `card-by-name Wild Evocation
01:35:35 <HackEso> Wild Evocation \ 5R \ Enchantment \ At the beginning of each player's upkeep, that player reveals a card at random from their hand. If it's a land card, the player puts it onto the battlefield. Otherwise, the player casts it without paying its mana cost if able. \ M11-R
01:36:42 <ais523> and new infinite loops are only likely to be possible in the future if Konami makes a mistake, because the game is currently mostly balanced around being arbitrarily unable to win on turn 1
01:37:21 <ais523> almost all top decks can storm off into a huge field from a random 5-card hand, so the game is balanced by the starting player being unable to actually win on that turn, so they have to set up a lot of disruption, and then the second player tries to win through the disruption and if they can't win that turn they usually lose
01:37:55 <FortyTwoBB> crazy hoe powercrept that game got
01:38:12 <ais523> pretty much any loop with a useful output breaks that because it makes it possible to win on turn 1 and so the second player doesn't get a chance to break the board
01:38:18 <ais523> yes, it is ridiculous
01:38:27 <ais523> there is some sort of beauty in it – I have been trying to learn
01:38:37 <ais523> but it fundamentally makes the game almost impossible to balance
01:39:23 <ais523> in current decks, like half the deck has to be a 1-card combo that can set up a big board by itself starting from an empty field, so that you can try to play the first few and then win with the last when the first few get negated (= countered)
01:39:34 <ais523> or it isn't competitively viable
01:39:48 <ais523> at this rate, they will have to create a 0-card combo in order to keep the powercreep going well enough to sell sets
01:40:03 <ais523> (which is actually possible in Yu-Gi-Oh! mechanics)
01:40:26 <ais523> (although they have been sensible enough not to enable any yet, it's mechanically possible but the card pool isn't there)
01:40:37 <FortyTwoBB> companion/commander style effects?
01:40:47 <ais523> yep, you get 15 of them
01:41:02 <FortyTwoBB> that is too many
01:41:15 <ais523> which are normally lower power than a typical M:tG commander would be, but well, they overbalance it with sheer quantity
01:43:39 <FortyTwoBB> its also funny to compare the power of card draw in yugioh to the pokemon tcg
01:44:38 <ais523> they are weirdly comparable – the difference is that in Yu-Gi-Oh! each card converts itself into 1 card + a little extra when it's played, whereas in Pokémon, 1 card converts itself into 7ish cards but you can only do it once per turn
01:44:58 <FortyTwoBB> like draw 2 cards is busted broken in yugioh, and pokemon is like how about instead timetwister
01:45:03 <ais523> so both games go through huge numbers of cards in a turn but for different reasons
01:45:16 <ais523> a costless draw 2 would be broken in pretty much any TCG
01:45:49 <ais523> but adding a cost can quickly plummet that value, depending on the game
01:46:31 <ais523> in Netrunner, you get four "clicks" per turn and need to spend a click to do pretty much anything, but you can use otherwise unused clicks to gain credits (=mana) or to draw cards, so you can draw 4 cards in a turn as long as you don't do anything else
01:47:04 <ais523> which makes it very hard to get entirely resource-screwed, you can still play if you draw no economy cards, it's just slower
01:47:14 <FortyTwoBB> yeah, netrunner has a much better action economy
01:48:18 <ais523> it is interesting to compare a 1-resource game (cards in Yu-Gi-Oh!) to a 2-resource game (cards and mana in Magic) to a 3-resource game (cards and credits and clicks in Netrunner)
01:49:15 <ais523> the fewer resources you have, the harder it is to stop broken infinite combos forming
01:49:29 <ais523> (that said, even Netrunner has had a few infinite combos, but none that break the game)
01:49:59 <FortyTwoBB> yeah, though mtg can subdivide mana into more types
01:50:23 <FortyTwoBB> and uses life as a resource pretty heavily
01:50:30 <ais523> I have mixed feelings about that – color screw feels less fair than mana screw in a way
01:51:04 <ais523> because it's basically a case of, you can choose how powerful your deck is by choosing how many colors you play, but the more colors you go for, the greater the chance of randomly bricking and having a non-game
01:51:45 <ais523> in Legacy, for example, games where RW Initiative is playing are nearly always determined by how good the RW Initiative deck's starting hand and topdecks are
01:52:03 <ais523> it is very hard to beat unless it bricks, but it bricks quite frequently (usually either mana flood, mana screw or color screw)
01:52:23 <FortyTwoBB> yeah they have made better fixing lands, but its still a problem
01:52:43 <ais523> RW Initiative's primary problem is that it can't actually play good color fixing due to the nature of the deck
01:53:02 <ais523> because it has, or at least wants, to make 4 mana on turn 1 in order to function
01:53:12 <ais523> so it's full of Ancient Tombs and Chrome Moxen and the like
01:53:22 <FortyTwoBB> well that's pretty ambitious
01:53:47 <ais523> yes – it's a testament to Magic's card pool that it was even possible to get it semi-consistent
01:53:57 <ais523> and if you do manage it you usually win
01:54:06 <ais523> unless you have nothing good to cast with it
01:57:20 <FortyTwoBB> like vintage oops! all spells decks that try to make 4 (or 7) mana to win with baullistrade spy (or goblin charbelcher) flipping over their deck with no lands.
01:57:40 <ais523> that deck exists in Vintage, Legacy, Modern and Pauper nowadays
01:57:50 <ais523> (admittedly the Pauper deck plays 59 spells rather than 60)
01:58:14 <FortyTwoBB> is edge of autumn a common?
01:58:25 <ais523> `card-by-name edge of autumn
01:58:26 <HackEso> Edge of Autumn \ 1G \ Sorcery \ If you control four or fewer lands, search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library. \ Cycling--Sacrifice a land. (Sacrifice a land, Discard this card: Draw a card.) \ FUT-C, DDG-C
01:58:28 <ais523> yes
01:58:56 <ais523> but I don't think it's played in One Land Spy
01:59:35 <ais523> I think of it as mostly a card for Doomsday
01:59:39 <FortyTwoBB> and i think theres also a card that you can alt cast by revealing you have no lands in hand to search for a basic into your hand
01:59:50 <ais523> `card-by-name Land Grant
01:59:52 <HackEso> Land Grant \ 1G \ Sorcery \ If you have no land cards in hand, you may reveal your hand rather than pay this spell's mana cost. \ Search your library for a Forest card, reveal that card, and put it into your hand. Then shuffle your library. \ MM-C
02:00:02 <ais523> that's the primary reason that One Land Spy plays its one land
02:00:26 <FortyTwoBB> yeah that one
02:02:35 <ais523> it's fun that these decks exist, but would be bad for the game if they were ever top-tier or even second-tier
02:02:54 <FortyTwoBB> oh, completely
02:03:12 <FortyTwoBB> though doomsday is pretty scary in vintage
02:03:55 <ais523> I think Doomsday is good for the game – the Legacy version is great fun to watch if played by someone competent at the deck, and it's also great fun to watch someone competent play against it
02:04:09 <ais523> it can play around pretty much everything, but ends up having to play into something else in the process
02:04:50 <FortyTwoBB> yeah, i really like the skill of making the right pile and also playing against the optimal pile
02:05:02 <FortyTwoBB> at least when its not just over immediately
02:05:34 <ais523> and there are so many cards that beat it, often in bizarre and surprising ways, so trying to work out what to play around / what you might have that can beat what the opponent was playing around is so interesting
02:08:07 <FortyTwoBB> dress down, ancestral recall targeting them, removal, flusterstorm, not to mention what's already on the board
02:09:51 <ais523> even something like wasteland can do wonders if they weren't expecting it
02:10:58 <FortyTwoBB> yeah, or surgical extraction on their doomsday to shuffle their pile
02:12:14 <ais523> it is fun to watch Doomsday pilots play around Endurance
02:12:33 <ais523> which is like the Surgical but more so, and because it can be pitch-cast, often comes alongside some other disruption
02:13:45 <FortyTwoBB> or noxious revival
02:14:08 <ais523> I don't think I've seen that one used against Doomsday, that's hilarious
02:18:32 <FortyTwoBB> sometimes its all a Bazaar of Baghdad player can do
03:47:46 -!- FortyTwoBB has quit (Quit: Client closed).
03:52:58 <esolangs> [[Brainbits]] https://esolangs.org/w/index.php?diff=118051&oldid=118049 * Yb1 * (+345) thanks None1 & infobox & cleaning errors
04:07:00 <esolangs> [[Three Star Programmer]] M https://esolangs.org/w/index.php?diff=118052&oldid=118050 * Ais523 * (+0) /* Variants */ typo fix
04:26:49 <esolangs> [[Special:Log/upload]] upload * Alx * uploaded "[[File:HolyPy.jpg]]": HolyPy logo.
04:54:27 <esolangs> [[It Is Not What It Is]] M https://esolangs.org/w/index.php?diff=118054&oldid=117265 * PythonshellDebugwindow * (+29) Categories
05:05:32 <zzo38> I see that many explanations of category theory seem to use the category of sets as an example, although it seems to me more obvious how a category is like a monoid and that the category of matrices is a more obvious example. Why is that?
05:10:11 <esolangs> [[Muddle++]] M https://esolangs.org/w/index.php?diff=118055&oldid=54819 * PythonshellDebugwindow * (+57) Stub, categories
05:30:13 -!- ais523 has quit (Quit: ais523).
06:21:45 <esolangs> [[HolyPy]] N https://esolangs.org/w/index.php?oldid=118056 * Alx * (+11836) Created page with "= HolyPy = This page is written up on the HolyPy version: <pre>HolyPy Stable-Closed v3.8</pre>. [[File: HolyPy.jpg]] {| class="wikitable" ! Associated file extensions || Descriptor |- | <code>.hpy</code> || The non-compiled extension type recognised by HolyPy. |- | <code>
06:23:19 <esolangs> [[User:Alx]] https://esolangs.org/w/index.php?diff=118057&oldid=116643 * Alx * (+24)
06:24:02 <esolangs> [[User:Alx]] https://esolangs.org/w/index.php?diff=118058&oldid=118057 * Alx * (-36)
07:09:04 -!- cpressey has joined.
07:26:32 <cpressey> An initial state, and a sequence of commands; each command transforms the state.
07:28:13 <cpressey> Lots of programming languages are like this.  But also theorem provers; each command is a tactic, the state is the "proof obligations".
07:28:46 <cpressey> The proofs in such systems look like magical incantations sometimes, but this is mainly because you only see the commands, you don't see the state.
07:30:38 <cpressey> Other proof styles put the emphasis on the other side: they list the states, the transformations used are parenthetical.
07:31:31 <cpressey> As a programmer, it's much easier for me to "see" the unwritten state of a program, than to "see" the unwritten yet-to-be-discharged obligations of a proof.
07:35:16 <cpressey> > the transformations used are parenthetical.  <-- You can go beyond "parenthetical" and leave out the commands completely; but then the proof system has to search for what command must have been meant.  In that direction lies automated proving.
07:35:17 <lambdabot> <hint>:1:46: error: parse error on input ‘<--’
07:35:26 <cpressey> Oh sorry lambdabot, didn't see you there
07:36:50 <cpressey> Just writing about this because realizing my interest in theorem provers is largely an interest in the languages they use (rather than strictly what they can do for you) and why those languages look the way they do.
07:44:45 <cpressey> That's not to say that theorem provers can't do some pretty valuable things for you, of course!
07:50:33 -!- cpressey has quit (Ping timeout: 245 seconds).
08:14:11 <b_jonas> wow, that's an unexpectedly long chain between different colors of mana
08:21:36 <b_jonas> Ravnica has this story where Agrus Kos, a Boros elite soldier, after his death returns as an oathspirit bound to the Azorius. but it seems like the only card that kind of represents this is https://scryfall.com/card/j22/1/agrus-kos-eternal-soldier . wouldn't it be nice if one of the later Ravnica-themed sets added yet another Necromancer, this time an Azorius one, that triggers on any Soldier dying and
08:21:42 <b_jonas> creates a white Spirit token?
08:24:51 -!- __monty__ has joined.
08:35:42 -!- arseniiv has joined.
08:44:39 <b_jonas> "which are normally lower power than a typical M:tG commander would be" => M:tG tried the more powerful free effects once, with companion, but it got so powerful that they had to change their rules to blatantly different than what the printed card says, which I think is an almost unprecedented for modern cards
08:44:54 <b_jonas> usually if they have broken cards they just ban or restrict them instead
08:50:14 <esolangs> [[SDOTOS]] https://esolangs.org/w/index.php?diff=118059&oldid=117732 * Infinitehexagon * (+116)
08:50:36 <esolangs> [[SDOTOS]] https://esolangs.org/w/index.php?diff=118060&oldid=118059 * Infinitehexagon * (+0) /* parity */
08:51:43 <esolangs> [[SDOTOS]] https://esolangs.org/w/index.php?diff=118061&oldid=118060 * Infinitehexagon * (+3) /* Truth-machine */
09:01:22 -!- Sgeo has quit (Read error: Connection reset by peer).
09:11:55 -!- cpressey has joined.
09:13:39 <cpressey> <cpressey> The proofs in such systems look like magical incantations sometimes, but this is mainly because you only see the commands, you don't see the state.  <-- This is also why pointfree style is so opaque. If you add in some "let"s you at least give the intermediate states *names*, which can help in "seeing" them
09:15:59 <b_jonas> cpressey: in that case it must follow that if you program prolog, where every intermediate result has a name, then your program will be even more readable
09:18:57 <cpressey> that sort of thing is why I wrote "can help" instead of "helps"
09:19:44 <cpressey> I don't trust the compiler to do name mangling properly.  I mangle my *own* names at *design time* before I even *write* the code.
09:33:30 <int-e> MangledNameFactoryBean
09:34:03 -!- Koen has joined.
09:42:18 -!- cpressey has quit (Quit: Client closed).
10:16:28 <esolangs> [[Talk:Deadfish++]] https://esolangs.org/w/index.php?diff=118062&oldid=117979 * Europe2048 * (-1)
10:41:54 -!- cpressey has joined.
11:01:26 <cpressey> An alternative to "let" is to keep definitions small, and each definition has a name.  This works for concatenative programming, and also for proofs (this is what lemmas are).
11:01:26 <cpressey> But often it's hard to find a good name because there's no intuition for the intermediate thing you're naming.
11:01:27 <cpressey> If lemmas are useful enough to be reused, they get a name (like "pumping" or "Yoneda") but if they aren't they're just numbered, which hardly helps.
11:04:36 <cpressey> Gotta name all the passes in a micropass compiler, too.
11:05:45 <cpressey> Or more to the point, you can leave them nameless at your peril
11:07:43 <cpressey> Coming up with a name is a way of saving future maintainers the effort of reverse-engineering the definition.
11:08:19 <esolangs> [[Capsule]] https://esolangs.org/w/index.php?diff=118063&oldid=117905 * Leol22 * (-64)
11:26:38 <cpressey> But thinking more about visualizing the intermediate state itself, in a stack-based language, you could have a "stack should look like this now" assertion which can be inserted at any point
11:27:01 <cpressey> Which kind of relates to types.
11:27:08 -!- cpressey has quit (Quit: Ping timeout (120 seconds)).
11:28:08 -!- cpressey has joined.
11:29:43 <cpressey> > let 15 = 3 * 5 in 15 + 1
11:29:45 <lambdabot> 16
11:30:51 <cpressey> > let 99 = 3 * 5 in 99 + 1
11:30:53 <lambdabot> 100
11:33:20 <cpressey> Is it just me or is Haskell becoming an increasingly cavalier language these days?
11:35:09 <Koen> hard to say
11:35:27 <Koen> maybe there was a warning not reproduced by lambdabot
11:36:43 <cpressey> > do 3 + 3
11:36:45 <lambdabot> 6
11:37:16 -!- cpressey has quit (Quit: Client closed).
11:37:40 -!- cpressey has joined.
11:38:14 <Koen> for a minute I thought you had ragequit because you didn't like that 3+3 was 6
11:38:31 <cpressey> No, I just have a lousy connection.
11:39:28 -!- cpressey15 has joined.
11:42:38 -!- cpressey has quit (Ping timeout: 245 seconds).
11:42:47 <cpressey15> Anyway, no warnings from either of those if I try them locally in ghci 9.2.8
11:42:56 -!- cpressey15 has changed nick to cpressey.
11:45:32 <cpressey> It would be great if the increasingly flexible behaviour of `do` was due to it working on any instance of a typeclass called `Doable` but I'm pretty sure it's not
11:45:44 <cpressey> (due you see what I did there)
11:50:01 -!- cpressey has quit (Quit: Ping timeout (120 seconds)).
12:08:36 -!- craigo has quit (Quit: Leaving).
12:17:22 -!- wib_jonas has joined.
12:17:50 <wib_jonas> I've no idea what that let 99 = 3 * 5 in 99 + 1 thing is trying to do and why it's accepted silently
12:48:33 <esolangs> [[CQfuck]] https://esolangs.org/w/index.php?diff=118064&oldid=117171 * Kaveh Yousefi * (+67) Introduced a truth-machine as a third example.
12:49:13 <esolangs> [[CQfuck]] https://esolangs.org/w/index.php?diff=118065&oldid=118064 * Kaveh Yousefi * (+163) Added a hyperlink to my implementation of the CQfuck programming language on GitHub.
13:04:01 -!- cpressey has joined.
13:08:27 <cpressey> wib_jonas: I've posed it to the #haskell channel
13:25:12 <cpressey> tl;dr ghc doesn't issue warnings unless you tell it to
13:48:30 <wib_jonas> cpressey: right, that's the default for gcc or perl too (except maybe a very few warnings). for gcc I'm used to always using -Wall and then occasionally explicitly suppressing warnings. this works much better than with msvc, because gcc's -Wall option (which, despite its name, doesn't enable all warnings) has a set chosen pretty well
13:49:10 <wib_jonas> but it's somewhat reasonable that the IRC bot suppresses warnings for conciseness of both input and output. geordi suppresses most warnings too for that reason.
13:51:18 <wib_jonas> there's of course a little bit of a compatibility problem here, with long-lived projects, because sometimes users of libraries complain that the libraries give warnings in new compilers, since the new compiler added new warnings that are usually useful. the compilers/interpreters have to strike a balance between compatible old behavior and useful
13:51:19 <wib_jonas> new behavior, as happens in lots of things other than warnings too.
13:54:41 <cpressey> Yeah it all adds up; in some sense this is a bot usability issue; I understand why you don't want the channel to be spammed with warnings, but some way to indicate them would be nice.  Maybe privmsg?  Maybe not.
13:56:04 <esolangs> [[Talk:Brainbits]] N https://esolangs.org/w/index.php?oldid=118066 * None1 * (+221) Created page with "Brainfuck is TC only if brackets (loops) can be nested at leastbtwo levels deep, this esolang does not allow this, so it is not TC (probably). --~~~~"
13:56:21 <esolangs> [[Talk:Brainbits]] M https://esolangs.org/w/index.php?diff=118067&oldid=118066 * None1 * (+0)
14:12:50 <esolangs> [[Brainbits]] M https://esolangs.org/w/index.php?diff=118068&oldid=118051 * None1 * (+5) /* Cat program */
14:17:44 -!- cpressey has quit (Quit: Ping timeout (120 seconds)).
14:26:09 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=118069&oldid=117867 * Lilchiky * (+774) /* Aleph 2= */
14:27:02 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=118070&oldid=118069 * Lilchiky * (+2) /* a stronk infinity */
14:40:20 -!- wib_jonas has quit (Quit: Client closed).
14:54:19 <esolangs> [[Beatnik]] https://esolangs.org/w/index.php?diff=118071&oldid=90788 * HaleyHalcyon * (+732) Mentioned lack of vocabulary restriction and example high-value words
14:54:44 <esolangs> [[Beatnik]] M https://esolangs.org/w/index.php?diff=118072&oldid=118071 * HaleyHalcyon * (+4) /* Commands */
15:16:24 -!- Koen has quit (Quit: Leaving...).
15:29:46 -!- ais523 has joined.
15:37:45 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118073&oldid=118043 * Infinitehexagon * (+65) /* Implementation */
15:38:14 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118074&oldid=118073 * Infinitehexagon * (+2) /* Implementation */
15:39:38 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118075&oldid=118074 * Infinitehexagon * (+1)
15:51:20 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=118076&oldid=118070 * Infinitehexagon * (+175)
16:29:38 -!- __monty__ has quit (Ping timeout: 255 seconds).
16:42:15 -!- __monty__ has joined.
16:58:30 -!- cpressey has joined.
17:03:29 <cpressey> ais523: Out of curiosity, what is it about existing parser generators, in your opinion, that makes them produce inefficient code?
17:06:28 <cpressey> I might be misremembering what you said.  You said that parser combinator libraries make it too easy to accidentally build a slow parser.
17:07:13 <cpressey> I think that's mainly due to accidentally allowing backtracking.
17:08:56 <cpressey> I've never tried a PEG parser.  I don't find them very appealing.  Although I've definitely seen people who are definitely fans of them.
17:26:30 -!- cpressey has quit (Quit: Client closed).
17:34:06 <ais523> cpressey (for when you get back): existing parser generators are usually very branchy, so the processor can't predict well unless you're parsing something that follows a predictable pattern
17:34:20 <ais523> but yes, main problem with combinators is accidental backtracking
17:35:11 <ais523> I'm also not a huge fan of PEG parsers: a) despite being linear-time, the constant factors are bad; b) their alternation-like operator is unintuitive and can easily end up accidentally rejecting parses you want to accept
17:36:08 <ais523> actually PEG is a lot like combinators, in the sense that if you write a parser with a combinator library that would accidentally backtrack, the equivalent PEG grammar would accidentally reject some valid inputs
17:36:20 <ais523> I guess the latter behaviour is easier to discover in testing
17:39:17 <zzo38> O, finally they are starting to implement "functionname( arguments ORDER BY sortlist )" in SQLite.
17:40:48 <ais523> does the sorting rearrange one argument relative to another, or does it reorder the elements of a single list-like argument?
17:41:25 <ais523> I guess the former behaviour only really makes sense with variadic functions
17:41:56 <ais523> although, it would be a fun way to do control flow in an esolang, especially if the function were overloaded and the arguments had different types
17:45:30 <zzo38> I think it means that the function must be a aggregate function.
17:52:29 <b_jonas> ais523: the new parser generator that you're considering to make, is that for work?
17:55:31 <ais523> b_jonas: I don't have a job at the moment
17:55:50 <ais523> I've been struggling to concentrate for a few years now, possibly long Covid
17:56:07 <ais523> and I spend so much time unable to do anything
17:56:31 <ais523> so I'm concerned about getting a job in case I just turn up, fail to do anything and get fired
17:57:08 <b_jonas> that sucks
17:57:21 <b_jonas> good luck with job hunting then
17:57:42 <ais523> I've been kind-of wondering if I should make something on my own that I can sell
17:57:46 <ais523> but even that is going very slowly
18:01:20 <ais523> the new parser generator is something that I've been planning for over 3 years now but keep getting things wrong or being too tired to work on it
18:09:10 -!- arseniiv has quit (Quit: gone too far).
18:16:33 -!- __monty_1 has joined.
18:16:49 -!- chiselfuse has quit (*.net *.split).
18:18:13 -!- __monty__ has quit (Ping timeout: 252 seconds).
19:15:55 -!- Europe2048 has joined.
19:26:00 -!- Europe2048 has quit (Quit: Client closed).
19:32:03 -!- vyv has joined.
19:35:25 -!- Europe2048 has joined.
19:35:31 <Europe2048> Hi!
19:58:16 -!- chiselfuse has joined.
20:35:16 -!- vyv has quit (Quit: Konversation terminated!).
20:39:13 -!- Europe2048 has quit (Quit: Client closed).
20:47:09 -!- __monty_1 has changed nick to __monty__.
20:47:25 -!- __monty__ has quit (Quit: leaving).
21:10:27 -!- tromp has quit (Read error: Connection reset by peer).
21:19:19 <esolangs> [[Special:Log/newusers]] create * Ice Bird * New user account
21:22:43 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118077&oldid=118026 * Ice Bird * (+139)
21:24:19 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118078&oldid=118077 * Ice Bird * (+86)
21:49:26 <esolangs> [[ForgottenV]] M https://esolangs.org/w/index.php?diff=118079&oldid=82526 * PythonshellDebugwindow * (+39) Stub, category
22:13:59 -!- Sgeo has joined.
23:59:21 <esolangs> [[2 Bits, 1 Byte]] M https://esolangs.org/w/index.php?diff=118080&oldid=100411 * TheBigH * (+108)
2023-10-19
00:01:06 <esolangs> [[Talk:2 Bits, 1 Byte]] M https://esolangs.org/w/index.php?diff=118081&oldid=99677 * TheBigH * (+111)
00:01:21 <esolangs> [[Talk:2 Bits, 1 Byte]] M https://esolangs.org/w/index.php?diff=118082&oldid=118081 * TheBigH * (+10)
00:15:22 <esolangs> [[Compaline]] N https://esolangs.org/w/index.php?oldid=118083 * Ice Bird * (+1048) Created page with "'''Compaline''' is an [[esoteric programming language]], invented on 19 October 2023, by [[User:Ice Bird|Ice Bird]]. Its name is a portmanteau of "comparison" and "timeline", which a reference to several removed YouTube videos made by JG Science. The commands are ref
00:15:45 <esolangs> [[TeaScript]] M https://esolangs.org/w/index.php?diff=118084&oldid=46415 * PythonshellDebugwindow * (+110) Categories
00:21:49 -!- wpa has joined.
00:57:28 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
00:57:56 -!- Lord_of_Life has joined.
01:32:49 <esolangs> [[Compaline]] https://esolangs.org/w/index.php?diff=118085&oldid=118083 * Quito0567 * (-239)
01:33:49 <esolangs> [[Compaline]] https://esolangs.org/w/index.php?diff=118086&oldid=118085 * Quito0567 * (+7)
01:34:15 <esolangs> [[Compaline]] https://esolangs.org/w/index.php?diff=118087&oldid=118086 * Quito0567 * (-13)
01:36:08 <esolangs> [[Compaline]] https://esolangs.org/w/index.php?diff=118088&oldid=118087 * Quito0567 * (-60)
01:36:54 <esolangs> [[Compaline]] https://esolangs.org/w/index.php?diff=118089&oldid=118088 * Quito0567 * (+6)
01:45:13 -!- cpressey has joined.
01:51:43 <esolangs> [[Compaline]] https://esolangs.org/w/index.php?diff=118090&oldid=118089 * Ice Bird * (+299) stop
01:57:31 -!- cpressey has quit (Quit: Client closed).
02:21:18 -!- craigo has joined.
02:41:49 -!- Sgeo has quit (Read error: Connection reset by peer).
02:48:15 -!- Sgeo has joined.
04:54:22 -!- wpa has quit (Quit: Connection closed for inactivity).
05:01:56 <esolangs> [[CASISP]] M https://esolangs.org/w/index.php?diff=118091&oldid=68969 * PythonshellDebugwindow * (+9) Stub
06:28:30 -!- MrAureliusR has quit (Ping timeout: 272 seconds).
06:34:47 -!- MrAureliusR has joined.
06:44:32 -!- ais523 has quit (Quit: quit).
07:29:22 -!- arseniiv has joined.
08:04:48 -!- Koen has joined.
08:51:21 -!- Sgeo has quit (Read error: Connection reset by peer).
10:12:44 -!- wpa has joined.
11:35:04 -!- tromp has joined.
11:56:25 <esolangs> [[Special:Log/newusers]] create * Susam * New user account
12:29:12 -!- wpa has quit (Quit: Connection closed for inactivity).
12:41:31 <esolangs> [[8-Bit]] https://esolangs.org/w/index.php?diff=118092&oldid=118075 * None1 * (+1) /* One-Time Cat */
12:42:46 <esolangs> [[One Time Cat]] https://esolangs.org/w/index.php?diff=118093&oldid=103542 * None1 * (+69)
12:46:43 -!- __monty__ has joined.
12:48:40 <esolangs> [[ErrorLang]] N https://esolangs.org/w/index.php?oldid=118094 * None1 * (+352) Created page with "ErrorLang is an esolang that is like [[Error]]. ==Execution== Every program raises an error, the error message is {{hw}}, then, both the program and the interpreter will be deleted. ==Examples== ===Hello World=== Any text can go here This has side effects: It deletes th
12:50:00 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=118095&oldid=117837 * None1 * (+63) /* General languages */
12:50:23 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118096&oldid=118022 * None1 * (+63) /* My Esolangs */
12:51:50 <esolangs> [[ErrorLang]] M https://esolangs.org/w/index.php?diff=118097&oldid=118094 * None1 * (+27)
12:59:10 <esolangs> [[ErrorLang]] https://esolangs.org/w/index.php?diff=118098&oldid=118097 * None1 * (+205)
13:00:25 <esolangs> [[ErrorLang]] https://esolangs.org/w/index.php?diff=118099&oldid=118098 * None1 * (+107) /* Interpreter */
13:41:09 <esolangs> [[2 Bits, 1 Byte]] https://esolangs.org/w/index.php?diff=118100&oldid=118080 * None1 * (+94) /* Interpreters */
13:42:45 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118101&oldid=118096 * None1 * (+27) /* My Implementations */
13:43:45 <esolangs> [[2 Bits, 1 Byte]] https://esolangs.org/w/index.php?diff=118102&oldid=118100 * None1 * (+21) /* Example codes */
13:48:31 <esolangs> [[2 Bits, 1 Byte]] https://esolangs.org/w/index.php?diff=118103&oldid=118102 * None1 * (+25) /* Output 'm' */
14:05:54 -!- Cale has quit (Ping timeout: 245 seconds).
14:08:04 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=118104&oldid=117596 * Lilchiky * (-56) /* Chickens */ A chicken is now preserved in the garden
14:15:07 <esolangs> [[Deadfish]] M https://esolangs.org/w/index.php?diff=118105&oldid=117972 * Lilchiky * (+31) /* External resources */ new cat
14:16:35 <esolangs> [[HQ9+]] M https://esolangs.org/w/index.php?diff=118106&oldid=105897 * Lilchiky * (+31) /* External resources */ new cat
14:17:18 <esolangs> [[ACHEQUEUENINETHOUSANDPLUS]] M https://esolangs.org/w/index.php?diff=118107&oldid=101018 * Lilchiky * (+31) /* External resources */ new cat
14:18:21 <esolangs> [[AHQ9+-]] M https://esolangs.org/w/index.php?diff=118108&oldid=101015 * Lilchiky * (+31) /* See also */
14:43:43 -!- Sgeo has joined.
15:39:46 -!- arseniiv_ has joined.
15:43:18 -!- arseniiv has quit (Ping timeout: 272 seconds).
15:55:58 -!- cpressey has joined.
16:45:02 -!- Cale has joined.
17:11:51 <esolangs> [[Deadfish++]] M https://esolangs.org/w/index.php?diff=118109&oldid=118044 * Europe2048 * (+222)
17:26:07 <esolangs> [[User:Cinnamony]] M https://esolangs.org/w/index.php?diff=118110&oldid=110727 * Europe2048 * (-61) Removed deleted picture to save space.
18:07:17 -!- cpressey has quit (Quit: Client closed).
18:22:02 -!- craigo has quit (Remote host closed the connection).
18:38:18 -!- Koen has quit (Remote host closed the connection).
19:29:01 <esolangs> [[Malbrain]] https://esolangs.org/w/index.php?diff=118111&oldid=40140 * Kaveh Yousefi * (+241) Added a hyperlink to my implementation of the Malbrain programming language on GitHub.
19:40:59 -!- Thelie has joined.
19:56:13 -!- Europe2048 has joined.
19:56:19 <Europe2048> Hi everyone!
20:15:46 <arseniiv_> hi bye
20:15:48 -!- arseniiv_ has quit (Quit: gone too far).
20:21:27 <esolangs> [[Malbrain]] https://esolangs.org/w/index.php?diff=118112&oldid=118111 * Kaveh Yousefi * (+225) Added a truth-machine program, and subsumed all three extant examples into a common section.
20:23:56 <Europe2048> I think you know of Super Mario Bros. Wonder, right?
20:29:34 <esolangs> [[Malbrain]] https://esolangs.org/w/index.php?diff=118113&oldid=118112 * Kaveh Yousefi * (+494) Introduced a tabular summary of the command transitions and improved the code fragments' formatting.
20:32:08 <esolangs> [[Malbrain]] M https://esolangs.org/w/index.php?diff=118114&oldid=118113 * Kaveh Yousefi * (+25) Improved two code fragments' formatting.
21:36:42 -!- Europe2048 has quit (Quit: Client closed).
22:06:39 -!- __monty__ has quit (Quit: leaving).
22:27:53 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118115&oldid=118078 * Susam * (+148) /* Introductions */
22:30:42 <esolangs> [[CFR]] N https://esolangs.org/w/index.php?oldid=118116 * Susam * (+6226) Create page for CFR[]
22:43:50 <esolangs> [[Malbrain]] M https://esolangs.org/w/index.php?diff=118117&oldid=118114 * Kaveh Yousefi * (+14) Relocated the pertinent document fragments into the newly introduced Commands section.
22:49:31 -!- Thelie has quit (Ping timeout: 264 seconds).
22:51:13 <esolangs> [[Talk:CFR]] N https://esolangs.org/w/index.php?oldid=118118 * Quito0567 * (+126) Created page with "Is there an implementation of this? --~~~~"
22:52:38 <esolangs> [[Talk:CFR]] https://esolangs.org/w/index.php?diff=118119&oldid=118118 * Quito0567 * (+34)
22:52:53 <esolangs> [[Talk:CFR]] https://esolangs.org/w/index.php?diff=118120&oldid=118119 * Quito0567 * (+3)
22:54:58 <esolangs> [[Talk:CFR]] https://esolangs.org/w/index.php?diff=118121&oldid=118120 * Quito0567 * (-163) Blanked the page
2023-10-20
00:23:30 -!- we11en has joined.
00:28:21 -!- we11en has quit (Ping timeout: 255 seconds).
00:29:13 -!- we11en has joined.
00:58:23 -!- Lord_of_Life_ has joined.
00:59:02 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
00:59:46 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
04:48:45 -!- we11en has quit (Quit: Lost terminal).
05:55:48 -!- we11en has joined.
06:15:29 -!- we11en has quit (Quit: Lost terminal).
06:18:12 -!- wpa has joined.
06:26:31 -!- chiselfuse has quit (Read error: Connection reset by peer).
06:26:50 -!- chiselfuse has joined.
06:54:41 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=118122&oldid=118007 * Peter01 * (-20) /* H */ Please, stop.
07:37:32 -!- craigo has joined.
08:20:41 -!- arseniiv has joined.
08:22:50 -!- __monty__ has joined.
08:44:33 -!- Koen has joined.
09:41:13 <esolangs> [[User:Cinnamony]] M https://esolangs.org/w/index.php?diff=118123&oldid=118110 * None1 * (-11) /* Picture */
09:55:09 -!- Sgeo has quit (Read error: Connection reset by peer).
10:04:09 <int-e> b_jonas: you might enjoy this: https://int-e.eu/~bf3/tmp/shapez-cursed-white.png
10:17:14 <esolangs> [[CFR]] M https://esolangs.org/w/index.php?diff=118124&oldid=118116 * None1 * (+23)
10:28:26 <esolangs> [[3 Bits, 3 Bytes]] N https://esolangs.org/w/index.php?oldid=118125 * None1 * (+1082) Create language
10:28:49 <esolangs> [[3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118126&oldid=118125 * None1 * (+1)
10:35:04 <esolangs> [[3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118127&oldid=118126 * None1 * (+221)
10:35:37 <esolangs> [[3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118128&oldid=118127 * None1 * (+0)
10:36:19 <esolangs> [[3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118129&oldid=118128 * None1 * (+51)
10:37:13 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=118130&oldid=118095 * None1 * (+61) /* General languages */
10:37:24 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118131&oldid=118101 * None1 * (+61) /* My Esolangs */
10:37:46 -!- wpa has quit (Quit: Connection closed for inactivity).
10:41:15 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=118132&oldid=118131 * None1 * (+0) /* My Esolangs */
10:42:07 <esolangs> [[3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118133&oldid=118129 * None1 * (+34)
11:08:17 -!- wib_jonas has joined.
11:08:42 <wib_jonas> int-e: does that break by getting desynchronized when you save and load?
11:09:14 <wib_jonas> it really is cursed, usually you want white paint in a large amount so it's not worth to multiplex a single painter for it, and this doesn't even save space
11:09:18 <wib_jonas> s/painter/mixer/
11:10:00 <int-e> wib_jonas: It survived my reload test. But it'll still desync whenever you hold it wrong. And yes, the throughput is half of what you'd get with two mixers so it's really just a curiosity.
11:10:32 <int-e> My first uploaded version couldn't even be reset properly, but I fixed that :-)
11:13:35 <wib_jonas> if it's not practical, can you turn it into a puzzle instead?
11:33:17 <int-e> No, because puzzles don't have mergers or balancers. (They *do* have double painters though which sort-of can merge shapes, and people abuse that quite a bit.)
11:37:29 <int-e> I believe that design choice is actually a good one... there's just too much crazy things you can do with balancers and they tend to be extremely tricky to balance.
11:44:18 <wib_jonas> makes sense
13:26:13 -!- cpressey has joined.
14:04:48 -!- ais523 has joined.
14:12:57 <cpressey> hi ais523
14:35:56 -!- wib_jonas has quit (Quit: Client closed).
14:37:45 <ais523> hi cpressey
14:38:04 <ais523> do you logread? I replied to your questions from a couple of days ago in the logs, but you weren't online, and I don't know whether you read them
14:38:22 <ais523> https://logs.esolangs.org/libera-esolangs/2023-10-18.html#lLe
14:40:40 <cpressey> Oh sorry, yes, I saw your response, thank you.  Then I kind of forgot about it...
14:41:18 <ais523> fwiw I have been wondering about fun things like "an entirely branchless lexer+parser combination" (where the only branch is to handle EOF)
14:41:31 <river> :O
14:41:33 <ais523> and the same code does both the lexing and hte parsing
14:41:55 * cpressey posts a squinting-Fry reaction gif
14:42:01 <ais523> this is of course possible in theory because branchless programming is TC, but I'm wondering whether it might be possible to get it more efficient than a traditional parser
14:42:45 <ais523> something like yacc has to have branches everywhere on whether it's read a lookahead token or not – ironically, just reading it unconditionally would probably be more efficient, because you wouldn't have to check whether you'd done it or not
14:43:10 <cpressey> I don't know much about branchless but I can imagine a sort of thing where you turn all the parsing operations into matrix operations or something
14:43:56 <ais523> but, it would change the semantics because you could no longer get the parser to change the way the next token was lexed (only the one after)
14:43:56 -!- ais523 has quit (Remote host closed the connection).
14:44:10 -!- ais523 has joined.
14:45:23 -!- ais523 has quit (Client Quit).
14:45:38 -!- ais523 has joined.
14:46:05 <ais523> one thing that I have realised is that there are only finitely many possible states for the lookahead tokens to be in (for most standard parser types – LL(*) is an exception)
14:46:29 <ais523> so you could in theory combine them with the parser states
14:47:14 <ais523> I am not sure whether this would cause a combinational explosion – it's quite possible that it doesn't, because you wouldn't have to be able to store lookahead tokens that would inevitably cause an error anyway, you can just produce the error on the spot
14:49:45 <cpressey> If you're talking LL(1) you can compute the FIRST set of each production, which is usually small.  Combining this with the set of all the productions would usually lead to a huge product set, I don't think.
14:49:56 <cpressey> *wouldn't
14:51:13 <ais523> right, and LR(1) is similar – canonical LR(1) has a lookahead set for each production, which again is usually small, and holds all the symbols that can possibly correctly appear in lookahead
14:51:51 <ais523> which implies that the various compressed LR(1) formats, like LALR(1), could also handle it
14:55:49 <cpressey> So one thing I've heard is that "recursive descent is better than LR in modern world because the LR lookup tables for realistically sized grammars don't fit in cache lines".  This was a long time ago though, maybe 20 years ago.  I don't know if it was then true or is still true.
14:56:22 <cpressey> I also heard that the Lua team replaced their yacc parser with a hand-crafted RDP and the speedup was significant, something like 2x
14:57:11 <ais523> I think of LR grammars as having a large LR table, but it's compressed for storage and used in the compressed form
14:57:20 <ais523> and think that parsers can be optimised by finding better ways to compress it
14:57:31 <ais523> looking at LR tables generated by yacc and friends, there is a lot of repetition
14:58:19 <ais523> I also think recursive descent parsers use more cache than the typical LR table does, but it's L1c rather than L1d, which may matter – there is normally less pressure on the code cache while parsing than on the data cache
14:59:00 <cpressey> I generally don't work on this level of optimization, anyway; for me "efficient" means "in P instead of in EXPTIME" :)
15:05:55 <cpressey> I'm working on a grammar formalism, but it's not for building parsers; it's a lot like an attribute grammar or DCG, the main improvement over these being that it can generate strings as efficiently as it can parse them.  (again, "efficiently" meaning "avoiding exponential blowup")
15:06:53 -!- Thelie has joined.
15:07:57 <cpressey> You can run a DCG "forwards or backwards" in a relational programming language like Prolog or miniKanren to do this, but if it's efficient in one direction (parsing) it will be inefficient in the other direction (generation).
15:08:18 <cpressey> (I don't have a proof of this but this was my experience from playing with it extensively)
15:11:29 <ais523> cpressey: oh, that's interesting
15:12:07 <ais523> one of the things I was looking at was the possibility of bootstrapping a parser, and an idea I had to do that was to write the parser in Prolog
15:12:15 <ais523> and have it generate its own source code by unparsing itself
15:12:25 <ais523> I didn't actually get it to work beyond a small proof of concept
15:12:40 -!- b_jonas has quit (Ping timeout: 252 seconds).
15:12:45 <ais523> so I'm not sure what the efficiency was like
15:13:34 -!- b_jonas has joined.
15:15:58 <ais523> but yes, I don't normally work on this level of optimization either, but thought it would be a fun (and potentially practically useful) followup to the fizzbuzz
15:32:26 <esolangs> [[Jack Eisenmann]] M https://esolangs.org/w/index.php?diff=118134&oldid=50339 * PythonshellDebugwindow * (+30) Stub, category
15:48:55 -!- Thelie has quit (Ping timeout: 264 seconds).
16:00:34 <cpressey> I'm having a heck of a time getting backtracking right in the generation case.  I probably need to step back.
16:02:07 -!- Thelie has joined.
16:03:40 <cpressey> If I can do it, though, it ought to be neat.  To be able to write a grammar that can solve knapsack problems.  That sort of thing.
16:04:34 <cpressey> I think I'm missing the fact that a loop can have three outcomes: it can terminal successfully, it can fail (and cause backtracking in the enclosing context), or it can repeat (and then you ask this question again and get these three outcomes again)
16:04:41 <cpressey> *terminate
16:04:53 <ais523> maybe it'd be easier to generate in parallel rather than using backtracking?
16:05:06 <ais523> (this is comparable to using a call queue rather than a call stack)
16:06:20 <cpressey> Well, in some ways that would be nicer, yes -- like miniKanren, you won't get stuck in an infinite DFS.
16:06:39 <cpressey> But the flipside is that you can start being a memory hog!
16:09:17 <ais523> yes, it's probably bad from a memory point of view unless you can compress the storage somehow
16:10:43 <cpressey> At some point earlier this year I ended up reading GOFAI textbooks trying to understand if "truth management" could be used to narrow down the search space for that sort of thing.
16:12:11 <cpressey> Which was somewhat interesting, actually, because in the modern world those algorithms no longer look like "artificial intelligence", they just look like search space optimization
16:12:23 -!- wib_jonas has joined.
16:12:33 <wib_jonas> cpressey: "because the LR lookup tables for realistically sized grammars don't fit in cache lines" => yes, and that's why I don't think a branchless parser is such a good idea
16:14:12 <ais523> well, one cache line is 64 bytes, and the L1 data cache as a whole is normally 32 KiB
16:14:24 <ais523> you can't fit a parser into the former, but the latter seems plausible
16:15:27 <ais523> anyway, I think the real problem is handling output from the parser efficiently
16:15:45 <ais523> normally parsers are used to build a tree-structured AST, but that's inherently slow
16:15:55 <cpressey> wib_jonas: what if you could turn it into a numerical matrix problem (insert lots of handwaving here) and run it on the GPU though?
16:16:41 <cpressey> actually, I think someone did something like that for parsing JSON
16:20:43 <cpressey> I was apparently thinking of "simdjson".  But it looks like ppl have tried using GPU to parse CSV and JSON.  But these are very specialized approaches, a general approach feels very much like it still requires a lot of handwaving
16:22:53 <ais523> GPUs don't obviously map well to most parsing algorithms
16:23:08 <ais523> they might be good at the algorithm used for DCGs, that one feels somewhat parallel in spirit
16:24:15 <ais523> it feels weird trying to use a GPU to speed up something that's linear-time anyway, though
16:29:41 <cpressey> Well, the algorithm for DCGs is no different than the rest of Prolog; it's basically syntax sugar for inference rules.  I tried search for GPU-accelerated inference engines and all the results are AI stuff, because that's what "inference engine" means in 2023.
16:34:10 <ais523> I said the wrong thing, I didn't mean DCGs but PCGs
16:34:15 <ais523> err, PEGs
16:40:55 <cpressey> Ah.  Hm, well PEGs backtrack, but they use ordered choice, which doesn't feel very parallel-y to me; I assumed that it was generally implemented linearly with some kind of DFS.  But I haven't looked at their implementation.  ("packrat parsing" is it?)
16:41:37 <ais523> it's basically dynamic programming
16:41:40 <cpressey> My brain wants to say "how is this not dynamic programming / memoization all over again"
16:41:54 <cpressey> Exactly
16:42:14 <ais523> but the reason it's linear time is that there are only finitely many things that could be memoized per token of input
16:42:26 <ais523> so, instead of memoizing on demand, you could possibly calculate them all in parallel
16:43:55 <ais523> GPUs don't require the things they're calculating in parallel to be entirely independent, just to have similar code – the various threads are allowed to communicate with each other, and in some special cases can do so very efficiently
16:46:13 <cpressey> (I think I see my confusion regarding backtracking generation now - but now I don't understand how I thought the backtracking parsing part was working - I might've chosen a bad example to use as a test)
16:57:19 -!- cpressey has quit (Quit: Client closed).
17:09:51 <wib_jonas> hmm, so you're saying that how he GPU parsing would work like this. for each n from 0 to logarithm, you split the document to 2**n long infixes, and parse each of those infixes starting from each parser state. if 0==n then you just look up the transition rules, whereas for 0<n you check the parse of both halves and index the parse of the second
17:09:52 <wib_jonas> half using the final state from the parses of the first half. does that make sense?
17:10:25 <ais523> that isn't what I was planning, but I think it might work?
17:10:45 <wib_jonas> I'm honestly not sure, I don't understand GPUs
17:10:55 <ais523> the problem is that doing it that way seems to imply a finite state machine rather than a PDA
17:11:42 <wib_jonas> I was thinking of a LL parser. you will have to read the lookahead tokens right after the infixes, but that shouldn't be a problem.
17:11:59 -!- Koen has quit (Remote host closed the connection).
17:12:06 <wib_jonas> oh, but you also have to save the stacks in each of the parses, and those will be large for LL or LR
17:12:11 <wib_jonas> so yes, this won't work well
17:13:08 <ais523> the PEG approach is basically to record, for each position in the input and each nonterminal, "could that nonterminal start here, and if so, where does it finish?"
17:13:35 <ais523> (PEGs are limited so that there can't be two different ways to parse the same nonterminal starting from the same position)
17:13:53 <ais523> I am not sure how well that would map to GPUs, it depends a lot on the order in which you scan the various nonterminals
17:14:15 -!- wib_jonas has quit (Quit: Client closed).
17:30:14 -!- Sgeo has joined.
18:40:24 -!- cpressey has joined.
18:43:03 <cpressey> ais523: fwiw, considering he idea of parallelizing PEG parsing reminds me of "chart parsing" algorithms (of which Nearly and CYK are examples) where the dynamic programming is also there to handle the nondeterminism, and can find all parses.
18:43:41 <cpressey> *Earley
18:44:04 <ais523> maybe I'll look into parallel parsing after my current attempt
18:44:42 <ais523> one nice thing about a branchless parser is that you could write it with SIMD instructions and do several unrelated parses simultaneously on the same core – I'm not sure how much throughput that would gain, memory bandwidth might be a bottleneck
18:44:51 <cpressey> Chart parsing is vaguely cool imo, and if it can find all parses, it seems like almost like a waste to apply it to PEG :)
18:45:26 <ais523> I don't like PEG anyway :-)
18:45:53 <ais523> but then, I don't like ambiguous grammars either (at least for parsing purposes; they're more interesting if viewed as an esolang)
18:49:08 <cpressey> Aye, you might remember a while ago I said I prefered parsing tools that were "more solidly theory-based" than yacc; and PEG does not count as "solidly theory-based" for me.
18:50:25 <ais523> I am positive that the correct front-end approach is something that desugars to a true context-free grammar – no yacc-like weird precedence overrides, no PEG-like arbitrary disallowing of certain parses
18:50:46 <ais523> (OK, it technically isn't arbitrary in PEG because their alternation-like operator is well defined, its semantics just aren't what you'd typically want)
18:51:04 <ais523> also, that the correct front-end approach adds sugar for things like precedence, which desugars into a true CFG very simply
19:12:24 -!- cpressey has quit (Quit: Client closed).
19:48:12 -!- __monty__ has quit (Ping timeout: 240 seconds).
19:53:48 -!- arseniiv has quit (Quit: gone too far).
20:03:21 <esolangs> [[User talk:None1]] M https://esolangs.org/w/index.php?diff=118135&oldid=116873 * TheBigH * (+361)
20:04:46 -!- __monty__ has joined.
20:19:58 -!- Koen has joined.
20:42:42 -!- __monty__ has quit (Quit: leaving).
21:29:26 -!- Thelie has quit (Quit: Leaving.).
21:29:31 -!- Thelie1 has joined.
21:29:41 -!- craigo has quit (Ping timeout: 260 seconds).
22:59:35 -!- Koen has quit (Remote host closed the connection).
23:02:32 -!- Koen has joined.
23:24:08 -!- Koen has quit (Quit: Leaving...).
23:38:29 -!- Thelie1 has quit (Ping timeout: 255 seconds).
2023-10-21
00:59:10 -!- Lord_of_Life_ has joined.
00:59:41 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
01:00:32 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
01:09:23 -!- wpa has joined.
01:26:59 <esolangs> [[Special:Log/upload]] upload * TheBigH * uploaded "[[File:2bits1bytequines.png]]"
01:27:43 <esolangs> [[Talk:2 Bits, 1 Byte]] https://esolangs.org/w/index.php?diff=118137&oldid=118082 * TheBigH * (+88) Added every quine.
02:20:20 <zzo38> If making a terminal emulator, how many bytes per character cell are needed? (My guess at this time is 1 byte for ASCII character code, 4 bytes for TRON character code, 1 byte for colours, and 2 bytes for attributes. (Pictures (e.g. sixel) can be stored separately.) However, I am not sure how many attributes are needed, and I also am not sure if it should need a different data structure entirely.)
02:36:41 <ais523> attributes might need more than two bytes, even if you're doing only 8 colors – there are a lot of possible attributes (dim/normal/bold, no/single/double underscore, italic, blink, reverse, fgcolor, bgcolor)
02:37:05 <ais523> but there are codes for 24-bit color in common use
02:37:51 <ais523> also bear in mind that not all characters take up a single character cell, for example CJK characters normally take up two adjacent cells
02:38:19 <ais523> …and if you support combining characters, there might be multiple characters in the same cell
02:39:36 <ais523> the other thing I'd advise is that there's a standard for terminal codes which specifies (among other things) how to lex and parse them – this is useful to know where an unknown code ends
02:40:33 <ais523> it's here: https://www.ecma-international.org/wp-content/uploads/ECMA-48_5th_edition_june_1991.pdf
02:41:30 <ais523> although it's hard to read, because the character codes are written in decimal-coded hexadecimal (e.g. "A", which has code 41 in hexadecimal, is written as "04/01")
02:42:13 <esolangs> [[Talk:2 Bits, 1 Byte]] https://esolangs.org/w/index.php?diff=118138&oldid=118137 * TheBigH * (+85)
02:54:55 <zzo38> I know that some characters might take up multiple cells (either because of the character code or because it is in double width mode), so that would be some of the attribute bits too. I would have no intention to support combining characters though.
03:01:00 <ais523> the 75th and 76th pages of my link, numbered "61" and "62", have a list of the standard attributes (although most terminal editors don't support all of them)
03:01:53 <ais523> and 38/48, which define colors more precisely than the other color codes, are widely implemented but terminal emulators don't fully agree on the details
03:01:56 <zzo38> Also I think some new escape codes might be useful to be defined, such as a "universal escape" code which is recognized even in the middle of other codes (this might be useful for security purposes and possibly others). Escape codes might also be needed for some other character encodings.
03:02:22 <ais523> there is a separate standard for character encodings
03:02:46 <ais523> that lists how they are specified to a terminal
03:02:56 <ais523> although, it predates Unicode really catching on
03:04:53 <zzo38> I think I have seen some other specifications somewhere for selecting the PC character encoding and selecting Commodore character encoding, although I am not sure if they are true ANSI or ISO, and may be only used with BBS. I should also want to add a escape code to select TRON-8 encoding (which requires 7-bit controls). (EUC-TRON can use the same code as EUC-JP, but also requires 7-bit controls to be selected to use EUC-TRON.)
03:05:31 <zzo38> (And then, I think there is also the "doorway mode")
03:07:37 <zzo38> About the attributes, probably not all of them are needed, although I specified using a separate byte for colours than the other attributes. Some attributes are probably mutually exclusive so do not need as many bits.
03:10:09 <ais523> yes, and many of the SGR codes are to turn off specific attributes rather than turn them on
03:11:03 <zzo38> Yes, I know that, too.
03:23:08 -!- ais523 has quit (Quit: quit).
03:31:11 -!- awewsomegamer has joined.
03:36:19 <zzo38> What are the proper escape codes to select EUC encodings, anyways? Also, which "designate other coding system with standard return" codes are defined and which are not defined?
06:20:12 -!- awewsomegamer has quit (Quit: WeeChat 4.1.0).
07:17:54 -!- wpa has quit (Quit: Connection closed for inactivity).
07:21:56 <esolangs> [[User:Lilchiky]] https://esolangs.org/w/index.php?diff=118139&oldid=116117 * Lilchiky * (+783)
07:23:28 <esolangs> [[User:Lilchiky]] M https://esolangs.org/w/index.php?diff=118140&oldid=118139 * Lilchiky * (+81) adding content
07:38:14 <esolangs> [[User:Lilchiky]] M https://esolangs.org/w/index.php?diff=118141&oldid=118140 * Lilchiky * (+1142) more content
07:41:01 <esolangs> [[User:Lilchiky]] M https://esolangs.org/w/index.php?diff=118142&oldid=118141 * Lilchiky * (+69) MORE CONTENTT
07:42:04 <esolangs> [[User:Lilchiky]] https://esolangs.org/w/index.php?diff=118143&oldid=118142 * Lilchiky * (-1) x=contenties
07:43:52 <esolangs> [[User talk:Lilchiky]] N https://esolangs.org/w/index.php?oldid=118144 * Lilchiky * (+77) Created page with ":''There is supposed to be text here, but there is only '''thirteen''' words."
07:48:55 -!- Noisytoot has quit (Ping timeout: 264 seconds).
08:29:59 -!- Noisytoot has joined.
08:31:13 -!- cpressey has joined.
08:50:49 <esolangs> [[Special:Log/upload]] upload * Susam * uploaded "[[File:Cfr-demo-3.png]]": Demo no. 3 from CFR[] reference implementation
08:51:22 <esolangs> [[Special:Log/move]] move * Susam * moved [[File:Cfr-demo-3.png]] to [[File:CFR-demo-3.png]]: Correct case of the language name in filename
08:55:03 <esolangs> [[Special:Log/upload]] upload * Susam * uploaded "[[File:CFR-demo-0.png]]": Demo no. 3 from the reference implementation of CFR[]
09:16:21 <esolangs> [[CFR]] https://esolangs.org/w/index.php?diff=118149&oldid=118124 * Susam * (+444) Add screenshots of two CFR[] examples
09:28:21 -!- arseniiv has joined.
09:33:49 -!- craigo has joined.
10:12:35 <esolangs> [[CFR]] https://esolangs.org/w/index.php?diff=118150&oldid=118149 * Susam * (+288) Add infobox
10:20:53 <esolangs> [[CFR]] https://esolangs.org/w/index.php?diff=118151&oldid=118150 * Susam * (+42) Move screenshots and examples into sections
11:07:47 -!- Sgeo has quit (Read error: Connection reset by peer).
11:26:16 <esolangs> [[CFR]] https://esolangs.org/w/index.php?diff=118152&oldid=118151 * Susam * (+93) Add categories
11:28:22 <esolangs> [[Special:Log/newusers]] create * WebStacks * New user account
11:36:41 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118153&oldid=118115 * WebStacks * (+271) /* Introductions */
11:36:49 <esolangs> [[User:WebStacks]] N https://esolangs.org/w/index.php?oldid=118154 * WebStacks * (+31) Created page with "I'm WebStacks - A Web Developer"
11:52:54 <esolangs> [[Special:Log/move]] move * Lilchiky * moved [[User:Lilchiky]] to [[Lilchiky]]: my account, my rules
11:52:54 <esolangs> [[Special:Log/move]] move * Lilchiky * moved [[User talk:Lilchiky]] to [[Talk:Lilchiky]]: my account, my rules
11:58:50 -!- Thelie has joined.
12:12:06 <esolangs> [[Lilchiky]] M https://esolangs.org/w/index.php?diff=118159&oldid=118155 * Lilchiky * (-542) a new and improved content box
12:23:33 <esolangs> [[Template:Brackets]] N https://esolangs.org/w/index.php?oldid=118160 * Lilchiky * (+321) brackies
12:26:53 <esolangs> [[?]] M https://esolangs.org/w/index.php?diff=118161&oldid=117982 * Jaip * (+5)
12:27:15 <esolangs> [[NONE]] M https://esolangs.org/w/index.php?diff=118162&oldid=117966 * Jaip * (+5)
12:30:50 <esolangs> [[Template:Brackets]] https://esolangs.org/w/index.php?diff=118163&oldid=118160 * Lilchiky * (+24) brackies
12:31:05 <esolangs> [[Template:Brackets]] M https://esolangs.org/w/index.php?diff=118164&oldid=118163 * Lilchiky * (+1) +1
12:31:56 <esolangs> [[Template:Brackets]] M https://esolangs.org/w/index.php?diff=118165&oldid=118164 * Lilchiky * (+0) +0
12:32:51 <esolangs> [[Template:Brackets]] M https://esolangs.org/w/index.php?diff=118166&oldid=118165 * Lilchiky * (-1) -1
12:34:07 <esolangs> [[Lilchiky]] M https://esolangs.org/w/index.php?diff=118167&oldid=118159 * Lilchiky * (+13)
12:34:29 <esolangs> [[Lilchiky]] M https://esolangs.org/w/index.php?diff=118168&oldid=118167 * Lilchiky * (+3) +3
12:53:12 <esolangs> [[Lilchiky]] M https://esolangs.org/w/index.php?diff=118169&oldid=118168 * Lilchiky * (+127) Indents
12:56:56 <esolangs> [[Lilchiky]] M https://esolangs.org/w/index.php?diff=118170&oldid=118169 * Lilchiky * (+19) INDENTSSS
13:00:33 <esolangs> [[Lilchiky]] M https://esolangs.org/w/index.php?diff=118171&oldid=118170 * Lilchiky * (+1)
13:21:04 <esolangs> [[Imperator]] N https://esolangs.org/w/index.php?oldid=118172 * Jaip * (+602) Created page with "{{infobox proglang |name=Imperator |paradigms=imperative |author=[[user:Jaip|Jaip]] |year=[[:Category:2023|2023]] |typesys= |memsys= |dimensions= |class=[[:Category:Turing complete|Turing complete]] |majorimpl=[https://github.com/Jaip-Coding/Imperator Original] |dialects=
13:22:03 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118173&oldid=118172 * Jaip * (+21)
14:46:55 <esolangs> [[Special:Log/move]] move_redir * Ais523 * moved [[Lilchiky]] to [[User:Lilchiky]] over redirect: userpages should be in userspace pages in the mainspace aren't owned by any user and thus can't be sensibly used as userpages
14:46:55 <esolangs> [[Special:Log/move]] move_redir * Ais523 * moved [[Talk:Lilchiky]] to [[User talk:Lilchiky]] over redirect: userpages should be in userspace pages in the mainspace aren't owned by any user and thus can't be sensibly used as userpages
14:46:55 <esolangs> [[Special:Log/delete]] delete_redir * Ais523 * Ais523 deleted redirect [[User:Lilchiky]] by overwriting: Deleted to make way for move from "[[Lilchiky]]"
14:46:55 <esolangs> [[Special:Log/delete]] delete_redir * Ais523 * Ais523 deleted redirect [[User talk:Lilchiky]] by overwriting: Deleted to make way for move from "[[Talk:Lilchiky]]"
14:59:35 <esolangs> [[Special:Log/newusers]] create * JorbDehmel * New user account
15:03:15 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=118176&oldid=118153 * JorbDehmel * (+250) Introduced myself
15:06:41 <esolangs> [[User:JorbDehmel]] N https://esolangs.org/w/index.php?oldid=118177 * JorbDehmel * (+238) Introduced myself, added links
15:06:45 <esolangs> [[Imperator]] M https://esolangs.org/w/index.php?diff=118178&oldid=118173 * Jaip * (-5)
15:07:07 <esolangs> [[User:JorbDehmel]] https://esolangs.org/w/index.php?diff=118179&oldid=118177 * JorbDehmel * (-20)
15:58:47 <esolangs> [[Special:Log/newusers]] create * Zaydiscool777 * New user account
16:05:21 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=118180&oldid=118176 * Zaydiscool777 * (+222) add here my name
16:05:56 <esolangs> [[User:Zaydiscool777]] N https://esolangs.org/w/index.php?oldid=118181 * Zaydiscool777 * (+26) me
16:06:28 <esolangs> [[User talk:Zaydiscool777]] N https://esolangs.org/w/index.php?oldid=118182 * Zaydiscool777 * (+8) blaed my talk
16:12:35 <esolangs> [[Dosctrign]] N https://esolangs.org/w/index.php?oldid=118183 * Zaydiscool777 * (+243) made a page for dosc
16:22:45 <cpressey> Spent a good chunk of time today writing an AST transformation to turn loops into recursive procedures, yet it doesn't seem to have solved my backtracking problem.  I now think the problem isn't where I thought it was, so all that was for nought.
16:25:19 <esolangs> [[Dosctrign]] M https://esolangs.org/w/index.php?diff=118184&oldid=118183 * PythonshellDebugwindow * (+64) Stub, categories
16:27:06 <esolangs> [[FireStarter]] M https://esolangs.org/w/index.php?diff=118185&oldid=95405 * PythonshellDebugwindow * (+22) Category
16:28:43 <esolangs> [[ATZ]] M https://esolangs.org/w/index.php?diff=118186&oldid=46005 * PythonshellDebugwindow * (+80) Categories
16:29:31 -!- arseniiv has quit (Ping timeout: 260 seconds).
16:30:24 -!- arseniiv has joined.
16:44:06 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118187&oldid=118178 * Jaip * (+4341) Added Syntax
16:44:16 <esolangs> [[Oak]] N https://esolangs.org/w/index.php?oldid=118188 * JorbDehmel * (+12448) Initial description of the Oak programming language
16:44:30 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118189&oldid=118187 * Jaip * (-21) /* PAGE IN WORK! */
16:46:17 -!- Everything has quit (Ping timeout: 240 seconds).
16:46:23 -!- Everything has joined.
16:46:51 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=118190&oldid=118122 * JorbDehmel * (+10) Added the Oak language, and nothing else
16:47:34 <esolangs> [[Oak]] M https://esolangs.org/w/index.php?diff=118191&oldid=118188 * JorbDehmel * (-14) Attempt to fix capitalization error
16:47:35 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118192&oldid=118189 * Jaip * (+150)
16:49:40 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118193&oldid=118192 * Jaip * (+537) /* Examples */
16:50:55 <esolangs> [[Jordan Dehmel]] N https://esolangs.org/w/index.php?oldid=118194 * JorbDehmel * (+111) Created redirect page
16:52:14 -!- __monty__ has joined.
16:52:51 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118195&oldid=118193 * Jaip * (+1130) /* Examples */
16:55:19 <esolangs> [[Oak]] M https://esolangs.org/w/index.php?diff=118196&oldid=118191 * JorbDehmel * (-2) Grammar
16:56:23 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118197&oldid=118195 * Jaip * (+548) /* Examples */
16:59:19 <esolangs> [[User:Jaip]] https://esolangs.org/w/index.php?diff=118198&oldid=117963 * Jaip * (+50)
17:00:31 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118199&oldid=118190 * Jaip * (+16) /* I */
17:07:49 -!- Thelie has quit (Remote host closed the connection).
17:08:22 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118200&oldid=118197 * Jaip * (+151) /* Examples */
17:09:18 <esolangs> [[Imperator]] https://esolangs.org/w/index.php?diff=118201&oldid=118200 * Jaip * (+0) /* Truth-Machine */
17:24:20 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:39:32 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118202&oldid=118184 * Zaydiscool777 * (+133) a
18:02:08 -!- tromp has joined.
18:25:59 <cpressey> It's something to do with "choice point scope" being only a single production due to the way the engine traverses the AST.  To get around that I'd need to... convert productions to CPS?  This is slightly weird.  Would it be equivalent to compiling the grammar to a PDA?
18:33:19 -!- cpressey has quit (Ping timeout: 248 seconds).
18:43:52 -!- Sgeo has joined.
18:48:50 -!- cpressey has joined.
19:07:59 -!- craigo has quit (Quit: Leaving).
19:20:28 <b_jonas> https://www.youtube.com/watch?v=5u6BN1p0Uo8 Physics for Birds examines if they can do computations in Tears of the Kingdom
19:21:47 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:53:34 <esolangs> [[Imperator]] M https://esolangs.org/w/index.php?diff=118203&oldid=118201 * PythonshellDebugwindow * (+73) Categories
19:54:15 <esolangs> [[Jordan Dehmel]] M https://esolangs.org/w/index.php?diff=118204&oldid=118194 * PythonshellDebugwindow * (+30) Stub, category
19:57:18 <esolangs> [[Oak]] M https://esolangs.org/w/index.php?diff=118205&oldid=118196 * PythonshellDebugwindow * (+97) /* Sources */ Categories
20:01:15 <esolangs> [[C++]] M https://esolangs.org/w/index.php?diff=118206&oldid=115872 * PythonshellDebugwindow * (+115) See also, categories, misc.
20:03:57 <esolangs> [[Template:Serious]] M https://esolangs.org/w/index.php?diff=118207&oldid=67550 * PythonshellDebugwindow * (+1) Indent
20:04:58 -!- tromp has joined.
20:56:08 -!- arseniiv has quit (Quit: gone too far).
21:14:50 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:41:43 <zzo38> Is there a way for a terminal emulator to cancel responses that it has already sent but not yet read by a different process than the one that requested the data?
21:49:07 <esolangs> [[Project Euler/12]] M https://esolangs.org/w/index.php?diff=118208&oldid=116968 * PythonshellDebugwindow * (+93) Stub, external resources, category
21:56:15 -!- __monty__ has quit (Quit: leaving).
21:59:25 <esolangs> [[Braintwist]] M https://esolangs.org/w/index.php?diff=118209&oldid=12933 * PythonshellDebugwindow * (+29) /* External resources */ Wayback
22:00:04 -!- cpressey has quit (Quit: Client closed).
22:06:14 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118210&oldid=118202 * Zaydiscool777 * (+1079) added table
22:09:07 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118211&oldid=118210 * Zaydiscool777 * (-294) fixed table
23:27:39 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118212&oldid=118211 * Zaydiscool777 * (+22) moar
2023-10-22
00:05:44 -!- tromp has joined.
00:10:14 -!- tromp has quit (Client Quit).
00:58:22 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
01:00:12 -!- Lord_of_Life has joined.
04:39:39 <zzo38> Will tcflush work?
04:42:01 <zzo38> Will packet mode help at all? Would signals be of any use?
05:37:50 <esolangs> [[HolyPy]] https://esolangs.org/w/index.php?diff=118213&oldid=118056 * Alx * (+2235)
05:41:32 <esolangs> [[HolyPy]] https://esolangs.org/w/index.php?diff=118214&oldid=118213 * Alx * (+274) /* 3. HPYVM Notes */
05:42:35 <esolangs> [[HolyPy]] https://esolangs.org/w/index.php?diff=118215&oldid=118214 * Alx * (+103) /* 3. HPYVM Notes */
07:47:52 -!- cpressey has joined.
07:54:02 -!- tromp has joined.
09:20:24 -!- Thelie has joined.
09:24:04 -!- arseniiv has joined.
09:43:37 -!- Thelie has quit (Remote host closed the connection).
10:34:20 -!- arseniiv has quit (Ping timeout: 248 seconds).
10:48:22 -!- arseniiv has joined.
11:01:08 -!- Sgeo has quit (Read error: Connection reset by peer).
11:49:57 -!- Thelie has joined.
12:05:43 -!- __monty__ has joined.
12:26:45 -!- razetime has joined.
12:52:20 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
13:19:44 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:24:44 -!- tromp has joined.
13:34:53 <esolangs> [[User talk:None1]] https://esolangs.org/w/index.php?diff=118216&oldid=118135 * None1 * (+83) /* A message to you */ OK
13:41:40 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118217&oldid=118212 * Zaydiscool777 * (+1290) yes
13:47:37 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118218&oldid=118217 * Zaydiscool777 * (+212) added humor
13:58:45 <esolangs> [[Odasjoi]] N https://esolangs.org/w/index.php?oldid=118219 * None1 * (+762) Created page with "'''Odasjoi''' (say "ow-das-joy") is an esolang invented by [[User:None1]]. Its name is chosen by smashing random keys, its commands are, too. ==Commands== Commands must be separated by ''line feeds'' <pre> fowdif Increase the accumulator wekeww Decrease the accumulator woi
13:59:03 <esolangs> [[Odasjoi]] M https://esolangs.org/w/index.php?diff=118220&oldid=118219 * None1 * (+0)
13:59:31 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=118221&oldid=118012 * None1 * (+66) /* Obfuscated */
13:59:52 <esolangs> [[Odasjoi]] https://esolangs.org/w/index.php?diff=118222&oldid=118220 * None1 * (+8) /* {{User|XKCD Random Number}} */
14:00:22 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=118223&oldid=117772 * None1 * (+59) /* Multiplicity */
14:00:53 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118224&oldid=118199 * None1 * (+14) /* O */
14:01:36 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118225&oldid=118132 * None1 * (+91) /* My Esolangs */
14:03:49 <esolangs> [[Odasjoi]] M https://esolangs.org/w/index.php?diff=118226&oldid=118222 * None1 * (+26)
14:03:51 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118227&oldid=118218 * Zaydiscool777 * (+294) infobox
14:05:25 <cpressey> For anyone interested, this is the grammar formalism I've been talking about: https://codeberg.org/catseye/Fountain
14:05:25 <cpressey> And this is what's going into the next release (backtracking, mainly): https://codeberg.org/catseye/Fountain/pulls/1/files
14:05:54 <esolangs> [[Odasjoi]] https://esolangs.org/w/index.php?diff=118228&oldid=118226 * None1 * (+32) /* Examples */
14:08:27 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118229&oldid=118227 * Zaydiscool777 * (-2) tried to add code
14:08:58 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118230&oldid=118229 * Zaydiscool777 * (+3) oops
14:17:15 -!- craigo has joined.
14:17:47 -!- craigo has quit (Read error: Connection reset by peer).
14:18:40 -!- Thelie has quit (Remote host closed the connection).
14:39:38 <esolangs> [[Bawkbawk]] M https://esolangs.org/w/index.php?diff=118231&oldid=118104 * Lilchiky * (+2) /* ^ (flyoverthehouse) */ +2
14:45:04 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=118232&oldid=118076 * Lilchiky * (+1326) /* Other Stuff */ box
14:45:35 -!- cpressey has quit (Ping timeout: 248 seconds).
14:57:56 -!- cpressey has joined.
15:20:25 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:39:27 -!- cpressey has quit (Ping timeout: 248 seconds).
15:40:33 -!- cpressey has joined.
15:45:28 -!- tromp has joined.
16:42:01 -!- arseniiv has quit (Ping timeout: 255 seconds).
16:47:55 -!- arseniiv has joined.
17:01:48 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118233&oldid=118230 * Zaydiscool777 * (+1792) added flow
17:25:38 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:39:35 -!- tromp has joined.
18:09:28 <zzo38> Would non-Unicode support be possible?
18:12:05 <zzo38> Also, would it be possible to parse strings that are prefixed by their length? (I don't know if that counts as "context-sensitive language", actually, since I have not checked the definition)
18:27:18 -!- Thelie has joined.
18:53:09 <cpressey> I don't plan on supporting anything other than ASCII in it for the moment.
18:53:10 <cpressey> It should be possible (or close to possible).  to parse strings prefixed by their length.  You'd need to parse the digits to obtain a numeric value and store that in a context variable.  Then decrement that variable each time you parse a character, and stop parsing when it's zero.
18:53:58 <cpressey> I should maybe work that out and add it as an example grammar.
18:59:45 <zzo38> It was my guess to do something like that.
19:16:01 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:29:54 -!- tromp has joined.
19:53:53 -!- Sgeo has joined.
20:13:53 -!- arseniiv has quit (Quit: gone too far).
20:22:39 -!- cpressey has quit (Ping timeout: 248 seconds).
21:05:28 <esolangs> [[CLC-INTERCAL]] https://esolangs.org/w/index.php?diff=118234&oldid=108177 * Uilebheist * (+2005) New section "New features for a 25th anniversary edition"
21:19:31 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:20:22 <esolangs> [[CLC-INTERCAL]] https://esolangs.org/w/index.php?diff=118235&oldid=118234 * Uilebheist * (+2107) /* New features for a 25th anniversary edition */ another new statement
21:21:22 <esolangs> [[CLC-INTERCAL]] M https://esolangs.org/w/index.php?diff=118236&oldid=118235 * Uilebheist * (+4) /* Trickle down */ statement was listed in the wrong place
21:55:06 -!- Noisytoot has quit (Remote host closed the connection).
21:57:22 -!- Noisytoot has joined.
22:18:42 -!- __monty__ has quit (Quit: leaving).
22:31:44 -!- Thelie has quit (Remote host closed the connection).
22:55:21 <esolangs> [[Talk:Minsky machine]] https://esolangs.org/w/index.php?diff=118237&oldid=116401 * None1 * (+135) /* Question */ new section
23:20:00 -!- Noisytoot has quit (Quit: ZNC 1.8.2 - https://znc.in).
23:20:19 -!- Noisytoot has joined.
23:25:17 -!- Noisytoot has quit (Remote host closed the connection).
23:25:34 -!- Noisytoot has joined.
23:57:16 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118238&oldid=118233 * Zaydiscool777 * (-10) code tag
2023-10-23
00:05:33 <esolangs> [[Dosctrign]] M https://esolangs.org/w/index.php?diff=118239&oldid=118238 * Zaydiscool777 * (+1) added /n
00:06:05 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118240&oldid=118239 * Zaydiscool777 * (+0) idk
00:42:50 -!- Wryl-o-the-wisp has quit.
00:59:19 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
01:00:12 -!- Lord_of_Life has joined.
01:29:27 <esolangs> [[Wise]] https://esolangs.org/w/index.php?diff=118241&oldid=113225 * DivergentClouds * (-16) fixed error in shift operator description
02:28:01 -!- Wryl-o-the-wisp has joined.
03:07:26 <esolangs> [[Talk:Minsky machine]] https://esolangs.org/w/index.php?diff=118242&oldid=118237 * Ais523 * (+736) /* Question */ r to None1
04:17:16 <esolangs> [[Fun Video Game]] https://esolangs.org/w/index.php?diff=118243&oldid=112305 * Quito0567 * (-4)
04:51:27 -!- b_jonas has quit (Read error: Connection reset by peer).
04:55:36 -!- b_jonas has joined.
05:12:06 -!- tromp has joined.
05:22:30 <esolangs> [[Dosctrign]] M https://esolangs.org/w/index.php?diff=118244&oldid=118240 * PythonshellDebugwindow * (-9) /* Flow */ Use pre tag
05:27:53 <esolangs> [[Esoteric Topics in Computer Programming]] M https://esolangs.org/w/index.php?diff=118245&oldid=108739 * PythonshellDebugwindow * (+9) Stub
05:32:14 <esolangs> [[Cornflower (PCD)]] M https://esolangs.org/w/index.php?diff=118246&oldid=91255 * PythonshellDebugwindow * (+26) Category
05:33:19 <esolangs> [[Surreal Numbers]] M https://esolangs.org/w/index.php?diff=118247&oldid=58024 * PythonshellDebugwindow * (+23) Category
05:38:36 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
06:02:00 -!- tromp has joined.
06:39:48 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
07:01:00 -!- tromp has joined.
07:16:39 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
07:18:52 -!- tromp has joined.
08:08:37 -!- arseniiv has joined.
08:09:21 -!- Sgeo has quit (Read error: Connection reset by peer).
08:21:06 -!- cpressey has joined.
09:50:16 -!- arseniiv has quit (Ping timeout: 255 seconds).
09:55:22 -!- __monty__ has joined.
10:04:27 -!- arseniiv has joined.
10:47:13 <esolangs> [[Talk:Minsky machine]] https://esolangs.org/w/index.php?diff=118248&oldid=118242 * None1 * (+87) /* Question */
10:54:05 -!- cpressey has quit (Quit: Client closed).
11:06:54 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=118249&oldid=118004 * None1 * (+127)
11:09:03 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=118250&oldid=118249 * None1 * (+156)
11:09:20 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=118251&oldid=118250 * None1 * (+1)
11:12:51 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=118252&oldid=118251 * None1 * (+316) /* Commands */
11:13:59 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=118253&oldid=118252 * None1 * (+4) /* Commands */ Escape vertical bar
11:14:11 <esolangs> [[User:None1/InDev]] M https://esolangs.org/w/index.php?diff=118254&oldid=118253 * None1 * (+1) /* Commands */
11:16:11 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=118255&oldid=118254 * None1 * (+118) /* Commands */
11:17:26 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=118256&oldid=118255 * None1 * (-690)
11:18:32 <esolangs> [[Directional]] N https://esolangs.org/w/index.php?oldid=118257 * None1 * (+725) Created page with "'''Directional''' is an esolang invented by [[User:None1]] and inspired by [[TinyBF]], it is actually a 2D version of TinyBF. ==Data Storage== A tape and a pointer is used to execute the TinyBF commands. ==Commands== {| class="wikitable" ! Command !! Meaning |- | || S
11:19:25 <esolangs> [[Directional]] https://esolangs.org/w/index.php?diff=118258&oldid=118257 * None1 * (+56)
11:19:35 <esolangs> [[Directional]] M https://esolangs.org/w/index.php?diff=118259&oldid=118258 * None1 * (-1) /* Increament current cell */
11:20:49 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118260&oldid=118224 * None1 * (+18) /* D */
11:22:08 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118261&oldid=118225 * None1 * (+74) /* My Esolangs */
11:22:51 <esolangs> [[Directional]] https://esolangs.org/w/index.php?diff=118262&oldid=118259 * None1 * (+59) /* Example programs */
11:23:24 <esolangs> [[Directional]] M https://esolangs.org/w/index.php?diff=118263&oldid=118262 * None1 * (+29)
11:25:18 <esolangs> [[Directional]] https://esolangs.org/w/index.php?diff=118264&oldid=118263 * None1 * (+0) /* Increment current cell */
11:55:33 <esolangs> [[0]] https://esolangs.org/w/index.php?diff=118265&oldid=81065 * None1 * (+48) /* Implementations */
11:56:28 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118266&oldid=118261 * None1 * (+31) /* My Implementations */
11:57:08 <esolangs> [[0]] https://esolangs.org/w/index.php?diff=118267&oldid=118265 * None1 * (+25)
11:57:38 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118268&oldid=118266 * None1 * (+13) /* My Implementations */
11:58:32 <esolangs> [[0]] https://esolangs.org/w/index.php?diff=118269&oldid=118267 * None1 * (+24) /* Implementations */
11:58:56 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118270&oldid=118268 * None1 * (+14) /* My Implementations */
11:59:55 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118271&oldid=118244 * Zaydiscool777 * (+679) more pre & more minor & more commands
11:59:58 -!- int-e has quit (Remote host closed the connection).
12:00:38 <esolangs> [[=]] M https://esolangs.org/w/index.php?diff=118272&oldid=65116 * None1 * (+0)
12:00:51 -!- int-e has joined.
12:03:45 -!- lambdabot has quit (Remote host closed the connection).
12:05:19 -!- lambdabot has joined.
12:31:10 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=118273&oldid=118223 * None1 * (+20) /* 8xn */
12:32:27 <esolangs> [[=]] https://esolangs.org/w/index.php?diff=118274&oldid=118272 * None1 * (+73)
12:32:43 <esolangs> [[=]] M https://esolangs.org/w/index.php?diff=118275&oldid=118274 * None1 * (+0) /* Examples */
12:38:11 -!- tromp has quit (Read error: Connection reset by peer).
12:38:39 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=118276&oldid=118273 * None1 * (+175) /* Braincopter */
13:05:03 <esolangs> [[=]] https://esolangs.org/w/index.php?diff=118277&oldid=118275 * None1 * (+958) Added Python interpreter and implemented category tag
13:05:18 <esolangs> [[=]] https://esolangs.org/w/index.php?diff=118278&oldid=118277 * None1 * (+25)
13:06:58 -!- craigo has joined.
13:07:37 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118279&oldid=118270 * None1 * (+21) /* My Implementations */
13:07:37 -!- craigo has quit (Read error: Connection reset by peer).
13:08:22 -!- craigo has joined.
13:34:32 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=118280&oldid=118232 * Lilchiky * (+358) /* The ultimate content box */ more recursion
14:07:56 -!- cpressey has joined.
14:15:17 -!- cpressey has quit (Quit: Client closed).
14:39:36 -!- cpressey has joined.
15:35:31 -!- tromp has joined.
15:37:53 -!- arseniiv has quit (Ping timeout: 255 seconds).
15:43:34 <esolangs> [[ie]] M https://esolangs.org/w/index.php?diff=118281&oldid=108736 * PythonshellDebugwindow * (+157) Categories
15:44:19 -!- arseniiv has joined.
16:18:57 <esolangs> [[User:TheBigH]] https://esolangs.org/w/index.php?diff=118282&oldid=105143 * TheBigH * (+96) Added truth machine for ??? (not the esolang)
16:30:03 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:33:27 -!- arseniiv has quit (Ping timeout: 240 seconds).
16:35:13 -!- arseniiv has joined.
17:30:44 -!- tromp has joined.
17:42:35 <esolangs> [[2 Bits, 1 Byte]] https://esolangs.org/w/index.php?diff=118283&oldid=118103 * Hakerh400 * (+5036) Add interpreter; add all possible examples
18:06:05 -!- Thelie has joined.
18:38:55 <esolangs> [[Talk:3 Bits, 3 Bytes]] N https://esolangs.org/w/index.php?oldid=118284 * TheBigH * (+207) Created page with "=Truth machine?= I don't think a truth machine is possible in this language because of the limited amount of instructions. --~~~~"
19:38:35 -!- craigo_ has joined.
19:42:52 -!- craigo has quit (Ping timeout: 272 seconds).
20:13:09 -!- arseniiv has quit (Quit: gone too far).
20:17:51 <esolangs> [[Brainfunc]] M https://esolangs.org/w/index.php?diff=118285&oldid=78545 * PythonshellDebugwindow * (+264) Add examples, update link to interpreter, misc.
20:20:53 <esolangs> [[Brainfunc]] M https://esolangs.org/w/index.php?diff=118286&oldid=118285 * PythonshellDebugwindow * (+19) /* Commands */ fi
20:20:54 -!- Thelie has quit (Read error: Connection reset by peer).
20:41:27 <esolangs> [[Dosctrign]] https://esolangs.org/w/index.php?diff=118287&oldid=118271 * Zaydiscool777 * (+85) command part of table finished
20:42:48 <esolangs> [[Cubed]] M https://esolangs.org/w/index.php?diff=118288&oldid=110942 * PythonshellDebugwindow * (+136) Infobox, categories
20:43:37 <esolangs> [[Lbj]] M https://esolangs.org/w/index.php?diff=118289&oldid=110005 * PythonshellDebugwindow * (+0) Category
20:44:25 <esolangs> [[3900]] M https://esolangs.org/w/index.php?diff=118290&oldid=110097 * PythonshellDebugwindow * (-6) Stub, WIP, categories
20:45:09 <esolangs> [[10D Deadfish 7 with Time Travel and a Multiverse]] M https://esolangs.org/w/index.php?diff=118291&oldid=110041 * PythonshellDebugwindow * (+12) Category
20:46:55 <esolangs> [[Munching Squares.pushem]] M https://esolangs.org/w/index.php?diff=118292&oldid=35104 * PythonshellDebugwindow * (+30) Category
21:09:19 -!- __monty__ has quit (Quit: leaving).
21:16:02 -!- example99 has joined.
21:17:12 -!- example99-alt has joined.
21:17:41 <example99> whatever.
21:20:18 -!- example99 has left.
21:22:08 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:22:55 -!- example99-alt has quit (Quit: Client closed).
21:26:31 -!- example99 has joined.
21:26:36 -!- example99 has quit (Client Quit).
21:59:36 -!- cpressey has quit (Quit: Client closed).
22:14:12 -!- Sgeo has joined.
22:45:55 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118293&oldid=118284 * None1 * (+94)
23:17:50 -!- example99 has joined.
23:28:47 <esolangs> [[4 bits, 8 bytes]] N https://esolangs.org/w/index.php?oldid=118294 * TheBigH * (+3175) Page created.
23:32:50 <esolangs> [[Joke language list]] M https://esolangs.org/w/index.php?diff=118295&oldid=118130 * TheBigH * (+61) Added 4 bits, 8 bytes.
23:33:26 <esolangs> [[Joke language list]] M https://esolangs.org/w/index.php?diff=118296&oldid=118295 * TheBigH * (+0) Fixed capitalization error.
23:43:11 -!- example99 has quit (Ping timeout: 248 seconds).
23:51:51 <esolangs> [[2 Bits, 1 Byte]] https://esolangs.org/w/index.php?diff=118297&oldid=118283 * Salpynx * (+414) /* Example codes */ limited IO truth-machine
2023-10-24
00:15:08 -!- craigo_ has quit (Ping timeout: 248 seconds).
00:30:31 <esolangs> [[Talk:3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118298&oldid=118293 * TheBigH * (+263) More on possible truth machine
00:57:34 -!- Noisytoot has quit (Quit: ZNC 1.8.2 - https://znc.in).
00:58:04 -!- Noisytoot has joined.
01:01:00 -!- Lord_of_Life_ has joined.
01:01:09 -!- Noisytoot has quit (Client Quit).
01:01:27 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
01:01:47 <esolangs> [[Special:Log/newusers]] create * Lungecrunch * New user account
01:02:24 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
01:04:38 -!- Noisytoot has joined.
01:05:49 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118299&oldid=118180 * Lungecrunch * (+269)
01:14:51 <Sgeo> https://www.inf.fu-berlin.de/inst/ag-ki/rojas_home/documents/1997/Universal_Computer.pdf
01:16:19 <Sgeo> That describes how to make Zuse's Z3 into a bounded universal turing machine
01:16:30 <Sgeo> But " The Z3 is therefore not a universal computer in the sense of Turing." by the same author in https://ed-thelen.org/comp-hist/Zuse_Z1_and_Z3.pdf
01:47:35 <esolangs> [[User:Lungecrunch/Q+9H test]] N https://esolangs.org/w/index.php?oldid=118300 * Lungecrunch * (+1772) Created page with "'''Q+9H''' is a derivative of [[HQ9+]] created by [[User:Lungecrunch]]. All of the instructions are completely randomized, meaning that you will get a different result each time you run a program. For example, + may either output "Hello, world!",
01:49:01 <esolangs> [[User:Lungecrunch]] N https://esolangs.org/w/index.php?oldid=118301 * Lungecrunch * (+32) Created page with "stuff [[user:Lungecrunch/Q+9H]]"
01:49:16 <esolangs> [[User:Lungecrunch]] M https://esolangs.org/w/index.php?diff=118302&oldid=118301 * Lungecrunch * (+5)
02:34:49 -!- GregorR8 has joined.
02:36:20 -!- GregorR has quit (Ping timeout: 255 seconds).
02:36:20 -!- GregorR8 has changed nick to GregorR.
02:45:37 <esolangs> [[User:Quito0567]] https://esolangs.org/w/index.php?diff=118303&oldid=114681 * Quito0567 * (+8)
02:46:46 <esolangs> [[User:Quito0567]] https://esolangs.org/w/index.php?diff=118304&oldid=118303 * Quito0567 * (+46)
03:18:22 <esolangs> [[User:Zzo38/Programming languages with unusual features]] https://esolangs.org/w/index.php?diff=118305&oldid=110161 * Zzo38 * (+1957)
03:29:45 -!- Noisytoot has quit (Remote host closed the connection).
03:50:56 -!- Noisytoot has joined.
04:10:37 -!- Noisytoot has quit (Remote host closed the connection).
04:10:38 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118306&oldid=118294 * PythonshellDebugwindow * (+58) Categories
04:11:33 -!- Noisytoot has joined.
04:14:28 -!- Noisytoot has quit (Remote host closed the connection).
04:16:08 -!- Noisytoot has joined.
04:27:14 -!- Noisytoot has quit (Remote host closed the connection).
04:27:38 -!- Noisytoot has joined.
04:39:15 -!- Noisytoot has quit (Remote host closed the connection).
04:39:44 -!- Noisytoot has joined.
06:40:04 -!- tromp has joined.
07:57:03 -!- cpressey has joined.
08:23:02 -!- Sgeo has quit (Read error: Connection reset by peer).
08:49:26 -!- arseniiv has joined.
08:56:11 -!- example99 has joined.
08:56:28 <example99> cAlE
08:56:37 <example99> apic
08:56:53 <example99> cat_s
08:56:59 <example99> ^[
08:57:04 <example99> ^[12345]
08:57:08 <example99> ^[ 12345]
09:06:49 <cpressey> ?SYNTAX ERROR
09:06:49 <lambdabot> Unknown command, try @list
09:13:27 <int-e> example99: Just because a channel is quiet doesn't mean you need to fill that silence with random noise.
09:14:06 <example99> int-e:yes
09:14:14 <example99> int-e: yes
09:14:40 <example99> sorry the 1st ine was'nt color-coded
09:24:39 <example99> excuse me my internet i a little floppy#
09:25:11 <example99> CORRECTION:excuse me my internet is a bit floppy
10:08:38 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118307&oldid=118306 * TheBigH * (+180) New program
10:09:08 -!- arseniiv_ has joined.
10:11:27 -!- example99 has quit (Ping timeout: 248 seconds).
10:13:00 -!- arseniiv has quit (Ping timeout: 258 seconds).
10:19:49 -!- __monty__ has joined.
10:46:39 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118308&oldid=118298 * None1 * (+121)
11:07:18 <esolangs> [[Talk:3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118309&oldid=118308 * TheBigH * (+225) More on possible truth machine
11:16:20 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118310&oldid=118309 * None1 * (+211)
11:20:19 <esolangs> [[3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118311&oldid=118133 * None1 * (+28)
11:29:40 <esolangs> [[3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118312&oldid=118311 * None1 * (+114) Added quine
11:29:57 <esolangs> [[3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118313&oldid=118312 * None1 * (+1) /* Quine */
11:48:58 <esolangs> [[Talk:Obfuscated]] https://esolangs.org/w/index.php?diff=118314&oldid=115528 * None1 * (+372) /* Request for a JavaScript interpreter */ new section
12:05:05 <esolangs> [[User:Lungecrunch/Q+9H test]] https://esolangs.org/w/index.php?diff=118315&oldid=118300 * None1 * (+25)
13:02:38 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=118316&oldid=117866 * Lilchiky * (+151) a new command
13:06:26 <esolangs> [[H]] M https://esolangs.org/w/index.php?diff=118317&oldid=85477 * Lilchiky * (+15) Lowercasing the title
13:12:37 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=118318&oldid=117590 * Lilchiky * (+144) /* Commands */
13:14:03 <esolangs> [[BFInfinity]] M https://esolangs.org/w/index.php?diff=118319&oldid=118318 * Lilchiky * (+78) forgot the author
13:21:18 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=118320&oldid=118319 * Lilchiky * (+144) /* Commands */ and
13:28:30 <esolangs> [[BFInfinity]] https://esolangs.org/w/index.php?diff=118321&oldid=118320 * Lilchiky * (+69) /* Examples */
13:58:43 -!- example99 has joined.
14:00:27 -!- example99 has quit (Client Quit).
14:00:58 -!- example99 has joined.
14:01:00 -!- example99 has quit (Client Quit).
14:12:42 <esolangs> [[Talk:4 bits, 8 bytes]] N https://esolangs.org/w/index.php?oldid=118322 * TheBigH * (+152) Created page.
14:14:23 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118323&oldid=118307 * TheBigH * (+0) Fixed an error.
14:26:58 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118324&oldid=118323 * TheBigH * (+1) Fixed another small mistake.
14:48:51 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
14:55:20 -!- craigo_ has joined.
15:05:46 -!- craigo_ has quit (Quit: Leaving).
15:06:31 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118325&oldid=118324 * TheBigH * (+0) Fixing a minor mistake #3
15:10:53 -!- tromp has joined.
15:30:29 -!- craigo has joined.
15:31:38 <esolangs> [[NewFuck]] M https://esolangs.org/w/index.php?diff=118326&oldid=96882 * PythonshellDebugwindow * (+92) Stub, categories
15:46:44 <esolangs> [[Redivider/Brainfuck Interpreter]] M https://esolangs.org/w/index.php?diff=118327&oldid=12709 * PythonshellDebugwindow * (+34) Link, category
15:47:47 <esolangs> [[Impossible.]] M https://esolangs.org/w/index.php?diff=118328&oldid=92049 * PythonshellDebugwindow * (+9) Stub
16:17:37 <esolangs> [[Wise]] https://esolangs.org/w/index.php?diff=118329&oldid=118241 * DivergentClouds * (+298) added digit count operator
16:27:50 <esolangs> [[Wise]] https://esolangs.org/w/index.php?diff=118330&oldid=118329 * DivergentClouds * (+53) added implementation :D
16:31:36 -!- tromp has quit (Read error: Connection reset by peer).
16:38:28 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118331&oldid=118325 * TheBigH * (+48) More information on quines.
17:38:48 -!- tromp has joined.
18:40:53 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:41:11 <esolangs> [[CDILOI]] https://esolangs.org/w/index.php?diff=118332&oldid=109476 * Kaveh Yousefi * (+208) Added a hyperlink to my implementation of the CDILOI programming language on GitHub and supplemented two category tags.
18:44:08 <esolangs> [[CDILOI]] https://esolangs.org/w/index.php?diff=118333&oldid=118332 * Kaveh Yousefi * (+277) Completed the unary counter example, the same suffered from the destitution of an output command, and added a truth-machine program.
18:48:13 <esolangs> [[CDILOI]] M https://esolangs.org/w/index.php?diff=118334&oldid=118333 * Kaveh Yousefi * (+113) Rectified the orthography.
18:57:43 -!- tromp has joined.
19:11:20 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:31:41 -!- arseniiv_ has quit (Quit: gone too far).
19:54:58 -!- tromp has joined.
20:07:51 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
20:08:41 -!- cpressey has quit (Quit: Client closed).
20:13:53 <esolangs> [[CFRS]] N https://esolangs.org/w/index.php?oldid=118335 * Susam * (+2057) Create page for CFRS[]
20:16:04 <esolangs> [[CFR]] https://esolangs.org/w/index.php?diff=118336&oldid=118152 * Susam * (+423) Mention CFRS[]
20:24:57 -!- tromp has joined.
20:37:06 -!- craigo has quit (Quit: Leaving).
20:38:12 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
20:38:36 -!- craigo has joined.
20:40:14 -!- sprout_ has joined.
20:43:24 -!- sprout has quit (Ping timeout: 245 seconds).
20:51:46 -!- tromp has joined.
21:23:43 <zzo38> Is there the version control with each files handling the versions of each files separately?
21:24:29 <b_jonas> zzo38: you mean like cvs?
21:24:51 <b_jonas> I'm not sure I understand your question right
21:26:17 <b_jonas> afaik cvs doesn't handle commits or tags of multiple files as an important concept, it stores the version history of each file separately, though you can check out a directory with each file as it was at a particular timestamp, or at a particular tag if the files have a version with that tag
21:27:01 <b_jonas> but I don't really follow cvs these days, I think it's mostly abandonned because svn does all that cvs can do better, except for communicating with existing cvs clients of course
21:30:43 <zzo38> I don't know much about the working of cvs and svn, so maybe it is similar than what I meant
21:35:40 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:42:48 -!- tromp has joined.
21:43:30 <zzo38> It look that RCS may be similar than what I meant.
21:43:57 <esolangs> [[Rhymolang]] M https://esolangs.org/w/index.php?diff=118337&oldid=109998 * PythonshellDebugwindow * (+101) Categories
21:44:05 <b_jonas> rcs is before my time so I know very little about it
21:45:18 <esolangs> [[VarStack]] M https://esolangs.org/w/index.php?diff=118338&oldid=109809 * PythonshellDebugwindow * (+25) Category
22:02:12 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:15:57 -!- Sgeo has joined.
22:27:43 -!- __monty__ has quit (Quit: leaving).
22:57:49 <esolangs> [[4 bits, 8 bytes]] https://esolangs.org/w/index.php?diff=118339&oldid=118331 * TheBigH * (+149) There's an interpreter now
23:06:32 <esolangs> [[3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118340&oldid=118313 * None1 * (+0) /* Examples */ Fixed a very stupid mistake
23:07:20 -!- Noisytoot has quit (Remote host closed the connection).
23:09:41 -!- Noisytoot has joined.
23:33:23 -!- Noisytoot has quit (Remote host closed the connection).
23:35:03 -!- Noisytoot has joined.
2023-10-25
01:00:10 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
01:01:27 -!- Lord_of_Life has joined.
01:01:55 <esolangs> [[Special:Log/newusers]] create * TempTempai * New user account
01:05:37 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118341&oldid=118299 * TempTempai * (+256) /* Introductions */
01:07:54 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118342&oldid=118260 * TempTempai * (+13) /* A */
01:26:15 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118343&oldid=118339 * TheBigH * (+72) New program
01:44:07 -!- leah2 has quit (Ping timeout: 264 seconds).
02:41:59 <esolangs> [[AWA5.0]] N https://esolangs.org/w/index.php?oldid=118344 * TempTempai * (+2847) Created the AWA5.0 page
03:37:56 <esolangs> [[Special:Log/newusers]] create * WeCantRelate * New user account
03:41:50 <zzo38> I wrote a program to calculate probability distribution of dice and the stuff like that. Currently there is not implementation of two-dimensional probability distributions, which I might expect might be suitable if you want to calculate e.g. "4d6 drop lowest".
03:44:22 -!- leah2 has joined.
03:44:35 -!- m5zs7k has quit (Quit: m5zs7k).
03:47:00 -!- m5zs7k has joined.
03:57:39 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=118345&oldid=118280 * Esolanger12345 * (+73)
03:59:06 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=118346&oldid=118345 * Esolanger12345 * (+60)
04:00:52 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=118347&oldid=118346 * Esolanger12345 * (+21)
04:01:16 -!- craigo has quit (Ping timeout: 248 seconds).
04:02:10 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=118348&oldid=118341 * WeCantRelate * (+149)
04:02:53 <esolangs> [[Joke language list]] M https://esolangs.org/w/index.php?diff=118349&oldid=118296 * WeCantRelate * (+41) /* General languages */
04:08:58 <esolangs> [[CFRS]] https://esolangs.org/w/index.php?diff=118350&oldid=118335 * Susam * (+5344) Add full description of the language
04:11:44 <esolangs> [[CFR]] https://esolangs.org/w/index.php?diff=118351&oldid=118336 * Susam * (-5393) Avoid duplication of content by pointing to CFRS[]
04:12:58 <esolangs> [[CFRS]] https://esolangs.org/w/index.php?diff=118352&oldid=118350 * Susam * (+2) Fix language name in image captions
04:15:15 -!- sprout_ has changed nick to sprout.
04:15:47 <esolangs> [[KYS]] N https://esolangs.org/w/index.php?oldid=118353 * WeCantRelate * (+1372) made my esolang page yaaaaay
04:16:59 <esolangs> [[User:WeCantRelate]] N https://esolangs.org/w/index.php?oldid=118354 * WeCantRelate * (+2) Created page with "yo"
04:21:43 <zzo38> (since, I would expect, you could use one dimension to keep track of which is the lowest number that has been rolled so far)
04:22:59 <esolangs> [[AWA5.0]] M https://esolangs.org/w/index.php?diff=118355&oldid=118344 * PythonshellDebugwindow * (+71) Categories
04:23:52 <esolangs> [[User talk:PartehTheEsolangDev]] https://esolangs.org/w/index.php?diff=118356&oldid=107276 * WeCantRelate * (+4)
04:30:53 <zzo38> What kind of functions do you think would be good, in your opinion?
04:33:47 <esolangs> [[KYS]] M https://esolangs.org/w/index.php?diff=118357&oldid=118353 * PythonshellDebugwindow * (+196) Formatting, add categories
04:51:40 <b_jonas> zzo38: well if you know how to (efficiently and accurately) compute the CDF of a two-dimensional gaussian distribution whose two coefficients may be correlated, that would be interesting, because I'm not sure I've seen that anywhere
04:55:48 <zzo38> Well, this program is meant for calculating discrete distributions, so I think that doesn't count. Furthermore, it is currently limited to finite discrete distributions, but allowing infinite discrete distributions (e.g. if you roll a 6 then you most roll again until it is not 6, and add them together) would not be out of scope of the intention of this software, I think.
04:57:46 <zzo38> I don't know about the CDF of multidimensional Gaussian distributions, and would not know how to be calculated, unfortunately.
04:58:35 <zzo38> (My program also internally does all calculations with integer arithmetic, using floating point only for the final purpose of displaying the results.)
04:58:46 <esolangs> [[4 bits, 8 bytes]] https://esolangs.org/w/index.php?diff=118358&oldid=118343 * Salpynx * (+50) /* Quine */ a Quine
05:10:08 <zzo38> You can write dice such as "3d6+1" etc, or dice with your own numbers such as "4(-1,0,1)", or you can write "3d6.d20/h" to mean roll three six-sided dice and one twenty-sided dice, and the result is the total of the six-sided if that is higher than the twenty-sided, or the twenty-sided if that is higher. You can also write such things as "3(1,2,3,4,5,d6+5)".
05:50:38 <zzo38> You can see the program and documentation http://zzo38computer.org/diceprob/ so that you may make a suggestion based on its working, I suppose.
06:02:06 -!- SGautam has joined.
06:57:33 -!- tromp has joined.
07:40:45 -!- simcop2387 has quit (Read error: Connection reset by peer).
07:40:46 -!- perlbot has quit (Read error: Connection reset by peer).
07:46:10 -!- perlbot has joined.
07:46:44 -!- simcop2387 has joined.
07:54:21 -!- b_jonas has quit (Quit: leaving).
08:26:47 <esolangs> [[AGSPL]] https://esolangs.org/w/index.php?diff=118359&oldid=116310 * Xi-816 * (-1)
08:31:06 <esolangs> [[Nope.]] https://esolangs.org/w/index.php?diff=118360&oldid=118011 * Xi-816 * (+177)
08:33:42 <esolangs> [[Qui]] N https://esolangs.org/w/index.php?oldid=118361 * Xi-816 * (+139) Created page with "{{stub}} Qui is the esolang made by [[User:Xi-816]]. It is stack-based, and transpiles to C. Github Page: [[https://github.com/xi816/Qui]]"
08:34:05 -!- Sgeo has quit (Read error: Connection reset by peer).
08:46:16 -!- __monty__ has joined.
09:04:38 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:11:36 -!- SGautam has quit (Quit: Connection closed for inactivity).
09:37:01 -!- tromp has joined.
09:42:57 <esolangs> [[Special:Log/newusers]] create * Hanemile * New user account
09:53:25 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118362&oldid=118348 * Hanemile * (+193) added myself
09:53:30 <esolangs> [[Mexico]] N https://esolangs.org/w/index.php?oldid=118363 * Hanemile * (+8281) initial commit
09:54:21 -!- Noisytoot has quit (Remote host closed the connection).
09:55:15 -!- Noisytoot has joined.
09:55:27 <esolangs> [[Mexico]] https://esolangs.org/w/index.php?diff=118364&oldid=118363 * Hanemile * (+139)
10:39:54 <esolangs> [[4 bits, 8 bytes]] https://esolangs.org/w/index.php?diff=118365&oldid=118358 * None1 * (+37) /* Programs */
10:52:37 <esolangs> [[3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118366&oldid=118340 * None1 * (+3) /* Commands */
10:55:12 -!- picto has joined.
10:55:17 -!- picto has left.
10:55:35 -!- picto has joined.
10:55:37 -!- picto has left.
10:56:01 -!- picto has joined.
10:56:05 -!- picto has left.
10:56:41 -!- kwii has joined.
10:57:08 <kwii> yay
10:57:12 <kwii> finally got irc :3c
10:58:28 <esolangs> [[3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118367&oldid=118366 * None1 * (+360) Added a partial [[Truth Machine]]
10:59:47 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118368&oldid=118310 * None1 * (+174)
11:01:36 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=118369&oldid=118221 * None1 * (+108) /* 2KWLang */
11:02:36 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=118370&oldid=118369 * None1 * (+87) /* 3 Bits, 3 Bytes */
11:03:34 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118371&oldid=118368 * None1 * (+89)
11:15:06 -!- kwii has left.
11:15:24 -!- kwii has joined.
11:17:48 -!- kwii has quit (Remote host closed the connection).
11:41:35 <esolangs> [[Special:Log/newusers]] create * Minicoder * New user account
11:44:11 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118372&oldid=118362 * Minicoder * (+145)
11:44:29 <esolangs> [[User:Minicoder]] N https://esolangs.org/w/index.php?oldid=118373 * Minicoder * (+5) Created page with "Hello"
11:46:02 <esolangs> [[UndeadFish]] N https://esolangs.org/w/index.php?oldid=118374 * None1 * (+626) Created page with "'''UndeadFish''' is a [[Deadfish]] derivative, it is the same as [[Deadfish]], but the commands are different: {| class="wikitable" |+ Commands |- ! [[Deadfish]] !! [[UndeadFish]] |- | i || Don't run the Deadfish i command |- | d || Don't run the Deadfish d command |- |
11:46:32 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118375&oldid=118342 * None1 * (+17) /* U */
11:46:33 <esolangs> [[Category:Graphical Output]] https://esolangs.org/w/index.php?diff=118376&oldid=106322 * Minicoder * (+18)
11:47:06 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118377&oldid=118279 * None1 * (+79) /* My Esolangs */
11:52:57 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118378&oldid=118365 * TheBigH * (+16) Fixed some programs.
12:13:11 <esolangs> [[Category:2023]] M https://esolangs.org/w/index.php?diff=118379&oldid=105868 * Minicoder * (+1)
12:13:22 <esolangs> [[Category:2023]] M https://esolangs.org/w/index.php?diff=118380&oldid=118379 * Minicoder * (-1)
12:15:59 <esolangs> [[Category:Total]] M https://esolangs.org/w/index.php?diff=118381&oldid=111377 * Minicoder * (+0) sorted categories alphabetically
12:19:49 <esolangs> [[Mexico]] M https://esolangs.org/w/index.php?diff=118382&oldid=118364 * PythonshellDebugwindow * (+97) Categories
12:20:11 <esolangs> [[Mexico]] M https://esolangs.org/w/index.php?diff=118383&oldid=118382 * PythonshellDebugwindow * (+0) /* License */ Category
12:20:36 <esolangs> [[Mexico]] M https://esolangs.org/w/index.php?diff=118384&oldid=118383 * PythonshellDebugwindow * (+1)
12:24:50 -!- kwii has joined.
12:25:16 -!- kwii has left.
12:25:35 -!- kwii37 has joined.
12:26:36 -!- kwii37 has quit (Client Quit).
13:50:32 -!- mcfrdy has quit (Quit: quit).
13:50:52 -!- mcfrdy has joined.
14:05:39 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118385&oldid=118378 * TheBigH * (+19) new program (again)
14:06:02 <esolangs> [[4 bits, 8 bytes]] M https://esolangs.org/w/index.php?diff=118386&oldid=118385 * TheBigH * (+0)
14:10:38 -!- craigo has joined.
14:10:58 -!- craigo has quit (Remote host closed the connection).
15:44:33 -!- arseniiv has joined.
16:42:32 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:59:39 -!- tromp has joined.
17:01:41 -!- b_jonas has joined.
17:02:30 <esolangs> [[User:PaxtonPenguin/Redirect]] N https://esolangs.org/w/index.php?oldid=118387 * PaxtonPenguin * (+40) Redirected page to [[User:PaxtonPenguin/Redirect]]
17:03:44 <esolangs> [[User:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=118388&oldid=117856 * PaxtonPenguin * (+38)
17:03:48 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=118389&oldid=118041 * Infinitehexagon * (+9) /* Other */
17:07:41 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=118390&oldid=118316 * PaxtonPenguin * (+110)
17:12:45 -!- Thelie has joined.
17:13:51 <esolangs> [[User talk:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=118391&oldid=117740 * PaxtonPenguin * (+628) /* H */ new section
17:19:10 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=118392&oldid=117883 * PaxtonPenguin * (+76)
17:26:58 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=118393&oldid=118392 * PaxtonPenguin * (+81)
17:28:41 <esolangs> [[User:Infinitehexagon]] https://esolangs.org/w/index.php?diff=118394&oldid=118389 * Infinitehexagon * (+14) /* My Esolangs (chronological order) */
17:30:12 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=118395&oldid=118393 * PaxtonPenguin * (+76)
17:33:28 -!- Guest35 has joined.
17:33:52 <Guest35> Hello
17:36:42 <esolangs> [[Lightswitch]] https://esolangs.org/w/index.php?diff=118396&oldid=116926 * Infinitehexagon * (-12) /* Built-In Keywords */
17:37:22 <esolangs> [[CFRS]] https://esolangs.org/w/index.php?diff=118397&oldid=118352 * Susam * (+1) Fix extension name
17:38:17 <esolangs> [[Lightswitch]] https://esolangs.org/w/index.php?diff=118398&oldid=118396 * Infinitehexagon * (+116) /* Cat program */
17:38:59 <esolangs> [[Lightswitch]] https://esolangs.org/w/index.php?diff=118399&oldid=118398 * Infinitehexagon * (+2) /* Cat program */
17:39:09 <esolangs> [[Punktuation]] N https://esolangs.org/w/index.php?oldid=118400 * PaxtonPenguin * (+441) Created page with "Punktuation is a 2d programming language, that uses '''every''' punctuation symbol. {| class="wikitable" |+ |- ! Symbols || and where to use them |- | + || add the top of the stack, to the second to the top |- | - || subtract |- | * || multiply |- | / || divi
17:40:08 <esolangs> [[Lightswitch]] https://esolangs.org/w/index.php?diff=118401&oldid=118399 * Infinitehexagon * (+31) /* Cat program */
17:40:22 <esolangs> [[Lightswitch]] https://esolangs.org/w/index.php?diff=118402&oldid=118401 * Infinitehexagon * (-32) /* Cat program */
17:41:47 <esolangs> [[Lightswitch]] https://esolangs.org/w/index.php?diff=118403&oldid=118402 * Infinitehexagon * (+42) /* Cat program */
17:42:35 -!- Guest35 has quit (Quit: Client closed).
17:43:40 <esolangs> [[Lightswitch]] https://esolangs.org/w/index.php?diff=118404&oldid=118403 * Infinitehexagon * (-51) /* Cat program */
17:54:03 -!- Thelie has quit (Ping timeout: 260 seconds).
18:01:03 <esolangs> [[Len2]] N https://esolangs.org/w/index.php?oldid=118405 * Infinitehexagon * (+963) Created page with "'''Len2''' is an esolang created by [[User:Infinitehexagon | Infinite Hexagon]]. Len2 is Infinite Hexagon's first pseudonatural esolang and his first esolang that uses hexadecimal. [[Category:Cell-based]][[Category:2023]][[Category:Pseudonatural]][[Category: Works-
18:06:14 -!- Thelie has joined.
18:33:25 <esolangs> [[ITERATE]] N https://esolangs.org/w/index.php?oldid=118406 * Star651 * (+637) You asked for it in the video description Truttle1
18:38:30 -!- we11en has joined.
18:55:58 -!- fellow has joined.
18:56:43 <fellow> hello
19:03:32 -!- FortyTwoBB has joined.
19:18:07 <FortyTwoBB> After much headache, I think I understand the FWC TC-ness. I still feel a real dissonance with my intuition, but I've dealt with that before.  Really, thank you for the work ais523. I've started again on the writeup and will post it in here when its done.
19:30:43 <fellow> FortyTwoBB: what exactly is FWC and TC?
19:30:56 <FortyTwoBB> TC is Turing complete
19:31:15 <fellow> thanks. and FWC?
19:31:22 <FortyTwoBB> FWC is flooding waterclocks a variant on the waterfall model
19:31:39 <fellow> oh don't know anything about that. need to look that up.
19:31:53 <int-e> it's truly esoteric in the channel name's sense
19:31:58 <FortyTwoBB> https://esolangs.org/wiki/Flooding_Waterfall_Model
19:32:25 <int-e> Unlike TC which is a standard computer science concept.
19:32:31 <FortyTwoBB> Notable for being possible to implement in Magic the Gathering
19:33:14 <fellow> thanks
19:33:50 <fellow> I found this channel only today while learning about CFRS[] which I've been playing with for the last 2 days
19:34:16 <fellow> the esolangs wiki is vast. I never knew there are so many esolangs
19:34:35 <FortyTwoBB> which allows a MTG deck to do Busy Beaver computations without allowing it to do unbounded damage.
19:35:00 <fellow> I even found one that does not take any user input and compiles based on current time. so many clever ideas.
19:35:31 <FortyTwoBB> yeah turns out you don't actually need all that much to be TC
19:36:10 <fellow> CFRS[] is described as total. what would it take to make it TC?
19:36:51 <fellow> and is TC always a desirable quality? I read somewhere that TC means Turing Halting Problem exists. and total means the halting problem does not exist. is that right?
19:38:13 <FortyTwoBB> Yeah, it gives a sane upper bound for how long an arbitrary input takes to finish.
19:39:04 <int-e> fellow: It's definitely not always desirable.
19:39:31 <fellow> thanks
19:39:47 <FortyTwoBB> it looks like CFRS would need some sort of branching instruction, IE a way to read what color it is currently looking at and either turn right or left or something like that.
19:39:56 <fellow> must esolang always execute something? can esolang simply be a markup language?
19:40:33 <FortyTwoBB> (as well as being unrestricted by the 256x256 canvas)
19:41:27 <fellow> isn't it true that these days bounded memory is not considered a problem for Turing Completeness as long as we can show that the language is TC if there is a hypothetical unbounded memory?
19:41:33 <int-e> fellow: It's really about programming languages for us (not just speaking for myself, see also the topic and the main page of the wiki.)
19:42:38 <FortyTwoBB> yeah, infinite memory is a practical problem
19:43:26 <FortyTwoBB> but in theory we can use as much memory as we want
19:44:15 <int-e> TC-ness is a property of languages in the abstract (as models of computation), not of implementations.
19:44:53 <fellow> thanks. that makes more sense than what I said.
19:44:59 <int-e> We all know that in practice we'll often run out of memory or time before a computation ever finishes.
19:47:26 <FortyTwoBB> yeah, a bunch of esolangs are not efficient at all for real problems
20:12:42 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
20:16:36 -!- tromp has joined.
20:33:34 -!- FortyTwoBB has quit (Quit: Client closed).
20:43:30 -!- arseniiv has quit (Quit: gone too far).
20:47:17 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
20:49:07 -!- tromp has joined.
20:55:03 -!- we11en has quit (Ping timeout: 240 seconds).
20:57:10 -!- __monty__ has quit (Quit: leaving).
21:35:58 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:44:12 <esolangs> [[$]] https://esolangs.org/w/index.php?diff=118407&oldid=109178 * Kaveh Yousefi * (+154) Added a hyperlink to my implementation of the $ programming language on GitHub and changed the category tag Unimplemented to Implemented.
21:48:18 <esolangs> [[$]] https://esolangs.org/w/index.php?diff=118408&oldid=118407 * Kaveh Yousefi * (+447) Introduced an examples section comprehending two initial members: one furnishing a Hello, World!, the other an infinitely repeating cat program.
21:55:50 -!- Thelie has quit (Ping timeout: 258 seconds).
23:10:21 <esolangs> [[Talk:Punktuation]] N https://esolangs.org/w/index.php?oldid=118409 * None1 * (+171) Created page with "The pipe symbol | can be used in tables using HTML escape character ({{cd|&#124;}}) --~~~~"
23:11:04 -!- Sgeo has joined.
2023-10-26
01:02:31 -!- Lord_of_Life has quit (Ping timeout: 258 seconds).
01:02:37 -!- Lord_of_Life_ has joined.
01:03:58 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
01:30:35 -!- Noisytoot has quit (Quit: ZNC 1.8.2 - https://znc.in).
01:30:59 -!- Noisytoot has joined.
01:53:31 -!- razetime has joined.
02:28:43 -!- ais523 has joined.
02:29:13 <ais523> <fellow> and is TC always a desirable quality? ← the most interesting esolangs are normally those for which either a) it isn't obvious whether they're TC or not, or b) they fail to be TC in an interesting or unusual way
02:29:32 <ais523> or, that are TC despite being extremely simple
02:30:18 <ais523> <int-e> We all know that in practice we'll often run out of memory or time before a computation ever finishes. ← although in practice it is often possible to write an optimising interpreter that can implement the very slow programs in reasonable time
02:31:49 <ais523> <FortyTwoBB> After much headache, I think I understand the FWC TC-ness. I still feel a real dissonance with my intuition, but I've dealt with that before. Really, thank you for the work ais523. I've started again on the writeup and will post it in here when its done. ← I'm looking forward to it; I've been looking at the M:tG BB construction myself and have been making progress on understanding it, although I still don't have a a grasp of how the whole
02:31:51 <ais523> thing hangs together
02:32:52 <ais523> <fellow> must esolang always execute something? can esolang simply be a markup language? ← esoteric non-programming languages are less popular than esoteric programming languages, but do get discussed on IRC sometimes – I'm not sure if people put them on the wiki
02:42:53 -!- ais523 has quit (Remote host closed the connection).
02:44:06 -!- ais523 has joined.
03:19:25 <int-e> ais523: I really had problems in mind that exceed our computing facilities... solving chess would be a very likely example.
03:34:53 <ais523> int-e: ah right, but that sort of computation isn't any better in practical languages than in esolangs
03:35:21 <int-e> Yes. It wasn't about esolangs at all.
03:37:14 -!- wpa has joined.
04:29:15 -!- ais523 has quit (Remote host closed the connection).
04:30:04 -!- razetime has quit (Ping timeout: 248 seconds).
04:30:31 -!- ais523 has joined.
04:38:43 -!- razetime has joined.
05:17:27 -!- razetime has quit (Ping timeout: 240 seconds).
05:20:12 -!- razetime has joined.
06:44:41 -!- tromp has joined.
06:59:56 -!- razetime has quit (Ping timeout: 255 seconds).
07:30:44 -!- razetime has joined.
07:57:45 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:04:35 -!- tromp has joined.
08:27:29 <esolangs> [[Special:Log/newusers]] create * Kant2002 * New user account
08:31:24 -!- razetime has quit (Ping timeout: 240 seconds).
08:32:18 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118410&oldid=118372 * Kant2002 * (+128)
08:41:18 <esolangs> [[GAXT]] https://esolangs.org/w/index.php?diff=118411&oldid=106770 * Kant2002 * (+0)
08:56:34 -!- Sgeo has quit (Read error: Connection reset by peer).
09:02:28 -!- razetime has joined.
09:33:56 -!- Thelie has joined.
09:58:37 <esolangs> [[Idea]] M https://esolangs.org/w/index.php?diff=118412&oldid=102917 * PkmnQ * (-4) a is just a literal, I think?
10:31:41 -!- razetime has quit (Remote host closed the connection).
10:32:50 -!- razetime has joined.
10:37:58 -!- arseniiv has joined.
10:44:39 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
11:05:20 -!- __monty__ has joined.
12:22:15 <esolangs> [[GAXT]] M https://esolangs.org/w/index.php?diff=118413&oldid=118411 * PythonshellDebugwindow * (+63) /* Grammar */ Categories
12:23:26 <esolangs> [[Homespring]] M https://esolangs.org/w/index.php?diff=118414&oldid=55494 * PythonshellDebugwindow * (+9) Stub
12:53:43 -!- Thelie has quit (Ping timeout: 264 seconds).
12:58:07 -!- Everything has quit (Quit: leaving).
13:08:39 -!- Everything has joined.
13:40:51 -!- Thelie has joined.
14:11:51 -!- Thelie1 has joined.
14:11:58 -!- Thelie has quit (Quit: Leaving.).
14:13:06 -!- tromp has quit (Read error: Connection reset by peer).
14:16:36 -!- tromp has joined.
14:38:24 -!- Sgeo has joined.
14:50:39 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:04:59 <esolangs> [[Vertica Smile]] M https://esolangs.org/w/index.php?diff=118415&oldid=25366 * PythonshellDebugwindow * (+24) Category
15:14:16 -!- tromp has joined.
16:58:10 <esolangs> [[User:PaxtonPenguin/Sandbox]] N https://esolangs.org/w/index.php?oldid=118416 * PaxtonPenguin * (+102) Created page with "Welcome to Hell This is where i put my stupid ideas Enjoy. ;) =1= ==2== ===3=== ====4==== =====5====="
17:01:26 <esolangs> [[User:PaxtonPenguin/Sandbox]] https://esolangs.org/w/index.php?diff=118417&oldid=118416 * PaxtonPenguin * (+59)
17:03:03 <esolangs> [[User:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=118418&oldid=118388 * PaxtonPenguin * (+44)
17:20:50 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:34:28 -!- zzo38 has quit (Ping timeout: 260 seconds).
17:39:38 -!- sprout_ has joined.
17:42:36 -!- sprout has quit (Ping timeout: 248 seconds).
17:48:18 -!- tromp has joined.
17:50:58 -!- sprout_ has changed nick to sprout.
17:54:22 <esolangs> [[Snek]] https://esolangs.org/w/index.php?diff=118419&oldid=108910 * KingJellyfish * (+11)
18:01:59 -!- Cale has quit (Read error: Connection reset by peer).
18:18:16 -!- zzo38 has joined.
18:37:48 -!- kwii has joined.
18:45:35 -!- FortyTwoBB has joined.
18:47:17 -!- FreeFull has joined.
18:51:39 <FortyTwoBB> ais523 yeah I understand being confused by the rest of the structure. Probably the most mechanically difficult bits are the transitions before/after worldfire and spite. I'm trying to be overly detailed with those explanations to make sure it all works. Conceptually hardest is definitely understanding how higher tier stages even work (well that and
18:51:39 <FortyTwoBB> FWC TC, but you obviously know that already lol)
18:54:56 <FortyTwoBB> Also, our particular construction has computation in an awkward spot that makes the structure even more confusing when you consider where we actually benefit from the output.
18:56:58 <FortyTwoBB> output=BB zombies -> starlight life -> lingering souls casts -> TYS storm count is finally something preserved through worldfires.
19:02:39 -!- Noisytoot has quit (Remote host closed the connection).
19:03:09 <FortyTwoBB> but if you have specific questions I'm happy to provide whatever answers I can
19:03:34 -!- Noisytoot has joined.
19:04:45 <kwii> what's the context of this topic/what is this esolang?
19:06:12 <FortyTwoBB> this is the most damage without going infinite in magic the gathering. the strategy involves implementing https://esolangs.org/wiki/Flooding_Waterfall_Model which was recently proven to be TC
19:07:12 <FortyTwoBB> thus the computation produces busy beaver numbers as output
19:08:08 <FortyTwoBB> The rest of the deck focuses on iterating the computation as many times as possible to get 'higher order' busy beaver numbers
19:09:17 <ais523> FortyTwoBB: it took me a while to work out what the lowest-level output was that's the multiplier for the highest stages
19:09:29 <ais523> but I realised it had to be storm, because it's a resource that can't be spent, only used
19:09:38 <FortyTwoBB> BB_0(X)=BB(X) BB_n+1(X)=BB^N(X)
19:09:58 <FortyTwoBB> err no
19:10:40 <FortyTwoBB> BB_n+1(X)=BB_N^(BB_N(X))(X)
19:11:54 <ais523> does this mean that you don't have busy beaver factors in the lowest stages?
19:12:58 <FortyTwoBB> well storm turns into everything else via fated infatuation
19:13:23 <ais523> one thing I realised is that if you're using an iterated busy beaver function, the first few iterations don't need to be large enough to be TC, just to create a number larger than themselves
19:13:55 <ais523> and then the TCness can start showing up after a few iterations
19:14:15 <FortyTwoBB> yeah, numbers being too small for the first computation is not really an issue anymore
19:15:13 -!- arseniiv_ has joined.
19:15:47 <ais523> what resource is spent to cast Fated Infatuation?
19:15:48 <FortyTwoBB> Older versions had to prove they could break out with like 70 permanents, this version will have more like 70^^^70 permanents at least
19:16:06 <FortyTwoBB> life to pay lingering souls flashback
19:16:17 <FortyTwoBB> triggers spellweaver volute
19:16:30 -!- kwii has quit (Quit: Quit).
19:16:35 <ais523> oh right, there was some discussion in-thread about rulings on Spellweaver Helix
19:16:55 <ais523> you have a choice about whether or not to copy the spell, and if you do, you have a choice about whether or not to cast the copy (you can just let the copy fizzle without casting it)
19:17:13 <ais523> so if the Spellweaver Helix trigger gets copied, you can cast the spell from some copies and not others
19:17:22 <FortyTwoBB> yeah apparently even if the copy is not something that can normally fizzle like worldfire
19:17:48 <ais523> right, even if you can't fizzle due to lack of targets you can just not put it on the stack in the first place
19:18:02 <FortyTwoBB> which is not how I expected the card to work, but its certainly convenient
19:18:06 <ais523> it's weird for the card to give you two choices
19:18:23 <ais523> `card-by-name Spellweaver Helix
19:18:25 <HackEso> Spellweaver Helix \ 3 \ Artifact \ Imprint -- When Spellweaver Helix enters the battlefield, you may exile two target sorcery cards from a single graveyard. \ Whenever a player casts a card, if it has the same name as one of the cards exiled with Spellweaver Helix, you may copy the other. If you do, you may cast the copy without paying its mana cost. \ MRD-R
19:18:29 -!- arseniiv has quit (Ping timeout: 255 seconds).
19:18:31 <ais523> 3/1/2005 The creation of the copy and then the casting of the copy are both optional.
19:19:46 <ais523> wording weird enough that they had to write a ruling to say that the card actually does what it says it does
19:20:52 <FortyTwoBB> also if it has 3 or more cards imprinted on it you cast them from the same trigger.
19:21:36 <FortyTwoBB> so we imprint worldfire, starlight, and the only sorcery we have two copies of
19:21:40 <ais523> I am a little more concerned about that one because IIRC the rules for copying imprint triggers changed recently-ish, so there are some formerly correct rulings floating around online that are no longer correct
19:21:49 <ais523> but maybe I'm thinking about something else
19:22:07 <FortyTwoBB> we double checked that when it changed
19:23:05 <FortyTwoBB> the main difference was with split/double faced cards but it doesn't effect us
19:23:30 <ais523> I'd expect it to work because imprint doesn't have rules text any more, so it doesn't notionally function any differently from, say, Dauthi Voidwalker
19:25:08 <ais523> 607.3. If, within a pair of linked abilities, one ability refers to a single object as “the exiled card,” “a card exiled with [this card],” or a similar phrase, and the other ability has exiled multiple cards (usually because it was copied), the ability refers to each of the exiled cards. If that ability asks for any information about the exiled card, such as a characteristic or mana value, it gets multiple answers. If these answers are used to
19:25:08 <FortyTwoBB> yeah its just cards linked to an ability, there are a few odd corner cases where you can get multiple different linked abilities that don't interact
19:25:09 <ais523> determine the value of a variable, the sum of the answers is used. If that ability performs any actions on “the” card, it performs that action on each exiled card. If that ability creates a token that is a copy of “the” card, then for each exiled card, it creates a token that is a copy of that card. If that ability performs any actions on “a” card, the controller of the ability chooses which card is affected.
19:25:16 <ais523> (from the rules dated October 13 2013)
19:25:22 <ais523> a very clear answer
19:26:06 <ais523> …although I'd hate having to rule that in languages other than English, which don't make a distinction between "a" and "the"
19:26:18 <ais523> (the official ruling is presumably "look at the English card text")
19:29:06 <FortyTwoBB> Constricting sliver can be artificial evolution-d to grant another linked exile ability to say dauthi voidwalker. you can't use the voidwalker's natural ability to cast the card it exiled due to the sliver's ability
19:29:24 <FortyTwoBB> `card-by-name Constricting sliver
19:29:25 <HackEso> Constricting Sliver \ 5W \ Creature -- Sliver \ 3/3 \ Sliver creatures you control have "When this creature enters the battlefield, you may exile target creature an opponent controls until this creature leaves the battlefield." \ M15-U
19:30:10 <ais523> dauthi voidwalker is a bad example, it uses counters to know which cards it can cast
19:30:52 <FortyTwoBB> oh, right
19:31:00 <FortyTwoBB> but even if it didnt
19:33:33 <FortyTwoBB> intellect devourer then
19:33:43 -!- arseniiv_ has quit (Quit: gone too far).
19:35:45 <FortyTwoBB> Jacob Hauken, inspector even has two ways for it to exile cards for it to cast, but couldnt cast something it exiled thanks to the sliver
19:37:05 <ais523> I guess my key question at the moment is: say the volute hyperstage is locked (it has created a whole load of martyr triggers that are currently in use, and can't be reused without destroying them)
19:37:16 <ais523> * martyr tokens
19:37:29 <ais523> is it possible to run a computation for each martyr token? or do we have to unlock the volute first?
19:43:36 <FortyTwoBB> have to unlock
19:44:06 <ais523> this makes me wonder if the foundry stage is worth it at all, then
19:44:30 <ais523> because it's basically increasing things by an Ackermann function factor, but the busy beaver function grows so fast as to make that factor irrelevant
19:45:02 <FortyTwoBB> yes, but thats only the 'topmost' foundry stage
19:45:27 <FortyTwoBB> lower foundry stages power the transitions for more computations
19:45:59 <ais523> couldn't you do that with a layer instead, and save a lot of card slots?
19:46:53 <FortyTwoBB> No, a stage powers many more transitions than a layer would
19:47:28 <ais523> but the number of transitions you get is already a busy beaver number
19:47:43 <ais523> applying any computable function to that doesn't significantly change its size
19:48:08 <ais523> because you could just implement the same computable function inside the Flooding Waterfall Model program instead, using a very slightly larger starting state
19:51:42 <FortyTwoBB> basically because the higher order stage structure is recursive, we can lose some efficiency at the top for more efficiency on the overall structure
19:53:50 <FortyTwoBB> you can think of the martyr/soul foundry stage just below the topmost volute stage as powering a computation per martyr
19:54:29 <ais523> I think that, if you replaced the foundry stage with a layer, and used the card slots saved by that to give you even one more starting token for the first computation, it would produce a larger output – but I don't fully understand the construction so may well be wrong
19:55:46 <ais523> because while the volute stage is locked, you don't run computations, so you're creating some function of the amount of life you have – this is a fast-growing function but it's still computable, and thus an irrelevant part of the overall construction
19:56:15 <ais523> and what's actually needed is to save as many card slots as possible for it, rather than making it grow as fast as possible
19:56:41 <ais523> err, not of the amount of life, of the amount of martyr tokens
19:57:32 <ais523> because you could just get the Flooding Waterfall Model program to compute the same function before outputting, with a constant-sized amount of overhead
20:01:22 <FortyTwoBB> but a layer at the top of a stage doesn't do anything. just go into the stage with 2 more life or one more
20:01:23 <FortyTwoBB> R
20:02:21 <ais523> exactly – my point is that even that does more than putting a stage below the computation
20:03:32 <FortyTwoBB> but its also still a stage for rebuilding the rest of the stack, the real work it does is in providing transitions
20:05:16 <ais523> I feel like a stage is necessarily either too large or not large enough for that
20:05:33 <ais523> it isn't large enough to handle BB levels of output, but a layer would be large enough to handle anything smaller
20:06:03 <FortyTwoBB> consider after we have run out of life for computations above the first worldfire, we run through the awaiting transition triggers to get back into a state to cast worldfire again
20:07:03 <FortyTwoBB> when we cast worldfire, the stack is the same as it was but we are down some fraction of the martyr stage below those transitions
20:10:42 <ais523> OK, so you're casting worldfire at instant speed with a whole load of martyr triggers on the stack below it, and the number of martyr triggers determines how many times you can cast worldfire at that particular stack state
20:10:52 <FortyTwoBB> yes
20:11:24 <FortyTwoBB> the topmost martyr stages are worthless yes
20:11:41 <FortyTwoBB> but in the middle of the stack they get rebuild with updated BB heights
20:11:47 <FortyTwoBB> which a layer could not no
20:11:55 <FortyTwoBB> not do
20:12:55 <FortyTwoBB> most of the time we will be at the top of the stack and BB computations dominate.
20:13:14 <FortyTwoBB> we want to iterate those as much as possible
20:13:26 <ais523> but in any given batch of consecutive martyr triggers, there's no way to increase the size of the batch based on a computation once the batch has already been created
20:13:40 <ais523> and the initial size of the batch is based on a BB output
20:14:31 <ais523> or, hmm, maybe not? this is really confusing
20:14:49 <FortyTwoBB> but the number of BB iterations we get is the important thing
20:15:43 <ais523> what I am wondering about is whether we can just make the batches of triggers larger, rather than using them more efficiently
20:16:20 <FortyTwoBB> they get larger as the combo goes
20:16:31 <ais523> yes, of course
20:17:30 <FortyTwoBB> so when we reach the bottom of the stack, we remake the stack with more layers and stages
20:18:41 <FortyTwoBB> because BB_N(X+1)<BB_N+1(X)
20:19:51 <ais523> so I think the point where the problem is (if there is a problem) is that in the foundry stage, in between creating and using the transition, no computations run, you are just taking tokens and very efficiently converting them to storm
20:20:55 <ais523> err, not tokens, triggers
20:21:07 <FortyTwoBB> only at the very top of the stack, we can leave all of those triggers on the stack and do computations above them,
20:21:32 <ais523> not while the foundry stage is locked
20:21:35 <FortyTwoBB> storm does get converted into computations as well
20:22:10 <ais523> like, the whole batch of ashnod-triggers has to be converted into storm all at once
20:22:20 <ais523> you can't do computations in the middle of converting the batch
20:22:47 <ais523> but that particular conversion might actually already be as simple as possible
20:22:50 <ais523> in terms of card slots
20:23:13 <ais523> so maybe there isn't an inefficiency
20:25:06 <ais523> brb
20:25:08 <FortyTwoBB> we can leave ashnod triggers on the stack and retarget the martys when the ashnods resolve
20:35:08 <b_jonas> oh, you *iterate* the busy beaver function. so that's why you need to capture the output of the busy beaver in a usable form! that's what I didn't understand the last time
20:37:49 <ais523> FortyTwoBB: back
20:37:51 <ais523> I think I was wrong
20:38:04 <ais523> and I think the reason is that I didn't understand the difference between a hyperstage and two stages
20:38:43 <FortyTwoBB> yeah converting the output into the next bb computation input is easy
20:40:21 <FortyTwoBB> technically we might only be able to make BB(BB(X)-1) when we iterate but that -1 is pretty irrelevant
20:41:13 <ais523> b_jonas: it's not just iterating it, it's an Ackermann-like function that has a busy beaver in rather than a multiplication
20:41:14 <FortyTwoBB> yeah higher order stages are kind of crazy
20:41:23 <ais523> and that's just a single stage
20:41:38 <ais523> the higher order stages are somewhat hard to comprehend, as this conversation indicates
20:42:46 -!- Noisytoot has quit (Ping timeout: 260 seconds).
20:42:58 <esolangs> [[Cyclic Amplification System]] M https://esolangs.org/w/index.php?diff=118420&oldid=68232 * PythonshellDebugwindow * (+17) /* Another example for a computation that does many executions finitely */ Rectwrap
20:47:18 <b_jonas> “<ais523> (the official ruling is presumably ‘look at the English card text’)” => it always is, because the other language texts are not generally updated when the oracle text is changed, unless the card is reprinted. also because the comp. rules doesn't have translations, and I don't think there's even an easy way to find the english word from a magic-specific word (eg. keyword or type or
20:47:24 <b_jonas> subtype) in a foreign language, there are no translation tables published. as far as the rules go, nothing but the current oracle text matters, and that exists only in English.
20:47:50 <ais523> also the translations often have major errors in
20:48:10 <ais523> I think as recently as this year, there was a translated card printed with the wrong mana cost for an ability
20:48:14 -!- Noisytoot has joined.
20:49:28 <FortyTwoBB> Yeah they have gotten better, but mistackes still happen
20:50:04 <FortyTwoBB> hasnt been another 'card-by-name walking atlas in english for a while
20:50:19 <FortyTwoBB> 'card-by-name walking atlas
20:50:40 <int-e> `card-by-name walking atlas
20:50:41 <HackEso> Walking Atlas \ 2 \ Artifact Creature -- Construct \ 1/1 \ {T}: You may put a land card from your hand onto the battlefield. \ WWK-C
20:50:57 <int-e> (backtick, not quote)
20:51:33 <FortyTwoBB> yeah thats the oracle text, the printed card is not an artifact
20:51:56 <FortyTwoBB> they just left that word off
20:54:09 <b_jonas> “<ais523> … in languages other than English, which don't make a distinction between ‘a’ and ‘the’” => since last year they stopped printing new sets in korean, russian, and chinese traditional, so there's at most two of those standing, but there are of course lots of other reasons why it can be hard to figure out the rules from the translated text
20:54:57 <FortyTwoBB> But oracle text is almost always good enough to define how the card works within the rules
20:55:02 <b_jonas> I expect "an exiled card" would be used only on cards that normally exile multiple, and on those the translated text is likely clear that the second ability affects only one of them
20:56:51 <FortyTwoBB> `card-by-name dominating licid
20:56:53 <HackEso> Dominating Licid \ 1UU \ Creature -- Licid \ 1/1 \ {1}{U}{U}, {T}: Dominating Licid loses this ability and becomes an Aura enchantment with enchant creature. Attach it to target creature. You may pay {U} to end this effect. \ You control enchanted creature. \ EX-R
20:57:08 <FortyTwoBB> does not work because of layers
20:57:22 <ais523> does nowadays, they finally errata'd it and/or changed the rules so that it would work
20:57:31 <ais523> after a small but vocal minority complained for years
20:57:41 <APic>
20:57:42 <FortyTwoBB> oh? what changed?
20:58:03 <ais523> I can't remember
20:58:59 <ais523> oh, I think the bot may have brought up the post-errata version
20:59:21 <ais523> "You control enchanted creature" is now part of its text even as a creature, so there isn't a layers issue with whether that ability exists or not
20:59:54 <FortyTwoBB> Ah thats a clever change
21:02:52 <esolangs> [[Trigational Pseudoomninumitype]] M https://esolangs.org/w/index.php?diff=118421&oldid=108921 * PythonshellDebugwindow * (+24) Category
21:02:52 <b_jonas> yeah, it's mostly just the oracle text that matters, except (1) you have to find the version of the oracle text as it was at the start of a tournament if it's been updated during the tournament, and (2) between a set releases and the comp. rules is updated you have to use the set FAQ / release notes to determine how any new functionality like new keywords work.
21:02:53 -!- Thelie1 has quit (Ping timeout: 255 seconds).
21:03:03 <esolangs> [[Trigational Pseudoomninumitype]] M https://esolangs.org/w/index.php?diff=118422&oldid=118421 * PythonshellDebugwindow * (+0) /* Examples */
21:05:21 <b_jonas> the numbers go higher than I can imagine then, if your construction really works
21:05:58 <ais523> even one iteration of the busy beaver function goes higher than anyone can imagine, if it's starting from a sufficiently large number (which could be quite small)
21:06:08 -!- __monty__ has quit (Quit: leaving).
21:07:27 <FortyTwoBB> so roughly the stack structure is some layers at the bottom, then three stages, then worldfire transitions for each red, each worldfire has a spite transition for each 2 life, then each of those has a martyr stage in between.
21:07:35 <b_jonas> yes, because the BB of a sufficiently large number will very likely be not determined by ZFC, and even in an esoteric model like this, a few exponentials of code size should be more than enough to reach that stage
21:07:40 <FortyTwoBB> and at the top of the stack is computation
21:08:41 <ais523> unless I made a mistake calculating the complexity class, we're definitely within three exponentials of a Turing machine and probably within two
21:08:42 <FortyTwoBB> isn't the bound down to like bb(700) to break out of ZFC?
21:09:00 <ais523> last time I looked it was a four-digit number, but I haven't been paying that much attention
21:09:51 <b_jonas> FortyTwo: not here, because we're using flooding waterfall, and with the matrix entries encoded in unary (eg. you need as many token copies as the sum of matrix entries), that's much less efficient than turing machines or anything like that
21:10:23 <FortyTwoBB> yeah so we need like BB(700^^^700)
21:10:51 <b_jonas> but I'm hoping that you can generate a large enough number with the parts of the deck outside of the waterfall thing to take off, and that there are enough creature types available
21:11:06 <ais523> b_jonas: fwiw it wouldn't surprise me if one exponential were possible, via using a fixed-size interpreter that decodes the program to interpret from a constant
21:11:40 <esolangs> [[Yoob]] M https://esolangs.org/w/index.php?diff=118423&oldid=42296 * PythonshellDebugwindow * (-6) /* External resources */ Update link
21:11:41 <ais523> there are definitely enough creature types available, the original waterfall model can be done in 7 counters, flooding waterfall model can be done in less than 100
21:12:05 <ais523> and the waterfall thing can take off with hardly any tokens because you don't need to be TC on the first iteration, just generate an output larger than the input
21:12:45 <ais523> and flooding waterfall model can do an exponentiation on incredibly limited resources, as long as you want to output the result rather than doing further computations with it
21:14:17 <b_jonas> you need just one creature type per clock, plus a constant overhead, right?
21:14:44 <ais523> for flooding waterfall model, it's one creature type per flooding waterclock
21:14:55 <b_jonas> good
21:14:59 <FortyTwoBB> yeah, so we can have 250+ clocks
21:15:19 <b_jonas> there are about 280 creature types in Magic these days
21:15:46 <b_jonas> (of course the reality is probably even bigger than what we can prove)
21:16:23 <FortyTwoBB> Its still on the order of BB(X)
21:17:10 <fellow> what is the best way to prove that a language is Turing Complete?
21:17:15 -!- FreeFull has quit.
21:17:21 <b_jonas> sorry, I mean the reality for how small code size you need to start to take off is likely lower than what we can prove is enough
21:18:01 <ais523> fellow: there's a range of languages designed for proving things TC; you have to either write a compiler from one of those into your language, or to write an interpreter for one of those in your language
21:18:07 <b_jonas> fellow: compile an existing simple computational model to it, such as two-stack machines, two-counter Minsky machines
21:18:23 <ais523> one of my big esolang projects has been trying to work out the best languages to use as the source
21:18:29 <fellow> ais523: but then how are those languages proven to be Turing Complete?
21:18:48 <ais523> fellow: normally with a chain of progressively simpler languages implementing each other
21:18:49 <APic> When You really want to prove something, You will find Ways.
21:19:02 <b_jonas> fellow: the same way, just with a few simulation layers until you get to whatever language you take as the definition of Turing-complete
21:19:14 <ais523> but, most of the chain has been proven already, so you only need to do the bit at the end of the chain
21:19:50 <b_jonas> what is relevant here in Minsky machines, which you prove Turing-complete by simulating a finite control multi-stack machine on one
21:19:54 <fellow> b_jonas: sounds circular to me. if Turing completeness is always defined in terms of another language, how can we ever be sure which language is turing complete. somewhere we need to break the cycle, no?
21:20:05 <ais523> for what it's worth, I currently believe that the easiest languages to compile from are either simple queue-based tarpits or simple counter-based tarpits, and which is simpler depends on the nature of data storage in your target language
21:20:12 <fellow> thanks. minsky machine. need to learn about it.
21:20:18 <ais523> fellow: it's rooted at Turing machines, which are Turing-complete by definition
21:20:22 <FortyTwoBB> it eventually comes back down to a turing maching
21:20:33 <b_jonas> fellow: no, you define Turing-completeness in terms of one specific language, and then you take a chain of simulations to that one language
21:21:00 <ais523> you could pick any other TC language as the example that defines the whole set, but Turing machines were picked early and the choice stuck (I guess it doesn't really matter)
21:21:55 <fellow> so Brainfuck without the two I/O commands is still turing complete if given infinite memory cells?
21:22:02 <b_jonas> different people can have different preferences of the definition, it doesn't matter as long as we can prove them equivalent using simulations
21:22:21 <b_jonas> fellow: yes, Brainfuck without IO on an infinite tape is Turing-complete
21:22:29 <ais523> fellow: for what it's worth, my current "simplest picks" for counter-based languages are https://esolangs.org/wiki/The_Waterfall_Model and https://esolangs.org/wiki/Brainpocalypse_II, and for queue-based languages are the various simplified tag machines, https://esolangs.org/wiki/Cyclic_tag_system or https://esolangs.org/wiki/Tag_system are probably the most commonly used there
21:22:50 <ais523> fellow: I/O isn't needed for Turing-completeness, the definition doesn't consider IO at all
21:22:55 <FortyTwoBB> the Church-Turing thesis showed the computational class all being equivalently powerful for computation/work/simulation/etc
21:23:02 <ais523> so we sometimes talk about, e.g., BF-completeness when we care about I/O working
21:23:53 <b_jonas> for the two Magic: the Gathering constructions, M:tG is simulating Flooding Waterfall, which is simualting The Waterfall Machine, which is simulating a Minsky machine, which is simulating a multi-stack machine
21:24:48 <ais523> b_jonas: it's simulating Flooding Waterfall Model, which is compiled to from The Waterfall Model, which is interpreting Spiral Rise, which is interpreting a tag system (and Turing machines can be compiled into tag systems)
21:24:51 <b_jonas> except that the Flooding Waterfall, Waterfall, and Minsky machine stages are strictly limited in how many clocks or counter they can have, because of the limit of 280 or so creature types
21:25:07 <ais523> the Spiral Rise interpreter is known to fit within the required number of creature types, which is the reason to do it that way
21:25:07 <b_jonas> oh, it goes through tag systems instead of Minsky machines?
21:25:11 <b_jonas> I see
21:25:28 <b_jonas> ok, what ais523 says then
21:26:04 <ais523> one weird observation I've had recently, which feels like it might be more than a coincidence, is that it's easiest to compile counter machines into counter machines and queue automata into queue automata (unsurprisingly), but also to interpret counter machines with queue automata and queue automata with counter machines
21:26:06 <FortyTwoBB> yeah 7 clocks is enough for a UTM in waterfall, so like 50 clocks is enough to simulate that in flooding
21:26:29 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:26:31 <ais523> 50 would be enough if you could start up with damage marked on the tokens
21:26:47 <ais523> in practice you need a few more because that isn't a valid startup state
21:28:06 <b_jonas> ais523: um, I don't understand. Minsky machines should be able to interpret multi-stack machines more directly than Minsky machines can interpret queue automata
21:28:08 <FortyTwoBB> yeah i dont think we can start predamaged
21:28:47 <ais523> FortyTwoBB: it's fine, there's already a construction to compute a predamaged state rather than starting in it
21:28:55 <ais523> it's just, that computation needs extra counters to work
21:29:08 <b_jonas> how do queue automata come into this if you start from counter machines (as opposed to if you start from M:tG or Waterfall)?
21:29:28 <ais523> b_jonas: so the basic idea is that a stack is encoded in counters using the digits of a number
21:29:54 <ais523> and a queue can be encoded the same way, you just need to know where the back of the queue is in order to push onto it (via addition)
21:30:35 <ais523> but if you don't track the end of the queue and instead just move the push position a set number of place values each time, the resulting language is still generally TC anyway
21:30:57 <b_jonas> ais523: yes, and Minsky machines can only access the lowest digits, like a stack; as opposed to eg. blindfolded arithmetic which could use a number as a deque of digits directly by using an extra counter that stores the unit of the highest digit
21:31:06 <ais523> (in fact it is possible to design simple TC queue automata where every cycle pushes a constant amount onto the queue, so the position of the back of the queue moves linearly)
21:31:20 <b_jonas> oh!
21:31:25 <ais523> b_jonas: they can only *read* the lowest digits
21:31:39 <ais523> writing at the most significant end is not particularly difficult, though
21:32:17 <b_jonas> so in Minsky machine you can have an unshift-push-pop queue (which can't shift) directly
21:32:23 <b_jonas> that's nice, I haven't realized that
21:32:25 <ais523> right
21:32:50 <ais523> this is basically the data structure I used in Esimpl, although I didn't realise at the time how well it mapped onto counter machines
21:33:11 <b_jonas> how many counters do you need for that to start to work? four?
21:33:27 <b_jonas> maybe three is enough
21:33:58 <ais523> two counters can implement any number of counters, so the answer to that depends on the extent to which you're allowed to cheat, which is hard to objectively define
21:34:07 <b_jonas> yeah
21:34:09 <FortyTwoBB> lol
21:35:30 <b_jonas> maybe I didn't realize this because I don't usually *want* to simulate queues instead of stacks
21:35:38 -!- tromp has joined.
21:35:43 <ais523> but, Spiral Rise can be implemented with (6 + 1 halt) Waterfall Model counters or (5 + 1 halt) tag system states
21:36:04 <ais523> which gets around the lack-of-objective-definition problem by charging for the control flow in addition to the data storage
21:36:21 <ais523> err, tag system symbols, not states
21:37:52 <b_jonas> and this matters because the translation from Waterfall to Flooding Waterfall is somewhat inefficient in the number of clocks, right?
21:38:38 <ais523> b_jonas: yes – it's linear but the constant factor is fairly bad
21:38:48 <FortyTwoBB> its like 7 clocks per clock plus some overhead
21:39:07 <b_jonas> ok
21:41:53 <ais523> I think it's 6 clocks per clock, + constant overhead, + startup overhead, but the startup overhead is linear in the number of clocks
21:42:04 <FortyTwoBB> at least with the way ais523 found to do it. its possible that theres a better way, but that's not super relevant
21:42:45 <ais523> there is almost certainly a better way, but not much incentive to find it at this point
21:43:32 <b_jonas> right
21:43:55 <FortyTwoBB> yeah this works comfortably and isn't massively more inefficient than necessary
21:44:41 <b_jonas> because as long as you fit in the 280 or so creature types, the actual number of creature types is unlikely to matter for the M:tG construction
21:44:49 <FortyTwoBB> exactly
21:47:42 <FortyTwoBB> if we were more limited and adding clocks to keep the necromancers alive and a clock or two to keep the output nice was starting to run into the limits of the namespace id be worried, but its nowhere close
21:50:06 <b_jonas> this is so theoretical, in real games I think three is the largest number of different tokens that I've produced, perhaps four if I forgot something
21:50:33 <FortyTwoBB> absolutely
21:51:35 <FortyTwoBB> this deck is unlikely to win any normal game of vintage
21:52:48 <FortyTwoBB> a single force of will or force of vigor or force of negation in the wrong spot kills us
21:53:03 <ais523> or not drawing the correct starting hand
21:53:38 <FortyTwoBB> the correct top like 19 cards
21:54:50 <FortyTwoBB> but I mean even in those 1/60! games we still force the opponent to draw, and nearly every deck has some 0 mana interaction on the draw.
21:54:54 <ais523> my competitive version of the deck (which just aims to do a computation, not to do anything with the output) is now only six sideboard slots away from a real Legacy deck (Legacy rather than Vintage so that there's less disruption to fight through), although that deck cares a lot about its sideboard space
21:55:21 <b_jonas> yes, it's ais's deck that tries to win games, but the part where the Flooding Waterfall program should fit in the 280 or so creature types applies just as much to ais's dekc
21:55:49 <ais523> FortyTwoBB: one of the top Vintage decks at the moment is mono-white initiative, I don't think it has zero mana interaction pre-board other than start-of-game actions
21:56:03 <ais523> so drawing it extra cards is not necessarily going to ruin your chances
21:56:26 <FortyTwoBB> solitude
21:56:46 <ais523> ah yes
21:58:07 <FortyTwoBB> really its just the non-blue shops decks that might just have a mental misstep preboard
21:58:29 <ais523> colorless shops doesn't even run that, apparently (I just checked a list of the top vintage decks)
21:59:00 <ais523> although it has mindbreak traps in the sideboard, in case it goes up against a turn 1 combo deck
21:59:35 <FortyTwoBB> and we don't care about mental misstep
21:59:52 <ais523> that said, the deck might potentially be able to combo through a solitude?
22:00:33 <FortyTwoBB> no solitude can interrupt computations
22:01:10 <ais523> but that makes the deck go cooperatively infinite, and the opponent in this situation presumably isn't cooperating
22:01:46 <FortyTwoBB> well then the exile our riftsweeper and fizzle us
22:02:41 <ais523> ah right, that's the chokepoint
22:03:32 <ais523> the infinite in my competitive deck is *really* janky, it involves using a set of copies of Fractured Identity to transfer a Riftsweeper token back and forth between the players, while there are relevant cards in exile
22:03:32 <FortyTwoBB> I think we can still kill them, but its not nearly as impressive
22:03:54 <ais523> but enough of them so that the opponent can't unexile enough to stop the combo
22:04:15 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:04:49 <FortyTwoBB> yeah trying to make SB cards do double duty as actually reasonable magic cards is tricky
22:07:02 <FortyTwoBB> anyway i g2g soon any thing else i can answer in the next few mins?
22:07:17 <ais523> I don't think there's any pressing issues remaining
22:07:29 <ais523> at least, not that I can think of right now
22:07:41 <ais523> it is fun watching the progress of the construction in the thread
22:07:58 <FortyTwoBB> ill still logcheck if you think of something
22:08:14 <b_jonas> ais523: you should still summarize or at least link your Netrunner construction from the wiki
22:08:28 <ais523> b_jonas: I did on my user page, didn't I?
22:08:33 <b_jonas> unless you are ok with me just reformatting the whole thing to wiki
22:08:42 <b_jonas> ah yes, your user page links to it
22:08:51 -!- FortyTwoBB has quit (Quit: Client closed).
22:08:55 <b_jonas> but even so, it should have a link from the main namespace too
22:09:10 <b_jonas> so that it's found in normal searches
2023-10-27
00:55:02 -!- myname has quit (Ping timeout: 258 seconds).
00:56:38 -!- myname has joined.
01:02:14 -!- Lord_of_Life_ has joined.
01:03:00 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
01:03:35 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:45:21 <esolangs> [[Sharp]] M https://esolangs.org/w/index.php?diff=118424&oldid=103545 * PythonshellDebugwindow * (+17) /* Concepts */ Nowiki
03:06:34 -!- ais523 has quit (Quit: quit).
05:00:21 -!- wpa has quit (Quit: Connection closed for inactivity).
05:03:01 <zzo38> I had mention before about "scalar monad" of category of matrices, which would be a identity matrix multiplied and divided by the nonzero scalar number (unless, it is a mistake), and that the Kleisli category is just as good as the original, and that it could also be a comonad just as good as the monad.
05:04:01 <zzo38> But, I guess that identity monad of any category is a kind of scalar monad, and that a scalar monad is also possible by multiplying any category by any abelian group (such as a group of only one element). Is it?
05:24:58 -!- b_jonas has quit (Ping timeout: 260 seconds).
05:25:38 <esolangs> [[Four]] M https://esolangs.org/w/index.php?diff=118425&oldid=77876 * PythonshellDebugwindow * (+118) Categories
05:26:39 -!- b_jonas has joined.
05:30:26 <zzo38> Sometimes a bold 2 is used in category theory to mean a category with two objects and the arrow only one way. But, I think it would be consistent with usual mathematical notation for non-bold numbers to denote discrete categories.
05:31:56 <zzo38> What is your opinion?
06:46:49 -!- tromp has joined.
08:05:06 -!- __monty__ has joined.
08:19:54 -!- Sgeo has quit (Read error: Connection reset by peer).
09:24:03 -!- arseniiv has joined.
10:55:24 <esolangs> [[3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118426&oldid=118367 * None1 * (+124) Added Python interpreter and implemented category tag
11:00:22 <esolangs> [[Drawfuck]] https://esolangs.org/w/index.php?diff=118427&oldid=105205 * None1 * (+50)
11:00:39 <esolangs> [[Drawfuck]] M https://esolangs.org/w/index.php?diff=118428&oldid=118427 * None1 * (+1)
11:02:01 <esolangs> [[3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118429&oldid=118426 * None1 * (+23) /* See also */
11:03:09 <esolangs> [[2 Bits, 1 Byte]] https://esolangs.org/w/index.php?diff=118430&oldid=118297 * None1 * (+58)
12:28:21 <esolangs> [[Drawfuck]] https://esolangs.org/w/index.php?diff=118431&oldid=118428 * None1 * (+214)
12:30:51 <esolangs> [[Drawfuck]] M https://esolangs.org/w/index.php?diff=118432&oldid=118431 * None1 * (-1)
12:31:45 <esolangs> [[Drawfuck]] M https://esolangs.org/w/index.php?diff=118433&oldid=118432 * None1 * (-2)
12:34:36 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118434&oldid=118377 * None1 * (+28) /* My Implementations */
12:46:13 -!- b_jonas has quit (Ping timeout: 255 seconds).
12:48:00 -!- b_jonas has joined.
13:50:37 <esolangs> [[Special:Log/newusers]] create * Huywall * New user account
14:28:52 -!- cpressey has joined.
14:37:48 <cpressey> zzo38: my opinion is that you could probably make it consistent, but I don't see that it gets you anything really interesting
14:38:16 <cpressey> 5+9=14 except 5, 9, and 14 are categories and + is some special operation that takes pairs of categories and yields another category
14:39:17 <cpressey> Other than forcing you to come up with the definition of + in this context that handles the extra structure
14:40:38 <cpressey> But then, I'm heavily biased away from category theory, so don't trust anything I say about it.
14:49:05 <cpressey> For that matter, don't trust anything I say about anything.
14:54:39 -!- Sgeo has joined.
14:58:13 <cpressey> I'm trying to get my brain to do something productive but I'm having no luck.
15:06:41 <tromp> there seems to be no decent statement of the halting problem for lambda calculus online....
15:08:27 <tromp> but several wrong one, that ask if there is a function that given argument x will produce true or false depending on whether x has a normal form
15:08:40 <int-e> try "weak normalization"
15:09:38 <int-e> (There's also solvability which is related and important for semantics (it characterizes non-bottom values) but quite different.)
15:10:32 <tromp> a decent statement would ask for a function that is given a *description* of a term, rather than just the term
15:10:46 <int-e> The "normalization" terminology is a bit overloaded though.
15:11:25 <int-e> tromp: How's that different as long as you don't do infinitary lambda calculus?
15:11:30 <cpressey> The untyped lambda calculus isn't even weakly normalizing
15:11:42 <cpressey> Some terms don't have a normal form
15:12:17 <tromp> if you're just given the term, then the function would have to be strict, and obviously can't yield true or false when given omega
15:12:49 <tromp> but given a description of omega, it could at least recognize that
15:13:01 <int-e> cpressey: Those notions have a term-level meaning too. A term can be weakly normalizing and if you use left-most outermost reduction then that will reach a normal form.
15:14:12 <tromp> e.g. here's a bad statement : https://boarders.github.io/posts/halting1.html
15:15:02 <int-e> Well I think omega is non-terminating, even though it kind of never makes any progress when reducing it.
15:15:05 <cpressey> "Halting problem" feels like "There is no effective algorithm to say whether or not a given term has a normal form"
15:15:29 <tromp> but you must be given a *description* of the term
15:15:52 <int-e> Oh.
15:16:12 <int-e> Sorry, I was focussed on defining halting.
15:16:21 <tromp> i noticed:)
15:16:29 <int-e> Sure, you need an encoding of terms to use them as inputs to something else.
15:16:46 <esolangs> [[User:PaxtonPenguin/Sandbox]] https://esolangs.org/w/index.php?diff=118435&oldid=118417 * PaxtonPenguin * (+16)
15:17:01 <tromp> but i couldn't find any such proper statement of the lambda calculus halting problem
15:17:11 <cpressey> Encoding TM's on TM tapes is old hat, encoding lambda terms in lambda terms is less well trodden
15:17:25 <int-e> Which is the kind of thing computability theory is usually very sketchy on, because the details are interchangeable.
15:17:51 <int-e> Whether you use BLC-like lists of bools, or an actual tree type... they can be transcoded.
15:18:53 <esolangs> [[User:PaxtonPenguin/Sandbox]] https://esolangs.org/w/index.php?diff=118436&oldid=118435 * PaxtonPenguin * (+74)
15:19:03 <int-e> And yeah that definition is bad because it foregoes the encoding step.
15:19:15 <esolangs> [[User:PaxtonPenguin/Sandbox]] https://esolangs.org/w/index.php?diff=118437&oldid=118436 * PaxtonPenguin * (+4)
15:20:04 <cpressey> I've seen attempts to add quoting to the lambda calculus, and thought that I'm sure you can also do that with Church-type encodings of some kind, so the quoting doesn't really add anything except convenience.
15:20:06 <int-e> . o O ( Maybe the last person who was precise about encodings was Gödel. ;-) )
15:20:41 <int-e> (I know that to be false but I think it makes a nice piece of shittalk)
15:20:57 <esolangs> [[User:PaxtonPenguin/Sandbox]] https://esolangs.org/w/index.php?diff=118438&oldid=118437 * PaxtonPenguin * (+80)
15:22:32 <esolangs> [[User:PaxtonPenguin/Sandbox]] https://esolangs.org/w/index.php?diff=118439&oldid=118438 * PaxtonPenguin * (+51)
15:22:45 <esolangs> [[User:PaxtonPenguin/Sandbox]] M https://esolangs.org/w/index.php?diff=118440&oldid=118439 * PaxtonPenguin * (+2)
15:23:03 <int-e> tromp: In any case, for you (and also me) BLC is the natural choice I think. You just have to decide whether to use bare lambda terms or the full convention with input.
15:23:44 <tromp> here's a proper proof of impossibility of halting probnlem in lambda calcu;us:
15:24:06 <tromp> Denote by "T" some encoding of lambda term T,
15:24:06 <tromp> and let decode be a corresponding decoder, i.e.
15:24:06 <tromp> decode "T" = T
15:24:06 <tromp> Suppose there exist a lambda term hasNF which,
15:24:06 <tromp> when applied to "T" for some lambda term T,
15:24:06 <tromp> results in True when T has a normal form,
15:24:07 <tromp> and in False when T has none.
15:24:07 <tromp> Let P = \p. hasNF (decode p p) Omega Id
15:24:08 <tromp> P "P" = hasNF (int "P" "P") Omega Id
15:24:08 <tromp> = hasNF ( P "P") Omega Id
15:24:08 <tromp> = Omega iff P "P" has a normal form
15:24:09 <tromp> Contradiction
15:25:02 <tromp> sorry for spamming:(
15:25:04 <int-e> . o O ( s/decode/uni/ )
15:25:32 <int-e> Or int, I guess.
15:25:41 <int-e> Ah no
15:26:51 <int-e> tromp: Per the previous discussion you should pass a description of P "P" to `hasNF`. So more of a hasNF (apply p (quote p))
15:28:30 <esolangs> [[User:PaxtonPenguin/ExtremelyLongNameThatNoOneWillGuess]] N https://esolangs.org/w/index.php?oldid=118441 * PaxtonPenguin * (+4) Created page with "Test"
15:28:49 <tromp> ah, right. thanks for noticing! this is subtle indeed
15:28:52 -!- razetime has joined.
15:35:10 <int-e> Hmm. Something like quote [] = "010110", quote (0:xs) = "01000010010110" ++ quote xs, quote (1:xs) = "010000100101110" ++ quote xs, and apply xs ys = "01" ++ xs ++ ys.
15:35:32 <int-e> BLC is too simple ;-)
15:36:20 <int-e> (The most likely mistake here is that I may have swapped the 0 and 1 in the input of quote)
15:37:08 <int-e> (and of course those two digits are bools)
15:39:09 <arseniiv> <cpressey> Other than forcing you to come up with the definition of + in this context that handles the extra structure => I think disjoint union suffices: objects(C + D) = objects(C) ⊔ objects(D); morphisms are copied as well. No new ones are added
15:40:06 <int-e> Err, and of course `apply` should be using "00" instead of "01". Tsk.
15:41:38 <arseniiv> such a + should ideally satisfy the coproduct definition if taken to a suitable category of categories (e. g. Cat, of all small categories). Probably works for 2-categories and so on, I don’t see anything that needs to be added in those cases
15:43:43 <tromp> so my proof should have these lines instead:
15:43:45 <tromp> Given "T", we can compute the encoding of T applied to "T", denoted "T "T" ".
15:43:51 <tromp> Let P "T" = hasNF "T "T" " Omega Id
15:46:39 <int-e> . o O ( ⌜T ⌜T⌝⌝ )
15:47:26 <cpressey> arseniiv: I'm slightly suspicious of this "disjoint union" of which you speak.  But I don't remember my reasons for that suspicion.  Anyway, what you say seems plausible.
15:47:35 <int-e> Sadly that looks ugly in the fixed font. But that notation can actually be nested :)
15:49:52 <arseniiv> zzo38: I think what I saw denoted as 0, 1, 2, 3, … somewhere was indeed discrete categories. Though one could easily see why ordinals as preorder categories can be useful to many people. This is essentially cardinal arithmetic vs. ordinal arithmetic, I suspect at 95%
15:51:27 <arseniiv> cpressey: I’d be interested to know if you remember what it was!
15:51:50 <arseniiv> btw I think disjoint union doesn’t have enough love in math popularization and even just in some math courses
15:52:30 <arseniiv> it’s always cartesian this cartesian that
15:53:04 <int-e> . o O ( Do they also give out cartesian hats? )
15:53:25 <arseniiv> also I embraced universal properties with all my heart when I finally started cracking them one after another
15:53:46 <cpressey> arseniiv: something about how algebraic data types are a luxury; you can do it all with pairs and Either; and Either could be replaced by Kuratowski pairs...?
15:55:27 <cpressey> Of course I guess disjoint union is disjoint union even if you do it with something like Kuratowski pairs
15:56:02 <arseniiv> cpressey: in lambda calculus, sure it all can be encoded, by Scott, some other guy or them jointly, I forget which way is which but it differs in what we recurse to
15:56:21 <arseniiv> I mean more generally, it has so much use in e. g. even examples of structures
15:57:17 <cpressey> Wikipedia is making me think there is no such thing as a Kuratowski pair now.  Have I got the name wrong or have I ASCII-ized the letters in it or something
15:57:58 <arseniiv> anecdote: I think I even saw disjoint union in disguise, encoded in its usual way via (0, x) and (1, x), with no calling it by its name. I guess that can be warranted if one doesn’t want to add distractions to the reader but still
15:58:16 <cpressey> Oh I was accidentally searching wiktionary.  OK then!
15:58:33 <arseniiv> cpressey: it should be. At first I didn’t remember about them but then I remembered it’s {{x}, {x, y}}
15:58:59 <arseniiv> initially I thought it somehow relates to λ heehee
16:02:39 <cpressey> I guess my suspicion was more about tags -- was trying to see if it's possible to escape that concept.  0 and 1 would still be tags.  Kuratowski pair isn't quite right, but it's close.  Something like {x} and {{x}}, with the union being {x, {x}}?  The "tag" is still there I guess, it's just represented by an extra level of nesting
16:06:26 -!- cpressey has quit (Quit: Client closed).
16:14:38 <arseniiv> cpressey: yeah, I don’t know any representation with no tags, that is if we define disjoint union by concrete implementation
16:15:04 <arseniiv> and don’t have any equivalent concept before that
16:15:55 <arseniiv> like Either and algebraic data types you mentioned
16:22:55 -!- sprout_ has joined.
16:23:42 <arseniiv> one can say implementation with tags is due to A + A ≅ 2 × A and similar equations. Though that requires union to be here because otherwise we can’t inject different operands of + into the same A on rhs not having disjoint union beforehand. So I guess that’s why type theories tend to have disjoint union as a primitive (or algebraic types or inductive types)
16:24:26 <arseniiv> because union as a primitive might not be ideal
16:26:32 -!- sprout has quit (Ping timeout: 258 seconds).
16:28:15 -!- sprout_ has changed nick to sprout.
16:28:50 <arseniiv> because union has universal property based on subtyping A <: B and not functions A → B, in a type system with no explicit subtyping involved, especially no user-definable one, it’s somewhat unhinged; that’s how I get it
16:29:18 <arseniiv> disjoint union has the same property but wrt A → B
16:29:46 <arseniiv> . o O ( set theory with subtyping )
16:29:59 <arseniiv> hm wait it’s the usual one probably
16:33:34 <esolangs> [[Wise]] https://esolangs.org/w/index.php?diff=118442&oldid=118330 * DivergentClouds * (+119) changed branching operators to only check <code>C</code> digits
16:52:16 <esolangs> [[Special:Log/newusers]] create * Philiquaz * New user account
16:57:00 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118443&oldid=118410 * Philiquaz * (+179)
16:57:15 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:57:33 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118444&oldid=118443 * Philiquaz * (-9)
17:09:20 -!- razetime has quit (Ping timeout: 255 seconds).
17:25:28 -!- tromp has joined.
17:40:59 -!- Wryl-o-the-wisp has quit.
17:41:17 -!- Wryl-o-the-wisp has joined.
18:36:37 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:39:18 <esolangs> [[A-SCP-M]] N https://esolangs.org/w/index.php?oldid=118445 * Philiquaz * (+6013) Created page with "'''A-SCP-M''' is an assembly language in the same vein as the SCP project. As a result, it must be contained to being an esoteric joke language, and must not under any circumstances actually be implemented or used. If you feel the vague urge to implement it, or you se
18:55:35 <b_jonas> “algebraic data types are a luxury; you can do it all with pairs and Either” => standard ML goes halfway there: you can define your own algebraic data types, that gives you a disjoint union, but each variant constructor can take only zero or one arguments, so you need tuples to make a product
18:56:11 <b_jonas> though I might be misremembering this
18:58:24 -!- tromp has joined.
19:13:24 <esolangs> [[A-SCP-M]] M https://esolangs.org/w/index.php?diff=118446&oldid=118445 * PythonshellDebugwindow * (+52) Categories
19:15:31 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=118447&oldid=118375 * PythonshellDebugwindow * (+14) /* A */ add
20:26:41 <arseniiv> b_jonas: yeah I saw that in code though haven’t read exactly ML docs/definitions. I think each constructor takes exactly one argument and you use `unit` (IIRC) in case there are effectively none, like Haskell’s ()
20:27:09 <arseniiv> having 0 or 1 looks unsystematic enough to be eschewed
20:27:17 <arseniiv> than having 1
20:32:04 <b_jonas> arseniiv: might be unsysthematic but no argument constructor is real, see the fieldnum type in view-source:http://math.bme.hu/~ambrus/pu/olvashato/aknakereso.sml for exmaple
20:32:54 <arseniiv> b_jonas: quirky. Then I don’t know how it happened to ML
20:33:57 <b_jonas> but of course that doesn't prove that there aren't curry-style multi-argument constructors too, even if I don't have them in my code
20:35:38 <arseniiv> though in all examples I have seen in articles and such, I never encountered that either
20:36:41 <arseniiv> it looks like a feature of ML languages but maybe some of them added syntax?
20:39:30 -!- arseniiv has quit (Quit: gone too far).
21:07:59 -!- __monty__ has quit (Quit: leaving).
21:36:01 -!- tromp has quit (Read error: Connection reset by peer).
22:54:30 -!- ais523 has joined.
2023-10-28
00:23:13 -!- ais523 has quit (Quit: sorry about my connection).
00:23:26 -!- ais523 has joined.
01:02:40 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
01:02:45 -!- Lord_of_Life_ has joined.
01:04:09 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:21:34 -!- razetime has joined.
02:43:40 -!- razetime has quit (Ping timeout: 255 seconds).
02:50:44 -!- razetime has joined.
04:01:46 -!- razetime has quit (Remote host closed the connection).
04:02:11 -!- razetime has joined.
05:27:58 <esolangs> [[Fetus]] M https://esolangs.org/w/index.php?diff=118448&oldid=116274 * PythonshellDebugwindow * (+9) Stub
06:48:20 -!- Hooloovoo has quit (Ping timeout: 255 seconds).
06:50:35 -!- Hooloovoo has joined.
06:51:04 -!- ais523 has quit (Quit: quit).
07:07:52 -!- tromp has joined.
09:03:05 -!- Hooloovoo has quit (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in).
09:09:13 -!- Hooloovoo has joined.
10:24:07 -!- Sgeo has quit (Read error: Connection reset by peer).
10:35:12 -!- razetime has quit (Remote host closed the connection).
10:35:37 -!- razetime has joined.
10:49:53 -!- arseniiv has joined.
13:09:22 -!- Thelie has joined.
13:19:47 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:36:41 -!- tromp has joined.
13:39:20 <esolangs> [[Special:Log/newusers]] create * Technical restrictions * New user account
13:45:27 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118449&oldid=118444 * Technical restrictions * (+412)
13:46:11 -!- Noisytoot has quit (Ping timeout: 260 seconds).
13:47:27 -!- cpressey has joined.
14:06:55 -!- Noisytoot has joined.
14:14:30 -!- Noisytoot has quit (Excess Flood).
14:33:51 -!- cpressey has quit (Ping timeout: 248 seconds).
14:48:44 -!- cpressey has joined.
14:50:25 <esolangs> [[Special:Log/newusers]] create * CodeSpoof * New user account
14:53:23 <cpressey> <arseniiv> btw I think disjoint union doesn’t have enough love in math popularization and even just in some math courses <--- I agree, fwiw: disjoint union is underrated.  My reservations about it aren't serious ones.
14:56:16 <cpressey> Some problem spaces seem to lead towards (AND, OR), others seem to have a better fit with (AND, XOR), but don't make me explain what I mean by that
14:56:47 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118450&oldid=118449 * CodeSpoof * (+178)
15:03:41 -!- Noisytoot has joined.
15:24:25 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
15:44:10 -!- cpressey has quit (Quit: Client closed).
16:13:05 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:23:51 -!- tromp has joined.
16:41:45 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:43:15 -!- Noisytoot has quit (Excess Flood).
16:46:16 -!- Thelie has quit (Remote host closed the connection).
16:46:34 -!- Noisytoot has joined.
16:57:16 -!- Noisytoot has quit (Ping timeout: 248 seconds).
17:01:43 -!- Noisytoot has joined.
17:07:41 -!- Noisytoot has quit (Excess Flood).
17:09:03 -!- Noisytoot has joined.
17:18:24 -!- tromp has joined.
17:27:50 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:46:06 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118451&oldid=118371 * PkmnQ * (+512) /* Longest running program */ new section
17:46:15 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118452&oldid=118451 * PkmnQ * (+1) /* Longest running program */
17:46:38 <esolangs> [[Talk:3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118453&oldid=118452 * PkmnQ * (+11) i should have used Show preview
18:09:27 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118454&oldid=118453 * PkmnQ * (+5197) /* Longest running program */ 73 instructions
18:09:56 -!- tromp has joined.
18:55:21 -!- ais523 has joined.
18:55:35 -!- Sgeo has joined.
19:00:48 <esolangs> [[Trigational Pseudoomninumitype]] https://esolangs.org/w/index.php?diff=118455&oldid=118422 * CreeperBomb * (+728)
19:01:57 <esolangs> [[4 bits, 8 bytes]] https://esolangs.org/w/index.php?diff=118456&oldid=118386 * Salpynx * (+3) /* Quine */ I hadn't realized space wasn't a valid character and the interpreter was silently ignoring it. This modification terminates (unlike the _ replacement)
19:02:24 -!- ais523 has quit (Remote host closed the connection).
19:03:37 -!- ais523 has joined.
19:08:21 -!- ais523 has quit (Client Quit).
19:08:35 -!- ais523 has joined.
19:17:02 <esolangs> [[AI-Generated Esolang]] M https://esolangs.org/w/index.php?diff=118457&oldid=111094 * CreeperBomb * (+17)
19:26:45 <arseniiv> <cpressey> but don't make me explain what I mean by that => I guess I feel in a way what you had in mind
19:28:14 <arseniiv> like even boolean algebras being semirings under (or, and) but also truly rings over (xor, and), and both structures are used
19:34:42 -!- arseniiv has quit (Quit: gone too far).
20:03:50 <esolangs> [[Talk:A-SCP-M]] N https://esolangs.org/w/index.php?oldid=118458 * CreeperBomb * (+435) Created page with "==Compiler== I made a compiler that takes in a program from the user and converts it into another language: https://xcreeperbombx.github.io/A-SCP-M%20compiler.html ~~~~"
20:33:47 -!- tromp has quit (Read error: Connection reset by peer).
21:13:04 -!- tromp has joined.
21:24:46 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:31:50 <esolangs> [[Too]] https://esolangs.org/w/index.php?diff=118459&oldid=107968 * Kaveh Yousefi * (+200) Added a hyperlink to my implementation of the Too programming language on GitHub and supplemented two page category tags.
21:40:53 <esolangs> [[Too]] https://esolangs.org/w/index.php?diff=118460&oldid=118459 * Kaveh Yousefi * (+691) Reformulated and reformatted the documentation and amended a few orthographic mistakes.
21:46:07 <esolangs> [[Too]] https://esolangs.org/w/index.php?diff=118461&oldid=118460 * Kaveh Yousefi * (+370) Introduced an examples section comprehending two initial members.
23:06:30 -!- ais523 has quit (Remote host closed the connection).
23:06:54 -!- ais523 has joined.
23:13:38 -!- simcop2387 has quit (Read error: Connection reset by peer).
23:13:38 -!- perlbot has quit (Read error: Connection reset by peer).
23:18:59 -!- perlbot has joined.
23:20:12 -!- simcop2387 has joined.
2023-10-29
00:31:40 <esolangs> [[BFBASIC]] M https://esolangs.org/w/index.php?diff=118462&oldid=112419 * PythonshellDebugwindow * (+9) Stub
01:01:03 <esolangs> [[Mirror-machine]] M https://esolangs.org/w/index.php?diff=118463&oldid=113051 * PythonshellDebugwindow * (+105) Fix pseudocode
01:03:49 -!- Lord_of_Life has quit (Ping timeout: 245 seconds).
01:05:53 -!- Lord_of_Life has joined.
01:13:30 -!- awewsomegamer has joined.
01:50:17 -!- awewsomegamer has quit (Quit: WeeChat 4.1.0).
02:06:21 <esolangs> [[Special:Log/newusers]] create * Wonkanese * New user account
02:10:27 -!- tromp has joined.
02:10:56 -!- tromp has quit (Client Quit).
02:39:23 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118464&oldid=118450 * Wonkanese * (+246) /* Introductions */
05:28:17 <zzo38> But categories can be, in addition to addition (which would be the disjoint union like you mentioned), there can also be multiplication, and exponentiation (X to the power of Y is the category of functors of Y to X and the natural transformations between them). I think if you use the discrete categories like natural numbers then these work like ordinary addition, multiplication, exponentiation, even if a non-discrete by a discrete cate
07:00:28 -!- tromp has joined.
07:00:43 -!- tromp has quit (Client Quit).
07:20:18 -!- tromp has joined.
07:52:21 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:00:17 -!- tromp has joined.
09:01:19 -!- tromp has quit (Read error: Connection reset by peer).
09:03:55 -!- tromp has joined.
09:26:09 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:27:15 -!- Thelie has joined.
09:33:29 -!- tromp has joined.
09:36:04 <esolangs> [[Talk:3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118465&oldid=118454 * PkmnQ * (+8) /* Longest running program */
10:01:30 -!- Sgeo has quit (Read error: Connection reset by peer).
11:14:19 -!- ais523 has quit (Quit: quit).
11:26:30 -!- __monty__ has joined.
12:06:32 -!- arseniiv has joined.
12:21:31 <esolangs> [[Special:Log/newusers]] create * NameGoesThere * New user account
12:23:33 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=118466&oldid=118464 * NameGoesThere * (+157) /* Introductions */
12:33:35 -!- Thelie has quit (Remote host closed the connection).
12:34:04 -!- tromp has quit (Read error: Connection reset by peer).
12:35:23 <esolangs> [[Talk:Carriage]] https://esolangs.org/w/index.php?diff=118467&oldid=46418 * Pro465 * (+298) /* Concatenativeness */ very late question
12:38:41 -!- tromp has joined.
12:55:54 -!- arseniiv has quit (Ping timeout: 245 seconds).
13:24:14 -!- arseniiv has joined.
13:26:50 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118468&oldid=118465 * None1 * (+88) /* Longest running program */
13:39:15 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118469&oldid=118468 * None1 * (+83) /* Longest running program */
13:42:18 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118470&oldid=118469 * None1 * (+124) /* Longest running program */
13:44:47 <esolangs> [[Talk:3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118471&oldid=118470 * None1 * (+1) /* Longest running program */
13:51:30 <esolangs> [[CFUCK]] https://esolangs.org/w/index.php?diff=118472&oldid=56948 * None1 * (+28)
13:53:32 <esolangs> [[B sharp]] https://esolangs.org/w/index.php?diff=118473&oldid=117919 * None1 * (+11)
14:00:10 -!- Noisytoot has quit (Excess Flood).
14:00:26 -!- Noisytoot has joined.
14:05:53 <esolangs> [[CFuck]] N https://esolangs.org/w/index.php?oldid=118474 * None1 * (+1289) Created page with "CFuck is, like its name, a C extension to [[brainfuck]]. It is invented by [[User:None1]]. ==Data structure== It also has a byte queue. ==Commands== All the original commands are the same, but there are extra commands: {| class="wikitable" |+ Extra commands |- ! Command !!
14:09:09 <esolangs> [[CFuck]] https://esolangs.org/w/index.php?diff=118475&oldid=118474 * None1 * (+420)
14:09:53 <esolangs> [[CFuck]] https://esolangs.org/w/index.php?diff=118476&oldid=118475 * None1 * (-3)
14:10:14 <esolangs> [[CFuck]] M https://esolangs.org/w/index.php?diff=118477&oldid=118476 * None1 * (+0)
14:10:45 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118478&oldid=118434 * None1 * (+47) /* My Esolangs */
14:11:21 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118479&oldid=118447 * None1 * (+12) /* C */
14:15:37 <esolangs> [[CFuck]] https://esolangs.org/w/index.php?diff=118480&oldid=118477 * None1 * (+171)
15:17:33 -!- arseniiv has quit (Ping timeout: 255 seconds).
15:59:00 -!- arseniiv has joined.
16:22:31 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:41:59 -!- tromp has joined.
18:08:12 <zzo38> (The notation for a functor category is already like that, anyways, I think.)
18:37:48 -!- Sgeo has joined.
18:38:12 -!- arseniiv has quit (Quit: gone too far).
19:23:59 <esolangs> [[Brainwang]] M https://esolangs.org/w/index.php?diff=118481&oldid=54954 * PythonshellDebugwindow * (+23) Category
19:36:19 -!- ais523 has joined.
19:56:08 -!- ais523 has quit (Remote host closed the connection).
19:57:22 -!- ais523 has joined.
20:14:05 <int-e> fungot: Who killed the dead end?
20:14:06 <fungot> int-e: with that, i will. my hon. and learned friend the minister for what he is doing.
20:14:36 <int-e> fungot: that was underwhelming, can you try again?
20:14:36 <fungot> int-e: of the data, and the right, deal, across kent, and the right, deal and no deal, will the minister work to overturn the will, respect the 62% who his counterparts in the eu.
20:14:56 <int-e> (much better)
20:15:26 <int-e> `"
20:15:29 <HackEso> 1/1:1262) <coca-cola> bite the wax tadpole \ 157) <ais523> fizzie: 50kB is quite a lot
21:05:31 -!- Europe2048 has joined.
21:05:49 <Europe2048> Hi everyone!
21:58:11 <esolangs> [[Cammy/Consistency]] N https://esolangs.org/w/index.php?oldid=118482 * Corbin * (+2599) Build out a basic notion of consistency for Cammy. (Part 1: prose)
22:08:21 <esolangs> [[User:Quito0567]] https://esolangs.org/w/index.php?diff=118483&oldid=118304 * Quito0567 * (+26)
22:13:07 -!- Europe2048 has quit (Quit: Client closed).
22:26:19 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:53:10 <esolangs> [[Cammy/Consistency]] https://esolangs.org/w/index.php?diff=118484&oldid=118482 * Corbin * (+2610) Part 2: The details. Some details have been left as exercises.
22:55:11 <esolangs> [[CFuck]] M https://esolangs.org/w/index.php?diff=118485&oldid=118480 * None1 * (+1) /* Message box */
22:55:45 <esolangs> [[Cammy/Consistency]] M https://esolangs.org/w/index.php?diff=118486&oldid=118484 * Corbin * (-53) Improve readability, maybe.
2023-10-30
01:04:32 -!- Lord_of_Life has quit (Ping timeout: 255 seconds).
01:04:34 -!- Lord_of_Life_ has joined.
01:05:56 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
01:27:31 <esolangs> [[User:ProfNinja]] https://esolangs.org/w/index.php?diff=118487&oldid=104449 * ProfNinja * (+37)
01:49:10 <esolangs> [[Blue Hens]] N https://esolangs.org/w/index.php?oldid=118488 * ProfNinja * (+7993) Blue Hens Language
01:50:23 <esolangs> [[Blue Hens]] https://esolangs.org/w/index.php?diff=118489&oldid=118488 * ProfNinja * (-34) /* The OPCODEs */
01:52:33 <esolangs> [[Blue Hens]] https://esolangs.org/w/index.php?diff=118490&oldid=118489 * ProfNinja * (-133) /* Classification */
01:53:14 <esolangs> [[Blue Hens]] https://esolangs.org/w/index.php?diff=118491&oldid=118490 * ProfNinja * (-32)
02:40:10 <esolangs> [[Special:Log/newusers]] create * Brodyfmaddox * New user account
02:45:48 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118492&oldid=118466 * Brodyfmaddox * (+167) /* Introductions */
02:47:11 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=118493&oldid=118492 * Brodyfmaddox * (+98) /* Introductions */
03:20:29 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118494&oldid=118479 * ProfNinja * (+16) /* B */
05:19:51 -!- razetime has joined.
06:09:07 -!- razetime has quit (Remote host closed the connection).
06:37:13 -!- tromp has joined.
07:07:31 -!- ais523 has quit (Quit: quit).
07:19:04 <esolangs> [[Talk:Whitespace]] https://esolangs.org/w/index.php?diff=118495&oldid=111183 * HaleyHalcyon * (+2080) visible whitespace
07:34:16 -!- Sgeo has quit (Read error: Connection reset by peer).
07:49:43 -!- razetime has joined.
08:16:39 <b_jonas> fungot, is a "weatherspoon" the propeller thing under a weathercock that spins to show how fast the wind is?
08:16:40 <fungot> b_jonas: my hon., and the other, and, noting the work to the cheaper. shifting the cost. it is not. that is the only way, of the brexit for which the hon. and learned friend the minister for what he is doing.
08:16:56 <b_jonas> hmm, I should have asked someone other than a politician for this
08:19:51 <esolangs> [[User:HaleyHalcyon]] https://esolangs.org/w/index.php?diff=118496&oldid=83181 * HaleyHalcyon * (+4526)
08:33:22 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:29:43 -!- razetime has quit (Ping timeout: 255 seconds).
09:31:28 -!- razetime has joined.
10:03:22 -!- razetime has quit (Remote host closed the connection).
10:03:47 -!- razetime has joined.
10:04:22 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118497&oldid=118471 * PkmnQ * (+12217)
10:08:36 <esolangs> [[Talk:3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118498&oldid=118497 * PkmnQ * (+1188) i have not learned
10:44:43 <esolangs> [[Talk:3 Bits, 3 Bytes]] https://esolangs.org/w/index.php?diff=118499&oldid=118498 * None1 * (+146)
10:45:00 <esolangs> [[Talk:3 Bits, 3 Bytes]] M https://esolangs.org/w/index.php?diff=118500&oldid=118499 * None1 * (+1) /* Longest running program */
10:57:35 -!- razetime has quit (Remote host closed the connection).
10:58:00 -!- razetime has joined.
11:40:54 <esolangs> [[User:None1/ToDo]] https://esolangs.org/w/index.php?diff=118501&oldid=117560 * None1 * (+63) /* Content */
11:41:12 <esolangs> [[User:None1/ToDo]] M https://esolangs.org/w/index.php?diff=118502&oldid=118501 * None1 * (+0) /* Content */
12:36:43 <esolangs> [[Talk:Whitespace]] https://esolangs.org/w/index.php?diff=118503&oldid=118495 * None1 * (+227) /* Question */ new section
13:04:22 -!- razetime has quit (Remote host closed the connection).
13:04:46 -!- razetime has joined.
13:12:39 -!- razetime has quit (Ping timeout: 240 seconds).
13:20:57 -!- razetime has joined.
13:33:24 <esolangs> [[User:PaxtonPenguin/Sandbox]] https://esolangs.org/w/index.php?diff=118504&oldid=118440 * PaxtonPenguin * (+62)
13:43:32 <esolangs> [[4est]] M https://esolangs.org/w/index.php?diff=118505&oldid=111089 * BoundedBeans * (+1) Added missing period to calculator
13:46:13 -!- razetime has quit (Remote host closed the connection).
13:46:38 -!- razetime has joined.
13:52:18 <esolangs> [[4est]] https://esolangs.org/w/index.php?diff=118506&oldid=118505 * BoundedBeans * (+842) Clarified some things, added compound ordinals where simple numbers are required
14:04:11 -!- razetime has quit (Ping timeout: 260 seconds).
14:17:21 <esolangs> [[]] M https://esolangs.org/w/index.php?diff=118507&oldid=117322 * BoundedBeans * (+5) Fixed vertical bar formatting problem for bitwise NOR
14:33:55 -!- Everything has quit (Ping timeout: 264 seconds).
14:34:37 -!- Everything has joined.
14:36:41 -!- razetime has joined.
14:51:05 -!- razetime has quit (Quit: Go back to your cringe 9 to 5. I'll be gaming.).
14:56:34 <esolangs> [[Special:Log/newusers]] create * Olie * New user account
15:03:36 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=118508&oldid=118493 * Olie * (+164) Meow~
15:03:45 <esolangs> [[///]] M https://esolangs.org/w/index.php?diff=118509&oldid=105549 * Olie * (+196) added a shorter Unary->decimal converter (i've not experimented much with this idea, it may be possible to shorten it even more
15:09:00 -!- tromp has joined.
15:17:14 <esolangs> [[Talk:Language list]] https://esolangs.org/w/index.php?diff=118510&oldid=76687 * EvyLah * (+153) /* How do I add an esolang? */ new section
15:17:53 <esolangs> [[User talk:EvyLah]] N https://esolangs.org/w/index.php?oldid=118511 * EvyLah * (+45) Created page with "== talk == make a subheading or something idk"
15:36:16 -!- __monty__ has quit (Quit: leaving).
15:42:59 <esolangs> [[Talk:Language list]] https://esolangs.org/w/index.php?diff=118512&oldid=118510 * Hakerh400 * (+279) /* How do I add an esolang? */
15:52:08 <esolangs> [[Talk:Whitespace]] https://esolangs.org/w/index.php?diff=118513&oldid=118503 * HaleyHalcyon * (+687) /* Question */
16:02:54 -!- __monty__ has joined.
16:04:54 -!- __monty__ has quit (Client Quit).
16:07:27 <esolangs> [[Danicb]] https://esolangs.org/w/index.php?diff=118514&oldid=109123 * Squidmanescape * (+297) /* Example Code */
16:07:39 <esolangs> [[Talk:Whitespace]] https://esolangs.org/w/index.php?diff=118515&oldid=118513 * HaleyHalcyon * (+1083) /* Question */
16:08:25 <esolangs> [[Danicb]] https://esolangs.org/w/index.php?diff=118516&oldid=118514 * Squidmanescape * (-70) /* Cat Program */
16:15:13 <esolangs> [[User:HaleyHalcyon]] https://esolangs.org/w/index.php?diff=118517&oldid=118496 * HaleyHalcyon * (+94) /* Commands */
16:23:17 <esolangs> [[User:HaleyHalcyon]] https://esolangs.org/w/index.php?diff=118518&oldid=118517 * HaleyHalcyon * (+356) /* Visible Whitespace (draft) */
16:42:58 -!- arseniiv has joined.
17:01:52 -!- tromp has quit (Read error: Connection reset by peer).
17:12:35 -!- tromp has joined.
17:31:13 <esolangs> [[User:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=118519&oldid=118418 * PaxtonPenguin * (+17)
17:31:48 <esolangs> [[Punktuation]] https://esolangs.org/w/index.php?diff=118520&oldid=118400 * PaxtonPenguin * (-6)
17:32:02 <esolangs> [[Punktuation]] M https://esolangs.org/w/index.php?diff=118521&oldid=118520 * PaxtonPenguin * (+6)
17:32:21 <esolangs> [[Punktuation]] https://esolangs.org/w/index.php?diff=118522&oldid=118521 * PaxtonPenguin * (-2)
17:32:36 <esolangs> [[Punktuation]] https://esolangs.org/w/index.php?diff=118523&oldid=118522 * PaxtonPenguin * (-2)
17:32:51 <esolangs> [[Punktuation]] https://esolangs.org/w/index.php?diff=118524&oldid=118523 * PaxtonPenguin * (+0)
17:38:19 <esolangs> [[Punktuation]] https://esolangs.org/w/index.php?diff=118525&oldid=118524 * PaxtonPenguin * (+169)
17:43:01 -!- __monty__ has joined.
17:44:09 <esolangs> [[Punktuation]] https://esolangs.org/w/index.php?diff=118526&oldid=118525 * PaxtonPenguin * (+344)
17:45:29 <esolangs> [[Punktuation]] M https://esolangs.org/w/index.php?diff=118527&oldid=118526 * PaxtonPenguin * (+42) Whats the 2d category
17:46:05 <esolangs> [[Punktuation]] M https://esolangs.org/w/index.php?diff=118528&oldid=118527 * PaxtonPenguin * (-30)
18:06:39 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:11:23 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=118529&oldid=117649 * Aadenboy * (+8)
18:11:36 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=118530&oldid=118529 * Aadenboy * (+4)
18:11:56 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=118531&oldid=118530 * Aadenboy * (-3)
18:13:55 -!- tromp has joined.
18:25:40 <esolangs> [[GangLang]] N https://esolangs.org/w/index.php?oldid=118532 * Wonkanese * (+3111) Created page with "'''GangLang''' is an [[esoteric programming language]] by Wonkanese, is a simple programming language in which the keywords are gang terms or gang related. ==Language overview== GangLang can be written and ran on https://wonkanese.github.io/GangLang/ GangLang is a
18:30:40 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118533&oldid=118494 * Wonkanese * (+15) /* G */
18:48:26 -!- chiselfuse has quit (Ping timeout: 256 seconds).
19:00:08 -!- river has quit (Quit: WeeChat 4.0.5).
19:00:32 -!- chiselfuse has joined.
19:01:28 -!- riv has joined.
19:01:36 -!- riv has changed nick to river.
19:25:44 -!- arseniiv has quit (Quit: gone too far).
21:41:15 <int-e> Hmm hmm. Another shapez puzzle mystery... https://int-e.eu/~bf3/tmp/shapez-jyyg.png (I can cheese this to solve the puzzle, but is there a solution that keeps producing the shape?)
21:43:19 <int-e> And unfortunately I've seen a few puzzles that I'm 99% sure only have a cheesy solution (where you buffer some intermediate products and then reconfigure the buildings to finish off the level) so I'm never sure...
21:47:09 <int-e> (This is only a problem once you're past the most popular "hard" puzzles... most, maybe all, of the easy and medium difficulty puzzles are fine.)
21:52:37 <esolangs> [[Pepp*erdine]] N https://esolangs.org/w/index.php?oldid=118534 * Brodyfmaddox * (+3794) Wrote Page
21:52:39 -!- __monty__ has quit (Quit: leaving).
21:54:43 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=118535&oldid=118533 * Brodyfmaddox * (+18) /* P */
22:01:33 <b_jonas> int-e: I don't undesrstand, how does that stacker building help at all, if its output goes right into an unmovable wall?
22:02:20 <int-e> b_jonas: it doesn't
22:08:00 <int-e> b_jonas: that's how far I got without cheesing. The cheese goes something like this: https://int-e.eu/~bf3/tmp/shapez-jyyg-cheese1.png (I had a trash can at the cutter before that) and then this: https://int-e.eu/~bf3/tmp/shapez-jyyg-cheese2.png
22:08:32 <int-e> (It turns out that three splitters hold enough items to finish a level.)
22:09:18 <int-e> And it's so unsatisfying to do that and never be sure whether there's a proper solution.
22:10:56 <int-e> (I *did* try to use two cutters (plus a rotator) instead of one but couldn't make it fit.)
22:33:44 -!- Sgeo has joined.
22:35:25 <esolangs> [[Special:Log/newusers]] create * MihaiEso * New user account
22:37:14 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=118536&oldid=118508 * MihaiEso * (+172)
22:41:45 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118537&oldid=118535 * MihaiEso * (+14)
22:54:39 <esolangs> [[Punktuation]] M https://esolangs.org/w/index.php?diff=118538&oldid=118528 * None1 * (+39)
23:12:12 -!- pikhq_ has joined.
23:14:41 -!- riv has joined.
23:14:41 -!- slavfox_ has joined.
23:15:23 -!- pikhq has quit (Ping timeout: 264 seconds).
23:15:23 -!- river has quit (Ping timeout: 264 seconds).
23:15:24 -!- slavfox has quit (Quit: ZNC 1.8.2 - https://znc.in).
23:15:26 -!- pikhq_ has changed nick to pikhq.
23:15:29 -!- slavfox_ has changed nick to slavfox.
2023-10-31
00:03:39 <esolangs> [[Brainfuck implementations]] M https://esolangs.org/w/index.php?diff=118539&oldid=116006 * Mayedl10 * (+137) /* Normal implementations */
00:25:25 <esolangs> [[!English]] N https://esolangs.org/w/index.php?oldid=118540 * MihaiEso * (+5199) Maked my own esolang based on English syntax!
00:25:54 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118541&oldid=118537 * MihaiEso * (+15)
00:26:34 <esolangs> [[!English]] https://esolangs.org/w/index.php?diff=118542&oldid=118540 * MihaiEso * (+13) /* Quine */ Oops, used code syntax for code.
00:27:07 <esolangs> [[!English]] https://esolangs.org/w/index.php?diff=118543&oldid=118542 * MihaiEso * (+13) /* Shell */ Still a bug in my brain, fixed, used the code syntax for code.
00:30:20 -!- ais523 has joined.
01:03:24 -!- Lord_of_Life has quit (Ping timeout: 245 seconds).
01:05:38 -!- Lord_of_Life has joined.
01:09:59 -!- ais523 has quit (Quit: quit).
03:39:48 -!- Hooloovoo has changed nick to Hoolooboo.
03:40:11 <esolangs> [[User:MihaiEso]] N https://esolangs.org/w/index.php?oldid=118544 * MihaiEso * (+422) Created page with "Hi! This is a userpage of me, Mihai Popa, age ~13! Hi! I really like esolangs, and I can create one! The esolang I created is called "!English" and available on this link: [[!English]] Is like ~English (Not English) and [[English]] in syntax, but it's like Engl
03:40:44 <esolangs> [[User talk:MihaiEso]] N https://esolangs.org/w/index.php?oldid=118545 * MihaiEso * (+93) Created page with "== Welcome! == Hi! This is my talk page! You can write on this section, or on a new section!"
03:42:53 <esolangs> [[User:MihaiEso/Sandbox]] N https://esolangs.org/w/index.php?oldid=118546 * MihaiEso * (+264) Created page with "This ''is'' a '''sandbox'''! You can have fun trying with edits on this page. Even the keylogger, written in Python, can capture ALL the keystrokes I pressed and hackers and even me (for useful text, like search queries and written text) can view what's c
05:30:24 <esolangs> [[Punktuation]] M https://esolangs.org/w/index.php?diff=118547&oldid=118538 * PythonshellDebugwindow * (+25) Category
06:22:43 -!- chiselfuse has quit (Read error: Connection reset by peer).
06:23:09 -!- chiselfuse has joined.
06:59:02 -!- Melvar has quit (Ping timeout: 255 seconds).
07:09:54 -!- leah2 has quit (Ping timeout: 258 seconds).
07:18:08 -!- chiselfuse has quit (Read error: Connection reset by peer).
07:18:23 -!- chiselfuse has joined.
08:04:38 -!- sprock has quit (Ping timeout: 272 seconds).
08:11:00 -!- sprock has joined.
08:14:53 -!- Sgeo has quit (Read error: Connection reset by peer).
08:40:30 -!- leah2 has joined.
09:06:02 -!- Hoolooboo has quit (Ping timeout: 255 seconds).
09:06:49 -!- Hooloovoo has joined.
09:41:14 -!- Koen has joined.
10:21:32 <esolangs> [[Talk:Whitespace]] https://esolangs.org/w/index.php?diff=118548&oldid=118515 * None1 * (+127) /* Question */
10:21:51 <esolangs> [[User:HaleyHalcyon]] https://esolangs.org/w/index.php?diff=118549&oldid=118518 * HaleyHalcyon * (+75) /* Commands */
11:20:18 <esolangs> [[^]] N https://esolangs.org/w/index.php?oldid=118550 * None1 * (+545) Created page with "^ is an esolang by [[User:None1]]. It is the smallest esolang that is impossible to solve the [[halting problem]]. ==Commands== The only command ^ performs an infinite loop if this program halts otherwise it does nothing. ==Uncomputability proof== If this esolang in computable
11:21:48 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=118551&oldid=118541 * None1 * (+8) /* Non-alphabetic */ Add new esolang
11:24:11 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118552&oldid=118478 * None1 * (+53) /* My Esolangs */
11:34:22 <esolangs> [[^]] M https://esolangs.org/w/index.php?diff=118553&oldid=118550 * None1 * (+10) /* Interpreter */
11:40:51 -!- __monty__ has joined.
12:26:21 <esolangs> [[Defined behvaior]] N https://esolangs.org/w/index.php?oldid=118554 * None1 * (+898) Created page with "'''Defined behavior''' is the opposite of [[Undefined behavior (language)]], and it is also inspired by [[Undefined behavior (language)]]. This esolang is invented by [[User:None1]]. The behavior in this esolang is defined, but determined by the implementation, t
12:28:35 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=118555&oldid=118349 * None1 * (+77) /* General languages */
12:28:54 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118556&oldid=118552 * None1 * (+77) /* My Esolangs */
12:29:41 <esolangs> [[Special:Log/move]] move * None1 * moved [[Defined behvaior]] to [[Defined behavior]]: typo
12:37:05 -!- Koen has quit (Remote host closed the connection).
13:09:17 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=118559&oldid=118556 * None1 * (+79) /* My Accounts */
13:14:20 -!- Koen has joined.
13:14:46 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:42:24 -!- Koen has quit (Remote host closed the connection).
13:43:48 -!- Koen has joined.
13:48:41 -!- Koen has quit (Ping timeout: 260 seconds).
14:06:27 -!- Koen has joined.
14:08:00 <esolangs> [[!English]] https://esolangs.org/w/index.php?diff=118560&oldid=118543 * MihaiEso * (-28) Oops, changed the command.
14:10:46 <esolangs> [[User:MihaiEso]] https://esolangs.org/w/index.php?diff=118561&oldid=118544 * MihaiEso * (-10) Fixed grammar.
14:12:54 <esolangs> [[English]] https://esolangs.org/w/index.php?diff=118562&oldid=116562 * MihaiEso * (+96) Added a line about not to be confusing with "!English", which also bases on English syntax.
14:27:51 -!- Koen has quit (Remote host closed the connection).
14:34:47 -!- arseniiv has joined.
15:09:26 -!- tromp has joined.
15:34:24 -!- wib_jonas has joined.
15:37:02 <wib_jonas> in HTML, does it have some specific meaning when an a tag has a rel attribute with no value, like <a href="https://example.com" rel> , or is this just some weird thing that Wordpress or some of its plugins emits?
15:37:20 <wib_jonas> I mean it's probably harmless, I just saw it by accident and find it weird
15:41:31 -!- tromp has quit (Read error: Connection reset by peer).
16:05:57 -!- Thelie has joined.
16:17:21 <esolangs> [[User:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=118563&oldid=118519 * PaxtonPenguin * (+87)
16:18:32 <esolangs> [[User talk:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=118564&oldid=118391 * PaxtonPenguin * (+7)
16:18:43 <esolangs> [[User talk:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=118565&oldid=118564 * PaxtonPenguin * (+1)
16:51:10 <esolangs> [[Pep & Chz]] N https://esolangs.org/w/index.php?oldid=118566 * PaxtonPenguin * (+273) Created page with "{{bf}} Pep & Chz is a brainflakes version that includes the names of my stuffed penguins {| class="wikitable" |+ |- ! Pep & Chz !! Brian |- | peep || + |- | chaz || - |- | rebeca || > |- | petey || < |- | peeper || [ |- | twins || ] |- | gery || . |- | cristal
16:53:14 <esolangs> [[Pep & Chz]] https://esolangs.org/w/index.php?diff=118567&oldid=118566 * PaxtonPenguin * (+59)
16:53:23 <Taneb> wib_jonas: I think I agree with your assessment here
16:53:41 <esolangs> [[Pep & Chz]] https://esolangs.org/w/index.php?diff=118568&oldid=118567 * PaxtonPenguin * (+0)
16:54:39 -!- Thelie has quit (Ping timeout: 240 seconds).
16:55:25 <esolangs> [[Punktuation]] https://esolangs.org/w/index.php?diff=118569&oldid=118547 * PaxtonPenguin * (+78)
17:00:31 <esolangs> [[User:PaxtonPenguin]] https://esolangs.org/w/index.php?diff=118570&oldid=118563 * PaxtonPenguin * (+15)
17:01:47 -!- Thelie has joined.
17:18:05 -!- Melvar has joined.
17:19:39 -!- Thelie has quit (Remote host closed the connection).
17:20:03 -!- FreeFull has joined.
17:21:53 -!- wib_jonas has quit (Quit: Client closed).
17:23:50 -!- tromp has joined.
17:35:33 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:44:31 <esolangs> [[Punktuation]] https://esolangs.org/w/index.php?diff=118571&oldid=118569 * PaxtonPenguin * (+128)
17:45:06 <esolangs> [[Punktuation]] M https://esolangs.org/w/index.php?diff=118572&oldid=118571 * PaxtonPenguin * (+1)
18:13:49 -!- ais523 has joined.
18:16:49 -!- ais523 has quit (Client Quit).
18:17:06 -!- ais523 has joined.
18:20:32 -!- tromp has joined.
19:30:32 <esolangs> [[GangLang]] M https://esolangs.org/w/index.php?diff=118573&oldid=118532 * PythonshellDebugwindow * (+208) Wikitext, categories
19:33:07 -!- arseniiv_ has joined.
19:33:54 <esolangs> [[English]] M https://esolangs.org/w/index.php?diff=118574&oldid=118562 * PythonshellDebugwindow * (+1)
19:34:04 -!- arseniiv_ has quit (Client Quit).
19:35:45 -!- SGautam has joined.
19:36:21 -!- arseniiv has quit (Ping timeout: 260 seconds).
19:40:15 <esolangs> [[GP]] N https://esolangs.org/w/index.php?oldid=118575 * Slendi * (+1481) Initial creation of the page
20:00:26 <esolangs> [[User:PaxtonPenguin/Temp]] N https://esolangs.org/w/index.php?oldid=118576 * PaxtonPenguin * (+208) Created page with "This is used for find and replace, for different things ([[[[[[[[[<)[[[[[[[[(]>),([[[[[[<)[[[[[(]>)],[[[[[[[,,[[[,(( [[[[[[[<)[[[[[[(]>)[[,]]]]]]]]]]]],)[[[[[[[[,]]]]]]]],[[[,]]]]]],]]]]]]]], ([,([[[[[[[[,"
20:02:17 <esolangs> [[Arraything]] https://esolangs.org/w/index.php?diff=118577&oldid=118395 * PaxtonPenguin * (+245)
21:55:14 -!- SGautam has quit (Quit: Connection closed for inactivity).
22:02:48 -!- Sgeo has joined.
22:04:19 <b_jonas> Taneb: I was wrong in one part though: the webpage isn't actually based on Wordpress
22:30:58 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:47:05 <esolangs> [[GangLang]] https://esolangs.org/w/index.php?diff=118578&oldid=118573 * Wonkanese * (+443)
23:02:07 <esolangs> [[Dead fish]] M https://esolangs.org/w/index.php?diff=118579&oldid=116898 * None1 * (+16) /* C++ */
23:13:48 <esolangs> [[Blue Hens]] M https://esolangs.org/w/index.php?diff=118580&oldid=118491 * PythonshellDebugwindow * (+27) /* Classification */ Category
23:39:13 -!- __monty__ has quit (Quit: leaving).
23:48:27 <esolangs> [[Special:Log/newusers]] create * H3h3h0h0 * New user account
23:52:28 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=118581&oldid=118536 * H3h3h0h0 * (+182) /* Introductions */
←2023-09 2023-10 2023-11→ ↑2023 ↑all