←2025-12 2026-01 ↑2026 ↑all
2026-01-01
00:00:22 <int-e> `learn The password of the month is obliteration oriented programming
00:00:32 <HackEso> Relearned 'password': The password of the month is obliteration oriented programming
00:00:36 <int-e> (aka wipe coding)
00:00:48 <ais523> int-e: are our monthly passwords in UTC?
00:01:01 <ais523> I guess 90 is an example of that style of programming
00:01:21 <int-e> ais523: yes, we agreed on UTC
00:01:27 <ais523> although it was conceived more a scavenging language than a deletion language (the deletions are how you do the scavenging)
00:01:41 -!- DOS_User_webchat has joined.
00:01:42 <int-e> FSVO "we"
00:05:53 <int-e> 90 is nicely subversive at least (malware adjacent)
00:09:22 -!- DOS_User_webchat has quit (Quit: Client closed).
00:17:29 <fizzie> Happy 2026 and all that.
00:17:40 <fizzie> (We just watched the London fireworks on BBC.)
00:19:40 <ais523> hmm, I've been thinking about trying to write topicality rules for the wiki, and I feel like the best rule is probably "pages that look like esolang description pages should try to accurately describe an actual language – rather than being joke or AI-generated pages made to look like one but without an actual esolang backing them"
00:20:28 <ais523> but I'm not sure how to deal with things like https://esolangs.org/wiki/Vague and https://esolangs.org/wiki/Vaguest where the description is the entire joke and there isn't an underlying language, *but* where the joke might actually be good enough to keep (unlike, e.g., translation-party languages)
00:20:51 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171845&oldid=171800 * Yoyolin0409 * (+501)
00:21:36 <korvo> I'm on-board. I think it's worth keeping in mind that we're not going to rules-lawyer everything in one go; we need to be iterative about this. For example, I'm genuinely unsure whether Buckets' recent page-creation spree refers to actual projects or whether they're backdating everything.
00:21:39 <ais523> in general I feel philosophically opposed to putting pages that inherently can't be edited to make them clearer or more accurate onto a wiki, so this is a contradiction that I'm not currently aware of how to fix
00:22:42 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171846&oldid=171845 * Yoyolin0409 * (+162)
00:23:00 <ais523> I feel like the correct approach is to document "X isn't an actual language, but has an amusing description page written up in the style of a language – see link" but that doesn't work for Vague
00:23:47 <ais523> the "lesser-known programming languages" are a much older example of this sort of thing (an esolang described by a joke description), although some of them were later made into actual languages that fit the description
00:27:44 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171847&oldid=171846 * Yoyolin0409 * (+269)
00:28:17 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171848&oldid=171847 * Yoyolin0409 * (+1) /* Instructions */
00:28:24 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171849&oldid=171848 * Yoyolin0409 * (+20) /* Hello world! */
00:28:44 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171850&oldid=171760 * Yoyolin0409 * (+10)
00:33:52 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171851&oldid=171849 * Yoyolin0409 * (+307)
00:34:01 <esolangs> [[Append]] N https://esolangs.org/w/index.php?oldid=171852 * HyperbolicireworksPen * (+1198) Created page with "Append is a esolang that works only by appending commands to itself ==How it Works== scripts in Append follow this format: id_1,"string_1":command_(1,1),command_(1,2),...,command_(1,n_1) id_2,"string_2":command_(2,1),command_(2,2),...,command_(2,n_2)
00:35:32 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171853&oldid=171851 * Yoyolin0409 * (+75)
00:40:33 <sorear> accounting for "this is a perfectly well defined language but only exists on paper for whatever reason" "this language cannot be implemented on account of violating Eddington's number" "non-computable language" "attempts to escape the CT thesis with a mode of computation that cannot be expressed as a language in the 'set of finite strings' sense"
00:46:39 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171854&oldid=171853 * Yoyolin0409 * (+303)
00:48:20 <esolangs> [[User:HyperbolicireworksPen]] https://esolangs.org/w/index.php?diff=171855&oldid=165596 * HyperbolicireworksPen * (+12)
00:52:19 <korvo> Yeah. Maybe we need to go in the other direction to capture what we want to target, like "lol everybody on Discord will find this funny" or "wow I am so random and silly" or "I am grate hacker, here is my grate hack".
00:55:16 <korvo> Not to be confused with "grate artist", the surrealist MS Paint artist.
00:55:34 <sorear> is there even a discord
00:56:25 <korvo> Three, in fact: https://esolangs.org/wiki/Esolang:Community_portal
00:56:28 <int-e> https://esolangs.org/wiki/Esolang:Community_portal says so and the flock dynamic in edits supports the notion
00:58:42 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=171856&oldid=171854 * Yoyolin0409 * (+903)
01:00:09 <int-e> . o O ( where is a `slowforeveryoneorjustforme` service when you need it ;-) )
01:07:12 <fizzie> https://zem.fi/tmp/qpserr.png -- so much traffic, so little purpose.
01:07:59 <int-e> ugh that error rate :-(
01:09:36 -!- ais523 has quit (Quit: quit).
01:09:46 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=171857&oldid=171441 * Yoyolin0409 * (+4106) /* Commands */
01:10:28 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=171858&oldid=171857 * Yoyolin0409 * (+1) /* Commands */
01:10:33 <fizzie> I've got an alert for average CPU load of >40% on the wikibox, and it's been firing essentially constantly since Dec 19.
01:10:34 -!- impomatic has quit (Quit: Client closed).
01:14:14 <esolangs> [[WUTWWITIPMPAW/Keyboard Area]] https://esolangs.org/w/index.php?diff=171859&oldid=171297 * Yoyolin0409 * (+8)
01:15:12 <esolangs> [[User talk:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171860&oldid=171743 * PrySigneToFry * (+304) /* Happy new year! */ new section
01:21:19 <esolangs> [[User talk:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171861&oldid=171860 * Yoyolin0409 * (+319) /* Happy new year! */
01:21:35 <esolangs> [[User talk:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171862&oldid=171861 * Yoyolin0409 * (-1) /* */
01:21:41 <esolangs> [[User talk:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171863&oldid=171862 * Yoyolin0409 * (+0) /* Happy new year! */
01:24:45 <esolangs> [[User talk:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171864&oldid=171863 * Yoyolin0409 * (+117) /* Happy new year! */
01:30:45 <esolangs> [[List of ideas]] https://esolangs.org/w/index.php?diff=171865&oldid=170388 * Yoyolin0409 * (+106) /* Ideas for Names */
01:44:09 <esolangs> [[WAFE]] N https://esolangs.org/w/index.php?oldid=171866 * Yoyolin0409 * (+776) Created page with "'''WAFE'''(Also known as WaterAetherFireEarth, WindAetherFireEarth, WWAFE, WEWFA) is an esolang by [[User:yoyolin0409]]. Its inspiration comes from the four elements (perhaps five if you add aether). Since we might not have enough elements, we added the Five Elements in
01:57:16 <esolangs> [[WAFE]] https://esolangs.org/w/index.php?diff=171867&oldid=171866 * Yoyolin0409 * (+430)
01:57:44 -!- impomatic has joined.
02:05:35 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171868&oldid=171850 * Yoyolin0409 * (+10)
02:26:06 <APic> Good Night
02:27:18 <esolangs> [[Python, but it received the worst translation.]] https://esolangs.org/w/index.php?diff=171869&oldid=171452 * Yoyolin0409 * (+796) /* List */
02:31:03 <esolangs> [[Python, but it received the worst translation.]] https://esolangs.org/w/index.php?diff=171870&oldid=171869 * Yoyolin0409 * (+66) /* List */
02:33:28 <esolangs> [[Python, but it received the worst translation.]] https://esolangs.org/w/index.php?diff=171871&oldid=171870 * Yoyolin0409 * (+17) /* Brainfuck Interpreter */
02:34:24 <esolangs> [[Python, but it received the worst translation.]] https://esolangs.org/w/index.php?diff=171872&oldid=171871 * Yoyolin0409 * (+5) /* Brainfuck Interpreter */
02:34:25 -!- impomatic has quit (Quit: Client closed).
02:36:48 <esolangs> [[Python, but it received the worst translation.]] https://esolangs.org/w/index.php?diff=171873&oldid=171872 * Yoyolin0409 * (+2)
02:44:05 <esolangs> [[Instructructinstructistructististuctistuctistuctuctistuctistuctisuctisuructistuctisurctisurctisurctisurcticticiciticitsurcticitststurcticitstucitstucrcticitstucritstucritucrit]] https://esolangs.org/w/index.php?diff=171874&oldid=147696 * Yoyolin0409 * (+115) /* examples */
02:46:07 <esolangs> [[OverDeathKill]] https://esolangs.org/w/index.php?diff=171875&oldid=166692 * Yoyolin0409 * (+38) /* OverDeathKill Commands (and their brainfuck equivalent) */
02:54:47 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=171876&oldid=170997 * Yoyolin0409 * (+2) /* Horribly translated variants */
03:12:03 <esolangs> [[Translated ]] N https://esolangs.org/w/index.php?oldid=171877 * Yoyolin0409 * (+522) Created page with "'''Translated '''is an esolang by [[User:yoyolin0409]]. Its inspiration is [[Translated ZhongWen]]. ==Command== Brainfuck operates on an array of memory [[cells|screen]], each initially set to zero. There is a [[pointer|cloth]], initially pointing to the first me
03:16:54 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171878&oldid=171877 * Yoyolin0409 * (+330)
03:20:01 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171879&oldid=171878 * Yoyolin0409 * (+89)
03:22:37 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171880&oldid=171879 * Yoyolin0409 * (+41)
03:29:16 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171881&oldid=171880 * Yoyolin0409 * (+346)
03:33:46 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171882&oldid=171881 * Yoyolin0409 * (+517)
03:34:01 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171883&oldid=171882 * Yoyolin0409 * (+4) /* Command */
03:37:30 -!- sprock has quit (Ping timeout: 244 seconds).
03:44:13 -!- sprock has joined.
03:49:13 <esolangs> [[Rickrolling]] https://esolangs.org/w/index.php?diff=171884&oldid=171398 * Yoyolin0409 * (+11)
03:51:15 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171885&oldid=171883 * Yoyolin0409 * (+1253)
04:01:43 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171886&oldid=171885 * Yoyolin0409 * (+842)
04:13:17 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171887&oldid=171886 * Yoyolin0409 * (+253)
04:13:35 -!- sprock has quit (Ping timeout: 240 seconds).
04:15:48 -!- sprock has joined.
04:34:39 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171888&oldid=171868 * Yoyolin0409 * (+23)
04:35:20 <esolangs> [[Translated ]] https://esolangs.org/w/index.php?diff=171889&oldid=171887 * Yoyolin0409 * (+9) /* Command */
04:49:33 <esolangs> [[Translated /None1]] N https://esolangs.org/w/index.php?oldid=171890 * Yoyolin0409 * (+538) Created page with "'''Translated /None1'''is an esolang by [[User:yoyolin0409]]. Its inspiration is [[Translated ZhongWen/None1]]. ==Command== "said SREC Start Output "plant surface" > Claim that a variable named "can" contains the value "1". It claims to have a variabl
04:57:39 <esolangs> [[Translated /None1]] https://esolangs.org/w/index.php?diff=171891&oldid=171890 * Yoyolin0409 * (+625)
05:42:28 <esolangs> [[2C]] https://esolangs.org/w/index.php?diff=171892&oldid=171631 * PkmnQ * (-1) Doesn't seem like an error to me
05:43:44 <esolangs> [[Category:2026]] N https://esolangs.org/w/index.php?oldid=171893 * PrySigneToFry * (+11) Created page with "{{yearcat}}"
06:15:43 <esolangs> [[First]] N https://esolangs.org/w/index.php?oldid=171894 * None1 * (+1320) Created page with "{{lang|a=User:None1}} It's the author's first esolang invented in the first day of 2026, thus the name. It's also the first esolang with a full specification invented in 2026. ==Memory== There's an integer set. Integers are unbounded. ==Commands== ''x'' and ''y'' are integ
06:16:11 <esolangs> [[First]] https://esolangs.org/w/index.php?diff=171895&oldid=171894 * None1 * (+8) /* Commands */
06:18:12 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=171896&oldid=171842 * None1 * (+12) /* F */
06:20:15 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=171897&oldid=170730 * None1 * (+48) /* My Esolangs */
06:21:02 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=171898&oldid=171897 * None1 * (-323)
06:22:47 <esolangs> [[First]] M https://esolangs.org/w/index.php?diff=171899&oldid=171895 * None1 * (+0)
06:37:17 <esolangs> [[Iterate]] https://esolangs.org/w/index.php?diff=171900&oldid=169901 * Aadenboy * (-4) /* Interpreter */ update link
06:37:22 <esolangs> [[Iterate/Compilation]] https://esolangs.org/w/index.php?diff=171901&oldid=168563 * Aadenboy * (+1) update link
06:40:54 <esolangs> [[Pietfood]] N https://esolangs.org/w/index.php?oldid=171902 * Yoyolin0409 * (+2787) Created page with "'''Pietfood''' is a programming language inspired by [[|<span style="color:#ff0000"></span><span style="color:gold"></span><span style="color:#00ff00"></span><span style="color:#0000ff"></span>]]. It is a text-based equivalent of Piet. ==Execution== The colors in
06:48:25 <esolangs> [[Talk:Iterate]] https://esolangs.org/w/index.php?diff=171903&oldid=157276 * Aadenboy * (+379) /* minor nitpick */ new section
06:56:35 <esolangs> [[Pietfood]] https://esolangs.org/w/index.php?diff=171904&oldid=171902 * Yoyolin0409 * (-211)
07:16:49 <esolangs> [[Pietfood]] https://esolangs.org/w/index.php?diff=171905&oldid=171904 * Yoyolin0409 * (-565)
07:18:41 <esolangs> [[Pietfood]] https://esolangs.org/w/index.php?diff=171906&oldid=171905 * Yoyolin0409 * (-35)
07:20:29 <esolangs> [[Pietfood]] https://esolangs.org/w/index.php?diff=171907&oldid=171906 * Yoyolin0409 * (-32)
07:21:48 <esolangs> [[Pietfood]] https://esolangs.org/w/index.php?diff=171908&oldid=171907 * Yoyolin0409 * (+11)
07:22:33 <esolangs> [[Pietfood]] https://esolangs.org/w/index.php?diff=171909&oldid=171908 * Yoyolin0409 * (-1)
07:24:48 <esolangs> [[Piet]] https://esolangs.org/w/index.php?diff=171910&oldid=161298 * Yoyolin0409 * (+15) /* See also */
07:25:11 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171911&oldid=171888 * Yoyolin0409 * (+14)
07:39:41 -!- Yayimhere has joined.
07:41:18 <esolangs> [[Impossible Script]] https://esolangs.org/w/index.php?diff=171912&oldid=121940 * Yoyolin0409 * (+60)
07:42:50 <esolangs> [[Impossible Script]] https://esolangs.org/w/index.php?diff=171913&oldid=171912 * Yoyolin0409 * (+66)
07:43:14 <esolangs> [[Impossible Script]] https://esolangs.org/w/index.php?diff=171914&oldid=171913 * Yoyolin0409 * (+4)
07:48:41 <esolangs> [[Smasnug ABrainFIsHCHIHqFRSI9efuck+-~B2D]] https://esolangs.org/w/index.php?diff=171915&oldid=171790 * Yoyolin0409 * (+1) /* ROT13_encoder */
08:02:06 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=171916&oldid=171449 * PrySigneToFry * (+207) /* Category:2026 */ new section
08:02:52 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=171917&oldid=171916 * PrySigneToFry * (+121) /* Category:2026 */
08:48:19 -!- Yayimhere has quit (Ping timeout: 272 seconds).
09:02:35 -!- Yayimhere has joined.
09:40:17 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171918&oldid=171911 * Yoyolin0409 * (+40)
09:43:44 <esolangs> [[Esolang Simply Created To Annoy People Who Dislike Scratch]] https://esolangs.org/w/index.php?diff=171919&oldid=171253 * Yoyolin0409 * (-89) broken i think
09:46:55 <esolangs> [[Uniode]] https://esolangs.org/w/index.php?diff=171920&oldid=170350 * Yoyolin0409 * (+67)
09:52:28 <esolangs> [[User made]] https://esolangs.org/w/index.php?diff=171921&oldid=163524 * Yoyolin0409 * (+24)
10:01:00 -!- impomatic has joined.
10:05:24 <esolangs> [[Unicode World]] N https://esolangs.org/w/index.php?oldid=171922 * Yoyolin0409 * (+992) Created page with "'''Unicode World''' is an esolang by [[User:yoyolin0409]]. Its inspiration came from......Unicode, what else could it be?<br> I cannot guarantee that all Unicode characters will be added to this page in my lifetime, but I can guarantee that all C0C1 characters
10:07:27 <esolangs> [[Pietfood]] https://esolangs.org/w/index.php?diff=171923&oldid=171909 * Yoyolin0409 * (+29)
10:07:47 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171924&oldid=171922 * Yoyolin0409 * (+23)
10:10:35 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171925&oldid=171924 * Yoyolin0409 * (+124)
10:14:28 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171926&oldid=171925 * Yoyolin0409 * (+156)
10:16:07 <esolangs> [[Pietfood]] https://esolangs.org/w/index.php?diff=171927&oldid=171923 * Yoyolin0409 * (+0)
10:28:04 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171928&oldid=171926 * Yoyolin0409 * (+71)
10:28:38 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171929&oldid=171928 * Yoyolin0409 * (+4)
10:28:57 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171930&oldid=171929 * Yoyolin0409 * (+4)
10:30:55 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171931&oldid=171930 * Yoyolin0409 * (+10) /* C0 Controls and Basic Latin (0000 to 0022) and related character */
10:31:59 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171932&oldid=171931 * Yoyolin0409 * (+29) /* C0 Controls and Basic Latin (0000 to 0022) and related character */
10:51:37 <esolangs> [[Kiosk]] N https://esolangs.org/w/index.php?oldid=171933 * Yayimhere2(school) * (+3238) Created page with "Kiosk (/kiosk/) is an esolang created by [[User:Yayimhere]], after wondering if both having <code>(x)</code>, be pushing, while also having <code>xyz...(F)</code> be application was possible in a single language. It works on a lambda calculus "framework", but u
10:52:16 <esolangs> [[User:Yayimhere]] https://esolangs.org/w/index.php?diff=171934&oldid=171810 * Yayimhere2(school) * (+93) /* esolangs */
11:00:31 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=171935&oldid=171932 * Yoyolin0409 * (+1310)
11:01:08 -!- impomatic has quit (Quit: Client closed).
11:07:18 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171936&oldid=171933 * Yayimhere2(school) * (+38) /* Commands */
11:08:18 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171937&oldid=171936 * Yayimhere2(school) * (+62) /* Commands */
11:09:07 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171938&oldid=171937 * Yayimhere2(school) * (+0) /* Commands */
11:25:59 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171939&oldid=171938 * Yayimhere2(school) * (-99) /* Execution */
11:27:50 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171940&oldid=171939 * Yayimhere2(school) * (-104) /* Commands */
11:28:21 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171941&oldid=171940 * Yayimhere2(school) * (+104) Undo revision [[Special:Diff/171940|171940]] by [[Special:Contributions/Yayimhere2(school)|Yayimhere2(school)]] ([[User talk:Yayimhere2(school)|talk]])
11:28:52 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171942&oldid=171941 * Yayimhere2(school) * (+99) Undo revision [[Special:Diff/171939|171939]] by [[Special:Contributions/Yayimhere2(school)|Yayimhere2(school)]] ([[User talk:Yayimhere2(school)|talk]])
11:28:59 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171943&oldid=171942 * Yayimhere2(school) * (+1) /* Memory */
11:39:23 <esolangs> [[Xx]] https://esolangs.org/w/index.php?diff=171944&oldid=166608 * Yayimhere2(school) * (-123) /* turing completeness proof */
11:44:06 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171945&oldid=171943 * Yayimhere2(school) * (+28) /* Commands */
11:45:40 -!- amby has joined.
11:51:11 <esolangs> [[Grocery List]] https://esolangs.org/w/index.php?diff=171946&oldid=104086 * Yoyolin0409 * (+391)
11:54:48 <esolangs> [[Grocery List]] https://esolangs.org/w/index.php?diff=171947&oldid=171946 * Yoyolin0409 * (+1) /* Hello, world! but no ", world!" */
11:58:40 -!- ais523 has joined.
12:05:13 <esolangs> [[Grocery List]] https://esolangs.org/w/index.php?diff=171948&oldid=171947 * Yoyolin0409 * (-391)
12:18:09 -!- atrapado_ has joined.
12:24:22 <esolangs> [[Food]] N https://esolangs.org/w/index.php?oldid=171949 * Yoyolin0409 * (+717) Created page with "'''Food''' is a list by [[User:yoyolin0409]]. List of all languages related to food. ==(== [[(HA)pple_waITING]](Is this even considered?)<br> [[(piggus)]] ==.== [[... Bottles of beer on the wall]] ==1== [[10D Deadfish 7 with Time Travel and a Multiverse]]<br> [[1Fish]](
12:26:15 -!- atrapado_ has quit (Ping timeout: 240 seconds).
12:32:39 <esolangs> [[Uiua]] https://esolangs.org/w/index.php?diff=171950&oldid=167473 * ColorfulGalaxy's CA discoveries * (+22) ----
12:40:46 -!- impomatic has joined.
12:44:39 <esolangs> [[Food]] https://esolangs.org/w/index.php?diff=171951&oldid=171949 * Yoyolin0409 * (+752)
12:56:56 <esolangs> [[Talk:Chicken you too beautiful]] N https://esolangs.org/w/index.php?oldid=171952 * Yoyolin0409 * (+138) Created page with "How did this esolang dont have ""?--~~~~"
13:02:35 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=171953&oldid=171917 * Ais523 * (+221) /* Category:2026 */ year categories are fine to create, although not too far in advance
13:05:29 <esolangs> [[Food]] https://esolangs.org/w/index.php?diff=171954&oldid=171951 * Yoyolin0409 * (+896) /* C */
13:13:41 <esolangs> [[Food]] https://esolangs.org/w/index.php?diff=171955&oldid=171954 * Ais523 * (-36) articles don't have ownership and are generally a communal project the name of an esolang's author is often placed near the start of an article to show who made the *esolang*, but that isn't necessarily the person who wrote the *article* but this list isn't an esolang
13:20:34 <esolangs> [[User:RaiseAfloppaFan3925/Sandbox]] M https://esolangs.org/w/index.php?diff=171956&oldid=170953 * RaiseAfloppaFan3925 * (+1798) /* Uiua page draft */ add list of categories from the real [[Uiua]] page + add some modifiers
13:28:04 <esolangs> [[Food]] https://esolangs.org/w/index.php?diff=171957&oldid=171955 * Yoyolin0409 * (+657) /* D */
13:28:25 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=171958&oldid=171918 * Yoyolin0409 * (+11) /* Not Esolang */
13:29:05 <esolangs> [[Translated /None1]] https://esolangs.org/w/index.php?diff=171959&oldid=171891 * Yoyolin0409 * (+27)
13:37:15 <APic> Hi
13:37:42 <Yayimhere> hi APic!
14:08:50 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171960&oldid=171945 * Yayimhere2(school) * (+34) /* Commands */
14:08:59 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171961&oldid=171960 * Yayimhere2(school) * (+7) /* Commands */
14:34:50 <esolangs> [[TVM&OBJECT]] N https://esolangs.org/w/index.php?oldid=171962 * * (+694) Created page with "'''TVM&OBJECT''' is an esolang made by [[User:]]. == Commands == * {{cd|TVM [X] ON [Y]?}} - If condition * {{cd|OBJECT CREATE [X] CONTAINING [Y]}} - Creates an object called X with contents Y. * {{cd|INCREASE [X] BY [Y]}} - Self explanatory * {{cd|DIVIDE [X] BY [Y]}} - Self
14:35:40 <esolangs> [[Gold]] N https://esolangs.org/w/index.php?oldid=171963 * Yoyolin0409 * (+1849) Created page with "'''Gold''' is an esolang by [[User:yoyolin0409]]. It referenced:[[Translated ORK/Mihai Again21]], [[Minecode]], [[TerraScript]], [[PRINTASKSWITCHINPUTCASEXGOTOACASEYGOTOBELSEGOTOC]], [[Translated /Mihai Again!]], [[Super Yellow]], [[UCHSHOPPLWANPAATILIA]], [[FlinnScrip
14:36:03 <esolangs> [[User:/esolangs]] https://esolangs.org/w/index.php?diff=171964&oldid=171629 * * (+44)
14:38:10 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=171965&oldid=171628 * * (+129) /* Turth-machine */
14:54:29 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171966&oldid=171963 * PrySigneToFry * (+664)
15:03:57 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171967&oldid=171966 * Yoyolin0409 * (+1075)
15:06:34 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171968&oldid=171967 * Yoyolin0409 * (-1471)
15:06:48 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171969&oldid=171968 * Yoyolin0409 * (-664) Undo revision [[Special:Diff/171966|171966]] by [[Special:Contributions/PrySigneToFry|PrySigneToFry]] ([[User talk:PrySigneToFry|talk]])
15:06:55 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171970&oldid=171969 * Yoyolin0409 * (+1470)
15:23:37 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171971&oldid=171970 * Yoyolin0409 * (+285)
15:24:07 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171972&oldid=171971 * Yoyolin0409 * (+0)
15:26:08 <esolangs> [[Minecode]] https://esolangs.org/w/index.php?diff=171973&oldid=110029 * Yoyolin0409 * (+9) /* Ores */
15:26:24 <esolangs> [[Minecode]] https://esolangs.org/w/index.php?diff=171974&oldid=171973 * Yoyolin0409 * (+1) /* Ores */
15:28:56 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171975&oldid=171972 * Yoyolin0409 * (+403) /* Hello, world! */
15:33:58 -!- Yayimhere has quit (Quit: Client closed).
15:38:32 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171976&oldid=171975 * Yoyolin0409 * (+2) /* Hello, world! */
15:39:44 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=171977&oldid=171976 * Yoyolin0409 * (+21) /* Hello, world! */
15:43:58 <esolangs> [[TVM&OBJECT]] https://esolangs.org/w/index.php?diff=171978&oldid=171962 * Yayimhere2(school) * (+9) quite stub, so I added {{stub}}. Hey, , if you're reading this, then please try and understand that languages on this wiki should (generally) be atleast formal enough that they could be implemented. And by formal I dont mean math formal, just... uknow.
15:54:18 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=171979&oldid=171674 * Splot-dev * (-38) changed link
16:07:43 <esolangs> [[Special:Log/newusers]] create * Zarcem * New user account
16:14:43 <esolangs> [[Backtick]] https://esolangs.org/w/index.php?diff=171980&oldid=171979 * Yayimhere2(school) * (-27) No proof of TC, and the loops cant be nested, I generally didnt see any construct that easily could construct TC-ness, so I deleted it, as to not imply its TC when it isnt proven
16:31:04 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=171981&oldid=171773 * Zarcem * (+142) Added my sentence that would allow me to create pages.
17:01:33 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=171982&oldid=171474 * NTMDev * (+393) /* Credits */
17:02:33 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=171983&oldid=171982 * NTMDev * (+14) /* DateTimeNow */
17:03:39 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=171984&oldid=171983 * NTMDev * (+158) /* Getting Started */
17:16:36 <esolangs> [[Backtick]] https://esolangs.org/w/index.php?diff=171985&oldid=171980 * Splot-dev * (+895)
17:22:52 <esolangs> [[Backtick]] https://esolangs.org/w/index.php?diff=171986&oldid=171985 * Splot-dev * (+78) changed docs links
17:25:47 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=171987&oldid=171986 * Splot-dev * (+374) Added external links section
17:26:19 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=171988&oldid=171987 * Splot-dev * (+4) added spacing
17:26:30 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=171989&oldid=171988 * Splot-dev * (-2) fixed spacing
17:26:47 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=171990&oldid=171989 * Splot-dev * (+9) added word
17:29:20 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=171991&oldid=171990 * Splot-dev * (+78) added to infobox
17:29:40 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=171992&oldid=171991 * Splot-dev * (-25)
17:30:13 <esolangs> [[Backtick]] https://esolangs.org/w/index.php?diff=171993&oldid=171992 * Splot-dev * (-2)
17:30:51 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=171994&oldid=171984 * NTMDev * (+201) /* Creating An Instance */
17:31:31 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=171995&oldid=171994 * NTMDev * (+74) /* PrimitiveWrapper (DEPRECATED) */
17:41:30 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171996&oldid=171961 * Yayimhere2(school) * (+1)
17:42:33 <esolangs> [[Kiosk]] https://esolangs.org/w/index.php?diff=171997&oldid=171996 * Yayimhere2(school) * (+4) /* Commands */
17:49:15 <esolangs> [[SGCC]] https://esolangs.org/w/index.php?diff=171998&oldid=170461 * Yayimhere2(school) * (-1)
17:49:17 <esolangs> [[Backtick]] https://esolangs.org/w/index.php?diff=171999&oldid=171993 * Splot-dev * (+351) added example and command separator documentation
18:00:11 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172000&oldid=171831 * Blashyrkh * (+2496) "Reverse input" sample program
18:11:28 <esolangs> [[LambdaWreck]] N https://esolangs.org/w/index.php?oldid=172001 * A() * (+1143) Created page with "==Syntax== *<code>func x =: </code> declare new function x *<code> lambda.(type) x: </code> declare new lambda function with type and input x * <code> pass: x </code> return x ==Programs== ===[[Hello World!]]=== This program outputs "Hello World" to the console func he
18:16:12 -!- impomatic has quit (Quit: Client closed).
18:20:52 -!- lynndotpy6093 has quit (Quit: bye bye).
18:21:58 -!- lynndotpy6093 has joined.
18:24:06 <esolangs> [[Special:Log/newusers]] create * &0 * New user account
18:24:09 <esolangs> [[LambdaWreck]] https://esolangs.org/w/index.php?diff=172002&oldid=172001 * A() * (+33)
18:30:28 <esolangs> [[User:A()]] https://esolangs.org/w/index.php?diff=172003&oldid=171694 * A() * (+17) /* Esolangs */
18:56:01 -!- ais523 has quit (Quit: quit).
18:57:40 <esolangs> [[Talk:Backtick]] N https://esolangs.org/w/index.php?oldid=172004 * Yayimhere2(school) * (+159) Created page with "Where is the proof of turing completeness? --~~~~"
19:01:45 <esolangs> [[LambdaWreck]] https://esolangs.org/w/index.php?diff=172005&oldid=172002 * Yayimhere2(school) * (+9) I added {{stub}}, its pretty underspeicifed, without describing the type system.
19:06:53 -!- impomatic has joined.
19:17:29 <esolangs> [[Free2Edit]] N https://esolangs.org/w/index.php?oldid=172006 * RikoMamaBala * (+2406) Created page with "Free2Edit is (technically) the first esolang that I made. It's kinda like a [[Brainfuck]] derivative, but more powerful. The reason I named it that is because I thought I could implement [[Free Esolang]] with this esolang, but I couldn't, so... I guess I could sa
19:22:41 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172007&oldid=172006 * RikoMamaBala * (+110)
19:22:45 -!- Sgeo has joined.
19:35:17 -!- Lord_of_Life_ has joined.
19:36:29 -!- Lord_of_Life has quit (Ping timeout: 250 seconds).
19:38:04 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
19:38:20 <esolangs> [[User:Blashyrkh/Crazy J]] M https://esolangs.org/w/index.php?diff=172008&oldid=172000 * Blashyrkh * (+185) Reminder to specify categories
19:41:23 <APic> ecu
19:41:25 <APic> -e
19:48:15 <korvo> Pac. Paz. {pacna}
20:15:53 -!- Everything has joined.
20:35:11 <esolangs> [[User talk:Yes]] https://esolangs.org/w/index.php?diff=172009&oldid=166865 * Frendoly * (+219)
20:42:45 <esolangs> [[User talk:RaiseAfloppaFan3925]] https://esolangs.org/w/index.php?diff=172010&oldid=171532 * Frendoly * (+235)
20:44:07 <esolangs> [[User talk:RaiseAfloppaFan3925]] https://esolangs.org/w/index.php?diff=172011&oldid=172010 * RaiseAfloppaFan3925 * (+278) /* hey fellow Vocaloid enthusiast */ what language?
21:00:41 <esolangs> [[MikuLang]] https://esolangs.org/w/index.php?diff=172012&oldid=170974 * Aadenboy * (+110) add categories
21:01:02 -!- impomatic has quit (Quit: Client closed).
21:57:23 <esolangs> [[Special:Log/newusers]] create * Scp-999 * New user account
22:06:05 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172013&oldid=171981 * Scp-999 * (+290) /* Introductions */
22:06:32 <esolangs> [[Free Esolang]] https://esolangs.org/w/index.php?diff=172014&oldid=167132 * * (+182) /* Additions */
22:09:23 <korvo> Note to mods: SCP-999 is a friendly orange slime classed as Safe and fairly well-liked by both readers and writers. This person's roleplay is likely *not* a prelude to vandalism.
22:11:03 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172015&oldid=172013 * &0 * (+230) signed the introductions
22:15:24 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=172016&oldid=171958 * Yoyolin0409 * (+20) /* Maybe It Can't Be Done */
22:15:30 <esolangs> [[Talk:Pietfood]] N https://esolangs.org/w/index.php?oldid=172017 * * (+762) Created page with "this is basically a pure copy of <span style="color:#ff0000"></span><span style="color:gold"></span><span style="color:#00ff00"></span><span style="color:#0000ff"></span> except the names of the colors were changed. <span style="background-color: green;">[[User:|<span sty
22:17:23 <esolangs> [[Talk:First]] N https://esolangs.org/w/index.php?oldid=172018 * * (+596) Created page with "missed opportunity to make this esolang the first esolang in 2026 <span style="background-color: green;">[[User:|<span style="color: white;">mario</span>]]</span><span style="background-color: yellow;">[[User talk:|<span style="color: black;">maker</span>]]</span><span style
22:25:28 <esolangs> [[Backtick]] https://esolangs.org/w/index.php?diff=172019&oldid=171999 * Ais523 * (+27) Undo revision [[Special:Diff/171980|171980]] by [[Special:Contributions/Yayimhere2(school)|Yayimhere2(school)]] ([[User talk:Yayimhere2(school)|talk]]) this is TC, you can easily implement a state machine + counters in it by using a variable as the instruction pointer and using
22:34:37 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=172020&oldid=171935 * Yoyolin0409 * (+618)
22:34:59 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172021&oldid=172019 * Ais523 * (-53) rm duplicate template argument
22:41:15 -!- Everything has quit (Quit: leaving).
22:48:37 <esolangs> [[Yourlang]] https://esolangs.org/w/index.php?diff=172022&oldid=148917 * Yoyolin0409 * (+93)
22:58:40 <esolangs> [[Sentence construction]] N https://esolangs.org/w/index.php?oldid=172023 * Yoyolin0409 * (+866) Created page with "'''Sentence construction''' is an esolang by [[User:Yoyolin0409]]. This is like a Python version of a sentence-making game. ==How to use?== First, take out your Python program: print("Hello, world!") Create a sentence using all the text and variable na
23:06:11 <esolangs> [[Sentence construction]] https://esolangs.org/w/index.php?diff=172024&oldid=172023 * Yoyolin0409 * (+483)
23:06:35 <esolangs> [[Sentence construction]] https://esolangs.org/w/index.php?diff=172025&oldid=172024 * Yoyolin0409 * (-1) /* Random number generation */
23:16:29 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172026&oldid=172008 * Blashyrkh * (+367) IJ expression for S combinator is found (at last). It simplifies many things
23:24:52 <int-e> ...why would init (systemd) be dumping core
23:26:46 <esolangs> [[Special:Log/newusers]] create * Argsinh * New user account
23:35:00 <int-e> Ah! Not much to worry about; it was me playing with namespaces, triggering an assertion. I'm no longer doing that so it's... fine-ish.
23:40:03 <esolangs> [[User:RaiseAfloppaFan3925/Sandbox]] M https://esolangs.org/w/index.php?diff=172027&oldid=171956 * RaiseAfloppaFan3925 * (+4471) add my new esolang, snowball
23:52:15 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172028&oldid=172026 * Blashyrkh * (+31) /* Some common combinators in IJ basis */ Shorter version of increment expression using S combinator
2026-01-02
00:16:40 <esolangs> [[Movie]] M https://esolangs.org/w/index.php?diff=172029&oldid=128385 * * (-5) Changed redirect target from [[Code-Tree]] to [[Kava]]
00:38:46 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
01:41:17 <esolangs> [[User:RaiseAfloppaFan3925/Sandbox]] M https://esolangs.org/w/index.php?diff=172030&oldid=172027 * RaiseAfloppaFan3925 * (+1934) /* Snowball */ fix pattern matching example + add data types
01:51:06 <esolangs> [[User:RaiseAfloppaFan3925/Sandbox]] M https://esolangs.org/w/index.php?diff=172031&oldid=172030 * RaiseAfloppaFan3925 * (+7) rename to hailstone
01:59:18 <esolangs> [[Hailstone]] N https://esolangs.org/w/index.php?oldid=172032 * RaiseAfloppaFan3925 * (+6644) move from my sandbox to its own page
02:00:01 <esolangs> [[;x]] https://esolangs.org/w/index.php?diff=172033&oldid=171178 * A() * (+136) /* made my garbage make more sense */
02:02:48 -!- scoofy_ has joined.
02:02:55 <esolangs> [[Talk:;x]] https://esolangs.org/w/index.php?diff=172034&oldid=171182 * A() * (+253)
02:04:06 <esolangs> [[User:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172035&oldid=171722 * RaiseAfloppaFan3925 * (+208) add [[Hailstone]] and update page size rankings of IA562
02:22:28 <esolangs> [[LambdaWreck]] https://esolangs.org/w/index.php?diff=172036&oldid=172005 * A() * (+132)
02:30:56 <esolangs> [[Talk:Boo!]] https://esolangs.org/w/index.php?diff=172037&oldid=164338 * A() * (+79) /* Interpreter */
02:32:31 <esolangs> [[SETANDCOUNT]] https://esolangs.org/w/index.php?diff=172038&oldid=171619 * Cycwin * (-36) Undo revision [[Special:Diff/171619|171619]] by [[Special:Contributions/I am islptng|I am islptng]] ([[User talk:I am islptng|talk]])
02:32:57 <esolangs> [[SETANDCOUNT]] https://esolangs.org/w/index.php?diff=172039&oldid=172038 * Cycwin * (+240) Undo revision [[Special:Diff/171552|171552]] by [[Special:Contributions/I am islptng|I am islptng]] ([[User talk:I am islptng|talk]])
02:34:32 <esolangs> [[SETANDCOUNT]] M https://esolangs.org/w/index.php?diff=172040&oldid=172039 * Cycwin * (-22) That made me so angry and sad
02:38:53 <esolangs> [[Talk:SETANDCOUNT]] https://esolangs.org/w/index.php?diff=172041&oldid=157920 * Cycwin * (+33)
03:06:28 -!- impomatic has joined.
03:13:07 <esolangs> [[Hailstone]] M https://esolangs.org/w/index.php?diff=172042&oldid=172032 * RaiseAfloppaFan3925 * (+2814) add ffi and arrays
03:15:35 <esolangs> [[User:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172043&oldid=172035 * RaiseAfloppaFan3925 * (+6) /* largest esolang pages (of my esolangs) that I made */ move [[Hailstone]] up
03:24:31 <esolangs> [[User:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172044&oldid=172043 * RaiseAfloppaFan3925 * (+0) /* largest esolang pages (of my esolangs) that I made */ wrong number of bytes
03:30:39 -!- impomatic has quit (Quit: Client closed).
03:45:19 <esolangs> [[Gur yvsr]] https://esolangs.org/w/index.php?diff=172045&oldid=170465 * Placeholding * (+69) rust implementation added
03:48:30 -!- scoofy__ has joined.
03:51:34 -!- scoofy_ has quit (Ping timeout: 246 seconds).
03:53:50 <esolangs> [[Gur yvsr]] https://esolangs.org/w/index.php?diff=172046&oldid=172045 * Placeholding * (-57)
04:45:56 <esolangs> [[Talk:First]] https://esolangs.org/w/index.php?diff=172047&oldid=172018 * None1 * (+457)
05:07:25 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=172048&oldid=171595 * Aadenboy * (+239) link to other wikis
05:44:52 <esolangs> [[SETANDCOUNT]] https://esolangs.org/w/index.php?diff=172049&oldid=172040 * I am islptng * (+111)
05:48:25 <esolangs> [[SetIncrementor]] https://esolangs.org/w/index.php?diff=172050&oldid=171618 * I am islptng * (-373)
07:47:49 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172051&oldid=172028 * Blashyrkh * (+86) /* Some common combinators in IJ basis */ H combinator
07:48:05 <esolangs> [[User:UnavgAustralian]] N https://esolangs.org/w/index.php?oldid=172052 * UnavgAustralian * (+153) Created page with "I'm UnavgAustralian. I am a programmer and worldbuilder who is also interested in esolangs. =Esolangs= I currently have only made one esolang, [[Plea]]"
08:21:16 -!- Sgeo has quit (Read error: Connection reset by peer).
09:23:11 <esolangs> [[;x]] https://esolangs.org/w/index.php?diff=172053&oldid=172033 * Yayimhere2(school) * (+52) /* Commands */ based on what ive heard, I rewroe
09:24:32 <esolangs> [[Talk:;x]] https://esolangs.org/w/index.php?diff=172054&oldid=172034 * Yayimhere2(school) * (+210)
09:36:32 <esolangs> [[Needle]] https://esolangs.org/w/index.php?diff=172055&oldid=169598 * ChuckEsoteric08 * (+15) /* Infinite Minsky machine */
09:40:20 <esolangs> [[Gold]] https://esolangs.org/w/index.php?diff=172056&oldid=171977 * PrySigneToFry * (+83)
09:57:35 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=172057&oldid=172016 * Yoyolin0409 * (+27)
10:01:25 <esolangs> [[Sentence construction]] https://esolangs.org/w/index.php?diff=172058&oldid=172025 * Yoyolin0409 * (+141)
10:05:29 -!- tromp has joined.
10:06:49 <esolangs> [[Needle]] https://esolangs.org/w/index.php?diff=172059&oldid=172055 * Yayimhere2(school) * (-13) /* Computational class */ past tense -> current(?) tense
10:12:47 <esolangs> [[Special:Log/newusers]] create * Athen blah blah blah * New user account
10:13:19 <esolangs> [[Sentence construction]] https://esolangs.org/w/index.php?diff=172060&oldid=172058 * Yoyolin0409 * (+4) /* Random number generator */
10:15:52 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172061&oldid=172015 * Athen blah blah blah * (+130)
10:23:09 <esolangs> [[Sentence construction]] https://esolangs.org/w/index.php?diff=172062&oldid=172060 * Yoyolin0409 * (+17) /* Random number generator */
10:24:26 <esolangs> [[Sentence construction]] https://esolangs.org/w/index.php?diff=172063&oldid=172062 * Yoyolin0409 * (+23) /* Random number generator */
10:42:06 <esolangs> [[Free]] https://esolangs.org/w/index.php?diff=172064&oldid=163628 * Yoyolin0409 * (+20) /* Output "A" */
10:43:17 <esolangs> [[Food]] https://esolangs.org/w/index.php?diff=172065&oldid=171957 * Yoyolin0409 * (+395) /* E */
11:02:50 <esolangs> [[PlainCore]] N https://esolangs.org/w/index.php?oldid=172066 * Yoyolin0409 * (+2146) Created page with "'''PlainCore''' is an esolang by [[User:yoyolin0409]] and ChatGPT. Its aim is to solve as many problems as possible with as few instructions and golf as possible. There are only 12 instructions in total. ==Instructions== set <name> <value> Create a variable named
11:12:55 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=172067&oldid=172057 * Yoyolin0409 * (+15)
11:23:02 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172068&oldid=172066 * Yoyolin0409 * (+892)
11:23:14 <esolangs> [[Plea]] N https://esolangs.org/w/index.php?oldid=172069 * UnavgAustralian * (+6305) Created page with "Plea is a high-level esoteric programming language created by [[User:UnavgAustralian]] on the 3rd of December 2025. It is named due to the fact that you have to beg the program to run. =Syntax= ==Beg== Every Plea program must have its first line be beg "enter be
11:28:50 <esolangs> [[Plea]] M https://esolangs.org/w/index.php?diff=172070&oldid=172069 * UnavgAustralian * (-9)
11:30:39 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172071&oldid=172068 * Yoyolin0409 * (-12) /* 99 bottles of beer */
11:38:14 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=172072&oldid=171896 * UnavgAustralian * (+11)
11:40:32 -!- Yayimhere has joined.
11:41:00 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172073&oldid=172071 * Yoyolin0409 * (+97)
11:53:51 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172074&oldid=172051 * Blashyrkh * (+110) B3 combinator. Quite promising for abstraction elimination, can move rightmost variable two levels up
12:44:07 -!- Yayimhere has quit (Quit: Client closed).
12:51:42 <APic> Hi
13:38:10 <esolangs> [[Hailstone]] M https://esolangs.org/w/index.php?diff=172075&oldid=172042 * RaiseAfloppaFan3925 * (+9) /* "Nullable" tri-states */ no null, only nullable tri-states
13:57:50 -!- impomatic has joined.
14:12:58 -!- Guest29 has joined.
14:13:39 -!- Guest29 has quit (Client Quit).
14:38:36 -!- Sgeo has joined.
14:41:39 -!- Yayimhere has joined.
14:41:48 -!- amby has joined.
15:33:30 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:39:56 <esolangs> [[Bleph!]] https://esolangs.org/w/index.php?diff=172076&oldid=171696 * Kaveh Yousefi * (+0) Rectified the statement that Bleph! constitutes a queue-based programming language to the actual stack-based foundation.
15:55:03 <esolangs> [[Bleph!]] https://esolangs.org/w/index.php?diff=172077&oldid=172076 * Yayimhere2(school) * (-35) /* Interpreter */ Defined not a brainfuck derivative
16:11:26 -!- tromp has joined.
16:19:27 -!- Yayimhere has quit (Ping timeout: 272 seconds).
16:37:58 -!- lynndotpy6093 has quit (Quit: bye bye).
16:39:02 -!- lynndotpy6093 has joined.
17:14:59 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172078&oldid=172021 * Splot-dev * (-176) Removed GitBook docs link because I (splot.dev, the creator of Backtick) stopped updating it for Backtick
17:24:48 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:44:24 -!- tromp has joined.
18:28:45 <esolangs> [[Hello world program in esoteric languages (D-G)]] https://esolangs.org/w/index.php?diff=172079&oldid=171586 * RikoMamaBala * (+64)
18:44:34 -!- SGautam has joined.
18:49:17 <esolangs> [[Hailstone]] https://esolangs.org/w/index.php?diff=172080&oldid=172075 * RaiseAfloppaFan3925 * (+2504)
18:50:41 <esolangs> [[User:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172081&oldid=172044 * RaiseAfloppaFan3925 * (+1) /* largest esolang pages (of my esolangs) that I made */
18:57:04 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:04:54 -!- impomatic has quit (Quit: Client closed).
19:15:43 -!- impomatic has joined.
19:21:23 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=172082&oldid=169948 * RikoMamaBala * (+46)
19:22:51 -!- tromp has joined.
19:23:58 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=172083&oldid=171965 * RikoMamaBala * (+32)
19:24:01 <esolangs> [[Talk:;x]] https://esolangs.org/w/index.php?diff=172084&oldid=172054 * A() * (+166) /* /* Exaplaination of loop */ */ new section
19:29:09 <esolangs> [[Talk:;x]] https://esolangs.org/w/index.php?diff=172085&oldid=172084 * A() * (+34)
19:29:36 <esolangs> [[Talk:;x]] https://esolangs.org/w/index.php?diff=172086&oldid=172085 * A() * (-6) /* /* Exaplaination of loop */ */
19:35:31 -!- Lord_of_Life_ has joined.
19:36:15 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
19:36:48 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
19:44:28 <APic> Good Night
19:49:15 -!- scoofy__ has quit (Ping timeout: 240 seconds).
20:24:46 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172087&oldid=171827 * A() * (+148)
20:29:24 <esolangs> [[User:A()]] https://esolangs.org/w/index.php?diff=172088&oldid=172003 * A() * (+147)
20:32:57 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172089&oldid=172087 * Yayimhere2(school) * (+263) /* Some Theories About Syntax User:A() */
20:41:50 <esolangs> [[User:RikoMamaBala]] https://esolangs.org/w/index.php?diff=172090&oldid=170565 * RikoMamaBala * (+141)
20:42:54 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172091&oldid=172007 * RikoMamaBala * (+45)
20:45:58 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172092&oldid=172089 * A() * (+644)
20:46:48 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172093&oldid=172092 * A() * (+11)
20:47:51 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172094&oldid=172093 * A() * (+2)
20:48:59 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172095&oldid=172094 * A() * (+6)
21:12:14 -!- impomatic has quit (Quit: Client closed).
21:23:58 -!- SGautam has quit (Quit: Connection closed for inactivity).
22:17:47 -!- somefan has joined.
22:46:31 -!- DOS_User_webchat has joined.
22:49:59 <esolangs> [[User:Aadenboy/common.css]] N https://esolangs.org/w/index.php?oldid=172096 * Aadenboy * (+48) Created page with "#wikiEditor-section-secondary { display: none; }"
22:53:07 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:53:23 -!- DOS_User_webchat has quit (Ping timeout: 272 seconds).
23:27:31 <esolangs> [[SOAPCAL]] N https://esolangs.org/w/index.php?oldid=172097 * A() * (+2071) Created page with "The idea of this programing language is to be a functional paradigm which uses emojis. Also this was made by [[User: A()]]. == Syntax Rules == *Numbers are lambda expressions meaning you can apply a number to itself ( Same with bools ) *Every line must have <code> ? </code>
23:35:46 <esolangs> [[User:A()]] https://esolangs.org/w/index.php?diff=172098&oldid=172088 * A() * (+13)
2026-01-03
00:08:15 <esolangs> [[Iterate/Loop algebra]] N https://esolangs.org/w/index.php?oldid=172099 * Aadenboy * (+1433) this page may be helpful for optimization
00:10:32 <esolangs> [[Iterate]] https://esolangs.org/w/index.php?diff=172100&oldid=171900 * Aadenboy * (+40) link to [[Iterate/Loop algebra]]
00:12:56 -!- scoofy__ has joined.
01:03:10 <esolangs> [[Special:Log/newusers]] create * Melondae18 * New user account
01:59:06 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
02:31:05 <esolangs> [[Plea]] https://esolangs.org/w/index.php?diff=172101&oldid=172070 * UnavgAustralian * (+750)
03:21:56 <esolangs> [[Cable/Implementations]] N https://esolangs.org/w/index.php?oldid=172102 * RainbowDash * (+9457) Created page with "<pre> import operator import re # ---------------- OPS ---------------- ops = { "+=": operator.add, "-=": operator.sub, "*=": operator.mul, "//=": operator.floordiv, "%=": operator.mod, } # ---------------- HELPERS ---------------
03:22:36 <esolangs> [[Plea]] https://esolangs.org/w/index.php?diff=172103&oldid=172101 * UnavgAustralian * (+1926)
03:23:21 <esolangs> [[Cable]] N https://esolangs.org/w/index.php?oldid=172104 * RainbowDash * (+4157) Created page with "'''Cable''' is a name of a programming language created by user [[User:RainbowDash]] in 2026. Where instructions are read from the left, and appended to the left. Instructions take the form of blocks. {{infobox proglang |name=Cable |author=[[user:RainbowDash|RainbowDa
03:24:05 <esolangs> [[User:RainbowDash]] https://esolangs.org/w/index.php?diff=172105&oldid=170531 * RainbowDash * (+52) Cable
03:26:32 <esolangs> [[Cable]] https://esolangs.org/w/index.php?diff=172106&oldid=172104 * RainbowDash * (-21) Whatever
03:26:51 -!- RainbowDash has joined.
03:30:27 -!- scoofy_ has joined.
03:32:49 <esolangs> [[Plea]] https://esolangs.org/w/index.php?diff=172107&oldid=172103 * UnavgAustralian * (+69)
03:33:15 -!- scoofy__ has quit (Ping timeout: 240 seconds).
03:40:43 -!- impomatic has joined.
03:42:10 <esolangs> [[Plea]] https://esolangs.org/w/index.php?diff=172108&oldid=172107 * UnavgAustralian * (+44)
03:54:11 -!- impomatic has quit (Quit: Client closed).
03:56:32 -!- somefan has quit (Remote host closed the connection).
04:01:10 -!- RainbowDash has quit (Quit: Client closed).
04:39:24 <esolangs> [[Special:Log/upload]] upload * Athen blah blah blah * uploaded "[[File:Screenshot 2026-01-03 113718.png]]": code for the instruction to run
06:38:21 <esolangs> [[Talk:Iterate]] https://esolangs.org/w/index.php?diff=172110&oldid=171903 * PkmnQ * (+595) /* computation without $# */
06:51:09 <esolangs> [[Rvtl]] N https://esolangs.org/w/index.php?oldid=172111 * Tpaefawzen * (+576) Created page with "{{DISPLAYTITLE:rvtl}} '''rvtl''', aka '''Return of Very Tiny Language''' is a dialect of the VTL (Very Tiny Language), which is the dialect of [[BASIC]], created by Mizutani Jun. There's also 64-bit version '''rvtl64'''. Implemented in assembly language. == Links == *[h
06:52:03 <esolangs> [[User:Tpaefawzen]] https://esolangs.org/w/index.php?diff=172112&oldid=167464 * Tpaefawzen * (+75)
07:13:15 <esolangs> [[ZuLanguage]] https://esolangs.org/w/index.php?diff=172113&oldid=171106 * Tpaefawzen * (+79)
08:17:33 -!- tromp has joined.
08:17:48 <esolangs> [[Fluid]] https://esolangs.org/w/index.php?diff=172114&oldid=170181 * Yayimhere2(school) * (+5) /* A non BIX definition */
08:19:15 <esolangs> [[Fluid]] https://esolangs.org/w/index.php?diff=172115&oldid=172114 * Yayimhere2(school) * (+98) /* A non BIX definition */
08:25:18 -!- Yayimhere has joined.
08:26:24 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172116&oldid=172095 * Yayimhere2(school) * (+261) /* Some Theories About Syntax User:A() */
08:29:25 <esolangs> [[Bring to another]] https://esolangs.org/w/index.php?diff=172117&oldid=171808 * Yayimhere2(school) * (+108) /* K combinator(named P) */
08:36:06 <esolangs> [[Bring to another]] https://esolangs.org/w/index.php?diff=172118&oldid=172117 * Yayimhere2(school) * (+206) /* Examples */
08:47:21 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172119&oldid=172116 * Yayimhere2(school) * (+259) /* Some Theories About Syntax User:A() */
08:47:50 <esolangs> [[Bring to another]] https://esolangs.org/w/index.php?diff=172120&oldid=172118 * Yayimhere2(school) * (+2) /* 1 */
08:49:35 <esolangs> [[RightSlash]] https://esolangs.org/w/index.php?diff=172121&oldid=120335 * ChuckEsoteric08 * (-1152) Will make another version of it later
09:10:20 -!- Yayimhere has quit (Quit: Client closed).
09:31:35 -!- Sgeo has quit (Read error: Connection reset by peer).
09:33:21 -!- SGautam has joined.
11:12:46 <APic> Hi
11:43:56 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172122&oldid=172091 * RikoMamaBala * (+1350)
11:49:55 <esolangs> [[Later You Will See Me]] N https://esolangs.org/w/index.php?oldid=172123 * Yayimhere2(school) * (+1523) Created page with "'''Later You Will See Me''' or LYWSM, is more of an art project then an esolang, was created by [[User:Yayimhere]], initially thought up in 2025 but only completed in 2026. It is, basically, just an iterative process of a function, defined as a
12:19:35 -!- scoofy_ has changed nick to scoofy.
12:19:37 -!- scoofy has changed hostmask to ~scoofy@user/scoofy.
13:31:29 -!- perlbot has quit (Quit: ZNC 1.9.1+deb2+b3 - https://znc.in).
13:31:29 -!- simcop2387 has quit (Quit: ZNC 1.9.1+deb2+b3 - https://znc.in).
13:37:00 -!- amby has joined.
13:39:10 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:42:42 -!- simcop2387 has joined.
13:51:13 -!- perlbot has joined.
13:53:53 -!- impomatic has joined.
13:58:44 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172124&oldid=172122 * RikoMamaBala * (+33) /* A+B Problem */
14:04:24 -!- impomatic has quit (Quit: Client closed).
14:04:33 -!- impomatic has joined.
14:06:40 <esolangs> [[User:Yayimhere]] https://esolangs.org/w/index.php?diff=172125&oldid=171934 * Yayimhere2(school) * (+31) /* esolangs */
14:07:45 <esolangs> [[MalbolgeFUCK]] N https://esolangs.org/w/index.php?oldid=172126 * Athen blah blah blah * (+4500) Created page with "{{infobox proglang |name=MalbolgeFUCK |paradigms=imperative, cryptographic, self-modifying |author=[[User:Athen blah blah blah]] |year=[[:Category:2026|2026]] |memsys=mutable array/register |dimensions=one-dimensional |class=Bounded-storage machine }}
14:08:31 <esolangs> [[MalbolgeFUCK]] M https://esolangs.org/w/index.php?diff=172127&oldid=172126 * Athen blah blah blah * (+58)
14:14:35 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172128&oldid=172124 * RikoMamaBala * (+1174) /* 99 bottles of beer, with the grammar errors */
14:37:59 <esolangs> [[User:Morlus]] https://esolangs.org/w/index.php?diff=172129&oldid=120947 * Morlus * (+1)
14:42:27 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172130&oldid=172073 * Yoyolin0409 * (+369)
14:42:38 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172131&oldid=172130 * Yoyolin0409 * (+4) /* Quine */
14:43:37 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172132&oldid=172131 * Yoyolin0409 * (+79) /* Instructions */
14:44:55 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172133&oldid=172132 * Yoyolin0409 * (+75) /* Instructions */
14:52:48 -!- SGautam has quit (Quit: Connection closed for inactivity).
15:01:18 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172134&oldid=172133 * Yoyolin0409 * (+286)
15:02:31 -!- tromp has joined.
15:18:51 <esolangs> [[Wizzcake]] https://esolangs.org/w/index.php?diff=172135&oldid=168663 * Yayimhere2(school) * (+9) added {{stub}}, majorly underspecified. specifically, the syntax isnt given at all.
15:42:17 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:53:03 <shachaf> `? member
15:53:08 <HackEso> I'm sorry, #esoteric has regulars, not members. Who told you about members? There are definitely no members here, and you wouldn't be allowed to know about them, anyway.
16:00:39 -!- impomatic has quit (Ping timeout: 272 seconds).
16:01:30 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172136&oldid=172128 * RikoMamaBala * (+100)
16:06:38 -!- tromp has joined.
16:14:52 <esolangs> [[User:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172137&oldid=172081 * RaiseAfloppaFan3925 * (-647)
16:19:11 -!- Sgeo has joined.
16:21:39 -!- impomatic has joined.
16:34:32 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172138&oldid=172119 * A() * (+208)
16:36:14 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172139&oldid=172138 * A() * (+41) /* Some Theories About Syntax User:A() */
16:36:34 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172140&oldid=172139 * A() * (-1)
16:39:19 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172141&oldid=172140 * A() * (+146) /* Dissection */
17:06:10 <esolangs> [[Bring to another]] https://esolangs.org/w/index.php?diff=172142&oldid=172120 * Yayimhere2(school) * (+9) /* 1 */
17:09:31 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172143&oldid=172141 * Yayimhere2(school) * (+307) /* Dissection */
17:24:05 <esolangs> [[User:Aadenboy/Countable]] N https://esolangs.org/w/index.php?oldid=172144 * Aadenboy * (+1141) Created page with "'''Countable''' is an esolang based on [[Iterate]]. == Memory == Countable consists of a set of accumulators, which can be created, incremented, and read from, with no additional interactions. Countable also has a single register which can hold a singl
17:24:28 <esolangs> [[User:Aadenboy/Countable]] M https://esolangs.org/w/index.php?diff=172145&oldid=172144 * Aadenboy * (+18)
17:24:46 <esolangs> [[User:Aadenboy/randomuserpage]] https://esolangs.org/w/index.php?diff=172146&oldid=171596 * Aadenboy * (+28)
17:25:05 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=172147&oldid=172048 * Aadenboy * (+30) /* just some drafts */
17:31:33 <esolangs> [[CHOOSE]] N https://esolangs.org/w/index.php?oldid=172148 * A() * (+1668) Created page with "== Intro == Alright, imagine an alien computer. Everyone is really excited to use it, but the only thing it can do is search for programs that matches with an output, and also those programs also search for programs that do the exact same thing. Is it possible to even do a
17:32:47 <esolangs> [[CHOOSE]] https://esolangs.org/w/index.php?diff=172149&oldid=172148 * A() * (+3)
17:32:55 -!- ais523 has joined.
17:33:20 <esolangs> [[Special:Log/upload]] upload * RikoMamaBala * uploaded "[[File:Free2Edit logo.png]]"
17:35:11 <ais523> hmm, language extension idea: allow Piet to interpret animated GIFs, when the frame changes, the program changes under the IP and it continues with the new program
17:35:41 <esolangs> [[User:A()]] https://esolangs.org/w/index.php?diff=172151&oldid=172098 * A() * (+12)
17:35:42 <esolangs> [[Special:Log/upload]] upload * RikoMamaBala * uploaded "[[File:Free2Edit logo(small).png]]"
17:35:46 <ais523> this seems like a sensible and backwards-compatible way to allow Piet programs to take time-the-program-has-been-running as an input
17:37:31 <ais523> …and now I'm envisioning an entire language for which the program is an image, but it just uses the current view on the computer's monitor as the program, and doing things like typing or moving the mouse cursor or opening windows is how you give input to the program
17:37:37 <ais523> (would even allow livecoding using a paint program)
17:38:29 <ais523> the easy/cop-out way to do it would involve an A Pear Tree-ish way for the language to actually find the part of the screen it's meant to be executing, but it's perhaps more interesting if any part of the screen can (subtly) influence any other
17:41:54 <esolangs> [[Special:Log/upload]] upload * RikoMamaBala * uploaded "[[File:Free2Edit (smaller to fit 200px).png]]"
17:45:56 <b_jonas> "uses the current view on the computer's monitor as the program, and doing things like typing or moving the mouse cursor or opening windows is how you give input to the program" this is kind of how some old BASIC microcomputers like the Commodore 64 work. Not quite just reading the *program* from the monitor, but when you press enter to input either a command for BASIC or a reply to an INPUT statement
17:46:02 <b_jonas> then the line (or two joined lines) on the screen under the cursor are taken as that input, and you can edit any part of the screen on the text before you choose which line you enter. That's how you edit an existing program: you list part of the program, move the cursor to edit an existing line, then press enter to change the line in the program. This is preserved even today because in the Microsoft VBA
17:46:08 <b_jonas> UI, the Immediate window, which also serves as a debug console, works halfway this way. You can edit any line and press enter to accept it; and if the program writes text to the debug console then it's inserted where the cursor is rather at the end of the window, even if it's in the middle of a line, which is very annoying. The difference is that in the VBA Immediate window you insert text by default,
17:46:14 <b_jonas> including inserting lines, rather than overwrite text in a fixed rectangular array of characters.
17:46:17 <esolangs> [[User talk:Aadenboy]] https://esolangs.org/w/index.php?diff=172154&oldid=170088 * Yayimhere2(school) * (+298) /* Collaboration */
17:48:14 <esolangs> [[CHOOSE]] https://esolangs.org/w/index.php?diff=172155&oldid=172149 * Yayimhere2(school) * (+2) /* Syntax */
17:49:54 <b_jonas> also https://www.youtube.com/watch?v=ly5BhGOt2vE by Linus Åkesson the Commodore works even more this way: it's not the built-in behavior of BASIC, but a program written by Linus that deliberately reading characters from video memory live as Linus edits them, with the program running from an interrupt while the built-in editor that lets him overwrite text on the screen is running outside of the
17:50:00 <b_jonas> interrupt.
17:54:08 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172156&oldid=172136 * RikoMamaBala * (+274)
18:08:44 <ais523> enhancement to this idea: the program stores all internal state via self-modification, so you can see and directly modify what it's thinking
18:09:16 <ais523> presumably some parts of the screen belong to the program and it can write to them, and other parts belong to the user and are const volatile from the program's point of view
18:12:22 <b_jonas> didn't Befunge originally work kind of similar to this? note quite because it also has a data stack and I think you can access it deep so it's Turing-complete with just the stack, but I think originally the 2-d code space was just one screenful and the self-modify code put instruction would show up on screen. maybe not though.
18:14:31 <ais523> that seems like a reasonable theory based on the size of the playfield, but I wasn't there at the time
18:18:05 <b_jonas> yeah, I mean befunge also has print commands so it can't really work
18:18:35 <b_jonas> unless you're supposed to run it on two monitors, like an interactive debugger with graphics on one monitor and the debugger with code on another monitor
18:21:42 <ais523> we have virtual desktops nowadays which probably makes all these things simpler
18:21:47 <ais523> and I guess you could do I/O to a file
18:23:44 <b_jonas> sure, and even back then you could just have two screen buffers and switch between them, at least in some graphics modes that don't require too much memory, so you could have the program in one and the print output on another and have the interpreter switch between them on a user keystroke
18:37:21 -!- Guest32 has joined.
18:37:54 -!- Guest32 has quit (Client Quit).
18:43:32 -!- scoofy has quit (Ping timeout: 256 seconds).
19:16:47 <APic> cu
19:23:16 -!- ais523 has quit (Quit: quit).
19:25:24 -!- ais523 has joined.
19:29:06 <esolangs> [[Hailstone]] M https://esolangs.org/w/index.php?diff=172157&oldid=172080 * RaiseAfloppaFan3925 * (+18) fix unchanged assignment operators
19:29:19 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172158&oldid=172061 * Melondae18 * (+221) hii! <3
19:31:03 <esolangs> [[99 bottles of beer]] https://esolangs.org/w/index.php?diff=172159&oldid=165781 * Melondae18 * (+425) Added AsciiDots implementation
19:35:45 -!- Lord_of_Life_ has joined.
19:36:35 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
19:37:04 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
19:44:57 -!- Everything has joined.
20:31:46 <esolangs> [[User:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172160&oldid=172137 * RaiseAfloppaFan3925 * (+50)
20:48:33 <esolangs> [[User:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172161&oldid=172160 * RaiseAfloppaFan3925 * (+37) /* status */
20:59:05 <esolangs> [[Hailstone]] M https://esolangs.org/w/index.php?diff=172162&oldid=172157 * RaiseAfloppaFan3925 * (+1425)
21:08:08 <esolangs> [[Hailstone]] M https://esolangs.org/w/index.php?diff=172163&oldid=172162 * RaiseAfloppaFan3925 * (+306) /* Implementation */ just remembered tail call optimization exists
21:22:06 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:33:54 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172164&oldid=172143 * A() * (+510)
21:47:09 <esolangs> [[Hailstone]] M https://esolangs.org/w/index.php?diff=172165&oldid=172163 * RaiseAfloppaFan3925 * (+318)
21:49:32 <esolangs> [[FJ]] https://esolangs.org/w/index.php?diff=172166&oldid=139241 * Kaveh Yousefi * (+182) Added a hyperlink to my implementation of the FJ programming language on GitHub and supplemented the page category tag Implemented.
22:02:58 -!- tromp has joined.
22:20:44 <fizzie> There's at least one brainfuck interpreter (called "bfvga" as I recall?) where the tape is 64000 byte-sized cells directly mapped to the VGA 320x200 display mode's video RAM.
22:22:15 <fizzie> https://www.pouet.net/prod.php?which=5060 perhaps.
22:22:34 <fizzie> The idea was that you'd write demosceney graphical effects by manipulating the tape contents.
22:23:33 <fizzie> (No mechanism for user input to modify it while running, though.)
22:24:28 <fizzie> (And the program itself isn't on the tape, it's not that kind of self-modifying brainfuck.)
22:38:07 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:48:48 -!- tromp has joined.
22:56:59 -!- Everything has quit (Quit: leaving).
22:57:39 <ais523> my guess is that it'd be too slow, although maybe with enough optimisation it could be viable
23:00:49 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:18:52 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=172167&oldid=172072 * Buckets * (+11) /* K */
23:19:30 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=172168&oldid=171843 * Buckets * (+33)
23:19:46 <esolangs> [[Kses]] N https://esolangs.org/w/index.php?oldid=172169 * Buckets * (+1331) Created page with "Kses is an Esoteric programming language created By [[User:Buckets]] In 2026, Created to Be a pure-Table Esolang. {| class="wikitable" |- ! Pseudo-Commands !! Instructions |- | <nowiki>{| | style="background:#</nowiki><span style="color:red;">R</span><nowiki>R----;width
23:42:25 <b_jonas> I guess what could work is an emulated 6502 or similar CPU, with a kilobyte or two of RAM all mapped to a text video console in such a way that each character cell shows one byte in a font where all 0x100 possible values are displayed differently, except that the last dozen or so characters aren't mapped to memory but to the CPU registers instead, so that all the state of the machine shows up on the
23:42:31 <b_jonas> screen.
23:43:51 <ais523> a 6502 hardly has any registers anywy
23:43:57 <ais523> is it just A, X, Y, P?
23:45:08 <b_jonas> ais523: A, X, Y, stack pointer, two bytes of instruction pointer, plus like three to six bytes of unnamed registers that matter only within an instruction
23:45:19 <b_jonas> oh, and an almost byte of flags
23:45:26 <ais523> P is the almost byte of flags
23:45:30 <ais523> I forgot the stack and instruction pointers, though
23:45:41 <b_jonas> why is it called P?
23:46:06 <ais523> something like "processor status word" but I'm not sure that's the actual name, it's that sort of name though
23:46:13 <b_jonas> I see
23:46:29 <b_jonas> I'd have called it F or C
23:46:37 <b_jonas> for flags or condition code
23:47:13 <b_jonas> you're right though, apparently the mnemonic for the instructions that push and pop the flags end in P
23:47:22 <ais523> it's FLAGS, or F for short on x86 (with CC used as a generic name for tests on the flag)
23:47:36 <ais523> e.g. Jcc is the generic name for jz, ja, jb, etc.
23:50:03 <b_jonas> I think you need at least four bytes of hidden processor status, because you need three bytes just to store the current instruction, and there is a read-modify-store increment two-byte absolute address instructions where you have to remember both the address and the value between the read and write
23:53:55 <b_jonas> so let's go with 2 bytes of instruction pointer, 5 bytes for PAXYS, and 5 bytes of internal state that is forgotten between instructions to leave one more byte of state to comfortably remember which phase of an instruction we are at. that's 12 bytes, either at the end of the last row so the accessible memory is that much shorter, or in an extra row of the screen.
23:56:05 <b_jonas> you could map some more bytes to non-CPU hardware registers, such as keyboard/joystick input, casette/tape or serial port input/output, sound chip.
23:56:42 <b_jonas> and I mean these would be displayed on the screen the same way as normal RAM bytes are
23:56:57 <ais523> IIRC, 6502 non-CPU hardware registers are normally implemented in an MSR sort of way where they have custom behaviour on reading and custom behaviour on writing that might not match each other
23:57:17 <ais523> and write-only registers are sometimes aliased with ROM
23:59:04 <b_jonas> yes, these hardware register would have to work differently, so that reading has no effect and they're read often to be shown on screen, and the written values are remembered and shown on screen.
23:59:14 <sorear> you don't need to store the entire instruction, you can load the address bytes directly into an address latch and then overwrite them for indirect modes
23:59:51 <b_jonas> there could be some ROM that's not shown on screen
2026-01-04
00:00:36 <b_jonas> sorear: ok, but that'd still be part of the machine state, just not necessarily physically in the CPU
00:01:24 <b_jonas> sorear: but I'm pretty sure the CPU has to store at least the lower byte of the address just so it can increment that lower byte for an indirect jump instruction
00:01:37 -!- ais523 has quit (Quit: quit).
00:02:50 <b_jonas> oh, and there are normal indirect instructions too, which read a two-byte address from the zero page,
00:04:01 <b_jonas> I'm still going with 5 hidden bytes, 3 of which usually store the instruction but can be overwritten during the instruction in some cases
00:04:21 <b_jonas> or like 4 plus a partial byte at least
00:05:19 <esolangs> [[User talk:Aadenboy]] https://esolangs.org/w/index.php?diff=172170&oldid=172154 * Aadenboy * (+307) /* Would you take a look? */ reply
00:06:42 <b_jonas> maybe that partial byte is shown as the border color of the screen
00:19:04 <esolangs> [[Plea]] M https://esolangs.org/w/index.php?diff=172171&oldid=172108 * UnavgAustralian * (+0)
00:31:29 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172172&oldid=172164 * Aadenboy * (+803)
01:07:53 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172173&oldid=172134 * Yoyolin0409 * (+179) /* Instructions */
01:08:24 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172174&oldid=172173 * Yoyolin0409 * (+41) /* Magicword */
01:09:30 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172175&oldid=172174 * Yoyolin0409 * (-5) /* Fibonacci sequence */
01:10:53 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172176&oldid=172175 * Yoyolin0409 * (+381) /* Instructions */
01:12:25 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172177&oldid=172176 * Yoyolin0409 * (-23) /* Instructions */
01:15:58 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172178&oldid=172177 * Yoyolin0409 * (+220)
01:17:16 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172179&oldid=172178 * Yoyolin0409 * (+48) /* Fibonacci sequence */
01:21:29 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172180&oldid=172179 * Yoyolin0409 * (+212) /* Instructions */
01:22:05 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172181&oldid=172180 * Yoyolin0409 * (+152) /* Annotation */
01:27:19 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172182&oldid=172145 * Aadenboy * (-127) refine this a little bit. not where I want to right now but it's better
01:36:17 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
01:47:11 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172183&oldid=172181 * Yoyolin0409 * (+156) /* Annotation */
01:47:36 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172184&oldid=172183 * Yoyolin0409 * (+9) /* Annotation */
01:47:46 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172185&oldid=172184 * Yoyolin0409 * (+1) /* Miscellaneous Notes */
01:49:53 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172186&oldid=172185 * Yoyolin0409 * (-4) /* Instructions */
01:52:29 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172187&oldid=172186 * Yoyolin0409 * (+48) /* Instructions */
01:53:06 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172188&oldid=172187 * Yoyolin0409 * (+9) /* Fibonacci sequence */
01:56:52 -!- tromp has joined.
01:56:56 -!- tromp has quit (Client Quit).
01:57:14 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172189&oldid=172188 * Yoyolin0409 * (+112)
01:58:41 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172190&oldid=172189 * Yoyolin0409 * (+23)
02:01:49 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172191&oldid=172190 * Yoyolin0409 * (+110)
02:02:40 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172192&oldid=172191 * Yoyolin0409 * (+158)
02:05:44 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172193&oldid=172192 * Yoyolin0409 * (+109)
02:06:11 <esolangs> [[1234567890]] https://esolangs.org/w/index.php?diff=172194&oldid=171725 * Yoyolin0409 * (+53)
02:06:35 <esolangs> [[WUTWWITIPMPAW]] https://esolangs.org/w/index.php?diff=172195&oldid=171461 * Yoyolin0409 * (+53)
02:07:49 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=172196&oldid=172067 * Yoyolin0409 * (+26) /* Done */
02:16:09 -!- impomatic has quit (Quit: Client closed).
02:27:58 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172197&oldid=172156 * RikoMamaBala * (+90)
03:05:04 -!- op_4 has quit (Remote host closed the connection).
03:05:40 -!- op_4 has joined.
03:26:57 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172198&oldid=172197 * RikoMamaBala * (+227)
03:40:48 -!- scoofy has joined.
05:09:48 <esolangs> [[User:Blashyrkh/Crazy J]] M https://esolangs.org/w/index.php?diff=172199&oldid=172074 * Blashyrkh * (+99) Shortest expression for Church numeral 4
06:23:39 <esolangs> [[MalbolgeFUCK]] https://esolangs.org/w/index.php?diff=172200&oldid=172127 * Athen blah blah blah * (+299)
06:28:34 -!- impomatic has joined.
07:59:09 <esolangs> [[User talk:Aadenboy]] https://esolangs.org/w/index.php?diff=172201&oldid=172170 * Yayimhere2(school) * (+123) /* Would you take a look? */
08:01:09 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172202&oldid=172172 * Yayimhere2(school) * (+200) /* aadenboy's part in this */
08:06:56 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172203&oldid=172202 * Yayimhere2(school) * (+728) /* Information I've gathered */
08:15:50 -!- tromp has joined.
09:36:42 <APic> Hi
09:57:05 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
10:18:04 -!- tromp has joined.
10:29:55 <esolangs> [[User:Yayimhere/eLambda]] N https://esolangs.org/w/index.php?oldid=172204 * Yayimhere2(school) * (+714) made the page. Very sloppy right now, still experimenting with it. Will get better as time passes.
10:50:43 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
10:55:13 -!- tromp has joined.
11:05:00 -!- Sgeo has quit (Read error: Connection reset by peer).
11:06:07 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172205&oldid=172203 * Yayimhere2(school) * (+660) /* aadenboy's part in this */
11:07:47 <esolangs> [[Bring to another]] https://esolangs.org/w/index.php?diff=172206&oldid=172142 * Yayimhere2(school) * (+47) /* Optimized truth machine */
11:12:19 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172207&oldid=172205 * Yayimhere2(school) * (+204) /* Truth machine */
11:41:00 <esolangs> [[User:Michael]] https://esolangs.org/w/index.php?diff=172208&oldid=123593 * Michael * (+10)
12:04:52 -!- msv has quit (Read error: Connection reset by peer).
12:05:12 -!- msv has joined.
12:14:19 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:21:36 -!- tromp has joined.
12:26:38 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172209&oldid=172193 * Yoyolin0409 * (+320)
12:36:46 <esolangs> [[Food]] https://esolangs.org/w/index.php?diff=172210&oldid=172065 * Yoyolin0409 * (-2)
12:45:38 <esolangs> [[User:Yayimhere/eLambda]] https://esolangs.org/w/index.php?diff=172211&oldid=172204 * Yayimhere2(school) * (+200)
12:48:59 <esolangs> [[CCCC]] https://esolangs.org/w/index.php?diff=172212&oldid=170550 * Yayimhere2(school) * (-55) /* Syntax */
12:53:12 <esolangs> [[CCCC]] https://esolangs.org/w/index.php?diff=172213&oldid=172212 * Yayimhere2(school) * (+38) /* Semantics */
13:19:50 -!- amby has joined.
13:28:31 <esolangs> [[User:Yayimhere/eLambda]] https://esolangs.org/w/index.php?diff=172214&oldid=172211 * Yayimhere2(school) * (-79) /* Examples */
13:29:54 <esolangs> [[Special:Log/newusers]] create * Kangaroo Jacques * New user account
13:40:40 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172215&oldid=172158 * Kangaroo Jacques * (+288)
13:47:13 -!- Yayimhere has joined.
14:03:58 <esolangs> [[Print("Hello, World!")]] https://esolangs.org/w/index.php?diff=172216&oldid=170635 * RikoMamaBala * (+86)
14:09:32 <esolangs> [[User:Yayimhere/eLambda]] https://esolangs.org/w/index.php?diff=172217&oldid=172214 * Yayimhere2(school) * (-357) /* Examples */
14:23:44 <esolangs> [[IavaScriptvm]] N https://esolangs.org/w/index.php?oldid=172218 * Kangaroo Jacques * (+7115) My little esolang
14:24:08 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
14:32:40 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=172219&oldid=172167 * Kangaroo Jacques * (+19) Added IavaScriptvm to the list
14:49:19 -!- tromp has joined.
14:54:42 <Yayimhere> hello
14:59:12 -!- Yayimhere has quit (Quit: Client closed).
15:38:06 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:48:26 -!- tromp has joined.
15:49:10 <esolangs> [[PlainCore]] https://esolangs.org/w/index.php?diff=172220&oldid=172209 * Yoyolin0409 * (+39) /* Magicword */
17:04:17 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172221&oldid=172078 * Splot-dev * (+11) Fixed type error in backtick number guessing game example.
17:04:56 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172222&oldid=172221 * Splot-dev * (+9) fixed wording
17:06:31 <esolangs> [[Free2Edit]] https://esolangs.org/w/index.php?diff=172223&oldid=172198 * RikoMamaBala * (+118)
17:13:07 <APic> Good Night
17:38:40 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:57:17 -!- tromp has joined.
18:03:47 <esolangs> [[Talk:Bring to another]] M https://esolangs.org/w/index.php?diff=172224&oldid=172207 * Aadenboy * (+40) /* aadenboy's part in this */ formatting
18:06:53 -!- molson has joined.
18:25:39 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172225&oldid=172224 * A() * (+80)
19:07:59 -!- Sgeo has joined.
19:23:31 -!- impomatic has quit (Ping timeout: 272 seconds).
19:32:20 <esolangs> [[U]] https://esolangs.org/w/index.php?diff=172226&oldid=137417 * Hammy * (+45) Removed redirect to [[U (PrySigneToFry)]]
19:34:34 <esolangs> [[User:&0]] N https://esolangs.org/w/index.php?oldid=172227 * &0 * (+159) Created page with "I'm and. I'm mostly an artist that happens to code. We like to think where pretty good at it. You can find all of our ramblings at https://www.sheeeeeeeep.art/"
19:36:10 -!- Lord_of_Life_ has joined.
19:37:16 -!- Lord_of_Life has quit (Ping timeout: 256 seconds).
19:37:29 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
20:02:16 -!- scoofy has quit (Ping timeout: 246 seconds).
20:08:50 -!- Everything has joined.
20:25:20 <esolangs> [[DOESNT]] N https://esolangs.org/w/index.php?oldid=172228 * &0 * (+4507) Created page with "DOESNT is an esolang created by [[User:&0]] at the very start of 2026. It's a single [[string]], deterministic, [[rewriting]] system. Unlike conventional rewriting systems, rules in DOESNT list what prefixes are left unmatched. It's creation was inspired by the prompt for Lan
20:25:41 <esolangs> [[User:&0]] https://esolangs.org/w/index.php?diff=172229&oldid=172227 * &0 * (+32)
20:27:20 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=172230&oldid=172219 * &0 * (+13) Add DOESNT
20:36:01 <esolangs> [[Talk:Bring to another]] https://esolangs.org/w/index.php?diff=172231&oldid=172225 * Yayimhere2(school) * (+48) /* aadenboy's part in this */
21:45:39 <esolangs> [[Special:Log/newusers]] create * ColdBrew * New user account
21:51:38 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172232&oldid=172215 * ColdBrew * (+223) /* Introductions */
21:52:43 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172233&oldid=172232 * ColdBrew * (+85) /* Introductions */
22:01:36 <esolangs> [[PMPL]] N https://esolangs.org/w/index.php?oldid=172234 * A() * (+1021) Created page with "[[PMPL|Polish Math Programming Language]] is called that because it uses [https://en.wikipedia.org/wiki/Polish_notation| Polish notation] (also PNPL was taken) [[User: A()]] brought this into existence. == Commands == Here is a list of commands [[PMPL|Polish Math Programming L
22:06:40 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172235&oldid=172234 * A() * (+57) /* Programs */
22:27:25 -!- Festive_Dragon has changed nick to gAy_Dragon.
22:50:26 -!- Everything has quit (Quit: leaving).
22:59:44 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=172236&oldid=172230 * Buckets * (+13) /* E */
22:59:58 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:00:29 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=172237&oldid=172168 * Buckets * (+12)
23:00:58 <esolangs> [[Eralin]] N https://esolangs.org/w/index.php?oldid=172238 * Buckets * (+1240) Created page with "Eralin is an Esoteric programming language Created By [[User:Buckets]] in 2021. {| class="wikitable" |- ! Commands !! Instructions |- | < || Goto The last < that the IP Has met. |- | || Subtract 1 to the Top value But then it With toggle To Adding 1 then Toggling Back
23:29:03 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172239&oldid=172235 * A() * (+106)
23:41:54 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172240&oldid=172239 * A() * (+82)
23:42:42 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172241&oldid=172240 * A() * (+0) /* Fizzbuzz */
23:46:38 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172242&oldid=172241 * A() * (+66) /* FizzBuzz */
2026-01-05
00:38:04 <esolangs> [[MikuLang]] https://esolangs.org/w/index.php?diff=172243&oldid=172012 * Frendoly * (+1426) added interpreter
00:40:41 <esolangs> [[User talk:Frendoly]] https://esolangs.org/w/index.php?diff=172244&oldid=170814 * Frendoly * (+104)
00:44:57 <esolangs> [[Talk:MicroMiku]] N https://esolangs.org/w/index.php?oldid=172245 * Frendoly * (+185) Created page with "This article was made to find a way to get it working for micropython, but since i made a interpreter for [[MikuLang]] now this article is useless, im wondering if i can get it removed?"
00:45:09 <esolangs> [[Talk:MicroMiku]] https://esolangs.org/w/index.php?diff=172246&oldid=172245 * Frendoly * (+88)
00:51:11 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172247&oldid=172242 * A() * (+89)
01:04:29 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172248&oldid=172247 * A() * (+1) /* loop */
01:07:43 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172249&oldid=172248 * A() * (+16) /* FizzBuzz */
01:17:22 <esolangs> [[FizzBuzz]] https://esolangs.org/w/index.php?diff=172250&oldid=165431 * A() * (+244)
01:47:37 <esolangs> [[User:A()]] https://esolangs.org/w/index.php?diff=172251&oldid=172151 * A() * (+10)
01:47:55 <esolangs> [[User:A()]] https://esolangs.org/w/index.php?diff=172252&oldid=172251 * A() * (-122)
02:27:08 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172253&oldid=172249 * A() * (+143)
02:27:26 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
02:28:12 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172254&oldid=172253 * A() * (+14)
03:23:16 <esolangs> [[DOESNT]] https://esolangs.org/w/index.php?diff=172255&oldid=172228 * &0 * (+1) fix typo
03:39:46 -!- sprocket has joined.
03:40:08 -!- sprock has quit (Ping timeout: 240 seconds).
03:43:34 -!- molson_ has joined.
03:46:19 -!- chloetax1 has joined.
03:48:20 -!- Lymee has joined.
03:48:54 -!- simcop2387_ has joined.
03:50:39 -!- Lymia has quit (Ping timeout: 246 seconds).
03:50:39 -!- molson has quit (Ping timeout: 246 seconds).
03:50:39 -!- simcop2387 has quit (Ping timeout: 246 seconds).
03:50:39 -!- chloetax has quit (Ping timeout: 246 seconds).
03:50:40 -!- chloetax1 has changed nick to chloetax.
03:50:42 -!- simcop2387_ has changed nick to simcop2387.
04:06:23 -!- lambdabot has quit (Ping timeout: 246 seconds).
04:08:12 <esolangs> [[User:Tommyaweosme]] https://esolangs.org/w/index.php?diff=172256&oldid=170825 * Tommyaweosme * (+476)
04:09:07 -!- lambdabot has joined.
04:37:18 <zzo38> What data structure should be used for converting between 16-bit character codes and 32-bit character codes in both directions? (The mapping will be defined in an external file and will need to be read and made into the data structure used internally)
05:26:45 <esolangs> [[F,u,c,k.]] https://esolangs.org/w/index.php?diff=172257&oldid=164691 * RikoMamaBala * (+382)
05:28:29 -!- scoofy has joined.
07:29:11 -!- Sgeo has quit (Read error: Connection reset by peer).
08:05:22 -!- tromp has joined.
08:23:34 -!- tromp has quit (Ping timeout: 246 seconds).
09:19:14 <esolangs> [[Talk:MicroMiku]] M https://esolangs.org/w/index.php?diff=172258&oldid=172246 * RaiseAfloppaFan3925 * (+370) I think you can ask an admin to delete this page
10:05:57 <esolangs> [[Bitflipper]] https://esolangs.org/w/index.php?diff=172259&oldid=122888 * Yayimhere2(school) * (-29) /* Interpreters */ It is infact NOT Tc, because it cannot access unbounded memory
10:29:30 -!- perlbot has quit (Ping timeout: 244 seconds).
10:29:55 -!- simcop2387 has quit (Ping timeout: 245 seconds).
10:30:36 <esolangs> [[Talk:Turing tarpit]] https://esolangs.org/w/index.php?diff=172260&oldid=169829 * JIT * (+323) /* What is the limit to The Turing Tarpit? */ new section
10:36:24 <esolangs> [[.chat]] https://esolangs.org/w/index.php?diff=172261&oldid=169578 * Yayimhere2(school) * (+2) /* Commands */
10:40:48 <esolangs> [[Talk:110010000100110110010]] N https://esolangs.org/w/index.php?oldid=172262 * Yayimhere2(school) * (+216) Created page with "The proof seems self referential, because the formula for each variable holds itself, its recursive --~~~~"
10:48:29 <esolangs> [[Talk:]] N https://esolangs.org/w/index.php?oldid=172263 * Yayimhere2(school) * (+212) Created page with "The proof seems incorrect, because of <code>$</code>, which allows reading of other characters. --~~~~"
10:48:37 <esolangs> [[Standard Test Paper]] N https://esolangs.org/w/index.php?oldid=172264 * Yoyolin0409 * (+905) Created page with "'''Standard Test Paper''' is an esolang by [[User:yoyolin0409]]. ==Papermaking== Select some high-quality Unicode characters. These characters include "", "", "", "", "", and "". Weave the "" symbols into a long line consisting of 21 "" symbols. Weave t
10:49:09 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=172265&oldid=172196 * Yoyolin0409 * (+25)
10:52:14 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172266&oldid=172264 * Yayimhere2(school) * (+9) this seems to just be like, a unicode shape? most definitely not an gosling, or atleast not one that is described, so I added {{stub}}. yoyolin, care to explain how this is an esolang?
10:53:02 -!- perlbot has joined.
10:53:22 -!- Yayimhere has joined.
10:53:28 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172267&oldid=172266 * Yoyolin0409 * (+88)
10:54:13 -!- tromp has joined.
10:55:13 <esolangs> [[User talk:Yayimhere2(school)]] https://esolangs.org/w/index.php?diff=172268&oldid=168452 * Yoyolin0409 * (+215) /* Reply to Standard Test Paper */ new section
10:56:59 <esolangs> [[User talk:Yayimhere2(school)]] https://esolangs.org/w/index.php?diff=172269&oldid=172268 * Yayimhere2(school) * (+238) /* Reply to Standard Test Paper */
10:58:04 <esolangs> [[User:Yayimhere2(school)]] https://esolangs.org/w/index.php?diff=172270&oldid=145485 * Yayimhere2(school) * (+116)
10:59:07 -!- simcop2387 has joined.
11:03:35 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172271&oldid=172267 * Yoyolin0409 * (+1258)
11:09:48 -!- simcop2387 has quit (Quit: ZNC 1.9.1+deb2+b3 - https://znc.in).
11:10:08 -!- simcop2387 has joined.
11:10:24 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172272&oldid=172271 * Yayimhere2(school) * (-53) /* Papermaking */ <code>-><pre>
11:12:44 <esolangs> [[Talk:Turing tarpit]] https://esolangs.org/w/index.php?diff=172273&oldid=172260 * Yayimhere2(school) * (+133) /* What is the limit to The Turing Tarpit? */
11:17:22 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172274&oldid=172272 * Yoyolin0409 * (+644) /* Writing basic documents */
11:17:35 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172275&oldid=172274 * Yoyolin0409 * (-5)
11:18:43 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172276&oldid=172275 * Yoyolin0409 * (+44) /* Writing basic documents */
11:19:52 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172277&oldid=172276 * Yoyolin0409 * (+38)
11:37:30 <esolangs> [[Talk:]] https://esolangs.org/w/index.php?diff=172278&oldid=172263 * PkmnQ * (+308)
11:38:04 <esolangs> [[Talk:]] https://esolangs.org/w/index.php?diff=172279&oldid=172278 * Yayimhere2(school) * (+188)
11:44:33 -!- Yayimhere has quit (Ping timeout: 272 seconds).
12:24:00 <esolangs> [[Special:Log/upload]] upload * PrySigneToFry * uploaded "[[File:QianJianTec1767615761041.png]]": It's just a polynomial, what harm could it possibly have?
12:57:29 <esolangs> [[Crypten]] M https://esolangs.org/w/index.php?diff=172281&oldid=166924 * * (+11) Fixed broken link
13:09:52 <esolangs> [[Polynomix]] N https://esolangs.org/w/index.php?oldid=172282 * I am islptng * (+125) Created page with "<b>Polynomix</b> will be a powerful computer language designed by islptng. Maybe it'll be implemented in Rust (I'm not sure.)"
13:46:13 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
14:30:05 <APic> Celebrate Mungday! Hail Eris! 😇
14:59:50 -!- tromp has joined.
15:27:29 -!- amby has joined.
15:43:26 -!- ais523 has joined.
15:44:06 <ais523> The interview between Daniel Temkin and yayimhere is now online: https://esoteric.codes/blog/yayimhere-interview
16:03:44 <esolangs> [[Talk:MicroMiku]] https://esolangs.org/w/index.php?diff=172283&oldid=172258 * Ais523 * (+535) why not merge and redirect?
16:23:05 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172284&oldid=172182 * Aadenboy * (+1033) okay this is much better. I like this
16:24:04 <esolangs> [[FISHQ9+]] https://esolangs.org/w/index.php?diff=172285&oldid=66257 * DockedChutoy * (+371)
16:26:40 <esolangs> [[User:Aadenboy]] M https://esolangs.org/w/index.php?diff=172286&oldid=172147 * Aadenboy * (+0) formatting
16:33:43 <esolangs> [[User:Aadenboy/Countable]] M https://esolangs.org/w/index.php?diff=172287&oldid=172284 * Aadenboy * (+30) /* Commands */
16:36:00 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172288&oldid=172287 * Aadenboy * (+60) /* Commands */ extremely esoteric
16:37:14 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172289&oldid=172288 * Aadenboy * (+30) /* Commands */ 4-6 commands
16:37:17 -!- korvo has quit (Quit: korvo).
16:37:37 -!- korvo has joined.
16:42:32 <esolangs> [[Abacus Computer]] https://esolangs.org/w/index.php?diff=172290&oldid=171562 * Timm * (-12)
16:42:46 <esolangs> [[Abacus Computer]] https://esolangs.org/w/index.php?diff=172291&oldid=172290 * Timm * (-14)
16:43:47 <esolangs> [[Talk:Turing tarpit]] https://esolangs.org/w/index.php?diff=172292&oldid=172273 * Corbin * (+123) /* What is the limit to The Turing Tarpit? */ Five!
16:56:33 <korvo> Interesting article. Says much more about Temkin than yayimhere though.
17:34:38 -!- impomatic has joined.
17:35:06 <ais523> korvo: I learned quite a bit about both of them, I think
17:35:27 <ais523> although I'm already fairly familiar with Temkin's style
17:36:13 <ais523> interestingly, you can view both sides of the interview as being an exercise in extracting unintended/unintentional meaning from things
17:36:34 <ais523> (which is not necessarily a bad exercise! it's an entirely valid source of new ideas)
17:37:06 -!- Yayimhere has joined.
17:37:09 <Yayimhere> Hello!
17:37:14 <ais523> hello
17:37:17 <Yayimhere> how are you all doing?
17:37:18 <ais523> we're discussing your interview
17:37:21 <Yayimhere> oh
17:37:23 <Yayimhere> wow
17:37:26 <Yayimhere> what a surprise
17:37:29 <ais523> my email client notifier actually worked
17:37:34 <Yayimhere> great!
17:38:04 <ais523> I sympathise with the point of view of taking one aspect of something and really focusing on it to see how far you can get
17:38:33 <ais523> in one of my own esoteric.codes interviews, I mentioned about how some of my languages were ideas extracted from a bigger, unfinished language
17:38:51 <Yayimhere> oh which one?
17:39:20 <Yayimhere> i didnt notice that in the 2017 one if its that one
17:39:51 <ais523> the second one, in the section talking about three star programmer
17:39:57 <ais523> but it was just a mention rather than the main point of the section
17:40:03 <Yayimhere> yea
17:40:08 <Yayimhere> makes sense
17:40:28 <ais523> err, it's in the *second* section talking about three star programmer, sorry, I missed that there were two of them
17:40:46 <Yayimhere> its ok
17:42:43 <Yayimhere> what did you think of the interview?
17:45:07 <ais523> it gave me a lot of insight into your languages
17:45:29 <ais523> I was thinking that your languages often contain interesting ideas that weren't well-explained, and realised that I often have problems explaning my own ideas too
17:45:45 <ais523> often I can't get my point across even despite having had a lot of practice
17:45:48 <Yayimhere> ideas are a strange thing
17:46:36 <Yayimhere> and can be hard to describe, as you said
17:47:21 <ais523> sometimes I have problems describing my ideas even to myself
17:48:05 <Yayimhere> oh, thats interesting
17:49:10 <ais523> I feel like it sometimes takes months to shape an idea into a space where I can understand/describe it properly (although this has mostly been happening with non-esoprogramming ideas recently)
17:51:11 <ais523> I guess the sort of esolangs I like have fewer moving pieces to interact with than practical languages do, so there are fewer interactions that need to be explored
17:51:31 <Yayimhere> yea that makes sense
17:54:17 <Yayimhere> are there any other thoughts you have on the interview
17:56:15 <korvo> I worry that Temkin is sliding into the Lex Friedman style of interviewing. It didn't really feel like he was doing anything investigative.
17:57:14 <Yayimhere> hm, interesting
17:57:54 <ais523> Yayimhere: I was interested that you were interested in An Odd Rewriting System, I didn't expect it to be high up the list of my languages that other people liked
17:58:31 <ais523> but I guess it's connected with the way it was made: I noticed a common aspect of esolang ideas I had that made programs hard to write
17:58:40 <ais523> so I wanted to write an esolang about that one exact problem, to really focus on it
17:59:00 <Yayimhere> ais523: oh. i had actually thought it was pretty high up the list. Whats interesting to me is as you said the concept
17:59:03 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172293&oldid=172289 * Aadenboy * (+99) /* Memory */
17:59:11 <ais523> and so a reaction of not really understanding it is connected to that – I didn't really understand the problem either, so I wrote an esolang
17:59:25 <ais523> and found one solution but it might not be the best solution (it would be interesting in a way if it is, but I suspect it isn't)
17:59:56 <Yayimhere> it was also just one of the first languages of yours I came across
18:00:52 <ais523> now I'm wondering which of my other esolangs were created to highlight a problem – is it just Feed the Chaos? I can't think of any others offhand
18:01:15 <Yayimhere> I cant either
18:01:23 <Yayimhere> Globe?
18:01:25 <Yayimhere> perhaps
18:01:36 <ais523> korvo: I'm not sure that interviews necessarily have to be investigative – giving the interviewee space to talk about what they want to talk about is often enough
18:01:47 <Yayimhere> i agree
18:02:05 <ais523> although maybe the ideal is to present new points of view for the interviewee to think aobut
18:02:17 <ais523> Globe is more an exploration of a solution than an exploration of a problem, I think
18:02:26 <korvo> ais523: If it's not a conversation then what's the point of the second person?
18:02:30 <ais523> but I guess that's a way of highlighting a problem in its own right
18:02:38 <ais523> korvo: at least in this case, visibility
18:02:41 <Yayimhere> I think he certainly did bring me ideas I hadn't though about before
18:02:53 <korvo> ais523: Oh! Then *the entire enterprise* is wrong and backwards.
18:03:45 <ais523> but it also helps the interviewee to organise their thoughts
18:03:51 <korvo> The *entire problem* with Lex Friedman and similar interviewers is that they provide a platform without any insight or nuance. Friedman uploads 2hrs of their guest ranting, punctuated every 30min by a fresh one-sentence question.
18:05:03 <ais523> I'm reminded of the debates in which election candidates try to convince people to vote for them: those technically have an interviewer but their role is intentionally minimal, only there to set topics (and occasionally to do fact checks)
18:05:36 <Yayimhere> Temkin atleast certainly sparked some ideas I hadn't though about before
18:06:26 <ais523> there is a long-running program in the UK called "question time" where they invite a member of all the major political parties, and sometimes a celebrity or two with unusual political views, and ask them questions which are basically there to set a topic on which the panel expresses their own viewpoint
18:06:39 <korvo> ais523: I guess that I think that organizing thoughts is something a person can prompt themselves to do. When I was in high school, as part of debate and speech, I was taught to interrogate my own position. These sorts of self-questioning setups are, at least to me, a necessary part of writing blog posts.
18:07:01 <ais523> and this is valuable because it serves as a pretty reliable way to understand the views of the people that you're voting for
18:07:08 <ais523> and what other possible views might exist
18:07:38 <korvo> We can't do that in the USA because our political candidates are too stupid and the First Amendment ensures that we can insult them for it. The UK has trouble admitting that their king is unelected; meanwhile in the USA we famously disqualified a man from office because he could not spell "potato".
18:08:04 <Yayimhere> i have to go now but I will be back
18:08:17 <korvo> Yayimhere: I'm glad that it was a good experience for you. I invite you to blog more often and explain your work.
18:08:45 * korvo &
18:09:49 <ais523> the King simultaneously has, even in theory, both a very large amount of political power and almost no political power: he has some very wide-ranging abilities but isn't supposed to use them except on the advice of the government, which effectively make them the government's powers
18:10:02 <ais523> (and the "isn't supposed to" is actually officially documented somewhere)
18:11:11 <ais523> so in practice the role turns into "person who officially interprets what the government's intention is"
18:11:26 <ais523> it is not obvious that this needs to be an elected role
18:11:38 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:34:33 -!- tromp has joined.
18:49:26 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172294&oldid=172293 * Aadenboy * (-240) remove unnecessary command
18:53:25 <Yayimhere> korvo: i dont really have anywhere to blog about my languages
18:55:26 <Yayimhere> but it do see the gain in doing it
19:01:12 <Yayimhere> hey, ais523, are you still trying to prove Annihilator's computational class? or are other things occupying your mind
19:01:23 <ais523> I haven't looked at that problem in a while
19:01:34 <ais523> normally, if I don't make progress on a computational class issue for a while, I just give up until I have new ideas
19:02:01 <Yayimhere> k
19:02:11 <Yayimhere> i was just wondering since I was reading the page
19:04:45 -!- Yayimhere has quit (Quit: Ping timeout (120 seconds)).
19:05:42 -!- Yayimhere has joined.
19:06:45 <esolangs> [[User talk:Aadenboy/Countable]] N https://esolangs.org/w/index.php?oldid=172295 * Yayimhere2(school) * (+164) Created page with "I like where this language is going! Keep at it --~~~~"
19:29:13 -!- Yayimhere has quit (Quit: Client closed).
19:32:50 <korvo> I could have sworn that I'd told them about Neocities and a few other options. I can understand the psychological desire to put barriers in front of ultimately-undesirable goals, though.
19:33:59 <ais523> writing a blog is one thing, getting people to read it is another
19:34:26 <ais523> I'm fairly well-connected in that respect, but even so I don't think all that many people read my blog (it is hard to tell because many of the requests to it will be from AI scrapers)
19:36:22 <korvo> Sometimes the point of the blog is not so that people proactively read it, but so that you can retroactively hand them an article when they are loudly wrong.
19:36:40 <korvo> Other times it's cathartic to get a short story or essay out of the mind and onto the page.
19:36:42 -!- Lord_of_Life_ has joined.
19:37:31 -!- Lord_of_Life has quit (Ping timeout: 264 seconds).
19:39:32 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
20:03:30 <esolangs> [[User talk:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172296&oldid=172295 * Aadenboy * (+287) thanks!
20:05:52 <esolangs> [[Livefish]] https://esolangs.org/w/index.php?diff=172297&oldid=146676 * DockedChutoy * (+5) fix
20:21:49 <scoofy> it's weird to think, anything you write onto a blog, now will become some company's AI's training data
20:22:06 <scoofy> with so many AI scraping bots seeking content
20:23:18 <korvo> Why is that weird? The law on it was settled two decades ago and the practice was standardized three decades ago.
20:23:22 -!- somefan has joined.
20:24:26 <korvo> It is interesting how training-time LLMs are now an audience worth considering. People have historically not appreciated my blog posts because they don't really like my POV, but an LLM doesn't care and may even learn something by reading. (Humans famously don't read much of what they claim to read, you see.)
20:25:33 <scoofy> it's "weird" because part of my brain becomes part of some AI's brain by "learning" my thought patterns
20:25:39 <korvo> More important is that people not upload stuff to GitHub if they aren't prepared to have their stuff used for Copilot training. For me, this is largely *funny* because most of my code is bespoke to the point where it's not useful for corporations; but also the few things that matter are uploaded elsewhere.
20:25:56 <scoofy> so you're "influencing" the AI. it's like a separate audience...
20:26:21 <scoofy> their AI could learn "bad" things from you
20:26:33 <scoofy> there's no supervision in this web scraping
20:26:45 -!- somefan has quit (Remote host closed the connection).
20:26:55 -!- somefan has joined.
20:27:08 <scoofy> at least some reputable companies use a selected, reviewed data set for training, not random ad-hoc internet stuff
20:27:59 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172298&oldid=170908 * Yayimhere2(school) * (+42) /* Examples */
20:28:10 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172299&oldid=172298 * Yayimhere2(school) * (+0) /* Examples */
20:28:33 <esolangs> [[Talk:Turing tarpit]] https://esolangs.org/w/index.php?diff=172300&oldid=172292 * * (+633) /* What is the limit to The Turing Tarpit? */
20:28:51 <korvo> Well, they use Common Crawl, see commoncrawl.org for more details. It's random ad-hoc stuff that people are sharing with each other; maybe it's popular, maybe not. It's preferable to a high-Reddit diet like the one that induced glitch tokens in GPT-2.
20:30:11 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172301&oldid=172299 * Yayimhere2(school) * (+215) /* Examples */
20:34:12 <ais523> I've considered designing a server to detect various styles of scrapers and send them information that poisons the model in various ways, to make it possible to subsequently check to see who was doing the scraping by prompting them with the trigger phrase and seeing which ones return poisoned results
20:34:55 <korvo> scoofy: Here's how I think of it: an LLM is a bag of sentences. When you reach into it with a given context, you can pull out any sentence in the training data which matches that context, as well as many similar sentences which might occur in future training data. The controls we have as writers are to put certain sentences out there and hope that they get into the bag, or to withhold certain sentences from the public to make them less likely.
20:35:09 <korvo> I put many more words in the comments here: https://awful.systems/post/5211510
20:36:42 <korvo> ais523: https://iocaine.madhouse-project.org/ is what many folks are using. You can use awful.systems as an example domain; in some search engines like DDG/Bing there are still good results, but Google no longer returns useful results from that domain at all.
20:36:57 <scoofy> ais523: for scrapers, random replace some words in your text with the N-word
20:37:21 <korvo> scoofy: 4chan already appears in training data~
20:37:58 <ais523> korvo: I'm not sure how good Iocaine is at actually poisoning training data, as opposed to merely being useless – perhaps it's pretty effective though (it is named after a fictional poison, after all)
20:38:29 <APic> Good Night *
20:39:04 <korvo> Peace.
20:39:42 <korvo> ais523: It has to be manually filtered by humans. It's not as useless as Glaze or Nightshade, for which there are automatic tagging-and-cleaning pipelines!
20:40:51 <ais523> korvo: ah, I was more thinking about "assuming it isn't filtered, will it have a substantial impact on the LLM's output"?
20:41:30 <ais523> but it's based on markov chains, which will end up generating fragments of plausible sentences very often because that's what they do, so maybe a query to the LLM will match something that randomly appeared in a Markov chain and the LLM will think that the rest of the Markov chain is a good continuation
20:41:46 <scoofy> a.k.a. hallucination
20:42:27 <ais523> LLM hallucinations are pretty different from that, they normally consists of statement that assume that a pattern continues, when the pattern doesn't actually exist
20:42:38 <korvo> ais523: In general, low-perplexity text doesn't appear to harm training. There's a paper with a title like "Textbooks are all you need" which shows that the most important training data is high-perplexity textbooks.
20:42:41 <ais523> or does exist but not in that context
20:43:22 <korvo> If you train the LLM *only* on low-perplexity inputs then there is a ceiling to the learned complexity. (...Phrased like that, maybe it could even be a theorem of the PAC framework?) That's the so-called "model collapse" that folks sometimes discuss.
20:43:48 <ais523> I was thinking more like, making the pages you serve to scrapers all contain a particular false sentence, and then see whose LLMs end up believing the sentence
20:43:58 <ais523> especially if it's something that's harmless and plausible, but wrong
20:44:03 <ais523> sort-of like trap streets on maps
20:44:40 <korvo> scoofy: A confabulation, or what folks call "hallucination", is due to the fact that natlangs all contain words for dualizing/polarizing/inverting a concept: hot and cold are a good example from biology and physics.
20:45:47 <korvo> So you get — cannot stress enough that this is what they really call it — "Waluigi paths", which are relatively likely paths that can get an LLM to completely flip its polarity with regard to a concept under discussion. This is broadly called the "Waluigi effect".
20:46:33 <scoofy> maybe comes from the fact that training data has polarity shifts in comparisons
20:46:47 <korvo> For me, a much neater explanation is that an LLM *must* confabulate sometimes because it's a finite pile of weights trying to model a nearly-infinite world; there's no way that every true fact (and *only* true facts, defying Tarski and Gödel somehow) can fit into only a few GiB.
20:47:15 <korvo> scoofy: It's because the highest-probability answers to any yes/no question are "yes" and "no", polar opposites.
20:48:44 <ais523> korvo: the "ideal" for an AI model with an LLM-like interface would be for it to be a lossily compressed collection of a statement of facts, with the lossiness not mattering in practice (or causing the AI to say that it didn't know)
20:48:52 <korvo> There's also epistemological hurdles; https://lobste.rs/s/yykymj/hallucinations_are_inevitable_can_be#c_aexu7v covers those and links to more.
20:48:58 <ais523> I think it's theoretically plausible that one of those could exist in a few GiB – although I also think that LLMs are not that
20:49:18 <scoofy> stochastic parrots
20:49:48 <korvo> ais523: Yeah. We know that, regardless of architecture, it's not possible for any finite pile of facts to generate only the true facts about natural numbers; that's just Tarski's Undefinability. So even this sort of ideal model is still just a compressed Wikipedia.
20:50:25 <esolangs> [[Index php]] N https://esolangs.org/w/index.php?oldid=172302 * * (+583) Created page with "'''Index php''' is an esolang made by [[User:]]. == What and why == Index php is a random idea had in mind (kinda) based in a [[Minsky machine]]. It's because had no idea what to do. Also, it is his second esolang in 2026! == Commands, i guess == * {{cd|ADD [X] [Y]}}: Adds
20:50:33 <korvo> scoofy: Yes, but you have to actually read Gebru et al for the nuance. A parrot doesn't just emit one token; they emit a *path* of tokens. It's the same bag-of-sentences model I mentioned earlier!
20:50:44 <scoofy> that's eventually anything gravitates to, when it's based on webscraping. a compressed Wikipedia + Reddit + Quora
20:50:57 <ais523> now I'm wondering what an LLM trained on only Reddit would look like
20:51:13 <esolangs> [[User:/esolangs]] https://esolangs.org/w/index.php?diff=172303&oldid=171964 * * (+15)
20:51:25 <ais523> I don't even know what proportion of Reddit is serious discussion and what proportion is shitposting and memes
20:51:30 <scoofy> llama from meta spits stuff quoting from reddit
20:51:38 <ais523> but would expect the LLM to roughly match it
20:51:41 <scoofy> their scrapers definitely seen reddit
20:51:49 <ais523> oh yes, but they have other sources too
20:51:54 <scoofy> at least one version
20:52:03 <scoofy> quotes quora as well
20:52:06 <scoofy> and other references
20:52:20 <scoofy> so in the end... those kind of LLMs tend to be Internet.zip
20:52:20 <korvo> ais523: GPT-2 and GPT-3 are good hints. A now-classic explanation of the "SolidGoldMagikarp" meme exists at (sigh) LW: https://www.lesswrong.com/posts/aPeJE8bSo6rAFoLqg/solidgoldmagikarp-plus-prompt-generation
20:53:13 <scoofy> spits out something in a second, that you could have found with 1 min of googling
20:53:35 <korvo> scoofy: They have to be! All general compression techniques have universal properties in common. Shalizi's got a great explanation: http://bactra.org/notebooks/nn-attention-and-transformers.html
20:53:40 <scoofy> while boiling some cooling water in some giant AI data centre
20:53:58 <scoofy> stockpiling on gazillion zigabytes of RAM, pumping up memory prices
20:54:00 <korvo> Oh whoops, you specifically want http://bactra.org/notebooks/nn-attention-and-transformers.html#gllz
20:55:16 <korvo> scoofy: Not to defend the bubble, but data centers don't boil water. They buy standard drinking water *at market rates* and spray it into the incoming air for air conditioning. Most of it evaporates off. This is why they're so often located near rivers; they get cheap power from dams and cheap water too.
20:56:15 <korvo> Like, if you want to be angry about water usage, attack golf courses.
20:56:22 <scoofy> because they need those yottabyes of RAM to store Internet.zip for their AI agents
20:57:09 <scoofy> that's it's so fast because the (extracted) weights are already in memory. i.e. fast access
20:57:26 <korvo> OpenAI's buying RAM because they want to own their own data center. *Anybody* who makes data centers needs to buy RAM. Check the secondhand RAM market if you want affordable RAM; I bought an old 150 GiB Dell workstation for $150, for example.
20:57:34 <scoofy> so the more memory they have... the faster they can process
20:58:23 <scoofy> yea, but to run AI you need like... a lot of RAM, compared to your average application
20:58:40 <scoofy> when checking how to run these models locally. some require quite a lot of RAM
20:59:34 <korvo> No. To run *LLMs* you need a fair amount of RAM. And, actually, you can get by with only having the model state in RAM and the model weights on disk! Inference only requires a few MiB of RAM.
20:59:47 <korvo> This is why they are "large".
21:00:23 <korvo> Traditional AI schemes usually are less than a MiB. They had to be! We've been doing image classification since the 1960s. We've been doing speech synthesis since the 1970s.
21:01:39 <scoofy> well, everything could be cached from disk, of course
21:01:47 <scoofy> probably they don't do that for performance
21:01:57 <korvo> ais523: Ugh, wrong link, sorry. You want Part 3, where they discover the habits of certain Redditors: https://www.lesswrong.com/posts/8viQEp8KBg2QSW4Yc/solidgoldmagikarp-iii-glitch-token-archaeology
21:02:32 <korvo> scoofy: Yep. I'm doing experiments on that 150GiB machine. I also build stuff like the Linux kernel, systemd, and Firefox, which can't be built on their target machines either. A *lot of things* need high-RAM machines to build!
21:02:45 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172304&oldid=172254 * A() * (-157) /* Calculator */
21:04:34 <korvo> At any rate, OpenAI's products need RAM *on the GPU board* so that the GPU can quickly access it, and that is *not* in competition with consumer RAM markets. What actually happened: Micron's winding down their Crucial consumer brand and this is raising prices because there's now less competition.
21:04:43 <esolangs> [[PMPL]] https://esolangs.org/w/index.php?diff=172305&oldid=172304 * A() * (+18)
21:05:31 <esolangs> [[Special:Log/move]] move_redir * * moved [[EmojiStack]] to [[Mojifunge]] over redirect
21:05:31 <esolangs> [[Special:Log/delete]] delete_redir * * deleted redirect [[Mojifunge]] by overwriting: Deleted to make way for move from "[[EmojiStack]]"
21:06:23 <esolangs> [[EmojiStack]] https://esolangs.org/w/index.php?diff=172308&oldid=172307 * * (+2162) Removed redirect to [[Mojifunge]]
21:10:31 <ais523> korvo: right, the problem is that less memory is being produced because one major manufacturer's entire memory-production capacity was bought up
21:11:16 <korvo> ais523: Well, it's been *allocated*. It hasn't actually been *paid for*. Big difference.
21:11:47 <ais523> I was hoping that Micron would ensure that this was being paid for in advance, especially as I expect some of their few remaining customers to go bankrupt at some point (maybe soon)
21:12:18 <ais523> I'm more wondering about what's going to happen to all this neural-network hardware when the bubble bursts
21:12:25 <korvo> But yeah, the secondhand market hasn't seen a shift. I don't have a problem with people insisting on fresh DIMMs, but it's just like with new cars: you're paying that premium because it's new and you lose 20% of the value the moment it's driven off the lot.
21:13:11 <ais523> it doesn't possibly make sense for it to be needed in this high quantity *even if* LLMs turn out to be successful and long-lived, people will work out the largest model they need and use just the resources on it that are needed
21:13:54 <ais523> at least for me, with respect to memory and data storage, second-hand doesn't make sense because by the time people stop using the memory/storage it is normally exponentially smaller than things that are cheaply currently available
21:13:55 <korvo> Well, it's not neural-network hardware. It's matrix-multiplying hardware. Maybe some more specialized groups like Coral will have trouble selling their TPU-on-a-stick, but Google's TPU business has only grown with time.
21:14:35 <ais523> specifically dense matrices, right? spare matrices need different algorithms, so that reduces the use cases somewhat
21:14:47 <ais523> * sparse matrices
21:14:57 <korvo> If you're thinking of nVidia, rumor is that the GPUs they're selling to Microsoft, Google, Oracle, and Coreweave aren't really suitable for GPGPU workloads. They're more like Bitcoin-mining ASICs; they *could* be reused but they're somewhat specialized and have shorter projected lifespans.
21:15:06 <ais523> and the number format may not generalise well either, neural networks often use very low-precision numbers
21:15:20 <korvo> Yeah, dense matrices. Like, Coral was originally targeting image-classification workloads IIRC.
21:18:38 <ais523> in any case, my opinions/predictions about the future of technology is "LLMs are a dead end that will never be substantially more useful than they are today (where their usefulness is somewhat limited), but neural networks / machine learning in general are useful and probably underutilised"
21:19:22 <ais523> even so, I'm concerned about the quantity of fast neural-network hardware, because most plausible applications for them don't need to be at that kind of scale (even LLMs almost certainly don't need to be – for most of the tasks at which LLMs are good, smaller language models would also be good)
21:20:20 <korvo> I would point out something new in every era of language modeling, going all the way back to Markov. LLMs have given us the ability to compare sentences for semantic similarity, and more generally to embed sentences into a vector space over floats; it's not nothing!
21:20:55 <ais523> r/counting breaking ChatGPT's token inference is both amazing, and extremely plausible – the entire subreddit is almost entirely based on comment volume
21:21:20 <ais523> (IIRC I intentionally contributed exactly 1 number to that count – but I don't use Reddit nowadays)
21:22:54 <sorear> if the state of the art becomes something other than attention-transformers, will people come up with a new term or will they keep calling everything "LLM" and obfuscating the difference?
21:23:21 <korvo> I think that the main problem with LLMs is that the products based on them are making horribly false and misleading claims. More generally, the project of robotics/AI is to create artifical laborers without rights, which we should reject on multiple moral grounds.
21:27:05 <sorear> thoroughly uninterested in arguments about attention-transformers that rely _solely_ on the consequences of being a finite system, unless the speaker is trying to argue for duality and/or biological hypercomputation
21:28:37 <sorear> kind of reminds me of the "we know a bunch of strategies to prove P!=NP that cannot possibly work because they relativize, in some sense, and P=NP under some oracles"
21:29:58 <ais523> that P≠NP situation is one of those results that makes the situation so much harder to resolve – we have a proof that entire classes of P≠NP proofs cannot possibly work, but it is not powerful enough to prove that P=NP even nonconstructively
21:30:14 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:30:50 <ais523> it's not possible for P=?NP to be proven formally undecidable, right? because doing so would prove that no polynomial-time algorithm for solving NP-complete problems exist, and thus that P≠NP
21:30:59 <korvo> sorear: Personally I'm pretty sensitive to the difference because I study Mamba, RWKV, and other recurrent/transformers hybrids. I think that it's nice to have a basis for confabulation that makes oracles and genies impossible, even though I know that it won't convince everybody.
21:31:00 <ais523> and so if P=?NP is formally undecidable, there will be no way to prove it
21:32:16 <ais523> fwiw, Hofstadter (when discussing the Church-Turing thesis) brings up the possibility of biological hypercomputation (not as something he believes in, but as something he wasn't sure he could rule out definitively)
21:32:51 <sorear> it's possible that P=NP but no correct algorithm can be proven correct for all inputs
21:33:31 <sorear> sigma_2
21:35:01 <korvo> Whether P=NP is arithmetic, I thought? So it *has* an answer. Maybe we don't have a strong-enough number theory yet.
21:36:39 <ais523> hmm, the case of an algorithm that is correct but cannot be proven so is interesting – I've seen similar situations before
21:37:18 <ais523> in the case of P=NP, such algorithms would practically be very useful because they cannot give the *wrong* answer, only a correct answer or a "don't know" (because checking if a purported solution to an NP problem is correct is fast)
21:38:56 <sorear> there's a fairly standard approach, iterate over a program index and a runtime and stop when one of the programs outputs a satisfying assignment
21:39:24 <sorear> easily proven to be correct and, conditionally on P=NP, runs in time of some polynomial
21:40:37 <korvo> I don't read Russian, but I gather that Levin's entire research programme worked that way. First, show that a brute search is complete and correct; second, show that it is optimal; third, show that it is NP-complete.
21:41:06 <korvo> So P vs NP is purely about determining the runtime of those algorithms; it's a fine-structure question about the Polynomial Hierarchy.
21:41:16 <ais523> sorear: oh right, because for any given problem in P, this only has to search through finitely many programs and the number of programs it has to search doesn't depend on the input
21:41:23 <ais523> so the result is polynomial-time but with a terrible constant factor
21:41:38 <ais523> and if P≠NP, this algorithm is still correct but it isn't polynomial-time
21:44:05 <sorear> the problem with "prove brute force search is optimal" is that it generally _isn't_, the exponential time hypothesis is a subtler statement than that
21:46:27 <b_jonas> yes, we know an algorithm that solves NP programs in polynomial time if P=NP, but this is useless for two reasons, one is that even though it's polynomial time it's quite slow for our hardware, the other is that most likely P≠NP
21:47:56 <korvo> sorear: Right, and even folks like myself who are skeptical of SETH are still usually willing to concede ETH. AIUI we have no evidence against ETH, and instead we have stuff like phase transitions in k-SAT.
21:48:13 <ais523> not only is it polynomial time, it also gives you the lowest possible polynomial degree
21:48:47 <ais523> I was planning to do something similar in a golfing language – run all possible evaluation orders in parallel
21:49:32 <ais523> because often when you're writing a golfed program, some of the evaluation orders terminate and others go into infinite loops, so this would guarantee that the program would terminate if there was any evaluation order for which it terminated
21:49:48 <ais523> (in code golf, correctly behaving programs are almost always expected to terminate)
21:51:32 <korvo> Tangent: Nobody has implemented [[Pola]] yet. If you can implement any NPC problem in Pola then P=NP. I'd expect any true believers in P=NP to jump at this opportunity to do some descriptive complexity theory with witnessing programs.
21:52:36 <ais523> fwiw, I think I assign a higher probability to the possibility that P=NP than most computer scientists do (although it's still fairly low)
21:52:51 <ais523> there are so many cases where things turned out to have a lower complexity than expected
21:54:53 <korvo> I'm one of those Bayesian freaks, and my prior is a composite of several surveys; I'm 99% sure that we are in either Minicrypt or Cryptomania based on empirical evidence. This is a relatively weak belief, so I could be moved by evidence, but it's above the magic threshold of 7/8, so I hold it.
21:56:56 <ais523> oh yes, my beliefs about P=NP are fairly weak and could easily be moved by evidence – but on the other hand, I'm not expecting substantial new evidence any time soon
21:57:37 <korvo> Tangent to LLMs: My P(doom from AI) is too small to numerically estimate. It's dominated by e.g. P(doom from nuclear apocalypse), which is like 0.5%. I think people panic too much about black-swan events while ignoring the underlying patterns and implied required maintenance of societal infrastructure.
21:57:37 <b_jonas> so I have a complexity question. your input is a Catan board (hex grid) of unlimited size and the information of which edges have a road by the yellow player. The number of roads is also unlimited, unlike in real Catan and its extensions. Is there a polynomial time algorithm to find the longest path of roads that doesn't reuse any road?
21:57:39 <esolangs> [[User:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172309&oldid=172161 * RaiseAfloppaFan3925 * (-133)
21:57:45 <ais523> I was brought up to believe in Bayesianism, although that mostly just left me questioning it a bit
21:59:15 <b_jonas> this is an easy problem in real Catan, which is limited to 14 road pieces per player, and I think even in all Catan expansions though I don't actually know most of them, heuristics work well enough for those small inputs. but I don't know a general polynomial time algorithm, nor can prove that it's NP-hard
21:59:16 <ais523> korvo: the way I see it is that a) the theoretical risk from a sufficiently smart AI is very large, but the odds that such an AI actually exists or could be created short term is very small; b) in addition to risks from underestimating AIs, there are also risks from overestimating AIs, and those could potentially be much larger (but the odds of them being apocalyptic are quite low)
21:59:54 <korvo> I live in a long-term earthquake zone (Cascadia Subduction Zone) and so I need something like Bayesianism to manage the existential dread from the Floor of Damocles.
22:00:00 <b_jonas> ais523: hehe, that's https://xkcd.com/552/
22:00:20 <ais523> like, if a country assumes an LLM is smarter than humans and decides to put it in charge of the government as a consequence, that could have huge consequences if the LLM
22:01:05 <ais523> * if the LLM isn't particularly smart
22:03:24 <sorear> I'm going to call that "probably NP-complete" as a variant of the planar longest path problem but I haven't looked closely at that recently enough to know where the cutoff is
22:04:02 <korvo> b_jonas: Does it have to be a usable road? Like, does it have to stretch from port to port?
22:04:14 <b_jonas> korvo: no
22:05:02 <b_jonas> sorear: "planar longest path"? I'll try to search for that, good idea
22:05:48 -!- pool has joined.
22:06:22 <korvo> ais523: That's understandable. I think that your framing, which I've heard from other folks, is 100% reasonable. At the same time, there's a parallel framing where we talk about e.g. P(doom from pyramid scheme). We won't go extinct from a pyramid scheme, but in 1997 one nearly destroyed the government of Albania!
22:07:09 <korvo> So should I say that P(doom from pyramid scheme) is high because government leaders are stupid enough to do it again, internationally, or low because pyramid schemes are obviously silly and we're all more reasonable people than that?
22:09:05 <sorear> Statistically "giant meteor" is surprisingly high on the list of most likely things to kill any given person
22:09:39 <korvo> b_jonas: I think that this is techically a "longest trail problem", where a trail is a path that doesn't reuse edges but can reuse vertices. Not sure how you feel about that. I am not sure whether it's NP-hard, but it probably is reducible to longest-path by putting some restriction on vertices.
22:10:38 <korvo> sorear: Exactly! So should we talk of P(doom to me, personally, because of my personal choices) or P(doom to a country because its leader was influenced by something on their phone)?
22:10:47 <sorear> catan roads are a cubic graph, you can't reuse a vertex except at the beginning or the end because that would require a degree >= 4
22:11:07 <sorear> Or P(doom to somebody, somewhere, alive today)
22:11:54 <sorear> subcubic
22:12:03 <korvo> Hey, that'd work. So the longest trail can't be longer than the longest path + 2. Nice.
22:12:44 <ais523> giant meteors are less worrying nowadays than they historically were because a) governments do actually check for them and would probably compete to being able to take credit for preventing doom from them, and b) the more devastating a meteor hit would be, the easier the meteor would be to spot and thus the earlier we could do something about it
22:13:34 <b_jonas> korvo: on the hex grid these are almost the same, because every node has at most 3 degree, so you can only reuse nodes at the ends of the path, so the length can differ by at most 2.
22:13:36 <ais523> if we spot a meteor a long distance away, its trajectory only needs to be changed very slightly to prevent it colliding with Earth, so a comparatively small intervention would be sufficient
22:13:51 <b_jonas> yeah, what sorear says
22:14:37 <ais523> <korvo> So should I say that P(doom from pyramid scheme) is high because government leaders are stupid enough to do it again, internationally ← arguably, with LLMs, government leaders are actually doing that at the moment
22:14:40 <korvo> I also like the astrological analogy because it turns out that there are more interstellar comets than we expected, so our P(ancient aliens) should actually have been much higher from a Fermi/Drake approach. But they don't get close to Earth either, so maybe there's a more universal P(things come close to Earth) that we can use as a generalization.
22:15:05 <ais523> but I'm hoping that the damage will be confined to a somewhat suboptimal allocation of resources
22:15:22 <korvo> Similarly, maybe there's a P(doom from leaders looking at phone) which is more general than P(doom from BTC prices) in El Salvador or P(doom from Stable Diffusion images) in USA.
22:18:39 <korvo> ais523: Yeah, that's where I am right now too. The pattern of taking Softbank money, taking Saudi money, and finally hitting a wall is well-documented and inevitable at this point; there's simply not a spare trillion USD worth of spare wealth to turn into a spare trillion USD worth of silicon monocrystal.
22:19:45 <korvo> So our grey-goo scenario ends in the same place as my yeast during the pre-pancake period: out of food, unable to expand, ready to be converted and eaten in turn.
22:20:07 <ais523> I have seen a conjecture that at least some LLM providers are using a strategy of racing to become too big to fail before they actually fail
22:20:20 <korvo> OpenAI, for sure.
22:21:52 <korvo> At this point, OpenAI's actual failure is partially like Microsoft's, where self-cannibalization is inevitable due to stagnant monopoly, but also increasingly like Enron's, a staggering amount of book-cooking that destroyed one of the big international auditors in turn. Not sure if Enron's taught outside the USA.
22:22:25 <ais523> at least in the UK, I think most people have heard of Enron and have a basic idea of what happened to them, but don't know the details – at least I'm in that situation
22:22:50 <korvo> The dude that unwound Enron is currently in charge of unwinding FTX. I think it will be an amazing cap to a career if he's appointed to unwind OpenAI.
22:23:00 <ais523> it is sometimes hard for me to know what situation the typical person would be in, due to not being a typical person myself – but I have to guess whether my atypicalities are relevant to the situation
22:23:41 <korvo> Enron was a power utility in Texas. They cooked their books. Their auditor helped them cover up the books. That's really all that matters; it was a *big* fraud, mostly.
22:23:56 <sorear> as someone directly affected I could probably know more about them than I do
22:25:17 <ais523> now I'm wondering what the incentives are, for someone engaged in accounting fraud, to do it to a small extent rather than a large extent – it's well-established that for most crimes you want such incentives to exist, to discourage criminals from deciding to go all-in once they've decided to commit crimes in the first place
22:26:07 <b_jonas> korvo: ok, I think you're right, so apparently it's NP-complete to determine if a planar graph has a hamiltonian circuit, which is an old result from the 70s but I hadn't recalled it, and I think you can do a polynomial reduction from this to the catan longest road problem, so that one is NP-complete too.
22:26:14 <sorear> there's the "here's one of the great natural language training datasets" angle, the "here's the blood that CAISO's market rules were written in" angle, and the "corporate fraud" angle, the last of which I know the least about
22:27:43 <korvo> b_jonas: I was just about to reply! So I think I've informally sketched that it's NP-complete. The missing piece is how to ensure that there aren't any trails which are longer than the longest path but built from the *second-longest* path. I think that we can do a poly-time reduction: when doing the NP-complete longest-path search, we can find all longest paths for free, so let's just find all of the paths within length 2 of the longest path.
22:28:33 <korvo> I think there can only be poly many such paths, so just iterate through them and make all of the longer trails; there's only six possibilities per path, right? So that's a poly-time reduction.
22:28:34 <sorear> the annoying part will be length-matching the embeddings of edges
22:30:35 <sorear> i think that a lot of assumptions about how, specifically, AI doom plays out were established in the 20th century and became entrenched with less actual information than we have now
22:32:52 <korvo> Yep. Offering professional services, I'm constantly bumping against the Computer Fraud & Abuse Act (CFAA), which the USA established as a response to a film called "Wargames" which is basically about a teenager SSH'ing into the Pentagon and launching nukes.
22:33:38 <korvo> (It's not a good film. If you want something from that era, "Hackers" is a standard recommendation. It's also dated but at least it's got better representation of actual hacking and social engineering.)
22:34:49 <korvo> Similarly, almost all AI doom discussion devolves into referencing "Terminator", "Terminator 2", or "The Matrix". And it's all built upon Asimov and Dick and Heinlein and Bradbury, which in turn was built upon "Metropolis" and "Rossum's Universal Robots".
22:35:07 <sorear> arguably a machine which can hallucinate on any subject _is_ an AGI as the term was originally defined, illustrating the limitations of the concept
22:36:24 <ais523> fwiw, I've considered for a while that corporations are, in effect, artificial general intelligences
22:36:40 <ais523> they are powered by human thought, which makes them not count from many people's points of view
22:36:59 <ais523> but sometimes they can act as though they hold opinions that don't match those of any of the people present, and they can certainly take actions that reasonable humans likely wouldn't take
22:37:00 <korvo> At a former employer, P(doom from AI) was not a serious topic, but P(person is killed by cobot) was a real thing we discussed. I'm told that P(person is killed by high-speed swinging arm) is a real thing too, although fortunately I've not had one of *those* jobs. Yet.
22:37:52 <ais523> you can have a lot of people communicating and form an emergent system out of them, and not really have much of an idea of how the system as a whole will behave
22:38:00 <korvo> ais523: Charlie Stross, myself, and a few other Awful Systems regulars have discussed this many times. The consensus is that selling shares was the tipping point; the East Indies Trade Company was the first paperclip-maximizer.
22:38:03 <ais523> …perhaps this would be an interesting esolang idea
22:38:30 <korvo> Similarly, we locate the Singularity sometime in the past. Stross puts it near the beginning of the Industrial Revolution IIRC; I put it in the 1910s or so, near quantum mechanics.
22:40:35 <sorear> if by "high-speed swinging arm" you mean "sailboat boom"
22:43:24 <korvo> sorear: Oh wow. I kind of love that? I was thinking of the welding and assembling arms in a car factory but now I'm also thinking of big looms. I see robotics, cybernetics, and AI as the same thing; I'd be willing to think of it as stretching further back, too.
22:43:37 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=172310&oldid=172236 * Buckets * (+12) /* P */
22:44:05 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=172311&oldid=172237 * Buckets * (+11)
22:44:23 <esolangs> [[Phurb]] N https://esolangs.org/w/index.php?oldid=172312 * Buckets * (+782) Created page with "Phurb is an Esoteric Programming language created By [[User:Buckets]] in 2020. ] {| class="wikitable" |- ! Commands !! Instructions |- | "" || Print What is within The Quotes, their representations. |- | m = || Represent the Variable m as whatever US On the Other side Of t
22:46:50 <sorear> i spent a week on a ship with the boom at head height, did not get paid
22:47:27 <korvo> Terrifying and frustrating.
22:48:57 <korvo> b_jonas: Oh! I'm sorry, 3 × 3 = 9 possible paths, not 6.
23:01:55 <esolangs> [[Talk:Turing tarpit]] https://esolangs.org/w/index.php?diff=172313&oldid=172300 * Corbin * (+487) /* What is the limit to The Turing Tarpit? */ Machine or language?
23:05:09 -!- b_jonas has quit (Ping timeout: 252 seconds).
23:11:40 -!- Sgeo has joined.
23:13:48 <ais523> korvo: I've seen you claim a few times that a programming language must be a language over an alphabet – I'm not sure I agree
23:15:14 <ais523> although it maybe comes down to whether or not there's a distinction between a program and a description of a program
23:15:42 <ais523> if a program isn't represented as a string of symbols, we have to convert it to one in order to be able to describe it to a computer in order to have it executed
23:24:55 <korvo> ais523: I'm saying it for the benefit of the youngsters, to force them to clarify their thinking. I'd hope that my structuring of the page, so that we have many different kinds of computational systems and different metrics for each of them, is open enough to accomodate more non-languages.
23:27:02 <korvo> Here, the clarity is in realizing that a BF machine must have eight opcodes, but a BF monoid might have smaller rank.
23:31:44 -!- b_jonas has joined.
23:33:04 <ais523> korvo: such as the classic wrapping-BF technique of implementing a - as 255 +s
23:33:48 <korvo> Yeah, that works.
23:56:00 <b_jonas> or even without wrapping, you can have -< as a single builtin instead of - and < separately, I think that's a well-known trick
23:58:07 <b_jonas> then rewrite < to + -< and rewrite - to -< > and add an extra > to the start of the program so you don't fall off the start of the tape
23:58:24 <ais523> the whole BF minimization page is full of people starting like this and then going off the rails
23:59:12 <ais523> https://esolangs.org/wiki/Simple_translation is an attempt to make sense of the mess
23:59:27 <ais523> and might correspond to korvo's concept of language rank
23:59:45 <korvo> And [[monoid]] is an attempt to make sense of [[simple translation]], since so much of that is actually unproven and imprecise.
2026-01-06
00:01:12 <ais523> well, it's a definition, so "unproven" doesn't really make sense as an adjective to apply to it
00:03:12 <ais523> I think I would make it precise as follows: you have two transformations, each of which consistently replaces a single character in the source code of one language with a sequence of characters in the source code of the other (one where the single characters are from one language, one where the single characters are from the other), and for any syntactically valid program in either language, compiling it into the other language using the appropriate
00:03:14 <ais523> transformation yields a program with the same halting-and-IO behaviour
00:05:17 <ais523> I suspect that BF can be compiled into a two-symbol language under this definition, incidentally (but with the tape contents looking very different – there might not even be a tape in the other language)
00:06:24 <korvo> Oh, the definition of ST is fine, yes. I mean the various claims about Brainfuck.
00:06:41 <korvo> Some of this should go to dedicated pages. Boolfuck seems like a common target.
00:12:18 <ais523> oh, there are a huge number of dubious/impossible claims about BF on the minimalization page
00:13:00 <ais523> to me, things like claims to combine [] into a single instruction are implausible and need very strong evidence to convince me
00:18:02 <b_jonas> if you don't insist on translating each character to the same string and you're willing to take an exponential program size hit then compiling to a two symbol language is easy enough. one symbol does >+ the other is just an interpreter that counts the number of 1 cells before the 0 cell at the start of the tape then interprets that as a program.
00:19:45 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=172314&oldid=171995 * NTMDev * (+238)
00:21:22 <ais523> b_jonas: the challenge to me is entirely the "translate each character to the same string" problem
00:22:54 <ais523> actually, something that makes it much easier is that for the translate-into-BF direction, you can make the translation of both commands contain nested balanced loops, rather than one having to be opening-unbalanced and the other having to be closing-unbalanced
00:23:49 <ais523> the idea is to make both commands compile into BF code that records the command, and then interprets as much of the program as it's seen, stopping when more program text is needed to continue the interpretation
00:24:00 <ais523> actually I think this solves the entire problem when using some sort of binary-encoded-BF
00:25:38 <esolangs> [[ASTLang (Fast Lookup)]] N https://esolangs.org/w/index.php?oldid=172315 * NTMDev * (+169) Created page with "This is the faster, more efficient lookup table for ASTLang functions and their parameters. If you want a more detailed explanation for each function, go to [[ASTLang]]."
00:25:55 <sorear> Basically just macro-expressibility?
00:26:04 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=172316&oldid=172314 * NTMDev * (+41) /* Info */
00:26:14 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=172317&oldid=172316 * NTMDev * (+1) /* Info */
00:26:54 <b_jonas> ais523: I'm not convinced. how do you find the start of the interpreted program if you aren't allowed to add a prelude to the translated brainfuck program?
00:27:38 <b_jonas> oh I see, same way as what I said
00:27:44 <ais523> b_jonas: you can easily make the BF program (say) leave the tape pointer on a 1 at the end of each command, so it knows it's the first command if it sees a 0 there
00:28:01 <b_jonas> yeah
00:51:16 -!- scoofy has quit (Ping timeout: 246 seconds).
01:06:34 -!- chloetax has quit (Quit: Leaving).
01:06:59 -!- chloetax has joined.
01:08:57 -!- chloetax has quit (Client Quit).
01:09:17 -!- chloetax has joined.
01:39:01 -!- chloetax has quit (Quit: Leaving).
01:40:14 -!- chloetax has joined.
01:40:20 -!- chloetax has quit (Client Quit).
01:40:55 -!- chloetax has joined.
02:21:35 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
02:39:36 <esolangs> [[Gur yvsr]] https://esolangs.org/w/index.php?diff=172318&oldid=172046 * Placeholding * (+2)
02:55:35 -!- perlbot has quit (Ping timeout: 240 seconds).
02:58:59 -!- perlbot has joined.
03:03:11 -!- Sgeo_ has joined.
03:03:12 -!- ais523 has quit (Read error: Connection reset by peer).
03:03:15 -!- callforjudgement has joined.
03:03:31 -!- callforjudgement has changed nick to ais523.
03:06:22 -!- Sgeo has quit (Ping timeout: 246 seconds).
03:32:20 -!- ais523 has quit (Quit: quit).
04:40:31 <esolangs> [[Flipscript]] N https://esolangs.org/w/index.php?oldid=172319 * QuantumCalculator * (+6945) Created Page
04:44:22 <esolangs> [[Flipscript]] https://esolangs.org/w/index.php?diff=172320&oldid=172319 * QuantumCalculator * (+2097) Added a brainfuck interpreter
04:45:09 <esolangs> [[Flipscript]] M https://esolangs.org/w/index.php?diff=172321&oldid=172320 * QuantumCalculator * (+4) Linked to tc page
04:45:57 <esolangs> [[Flipscript]] https://esolangs.org/w/index.php?diff=172322&oldid=172321 * QuantumCalculator * (+66) /* Overview */
04:47:05 <esolangs> [[Flipscript]] https://esolangs.org/w/index.php?diff=172323&oldid=172322 * QuantumCalculator * (+80) Categorized
04:48:32 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=172324&oldid=172310 * QuantumCalculator * (+17) Added flipscript
04:56:48 <esolangs> [[Flipscript]] M https://esolangs.org/w/index.php?diff=172325&oldid=172323 * QuantumCalculator * (+0) math is hard
05:06:23 -!- impomatic has quit (Ping timeout: 272 seconds).
07:01:09 -!- Sgeo_ has quit (Read error: Connection reset by peer).
07:03:58 <korvo> https://enclose.horse/
07:07:32 -!- somefan has quit (Remote host closed the connection).
07:17:42 -!- tromp has joined.
08:03:22 -!- scoofy has joined.
09:07:31 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172326&oldid=172301 * Yayimhere2(school) * (+12) /* Semantics */
09:07:41 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172327&oldid=172326 * Yayimhere2(school) * (-20) /* Semantics */
09:08:32 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172328&oldid=172327 * Yayimhere2(school) * (-264) /* Examples */
09:19:01 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=172329&oldid=172083 * Yayimhere2(school) * (+1) /* Mint */ add space so its an actual code section
09:19:23 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=172330&oldid=172329 * Yayimhere2(school) * (+54) /* Basic Stack */
09:40:36 -!- Yayimhere has joined.
09:40:42 <Yayimhere> i have returned
09:46:33 -!- ehmry has quit (Ping timeout: 260 seconds).
09:47:12 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172331&oldid=172328 * Yayimhere2(school) * (+121) /* Semantics */
09:51:01 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172332&oldid=172331 * Yayimhere2(school) * (+144) /* Examples */
09:52:59 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172333&oldid=172332 * Yayimhere2(school) * (+80) /* Examples */
09:55:06 -!- ehmry has joined.
09:55:18 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172334&oldid=172333 * Yayimhere2(school) * (-38) /* Examples */
09:55:54 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172335&oldid=172334 * Yayimhere2(school) * (+2) /* Syntax */
10:01:25 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172336&oldid=172335 * Yayimhere2(school) * (+51) /* Syntax */
10:21:24 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172337&oldid=172336 * Yayimhere2(school) * (+130) /* Examples */
10:27:16 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
10:27:59 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172338&oldid=172277 * Yoyolin0409 * (+1214)
10:42:06 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172339&oldid=172338 * Yoyolin0409 * (+802)
10:42:25 <esolangs> [[Nope]] M https://esolangs.org/w/index.php?diff=172340&oldid=168235 * Ractangle * (+755)
10:43:23 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172341&oldid=172339 * Yoyolin0409 * (-6) /* English */
10:52:21 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172342&oldid=172341 * Yoyolin0409 * (+198) /* English */
10:52:41 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172343&oldid=172342 * Yoyolin0409 * (+11)
10:54:54 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172344&oldid=172343 * Yoyolin0409 * (+2) /* Writing basic documents */
10:56:28 <esolangs> [[Special:Log/newusers]] create * ATechPerson * New user account
11:00:27 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172345&oldid=172233 * ATechPerson * (+253) introduction
11:00:44 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=172346&oldid=172345 * ATechPerson * (+94) sign
11:01:08 <esolangs> [[User:ATechPerson]] N https://esolangs.org/w/index.php?oldid=172347 * ATechPerson * (+29) create page
11:02:12 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172348&oldid=172344 * Yoyolin0409 * (+164)
11:02:49 -!- tromp has joined.
11:03:34 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172349&oldid=172348 * Yoyolin0409 * (+98)
11:04:57 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172350&oldid=172349 * Yoyolin0409 * (+48)
11:14:36 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172351&oldid=172350 * Yoyolin0409 * (+857)
11:18:13 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172352&oldid=172351 * Yoyolin0409 * (+515)
11:21:24 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172353&oldid=172352 * Yoyolin0409 * (+490) /* Hello, world! */
11:28:22 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172354&oldid=172353 * Yoyolin0409 * (-10) /* English */
11:32:52 <esolangs> [[Standard Test Paper]] https://esolangs.org/w/index.php?diff=172355&oldid=172354 * Yoyolin0409 * (+251)
11:35:29 <esolangs> [[]] https://esolangs.org/w/index.php?diff=172356&oldid=171378 * Yoyolin0409 * (+10)
11:36:35 <esolangs> [[]] https://esolangs.org/w/index.php?diff=172357&oldid=172356 * Yoyolin0409 * (-1) /* See Also */
11:37:31 <esolangs> [[]] https://esolangs.org/w/index.php?diff=172358&oldid=172357 * Yoyolin0409 * (-2)
11:46:28 <esolangs> [[Minecraft]] https://esolangs.org/w/index.php?diff=172359&oldid=171245 * Yoyolin0409 * (+2) /* Instruction list */
12:01:13 -!- Yayimhere has quit (Ping timeout: 272 seconds).
12:05:11 -!- somefan has joined.
12:08:34 <esolangs> [[Quineless I cannot understand that.]] N https://esolangs.org/w/index.php?oldid=172360 * None1 * (+536) Created page with "'''Quineless I cannot understand that.''' is [[I cannot understand that.]] but there's no (non-empty) [[quine]], it's invented by [[User:None1]]. ==Commands== Every ''line'' is a command which prints: I cannot understand that. I cannot underst
12:10:03 <esolangs> [[I cannot understand that.]] https://esolangs.org/w/index.php?diff=172361&oldid=171574 * None1 * (+55)
12:11:00 <esolangs> [[Rpg]] https://esolangs.org/w/index.php?diff=172362&oldid=126997 * Yoyolin0409 * (+95)
12:11:50 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=172363&oldid=172324 * None1 * (-32) /* I */
12:12:21 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=172364&oldid=171876 * None1 * (+75) /* General languages */
12:14:05 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=172365&oldid=171898 * None1 * (+49) /* My Esolangs */
12:26:06 <esolangs> [[Special:Log/newusers]] create * River * New user account
12:36:17 -!- Yayimhere has joined.
12:50:57 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172366&oldid=172337 * Yayimhere2(school) * (-1001) /* Aphasia */
12:51:18 -!- proklop has joined.
12:51:48 -!- proklop has quit (Remote host closed the connection).
12:57:38 <esolangs> [[Rpg]] https://esolangs.org/w/index.php?diff=172367&oldid=172362 * Yoyolin0409 * (+38) /* Truth machine */
13:06:14 <esolangs> [[Rpg]] https://esolangs.org/w/index.php?diff=172368&oldid=172367 * Yoyolin0409 * (+1) /* Cat */
13:08:20 <esolangs> [[Rpg]] https://esolangs.org/w/index.php?diff=172369&oldid=172368 * Yoyolin0409 * (+1) /* Cat */
13:21:07 <esolangs> [[Brainless]] https://esolangs.org/w/index.php?diff=172370&oldid=106599 * RikoMamaBala * (+1178)
13:48:30 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172371&oldid=172366 * Yayimhere2(school) * (+1) /* Combinators */
14:09:51 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172372&oldid=172371 * Yayimhere2(school) * (+71) /* Examples */
14:33:26 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
14:52:22 <esolangs> [[Unicode World]] https://esolangs.org/w/index.php?diff=172373&oldid=172020 * Yoyolin0409 * (+4)
14:56:07 -!- tromp has joined.
15:06:31 <esolangs> [[Special:Log/newusers]] create * Dragoneater67 * New user account
15:14:07 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172374&oldid=172346 * Dragoneater67 * (+205) /* Introductions */
15:14:49 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=172375&oldid=161277 * Dragoneater67 * (+25) /* "Examples" */
15:18:52 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=172376&oldid=172375 * Dragoneater67 * (+74) /* Implementations */
15:36:16 <esolangs> [[User talk:Yayimhere2(school)]] https://esolangs.org/w/index.php?diff=172377&oldid=172269 * * (+597) /* i always see you in the school account */ new section
15:38:09 <esolangs> [[User talk:Yayimhere2(school)]] https://esolangs.org/w/index.php?diff=172378&oldid=172377 * Yayimhere2(school) * (+243) /* i always see you in the school account */
15:44:39 -!- amby has joined.
15:52:25 -!- Yayimhere has quit (Quit: Client closed).
16:09:41 <esolangs> [[User:Aadenboy/Countable]] M https://esolangs.org/w/index.php?diff=172379&oldid=172294 * Aadenboy * (-12)
16:09:51 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172380&oldid=172379 * Aadenboy * (+10) Turing tarpt
16:15:07 -!- ais523 has joined.
16:15:15 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172381&oldid=172372 * Yayimhere2(school) * (-1) /* Examples */
16:23:50 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172382&oldid=172380 * Aadenboy * (+429) implement a subtraction algorithm
16:26:12 <esolangs> [[User:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172383&oldid=172382 * Aadenboy * (+8) possible* Turing tarpit
16:35:39 <esolangs> [[User talk:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172384&oldid=172296 * Aadenboy * (+337) minsky machine?
16:42:03 <esolangs> [[User talk:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172385&oldid=172384 * Yayimhere2(school) * (+307)
17:36:07 <esolangs> [[Talk:FOSMOL]] N https://esolangs.org/w/index.php?oldid=172386 * Yayimhere2(school) * (+106) Created page with "Does this language allow "full" lambda calculus? can you pass lambdas to other lambdas an curry and so on?"
17:43:02 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:51:00 -!- tromp has joined.
17:54:17 <esolangs> [[Talk:FOSMOL]] https://esolangs.org/w/index.php?diff=172387&oldid=172386 * Aadenboy * (+279)
17:54:37 <esolangs> [[Talk:FOSMOL]] https://esolangs.org/w/index.php?diff=172388&oldid=172387 * Yayimhere2(school) * (+156)
17:58:58 <esolangs> [[Talk:FOSMOL]] https://esolangs.org/w/index.php?diff=172389&oldid=172388 * Aadenboy * (+289)
17:59:32 <esolangs> [[RusLang]] https://esolangs.org/w/index.php?diff=172390&oldid=167116 * Esoboring ideas * (+11) /* Childish dialect */
17:59:49 <esolangs> [[RusLang]] https://esolangs.org/w/index.php?diff=172391&oldid=172390 * Esoboring ideas * (-4) /* Childish dialect */
17:59:51 <esolangs> [[Talk:FOSMOL]] https://esolangs.org/w/index.php?diff=172392&oldid=172389 * Yayimhere2(school) * (+166)
18:01:31 <esolangs> [[RusLang]] https://esolangs.org/w/index.php?diff=172393&oldid=172391 * Esoboring ideas * (+21) /* To mention */
18:03:08 <esolangs> [[Pythonable RusLang]] https://esolangs.org/w/index.php?diff=172394&oldid=167110 * Esoboring ideas * (+29) /* The reduction */
18:06:05 <esolangs> [[Pythonable RusLang]] https://esolangs.org/w/index.php?diff=172395&oldid=172394 * Esoboring ideas * (+81) /* The reduction */
18:20:26 <esolangs> [[Special:Log/newusers]] create * 4A10LOAIH * New user account
18:31:56 <esolangs> [[Talk:FOSMOL]] https://esolangs.org/w/index.php?diff=172396&oldid=172392 * Aadenboy * (+589)
19:00:26 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172397&oldid=172222 * Splot-dev * (+139) added interpreter link
19:00:50 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172398&oldid=172397 * Splot-dev * (+37) fixed grammar
19:01:35 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172399&oldid=172398 * Splot-dev * (+17) fixed link (wrong link)
19:02:01 <esolangs> [[Folat]] N https://esolangs.org/w/index.php?oldid=172400 * Ytebbit * (+3182) Folat
19:03:18 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172401&oldid=172399 * Splot-dev * (+108) added external link
19:03:26 <esolangs> [[DTM]] M https://esolangs.org/w/index.php?diff=172402&oldid=170773 * Ytebbit * (+21) Folat redirect
19:06:34 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=172403&oldid=172363 * Ytebbit * (+12) /* F */
19:11:30 <esolangs> [[Special:Log/newusers]] create * ConfluentDemiurge * New user account
19:18:35 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172404&oldid=172374 * ConfluentDemiurge * (+202) /* Introductions */
19:19:45 <esolangs> [[~ATH]] https://esolangs.org/w/index.php?diff=172405&oldid=156879 * ConfluentDemiurge * (+0) /* Implementations */
19:33:15 -!- DOS_User_webchat has joined.
19:36:24 -!- Lord_of_Life_ has joined.
19:37:13 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
19:37:43 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
19:53:06 <esolangs> [[User:Yayimhere]] https://esolangs.org/w/index.php?diff=172406&oldid=172125 * Yayimhere2(school) * (+102)
20:26:39 -!- DOS_User_webchat has quit (Quit: Client closed).
20:27:29 <esolangs> [[Esolang:Candidates for deletion]] https://esolangs.org/w/index.php?diff=172407&oldid=170601 * Frendoly * (+37)
21:10:01 <esolangs> [[User talk:Aadenboy/Countable]] https://esolangs.org/w/index.php?diff=172408&oldid=172385 * Aadenboy * (+728)
21:10:40 <esolangs> [[User talk:Aadenboy/Countable]] M https://esolangs.org/w/index.php?diff=172409&oldid=172408 * Aadenboy * (-18)
21:18:06 -!- impomatic has joined.
21:29:32 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:31:48 <esolangs> [[Nope]] M https://esolangs.org/w/index.php?diff=172410&oldid=172340 * Ractangle * (-11)
21:32:01 -!- tromp has joined.
21:40:35 -!- impomatic has quit (Quit: Client closed).
21:42:16 <APic> Good Night
21:47:25 -!- scoofy has quit (Ping timeout: 264 seconds).
22:01:05 <esolangs> [[Special:Log/move]] move * Aadenboy * moved [[User:Aadenboy/Countable]] to [[User:Countable]]: this is at a good position. become real!
22:01:05 <esolangs> [[Special:Log/move]] move * Aadenboy * moved [[User talk:Aadenboy/Countable]] to [[User talk:Countable]]: this is at a good position. become real!
22:01:16 <esolangs> [[Special:Log/move]] move * Aadenboy * moved [[User:Countable]] to [[Countable]]: that is the WRONG namespace
22:01:17 <esolangs> [[Special:Log/move]] move * Aadenboy * moved [[User talk:Countable]] to [[Talk:Countable]]: that is the WRONG namespace
22:03:01 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=172419&oldid=171953 * Aadenboy * (+425) /* speedy delete */ new section
22:03:10 -!- pool8 has joined.
22:03:40 -!- pool has quit (Read error: Connection reset by peer).
22:03:41 -!- pool8 has changed nick to pool.
22:04:09 <esolangs> [[Special:Log/delete]] delete * Ais523 * deleted "[[User:Countable]]": redirects created by mistake in an attempt to move a page (and there is no user with this username)
22:04:09 <esolangs> [[Special:Log/delete]] delete * Ais523 * deleted "[[User talk:Countable]]": Deleted together with the associated page with reason: redirects created by mistake in an attempt to move a page (and there is no user with this username)
22:05:06 <esolangs> [[Countable]] https://esolangs.org/w/index.php?diff=172420&oldid=172415 * Aadenboy * (+166) categories + link to talk page for the moment
22:06:38 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=172421&oldid=172403 * Aadenboy * (+16) /* C */ add [[Countable]]
22:08:47 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=172422&oldid=172286 * Aadenboy * (+267) add [[Countable]]
22:09:05 <esolangs> [[User:Aadenboy/randomuserpage]] https://esolangs.org/w/index.php?diff=172423&oldid=172146 * Aadenboy * (-28) Undo revision [[Special:Diff/172146|172146]] by [[Special:Contributions/Aadenboy|Aadenboy]] ([[User talk:Aadenboy|talk]])
22:09:22 <esolangs> [[User:Aadenboy/randomesolang]] https://esolangs.org/w/index.php?diff=172424&oldid=169947 * Aadenboy * (+14) add [[Countable]]
22:16:29 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172425&oldid=172404 * Profboady * (+338) Hi! I am Professor Mark Boady at Drexel. I added my introduction.
22:21:54 <esolangs> [[Countable]] https://esolangs.org/w/index.php?diff=172426&oldid=172420 * Aadenboy * (+104) add interpreter
22:35:09 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:35:13 -!- svm has joined.
22:37:20 -!- msv has quit (Ping timeout: 240 seconds).
22:38:04 <fizzie> Finally did something I've always wanted to do, namely reason out one of those multiplication-based bit twiddling things from first principles, rather than looking it up on a website: https://0x0.st/Pono.txt
22:38:06 <fizzie> It may not be the best way to accomplish it, but at least it left me feeling accomplished.
22:42:24 -!- lynndotpy60937 has joined.
22:44:25 -!- lynndotpy6093 has quit (Ping timeout: 264 seconds).
22:44:25 -!- lynndotpy60937 has changed nick to lynndotpy6093.
22:44:37 <esolangs> [[Rpg]] https://esolangs.org/w/index.php?diff=172427&oldid=172369 * Yoyolin0409 * (+1) /* Speak() */
22:49:30 -!- pool has quit (Read error: Connection reset by peer).
22:51:42 -!- pool has joined.
22:59:37 -!- svm has quit (Remote host closed the connection).
23:01:05 -!- msv has joined.
23:01:21 -!- msv has quit (Remote host closed the connection).
23:01:46 -!- msv has joined.
23:02:37 <esolangs> [[Everything Shop]] N https://esolangs.org/w/index.php?oldid=172428 * Yoyolin0409 * (+639) Created page with "'''Everything Shop''' is an esolang by [[User:yoyolin0409]]. Its distinctive feature is that all the instructions appear to be about buying things from a shop. ==Instructions== Purchase <int_value> <var_name> Integer assignment Purchase <var_name> of the <
23:10:45 -!- Sgeo has joined.
23:27:26 <ais523> fizzie: ooh, it's a three-way mingle
23:28:17 <ais523> unfortunately, this is very unlikely to get optimized into PDEP by current compilers
23:28:25 <ais523> maybe if we had one specialised for INTERCAL-style bit-twiddling, it'd be able to figure it out
23:29:30 <fizzie> Well, fortunately (?) the Go compiler isn't that good at optimizing things in the first place, so it likely wouldn't anyway.
23:30:02 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=172429&oldid=172421 * Buckets * (+10) /* M */
23:30:22 <fizzie> There was a proposal to add very PDEP- and PEXT-oriented functions to the "math/bits" stdlib package -- https://github.com/golang/go/issues/45455 -- but it got declined. :/
23:30:26 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=172430&oldid=172311 * Buckets * (+9)
23:33:25 <fizzie> (It's for a 3D Z-order curve for a thing that has 7/6/7-bit X/Y/Z coordinates.)
23:48:18 <ais523> Rust's currently considering a proposal to add what's effectively PEXT/PDEP
23:48:36 <ais523> I think the libs-API team thought the functions themselves are fine but weren't sure what to call them
23:49:35 -!- pool has quit (Read error: Connection reset by peer).
23:51:47 -!- pool has joined.
2026-01-07
00:14:40 -!- sftp has quit (Read error: Connection reset by peer).
00:18:01 -!- sftp has joined.
00:18:01 -!- sftp has changed hostmask to ~sftp@user/sftp.
00:26:52 <esolangs> [[GTPS]] N https://esolangs.org/w/index.php?oldid=172431 * A() * (+185) Created page with "[[GTPS| Group Theory Programming System]] is a programming language made by [[User: A()]] with the intention of being based on [https://en.wikipedia.org/wiki/Group_theory| Group theory]"
00:32:40 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172432&oldid=172431 * A() * (+70)
01:04:37 <ais523> I remember noticing before that Z-order is basically just the INTERCAL mingle operation
01:04:52 <esolangs> [[User:Aadenboy/Countable]] M https://esolangs.org/w/index.php?diff=172433&oldid=172412 * * (-5) Fixed
01:05:07 <ais523> INTERCAL's select (i.e. PEXT) has come up in a number of contexts recently, in addition to being added as an instruction on x86, but mingle is less commonly used
01:06:56 <esolangs> [[User talk:Aadenboy/Countable]] M https://esolangs.org/w/index.php?diff=172434&oldid=172414 * * (-5) Fixed
01:38:32 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
02:02:19 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172435&oldid=172432 * A() * (+825)
02:29:05 -!- Sgeo has quit (Read error: Connection reset by peer).
03:06:09 -!- ais523 has quit (Quit: quit).
03:29:37 -!- Sgeo has joined.
03:49:51 -!- pool has quit (Read error: Connection reset by peer).
03:51:54 -!- pool has joined.
04:09:19 -!- rodgort has quit (Ping timeout: 240 seconds).
04:10:18 -!- rodgort has joined.
04:24:32 <esolangs> [[Countable]] https://esolangs.org/w/index.php?diff=172436&oldid=172426 * Aadenboy * (+44)
04:25:07 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=172437&oldid=172422 * Aadenboy * (+15) /* ESOLANGS */ add [[Countable]] to list of favorites
04:47:58 -!- impomatic has joined.
06:03:14 -!- scoofy has joined.
06:04:03 -!- somefan has quit (Remote host closed the connection).
06:23:19 <zzo38> It is often said that ASN.1 requires the use of a schema. Whether or not this is true depends on which format you are using; it is true for OER and PER but is not true for BER and DER. DER can be used without a schema (although it can also be used with a schema, which will be helpful if you want to handle data that contains implicit types, default values, etc, since those things are specified by the schema).
07:15:34 -!- tromp has joined.
07:29:07 -!- Sgeo has quit (Read error: Connection reset by peer).
07:44:02 -!- Yayimhere has joined.
07:49:36 <zzo38> Now I added another type into ASN.1X, which is called ASN1_SCIENTIFIC. It is like ASN1_REAL but the number of digits (or bits) is considered to be significant, and the canonical form for decimal numbers is different (there must be exactly one digit before the decimal separator, and trailing zeros are allowed and are considered to be significant).
07:50:02 <Yayimhere> hello
08:20:51 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:33:48 <esolangs> [[Cammy]] https://esolangs.org/w/index.php?diff=172438&oldid=170868 * Corbin * (+55) /* Constants */ Add a constructor for ratios of nats.
08:39:10 <korvo> Sleep time.
09:07:06 <Yayimhere> oh yea korvo, I dont remember you telling me about neckties, but I took your recommendation, and am working on a blog right now
09:08:53 <Yayimhere> *neocities
09:18:55 -!- Yayimhere has quit (Quit: Client closed).
09:21:58 -!- tromp has joined.
09:24:47 -!- Yayimhere has joined.
09:37:30 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:38:39 -!- Yayimhere has quit (Quit: Client closed).
09:40:13 -!- tromp has joined.
09:52:29 <esolangs> [[Book]] https://esolangs.org/w/index.php?diff=172439&oldid=171856 * Yoyolin0409 * (+23)
09:53:03 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=172440&oldid=172265 * Yoyolin0409 * (+0)
09:53:56 <esolangs> [[User:Yoyolin0409]] https://esolangs.org/w/index.php?diff=172441&oldid=172440 * Yoyolin0409 * (+21)
09:55:42 <esolangs> [[Do something]] https://esolangs.org/w/index.php?diff=172442&oldid=171609 * Yoyolin0409 * (-36) /* Do job */
10:11:37 <esolangs> [[\]] N https://esolangs.org/w/index.php?oldid=172443 * Yayimhere2(school) * (+1719) Created page with "'''\''' is a version of [[_/]], with a few simple modifications. It's based on an observation that none of the sub replacement patterns could interact with each other. It also uses another syntax. == Syntax / Semantics == A program is a list of "sub replacements",
10:12:11 <esolangs> [[/]] https://esolangs.org/w/index.php?diff=172444&oldid=168740 * Yayimhere2(school) * (+26) /* examples */
10:48:37 <esolangs> [[\]] https://esolangs.org/w/index.php?diff=172445&oldid=172443 * Yayimhere2(school) * (-103) /* Syntax / Semantics */
10:51:38 <esolangs> [[Rpg]] https://esolangs.org/w/index.php?diff=172446&oldid=172427 * Yoyolin0409 * (+487)
10:51:51 <esolangs> [[Rpg]] https://esolangs.org/w/index.php?diff=172447&oldid=172446 * Yoyolin0409 * (+3) /* Minsky machine(similar) */
10:53:05 <esolangs> [[Rpg]] https://esolangs.org/w/index.php?diff=172448&oldid=172447 * Yoyolin0409 * (-5) /* Minsky machine(similar) */
10:55:27 <esolangs> [[User:Yayimhere]] https://esolangs.org/w/index.php?diff=172449&oldid=172406 * Yayimhere2(school) * (+137) /* esolangs */
10:56:10 -!- ais523 has joined.
11:28:58 <fizzie> Oh, interesting coincidence. In Go 1.26, they're actually planning to introduce a new standard library component to expose architecture-specific SIMD operations, kind of like how it works in C with intrinsics. But the current version of the package -- https://pkg.go.dev/simd/archsimd@go1.26rc1 -- seems to focus exclusively on actual SIMD stuff, and doesn't have BMI2 (PDEP/PEXT).
12:05:35 -!- somefan has joined.
12:07:40 <ais523> meanwhile Rust already has the intrinsics, but is planning to add platform-independent pdep/pext, which is interesting with respect to how well the fallback will be optimised
12:07:56 <ais523> you almost want an INTERCAL-style optimiser at that point
12:08:23 <int-e> ais523: but nightly only?
12:08:29 <esolangs> [[User:Yayimhere]] https://esolangs.org/w/index.php?diff=172450&oldid=172449 * Yayimhere2(school) * (+82)
12:09:12 <ais523> int-e: the intrinsics are stable but platform-specific, I think: the platform-independent stuff is very new and still nightly-only
12:12:25 -!- ais523 has quit (Quit: quit).
12:12:44 -!- ais523 has joined.
12:12:49 <int-e> Oh. I guess I wasn't looking in the right place when I was looking for this: https://doc.rust-lang.org/stable/core/arch/x86_64/fn._pdep_u64.html
12:14:55 <int-e> (I didn't try *too* hard to find the intrinsic; https://paste.debian.net/hidden/3755060c isn't *too* terrible)
12:17:22 <int-e> same speed too :)
12:18:37 <int-e> ais523: so thanks for making me look harder
12:19:44 <ais523> there was a bit of a discussion about Rust documentation file sizes on the Rust internals forum recently, and the documentation for core::arch::x86_64 was mentioned
12:20:19 <ais523> so I had the appropriate location in medium-term memory already
12:22:11 <b_jonas> https://doc.rust-lang.org/nightly/std/iter/trait.Iterator.html is another large ones
12:22:16 <APic> Hi *
12:22:27 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172451&oldid=172425 * HerobrineMWB * (+221) /* Introductions */
12:39:44 <esolangs> [[User:Yayimhere]] https://esolangs.org/w/index.php?diff=172452&oldid=172450 * Yayimhere2(school) * (+23) /* ppl i like and dont like */
12:48:33 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=172453&oldid=171777 * Hotcrystal0 * (+223)
13:08:37 -!- ais523 has quit (Quit: quit).
13:22:57 -!- ais523 has joined.
13:41:00 <fizzie> Sadly you can't inline assembly in Go, and functions written entirely in assembler (which you can have) are limited to the much less performant (but stable) "ABI0" calling convention (whereas compiler-generated code can use the faster but unstable "ABIInternal"), and never get inlined, so the "just do it yourself" approach is much less feasible in terms of performance.
14:33:35 <esolangs> [[Talk:Input hello world or else:]] N https://esolangs.org/w/index.php?oldid=172454 * * (+541) Created page with "I came here in 14 redirects. <span style="background-color: green;">[[User:|<span style="color: white;">mario</span>]]</span><span style="background-color: yellow;">[[User talk:|<span style="color: black;">maker</span>]]</span><span style="background-col
14:37:37 <esolangs> [[EmojiStack/Codepage]] https://esolangs.org/w/index.php?diff=172455&oldid=155294 * * (-1)
14:37:52 <esolangs> [[Special:Log/move]] move * * moved [[EmojiStack/Codepage]] to [[Mojifunge/Codepage]]
14:38:05 <esolangs> [[User:Yayimhere2(school)]] https://esolangs.org/w/index.php?diff=172458&oldid=172270 * Yayimhere2(school) * (-135) Redirected page to [[User:Yayimhere]]
14:40:53 -!- pool has quit (Read error: Connection reset by peer).
14:41:27 -!- pool has joined.
14:54:15 <esolangs> [[User:MihaiEso]] https://esolangs.org/w/index.php?diff=172459&oldid=170246 * MihaiEso * (+71)
15:01:36 -!- amby has joined.
15:21:01 <esolangs> [[Unspoken]] N https://esolangs.org/w/index.php?oldid=172460 * Yayimhere2(school) * (+680) Created page with "'''Unspoken''' is an encoding of [[Apraxia]], to be able to be used as poetry. It is directly equavilent to Apraxia, other than input. == Encoding == In Unspoken, the "characters"/tokens of Apraxia are replaced with "words", which are strings of. When execut
15:21:12 <esolangs> [[Unspoken]] https://esolangs.org/w/index.php?diff=172461&oldid=172460 * Yayimhere2(school) * (-18)
15:31:48 <esolangs> [[AddByteJump]] N https://esolangs.org/w/index.php?oldid=172462 * Timm * (+215) Created page with " A B C do A* =+ B* jump C (?) is actual value<br> -? is negation<br> -(?) you get it<br> (its low-level)<br> -1 in A make output, B input and C make halt<br> -2 has 1 always<br> -3 has -1 always<br> {{Made|Timm}}"
15:32:40 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:33:04 <esolangs> [[User:Timm]] https://esolangs.org/w/index.php?diff=172463&oldid=171289 * Timm * (+19)
16:02:54 -!- tromp has joined.
16:15:32 <sorear> riscv has mingle but not select, somewhat odd (early bitmanip drafts had both but "we need zip for 32-bit keccak" was somehow judged as a more real use case than anything presented for pext)
16:24:59 <sorear> strange to define a SIMD interface in 2026 that doesn't have first-class support for scalable types
16:36:03 <ais523> scalable vectors are, oddly, quite hard to handle at the programming language level
16:36:27 <ais523> especially if you try to fit them into the same sort of programming language API as fixed-length vectors
16:37:12 <ais523> the intention of the scalable vector machine code instructions is that you write software that doesn't care about the vector length, and yet most existing explicit-vectorisation APIs expect it to be cared about by the software rather than the compiler
16:38:25 <ais523> I really don't like the current state of vectorisation, autovectorisation is too inconsistent (both in terms of whether it happens and in terms of whether the result makes sense or not) and manual vectorization is too manual
16:40:45 <esolangs> [[Bliss]] M https://esolangs.org/w/index.php?diff=172464&oldid=171156 * H33T33 * (+4)
16:42:56 <esolangs> [[Bliss]] M https://esolangs.org/w/index.php?diff=172465&oldid=172464 * H33T33 * (+25)
16:47:26 <esolangs> [[Special:Log/newusers]] create * Emulao * New user account
17:45:56 <esolangs> [[C*]] https://esolangs.org/w/index.php?diff=172466&oldid=166807 * H33T33 * (+717)
17:47:35 <b_jonas> I do mostly like the current state of SIMD code. We write code using SIMD primitives that compilers can directly emit as instructions, while the compilers figure out register allocation and scheduling and similar. Vector scaling is limited, it exists only as much that you can write code assuming 64 byte wide vectors, some processors will run the instructions directly but with some or all operations on
17:47:41 <b_jonas> 32 byte wide execution units, and the compiler can recompile the code emulating the 64 byte wide operations with 32 byte wide instructions which is not optimal but at least works.
17:48:22 <b_jonas> There are a few details that I don't like of course, but this mostly works well. Obviously there's a big delay between when the CPU instruction sets are designed and when most software adapts them, but that's fine, anything else would be premature optimization anyway.
17:48:47 <ais523> at least on x86, 64→32 compiling is difficult because only the AVX-512 instructions support 64-byte vectors, but they also support other features like writemasks that can't be compiled down to AVX2
17:49:19 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:53:54 <b_jonas> I'm not very fond of masking and that part of the design of AVX2. It's kind of an inefficient use of CPU resources, with the completely separate mask registers and instructions for them instead of just using normal registers as masks with bitwise operations like we're doing in AVX2.
17:54:26 <ais523> I can certainly see an argument for, e.g., using r8…r15 as mask registers
17:55:17 <ais523> but Intel seem to have decided recently that they still don't have enough registers
18:00:09 <int-e> (who needs context switches anyway)
18:00:56 <int-e> (you know, that thing where you routinely save all registers and restore another set of values from memory)
18:01:21 <sorear> avx-512 has had 32 architectural vector registers from the beginning
18:01:27 <ais523> sorear: right
18:01:28 <sorear> not dependent on APX
18:01:54 <ais523> Intel announced that they were going to add new GPRs as well, though (although it doesn't seem to have hit the instruction set docs yet, so maybe it's not actually available for sale at the moment)
18:01:56 <sorear> and the mask registers are much smaller than the vector registers, why engage a 512-bit data path if you only need one bit per element?
18:02:26 <ais523> sorear: I think b_jonas is arguing that the masks should have been taken from GPRs rather than from their own register type
18:02:39 <ais523> they're exactly the right size (64 bits)
18:02:43 <b_jonas> ais523: no
18:02:47 <ais523> maybe this is futureproofing for AVX-1024?
18:03:00 <b_jonas> I'm arguing that we should be using the XMM/YMM/ZMM registers for masks
18:03:30 <b_jonas> (though there is one instruction to transfer them to a GPR, useful for condition testing in strlen and similar)
18:03:40 <sorear> the degree of coupling between the integer and vector (hardware) scheduling that implies would be a nightmare
18:04:22 <b_jonas> "maybe this is futureproofing for AVX-1024" => the futureproofing was that AVX512W already had instructions for 64-bit mask registers even though only AVX512B needs them
18:04:37 <b_jonas> s/AVX512W/AVX512D/
18:04:37 <int-e> > succ 'Z'
18:04:38 <lambdabot> '['
18:05:09 <b_jonas> there won't be an AVX1024, AVX is stopping here because cache lines are 64 bytes wide
18:05:49 <b_jonas> if you want wider, there's AMX (Advanced matrix extensions) with the "tile registers"
18:05:57 <b_jonas> specifically for matrix multiplication
18:10:35 <sorear> the 3-operand 32-register integer ISA is an interesting development, much more similar to the others and A64 in particular, I think that leaves s390x as the most relevant 16-integer-register ISA? the high-word facility can do some similar things but it's equally weird as the newest implementation of subregisters
18:12:05 <ais523> b_jonas: 64-byte cache lines isn't a fundamental rule, though, right? that one could be changed
18:13:11 <b_jonas> yes, but they are hard to change and would affect a lot of other things. it might reduce the performance of non-vector programs.
18:14:07 <ais523> glad to see that with APX, the instruction encoding still doesn't make any sense :-D
18:16:57 -!- tromp has joined.
18:23:38 <ais523> I wonder what the performance gain would be like if x86-64 had a sensible instruction encoding (the main advantage would be in saving L1c cache, and I'm not sure to what extent that matters) – my guess is that it would be small
18:24:31 <sorear> surely that would depend on the segment
18:26:23 <sorear> the big cores do fairly involved pre-decoding to a "µop cache" (beware that µop is a loaded term and the things in the cache aren't necessarily what might be called a µop in any other context)... but if you're trying to achieve >6 IPC you need a trace cache _anyway_ because there are too many taken branches
18:27:54 <ais523> sorear: I think the trace/loop/µop caches probably aren't relevant to this, which is why L1c is the first relevant layer
18:28:30 <ais523> although, a sensible encoding would likely be easier to decode, meaning you could get more encoding parallelism or maybe a shorter pipeline, and both of those would give performance gains in certain contexts
18:30:17 <ais523> (by "aren't relevant" I mean that although the caches are relevant, changing the instruction format wouldn't make their performance any better or worse, so it's other parts of the processor we have to look at in order to gauge the impact)
18:32:07 <sorear> i think I1$ mostly cares about size, and "how much does size matter" is ... intensely debated
18:33:39 <ais523> indeed, I have seen a lot of plausible arguments in both directions but don't know what to conclude from them, and benching this is almost impossible due to alignment effects
18:33:48 <ais523> * benchmarking
18:34:06 <ais523> so although in theory there should be an objective answer, it is difficult to determine what it is
18:36:51 -!- ais523 has quit (Quit: quit).
18:40:40 <esolangs> [[User:FluixMakesEsolangs/Secret]] N https://esolangs.org/w/index.php?oldid=172467 * FluixMakesEsolangs * (+241) SHHHH SEECCREEEETTT
18:47:05 <esolangs> [[Unspoken]] https://esolangs.org/w/index.php?diff=172468&oldid=172461 * Yayimhere2(school) * (+43) /* Encoding */
19:00:44 <esolangs> [[User talk:FluixMakesEsolangs/Secret]] N https://esolangs.org/w/index.php?oldid=172469 * * (+25) Created page with "how do i spoil people >:)"
19:01:49 <esolangs> [[Talk:2026]] N https://esolangs.org/w/index.php?oldid=172470 * * (+43) Created page with "2026 is equivalnet to Python for this year."
19:05:03 <b_jonas> ais523: I'm nto sure it would still count as x86 if you ripped out the current instruction encoding entirely. There were a few changes made when 64-bit mode was introduced, some of the old encodings are invalid in 64-bit mode to free up encoding space.
19:05:21 <b_jonas> But if you just replace the entire encoding then you get a new architecture.
19:05:55 <b_jonas> although I think ARM has like four different instruction encodings by now
19:08:37 <sorear> 3 main ones? I don't think Streaming SVE Mode counts
19:09:01 <esolangs> [[User talk:FluixMakesEsolangs]] N https://esolangs.org/w/index.php?oldid=172471 * Corbin * (+1051) Created page with "Hi! Welcome to the wiki. I know you've been here for a while, but it seems that I'm the first person to greet you. '''You haven't done anything wrong''' but I wanted to let you know a few things: * Please read [[esolang:policy]] if you haven't alrea
19:34:05 <b_jonas> could be. I'm not too familiar with ARM, I'm mostly just looking at x86_64 all the time.
19:35:31 <sorear> I think «a new architecture» means different things to different audiences
19:36:33 -!- Lord_of_Life_ has joined.
19:37:28 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
19:37:39 <b_jonas> yeah, I mean you could have something like x86_16 vs x86_32 protected mode where the same program can far jump between the two and share the same registers and call functions with arguments in registers and stack, in which case it wouldn't be an entirely separate architecture
19:37:52 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
19:38:28 <b_jonas> binary compatible, just link your new code together with the old code and make the processor dynamically switch decoding mode between them using a flag register
19:39:12 <b_jonas> which is kind of what we have between AVX and AVX2
19:41:24 <sorear> ia64 could dynamically switch decoding mode and had switch instructions (br.ia32 / JMPE)... not quite as seamless as 386 call gates
19:42:11 <b_jonas> I think 386 doesn't even need call gates to jump between 32-bit and 16-bit user-mode code, just different code segments
19:42:29 <b_jonas> call gates are for jumping to kernel mode or similar
20:45:57 <esolangs> [[A-SCP-M]] https://esolangs.org/w/index.php?diff=172472&oldid=125586 * Scp-999 * (+267) Added JMod to improve containment protocol
20:50:30 -!- Everything has joined.
20:52:47 -!- ais523 has joined.
20:53:52 <ais523> ARM has a scheme in which two of the encodings can coexist based on whether the instruction pointer is odd or even
20:53:56 <ais523> (because both of them are aligned to 2)
20:54:25 <ais523> the only existing programs that this would break would be those that assumed function pointers were always even
20:55:03 <ais523> (the IP effectively points to the second byte of the instruction rather than the first in the newer encoding, so the instructions stay aligned – you can also think of it as the IP being low-bit-tagged and I think that's how it's documented)
20:55:48 <esolangs> [[Clowder]] N https://esolangs.org/w/index.php?oldid=172473 * Profboady * (+12434) Submit first draft of language specification for Clowder and Quantum Assembly Language.
20:56:04 <b_jonas> ais523: yes, that works. The other scheme that you can do is make sure that a small part of the instruction encoding overlaps so that you can write a short polyglot that switches into the correct instruction set.
20:57:36 <ais523> I guess another approach would be to reserve a fraction of a bit in the page tables to specify the encoding when executing from that page (it's less than a bit of information because you can use it for something else if the NX bit is set)
20:57:42 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=172474&oldid=172429 * Buckets * (+14) /* U */
20:57:52 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=172475&oldid=172474 * Profboady * (+14) I added my language clowder to the main list.
20:58:21 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=172476&oldid=172430 * Buckets * (+13)
20:58:30 <esolangs> [[Mot]] N https://esolangs.org/w/index.php?oldid=172477 * Buckets * (+578) Created page with "Mot is an Esoteric programming language Created by [[User:Buckets]] In 2020. {| class="wikitable" |- ! Commands !! Instructions |- | > || Output the Current number. |- | @ || Skip the next Command if The value = 0. |- | ? || Reset this line. |- | { || Goto the Next {. |- |
20:58:31 <b_jonas> x86_16 vs x86_32 protected mode does something like that but with the segment descriptor instead of the page table
20:58:40 <esolangs> [[Unsidue]] N https://esolangs.org/w/index.php?oldid=172478 * Buckets * (+855) Created page with "Unsidue is an Esoteric Programming language created By [[User:Buckets]] in 2021. {| class="wikitable" |- ! Commands !! Instructions |- | [m] || Modulo the current Number by m, if there's Residue, Move That many Times forward of A # such As a residue Of 2 would Goto the
20:58:54 <sorear> less of a scheme and more of an original sin
20:59:00 <ais523> now I'm reminded of the way that Linux can emulate the system call ABIs of various old UNIXes, in order to run some of their executables without recompiling
20:59:37 <esolangs> [[User:Profboady]] N https://esolangs.org/w/index.php?oldid=172479 * Profboady * (+124) Created page with "I am Mark Boady, a computer science professor who works at Drexel University. More about me at [https://boady.net boady.net]"
20:59:37 <b_jonas> hehe, that would be funny, making the writable bit of the page to mean an alternate instruction set, if you had previously forbidden the same page table entry to have both executable and writable (you could still write through a different page aliased to the same physical addres)
20:59:40 <sorear> the oldest arm was limited to 26-bit address space because they decided "we don't need a saved PSR, we can just use the spare bits in the exception link register"
21:00:08 <sorear> they moved most of the flags out but "thumb/arm mode is bit 0 in LR" feels like a relic of that paradigm
21:00:46 <ais523> I guess a link register inherently has the same encoding as the instruction pointer, so that makes sense
21:01:44 <b_jonas> ais523: "emulate the system call ABIs of various old UNIXes" => don't they have like three different system call ABIs for x86_32, plus two x86_64 ABIs, plus windows system calls through Wine derivatives, plus FreeBSD system calls if it's a FreeBSD kernel?
21:02:12 <b_jonas> possibly multiple different Windows system call ABIs at the same time
21:02:21 <ais523> x32 (the less commonly used x86-64 ABI) is weird
21:02:41 <sorear> none of the windows or freebsd stuff is in linux proper, whereas mips linux _does_ pretend to be an irix kernel under certain conditons
21:02:55 <b_jonas> only I think you can't really mix x86_64 and x86_32 code in the same unix process, so that limits how many of the ABIs are active at the same time
21:03:08 <b_jonas> sorear: no, but the Linux ABI is in FreeBSD kernels
21:03:08 <ais523> Wine isn't built into the kernel as far as I know
21:03:08 <ais523> but I guess it technically could be!
21:03:10 <ais523> IIRC most BSDs don't have a stable kernel interface, you have to go via libc
21:03:28 <b_jonas> ais523: not the kernel, but the kernel allows Wine to catch the Windows syscall abi in userspace, right?
21:03:42 <sorear> I believe "page table bit to select instruction encoding" is how powerpc vle works
21:04:09 <sorear> also enables BTI on arm and epc on ia64 but those are less dramatic
21:04:19 <ais523> b_jonas: thinking about that that's probably what PTRACE_SYSEMU is for
21:05:19 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=172480&oldid=172453 * Hotcrystal0 * (+0)
21:05:25 <ais523> "run this progam until the next system call, then skip the system call" doesn't have an obvious purpose for native executables, but it would be helpful on an executable for a different OS
21:05:54 <sorear> user mode linux
21:06:06 <b_jonas> that does have an obvious use for debugging and reverse-engineering a program if it may call system calls not through a libc that you're familiar with
21:06:17 <ais523> although, on Windows the standard way to make system calls is to dynamically link against a few system-provided shared libraries that make them for you, so all this time I assumed that Wine worked just by providing Linux implementations of the libraries
21:06:23 <b_jonas> you can even examine the system calls that it makes
21:06:26 <b_jonas> isn't that what strace does?
21:06:45 <sorear> i think wine mostly works at the ntdll level, the ring0-ring3 ABI changes between windows builds anyway
21:06:45 <ais523> b_jonas: there's a variant of that which *doesn't* skip the system call, that's what strace uses
21:07:16 <ais523> because strace still wants the system calls to happen, it just wants to observe them
21:07:18 <b_jonas> ok, but for a debugger it can still make sense to examine the system call before it decides to execute it or not or possibly execute a modified or emulated version.
21:07:32 <ais523> you can do that even with the version that doesn't skip by default
21:07:44 <ais523> but you have to modify the program's registers to change the system call number
21:07:49 <sorear> wine _does_ provide linux implementations of the libraries, you can link Windows C code directly against them and bypass the EXE loader (winelib)
21:07:57 <ais523> (it halts on entry to the system call, and optionally on exit too)
21:08:38 <ais523> I think there's a system call number that's guaranteed to do nothing, probably -1
21:09:33 <b_jonas> 29 for pause, just send a SIGCONT?
21:10:13 <b_jonas> or maybe modify the system call to time(0)
21:10:38 <b_jonas> so 13 with the first argument a nullptr
21:10:40 <sorear> I'd do NR_getpid if there isn't a dedicated skip
21:10:59 <b_jonas> sorear: that works too, yes
21:12:22 <b_jonas> you can give arguments to many syscalls to make them a noop, sometimes with an error
21:12:53 <b_jonas> even just a read with file descriptor 0 could wrok
21:13:06 <b_jonas> no, sorry, read with file descriptor -1
21:14:27 <sorear> register handling across ptrace stops is a big mess and I'm not confident in my understanding of it
21:20:23 <ais523> I *used* to know how it worked, but haven't looked into it for ages and have forgotten many of the details
21:21:25 <ais523> oh wow, this program gets silly even in the header file includes, it needs to include both struct stat from <sys/types.h> and struct stat from <asm/stat.h>, which are different structures with the same name
21:21:35 -!- impomatic has quit (Quit: Client closed).
21:24:09 <ais523> there is the classic "I want to replace one system call with two, so I will rewind the IP two bytes so that the program hits the same system call instruction again"
21:24:33 <ais523> (both syscall and int 0x80 are two bytes long and I was doing this on x86/x86-64)
21:25:55 <sorear> things which also happen with SA_RESTART
21:26:55 <ais523> sorear: OK, so the way it works on x86(-64) is that when you request the registers from the process, there are *two* ?ax registers: the orig_ one contains the system call number, the one with the plain name contains the system call return value (which is -ENOSYS at the point in the kernel at which the system call gets interrupted)
21:27:08 <ais523> and changing them on system call entry will change the kernel's view of them too
21:28:52 <ais523> to disable system calls I just used an arbitrary unlikely number and then got ENOSYS back
21:29:20 <b_jonas> ais523: aren't there like four different stat system calls with different types for historical reasons, but only on x86_32, and all but the last one got eliminated on x86_64?
21:29:57 <ais523> b_jonas: it wouldn't surprise me, it's very common for system calls to be near-duplicated with a different ABI
21:30:14 <sorear> the stat structure has changed several times when people decided that no, 32-bit ints aren't enough for file sizes
21:30:18 <ais523> x86 has uname, olduname and oldolduname system calls
21:30:46 <b_jonas> I haven't looked into the details, I just had gdb magically do function calls in the debugged process for me
21:31:08 <b_jonas> and even that was many years ago; these days I only do printf debugging, putting debugging code right into my program without any special library or debugger
21:31:56 <sorear> most recently time_t but stat handling is a bit odd there - on the kernel side plain stat was deprecated instead of being extended so you have to migrate to statx for Y2038
21:32:15 <sorear> but statx is not POSIX so the libcs invented a 64-bit-time struct stat that doesn't exist in the kernel
21:35:03 <ais523> I dislike the way system calls are normally done through libc – it seems preferable to me to have two libraries, one which just provides a platform-agnostic way to do things that only the kernel can do, and one which is entirely portable (maybe calling into the first library)
21:35:08 <b_jonas> it gets funny, leads to situations where you have one header file that calls the system calls oldoldstat, oldstat, stat, stat64; then another header files that calls them oldstat, stat, newstat, stat64; then a third that only lets you access the last two and calls them stat and stat64 but makes stat an alias to stat64 depending on what macros are set
21:35:47 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172481&oldid=172435 * A() * (+0)
21:36:12 <ais523> that way, non-C languages wouldn't have to depend on C baggage like printf and FILE* buffering, and the OS-portable and non-OS-portable parts of the C library seem easier to maintain separately in order to reduce duplication of effort between platforms
21:36:19 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172482&oldid=172481 * A() * (+30) /* A+B */
21:36:49 <b_jonas> ais523: sure, but libc does too many things partly for historical reasons, partly so that system calls can set errno which is a macro that emulates a thread-specific variable but from before C had first-class thread-specific variables or something like that
21:37:27 <ais523> I don't think threads even existed in the early days of errno, it was just a global
21:37:41 <ais523> and then it had to be made thread-local for correctness reasons when threads were invented
21:37:44 <b_jonas> sure, errno is very old
21:39:08 <sorear> people always use printf as the example but I think the actually painful parts wouldn't be solved by splitting the library
21:39:51 <b_jonas> printf is the part that I want to have even in rust, because the floating point formatting bit is really hard to implement correctly and efficiently
21:40:58 <esolangs> [[Error quine]] M https://esolangs.org/w/index.php?diff=172483&oldid=167414 * Photostar * (+181)
21:41:00 <b_jonas> But I don't think it's too big a deal that libc is as big as it is. You don't have to use all of it, and the parts that you don't use aren't a big expense.
21:41:06 <ais523> sorear: the most painful to me is actually things like gethostbyname – because on glibc those are implemented using shared-library dependencies that can't be statically linked, meaning that you can't make a system call without linking in the whole dynamic linking infrastructure
21:41:55 <b_jonas> ais523: yes, but if you don't want to then you don't have to use those parts.
21:42:01 <ais523> b_jonas: it's totally fine to have a nice self-contained portable sprintf library, but why does it have to come with the OS?
21:42:20 <ais523> and the mere fact that it exists, whether or not you use it, causes the problem
21:42:22 <sorear> on a reasonable platform we'd have some form of RPC dependency injection for that
21:42:34 <b_jonas> it has to come with the OS so that my RAM isn't full with ten different libcs, but only one libc mmapped in every process
21:43:09 <b_jonas> that's one thing that Debian does well, they're actively working on programs sharing just one copy of each library, not just libc
21:43:16 <ais523> b_jonas: well this is the major argument for shared libraries in general
21:43:29 <b_jonas> yes, I want shared libraries for everything. I don't like static libraries.
21:43:57 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172484&oldid=172482 * A() * (+238)
21:44:34 <ais523> I mean, libc in particular
21:44:49 <b_jonas> and yes, there will always be some code duplication, the sharing won't be perfect, but I want to tend towards sharing. that also helps make sure that when I update my system packages to fix a security bug then it's fixed in all programs, that I'm not running programs with their own obsolete and never updated copy of a library that's full of security holes.
21:45:09 <b_jonas> yes, shared libc too, and ideally shared libraries for rust
21:45:37 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172485&oldid=172484 * A() * (+33)
21:46:32 <ais523> I've been considering writing a platform (that runs alongside regular x86-64 executables on the same Linux kernel but isn't ABI-compatible with them) for which the only things you can dynamically link are the system call library, the allocators (which have to be platform-provided for some reason I can't remember right now but I think it involves address space), and major language-support libraries like libc
21:46:56 <b_jonas> why would you limit what you can dynamically link?
21:47:00 <ais523> using more shared libraries than that, in practice, doesn't seem to help in practice on anything other than Debian-like "all these versions work with all those version" curate systems
21:47:04 <ais523> * curated
21:47:27 <ais523> if install a program from outside the repositories, it normally comes with its own copies of the system's shared libraries and links to those except on the system
21:47:48 <ais523> package formats like Snap and Flatpak come with all the shared libraries bundled, they don't use the system's
21:47:58 <ais523> * links to those instead of those on the system
21:48:12 <b_jonas> yes, and I don't like those package formats, partly for the reasons that I explained above.
21:48:18 <sorear> how does that work with libGL?
21:48:45 <ais523> lots of people/companies run their programs in containers, and have to put separate shared libraries into them (which could in theory be bind-mounted but in practice I think they're almost always container-specific)
21:49:02 <esolangs> [[Confusion]] M https://esolangs.org/w/index.php?diff=172486&oldid=168431 * Mun Hammer * (+21) shouldn't be first person
21:49:22 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172487&oldid=172485 * A() * (+14)
21:50:02 <ais523> sorear: I'm not sure, I'm not familiar with how that works internally
21:50:32 <ais523> (but I searched my directories of unpackaged software and didn't find any libGL, but I did find several copies of libGLEW)
21:53:05 <ais523> communication with GPUs and windowing systems might in practice be the same sort of problem as communication with kernels
21:53:46 <ais523> b_jonas: in any case, I think the reason most people don't share shared libraries is that it's too much effort to try to keep the programs compatible with them
21:54:00 <b_jonas> sure
21:54:25 <ais523> Debian goes to a lot of effort in testing "this version of this program works with that version of that library" but outside a distro's package manager it's almost impossible
21:54:31 <sorear> most libraries aren't designed to have a long-term-stable ABI
21:56:17 <ais523> my personal reason to want to limit the number of shared libraries is that it allows you to give them fixed load addresses relative to each other and the program that links to them, making the dynamic linking step trivial – you lose a little ASLR power but ASLR is pretty easy to bypass anyway nowadays, and gain security from not having dynamic-linker-ish things happening in your executable at all
21:56:37 <b_jonas> I see!
21:56:40 <ais523> so many exploits that exploit parts of the memory map that only exist due to the dynamic linker
21:56:44 <b_jonas> you want fixed addresses
21:57:39 <ais523> I *would* allow dlopen, but not for providing functions to call or be called directly, you would have to use a dlsym equivalent in order to get function pointers at runtime (meaning that no dynamic linking step would be needed there either)
21:58:30 <ais523> oh no, I think I've hit a really stupid ambiguity in English – "providing a function to call" could be "providing a function that you can call" or "providing a function that does calling"
21:59:42 <sorear> how does the dlopened image allocate memory, make system calls, etc?
22:00:12 <b_jonas> ais523: does that mean you wouldn't allow dispatching between different versions of a library at dynamic link time without function pointers that have a runtime cost each time you call the function?
22:00:58 <sorear> all calls between dynamic libraries are done via function pointers at the ISA level, PLT/GOT
22:01:06 <ais523> sorear: I was considering a few different plans for that, ideally I'd like the dlopened images to use fixed offsets for that too but that doesn't work if you dlopen more than one library at a time, unless you double-map the system call library
22:01:30 <ais523> or at least that you ensure you don't dlopen two images with the same offset
22:01:51 <sorear> I wouldn't consider double-mapping a problem but what if the dlopened image has a link-time dependency on a different version of the system call library?
22:01:56 <ais523> the main purpose of dlopen is for providing plugins and the like, if those are tied to the executable then avoiding offset clashes should be a solvable problem
22:02:22 <ais523> sorear: this is why I would want the system call library to be as small as possible, it would make it easier to keep the ABI stable
22:02:42 <ais523> if you created a new version of a function you would have to leave the old one around
22:03:53 <ais523> b_jonas: at dynamic link time, indeed – for some of those problems you can solve them at static link time instead and just generate multiple executables, but there are probably some cases that wouldn't solve
22:04:09 <ais523> (although, you have function pointer cost *anyway* in the usual current way of doing things)
22:04:42 <b_jonas> ais523: my problem is that if I'm forced to use dlsym then the burden of type safety for the function calls is always on me. I'm find with allowing that for some cases, and it's almost always necessary when linking compilation units cross-language or with cyclic dependencies, but sometimes I just want the simple way when I set a dynamic library crate dependency at runtime and the rust/haskell compiler
22:04:48 <b_jonas> ensures at compile time that I'm doing typesafe calls across crates.
22:05:11 <b_jonas> s/find with/fine with/
22:05:23 <ais523> b_jonas: I would encourage people to statically link in that situation
22:05:50 <b_jonas> I see
22:05:53 <ais523> it is worth noting that at least the current Rust compiler is not appropriate for this situation, it will check that the types match at the source level, but does not compile them consistently at the binary level
22:06:21 <ais523> so you can have types that match in the source code but go wrong when the binaries communicate
22:06:58 <b_jonas> yeah, you can probably only do that if you always compile the crates together and with the same options, at which point you might as well link them statically
22:08:30 <b_jonas> hopefully future versions of rustc will at least be able to check the typesafety at binary level and give an error when something is incompatible, even if they can't solve that
22:08:55 <ais523> doing that on a *dynamic* link would be… interesting
22:09:14 <b_jonas> I guess you're making a reasonable case for why static linking is better *in practice*, even if dynamic linking is what I want in some idealized world
22:09:20 <ais523> it isn't theoretically impossible, but I don't know whether you'd implement it in the dynamic link or in the implementation of / wrapper around dlopen
22:09:24 <ais523> * in the dynamic linker
22:09:47 <b_jonas> why? you just mangle the full type description (or at least a cryptographic hash of it) into the dyanmically linked symbol names
22:10:01 <ais523> oh, I didn't even think of that
22:10:16 <b_jonas> at least as much of the type description as matters for the ABI that is
22:10:20 <ais523> right, mangling the ABI (as opposed to type name) would work
22:11:13 <ais523> that technique might be useful for the typed-asm thing I've been thinking about, it'd let you do the type checking before the linker and yet still use a regular linker to link the resulting files together
22:11:47 <ais523> by encoding the type assumptions into the name of everything that's linked across compilation units, so if the types don't match, the link fails
22:11:55 <ais523> …isn't this just "Hungarian notation for linkers"?
22:13:01 <sorear> rust _does_ mangle cryptographic* hashes into dynamically linked symbol names, it's weird that it doesn't include enough information to catch memory safety issues
22:13:58 <ais523> the Rust name mangling situation is complicated, and I'm not sure I fully understand it
22:14:11 <sorear> (* not long enough to be collision-safe, but the system can't protect against attacker-controlled binaries anyway)
22:14:54 <ais523> there has been a lot of discussion about whether the hashes used by TypeId are even strong enough to be safe against *accidental* collisions
22:15:14 <ais523> but the symbol name hashes are different, I think (but might be using the same algorithm?)
22:15:14 <b_jonas> I have vague plans for a C interpreter that helps run untrusted code, with stronger guarantees about undefined behavior than is usual for most architectures, and that would always know the type of functions modulo compatibility. I'll probably never actually do that project. Obviously you can still get a function call incompatible at a higher semantics level, which is why it's good practice for the
22:15:20 <b_jonas> programmer to rename a function whenever its semantics changes, and possibly provide wrappers with the old name. I had series of such functions in code for my previous job.
22:15:29 <sorear> (I'm on that thread)
22:15:47 <ais523> in any case, Rust's very slowly moving towards "v0 mangling" (which is a weird name to give the second major version of your mangling scheme), and I think that doesn't use hashes at all
22:16:52 <ais523> semi-recently they upstreamed demanglers for v0 mangling into a lot of unusual places, including the Linux kernel repository (but I think it was upstreamed into a userspace executable that's part of it, rather than the kernel source)
22:16:56 <esolangs> [[Esolang talk:Categorization]] https://esolangs.org/w/index.php?diff=172488&oldid=170626 * A() * (+255) /* Proposed category: Data structures */
22:17:06 <b_jonas> I'd probably save the whole type description, not just a hash, though a hash may also be there for quick comparison.
22:17:46 <sorear> does the v0 mangling encode enough information to enforce memory safety at link time and how large is it?
22:18:09 <b_jonas> Sure, you want to be able to remote debug a virtualized kernel instance, and the debugger (eg. gdb) should know about mangled names in that case.
22:18:44 <b_jonas> I'm not big on interactive debuggers, but if you're developping the linux kernel or something else that works with hardware then it's indispensible.
22:18:50 <sorear> (if symbol tables had slightly more structure than just strings we could make them smaller and have much faster bulk lookup)
22:18:59 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172489&oldid=172487 * A() * (+19)
22:20:20 <ais523> <sorear> does the v0 mangling encode enough information to enforce memory safety at link time and how large is it? ← it won't catch situations where you compile against one version of a crate and link against a different version in which types have the same name but are defined differently
22:21:09 <sorear> (don't think about dlsym. if you're loading library A which has N undefined symbols and library B has M defined symbols, that is a JOIN)
22:21:38 <ais523> the format does aim to optimize size subject to a few other constraints, the ones which are in the biggest tension are probably "can demangle to produce a human-readable type name containing all relevant information" and "computationally inexpensive to encode/decode"
22:22:38 <ais523> https://doc.rust-lang.org/nightly/rustc/symbol-mangling/v0.html seems to be the current spec
22:22:53 <b_jonas> ais523: what I'd like is that when a new rustc version changes ABI and you link code compiled with different rustc versions, possibly compiled with different options, then you can't accidentally get a silent ABI mismatch from that, but you get an error at dynamic link time.
22:23:12 <sorear> if ELF symbols were represented as a DAG you could have all that information without repetition or slowing down links
22:23:25 <ais523> b_jonas: I think that's a reasonable thing to want
22:24:12 <sorear> repr(Rust) is "unstable" but how many times has it actually changed since 1.0?
22:24:39 <b_jonas> you could also catch some accidental ABI mismatches that are a fault of the person who writes the code. you can't catch all of these because the programmer can just cause deliberate UB with unsafe code, but it could catch some mistakes.
22:24:41 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:24:48 <ais523> sorear: quite a lot I think, mostly with respect to enums
22:25:23 <ais523> some of the changes are spec changes, though, I think
22:25:37 <ais523> as in, they're fully binary compatible both ways, just the guarantees changed
22:26:14 <b_jonas> the current solution is to just make the cross-crates ABIs a stable C ABI as if you were linking code from another language, with a thin source code wrapper on one side of the ABI boundary that contains the type same as a C header file would in C or C++
22:26:30 <ais523> there's an unstable option that randomizes field order in repr(Rust) structs, possibly subject to not having to introduce extra padding
22:26:37 -!- molson__ has joined.
22:26:38 <ais523> with that option, repr(Rust) changes every compile
22:26:42 <b_jonas> and I think this isn't an unreasonable solution exactly because that's what you want to be able to do to link between languages, such as to link between C++ and rust
22:27:02 <b_jonas> so this should always be supported, but there could be more optimized easy cases in addition to this
22:27:02 <APic> Night
22:27:25 <ais523> b_jonas: right, Rust linking to itself via a C ABI is the recommended (and only reasonable corrrect) way to do it atm
22:27:41 <ais523> night APic
22:28:00 <b_jonas> this isn't just Rust, you can do this in Haskell too, it's just harder with Haskell because it's harder to write C ABIs that match the Haskell code well
22:28:20 <b_jonas> or for linking a C++ library into perl or python
22:29:14 -!- molson_ has quit (Ping timeout: 260 seconds).
22:29:46 <b_jonas> or linking C++ code with rust code, which is the most practically relevant case for me
23:11:42 <esolangs> [[Esolang talk:Categorization]] https://esolangs.org/w/index.php?diff=172490&oldid=172488 * Corbin * (+459) /* Proposed category: Data structures */
23:12:26 <esolangs> [[Esolang talk:Categorization]] M https://esolangs.org/w/index.php?diff=172491&oldid=172490 * Corbin * (+1) /* Proposed category: Data structures */ Fix fragment.
23:15:45 <zzo38> I think that "run this progam until the next system call, then skip the system call" can be useful for native programs, if you can change the effect of system calls by doing something else instead, although the way that such a thing works in Linux is perhaps not as well, due to many things including there are a lot of system calls.
23:16:51 <zzo38> My idea of a operating system design though would have the suggested way for a system call to do nothing would be "wait for all objects in a empty set to be ready", and the usual way to terminate a program is "wait for any object in a empty set of objects to be ready".
23:23:29 -!- Sgeo has joined.
23:46:15 <esolangs> [[Gur yvsr]] M https://esolangs.org/w/index.php?diff=172492&oldid=172318 * Placeholding * (+2) fixed mistake in first bad example
2026-01-08
00:00:13 -!- somefan has quit (Remote host closed the connection).
00:00:21 -!- somefan has joined.
00:02:52 <ais523> I just came to a sudden realisation about Rust, and wanted to write it down somewhere before I forgot it, and I guess #esoteric will do: an aligned/nonnull raw pointer to T is basically just an &UnsafeCell<T> whose lifetime isn't tracked
00:03:39 <ais523> there's already a special-case rule that says an &UnsafeCell can exist even if the inside of the cell doesn't contain valid data, and I think this is where it comes from
00:06:17 <ais523> this fits in with an observation I had a while ago (but didn't post), that when working with raw pointers in Rust they seem to want to be created by doing something to a mutable reference – &mut T and &mut UnsafeCell<T> are equivalent (safely interconvertable either way using UnsafeCell::from_mut and UnsafeCell::get_mut), then you pirate the &mut UnsafeCell<T> to get an &UnsafeCell<T>
00:07:46 <ais523> actually, you can create raw pointers to uninitalized memory too, so maybe an aligned/nonnull raw pointer is &'unsafe UnsafeCell<MaybeUninit<T>>
00:08:29 <ais523> ('unsafe isn't actual Rust syntax but it's a fairly well-known proposal at this point)
00:08:59 <ais523> hmm, I guess this is the exact opposite of rubber-ducking, instead of asking questions into the void to help me understand something, I'm making statements into the void to help me express something
00:12:54 <b_jonas> ais523: you aren't allowed to have an &UnsafeCell<T> point to the same address as an &mut UnsafeCell<T> unless you reborrowed from the latter, but you can have a raw pointer point to the same address as the &mut UnsafeCell<T>, so I don't think they're the same
00:13:54 <ais523> b_jonas: so the trick here is: if your raw pointers can only be created by pirating the &mut UnsafeCell<T>, they're all derived from a share of that mutable borrow and so they're allowed
00:14:19 <ais523> in fact, I think the original &mut UnsafeCell<T> is what a provenance is
00:15:16 <ais523> if you offset them out of bounds you can't read or write through them until they're back in bounds
00:15:38 <b_jonas> this seems to me kind of a narrow view of raw pointers
00:15:50 <ais523> so even if they're matching the address of some other &mut it's OK, as you need the read or write to break the rules
00:15:53 <b_jonas> it's certainly one thing you can use raw pointers too, but surely there are others
00:17:05 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172493&oldid=172489 * A() * (-32)
00:17:08 <ais523> under the current rules there are "raw pointers to memory outside the Rust virtual machine", but that's one of the special cases I've been actively working on trying to combine into the general case
00:17:49 <ais523> and there are raw pointers without provenance, too, but you can't actually read or write through them so they don't cause any aliasing conflicts
00:19:54 <ais523> the situation with aliasing is a little complicated because the rules that safe Rust implies (that an &mut T is never allowed to alias an &T not derived from it) is different from the rules that unsafe Rust is allowed to use (unsafe Rust currently allows them to alias unless both of them are accessed through – if one of them is unused it's OK – but it's unsafe because using a reference is a safe operation)
00:20:37 <b_jonas> I thought that's still forbidden in unsafe rust in general.
00:21:47 <ais523> so there is a model of unsafe Rust called Stacked Borrows, which is the de-facto standard at the moment – most unsafe Rust programmers are willing to do anything that's legal in Stacked Borrows and the compiler avoids doing optimisations that conflict with it
00:22:15 <ais523> but, it is not necessarily the final model – but it's considered much more likely for parts of it to be relaxed than parts of it to be made stricter
00:22:42 <b_jonas> that's why rust added the &raw syntax recently, because you're only allowed to have a reference if it always points to a readable object with a valid representation. I know you work that around above with MaybeUninit, but still.
00:23:08 <ais523> Stacked Borrows doesn't look at lifetimes at all when considering whether code is valid or not, just for the first/last use of each given reference (although there is a somewhat confusing "protectors" rule which means that some rules apply for the rest of a function body, even past the last use)
00:23:47 <ais523> the reason &raw exists is partly because of that, and partly because if you go via a reference you narrow the provenance
00:24:15 <b_jonas> sure, lifetimes belong to safe rust, that's how safe rust proves at compile time that it doesn't do anything that would be forbidden in unsafe rust, and unsafe rust is allowed to ignore lifetimes using an unsafe cast of pointer to reference
00:24:35 <ais523> ah right, so the problem isn't "I convert this to a reference and then to a pointer, and the reference aliases something so it's UB"
00:24:50 <b_jonas> but typed references and typed mut references still have strict rules in unsafe rust
00:25:16 <ais523> the problem is "I convert this to a reference and then to a pointer, and the reference aliased something, so *when I use the pointer* it is trying to use the reference's provenance and so the fact that the reference aliased something then causes UB now"
00:26:15 <esolangs> [[User talk:FluixMakesEsolangs]] https://esolangs.org/w/index.php?diff=172494&oldid=172471 * * (+35)
00:26:32 <ais523> I guess the way to look at it is that a reference that illegally aliases something isn't insta-UB, but it screws up the reference's provenance, so anything that you subsequently try to do with pointers derived from it is UB
00:27:29 <ais523> and you might as well express this rule as "references aren't allowed to illegally alias things"
00:28:20 <b_jonas> hmm
00:29:38 <esolangs> [[Esolang talk:Categorization]] https://esolangs.org/w/index.php?diff=172495&oldid=172491 * A() * (+206) /* Groups */
00:30:51 <b_jonas> I guess you are allowed to point an UnsafeCell anywhere, but I don't think that's an informative way to think of all raw pointers, simply because you aren't guaranteed to be able to do anything with an UnsafeCell
00:33:51 <esolangs> [[User:A()]] https://esolangs.org/w/index.php?diff=172496&oldid=172252 * A() * (+10)
00:34:56 <esolangs> [[ASTLang (Fast Lookup)]] https://esolangs.org/w/index.php?diff=172497&oldid=172315 * NTMDev * (-169) Blanked the page
00:35:22 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=172498&oldid=172317 * NTMDev * (-281)
00:38:18 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=172499&oldid=172498 * NTMDev * (+307) /* PrimitiveWrapper (DEPRECATED) */
00:38:37 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=172500&oldid=172499 * NTMDev * (-133) /* Types */
00:42:31 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172501&oldid=172493 * A() * (+30)
00:43:07 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172502&oldid=172501 * A() * (+0)
00:43:24 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172503&oldid=172502 * A() * (+0)
00:43:53 <b_jonas> a raw pointer could have arithmetic done on it to store extra info, or it could point to a function or to an atomic. I think you're still allowed to make an &UnsafeCell from it in those cases, but you can't use that &UnsafeCell for anything, so I don't think UnsafeCell helps imagine what raw pointers can do.
00:43:55 <esolangs> [[GTPS]] https://esolangs.org/w/index.php?diff=172504&oldid=172503 * A() * (+0)
00:44:14 <b_jonas> (other than casting that &UnsafeCell back into a raw pointer)
00:46:16 <b_jonas> (well no, technically you can also pass it as an &UnsafeCell to a foreign function, but it would be strange to declare the function that way rather than with a raw pointer)
00:46:46 <b_jonas> (or you can reinterpret the bits of the reference as a pointer, they're represented the same)
00:47:49 -!- somefan has quit (Remote host closed the connection).
00:47:57 -!- somefan has joined.
00:49:12 <sorear> are atomics something different from non-atomics? i thought that was a property of the access, not the object
00:49:50 <sorear> is "raw pointer pointing to a function" something different from the general case of "raw pointer to the wrong type"?
00:50:31 <b_jonas> sorear: it's technically a property of the access, but you can cast a raw pointer to a raw pointer of any other type so *anything* is a property of the access at that point.
00:51:41 <b_jonas> as for raw pointer pointing to a function, only in as much that I think some C APIs use a C pointer to void instead of a pointer to a function whose type isn't known until runtime, which is odd but not really wrong
00:52:46 <sorear> that's allowed by POSIX as an extension but not in general legal C, e.g. x86-16 MEDIUM model
00:53:43 <b_jonas> no, C specifically allows that for void pointers
00:54:30 <b_jonas> C says that void pointers can represent pointers to functions or pointers to any type of object, it's safe to cast any of those to void pointer as long as you cast back before use
00:55:46 <b_jonas> (also any pointer to a struct/union can represent a pointer to any other struct/union, but that's mostly so that pointers to not incomplete structs can work sanely with a specific representation, which you use if the struct will either be delcared later or only in other compilation units)
00:56:19 <b_jonas> other pointer types can be more restricted, but void pointers are magic in C
00:56:42 <b_jonas> ok, not really magic, just have strong guarantees
00:58:21 <int-e> AFAICS &UnsafeCell<T> must be properly aligned because it had to point to valid memory when it was constructed: "whenever a &UnsafeCell<T> is constructed or dereferenced, it must still point to live memory"
01:00:12 <b_jonas> if you want something that needn't be able to point to a function the you can use a pointer to struct, kind of. I think the C standard allows that all structs are 4-byte aligned even when you have 1-byte and 2-byte integer types, and pointers to struct could be such that they can only represent 4-aligned addresses, so if you want to do this you'll have to wrap anything you want to point to into a
01:00:18 <b_jonas> struct. But I don't think C behaves like that on any real architecture.
01:00:26 <b_jonas> int-e: yes, but ais523 did say aligned and non-null
01:01:52 <ais523> <sorear> are atomics something different from non-atomics? i thought that was a property of the access, not the object ← it's a property of the access *but* there's no useful way to correctly mix atomic and non-atomic accesses, so it makes sense for the type system to dictate what sort of access you're using
01:02:25 <int-e> b_jonas: Maybe I read something into https://logs.esolangs.org/libera-esolangs/2026-01-08.html#lR that you didn't intend to say, but to me it sounded like you were suggesting that you could, say, put a tagged pointer into a &UnsafeCell<T>
01:02:37 <ais523> <b_jonas> no, C specifically allows that for void pointers ← I also thought function pointers were an exception to this, ahs something changed?
01:03:32 <ais523> int-e: you can't do that specifically due to representation validity reasons (the compiler is allowed to assume that references haven't been tagged, even if you don't read through them, and uses this allowance to collapse enum size) – I don't think there are any provenance reasons why you couldn't do it though
01:03:52 <int-e> ais523: that's what I said just before?
01:04:05 <ais523> int-e: sorry, pings are confusing
01:04:17 <ais523> I was mostly replying to b_jonas but trying to quote your comment by reference
01:04:34 <int-e> ah. relatable.
01:04:36 <ais523> I have realised recently that my use of pings on IRC is more to do with whether I am replying to a previous comment specifically than with who I am replying to
01:05:52 <ais523> recently someone posted two comments, I replied to the second one with no ping, then replied to the first one with a ping, I think that's another example of the same sort of phenomenon (I think I subconsciously decided to gave the ping because the referent wouldn't be obvious otherwise)
01:06:32 <ais523> …and now I'm realising that I have somehow managed to subconsciously create a new language convention that uses existing communication mechanisms for a purpose entirely different from the recommended or generally understood one
01:07:00 <sorear> languages aren't real, it's idiolects all the way down
01:07:28 <korvo> ais523: I think of it as like when I'm doing dishes and talking to somebody. Pinging is like looking up, making eye contact, and ensuring that I've gotten a point across. More practically, I use pings to indicate that I think that the recipient might want to read what I'm saying.
01:08:56 <b_jonas> int-e: I can understand if you read it that way, but yes, you may still need the pointer to be aligned and it definitely needs to be non-null if you want to make an UnsafeCell there, and since ais523 mentioned that I didn't repeat.
01:09:54 <ais523> references being aligned and non-null is a validity thing, otherwise type like Option<&T> wouldn't work properly (it relies on references always being non-null, even if they're never used, to be able to distinguish Some(null) from None)
01:10:42 <ais523> if not for that rule an &UnsafeCell<T> to null would actually work, as long as you never read or wrote it (there's a specific rule saying that you can free/unmap the memory behind an &UnsafeCell)
01:11:17 <ais523> and because the compiler has to allow for the possibility that the memory is unmapped, it won't do anything that wouldn't work with null, because null is also just unmapped memory from the processor's point of view
01:15:21 <b_jonas> you're right. sorear: sorry, I was wrong about function pointers, C doesn't claim that you can convert them to void * and back. I don't know why I thought it did.
01:21:20 <b_jonas> Rust rules have been relaxed to allow some limited mixing of atomic with non-atomic, though I hvaen't processed the details of whether this is useful. In particular, I don't understand if you can just zero memory and transmute it instead of initializing a rust atomic.
01:22:27 <ais523> b_jonas: an &mut can be reborrowed as an &Atomic
01:22:55 <ais523> the basic way to think about it is that all the cell-like types can be switched between if you have a mutable reference, but not if you don't have a mutable reference
01:24:05 <b_jonas> ais523: ok, but if you reborrow that way, will it give a definite value if you atomic read it, and the same as if you had read it as an integer instead before reborrowing as an atomic?
01:24:15 <ais523> b_jonas: yes
01:24:28 <b_jonas> good
01:24:45 <ais523> you can think of the Atomic types as basically being thread-safe versions of Cell
01:24:50 <ais523> that are limited to primitive types
01:27:36 <b_jonas> sure, that's how they're implemented, but I want to know what's actually guaranteed about them in a future-proof way. this is relevant eg. if you want to atomic access the same atomic objects from rust and some other language concurrently
01:28:21 <ais523> memory in Rust is not typed – the only type-like thing about it is whether it carries provenance
01:28:53 <ais523> the rules about atomics are basically that accesses that *aren't* atomic can't race with each other, but accesses that are atomic can
01:29:07 <ais523> (if there is a race, both accesses need to be atomic)
01:29:10 <b_jonas> good
01:29:48 <ais523> so if you have any reason to use atomics in the first place (i.e. races exist), you then have to somehow prove that the races have stopped existing before you can do non-atomic accesses on the same memory
01:30:13 <ais523> (prove to the compiler in safe Rust, or prove to yourself in unsafe Rust)
01:34:42 <b_jonas> ais523: so one weird thing that I could imagine is this. Say you have an ARM-like CPU that has arithmetic only between registers, but has both little-endian and big-endian 16-bit and 32-bit integer load and store instructions. So the C ABI has to pick one of big-endian or little-endian, it picked one of them and that spread. Then a later extension of the CPU adds an atomic compare and exchange
01:34:48 <b_jonas> instruction, but only one endianness. Then you could end up with a C ABI where integers have the opposite endianness from atomic integers, and then the Rust ABI will match that too.
01:35:08 <b_jonas> Or the same but it's only 128 byte sized atomic compare an exchange instructions that are in one endianness only.
01:35:36 <b_jonas> You could still manipulate atomics of any endianness, the other endianness just takes an extra instruction or two to byteswap your registers.
01:36:15 <ais523> b_jonas: AtomicUsize::from_mut / AtomicUsize::get_mut (unstable) would probably deal with the conversion, although it seems unlikely that such a situation would end up happening
01:37:01 <ais523> in practice I would expect all modern processors to use the same endianness for integers as they do for pointers, and normally pointers have to be pushed to the stack automatically by the hardware sometimes
01:37:15 <ais523> but I can just about imagine having a link register and an interrupt link register to avoid that
01:37:58 <sorear> that's how pretty much all of the RISCs work except SuperH
01:38:41 <sorear> arm1 exceptions store the PC into a general register, but R14/R15 are banked in all modes so it works out the same
01:39:25 <ais523> in any case, most processors that can't do arithmetic on memory use LL/SC as their atomic primitive rather than CAS
01:39:43 <ais523> although I guess it's possible that LL/SC would only work on one endianness but MOV would work on both
01:39:52 <b_jonas> what is LL/SC?
01:40:02 <ais523> load-linked/store-conditional
01:40:15 <sorear> if you think of registers as being a sequence of bytes LL/SC and CAS are both endian agnostic
01:40:23 <b_jonas> what does that mean?
01:40:40 <ais523> the way it works on most processors is that LL loads a value from memory and also marks some amount of surrounding memory as busy
01:40:55 <ais523> and SC stores to memory, but only if none of the memory busied by the most recent LL instruction has been touched since
01:41:33 <ais523> otherwise it does some sort of error return instead
01:42:10 <b_jonas> ais523: so that's like compare and swap but it's allowed to spuriously fail?
01:42:31 <ais523> (ideally LL would busy only the specific value you loaded, but normally it has to busy at least a cache line)
01:42:43 <ais523> b_jonas: can indeed spuriously fail, but also it doesn't have the ABA problem
01:42:45 <b_jonas> I think that's https://doc.rust-lang.org/nightly/std/sync/atomic/struct.AtomicI32.html#method.compare_exchange_weak
01:42:56 <b_jonas> what's "ABA problem"?
01:43:05 <sorear> you can emulate "wrong endian" xadd/amoadd/ldadd using a LL/SC or CAS loop but the emulation has different lock-free/wait-free properties than native xadd/amoadd/ldadd
01:43:14 <b_jonas> I mean at the CPU level it would have somehwat stronger guarantees on when exactly it can spuriously fail
01:43:28 <ais523> b_jonas: memory gets written to twice during an atomic sequence and ends up with its old value, so when you do the compare-and-swap at the end you think it hasn't chagned
01:43:49 <sorear> the ABA thing is an urban legend, LL/SC is stronger than CAS if you can do unrelated memory operations in the middle but this is not actually allowed by any ISA specification
01:44:09 <ais523> this can be problematic if, e.g., the atomic value is a pointer and you are relying on the pointer not having changed to indicate that the value it points to hasn't changed (e.g. because it doesn't change for as long as it's in the variable)
01:44:45 <ais523> because if in the middle of your compare-exchange loop, someone took out the pointer, changed the memory it points to, and put it back again, it'll look like nothing happened but now your information is stale
01:44:50 <sorear> LL immediately followed by SC is observably equivalent to CAS because you can postdate the successful LL and pretend it happened at the same time as the SC
01:45:08 <b_jonas> ok, I think this doesn't change much in how I imagine atomics could represent numbers differently than integers
01:45:29 <b_jonas> but it's still interesting
01:45:32 <ais523> sorear: LL immediately followed by SC is a swap, isn't it? (rather than a compare-and-swap)
01:45:44 <ais523> if you want a compare-and-swap you need to actually do the compare in between
01:46:03 <sorear> "immediately" in the sense of the local memory order
01:46:07 <ais523> ah, I see
01:46:11 <b_jonas> it explains why so many functions that are generic between CPUs are defined to allow spurious fails where you have to retry
01:46:15 <ais523> yes, in that case it doesn't give you any extra power I think
01:46:17 <b_jonas> well, explains some of it
01:46:26 <b_jonas> some of the spurious failures may be introduced at a higher levle
01:46:38 <ais523> one thing that surprised me about this is just how much memory typically gets busied by the LL in practice
01:46:56 <ais523> realistically it has to be at least a cache line, but often it's somewhere around a kilobyte, which is surprisingly large to me
01:47:10 <ais523> of course, usually you get away with it because the LL and SC are so close together
01:48:43 <sorear> it's mostly unobservable outside performance because the SC is allowed to fail spuriously
01:49:13 <ais523> b_jonas: oh! there's a subtlety I forgot about converting between atomics and nonatomics – atomics have bigger alignment on some platforms
01:49:47 <ais523> e.g. u64 sometimes has 4-byte alignment on 32-bit platforms, but AtomicU64 has 8-byte alignment basically everywhere because it's hard to stop it straddling a cache line otherwise
01:50:14 <sorear> the Rocket implementation starts a ~16 cycle timer when it sees a LL, refuses remote invalidations while the timer is active, and succeeds SC if the timer is active and the address matches
01:50:20 <ais523> that said, IIRC misaligned atomics actually work on x86(-64) except for the double-register ones
01:50:31 <b_jonas> that's reasonable. cache lines are small because the data actually has to be moved, and there are physical limits to how many bits fit through the wires quickly, but synchronization between CPU threads could be less fine-grained.
01:50:36 <ais523> and the processor has to be able to lock two cache lines because of that
01:51:23 <ais523> (this still doesn't mean that any sensible compiler/language will let you define misaligned atomics, though)
01:53:05 <b_jonas> ais523: yeah, x86_64 mostly tolerates unaligned accesses surprisingly well. there are some cases when they don't work, but it's mostly (1) the MOVDQA instruction that exists for historical reasons because it used to be faster in old CPUs but these days has no advantage over MOVDQU, (2) one flag that you can specifically set to disallow certain unaligned vector accesses, probably to catch code that
01:53:11 <b_jonas> mistakenly does unaligned access, and (3) system-related stuff like page tables.
01:53:26 <ais523> b_jonas: and the alignment check flag!
01:53:35 <b_jonas> that's (2) isn't it?
01:53:49 <ais523> no, it controls non-vector accesses specifically
01:53:56 <sorear> riscv has misaligned atomics within an aligned 16byte region as a feature "intended to be mandatory in a future profile", nobody will say what the actual use case for this is
01:54:12 <ais523> only 16-, 32- and 64-bit accesses cause alignment traps, anything larger (or smaller) can't
01:55:14 <ais523> AVX and later allow misaligned vectors unless you are using a specifically aligned instruction like MOVDQA, but SSE instructions fault on misaligned vectors, so that's one way to custom alignment behaviour on vector instructions (as long as they're old enough)
01:55:28 <sorear> I think AC mostly exists as a migration aid from when they weren't quite sure what the IA-32 successor was and whether it would support misalignment
01:55:29 <b_jonas> I think originally the unaligned was because the 8088 got popular and people wrote code for it that did unaligned access, and some of the supposedly undocumented IBM PC BIOS variables at unaligned addresses ascended to de facto public API that every clone had to support. But I don't know why it got continued so far.
01:56:12 <ais523> AVX encodings should in theory be faster due to zeroing the top of the register rather than leaving it alone (and causing a false dependency)
01:56:13 <sorear> debian's current m68k ABI has sizeof int = 4, _Alignof int = 2
01:56:54 <int-e> b_jonas: disassembling network packets and concatenated files and the like may just be useful enough
01:56:59 <ais523> but it turns out that recent Intel has a sticky "some of the vector registers have data beyond the bottom 16 bytes" flag that isn't vector-specific, meaning that you get the false dependency even with AVX instructions
01:57:08 <ais523> (the only ways to clear it are VZEROUPPER/VZEROALL)
01:57:17 <ais523> * that isn't specific to a particular vector register
01:57:47 <int-e> b_jonas: plus the fact that within the same cache line you can do this "for free"
01:57:58 <ais523> this strikes me as a terrible idea, but Intel probably think they can get away with it because compilers do VZEROUPPER anyway to support linking against SSE libraries (and depressingly, they may be right)
01:58:11 <b_jonas> alignment check => I see
01:58:40 <ais523> in any case this means that on recent Intel, SSE encodings have no actual downside over the AVX equivalent
01:58:45 <b_jonas> int-e: yes, that can be a good reason
01:59:11 <sorear> useful in string functions too
01:59:13 <ais523> because both of them have to write both halves of the register if the second-16-dirty flag is set, and neither of them do if it's clear
01:59:49 <ais523> but it also means you can't use different widths of vector at the same time
01:59:50 <sorear> or say you have a struct (necessarily with several fields) with size 8, align <8. wouldn't it be nice to copy it with one instruction?
02:00:05 <ais523> (you *can* but you will get all operations acting at the speed of the largest vector you're using)
02:00:29 <ais523> sorear: why does that need to be atomic, though?
02:00:31 <sorear> do they still have the scratchpad?
02:00:35 <b_jonas> I kind of wish compilers just had four first-class variants for their integer types according to whether they are aligned and their endianness. You can implement this as just library types, and it has been implemented in C++ a few times, but I feel like compilers could implement it easier.
02:00:46 <sorear> ais523: it needs to not fault
02:00:47 -!- scoofy_ has joined.
02:01:37 <b_jonas> (Possibly six types if native endianness is considered different from both big and little endianness in the same way as C int and long and long long are three different types even if they're just two different representations.)
02:01:47 <ais523> sorear: right, but couldn't the feature just say "you need to be able to read/write misaligned data nonatomically within a cache line", rather than supporting atomics too?
02:02:38 <ais523> b_jonas: this goes back to the whole distinction between storage representations and register representations
02:02:47 <sorear> those weren't connected, I thought the conversation had moved to "why is unaligned access allowed at all"
02:02:52 <ais523> sorear: ah, I see
02:03:12 <ais523> <sorear> riscv has misaligned atomics within an aligned 16byte region as a feature "intended to be mandatory in a future profile", nobody will say what the actual use case for this is
02:03:22 <ais523> and then you started justifying it in the non-atomic case, which I agree iwth
02:03:33 <b_jonas> I guess a hypothetical new CPU architecture could even have unaligned reads just work like x86, but unaligned writes raise a fault.
02:03:55 <ais523> the best use I can think of in the atomic case is to somehow store more data in an atomic-safe way by using overlapping atomics
02:04:13 -!- scoofy has quit (Ping timeout: 264 seconds).
02:04:42 <ais523> b_jonas: if it's doing that, it would be great if it faulted only on entirely unmapped memory and just returned zeroes for partially unmapped memory
02:04:56 <sorear> misaligned load/store *without* atomicity guarantees is already required in all application profiles
02:04:59 <ais523> although the problem there is that hardware normally can't distinguish between memory being unmapped and paged out
02:05:55 <b_jonas> ais523: like for strlen? I dunno, it could make sense
02:06:11 <ais523> b_jonas: right
02:06:34 <sorear> troll option: byte level NaT
02:06:54 <b_jonas> I have considered a mode in my C interpreter where any read from invalid memory silently reads 0, while writes fail, but you're right that at a hardware level this would be much harder
02:07:08 <ais523> sorear: that's not quite a troll option if it applies at the byte level in registers but the page level in memory
02:07:43 <ais523> also it's basically how LLVM's virtual machine works
02:24:58 <esolangs> [[Special:Log/newusers]] create * MtPenguinMonster * New user account
02:26:37 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=172505&oldid=172451 * MtPenguinMonster * (+202) /* Introductions */
02:28:20 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
03:14:38 -!- impomatic has joined.
03:31:52 -!- impomatic has quit (Quit: Client closed).
05:27:22 -!- ais523 has quit (Quit: quit).
06:37:45 -!- molson__ has quit (Remote host closed the connection).
07:12:03 <esolangs> [[Gur yvsr]] https://esolangs.org/w/index.php?diff=172506&oldid=172492 * Placeholding * (+93) clarified how a conditional and a conditional destination correspond
07:17:27 -!- somefan has quit (Remote host closed the connection).
07:25:42 -!- tromp has joined.
08:07:04 <esolangs> [[Brainpocalypse II]] https://esolangs.org/w/index.php?diff=172507&oldid=164875 * Yayimhere2(school) * (+17) /* See also */ add goto start, very similair languages!
08:10:05 -!- Sgeo has quit (Read error: Connection reset by peer).
08:49:49 -!- b_jonas has quit (Quit: leaving).
09:03:32 <esolangs> [[USI]] N https://esolangs.org/w/index.php?oldid=172508 * Yayimhere2(school) * (+2643) Created page with "'''USI''', short for Unknown Source of Intervention, is a language based on the method of implementing of compiling one language to another, in which a counter is used as the program counter, and then when it has a certain value, a certain effect takes place. It
09:06:19 -!- Yayimhere has joined.
09:11:50 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:36:35 -!- Yayimhere has quit (Ping timeout: 272 seconds).
10:05:47 <esolangs> [[User:Yayimhere]] https://esolangs.org/w/index.php?diff=172509&oldid=172452 * Yayimhere2(school) * (+64) /* esolangs */
10:27:02 -!- scoofy_ has changed nick to scoofy.
10:27:13 -!- scoofy has changed hostmask to ~scoofy@user/scoofy.
10:36:34 -!- tromp has joined.
12:05:51 -!- b_jonas has joined.
12:07:23 -!- somefan has joined.
12:15:34 <esolangs> [[DeltaLang]] N https://esolangs.org/w/index.php?oldid=172510 * PrySigneToFry * (+5909) Created page with "DeltaLang is designed by PSTF. It is a formal programming language, roughly designed in [https://funcode.miraheze.org/wiki/Gdel's_Incompleteness_Theorems_vs_Programming_Languages Gdel's Incompleteness Theorems vs Programming Languages]. Note, the DeltaLang reco
12:23:45 <APic> Hi
12:27:35 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=172511&oldid=172480 * Hotcrystal0 * (-2)
13:16:40 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172512&oldid=172199 * Blashyrkh * (+17476) Sequential tag system implementation
13:42:43 -!- pool has quit (Read error: Connection reset by peer).
13:43:10 -!- pool has joined.
14:46:46 -!- impomatic has joined.
14:47:43 <esolangs> [[BrainTrix]] https://esolangs.org/w/index.php?diff=172513&oldid=170948 * JIT * (+10)
14:48:13 <esolangs> [[Hata hata hata ton]] https://esolangs.org/w/index.php?diff=172514&oldid=171054 * JIT * (+24)
14:49:14 <esolangs> [[AddByteNegJump]] https://esolangs.org/w/index.php?diff=172515&oldid=171056 * JIT * (+42)
14:49:32 <esolangs> [[AddSys]] https://esolangs.org/w/index.php?diff=172516&oldid=171083 * JIT * (+23)
14:49:47 <esolangs> [[AddByte]] https://esolangs.org/w/index.php?diff=172517&oldid=171194 * JIT * (+23)
14:50:10 <esolangs> [[Memory]] https://esolangs.org/w/index.php?diff=172518&oldid=171288 * JIT * (+23) TIM
14:51:04 <esolangs> [[AddByteJump]] https://esolangs.org/w/index.php?diff=172519&oldid=172462 * JIT * (+23) its not THAT hard, TIM! just add a category:languages and tHATS it
14:55:07 <esolangs> [[Talk:USI]] N https://esolangs.org/w/index.php?oldid=172520 * Aadenboy * (+349) noticed
14:56:49 <esolangs> [[Talk:USI]] https://esolangs.org/w/index.php?diff=172521&oldid=172520 * Yayimhere2(school) * (+237)
15:00:41 -!- DOS_User_webchat has joined.
15:02:33 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172522&oldid=172508 * Yayimhere2(school) * (+17)
15:08:21 -!- Sgeo has joined.
15:10:20 -!- DOS_User_webchat has quit (Quit: Client closed).
15:16:54 -!- ais523 has joined.
15:17:01 <ais523> `olist 1338
15:17:06 <HackEso> olist <https://www.giantitp.com/comics/oots1338.html>: shachaf oerjan Sgeo boily nortti b_jonas Noisytoot
15:18:20 <int-e> . o O ( the wall of text comic is still going I see )
15:23:33 <esolangs> [[User talk:Blashyrkh]] N https://esolangs.org/w/index.php?oldid=172523 * Yayimhere2(school) * (+202) Created page with "Hey, you make some cool stuff!!! Would you perhaps collaborate with me on an esolang? --~~~~"
15:27:47 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172524&oldid=172512 * Blashyrkh * (+1209) Cyclic tag system implementation
15:36:32 <esolangs> [[User talk:Blashyrkh]] M https://esolangs.org/w/index.php?diff=172525&oldid=172523 * Blashyrkh * (+134)
15:38:08 <esolangs> [[User talk:Blashyrkh]] https://esolangs.org/w/index.php?diff=172526&oldid=172525 * Yayimhere2(school) * (+165)
15:38:30 -!- amby has joined.
15:45:16 -!- ehmry has quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.).
15:45:23 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:53:36 <esolangs> [[User talk:Blashyrkh]] M https://esolangs.org/w/index.php?diff=172527&oldid=172526 * Blashyrkh * (+372)
15:54:41 <esolangs> [[User talk:Blashyrkh]] https://esolangs.org/w/index.php?diff=172528&oldid=172527 * Yayimhere2(school) * (+189)
16:01:41 <esolangs> [[User talk:Blashyrkh]] M https://esolangs.org/w/index.php?diff=172529&oldid=172528 * Blashyrkh * (+402)
16:04:27 <esolangs> [[User talk:Blashyrkh]] https://esolangs.org/w/index.php?diff=172530&oldid=172529 * Yayimhere2(school) * (+136)
16:04:35 -!- tromp has joined.
16:07:01 <esolangs> [[User:Blashyrkh]] M https://esolangs.org/w/index.php?diff=172531&oldid=171679 * Blashyrkh * (+145) Link to UnnamedEsolang draft page
16:23:48 -!- ehmry has joined.
16:23:59 -!- somefan has quit (Remote host closed the connection).
16:24:09 -!- somefan has joined.
16:32:32 -!- somefan has quit (Remote host closed the connection).
16:32:43 -!- somefan has joined.
16:39:39 <esolangs> [[User:Blashyrkh/UnnamedEsolang]] N https://esolangs.org/w/index.php?oldid=172532 * Blashyrkh * (+1544) Just an idea of a language
16:39:51 -!- impomatic has quit (Quit: Client closed).
16:40:19 <esolangs> [[User talk:Blashyrkh]] M https://esolangs.org/w/index.php?diff=172533&oldid=172530 * Blashyrkh * (+131)
16:43:03 <esolangs> [[User:Blashyrkh/UnnamedEsolang]] M https://esolangs.org/w/index.php?diff=172534&oldid=172532 * Blashyrkh * (-1) typo
16:46:18 <esolangs> [[User talk:Blashyrkh]] https://esolangs.org/w/index.php?diff=172535&oldid=172533 * Yayimhere2(school) * (+321)
16:48:36 <esolangs> [[User talk:Blashyrkh]] https://esolangs.org/w/index.php?diff=172536&oldid=172535 * Yayimhere2(school) * (+31)
16:55:17 <esolangs> [[User talk:Blashyrkh]] M https://esolangs.org/w/index.php?diff=172537&oldid=172536 * Blashyrkh * (+431)
16:58:44 <esolangs> [[User talk:Blashyrkh]] https://esolangs.org/w/index.php?diff=172538&oldid=172537 * Yayimhere2(school) * (+213)
17:02:01 <esolangs> [[User talk:Blashyrkh]] M https://esolangs.org/w/index.php?diff=172539&oldid=172538 * Blashyrkh * (+168)
17:02:35 <esolangs> [[User talk:Blashyrkh]] https://esolangs.org/w/index.php?diff=172540&oldid=172539 * Yayimhere2(school) * (+182)
17:04:58 -!- somefan has quit (Remote host closed the connection).
17:05:14 -!- somefan has joined.
17:05:19 <esolangs> [[User:Blashyrkh/UnnamedEsolang]] M https://esolangs.org/w/index.php?diff=172541&oldid=172534 * Blashyrkh * (+41) some clarification
17:05:59 <esolangs> [[User:Blashyrkh/UnnamedEsolang]] https://esolangs.org/w/index.php?diff=172542&oldid=172541 * Yayimhere2(school) * (+12)
17:14:12 -!- impomatic has joined.
17:19:13 -!- ais523 has quit (Quit: quit).
17:23:09 -!- ais523 has joined.
18:05:17 -!- svm has joined.
18:07:35 -!- msv has quit (Ping timeout: 240 seconds).
18:17:45 <esolangs> [[Countable]] https://esolangs.org/w/index.php?diff=172543&oldid=172436 * Aadenboy * (+843) implement the [[Kolakoski sequence]]
18:18:01 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:18:44 <esolangs> [[Kolakoski sequence]] https://esolangs.org/w/index.php?diff=172544&oldid=168755 * Aadenboy * (+834) add [[Countable]]
18:18:46 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172545&oldid=172524 * Blashyrkh * (+4765) /* Cyclic tag system */ Compiled form of cts-sts adapter
18:20:02 -!- svm has changed nick to msv.
18:28:46 -!- tromp has joined.
18:41:17 <esolangs> [[Kolakoski sequence]] https://esolangs.org/w/index.php?diff=172546&oldid=172544 * Yayimhere2(school) * (+2) /* Countable */ == -> ===
18:45:10 -!- Everything has quit (Quit: leaving).
18:45:51 <esolangs> [[User:Blashyrkh/Crazy J]] https://esolangs.org/w/index.php?diff=172547&oldid=172545 * Blashyrkh * (+289) New rule with S combinator, update table, remove some todos
18:51:19 -!- impomatic has quit (Quit: Client closed).
18:56:14 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:02:20 -!- tromp has joined.
19:02:51 <esolangs> [[Countable]] https://esolangs.org/w/index.php?diff=172548&oldid=172543 * Yayimhere2(school) * (+8) make example programs have === === titles
19:06:49 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172549&oldid=172522 * Yayimhere2(school) * (+208) /* Syntax */
19:08:57 <esolangs> [[Pythong]] N https://esolangs.org/w/index.php?oldid=172550 * FluixMakesEsolangs * (+1827) Initial Creation of Page
19:08:59 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172551&oldid=172549 * Yayimhere2(school) * (+2) /* Constructs */
19:10:22 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172552&oldid=172551 * Yayimhere2(school) * (+23) /* Semantics */
19:14:30 <ais523> @metar EGBB
19:14:30 <lambdabot> METAR EGBB 081850Z 08010KT 1500 SN OVC004 01/00 Q0986 RESN RERA
19:19:13 <esolangs> [[Apraxia]] https://esolangs.org/w/index.php?diff=172553&oldid=172381 * Yayimhere2(school) * (+8) /* Combinators */
19:23:20 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172554&oldid=172552 * Yayimhere2(school) * (+34) /* Semantics */
19:23:36 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172555&oldid=172554 * Yayimhere2(school) * (+47) /* Memory */
19:24:04 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172556&oldid=172555 * Yayimhere2(school) * (+24) /* Semantics */
19:24:53 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172557&oldid=172556 * Yayimhere2(school) * (+18) /* Semantics */
19:27:47 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172558&oldid=172557 * Yayimhere2(school) * (+0)
19:28:53 <esolangs> [[User talk:FluixMakesEsolangs]] https://esolangs.org/w/index.php?diff=172559&oldid=172494 * FluixMakesEsolangs * (+240) I eat dirt
19:29:41 <esolangs> [[User talk:FluixMakesEsolangs/Secret]] https://esolangs.org/w/index.php?diff=172560&oldid=172469 * FluixMakesEsolangs * (+145)
19:31:42 -!- impomatic has joined.
19:37:43 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
19:37:53 -!- Lord_of_Life_ has joined.
19:39:13 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
19:39:37 <esolangs> [[USI]] https://esolangs.org/w/index.php?diff=172561&oldid=172558 * Yayimhere2(school) * (+65) /* Memory */
19:46:17 <esolangs> [[User talk:RaiseAfloppaFan3925]] https://esolangs.org/w/index.php?diff=172562&oldid=172011 * Frendoly * (+237)
19:47:42 <esolangs> [[User talk:RaiseAfloppaFan3925]] https://esolangs.org/w/index.php?diff=172563&oldid=172562 * Frendoly * (+131)
19:48:37 <esolangs> [[Countable]] M https://esolangs.org/w/index.php?diff=172564&oldid=172548 * Aadenboy * (-210) /* Commands */ simplifying language
19:49:54 <esolangs> [[User talk:RaiseAfloppaFan3925]] M https://esolangs.org/w/index.php?diff=172565&oldid=172563 * Frendoly * (-1)
19:56:59 <esolangs> [[Countable]] https://esolangs.org/w/index.php?diff=172566&oldid=172564 * Aadenboy * (+46) /* Commands */
20:18:23 -!- somefan has quit (Remote host closed the connection).
20:18:31 -!- somefan has joined.
20:21:24 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
20:22:41 -!- tromp has joined.
20:50:32 <esolangs> [[User talk:FluixMakesEsolangs/Secret]] M https://esolangs.org/w/index.php?diff=172567&oldid=172560 * Ractangle * (+206)
20:52:34 <esolangs> [[Talk:Pythong]] N https://esolangs.org/w/index.php?oldid=172568 * * (+88) Created page with "but what if you type print("garfield")?! the program would be incorrect 20% of the time!"
20:52:53 <esolangs> [[Talk:Pythong]] M https://esolangs.org/w/index.php?diff=172569&oldid=172568 * * (+0)
20:53:25 <esolangs> [[User talk:FluixMakesEsolangs/Secret]] https://esolangs.org/w/index.php?diff=172570&oldid=172567 * * (+19)
20:53:32 <esolangs> [[User:Blashyrkh/Crazy J]] M https://esolangs.org/w/index.php?diff=172571&oldid=172547 * Blashyrkh * (+14) Strike out few TODO entries
21:13:48 <esolangs> [[Special:Log/newusers]] create * 6S37l0314M0ri1109 * New user account
21:31:37 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=172572&oldid=172511 * Hotcrystal0 * (+54)
21:43:23 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172573&oldid=172401 * Splot-dev * (+458) Added why Backtick is Turing Complete.
21:44:02 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172574&oldid=172573 * Splot-dev * (+0) Moved link.
21:46:03 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172575&oldid=172574 * Splot-dev * (-1) fixed syntax
21:46:47 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172576&oldid=172575 * Splot-dev * (-1) moved comment to new line
21:47:10 <esolangs> [[Backtick]] M https://esolangs.org/w/index.php?diff=172577&oldid=172576 * Splot-dev * (+1) fixed grammar
22:01:44 <APic> cu
22:04:02 -!- impomatic has quit (Quit: Client closed).
22:04:02 -!- somefan has quit (Remote host closed the connection).
22:04:12 -!- somefan has joined.
22:08:17 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=172578&oldid=172475 * Buckets * (+14) /* M */
22:08:48 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=172579&oldid=172476 * Buckets * (+13)
22:09:02 <esolangs> [[Masheen]] N https://esolangs.org/w/index.php?oldid=172580 * Buckets * (+1064) Created page with "Masheen is an Esoteric Programming Language created by [[User:Buckets]] in 2022. The IP Will start at the top-Left pointing Rightwards. {| class="wikitable" |- ! Commands !! Instructions |- | m || Point downwards if The Current value Is Perfectly Divisible by m(, so it
22:40:38 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:12:16 -!- scoofy has quit (Ping timeout: 246 seconds).
←2025-12 2026-01 ↑2026 ↑all