00:14:30 -!- Everything has quit (Quit: leaving).
00:38:15 <ais523> <int-e> Hmm... alternative Sea magic objective? ← true minscore seems awkward because you get 100 points for finishing a level without using boxes, but you don't unlock boxes until you score 1000 points
00:38:27 <esolangs> [[MoreMathRPN]] M https://esolangs.org/w/index.php?diff=152967&oldid=152775 * Calculus is fun * (-154) Changed icon location
00:39:16 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=152968&oldid=152828 * Calculus is fun * (-106) Changed icon location
00:43:11 <ais523> <b_jonas> by the way if you can modify the compilers then you can make them easily invertible by embedding the original source code as a comment in the compiled version ← IIRC LibreOffice has an option to do that when generating PDFs
00:53:14 <zzo38> Do you know if Ghostscript has any function like that?
01:55:42 -!- m5zs7k has quit (Quit: m5zs7k).
01:56:15 -!- m5zs7k has joined.
02:05:31 <esolangs> [[User:PrySigneToFry/Sandbox/PsiLine History]] https://esolangs.org/w/index.php?diff=152969&oldid=152950 * PrySigneToFry * (+0) Fixed typo. And OTL timeline is the universe where we live.
02:06:00 <ais523> for what it's worth, I played the game without boxes until I had all levels complete – I'm not sure whether that's an intended gameplay style or not
02:34:59 -!- 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:45:18 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=152970&oldid=152968 * Calculus is fun * (+151) Fleshed out categories
02:52:28 <esolangs> [[Esolang:Help]] M https://esolangs.org/w/index.php?diff=152971&oldid=150910 * Calculus is fun * (-1) Removed erroneous colon
03:04:01 <esolangs> [[Esolang:Help]] https://esolangs.org/w/index.php?diff=152972&oldid=152971 * Ais523 * (+1) Undo revision [[Special:Diff/152971|152971]] by [[Special:Contributions/Calculus is fun|Calculus is fun]] ([[User talk:Calculus is fun|talk]]) the colon is correct, it's specifying how to link to a category page rather than place a page into a category
03:04:43 <esolangs> [[Esolang:Help]] https://esolangs.org/w/index.php?diff=152973&oldid=152972 * Calculus is fun * (+596) proglang Infobox syntax
03:05:07 <esolangs> [[Esolang:Help]] M https://esolangs.org/w/index.php?diff=152974&oldid=152973 * Calculus is fun * (+0) /* Infobox */
03:15:27 -!- madcabbage has joined.
03:18:56 <esolangs> [[Esolang:Help]] https://esolangs.org/w/index.php?diff=152975&oldid=152974 * Calculus is fun * (+371) Fancy styling
03:26:17 <esolangs> [[Esolang:Help]] https://esolangs.org/w/index.php?diff=152976&oldid=152975 * Ais523 * (-371) Undo revision [[Special:Diff/152975|152975]] by [[Special:Contributions/Calculus is fun|Calculus is fun]] ([[User talk:Calculus is fun|talk]]) a) this is slightly inaccurate (e.g. MediaWiki's <pre> tag is not identical to HTML's <pre> tag), b) we really shouldn't be encoura
03:56:32 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=152977&oldid=152943 * PrySigneToFry * (+749)
05:39:35 -!- chomwitt has joined.
06:01:31 <esolangs> [[Special:Log/upload]] upload * I am islptng * uploaded "[[File:SLetIcon.jpg]]": Icon for SLet
06:02:11 <esolangs> [[SLet]] https://esolangs.org/w/index.php?diff=152979&oldid=152895 * I am islptng * (+25)
06:02:19 <esolangs> [[SLet (Old 3)]] https://esolangs.org/w/index.php?diff=152980&oldid=152594 * I am islptng * (+25)
06:26:13 -!- madcabbage has quit (Ping timeout: 245 seconds).
07:02:22 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=152981&oldid=152977 * PrySigneToFry * (+384)
07:10:15 -!- Lord_of_Life_ has joined.
07:11:16 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
07:11:37 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:12:42 <esolangs> [[Talk:Mutzerium]] N https://esolangs.org/w/index.php?oldid=152982 * I am islptng * (+760) Created page with "Some mistake: # You can completely remove "pair" since you have "tuple". # You have got one "reveal" from original SLet, which is the combination of your additional command "randrange" and "choice". Please remove one of them. <br />~~~~"
08:02:22 -!- zzo38 has quit (Ping timeout: 252 seconds).
08:13:05 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=152983&oldid=152930 * I am islptng * (+604)
09:25:01 <esolangs> [[User talk:Tommyaweosme]] https://esolangs.org/w/index.php?diff=152984&oldid=152183 * PrySigneToFry * (+1217) /* StormLang and Emojic */ new section
09:25:22 <esolangs> [[User talk:Tommyaweosme]] https://esolangs.org/w/index.php?diff=152985&oldid=152984 * PrySigneToFry * (+0) Fixed time
10:08:07 <esolangs> [[Talk:Mutzerium]] https://esolangs.org/w/index.php?diff=152986&oldid=152982 * PrySigneToFry * (+1121)
10:08:48 <esolangs> [[Special:Log/newusers]] create * Arkeor * New user account
10:09:36 <esolangs> [[User talk:Tommyaweosme]] https://esolangs.org/w/index.php?diff=152987&oldid=152985 * Ractangle * (+192) /* StormLang and Emojic */
10:10:41 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=152988&oldid=152981 * PrySigneToFry * (-56)
10:10:52 <esolangs> [[User talk:Tommyaweosme]] https://esolangs.org/w/index.php?diff=152989&oldid=152987 * Ractangle * (+1) /* grade 2pi+0.01 (6.3) */
10:11:37 <esolangs> [[User talk:Tommyaweosme]] https://esolangs.org/w/index.php?diff=152990&oldid=152989 * Ractangle * (-192) /* StormLang and Emojic */
10:15:05 -!- Sgeo__ has quit (Read error: Connection reset by peer).
11:09:02 <esolangs> [[]] https://esolangs.org/w/index.php?diff=152991&oldid=151371 * I am islptng * (+5) /* Arithmetic & Logical */
11:12:04 -!- ais523 has quit (Ping timeout: 260 seconds).
11:12:53 <b_jonas> ais523: and I think inkscape uses a save file format that's both a displayable SVG and has extra data for Inkscape
11:21:48 <int-e> having looked inside once or twice, yeah that's what it is
11:27:04 <b_jonas> HTML is good for this too, you can use id and class and data-* attributes to put extra information in the html response of your specific web service that users can automatically extract, even while the HTML is made for display
11:45:46 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=152992&oldid=152935 * Arkeor * (+41) /* Introductions */
12:06:35 -!- amby has joined.
14:02:52 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=152993&oldid=152983 * PrySigneToFry * (+1543)
14:08:21 <esolangs> [[UserEdited/L'internationale]] N https://esolangs.org/w/index.php?oldid=152994 * PrySigneToFry * (+3117) Created page with "{{Back|UserEdited}} <br> </br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> <br> ..."
14:09:40 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=152995&oldid=152993 * PrySigneToFry * (+90)
14:17:53 <esolangs> [[User:PrySigneToFry]] https://esolangs.org/w/index.php?diff=152996&oldid=151813 * PrySigneToFry * (+43)
14:20:19 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=152997&oldid=152988 * PrySigneToFry * (+51)
14:49:45 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=152998&oldid=152995 * PrySigneToFry * (+0)
14:55:40 -!- FreeFull has quit.
15:09:47 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=152999&oldid=152997 * PrySigneToFry * (-38)
16:05:49 -!- craigo has joined.
16:14:18 -!- ais523 has joined.
16:27:49 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153000&oldid=150001 * 47 * (-9)
16:31:09 <esolangs> [[Talk:]] https://esolangs.org/w/index.php?diff=153001&oldid=135449 * 47 * (-70)
16:32:22 <esolangs> [[Talk:]] https://esolangs.org/w/index.php?diff=153002&oldid=153001 * 47 * (+118) /* discord thingy */
16:34:03 <esolangs> [[(mark]] https://esolangs.org/w/index.php?diff=153003&oldid=152581 * 47 * (+50)
17:05:03 <korvo> b_jonas: As long as we're talking of those designs, some file formats encourage tucking away resources. Executables and PDFs are good examples; another fun one is PNG.
17:08:53 <korvo> For example here's an ontology diagram that I made: https://corbinsimpson.com/danlu.png To make it machine-readable, there is a "chunk zaHa at offset 0x1bc40, length 777" according to pngcheck, which contains packed JSON.
17:09:45 <korvo> PNG is just a sequence of chunks. You can add your own chunk and define its usage flags inline; pngcheck says that `zaHa` is "unknown private, ancillary, safe-to-copy chunk".
17:39:32 -!- zzo38 has joined.
17:43:28 -!- chomwitt has quit (Ping timeout: 265 seconds).
17:59:36 <zzo38> Another idea I have with a version control system is to allow multiple types of user authentication for remote access, such as password, HMAC, and X.509. For a repository on the same computer that you do not have permission to access directly, you can also use SCM_CREDENTIALS. (Each kind has its own advantages and disadvantages. These could be used in other kind of systems too, not only version controls)
18:01:11 <zzo38> (They would not necessarily all be implemented at first, nor would all implementations necessarily support all uses (and some might have their own nonstandard methods), but some can be useful for different uses.)
18:02:08 <zzo38> (Password-based authentication seems most common in most programs and the others are not common, although I think HMAC and X.509 are both useful methods in some cases and avoids some of the problems of using passwords.)
18:09:33 <korvo> Sure. Because cryptographically-secure strings are unguessable, we can treat them as a sort of capability; so e.g. git commit hashes are capabilities for checking out a particular revision of a tree, as well as all of its history.
18:09:57 <korvo> So there's non-trivial access patterns that could be enabled with multiple avenues of authentication.
18:32:53 <zzo38> Yes, the cryptographic hashes are helpful. That is not what I meant by user authentication, although it is helpful too; you can verify that the file is correct if you already know the hash, as well as other advantages.
19:06:15 -!- madcabbage has joined.
19:43:05 <esolangs> [[Special:Log/newusers]] create * ----- * New user account
19:46:44 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153004&oldid=152992 * ----- * (+39)
19:46:54 <esolangs> [[User:-----]] N https://esolangs.org/w/index.php?oldid=153005 * ----- * (+181) Created page with "hi im -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------"
19:48:46 -!- Sgeo has joined.
20:28:16 -!- FreeFull has joined.
21:03:49 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153006&oldid=152960 * Buckets * (+39)
21:03:56 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153007&oldid=152961 * Buckets * (+38)
21:04:08 <esolangs> [[Palindrome (language)]] N https://esolangs.org/w/index.php?oldid=153008 * Buckets * (+1076) Created page with ": ''Not to be confused with [[Palindrome]]'' : Palindrome is an Esoteric programming language created by [[User:Buckets]] in 2020, Where there is A restriction that Everything in the code Has To Be palindromic. {| class="wikitable" ! Commands !! Instructio
21:05:11 <esolangs> [[Palindrome]] M https://esolangs.org/w/index.php?diff=153009&oldid=137918 * Buckets * (+56)
21:13:36 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153010&oldid=152998 * Hotcrystal0 * (+16) smaller
21:14:27 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153011&oldid=153010 * Hotcrystal0 * (+15)
21:15:06 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153012&oldid=153011 * Hotcrystal0 * (+15)
21:15:36 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153013&oldid=153012 * Hotcrystal0 * (+0)
21:16:13 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153014&oldid=153013 * Hotcrystal0 * (+15)
21:25:49 <esolangs> [[Palindrome]] M https://esolangs.org/w/index.php?diff=153015&oldid=153009 * Aadenboy * (-8) template
21:26:49 <esolangs> [[Palindrome (language)]] M https://esolangs.org/w/index.php?diff=153016&oldid=153008 * Buckets * (+378)
21:35:18 <esolangs> [[Pointing]] https://esolangs.org/w/index.php?diff=153017&oldid=152970 * Calculus is fun * (+353) /* Expressions */
21:35:44 <esolangs> [[Sleep.]] M https://esolangs.org/w/index.php?diff=153018&oldid=152648 * Buckets * (+203)
21:38:01 <esolangs> [[Palindrome (language)]] M https://esolangs.org/w/index.php?diff=153019&oldid=153016 * Aadenboy * (-47) I don't think distinction is required here
21:38:31 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153020&oldid=153017 * Calculus is fun * (+31) /* Predefined functions */
21:40:02 <esolangs> [[Palindrome]] M https://esolangs.org/w/index.php?diff=153021&oldid=153015 * Aadenboy * (+11)
21:41:56 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153022&oldid=153020 * Calculus is fun * (+23) /* Expressions */
21:42:43 -!- tromp has joined.
21:44:13 <esolangs> [[Pointing]] https://esolangs.org/w/index.php?diff=153023&oldid=153022 * Calculus is fun * (+1) /* Assignments */
22:30:34 -!- ais523 has quit (Ping timeout: 265 seconds).
22:43:11 -!- ais523 has joined.
01:22:36 <esolangs> [[Talk:Foldy]] M https://esolangs.org/w/index.php?diff=153024&oldid=151682 * Squareroot12621 * (+163) Respond to Calculus is fun
01:40:08 -!- amby has quit (Remote host closed the connection).
01:47:26 <esolangs> [[UserEdited]] M https://esolangs.org/w/index.php?diff=153025&oldid=153014 * I am islptng * (+1) fix
02:00:08 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=153026&oldid=152999 * PrySigneToFry * (+157)
03:05:02 -!- op_4 has quit (Remote host closed the connection).
03:05:33 -!- op_4 has joined.
03:06:14 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153027&oldid=153023 * Calculus is fun * (+277) /* Assignments */
03:12:17 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153028&oldid=153027 * Calculus is fun * (+110) /* Predefined functions */
03:16:12 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153029&oldid=153028 * Calculus is fun * (+81) /* Pointer manipulation */
03:16:44 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153030&oldid=153029 * Calculus is fun * (-8) /* Memory */
03:18:58 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153031&oldid=153030 * Calculus is fun * (+18) /* Linked list */
03:29:09 <esolangs> [[Pointing]] https://esolangs.org/w/index.php?diff=153032&oldid=153031 * Calculus is fun * (+376) /* Custom functions */
03:29:59 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153033&oldid=153032 * Calculus is fun * (-1) /* Instructions */
03:30:10 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153034&oldid=153033 * Calculus is fun * (+9) /* Memory */
03:31:36 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153035&oldid=153034 * Calculus is fun * (-31) /* Instructions */
03:53:15 <esolangs> [[Talk:Iterate]] https://esolangs.org/w/index.php?diff=153036&oldid=150735 * Aadenboy * (+1245) /* arbitrary memory */ new section
04:14:11 -!- madcabbage has quit (Remote host closed the connection).
04:15:04 -!- madcabbage has joined.
04:30:14 -!- craigo has quit (Ping timeout: 260 seconds).
04:37:43 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153037&oldid=152876 * H33T33 * (+5)
04:38:12 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153038&oldid=153037 * H33T33 * (-19)
04:54:19 -!- nitrix has quit (Quit: ZNC 1.9.1 - https://znc.in).
05:00:14 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=153039&oldid=153026 * PrySigneToFry * (+0)
05:03:10 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=153040&oldid=153039 * PrySigneToFry * (+210)
05:06:39 -!- nitrix has joined.
05:18:28 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=153041&oldid=153040 * PrySigneToFry * (+27)
05:19:02 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=153042&oldid=153041 * PrySigneToFry * (+29)
05:25:56 <esolangs> [[Mutzerium/STL]] N https://esolangs.org/w/index.php?oldid=153043 * PrySigneToFry * (+3075) Created page with "{{Back|Mutzerium}} Mutzerium also has standard libraries. = Math library = The Math standard library mainly supports some mathematical operations. Its module name is "math". == Trigonometric function == <pre> sin | Get the sine value of a number.
05:47:55 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=153044&oldid=153042 * PrySigneToFry * (+28)
06:10:42 -!- madcabbage has quit (Ping timeout: 246 seconds).
07:10:11 -!- Lord_of_Life_ has joined.
07:10:49 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
07:11:36 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
09:08:40 -!- slavfox has quit (Quit: ZNC 1.8.2 - https://znc.in).
09:09:31 -!- slavfox has joined.
09:45:03 <esolangs> [[Talk:]] N https://esolangs.org/w/index.php?oldid=153045 * BoundedBeans * (+981) Created page with "This isn't really faithful to what you wanted, I would guess, but in theory, the language could interpret the bytes of that code block as binary bits, where 0 means switch the instruction and 1 means execute (turning tarpit). Populate with enough instructions and it's
09:47:29 -!- ais523 has quit (Quit: quit).
10:01:10 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=153046&oldid=152727 * XxXaXxX * (+22) Added Super Ratt Bros
10:06:40 <esolangs> [[Super Ratt 64]] N https://esolangs.org/w/index.php?oldid=153047 * XxXaXxX * (+178) Created page with "Super Ratt 64 is an extended form of Super Ratt Bros. It includes front and back codes {| class="wikitable" |+ Extensions |- ! Command !! Corrat |- | Front || f |- | Back || b |}"
10:07:11 <esolangs> [[User:XxXaXxX]] M https://esolangs.org/w/index.php?diff=153048&oldid=130015 * XxXaXxX * (+0)
10:10:16 <esolangs> [[Joke language list]] M https://esolangs.org/w/index.php?diff=153049&oldid=153046 * XxXaXxX * (+20) Added Super Ratt 64
10:11:51 <esolangs> [[It's Just Perl!]] N https://esolangs.org/w/index.php?oldid=153050 * BoundedBeans * (+1417) Created page with "'''It's Just Perl''' is a dumb OISC by [[User:BoundedBeans]] where It's Just Perl! ==The instruction== It's Just Perl! A B C D E F (where A-F are numbers) * Using A as a starting address, with B pointing to a number of characters to read, do a Perl eval
10:12:21 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153051&oldid=153006 * BoundedBeans * (+22)
10:12:51 <esolangs> [[User:BoundedBeans]] https://esolangs.org/w/index.php?diff=153052&oldid=151780 * BoundedBeans * (+50)
12:06:27 -!- tromp has quit (Quit: Textual IRC Client: www.textualapp.com).
12:14:53 -!- tromp has joined.
12:42:25 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:12:05 -!- Sgeo has quit (Read error: Connection reset by peer).
13:22:09 -!- chomwitt has joined.
13:28:12 -!- chomwitt has quit (Remote host closed the connection).
13:32:30 -!- craigo has joined.
13:34:45 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=153053&oldid=153044 * PrySigneToFry * (+214)
14:02:03 -!- Noisytoot has quit (Remote host closed the connection).
14:02:26 -!- tromp has joined.
14:02:32 -!- Noisytoot has joined.
14:07:30 -!- Noisytoot has quit (Remote host closed the connection).
14:07:56 -!- Noisytoot has joined.
14:17:47 -!- amby has joined.
14:40:35 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
14:43:05 -!- tromp has joined.
14:53:57 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153054&oldid=152958 * C++DSUCKER * (+362)
15:01:53 -!- tromp has quit (Ping timeout: 265 seconds).
15:17:05 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153055&oldid=153054 * C++DSUCKER * (+731)
15:18:24 -!- tromp has joined.
15:20:30 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153056&oldid=153055 * C++DSUCKER * (+71)
15:45:10 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153057&oldid=153056 * C++DSUCKER * (+707)
16:11:48 <esolangs> [[BitChanger Busy beaver/Proof]] M https://esolangs.org/w/index.php?diff=153058&oldid=153057 * C++DSUCKER * (-2) /* Terminology and other useful stuff */
16:17:11 -!- madcabbage has joined.
16:25:08 -!- mtm has joined.
16:47:21 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153059&oldid=153058 * C++DSUCKER * (+454)
17:31:38 -!- molson__ has quit (Ping timeout: 245 seconds).
17:40:09 -!- molson has joined.
17:58:07 -!- molson has quit (Remote host closed the connection).
18:00:32 -!- molson has joined.
19:40:48 -!- Everything has joined.
20:05:52 <esolangs> [[Special:Log/newusers]] create * FurCantCodeAnything * New user account
20:29:11 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153060&oldid=153004 * FurCantCodeAnything * (+136)
20:32:56 <esolangs> [[User:FurCantCodeAnything]] N https://esolangs.org/w/index.php?oldid=153061 * FurCantCodeAnything * (+280) Created page with "== DANGER == This person is EXTREMLEY DANGEROUS, and WILL recommend stupid ideas. They are also a "sweet summer child" as the masses say because they do not know a single thing about coding '''Coding is dead and we have killed it.''' redACT
20:34:32 -!- lynndotpy6 has quit (Quit: bye bye).
20:35:31 -!- lynndotpy6 has joined.
20:46:20 -!- Everything has quit (Ping timeout: 260 seconds).
20:47:58 -!- Everything has joined.
20:49:32 -!- ais523 has joined.
20:56:27 <esolangs> [[Funciton]] https://esolangs.org/w/index.php?diff=153062&oldid=151248 * Timwi * (+126) : Consecutive pairs, written for AoC 2024 D2 pt1 (https://www.youtube.com/watch?v=kNG45WkMCO8)
21:00:46 -!- Sgeo has joined.
21:30:21 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153063&oldid=153051 * Buckets * (+40)
21:30:38 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153064&oldid=153007 * Buckets * (+39)
21:30:51 <esolangs> [[G+*^n]] N https://esolangs.org/w/index.php?oldid=153065 * Buckets * (+1413) Created page with "{{Lowercase}} {{wrongtitle|title=:g+*^n (or :g+*<sup>n</sup>)}} :g+*^n (Or :g+*<sup>n</sup>) (Pronounced Colongplusasteriskcarotn, or Lusaste) is an Esoteric programming language created by [[User:Buckets]] in 2021. (The rack Pointer will start at the top of the Infinite
21:31:53 <esolangs> [[G+*^n]] M https://esolangs.org/w/index.php?diff=153066&oldid=153065 * Buckets * (+21)
21:37:45 <esolangs> [[Imbored]] M https://esolangs.org/w/index.php?diff=153067&oldid=152964 * Buckets * (+53)
21:42:14 <esolangs> [[G+*^n]] M https://esolangs.org/w/index.php?diff=153068&oldid=153066 * Buckets * (+1)
21:55:26 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:16:21 -!- Everything has quit (Quit: leaving).
22:30:38 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153069&oldid=152364 * Buckets * (+40)
22:33:49 <esolangs> [[User:Aadenboy/Sandbox]] M https://esolangs.org/w/index.php?diff=153070&oldid=149912 * Aadenboy * (+115)
23:08:10 <esolangs> [[Special:Log/upload]] upload * Buckets * uploaded "[[File:Fontmess Logo.jpg]]": This is the logo for Fontmess/<span style="background-color:Gray;color:Yellow;">F</span><u><span style="font-size: 1.4em;">o</span></u>''<span style="background-color:Default;color:Green;">n</span>''<strike>t</strike><sup>m</sup><small><sub><span style="background-color:Black;col
23:13:02 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153072&oldid=153069 * Buckets * (+394)
23:27:31 <esolangs> [[Church-Turing thesis]] https://esolangs.org/w/index.php?diff=153073&oldid=67596 * Corbin * (+544) Fix up everything. That last paragraph had a wholly-bogus sentence again.
23:29:30 <esolangs> [[Imbored]] M https://esolangs.org/w/index.php?diff=153074&oldid=153067 * Buckets * (+120)
23:46:24 <esolangs> [[List of complexity classes]] https://esolangs.org/w/index.php?diff=153075&oldid=96952 * Corbin * (+765) Add BQP. This is the first bounded-probabilistic class, and so it's not worth setting up the big explanation about such classes.
23:47:13 -!- coat has left.
23:48:20 <esolangs> [[List of complexity classes]] M https://esolangs.org/w/index.php?diff=153076&oldid=153075 * Corbin * (-23) /* R */ Bluelink, typo, phrasing when read out loud.
23:48:37 <esolangs> [[REdACT]] N https://esolangs.org/w/index.php?oldid=153077 * FurCantCodeAnything * (+2439) fun
23:59:27 <esolangs> [[Esolang:Community portal]] M https://esolangs.org/w/index.php?diff=153078&oldid=147475 * FurCantCodeAnything * (+49) please fix the CaID link
00:02:31 -!- craigo has quit (*.net *.split).
00:02:31 -!- rodgort has quit (*.net *.split).
00:02:32 -!- simcop2387 has quit (*.net *.split).
00:02:32 -!- iovoid has quit (*.net *.split).
00:02:32 -!- perlbot has quit (*.net *.split).
00:02:33 -!- int-e has quit (*.net *.split).
00:02:35 -!- dbohdan has quit (*.net *.split).
00:02:36 -!- Artea has quit (*.net *.split).
00:02:36 -!- APic has quit (*.net *.split).
00:02:36 -!- lynndotpy6 has quit (*.net *.split).
00:02:36 -!- amby has quit (*.net *.split).
00:02:36 -!- Noisytoot has quit (*.net *.split).
00:02:38 -!- sprout has quit (*.net *.split).
00:02:38 -!- ais523 has quit (*.net *.split).
00:02:39 -!- madcabbage has quit (*.net *.split).
00:02:39 -!- nitrix has quit (*.net *.split).
00:02:39 -!- sprock has quit (*.net *.split).
00:02:39 -!- Trigon has quit (*.net *.split).
00:02:39 -!- Taneb0 has quit (*.net *.split).
00:02:40 -!- mcfrdy has quit (*.net *.split).
00:02:42 -!- visilii has quit (*.net *.split).
00:02:42 -!- myname has quit (*.net *.split).
00:02:43 -!- V has quit (*.net *.split).
00:02:44 -!- chiselfuse has quit (*.net *.split).
00:02:44 -!- mtm has quit (*.net *.split).
00:02:45 -!- shikhin has quit (*.net *.split).
00:02:45 -!- HackEso has quit (*.net *.split).
00:02:45 -!- jix has quit (*.net *.split).
00:02:46 -!- tetsuo-cpp has quit (*.net *.split).
00:02:46 -!- wryl has quit (*.net *.split).
00:02:48 -!- Bowserinator has quit (*.net *.split).
00:02:48 -!- Melvar has quit (*.net *.split).
00:02:48 -!- isabella has quit (*.net *.split).
00:02:48 -!- ^[ has quit (*.net *.split).
00:02:50 -!- ManDeJan has quit (*.net *.split).
00:02:50 -!- moony has quit (*.net *.split).
00:02:50 -!- Ae_ has quit (*.net *.split).
00:02:51 -!- JAA has quit (*.net *.split).
00:02:51 -!- j4cbo has quit (*.net *.split).
00:02:51 -!- krychu has quit (*.net *.split).
00:02:51 -!- FireFly has quit (*.net *.split).
00:02:51 -!- laerling has quit (*.net *.split).
00:02:52 -!- slavfox has quit (*.net *.split).
00:02:52 -!- Lord_of_Life has quit (*.net *.split).
00:02:52 -!- op_4 has quit (*.net *.split).
00:02:53 -!- b_jonas has quit (*.net *.split).
00:02:53 -!- leah2 has quit (*.net *.split).
00:02:54 -!- zemhill has quit (*.net *.split).
00:02:54 -!- shachaf has quit (*.net *.split).
00:02:54 -!- fizzie has quit (*.net *.split).
00:02:54 -!- Soni has quit (*.net *.split).
00:02:55 -!- Hooloovoo has quit (*.net *.split).
00:02:55 -!- alec3660 has quit (*.net *.split).
00:02:56 -!- Lymee has quit (*.net *.split).
00:02:57 -!- oren has quit (*.net *.split).
00:02:57 -!- ProofTechnique_ has quit (*.net *.split).
00:02:57 -!- molson has quit (*.net *.split).
00:02:58 -!- yuu has quit (*.net *.split).
00:02:59 -!- mich181189 has quit (*.net *.split).
00:03:00 -!- korvo has quit (*.net *.split).
00:03:00 -!- MizMahem has quit (*.net *.split).
00:03:00 -!- voxpelli has quit (*.net *.split).
00:03:00 -!- dnm has quit (*.net *.split).
00:03:01 -!- ursa-major has quit (*.net *.split).
00:03:01 -!- dcreager has quit (*.net *.split).
00:03:01 -!- citrons has quit (*.net *.split).
00:03:02 -!- riv has quit (*.net *.split).
00:03:02 -!- integral has quit (*.net *.split).
00:03:02 -!- gAy_Dragon has quit (*.net *.split).
00:03:04 -!- GregorR has quit (*.net *.split).
00:03:05 -!- xelxebar has quit (*.net *.split).
00:03:06 -!- FreeFull has quit (*.net *.split).
00:03:06 -!- m5zs7k has quit (*.net *.split).
00:03:06 -!- yewscion__ has quit (*.net *.split).
00:03:07 -!- fungot has quit (*.net *.split).
00:03:07 -!- pikhq has quit (*.net *.split).
00:07:44 -!- craigo has joined.
00:07:44 -!- molson has joined.
00:07:44 -!- MizMahem has joined.
00:07:44 -!- yuu has joined.
00:07:44 -!- voxpelli has joined.
00:07:44 -!- dnm has joined.
00:07:44 -!- dcreager has joined.
00:07:44 -!- GregorR has joined.
00:07:44 -!- citrons has joined.
00:07:44 -!- riv has joined.
00:07:44 -!- mich181189 has joined.
00:07:44 -!- gAy_Dragon has joined.
00:07:44 -!- ProofTechnique_ has joined.
00:07:44 -!- xelxebar has joined.
00:07:44 -!- integral has joined.
00:07:44 -!- korvo has joined.
00:07:44 -!- ais523 has joined.
00:07:44 -!- lynndotpy6 has joined.
00:07:44 -!- madcabbage has joined.
00:07:44 -!- amby has joined.
00:07:44 -!- Noisytoot has joined.
00:07:44 -!- nitrix has joined.
00:07:44 -!- sprock has joined.
00:07:44 -!- chiselfuse has joined.
00:07:44 -!- Trigon has joined.
00:07:44 -!- Taneb0 has joined.
00:07:44 -!- visilii has joined.
00:07:44 -!- dbohdan has joined.
00:07:44 -!- myname has joined.
00:07:44 -!- sprout has joined.
00:07:44 -!- Artea has joined.
00:07:44 -!- mcfrdy has joined.
00:07:44 -!- APic has joined.
00:07:44 -!- V has joined.
00:07:58 -!- ursa-major has joined.
00:08:02 -!- ursa-major has quit (Max SendQ exceeded).
00:08:22 -!- rodgort has joined.
00:08:22 -!- simcop2387 has joined.
00:08:22 -!- iovoid has joined.
00:08:22 -!- perlbot has joined.
00:08:22 -!- int-e has joined.
00:08:50 -!- iovoid has quit (Quit: iovoid has quit!).
00:09:01 -!- Bowserinator has joined.
00:09:01 -!- Melvar has joined.
00:09:01 -!- isabella has joined.
00:09:01 -!- ^[ has joined.
00:09:16 -!- shikhin has joined.
00:09:16 -!- HackEso has joined.
00:09:16 -!- jix has joined.
00:09:16 -!- tetsuo-cpp has joined.
00:09:16 -!- wryl has joined.
00:09:23 -!- mtm has joined.
00:09:23 -!- slavfox has joined.
00:09:23 -!- Lord_of_Life has joined.
00:09:23 -!- op_4 has joined.
00:09:23 -!- b_jonas has joined.
00:09:23 -!- leah2 has joined.
00:09:23 -!- zemhill has joined.
00:09:23 -!- shachaf has joined.
00:09:23 -!- fizzie has joined.
00:09:23 -!- Soni has joined.
00:09:40 -!- FreeFull has joined.
00:09:40 -!- m5zs7k has joined.
00:09:40 -!- yewscion__ has joined.
00:09:40 -!- fungot has joined.
00:09:40 -!- pikhq has joined.
00:10:39 -!- iovoid has joined.
00:11:58 -!- Hooloovoo has joined.
00:11:58 -!- alec3660 has joined.
00:11:58 -!- Lymee has joined.
00:11:58 -!- oren has joined.
00:12:32 <esolangs> [[Esolang:Community portal]] M https://esolangs.org/w/index.php?diff=153079&oldid=153078 * Aadenboy * (-37) deadlink template
00:13:07 -!- iovoid has quit (Client Quit).
00:14:55 -!- iovoid has joined.
00:17:01 -!- ManDeJan has joined.
00:17:01 -!- moony has joined.
00:17:01 -!- Ae_ has joined.
00:17:01 -!- JAA has joined.
00:17:01 -!- j4cbo has joined.
00:17:01 -!- krychu has joined.
00:17:01 -!- FireFly has joined.
00:17:01 -!- laerling has joined.
00:17:29 -!- iovoid has changed hostmask to iovoid@hellomouse/dev/iovoid.
00:24:36 -!- ursa-major has joined.
01:30:24 -!- ais523 has quit (Ping timeout: 260 seconds).
01:31:19 -!- 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:37:19 -!- ais523 has joined.
02:36:45 <esolangs> [[REdACT]] M https://esolangs.org/w/index.php?diff=153080&oldid=153077 * FurCantCodeAnything * (+19)
03:10:10 -!- madcabbage has quit (Ping timeout: 260 seconds).
03:20:30 <esolangs> [[Talk:Burn]] https://esolangs.org/w/index.php?diff=153081&oldid=150157 * BestCoder * (-2) /* UHH */
03:23:37 <esolangs> [[Counter clockwise]] N https://esolangs.org/w/index.php?oldid=153082 * BestCoder * (+66) Created page with "[[Clockwise]] but its L instead of R, where L is counter clockwise"
03:29:44 <esolangs> [[Talk:CES]] N https://esolangs.org/w/index.php?oldid=153083 * BestCoder * (+140) Created page with "how to make a thing that runs when the program stops?? ~~~~"
03:53:57 -!- madcabbage has joined.
03:59:26 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153084&oldid=153035 * Calculus is fun * (+7) /* brainfuck interpreter */
04:02:03 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153085&oldid=153084 * Calculus is fun * (-8) /* Instructions */
04:37:33 -!- craigo has quit (Quit: Leaving).
05:59:55 <ais523> oh no – Rust isn't inlining compiler intrinsics: https://godbolt.org/z/dKMfMj5aa
06:00:13 <ais523> I guess I'll have to use inline asm (it doesn't guarantee to inline that, but hopefully it would in this case)
06:01:06 <ais523> the failure to inline is utterly performance-destroying because the calling convention clobbers all the vector registers, meaning that everything has to be spilled on every function call
06:05:45 -!- sprock has quit (Ping timeout: 260 seconds).
06:06:04 <ais523> ah, I see, some searches imply that this might be caused by the intrinsic being for an instruction that hasn't been proved to exist on the target processor – which is a problem if you want to be able to run instructions conditionally at runtime only if the feature is present
06:08:05 <zzo38> I had thought that the operating system should be allowed to emulate instructions that the processor doesn't have. However, that requires having a suitable version of the operating system, and does not help with improving the efficiency of the program; conditional loading would be another way, that it could conditionally load the appropriate function.
06:08:41 <zzo38> Another way would be to use compiler switches to control if it is should use such instructions or not, and the default is the same computer that the compiler is running on.
06:11:02 <korvo> A third way to fix this layering violation would be for the IR to absorb all intrinsics.
06:12:13 -!- sprock has joined.
06:17:59 <zzo38> I don't know what is "absorb all intrinsics" (or, maybe I do know, but not the specific wording)
06:19:49 <ais523> korvo: so after investigating more, it doesn't work even with inline asm – the issue is that the compiler doesn't know for certain that the registers that would store the inputs and outputs to the instruction even exist
06:19:58 <ais523> and doesn't make that assumption based on the instruction having been used
06:20:32 -!- sprock has quit (Ping timeout: 272 seconds).
06:20:35 <ais523> as such, it leaves the intrinsic in a separate function to make the register allocation possible
06:21:15 <korvo> zzo38: It just means that each intrinsic would be expressible directly in the IR. And not as an opaque reference but as the actual semantic action.
06:21:37 <ais523> zzo38: what I'm trying to do is to write a program that runs on both processors that don't have vector registers and processors that do, via checking at runtime to see if the registers are present and using their instructions only if they are
06:22:07 <zzo38> korvo: Yes, that makes sense and yes it will help. (Also, like I expected, yes I do know but did not know the specific wording.)
06:22:41 -!- Ae_ has quit (Quit: Bye).
06:24:22 <ais523> https://rust-lang.github.io/rust-project-goals/2025h1/simd-multiversioning.html says "Currently, generating efficient code for a specific SIMD ISAs requires annotating the function with appropriate attributes. This is incompatible with generating multiple versions through i.e. generics." – that's exactly what I'm trying to do and at least it's acknowledged as being impossible at the moment
06:24:25 <korvo> zzo38: No worries. The whole "absorb" and "reify" terminology is difficult to think about.
06:24:34 -!- sprock has joined.
06:24:59 <ais523> I feel like that terminology might be used in only a small corner of computer science, and there might be more widely known terms for the same contexts
06:25:55 -!- Ae` has joined.
06:27:55 <ais523> anyway, it looks like it's going to be impossible to solve this at the type system level – I'll have to do it using macros I guess
06:28:05 <korvo> Sure, probably. And I'm open to learning. But this is the correct corner for using it; absorb v reify is what interpreters do.
06:28:50 <ais523> well there isn't an interpreter involved here – just a compiler
06:29:24 <ais523> and I'm not sure the absorb vs. reify distinction even makes sense when using an intrinsic whose entire purpose is to compile to one specific asm instruction
06:30:36 <korvo> Well, if that really were its purpose, then it wouldn't compile for the non-vector target at all.
06:30:59 <korvo> That's why I'm saying that it's a layering violation. The intrinsic fundamentally represents something that doesn't fit within the semantic landscape of the high-level language.
06:32:05 <korvo> If Rust had e.g. comptime, then there might be a reasonable push to fix the situation for all intrinsics.
06:32:09 <ais523> well, the issue is that the target isn't known at compile time – the general nature of the target is known (i.e. a particular grouping of processor architectures) but some processors in that grouping have more registers than others, and instructions that deal with the extra registers
06:32:39 <ais523> you can write code that runs in the common subset of all supported processors, and check to see which processor is actually in use
06:33:02 <ais523> and then call into code that wouldn't work on all processors if you discover that you're running on a processor where it does work
06:34:25 <ais523> and the problem here seems to be that a) the way Rust supports doing that is to require each function to explicitly specify the subset of processors it's designed to work on and b) this isn't connected to the type system in any way, so you can't pass a type that expects a processor-specific register to a function that runs on all processors
06:34:42 <ais523> (and the page I linked is about fixing b)
06:34:58 -!- sprock has quit (Ping timeout: 245 seconds).
06:35:30 <korvo> Sure. I guess that I'm talking about fixing (a). It would help if Rust would not use words like "function" to denote procedures.
06:36:28 <ais523> well, the traditional distinction was that functions have a return value and procedures don't – most modern languages merge the concepts and call the merged concept a "function"
06:36:50 <ais523> this is possibly regrettable wording in that it doesn't match "function" from mathematics, but calling them "procedures" instead will just confuse people who wonder how they can have a return value
06:36:52 -!- sprock has joined.
06:37:46 <ais523> (especially because in many cases, but not all, they do match the mathematical concept of a function in practice)
06:37:47 <korvo> Oh, that's not what I mean. I mean that Rust equivocates over whether its callable units are mappings from inputs to outputs (functions) or sequences of instructions for the machine (procedures).
06:38:46 <ais523> in the source code, they're input → output mappings with possible side effects (I'm generally an advocate for including the side effects as part of the inputs and outputs, so that they just become more inputs and outputs, but Rust generally doesn't do that)
06:39:14 <ais523> and the sequence of instructions for the machine is what the compiler outputs, but it's generally still referred to as a function even then
06:39:22 <korvo> Nah, Rust has general recursion, so we can't rely on the idea that they actually map to something.
06:40:14 <korvo> In plain C++: `int f(int x) { return f(x); }` doesn't actually designate a function. You could change that to `f(x + 1)` or etc. and it still wouldn't.
06:40:16 <ais523> IIRC Rust has explicit checks for stack overflow in some contexts, although I think you might be able to write general-recursive functions without triggering them if you don't use much stack per iteration
06:40:39 <ais523> korvo: do you not consider nontermination a possible return value?
06:40:43 <korvo> Same problem in Rust, Haskell, C, etc.
06:41:18 <ais523> Haskell actually documents it as a return value, and considers it equivalent to a runtime error (in the sense that a runtime error becoming a nontermination or vice versa is not considered a miscompile)
06:41:19 <korvo> ais523: I consider C++ to be *dishonest* if it claims that f has type int -> int. For what is f(0)?
06:41:35 <korvo> Haskell gets it right, but models of Haskell don't have functions for arrows.
06:41:55 <ais523> korvo: I don't think C++ does claim that, from the functional programming point of view
06:42:17 <korvo> ais523: Sure, and so C++'s users really shouldn't call those things "functions". Same gripe applies to Rust modulo borrowing.
06:42:37 <ais523> C++ functions are allowed to produce side effects such as I/O and non-termination, and those are (in a sense) part of the output
06:42:56 <ais523> although to reason like this you have to draw a distinction between "return value" and "codomain"
06:43:54 <ais523> interestingly Haskell seems to draw that distinction in that "return" produces monad actions – "return 6" gives you something whose return value is 6 and whose codomain is a monad action that returns integers
06:44:26 <korvo> I/O and nontermination aren't at all the same monadically. I/O can be fully encoded with the RWS monad (Reader, Writer, State) but nontermination isn't carried by anything neat.
06:44:53 <korvo> Cammy can encode RWS monads, for example. But every Cammy expression terminates, so nontermination can't possibly be encoded.
06:45:04 <ais523> it's kind-of like Maybe – either you get a value or you don't – but it's uncomputable to actually resolve it
06:46:09 <korvo> Sure, that's the so-called "delay monad", which can be encoded with general recursion or as a fixpoint.
06:46:23 <ais523> @eval let f x = f x in f 1
06:46:35 <ais523> :t let f x = f x in f 1
06:46:43 <ais523> > let f x = f x in f 1
06:47:26 <ais523> OK, that surprises me, I thought that that wouldn't be an infinite loop in Haskell (infinite loops are allowed to be optimised into runtime errors by the Haskell spec and I thought that that was one of the cases that the compiler could catch)
06:47:33 <korvo> :t let f x = f (x + 1) in f 1
06:47:58 <korvo> Oh, covariance. Just like the `forever` builtin.
06:48:18 <ais523> how does variance matter there?
06:48:36 <korvo> I forgot which side of the arrow would be coerced by the (+) operator.
06:48:47 <ais523> :t let f x = (f x ) + 1 in f 1
06:49:20 <ais523> hmm, now I am (yet again) regretting that people normally write numbers big-endian
06:49:42 <ais523> would be fun to do a "let f x = (f x) * 10 + 1 in f 1" and get a stream of 1s on the output
06:49:54 <ais523> (likely beyond the abilities of ghc, but fun)
06:50:23 <ais523> but it seems much harder to control the most significant digit like that, than it does for the least significant digit
06:50:35 <shachaf> It does seem plausible to me that little-endian would be more reasonable for human use.
06:50:47 <shachaf> Also writing polynomials with the lowest-degree terms first.
06:51:23 <ais523> I just realised that people do in fact write polynomials big-endian (and, of course, decimal numbers are polynomials with x=10)
06:51:49 <ais523> when programming I've always represented them little-endian, so that (e.g.) the x² coefficient is at element 2 of the array…
06:51:55 <korvo> Anyway, hopefully it's obvious why I say that it's a layering violation. An intrinsic which requires attention to the machine's procedural behavior is violating the inputs-to-outputs abstraction that is desired at high level.
06:52:37 * korvo grumpy like Dijkstra
06:52:39 <ais523> I think the situation is more complicated than that – the intrinsic is specifically a constraint on the program's low-level behaviour
06:52:50 <ais523> it has a defined input-output behaviour but just emulating that isn't enough
06:53:43 <ais523> for example, the platform I'm on has two different memory read instructions – one of them is faster than the other for unaligned reads of memory, but causes subsequent writes to that memory to become slower
06:54:05 <ais523> so you only use it on memory that you don't think will be written in the near future
06:54:41 <korvo> I think that you already showed that the intrinsic definitionally can't meet the demands placed upon it, in that it *must* be emulated in order to remain platform-neutral, and therefore can't be part of the language's builtins.
06:54:48 <ais523> (the documentation doesn't explain what the slowdown is, but my guess is that it doesn't load the memory into cache)
06:54:57 <korvo> But maybe this is pointing out too much that intrinsics are fundamentally silly.
06:56:24 <ais523> surely the fix to this is to require a proof (e.g. via the type system) that the intrinsic does in fact exist on the platform, and then propagate that knowledge into anything that calls it
06:57:18 <ais523> compilers are happy to take a dereference of a pointer as a proof that the pointer isn't null, and then to propagate that assumption throughout any code that, if it runs, necessarily implies the dereference will run
06:57:51 <korvo> Well, yeah. Zig does that AIUI; the compiler has various informational structs that are passed around everywhere, and Zig users are used to that because they have to pass around memory allocators already.
06:59:13 <korvo> Zig is ultimately shaped like a macro-driven assembler, and that's the level of detail required to hand-write vectorized assembly.
07:00:03 <ais523> I've handwritten enough vectorized assembly to make it to the front page of Hacker News repeatedly (with the same program, it kept getting resubmitted)
07:00:44 <korvo> And really that's just the compile-time version of passing a powerbox or other runtime capability container. Back to the illegal-instruction cpuid-oriented setup from earlier.
07:00:51 <ais523> but that program only had to run on two computers (it was a competition entry, so it just had to run on mine so that I could test it and the (person marking the competition)'s so that they could score it)
07:01:52 <ais523> it didn't even have a proper CPUID check (for the instruction set, at least), it just ran an AVX2 instruction uncondtioinally early on in the hope of provoking SIGILL on machines that didn't undestand it
07:02:09 <ais523> I'm not sure whether that's technically UB or not, the concept is hard to define in asm
07:02:56 <ais523> I don't think there's a document anywhere guaranteeing "AVX2 instructions processor-trap on non-AVX2 x86-64 processors", but on the other hand it's a fairly safe assumption in practice
07:03:17 -!- Sgeo has quit (Read error: Connection reset by peer).
07:03:37 <ais523> it's a bit different from using an instruction that's entirely undefined, because it might be defined on some future processor
07:04:24 <ais523> but it's hard to envision a world where there are future processors that don't support AVX2 and repurpose the AVX2 encoding space for something else
07:10:05 -!- tromp has joined.
07:10:37 -!- Lord_of_Life_ has joined.
07:10:40 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
07:12:00 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:41:56 <b_jonas> ais523: you didn't add any -C target-cpu=... or -C target-feature=... option to rustc so it's trying to generate generic x86_64 code, which only has access to SSE2
07:43:13 <b_jonas> "if you want to be able to run instructions conditionally at runtime only if the feature is present" => gcc has an attribute for the containing function for that, and I think rustc might have one as well
07:44:40 <b_jonas> ah, you already found info about that
07:50:28 <ais523> b_jonas: right, the problem is that I want the program to run on non-AVX processors in addition to the AVX ones, and yet contain AVX instructions – and that apparently implies that all the functions have to be written twice in the post-macro-expansion source code because Rust doesn't allow the same pre-monomorphisation function to run on non-AVX processors in one post-monomorphisation version and mention AVX instructions in a different post-
07:50:29 <ais523> monomorphisation version
07:50:59 <ais523> even if you use inline asm (unless you do the register allocation yourself) because it refuses to allocate AVX registers without having the target-feature annotation
07:56:44 <b_jonas> ais523: can you just compile the whole program twice, and add a thin wrapper script?
07:57:12 <b_jonas> or would that be too wasteful because it's a large program with only small parts using vector instructions?
07:58:41 <b_jonas> because that used to be the traditional solution before all the compiler and linker magic allowed you to have multiple versions of functions in one program
08:02:01 <ais523> b_jonas: well I'm trying to write this as a library, and I don't think it can compile the program twice from inside
08:04:39 <b_jonas> a library with rust interface, or a library with C interface callable from any language?
08:06:05 <ais523> it's a library with a Rust interface, although I may eventually use it as a dependency of a different library with a C interface
08:06:44 <b_jonas> if it's rust interface then users have to recompile it anyway, so you can tell them how to compile for AVX2-capable processors and for generic processors
08:07:42 <b_jonas> (substitute whatever extensions you're targeting instead of just AVX2 obviously)
08:14:25 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:31:25 <b_jonas> the fun part is when optimizing for the higher instruction set propagates to parts of the code that don't even use vector instructions, because you're eg. allocating a buffer 32-aligned because an AVX2 function will access it later.
08:46:02 <esolangs> [[StormScript]] N https://esolangs.org/w/index.php?oldid=153086 * I am islptng * (+1212) Created page with "{{Distinguish/Confusion|StormLang}} {{WIP}} This esolang is created by islptng. It'll be high-level but stack-based. Document will be written later. However, it is simply a calculator now. ==Implementation== <pre><nowiki> def tokenize(s): tokens = [] current
09:07:06 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153087&oldid=153086 * I am islptng * (+697)
09:08:13 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153088&oldid=153087 * I am islptng * (-2) /* Implementation */
09:16:46 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153089&oldid=153088 * I am islptng * (+41) /* Implementation */
09:28:18 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153090&oldid=153089 * I am islptng * (+610) /* Implementation */
09:31:16 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153091&oldid=153090 * I am islptng * (+27) /* Implementation */
09:43:00 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153092&oldid=153091 * I am islptng * (+476) /* Implementation */
09:59:07 -!- tromp has joined.
10:10:34 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
10:11:13 -!- tromp has joined.
10:30:09 -!- ais523 has quit (Quit: quit).
11:22:50 <esolangs> [[Fontmess]] https://esolangs.org/w/index.php?diff=153093&oldid=153072 * PrySigneToFry * (+242)
11:58:58 <esolangs> [[REdACT]] https://esolangs.org/w/index.php?diff=153094&oldid=153080 * FurCantCodeAnything * (-1023) Updated symbols
11:59:36 <esolangs> [[REdACT]] M https://esolangs.org/w/index.php?diff=153095&oldid=153094 * FurCantCodeAnything * (-11)
12:02:35 -!- mtm has quit (Ping timeout: 244 seconds).
12:05:19 -!- mtm has joined.
12:07:22 <esolangs> [[REdACT]] https://esolangs.org/w/index.php?diff=153096&oldid=153095 * FurCantCodeAnything * (+22) Compacting commands; also updating again to be UTD
12:07:48 <esolangs> [[REdACT]] https://esolangs.org/w/index.php?diff=153097&oldid=153096 * FurCantCodeAnything * (+3)
12:14:04 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:15:46 -!- tromp has joined.
12:31:16 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153098&oldid=153059 * C++DSUCKER * (+3641)
12:31:44 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153099&oldid=153098 * C++DSUCKER * (-16)
12:40:43 <esolangs> [[BitChanger Busy beaver/Proof]] M https://esolangs.org/w/index.php?diff=153100&oldid=153099 * C++DSUCKER * (+7)
12:51:49 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153101&oldid=153100 * C++DSUCKER * (+1750)
12:54:27 <esolangs> [[BitChanger Busy beaver/Proof]] M https://esolangs.org/w/index.php?diff=153102&oldid=153101 * C++DSUCKER * (+27)
13:28:23 <esolangs> [[Talk:BitChanger Busy beaver]] https://esolangs.org/w/index.php?diff=153103&oldid=152851 * C++DSUCKER * (+75)
13:31:09 <esolangs> [[Talk:BitChanger Busy beaver]] https://esolangs.org/w/index.php?diff=153104&oldid=153103 * C++DSUCKER * (+89)
13:37:02 <esolangs> [[REdACT]] M https://esolangs.org/w/index.php?diff=153105&oldid=153097 * FurCantCodeAnything * (-26)
13:37:23 <esolangs> [[REdACT]] M https://esolangs.org/w/index.php?diff=153106&oldid=153105 * FurCantCodeAnything * (+1)
13:40:18 <esolangs> [[REdACT]] https://esolangs.org/w/index.php?diff=153107&oldid=153106 * FurCantCodeAnything * (+6)
15:08:42 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153108&oldid=152878 * Hotcrystal0 * (+43)
15:09:52 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153109&oldid=153108 * Hotcrystal0 * (+1)
15:15:06 <esolangs> [[User:Hotcrystal0/Q9+]] N https://esolangs.org/w/index.php?oldid=153110 * Hotcrystal0 * (+143) Created page with "Q9+ is a joke language created by [[User:Hotcrystal0]]. It is a hybrid of [[]] and [[HQ9+]] with a couple of additional features."
15:16:30 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153111&oldid=153109 * Hotcrystal0 * (+45)
15:19:26 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153112&oldid=153025 * BrainFuckGirl * (+1732) Added version UserEdited 6.0.trois
15:24:21 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153113&oldid=153110 * Hotcrystal0 * (+467)
15:24:58 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153114&oldid=153113 * Hotcrystal0 * (+25)
15:36:57 -!- chomwitt has joined.
15:39:48 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153115&oldid=153114 * Hotcrystal0 * (-9)
15:41:51 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153116&oldid=153115 * Hotcrystal0 * (+30)
15:42:45 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153117&oldid=153116 * Hotcrystal0 * (+59)
15:44:45 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153118&oldid=153117 * Hotcrystal0 * (+92)
15:45:06 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153119&oldid=153118 * Hotcrystal0 * (-20)
15:45:16 -!- chomwitt has quit (Remote host closed the connection).
15:46:56 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153120&oldid=153119 * Hotcrystal0 * (+74)
16:03:35 -!- FreeFull has quit (Ping timeout: 252 seconds).
16:04:31 <esolangs> [[Tc2]] https://esolangs.org/w/index.php?diff=153121&oldid=129539 * Hotcrystal0 * (+56) Adding categories
16:04:37 <esolangs> [[Tc2]] https://esolangs.org/w/index.php?diff=153122&oldid=153121 * Hotcrystal0 * (+0)
16:04:46 <esolangs> [[Tc2]] https://esolangs.org/w/index.php?diff=153123&oldid=153122 * Hotcrystal0 * (+0)
16:04:54 <esolangs> [[Tc2]] https://esolangs.org/w/index.php?diff=153124&oldid=153123 * Hotcrystal0 * (+0)
16:10:28 -!- craigo has joined.
16:21:54 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153125&oldid=153120 * Hotcrystal0 * (+19)
16:22:57 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153126&oldid=153125 * Hotcrystal0 * (+153)
16:23:22 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153127&oldid=153126 * Hotcrystal0 * (-20)
16:23:54 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153128&oldid=153127 * Hotcrystal0 * (+12)
16:26:53 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153129&oldid=153128 * Hotcrystal0 * (+50)
16:35:59 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153130&oldid=153112 * MihaiEso * (+18) /* Categories and References */
16:47:54 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153131&oldid=153129 * Hotcrystal0 * (+191)
16:53:50 <esolangs> [[Special:Log/newusers]] create * Neon * New user account
16:59:29 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153132&oldid=153130 * MihaiEso * (+1936)
17:19:32 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153133&oldid=153060 * Neon * (+204) Introducing myself
17:29:07 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153134&oldid=153132 * Hotcrystal0 * (+319)
17:29:53 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153135&oldid=153134 * Hotcrystal0 * (+31)
17:29:54 <esolangs> [[Weirdlang]] M https://esolangs.org/w/index.php?diff=153136&oldid=88590 * Corbin * (+89) What an awful little ode to gatekeeping! Indicate that it's unrelated to the standard concept of weirdness in machines and compilers.
17:30:42 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153137&oldid=153135 * Hotcrystal0 * (+1)
17:32:31 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153138&oldid=153137 * Hotcrystal0 * (-34)
17:35:14 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153139&oldid=153138 * Hotcrystal0 * (+13)
17:46:31 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153140&oldid=153131 * Hotcrystal0 * (+75)
17:55:54 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153141&oldid=153140 * Hotcrystal0 * (+15)
17:57:30 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153142&oldid=153141 * Hotcrystal0 * (+34)
18:01:47 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153143&oldid=153142 * Hotcrystal0 * (-61)
18:02:30 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153144&oldid=153143 * Hotcrystal0 * (-2)
18:05:26 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153145&oldid=153144 * Hotcrystal0 * (+18)
18:07:11 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153146&oldid=153145 * Hotcrystal0 * (+78)
18:08:08 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153147&oldid=153146 * Hotcrystal0 * (+50)
18:17:09 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153148&oldid=153147 * Hotcrystal0 * (+22)
18:22:23 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153149&oldid=153148 * Hotcrystal0 * (+98)
18:22:48 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[User:Hotcrystal0/Q9+]] to [[Hotcrystal0/Q9+]]: No longer a WIP (other than examples)
18:23:02 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[Hotcrystal0/Q9+]] to [[Q9+]]
18:23:14 <esolangs> [[Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153154&oldid=153153 * Hotcrystal0 * (-24) Blanked the page
18:23:47 <esolangs> [[User:Hotcrystal0/Q9+]] https://esolangs.org/w/index.php?diff=153155&oldid=153151 * Hotcrystal0 * (-12) Changed redirect target from [[Hotcrystal0/Q9+]] to [[Q9+]]
18:28:57 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=153156&oldid=152495 * Hotcrystal0 * (+145) /* Page in need of deletion */ new section
18:29:34 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=153157&oldid=153156 * Hotcrystal0 * (+92)
18:40:25 <esolangs> [[HoleQ9+]] N https://esolangs.org/w/index.php?oldid=153158 * Hotcrystal0 * (+24) Redirected page to [[Q9+]]
18:41:54 <esolangs> [[HQ9+]] https://esolangs.org/w/index.php?diff=153159&oldid=150625 * Hotcrystal0 * (+49)
18:42:17 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153160&oldid=153152 * Hotcrystal0 * (-3)
18:45:15 <esolangs> [[Stairlang]] https://esolangs.org/w/index.php?diff=153161&oldid=152959 * * (+32) Added truth machine
18:46:14 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153162&oldid=153160 * Hotcrystal0 * (+84)
18:48:55 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153163&oldid=153162 * Hotcrystal0 * (+73)
18:49:19 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153164&oldid=153163 * Hotcrystal0 * (+16)
18:56:48 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153165&oldid=153164 * Hotcrystal0 * (+0)
19:03:49 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153166&oldid=153165 * Hotcrystal0 * (+34)
19:06:23 <esolangs> [[Stairlang]] M https://esolangs.org/w/index.php?diff=153167&oldid=153161 * * (+408) Added a few more commands and examples
19:10:52 <esolangs> [[Stairlang]] https://esolangs.org/w/index.php?diff=153168&oldid=153167 * * (+155) Added alternate Hello World
19:14:22 <esolangs> [[Stairlang]] M https://esolangs.org/w/index.php?diff=153169&oldid=153168 * * (+140) Categories
19:15:48 <esolangs> [[Stairlang]] https://esolangs.org/w/index.php?diff=153170&oldid=153169 * Hotcrystal0 * (+0) fixing category
19:19:27 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153171&oldid=153166 * Hotcrystal0 * (+277)
19:19:56 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153172&oldid=153171 * Hotcrystal0 * (+0)
19:20:26 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153173&oldid=153172 * Hotcrystal0 * (+0)
19:21:14 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153174&oldid=153173 * Hotcrystal0 * (-12)
20:03:43 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153175&oldid=153064 * Buckets * (+33)
20:03:56 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153176&oldid=153175 * Buckets * (+2)
20:04:04 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153177&oldid=153063 * Buckets * (+36)
20:04:25 <esolangs> [[S*n]] N https://esolangs.org/w/index.php?oldid=153178 * Buckets * (+1834) Created page with "{{wrongtitle|title=S<big><sup>*</sup></big>n}} S<big><sup>*</sup></big>n is an Esoteric programming language created by [[User:Buckets]] in 2022. {| class="wikitable" |- ! Commands !! Instructions |- | | || This is where the Code starts at. |- | [[Page]] || Go
20:04:35 <esolangs> [[S*n/Il]] N https://esolangs.org/w/index.php?oldid=153179 * Buckets * (+10) Created page with "[[S*n/Il]]"
20:04:41 <esolangs> [[S*n/Dup2]] N https://esolangs.org/w/index.php?oldid=153180 * Buckets * (+128) Created page with " <S*n/Dupe>{[[S*n/Dupe]]|[[S*n/Dupe]]} <S*n/Dup#>[[[S*n/Dup#]]-1] {S*n/Dup#="0"}([[S*n/Dup2]]) [[S*n/t]] #Dup2 [[:S*n/Dupe]]"
20:04:49 <esolangs> [[S*n/t]] N https://esolangs.org/w/index.php?oldid=153181 * Buckets * (+13) Created page with " [[S*n/Dup2]]"
20:04:56 <esolangs> [[S*n/U=0]] N https://esolangs.org/w/index.php?oldid=153182 * Buckets * (+120) Created page with " <S*n/FP0>[[[S*n/FP0]]-1] <S*n/FP1>[[[S*n/FP1]]*[[S*n/FP0]]] {[[S*n/FP0]]="0"}([[S*n/U=0]]) [[S*n/FP]] #U=0 [[:FP1]]"
20:05:04 <esolangs> [[S*n/FP]] N https://esolangs.org/w/index.php?oldid=153183 * Buckets * (+12) Created page with " [[S*n/U=0]]"
20:05:14 <esolangs> [[S*n/Quine]] N https://esolangs.org/w/index.php?oldid=153184 * Buckets * (+15) Created page with "|[[:S*n/Quine]]"
20:38:48 <zzo38> I wrote a JSON->DER conversion program https://raw.githubusercontent.com/zzo38/scorpion/refs/heads/trunk/asn1/jsontoder.c (it does not fully validate that the JSON data is correct, though)
20:58:09 <zzo38> (This is not the best use of DER, but it demonstrates how a conversion is possible.)
21:05:27 -!- amby has joined.
21:32:03 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153185&oldid=153111 * Hotcrystal0 * (+60)
21:34:05 <esolangs> [[User:Hotcrystal0/Crystal-complete]] N https://esolangs.org/w/index.php?oldid=153186 * Hotcrystal0 * (+135) Created page with "A programming language is said to be crystal-complete if it meets all the following criteria: * It is able to print TRANS RIGHTS"
21:35:08 <esolangs> [[User:Hotcrystal0/Crystal-complete]] https://esolangs.org/w/index.php?diff=153187&oldid=153186 * Hotcrystal0 * (+73)
21:36:36 <esolangs> [[User:Hotcrystal0/Crystal-complete]] https://esolangs.org/w/index.php?diff=153188&oldid=153187 * Hotcrystal0 * (+0)
21:40:07 <esolangs> [[User:Hotcrystal0/Crystal-complete]] https://esolangs.org/w/index.php?diff=153189&oldid=153188 * Hotcrystal0 * (+42)
21:51:51 <esolangs> [[User:Hotcrystal0/Crystal-complete]] https://esolangs.org/w/index.php?diff=153190&oldid=153189 * Hotcrystal0 * (+313)
21:53:36 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153191&oldid=153185 * Hotcrystal0 * (-50) User chart is cancelled
22:05:56 <esolangs> [[S*n/Il]] M https://esolangs.org/w/index.php?diff=153192&oldid=153179 * Buckets * (+1)
22:26:38 -!- craigo has quit (Read error: Connection reset by peer).
22:26:46 -!- craigo_ has joined.
22:40:10 <wryl> What's everyone's favorite Brainfuck variant?
22:46:07 <esolangs> [[User:Hotcrystal0/Crystal-complete]] https://esolangs.org/w/index.php?diff=153193&oldid=153190 * Hotcrystal0 * (+12)
22:53:17 <korvo> BF Joust is pretty cool.
22:54:23 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153194&oldid=153177 * Buckets * (+16)
23:01:11 <esolangs> [[S*n/]] N https://esolangs.org/w/index.php?oldid=153195 * Buckets * (+160) Created page with "{{disambig}} "S<big><sup>*</sup></big>n/" Could refer to The following Pages: # [[S*n/Quine]] # [[S*n/Il]] # [[S*n/U=0]] # [[S*n/FP]] # [[S*n/Dup2]] # [[S*n/t]]"
23:04:45 <esolangs> [[Beep Boop]] M https://esolangs.org/w/index.php?diff=153196&oldid=152225 * Buckets * (+4)
23:12:46 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153197&oldid=153093 * Buckets * (-202)
23:13:05 -!- ais523 has joined.
23:16:57 <esolangs> [[User:Hotcrystal0/Crystal-complete]] https://esolangs.org/w/index.php?diff=153198&oldid=153193 * Hotcrystal0 * (+22)
23:17:19 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[User:Hotcrystal0/Crystal-complete]] to [[Crystal-complete]]: no longer WIP
23:44:24 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153201&oldid=153197 * Buckets * (-24)
00:04:02 -!- mtm has quit (Ping timeout: 248 seconds).
00:05:46 -!- mtm has joined.
00:05:58 -!- Sgeo has joined.
00:24:09 <esolangs> [[Crystal-complete]] https://esolangs.org/w/index.php?diff=153202&oldid=153199 * Hotcrystal0 * (+3) periods
00:32:57 -!- Lykaina has joined.
00:35:48 <esolangs> [[Nybblang]] https://esolangs.org/w/index.php?diff=153203&oldid=97072 * Kaveh Yousefi * (+736) Ensuing from a contradictory account of the nybble buffer's bit assemblage, modulated the examples and extended the descriptions to comply with a procession from the least significant bit (LSB) towards the most significant one (MSB) while constructing a nybble for the stac
00:36:52 <esolangs> [[Nybblang]] https://esolangs.org/w/index.php?diff=153204&oldid=153203 * Kaveh Yousefi * (+486) Added a hyperlink to my implementation of the Nybblang programming language on GitHub and supplemented the Implemented category tag.
00:43:40 -!- yegorc has joined.
00:51:11 -!- yegorc has left (Leaving).
00:54:33 -!- Lykaina has quit (Quit: Lykaina).
00:55:48 -!- Lykaina has joined.
01:10:48 -!- 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:46:54 <esolangs> [[User:I am islptng/Islp-Complete]] N https://esolangs.org/w/index.php?oldid=153205 * I am islptng * (+1351) Created page with "A programming language is considered Islp-complete if it meets all the following criteria: <b>Level 1</b>: * It should be able to implement [[Fractran]]. * It should be able to print one of "Hello, world!", "", "", ",!" * It should be able
02:55:11 <esolangs> [[Q9+]] N https://esolangs.org/w/index.php?oldid=153206 * I am islptng * (+2234) Created page with "It's [[Q9+]] but [[]] instead of [[]]. Q9+ is a joke language created by islptng. ==Commands== Q9+ has these commands: {| class="wikitable" !Command !Description !Derived from |- |<code></code> or <code>[KENG]</code> |Get user input and output the input. | |- |<cod
02:56:10 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153207&oldid=153174 * I am islptng * (+25)
02:57:52 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153208&oldid=153206 * I am islptng * (+69) /* Commands */
02:59:29 <esolangs> [[Q9+]] https://esolangs.org/w/index.php?diff=153209&oldid=153208 * I am islptng * (+45)
04:08:04 -!- craigo_ has quit (Quit: Leaving).
04:44:57 -!- Lykaina has quit (Quit: Leaving).
05:49:27 <esolangs> [[Crest]] N https://esolangs.org/w/index.php?oldid=153210 * Camto * (+7703) Page creation.
05:57:08 <esolangs> [[Crest]] https://esolangs.org/w/index.php?diff=153211&oldid=153210 * Camto * (+184) Categories
06:01:57 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153212&oldid=153092 * I am islptng * (-1068)
06:03:22 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153213&oldid=153212 * I am islptng * (-64) /* Implementation */
06:14:34 -!- ais523 has quit (Ping timeout: 260 seconds).
06:14:39 <esolangs> [[Crest]] https://esolangs.org/w/index.php?diff=153214&oldid=153211 * Camto * (+331) Implementation and Turing Completeness
06:15:58 <esolangs> [[Crest]] M https://esolangs.org/w/index.php?diff=153215&oldid=153214 * Camto * (+23) The screen is all cells, so it's cell-based.
06:18:38 <esolangs> [[Tri-Tru-Eso]] M https://esolangs.org/w/index.php?diff=153216&oldid=151931 * Camto * (+0) Category typo
06:19:54 <esolangs> [[Trithemius]] M https://esolangs.org/w/index.php?diff=153217&oldid=151414 * Camto * (+0) Category typo
06:28:15 -!- alec3660 has quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.).
06:28:24 -!- alec3660 has joined.
06:29:02 -!- m5zs7k has quit (*.net *.split).
06:29:02 -!- yewscion__ has quit (*.net *.split).
06:29:03 -!- fungot has quit (*.net *.split).
06:29:03 -!- pikhq has quit (*.net *.split).
06:29:04 -!- Lord_of_Life has quit (*.net *.split).
06:29:05 -!- Bowserinator has quit (*.net *.split).
06:29:05 -!- Melvar has quit (*.net *.split).
06:29:06 -!- isabella has quit (*.net *.split).
06:29:06 -!- ^[ has quit (*.net *.split).
06:29:07 -!- tromp has quit (*.net *.split).
06:29:07 -!- slavfox has quit (*.net *.split).
06:29:07 -!- op_4 has quit (*.net *.split).
06:29:08 -!- b_jonas has quit (*.net *.split).
06:29:08 -!- leah2 has quit (*.net *.split).
06:29:08 -!- zemhill has quit (*.net *.split).
06:29:09 -!- shachaf has quit (*.net *.split).
06:29:09 -!- fizzie has quit (*.net *.split).
06:29:09 -!- Soni has quit (*.net *.split).
06:29:09 -!- madcabbage has quit (*.net *.split).
06:29:09 -!- ursa-major has quit (*.net *.split).
06:29:10 -!- shikhin has quit (*.net *.split).
06:29:10 -!- HackEso has quit (*.net *.split).
06:29:11 -!- jix has quit (*.net *.split).
06:29:11 -!- tetsuo-cpp has quit (*.net *.split).
06:29:11 -!- wryl has quit (*.net *.split).
06:29:12 -!- Ae` has quit (*.net *.split).
06:29:12 -!- rodgort has quit (*.net *.split).
06:29:13 -!- simcop2387 has quit (*.net *.split).
06:29:13 -!- perlbot has quit (*.net *.split).
06:29:14 -!- int-e has quit (*.net *.split).
06:29:14 -!- ProofTechnique_ has quit (*.net *.split).
06:29:15 -!- molson has quit (*.net *.split).
06:29:15 -!- yuu has quit (*.net *.split).
06:29:16 -!- mich181189 has quit (*.net *.split).
06:29:16 -!- korvo has quit (*.net *.split).
06:29:17 -!- MizMahem has quit (*.net *.split).
06:29:17 -!- voxpelli has quit (*.net *.split).
06:29:17 -!- dnm has quit (*.net *.split).
06:29:18 -!- dcreager has quit (*.net *.split).
06:29:18 -!- citrons has quit (*.net *.split).
06:29:18 -!- riv has quit (*.net *.split).
06:29:18 -!- integral has quit (*.net *.split).
06:29:19 -!- gAy_Dragon has quit (*.net *.split).
06:29:19 -!- Sgeo has quit (*.net *.split).
06:29:20 -!- GregorR has quit (*.net *.split).
06:29:21 -!- xelxebar has quit (*.net *.split).
06:29:51 -!- Sgeo has joined.
06:29:51 -!- tromp has joined.
06:29:51 -!- Lord_of_Life has joined.
06:29:51 -!- Ae` has joined.
06:29:51 -!- madcabbage has joined.
06:29:51 -!- ursa-major has joined.
06:29:51 -!- pikhq has joined.
06:29:51 -!- fungot has joined.
06:29:51 -!- yewscion__ has joined.
06:29:51 -!- m5zs7k has joined.
06:29:51 -!- Soni has joined.
06:29:51 -!- fizzie has joined.
06:29:51 -!- shachaf has joined.
06:29:51 -!- zemhill has joined.
06:29:51 -!- leah2 has joined.
06:29:51 -!- b_jonas has joined.
06:29:51 -!- op_4 has joined.
06:29:51 -!- slavfox has joined.
06:29:51 -!- wryl has joined.
06:29:51 -!- tetsuo-cpp has joined.
06:29:51 -!- jix has joined.
06:29:51 -!- HackEso has joined.
06:29:51 -!- shikhin has joined.
06:29:51 -!- ^[ has joined.
06:29:51 -!- isabella has joined.
06:29:51 -!- Melvar has joined.
06:29:51 -!- Bowserinator has joined.
06:29:51 -!- int-e has joined.
06:29:51 -!- perlbot has joined.
06:29:51 -!- simcop2387 has joined.
06:29:51 -!- rodgort has joined.
06:29:51 -!- molson has joined.
06:29:51 -!- MizMahem has joined.
06:29:51 -!- yuu has joined.
06:29:51 -!- voxpelli has joined.
06:29:51 -!- dnm has joined.
06:29:51 -!- dcreager has joined.
06:29:51 -!- GregorR has joined.
06:29:51 -!- citrons has joined.
06:29:51 -!- riv has joined.
06:29:51 -!- mich181189 has joined.
06:29:51 -!- korvo has joined.
06:29:51 -!- integral has joined.
06:29:51 -!- xelxebar has joined.
06:29:51 -!- ProofTechnique_ has joined.
06:29:51 -!- gAy_Dragon has joined.
06:30:16 -!- Ae` has changed nick to 029AAR240.
06:30:31 -!- ursa-major has quit (Max SendQ exceeded).
06:31:01 -!- dbohdan has quit (*.net *.split).
06:31:01 -!- Artea has quit (*.net *.split).
06:31:01 -!- APic has quit (*.net *.split).
06:31:02 -!- m5zs7k has quit (*.net *.split).
06:31:03 -!- yewscion__ has quit (*.net *.split).
06:31:04 -!- fungot has quit (*.net *.split).
06:31:04 -!- pikhq has quit (*.net *.split).
06:31:06 -!- Lord_of_Life has quit (*.net *.split).
06:31:06 -!- Bowserinator has quit (*.net *.split).
06:31:07 -!- Melvar has quit (*.net *.split).
06:31:07 -!- isabella has quit (*.net *.split).
06:31:07 -!- ^[ has quit (*.net *.split).
06:31:08 -!- tromp has quit (*.net *.split).
06:31:08 -!- slavfox has quit (*.net *.split).
06:31:08 -!- op_4 has quit (*.net *.split).
06:31:09 -!- b_jonas has quit (*.net *.split).
06:31:09 -!- leah2 has quit (*.net *.split).
06:31:10 -!- zemhill has quit (*.net *.split).
06:31:10 -!- shachaf has quit (*.net *.split).
06:31:10 -!- fizzie has quit (*.net *.split).
06:31:10 -!- Soni has quit (*.net *.split).
06:31:10 -!- madcabbage has quit (*.net *.split).
06:31:11 -!- shikhin has quit (*.net *.split).
06:31:11 -!- HackEso has quit (*.net *.split).
06:31:12 -!- jix has quit (*.net *.split).
06:31:12 -!- tetsuo-cpp has quit (*.net *.split).
06:31:12 -!- wryl has quit (*.net *.split).
06:31:13 -!- 029AAR240 has quit (*.net *.split).
06:31:14 -!- rodgort has quit (*.net *.split).
06:31:16 -!- simcop2387 has quit (*.net *.split).
06:31:16 -!- perlbot has quit (*.net *.split).
06:31:18 -!- int-e has quit (*.net *.split).
06:31:18 -!- ProofTechnique_ has quit (*.net *.split).
06:31:20 -!- molson has quit (*.net *.split).
06:31:21 -!- yuu has quit (*.net *.split).
06:31:22 -!- mich181189 has quit (*.net *.split).
06:31:22 -!- korvo has quit (*.net *.split).
06:31:23 -!- MizMahem has quit (*.net *.split).
06:31:23 -!- voxpelli has quit (*.net *.split).
06:31:23 -!- dnm has quit (*.net *.split).
06:31:24 -!- dcreager has quit (*.net *.split).
06:31:24 -!- citrons has quit (*.net *.split).
06:31:24 -!- riv has quit (*.net *.split).
06:31:24 -!- integral has quit (*.net *.split).
06:31:25 -!- gAy_Dragon has quit (*.net *.split).
06:31:25 -!- Sgeo has quit (*.net *.split).
06:31:27 -!- GregorR has quit (*.net *.split).
06:31:27 -!- xelxebar has quit (*.net *.split).
06:31:29 -!- ManDeJan has quit (*.net *.split).
06:31:29 -!- moony has quit (*.net *.split).
06:31:30 -!- JAA has quit (*.net *.split).
06:31:30 -!- j4cbo has quit (*.net *.split).
06:31:30 -!- krychu has quit (*.net *.split).
06:31:30 -!- FireFly has quit (*.net *.split).
06:31:30 -!- laerling has quit (*.net *.split).
06:31:31 -!- alec3660 has quit (*.net *.split).
06:31:31 -!- Hooloovoo has quit (*.net *.split).
06:31:32 -!- Lymee has quit (*.net *.split).
06:31:33 -!- oren has quit (*.net *.split).
06:31:34 -!- mtm has quit (*.net *.split).
06:31:34 -!- lynndotpy6 has quit (*.net *.split).
06:31:34 -!- Noisytoot has quit (*.net *.split).
06:31:35 -!- sprout has quit (*.net *.split).
06:31:36 -!- sprock has quit (*.net *.split).
06:31:36 -!- nitrix has quit (*.net *.split).
06:31:37 -!- Trigon has quit (*.net *.split).
06:31:37 -!- Taneb0 has quit (*.net *.split).
06:31:37 -!- mcfrdy has quit (*.net *.split).
06:31:38 -!- iovoid has quit (*.net *.split).
06:31:39 -!- visilii has quit (*.net *.split).
06:31:39 -!- myname has quit (*.net *.split).
06:31:40 -!- V has quit (*.net *.split).
06:31:40 -!- chiselfuse has quit (*.net *.split).
06:33:22 -!- ais523 has joined.
06:33:22 -!- gAy_Dragon has joined.
06:33:22 -!- ProofTechnique_ has joined.
06:33:22 -!- xelxebar has joined.
06:33:22 -!- integral has joined.
06:33:22 -!- korvo has joined.
06:33:22 -!- mich181189 has joined.
06:33:22 -!- riv has joined.
06:33:22 -!- citrons has joined.
06:33:22 -!- GregorR has joined.
06:33:22 -!- dcreager has joined.
06:33:22 -!- dnm has joined.
06:33:22 -!- voxpelli has joined.
06:33:22 -!- yuu has joined.
06:33:22 -!- MizMahem has joined.
06:33:22 -!- molson has joined.
06:33:22 -!- rodgort has joined.
06:33:22 -!- simcop2387 has joined.
06:33:22 -!- perlbot has joined.
06:33:22 -!- int-e has joined.
06:33:22 -!- Bowserinator has joined.
06:33:22 -!- Melvar has joined.
06:33:22 -!- isabella has joined.
06:33:22 -!- ^[ has joined.
06:33:22 -!- shikhin has joined.
06:33:22 -!- HackEso has joined.
06:33:22 -!- jix has joined.
06:33:22 -!- tetsuo-cpp has joined.
06:33:22 -!- wryl has joined.
06:33:22 -!- slavfox has joined.
06:33:22 -!- op_4 has joined.
06:33:22 -!- b_jonas has joined.
06:33:22 -!- leah2 has joined.
06:33:22 -!- zemhill has joined.
06:33:22 -!- shachaf has joined.
06:33:22 -!- fizzie has joined.
06:33:22 -!- Soni has joined.
06:33:22 -!- m5zs7k has joined.
06:33:22 -!- yewscion__ has joined.
06:33:22 -!- fungot has joined.
06:33:22 -!- pikhq has joined.
06:33:22 -!- madcabbage has joined.
06:33:22 -!- 029AAR240 has joined.
06:33:22 -!- Lord_of_Life has joined.
06:33:22 -!- tromp has joined.
06:33:22 -!- Sgeo has joined.
06:33:22 -!- alec3660 has joined.
06:33:22 -!- mtm has joined.
06:33:22 -!- sprock has joined.
06:33:22 -!- laerling has joined.
06:33:22 -!- FireFly has joined.
06:33:22 -!- krychu has joined.
06:33:22 -!- j4cbo has joined.
06:33:22 -!- JAA has joined.
06:33:22 -!- moony has joined.
06:33:22 -!- ManDeJan has joined.
06:33:22 -!- iovoid has joined.
06:33:22 -!- oren has joined.
06:33:22 -!- Lymee has joined.
06:33:22 -!- Hooloovoo has joined.
06:33:22 -!- lynndotpy6 has joined.
06:33:22 -!- Noisytoot has joined.
06:33:22 -!- nitrix has joined.
06:33:22 -!- chiselfuse has joined.
06:33:22 -!- Trigon has joined.
06:33:22 -!- Taneb0 has joined.
06:33:22 -!- visilii has joined.
06:33:22 -!- dbohdan has joined.
06:33:22 -!- myname has joined.
06:33:22 -!- sprout has joined.
06:33:22 -!- Artea has joined.
06:33:22 -!- mcfrdy has joined.
06:33:22 -!- APic has joined.
06:33:22 -!- V has joined.
06:34:32 -!- 029AAR240 has quit (*.net *.split).
06:34:33 -!- rodgort has quit (*.net *.split).
06:34:33 -!- simcop2387 has quit (*.net *.split).
06:34:33 -!- perlbot has quit (*.net *.split).
06:34:34 -!- int-e has quit (*.net *.split).
06:34:35 -!- m5zs7k has quit (*.net *.split).
06:34:35 -!- yewscion__ has quit (*.net *.split).
06:34:36 -!- fungot has quit (*.net *.split).
06:34:36 -!- pikhq has quit (*.net *.split).
06:35:16 -!- m5zs7k has joined.
06:35:16 -!- yewscion__ has joined.
06:35:16 -!- fungot has joined.
06:35:16 -!- pikhq has joined.
06:35:19 -!- m5zs7k has quit (Max SendQ exceeded).
06:35:39 -!- m5zs7k_ has joined.
06:36:05 -!- Noisytoot has quit (Max SendQ exceeded).
06:36:06 -!- ursa-major has joined.
06:36:23 -!- 029AAR240 has joined.
06:36:23 -!- rodgort has joined.
06:36:23 -!- simcop2387 has joined.
06:36:23 -!- perlbot has joined.
06:36:23 -!- int-e has joined.
06:36:50 -!- tromp has quit (*.net *.split).
06:36:50 -!- slavfox has quit (*.net *.split).
06:36:50 -!- op_4 has quit (*.net *.split).
06:36:51 -!- b_jonas has quit (*.net *.split).
06:36:51 -!- leah2 has quit (*.net *.split).
06:36:52 -!- zemhill has quit (*.net *.split).
06:36:52 -!- shachaf has quit (*.net *.split).
06:36:52 -!- fizzie has quit (*.net *.split).
06:36:52 -!- Soni has quit (*.net *.split).
06:37:27 -!- tromp has joined.
06:37:27 -!- slavfox has joined.
06:37:27 -!- op_4 has joined.
06:37:27 -!- b_jonas has joined.
06:37:27 -!- leah2 has joined.
06:37:27 -!- zemhill has joined.
06:37:27 -!- shachaf has joined.
06:37:27 -!- fizzie has joined.
06:37:27 -!- Soni has joined.
06:38:06 -!- madcabbage has quit (*.net *.split).
06:38:07 -!- shikhin has quit (*.net *.split).
06:38:07 -!- HackEso has quit (*.net *.split).
06:38:07 -!- jix has quit (*.net *.split).
06:38:08 -!- tetsuo-cpp has quit (*.net *.split).
06:38:08 -!- wryl has quit (*.net *.split).
06:38:09 -!- Lord_of_Life has quit (*.net *.split).
06:38:10 -!- Bowserinator has quit (*.net *.split).
06:38:10 -!- Melvar has quit (*.net *.split).
06:38:10 -!- isabella has quit (*.net *.split).
06:38:10 -!- ^[ has quit (*.net *.split).
06:38:41 -!- Lord_of_Life has joined.
06:38:41 -!- Bowserinator has joined.
06:38:41 -!- Melvar has joined.
06:38:41 -!- isabella has joined.
06:38:41 -!- ^[ has joined.
06:40:16 -!- perlbot has quit (Excess Flood).
06:40:38 -!- madcabbage has joined.
06:40:38 -!- shikhin has joined.
06:40:38 -!- HackEso has joined.
06:40:38 -!- jix has joined.
06:40:38 -!- tetsuo-cpp has joined.
06:40:38 -!- wryl has joined.
06:40:42 -!- madcabbage has quit (Remote host closed the connection).
06:40:48 -!- perlbot has joined.
06:40:56 -!- madcabbage has joined.
06:44:59 -!- m5zs7k_ has changed nick to m5zs7k.
07:05:58 -!- madcabbage has quit (Ping timeout: 252 seconds).
07:10:41 -!- Lord_of_Life_ has joined.
07:11:17 -!- Lord_of_Life has quit (Ping timeout: 248 seconds).
07:12:02 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:36:32 <esolangs> [[Crest]] https://esolangs.org/w/index.php?diff=153218&oldid=153215 * Camto * (+74) Examples link
07:37:23 <esolangs> [[Crest]] M https://esolangs.org/w/index.php?diff=153219&oldid=153218 * Camto * (+39) Tabs to spaces in code
07:40:19 <esolangs> [[Crest/Examples]] N https://esolangs.org/w/index.php?oldid=153220 * Camto * (+6392) Create the page
07:42:47 <esolangs> [[Crest/Examples]] https://esolangs.org/w/index.php?diff=153221&oldid=153220 * Camto * (+23) The category
07:56:50 -!- ais523 has quit (Quit: quit).
08:37:43 <esolangs> [[UserEdited]] M https://esolangs.org/w/index.php?diff=153222&oldid=153139 * BrainFuckGirl * (+0) /* Commands */
08:42:12 <esolangs> [[Fish]] https://esolangs.org/w/index.php?diff=153223&oldid=152854 * BrainFuckGirl * (+0) /* Hello, world! */
08:59:56 -!- Sgeo has quit (Read error: Connection reset by peer).
09:19:10 -!- Noisytoot has joined.
09:26:13 -!- Noisytoot has quit (Ping timeout: 248 seconds).
09:43:45 -!- Noisytoot has joined.
09:52:33 -!- Noisytoot has quit (Quit: ZNC 1.9.1 - https://znc.in).
09:55:32 -!- Noisytoot has joined.
10:44:31 -!- op_4 has quit (Ping timeout: 244 seconds).
10:46:36 -!- op_4 has joined.
11:01:41 <esolangs> [[Fontmess]] https://esolangs.org/w/index.php?diff=153224&oldid=153201 * PrySigneToFry * (+202) Reformat the page. And "output" command is very important, if only with the original command it won't be able to golfing.
11:09:30 -!- wib_jonas has joined.
11:25:07 <wib_jonas> ais523 re https://logs.esolangs.org/libera-esolangs/2025-02.html#lpAb , given sequentially consistent atomic memory access (accesses are totally ordered and see every earlier write but no later ones), how do you make a mutex.
11:25:12 <wib_jonas> Flag cell starts from 0. When first thread wants to lock, it waits until the flag is 0, increments flag, tests flag, if zero then decrements flag and restarts, otherwise it has the lock and will have to decrement flag to unlock.
11:25:17 <wib_jonas> When second thread wants to lock, it just decrements the flag then waits until it's nonzero, at which point it has the lock and will have to increment flag to unlock.
11:25:21 <wib_jonas> You can do this with two separate cells instead, with only one thread ever writing each. Both flag A and B are normally 0.
11:25:25 <wib_jonas> When first thread wants to lock, it waits until flag B is zero, increments A, tests B, if nonzero then decrements A and restarts, otherwise has the lock now and will have to decrement to unlock.
11:25:28 <wib_jonas> When second thread wants to lock, it increments B then waits until A is zero, has the lock and will decrement B to unlock.
11:25:33 <wib_jonas> And I think you can extend that to any constant number of threads.
11:52:58 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153225&oldid=153222 * PrySigneToFry * (+2761)
12:02:36 -!- mtm has quit (Ping timeout: 252 seconds).
12:06:36 -!- mtm has joined.
13:20:42 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153226&oldid=153225 * Hotcrystal0 * (+463) More commands!
13:30:45 -!- wib_jonas has quit (Quit: Client closed).
13:50:43 <esolangs> [[UserEdited/All country IDs]] N https://esolangs.org/w/index.php?oldid=153227 * MihaiEso * (+1413) Created page with "{{Back|UserEdited}} == Page 1 (Basic IDs) == {| class="wikitable" |+ Page 1 (Basic IDs) |- ! 1-character ID !! Country !! 1-character ID !! Country !! 1-character ID !! Country |- | A || South Africa || J || Japan || R || Russia |- | B || Brazil || K
13:51:50 -!- amby has joined.
13:56:45 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153228&oldid=153226 * MihaiEso * (+2390)
13:56:58 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153229&oldid=153228 * MihaiEso * (+2)
14:08:55 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153230&oldid=153229 * MihaiEso * (+0) Wording
14:18:58 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153231&oldid=153230 * MihaiEso * (-1887)
14:19:19 <esolangs> [[UserEdited/Versions]] N https://esolangs.org/w/index.php?oldid=153232 * MihaiEso * (+1939) Created page with "{{Back|UserEdited}} * UserEdited 1.0 * UserEdited 2.0 * UserEdited 2.1 (made by None1) * UserEdited 3.0 * UserEdited 3.1 * UserEdited 3.1 1/2 (or UserEdited 3.2) (made by Cleverxia) * UserEdited 4.0 * UserEdited 4.0.1 * UserEdited 4.2.-1 (from None1) * User
14:20:00 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153233&oldid=153231 * MihaiEso * (-394)
14:20:31 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153234&oldid=153232 * MihaiEso * (+515)
14:21:10 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153235&oldid=153234 * MihaiEso * (+18)
14:21:51 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153236&oldid=153235 * MihaiEso * (+100)
14:22:04 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153237&oldid=153233 * MihaiEso * (-181)
14:23:06 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153238&oldid=153237 * MihaiEso * (-32)
15:34:23 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153239&oldid=153238 * PrySigneToFry * (+1143)
15:35:38 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153240&oldid=153239 * PrySigneToFry * (+73)
15:36:55 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153241&oldid=153236 * PrySigneToFry * (+141)
15:46:01 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153242&oldid=153224 * Aadenboy * (-1) /* Hello, world! = */
15:48:21 <esolangs> [[UserEdited/All country IDs]] https://esolangs.org/w/index.php?diff=153243&oldid=153227 * PrySigneToFry * (+1228)
15:52:23 -!- amby has quit (Remote host closed the connection).
15:52:33 -!- amby has joined.
16:00:44 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153244&oldid=153241 * MihaiEso * (+54) /* TBR */
16:01:01 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153245&oldid=153244 * MihaiEso * (+21)
16:10:45 <korvo> b_jonas: I was thinking about a similar approach. The problem is that, in case of contention, there's no resource but to try again; it could livelock while trying to pick up the thread.
16:10:55 <korvo> ...We might have to bust out the TLA+ for this one.
16:11:21 <korvo> ...I probably meant "there's no recourse", bad English idiom for not having any other options.
16:14:52 -!- wib_jonas has joined.
16:17:06 <wib_jonas> korvo: if there's contention, then eventually the first thread will notice that the second thread set its flag, at which point the first thread will no keep its own flag clear, and the second thread will get the lock; or else the second thread will be too late and the first thread will get the lock
16:17:44 <wib_jonas> I don't think it can livelock trying to lock the mutex; it could livelock or deadlock in a higher level loop
16:18:16 <korvo> wib_jonas: Can't waiting for a cell to be 0 always livelock?
16:18:49 <korvo> I think I'm trying to use intuition on a combinatorial problem that requires case analysis.
16:29:45 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153246&oldid=153038 * H33T33 * (+407)
16:37:43 <wib_jonas> korvo: are you talking about the one-cell version in https://logs.esolangs.org/libera-esolangs/2025-03-04.html#lYf or the two-cell version in https://logs.esolangs.org/libera-esolangs/2025-03-04.html#l0f ?
16:39:28 <korvo> wib_jonas: The one-cell version. The two-cell version seems like it could have a similar issue, maybe, but I think I'd need to actually hack out the TLA+ to see for sure.
16:43:06 <wib_jonas> one-cell version. so when the first cell waits for the flag to be zero before incrementing it, the flag cell can only be nonzero if the second thread decremented it to try to lock it. in that case, the first thread can't increment the cell until the second thread is done, so the second thread will be able to progress to where it locks the mutex
16:45:09 <wib_jonas> the other question is when the first thread increments the flag cell and then ensures it's nonzero, and restarts if it's zero. the cell can be zero only if the second thread has decremented it. when that happens, the first thread decrements the cell then restarts, but then the cell will stay at value -1 until the second thread unlocks, so the first
16:45:09 <wib_jonas> thread won't try to increment the thread again, it'll be stuck in the first wait.
16:46:58 <wib_jonas> you can get a livelock at a higher level loop if a thread repeatedly locks and unlocks the mutex and so the other thread can't progress, and this can be a problem, but it's not really a problem with the mutex implementation, that can happen with any normal mutex
16:58:30 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153247&oldid=153240 * MihaiEso * (+2702)
17:25:44 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153248&oldid=151618 * Hotcrystal0 * (+294) 50
17:35:40 -!- wib_jonas has quit (Quit: Client closed).
18:46:53 <b_jonas> `learn password The password of the month is One day I'll be dead and THEN you'll all be sorry.
18:46:56 <HackEso> Relearned 'password': password The password of the month is One day I'll be dead and THEN you'll all be sorry.
19:08:38 <esolangs> [[User:Hotcrystal0/CAPI]] N https://esolangs.org/w/index.php?oldid=153249 * Hotcrystal0 * (+225) Created page with "CAPI is an esolang created by [[User:Hotcrystal0]] [add yourself if youve been invited]. It is designed to be [[crystal-complete], [[aweosme-complete]], [[PrySigneToFry-complete]], and [[User: I am ispltng/ispl-complete]]."
19:08:52 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153250&oldid=153249 * Hotcrystal0 * (+0)
19:09:13 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153251&oldid=153250 * Hotcrystal0 * (+14)
19:09:21 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153252&oldid=153251 * Hotcrystal0 * (+0)
19:09:57 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153253&oldid=153252 * Hotcrystal0 * (+0)
19:13:30 -!- ais523 has joined.
19:14:05 <ais523> b_jonas: so I think your lock is immune to deadlocks and livelocks but unfair, in that if both threads are trying to take it then one of them can get starved
19:15:16 <ais523> I do like the way you fixed contention, though
19:51:27 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153254&oldid=152470 * Hotcrystal0 * (+173) /* Invited to CAPI */ new section
19:51:54 <esolangs> [[User talk:PrySigneToFry]] https://esolangs.org/w/index.php?diff=153255&oldid=151912 * Hotcrystal0 * (+173) /* Invited to CAPI */ new section
19:52:20 <esolangs> [[User talk:Tommyaweosme]] https://esolangs.org/w/index.php?diff=153256&oldid=152990 * Hotcrystal0 * (+162) /* CAPI */ new section
19:52:43 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153257&oldid=153253 * Hotcrystal0 * (+1)
20:05:06 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153258&oldid=153242 * Buckets * (+4469)
21:20:21 -!- Melvar has quit (Ping timeout: 248 seconds).
21:20:34 -!- ursa-major has quit (*.net *.split).
21:20:35 -!- ManDeJan has quit (*.net *.split).
21:20:35 -!- moony has quit (*.net *.split).
21:20:35 -!- JAA has quit (*.net *.split).
21:20:36 -!- j4cbo has quit (*.net *.split).
21:20:36 -!- krychu has quit (*.net *.split).
21:20:36 -!- FireFly has quit (*.net *.split).
21:20:36 -!- laerling has quit (*.net *.split).
21:20:52 -!- ursa-major has joined.
21:20:52 -!- ManDeJan has joined.
21:20:52 -!- moony has joined.
21:20:52 -!- JAA has joined.
21:20:52 -!- j4cbo has joined.
21:20:52 -!- krychu has joined.
21:20:52 -!- FireFly has joined.
21:20:52 -!- laerling has joined.
21:22:08 -!- ursa-major has quit (Max SendQ exceeded).
21:25:24 -!- ursa-major has joined.
21:32:56 -!- Melvar has joined.
21:50:39 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153259&oldid=153194 * Buckets * (+13)
21:50:52 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153260&oldid=153176 * Buckets * (+12)
21:51:03 <esolangs> [[Height]] N https://esolangs.org/w/index.php?oldid=153261 * Buckets * (+1967) Created page with "Height is an Esoteric programming language created by [[User:Buckets]] in 2025, inspired by [[Length]]. (There is a restriction Were none Of the Text are Intersecting.) {| class="wikitable" |- ! Character Height !! Instructions |- | 1x || Start the name of A Destination
21:51:08 -!- craigo has joined.
21:51:38 <esolangs> [[Height]] M https://esolangs.org/w/index.php?diff=153262&oldid=153261 * Buckets * (+280)
21:51:59 <esolangs> [[Height]] M https://esolangs.org/w/index.php?diff=153263&oldid=153262 * Buckets * (+280)
23:35:11 <esolangs> [[Waffles]] M https://esolangs.org/w/index.php?diff=153264&oldid=152914 * Buckets * (+234)
23:52:13 <esolangs> [[Waffles]] M https://esolangs.org/w/index.php?diff=153265&oldid=153264 * Buckets * (-234)
00:02:29 -!- mtm has quit (Ping timeout: 248 seconds).
00:05:58 -!- mtm has joined.
00:10:16 -!- Sgeo has joined.
00:52:32 <esolangs> [[Finallymyjourneyis-complete]] N https://esolangs.org/w/index.php?oldid=153266 * PkmnQ * (+908) Created page with "An esolang is Finallymyjourneyis-complete if it follows these criteria: * Every program is written as a single string, takes a single string as input, and gives a single string as output. * For every string, there is a program that ignores the input and
00:59:40 <esolangs> [[Finallymyjourneyis-complete]] https://esolangs.org/w/index.php?diff=153267&oldid=153266 * PkmnQ * (+48) strengthen conditions a bit
01:00:01 <esolangs> [[Finallymyjourneyis-complete]] M https://esolangs.org/w/index.php?diff=153268&oldid=153267 * PkmnQ * (+0)
01:14:52 -!- 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:28:58 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153269&oldid=153257 * PrySigneToFry * (+268)
01:41:08 <esolangs> [[Special:Log/delete]] delete * Ais523 * deleted "[[Hotcrystal0/Q9+]]": redirect left over after correcting the title of a page
01:41:27 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=153270&oldid=153157 * Ais523 * (+139) /* Page in need of deletion */ deleted
03:02:07 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153271&oldid=153269 * Hotcrystal0 * (+26) fixing headings
03:06:11 -!- tromp has quit (Ping timeout: 244 seconds).
03:13:08 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153272&oldid=153247 * PrySigneToFry * (+1066)
03:37:54 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153273&oldid=133078 * PrySigneToFry * (+65)
03:40:16 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153274&oldid=153271 * PrySigneToFry * (+191)
03:43:28 <esolangs> [[Mutzerium]] https://esolangs.org/w/index.php?diff=153275&oldid=153053 * PrySigneToFry * (-19)
03:50:35 <esolangs> [[Mutzerium/STL]] https://esolangs.org/w/index.php?diff=153276&oldid=153043 * PrySigneToFry * (+678)
05:40:32 <zzo38> An idea I had for a new move in Pokemon would be a move that requires recharge if it knocks out the target or breaks a substitute but otherwise it doesn't need a turn to recharge.
06:04:19 <ais523> what about if it hits a Protect shield, or misses?
06:06:06 <zzo38> My idea was that it would not require recharge in that case; it only requires recharge if it knocks out the target or breaks a substitute.
06:12:16 <esolangs> [[User talk:Hotcrystal0/CAPI]] N https://esolangs.org/w/index.php?oldid=153277 * I am islptng * (+676) Created page with "Is it gonna be islp-complete Lv.1, Lv.2 or Lv.3? You forget that islp-complete has 3 levels. Also I suggest the name to be "pica" instead of "capi". ~~~~"
06:17:32 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153278&oldid=151977 * I am islptng * (+676)
06:20:51 <esolangs> [[Talk:Fun 2 code]] N https://esolangs.org/w/index.php?oldid=153279 * I am islptng * (+172) Created page with "<pre> tr-uck pl-uck d-uck f-un 2 rhyme~ s-ick, st-ick, t-ick, d-inner time~ sp-it, spl-it, sm-it, sh-ut your eyes~ w-itch st-itch s-itch b-ig surprise~ </pre>"
06:25:12 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153280&oldid=153278 * I am islptng * (+54)
07:05:37 <esolangs> [[Waffles]] https://esolangs.org/w/index.php?diff=153281&oldid=153265 * Stkptr * (+1559) Proof of Turing completeness
07:05:54 <esolangs> [[Waffles]] M https://esolangs.org/w/index.php?diff=153282&oldid=153281 * Stkptr * (+0) Fix category
07:11:22 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
07:12:20 -!- Lord_of_Life has joined.
07:44:21 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153283&oldid=153274 * I am islptng * (+716)
07:47:39 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153284&oldid=153283 * PrySigneToFry * (+24)
07:50:32 <esolangs> [[Talk:Fun 2 code]] https://esolangs.org/w/index.php?diff=153285&oldid=153279 * PrySigneToFry * (+51)
07:51:00 -!- Sgeo has quit (Read error: Connection reset by peer).
07:52:06 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153286&oldid=153284 * I am islptng * (+203) /* Syntax */
07:53:40 <esolangs> [[Topple]] https://esolangs.org/w/index.php?diff=153287&oldid=153246 * Stkptr * (+1499) Categories, current computational class
08:01:06 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153288&oldid=153286 * PrySigneToFry * (+135)
08:07:58 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153289&oldid=153288 * PrySigneToFry * (+241)
08:36:30 <esolangs> [[Talk:Bespoke]] N https://esolangs.org/w/index.php?oldid=153290 * Neon * (+135) s
08:39:40 <esolangs> [[Talk:Bespoke]] https://esolangs.org/w/index.php?diff=153291&oldid=153290 * Neon * (+71) updated
08:40:16 -!- b_jonas has quit (Quit: leaving).
09:02:46 -!- Lymee has quit (Quit: zzzz <3).
09:04:50 -!- Lymia has joined.
09:19:58 -!- Hoolootwo has joined.
09:20:48 -!- Hooloovoo has quit (Ping timeout: 272 seconds).
09:22:52 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153292&oldid=153273 * PrySigneToFry * (+150)
09:27:15 -!- craigo has quit (Quit: Leaving).
10:15:08 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153293&oldid=153289 * PrySigneToFry * (+1)
10:54:22 <esolangs> [[Fontmess]] https://esolangs.org/w/index.php?diff=153294&oldid=153258 * PrySigneToFry * (+0)
11:31:10 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153295&oldid=153280 * I am islptng * (+56)
11:49:27 <esolangs> [[Talk:Bespoke]] https://esolangs.org/w/index.php?diff=153296&oldid=153291 * Neon * (+20)
11:54:06 <esolangs> [[Special:Log/newusers]] create * TomosCode * New user account
11:58:02 <esolangs> [[Talk:Bespoke]] https://esolangs.org/w/index.php?diff=153297&oldid=153296 * Neon * (+181) update
12:00:06 <esolangs> [[User:Hotcrystal0/CAPI]] M https://esolangs.org/w/index.php?diff=153298&oldid=153293 * I am islptng * (-123) UTF8
12:03:24 -!- mtm has quit (Ping timeout: 268 seconds).
12:04:54 <esolangs> [[PrySigneToFry-complete]] M https://esolangs.org/w/index.php?diff=153299&oldid=150696 * I am islptng * (-19)
12:05:00 -!- mtm has joined.
12:06:36 <esolangs> [[PoeticChicken]] https://esolangs.org/w/index.php?diff=153300&oldid=152949 * PrySigneToFry * (+40)
12:07:56 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153301&oldid=153298 * PrySigneToFry * (+0)
12:10:52 <esolangs> [[PrySigneToFry-complete]] https://esolangs.org/w/index.php?diff=153302&oldid=153299 * I am islptng * (-98) /* If an Esolang is PrySigneToFry complete, it will also what-complete? */
12:14:05 <esolangs> [[EuskoPy]] N https://esolangs.org/w/index.php?oldid=153303 * Muxutruk * (+2392) Created the article for my new lang, I need help with formatting
12:21:28 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153304&oldid=153301 * I am islptng * (+203)
12:23:57 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153305&oldid=153304 * Hotcrystal0 * (+3) this is an esolang, so why not add a couple of weird commands and make it harder to type
12:53:05 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153306&oldid=153259 * Muxutruk * (+14) Added EuskoPy to Language List
12:57:39 <esolangs> [[EuskoPy]] https://esolangs.org/w/index.php?diff=153307&oldid=153303 * Muxutruk * (-134) Fixed formatting
12:59:07 <esolangs> [[User:Muxutruk]] N https://esolangs.org/w/index.php?oldid=153308 * Muxutruk * (+81) My page
13:04:22 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153309&oldid=153191 * Hotcrystal0 * (+31)
13:04:31 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153310&oldid=153309 * Hotcrystal0 * (+1)
13:07:02 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153311&oldid=153305 * Hotcrystal0 * (+5)
13:23:30 -!- wib_jonas has joined.
13:27:44 <wib_jonas> fizzie: thank you for mentioning "skippable frames" in zstd format https://logs.esolangs.org/libera-esolangs/2025-02.html#lZsb . https://facebook.github.io/zstd/doc/api_manual_v1.5.7.html supports emitting these with an API function https://facebook.github.io/zstd/doc/api_manual_v1.5.7.html , which I would have missed in that documentation without
13:35:38 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153312&oldid=153133 * TomosCode * (+134) /* Introductions */
13:36:17 <esolangs> [[PrySigneToFry-complete]] https://esolangs.org/w/index.php?diff=153313&oldid=153302 * PrySigneToFry * (+663)
13:37:43 <esolangs> [[User:TomosCode]] N https://esolangs.org/w/index.php?oldid=153314 * TomosCode * (+28) Created page with "== TomosCode == I like code."
13:43:26 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153315&oldid=153311 * PrySigneToFry * (+40) The arrows are reversed! And we can also make a Monospace font that <- is and -> is !
13:56:03 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153316&oldid=153315 * PrySigneToFry * (+75)
14:03:31 <esolangs> [[Abacus Computer]] N https://esolangs.org/w/index.php?oldid=153317 * TomosCode * (+302) Created page with "Abacus Computer is an abacus language. == Instruction == The one instruction is ADD A <- B.<br> A is a pointer to a number.<br> B is too.<br> == Pointers == * 0 is mapped to the IP. * Most others are just pointers to numbers. * The max is mapped to the input.
14:17:52 -!- trumae has joined.
14:24:20 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153318&oldid=153316 * Hotcrystal0 * (+149)
14:29:12 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153319&oldid=153318 * PrySigneToFry * (+65)
14:48:32 -!- ais523 has quit (Quit: quit).
14:49:15 <esolangs> [[Special:Log/newusers]] create * Bonenaut7 * New user account
14:59:53 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153320&oldid=153312 * Bonenaut7 * (+135)
15:05:02 -!- trumae has quit (Quit: trumae).
15:22:10 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153321&oldid=153292 * Hotcrystal0 * (-21) the pinyin doesnt even rhyme with the letter
15:22:46 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153322&oldid=153321 * Hotcrystal0 * (+0)
15:27:37 <esolangs> [[Talk:Fun 2 code]] https://esolangs.org/w/index.php?diff=153323&oldid=153285 * Hotcrystal0 * (+1)
15:27:52 <esolangs> [[Talk:Fun 2 code]] https://esolangs.org/w/index.php?diff=153324&oldid=153323 * Hotcrystal0 * (+0)
15:28:05 <esolangs> [[Talk:Fun 2 code]] https://esolangs.org/w/index.php?diff=153325&oldid=153324 * Hotcrystal0 * (+0)
15:30:02 <esolangs> [[Talk:Fun 2 code]] https://esolangs.org/w/index.php?diff=153326&oldid=153325 * Hotcrystal0 * (+0)
15:34:44 -!- mtm_ has joined.
15:35:21 -!- mtm has quit (Ping timeout: 244 seconds).
15:36:47 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153327&oldid=112461 * Hotcrystal0 * (+67) See also
15:37:08 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153328&oldid=153327 * Hotcrystal0 * (-13)
15:38:49 <int-e> fungot: why does nauty use two different bit orders for bit masks internally...
15:38:50 <fungot> int-e: yeah. it's a distraction or unwelcome, i'll leave now.
16:05:51 <esolangs> [[Project Euler/5]] M https://esolangs.org/w/index.php?diff=153329&oldid=152778 * Calculus is fun * (+278) False example
17:21:17 -!- wib_jonas has quit (Quit: Client closed).
18:27:28 -!- amby has joined.
18:40:09 <esolangs> [[PoeticChicken]] https://esolangs.org/w/index.php?diff=153330&oldid=153300 * Stkptr * (+19) Category
18:41:57 <esolangs> [[Abacus Computer]] https://esolangs.org/w/index.php?diff=153331&oldid=153317 * Stkptr * (+35) Category
19:10:49 -!- b_jonas has joined.
19:14:46 -!- craigo has joined.
20:06:15 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153332&oldid=153294 * Buckets * (+0)
20:07:31 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153333&oldid=153306 * Buckets * (+14)
20:07:55 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153334&oldid=153260 * Buckets * (+13)
20:08:07 <esolangs> [[Heighto]] N https://esolangs.org/w/index.php?oldid=153335 * Buckets * (+1614) Created page with "Heighto is an Esoteric programming language created by [[User:Buckets]] in 2025, inspired by [[Length]] and More similar to the Original Plan for [[Height]], but To make it happen, the Edited [[Height]] only had to change a Few things Because of A transformation of Sc
20:38:11 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153336&oldid=153333 * Buckets * (+14)
20:38:16 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153337&oldid=153334 * Buckets * (+13)
20:38:24 <esolangs> [[Overlap]] N https://esolangs.org/w/index.php?oldid=153338 * Buckets * (+4077) Created page with "Overlap is an Esoteric programming language created by [[User:Buckets]] in 2023. (The name of the first Variable is 8.) {| class="wikitable" |- ! Commands !! Instructions |- | <div style="position: relative;"><span style="position: absolute; top: 0; left: 0; z-index:
20:43:14 <esolangs> [[Overlap]] M https://esolangs.org/w/index.php?diff=153339&oldid=153338 * Buckets * (+608)
20:47:01 <esolangs> [[User:I am islptng/Islp-Complete]] https://esolangs.org/w/index.php?diff=153340&oldid=153205 * I am islptng * (+327)
20:49:34 <HackEso> 1/1:320) <EgoBot> hey fhet's zeees OouooH SNEP IT'S A FOooCKING TIGER \ 605) <shachaf> You should get kmc in this channel. kmc has good quotes. <shachaf> `quote kmc <HackEgo> 686) <kmc> COCKS [...] <kmc> truly cocks <shachaf> Well, in theory.
21:05:19 <esolangs> [[Waffles]] M https://esolangs.org/w/index.php?diff=153341&oldid=153282 * Buckets * (+502)
21:58:58 <esolangs> [[Category:Unknown-based]] N https://esolangs.org/w/index.php?oldid=153342 * Buckets * (+218) Created page with "Esoteric programming Languages Either in 2 subcategories, 1. Yet to be known base for their Esolang, for Recategorization. 2. They do not know what base their Esolang is and Will stay that way. [[Category:Concepts]]"
21:59:45 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153343&oldid=153332 * Buckets * (+27)
22:01:51 <esolangs> [[Height]] M https://esolangs.org/w/index.php?diff=153344&oldid=153263 * Buckets * (+27)
22:02:07 <esolangs> [[Heighto]] M https://esolangs.org/w/index.php?diff=153345&oldid=153335 * Buckets * (+27)
22:08:39 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153346&oldid=153343 * Buckets * (+40)
22:10:58 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153347&oldid=153346 * Buckets * (+78)
22:20:29 -!- visilii_ has joined.
22:24:03 <esolangs> [[User talk:Buckets]] N https://esolangs.org/w/index.php?oldid=153348 * Buckets * (+243) Created page with "<div style="border:3px solid black; width:300px; height:90px;">If you have questions for [[User:Buckets]], Just put them here. There is no guarantee that [[User:Buckets]] will answer/Respond Immediately, They have Important Things to do.</div>"
22:24:10 -!- visilii has quit (Ping timeout: 265 seconds).
23:42:16 -!- Sgeo has joined.
23:55:00 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153349&oldid=153319 * I am islptng * (+995)
00:03:40 -!- mtm_ has quit (Ping timeout: 272 seconds).
00:06:15 -!- mtm has joined.
00:29:22 <esolangs> [[Afefoj]] N https://esolangs.org/w/index.php?oldid=153350 * I am islptng * (+2471) Created page with "{{lowercase}} {{wrongtitle|title=''<span style="display:inline-block;transform:rotate(170deg);">rotate</span>}} <b><span style="display:inline-block;transform:rotate(170deg);">rotate</span></b> is an esolang made by islptng. The structure of the program are express
00:36:35 <esolangs> [[Afefoj]] https://esolangs.org/w/index.php?diff=153351&oldid=153350 * I am islptng * (+5186)
00:37:58 <esolangs> [[Afefoj]] https://esolangs.org/w/index.php?diff=153352&oldid=153351 * I am islptng * (+451) /* Examples */
00:41:46 <esolangs> [[Special:Log/move]] move * I am islptng * moved [[Afefoj]] to [[Afefoj-Flak]]
00:42:25 <esolangs> [[Afefoj-Flak]] https://esolangs.org/w/index.php?diff=153355&oldid=153353 * I am islptng * (+15)
00:42:44 <esolangs> [[Afefoj]] https://esolangs.org/w/index.php?diff=153356&oldid=153354 * I am islptng * (-25) Blanked the page
00:52:19 <esolangs> [[Nybblang]] https://esolangs.org/w/index.php?diff=153357&oldid=153204 * Stkptr * (+2198) /* Turing-Complete Nybblang */ Actual classes
00:56:48 -!- citrons has quit (Ping timeout: 276 seconds).
00:56:58 -!- citrons has joined.
01:01:13 -!- amby has quit (Remote host closed the connection).
01:07:43 <esolangs> [[User:I am islptng]] https://esolangs.org/w/index.php?diff=153358&oldid=152607 * I am islptng * (+240) /* My esolangs */
01:20:05 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153359&oldid=153295 * I am islptng * (+558)
01:20:33 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153360&oldid=153359 * I am islptng * (+58)
02:09:15 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153361&oldid=153360 * PrySigneToFry * (+66)
02:09:19 <esolangs> [[Clockwise]] https://esolangs.org/w/index.php?diff=153362&oldid=83427 * Stkptr * (+282) Computational class
02:15:14 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153363&oldid=153349 * PrySigneToFry * (+285)
02:49:46 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153364&oldid=151954 * PrySigneToFry * (+593) /* */ new section
03:18:31 <esolangs> [[Talk:Afefoj-Flak]] N https://esolangs.org/w/index.php?oldid=153365 * PrySigneToFry * (+594) Created page with "I think the correct title is <span style="display:inline-block;transform:scale(-1,1)"><span style="display:inline-block;transform:rotate(170deg);">r</span><span style="display:inline-block;transform:rotate(-170deg);">o</span><span style="display:inline-blo
04:22:00 <esolangs> [[Talk:Afefoj-Flak]] https://esolangs.org/w/index.php?diff=153366&oldid=153365 * I am islptng * (+554)
04:23:43 <esolangs> [[Talk:Afefoj-Flak]] https://esolangs.org/w/index.php?diff=153367&oldid=153366 * I am islptng * (+92)
04:28:09 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153368&oldid=153364 * I am islptng * (+205) /* */
04:34:25 -!- craigo has quit (Read error: Connection reset by peer).
04:35:17 -!- craigo has joined.
05:05:08 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153369&oldid=153363 * PrySigneToFry * (+68)
05:08:37 <esolangs> [[Talk:Afefoj-Flak]] https://esolangs.org/w/index.php?diff=153370&oldid=153367 * PrySigneToFry * (+1119)
05:08:55 <esolangs> [[Talk:Afefoj-Flak]] https://esolangs.org/w/index.php?diff=153371&oldid=153370 * PrySigneToFry * (+0) Fixed time
05:13:39 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153372&oldid=153322 * PrySigneToFry * (+92)
05:16:22 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153373&oldid=153369 * PrySigneToFry * (+172)
05:16:47 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153374&oldid=153373 * PrySigneToFry * (+2)
05:34:20 <zzo38> In the version control should I assume by default that ASCII file names will not have control characters? I think it is reasonable, but maybe someone else has another idea. (Either way, you can specify a raw file name if needed.) (The same would be considered for non-ASCII file names with translated encoding (to/from ISO 2022).)
05:35:01 <zzo38> (Currently, I have nine possible types for file names, but I shouldn't need both "IA5 string" and "Visible string", and I shouldn't need both "Graphic string" and "General string", so I want to consider which ones to discard)
05:37:35 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153375&oldid=153374 * I am islptng * (+148)
05:38:05 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153376&oldid=153375 * I am islptng * (+18) fix
05:39:19 <zzo38> (O, also I added a section now about why not git, fossil, etc. There are other version control systems too but I don't know enough about them to compare them.)
05:40:52 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153377&oldid=153376 * I am islptng * (+107) /* Class */
05:43:24 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153378&oldid=153377 * I am islptng * (+126)
05:46:55 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153379&oldid=153378 * I am islptng * (+86) /* Class */
06:10:59 -!- molson has quit (Ping timeout: 260 seconds).
06:21:33 <zzo38> (I had also consider storage format; possibly SQLite can be used because indexing and that stuff would be useful; however, other implementations can use other formats if they would be better. The storage format is not intended to be interoperable although the format of the global state and protocol is intended to be interoperable.)
06:36:06 -!- molson has joined.
06:38:03 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153380&oldid=153372 * I am islptng * (+54)
06:42:58 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153381&oldid=153245 * PrySigneToFry * (+158)
07:05:26 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153382&oldid=153272 * I am islptng * (+115) /* Commands */
07:11:51 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
07:18:13 -!- Lord_of_Life has joined.
08:14:19 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153383&oldid=153368 * PrySigneToFry * (+9774)
08:30:36 -!- craigo has quit (Quit: Leaving).
08:58:59 <esolangs> [[User:PrySigneToFry/Cellular Automaton related thingy]] N https://esolangs.org/w/index.php?oldid=153384 * PrySigneToFry * (+15677) Created page with " <pre> x = 819, y = 965, rule = B3/S23 474bo$472bo3bo$477bo$472bo4bo$473b5o4$475b2o$472b3ob2o$473b4o$474b2o2$ 471b2o$469bo4bo$475bo$469bo5bo$470b6o7$400b3o$399b5o$399b3ob2o$402b2o 3$404bobo$404bo2bo5bo$404bobo3b5o$406b
09:00:05 <esolangs> [[User:PrySigneToFry]] https://esolangs.org/w/index.php?diff=153385&oldid=152996 * PrySigneToFry * (+59)
09:03:34 <esolangs> [[Ratt]] https://esolangs.org/w/index.php?diff=153386&oldid=130145 * Stkptr * (+83) Derivatives
09:05:57 -!- Sgeo has quit (Read error: Connection reset by peer).
09:44:48 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] N https://esolangs.org/w/index.php?oldid=153387 * I am islptng * (+22502) Created page with " <div class="mw-collapsible mw-collapsed"> ExpandRLE <div class="mw-collapsible-content"> <pre> x = 2079, y = 2546, rule = B2e3air4ijwz/S12-in3k4r5i 974bo43bo42bo43bo41bo43bo$513bo43bo42bo43bo41bo43bo243bo43bo42bo4
09:45:41 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] https://esolangs.org/w/index.php?diff=153388&oldid=153387 * I am islptng * (+21668)
09:46:38 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] https://esolangs.org/w/index.php?diff=153389&oldid=153388 * I am islptng * (+46306)
09:47:08 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] https://esolangs.org/w/index.php?diff=153390&oldid=153389 * I am islptng * (+6710)
09:47:23 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] https://esolangs.org/w/index.php?diff=153391&oldid=153390 * I am islptng * (+10449)
10:50:00 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] https://esolangs.org/w/index.php?diff=153392&oldid=153391 * PrySigneToFry * (+761)
10:58:05 <esolangs> [[PrySigneToFry-complete]] https://esolangs.org/w/index.php?diff=153393&oldid=153313 * PrySigneToFry * (+90)
11:30:01 -!- chiselfuse has quit (*.net *.split).
11:56:37 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153394&oldid=153383 * I am islptng * (+682) /* */
12:02:09 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153395&oldid=153394 * I am islptng * (+93) /* */
12:02:29 -!- mtm has quit (Ping timeout: 248 seconds).
12:02:45 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153396&oldid=153395 * I am islptng * (+18) /* */
12:05:12 -!- mtm has joined.
12:14:51 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153397&oldid=153396 * PrySigneToFry * (+109)
12:18:18 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153398&oldid=153397 * I am islptng * (+64) /* */
13:23:29 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153399&oldid=153398 * PrySigneToFry * (+454)
13:27:52 <esolangs> [[User talk:Fizzie]] https://esolangs.org/w/index.php?diff=153400&oldid=152497 * PrySigneToFry * (+857)
13:36:07 -!- chiselfuse has joined.
15:16:05 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153401&oldid=153102 * Int-e * (+3661) reduce number of candidates through normalization and a non-termination criterion
15:24:54 <esolangs> [[BitChanger Busy beaver/Proof]] M https://esolangs.org/w/index.php?diff=153402&oldid=153401 * Int-e * (+5) fix count
16:12:34 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153403&oldid=153310 * Hotcrystal0 * (+114)
16:13:25 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153404&oldid=153403 * Hotcrystal0 * (+9)
16:17:26 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153405&oldid=153379 * Hotcrystal0 * (+130)
16:18:04 <esolangs> [[User talk:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153406&oldid=153277 * Hotcrystal0 * (+156)
16:18:13 <esolangs> [[User talk:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153407&oldid=153406 * Hotcrystal0 * (+1)
16:30:08 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153408&oldid=153287 * H33T33 * (+317)
16:52:57 -!- Sgeo has joined.
18:01:36 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153409&oldid=152036 * Hotcrystal0 * (+118)
18:12:15 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153410&oldid=153409 * Hotcrystal0 * (+26)
18:19:40 -!- amby has joined.
18:25:40 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153411&oldid=153410 * Hotcrystal0 * (+22)
18:31:05 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153412&oldid=153411 * Hotcrystal0 * (+299)
18:31:27 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153413&oldid=153412 * Hotcrystal0 * (+0)
18:31:59 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153414&oldid=153413 * Hotcrystal0 * (+36)
18:33:36 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153415&oldid=153414 * Hotcrystal0 * (+3)
18:33:46 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153416&oldid=153415 * Hotcrystal0 * (+1)
18:35:30 <esolangs> [[Stairlang]] https://esolangs.org/w/index.php?diff=153417&oldid=153170 * Stkptr * (+1496) Turing complete
18:36:11 <esolangs> [[Stairlang]] M https://esolangs.org/w/index.php?diff=153418&oldid=153417 * Stkptr * (+6) Tag system formatting
18:38:51 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153419&oldid=153361 * Hotcrystal0 * (+132)
18:41:17 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153420&oldid=153404 * Hotcrystal0 * (+96)
18:51:55 <esolangs> [[]] N https://esolangs.org/w/index.php?oldid=153421 * Hotcrystal0 * (+24) Redirected page to [[Sharp flat]]
18:52:11 <esolangs> [[Talk:Sharp flat]] N https://esolangs.org/w/index.php?oldid=153422 * Hotcrystal0 * (+117) Created page with "==Title== Why not ? ~~~~"
20:09:38 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153423&oldid=153419 * I am islptng * (+659)
20:15:39 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153424&oldid=153399 * I am islptng * (+105) /* */
20:19:58 <esolangs> [[Vector]] https://esolangs.org/w/index.php?diff=153425&oldid=152940 * Stkptr * (+1965) Turing complete
20:29:12 <esolangs> [[Vector]] https://esolangs.org/w/index.php?diff=153426&oldid=153425 * Stkptr * (+387) /* Computational class */
20:41:58 <esolangs> [[Sembly]] https://esolangs.org/w/index.php?diff=153427&oldid=152926 * Stkptr * (+36)
20:48:50 <esolangs> [[Fsx]] https://esolangs.org/w/index.php?diff=153428&oldid=152919 * Stkptr * (+138) Turing complete
20:53:19 <esolangs> [[Licar]] https://esolangs.org/w/index.php?diff=153429&oldid=130624 * I am islptng * (-506) Apparently an excuse for the interpreter
20:55:39 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153430&oldid=153337 * Buckets * (+93)
20:56:47 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153431&oldid=153336 * Buckets * (+94)
20:57:04 <esolangs> [[Happy]] N https://esolangs.org/w/index.php?oldid=153432 * Buckets * (+2460) Created page with ": ''<span style="color:#000000;">T</span><span style="color:#00000088;">h</span>e title of t<span style="color:#00000088;">h</span>is article is not correct because of tec<span style="color:#00000088;">h</span>nical limitations. T<span style="color:#00000088;">h</span>e c
20:59:43 <esolangs> [[User talk:Hotcrystal0/Sandbox]] N https://esolangs.org/w/index.php?oldid=153433 * I am islptng * (+79) Created page with "trans-what? "Girl" is definitely not an object in CGoL. conlay's game of wife?"
21:00:41 <esolangs> [[Happy]] M https://esolangs.org/w/index.php?diff=153434&oldid=153432 * Buckets * (+71)
21:04:41 <esolangs> [[User talk:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153435&oldid=153433 * I am islptng * (+541)
21:04:49 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153436&oldid=153347 * Buckets * (+2)
21:09:35 <esolangs> [[S*n]] M https://esolangs.org/w/index.php?diff=153437&oldid=153178 * Buckets * (+3)
21:34:58 <esolangs> [[Lythnology]] https://esolangs.org/w/index.php?diff=153438&oldid=152726 * Stkptr * (+479) Finite state automata
22:29:18 <esolangs> [[Special:Log/delete]] delete * Ais523 * deleted "[[Talk:Fun 2 code]]": possibly a copyright violation even if it isn't, it's definitely offtopic (writing an esolang about something does not cause that thing to become ontopic), and the talk page is not about the esolang on the page it's attached to
22:38:33 <esolangs> [[Talk:Fun 2 code]] N https://esolangs.org/w/index.php?oldid=153439 * Hotcrystal0 * (+171) Created page with "The Python interpreter is wrong. It should be three words that rhyme, not four. ~~~~"
22:39:41 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153440&oldid=153423 * Hotcrystal0 * (+123)
22:53:51 <esolangs> [[EmojiCoder]] https://esolangs.org/w/index.php?diff=153441&oldid=138302 * Stkptr * (+18) Total, no infinite looping
23:18:24 <esolangs> [[LLL]] https://esolangs.org/w/index.php?diff=153442&oldid=79042 * Stkptr * (-11) Finite state automata
23:20:30 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153443&oldid=153416 * Hotcrystal0 * (+44)
23:20:37 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153444&oldid=153443 * Hotcrystal0 * (+1)
23:20:47 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153445&oldid=153444 * Hotcrystal0 * (+0)
23:37:01 -!- molson_ has joined.
23:38:57 -!- molson has quit (Ping timeout: 248 seconds).
23:39:30 <esolangs> [[User:PrySigneToFry]] https://esolangs.org/w/index.php?diff=153446&oldid=153385 * I am islptng * (+2) /* Like */
23:40:56 <esolangs> [[Hexagon says jump to line a if cell b is n and increment cell b by c if cell b equals d and output cell b is cell b equals e.]] M https://esolangs.org/w/index.php?diff=153447&oldid=124464 * Buckets * (+0) /* Truth machine */
23:51:35 <esolangs> [[User:Hotcrystal0/This page is this page]] N https://esolangs.org/w/index.php?oldid=153448 * Hotcrystal0 * (+147) Created page with "This page is [https://conwaylife.com/wiki/User:Hotcrystal0/This_page_is_this_page this page.] <small>correlation does not imply causation.</small>"
23:51:53 <esolangs> [[User:I am islptng]] https://esolangs.org/w/index.php?diff=153449&oldid=153358 * I am islptng * (+579) /* Others */
00:03:37 -!- mtm has quit (Ping timeout: 252 seconds).
00:05:50 -!- mtm has joined.
00:13:00 -!- 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).
00:44:46 -!- lynndotpy6 has quit (Quit: bye bye).
00:45:41 -!- lynndotpy6 has joined.
00:58:48 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153450&oldid=153402 * Int-e * (+143) /* Haskell Code */ ini: Add cases that start with a right excursion and end left from there, e.g. }<<<}< ; the equivalent }}<}}<<< is longer. For now, generate both. No change in output.
01:02:37 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] https://esolangs.org/w/index.php?diff=153451&oldid=153392 * I am islptng * (-107637) Replaced content with "This becomes l-stroke oscillator(or spotlight if you want) <pre> x = 7, y = 18, rule = B2cei3acqr4ekqr5aeir6-cn/S1e2ak3aekqr4cjknrty5eikq6cknSuper 2.A2B$2.2AB$.A3B$.A3B$2.3B$2.3B$2.3B$2.3B$2.3B$2.3B
01:04:07 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] https://esolangs.org/w/index.php?diff=153452&oldid=153451 * I am islptng * (+5343)
01:08:41 <zzo38> In a UNIX system, do they sometimes add user groups that are for everyone except one user?
01:13:19 <korvo> Sometimes there might be a sense in which every user is interactive, including users whose login shells are /bin/false or otherwise disabled, *except* for `nobody`. But even in that case, dynamic users are excluded too.
01:13:36 <korvo> Oh, I forgot the first part: no, but there are groupings of users that do the same thing.
01:15:56 * korvo eager to learn about other answers
02:05:16 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153453&oldid=153405 * PrySigneToFry * (+81)
02:11:41 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153454&oldid=153453 * PrySigneToFry * (+14)
02:16:02 <esolangs> [[Talk:Hexagon says jump to line a if cell b is n and increment cell b by c if cell b equals d and output cell b is cell b equals e.]] N https://esolangs.org/w/index.php?oldid=153455 * Stkptr * (+458) Created page with "==Computational class== Only a finite amount of cells can be referenced in a finite program. Assuming unbounded cells and the increment argument is n
02:40:08 <esolangs> [[Pentagon says bitwise shift right a by b and bitwise andnot c, negate the result and add d, store it to e, if it is less than or equal to zero, goto line f.]] N https://esolangs.org/w/index.php?oldid=153456 * I am islptng * (+304) Created page with "It's inspired by [[Hexagon says jump to line a if cell b is n and increment cell b by c if cell b equals d and output
02:45:46 <esolangs> [[Pentagon says bitwise shift right a by b and bitwise andnot c, negate the result and add d, store it to e, if it is less than or equal to zero, goto line f.]] https://esolangs.org/w/index.php?diff=153457&oldid=153456 * I am islptng * (+613)
02:51:23 <esolangs> [[Stuck]] https://esolangs.org/w/index.php?diff=153458&oldid=44702 * Stkptr * (+2475) Turing complete
04:34:28 <esolangs> [[Talk:1]] N https://esolangs.org/w/index.php?oldid=153459 * Stkptr * (+216) Created page with "==Computational class== This is actually likely Turing complete since <code>*</code> can both multiply and divide. See [[counter machine]]. ~~~~"
04:38:19 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153460&oldid=153254 * Stkptr * (+368) /* Is the StackBBQ interpreter canonical? */ new section
04:51:37 <esolangs> [[Smalc]] https://esolangs.org/w/index.php?diff=153461&oldid=111556 * Stkptr * (-22)
04:54:21 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153462&oldid=153460 * I am islptng * (+587) /* Is the StackBBQ interpreter canonical? */
04:54:24 -!- molson_ has quit (Ping timeout: 260 seconds).
04:58:41 <esolangs> [[StackBBQ]] https://esolangs.org/w/index.php?diff=153463&oldid=151052 * I am islptng * (+23) /* Interpreter */
04:58:47 -!- molson has joined.
04:59:18 <esolangs> [[User talk:Stkptr]] N https://esolangs.org/w/index.php?oldid=153464 * I am islptng * (+558) Created page with "Alright. Help me rewrite it. --~~~~"
05:06:44 <esolangs> [[Hello Plus Plus/Compiler]] https://esolangs.org/w/index.php?diff=153465&oldid=109132 * Superstitionfreeblog * (+4052)
05:24:17 <esolangs> [[Hello++]] https://esolangs.org/w/index.php?diff=153466&oldid=148747 * Superstitionfreeblog * (+24) /* Compiler */
05:45:16 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153467&oldid=153440 * PrySigneToFry * (+962)
06:12:21 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153468&oldid=153454 * PrySigneToFry * (+141)
06:12:53 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153469&oldid=153468 * PrySigneToFry * (+22)
06:14:28 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153470&oldid=153469 * PrySigneToFry * (+94)
06:33:53 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153471&oldid=153467 * I am islptng * (+706)
07:07:09 <esolangs> [[User talk:Stkptr]] https://esolangs.org/w/index.php?diff=153472&oldid=153464 * Stkptr * (+325)
07:07:19 <esolangs> [[StackBBQ]] https://esolangs.org/w/index.php?diff=153473&oldid=153463 * Stkptr * (+1137) Rewrite the summary to match the behavior of the example interpreter
07:11:54 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
07:12:44 -!- Lord_of_Life has joined.
07:16:47 <esolangs> [[StackBBQ]] https://esolangs.org/w/index.php?diff=153474&oldid=153473 * I am islptng * (-39)
07:24:47 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153475&oldid=153462 * Stkptr * (+100) /* Is the StackBBQ interpreter canonical? */
07:30:37 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153476&oldid=153471 * PrySigneToFry * (+53)
08:34:49 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153477&oldid=153380 * PrySigneToFry * (+269)
08:40:07 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153478&oldid=153477 * PrySigneToFry * (+259)
08:43:35 -!- Sgeo has quit (Read error: Connection reset by peer).
08:46:55 <esolangs> [[Talk:1]] https://esolangs.org/w/index.php?diff=153479&oldid=153459 * PkmnQ * (+277)
09:29:20 <esolangs> [[Reflecto]] N https://esolangs.org/w/index.php?oldid=153480 * QuantumV * (+3120) Created page with "Reflecto is an esoteric 2d stack-based programming language inspired [[Befunge]] and [[Fish]] made by [[User:QuantumV]]. Each instruction is a single symbol on a text file that performs operations like reflecting the instruction pointer, manipulating stack values, and
09:29:48 <esolangs> [[MazeLang]] N https://esolangs.org/w/index.php?oldid=153481 * PrySigneToFry * (+3413) Created page with ":''This is not a Works-in-Progress. You're invited to add more examples, or more commands(if LXGW WenKai Mono GB supports and shows full-width).'' MazeLang is designed by PSTF which is inspired by [[Befunge]]. It uses ideographs instead of letters. = Plot intro
09:29:52 <esolangs> [[Reflecto]] https://esolangs.org/w/index.php?diff=153482&oldid=153480 * QuantumV * (-24)
09:30:36 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153483&oldid=153431 * PrySigneToFry * (+15)
09:31:57 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153484&oldid=153483 * QuantumV * (+15)
09:33:56 <esolangs> [[Factorial]] https://esolangs.org/w/index.php?diff=153485&oldid=151111 * QuantumV * (+71)
09:34:22 <esolangs> [[Factorial]] https://esolangs.org/w/index.php?diff=153486&oldid=153485 * QuantumV * (+2) oops forgot a =
09:36:11 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=153487&oldid=151803 * QuantumV * (+88)
09:38:24 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=153488&oldid=151513 * QuantumV * (+61)
09:38:48 <esolangs> [[User talk:None1]] https://esolangs.org/w/index.php?diff=153489&oldid=151433 * PrySigneToFry * (+923) /* You're currently not active now. */ new section
09:57:59 -!- 029AAR240 has changed nick to Koen_.
09:58:03 -!- Koen_ has changed nick to Ae_.
09:58:12 -!- Ae_ has changed nick to someonetookmynic.
09:59:04 -!- someonetookmynic has changed nick to LKoen.
10:13:02 <esolangs> [[Special:Log/newusers]] create * Cobl703 * New user account
10:16:59 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153490&oldid=153320 * Cobl703 * (+137)
10:52:45 <esolangs> [[User:I am islptng]] https://esolangs.org/w/index.php?diff=153491&oldid=153449 * PrySigneToFry * (+22) More harder to input but still valid in website name.
11:13:43 -!- ^Dan has joined.
11:16:42 <esolangs> [[MazeLang]] https://esolangs.org/w/index.php?diff=153492&oldid=153481 * PrySigneToFry * (-26)
11:24:25 <esolangs> [[MazeLang]] https://esolangs.org/w/index.php?diff=153493&oldid=153492 * PrySigneToFry * (+12)
11:28:23 -!- ^Dan has left.
11:41:40 -!- amby has joined.
12:09:55 <esolangs> [[PrySigneToFry-complete]] https://esolangs.org/w/index.php?diff=153494&oldid=153393 * PrySigneToFry * (+230)
13:40:51 <esolangs> [[Abacus Computer]] https://esolangs.org/w/index.php?diff=153495&oldid=153331 * TomosCode * (+29)
14:31:18 -!- craigo has joined.
14:33:56 <esolangs> [[Special:Log/newusers]] create * Dgrilawidbanana * New user account
14:36:55 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153496&oldid=153490 * Dgrilawidbanana * (+230) /* Introductions hehe */
15:02:02 -!- Sgeo has joined.
15:22:45 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153497&oldid=153476 * PrySigneToFry * (+905) /* Where are you from, and how can you understand Chinese? */ new section
15:26:58 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153498&oldid=153497 * Hotcrystal0 * (+245)
15:41:09 <esolangs> [[User:PrySigneToFry/Sandbox/My Rate to the user that I know]] https://esolangs.org/w/index.php?diff=153499&oldid=151639 * PrySigneToFry * (+15)
16:31:18 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153500&oldid=153420 * Hotcrystal0 * (+61)
16:51:31 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153501&oldid=153500 * Hotcrystal0 * (+242)
16:59:52 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153502&oldid=153501 * Hotcrystal0 * (+1083)
17:05:42 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153503&oldid=153502 * Hotcrystal0 * (+92)
17:44:40 <esolangs> [[Reflecto]] https://esolangs.org/w/index.php?diff=153504&oldid=153482 * QuantumV * (+29) /* Instructions */
18:08:20 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[Hello Plus Plus/Compiler]] to [[Hello++/Compiler]]
18:08:20 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[Talk:Hello Plus Plus/Compiler]] to [[Talk:Hello++/Compiler]]
18:25:30 -!- lynndotpy6 has quit (Quit: bye bye).
18:26:41 -!- lynndotpy6 has joined.
18:44:49 -!- tromp has joined.
19:11:55 <esolangs> [[User talk:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153509&oldid=153407 * Hotcrystal0 * (+179)
19:55:03 <esolangs> [[Blockfunge]] https://esolangs.org/w/index.php?diff=153510&oldid=120391 * Stkptr * (+821) Turing complete
20:00:49 <esolangs> [[Talk:1]] https://esolangs.org/w/index.php?diff=153511&oldid=153479 * Stkptr * (+363) /* Computational class */
20:28:32 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153512&oldid=153430 * Buckets * (+10)
20:28:42 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153513&oldid=153484 * Buckets * (+11)
20:29:06 <esolangs> [[Hats]] N https://esolangs.org/w/index.php?oldid=153514 * Buckets * (+17568) Created page with "Hats or <table cellpadding=0 cellspacing=0 border=0><tr></tr><tr><td style="width:10px;height:10px;background:rgb(256,256,256)"></td><td style="width:10px;height:10px;background:rgb(256,256,256)"></td><td style="width:10px;height:10px;background:rgb(256,256,256)"></td><td
20:30:12 <esolangs> [[Hats]] M https://esolangs.org/w/index.php?diff=153515&oldid=153514 * Buckets * (+7)
21:03:12 <zzo38> I would want to add TRON-8 as a "Designate Other Code Set (With Standard Return)" into ISO 2022, and possibly also make up TRON-7 for use where 7-bit codes are required (e.g. MIDI), and a ISO 2022 code for that too (since ISO 2022 otherwise works with 7-bit codes as well as 8-bit codes, but only for character codes that do not use DOCS)
21:05:41 <zzo38> Some early protocols and formats were only using 7-bit codes, but later was made 8-bit clean, and then later software again ended up effectively restricting them to 7-bit codes due to the requirement of 8-bit codes to be UTF-8, so it end up being reversed too!!!
22:15:09 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
22:16:50 -!- Lord_of_Life has joined.
22:48:01 -!- molson has quit (Remote host closed the connection).
22:48:03 -!- molson_ has joined.
23:40:46 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:43:06 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153516&oldid=153503 * Hotcrystal0 * (-1417)
00:30:15 <int-e> . o O ( typedef double Int; )
00:37:03 <zzo38> Is it the attempt to be confusing, or something else, or both?
00:37:20 <int-e> just a line of code I just wrote unironically
00:37:53 <zzo38> O, OK, but why is it written like that?
00:39:04 <int-e> (doubles work as 54 bit signed integers if all your divisions are exact)
00:39:28 <int-e> it's written like that because I was switching between 32 and 64 bit ints before
00:49:18 -!- 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).
00:53:39 <esolangs> [[Universal machine]] https://esolangs.org/w/index.php?diff=153517&oldid=128366 * Stkptr * (+3613) Weak universal
01:10:06 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153518&oldid=153498 * I am islptng * (+566) /* */ new section
03:22:48 <esolangs> [[Universal machine]] https://esolangs.org/w/index.php?diff=153519&oldid=153517 * Stkptr * (+72) /* Weak universal machines */ Error about the 2,3 machine
03:32:08 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153520&oldid=153424 * PrySigneToFry * (+455)
03:34:46 <esolangs> [[User:Trump Bot]] N https://esolangs.org/w/index.php?oldid=153521 * PrySigneToFry * (+10) Created page with "{{Banned}}"
03:47:55 -!- craigo has quit (Quit: Leaving).
04:41:44 <esolangs> [[Universal machine]] https://esolangs.org/w/index.php?diff=153522&oldid=153519 * Ais523 * (+22) /* Example universal machines */ fix misleading language, which made it easy to confuse the implementing and implemented languages
05:59:52 <esolangs> [[User talk:ColorfulGalaxy's CA discoveries]] https://esolangs.org/w/index.php?diff=153523&oldid=153520 * I am islptng * (+160)
06:03:39 <esolangs> [[User talk:]] https://esolangs.org/w/index.php?diff=153524&oldid=147681 * PrySigneToFry * (+216) /* Bad news */ new section
06:22:08 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153525&oldid=153518 * PrySigneToFry * (+923) /* EternalGolf */ new section
06:34:23 <esolangs> [[MazeLang]] https://esolangs.org/w/index.php?diff=153526&oldid=153493 * PrySigneToFry * (+606)
07:11:42 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
07:11:59 -!- Lord_of_Life_ has joined.
07:13:23 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:21:49 -!- tromp has joined.
08:01:03 -!- sprock has quit (Quit: brb).
08:07:24 -!- sprock has joined.
08:15:28 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153527&oldid=153525 * PrySigneToFry * (+10) Fixed festival
08:32:06 -!- sprock has quit (Ping timeout: 252 seconds).
08:32:56 -!- sprock has joined.
08:33:00 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:40:14 -!- sprock has quit (Ping timeout: 272 seconds).
08:43:48 -!- sprock has joined.
08:58:30 <esolangs> [[Reflecto]] M https://esolangs.org/w/index.php?diff=153528&oldid=153504 * QuantumV * (+95) fixonacci
09:43:02 <esolangs> [[Abacus Computer]] https://esolangs.org/w/index.php?diff=153529&oldid=153495 * TomosCode * (+27)
09:43:49 <esolangs> [[Beta]] https://esolangs.org/w/index.php?diff=153530&oldid=141251 * PkmnQ * (-26) category was added because of ambiguity, but [[Vague]] isn't categorized as uncomputable
09:48:26 <esolangs> [[Reflecto]] M https://esolangs.org/w/index.php?diff=153531&oldid=153528 * QuantumV * (-83)
10:21:33 -!- Sgeo has quit (Read error: Connection reset by peer).
10:48:53 <esolangs> [[Brain:D]] https://esolangs.org/w/index.php?diff=153532&oldid=80678 * PkmnQ * (-26) should ambiguity make a language uncomputable?
11:52:36 <esolangs> [[Subst]] N https://esolangs.org/w/index.php?oldid=153533 * Hakerh400 * (+14360) +[[Subst]] (part 1 due to filter rules)
11:53:08 <esolangs> [[Subst]] https://esolangs.org/w/index.php?diff=153534&oldid=153533 * Hakerh400 * (+37460) (part 2)
11:53:21 <esolangs> [[Subst]] https://esolangs.org/w/index.php?diff=153535&oldid=153534 * Hakerh400 * (+2288) (part 3)
11:54:25 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153536&oldid=153513 * Hakerh400 * (+12) +[[Subst]]
11:54:38 <esolangs> [[User:Hakerh400]] https://esolangs.org/w/index.php?diff=153537&oldid=151549 * Hakerh400 * (+12) +[[Subst]]
11:57:08 <esolangs> [[Subst]] M https://esolangs.org/w/index.php?diff=153538&oldid=153535 * Hakerh400 * (+498)
11:57:30 <esolangs> [[Subst]] M https://esolangs.org/w/index.php?diff=153539&oldid=153538 * Hakerh400 * (-497)
12:04:48 -!- mtm has quit (Ping timeout: 272 seconds).
12:06:04 -!- mtm has joined.
12:08:53 <esolangs> [[User talk:Hakerh400]] https://esolangs.org/w/index.php?diff=153540&oldid=152728 * Hakerh400 * (+359) /* Afth Language */
12:11:22 <esolangs> [[Subst]] https://esolangs.org/w/index.php?diff=153541&oldid=153539 * Hakerh400 * (+23)
12:23:53 -!- amby has joined.
13:40:14 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153542&oldid=153527 * Hotcrystal0 * (+184)
13:43:26 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153543&oldid=153516 * Hotcrystal0 * (+33)
13:48:58 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153544&oldid=153542 * Hotcrystal0 * (+166)
13:51:36 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153545&oldid=153544 * Hotcrystal0 * (+243)
13:58:51 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153546&oldid=153543 * Hotcrystal0 * (+21)
14:23:53 -!- alec3660 has quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.).
14:24:30 -!- alec3660 has joined.
14:24:42 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153547&oldid=153545 * I am islptng * (+576) /* How well can you speak Chinese? */ new section
14:33:18 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153548&oldid=153547 * Hotcrystal0 * (+250)
14:33:26 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153549&oldid=153548 * Hotcrystal0 * (+1)
15:28:19 <esolangs> [[Category talk:Unknown-based]] N https://esolangs.org/w/index.php?oldid=153550 * Leomok2009 * (+155) Created page with "What does this category mean? Does it mean that the user does not know if the esolang is stack-based, cell-based etc because it is difficult to categorise?"
15:30:29 <esolangs> [[Category talk:Unknown-based]] https://esolangs.org/w/index.php?diff=153551&oldid=153550 * Leomok2009 * (+54)
15:37:28 <esolangs> [[Category:Unknown-based]] https://esolangs.org/w/index.php?diff=153552&oldid=153342 * Leomok2009 * (+284)
15:37:42 <esolangs> [[Category:Unknown-based]] https://esolangs.org/w/index.php?diff=153553&oldid=153552 * Leomok2009 * (+0)
15:38:21 <esolangs> [[Category:Unknown-based]] https://esolangs.org/w/index.php?diff=153554&oldid=153553 * Leomok2009 * (+33)
16:38:10 -!- int-e_ has joined.
16:38:40 -!- int-e_ has quit (Client Quit).
17:26:18 -!- tromp has joined.
17:26:36 <esolangs> [[Subst]] M https://esolangs.org/w/index.php?diff=153555&oldid=153541 * Hakerh400 * (+0) /* Terms */
17:27:27 <esolangs> [[Subst]] M https://esolangs.org/w/index.php?diff=153556&oldid=153555 * Hakerh400 * (-1) /* Terms */
17:28:40 <esolangs> [[Subst]] M https://esolangs.org/w/index.php?diff=153557&oldid=153556 * Hakerh400 * (+28) /* Terms */
18:47:04 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:48:19 -!- tromp has joined.
19:00:37 <esolangs> [[Uncomputable]] N https://esolangs.org/w/index.php?oldid=153558 * Stkptr * (+24) Redirect to computable, this is an important concept so it should be easily accessible
19:06:01 <esolangs> [[Computable]] M https://esolangs.org/w/index.php?diff=153559&oldid=147930 * Corbin * (+148) Not "simulated", but "recognized". Very important nuance.
19:10:33 <esolangs> [[Brain:D]] https://esolangs.org/w/index.php?diff=153560&oldid=153532 * Corbin * (+184) A second reason that this one isn't TC: it's trivial to recognize.
19:21:28 <esolangs> [[Computational class]] https://esolangs.org/w/index.php?diff=153561&oldid=90249 * Stkptr * (-1) /* Turing-completeness */ Constant function bounded storage machines are FSMs
19:23:52 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153562&oldid=153450 * Int-e * (+3624) /* Using Timbuk */ new section
19:26:44 <esolangs> [[BitChanger Busy beaver]] https://esolangs.org/w/index.php?diff=153563&oldid=152858 * Int-e * (+85) /* Confirmed optimal */ 15 is done
19:28:23 <esolangs> [[BitChanger Busy beaver/Proof]] M https://esolangs.org/w/index.php?diff=153564&oldid=153562 * Int-e * (+11) /* Size 14 holdouts */ wordify
19:32:24 <esolangs> [[BitChanger Busy beaver]] M https://esolangs.org/w/index.php?diff=153565&oldid=153563 * Int-e * (+0) /* Confirmed optimal */ count
19:33:03 <esolangs> [[BitChanger Busy beaver]] M https://esolangs.org/w/index.php?diff=153566&oldid=153565 * Int-e * (+0) /* Confirmed optimal */ tnuoc
19:37:08 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153567&oldid=153564 * Int-e * (+65) Add links for context.
19:43:32 <int-e> (That was fun, but surely there's a better tool than Timbuk for this... ideally one that can guess its own approximations for constructing automata.)
19:44:10 <int-e> (That = https://esolangs.org/wiki/Bitchanger_Busy_beaver/Proof#Using_Timbuk for those that ignore the esolangs bot)
19:53:18 <esolangs> [[Oracle machine]] N https://esolangs.org/w/index.php?oldid=153568 * Stkptr * (+5055) Create page
19:56:25 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153569&oldid=153567 * Int-e * (+31) /* Using Timbuk */ fix typo, clarify where the current cell is
20:14:54 <esolangs> [[Brain:D]] https://esolangs.org/w/index.php?diff=153570&oldid=153560 * Corbin * (+1528) Compute the partition function.
20:16:45 <esolangs> [[List of complexity classes]] M https://esolangs.org/w/index.php?diff=153571&oldid=153076 * Corbin * (+4) /* R */ Bluelink.
20:24:08 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153572&oldid=153512 * Buckets * (+235)
20:25:12 <int-e> korvo: I've worked in term rewriting and Thomas Genet is a big name there, so I couldn't help being aware... heck I even worked with tree automata. But this is the first time I've actually used that tool.
20:25:19 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153573&oldid=153536 * Buckets * (+236)
20:25:27 <esolangs> [[Oracle]] https://esolangs.org/w/index.php?diff=153574&oldid=51332 * Stkptr * (+64) Link to oracle machine
20:25:56 <esolangs> [[Fe]] N https://esolangs.org/w/index.php?oldid=153575 * Buckets * (+2854) Created page with "{{wrongtitle|title=<div style="position: relative;"><span style="position: absolute; top: 0; left: 0px; z-index: 2;">F<big><sup><sub><big>e</big></sub></sup></big></span><span style="position: relative;"><big><sub></sub></big></span></div>}} <div style="position: relative;">
20:26:36 <int-e> But there's plenty I don't know. Do people have automata based nontermination checkers for Turing machines (in the context of searching for busy beavers)? Because that's basically what's happening here... the BitChanger program is treated as a Turing machine.
20:27:45 <esolangs> [[Fe]] M https://esolangs.org/w/index.php?diff=153576&oldid=153575 * Buckets * (+74)
20:28:28 <esolangs> [[Oracle machine]] https://esolangs.org/w/index.php?diff=153577&oldid=153568 * Stkptr * (+64) /* Computational class of machines with a halting oracle */
20:29:32 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153578&oldid=153569 * Int-e * (+4) /* Using Timbuk */ specify version used
20:42:01 <esolangs> [[List of complexity classes]] https://esolangs.org/w/index.php?diff=153579&oldid=153571 * Corbin * (+785) /* EXP */ NP ranges over polynomial amounts of random bits, not exponential. Also, explain why P is a subclass of EXP with a couple examples.
20:56:04 <esolangs> [[List of complexity classes]] https://esolangs.org/w/index.php?diff=153580&oldid=153579 * Corbin * (+504) /* PSPACE */ List out some specific useful examples for us.
21:00:06 -!- Sgeo has joined.
21:19:31 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:25:28 -!- tromp has joined.
21:28:55 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153581&oldid=153436 * Buckets * (+512)
21:31:47 <esolangs> [[Computable]] https://esolangs.org/w/index.php?diff=153582&oldid=153559 * Stkptr * (+838) expound
21:46:24 -!- craigo has joined.
21:47:25 <esolangs> [[Brain:D]] https://esolangs.org/w/index.php?diff=153583&oldid=153570 * Stkptr * (+647) /* Computational complexity */
21:48:02 <esolangs> [[Brain:D]] https://esolangs.org/w/index.php?diff=153584&oldid=153583 * Stkptr * (+41) The class is unknown due to ill-defined execution
22:06:27 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153585&oldid=153546 * Hotcrystal0 * (+55)
22:21:22 -!- Hoolootwo has quit (Quit: ZNC 1.8.2+deb2+deb11u1 - https://znc.in).
22:22:44 -!- Hooloovoo has joined.
22:42:43 <esolangs> [[Brain:D]] https://esolangs.org/w/index.php?diff=153586&oldid=153584 * Corbin * (+192) /* Computational complexity */ Don't remove a claim just because you don't grok it.
23:09:31 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:54:16 <esolangs> [[Special:Log/delete]] delete * Ais523 * deleted "[[Category:Unknown-based]]": undiscussed category
00:02:45 -!- mtm has quit (Ping timeout: 276 seconds).
00:05:28 -!- mtm has joined.
00:56:19 <esolangs> [[Quantum Nothing]] M https://esolangs.org/w/index.php?diff=153587&oldid=147494 * I am islptng * (+53)
00:57:33 <esolangs> [[Brain:D]] M https://esolangs.org/w/index.php?diff=153588&oldid=153586 * I am islptng * (+61)
00:57:57 <esolangs> [[Brain:D]] https://esolangs.org/w/index.php?diff=153589&oldid=153588 * I am islptng * (+0)
01:00:59 -!- 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:02:14 <esolangs> [[Quantum Nothing]] https://esolangs.org/w/index.php?diff=153590&oldid=153587 * I am islptng * (+132)
01:22:44 <esolangs> [[User:PrySigneToFry]] https://esolangs.org/w/index.php?diff=153591&oldid=153446 * PrySigneToFry * (+577)
01:33:55 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153592&oldid=153478 * PrySigneToFry * (-2)
02:16:12 <esolangs> [[User:PrySigneToFry]] https://esolangs.org/w/index.php?diff=153593&oldid=153591 * PrySigneToFry * (+0)
02:32:00 <esolangs> [[Talk:Fugue]] https://esolangs.org/w/index.php?diff=153594&oldid=82504 * PrySigneToFry * (+189)
02:36:04 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=153595&oldid=153592 * I am islptng * (+160)
03:05:02 -!- op_4 has quit (Remote host closed the connection).
03:05:32 -!- op_4 has joined.
03:34:12 <esolangs> [[Osaka-Lang]] https://esolangs.org/w/index.php?diff=153596&oldid=152650 * Stkptr * (+308) Total
03:50:51 <esolangs> [[Talk:Iterate]] https://esolangs.org/w/index.php?diff=153597&oldid=153036 * Aadenboy * (+650) /* arbitrary memory */ iterate is Probably turing complete
04:12:04 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153598&oldid=152637 * Stkptr * (+1559) Probably Turing complete
04:21:41 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153599&oldid=153470 * PrySigneToFry * (+0)
04:44:49 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153600&oldid=153598 * Stkptr * (+3) /* Disambiguity */ Fix parser
04:49:54 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153601&oldid=153578 * Int-e * (+3236) /* Using Timbuk */ works for size 16 too
04:53:54 <esolangs> [[BitChanger Busy beaver]] https://esolangs.org/w/index.php?diff=153602&oldid=153566 * Int-e * (+87) /* Confirmed optimal */ so it looks like size 16 allows just one more step than size 15, interesting
05:01:29 <esolangs> [[Talk:BitChanger Busy beaver]] https://esolangs.org/w/index.php?diff=153603&oldid=153104 * Int-e * (+306) things I did
05:11:08 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153604&oldid=153600 * Stkptr * (+1666) Clarify the examples
05:14:22 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153605&oldid=153604 * Stkptr * (+188) /* Reset current bit */ Note that it is incorrect
05:28:51 <esolangs> [[OIIAOIIA]] https://esolangs.org/w/index.php?diff=153606&oldid=152293 * Stkptr * (+83)
05:45:14 <esolangs> [[Talk:OIIAOIIA]] https://esolangs.org/w/index.php?diff=153607&oldid=152420 * I am islptng * (+65)
05:48:50 <esolangs> [[Fucktion]] https://esolangs.org/w/index.php?diff=153608&oldid=152062 * Stkptr * (+71)
05:52:13 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=153609&oldid=153601 * Int-e * (+261) /* Haskell Code */ The code never generated programs with more than one top-level loop. Output up to size 16 is unchanged.
05:52:17 <esolangs> [[XXXoYYY]] https://esolangs.org/w/index.php?diff=153610&oldid=152177 * Stkptr * (+6) It is bounded
06:22:37 -!- slavfox has quit (Read error: Connection reset by peer).
06:24:42 -!- slavfox has joined.
07:12:24 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
07:14:19 -!- Lord_of_Life has joined.
07:18:11 -!- FreeFull has joined.
07:22:42 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153611&oldid=153599 * PrySigneToFry * (+30)
07:40:20 -!- tromp has joined.
08:08:57 -!- lisbeths has joined.
08:09:19 -!- Sgeo has quit (Read error: Connection reset by peer).
08:10:10 -!- Sgeo has joined.
08:10:31 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:22:40 -!- tromp has joined.
08:40:42 <esolangs> [[Afth]] https://esolangs.org/w/index.php?diff=153612&oldid=152486 * Stkptr * (+185) Turing complete
08:48:35 <esolangs> [[SCOOP]] https://esolangs.org/w/index.php?diff=153613&oldid=152139 * Stkptr * (-12) It's almost certainly Turing complete, the only question is infinite looping, which might be able to be done with recursion, mutual recursion, some specific infinite loop I haven't noticed, so on
08:50:10 <esolangs> [[Zidryx myno]] https://esolangs.org/w/index.php?diff=153614&oldid=151966 * Stkptr * (+77)
09:00:16 <esolangs> [[Varia]] https://esolangs.org/w/index.php?diff=153615&oldid=152897 * Stkptr * (+501)
09:09:55 <esolangs> [[Talk:Iterate]] https://esolangs.org/w/index.php?diff=153616&oldid=153597 * Stkptr * (+565) /* arbitrary memory */
09:13:04 <esolangs> [[Brain:D]] https://esolangs.org/w/index.php?diff=153617&oldid=153589 * Stkptr * (+107) /* See also */
09:29:28 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:50:45 -!- tromp has joined.
10:19:45 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153618&oldid=153611 * PrySigneToFry * (+108)
10:25:34 <esolangs> [[Bussin X]] https://esolangs.org/w/index.php?diff=153619&oldid=147762 * RaiseAfloppaFan3925 * (+5990) Rebuilt the page entirely to fix the problems it once had.
10:34:07 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153620&oldid=153618 * PrySigneToFry * (+84)
10:45:19 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153621&oldid=153620 * PrySigneToFry * (+508)
10:51:52 <esolangs> [[lang]] https://esolangs.org/w/index.php?diff=153622&oldid=144920 * PrySigneToFry * (+234)
10:59:06 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153623&oldid=153573 * RaiseAfloppaFan3925 * (+31) Added FaceDev's programming languages (Bussin X and Yappacino)
11:08:12 -!- lisbeths has quit (Quit: Connection closed for inactivity).
12:02:48 -!- mtm has quit (Ping timeout: 244 seconds).
12:05:30 -!- mtm has joined.
12:13:00 -!- Sgeo has quit (Read error: Connection reset by peer).
12:36:30 -!- amby has joined.
12:46:03 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:52:54 -!- tromp has joined.
13:25:46 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=153624&oldid=153621 * PrySigneToFry * (+183)
15:10:23 <esolangs> [[Basilisk]] https://esolangs.org/w/index.php?diff=153625&oldid=150593 * PkmnQ * (-3) can presumably execute [[Banana Scheme]] programs
15:17:31 <esolangs> [[BytFuck]] https://esolangs.org/w/index.php?diff=153626&oldid=76577 * Kaveh Yousefi * (+574) Added a hyperlink to my implementation of the BytFuck programming language on GitHub and altered the Unimplemented category tag to Implemented.
15:18:29 <esolangs> [[BytFuck]] https://esolangs.org/w/index.php?diff=153627&oldid=153626 * Kaveh Yousefi * (+830) Introduced an examples section with three incipial members, this being a bitwise character replication program, a truth-machine, and a negating cat program.
16:19:43 <esolangs> [[Basilisk]] https://esolangs.org/w/index.php?diff=153628&oldid=153625 * Stkptr * (+322) /* Computational class */ Uncomputable, even if you can summon Basilisks
16:25:33 -!- mtm has quit (Read error: Connection reset by peer).
16:26:10 -!- mtm has joined.
16:43:02 -!- mtm has quit (Ping timeout: 272 seconds).
16:45:36 -!- mtm has joined.
17:03:48 -!- mtm has quit (Ping timeout: 246 seconds).
17:07:31 -!- mtm has joined.
17:27:45 <esolangs> [[Oracle machine]] https://esolangs.org/w/index.php?diff=153629&oldid=153577 * Stkptr * (+158) /* Computational class of machines with a halting oracle */
18:52:08 <esolangs> [[/Interpreters]] N https://esolangs.org/w/index.php?oldid=153630 * Stkptr * (+3137) Add an implementation in Python
18:53:59 <esolangs> [[Special:Log/newusers]] create * Zopium * New user account
18:55:34 <esolangs> [[]] https://esolangs.org/w/index.php?diff=153631&oldid=153605 * Stkptr * (+272) Add infobox with link to implementations
19:07:27 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153632&oldid=153496 * Zopium * (+165)
19:07:42 <esolangs> [[User:Zopium]] N https://esolangs.org/w/index.php?oldid=153633 * Zopium * (+291) Created page with "'''''Hello, world!''''' I go by '''Zo''' or just '''Zopium'''. I'm also interested in computers, I code in JavaScript, C, Python (list sorted in which i code in the most). Please note that I'm not from an English speaking country, so there might be grammatical er
19:16:36 -!- craigo has quit (Ping timeout: 252 seconds).
19:41:13 -!- Sgeo has joined.
19:45:02 <esolangs> [[JC-0715]] https://esolangs.org/w/index.php?diff=153634&oldid=151812 * Stkptr * (+36)
19:54:02 <esolangs> [[TMIDL]] https://esolangs.org/w/index.php?diff=153635&oldid=151833 * Stkptr * (+50) It implicitly has bounded memory
19:57:09 <esolangs> [[ToArrowScript]] https://esolangs.org/w/index.php?diff=153636&oldid=151997 * Stkptr * (+71) It's probably Turing complete, just would need a while loop
20:04:02 <esolangs> [[10 digits, 100 digytes]] https://esolangs.org/w/index.php?diff=153637&oldid=151703 * Stkptr * (+6) /* Categories and References */ It has finite memory
20:04:21 <esolangs> [[Jp32]] https://esolangs.org/w/index.php?diff=153638&oldid=151649 * Stkptr * (+36)
20:08:32 <esolangs> [[Fun Video Game]] https://esolangs.org/w/index.php?diff=153639&oldid=152277 * Zopium * (+167) /* Implementations */
20:13:39 <esolangs> [[SATire]] https://esolangs.org/w/index.php?diff=153640&oldid=151455 * Stkptr * (+29) The examples imply that there is arbitrary conditional looping and the ability to store at least two unbounded stacks
20:17:52 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153641&oldid=153581 * Buckets * (+61)
20:24:56 <int-e> SATire... oh meh it's the other SAT
20:26:19 <esolangs> [[Heighto]] M https://esolangs.org/w/index.php?diff=153642&oldid=153345 * Buckets * (-27)
20:26:37 <esolangs> [[Height]] M https://esolangs.org/w/index.php?diff=153643&oldid=153344 * Buckets * (-27)
20:26:37 <shachaf> Oh, I was wondering what that could have been.
20:26:54 <shachaf> But then I looked at it and had the same reaction.
21:00:34 <esolangs> [[Coffee is the answer]] https://esolangs.org/w/index.php?diff=153644&oldid=151428 * Stkptr * (+124)
22:04:25 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153645&oldid=153623 * Buckets * (+11)
22:05:10 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153646&oldid=153572 * Buckets * (+10)
22:05:19 <esolangs> [[Omit]] N https://esolangs.org/w/index.php?oldid=153647 * Buckets * (+1447) Created page with "Omit is an Esoteric programming language created by [[User:Buckets]] in 2020. (There is 1 Restriction, When 'Omit Letter' Happens, The word count afterwards must Omit That letter from Usage for that command.) {| class="wikitable" |- ! Commands !! Instructions |- | Omit e |
23:31:47 <esolangs> [[Talk:Omniglot]] https://esolangs.org/w/index.php?diff=153648&oldid=151398 * Stkptr * (+329) /* Why does it have to do the same thing? */ new section
23:32:10 <esolangs> [[Omniglot]] https://esolangs.org/w/index.php?diff=153649&oldid=151382 * Stkptr * (+23)
23:37:22 <esolangs> [[Brainfffffuck]] https://esolangs.org/w/index.php?diff=153650&oldid=151315 * Stkptr * (+12) This is nontrivially Turing complete, a proof sketch should be provided
00:11:55 <esolangs> [[Decorat]] N https://esolangs.org/w/index.php?oldid=153651 * I am islptng * (+1301) Created page with "<b>Decorat</b> is a type of assembly language designed by islptng. == Syntax == Each line is: keyword argument For example: put 15 To define a label, write labelname: put 15 To use a label, enclose it in <> : jnz <labelname> Comment, like other assembly, is a
00:20:41 <esolangs> [[Decorat]] https://esolangs.org/w/index.php?diff=153652&oldid=153651 * I am islptng * (+368)
00:21:22 <esolangs> [[Decorat]] https://esolangs.org/w/index.php?diff=153653&oldid=153652 * I am islptng * (+11)
00:57:47 -!- 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:14:06 -!- Everything has joined.
02:59:54 -!- Everything has quit (Ping timeout: 272 seconds).
03:01:10 -!- Everything has joined.
03:36:15 -!- craigo has joined.
03:54:29 -!- lynndotpy6 has quit (Quit: bye bye).
03:55:43 -!- lynndotpy6 has joined.
04:00:00 -!- Taneb0 has quit (Quit: I seem to have stopped.).
04:01:11 -!- Taneb has joined.
05:03:46 -!- mtm has quit (Ping timeout: 248 seconds).
05:06:40 -!- mtm has joined.
05:28:41 <esolangs> [[User talk:]] https://esolangs.org/w/index.php?diff=153654&oldid=153524 * * (+157) /* Bad news */
05:37:21 <esolangs> [[StormScript]] https://esolangs.org/w/index.php?diff=153655&oldid=153213 * I am islptng * (-1886) Replaced content with "{{Distinguish/Confusion|StormLang}} {{WIP}}"
06:28:08 -!- ski has joined.
06:59:55 -!- Sgeo has quit (Read error: Connection reset by peer).
07:08:32 -!- craigo has quit (Read error: Connection reset by peer).
07:08:50 -!- craigo has joined.
07:12:18 -!- Lord_of_Life_ has joined.
07:12:39 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
07:13:41 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
08:15:14 -!- craigo has quit (Quit: Leaving).
08:16:03 -!- craigo has joined.
08:37:59 <esolangs> [[Ixth]] https://esolangs.org/w/index.php?diff=153656&oldid=133280 * Stkptr * (+1754) Turing complete
08:39:41 <esolangs> [[Ixth]] M https://esolangs.org/w/index.php?diff=153657&oldid=153656 * Stkptr * (+56) /* Commands */
09:16:18 -!- Everything has quit (Ping timeout: 276 seconds).
10:56:40 -!- FreeFull has quit.
11:02:57 <esolangs> [[10 digits, 100 digytes]] https://esolangs.org/w/index.php?diff=153658&oldid=153637 * PrySigneToFry * (-6) "It supports infinity cell" "3 and 4 means variable"
13:17:44 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153659&oldid=153475 * Hotcrystal0 * (+123) /* A new esolang */ new section
13:17:55 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153660&oldid=153659 * Hotcrystal0 * (+93)
13:45:58 -!- amby has joined.
13:56:25 <esolangs> [[User talk:Zopium]] N https://esolangs.org/w/index.php?oldid=153661 * MihaiEso * (+407) Created page with "==Quote== :''Please note that I'm not from an English speaking country'' - What non-English speaking country? France? Germany? Italy? ~~~~"
15:05:43 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153662&oldid=153085 * Calculus is fun * (+57) /* Operators & variables */
15:29:53 -!- craigo has quit (Quit: Leaving).
16:29:29 -!- yayimhere has joined.
16:29:52 <yayimhere> hello I haven't been here for a long time. so hi.
16:49:15 -!- yayimhere has quit (Quit: Ping timeout (120 seconds)).
16:53:10 -!- yayimhere has joined.
16:59:37 -!- yayimhere has quit (Quit: Ping timeout (120 seconds)).
17:00:12 -!- yayimhere has joined.
17:02:48 -!- yayimhere has quit (Client Quit).
17:05:09 -!- mtm has quit (Ping timeout: 252 seconds).
17:06:29 -!- mtm has joined.
17:10:07 -!- yayimhere has joined.
17:11:19 <yayimhere> ok so we all know that the more rules a system has the more complex it is
17:11:54 <yayimhere> but is it possible to make an esolang that with approximate exponential rate will, with increase in rules increase complexity
17:12:03 <yayimhere> like the more rules you add the more complexity
17:12:17 <yayimhere> and that relation is approx exponetial
17:17:34 -!- yayimhere has quit (Quit: Ping timeout (120 seconds)).
17:21:12 <esolangs> [[User:RocketRace]] https://esolangs.org/w/index.php?diff=153663&oldid=149674 * RocketRace * (+44)
17:40:24 -!- yayimhere has joined.
17:47:49 <yayimhere> wait that would mean (I think) that at a finite amount of rules it would be Turing complete
17:48:02 <yayimhere> AND that at any amount higher than that I would be more than Turing complete
17:48:58 <korvo> yayimhere: Welcome back.
17:49:53 <korvo> It depends on exactly what you mean by "complexity". If you're thinking of space and time resources, then yes.
17:51:30 <yayimhere> I mean complexity as in like, how many states are achivable
17:52:22 <korvo> For example, a dictionary is exponentially big in the number of letters in the underlying alphabet.
17:53:00 <korvo> Think of words as (accepting) states of automata over that alphabet.
17:56:33 <korvo> yayimhere: None of this has much to do with Turing-completeness though; a TC system must have infinitely many states.
18:03:34 <yayimhere> most musical things you can make into drive
18:03:47 <yayimhere> like if you have an effect you can usually make it some sort of drive
18:03:56 <yayimhere> did that with the values in a language
18:14:31 -!- lynndotpy6 has quit (Quit: bye bye).
18:15:46 -!- lynndotpy6 has joined.
18:22:06 -!- yayimhere has quit (Ping timeout: 240 seconds).
18:29:42 -!- molson_ has quit (Remote host closed the connection).
18:30:09 -!- molson has joined.
18:32:18 -!- molson has quit (Remote host closed the connection).
18:34:45 -!- molson has joined.
18:37:19 -!- molson has quit (Remote host closed the connection).
18:37:42 -!- molson has joined.
18:41:34 -!- molson has quit (Remote host closed the connection).
18:45:41 -!- molson has joined.
18:47:39 -!- molson has quit (Remote host closed the connection).
18:50:19 -!- molson has joined.
19:01:58 -!- molson has quit (Remote host closed the connection).
19:17:24 -!- molson has joined.
19:32:32 -!- molson has quit (Quit: Leaving).
19:34:26 -!- molson has joined.
19:37:22 -!- molson_ has joined.
19:42:43 -!- molson has quit (Quit: Leaving).
19:52:38 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153664&oldid=153660 * I am islptng * (+549) /* A new esolang */
20:02:51 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=153665&oldid=152723 * Aadenboy * (+1127) rehaul
20:41:57 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153666&oldid=153664 * Hotcrystal0 * (+135)
20:42:27 <esolangs> [[User:Hotcrystal0/Deep]] N https://esolangs.org/w/index.php?oldid=153667 * Hotcrystal0 * (+3) Created page with "WIP"
20:42:54 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153668&oldid=153585 * Hotcrystal0 * (+40)
20:43:35 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153669&oldid=153668 * Hotcrystal0 * (+6)
20:45:18 <esolangs> [[Talk:]] N https://esolangs.org/w/index.php?oldid=153670 * Hotcrystal0 * (+223) Created page with "Can I add hotcrystal0s version which replaces the ** with [] for improved readability and being interpreted easier? ~~~~"
20:45:53 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153671&oldid=153666 * Hotcrystal0 * (+54) /* A new esolang */
20:49:34 <esolangs> [[Rotate-Flak]] N https://esolangs.org/w/index.php?oldid=153672 * Hotcrystal0 * (+38) Created page with "{{lowercase}} #REDIRCT [[afefoj-Flak]]"
20:49:50 <esolangs> [[Rotate-Flak]] https://esolangs.org/w/index.php?diff=153673&oldid=153672 * Hotcrystal0 * (+1)
20:49:59 <esolangs> [[Rotate-Flak]] https://esolangs.org/w/index.php?diff=153674&oldid=153673 * Hotcrystal0 * (+0) Redirected page to [[Afefoj-Flak]]
20:50:22 <esolangs> [[User:Aadenboy]] M https://esolangs.org/w/index.php?diff=153675&oldid=153665 * Aadenboy * (-119) /* other esolangs */
20:51:36 <esolangs> [[User talk:PkmnQ]] https://esolangs.org/w/index.php?diff=153676&oldid=152603 * Hotcrystal0 * (+132)
21:04:38 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153677&oldid=153667 * Hotcrystal0 * (+76)
21:05:05 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153678&oldid=153677 * Hotcrystal0 * (+2)
21:06:15 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153679&oldid=153645 * Buckets * (+11)
21:07:51 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153680&oldid=153646 * Buckets * (+10)
21:08:08 <esolangs> [[HAps]] N https://esolangs.org/w/index.php?oldid=153681 * Buckets * (+840) Created page with "HAps is an Esoteric programming language created by [[User:Buckets]] in 2021. (It can Only Register 12 commands at a time and only 2 cells and starts with 1.) {| class="wikitable" |- ! Commands !! Instructions |- | 0 || +1. |- | 1 || -1. |- | 2 || Flip to the other cell. |-
21:14:23 -!- molson_ has quit (Quit: Leaving).
21:21:33 -!- molson has joined.
21:22:09 -!- ski has quit (Ping timeout: 260 seconds).
21:41:57 -!- molson has quit (Quit: Leaving).
22:00:57 <zzo38> My idea of the operating system design involved, one of the things it is, is that it is expect that if all inputs of a program are the same (regardless of how much time it takes to send those inputs) then the observable behaviour of the program will also be the same. Furthermore, you can filter and redirect I/O like on UNIX but this applies to all I/O rather than only standard I/O.
22:01:11 <zzo38> I think there are many advantages of doing these things in these ways.
22:04:51 <zzo38> Also, I found a weather by finger (graph.no; send a blank line to port 79 for a description)
22:36:01 -!- Sgeo has joined.
22:50:07 <isabella> is getting the current time an input
22:50:20 <b_jonas> zzo38: complete determinism for the programs is probably not possible to implement efficiently on current hardware
22:51:18 <zzo38> Yes. Getting the current time is an input, too. A program needs permission to determine the current date/time, like it does for any other I/O.
22:52:42 <isabella> e.g. if i do local=global++ from two different threads and global is an atomic counter
22:53:26 <zzo38> Threads handled by the operating system cannot share memory like that, although you can have threads that are not handled by the operating system.
22:56:16 <zzo38> In order to handle these security guarantees, it will be necessary to disallow threads from sharing memory, although you can use "green threads" instead, in which case they can share memory. (Alternatively, shared memory may be restricted by the use of locks, etc; even then, it will be necessary to handle by the I/O system so that this can be overridden.)
22:57:13 <isabella> or equivalent things on other architectures
22:57:30 <zzo38> Yes, they would have to be disabled.
22:57:59 <zzo38> Those would be disabled too.
22:58:39 <isabella> so what do we do once we have this
22:59:24 <isabella> all forms of async io also disabled? unix signals disabled?
22:59:57 <zzo38> (And, if the program tries to execute an unimplemented instruction, the operating system might be able to emulate it, e.g. bit manipulation extensions.)
23:00:57 <zzo38> It is not UNIX, so it does not have UNIX signals (although it might have something similar). Async is still possible, although you can use proxies or modify the operating system to guarantee the order if necessary.
23:03:59 <zzo38> (Asynchronous I/O is sometimes necessary; there are reasons why it will be necessary to keep it, although there will be ways to work around it.)
23:16:04 <zzo38> b_jonas: Which specific details will make it inefficient? (On some systems, using a hypervisor might help, maybe.) (Also, as I said there are a few compromises necessary but it will be needed to be possible to work around these easily.)
23:20:49 <b_jonas> zzo38: last time I looked, I had the impression that CPUs are built such that it's hard to eliminate all the non-determinacy from programs that deliberately try to be non-deterministic by doing weird things, and I think the only way around that would be some kind of overkill like a whole virtual machine. but I could be wrong.
23:21:21 <b_jonas> or perhaps you'd need some kind of compiler
23:29:14 <sprout> deterministic compilation is an area of study
23:29:58 <sprout> I once was called into a meeting with weird C behavior and the only thing I could tell them is that you don't have any guarantees whatsoever
23:30:06 <sprout> which was the wrong answer :/
23:30:58 <sprout> https://blog.conan.io/2019/09/02/Deterministic-builds-with-C-C++.html
23:34:09 <sprout> so, not only do we have non-deterministic cpus at this point, we also have non-deterministic compilers
23:34:21 <sprout> but industry has been pushing back on that
23:41:37 <zzo38> Making different CPU designs (and other details of the computer hardware) might be another possible consideration (although it can also be emulated on other types of computers, perhaps)
23:53:16 <korvo> Makes me think of Galois theory for programs. Like, the input-determines-output requirement is merely requiring a program to implement a function, right?
23:59:47 <esolangs> [[StackBBQ]] https://esolangs.org/w/index.php?diff=153682&oldid=153474 * Stkptr * (+901) Total
00:12:23 <sprout> sure, but a large number of applications have timing requirements
00:12:36 <sprout> and then everything turns out broken
00:13:35 <sprout> your compiler might use a random generator in some heuristical optimization, and the cpu might have a branch predictor which -despite it's name- gives unpredictable behavior
00:17:25 <zzo38> Timing would still be possible, if the program is given a capability that can be triggered according to the amount of time that has passed (all I/O would be using capabilities, in this system). That is how I would have any programs dealing with time to work. (This is a bit like timerfd_create, but it is not a system call; you need to be given the capability when starting the program or from another capability.)
00:42:07 -!- 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).
00:42:45 <korvo> Timing requirements don't ruin the Galois theory, I think. Instead of just talking about functions, we'd talk about functions equipped with some writing monad.
00:50:40 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153683&oldid=153678 * Hotcrystal0 * (+76)
01:11:59 <esolangs> [[Talk:.exe]] N https://esolangs.org/w/index.php?oldid=153684 * Baldibacak * (+146) /* minecraft is not written in .exe */ new section
01:45:10 <esolangs> [[User:Zip]] https://esolangs.org/w/index.php?diff=153685&oldid=103764 * Zip * (+139)
01:49:07 <esolangs> [[User:Zip/Thue/CT]] N https://esolangs.org/w/index.php?oldid=153686 * Zip * (+1073) Created page with "[[Bitwise Cyclic Tag#The_language_CT|CT]] interpreter in Thue. '''NOTE:''' Assumes that lines before the final <code>::=</code> that don't contain <code>::=</code> are comments. This is the behavior of Delic's Thue interpreter, but probably most interpreters don't
02:09:18 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=153687&oldid=152249 * Hotcrystal0 * (+34)
02:56:58 -!- craigo has joined.
02:58:45 <esolangs> [[User talk:Stkptr]] https://esolangs.org/w/index.php?diff=153688&oldid=153472 * I am islptng * (+593)
03:01:13 <esolangs> [[User talk:Hotcrystal0/Deep]] N https://esolangs.org/w/index.php?oldid=153689 * I am islptng * (+563) Created page with "I hope it'll be Turing-Complete. --~~~~"
03:05:55 <esolangs> [[User:I am islptng/Draft for Esolang]] N https://esolangs.org/w/index.php?oldid=153690 * I am islptng * (+51) Created page with "<b>Esolang</b> is a language designed by islptng."
04:05:34 -!- Sgeo_ has joined.
04:09:00 -!- Sgeo has quit (Ping timeout: 265 seconds).
04:29:34 <esolangs> [[StackBBQ2]] N https://esolangs.org/w/index.php?oldid=153691 * I am islptng * (+748) Created page with "StackBBQ2 is a computation model / esolang created by islptng. It has a stack that holds bits, a queue Q that holds bits, and a stack P that holds queues. == Instructions == <code>1</code> push True to stack. <br> <code>0</code> pops a, pops b, and pops c if !(a&
04:36:42 <esolangs> [[StackBBQ2]] https://esolangs.org/w/index.php?diff=153692&oldid=153691 * I am islptng * (-98)
04:42:28 <esolangs> [[StackBBQ2]] https://esolangs.org/w/index.php?diff=153693&oldid=153692 * I am islptng * (-33)
04:47:08 <esolangs> [[StackBBQ2]] https://esolangs.org/w/index.php?diff=153694&oldid=153693 * I am islptng * (+793)
04:52:53 <esolangs> [[StackBBQ2]] https://esolangs.org/w/index.php?diff=153695&oldid=153694 * I am islptng * (-124) /* Interpreter */
04:57:15 <esolangs> [[3]] https://esolangs.org/w/index.php?diff=153696&oldid=147633 * I am islptng * (+1) "ZCX" -> "I am"
05:02:38 <esolangs> [[User talk:Stkptr]] https://esolangs.org/w/index.php?diff=153697&oldid=153688 * Stkptr * (+944)
05:04:35 -!- mtm has quit (Ping timeout: 265 seconds).
05:06:19 <zzo38> Also, some versions of UNIX philosophy specify to use text, but I would instead use a type-length-value format, somewhat like DER, although there are some differences, including what types are available, as well as other differences.
05:06:27 -!- mtm has joined.
05:09:47 <zzo38> UNIX philosophy also intend every program should be made as a filter, and in this case it should also intend, and the TLV format can be used. (The operating system does not enforce to use the TLV format, but it should be expected, that the included software, and other software designed for it, should use it. However, it does enforce that all I/O can be filtered.)
05:11:39 <zzo38> (And, also, it would not use Unicode.)
05:13:33 <zzo38> (There are three character string types: ASCII string, TRON string, and string of 8-bit characters of a specified character set (of which ASCII is a special case, which is common enough to be given its own code; ASCII also has a special case having to do with keyboard handling in command mode (rather than other modes such as text entry mode)).)
05:15:43 <zzo38> I did make a list of what some of the data types will be. In addition to those ones, there is also the common stuff such as integer, sequence, key/value list, boolean, null, etc; but also such things as: text document, diagram, time series, tagged data, calculation, etc.
05:22:48 -!- ski has joined.
05:31:54 <esolangs> [[User:Stkptr]] https://esolangs.org/w/index.php?diff=153698&oldid=126825 * Stkptr * (+1107)
05:45:01 <esolangs> [[User talk:Stkptr]] https://esolangs.org/w/index.php?diff=153699&oldid=153697 * I am islptng * (+16) /* StackBBQ */
06:00:21 <esolangs> [[Piet-Q]] https://esolangs.org/w/index.php?diff=153700&oldid=74480 * Stkptr * (-12)
06:09:12 <zzo38> (I would also have many other differences. Such as, application programs can request what character set is wanted for text input, as well as other keyboard modes. Another will be locales working. Some things do not belong in the locale setting and belong in a different setting instead, and some things do belong but should be made differently than other systems are doing.)
06:29:21 <esolangs> [[ParScript]] https://esolangs.org/w/index.php?diff=153701&oldid=140505 * Stkptr * (+100) /* Turing-completeness */
06:31:11 <esolangs> [[Spleenmap]] https://esolangs.org/w/index.php?diff=153702&oldid=39734 * Stkptr * (-6) FSM
06:35:52 <esolangs> [[User:I am islptng/List of "x bits, y bytes"]] https://esolangs.org/w/index.php?diff=153703&oldid=151641 * I am islptng * (+36)
06:41:34 -!- Trigon has quit (Ping timeout: 260 seconds).
06:42:30 <esolangs> [[2 digits, 50 digytes]] N https://esolangs.org/w/index.php?oldid=153704 * I am islptng * (+514) Created page with "This language has 99 5-digit number memory, numbered 00-98. (99 is used for I/O.) Instruction set: 0 let f t: f = t 1 add f t: f += t 2 sub f t: f -= t 3 mul f t: f *= t (mod 10<sup>5</sup>) 4 div f t: f /= t 5 mod f t: f %= t 6 ant f t: f &= ~t
06:44:26 <esolangs> [[User:I am islptng]] https://esolangs.org/w/index.php?diff=153705&oldid=153491 * I am islptng * (+71) /* My esolangs */
06:44:47 <esolangs> [[User:I am islptng]] https://esolangs.org/w/index.php?diff=153706&oldid=153705 * I am islptng * (+27)
06:50:42 -!- Sgeo_ has quit (Read error: Connection reset by peer).
07:12:13 -!- Lord_of_Life_ has joined.
07:13:26 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
07:13:34 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:21:20 -!- Guest26 has joined.
07:21:50 -!- Guest26 has quit (Client Quit).
07:32:17 <esolangs> [[User:C0ffee]] https://esolangs.org/w/index.php?diff=153707&oldid=152616 * C0ffee * (+11)
07:33:59 <esolangs> [[User:C0ffee]] https://esolangs.org/w/index.php?diff=153708&oldid=153707 * C0ffee * (+14)
07:34:30 <esolangs> [[User:C0ffee]] https://esolangs.org/w/index.php?diff=153709&oldid=153708 * C0ffee * (-16)
07:34:44 <esolangs> [[User:C0ffee]] https://esolangs.org/w/index.php?diff=153710&oldid=153709 * C0ffee * (+6)
07:36:11 <esolangs> [[User:C0ffee]] https://esolangs.org/w/index.php?diff=153711&oldid=153710 * C0ffee * (-2)
08:29:00 <esolangs> [[Targs]] https://esolangs.org/w/index.php?diff=153712&oldid=124719 * Stkptr * (+11) no loops
10:42:43 -!- ais523 has joined.
10:43:19 <ais523> <b_jonas> zzo38: last time I looked, I had the impression that CPUs are built such that it's hard to eliminate all the non-determinacy from programs that deliberately try to be non-deterministic by doing weird things, and I think the only way around that would be some kind of overkill like a whole virtual machine. but I could be wrong. ← most of that sort of nondeterminism is only observable using either a) race conditions, b) observation of timing, or c)
10:43:20 <ais523> obscure and not-widely-used CPU instructions
10:44:01 <ais523> a) and b) can mostly be eliminated by locking programs to a single thread at a time, and giving them no access to any timing sources
10:44:16 <ais523> c) is harder because not all such instructions can be turned off
10:44:49 <ais523> it's easy enough to enforce determinism in programs if you compile them from some other language rather than just running arbitrary machine code, though
10:50:12 <b_jonas> yes, plus there's a lot of timing inefficiency, so you have to be prepared to wait a LOT for a program that happens to run slower than expected so that the timeout can't be detected
10:50:53 <b_jonas> and yes, compiling with a trusted compiler does make it much easier
11:30:54 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153713&oldid=153683 * Hotcrystal0 * (+444)
12:18:37 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153714&oldid=153713 * Hotcrystal0 * (+116)
12:19:08 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153715&oldid=153714 * Hotcrystal0 * (+0)
12:19:23 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153716&oldid=153715 * Hotcrystal0 * (-75)
12:19:43 <esolangs> [[User talk:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153717&oldid=153689 * Hotcrystal0 * (+135)
12:24:53 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153718&oldid=153716 * Hotcrystal0 * (+226)
12:50:10 <ais523> b_jonas: actually the "I only want to run code that's been compiled with a trusted compiler" problem is one that I will probably have to end up solving at some point
12:50:45 <ais523> you would need the compiler to somehow sign that the code had been compiled correctly, but it's not obvious how you would prevent incorrectly code being signed the same way
12:51:51 <ais523> I guess the solutions involve either a) some sort of central compile-and-sign authority which everyone trusts (Apple is moving in that direction, although I don't think they're there yet), or b) every computer has its own set of signing keys, and does a compile-and-sign with its own keys, and those keys aren't readable by anything but the compiler (e.g. because you don't run code without first proving that it cannot read them)
12:55:48 <ais523> oh, you could also have a list somewhere of hashes of code that was known to have been compiled correctly, that's probably a better option
12:56:21 <ais523> i.e. you build it yourself and then add the hash of the resulting code to the list of code that's known to be OK – that doesn't require blocking read access to the list to untrusted programs, just write access
12:57:00 <b_jonas> ais523: yes, I think java and webassembly are kind of trying to work that way, with a slower compiler emitting an intermediate representation that can be verified and compiled on the machine that will run it. but deterministic execution is harder than just that. I was thinking a bit about that for multiplayer games where one machine can send untrusted code that other machines have to run as well, and
12:57:06 <b_jonas> you want the code to run deterministically on multiple machines so that the game state stays synced among machines.
12:57:24 <ais523> I think nondeterminism is a capability
13:03:49 <b_jonas> there's also multiple grades of deterministic execution, eg. (a) do you want to allow remote side effects within an execution environment eg. because the program can read the address of allocations, which are the same everywhere becuase you're using the same deterministic allocator, but can depend on what unrelated parts of the code do, (b) do you want stability among different versions of the compiler
13:03:55 <b_jonas> or runtime so if you upgrade the result of the execution doesn't change, or even everything specified so deterministically that a clean reimplementation from the spec can result in the same execution, (c) do you want the same results on different underlying hardware, especially CPU architecture, (d) do you want to forbid timeouts, guarantee that if the code doesn't time out on one machine then you can
13:04:01 <b_jonas> run to completion in a reasonable time on your machine too.
13:05:33 <ais523> I guess you also have to make decisions like "make allocation addresses deterministic" versus "make the program unable to act differently based on allocation addresses"
13:07:27 <ais523> something I have been thinking about for a while is that it might be more efficient for programs to control their own memory map
13:07:33 <b_jonas> ais523: yes, the latter you do by allowing the user to declare user-defined types that have a nominal address, which you just assign sequentially using a global counter, regardless of the actual address
13:07:44 <ais523> i.e. it's the program rather than the OS that decides where in virtual memory to allocate the allocations
13:08:02 <ais523> that way you could get some tagging bits for free
13:08:28 <ais523> e.g. you could tell what allocator allocated an object just by looking at a particular part of the address
13:08:28 <b_jonas> also dictionaries are hard to define in a deterministic way
13:08:49 <ais523> (that said, I don't know much about the performance of weirdly placed memory mappings)
13:09:16 <b_jonas> and even sorting if you allow the user to define custom comparison functions
13:09:32 <b_jonas> there's like ten different compromises for how you can handle these
13:09:49 <ais523> oh, I see, the problem is not so much making it determinstic as defining what the deterministic behaviour is
13:09:53 <ais523> because many of the details will be really arbitrary
13:10:59 <ais523> for sorting, I think it is sufficient to a) make the sort stable and b) force the comparison function to be entirely pure, i.e. it cannot affect the program in any way other than its return value
13:11:08 <b_jonas> the OS assigning addresses isn't really a problem unless you want to make a very efficient compiled program, I just want a less efficient interpreter so there the actual absolute address won't matter, only the relative address within the small number of memory pools into which I address relatively with an index
13:12:19 <ais523> I think forcing the address might be a simpler solution anyway than having a separate, parallel address scheme – although it would depend on what program you were running, most likely
13:12:46 <b_jonas> but if you want to control the actual address, you are already allowed to do that, but of course then you may need some architecture-dependent code because not all addresses may be allowed
13:12:52 <ais523> the main disadvantage of forcing the address is that you don't get ASLR, although I guess in a deterministic execution scheme ASLR wouldn't matter as it couldn't have any effect on the program anyway
13:13:10 <ais523> yes, it is possible to control the address even on modern computers, just people don't normally bother
13:13:25 <ais523> my plans for that are along the lines of "keep the kernel the same but replace the dynamic loader"
13:14:00 <b_jonas> ais523: I don't think even ASLR would be incompatible, as long as you don't let the untrusted program get a pointer to anything that's randomized, only to areas that you allocate, and you divide the address space to areas that the randomization can use and ones to where you allocate in advance
13:14:23 <ais523> right, or you could randomize certain bits of the pointer but not others
13:14:29 <b_jonas> I just think you could run into problems on an alien architecture where eg. all your pointers are negative, if on normal architectures all your pointers are positive, or something like that
13:14:41 <ais523> ASLR already doesn't randomize the low bits
13:15:07 <ais523> b_jonas: oh, my plans involved the compiler taking advantage of this but the source code not taking advantage of it, so it can easily be architecture-specific
13:16:14 <b_jonas> I don't see how ASLR not randomizing the low bits helps
13:16:35 <ais523> it doesn't – but my plan would involve not randomizing some of the middle bits
13:16:45 <ais523> and that doesn't seem conceptually different from not randomizing the low bits
13:20:19 <b_jonas> I mean, if ASLR doesn't randomize the high bits so eg. your runtime is loaded above 0x00004000_00000000 and you allocate the untrusted program's data below 0x00004000_00000000 then you have no conflicts; but if ASLR doesn't randomize the low bits so it always loads at a 16k boundary that won't help you because you want continuous chunks so you can't just use memory that's not 16k aligned for the
13:21:13 <ais523> right, tagging bits should ideally be as high as possible (while staying within virtual address space) so that you have more contiguous memory if you need it – although I fear that might make the page tables less efficient
13:22:04 <b_jonas> what? no, tagging bits should be low because you'll only have pointers to aligned data anyway
13:22:28 <b_jonas> well that depends on what you mean by tagging bits
13:22:30 <ais523> I mean, "free" tagging bits that you get by actually allocating the memory there, rather than masking them off
13:22:44 <ais523> if you are masking away the bits then you want them at the bottom
13:24:25 <b_jonas> I haven't thought much about these actual addresses because I'm mostly thinking of a not too optimized interpreter implementation
13:25:25 <b_jonas> so I wouldn't handle native pointers, but like indexes into a small fixed number of arenas that the interpreter can allocate anywhere
13:25:58 <ais523> I'm basically thinking of a similar system except where the arenas have fixed addresses
13:26:15 <b_jonas> that would also add to memory safety because even if I mess up and have a corrupted pointer data it will point into valid memory of the simulated program
13:26:52 <b_jonas> (there may be multiple types of pointers that point to different sets of arenas, but that's fine)
13:27:17 <ais523> oh, I see, the reason it increases safety is that it is necessarily pointing to data rather than, say, a return address on the stack
13:27:25 -!- sprout has quit (Remote host closed the connection).
13:27:33 <ais523> and because you are protected from wild pointers already, it doesn't matter if you corrupt a pointer value
13:28:18 <ais523> I have been considering a scheme where allocations are power-of-2 size and array indexing is masked to wrap around the array – that would gain memory safety in a similar manner (and as a bonus fixes one of the variants of Spectre)
13:29:42 <b_jonas> and what I really want is that some of the arenas are just mapped read-only fixed data that's created when I compile the interpreter, so that there's little overload for spinning up new interpreter instances, even if they load a lot of built-in objects, to avoid the stereotypical 90s problem where a tiny little Java program needs to consume hundreds of megabytes to load some libraries. or ideally it's
13:29:48 <b_jonas> not even separate arenas, but just a read-only section mapped over the start of the normal arena, so that half of the code doesn't even have to distinguish the read-only and read-write section
13:30:17 <ais523> one of the motivations for my "free tagging" scheme in the first place was so that you could have string pointers that could point to either heap data or static data, and deallocate them only if they were on the heap
13:30:44 <ais523> I guess you can do that even without free-tagging – it's possible to check where the static data is and/or where the heap is – but there might be some overhead in storing the location
13:30:52 <ais523> that seems pretty similar to your plans
13:33:25 <b_jonas> and this kind of memory safety can be used either alone, which is useful if you want a C interpreter that can run existing C code, since type safety can't be guaranteed there; or you can use it together with a type system and memory safety system that guarantees that all pointers are valid, as another line of defense
13:37:01 -!- sprout has joined.
13:56:15 <esolangs> [[Special:Log/newusers]] create * Huywallz * New user account
14:00:06 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=153719&oldid=153632 * Huywallz * (+188) /* Introductions */
14:09:06 -!- amby has joined.
14:20:17 <esolangs> [[Stillbrithiarngialpielroinuslislislislislisquattostamiswackilduasliesfris]] N https://esolangs.org/w/index.php?oldid=153720 * PrySigneToFry * (+4416) Created page with "Stillbrithiarngialpielroinuslislislislislisquattostamiswackilduasliesfris (or Stilbrith if you can't pronounce this, or even Stilllbrillbritillbrithithiarithiarngiarngiarngialbrithiarngialpialpielpi
14:20:35 <esolangs> [[Stillbrithiarngialpielroinuslislislislislisquattostamiswackilduasliesfris]] https://esolangs.org/w/index.php?diff=153721&oldid=153720 * PrySigneToFry * (+1)
14:23:31 <esolangs> [[User:PrySigneToFry/Sandbox]] https://esolangs.org/w/index.php?diff=153722&oldid=152928 * PrySigneToFry * (+100)
14:26:35 <esolangs> [[Talk:Albuquerque challenge]] https://esolangs.org/w/index.php?diff=153723&oldid=151708 * PrySigneToFry * (+2351)
14:28:26 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153724&oldid=153381 * Hotcrystal0 * (+36)
14:28:56 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153725&oldid=153382 * Hotcrystal0 * (-7)
14:29:07 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=153726&oldid=153724 * Hotcrystal0 * (-4)
14:31:04 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153727&oldid=153725 * Hotcrystal0 * (+338)
14:38:49 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=153728&oldid=153727 * Hotcrystal0 * (-1) fixed Arabian -> Arabic
14:45:57 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153729&oldid=153718 * Hotcrystal0 * (+92)
14:46:42 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153730&oldid=153729 * Hotcrystal0 * (+20)
14:47:14 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153731&oldid=153730 * Hotcrystal0 * (+2)
14:47:41 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153732&oldid=153731 * Hotcrystal0 * (+42)
14:48:01 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153733&oldid=153732 * Hotcrystal0 * (+12)
14:48:09 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153734&oldid=153733 * Hotcrystal0 * (+1)
14:48:22 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153735&oldid=153734 * Hotcrystal0 * (+18)
14:53:21 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153736&oldid=153735 * Hotcrystal0 * (+138)
14:56:22 -!- yayimhere has joined.
15:01:47 <esolangs> [[Stillbrithiarngialpielroinuslislislislislisquattostamiswackilduasliesfris]] https://esolangs.org/w/index.php?diff=153737&oldid=153721 * Hotcrystal0 * (+4)
15:02:19 <esolangs> [[Stillbrithiarngialpielroinuslislislislislisquattostamiswackilduasliesfris]] https://esolangs.org/w/index.php?diff=153738&oldid=153737 * Hotcrystal0 * (+8)
15:02:30 <esolangs> [[Stillbrithiarngialpielroinuslislislislislisquattostamiswackilduasliesfris]] https://esolangs.org/w/index.php?diff=153739&oldid=153738 * Hotcrystal0 * (+6)
15:06:18 <esolangs> [[User:Hotcrystal0/User chart]] https://esolangs.org/w/index.php?diff=153740&oldid=151992 * Hotcrystal0 * (+250)
15:07:23 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] N https://esolangs.org/w/index.php?oldid=153741 * Hotcrystal0 * (+71) Created page with "islptng made one for conwaylife.com, so why not the TBG forums as well?"
15:09:07 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] https://esolangs.org/w/index.php?diff=153742&oldid=153741 * Hotcrystal0 * (+232)
15:09:18 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] https://esolangs.org/w/index.php?diff=153743&oldid=153742 * Hotcrystal0 * (+10)
15:09:42 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] https://esolangs.org/w/index.php?diff=153744&oldid=153743 * Hotcrystal0 * (+0)
15:12:18 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153745&oldid=153669 * Hotcrystal0 * (+130)
15:12:28 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153746&oldid=153745 * Hotcrystal0 * (-1) Typo fix
15:12:56 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=153747&oldid=153687 * Hotcrystal0 * (+0) capitalization fix
15:13:49 <esolangs> [[User talk:Gilbert189]] https://esolangs.org/w/index.php?diff=153748&oldid=140294 * Hotcrystal0 * (+237)
15:17:09 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=153749&oldid=153445 * Hotcrystal0 * (+98)
15:20:41 <esolangs> [[User talk:PkmnQ]] https://esolangs.org/w/index.php?diff=153750&oldid=153676 * Hotcrystal0 * (+117)
15:20:56 <esolangs> [[User talk:PkmnQ]] https://esolangs.org/w/index.php?diff=153751&oldid=153750 * Hotcrystal0 * (+93) forgot signature
15:22:59 -!- yayimhere has quit (Quit: Client closed).
15:24:12 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] https://esolangs.org/w/index.php?diff=153752&oldid=153744 * Hotcrystal0 * (+45)
15:25:38 <esolangs> [[User:Hotcrystal0/User chart]] https://esolangs.org/w/index.php?diff=153753&oldid=153740 * Hotcrystal0 * (+10)
15:26:06 <esolangs> [[User:Hotcrystal0/User chart]] https://esolangs.org/w/index.php?diff=153754&oldid=153753 * Hotcrystal0 * (-315) Replaced content with "This is cancelled."
15:32:28 <korvo> ais523: Non-determinism is a property of the machine, not an optional capability, because it's a structural property. Categorically speaking, Rel and Set don't have the same monoidal structure.
15:32:47 <korvo> I'm a little surprised to hear folks talking of trusting cryptography over proofs. Cryptography might not be well-founded.
15:34:08 <korvo> If there's interest, I could add a section to the E article, or start an entirely new article, about the design of data structures and algorithms for repeatable deterministic behavior when replicated across a network.
15:35:00 <esolangs> [[User:Hotcrystal0/User chart]] https://esolangs.org/w/index.php?diff=153755&oldid=153754 * Hotcrystal0 * (+98)
15:35:21 <korvo> FWIW I think that worrying about pointer values is already too low-level to talk about determinism, unless you want the *underlying machine* to behave deterministically and you're specifying *its* behavior instead of the algorithm under study.
15:41:14 <esolangs> [[User talk:Gilbert189]] https://esolangs.org/w/index.php?diff=153756&oldid=153748 * Gilbert189 * (+124)
15:42:43 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] https://esolangs.org/w/index.php?diff=153757&oldid=153752 * Gilbert189 * (+16)
15:43:16 <ais523> <korvo> ais523: Non-determinism is a property of the machine, not an optional capability ← I meant at the language level – you can define a language such that anything that allows the program to observe nondeterminism requires a value of a particular type to use
15:43:47 <ais523> I do appreciate that deterministic behaviour cross-network is much harder than doing it in a single-threaded program, though!
15:45:13 <korvo> Sure. Actually, that's another instance of the same idea; The Network is always partially ordered, but it's fairly simple to implement a system that builds an idempotent commutative monoid ("CRDT") on top.
15:45:18 <esolangs> [[User talk:Gilbert189]] https://esolangs.org/w/index.php?diff=153758&oldid=153756 * Hotcrystal0 * (+159)
15:45:30 <esolangs> [[User talk:Gilbert189]] https://esolangs.org/w/index.php?diff=153759&oldid=153758 * Hotcrystal0 * (+51)
15:46:06 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] https://esolangs.org/w/index.php?diff=153760&oldid=153757 * Hotcrystal0 * (+17)
15:46:08 <korvo> But if that's acceptable, then I think that Galois theory of algorithms is *extremely* relevant, as it concerns when two different algorithms implement the same function, or when two different programs implement the same algorithm, etc.
15:49:33 <korvo> ais523: Also, I know that folks were fixated on timing, but there are some non-deterministic systems that have deterministic outputs modulo timing and throughput; the classic example is Petri nets, which model non-deterministic stoichiometry of chemical reactions.
15:50:25 <korvo> I might be coming at this from a different angle; I long ago realized that questions like "But how will I do I/O if I'm isolated?" are not even wrong.
15:50:33 <esolangs> [[Talk:IPALang]] N https://esolangs.org/w/index.php?oldid=153761 * Hotcrystal0 * (+183) Created page with "Does this mean every program can be pronounced? So this esolang has a spoken form as well? ~~~~"
16:38:40 <ais523> is there a usermode way to clear the branch predictor state on Intel x86-64 processors? (I know you can clear the indirect branch predictor nowadays because of Spectre – but don't think that affects the predictor for direct branches, although I might be wrong)
16:39:33 <ais523> the purpose would be to be able to benchmark code without the branch predictor already being trained on it
16:50:25 <esolangs> [[User talk:Gilbert189]] https://esolangs.org/w/index.php?diff=153762&oldid=153759 * Gilbert189 * (+253)
16:50:34 <esolangs> [[User talk:Gilbert189]] https://esolangs.org/w/index.php?diff=153763&oldid=153762 * Gilbert189 * (+0)
17:03:24 -!- mtm has quit (Ping timeout: 244 seconds).
17:06:37 -!- mtm has joined.
17:07:56 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153764&oldid=153408 * H33T33 * (+261)
17:17:18 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153765&oldid=153764 * H33T33 * (+356)
17:18:59 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153766&oldid=153765 * H33T33 * (+0)
17:23:13 <esolangs> [[Braincrap]] N https://esolangs.org/w/index.php?oldid=153767 * Huywallz * (+4032) Created page with "{{lowercase}} {{infobox proglang | name = Braincrap | paradigms = imperative | author = [[Huywallz]] | year = [[:Category:2025|2025]] |memsys=[[:Category:Cell-based|Cell-based]] | class=[[:Category:Turing complete|Turing complete]] | majorimpl = C | influence = [[Bra
17:29:01 <esolangs> [[User:Hakerh400/Rectangle with rational side length]] N https://esolangs.org/w/index.php?oldid=153768 * Hakerh400 * (+9846) Created page with "=== Statement === Any rectangle that is tiled with finitely many rectangles that have at least one rational side, also has at least one rational side. === Proof === We perform strong induction on the number of small rectan
17:29:22 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] https://esolangs.org/w/index.php?diff=153769&oldid=153760 * Hotcrystal0 * (+48)
17:29:24 <esolangs> [[User:Hakerh400]] https://esolangs.org/w/index.php?diff=153770&oldid=153537 * Hakerh400 * (+93) /* Proofs */
17:31:38 <esolangs> [[User:Hakerh400/Rectangle with rational side length]] https://esolangs.org/w/index.php?diff=153771&oldid=153768 * Hakerh400 * (+3) /* Statement */
17:34:20 <esolangs> [[User:Hakerh400/Rectangle with rational side length]] M https://esolangs.org/w/index.php?diff=153772&oldid=153771 * Hakerh400 * (+1) /* Proof */
17:40:01 <esolangs> [[User:Hakerh400/Rectangle with rational side length]] https://esolangs.org/w/index.php?diff=153773&oldid=153772 * Hakerh400 * (+95)
17:44:42 <esolangs> [[User:Hakerh400/Rectangle with rational side length]] https://esolangs.org/w/index.php?diff=153774&oldid=153773 * Hakerh400 * (+0)
17:46:47 <esolangs> [[User:Hakerh400/Rectangle with rational side length]] M https://esolangs.org/w/index.php?diff=153775&oldid=153774 * Hakerh400 * (+2)
17:48:24 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153776&oldid=153736 * Hotcrystal0 * (-28)
17:49:40 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153777&oldid=153776 * Hotcrystal0 * (+52)
17:49:52 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153778&oldid=153777 * Hotcrystal0 * (+3)
17:57:21 -!- craigo has quit (Ping timeout: 276 seconds).
18:10:55 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153779&oldid=153778 * Hotcrystal0 * (-1)
18:13:31 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153780&oldid=153779 * Hotcrystal0 * (+203)
18:15:02 <zzo38> Another way to avoid some of the non-determinism is to design the CPU to avoid the issues that cause this problem. In a message above, ais523 had mentioned conditions a), b), c); conditions a) and b) can already easily be avoided but c) (obscure and not-widely-used CPU instructions) could be avoided by designing the CPU and instruction set.
18:15:41 <zzo38> Perhaps a variant of RISC-V could be used, since I think implementations of RISC-V and compilers that target it are probably common enough in order to do this.
18:16:49 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153781&oldid=153780 * Hotcrystal0 * (+236)
18:20:24 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153782&oldid=153781 * Hotcrystal0 * (-6)
18:21:11 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153783&oldid=153782 * Hotcrystal0 * (-7)
18:22:20 <zzo38> Deterministic allocation is clearly what is necessary too, which is also mentioned. As b_jonas has mention there is also multiple grades of deterministic execution.
18:23:36 <zzo38> It is not necessary to forbid timeouts that are set by other programs that have permission to handle timing and to control the permission of that program, but otherwise timeouts cannot be set (although a program could ask someone else to do so, if it has a capability to send the message to the other one; the sender doesn't know that the receiver actually will do so, but conventions will specify what is expected).
19:20:37 <ais523> perhaps timeouts could be measured in terms of CPU instructions (or the equivalent) rather than time
19:36:27 <HackEso> olist <https://www.giantitp.com/comics/oots1320.html>: shachaf oerjan Sgeo boily nortti b_jonas Noisytoot
19:52:43 <zzo38> That could be another way, although I had also describe how capabilities can be used if you do want to measure time.
19:56:03 <esolangs> [[User talk:Zopium]] https://esolangs.org/w/index.php?diff=153784&oldid=153661 * Zopium * (+86) /* Quote */
20:08:21 <b_jonas> ais523: you can do that, but then you can't use caches efficiently, so I think some more complicated system might be worth. I was thinking that you could have five special pointer registers (one of them the stack pointer) that each point to a one page long array, each come with a mask of 64 bits tracking which of the 64 cache lines starting from that you have already accessed since you modified that
20:08:27 <b_jonas> index register, and if you access a value through that index register in a cache line that you've already loaded then it's presumed to likely be in the L1 cache and so costs less nominal time. Or you could have something higher level where you can do array loops with multiple simd instructions cheaper.
20:08:39 <b_jonas> In any case you'd pre-calculate the nominal time cost in each block between jumps.
20:09:41 <b_jonas> Or I guess you could have just the top of the stack fast plus four one-page long by-value vector registers that are faster to access.
20:10:23 <b_jonas> it's a hard question and I might not want to eliminate all the timing side channels
20:39:34 <ais523> b_jonas: why would that prevent you using caches?
20:40:34 <ais523> if the processor used caches a lot that would simply just effectively make the timeout shorter, in order to maintain a deterministic moment-of-timing-out according to the program's execution
20:41:02 <ais523> (the idea is to eliminate timing side channels not by making the time constant but by making the time unobservable)
20:42:42 <b_jonas> ais523: I'm thinking of code where most of the time is spent on instructions operating on caches, which is typical in some numeric computation. So if you're counting instructions to set timeouts then you'll grossly overestimate how slow the code is and time it out early. But then that's probably not the kind of code that you will want to run in the deterministic interpreter, especially if you give that
20:42:48 <b_jonas> interpreter access to some high-level builtin functions that are deterministic, like for compression/decompression or cryptographic primitives.
20:44:32 <esolangs> [[Deadfih]] https://esolangs.org/w/index.php?diff=153785&oldid=152788 * Zopium * (+39) /* Implementation */
20:47:19 <b_jonas> and I guess you should run as little as possible in the deterministic interpreter context, eg. you could have graphics rendering for the user that needn't be deterministic, and it can time out in which case the UI will lag, as long as the deterministic code can't observe that
20:47:58 <b_jonas> (or observe it but only at a high latency and low throughput so the information about lag can be synchronized between the nodes)
20:49:08 <b_jonas> ais523: basically I'm playing a lot of Factorio, and it naturally makes me wonder what it takes to make a game that is both network multiplayer and can run untrusted mods
20:57:05 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153786&oldid=153679 * Buckets * (+14)
20:58:13 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153787&oldid=153680 * Buckets * (+13)
20:58:35 <esolangs> [[Evinocu]] N https://esolangs.org/w/index.php?oldid=153788 * Buckets * (+778) Created page with "Evinocu is an Esoteric programming language created by [[User:Buckets]] in 2022. {| class="wikitable" |- ! Commands !! Instructions |- | A() || This is A function. |- | = || Sets the Function/variable to Something on the other Side. |- | [i] || Input. |- | [Letter other
20:58:51 <esolangs> [[Deadfih]] https://esolangs.org/w/index.php?diff=153789&oldid=153785 * Zopium * (-64) /* Implementation */
22:42:09 <zzo38> TeX uses floating point numbers which may be differenton different computers but does not allow their results to affect any decisions made for typesetting other than the positions of some things.
22:43:55 -!- Sgeo has joined.
23:27:53 <esolangs> [[User:Hotcrystal0/List of users who are also on the TBG forums]] https://esolangs.org/w/index.php?diff=153790&oldid=153769 * PkmnQ * (+4)
23:52:38 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153791&oldid=153783 * I am islptng * (+540) You can revert if I am not allowed to edit!
00:00:57 <esolangs> [[User:Zopium]] https://esolangs.org/w/index.php?diff=153792&oldid=153633 * Zopium * (+109)
00:02:58 <esolangs> [[User:Zopium]] M https://esolangs.org/w/index.php?diff=153793&oldid=153792 * Zopium * (-10)
00:07:57 -!- 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).
00:43:14 <esolangs> [[Rotary/Proof of Turing completeness]] N https://esolangs.org/w/index.php?oldid=153794 * Stkptr * (+7962) It's TC
00:45:53 <esolangs> [[Rotary]] https://esolangs.org/w/index.php?diff=153795&oldid=132241 * Stkptr * (-9) TC
00:49:55 <esolangs> [[Rotary/Proof of Turing completeness]] https://esolangs.org/w/index.php?diff=153796&oldid=153794 * Stkptr * (+5) Fix the circle starting points
00:50:12 <esolangs> [[Rotary/Proof of Turing completeness]] M https://esolangs.org/w/index.php?diff=153797&oldid=153796 * Stkptr * (+0) /* 0 command */
00:50:49 <esolangs> [[Rotary/Proof of Turing completeness]] https://esolangs.org/w/index.php?diff=153798&oldid=153797 * Stkptr * (-9)
01:34:12 <korvo> b_jonas, zzo38, ais523: At some point this is re-invention of the context switch.
01:34:31 <korvo> ...As usual, I'm sure y'all realize that, but nobody's said it yet.
01:44:28 <ais523> I think it's a more general situation for which cooperative context switching is one possible solution
01:46:25 <korvo> I think every solution will look like a context switch. What you might be able to control via careful design is how much processor state needs to be invalidated/stashed.
01:49:54 <esolangs> [[User:I am islptng]] https://esolangs.org/w/index.php?diff=153799&oldid=153706 * I am islptng * (+33)
01:51:40 <esolangs> [[User:I am islptng/My ideas]] N https://esolangs.org/w/index.php?oldid=153800 * I am islptng * (+182) Created page with "Feel free to steal them! # An esolang that is based on [[AsciiDots]] but has universal contruction. # An esolang where every program is a long word that is pronounceable in English."
03:30:46 -!- ais523 has quit (Quit: quit).
03:34:43 <esolangs> [[Abstract syntax tree]] N https://esolangs.org/w/index.php?oldid=153801 * Corbin * (+803) Part 1. As usual, I promise that I'm not using an LLM or plagiarizing WP.
04:12:02 <esolangs> [[Abstract syntax tree]] https://esolangs.org/w/index.php?diff=153802&oldid=153801 * Corbin * (+1661) Part 2. As usual, I've read these references.
04:12:22 <korvo> BRB, need a convenience-store break.
04:25:24 <esolangs> [[Rotary/Proof of Turing completeness]] https://esolangs.org/w/index.php?diff=153803&oldid=153798 * Stkptr * (+366)
04:26:08 <esolangs> [[Bitwise cyclic tag]] N https://esolangs.org/w/index.php?oldid=153804 * Stkptr * (+32) Add typical cased redirect
04:52:58 <esolangs> [[Simplified Circuit Diagram]] https://esolangs.org/w/index.php?diff=153805&oldid=75225 * Stkptr * (-6) /* Interpreters/Compilers */ All read wires must be referred to explicitly
05:04:58 -!- mtm has quit (Ping timeout: 245 seconds).
05:06:47 -!- mtm has joined.
05:21:57 -!- craigo has joined.
05:40:55 <esolangs> [[Abstract syntax tree]] https://esolangs.org/w/index.php?diff=153806&oldid=153802 * Corbin * (+1530) Part 3.
05:46:55 -!- craigo_ has joined.
05:50:13 -!- craigo has quit (Ping timeout: 248 seconds).
05:52:24 <esolangs> [[Abstract syntax tree]] https://esolangs.org/w/index.php?diff=153807&oldid=153806 * Corbin * (+411) /* Abstract binding trees */ Sketch capture-avoiding substitution. Obviously an actual implementation has to do some bookkeeping, but the point is that it's generic over Herbrand universes.
06:24:24 <esolangs> [[Cammy]] https://esolangs.org/w/index.php?diff=153808&oldid=148977 * Corbin * (+772) /* Syntax */ Explain user-defined templates in terms of abstract bindings.
06:45:35 <esolangs> [[NOR machine]] N https://esolangs.org/w/index.php?oldid=153809 * I am islptng * (+782) I'm sure this is Turing-Complete. Need an interpreter.
06:47:36 <esolangs> [[Lisp]] https://esolangs.org/w/index.php?diff=153810&oldid=91450 * Corbin * (+24) /* Homoiconicity */ Fix one bad paragraph. Also bluelink.
06:52:53 <esolangs> [[NOR machine]] https://esolangs.org/w/index.php?diff=153811&oldid=153809 * I am islptng * (+189)
06:55:58 <esolangs> [[Elevated Parser]] https://esolangs.org/w/index.php?diff=153812&oldid=73316 * Corbin * (+27) Bluelinks and grammar.
07:12:13 -!- Lord_of_Life_ has joined.
07:13:00 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
07:13:33 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:29:03 <esolangs> [[Talk:Informal]] N https://esolangs.org/w/index.php?oldid=153813 * Win7HE * (+101) Created page with "WHEN WILL IT BE DONE?!--~~~~"
07:33:12 <esolangs> [[Deadshark]] https://esolangs.org/w/index.php?diff=153814&oldid=148262 * Win7HE * (+5) /* Commands */
07:34:17 <esolangs> [[Deadshark]] https://esolangs.org/w/index.php?diff=153815&oldid=153814 * Win7HE * (-2) /* Commands */
07:35:01 <esolangs> [[Deadshark]] https://esolangs.org/w/index.php?diff=153816&oldid=153815 * Win7HE * (+37) /* Scratch */
07:35:10 <esolangs> [[Deadshark]] https://esolangs.org/w/index.php?diff=153817&oldid=153816 * Win7HE * (+1) /* Scratch */
07:37:52 <esolangs> [[Deadshark]] https://esolangs.org/w/index.php?diff=153818&oldid=153817 * Win7HE * (-59) /* Commands */
07:42:19 -!- Sgeo has quit (Read error: Connection reset by peer).
08:16:41 <esolangs> [[Computable]] https://esolangs.org/w/index.php?diff=153819&oldid=153582 * Corbin * (+1071) As long as we're generalizing the intro, we're going to generalize the formalism too.
08:17:57 <korvo> I am *very* grumpy about what previously happened to [[computable]]. Like, it really wasn't okay to just use the standard definition of "recognizable by a Turing machine"? But I don't think stkptr is trying to be unclear or informal.
09:39:26 <b_jonas> t have a unary plus operator
09:47:18 <b_jonas> C++ and python have unary plus operators that are overloadable for user-defined objects, whereas perl has a unary plus operator that is *not* overloadable even though unary minus and binary plus or minus are overloadable.
09:47:27 <b_jonas> I think I prefer perl's version the best
09:51:51 <b_jonas> also the perl one works on any type, while the C++ and Python unary minuses only work on numbers, which is especially funny if you consider that the Python binary plus operator concatenates tuples/lists/strings/byteses/etc but unary plus doesn't work on them
10:10:21 <esolangs> [[Special:Log/newusers]] create * Nataliexists * New user account
11:00:26 <esolangs> [[NOR machine]] https://esolangs.org/w/index.php?diff=153820&oldid=153811 * I am islptng * (-13)
11:14:21 <esolangs> [[^]] https://esolangs.org/w/index.php?diff=153821&oldid=140578 * I am islptng * (+136) /* Interpreter */
11:32:59 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153822&oldid=153671 * PrySigneToFry * (+650) /* Check out my Esolang! */ new section
11:34:54 <esolangs> [[User talk:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153823&oldid=153717 * PrySigneToFry * (+1012)
11:37:06 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153824&oldid=153791 * PrySigneToFry * (+187)
11:40:11 -!- amby has joined.
11:58:54 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153825&oldid=153822 * I am islptng * (+134) /* Check out my Esolang! */
12:05:41 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153826&oldid=153824 * Hotcrystal0 * (+16)
12:05:54 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153827&oldid=153826 * Hotcrystal0 * (+1)
12:06:01 <esolangs> [[Talk:Albuquerque challenge]] https://esolangs.org/w/index.php?diff=153828&oldid=153723 * PrySigneToFry * (+742)
12:06:34 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153829&oldid=153827 * Hotcrystal0 * (+3)
12:06:50 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153830&oldid=153829 * Hotcrystal0 * (-4)
12:07:58 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153831&oldid=153830 * Hotcrystal0 * (+51)
12:31:45 -!- ais523 has joined.
12:31:56 <ais523> I thnk Perl's unary plus is primarily there to compensate for a misfeature
12:32:49 <ais523> a function call in Perl can be written either as «functionname arg, arg, arg» or «functionname(arg, arg, arg)»; this combination of syntaxes is ambiguous so Perl disambiguates by looking to see if there is an open parenthesis immediately after the function name
12:33:45 <ais523> in cases where you want to start the first argument of a function with a parenthesis, you therefore have to precede it with something, and Perl provides unary plus for that purpose (which is a no-op on any value)
12:34:37 <ais523> thus, instead of writing «print (2+3), 4», you write «print +(2+3), 4» (or you could alternatively write «print((2 + 3), 4)», which is what you'd do in most languages, but I find that a bit less readable
12:35:55 <ais523> if Perl had only one function call syntax, all this wouldn't matter – most languages choose the syntax where the arguments are surrounded by parentheses, but the former is also unambiguous on its own (and ends up looking quite a bit like Lisp, but with extra commas)
12:52:44 <ais523> I guess Haskell uses the Lisp-like syntax, but doesn't seem nearly as parenthesis-laden (probably due to having infix operators, possibly due to currying)
13:11:10 <b_jonas> yeah, Haskell lets you define an infix operator synonym of identity at each of ten different precedence levels, and then you only need to write parenthesis at every eleventh depth or something
13:44:23 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153832&oldid=153831 * Hotcrystal0 * (+98) I think we should be done with the commands now
13:45:29 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153833&oldid=153832 * Hotcrystal0 * (+318)
13:45:51 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153834&oldid=153833 * Hotcrystal0 * (-30)
13:46:14 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153835&oldid=153834 * Hotcrystal0 * (+0)
13:48:57 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153836&oldid=153835 * Hotcrystal0 * (+63)
13:52:32 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153837&oldid=153836 * Hotcrystal0 * (+74)
13:53:14 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153838&oldid=153837 * Hotcrystal0 * (+39) missing codes
14:14:46 <esolangs> [[Talk:Albuquerque challenge]] https://esolangs.org/w/index.php?diff=153839&oldid=153828 * Aadenboy * (+361)
14:26:10 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153840&oldid=153838 * Hotcrystal0 * (-67) Removed the variable part because I want this to be easier to interpret
14:36:28 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153841&oldid=153840 * Hotcrystal0 * (+62) Truth-machine
14:43:36 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153842&oldid=153841 * Hotcrystal0 * (+0)
14:44:04 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153843&oldid=153842 * Hotcrystal0 * (+0) fix
14:44:34 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153844&oldid=153843 * Hotcrystal0 * (-6)
14:44:53 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153845&oldid=153844 * Hotcrystal0 * (-4)
14:45:58 <esolangs> [[User:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153846&oldid=153845 * Hotcrystal0 * (+6)
14:48:21 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153847&oldid=153766 * H33T33 * (-1)
15:02:09 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153848&oldid=153847 * H33T33 * (+10)
15:35:34 -!- yayimhere has joined.
15:57:24 -!- Melvar has quit (Quit: WeeChat 4.5.0).
16:04:08 <esolangs> [[User:Hakerh400/Pair sum]] N https://esolangs.org/w/index.php?oldid=153849 * Hakerh400 * (+2852) Created page with "The sequence begins with: 1, 7, 23, 19, 34, 31, 29, 34, 39, 40, 35, 38, 43, 51, 47, 50, 45, 52, 56, ... === How it is formed === Let <code>f</code> be a function that takes a natural number and returns the number formed by the concatenation of the
16:04:27 <esolangs> [[User:Hakerh400]] https://esolangs.org/w/index.php?diff=153850&oldid=153770 * Hakerh400 * (+39) /* Number sequences */
16:05:04 <esolangs> [[User:Hakerh400/Pair sum]] https://esolangs.org/w/index.php?diff=153851&oldid=153849 * Hakerh400 * (+133)
16:05:43 <esolangs> [[User:Hakerh400/Pair sum]] https://esolangs.org/w/index.php?diff=153852&oldid=153851 * Hakerh400 * (+8) /* External resources */
16:07:53 <esolangs> [[User:Hakerh400/Pair sum]] https://esolangs.org/w/index.php?diff=153853&oldid=153852 * Hakerh400 * (+11)
16:08:40 <esolangs> [[User:Hakerh400/Pair sum]] https://esolangs.org/w/index.php?diff=153854&oldid=153853 * Hakerh400 * (+43)
16:19:24 -!- Melvar has joined.
16:25:32 <esolangs> [[^]] https://esolangs.org/w/index.php?diff=153855&oldid=153821 * 47 * (-136) as the old saying goes, Undo revision by {{name}}
17:05:30 -!- mtm has quit (Ping timeout: 252 seconds).
17:06:42 -!- FreeFull has joined.
17:06:51 -!- mtm has joined.
17:46:23 <esolangs> [[User talk:Hotcrystal0/Deep]] https://esolangs.org/w/index.php?diff=153856&oldid=153823 * Hotcrystal0 * (+179)
17:46:48 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[User:Hotcrystal0/Deep]] to [[Deep]]: No longer WIP
17:46:48 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[User talk:Hotcrystal0/Deep]] to [[Talk:Deep]]: No longer WIP
18:04:54 -!- yayimhere has quit (Ping timeout: 240 seconds).
18:17:43 <esolangs> [[NS!]] N https://esolangs.org/w/index.php?oldid=153861 * Zopium * (+2448) Created page with "'''NS!''' (or '''N'''umber '''S'''tack!) is a stack based esoteric language made by [[User:Zopium]] that focuses on numbers. It is case-sensitive, so if you enter something like <code>3a*3+#</code>, it wont print the 33rd ASCII character (<code>!</code>). {| class="wikitabl
18:21:13 <esolangs> [[Hello world program in esoteric languages (N-S)]] https://esolangs.org/w/index.php?diff=153862&oldid=148028 * Zopium * (+87)
18:25:12 -!- yayimhere has joined.
18:25:25 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=153863&oldid=153487 * Zopium * (+23)
18:31:04 <esolangs> [[User:Zopium]] https://esolangs.org/w/index.php?diff=153864&oldid=153793 * Zopium * (+56)
18:32:49 <esolangs> [[NS!]] M https://esolangs.org/w/index.php?diff=153865&oldid=153861 * Zopium * (+0)
18:58:12 -!- yayimhere has quit (Quit: Client closed).
19:32:50 <esolangs> [[NS!]] https://esolangs.org/w/index.php?diff=153866&oldid=153865 * Zopium * (+28)
19:34:55 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153867&oldid=153746 * Hotcrystal0 * (+6)
19:36:00 <esolangs> [[NS!]] https://esolangs.org/w/index.php?diff=153868&oldid=153866 * Zopium * (+29)
19:36:47 <esolangs> [[Talk:Fontmess]] N https://esolangs.org/w/index.php?oldid=153869 * Hotcrystal0 * (+223) Created page with "<joke>prrrriiidddeeeeee cooolllooorrrssss!!! <br /> <small>please add colors of the transgender flag because wynaut</small></joke> ~~~~"
19:38:29 <esolangs> [[Talk:Fontmess]] https://esolangs.org/w/index.php?diff=153870&oldid=153869 * Hotcrystal0 * (+64)
19:47:50 <esolangs> [[NS!]] https://esolangs.org/w/index.php?diff=153871&oldid=153868 * Zopium * (+116)
19:56:02 <esolangs> [[FOSMOL]] M https://esolangs.org/w/index.php?diff=153872&oldid=152291 * Aadenboy * (+0) /* Example macros */ fixes
20:00:02 <esolangs> [[WYSIWISC]] N https://esolangs.org/w/index.php?oldid=153873 * Alikberoff * (+9257) Created page with "{{infobox proglang |name=WYSIWISC |paradigms=imperative |author=[[User:Alikberov]] |year=[[:Category:2019|2019]] |typesys= |memsys=flat |dimensions=classic |class=[[:Category:Turing complete|Turing complete]] (WYSIWISC) |refimpl=[[Koyaanisqatsi]] |majorimpl= |dialec
20:04:50 -!- ajal has joined.
20:04:51 -!- amby has quit (Read error: Connection reset by peer).
20:10:35 <esolangs> [[User:Alikberov]] M https://esolangs.org/w/index.php?diff=153874&oldid=103792 * Alikberoff * (+75)
20:12:28 <esolangs> [[User talk:Zopium]] https://esolangs.org/w/index.php?diff=153875&oldid=153784 * 47 * (+49)
20:12:53 <esolangs> [[Koyaanisqatsi]] M https://esolangs.org/w/index.php?diff=153876&oldid=103802 * Alikberoff * (+15)
20:13:57 <esolangs> [[Koyaanisqatsi]] M https://esolangs.org/w/index.php?diff=153877&oldid=153876 * Alikberoff * (+4)
20:16:41 <esolangs> [[User talk:Zopium]] https://esolangs.org/w/index.php?diff=153878&oldid=153875 * Zopium * (+86)
20:41:47 <esolangs> [[Ti!]] https://esolangs.org/w/index.php?diff=153879&oldid=152270 * Ractangle * (+116) /* Javascript (tryit.org version) */
21:09:55 <esolangs> [[User:I am islptng/My ideas]] https://esolangs.org/w/index.php?diff=153880&oldid=153800 * MihaiEso * (+77)
21:22:05 <esolangs> [[Gato]] M https://esolangs.org/w/index.php?diff=153881&oldid=152619 * Thalassohora * (+16) /* Creators and Special Thanks */ See Discussion
21:29:20 <esolangs> [[Talk:Gato]] N https://esolangs.org/w/index.php?oldid=153882 * Thalassohora * (+556) Created page with "'''PLEASE NOTE''': This page will not be updated anymore due to a recent split between our communities. Please do not harass or discriminate any mentioned individuals in this article. This is mostly an archive of an esolang which could be a working one, but unfort
21:48:37 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153883&oldid=153786 * Buckets * (+11)
21:49:00 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153884&oldid=153787 * Buckets * (+10)
21:49:13 <esolangs> [[C.A.]] N https://esolangs.org/w/index.php?oldid=153885 * Buckets * (+515) Created page with "C.A. (which Stands for Collatz's Nightmare) is an Esoteric programming language created by [[User:Buckets]] in 2020. {| class="wikitable" ! Commands !! Instructions |- | , || /2. |- | . || *3 + 1. |- | / || Input/Output. |- | : || If equals not 1, go To line after number u
21:59:03 -!- Sgeo has joined.
22:00:04 <esolangs> [[NS!]] https://esolangs.org/w/index.php?diff=153886&oldid=153871 * Zopium * (+605) /* Examples */
22:01:34 -!- craigo_ has quit (Ping timeout: 260 seconds).
22:04:43 <esolangs> [[Dice Roll]] M https://esolangs.org/w/index.php?diff=153887&oldid=123260 * Buckets * (+51)
22:10:21 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153888&oldid=153883 * Zopium * (+10) /* N */
22:10:43 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153889&oldid=153641 * Buckets * (+475)
22:23:09 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153890&oldid=153889 * Buckets * (+1)
22:34:42 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=153891&oldid=153890 * Buckets * (+208)
22:38:32 <esolangs> [[Special:Log/move]] move * Buckets * moved [[C.A.]] to [[CN]]: Misspelled title
22:38:46 <esolangs> [[CN]] M https://esolangs.org/w/index.php?diff=153894&oldid=153892 * Buckets * (-2)
22:39:11 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153895&oldid=153884 * Buckets * (-2)
22:40:28 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153896&oldid=153888 * Buckets * (-2)
22:45:34 <esolangs> [[Evinocu]] M https://esolangs.org/w/index.php?diff=153897&oldid=153788 * Buckets * (+287)
22:46:14 <esolangs> [[Evinocu]] M https://esolangs.org/w/index.php?diff=153898&oldid=153897 * Buckets * (+2)
22:52:28 <esolangs> [[General blindfolded arithmetic]] N https://esolangs.org/w/index.php?oldid=153899 * Stkptr * (+5248) Create page with current thoughts
23:03:47 <esolangs> [[NS!]] M https://esolangs.org/w/index.php?diff=153900&oldid=153886 * Zopium * (+4)
23:07:35 <esolangs> [[Foldy]] M https://esolangs.org/w/index.php?diff=153901&oldid=151676 * Buckets * (+239)
23:07:49 <esolangs> [[Foldy]] M https://esolangs.org/w/index.php?diff=153902&oldid=153901 * Buckets * (+1)
23:10:53 <esolangs> [[Foldy]] M https://esolangs.org/w/index.php?diff=153903&oldid=153902 * Buckets * (+0)
23:23:03 <esolangs> [[Hats]] M https://esolangs.org/w/index.php?diff=153904&oldid=153515 * Buckets * (+1)
23:24:35 <esolangs> [[Hats]] M https://esolangs.org/w/index.php?diff=153905&oldid=153904 * Buckets * (+7)
23:35:43 <esolangs> [[User:XKCD Random Number]] M https://esolangs.org/w/index.php?diff=153906&oldid=153863 * Buckets * (+35957)
00:08:49 <esolangs> [[Talk:Xt]] N https://esolangs.org/w/index.php?oldid=153907 * Rdococ * (+117) Created page with "This is definitely not Turing-complete. ~~~~"
00:11:12 <esolangs> [[Talk:Xt]] M https://esolangs.org/w/index.php?diff=153908&oldid=153907 * Rdococ * (+33)
00:39:20 -!- ais523 has quit (Quit: quit).
00:49:09 <esolangs> [[User:I am islptng/My ideas]] https://esolangs.org/w/index.php?diff=153909&oldid=153880 * I am islptng * (+534)
00:50:30 <esolangs> [[User:I am islptng/My ideas]] https://esolangs.org/w/index.php?diff=153910&oldid=153909 * I am islptng * (-565) ok pls stop creating "poem" series
01:01:11 -!- ajal 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:06:00 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153911&oldid=153899 * Stkptr * (+569)
02:02:55 -!- fungot has quit (Ping timeout: 252 seconds).
02:09:06 <fizzie> Oh, that was me, was trying to troubleshoot some networking issues by restarting the router-of-sorts.
02:12:56 <fizzie> Got pretty weird symptoms this time, with IPv6 connections not working between home and my personal (DigitalOcean) VPS, even though (a) IPv6 works from both home *and* the VPS to other destinations (the esowiki server, or Google), and (b) IPv4 works between the home and the VPS.
02:13:16 <fizzie> Also traceroute from both ends shows that it does get a few hops along the way.
02:14:10 <fizzie> I guess it's possible it's some sort of routing/peering misconfiguration in the actual Internet part rather than an issue at either endpoint, it's just that I feel like usually those sorts of things get noticed and fixed.
02:14:26 <fizzie> (And it's been like this for at least 6 hours now.)
02:19:53 <fizzie> Actually, I can tell exactly how long, because the Prometheus blackbox HTTP probe (unlike pretty much everything else in the world) doesn't actually do fallback from v6 to v4 if v6 connectivity seems to be present; it's been a bit over 9.5 hours.
02:20:51 -!- fungot has joined.
02:21:21 <fizzie> ^ and clearly IPv6 also works from home to whatever Libera server fungot happens to connect to.
02:21:47 <fizzie> (Or does it? There was no reply.)
02:21:51 <fungot> That Pong alone cannot stop!
02:23:36 <fizzie> I don't even know whose support I should talk to, DigitalOcean or my ISP.
02:26:59 <korvo> fizzie: That's on my list of reasons why I intend to write my own Prometheus. Another reason is the amount of bandwidth required.
02:28:41 <HackEso> 985) <boily> I hate telecom abbreviations I hate telecom abbreviations good morning all I hate telecom abbreviations.
02:30:01 <fizzie> From home, (working) tracepath to the esowiki server goes [ISP network] -> some blanks -> LINX (London Internet Exchange) -> Iomart (wiki hosting sponsor), while (failing) tracepath to the DO VPS goes [ISP network] -> LONAP (London Network Access Point) -> !H (host unreachable), so I guess that looks like it's not likely to be my ISP's problem.
02:33:07 <fizzie> From the DO VPS, (working) tracepath to esowiki server goes [DO network] -> LINX -> Iomart, while (failing) tracepath to home goes [DO network] -> "no reply" forever.
02:40:36 <fizzie> Weird, though. From LONAP's looking-glass instance, I can ping both home *and* the DO VPS via their v6 addresses.
02:44:07 <fizzie> Meh. It doesn't look like something I'm really positioned to solve, so hopefully whoever's responsible will eventually notice and do something about it, or else I'll have to try to describe this to a support person, which I think might prove challenging.
03:12:45 <korvo> IPv6 solves the problem of routing by removing routing. Now there's only the problem.
03:19:47 <esolangs> [[User:PkmnQ]] M https://esolangs.org/w/index.php?diff=153912&oldid=152586 * PkmnQ * (+31)
05:04:46 -!- mtm has quit (Ping timeout: 265 seconds).
05:07:19 -!- mtm has joined.
05:07:55 <esolangs> [[Eod]] https://esolangs.org/w/index.php?diff=153913&oldid=133056 * Icecream17 * (+14) /* stability */ combos are now deletable
05:30:50 <esolangs> [[Eod]] https://esolangs.org/w/index.php?diff=153914&oldid=153913 * Icecream17 * (+1390) /* c-commands */ more commands
05:32:13 <esolangs> [[Ti!]] https://esolangs.org/w/index.php?diff=153915&oldid=153879 * Ractangle * (-1)
05:33:21 <esolangs> [[Binary lambda calculus]] https://esolangs.org/w/index.php?diff=153916&oldid=139552 * Squidmanescape * (+86) /* BLC Syntax */ I think this makes what 01 does more clear to people who have only a cursory knowledge of Lambda Calculus or de Bruijn indices... e.g. me right now. I hope I'm not wrong. If I am, I really hope someone fixes my explanation.
05:38:38 <esolangs> [[Eod]] https://esolangs.org/w/index.php?diff=153917&oldid=153914 * Icecream17 * (+355) can modify its own code now
05:54:33 -!- Sgeo has quit (Ping timeout: 245 seconds).
05:58:30 -!- Sgeo has joined.
06:03:36 -!- Sgeo_ has joined.
06:05:18 -!- Sgeo has quit (Ping timeout: 252 seconds).
07:13:30 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
07:13:43 -!- Lord_of_Life_ has joined.
07:15:07 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:51:30 -!- Sgeo_ has quit (Read error: Connection reset by peer).
07:57:56 <b_jonas> doesn't fall back to IPV4 => that's a good thing, that means it warned you about this IPV6 problem
08:24:54 -!- lisbeths has joined.
09:49:47 <fizzie> Actually, checking the documentation, it looks like that's now configurable (and should in fact default to true), as is the protocol it's supposed to use (defaults to v6). Doesn't seem to behave like that for me, but that might just be down to having an older version. I should probably update and then configure it as two non-fallback probes, a v4 and a v6 one, just so I'll stay fully informed.
10:34:10 -!- lisbeths has quit (Quit: Connection closed for inactivity).
11:11:29 <esolangs> [[Numble]] N https://esolangs.org/w/index.php?oldid=153918 * Cobl703 * (+9244) Created page with "'''Numble''' is an esoteric programming language, made by [[User:Cobl703]], similar to [[Forte]]. It is Turing complete. =Commands= Each command in Numble consists of a single byte indicating which command it is, followed by its arguments. Integers are encoded using ZigZ
11:21:18 -!- amby has joined.
12:14:52 -!- mich181189 has quit (Read error: Connection reset by peer).
12:15:04 -!- mich181189 has joined.
12:15:05 -!- yuu has quit (Read error: Connection reset by peer).
12:15:14 -!- yuu has joined.
13:03:01 <esolangs> [[Xkcd 3062]] N https://esolangs.org/w/index.php?oldid=153919 * B jonas * (+565) Created page with "'''xkcd #3062''' is an esoteric joke language that almost completely eliminates off-by-one errors. Any time an integer is stored or read, its value is adjusted upward or downward by a random amount between 40 and 50. == Reference == * [https://xkcd.com/3062/ xkcd com
13:04:37 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=153920&oldid=153049 * B jonas * (+27)
13:05:13 <esolangs> [[Off By One]] N https://esolangs.org/w/index.php?oldid=153921 * B jonas * (+23) Redirected page to [[Xkcd 3062]]
13:17:19 <esolangs> [[Xkcd 3062]] https://esolangs.org/w/index.php?diff=153922&oldid=153919 * B jonas * (+51)
13:20:22 <esolangs> [[Deep]] https://esolangs.org/w/index.php?diff=153923&oldid=153857 * Hotcrystal0 * (+77) Categories
13:20:57 <esolangs> [[Deep]] https://esolangs.org/w/index.php?diff=153924&oldid=153923 * Hotcrystal0 * (+2)
13:23:31 -!- yewscion_ has joined.
13:23:36 -!- yewscion__ has quit (Read error: Connection reset by peer).
13:32:14 <esolangs> [[Xkcd 1537]] N https://esolangs.org/w/index.php?oldid=153925 * B jonas * (+504) Created page with "'''xkcd #1537''' is an esoteric joke programming language that parodies dynamically typed languages like javascript or PHP. It is described as great but has a few quirks regarding type. We only know a few code examples with results. This language was published by Ra
13:33:18 <esolangs> [[Types]] N https://esolangs.org/w/index.php?oldid=153926 * B jonas * (+23) Redirected page to [[Xkcd 1537]]
13:34:24 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=153927&oldid=153920 * B jonas * (+27)
13:40:27 <esolangs> [[X]] https://esolangs.org/w/index.php?diff=153928&oldid=138403 * B jonas * (+32) remove from [[:Category:Languages]], add keywords
13:41:30 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153929&oldid=153896 * B jonas * (-8) remove [[X]], it's on the joke language list where it belongs already
13:42:16 <esolangs> [[Xkcd 2309]] N https://esolangs.org/w/index.php?oldid=153930 * B jonas * (+15) Redirected page to [[X]]
13:55:24 -!- yayimhere has joined.
15:32:11 -!- Sgeo has joined.
15:39:22 <esolangs> [[Topple]] M https://esolangs.org/w/index.php?diff=153931&oldid=153848 * H33T33 * (+118)
15:58:29 -!- yayimhere has quit (Quit: Client closed).
16:20:50 -!- craigo_ has joined.
16:36:34 <esolangs> [[Talk:Game of Life]] N https://esolangs.org/w/index.php?oldid=153932 * Hotcrystal0 * (+130) Created page with "I feel like this page is half a joke. ~~~~"
17:04:19 -!- mtm has quit (Ping timeout: 260 seconds).
17:06:32 -!- mtm has joined.
17:16:19 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153933&oldid=153911 * Stkptr * (+294)
17:19:35 <esolangs> [[Finite state automata]] N https://esolangs.org/w/index.php?oldid=153934 * Stkptr * (+36) Redirect to the singular
17:23:46 <esolangs> [[Constructible]] https://esolangs.org/w/index.php?diff=153935&oldid=149381 * Stkptr * (+565) /* Computational class */
17:24:29 <esolangs> [[Constructible]] M https://esolangs.org/w/index.php?diff=153936&oldid=153935 * Stkptr * (+37) /* Computational class */
17:25:02 <esolangs> [[Constructible]] https://esolangs.org/w/index.php?diff=153937&oldid=153936 * Stkptr * (-16)
19:29:17 <esolangs> [[Xand]] https://esolangs.org/w/index.php?diff=153938&oldid=129372 * BestCoder * (+232)
20:00:49 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153939&oldid=153933 * Stkptr * (+1016)
20:01:51 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153940&oldid=153939 * Stkptr * (+104) /* Immediately Turing complete additions */
20:05:21 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153941&oldid=153940 * Stkptr * (-3) /* with +, -, * (at least FSM) */
20:12:29 <esolangs> [[CN]] M https://esolangs.org/w/index.php?diff=153942&oldid=153894 * Buckets * (+62)
20:16:30 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153943&oldid=153929 * Buckets * (+14)
20:16:56 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153944&oldid=153895 * Buckets * (+13)
20:17:18 <esolangs> [[Aliquid]] N https://esolangs.org/w/index.php?oldid=153945 * Buckets * (+4071) Created page with "Aliquid is an Esoteric programming language created by [[User:Buckets]] in 2022. (After every Instruction, Rotate the IP by 90 Degrees Clockwise*.) {| class="wikitable" |- ! Commands !! Instructions |- | AA || Starting point, Pointing Upwards. |- | AB || This will Push
20:18:25 <esolangs> [[Aliquid]] M https://esolangs.org/w/index.php?diff=153946&oldid=153945 * Buckets * (-40)
20:21:52 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=153947&oldid=153941 * Stkptr * (+58) /* Immediately Turing complete additions */
20:23:39 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=153948&oldid=153947 * Stkptr * (+26) /* with +, -, * (at least FSM) */
21:21:30 <esolangs> [[Happy]] M https://esolangs.org/w/index.php?diff=153949&oldid=153434 * Buckets * (+0)
21:26:17 -!- craigo_ has quit (Quit: Leaving).
21:34:57 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153950&oldid=153948 * Stkptr * (+4335)
22:09:57 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153951&oldid=153950 * Stkptr * (+467)
22:10:20 <esolangs> [[((]] M https://esolangs.org/w/index.php?diff=153952&oldid=152896 * Buckets * (+39)
22:12:45 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153953&oldid=153951 * Stkptr * (+11)
23:15:31 <esolangs> [[Clockwise]] https://esolangs.org/w/index.php?diff=153954&oldid=153362 * Stkptr * (-6) It can match parentheses
01:22: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:13:12 <esolangs> [[Sb]] N https://esolangs.org/w/index.php?oldid=153955 * C0ffee * (+728) Created page with "'''sb''' is a stack-based esoteric language. ==Commands== {| class="wikitable" |- ! Command !! Description |- | + || pop a, pop b, push b+a |- | - || pop a, pop b, push b-a |- | * || pop a, pop b, push b*a |- | / || pop a, pop b, push b/a |- | _ || pop a, push -a |- | % || po
05:04:50 -!- mtm has quit (Ping timeout: 248 seconds).
05:06:37 -!- mtm has joined.
07:10:03 -!- Sgeo has quit (Read error: Connection reset by peer).
07:12:33 -!- Lord_of_Life_ has joined.
07:13:27 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
07:13:59 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:59:18 -!- craigo has joined.
08:47:11 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153956&oldid=153953 * Stkptr * (+130) /* With pow */
09:40:14 <b_jonas> Another graph theory question. I get a DAG as input, and some arcs are marked as red. The task is to decide if there's a directed loop with at least one red arc in it. This would be easy to solve in quadratic time: for each red arc, do a traversal from the end of red arc to see if there's a path to the start of the same red edge. Can you do it in quasi-linear time? Or give a heuristic why that is
09:40:20 <b_jonas> probably impossible? The DAG is represented sparse, with a list of arcs, rather than a dense matrix.
09:40:55 <b_jonas> This isn't something I need in practice right now, because I want to do it for small DAGs with very few red edges, I'm just curious.
09:42:55 <esolangs> [[Talk:General blindfolded arithmetic]] N https://esolangs.org/w/index.php?oldid=153957 * Ais523 * (+832) Blindfolded Arithmetic with arbitrarily many variables and without division is probably equivalent to Imprecision
09:43:58 <b_jonas> firstly, I wrote DAG where I was thinking of any digraph,
09:44:45 <b_jonas> second because it's obviously possible, you just have to use the well-known quasi-linear time traversal algorithm to find the strongly connected components of the digraph and then check if any red edge has its endpoints in the same strong components
09:49:00 <b_jonas> I mean my previous try for a graph theory question turned out to be not so trivial
10:44:36 -!- ais523 has joined.
10:44:51 <ais523> b_jonas: I was going to tell you how to solve that graph problem but you found the same solution as me on your own
10:45:12 <ais523> (decompose into strongly connected components then check the red edges to see if their endpoints are in the same component)
11:00:04 <esolangs> [[Xkcd 1537]] M https://esolangs.org/w/index.php?diff=153958&oldid=153925 * PrySigneToFry * (+90)
11:18:41 -!- sprock has quit (Ping timeout: 248 seconds).
11:25:31 -!- sprock has joined.
11:28:35 -!- amby has joined.
11:37:34 <esolangs> [[User:I am islptng/My ideas]] https://esolangs.org/w/index.php?diff=153959&oldid=153910 * PrySigneToFry * (+176)
12:02:28 -!- sprock has quit (Ping timeout: 245 seconds).
12:09:20 -!- sprock has joined.
15:28:07 <esolangs> [[CJKGolfer]] N https://esolangs.org/w/index.php?oldid=153960 * PrySigneToFry * (+14957) Created page with "CJKGolfer is designed by PSTF, which is inspired from [[Sclipting]]. = Most basic syntax = == Execution == CJKGolfer has a stack, and infinity amount of variables. Many of the instructions are based on stack. == Data types == # Numbers(). Every real numbers
15:29:22 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=153961&oldid=153943 * PrySigneToFry * (+76)
15:44:02 <korvo> b_jonas: So, yes, Tarjan's SCC algorithm will do it. But what if the number of red edges is relatively low and the graph is relatively big and well-connected? Then the algorithm might not be linear in the number of red edges, except as a bound.
15:44:04 -!- ais523 has quit (Ping timeout: 260 seconds).
15:45:15 <korvo> You could fix that by building each SCC from a single red edge. That only requires tracking as many connected components as red edges, at most. The algorithm can exit early once all such components are found.
15:45:51 <korvo> ...Sorry, I shouldn't talk so rudely.
15:48:13 -!- ais523 has joined.
16:07:01 -!- craigo has quit (Quit: Leaving).
16:08:33 -!- craigo has joined.
16:21:46 <esolangs> [[Beefydie]] https://esolangs.org/w/index.php?diff=153962&oldid=140376 * Win7HE * (+4) /* Other languages */
16:38:50 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=153963&oldid=153867 * Hotcrystal0 * (+3)
16:46:43 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=153964&oldid=153956 * Stkptr * (+4) /* With pow */
16:57:51 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153965&oldid=153964 * Stkptr * (+797) /* with +, -, *, / (at least FSM) */
17:04:12 -!- mtm has quit (Ping timeout: 268 seconds).
17:07:07 -!- mtm has joined.
17:31:00 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153966&oldid=153965 * Stkptr * (+203) /* Immediately Turing complete additions */
17:37:14 <HackEso> [U+1D745 MATHEMATICAL BOLD ITALIC SMALL PI]
17:39:45 <esolangs> [[UClang*]] https://esolangs.org/w/index.php?diff=153967&oldid=115096 * Stkptr * (+344) It's ambiguously PDA or FSM
17:42:26 -!- craigo has quit (Quit: Leaving).
17:57:05 -!- Sgeo has joined.
17:58:03 <esolangs> [[Talk:General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153968&oldid=153957 * Stkptr * (+371)
18:08:06 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153969&oldid=153966 * Stkptr * (+516) /* with +, -, * (at least FSM) */ preliminary note on rational emulation
18:15:51 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153970&oldid=153969 * Stkptr * (+416) /* Equivalence to with / */
18:19:34 <esolangs> [[Blindfolded Arithmetic]] https://esolangs.org/w/index.php?diff=153971&oldid=149423 * Ais523 * (+37) /* See also */ [[General blindfolded arithmetic]]
18:20:16 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=153972&oldid=153970 * Ais523 * (+0) formatting of lede (the bolded words should be the topic that the article is about)
18:31:17 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153973&oldid=153972 * Stkptr * (+541) Languages
18:47:24 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=153974&oldid=153973 * Ais523 * (+17) /* Example languages */ Blindfolded Arithmetic has truncated division, but that wasn't mentioned, presumably by mistake
19:00:23 <esolangs> [[PLEASE]] https://esolangs.org/w/index.php?diff=153975&oldid=127092 * Stkptr * (+732) FSA
19:06:55 <esolangs> [[Skound]] https://esolangs.org/w/index.php?diff=153976&oldid=62936 * Stkptr * (+392) PDA
19:17:48 <esolangs> [[PhD]] https://esolangs.org/w/index.php?diff=153977&oldid=81301 * Stkptr * (+19)
20:04:04 <esolangs> [[CN]] M https://esolangs.org/w/index.php?diff=153978&oldid=153942 * Buckets * (+302)
20:07:49 <esolangs> [[Oracle machine]] https://esolangs.org/w/index.php?diff=153979&oldid=153629 * Stkptr * (+185)
20:09:29 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=153980&oldid=153961 * Buckets * (+12)
20:09:57 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=153981&oldid=153944 * Buckets * (+11)
20:10:12 <esolangs> [[Truck]] N https://esolangs.org/w/index.php?oldid=153982 * Buckets * (+1114) Created page with "Truck is an Esoteric programming language created by [[User:Buckets]] in 2024. After all Commands, The Index rotates Upwards or downwards By the digits of e (Excluding '2.'), Upwards if the digit's Decimal place is even, else Downwards for Odd digit decimal place It st
20:34:23 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=153983&oldid=153825 * Hotcrystal0 * (+151) /* Discord */ new section
20:43:02 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153984&oldid=153974 * Stkptr * (+109) /* Example languages */
21:15:19 <esolangs> [[Game of Life]] https://esolangs.org/w/index.php?diff=153985&oldid=146673 * Corbin * (+1137) Trying out something new, part one.
21:35:17 <esolangs> [[Pointing]] https://esolangs.org/w/index.php?diff=153986&oldid=153662 * Calculus is fun * (+186) /* Statements */
21:41:21 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153987&oldid=153984 * Stkptr * (+805) /* with +, -, * (at least FSM) */
21:41:42 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=153988&oldid=153987 * Stkptr * (+2)
21:44:53 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=153989&oldid=153988 * Stkptr * (+3) /* With pow */
21:48:06 <esolangs> [[Game of Life]] https://esolangs.org/w/index.php?diff=153990&oldid=153985 * Corbin * (+100) Trying out something new, part two.
22:01:12 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=153991&oldid=153986 * Calculus is fun * (+0) /* Statements */
22:07:21 <esolangs> [[Talk:Autism]] https://esolangs.org/w/index.php?diff=153992&oldid=149531 * Calculus is fun * (+208)
22:36:41 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:37:06 <esolangs> [[Game of Life]] https://esolangs.org/w/index.php?diff=153993&oldid=153990 * Corbin * (+2130) /* Complexity class */ Something new, part three. This is a vast improvement on the "oh it's universal" rhetoric, I feel.
22:38:12 -!- tromp has joined.
22:38:58 <esolangs> [[Talk:Game of Life]] https://esolangs.org/w/index.php?diff=153994&oldid=153932 * Corbin * (+232) So it's now a complete joke, right~
22:54:06 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:07:34 <b_jonas> hold on. the first esolang I'd ever heard of is not Unlambda or Intercal or Piet or Chef or Brainfuck. it's Conway's Game of Life.
23:08:26 <esolangs> [[User:Aadenboy]] M https://esolangs.org/w/index.php?diff=153995&oldid=153675 * Aadenboy * (-8) /* programming languages */ css sucks sometimes
23:12:33 <ais523> b_jonas: I think it took some time to be recognised as an esolang
23:13:16 <ais523> (and might arguably be a compuational model instead because it didn't have a standard syntax, although I guess you can say "plane tiled with cells containing finitely many live cells" is a syntax in a sense
23:13:42 <korvo> LMK if I got anything wrong. I tried to be well-sourced about this.
23:15:16 <b_jonas> hmm. I did write a game of life implementation at some point when I was young, but IIRC it didn't have a way to save or load state, only to edit interactively, so it doesn't really count as implementing a "standard syntax"
23:20:25 <b_jonas> though of course in the 80s you could have a cheap personal computers with a BASIC interpreter and interactive editor but no way to save the program on casette or tape, and in the 90s you could have the same with a programmable calculator
23:20:51 <b_jonas> and those BASICs still count as a programming language
23:22:14 <esolangs> [[Special:Log/newusers]] create * Helpeesl * New user account
23:26:44 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=153996&oldid=153989 * Stkptr * (+228) /* Core model */
23:27:14 <esolangs> [[ASMM]] https://esolangs.org/w/index.php?diff=153997&oldid=152954 * Chillaxe * (+132) Introduced C support
23:34:40 -!- ais523 has quit (Quit: quit).
23:44:13 <esolangs> [[Aliquid]] M https://esolangs.org/w/index.php?diff=153998&oldid=153946 * Buckets * (+1618)
23:45:44 <esolangs> [[Aliquid]] M https://esolangs.org/w/index.php?diff=153999&oldid=153998 * Buckets * (-67)
23:48:31 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154000&oldid=153996 * Stkptr * (+134)
00:10:04 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154001&oldid=154000 * Stkptr * (+351) /* Equivalence to with / */
00:26:04 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=154002&oldid=154001 * Stkptr * (+0) /* Equivalence to with / */
00:26:36 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=154003&oldid=154002 * Stkptr * (+0) /* Equivalence to with / */
00:59:43 -!- 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:00:24 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154004&oldid=154003 * Stkptr * (+176) /* Equivalence to with / */
01:04:25 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154005&oldid=154004 * Stkptr * (+26) /* with +, -, * (at least FSM) */
01:05:25 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=154006&oldid=153719 * Helpeesl * (+100)
01:05:51 <esolangs> [[Marble maze]] N https://esolangs.org/w/index.php?oldid=154007 * Helpeesl * (+3578) Created page with "== Info == Marble Maze is a multidimensional esolang made by Elijah Hunt(helpeesl) on March 14th 2025 and is inspired by marble mazes, hence the name. ==Commands== {| class="wikitable sortable" |+ Board commands |- ! Commands !! What they do |- | @ || When the prog
01:23:49 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154008&oldid=154007 * Helpeesl * (-1) /* Commands */
01:29:30 -!- FreeFull has quit.
02:22:55 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154009&oldid=154008 * Helpeesl * (-2)
02:26:46 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154010&oldid=153955 * C0ffee * (+25)
02:28:07 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154011&oldid=154010 * C0ffee * (+30)
02:29:07 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154012&oldid=154011 * C0ffee * (+34)
02:30:05 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154013&oldid=154009 * Helpeesl * (+130)
02:30:26 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154014&oldid=154013 * Helpeesl * (+2)
02:31:46 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154015&oldid=154012 * C0ffee * (+90)
02:32:12 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154016&oldid=154014 * Helpeesl * (+5)
02:35:44 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154017&oldid=154016 * Helpeesl * (-88)
02:36:50 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154018&oldid=154015 * C0ffee * (+155)
02:46:04 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154019&oldid=154017 * Helpeesl * (+148)
02:49:43 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154020&oldid=154018 * C0ffee * (+14)
03:04:11 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154021&oldid=154019 * Helpeesl * (+0) /* Commands */
03:04:33 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154022&oldid=154021 * Helpeesl * (-6) /* Truth machine */
03:09:30 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154023&oldid=153980 * Helpeesl * (+18)
03:11:09 <korvo> 100th Coin has uploaded another Mario 3 video: https://www.youtube.com/watch?v=pK7hU-ovUso
03:14:39 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154024&oldid=154022 * Helpeesl * (+14)
03:15:08 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154025&oldid=154024 * Helpeesl * (+9)
03:16:15 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154026&oldid=154025 * Helpeesl * (+18)
03:17:46 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154027&oldid=154026 * Helpeesl * (+23)
03:25:54 -!- chiselfuse has quit (Read error: Connection reset by peer).
03:26:12 -!- chiselfuse has joined.
03:29:03 <esolangs> [[Talk:Marble maze]] N https://esolangs.org/w/index.php?oldid=154028 * Aadenboy * (+364) Created page with "it's quite fun seeing more marble based languages! I'll def try this out later! ~~~~"
03:44:58 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154029&oldid=154027 * Helpeesl * (+70)
03:50:13 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154030&oldid=154029 * Helpeesl * (+92) /* Info */
03:50:45 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154031&oldid=154030 * Helpeesl * (+2)
03:54:11 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154032&oldid=154031 * Helpeesl * (+9)
03:54:57 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154033&oldid=154032 * Helpeesl * (+0)
03:55:18 <esolangs> [[Users:helpeesl]] N https://esolangs.org/w/index.php?oldid=154034 * Helpeesl * (+12) Created page with "Hi Im Eli"
03:56:23 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154035&oldid=154033 * Helpeesl * (-13)
03:56:35 <esolangs> [[User:Helpeesl]] N https://esolangs.org/w/index.php?oldid=154036 * Helpeesl * (+12) Created page with "Hi Im Eli"
03:56:52 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154037&oldid=154035 * Helpeesl * (+12)
03:57:34 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154038&oldid=154037 * Helpeesl * (+0)
03:58:29 <esolangs> [[User:Helpeesl]] https://esolangs.org/w/index.php?diff=154039&oldid=154036 * Helpeesl * (+23)
04:04:06 <esolangs> [[User:Helpeesl]] https://esolangs.org/w/index.php?diff=154040&oldid=154039 * Helpeesl * (+215)
04:29:34 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154041&oldid=154038 * Helpeesl * (-2)
04:32:34 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154042&oldid=154041 * Helpeesl * (+4)
04:34:23 <esolangs> [[User:Helpeesl]] https://esolangs.org/w/index.php?diff=154043&oldid=154040 * Helpeesl * (+16)
04:40:15 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154044&oldid=154042 * Helpeesl * (+1)
04:42:41 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154045&oldid=154044 * Helpeesl * (-5)
04:43:30 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154046&oldid=154045 * Helpeesl * (+1)
04:49:55 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154047&oldid=154046 * Helpeesl * (+49)
04:50:58 <esolangs> [[CJKGolfer]] https://esolangs.org/w/index.php?diff=154048&oldid=153960 * PrySigneToFry * (+60)
04:57:04 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154049&oldid=154047 * Stkptr * (+0) /* Extra stuff */ That's not what the halting problem is
05:05:20 -!- mtm has quit (Ping timeout: 252 seconds).
05:06:45 -!- mtm has joined.
05:27:52 <esolangs> [[Talk:4 bits, 8 bytes]] https://esolangs.org/w/index.php?diff=154050&oldid=137309 * PrySigneToFry * (+924)
05:28:11 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154051&oldid=154049 * Helpeesl * (+204)
05:32:30 <esolangs> [[Marble maze]] https://esolangs.org/w/index.php?diff=154052&oldid=154051 * Helpeesl * (+33)
05:43:00 <esolangs> [[2 Trits, 1 Trybble]] https://esolangs.org/w/index.php?diff=154053&oldid=132850 * PrySigneToFry * (+21)
07:13:10 -!- Lord_of_Life_ has joined.
07:13:21 -!- Lord_of_Life has quit (Ping timeout: 248 seconds).
07:14:32 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:36:56 -!- tromp has joined.
07:37:23 -!- tromp has quit (Client Quit).
07:44:44 -!- tromp has joined.
08:03:53 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:09:49 -!- tromp has joined.
08:51:56 <esolangs> [[Talk:Brainfuck: Free Version]] https://esolangs.org/w/index.php?diff=154054&oldid=148716 * PrySigneToFry * (+75) /* How can I get the Premium Version?(by PSTF) */ new section
09:23:02 <esolangs> [[Surround notation]] https://esolangs.org/w/index.php?diff=154055&oldid=77702 * PrySigneToFry * (+16)
09:24:52 <esolangs> [[16 bits, 256 bytes]] N https://esolangs.org/w/index.php?oldid=154056 * PrySigneToFry * (+4996) Created page with "16 bits, 256 bytes is an Esolang designed by PSTF, and his new AI friend DeepSeek-R1 671b. It is to be not a joke, just like [[6 bits, 12 bytes]]. It is second x-bits, y-bytes, non-joke langugage. = Overview = 16 bits, 2556 bytes uses a 16 bit CPU and
09:25:43 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154057&oldid=154023 * PrySigneToFry * (+25)
09:26:38 <esolangs> [[Game of Life]] https://esolangs.org/w/index.php?diff=154058&oldid=153993 * PrySigneToFry * (+18)
09:45:27 -!- craigo has joined.
10:19:40 -!- tromp has quit (Read error: Connection reset by peer).
10:41:49 -!- Sgeo has quit (Read error: Connection reset by peer).
11:15:07 <esolangs> [[User talk:None1]] https://esolangs.org/w/index.php?diff=154059&oldid=153489 * None1 * (+376) /* You're currently not active now. */
12:00:34 -!- tromp has joined.
12:04:21 <esolangs> [[User talk:None1]] https://esolangs.org/w/index.php?diff=154060&oldid=154059 * PrySigneToFry * (+1027)
12:15:59 <esolangs> [[Talk:Pyline]] N https://esolangs.org/w/index.php?oldid=154061 * Gilbert189 * (+248) Created page with "== exec? == exec(""" while True: print("If it uses exec, is it Pyline?") # I'm surprised that nobody actually bothered to ask this since 2022. """) --~~~~"
12:19:22 -!- amby has joined.
12:48:12 <esolangs> [[Pyline Classic]] https://esolangs.org/w/index.php?diff=154062&oldid=150172 * PkmnQ * (+46) /* Brainfuck interpreter */ a few walrus operators slipped their way through
12:49:35 <esolangs> [[User talk:None1]] https://esolangs.org/w/index.php?diff=154063&oldid=154060 * I am islptng * (+64) /* You're currently not active now. */
12:50:20 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:07:19 -!- FreeFull has joined.
13:17:43 <esolangs> [[User talk:None1]] https://esolangs.org/w/index.php?diff=154064&oldid=154063 * PrySigneToFry * (+242)
13:38:30 <esolangs> [[16 bits, 256 bytes]] https://esolangs.org/w/index.php?diff=154065&oldid=154056 * PrySigneToFry * (+27)
14:04:06 -!- tromp has joined.
15:25:59 <esolangs> [[Pyline Classic]] M https://esolangs.org/w/index.php?diff=154066&oldid=154062 * Corbin * (-20) /* Brainfuck interpreter */ It's now a group project. Your credit will still be preserved in the edit history.
15:29:08 <esolangs> [[Talk:Pyline]] https://esolangs.org/w/index.php?diff=154067&oldid=154061 * Corbin * (+452) /* exec? */ Yes, and.
16:23:37 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:50:43 -!- tromp has joined.
17:04:53 -!- mtm has quit (Ping timeout: 248 seconds).
17:06:38 -!- mtm has joined.
17:07:28 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154068&oldid=154005 * Stkptr * (+1422) /* with +, -, * (at least FSM) */ It's probably equivalent to the nonnegative integers with + and *
17:09:06 <esolangs> [[Fun 2 code]] https://esolangs.org/w/index.php?diff=154069&oldid=153595 * I am islptng * (-167)
17:11:40 <korvo> Are there any languages that *don't* admit some sort of decomposition? I can't decide if this is a super-deep question or extremely stupid.
17:13:23 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154070&oldid=154068 * Stkptr * (+348) /* Removal of - */
17:30:36 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:54:15 -!- ais523 has joined.
17:54:27 <ais523> korvo: I suspect the answer to that question may depend on how you define "decomposition"
17:54:54 <korvo> ais523: Allow me to dump a list of examples.
17:55:49 <korvo> In Prolog, a program is a pile of Horn clauses. In many flowchart languages, a program is a pile of basic blocks. In Scheme, a program is a tree.
17:55:54 <ais523> fwiw, I was considering a similar (possibly identical?) problem a while ago, to create a language in which programs had to be written all at once and couldn't be built up from smaller pieces
17:56:29 <korvo> This kind of extremely simple-minded framing is really useful for partial evaluation. But even languages that aren't so simple still have nice decomposition sometimes.
17:57:17 <ais523> there are existing languages based around hash reversal, e.g. any Bubblegum program that's able to access unbounded memory or do any control flow needs to have a specific SHA-256 hash
17:57:19 <korvo> I was considering binding-time analysis in an arbitrary category, and was able to get the BTA for Brainfuck as an immediate consequence, because Brainfuck is almost entirely built from a monoid and the underlying storage is algebraically easy to describe.
17:57:46 <ais523> ah, are you thinking mostly syntactically with the decomposition?
17:58:25 <ais523> I think no-control-flow-and-implicit-loop languages are hard to decompose in that sense, things like Blindfolded Arithmetic or Three Star Programmer – but it's fairly easy to compile into them from programs with more structure
17:58:36 <korvo> Abstract syntax, yes. Don't care about concrete syntax; we typically analyze e.g. C as a basic-block language.
17:59:19 <korvo> TSP should admit a decent BTA. I'm still wrapping my head around Blindfolded Arithmetic and trying to figure out what kind of cryptanalytic tools are useful.
18:00:09 <ais523> well, Blindfolded Arithmetic isn't really encrypted, the main challenge if you have few variables is juggling data storage and control flow
18:01:00 <ais523> Imprecision (which is related to Blindfolded Arithmetic) is much harder due to the way that control flow tends to corrupt the data – I think it's probably still TC but am not usre
18:01:03 <korvo> For example, I think of the Chinese Remainder theorems as cryptanalytic. I didn't learn group theory until after I already learnt the basics of hash cracking.
18:02:11 <korvo> TIL about Bubblegum. Quite funny. I'd be happy to break it, but it'll be a few decades; any feasible attack would be better spent slurping arbitrage out of e.g. the Bitcoin market, and I'd like to retire first.
18:02:57 <ais523> the SHA-256 requirement is basically just there because the language isn't "intended" to write arbitrary programs and the aim was to avoid triggering the TC codepath accidentally, whilst still making itechnically a valid language
18:03:02 <korvo> ...Maybe this is the universe sending me a sign that I should get on that whole Bitcoin thing before somebody else finds it.
18:03:36 <ais523> A Pear Tree does something similar but I intentionally used a hash that wasn't preimage-resistant for that one
18:03:47 <korvo> Oh, really? If that's the case, then SHA-256 was *not* a good choice of hash function. Probably should have chosen something that's more symmetrically hard to assault, like RIPEMD-160.
18:03:53 <ais523> (because people were intended to be able to write arbitrary programs in it)
18:04:39 <ais523> if I had had the idea for Bubblegum rather than Dennis, I would probably have designed it differently
18:04:45 <ais523> different language designers have different styles
18:05:33 <korvo> No worries. When I'm pronoun-dropping, I'm usually intending the ambiguity. I prefer postmortem (or at least post-author-being-here) analysis to be blameless, because the goal isn't to shame but to do better in the future.
18:06:37 <ais523> that said, my main regret with A Pear Tree is that the size of the CRC doesn't scale with the size of the program, making extremely long programs hard to write due to the risk of false positives
18:06:51 <ais523> I didn't realise that was a (theoretical) problem until I'd been using it for a while
18:07:59 <ais523> (also, the interpreter isn't as optimised as I'd like, there's probably a linear-time algorithm for "identify the longest substring with a CRC-32 of 0" due to the way CRCs work, but the reference interpreter is quadratic)
18:08:55 <ais523> anyway, going back to the original question, I think a language which is hard to decompose would also be hard to program in, or to prove TC
18:09:21 <ais523> for something like Feed the Chaos, it is very unclear how storage of arbitrarily large data works, if it works at all
18:09:35 <ais523> and yet you'd need to figure that out in order to be able to decompose programs in a meaningful way
18:10:50 <ais523> (Feed the Chaos is basically a finite-state machine plus a PRNG whose state expands over time, allowing it to "store" arbitrary data, but with no obvious way to extract the data again because doing so would require distinguishing the pseudo-randomness from true randomness using just a finite state machine)
18:15:27 -!- chiselfuse has quit (Remote host closed the connection).
18:15:27 <b_jonas> korvo: one thing you can do in any Turing-complete language is to encrypt most of the code so it can only run if the input gives a specific key for the symmetric encryption, and then it's impossible to find how the code decomposes (or tell anything about what it does) unless you know that key
18:15:43 -!- chiselfuse has joined.
18:16:46 <korvo> b_jonas: So, that's similar to what ais523 did with A Pear Tree and what Dennis did with Bubblegum. I don't think that that's a serious obstacle.
18:16:57 -!- tromp has joined.
18:17:34 <korvo> Maybe it's easiest to see with Bubblegum, where I could assemble a partial evaluator from two components: a partial evaluator for Python and a second-preimage oracle for SHA-256. (Which I should emphatically stress I do *not* have.)
18:18:44 <korvo> I don't know about Feed the Chaos. And maybe that's a good place to draw a line, because it seems like anything we learn about Collatz-style chaos is going to clarify how FtC's programming model would work.
18:20:09 <ais523> I am busy trying to work out what partial evaluation in, say, the I/D machine "conceputally" is
18:20:23 <ais523> it feels like it should be meaningful but I am having trouble defining it
18:20:48 <ais523> (likewise for Blindfolded Arithmetic or Three Star Programmer)
18:22:11 <korvo> Well, it involves a complete modelling of the RAM, because that's where an input parameter would be passed in.
18:22:21 <ais523> I guess the problem is that programs in that sort of language generally rely heavily on invariants in order to keep the behaviour of code contained – the blocks of code are only designed to be meaningful under certain invariants that hold all program (except during startup) and are unlikely to happen by chance
18:23:30 <ais523> Three Star Programmer and the I/D machine both have somewhat difficult startups for the known programming techniques, generally they've been found by writing startup code and then working out how to left-cancel it
18:23:31 <korvo> A partial evaluator for TSP is very simple; it's a function N* × N* → N* sending pairs of lists of nats to a list of nats. The question is how TSP models computable functions.
18:23:48 <ais523> (but the left-cancelling also depends on the invariants)
18:24:28 <ais523> korvo: why are there two lists? program and RAM?
18:25:19 <korvo> ais523: Partial evaluation is always defined relative to an input parameter. They're both programs when we're talking about non-trivial stuff. In TSP's case, yeah, I guess it'd be passed via RAM.
18:26:13 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154071&oldid=154070 * Stkptr * (+958) /* Equivalence to with / */
18:26:18 <ais523> it isn't even immediately obvious to me how input works in 3SP
18:26:40 <korvo> It's obvious to me that it *must* work, somehow, or else it can't do something a Turing machine can.
18:27:00 <ais523> it does, but you need an encoding
18:27:19 <ais523> the output encoding in the article is a bit weird, but generic enough that you can usually fit programs around it
18:27:48 <ais523> but an input encoding is harder because in some sense it's tied to the program's memory layout
18:29:35 <ais523> I guess you could just use a sufficiently spaced-out stream of 0 and 1 in RAM (with the addresses forming an arithmetic progression), then a program could add to the cells before reading them in order to move the addresses somewhere that they could handle
18:29:40 <korvo> Well, I figured that the identity encoding is a decent-enough starting choice. And yeah, the program is allowed to non-uniformly depend on the encoding; what matters is that each encoding has its own associated proof of computability.
18:29:56 <ais523> although 0 and 2 might make it easier to write the startup code
18:30:34 <ais523> hmm, now I am wondering whether there are any inherently locked-up RAM initialisation patterns in Three Star Programmer
18:30:43 <korvo> Since one encoding can be transformed into another, there should be an underlying category, so just compose to victory. We're not begging the existence of that composition, I think.
18:30:50 <ais523> i.e. if memory has a certain state, then certain cells will be unchangeable/unreadable
18:31:32 <ais523> (barring degenerate solutions like "initialise all RAM cells with 1, now cell 0 is unwriteable and unreadable")
18:32:16 <korvo> ais523: FWIW I will credit you with achieving the goal in practice; I can't actually imagine sitting down and building any of these partial evaluators. I can't even imagine partial evaluation of BIIA?
18:32:54 <ais523> korvo: I guess my problem is that although the encodings can be transformed into each other given a sufficiently powerful language, 3SP can't do the transformation "from inside" – I suspect the language is insufficiently powerful to read arbitrarily initialised RAM
18:34:31 <ais523> so when I think about a partial evaluator, I'm mostly thinking about it from the language's own point of view
18:35:46 <ais523> I think about Three Star Programmer in terms of a wimpmode in which you can use one, two or three stars – this is much easier to program in, and there's a type of partial evaluation that's much easier to achieve in the wimpmode (if you can assume a memory address is not changed indirectly while a fragment of code is running, and starts with a known value, you can constant-fold)
18:36:44 <korvo> ais523: Oh, okay, I think I confused TSP with something else. All TSP programs run forever, right? So what's an example of a Rice property in TSP?
18:36:53 <ais523> and the primary difficulty is just that 3SP always has *exactly* three levels of indirection, if you want fewer you need to indirect through a RAM cell with a known value – but then constant folding isn't expressible in the language itself, you have to go to the wimpmode
18:37:07 <ais523> korvo: whether a specific cell is ever changed
18:38:01 <korvo> Ugh, okay. Then I was completely wrong with my guess about RAM. Input would have to be simulated by pre-composition.
18:38:20 <korvo> Sorry for the red herring. I was thinking of some other RAM machine.
18:38:28 <ais523> ah, OK – this explains why I was confused
18:39:41 <b_jonas> ais523: this sounds like the complaint that David Madore recently had that if you are writing in untyped lambda calculus (or, say, unlambda without c or d) and you pass your program a lambda calculus function then it can't examine that function without executing it and executing it might result in an endless loop that your program can't break. but the problem here is just the encoding, you should ask
18:39:47 <b_jonas> for an encoded version of the function, and add a lambda expression interpreter to your program. similarly for 3SP, ask for a 3SP machine program and state encoded in a way that you can process with 3SP.
18:39:59 <korvo> No worries. I am not a fan of never-halting machines. In addition to the category of encodings, I see what you're describing now; it's like how a Ferris wheel has a group action but only one egress.
18:40:13 <korvo> I dislike these because e.g. Wolfram likes to sneak in uncomputable bullshit at the exit.
18:40:47 <b_jonas> it's kind of an unfair complaint, because you could just as well say that if you pass your turing machine program a second turing machine by adding its states with the starting state with a known name, then you can't write a turing machine program that examines its argument program
18:40:52 <ais523> korvo: this is a problem that's annoyed me for a very long time (i.e. ensuring that the "artificial halt condition" isn't contributing to computability at all)
18:41:12 <b_jonas> but if you just write an encoding of the turing machine program onto the tape then your program can easily examine it
18:41:44 <ais523> b_jonas: yes – one of the reasons that many of my languages don't have clear I/O is that they inherently require an encoding in order to work and yet the language doesn't naturally enforce a particular encoding
18:42:05 <korvo> ais523: At the same time, e.g. analog computers often converge to a steady state, and that's what we want so that we can take a reading. Sometimes that's how nature computes for us.
18:42:27 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:43:13 <korvo> b_jonas: Sure. That distinction is built into partial-evaluation lore; we say that the evaluator always operates on source code or abstract syntax. Folks will often bust out the lore that a TC language's programs "have access to their own source code", too.
18:43:30 <ais523> there are some input schemes for implicit-loop languages that are fairly general, e.g. "you write two programs, X and Y; the interpreter runs X a number of times equal to the input, then runs Y in a loop until the program halts"
18:43:51 <korvo> But what "have access" means is that we use one of Gödel's diagonal lemmas to *bundle* the source code into an encoded package which can be treated as a first-order syntactic literal.
18:43:52 <ais523> that's basically what I did for Tip
18:44:55 <ais523> korvo: this is well-known among esoprogrammers but normally seen from a different point of view, often summarised as "any TC language has a quine" (modulo issues with output encoding)
18:45:09 <b_jonas> don't take "complaint" seriously, I'm misrepresenting what David said a bit there
18:45:19 <korvo> That's also how a DSP is set up, too. The "interpreter" takes a high-level plan X in a language like CSound, emits parameters for a "super-shader" or "effects pipeline" Y, and then runs Y on incoming samples indefinitely.
18:45:31 <ais523> it's possible to define languages with defective output routines that leave them unable to *output* their own source even though they can *calculate* it
18:46:12 <ais523> and that leads to languages with no literal quines, even though they can do arbitrary calculations on their own source
18:46:45 <ais523> but generally that only happens in cases intentionally constructed as counterexampels
18:47:24 -!- tromp has joined.
18:47:29 <korvo> ais523: Yeah. Again, what Gödel actually gave is very specific: given that a language computes a surjection over some output type which encodes source code, if it's TC then there will be a program which encodes itself.
18:47:53 <korvo> And again that's just the Diagonal Lemma. So it really is just a problem of that final exit encoding.
18:48:18 <ais523> anyway, I do get concerned enough about people cheating with "artificial halt conditions" that I generally look for ways to simplify them
18:49:06 <korvo> I think that this is an even sharper answer to my original question. If a language is TC and has a Gödel encoding that it can emit, then there should be a partial evaluator; otherwise, there's many possible obstacles.
18:49:29 <ais523> e.g. I think that Wolfram's 2,3 Turing machine can be made to halt by going off the left edge of a semi-infinite tape (unfortunately it still requires the nonrepeating and somewhat complex input encoding – and although I'm fairly sure I wasn't cheating with that, it is hard to precisely define the reason the encoding isn't cheating)
18:49:45 <korvo> TC-ness ensures that we can do the bundling required to pass input parameters via precomposition.
18:52:27 <ais523> OK, I think the result can be expressed like this – say we have a TC language and an input encoding for it that can express multiple inputs – we can write an interpreter that takes a set of inputs some of which are taken from its input and some of which are hardcoded, plus a hardcoded program, and simulates that program on those inputs – and then because the original language is TC we can write that interpreter in that language
18:52:37 <ais523> and this is a (somewhat degenerately) partially evaluated program
18:53:04 <korvo> Yep, that's all the ingredients of Futamura's first projection.
18:54:14 <ais523> but that doesn't imply to me that the language is necessarily decomposable, although this is partly due to not having a formalised notion of what decomposition means
18:54:46 <int-e> Hmm, where did this start. Decomposition? I suspect that's mostly an artifact of making programming manageable for humans. It's worth noting that pretty much the first thing Alan Turing did with his inscrutable TM formalism (it's a bag of transitions that interact in wild ways) is make it structured so you can have composable parts.
18:54:58 <ais523> I guess it's because the projection treats the program, in effect, as a black box – and the black box is still there (in encoded form) in the output, so nothing's actually been decomposed, just composed around
18:55:20 <korvo> int-e: Oh, I think I was starting with homoiconicity. Prolog and Lisp are both homoiconic; does that make them easier to partially evaluate?
18:55:40 <int-e> Or maybe consider Malbolge? Hmm.
18:55:40 <ais523> korvo: so recently I've been working with Rust procedural macros
18:56:08 <korvo> I think, in this discussion, the answer is that it's easier to write a *syntactically trivial* self-applicable partial evaluator, yes. But writing a good partial evaluator still requires writing an interpreter and doing optimizations.
18:56:14 <ais523> it is a bit of a mess to program in, you basically get a list of tokens that are contained within the macro call (with () [] {} matched for you) and have to output a list of tokens (again with those matched)
18:56:46 <korvo> ais523: Yeah, it's kind of like an expression tree, I guess? I've only used them; I haven't written any.
18:56:47 <ais523> and I'm not sure of the extent to which that's related to homoiconicity
18:57:21 <ais523> korvo: it's less structured than the language as a whole, because it's a token list rather than an AST (i.e. it's been lexed for you but you have to parse it yourself)
18:57:42 <int-e> korvo: I see. But there is a "how do we program" or, closely related, "how do we show TC-ness" angle to this.
18:57:48 <ais523> the requirement for matched brackets/braces/parens is probably just there to ensure that the end of the macro call can be uniquely determined
18:58:13 <ais523> in particular the contents of the macro call don't have to be valid Rust, you can make up your own language as long as it lexes the same way Rust does
18:58:25 <ais523> (same literal syntax and same comment syntax)
18:59:19 <ais523> I have been trying to hand-write parsers for this and it is really frustrating, I would actually rather just have a list of bytes
19:00:06 <ais523> (mostly because you can't ergonomically do matches on the tokens, because you have to call methods on them to work out what sort of token they are and Rust's pattern-matching can't express that succinctly)
19:00:27 <korvo> There's a simple class of parsers that I haven't really seen discussed. Parsing proceeds by string splitting on delimiter tokens. On-wiki, a good example is DIVSPL. In Rust macros, I've used egg's macro interface.
19:01:28 <ais523> I've written those in the past, mostly for scraping output generated from a known program (i.e. the program outputted the output for human consumption and I'm trying to undo the pretty-printing to get at the underlying data in machine-readable form)
19:02:07 <korvo> But yeah, writing this still looks quite nasty: https://github.com/egraphs-good/egg/blob/main/src/macros.rs
19:02:47 <korvo> ais523: I've been researching what to add to Cammy, because I don't want to just slap on an Expr type and call it good. That wasn't fun in Monte.
19:03:10 <int-e> rust macros are a sore spot
19:03:45 <korvo> Monte's homoiconic like Prolog's homoiconic: there's an API that lets you turn expressions into primitives and syntax for (quasi)quotation. But there's always going to be some sort of builtin or opaque expression that can't be examined this way, and we say an interpreter "bottoms out" and calls something native.
19:04:13 <ais523> the motivation behind Rust's system was basically to ensure that macros wouldn't break as new language features were added, which is surprisingly sensible
19:04:48 <ais523> the API is basically just there to be something stable that's technically usable, and they're relying on third-party crates to turn it into something that's actually reasonable in practice
19:05:05 <ais523> (but, I don't like using third-party crates so I've been trying to make it work on my own)
19:05:09 <int-e> . o O ( Leading to Rust's original syn )
19:05:31 <korvo> Yeah. I've used PyMacro for Python, and those macros break between Python 3 minor versions. PyMacro for RPython, which is frozen on Python 2.7's AST, is actually kind of awesome; we added do-notation, etc.
19:11:06 <korvo> So, my idea for Cammy was to *not* have an Expr type. Nor to add trees that are Cammy-shaped, since that's dependent on the number of primitives, which I want to reduce. Awkward future compatibility.
19:12:10 <korvo> Instead I'm thinking of doing like MetaOCaml and adding a two-tiered type theory. So there are arrows X → Y and also lifted arrows [X → Y] along with liftings of all of the builtins and primitives.
19:12:34 <ais523> <korvo> int-e: Oh, I think I was starting with homoiconicity. Prolog and Lisp are both homoiconic; does that make them easier to partially evaluate? ← my guess is that homoiconicity "shouldn't" be relevant because it is in theory an implementation detail
19:13:42 <korvo> This bites in general because we can't lower a lifted arrow without a proof, but in Cammy I can use some abstract nonsense and yoga to lift Cartesian-closedness from the inner curry [X,Y] to the lifted curry [X → Y].
19:13:55 <ais523> it's more relevant in Prolog than in Lisp due to assert and clause; Lisp has eval, which is assert-like, but I don't think it has a commonly used clause
19:14:10 * int-e is looking at https://doc.rust-lang.org/proc_macro/enum.TokenTree.html and still doesn't like it ;-)
19:14:37 <korvo> ais523: I think (read) is the key for Lisp. Like, the trick isn't a nice abstract syntax, but a nice reader for that abstract syntax which separates out everything into evaluated and lifted ("quoted") terms.
19:15:52 <ais523> I guess Tcl is also an interesting case
19:16:42 <ais523> (Wikipedia thinks it's homoiconic, although if so, it's homoiconic in the "reverse" sense to Lisp – notionally it stores everything as strings, including loop bodies, and parses them only when they're just about to be used)
19:16:51 <int-e> adding to ais523's point, you don't have to do partial evaluation at the source code level; you can pick an intermediate language that supports it better
19:18:17 <ais523> actually I guess Underload is in the same boat as Tcl, except that it doesn't have string manipulation primitives so the only ways to operate on strings in Underload are eval ^ and output S
19:18:28 <ais523> and that in turn means that they probably aren't actually strings in a useful sense
19:19:03 <korvo> Execline is another fun example of everything-is-a-string.
19:20:05 <korvo> Actually we don't know if execline is TC! We merely know that it has quines.
19:40:05 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:48:38 -!- vyv has joined.
19:57:58 <esolangs> [[Delta Relay]] https://esolangs.org/w/index.php?diff=154072&oldid=142759 * Ais523 * (+11) /* Continuous Delta Relay */ add a couple of words that were omitted from the sentence
20:01:51 -!- tromp has joined.
20:29:06 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154073&oldid=154057 * Buckets * (+12)
20:29:47 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154074&oldid=153981 * Buckets * (+11)
20:29:56 <esolangs> [[Esorn]] N https://esolangs.org/w/index.php?oldid=154075 * Buckets * (+850) Created page with "Esorn is an Esoteric programming language created by [[User:Buckets]] in 2020. {| class="wikitable" |- ! Commands !! Instructions |- | a || +1 |- | b || -1 |- | c || Go down 2 lines. |- | d || Set the point. |- | E || Go to the point. |- | f || Ignore the next command onc
20:41:33 -!- vyv has quit (Quit: Konversation terminated!).
20:50:08 <esolangs> [[Pointing]] https://esolangs.org/w/index.php?diff=154076&oldid=153991 * Calculus is fun * (+1215) Simple calculator
21:01:41 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:04:41 -!- tromp has joined.
21:05:41 -!- tromp has quit (Client Quit).
21:06:28 -!- tromp has joined.
21:32:34 -!- ais523 has quit (Quit: quit).
22:17:31 <esolangs> [[S*n]] M https://esolangs.org/w/index.php?diff=154077&oldid=153437 * Buckets * (+34)
22:19:32 -!- ajal has joined.
22:19:32 -!- amby has quit (Read error: Connection reset by peer).
22:19:53 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:19:17 -!- Sgeo has joined.
00:37:10 <esolangs> [[Pointing]] M https://esolangs.org/w/index.php?diff=154078&oldid=154076 * Calculus is fun * (+6) /* Assignments */
01:02:25 <esolangs> [[16 bits, 256 bytes]] https://esolangs.org/w/index.php?diff=154079&oldid=154065 * PrySigneToFry * (+590)
01:43:49 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=154080&oldid=153728 * PrySigneToFry * (+858)
01:45:36 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=154081&oldid=153726 * PrySigneToFry * (-12)
01:46:55 -!- craigo has quit (Remote host closed the connection).
01:50:40 <esolangs> [[Imprecision]] https://esolangs.org/w/index.php?diff=154082&oldid=150887 * Stkptr * (+243) Link to GBA
01:54:59 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=154083&oldid=154071 * Stkptr * (-27) /* Example languages */
01:58:05 <esolangs> [[Iterate/Turing-completeness proof]] N https://esolangs.org/w/index.php?oldid=154084 * Aadenboy * (+3653) Created page with "This proves [[Iterate]]'s [[Turing completeness]] by implementing [[Bitwise Cyclic Tag]]. == Specification == <pre> Let L1 be a single cycle of the execution sequence, stored in base 10. Let L2 be the length of L1. Let L3 be the data string,
01:58:27 <esolangs> [[Iterate/Turing-completeness proof]] M https://esolangs.org/w/index.php?diff=154085&oldid=154084 * Aadenboy * (+18)
01:59:16 <esolangs> [[Iterate]] https://esolangs.org/w/index.php?diff=154086&oldid=151378 * Aadenboy * (+364) turing complete
02:01:18 <esolangs> [[Talk:Iterate]] https://esolangs.org/w/index.php?diff=154087&oldid=153616 * Aadenboy * (+494)
02:14:48 <esolangs> [[User talk:MihaiEso]] https://esolangs.org/w/index.php?diff=154088&oldid=152777 * PrySigneToFry * (+900) /* You're invited to EternalGolf Development Team. */ new section
02:25:15 -!- ajal has quit (Remote host closed the connection).
02:48:28 <fizzie> Filed a support ticket for that IPv6 issue, as it has failed to spontaneously resolve itself. Here's hoping for a positive support experience for once.
02:58:13 <esolangs> [[Semi-serious language list]] M https://esolangs.org/w/index.php?diff=154089&oldid=150342 * Aadenboy * (+14) /* I */ add [[Iterate]] (?)
03:05:02 -!- op_4 has quit (Remote host closed the connection).
03:05:33 -!- op_4 has joined.
03:43:54 -!- FreeFull has quit (Quit: Lost terminal).
04:01:50 <esolangs> [[User:I am islptng/List of "x bits, y bytes"]] https://esolangs.org/w/index.php?diff=154090&oldid=153703 * PrySigneToFry * (+52)
04:05:34 <esolangs> [[1 8 1 8 1]] N https://esolangs.org/w/index.php?oldid=154091 * Helpeesl * (+2732) Created page with "== info == 1 8 1 8 1 (pronounced splits) is a 2D Esolang created by [[user:helpeesl]] on march 15th 2025. == commands == === splitters === Splitters split the pointer in two and they go in the directions that it is labeled Up r L l I g J v<br> Up-right r c { ( /
04:06:28 <esolangs> [[1 8 1 8 1]] https://esolangs.org/w/index.php?diff=154092&oldid=154091 * Helpeesl * (+0) Fixed a typo
04:07:43 <esolangs> [[16 bits, 256 bytes]] https://esolangs.org/w/index.php?diff=154093&oldid=154079 * PrySigneToFry * (+303)
05:03:39 -!- mtm has quit (Ping timeout: 260 seconds).
05:06:51 -!- mtm has joined.
05:09:30 <esolangs> [[Semi-serious language list]] M https://esolangs.org/w/index.php?diff=154094&oldid=154089 * Calculus is fun * (+15) /* P */
05:10:03 <esolangs> [[Semi-serious language list]] M https://esolangs.org/w/index.php?diff=154095&oldid=154094 * Calculus is fun * (+18) /* M */
06:28:24 <esolangs> [[16 bits, 256 bytes]] https://esolangs.org/w/index.php?diff=154096&oldid=154093 * PrySigneToFry * (+562)
06:28:44 <esolangs> [[16 bits, 256 bytes]] https://esolangs.org/w/index.php?diff=154097&oldid=154096 * PrySigneToFry * (+2)
06:45:18 <esolangs> [[16 bits, 256 bytes]] https://esolangs.org/w/index.php?diff=154098&oldid=154097 * PrySigneToFry * (+0)
07:12:51 -!- Lord_of_Life_ has joined.
07:13:12 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
07:14:14 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
09:35:17 -!- moony0 has joined.
09:36:21 -!- Bowserinator has quit (Ping timeout: 248 seconds).
09:36:30 -!- moony has quit (Ping timeout: 246 seconds).
09:36:30 -!- moony0 has changed nick to moony.
09:36:40 -!- iovoid has quit (Read error: Connection reset by peer).
09:38:21 -!- Bowserinator has joined.
09:38:31 -!- iovoid has joined.
09:43:46 -!- FreeFull has joined.
10:50:30 <esolangs> [[Stillbrithiarngialpielroinuslislislislislisquattostamiswackilduasliesfris]] https://esolangs.org/w/index.php?diff=154099&oldid=153739 * I am islptng * (-5) /* Greet me again!? */
11:17:55 -!- Sgeo has quit (Read error: Connection reset by peer).
11:33:44 <fizzie> Support asked for traceroute outputs (even though I had pretty much explained the salient points in it), and pointed at a really odd choice of a superuser.com question for instructions how to get one, but perhaps adding those is a prerequisite of getting the ticket sent to a more networking-related team.
12:03:35 <esolangs> [[Special:Log/newusers]] create * OfficialWatchOS7 * New user account
12:34:05 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=154100&oldid=154080 * Hotcrystal0 * (+0) Its switch engine, not Schlick
12:35:39 -!- tromp has joined.
13:32:36 -!- amby has joined.
15:07:44 <esolangs> [[1 8 1 8 1]] https://esolangs.org/w/index.php?diff=154101&oldid=154092 * Helpeesl * (+44)
15:53:52 -!- Hooloovoo has quit (Ping timeout: 252 seconds).
16:41:00 -!- amby has quit (Read error: Connection reset by peer).
16:41:17 -!- amby has joined.
16:45:03 -!- Hooloovoo has joined.
16:48:42 <esolangs> [[Esolang talk:Categorization]] M https://esolangs.org/w/index.php?diff=154102&oldid=151584 * Corbin * (+213) /* Actor languages */ Found another one.
16:57:29 -!- iovoid has quit (Ping timeout: 260 seconds).
16:58:05 -!- iovoid has joined.
17:03:54 -!- mtm has quit (Ping timeout: 260 seconds).
17:06:42 -!- mtm has joined.
17:15:30 -!- amby has quit (Remote host closed the connection).
17:15:47 -!- amby has joined.
17:38:11 -!- craigo has joined.
17:41:58 -!- amby has quit (Remote host closed the connection).
17:42:11 -!- amby has joined.
18:34:57 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154103&oldid=154083 * Stkptr * (+1754) Add a summary table
18:35:19 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=154104&oldid=154103 * Stkptr * (+0) /* Summary */
19:10:48 -!- Sgeo has joined.
19:30:03 <Sgeo> "There are several approaches to building a set to represent the real numbers. The one used in Section 1.2 of the textbook is Dedekind cuts. For us, Dedekind cuts are simply a way to get a concrete representation of the real numbers. In fact, once we have done that and used them to get some understanding of the real numbers, you should pretty much forget about them.
19:30:36 <Sgeo> Stumbling on some class notes by searching for dedekind cuts >.>
19:31:37 <Sgeo> Cube root of 2 seems like a popular example
19:32:46 <korvo> There's also Cauchy sequences, which are often more obvious for programmers; e.g. numerical methods often converge using Cauchy-like sequences.
19:32:55 <Sgeo> https://math.hws.edu/eck/math331/guide2020/02-dedekind-cuts.html
19:33:30 <int-e> why not square root... oh because x |-> x^3 is strictly increasing and x |-> x^2 is not
19:53:44 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154105&oldid=154104 * Stkptr * (+21) /* Immediately Turing complete additions */
20:19:46 <Sgeo> The site has something about a field F that's larger than R, but I didn't really read it fully.
20:20:16 <Sgeo> https://math.hws.edu/eck/math331/guide2020/04-axioms-for-R.html
20:20:26 <Sgeo> "Note that a real number
20:20:27 <Sgeo> can be considered to be the rational function
20:20:27 <Sgeo> . So we can consider
20:20:29 <Sgeo> to be a subset of
20:20:33 -!- Sgeo has quit (Quit: Leaving).
20:20:50 -!- Sgeo has joined.
20:21:01 <Sgeo> eep, sorry about spam
20:21:08 <korvo> Sure. For example, C is "larger" than R in several senses; it's not bigger in terms of cardinality, but it's got an algebraic completion: every polynomial over integers has roots in C, but not necessarily in R.
20:21:17 <korvo> Er, where C is the complex plane.
20:22:09 <Sgeo> Does F have a googleable name?
20:22:15 <int-e> you can have ordered fields of arbitrarily large cardinality
20:23:59 <Sgeo> "rational functions" I guess?
20:25:27 <Sgeo> Ok, so F contains functions that work as real numbers and functions that aren't correlated with a real number
20:28:11 <korvo> Sgeo: I didn't see what F was, exactly. You might like looking up "polynomial ring"; if you have polynomials, you can add and multiply them. Rational functions are a natural generalization to fields when we consider non-zero division.
20:28:37 <int-e> Hmm. With that order, you can think of x as a +infinity.
20:29:03 <korvo> Note BTW that there's a construction called "field of fractions"; given a ring, we can just pretend that division works by cancelling multiplication. This construction sends the integers Z to the rationals Q, for example.
20:29:04 <int-e> So isomorphic to R(omega) where omega comes from the surreal numbers.
20:29:34 <int-e> Without the order it would just be written as R(x).
20:29:53 <korvo> And it also sends the polynomial ring over integers Z[x] to the rational polynomials Q[x], provoking my nightmares of returning to grade school.
20:31:21 <int-e> No it sends Z[x] to Q(x) ~ Z(x).
20:31:28 <int-e> you get things like 1/x
20:32:00 <korvo> Oh, nice catch. And the surreals are the "largest" such field from those linked axioms, right?
20:32:45 <int-e> (Q(x) and Z(x) are the same because you can multiply all coefficients by a common denominator)
20:33:56 <int-e> Hmm. While the surreals are a proper class (so not a field in the usual sense; Conway calls it a Field), I bet there's still room for adding ever more large ordinals to the generators.
20:34:50 <korvo> Conway's Field is useful. A serious problem with fields -- besides not being truly algebraic -- is that their category isn't connected. This means that we can't really embed one field into another without ignoring e.g. their characteristics.
20:37:40 <korvo> Sgeo: This isn't a problem for you because everything's currently "characteristic zero", meaning that 1 + 1 + 1 + … ≠ 0. As long as that's the case, sometimes one field will be a subfield of another, and that's nice! But it's not how fields work in general.
20:38:24 <korvo> (Exercise for reader: (non-trivial) field homomorphisms are always injections; if one field maps into another, then it always does so as a subfield. Why?)
20:54:34 <fizzie> Replies in my ticket have graduated from a plain "Cloud Support Engineer" to a "Senior Cloud Support Engineer", but the latter did not understand the problem either.
20:54:46 <fizzie> I'm sad that this support experience is going almost exactly as I expected it to.
20:58:59 <fizzie> The Cloud Support Engineer asked for an "MTR report" (a particular traceroute tool) despite it not showing anything I hadn't already described. The Senior Cloud Support Engineer has fixated on a meaningless 95% packet loss rate indicated on the last line of the traceroute, despite the fact that (a) the address isn't my VPS's, and (b) the "packet loss" is there just because the last reachable
20:59:01 <fizzie> router appears to only send an ICMP "address unreachable" response to a fraction of packets.
20:59:19 <fizzie> So they've live-migrated my VPS to another hypervisor, which predictably has changed nothing.
20:59:44 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154106&oldid=154073 * Buckets * (+11)
21:00:22 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154107&oldid=154074 * Buckets * (+10)
21:00:42 <esolangs> [[Icea]] N https://esolangs.org/w/index.php?oldid=154108 * Buckets * (+2188) Created page with "Icea is an Esoteric programming language created by [[User:Buckets]] in 2024. {| class="wikitable" |- ! Commands !! Instructions |- | , , , , , , , , and . || Borders for Instructions. |- | #m || Set The inside border Identification m. |- | {n} || Activate that certain B
21:02:17 <fizzie> I could pay $999/month (not a joke, that's the exact price) for the "premium" support tier and get access to a Slack channel where they could probably solve this in a matter of minutes (or, alternatively, confirm that the problem is on my ISP's side of the fence), but that would amount to 166.5 months worth of the actual service.
21:06:30 <esolangs> [[Omit]] M https://esolangs.org/w/index.php?diff=154109&oldid=153647 * Buckets * (+9)
21:09:32 <korvo> fizzie: It's fun to imagine that the same senior engineer ordered ICMP disabled for security reasons, although it's likely a separate security engineer that made that unhelpful choice.
21:10:39 <korvo> int-e: Sorry for sounding like a textbook earlier. I'm reading https://arxiv.org/abs/math/0602053 so I can improve this painfully bad page: https://ncatlab.org/nlab/show/algorithm
00:51:55 -!- 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).
00:58:46 -!- craigo has quit (Quit: Leaving).
01:56:58 <zzo38> How to implement custom subtitle rendering with libmpv?
02:05:25 <zzo38> It look like "overlay-add" command can be used for adding a overlay, but then the timing will be needed.
02:37:26 <Sgeo> I like hyperreal numbers, and I guess surreal numbers include hyperreals? I still don't quite understand surreal numbers
02:38:00 <Sgeo> I also like projectively extended reals (because I like diving by zero) but I guess that's in conflict with those.
02:38:16 <Sgeo> dividing by zero
03:18:44 <korvo> Sgeo: I can go pop open ONAG and try to give a good answer based on that, but I don't know how to relate surreals to hyperreals offhand.
03:21:58 <korvo> Okay, ONAG doesn't directly say, and the index doesn't have "hyperreal". But y'know how hyperreal numbers are kind of like a sequence of real numbers? (Blah blah, "ultrapower", etc.)
03:23:00 <korvo> Surreal numbers are closed under a similar sort of sequencing operation which includes transfinite sequences. So every hyperreal can be mapped to a surreal in this fashion.
03:29:56 <korvo> Sgeo: ONAG, Theorems 28 and 29, Conway shows that the surreals are "universally embedding" when considered as a totally-ordered field. This property means that the subfields of the surreals are closed under extension; there's no way to adjoin a new element to a surreal subfield in a way that can't be embedded (up to iso)
03:35:41 <korvo> Oh, also Theorem 21, for which Conway gives a reference, leading to Hahn series. WP's page gives the surreals as an example. Conway says that "the structure of [the surreals] as a [field] can be obtained from its structure as an [additive group]".
03:48:58 -!- FreeFull has quit.
04:41:03 <zzo38> Do you have information about the protocol used for the remote control and IR receiver for "Creative PC-DVD"? I might want to connect it to a Raspberry Pi computer.
04:50:19 <zzo38> Can you win at Pokemon by selecting Trick Room and then winning before the next turn, in a single battle (not double)? (I can think of a few cases where that might help, but it might be rare enough that it never happens, and I am not entirely sure of all of the rules in all of these cases.)
05:04:18 -!- mtm has quit (Ping timeout: 268 seconds).
05:07:20 -!- mtm has joined.
06:05:05 -!- Sgeo has quit (Read error: Connection reset by peer).
07:13:43 -!- Lord_of_Life_ has joined.
07:13:57 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
07:15:07 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:49:27 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154110&oldid=154105 * Stkptr * (+449) I did some cursory reading
08:18:30 -!- ais523 has joined.
08:18:51 <ais523> <zzo38> Can you win at Pokemon by selecting Trick Room and then winning before the next turn, in a single battle (not double)? (I can think of a few cases where that might help, but it might be rare enough that it never happens, and I am not entirely sure of all of the rules in all of these cases.) ← the most obvious case is when the opponent uses a move that KOs their own Pokémon, e.g. Explosion or Memento
08:19:55 <ais523> a passive damage win is also possible, especially if the opponent's Pokémon is Shedinja
08:21:17 <ais523> in fact, you can win beat an entire team before move selection on the next turn if there are Spikes or Stealth Rock up and the opposing team consists entirely of Shedinjas (I don't think it's possible to set that situation up on turn 1 of a battle if you select Trick Room, but it might be possible on a subsequent turn)
08:50:45 <esolangs> [[Special:Log/newusers]] create * JIT * New user account
08:58:18 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=154111&oldid=154006 * JIT * (+179)
09:00:24 <esolangs> [[User:JIT]] N https://esolangs.org/w/index.php?oldid=154112 * JIT * (+50) Created page with "Hi, I'm JIT (which is an acronym of my full name!)"
09:24:46 -!- Artea has quit (Remote host closed the connection).
09:28:30 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154113&oldid=154110 * Stkptr * (+818) references
09:33:27 -!- Artea has joined.
11:11:46 <esolangs> [[Special:Log/newusers]] create * * New user account
11:16:02 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154114&oldid=154111 * * (+119) just added some stuff about me
12:06:30 <esolangs> [[Amethyst]] N https://esolangs.org/w/index.php?oldid=154115 * PrySigneToFry * (+10510) Created page with "Amethyst is a programming language designed by PSTF. It is influenced by Ruby, C++, Lua, Python and JavaScript. = Language Overview = Amethyst is a lightweight, high-level programming language that is primarily used to write cross-platform applications, data an
12:07:26 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154116&oldid=154106 * PrySigneToFry * (+15)
12:35:16 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=154117&oldid=153963 * Hotcrystal0 * (+37)
12:35:27 <esolangs> [[User:Hotcrystal0/Colon three]] N https://esolangs.org/w/index.php?oldid=154118 * Hotcrystal0 * (+23) Created page with "{{wrongtitle|title=:3}}"
12:37:48 <esolangs> [[User:Hotcrystal0/Colon three]] https://esolangs.org/w/index.php?diff=154119&oldid=154118 * Hotcrystal0 * (+56)
12:37:59 <esolangs> [[User:Hotcrystal0/Colon three]] https://esolangs.org/w/index.php?diff=154120&oldid=154119 * Hotcrystal0 * (+10)
12:38:52 <esolangs> [[User:Hotcrystal0/Colon three]] https://esolangs.org/w/index.php?diff=154121&oldid=154120 * Hotcrystal0 * (+60)
12:44:54 <esolangs> [[PoeticChicken]] https://esolangs.org/w/index.php?diff=154122&oldid=153330 * Hotcrystal0 * (+31)
12:53:59 <fizzie> A (new) "Cloud Support Engineer" has escalated the ticket to the "Engineering team", which is... promising? Maybe.
13:11:36 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154123&oldid=153749 * Hotcrystal0 * (-503)
13:21:10 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154124&oldid=154123 * Hotcrystal0 * (+7)
13:28:19 <esolangs> [[Rinuk]] N https://esolangs.org/w/index.php?oldid=154125 * JIT * (+920) Created page with "Rinuk is an esolang by [[User:JIT]], 2025 "''What if [[brainfuck]] but compact, but still readable?''" : -[[JIT]], 2025 So, Rinuk is just [[brainfuck]] but compact, but still readable "Readable" means in this context, is just '''not an error unicode.''' (Like or ) {| clas
13:29:40 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154126&oldid=154116 * JIT * (+12)
13:45:35 <esolangs> [[Talk:Icea]] N https://esolangs.org/w/index.php?oldid=154127 * JIT * (+263) Created page with "Is it pronounced Ikea, I see ah or Ice ah? --~~~~: JIT<sub><small>JIT<sub><small>JIT<sub><small>JIT<sub><small>JIT<sub><small>JIT</small></sub></small></sub></small></sub></small></sub></small></sub>"
13:49:47 -!- ais523 has quit (Quit: quit).
13:52:57 -!- wib_jonas has joined.
14:02:45 <wib_jonas> TIL that if you set up Firefox on Windows to ask where to save each download then a webpage can DOS Firefox by asking it to download lots of files and thus popping up lots of Windows save dialogs that are each modal so you can't do anything with Firefox until you close them
14:10:54 -!- craigo has joined.
14:22:54 -!- wib_jonas has quit (Ping timeout: 240 seconds).
17:03:26 -!- mtm has quit (Ping timeout: 252 seconds).
17:06:55 -!- mtm has joined.
17:22:14 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154128&oldid=154124 * Hotcrystal0 * (+76)
17:22:29 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154129&oldid=154128 * Hotcrystal0 * (-11)
17:22:36 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154130&oldid=154129 * Hotcrystal0 * (-4)
17:23:07 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154131&oldid=154130 * Hotcrystal0 * (+4)
17:24:35 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154132&oldid=154131 * Hotcrystal0 * (-65)
18:12:17 <esolangs> [[?Q?]] https://esolangs.org/w/index.php?diff=154133&oldid=135845 * Yayimhere2(school) * (+2) /* syntax */ add space to avoid confusion
18:15:48 -!- Trigon has joined.
18:47:14 <zzo38> One thing I thought it might affect is the order of being damaged by weather and status (I don't actually know if it does, but I would guess so).
18:47:21 -!- Hoolootwo has joined.
18:47:34 -!- Hooloovoo has quit (Ping timeout: 260 seconds).
18:48:43 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154134&oldid=154113 * Stkptr * (+2182) /* with +, -, *, / (at least FSM) */
18:49:30 <zzo38> Possibly also, if you are confused and opponent only has moves that have enough recoil damage to knock out themself but not enough damage to defeat you, but the confusion damage is enough to knock yourself out, then perhaps the low priority of Trick Room is useful. (Even if the opponent's move can defeat you with a critical hit, the chance of hitting yourself in confusion is more than the chance of a critical hit.)
18:51:06 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154135&oldid=154134 * Stkptr * (+15) /* A simpler infinity */ formatting
18:54:23 <esolangs> [[User:Hakerh400/Flexible dependencies in Haskell]] N https://esolangs.org/w/index.php?oldid=154136 * Hakerh400 * (+2323) Created page with "It is well known that in Haskell there is no easy way to put functions that depend on each other into seperate files. The reason is because Haskell does not allow circular imports (like in Node.js) or header files (like in C). G
18:54:44 <esolangs> [[User:Hakerh400]] https://esolangs.org/w/index.php?diff=154137&oldid=153850 * Hakerh400 * (+87) /* Articles */
19:55:13 <esolangs> [[?Q?]] M https://esolangs.org/w/index.php?diff=154138&oldid=154133 * Aadenboy * (+91) /* syntax */ formatting
19:56:00 <esolangs> [[Semi-serious language list]] https://esolangs.org/w/index.php?diff=154139&oldid=154095 * DanielDG * (+15) Added my language, Aardvark.
20:02:37 <esolangs> [[User:Aadenboy]] M https://esolangs.org/w/index.php?diff=154140&oldid=153995 * Aadenboy * (-42) /* my own esolangs */ updating now that [[iterate]] is tc
20:02:51 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154141&oldid=154126 * Buckets * (+12)
20:03:26 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154142&oldid=154107 * Buckets * (+11)
20:03:36 <esolangs> [[Eans,]] N https://esolangs.org/w/index.php?oldid=154143 * Buckets * (+1460) Created page with "Eans, is an Esoteric programming language created by [[User:Buckets]] in 2021. {| class="wikitable" |- ! Commands !! Instructions |- | @ || Start point, will Randomly Choose a Direction. |- | $ || End point. |- | ^ || Point upwards. |- | v || Point Downwards. |- | < || P
20:09:49 <esolangs> [[User:Buckets/Sandbox]] M https://esolangs.org/w/index.php?diff=154144&oldid=152640 * Buckets * (+118)
20:37:55 -!- molson has joined.
20:51:47 -!- amby has joined.
23:07:59 <esolangs> [[WaifuScript]] https://esolangs.org/w/index.php?diff=154145&oldid=151656 * Juanp32 * (+6) corrected prompt type
23:12:37 <esolangs> [[C()]] M https://esolangs.org/w/index.php?diff=154146&oldid=109314 * Rdococ * (-41)
23:25:20 -!- Sgeo has joined.
00:23:21 -!- 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).
00:24:04 -!- craigo has quit (Quit: Leaving).
00:44:48 -!- Trigon has quit (Ping timeout: 252 seconds).
00:48:52 -!- Trigon has joined.
01:02:13 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154147&oldid=153983 * I am islptng * (+945) /* I need help! */
01:22:08 <esolangs> [[Semi-serious language list]] https://esolangs.org/w/index.php?diff=154148&oldid=154139 * Ais523 * (-16) /* N */ remove explanatory comment these can be commented out if necessary (I thought this one was unnecessary), but shouldn't be visible on the page because it disrupts the flow of the page and draws undue attention to a specific language
02:06:13 -!- mtm has quit (Ping timeout: 248 seconds).
02:16:49 -!- mtm has joined.
03:00:14 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154149&oldid=154147 * PkmnQ * (+270) /* HELP NEEDED */
03:19:53 <zzo38> (Selecting a move in Pokemon merely due to its priority and nothing else about it matters, is also what reminds me like, casting a spell in Magic: the Gathering for no other reason than it has split second (the effect doesn't matter), or choosing a card merely because it has madness even if you never intend to cast it.)
04:04:21 <korvo> Sometimes a paper just begs for us to cover its topic. "In fact, we will not even write many formal Sammy programs. This is similar to the fact that no one actually ever formally writes the instructions for a Turing machine." https://arxiv.org/abs/1306.2675
04:18:30 <esolangs> [[REdACT]] https://esolangs.org/w/index.php?diff=154150&oldid=153107 * FurCantCodeAnything * (-54) i fucking got a C its so jover
04:27:27 <esolangs> [[]] N https://esolangs.org/w/index.php?oldid=154151 * FurCantCodeAnything * (+230) reservation for 9786
05:03:32 -!- mtm has quit (Ping timeout: 265 seconds).
05:06:48 -!- mtm has joined.
06:04:21 <zzo38> I will sleep today, but I intend that I will read it tomorrow.
06:25:30 -!- Sgeo has quit (Read error: Connection reset by peer).
07:13:26 -!- Lord_of_Life_ has joined.
07:13:50 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
07:14:49 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
08:39:48 <esolangs> [[User:JIT]] https://esolangs.org/w/index.php?diff=154152&oldid=154112 * JIT * (+100)
08:48:07 <esolangs> [[Rinuk]] M https://esolangs.org/w/index.php?diff=154153&oldid=154125 * JIT * (+5)
11:46:03 <esolangs> [[Talk:Uhidklol]] N https://esolangs.org/w/index.php?oldid=154154 * Rico040 * (+143) Created page with "Is there any implementaion of this language or is it in WIP? --~~~~"
12:35:41 <esolangs> [[Funciton]] https://esolangs.org/w/index.php?diff=154155&oldid=153062 * Timwi * (+2) /* External resources */ Update repo link
12:37:31 <esolangs> [[Funciton]] M https://esolangs.org/w/index.php?diff=154156&oldid=154155 * Timwi * (-2) fix branch name
12:46:06 <esolangs> [[Befunge]] M https://esolangs.org/w/index.php?diff=154157&oldid=151290 * Tomrs123 2 * (+1) tiny fix
12:49:35 <esolangs> [[RandomText]] N https://esolangs.org/w/index.php?oldid=154158 * None1 * (+163) Created page with "'''RandomText''' is a joke, [[no-code esolang]] invented [[User:None1]], it prints random ASCII text by selecting a random integer within [31,127] and stops at 31."
13:03:52 -!- amby has joined.
13:07:59 -!- wib_jonas has joined.
13:10:15 <wib_jonas> I'm doing a BIOS update, and the software shows "do not power down your system" on screen. I find this kind of ridiculous. Sure, that warning made sense in early 90s game consoles with tiny battery-backed memory on cartridges, but today everything just has double sized persistent flash memory with atomic updates anyway, so why show that warning?
13:14:22 <esolangs> [[The last line of this page]] M https://esolangs.org/w/index.php?diff=154159&oldid=150868 * PkmnQ * (+3) /* Potentially paradoxical programs */ fix sentence
13:21:37 <esolangs> [[The last line of this page]] M https://esolangs.org/w/index.php?diff=154160&oldid=154159 * PkmnQ * (+23) /* Near-interpreters */
13:59:02 <esolangs> [[Ask]] N https://esolangs.org/w/index.php?oldid=154161 * JIT * (+1117) Created page with "Ask is an esolang by [[User:JIT]], 2025 ''"What if you just asked for Everything?"'' : -[[User:JIT]],2025 {| class="wikitable" |+ Non-asked commands |- ! Commands !! what they do |- | Ask ' ' || Ask for that |- | YES || yes |- | NO || no |- | mov[]^ || move the unicode charac
14:01:25 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154162&oldid=154141 * JIT * (+10)
14:13:55 <esolangs> [[BraXYZZYuck]] N https://esolangs.org/w/index.php?oldid=154163 * PrySigneToFry * (+1472) Created page with "BraXYZZYuck is designed by PSTF. It is extended [[brainfuck]], and can be written in Unicode. The official pronounciation is /beksidzuk/. = Syntax overview = There are sixteen commands, and cells are calculate with WORD(maxima is 65535). Each command is half
14:14:23 <esolangs> [[BraXYZZYuck]] M https://esolangs.org/w/index.php?diff=154164&oldid=154163 * PrySigneToFry * (+1) Fixed
14:15:25 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154165&oldid=154162 * PrySigneToFry * (+18)
14:34:14 -!- craigo has joined.
15:13:13 -!- wib_jonas has quit (Quit: Client closed).
15:33:05 <esolangs> [[User talk:PkmnQ]] https://esolangs.org/w/index.php?diff=154166&oldid=153751 * Hotcrystal0 * (+204) /* UserEdited */ new section
17:03:52 -!- mtm has quit (Ping timeout: 244 seconds).
17:06:53 -!- mtm has joined.
17:41:12 <esolangs> [[Sammy]] N https://esolangs.org/w/index.php?oldid=154167 * Corbin * (+620) Stub for yet another category-theory language.
17:45:29 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154168&oldid=154165 * Hotcrystal0 * (+17)
18:26:13 <zzo38> How to make registrations of ISO-IR that can be use with ISO 2022?
18:48:12 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154169&oldid=154168 * Hotcrystal0 * (+1) /* D */
18:49:52 -!- ais523 has joined.
19:11:16 <esolangs> [[Deadfih]] https://esolangs.org/w/index.php?diff=154170&oldid=153789 * Krolkrol * (+25)
19:13:33 -!- b_jonas has quit (Ping timeout: 244 seconds).
19:19:11 <esolangs> [[Sammy]] https://esolangs.org/w/index.php?diff=154171&oldid=154167 * Corbin * (+3416) Document the kernel syntax.
19:20:27 -!- b_jonas has joined.
19:33:22 <esolangs> [[TOIYEN]] N https://esolangs.org/w/index.php?oldid=154172 * Krolkrol * (+2850) Created page with " = Quick Overview = Are you tired of programming languages that coddle you with convenience? Do you find yourself overwhelmed by the oppressive abundance of instructions in C or Python? Who needs if statements, loops, orheaven forbidfunctions, when you can have the raw,
19:35:35 <esolangs> [[Sammy]] M https://esolangs.org/w/index.php?diff=154173&oldid=154171 * Corbin * (+24) /* Syntax */ Coproduct gives not just the category but also the injecting functors.
19:37:04 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154174&oldid=154169 * Krolkrol * (+13)
19:41:03 <esolangs> [[Sammy]] M https://esolangs.org/w/index.php?diff=154175&oldid=154173 * Corbin * (+14) /* Syntax */ Op is also allowed on functors, doing the obvious thing.
19:44:11 <korvo> Hm. Gonna have to think about this a bit. I can't figure out how to actually *perform* a composition in Sammy; given functors F : C → D and G : D → E, there should be some operation Comp so that I can form H = F;G : C → E.
19:44:46 <korvo> But there's probably some convoluted way to make a Kan extension that does it.
20:01:08 <korvo> Oh, Hcomp is allowed to do it. But that doesn't leave me with a usable diagram...
20:03:15 <ais523> <wib_jonas> I'm doing a BIOS update, and the software shows "do not power down your system" on screen. I find this kind of ridiculous. Sure, that warning made sense in early 90s game consoles with tiny battery-backed memory on cartridges, but today everything just has double sized persistent flash memory with atomic updates anyway, so why show that warning? ← I can imagine that a half-updated BIOS could be problematic – it wouldn't surprise me if the
20:03:17 <ais523> engineers weren't confident that every possible moment at which power might fail could be recoverable
20:03:41 <ais523> it also wouldn't surprise me if the recovery state from a failed BIOS update would be a factory reset, rather than rolling back to the previous BIOS
20:04:02 <ais523> (also, most modern systems use UEFI rather than BIOS)
20:04:12 <ais523> (but people have probably stuck to the old terminology)
20:24:09 <esolangs> [[Sammy]] M https://esolangs.org/w/index.php?diff=154176&oldid=154175 * Corbin * (+276) This isn't right. I need lunch.
21:20:13 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154177&oldid=154174 * Buckets * (+69)
21:21:08 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154178&oldid=154142 * Buckets * (+68)
21:21:19 <esolangs> [[Red]] N https://esolangs.org/w/index.php?oldid=154179 * Buckets * (+1854) Created page with "{{wrongtitle|title=<span style="background-color:red;color:black;"></span>}} <span style="background-color:red;color:black;"></span> is an Esoteric programming language created by [[User:Buckets]] in 2024. {| class="wikitable" |- ! Commands !! Instructions |- | 0 || Concat
21:34:50 -!- craigo_ has joined.
21:37:57 -!- craigo has quit (Ping timeout: 252 seconds).
22:26:05 <esolangs> [[Non-Plushie-complete]] N https://esolangs.org/w/index.php?oldid=154180 * Buckets * (+532) Created page with "Most Programming languages are [[Plushie-complete]], that means almost '''no''' Programming languages are Non-Plushie-complete. ==Rules== # It Cannot be able to print the number 4. # It Cannot be able to print the number 31. # It Cannot be able to store 2 i
22:28:59 -!- tromp has quit (Ping timeout: 265 seconds).
22:29:13 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154181&oldid=154180 * Buckets * (+80)
22:29:29 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154182&oldid=154181 * Buckets * (+4)
22:30:19 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154183&oldid=154182 * Buckets * (+8)
22:36:47 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154184&oldid=154183 * Buckets * (+43)
22:39:22 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154185&oldid=154184 * Buckets * (+39)
22:39:46 <esolangs> [[Plushie-complete]] M https://esolangs.org/w/index.php?diff=154186&oldid=142707 * Buckets * (+43)
22:40:05 <esolangs> [[Plushie-complete]] M https://esolangs.org/w/index.php?diff=154187&oldid=154186 * Buckets * (+0)
22:40:14 <esolangs> [[Anti-Plushie language]] M https://esolangs.org/w/index.php?diff=154188&oldid=151889 * Buckets * (+4)
22:47:08 -!- craigo_ has quit (Quit: Leaving).
23:07:48 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154189&oldid=154185 * Buckets * (+80)
23:08:14 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154190&oldid=154189 * Buckets * (+6)
23:29:09 <b_jonas> ais523: what counts as a BIOS or not a BIOS? this one is certainly a modern computer with UEFI booting
23:30:08 <b_jonas> hmm, apparently only the old one before UEFI is called BIOS. that's a weird naming convention, but fine
23:34:35 <ais523> b_jonas: so BIOS and UEFI are two competing standards for providing an abstraction layer for handling early boot
23:34:45 <ais523> UEFI is more recent and more complicated
23:35:02 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154191&oldid=154190 * Buckets * (+2)
23:35:34 <ais523> bootloaders need some standardised way to talk to the hardware, otherwise you'd need a new bootloader every time a new motherboard came out – and BIOS was that for decades because there's a lot of friction in making new standards for something like that
23:36:03 -!- Sgeo has joined.
23:36:10 <ais523> even nowadays, many modern computers can be set to use BIOS rather than UEFI for early boot (but, most modern operating systems prefer UEFI, and I think recent Windows can't use BIOS)
23:36:54 <esolangs> [[RandomText]] https://esolangs.org/w/index.php?diff=154192&oldid=154158 * I am islptng * (+380)
23:36:59 <b_jonas> ais523: right, UEFI boot is a newer more complicated system that loads operating system boot loaders from a file system and provides complex hardware abstractions to them, whereas BIOS just loads one boot sector from a floppy disk or hard disk and lets that handle most other things and provides more basic hardware services
23:37:45 <b_jonas> and the UEFI BIOSes may provide some compatibility to the old system for easier transition
23:38:01 <ais523> apparently BIOS dates from 1975 and UEFI from 2006 – that's a long time to stay on one standard
23:38:33 <ais523> (although UEFI is based on EFI, an earlier attempt to replace BIOS)
23:38:35 <b_jonas> sure, but there are some new parts of BIOS, in particular LBA access to larger hard disks up to I think 4 GB
23:38:49 <ais523> EFI is from 1998, it seems
23:39:24 <b_jonas> and possibly support for booting from a CD-ROM or network
23:42:35 <b_jonas> though I'd like to ask how this is tied into the new GPT partition table format replacing the traditional PC+LBA smaller partition table format? I understand the latter doesn't have an extension to represent more than 4 TB of the hard disk, which is why you want to use the former these days. but is there a relation to UEFI? does UEFI require the GPT format, or does the GPT format require UEFI?
23:44:17 <ais523> UEFI implements GPT – BIOS doesn't implement GPT but it doesn't block it from being implemented in software
23:45:16 <ais523> and GPT leaves space to polyglot it with a valid BIOS bootloader, so if using BIOS + GPT, you can load the bootloader even though the BIOS can't read the disks, then have that load a software GPT implementation to actually do the disk reading
23:45:23 <b_jonas> I think I'm still just using BIOS as a generic name for the early boot part of the software on the PC that isn't stored on disks or network. but maybe I should be calling it KERNAL for even more tradition.
23:46:15 <b_jonas> ais523: right, but can you load bootloader in UEFI format from a disk with only the old partition table and no GPT?
23:46:34 <b_jonas> not that this matters in practice
23:47:12 <ais523> b_jonas: apparently the spec says that UEFI implementations are supposed to support that, but in practice many of them don't
23:47:36 <b_jonas> though I am somewhat worried that since I don't understand how boot loading and boot loaders work these days, I might not be able to repair or install one if that's required after a hardware error
23:47:42 <ais523> (and switch to BIOS instead if they see an old-format partition table)
23:48:22 <ais523> checking to see if I can customize the bootloader is one of the things I check before buying a new laptop – I have been meaning for years to write some boot-time programs but never got around to it
23:48:27 <b_jonas> so the old partition table implies the old boot method?
23:48:51 <ais523> not in theory – in practice it is sometimes implemented like that
23:48:56 <ais523> but it isn't supposed to be
23:49:48 <b_jonas> because I think UEFI is supposed to be able to boot from cd-rom or network and you won't have GPT partition table on those.
23:50:22 <ais523> anyway, the way UEFI typically works in terms of the user interaction with the bootloader is that it detects all available bootloaders (they're stored at known paths on the filesystem) and uses NVRAM to know which one it should load by default; there's a key you can mash / hold down (depending on the system) as the computer is loading in order to put up a menu and let you choose any of them
23:51:09 <ais523> and then it loads the chosen bootloader, although bootloaders are allowed to chain-load each other, and some of them (such as GRUB) default to putting up their own menu of possible ways to boot
23:52:10 <ais523> interestingly Linux the kernel is typically compiled to be a valid UEFI program so that you could bootload it directly without going through GRUB, although distros normally like to have a separate bootloader anyway
23:52:58 <ais523> also, there's optional cryptographic signing which (after pressure from Microsoft) almost every PC manufacturer turns on by default, although generally there is a way to turn it off, and usually there is a way to customize it
23:53:21 <b_jonas> wait, the kernel is compiled to be an UEFI program? I knew it used to be a valid program for BIOS boot for floppy disk only (not hard disk) originally, but they later removed that functionality because you'd just use a small boot loader instead
23:54:15 <ais523> and most computers ship with Microsoft's public key as the key to verify that a bootloader can be loaded (several Linux distros have their own signature-verifying bootloader that is signed by Microsoft, in order to make it installable without changing the boot settings)
23:54:35 <b_jonas> yes, I have heard of that part
23:54:57 <ais523> it is usually possible to change the keys, although most users don't, especially as it would be hard to ensure that OS updates were signed with a key that the system understood
23:55:48 <ais523> and when I buy a computer I am normally looking for one that makes changing the keys easy
23:56:50 <ais523> (incidentally, that sort of key change – or disabling signature verification – generally requires solving a CAPTCHA, and I haven't quite worked out what the threat model is there)
23:57:25 <b_jonas> IIUC the old floppy disk direct BIOS boot method got deprecated because boot loaders can pass a full kernel configuration string which is very useful but hadn't existed in very old linuxes, whereas the old direct boot method didn't allow such a configuration string but only a few bytes of customization that you can edit directly into the kernel, including the device numbers of the boot device and of the
23:57:57 <ais523> yes, being able to edit the kernel command line is a good use for a bootloader
23:58:03 <esolangs> [[Network Headache]] M https://esolangs.org/w/index.php?diff=154193&oldid=73597 * Buckets * (+43)
23:58:12 <ais523> there's probably some way to do that within UEFI but it's also probably non-obvious and not very user-friendly
00:00:06 <int-e> like... boot into a helper that sets the command line instead of booting the kernel directly? scnr.
00:00:47 <b_jonas> the other use for the boot loader is or used to be to load an initrd to serve as (or to populate) an early file system from which the kernel can load modules or run programs before it is able to access the normal root file system
00:01:04 <b_jonas> I don't know if the UEFI method can handle this
00:01:12 <int-e> There's an "UEFI stub" anyway which could probably at least contain a hard-coded command line.
00:01:19 <ais523> b_jonas: I didn't realise it was the bootloader that did that rather than the kernel
00:01:45 <b_jonas> the bootloader can definitely do that, but there might be some other method
00:02:15 <ais523> there is a system call to replace Linux's idea of what the root filesystem is (system-wide, not chroot-like), it looks kind-of intended for initrd as it's hard to think of many other legitimate uses
00:02:51 <b_jonas> I've seen that, but I don't understand how that's not just a special case of chroot
00:03:31 <b_jonas> what would a "system-wide" root filesystem even mean, as opposed to a process's
00:03:48 <ais523> well, it lets you move the old root fileystem inside the new root filesystem
00:03:54 <ais523> by moving the mount point
00:03:57 <ais523> I don't think chroot can do taht
00:04:36 <b_jonas> that might be the actual difference. these days we have bind mounts to do that, but I think the pivot system call predates bind mounts
00:08:32 <b_jonas> also IIUC there's a fourth boot loading format that the kernel tried to support (besides BIOS floppy, the linux-specific one that linux-flavored boot loaders implement, and UEFI), namely "multiboot" which is a format used for some BSD kernels and is natively loaded by some BSD-flavored bootloaders (but also grub), and I think this wasn't really recommended because loading the linux-specific boot loaders
00:08:38 <b_jonas> works better, but partially worked
00:10:13 <int-e> https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/efi-stub.rst#passing-kernel-parameters-from-the-efi-shell ...so the question is, do BIOSes support doing that for their builtin boot menu too?
00:11:13 <int-e> (this makes sense; it's "just" a PE executable and those come with a command arguments ABI)
00:17:00 <b_jonas> I've been living in Budapest all my life, and this year I've learned two new things about the city that I should have known for many years.
00:21:34 <ais523> int-e: I think most users couldn't figure out how to get to a UEFI shell
00:21:49 <ais523> in fact I don't actually know how it's done (although I suspect I might be able to figure it out if I needed to)
00:25:31 <b_jonas> In the case that I am working with currently, I'm installing the UEFI boot machines for work purposes, and they get Windows 11, so the secure boot stays, though it does seem from the BIOS setup menus that you could turn it off if you wanted to.
00:25:41 <b_jonas> (I think you could also install a new key.)
00:26:57 <b_jonas> The machines came with an Ubuntu pre-installed, but that's probably just a placeholder OS for when they sell them without a Windows.
00:39: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).
00:59:43 <int-e> Aah, the OS installer can create a Boot#### UEFI variable which supports command line arguments through passing a blob on to the "application". So if the BIOS allows you to pick a boot order for existing entries, that's good enough.
01:01:26 <int-e> https://uefi.org/specs/UEFI/2.10/03_Boot_Manager.html#load-options (boot variables contain a load option (or several? didn't try to figure that out.))
01:02:55 <korvo> I'm still puzzling through how to create a diagram with Sammy (https://arxiv.org/abs/1306.2675, p5-7). Does anybody see how to create a diagram from arrows? I might write up a script to generate all of the legal short programs and search for the correct construction that way.
01:04:46 <korvo> ais523: pivot_root on Linux? That is for initrd, yes. Also for kexec, since the exec'd kernel may need to load a new /lib for its modules. There are legends of other uses, like hot-swapping disks to update a machine's root without a cold boot, but they all kind of boil down to some sort of warm-bootstrappish action.
01:23:09 -!- ais523 has quit (Ping timeout: 260 seconds).
02:34:42 -!- ais523 has joined.
02:43:56 <ais523> I guess pivot_root also prevents the double-chroot chroot escape – that would mean that you could allow chroot inside a pivot_root sandbox (which might actually be non-ridiculous because pivot_root can be namespaced nowadays)
03:29:55 <esolangs> [[Special:Log/newusers]] create * Ps4 is good * New user account
03:37:55 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154194&oldid=154114 * Ps4 is good * (+199) /* Introductions */
03:38:47 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154195&oldid=154194 * Ps4 is good * (-53) /* Introductions */
04:07:31 <esolangs> [[TypoScript]] N https://esolangs.org/w/index.php?oldid=154196 * Ps4 is good * (+855) Created page with " TypoScript is a small language made by Ps4 is good. === Syntax === The syntax in TypoScript is similar to [[Befunge]] but different in the fact that you can't move the PC up left down and right. It reads as right normally, and has no spaces. You can see the tabl
04:25:21 <esolangs> [[Universal Lambda]] https://esolangs.org/w/index.php?diff=154197&oldid=139553 * C0ffee * (+0) fixed typo
04:51:02 <korvo> TIL. I should look into whether there's an easy way to attenuate e.g. a Nix store for containers using that approach.
04:51:39 <korvo> (On NixOS there's an easy way to mount the *system's* Nix store, and that can be proven safe enough, but it's not POLA because the container could run binaries that are only incidentally installed, a kind of living-off-the-land attack.)
05:05:24 -!- mtm has quit (Ping timeout: 252 seconds).
05:06:15 -!- mtm has joined.
05:27:06 <esolangs> [[Sammy]] https://esolangs.org/w/index.php?diff=154198&oldid=154176 * Corbin * (+1238) The core of Kolmogorov complexity for Sammy. The smorgasbord of inequalities will come later, after dinner.
05:31:41 -!- ais523 has quit (Quit: quit).
06:33:12 <esolangs> [[]] https://esolangs.org/w/index.php?diff=154199&oldid=154151 * FurCantCodeAnything * (+1387) concept for this
06:39:58 <esolangs> [[List of ideas]] https://esolangs.org/w/index.php?diff=154200&oldid=151910 * FurCantCodeAnything * (+152) /* Joke/Silly Ideas */
06:43:54 <esolangs> [[Works in progress]] M https://esolangs.org/w/index.php?diff=154201&oldid=144006 * FurCantCodeAnything * (+72)
06:44:47 <esolangs> [[]] M https://esolangs.org/w/index.php?diff=154202&oldid=154199 * FurCantCodeAnything * (-123)
07:14:19 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
07:16:27 -!- Lord_of_Life has joined.
07:26:18 -!- yewscion_ has quit (Read error: Connection reset by peer).
07:27:13 -!- yewscion has joined.
08:28:02 -!- Sgeo has quit (Read error: Connection reset by peer).
08:37:17 <esolangs> [[Ask]] M https://esolangs.org/w/index.php?diff=154203&oldid=154161 * JIT * (-29)
08:38:18 <esolangs> [[User:JIT]] https://esolangs.org/w/index.php?diff=154204&oldid=154152 * JIT * (+54)
09:06:45 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154205&oldid=154135 * Stkptr * (+1108) /* A simpler infinity */
10:02:47 <esolangs> [[General blindfolded arithmetic]] M https://esolangs.org/w/index.php?diff=154206&oldid=154205 * Stkptr * (+53) /* A simpler infinity */
10:06:00 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154207&oldid=154206 * Stkptr * (+132) /* Summary */
10:10:16 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154208&oldid=154207 * Stkptr * (+475) /* Core model */
10:12:41 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154209&oldid=154208 * Stkptr * (+379) /* Core model */
11:08:59 -!- tromp has joined.
11:38:46 -!- FreeFull has joined.
11:41:50 <esolangs> [[Non-Plushie-complete]] https://esolangs.org/w/index.php?diff=154210&oldid=154191 * PrySigneToFry * (+250)
11:46:22 <APic> Celebrate Mojoday!
11:48:39 <esolangs> [[Storm-complete]] N https://esolangs.org/w/index.php?oldid=154211 * PrySigneToFry * (+555) Created page with "Storm-complete is a concept designed by PSTF. It was designed after he completed "The Storm" in the game Dancing Line. = What is Storm-complete? = To be Storm-complete, # It must be able to output 0. # It must be able to store 48 or 0 in any type of memory
11:49:48 <esolangs> [[User:PrySigneToFry]] https://esolangs.org/w/index.php?diff=154212&oldid=153593 * PrySigneToFry * (+46)
12:05:41 <esolangs> [[User:Cinnamony]] https://esolangs.org/w/index.php?diff=154213&oldid=118123 * Hotcrystal0 * (+1)
12:07:38 <esolangs> [[User:Cinnamony]] https://esolangs.org/w/index.php?diff=154214&oldid=154213 * Hotcrystal0 * (+0)
12:36:13 -!- amby has joined.
13:25:28 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=154215&oldid=151722 * PrySigneToFry * (+226)
14:16:24 -!- chiselfuse has quit (Remote host closed the connection).
14:22:22 -!- chiselfuse has joined.
14:34:58 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=154216&oldid=154215 * Hotcrystal0 * (+47)
14:35:14 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=154217&oldid=154216 * Hotcrystal0 * (-1)
14:35:41 <esolangs> [[User talk:/w/wiki/index.php/Talk:index.php/Main page]] https://esolangs.org/w/index.php?diff=154218&oldid=154217 * Hotcrystal0 * (-2)
14:41:13 <esolangs> [[User:Hotcrystal0/Colon three]] https://esolangs.org/w/index.php?diff=154219&oldid=154121 * Hotcrystal0 * (+28)
15:03:28 <esolangs> [[User:Hotcrystal0/Colon three]] https://esolangs.org/w/index.php?diff=154220&oldid=154219 * Hotcrystal0 * (+186)
15:04:36 <esolangs> [[User:Hotcrystal0/Colon three]] https://esolangs.org/w/index.php?diff=154221&oldid=154220 * Hotcrystal0 * (+56)
15:09:19 -!- Everything has joined.
16:51:28 <korvo> APic: Oh, TIL, friend of five. May your day be unexpectedly god.
16:51:38 <korvo> *good, even. Thanks IRC.
16:54:51 <esolangs> [[TEIJFOP]] N https://esolangs.org/w/index.php?oldid=154222 * JIT * (+2034) Created page with "TEIJFOP or 'This esolang is just for one purpose' is an esolang by [[User:JIT]], 2025 This esolang is just for one purpose {| class="wikitable" |+ <small>This esolang is just for one purpose</small> |- ! commands !! What they do |- | i || input (i) |- | o || output |- | b
16:56:04 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154223&oldid=154177 * JIT * (+14)
16:57:39 <esolangs> [[TEIJFOP]] M https://esolangs.org/w/index.php?diff=154224&oldid=154222 * JIT * (+2)
17:04:53 -!- mtm has quit (Ping timeout: 248 seconds).
17:06:52 -!- mtm has joined.
17:20:27 <esolangs> [[TEIJFOP]] M https://esolangs.org/w/index.php?diff=154225&oldid=154224 * JIT * (+113)
17:27:57 <esolangs> [[User:Hakerh400/Types of exceptions]] N https://esolangs.org/w/index.php?oldid=154226 * Hakerh400 * (+3548) Created page with "__NOTOC__ In this article we discuss various types of exceptions and how they can be used in some practical situations. === Hard exception === Hard exception is used to terminate the program immediately. It cannot be caught in any way. It
17:28:19 <esolangs> [[User:Hakerh400]] https://esolangs.org/w/index.php?diff=154227&oldid=154137 * Hakerh400 * (+61) /* Articles */
17:29:06 <esolangs> [[User:Hakerh400/Types of exceptions]] M https://esolangs.org/w/index.php?diff=154228&oldid=154226 * Hakerh400 * (-1)
18:12:41 -!- craigo has joined.
18:17:11 -!- molson_ has joined.
18:20:04 -!- molson has quit (Ping timeout: 260 seconds).
19:18:36 <esolangs> [[Talk:Storm-complete]] N https://esolangs.org/w/index.php?oldid=154229 * 47 * (+47) Created page with "this is getting more worse~~~"
21:07:02 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154230&oldid=154223 * Buckets * (+9)
21:07:30 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154231&oldid=154178 * Buckets * (+8)
21:07:40 <esolangs> [[CG]] N https://esolangs.org/w/index.php?oldid=154232 * Buckets * (+1176) Created page with "CG is an Esoteric programming language created by [[User:Buckets]] in 2022. (All hidden starting directions are towards the right.) {| class="wikitable" |- ! Commands !! Instructions |- | *i || Multiply by i. |- | *-1 || Multiply by -1. |- | +1 || +1. |- | -i || -i. |- | -1
21:09:04 <esolangs> [[Talk:AGG]] N https://esolangs.org/w/index.php?oldid=154233 * Corbin * (+312) Hi! More details, please.
21:52:11 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154234&oldid=154210 * Buckets * (+296)
21:54:31 <esolangs> [[Non-Plushie-complete]] M https://esolangs.org/w/index.php?diff=154235&oldid=154234 * Buckets * (+79)
21:59:40 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:01:43 <korvo> These joke complexity classes really need some sort of categorization. They're showing up in non-joke categories like [[Category:Concepts]] or [[Category:Turing complete]] now.
22:02:16 <zzo38> Yes, I agree that they should use the joke categories instead.
22:03:50 <korvo> We perhaps need [[Category:Joke complexity classes]]. But we don't even have [[Category:Complexity classes]] yet.
22:05:37 -!- Sgeo has joined.
22:19:46 -!- visilii has joined.
22:22:57 -!- visilii_ has quit (Ping timeout: 252 seconds).
22:27:26 <esolangs> [[CG]] M https://esolangs.org/w/index.php?diff=154236&oldid=154232 * Buckets * (+139)
22:33:52 <int-e> korvo: "Joke Concepts" -- but will that lead to every category having a joke counterparts? Where does it stop? Will we allow Joke Joke Programming Languages?
22:40:14 <b_jonas> int-e: yes, and Joke people, Joke before 1993, Joke 2026, Joke implemented, Joke Turing complete,
00:04:28 <esolangs> [[Parrot]] https://esolangs.org/w/index.php?diff=154237&oldid=119816 * B jonas * (+15) replace broken link to article by another copy
00:45:09 <esolangs> [[Parrot]] https://esolangs.org/w/index.php?diff=154238&oldid=154237 * Aadenboy * (+25) dead links
00:45:20 <esolangs> [[Parrot]] M https://esolangs.org/w/index.php?diff=154239&oldid=154238 * Aadenboy * (-1)
01:28: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).
03:10:39 <esolangs> [[User talk:Yb1]] https://esolangs.org/w/index.php?diff=154240&oldid=110562 * Yb1 * (+101) /* hello world */ new section
04:16:31 <esolangs> [[PAL]] N https://esolangs.org/w/index.php?oldid=154241 * I am islptng * (+1368) Created page with "PAL is an esolang created by islptng. It is designed to have no flow control. == Data types == There are 3 data types. * <b>Number</b>, which stores a fraction. * <b>List</b>, which stores a list of objects. * <b>Lambda</b>, which is a monadic lambda function == Synta
04:19:57 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154242&oldid=154241 * I am islptng * (+74)
04:22:36 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154243&oldid=154242 * I am islptng * (+96)
04:32:42 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154244&oldid=154243 * I am islptng * (+277)
04:39:28 <esolangs> [[User:I am islptng]] https://esolangs.org/w/index.php?diff=154245&oldid=153799 * I am islptng * (+39)
04:42:10 -!- Sgeo_ has joined.
04:46:00 -!- Sgeo has quit (Ping timeout: 276 seconds).
04:57:26 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154246&oldid=154244 * I am islptng * (+269)
05:03:32 -!- mtm has quit (Ping timeout: 244 seconds).
05:07:02 -!- mtm has joined.
06:34:48 -!- craigo has quit (Quit: Leaving).
07:03:16 -!- tromp has joined.
07:10:58 -!- Sgeo_ has quit (Read error: Connection reset by peer).
07:13:44 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
07:15:09 -!- Lord_of_Life has joined.
07:57:45 -!- Trigon has quit (Ping timeout: 276 seconds).
08:06:15 -!- Trigon has joined.
08:09:53 <esolangs> [[Talk:PAL]] N https://esolangs.org/w/index.php?oldid=154247 * I am islptng * (+2416) Created page with "I spend 2 days making this... [https://tio.run/##1Vlbb9s2FH62fsWpuqBW7CR2t@4i1Ck2oG9FNxR7M4yAkmiHqUy5EtU567q/np3Di@5OmiJtsZc6Is/l43cOeQ7ZKGdCrsv47c1N4Huev0gknwZ8nKti6odvfn/z5qU/VlLku9HI81kSbVkKeQY5j7alBJVJmKpCpJDwXJTveO7DAjiExgRIAT5PI5ZzJbRwgT8xv4oyH9aCTGrljkHr5rD
08:17:37 <esolangs> [[Talk:PAL]] https://esolangs.org/w/index.php?diff=154248&oldid=154247 * I am islptng * (+11)
08:58:44 <esolangs> [[User:JIT]] https://esolangs.org/w/index.php?diff=154249&oldid=154204 * JIT * (+50)
10:26:36 <esolangs> [[User talk:PrySigneToFry/Cellular Automaton related thingy]] https://esolangs.org/w/index.php?diff=154250&oldid=153452 * I am islptng * (+993)
10:29:54 <esolangs> [[Ascet]] N https://esolangs.org/w/index.php?oldid=154251 * JIT * (+800) Created page with "Ascet is an esolang by [[User:JIT]], 2025 ''"Are all [[Square-complete]] esolangs truly turing complete?"'' : -[[User:JIT]], 2025 {| class="wikitable" |+ Hmmmmmmmm |- ! commands !! what they do |- | H || prints Hello, world! |- | i || ask for a 1 character input |- | () || Lo
10:34:59 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154252&oldid=154230 * JIT * (+12)
10:43:38 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154253&oldid=154246 * I am islptng * (+2462)
10:43:53 <esolangs> [[Talk:PAL]] https://esolangs.org/w/index.php?diff=154254&oldid=154248 * I am islptng * (-2398) Replaced content with "I spend 2 days making this..."
11:07:12 <esolangs> [[Talk:Storm-complete]] https://esolangs.org/w/index.php?diff=154255&oldid=154229 * PrySigneToFry * (+62)
11:07:43 <esolangs> [[Talk:BF is Plushie-complete]] N https://esolangs.org/w/index.php?oldid=154256 * JIT * (+398) Created page with "[[brainfuck|BF]] is [https://esolangs.org/wiki/Category:Cell-based/ Cell-based] but [[Plushie-complete#Rules|Plushie-complete's rules]] says to store it in a variable, not a cell! --~~~~JIT<sub><small>JIT<sub><small>JIT<sub><small>JIT<sub><small>JIT<sub><
11:11:33 <esolangs> [[Talk:Afefoj-Flak]] M https://esolangs.org/w/index.php?diff=154257&oldid=153371 * JIT * (+3)
11:36:29 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154258&oldid=154149 * Hotcrystal0 * (+191) /* New esolang */ new section
11:46:05 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154259&oldid=154258 * I am islptng * (+685) /* New esolang */
12:18:19 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=154260&oldid=154117 * Hotcrystal0 * (+34)
12:19:16 <esolangs> [[User:Hotcrystal0/CGoL+]] N https://esolangs.org/w/index.php?oldid=154261 * Hotcrystal0 * (+78) Created page with "CGoL+ is an esolang created by [[User:Hotcrustal0]] and [[User:I am islptng]]."
12:19:26 <esolangs> [[User:Hotcrystal0/CGoL+]] https://esolangs.org/w/index.php?diff=154262&oldid=154261 * Hotcrystal0 * (+0)
12:20:18 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154263&oldid=154259 * Hotcrystal0 * (+55)
12:24:43 <esolangs> [[User:Hotcrystal0/Colon three]] https://esolangs.org/w/index.php?diff=154264&oldid=154221 * Hotcrystal0 * (-46)
12:45:08 -!- amby has joined.
14:03:18 <esolangs> [[User:PrySigneToFry/Sandbox/Draft of AGPL]] N https://esolangs.org/w/index.php?oldid=154265 * PrySigneToFry * (+2722) Created page with "AGPL(A golfing programming language) is designed by PSTF. = Overview = AGPL is mostly inspired by APL, is designed for golfing. = Data types = # Numbers. Every valid real numbers are number type, even if in complex. 1i is not equ
14:03:49 <esolangs> [[User:PrySigneToFry/Sandbox]] https://esolangs.org/w/index.php?diff=154266&oldid=153722 * PrySigneToFry * (+61)
14:48:13 <esolangs> [[TOIYEN]] M https://esolangs.org/w/index.php?diff=154267&oldid=154172 * Krolkrol * (+2)
14:49:35 <esolangs> [[AGG]] https://esolangs.org/w/index.php?diff=154268&oldid=150114 * Hakerh400 * (-36) Remove uncertified claims
14:54:24 <esolangs> [[Ash]] N https://esolangs.org/w/index.php?oldid=154269 * Hakerh400 * (+2209) Created page with "__NOTOC__ {{infobox proglang |name=Ash |paradigms=Imperative |author=[[User:Hakerh400]] |year=[[:Category:2025|2025]] |class=[[:Category:Turing complete|Turing complete]] |majorimpl=Implemented |files=<code>.txt</code> }} '''Ash''' is an esolang invented by [[User:Hakerh
14:54:50 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154270&oldid=154252 * Hakerh400 * (+10) +[[Ash]]
14:55:11 <esolangs> [[User:Hakerh400]] https://esolangs.org/w/index.php?diff=154271&oldid=154227 * Hakerh400 * (+10) * [[Ash]]
14:56:16 <esolangs> [[Ash]] https://esolangs.org/w/index.php?diff=154272&oldid=154269 * Hakerh400 * (+4)
16:14:09 -!- Sgeo has joined.
16:48:23 <esolangs> [[Talk:BF is Plushie-complete]] https://esolangs.org/w/index.php?diff=154273&oldid=154256 * Corbin * (+154) See, this is what happens when we don't have joke categories.
17:05:20 -!- mtm has quit (Ping timeout: 252 seconds).
17:06:16 -!- mtm has joined.
17:33:52 -!- craigo has joined.
17:51:23 -!- mtm has quit (Read error: Connection reset by peer).
18:29:47 -!- Everything has quit (Quit: leaving).
19:21:13 -!- chiselfu1e has joined.
19:22:24 -!- chiselfuse has quit (Ping timeout: 264 seconds).
20:01:42 <esolangs> [[User:Buckets/Constants]] N https://esolangs.org/w/index.php?oldid=154274 * Buckets * (+366) Created page with "This page is for the collections of All The Constants created by [[User:Buckets]]. The Nacto constant, made to be Uncomputable & normal: 0.12134153651783981127... The Nimpmore constants: 0.12145147501026147504607821678092671052677217... 0.982964326
20:02:35 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154275&oldid=154231 * Buckets * (+28)
20:21:09 -!- b_jonas has quit (Ping timeout: 246 seconds).
20:29:48 <esolangs> [[User talk:Hotcrystal0/CGoL+]] N https://esolangs.org/w/index.php?oldid=154276 * I am islptng * (+662) Created page with "Will it be text-based, or running on a grid and use state 2-5 to perform I/O?<br> i.e. Does it need a Golly script to implement it? --~~~~"
20:39:58 <esolangs> [[PAL]] M https://esolangs.org/w/index.php?diff=154277&oldid=154253 * I am islptng * (+41) /* 0 is True */
20:42:29 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154278&oldid=154270 * Buckets * (+12)
20:43:03 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154279&oldid=154275 * Buckets * (+11)
20:43:11 <esolangs> [[SPoCE]] N https://esolangs.org/w/index.php?oldid=154280 * Buckets * (+409) Created page with "SPoCE (or Smallest Plushie- o stands for nothing -complete Esolang) is an Esoteric programming language created by [[User:Buckets]] in 2025 to Create The Smallest [[Plushie-complete]] esolang. {| class="wikitable" |- ! Command !! Instruction |- | ) || Print a quine then +2
21:32:51 <esolangs> [[List of ideas]] M https://esolangs.org/w/index.php?diff=154281&oldid=154200 * Buckets * (+88)
21:36:26 -!- b_jonas has joined.
21:37:41 <esolangs> [[User:Buckets/Constants]] M https://esolangs.org/w/index.php?diff=154282&oldid=154274 * Buckets * (+63)
22:10:06 -!- FreeFull has quit (Quit: Lost terminal).
22:33:26 <esolangs> [[User talk:Hotcrystal0/CGoL+]] https://esolangs.org/w/index.php?diff=154283&oldid=154276 * Hotcrystal0 * (+181)
23:25:57 <esolangs> [[Funciton]] https://esolangs.org/w/index.php?diff=154284&oldid=154156 * Timwi * (+57) : String suffixes (written for AoC 2024 3a: https://youtu.be/7bxCQCTLzC4)
23:34:08 <esolangs> [[User:Stkptr]] https://esolangs.org/w/index.php?diff=154285&oldid=153698 * Stkptr * (+28)
23:47:20 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154286&oldid=154277 * I am islptng * (+88)
00:05:42 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154287&oldid=154286 * I am islptng * (+100)
00:58:40 <zzo38> It seems to me that there are many benefits of X.509 authentication.
01:03:14 <zzo38> Someone cannot steal your password since there isn't one; they can copy your certificate but cannot use it to impersonate you since a private key is required. You can include extra information in the certificate if wanted (like OpenID allows specifying your email address and other stuff).
01:03:50 <zzo38> You can allow self-signed certificates and/or allow using credentials from other services, and can do so even if you are unable to connect to that service.
01:05:15 <zzo38> Additionally, I think DER is a better format than JSON in general.
01:06:18 <zzo38> X.509 authentication also is not limited to only HTTPS, although it can be used with HTTPS (although it seems to be very rarely used for client authentication, it is common for server authentication).
01:13:11 <zzo38> (The OpenID Simple Registration Extension allows to provide some information such as time zone and others. I have made up a X.509 extension for providing the time zone in a X.509 certificate, which could be used for a similar purpose (and I have done this once, although the service I was authenticating to did not actually care about anything other than the expiry date).)
01:26:41 <zzo38> The main problem I seem to have is securely specifying superseding certificates. I have some ideas about how it might be possible to make this though (as well as allowing to store the private key used for this purpose separately for improved security).
01:54:46 <esolangs> [[APL]] M https://esolangs.org/w/index.php?diff=154288&oldid=140158 * I am islptng * (+241)
02:21:12 -!- 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:47:08 <zzo38> It does not require a web browser, does not necessarily require an internet connection, etc.
02:50:24 -!- tromp has quit (Ping timeout: 244 seconds).
03:02:56 -!- mtm has joined.
03:58:31 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154289&oldid=154020 * C0ffee * (-6)
03:59:35 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154290&oldid=154289 * C0ffee * (-43)
03:59:59 <esolangs> [[Sb]] https://esolangs.org/w/index.php?diff=154291&oldid=154290 * C0ffee * (-9)
05:24:25 <zzo38> I had thought of making a variant of RISC-V (another instruction set also might be usable, but there are some benefits of RISC-V such as being free and having existing compilers that can target it) for use with an operating system design. There might be capabilities, which can be stored in registers and memory and are separate from numbers (I think Flex computer does something similar).
05:25:21 <zzo38> The kernel will be able to examine the contents of capabilities and create them, but user programs can only copy them and compare them for equality.
05:26:18 <zzo38> This means that a C program could store a capability in a uint64_t variable, although attempting to them perform arithmetic with that variable's value will be an error. (Some kinds of optimizations might affect this in some cases; I don't know. Do you know?)
05:26:30 <korvo> You might want to privilege equality comparisons. In E, a user program is only allowed to join two capabilities; either the runtime proves that the two caps refer to the same underlying object, or the join is broken and can't be used.
05:29:30 <zzo38> OK, although I had thought that the kernel might make a separate entry when the capabilities come from other sources, in order that they can be separately discarded (like dup and close in UNIX). Also, a program may want to compare equality of capabilities with numbers (especially zero) as well, since a program might use them to denote the lack of a capability.
05:32:25 <korvo> To use an analogy, imagine a program that sends and receives references to SysV-style shared memory segments. How to compare two references for equality? We can't, because we can't be confident that the segments haven't been remapped.
05:32:33 -!- craigo has quit (Quit: Leaving).
05:33:35 <korvo> But we could e.g. test a segment by writing a byte via one reference and then reading that same byte from another reference. This is the "scratchpad" approach to implementing caps that can be sealed.
05:34:19 <zzo38> I have used that approach in a PostScript program once, actually.
05:35:13 <zzo38> (the "eq" operator in PostScript can test if two arrays, dictionaries, etc refer to the same underlying memory, but when using "eq" with strings it compares the contents of the strings instead)
05:35:57 <zzo38> I think I understand your concern now that you explained it better, though.
05:36:31 <zzo38> However, perhaps I should also have explained better, because the copies that are considered equal are only copies made by the program itself, not any other references to the same object.
05:37:34 <korvo> Sure. The precise sort of shared object is important. File descriptors are another UNIX capability object which can't be directly compared, and AFAIK there's *not* a way to add an equality protocol to them.
05:40:43 <zzo38> Yes, and in UNIX if you use dup to make a new number that refers to the same object, the new number is not equal to the existing number, but if you just copy the value directly without using system calls then the number will be equal, and it is the similar idea here. However, the difference here is the operating system and application programs need to know what data refers to capabilities and what doesn't.
05:45:00 <zzo38> (due to how message passing works, and how receiving and sending capabilities works)
05:58:11 <zzo38> I had thought of other hardware features as well. The keyboard probably also would be different from PC keyboard too. Some of the ideas of Apple is good such as a separate Command and Control key, and a separate Return and Enter key. I also would avoid USB which has many problems, but I might have the "GeekPort" like BeBox has, as well as RS-232 and other ports.
06:19:41 -!- mtm has quit (Read error: Connection reset by peer).
06:20:42 -!- mtm has joined.
07:13:56 -!- Lord_of_Life_ has joined.
07:14:33 -!- Lord_of_Life has quit (Ping timeout: 245 seconds).
07:15:20 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:44:26 -!- Sgeo has quit (Read error: Connection reset by peer).
11:04:32 <esolangs> [[User:PrySigneToFry/Sandbox/Draft of AGPL]] https://esolangs.org/w/index.php?diff=154292&oldid=154265 * PrySigneToFry * (+243)
11:17:26 <esolangs> [[User:JIT]] https://esolangs.org/w/index.php?diff=154293&oldid=154249 * JIT * (+95)
11:33:58 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154294&oldid=154263 * Hotcrystal0 * (+124)
12:04:44 -!- mtm has quit (Ping timeout: 260 seconds).
12:05:36 -!- mtm has joined.
12:19:47 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154295&oldid=154287 * Timwi * (+242) Summary
12:29:29 <esolangs> [[User:Hotcrystal0/CGoL+]] https://esolangs.org/w/index.php?diff=154296&oldid=154262 * Hotcrystal0 * (+56)
12:33:28 <esolangs> [[User:Hotcrystal0/Colon three]] https://esolangs.org/w/index.php?diff=154297&oldid=154264 * Hotcrystal0 * (+5)
12:33:45 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=154298&oldid=154260 * Hotcrystal0 * (+0)
13:25:45 -!- amby has joined.
14:11:50 -!- Sgeo has joined.
14:17:04 -!- craigo has joined.
14:17:30 <esolangs> [[Amethyst]] https://esolangs.org/w/index.php?diff=154299&oldid=154115 * PrySigneToFry * (+298)
14:17:38 -!- craigo has quit (Remote host closed the connection).
14:18:27 -!- craigo has joined.
14:31:08 <esolangs> [[Talk:BF is Plushie-complete]] https://esolangs.org/w/index.php?diff=154300&oldid=154273 * PrySigneToFry * (+1023)
14:36:03 <esolangs> [[Talk:Poetic is plushie-complete]] N https://esolangs.org/w/index.php?oldid=154301 * PrySigneToFry * (+179) Created page with "Poetic is also Storm-complete: Rule 1(so abstract) <pre> Ato selfer, y priil y sal dilktran prisyl y cron e di salet y selpril! </pre> Rule 2 <pre> </pre> Rule 3(Not on display)"
16:08:27 -!- FreeFull has joined.
17:12:31 -!- chiselfu1e has changed nick to chiselfuse.
17:23:10 <esolangs> [[]] N https://esolangs.org/w/index.php?oldid=154302 * JIT * (+990) Created page with " is an esolang by [[User:JIT]], 2025 ''"What if you drew the output?"'' : -[[User:JIT]], 2025 {| class="wikitable" |+ Drawing ! commands !! what they do |- | || draw in that direction |- | || draw in that direction |- | || draw in that direction |- | || draw in that direction
17:25:00 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154303&oldid=154278 * JIT * (+9)
17:25:54 <esolangs> [[]] https://esolangs.org/w/index.php?diff=154304&oldid=154302 * JIT * (+1) /* Truth-machine */
17:38:22 -!- ais523 has joined.
17:38:39 <ais523> <korvo> Sure. The precise sort of shared object is important. File descriptors are another UNIX capability object which can't be directly compared, and AFAIK there's *not* a way to add an equality protocol to them. ← Linux has kcmp
17:39:23 <ais523> which can check two FDs (possibly in different processes) to see if they are duplicates of each other (e.g. due to dup or fork)
17:40:38 <ais523> there's more than one reasonable equality-like operation you could perform on FDs, but that one seems reasonable
17:41:04 <ais523> (you can also use fstat to check whether two FDs refer to the same file)
17:42:11 <ais523> it is not immediately obvious to me what equality of capabilities would mean – it might be useful to know what the equality comparison was being used for in order to work out the best way to do the comparison
17:44:02 <korvo> ais523: TIL! That's quite cool.
17:45:11 <korvo> E doesn't bother with equality at all; instead, they use H. Baker's extensional equality for objects. In the general case, where a cap might refer to a networked resource, equality is really equivalence of message-passing: two caps are equal when it doesn't matter which one is used to make the delivery.
17:46:21 <korvo> Accordingly, E.join(o1, o2) returns a reference that lets the holder send messages, and the holder promises that o1 and o2 have the same referent. If that promise breaks, then E literally converts the returned Promise to a Broken reference.
17:47:08 <korvo> The relevant Baker paper is https://plover.com/~mjd/misc/hbaker-archive/ObjectIdentity.html and the entrypoint to the E dig site is http://www.erights.org/elib/equality/index.html
17:47:46 <ais523> the use case for join doesn't seem obvious to me – if the return value of the join is non-broken, couldn't you just use one of the inputs directly?
17:49:08 <korvo> Usually o1 is a Near reference and o2 is Far; the idea is to assert that o2 has taken a round trip to some other object broker, and collapse its reference down to something that could be Near-ish.
17:49:20 <ais523> right, so you're doing it for the assert
17:49:49 <ais523> I guess this is using a definition of "promise" other than the usual one?
17:50:05 <korvo> Yep. Strong hint from the underlying runtime's table class, named "CycleBreaker", as well as: "Used to finitely and successfully walk possibly cyclic & unsettled structures."
17:51:01 <korvo> The idea is that, in E or Monte or etc., we can ask `x == y` on two object graphs which include networked resources and cycles, and get a meaningful answer *immediately*. If we need to ask more careful questions, there's E.sameEver/2, E.sameYet/2, etc.
17:51:54 <korvo> E is where the usual definition of "promise" comes from, in the sense that a Promise is a reference to a not-yet-computed result and only interacts via sent messages.
17:52:13 <korvo> But more specifically it's the eponymous state in this Harel statechart: http://www.erights.org/elib/equality/images/ref-settling.gif
17:54:07 <korvo> The typical language is Near and spends most of its time in the green Near box. Value objects are that whole PassByConstruction optimization, for example. Java with NIO, or typical JS runtimes, also have Promises, both inheriting their designs heavily from E.
17:54:53 <korvo> (When I was younger I used to think that this was actually from Ruby's EventMachine or Python's Twisted, which did inspire Node. But JS's Promise feature is actually literally designed by folks like M. M. Miller and Crockford who worked on E!)
17:57:12 <ais523> oh, I see – the thing you get when you force the promise lets you send messages only if o1 == o2, but isn't itself o1 or o2
17:57:15 <korvo> ais523: Sorry if that's a lot. Today a promise is more-or-less a "deferred with error", a combination of the deferred monad and error monad, and that's what happens when the runtime doesn't have a nice vat-style structure for holding object graphs in isolation from one another. I guess you could say that today's runtimes are like one-vat setups.
17:57:43 <korvo> Right! It's literally the join in the lattice of behaviors extending from o1 and o2.
17:58:33 <korvo> Or, the partial order, I guess? I feel like it should be a lattice.
18:02:38 <korvo> ais523: Oh! Another thing to consider: E is explicitly like an extremely heavy macro system; E-on-Java is Java-flavored. Monte doesn't actually *have* M.join/2 as a primitive. From today's perspective, Monte would have something like Capn Proto RPC support, and join would be implemented as an RPC conversation.
18:02:58 <korvo> What we actually provided is promise-aware equality primitives: https://github.com/monte-language/typhon/blob/6da286a954f039e524c282c10cff1d6a43664d0f/typhon/objects/equality.py#L478
18:08:45 -!- tromp has joined.
19:14:24 <zzo38> You have another reason for equality of capabilities, which might be meaningful in your use, but in my use that I was considering, two capabilities are equal iff the program made a copy of a register or memory containing it. (If a program wants a capability that refers to the same object but is unequal, it can send a message to itself containing that capability.)
19:24:42 <korvo> Ah, like authenticated or encrypted pointers.
20:00:55 <esolangs> [[Xkcd 1537]] https://esolangs.org/w/index.php?diff=154305&oldid=153958 * Hotcrystal0 * (+14) xkcd is normally stylized as lowercase
20:01:31 <esolangs> [[Xkcd 3062]] https://esolangs.org/w/index.php?diff=154306&oldid=153922 * Hotcrystal0 * (+14) xkcd is normally stylized as lowercase or all caps
21:28:21 <esolangs> [[Special:Log/newusers]] create * TristinSmith * New user account
21:38:06 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=154307&oldid=154195 * TristinSmith * (+189)
22:09:14 <zzo38> It should be an error to copy or compare only a part of a capability (although the kernel may be allowed to do this), and the operating system may also designate certain memory areas as not being allowed to copy capabilities into that memory (e.g. video memory).
22:10:18 <zzo38> Only the operating system is allowed to make capabilities or read their values, although user programs can copy them, compare if they are equal, and test whether or not they are capabilities (rather than numbers).
22:10:46 <zzo38> (The CPU does not know what "capabilities" means other than being values with the capability tag bit set; everything else about them is defined by the operating system.)
22:55:27 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154308&oldid=154303 * Buckets * (+15)
22:56:02 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154309&oldid=154279 * Buckets * (+14)
22:56:17 <esolangs> [[Geometry]] N https://esolangs.org/w/index.php?oldid=154310 * Buckets * (+2241) Created page with "Geometry is an Esoteric programming language created by [[User:Buckets]] in 2022. {| class="wikitable" |- ! Commands !! Instructions |- | <sub>m</sub> || Set the Point m. |- | <nowiki><n|o></nowiki> || Change Coordinates by n Units horizontally & o units vertically.
23:00:37 <esolangs> [[Geometry]] M https://esolangs.org/w/index.php?diff=154311&oldid=154310 * Buckets * (+153)
23:09:04 <esolangs> [[Geometry]] M https://esolangs.org/w/index.php?diff=154312&oldid=154311 * Buckets * (+352)
23:20:14 <esolangs> [[Eans,]] M https://esolangs.org/w/index.php?diff=154313&oldid=154143 * Buckets * (-105)
23:28:44 <esolangs> [[HAps]] M https://esolangs.org/w/index.php?diff=154314&oldid=153681 * Buckets * (+0)
23:39:25 <esolangs> [[Esorn]] M https://esolangs.org/w/index.php?diff=154315&oldid=154075 * Buckets * (+1756)
23:53:41 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=154316&oldid=153891 * Buckets * (+498)
00:04:42 -!- mtm has quit (Ping timeout: 276 seconds).
00:05:23 -!- mtm has joined.
01:28:24 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=154317&oldid=152942 * None1 * (+56) /* My Esolangs */
01:43:48 -!- 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:06:21 -!- ais523 has quit (Quit: quit).
03:09:39 -!- FreeFull has quit (Quit: Lost terminal).
03:38:36 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154318&oldid=154209 * Stkptr * (+3386) /* with +, -, * (at least FSM) */
03:40:35 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154319&oldid=154318 * Stkptr * (+188) /* Relation with Diophantine equations */
03:58:39 -!- tromp has quit (Ping timeout: 265 seconds).
04:24:41 <zzo38> Do you know if there are issues with optimization with the C compiler if you are storing a capability in a uint64_t variable even though arithmetic is not allowed (and will result in a run time error)?
04:27:40 <korvo> Like if the machine only has 32-bit words?
04:30:18 <int-e> (what kind of capability? in what sense is "arithmetic not allowed"?)
04:33:10 <korvo> A literal answer might be "no, C doesn't know what a capability is," but that's unfairly strict.
04:35:58 <int-e> This may turn into an ABI question very quickly, which is outside of the scope for C, though not for C compilers.
04:50:34 <zzo38> I described what I mean by "capability"; from the point of the view of the instruction set it is really just a 64-bit value that is tagged in such a way that arithmetic cannot be performed on it; it is called a "capability" due to the operating system. The machine will have 64-bit words since it will be compiled for a specific machine that has this feature.
04:51:34 <int-e> but that doesn't explain in what way arithmetic even could break anything, as long as the right values are passed to system calls, or maybe stored in special memory locations
04:51:38 <zzo38> I mean if the C compiler is not modified, but targets whatever instruction set it is a modification of (probably RISC-V) such that it otherwise remains compatible.
04:53:33 <zzo38> Performing arithmetic on the values would cause the CPU to result in a trap, so the program will not continue executing (unless the operating system handles the trap and allows the program to continue). It also happens if the program converts it to an array of bytes and then tries to extract the individual bytes; that is also an error resulting in a trap.
04:55:34 <zzo38> (In an actual program, typedef would probably be used, but I am asking about how the C compiler would handle such a situation if it is not modified to handle it.)
05:02:52 <zzo38> Would it cause a problem with unaligned memmove?
05:06:30 <int-e> So those capabilities have hardware support now? But the compiler is somehow unaware? That sounds... unlikely, those two go together.
05:08:00 <zzo38> My intention is in case you are using an existing cross-compiler and cannot modify it for whatever reason. (There are reasons why you might want to modify the compiler other than this too, but sometimes you might want to or have to use existing compilers that you cannot easily modify (even if it is FOSS, it might take too long to modify and maintain it, or too long to compile the compiler).)
05:08:04 <int-e> or, like, such capabilities would end up in special registers that are managed with special instructions that you'd use compiler intrinsics or inline assembly for; in the former case the compiler knows; in the latter case, the compiler will document how values are represented in registers passed into your assembly code
05:08:47 <int-e> I feel that this question is, simultaneously, way too specific, and too vague.
05:12:20 <zzo38> It seems to me that splitting them into individual bytes might be more of a problem than arithmetic would be. There are a few reasons I had for not using special registers, including that you can store them in ordinary memory (except areas that the operating system disallows for this use, such as video memory).
05:14:15 <zzo38> I think Flex computer does something similar, although it has its own instruction set. (From reading the documentation, it would seem to me that (although the documentation does not actually mention this, as far as I can tell), it is possible for the difference of two pointers to be zero even though they are two different pointers.) (This I am describing is not Flex computer, though.)
05:14:53 <zzo38> You may be right that it is too specific and too vague, but I am not sure how to make it better.
06:39:46 <esolangs> [[Amethyst]] https://esolangs.org/w/index.php?diff=154320&oldid=154299 * PrySigneToFry * (+998)
07:15:27 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
07:15:28 -!- Lord_of_Life_ has joined.
07:16:50 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:36:10 <esolangs> [[Special:Log/newusers]] create * Xtex * New user account
07:39:24 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154321&oldid=154307 * Xtex * (+158) /* Introductions */
07:41:52 <esolangs> [[Esolang:Community portal]] https://esolangs.org/w/index.php?diff=154322&oldid=153079 * Xtex * (-13) /* Other real-time discussion communities */ refresh link
08:20:41 -!- craigo has quit (Quit: Leaving).
09:40:21 <esolangs> [[EchoLang (None1)]] https://esolangs.org/w/index.php?diff=154323&oldid=146239 * PrySigneToFry * (+16)
09:42:03 <esolangs> [[Brainfuck 2.0]] N https://esolangs.org/w/index.php?oldid=154324 * PrySigneToFry * (+4594) Created page with "Brainfuck 2.0 is designed by PSTF, it is based on [[EA Script, It's in the code.]] but it didn't costs anything. = Instructions = All commands work on a 30,000-bit tape, a stack, and a counter. == Basics == {| class="wikitable" |+ |- ! Instruction !! Meanin
09:42:57 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154325&oldid=154308 * PrySigneToFry * (+20)
10:05:24 <esolangs> [[Swapfuck]] M https://esolangs.org/w/index.php?diff=154326&oldid=148596 * Rdococ * (-142) /* Computational class */
11:10:32 -!- Sgeo has quit (Read error: Connection reset by peer).
12:02:27 -!- mtm has quit (Ping timeout: 244 seconds).
12:05:00 -!- mtm has joined.
12:21:14 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=154327&oldid=154317 * None1 * (+17)
12:39:25 -!- FreeFull has joined.
13:02:05 -!- amby has joined.
13:02:46 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=154328&oldid=153549 * PrySigneToFry * (+196)
13:39:14 <esolangs> [[XD]] https://esolangs.org/w/index.php?diff=154329&oldid=136855 * PrySigneToFry * (+138)
13:40:29 <esolangs> [[NH3]] https://esolangs.org/w/index.php?diff=154330&oldid=119728 * PrySigneToFry * (+55)
13:46:44 <esolangs> [[Talk:Braindrunk]] https://esolangs.org/w/index.php?diff=154331&oldid=139868 * PrySigneToFry * (+72) /* How many chance will the classic output "Hello, world!"? */ new section
14:17:48 -!- lynndotpy6 has quit (Quit: bye bye).
14:19:06 -!- lynndotpy6 has joined.
14:29:35 -!- ais523 has joined.
14:31:05 <ais523> <zzo38> Do you know if there are issues with optimization with the C compiler if you are storing a capability in a uint64_t variable even though arithmetic is not allowed (and will result in a run time error)? ← so there is a CPU sort-of like that which gets unintentionally targeted by existing C compilers – valgrind implements a virtual CPU and it can track extra bits of data about memory, e.g. whether that data is initialised
14:32:06 <ais523> in order to work with existing C programs that were written without knowledge of it, it had to allow a number of things that would otherwise not be allowed, e.g. in Valgrind memcheck, arithmetic on uninitialised data is permitted but returns uninitialised results, and copying uninitialised data is allowed, but branching on uninitialised data isn't
14:32:46 <ais523> I imagine it wouldn't be too hard to design the sort of capability-locking CPU you want as a Valgrind backend (relative to the other possibilities for implementing it, at least)
14:33:18 <ais523> and in practice, most compilers don't optimise copies of machine-word-sized things into anything other than copies (although they may copy through memory or through a vector register)
14:33:28 <ais523> because generally that's what's fastest on the CPU
14:35:51 <ais523> that said, I don't think optimisers *guarantee* to not, e.g., spill values by representing them as an arithmetic combination of other known values – they're allowed to do so in theory, just usually don't in practice
14:39:32 <int-e> oh, https://xkcd.com/3062/ resonates with this in a weird way
14:44:35 <b_jonas> https://sourceware.org/glibc/manual/latest/html_node/Atomic-Types.html#index-sig_005fatomic_005ft has some vague wording on this: "In practice, you can assume that int is atomic [wrt signal handlers, not threads]. You can also assume that pointer types are atomic; that is very convenient. Both of these assumptions are true on all of the machines that the GNU C Library supports and on all POSIX systems
14:44:41 <b_jonas> we know of." but that text was written so many years ago that the compilers may have changed since
14:45:30 <ais523> b_jonas: I think you need a "volatile" to benefit from those guarantees
14:45:51 <ais523> otherwise it breaks in situations as simple as reading the same global variable twice
14:46:49 <b_jonas> ais523: ok, but here we're not making a signal handler, we just want to know that the magical integer that zzo mentions is copied as a whole between memory and registers rather than eg. character by character
14:49:24 <b_jonas> though of course the processor will have to follow that tag bit for every word of a vector register separately across all loads and stores for this to work, but I think zzo38 is assuming that the processor does that
14:49:52 <ais523> right, compilers often use over-wide registers for that sort of thing, but don't tend to generate, e.g., XOR swaps
14:49:54 <b_jonas> because eg. copying a large structure or array can use vector registers
14:50:04 <ais523> oh, I think copying a large array can become a call to libc memcpy
14:50:22 <ais523> and that may attempt to copy a byte at a time in some situations
14:50:48 <b_jonas> yes, with the caveat that the compiler requires that the memcpy implementation is a no-op when the from and to address matches, which is not generally true in the C standard
14:51:27 <b_jonas> but I think that wording I quoted from the libc manual does try to imply that memcpy doesn't break pointers or ints into smaller pieces
14:51:53 <b_jonas> (they have to be aligned, but C or C++ requires that anyway of these types)
14:52:59 <b_jonas> and if instead of a well-written memcpy you write your own char* loop then of course you don't get such a guarantee
14:55:38 <int-e> Hmm how closely does this question tie into the earlier discussion about CHERI?
14:58:11 <b_jonas> that said, I find zzo38's hypothetical quite esoteric. normally you'd either make those capabilities a special type with copy and destroy functions in the library (with possibly compiler support if they're sufficiently magical); or make them similar to unix file descriptors so they're a plain integer but you have to close them explicitly and use extra functions to pass to a different process (except
14:58:17 <b_jonas> they need not be like unix file descriptors in that they need not have a guarantee that creating a new capability takes the lowest unused number, and they could be in a different namespace than ordinary file descriptors); or if you really want plain data then you'd make it wider, sized between 16 and 64 bytes, and filled with random data each time you create, then they can be bytewise copied fine.
15:00:50 <ais523> fwiw I've been trying to get gcc to optimise a copy of an int array followed by a char array into one big memcpy, but it refuses to do so
15:01:06 <int-e> FWIW I wish zzo38 had explained the tag bit detail a bit sooner. It makes the question much clearer.
15:01:18 <ais523> clang will generate a call to libc memcpy, though
15:01:47 <b_jonas> ais523: is it in code where you aren't allowed to write past the end of the char array and that end needn't be aligned?
15:01:52 <ais523> but oddly it generates two calls for the int-then-char
15:02:10 <ais523> b_jonas: yes, if gcc is allowed to write past the end (e.g. struct padding) then it does
15:03:40 <ais523> actually the compilers are showing a big lack of joined-up-thinking here
15:04:01 <ais523> if I have a struct with two array fields, and copy the struct, it compiles to one memcpy – if I copy both fields, it compiles two two memcpies, even though that is equivalent
15:07:58 <ais523> this is true in both gcc and clang
15:08:17 <ais523> although, clang uses a call to libc memcpy and gcc uses the processor's memcpy intrinsic
15:08:36 <ais523> (modern x86 and x86-64 have a memcpy routine in microcode that you can call into)
15:09:28 <int-e> "call" meaning `rep movs[size]`?
15:09:31 <ais523> it isn't immediately clear whether the processor's microcoded memcpy is faster or slower than one running in software – the issue is that the branch predictor cares about the memory addresses of branches in order to remember their histories
15:09:39 <b_jonas> sure, gcc has the right to use either a built-in memcpy that it can optimize inline or call a memcpy that libc or you provide
15:10:02 <ais523> so if the whole thing is written as a single rep movsq then the branch predictor has nowhere to store its memory of how the copy branched
15:10:44 <int-e> Naively... it /could/ attach it to the rep movs if it wanted to?
15:10:57 <ais523> int-e: there are multiple branches within the microcode, typically
15:12:14 <ais523> modern CPUs also have predictors for not just where branches go, but whether an instruction is a branch or not
15:12:29 <ais523> in order to be able to speculate past the "branch" before the instruction is even decoded
15:13:24 <int-e> heh then again you get extra speculation opportunities for `rep movs` because you know a lot of registers that won't change
15:13:35 <int-e> I mean if you want to
15:13:39 <ais523> AMD got hit with a new Spectre variant semi-recently in which the processor was trained into expecting that a return instruction would actually be a branch instruction, sending the speculative execution off to a gadget despite the existing Spectre mitigations
15:14:04 <int-e> (hmm it's not even speculation then, just out-of-order execution)
15:14:18 <ais523> I think I can reasonably get an efficient (i.e. implemented with aligned vector moves) memcpy down to just two branches
15:14:23 <ais523> one which special-cases short inputs and one for the loop
15:14:47 <ais523> (for long inputs you unconditionally copy the first vectorful of data using misaligned vector moves, likewise the last vectorful, and then just copy the aligned portion in between with a loop)
15:15:05 <b_jonas> ais523: sure, the cpu wants to predict the target of the ret instruction, and I think it uses both the normal branch predictor for that and some special mechanism just for rets. that's why they even tell you to use a two-byte ret instead of the one-byte near ret.
15:15:12 <int-e> memcpy has to deal with unaligned cases though and that'll be a few extra jumps?
15:15:47 <ais523> b_jonas: the two-byte ret case doesn't apply any more – when it did, the reason was that the branch predictor had a limit for how often in bytes it could make predictions
15:15:56 <ais523> so if you had a jump two executed bytes in a row, it would cause trouble
15:16:10 <int-e> I guess you can try extra arithmetic where you use a bit-wise or of the pointer arguments, mask the bottom bits, then add the length and compare that...
15:16:23 <ais523> int-e: no, the idea is you unconditionally copy the first (e.g.) 32 and last 32 bytes, using unaligned copies
15:16:24 <b_jonas> ais523: you know https://www.agner.org/optimize/#asmlib has an optimized memcpy written by someone who understands optimizing for different x86 cpus right? he can specialize it for different processor implementations because they behave differently
15:16:29 <ais523> then copy all the aligned 32-byte blocks in between
15:17:06 <int-e> ais523: you still have to check that the alignments match
15:17:09 <ais523> this works for any input that's at least 32 bytes long regardless of alignment (although if source and destination have different alignments you have to misalign either the reads or the writes, but you'd probably do that anyway)
15:17:27 <b_jonas> int-e: no you don't, if the alignments don't match the you still want unaligned reads and aligned writes
15:17:42 <b_jonas> so you can always just do aligned writes regardless if the alignment matches
15:18:00 <ais523> b_jonas: so I think the two reasonable ways to do it are either a) unaligned reads and aligned writes, or b) aligned reads, a shuffle/permute, and aligned writes
15:18:21 <int-e> b_jonas: but there are special instructions for aligned reads which might be a tad faster?
15:18:28 <ais523> b) isn't generally used, but it could in theory be faster
15:18:39 <ais523> int-e: those instructions aren't faster, they just trap given unaligned inputs
15:18:55 <ais523> aligned reads are faster than unaligned reads *but* this is true regardless of whether you use the aligned or unaligned read instruction
15:19:18 <ais523> you don't pay for an unaligned read unless the input actually is misaligned, regardless of which instruction you use
15:20:03 <ais523> (this is talking about modern x86, in which unaligned reads are actually as fast as aligned as long as they don't cross a cache line boundary)
15:20:21 <int-e> I guess that makes sense. But yeah it sounds like it might vary between architectures.
15:20:33 <ais523> (but normally when doing unaligned reads in a loop, you amortize the misalignment penalty across all the reads rather than treating the crossing and non-crossing ones differently)
15:20:58 <b_jonas> ais523: I don't think shuffle/permute is ever worth for that, because if you must do an unaligned copy then the x86 processor optimizes the unaligned read better than you can with shuffles; however, you can argue that sometimes when you have written the source recently but won't read the destination for a while you may want to do an aligned read and unaligned write to reduce latency
15:21:16 <ais523> like, for 16-byte reads, those cross boundaries ¼ of the time when misaligned so you approximate by saying they're 25% slower (the boundary-crossing read runs at half speed)
15:21:25 <int-e> especially if you find an architecture that didn't start out with supporting unaligned reads for everything the way x86 did
15:22:07 <ais523> b_jonas: so the reason it might help is that the unaligned read is reading two cache lines, then the next read is reading the same cache line again, so you have 1 more memory access
15:22:34 <ais523> but, that access is to L1 (as you only just read it) which might allow it to beat the arithmetic
15:23:31 <b_jonas> ais523: yes, I think it can beat the unaligned read when the processor can do store-load forwarding because you just stored, but I think in that case an aligned read and unaligned write won't be worse than trying to shuffle
15:24:01 <ais523> oddly, I discovered recently that x86-64 has two different misaligned-vector-read instructions nowadays (MOVDQU and LDDQU) – LDDQU is apparently faster for misaligned reads in cases where the memory isn't written to in the near future, MOVDQU if it is
15:24:06 <int-e> Anyway. I see plenty of room for zzo38's plan to go wrong. Like... would a CPU really add support for those tags to all vector registers, if it has them? That sounds like a big ask...
15:24:32 <b_jonas> ok, I concede, I think there might be some rare case when a vector byte shift is faster
15:24:51 <b_jonas> I don't think I'd ever write that, but if you're very good at optimizing you could
15:24:51 <ais523> I'm not entirely sure what's going on microarchitecturally to cause that sort of performance difference
15:25:08 <ais523> I guess the real question here is "what is the copy bound by"
15:25:26 <ais523> if either end of the copy is not in L1 then I think the bottleneck will be L2/L3/main memory speed
15:25:54 <ais523> and the manually-aligned and unaligned-read versions will run at the same spee
15:26:57 <b_jonas> and if you do copies of short ranges (which is very common in real code) then you can easily mess up and then bound will be the cost you're imposing on instruction decoding caches by using a more complicated code than you should have
15:26:58 <ais523> a cache-line-boundary-crossing L1 read is the same speed as an aligned L2 read, so the cost of the misaligned read doesn't matter as soon as you hit L2, that would be a good reason to do the misaligned read version
15:27:15 <ais523> so memcpy entirely within L1 is the interesting case
15:28:02 <ais523> incidentally, is L3 slower or faster than correctly prefeteched main memory nowadays? e.g. if you're just reading at sequentially increasing addresses, does hitting main memory rather than L3 even matter
15:29:00 <int-e> https://stackoverflow.com/questions/47425851/whats-the-difference-between-mm256-lddqu-si256-and-mm256-loadu-si256 says there's no difference except for Pentium 4?
15:29:03 <ais523> there's a program I've been performance-optimising for ages, and discovered the hardware prefetcher being cleverer than I expected
15:30:38 <ais523> int-e: ooh! so the difference is not "will write it soon" but "recently wrote it", and the instructions had different store-forwarding behaviour once
15:32:04 <b_jonas> yeah, the store-load-forwarding is why you may want aligned reads even if it means you have to do either unaligned writes or vector shifts, even though unaligned writes are usually a bad idea, but if you won't read the destination for a while then it might not matter too much
15:32:23 <int-e> Hmm so I guess the change is that they incorporated all the opitimzations into movdqu for the common case (cached write-combining memory)
15:32:33 <b_jonas> I don't really know if it's ever really worth, I just can't exclude that it's not worth
15:32:57 <ais523> int-e: isn't the normal sort of cache called "write-through" by Intel? write-combining is something else, and rarely used
15:33:04 <b_jonas> I'm not sure I even want to know, I don't think I want to optimize code that involves unaligned stuff (like byte-string handling for network communication) to this level
15:34:35 <ais523> b_jonas: the case that got me looking at this was writing a compiler that's operating on data that it can't prove aligned, even though it logically should be
15:34:51 <ais523> the same sort of thing as "memcpy where you don't know where the pointer comes from"
15:35:22 <b_jonas> unrelated question. in libcurl for HTTP/HTTPS, how do I tell the library that it should close persistent connections now because I won't be starting a new request for a while and they'll be too old to reuse by then anyway? the documentation is unclear. I still want to keep other data (SSL and DNS caches) between the requests, just not the network connections.
15:40:33 <ais523> hmm, in practice, I think most mallocs don't guarantee cache-line alignment when allocating large amounts of memory
15:40:56 <ais523> logically they should – there's basically no cost to doing so and it could help in some situations
15:41:06 <ais523> (there is cost for small allocations, which would be a reason not to do it there)
15:44:51 <b_jonas> these days all the malloc libraries have an API for aligned allocations and I think they all support 64-byte alignment properly because that's a common thing to ask for, so if you want cache line alignment you can get it
15:50:23 <b_jonas> hold on, that's not true, glibc doesn't seem to expose an api for aligned realloc
15:53:10 <int-e> ais523: I guess we're both wrong, the normal operation for RAM is write-back. Now I'll have to read what write-combining actually means to Intel. Write-through means all writes by the CPU end up as individual bus or memory transactions going out of the CPU. Write-combining relaxes that, but how much...
15:56:14 <int-e> (I actually checked how my own PC's RAM is currently configured. Which was less obvious than I thought it would be; /proc/mtrr doesn't list the default, only the special regions...)
15:56:51 <int-e> (but rdmsr 0x2FF works)
15:58:28 <ais523> int-e: ah right, yes, write-back
15:59:05 <ais523> my mental model for how write-combining works is that it has its own separate very small cache that is only used for writes, but I don't know whether that's correct or not
16:00:18 <ais523> non-temporal writes are write-combining even on regular memory, that's what makes me think it works like that
16:00:45 <ais523> <Intel> The non-temporal hint is implemented by using a write combining (WC) memory type protocol when writing the data to memory. Using this protocol, the processor does not write the data into the cache hierarchy, nor does it fetch the corresponding cache line from memory into the cache hierarchy.
16:06:05 <int-e> "13.3.1 Buffering of Write Combining Memory Locations" is where it goes into details of operation
16:09:23 <int-e> Also MTRRs are not the end of the story... there's a page attribute table mechanisms that I've never heard of. Can I inspect those? Hmm.
16:11:34 <int-e> I can, it's exposed in the debug-fs, cf. https://wiki.gentoo.org/wiki/MTRR_and_PAT
16:13:49 <int-e> and for me it only has entries in the lower 4GB, outside of RAM, so the default write-back should still win.
16:14:14 <int-e> but there are write-combining regions in there, presumably for the GPU
16:15:15 <int-e> this was... a fun rabbit hole
16:24:10 <int-e> Actually let me retract the vector register remark regarding tracking tag bits... you're already going to maintain those tag bits in caches and RAM, might just as well go the extra mile.
17:06:31 -!- tromp has joined.
18:01:57 <esolangs> [[Special:Log/move]] move_redir * 47 * moved [[NH3]] to [[NH]] over redirect
18:01:57 <esolangs> [[Special:Log/delete]] delete_redir * 47 * 47 deleted redirect [[NH]] by overwriting: Deleted to make way for move from "[[NH3]]"
18:02:57 <esolangs> [[NH]] https://esolangs.org/w/index.php?diff=154334&oldid=154332 * 47 * (-110)
18:04:08 <korvo> Tangent to the discussion's multiple points: how do folks feel about SWAR/broadword techniques? If we're storing a relatively small value with a relatively large number of tag bits, then we might end up with values that are 4+4, 8+4, or 8+8 bits wide.
18:32:13 <ais523> korvo: so most "tagging for security/safety", like CHERI uses and like zzo38 is using with capabillities, generally only needs to be done on wide values
18:32:48 <ais523> tagging small values is useful for things like carry bits, but normally SWAR-style vectorisation doesn't store carry bits (which is something that has caused some complexity for me recently)
18:33:39 <ais523> you can sometimes check for carry by comparing the one of the inputs to an addition to the output, to see if the result was lower than an input (IIRC it can't be between, so you can compare to either input safely)
18:34:01 <ais523> that said, unless I'm missing something, AVX2 has neither carry bits nor unsigned integer comparisons
18:34:34 <ais523> and the "compare to an input" doesn't work to check overflow for signed addition
18:44:32 <b_jonas> wait AVX2 doesn't have unsigned comparison? let me check that
18:45:07 <b_jonas> I thought even SSE2 had unsigned comparison
18:52:20 <b_jonas> huh, you're right, it takes three instructions to unsigned compare in SSE2. only AVX512 adds an instruction for it.
18:57:53 <b_jonas> nope, only *two* instructions for an unsigned compare: PMINU[BWDQ] followed by PCMPEQ[BWDQ]
19:23:28 <ais523> b_jonas: I think it's still three – that implements ≥ / ≤ not > / <
19:26:04 <ais523> and you need an extra instruction to invert the sense of the result
19:28:50 <b_jonas> ais523: kind of, but you usually don't need an extra instruction to invert a boolean vector, you can almost always just merge it for free in the next instruction that uses it (possibly also with giving inverted result)
19:29:42 <b_jonas> and this is easy to implement in library level with an inverted vector type and overloaded functions
19:30:04 <ais523> ooh, is that why PANDN exists in addition to PAND?
19:30:27 <ais523> (there isn't a PORN, maybe they didn't like the mnemonic)
19:31:34 <b_jonas> yes, this way PAND, PANDN, POR, PXOR cover all the boolean operations
19:32:31 -!- mtm has quit (Ping timeout: 252 seconds).
19:32:33 <b_jonas> I partly implemented this inverted scheme in the SSE4_1 vector library for work back when not every computer that I was working with had AVX yet
19:33:38 <b_jonas> I didn't completely implement it because there are operations that I didn't add, but while I was the only user it would be easy to just add more functions as I need them
19:34:08 <b_jonas> and I indeed added some in later versions
19:37:23 -!- mtm has joined.
19:38:29 <b_jonas> I mean PAND, PANDN, POR, PXOR cover all the two-input *bitwise* operations if you allow that sometimes the output is complemented
19:39:56 <b_jonas> one use is a PAND, PANDN, POR sequence for componentwise branchless if-then-else conditional
19:39:58 <ais523> I guess i'm thinking mostly of when you want to use the boolean as an if conditional (but in a SIMDy way, i.e. you evaluate both sides)
19:40:12 <ais523> in that case having an inverted result might not be what you want
19:43:11 <b_jonas> yes, sometimes you need to insert an extra invert.
19:43:53 -!- Sgeo has joined.
20:12:22 <b_jonas> ok, yet another different question. do you think I can still claim that sqlite3 is the second most installed software library in the world? I talked about this at some point on esoteric, but that was years ago and something like that could change during the years.
20:12:59 <b_jonas> in particular, do Windowses come with a copy of tzdb, or do they have an entirely different implementation? because maybe tzdb is ahead of sqlite3
20:16:50 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154335&oldid=154325 * Buckets * (+14)
20:17:26 <b_jonas> and I guess the netlib code for decimal formatting of floating point may be a candidate too
20:18:02 <b_jonas> I want this for my cv or job interviews so it doesn't have to be strictly true, but it at least has to be plausible enough that a potential employer can believe it
20:18:18 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154336&oldid=154309 * Buckets * (+13)
20:18:57 <esolangs> [[Go back]] N https://esolangs.org/w/index.php?oldid=154337 * Buckets * (+1286) Created page with "Go back is an Esoteric programming language created by [[User:Buckets]] in 2020. {| class="wikitable" |- ! Commands !! Instructions |- | #[] || Infinite Loop/Start. |- | [] || Infinite Loop. |- | +m || Change the current Loop by + m. |- | -n || Change the current Loop b
20:21:01 <b_jonas> oh, https://sqlite.org/mostdeployed.html now talks about this explicitly
20:21:15 <b_jonas> it says "probably one of the top five"
20:21:47 <b_jonas> and "our best guess is ... second most deployed"
20:22:23 <b_jonas> ok, then I can absolutely round that up to second most deployed in a job interview, regardless of tzdb
20:23:15 <esolangs> [[Esorn]] M https://esolangs.org/w/index.php?diff=154338&oldid=154315 * Buckets * (+1)
20:24:29 <esolangs> [[Esorn]] M https://esolangs.org/w/index.php?diff=154339&oldid=154338 * Buckets * (+1)
20:26:57 <esolangs> [[Happy]] M https://esolangs.org/w/index.php?diff=154340&oldid=153949 * Buckets * (+1)
20:31:00 <esolangs> [[]] M https://esolangs.org/w/index.php?diff=154341&oldid=154304 * Buckets * (-1)
20:34:26 <zzo38> If capabilities are required to be aligned, then it is simpler; each general-purpose register needs one tag bit and each eight bytes of general-purpose RAM needs one tag bit, and you don't have to worry so much about broken apart copies, etc, although there is still the consideration of doing unaligned copies of smaller data.
20:35:06 <zzo38> However, I think there are some reasons why you might want unaligned capabilities; this is more difficult but I think still might be able to be done.
20:35:31 <zzo38> With unaligned capabilities, each general-purpose register has one tag bit and each byte of general-purpose RAM has two tag bits.
20:37:05 <zzo38> Copying blocks of memory into a place that will overwrite part of a capability should be safe (although there are a few considerations having to do with virtual memory), but it will have to ensure that ythe first byte of the source is not a non-first byte of a capability and the last byte of the source is not a non-last byte of a capability.
20:37:32 <esolangs> [[Happy]] https://esolangs.org/w/index.php?diff=154342&oldid=154340 * Ractangle * (+0)
20:37:53 <esolangs> [[Happy]] https://esolangs.org/w/index.php?diff=154343&oldid=154342 * Ractangle * (+0)
20:38:06 <esolangs> [[BrainWrite]] M https://esolangs.org/w/index.php?diff=154344&oldid=96575 * Buckets * (+220)
20:38:19 <ais523> <b_jonas> ok, yet another different question. do you think I can still claim that sqlite3 is the second most installed software library in the world? I talked about this at some point on esoteric, but that was years ago and something like that could change during the years. ← I would have guessed zlib as most-installed, although I forgot about tzdb
20:38:51 <ais523> ah, the page you link also mentions zlib
20:39:43 <esolangs> [[Array?]] https://esolangs.org/w/index.php?diff=154345&oldid=149392 * Ractangle * (-6) /* Implementation */
20:40:00 <b_jonas> yes, I also assume that zlib has more copies than sqlite3
20:40:08 <esolangs> [[Special:Log/move]] move * Ractangle * moved [[Array?]] to [[UNAI]]
20:40:08 <esolangs> [[Special:Log/move]] move * Ractangle * moved [[Talk:Array?]] to [[Talk:UNAI]]
20:40:29 <ais523> libpng is also mentioned on the sqlite page, although I would expect libpng to depend on zlib
20:40:39 <ais523> in which case it couldn't reasonably beat it
20:40:44 <b_jonas> zlib will eventually lose out as more modern compression libraries that also have their own implementation of zlib take it over, but that'll take like decades
20:40:53 <esolangs> [[UNAI]] https://esolangs.org/w/index.php?diff=154350&oldid=154346 * Ractangle * (-7)
20:41:55 <ais523> I'm not convinced, most computers with a more modern compression library will still need zlib for things that have it as a dependency
20:42:24 <ais523> I used zlib as a dependency of NH4 on the basis that the user was very likely to have a copy already
20:42:47 <ais523> hmm… now I'm thinking about the way that on Windows, programs are expected to ship their own libcs
20:43:25 <zzo38> Some programs might have different implementations of DEFLATE
20:43:38 <ais523> it makes it very difficult to use open-source compilers on Windows, because the libc needs to link against OS internals which aren't widely known (I think they might be publicly available but am not sure) and the Microsoft-provided libcs have license conditions preventing you linking against them with your own non-MSVC compilers
20:43:41 <esolangs> [[UNAI]] https://esolangs.org/w/index.php?diff=154351&oldid=154350 * Ractangle * (-91) /* Commands */
20:44:04 <esolangs> [[UNAI]] https://esolangs.org/w/index.php?diff=154352&oldid=154351 * Ractangle * (+0) /* Hello, world! */
20:44:18 <ais523> mingw works by linking against an OS-provided library which has a lot of libc functionality in it, although it isn't a standard libc and not all the functions in it obey the C specification
20:44:31 <ais523> and Microsoft say not to do that, but don't offer reasonable alternatives
20:44:33 <esolangs> [[UNAI]] https://esolangs.org/w/index.php?diff=154353&oldid=154352 * Ractangle * (-2) /* Cat program */
20:44:51 <zzo38> Will ReactOS be helpful for making open-source compilers on Windows?
20:45:13 <b_jonas> I don't understand, aren't you just supposed to use the libc that comes with MSVC, even if it is not compliant with the C specification in a lot of ways?
20:45:19 <ais523> zzo38: that's an interesting point, actually – ReactOS/Wine's shared codebase would probably a useful target to develop against if writing a Windows libc from scratch
20:46:35 <ais523> b_jonas: you can't do that legally, but I think you have confused two libcs – there is the libc that comes with MSVC which is mostly specification-compliant, and which you can distribute with your programs but can't legally link against with non-MSVC, so mingw can't use it – and there is the libc-like library which comes with Windows (called MSVCRT.DLL) which is not very standards-compliant
20:46:48 <ais523> (yes, it's confusing that the one called MSVC is the one that doesn't come with MSVC)
20:47:10 <b_jonas> ais523: you can't ship that MSVC, but can't you link to it and have the user install the library separately downloading it from Microsoft if it doesn't ship with Windows?
20:47:49 <b_jonas> I'm very likely confused about how all this works
20:49:54 <b_jonas> also for just the operating system interfaces, aren't they in a separately library that you can link to without linking to any libc-like thing?
20:50:13 <ais523> b_jonas: yes but the documentation for that is hard to find
20:50:23 <ais523> I think that's what Microsoft's "official" suggestion is, but AFAICT nobody has actually done that
20:50:38 <ais523> (i.e. "if you're writing your own compiler you don't get to leech off our libc")
20:51:02 <ais523> I wonder whether any of the existing Linux/Unix libcs works on Windows, using Windows kernel interfaces
20:51:08 <b_jonas> what does the clang C and C++ environment that zig distributes these days do?
20:52:22 <ais523> b_jonas: found it: "Distribution of the Visual C++ Runtime Redistributable package, merge modules, and individual binaries is limited to licensed Visual Studio users and is subject to such License Terms."
20:52:47 <ais523> so either the developer or the end user would need a Visual Studio license
20:53:12 <ais523> I do have a Visual Studio license, but for a computer that is no longer operational
20:53:28 <b_jonas> ais523: that says "distribution". you can still link to it, and have the user download it from microsoft, can't you? like with microsoft's fonts
20:54:20 <ais523> maybe? this is the point where I would start to not trust a programmer's interpretation of the law
20:54:57 <b_jonas> I mean, all this nonsense about windows being hard to develop to is part of why I prefer to develop for linux rather than windows. It's not even just libc directly, but that many other programmers find windows development difficult and so don't port their libraries to windows in a convenient form, so anything I try will run into a dependency being hard to use. Or the dependencies are available, but they
20:55:00 <ais523> it would be incompatible with the GPL (which only lets you link to closed-source system libraries in certain circumstances, and this isn't one of them)
20:55:03 <b_jonas> are for different pseudo-architectures on windows, like they use different libcs or compilers, and I can't link them together.
20:55:20 <ais523> b_jonas: I agree, although Windows is less hostile to develop for than Mac OS X nowadays
20:55:41 <ais523> Apple have lots of rules for developers to follow, which wouldn't be as bad if they didn't keep changing
20:56:07 <b_jonas> and game consoles are even worse, sure
20:56:26 <b_jonas> but OS X just never came up, whereas I use Windows for work all the time, so I do encounter that problem
20:56:41 <ais523> I haven't tried to develop for Android but a former coworker did, I'd put it somewhere around the Windows level of difficulty
20:57:12 <ais523> at least Windows can be cross-compiled onto relatively simply, meaning that the only real problem is the dependencies
20:57:38 <b_jonas> exactly, needing a visual studio license as a developer isn't a problem if it's for work
20:57:45 <ais523> BSD is easy to develop for, just as good as Linux
20:57:54 <b_jonas> but I don't want to have to spend time porting every dependency
20:58:53 <ais523> I haven't targeted many other things – some bare-metal microcontrollers where the major issue is that the toolchains are usually terrible
20:59:03 <b_jonas> like most potential dependencies are well-written and should be possible to port, but I shouldn't have to
20:59:21 <ais523> one of them, the officially supported compiler was an old version of gcc that had been patched to call out to a separate executable to see whether you'd paid for a license
20:59:44 <ais523> this is not technically a GPL breach because nothing was preventing you patching it back again, but they were hoping that people wouldn't go to the trouble of recompiling
21:00:21 <b_jonas> yeah, I don't care too much about the bare-metal microcontrollers, but they happen to be useful in that a lot of the rust and zig community do care about such uses, and that makes rust and zig get more attention and better development even for windows or linux
21:00:28 <ais523> (or you could just replace the separate executable with your own executable that implemented the same API)
21:01:12 <ais523> most of my microcontroller development was done in asm, though
21:01:27 <b_jonas> yes, shapez the game is following that model: they have a (cheap) payed licensed version sold on Steam and an open source version where you have to do some slight inconvenience to compile it for yourself
21:01:35 <ais523> because I was working with microcontrollers too small for most compilers to be able to target them, as their runtimes wouldn't fit
21:02:25 <ais523> they had substantially less than a kilobyte of RAM
21:02:36 <ais523> and a few kilobytes of flash memory to store the program
22:14:56 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:17:25 -!- tromp has joined.
22:59:09 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:00:45 <zzo38> I had seen many requests from different IP address and user-agents that do not seem to be legitimate, and had read that apparently they are LLM scraping that are badly implemented.
23:01:23 <zzo38> I had seen, and also had some ideas, about how to work against it or how to stop it. Will the use of a EICAR test file help at all?
23:04:10 <zzo38> Can redirects be used to confuse them?
23:05:11 <zzo38> (possibly redirects to http://127.0.0.1/ if that is able to be usable to control anything?)
23:09:52 <ais523> zzo38: there are lots of different badly implemented scrapers out there
23:10:09 <ais523> and no consensus about how to deal with them
23:11:54 <zzo38> They all seem to claim to be Mozilla-based, and use different IP addresses for every request (possibly with the exception of redirects, as far as I can tell)
23:12:26 -!- alec3660 has quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.).
23:12:55 -!- alec3660 has joined.
23:15:31 <esolangs> [[Countup]] M https://esolangs.org/w/index.php?diff=154354&oldid=101775 * Buckets * (+2)
00:03:29 -!- mtm has quit (Ping timeout: 268 seconds).
00:05:59 -!- mtm has joined.
00:22:51 <ais523> hmm, I wonder if the "different IP address for every request" is exploitable somehow – perhaps by putting up an interstitial if an access is made from an IP address that hasn't accessed recently and isn't accessing the home page (or other pages that would be likely to be accessed directly)
00:28:03 <zzo38> I did think of that. (I also considered limiting that to HTML, and possibly also limited to user-agents with "Mozilla")
00:39:06 <zzo38> However, any of these things will not prevent clients from trying to access them, although it does prevent dynamic files from being accessed (which often will cost more, so it can help a bit, if the filter to prevent access doesn't cost more, I suppose). I was also wondering if there is a way to confuse the botnets or whatever they are (someone said they might be botnets).
00:44:51 -!- molson_ has quit (Ping timeout: 246 seconds).
00:45:23 <esolangs> [[16 bits, 256 bytes]] M https://esolangs.org/w/index.php?diff=154355&oldid=154098 * PrySigneToFry * (+0)
00:47:22 <b_jonas> ais523: I think that would be hard to make not annoying for legitimate users
00:53:02 <ais523> lots of sites are using Cloudflare interstitials to try to stop the AI bots
00:53:45 <ais523> and it is a bit annoying
00:54:33 <JAA> Ah, another community battling with the LLM bots.
00:55:29 <ais523> I think the entire Internet is at the moment
00:59:05 <zzo38> Currently, I have disabled my HTTP server although the other protocols are still available.
00:59:07 <JAA> I wonder what they do with meta refreshes.
00:59:09 <ais523> oddly most of my access logs appear to be vulnerability scans (presumably black hat, although I can't tell from the logs)
00:59:33 <ais523> I think it may be because my website doesn't have very many different pages, so the AI bots can scrape it fairly quickly
01:00:22 <JAA> Ah, yeah. I'm running a code forge, so there are virtually infinitely many deep rabbit holes they can hunt.
01:01:41 <ais523> I wonder whether I should try to set up some sort of fail2ban on 404s
01:02:31 <zzo38> I had seen an article in 2600 about vulnerability scans, that is saying that the people who write the vulnerability scanners should not make it access all of the files several times, since many of the accesses are redundant and are unnecessary.
01:02:41 <ais523> although my webserver doesn't have CGI or anything similar enabled so it is unlikely to find any actual exploits, the speed at which it's attempting them could potentially be problematic for CPU load (although I think it's run out of things to try by now, another bot might later try the same thing)
01:05:33 <zzo38> I have what seems to be vulnerability scans in my logs as well, although I also have what seems to be attempts to connect to port 80 using TLS (but I do not currently have servers with TLS, on any port).
01:09:55 <zzo38> I have version control repositories, although most of these are mirrored on GitHub, that does not help if you want to use Fossil instead.
01:14:44 <zzo38> Another thing I use the Fossil wiki for though is recording what happens in the GURPS game I play. (These are publicly available (when the HTTP server is running), although only those who are involved with the GURPS campaign are allowed to edit it.)
01:17:39 <zzo38> So, due to this, it is sometimes necessary for the server to be available for this purpose. I could change it to work differently, but it will be necessary to be compatible with iPad, as well as computers with Windows and Linux. I do make a archive file of all of the text that can be downloaded and used without an internet connection, but you still need to connect to the server to download it.
01:23:04 <zzo38> I also received the request "t3 12.1.2" (which is not a valid HTTP request); do you know what that is? I received the same request on the Scorpion server (port 1517; it is not a valid request there, either). They are on different dates from different IP addresses.
01:27:57 <zzo38> Also, my HTTP server has some internal stuff which is only used on my computer. I suppose I could configure it to block the port temporarily, so that it will still work locally.
01:31:50 <zzo38> I also receive HTTP requests on my SMTP sometimes, for some reason.
01:38:03 -!- 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:15:55 <esolangs> [[Zudjn]] https://esolangs.org/w/index.php?diff=154356&oldid=152575 * DevThatCodes * (+3) /* syntax */
02:16:48 <esolangs> [[Zudjn]] https://esolangs.org/w/index.php?diff=154357&oldid=154356 * DevThatCodes * (+24) /* syntax */
02:19:32 <esolangs> [[Yugoslavic]] N https://esolangs.org/w/index.php?oldid=154358 * PrySigneToFry * (+8874) Created page with "{{WIP}} Yugoslavic() is a pseudo-natural programming language designed by PSTF, based on Srpski and [[LOLCODE]]. There are two variant of Srpski: One is Cyrillic and another is Latin. We use Cyrillic variant. There are six variant of this language: Srpski(Se
02:21:36 <esolangs> [[Yugoslavic]] https://esolangs.org/w/index.php?diff=154359&oldid=154358 * PrySigneToFry * (+225)
02:22:11 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154360&oldid=154335 * PrySigneToFry * (+17)
02:23:08 <esolangs> [[Talk:Yugoslavic]] N https://esolangs.org/w/index.php?oldid=154361 * PrySigneToFry * (+955) Created page with "Are there any users from Serbia? ? --[[User:PrySigneToFry|<span style="color:blue;background:yellow;"></span>]]User talk:PrySigneToFry|<span style="color:aqua;background:red;"></..."
02:28:52 <esolangs> [[Talk:Braindrunk]] https://esolangs.org/w/index.php?diff=154362&oldid=154331 * PrySigneToFry * (+16838) /* The partial output of 99 bottles of beers on my computer */ new section
02:29:24 <esolangs> [[Talk:Braindrunk]] https://esolangs.org/w/index.php?diff=154363&oldid=154362 * PrySigneToFry * (+17)
03:05:04 -!- op_4 has quit (Remote host closed the connection).
03:05:35 -!- op_4 has joined.
03:35:54 <int-e> b_jonas: conditional moves can be worse: they can be an XOR, followed by masking, followed by another XOR
03:38:05 <int-e> (Not completely unlike the XOR swap pattern, but I'd agree that no compiler is likely to ever use that.)
03:40:46 <int-e> What's worse about this is that it produces intermediate values that are meaningless (in context: not capabilities nor an easy constant that's all-0 or all-1).
03:49:24 <korvo> ais523, int-e, tromp: Have y'all had a chance to look at Sammy yet? I was going to hold off on pinging until I'd fleshed out the article, but right now it looks like I might be busy delivering value to clients for a few weeks.
03:49:40 <korvo> Any other Kolmogorov complexity enjoyers?
03:52:44 <zzo38> f the compiler does that, that would be a problem, since my idea was that it would be an error to produce such intermediate values that are otherwise meaningless (even if those values are never used). However, I also had the idea (before you mentioned this but after I thought about it initially, but that I did not mention yet), that AND, OR, or XOR of a capability with itself would be valid.
03:53:52 <zzo38> (the result will be the capability for AND and OR, and will be zero in the case of XOR; this zero is not a capability, so it would clear the capability bit from the register that the result is written to in the case of XOR)
03:55:16 <zzo38> If it is necessary, then I suppose it is also possible to make it allow AND and OR of a capability with either 0 or -1, and XOR with 0 (but not with -1).
04:00:27 <zzo38> (Although it would be possible to allow meaningless intermediate values, it would be too complicated, so it is best not to allow it, I think.)
04:06:08 <int-e> korvo: I've decided not to care about Sammy. I.e., I'm not going to unravel the category lingo and translate it into something I actually understand.
04:08:10 <int-e> (No offense intended to you or anybody else.)
04:08:17 <korvo> int-e: That's fair. Would it help if I wrote out decategorifications in Set or maybe Pos (partial orders & monotone functions)? By folklore, we could talk about constructions in set theory.
04:09:37 <korvo> No worries, I'm not hurt. I'm mostly vindicated because this gives us a reason to care about the names of categories. One of the nLab admins once said that naming categories is like counting sand on the beach, which makes sense if you don't have an uncomputable Sand -> N measuring some complexity, etc.
04:12:20 <int-e> korvo: I'd look at such a decatogorisation. I can't promise that I can actually do anything with it, obviously.
04:14:14 <korvo> No worries. It's good enough to have a hint of what to work on next time.
04:15:42 <int-e> Ironically I really liked the categorical algebra/coalgebra constructions (with types as initial algebras and final coalgebras). But that's ultimately concrete.
04:15:52 <korvo> I need to figure out how computable a type-checker would be, and also how uncomputable a Kan extension really is. I know that the decategorification to Set is computable because there's a book explaining how to do it in SML: https://www.cs.man.ac.uk/~david/categories/book/book.pdf
04:20:08 <korvo> Also, if it sounds more tractable, I can put a measure onto *Cammy* (my language) using Yanofsky's approach. Cammy's combinators include bicartesian-closed categories, whose rewrites are known to not be finitely axiomatizable, so we should get an interesting complexity measure.
04:35:29 -!- LKoen has quit (Ping timeout: 244 seconds).
04:54:12 <esolangs> [[Fi (Archived)]] M https://esolangs.org/w/index.php?diff=154364&oldid=105771 * Rdococ * (+1264) I may as well try to do a thing with this
04:54:36 <esolangs> [[Special:Log/move]] move_redir * Rdococ * moved [[Fi (Archived)]] to [[Fi]] over redirect
04:54:36 <esolangs> [[Special:Log/move]] move_redir * Rdococ * moved [[Talk:Fi (Archived)]] to [[Talk:Fi]] over redirect
04:54:36 <esolangs> [[Special:Log/delete]] delete_redir * Rdococ * Rdococ deleted redirect [[Fi]] by overwriting: Deleted to make way for move from "[[Fi (Archived)]]"
04:54:36 <esolangs> [[Special:Log/delete]] delete_redir * Rdococ * Rdococ deleted redirect [[Talk:Fi]] by overwriting: Deleted to make way for move from "[[Talk:Fi (Archived)]]"
04:55:22 <Sgeo> I think my brain broke. I put 'second derivative of signum(x)' into Wolfram Alpha and it said something about the Dirac function. I googled it earlier and assumed the mention I saw was some AI hallucination, but... I guess not?
04:55:40 <esolangs> [[User:Rdococ]] M https://esolangs.org/w/index.php?diff=154369&oldid=148595 * Rdococ * (+90)
04:56:40 <Sgeo> And I thought the first derivative would be undefined at x=0
04:59:52 <Sgeo> Wikipedia says the dirac function isn't a function, and differentiating sign function at x=0 requires a more expansive than usual definition of derivative
05:04:13 <korvo> IIRC it's a function over the reals iff equality over the reals is available. It's not a feature of constructive maths.
05:12:19 <int-e> Dirac delta is not a real-valued function.
05:13:41 <int-e> (but you can still model it as a function that takes on a specific infinite value at 0)
05:32:18 <ais523> korvo: I already struggle with thinking about category theory as my brain tends to blur the various levels of abstraction, and Sammy adds an extra level and thus makes things worse
05:32:31 <ais523> I don't think I'm at all likely to get into the right mental state to understand it
05:33:17 <ais523> it is definitely very esoteric, though
05:37:28 <ais523> Sgeo: https://en.wikipedia.org/wiki/Dirac_delta_function#Derivatives seems to be the specific function-like thing you were looking at
05:39:03 <ais523> it's one of those things that seems to have lots of properties of the same nature as the properties that functions have, but is missing some important ones such as actually being able to evaluate it
05:43:11 <ais523> I am reminded of how many properties of odd perfect numbers we know…
05:51:07 <zzo38> My own thinking about category theory, tends to be different from how they are commonly described, in my opinion. A category is commonly described as generalizations of sets, groups, etc; to me it looks like a generalization of monoids, that instead of putting any two elements together they must match and the objects tell you which ones match, and matrix multiplication is an obvious example.
05:51:46 <zzo38> (Most other explanations of category theory don't usually mention monoids and matrix multiplication right away, as far as I can tell.) This is just as valid but is a different way of how you would think about category theory, it seems.
05:58:04 <korvo> ais523: Oh, I'm struggling too. Kan extensions are famously hard to conceptualize because *every* structural concept can be expressed as a Kan extension. I'm going to have to write a type-checker in order to actually hack out any interesting programs.
05:58:46 <ais523> we can have Malbolge, so I don't see why we can't have this too :-)
05:59:32 <ais523> (although it has a somewhat different reason behind the difficulty of programming)
06:00:30 -!- ais523 has quit (Quit: quit).
07:14:29 -!- Lord_of_Life_ has joined.
07:14:57 -!- Lord_of_Life has quit (Ping timeout: 248 seconds).
07:15:49 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:18:15 <esolangs> [[]] https://esolangs.org/w/index.php?diff=154370&oldid=153248 * PrySigneToFry * (+2097)
07:23:35 <esolangs> [[]] https://esolangs.org/w/index.php?diff=154371&oldid=154370 * PrySigneToFry * (+636)
07:24:03 -!- tromp has joined.
07:56:58 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
07:59:00 -!- tromp has joined.
08:51:43 -!- FreeFull has quit (Quit: Lost terminal).
09:03:19 -!- Sgeo has quit (Read error: Connection reset by peer).
09:56:59 -!- Ae` has joined.
10:34:46 <esolangs> [[]] https://esolangs.org/w/index.php?diff=154372&oldid=154371 * PrySigneToFry * (+1)
10:36:46 <esolangs> [[Amethyst/Standard Library]] N https://esolangs.org/w/index.php?oldid=154373 * PrySigneToFry * (+64) Created page with "{{Back|Amethyst}} Amethyst supports several standard libraries."
10:41:48 <esolangs> [[Amethyst/Standard Library/Math]] N https://esolangs.org/w/index.php?oldid=154374 * PrySigneToFry * (+5605) Created page with "{{Back|Amethyst/Standard Library}} <pre> NAME math DESCRIPTION This module is always available. It provides access to the mathematical functions defined by the C standard. FUNCTIONS acos(x, /) Return the arc cosin
10:42:21 <esolangs> [[Amethyst/Standard Library]] https://esolangs.org/w/index.php?diff=154375&oldid=154373 * PrySigneToFry * (+37)
10:45:42 <esolangs> [[Amethyst/Standard Library/Random]] N https://esolangs.org/w/index.php?oldid=154376 * PrySigneToFry * (+6896) Created page with "{{Back|Amethyst/Standard Library}} <pre> NAME random - Random variable generators. DESCRIPTION integers -------- uniform within range sequences --------- pick random eleme
10:48:13 <esolangs> [[Amethyst/Standard Library]] https://esolangs.org/w/index.php?diff=154377&oldid=154375 * PrySigneToFry * (+39)
10:49:01 <esolangs> [[Amethyst]] https://esolangs.org/w/index.php?diff=154378&oldid=154320 * PrySigneToFry * (+56)
11:18:48 <b_jonas> int-e: right, so you want to do a conditional move from b to s like if (f < 0) s = b; the compiler had a bad day so it compiles that as s += b - s & f >> 63; then even if b was a capability and s can end up with its value, zzo38's processor can lose track of that and s will be a plain integer (assuming s was nonzero)
11:19:38 <b_jonas> and this could happen with wordwise operations where s, b, f are multiword vectors
12:04:00 -!- mtm has quit (Ping timeout: 252 seconds).
12:07:38 -!- mtm has joined.
12:14:01 <esolangs> [[Woodchuck/Implementation]] M https://esolangs.org/w/index.php?diff=154379&oldid=117969 * Rdococ * (+125) updat's
12:16:05 <esolangs> [[Woodchuck]] M https://esolangs.org/w/index.php?diff=154380&oldid=116711 * Rdococ * (-46)
12:23:33 -!- amby has joined.
12:28:42 <int-e> Hmm optimizing Sea Magic is hard even with known scores to aim for... but I've obtained my 18th box. https://int-e.eu/~bf3/tmp/seamagic.png
12:29:59 <int-e> (the best known scores I've collected add up to 19250 points, and only 5 of my level solutions match the corresponding best known score...)
12:30:26 <b_jonas> hmm, does #esoteric play Veggie quest, the puzzle game where you have to build mazes that take many steps to solve
12:32:06 -!- drwiz has joined.
12:32:17 -!- drwiz has left.
12:32:54 <int-e> Oh ais523 commented on https://int-e.eu/~bf3/tmp/seamin.png asking about a true minimal score... I suspect that's boring: you finish ice 2 with 115 points, move 1 and slide 1 with 40 points, and 5 more levels without boxes, at which point you have exactly 1000 points and 4 levels left to solve, so you can have all levels solved at 1004 points.
12:33:54 <int-e> (I did improve the ice 2 minimal score since the last time I shared that link)
12:35:17 <int-e> I had not even heard of Veggie Quest
14:19:54 <esolangs> [[User:Cycwin]] https://esolangs.org/w/index.php?diff=154381&oldid=151862 * Cycwin * (+20)
14:20:45 <esolangs> [[User:Cycwin]] https://esolangs.org/w/index.php?diff=154382&oldid=154381 * Cycwin * (+16)
14:22:38 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154383&oldid=154294 * Cycwin * (+76) /* PLZ HLP MI */ new section
14:30:29 <esolangs> [[DeadPig]] https://esolangs.org/w/index.php?diff=154384&oldid=101567 * PrySigneToFry * (+0)
14:37:39 <esolangs> [[User talk:Cycwin]] https://esolangs.org/w/index.php?diff=154385&oldid=151344 * I am islptng * (+216)
14:41:18 <esolangs> [[User talk:Cycwin]] https://esolangs.org/w/index.php?diff=154386&oldid=154385 * Cycwin * (+139)
14:44:11 <esolangs> [[User talk:Cycwin]] https://esolangs.org/w/index.php?diff=154387&oldid=154386 * Cycwin * (+17) /* Just some weird words */
14:51:33 <esolangs> [[User:Cycwin]] https://esolangs.org/w/index.php?diff=154388&oldid=154382 * Cycwin * (+99)
14:59:38 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154389&oldid=154295 * Cycwin * (+239)
15:04:22 -!- FreeFull has joined.
15:05:06 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154390&oldid=154389 * Cycwin * (+73) /* All Functions */
16:56:53 <korvo> https://www.youtube.com/watch?v=RcVA8Nj6HEo Quite nice animations of Tromp diagrams.
17:05:21 -!- ais523 has joined.
17:10:37 <esolangs> [[Reflecto]] https://esolangs.org/w/index.php?diff=154391&oldid=153531 * QuantumV * (+90) add register
17:21:46 <korvo> Hm, I haven't worked it out, but I just noticed that lambda calculus can't encode *the* natural numbers on the nose, because there isn't an associated DDS (dynamical discrete system, IIRC?) for them.
17:22:26 <korvo> The best DDS for the nats has one object and one non-trivial arrow; intuitively, the encoding ignores the arrow, traverses it once, traverses twice, etc.
17:23:26 <korvo> But it should also be possible to go around infinitely many times. There should be a way to use a fixed-point combinator to make a Church numeral that loops forever.
17:24:07 <korvo> And since Church numerals are the initial such encoding, all encodings of the natural numbers have a version of this extra infinite number.
17:31:31 <esolangs> [[Funciton]] https://esolangs.org/w/index.php?diff=154392&oldid=154284 * Timwi * (+6833) Regular expression functionality https://www.youtube.com/watch?v=ImzcTmB0m0k
17:32:41 <esolangs> [[Funciton]] M https://esolangs.org/w/index.php?diff=154393&oldid=154392 * Timwi * (+0) rearrange
17:34:09 <esolangs> [[Funciton]] M https://esolangs.org/w/index.php?diff=154394&oldid=154393 * Timwi * (-2) fix wrong heading size
17:39:41 <esolangs> [[Funciton]] M https://esolangs.org/w/index.php?diff=154395&oldid=154394 * Timwi * (+0) minor fix
18:13:07 -!- Sgeo has joined.
18:18:05 <ais523> korvo: so the lambda calculus can encode an infinite loop, which isn't a natural number – but it can also encode lots of other things that aren't natural numbers
18:18:54 <korvo> ais523: Even with a type system, we can't exclude an omega term.
18:18:56 <ais523> both typed and untyped lambda calculi seem to have their own issues here
18:19:17 <ais523> I'm not sure either allow you to express "the type of a natural number" without adding it as a primitive
18:20:14 <esolangs> [[Frackit]] https://esolangs.org/w/index.php?diff=154396&oldid=151355 * Stkptr * (+2406) Turing complete
18:20:18 <korvo> ais523: Bauer explains why the type I've given before (forall X, (X -> X) -> (X -> X)) is the right one: https://cstheory.stackexchange.com/a/30924
18:20:52 <korvo> They also hint that this happens for other models, and that the right way to think of it is as a "weak" initiality.
18:20:59 <ais523> ah right, a generic typed lambda calculus
18:21:33 <ais523> hmm, doesn't call/cc have a type of that shape?
18:21:45 <korvo> Interestingly, there's a topological object that has more-or-less the set of these lambda terms as its points! It's N∞ the one-point compactification of nats.
18:21:52 <ais523> ah no, that's ((X -> X) -> Y) -> X
18:22:04 <ais523> err, no, I think I have that wrong
18:22:30 <korvo> And it's known that N∞ ≈ N + 1 only iff LEM, which isn't the case on a computer.
18:22:45 <korvo> Er, LPO, not LEM? I should find that cite.
18:22:52 <ais523> korvo: on the wiki recently we noticed that "the rationals but the denominator can be 0" is an interesting set of numbers
18:23:18 <korvo> Oh, found it, from Past Corbin being a dumbass: https://langdev.stackexchange.com/a/3941
18:23:40 <ais523> because you can cancel numerator and denominator, it's basically Q + 1/0 and 0/0, but 1/0 and 0/0 don't seem meaningfully distinguishable (you have to treat them as the same in order for all the identities you'd want to hold)
18:24:20 <ais523> there is one missing field axiom, though, you don't get x * 0 = x
18:24:57 <esolangs> [[Onesharp]] https://esolangs.org/w/index.php?diff=154397&oldid=151350 * Stkptr * (+105)
18:25:06 <korvo> Fun. I was recently playing with possibly-empty fields, which have similar issues because they might lack 0 but always require 1.
18:25:32 <korvo> Those don't behave like fields of fractions, but like groups of units which embed into finite fields.
18:27:39 <esolangs> [[NB]] https://esolangs.org/w/index.php?diff=154398&oldid=151115 * Stkptr * (+5) Not high level, but surely TC
18:56:22 <ais523> apparently the current mathematical consensus is that it evaluates to 1 if the 0 in the exponent is an integer, but is undefined if the 0 in the exponent is a real number
19:10:16 <esolangs> [[Church numeral]] https://esolangs.org/w/index.php?diff=154399&oldid=150245 * Corbin * (+2462) Had a thought, chatted on IRC, did some research. Consolidated sources somewhat.
19:28:03 <korvo> It is also 1 in the natural numbers via decategorification of Set (counting arrows 0 → 0), and as a consequence I'm not sure it *can't* be 1 in a semiring
19:28:44 <korvo> I recall reading a paper about how 0⁰ converges to 1 but with branch points; can't recall the title though.
19:32:11 <korvo> > let { zero f x = x; exp b c = c b } in exp zero zero ("."++) []
19:32:54 <korvo> > let { three f x = f $ f $ f x; exp b c = c b } in exp three three ("."++) [] -- checking that it's really exponentiation
19:33:02 <ais523> 0⁰ is obviously 1 in Church numerals because if you raise 0 to the power of something, that thing doesn't even get evaluated
19:34:05 <ais523> ^ul (::**)(::**)^(+)~^S
19:34:05 <fungot> +++++++++++++++++++++++++++
19:34:19 <korvo> > let { three f x = f $ f $ f x; exp b c = c . b } in exp three three ("."++) [] -- found it
19:35:04 <korvo> > let { zero f x = x; exp b c = c . b } in exp zero zero ("."++) [] -- and this is why I shouldn't live-code
19:36:03 <korvo> Okay there we go. So that's kind of a weird outcome. This shows that the way that we're embedding the nats into e.g. Church numerals *isn't* an embedding of semirings preserving exponentiation.
19:36:40 <korvo> But it does preserve addition and multiplication, more or less. Weird, right? I don't know if this is a side-effect of Tannenbaum or something else.
19:37:37 <korvo> ...Wait, I think I'm talking gibberish. Curses.
19:37:58 <esolangs> [[Church numeral]] https://esolangs.org/w/index.php?diff=154400&oldid=154399 * Corbin * (+30) Fixed conventions and grammar. Gave it an out-loud test.
19:38:28 <korvo> Ignore me as I do not know anything about numbers.
19:38:45 <ais523> korvo: I think, above, you defined a multiplication function named "exp"
19:39:04 <korvo> ais523: I think so, yeah. I'm pretty bad at Haskell.
19:39:21 <ais523> that's why I was doing the same thing in Underload, which I'm very used to
19:39:39 <ais523> I'm not great at Haskell and was mentally translating into Underload to verify it
19:46:15 <korvo> Yeah, it was right the first time. Moreover it's got a cool hint of the underlying categorification; `exp zero zero` hand-reduces to id.
19:47:57 <fungot> rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr ...too much output!
19:49:37 <b_jonas> unlambda would be easier to write in a readable way if it had the rule that whitespace is a no-op statement like in brainfuck
19:49:51 <b_jonas> so you don't need to ( )! to write a comment
19:50:55 <korvo> I'm used to Nix, for which there's not a bot. Something like `let three = f: x: f (f (f x)); exp = b: c: c b; in exp three three`
19:54:42 <b_jonas> this Nex? https://esolangs.org/wiki/Nix
19:54:49 <b_jonas> doesn't look like what you're referring to
19:55:24 <korvo> Nix is a sort of mix of Haskell and JSON. Its reference implementation is equipped with capability-aware storage. It's used to build packages for GNU/Linux systems, mostly.
19:56:17 <korvo> https://en.wikipedia.org/wiki/Nix_(package_manager) I think that this could use an eso-first treatment. People have written arithmetic, text tools, parsers, etc. in pure Nix.
19:56:34 <ais523> is the product of two single-precision IEEE floats always exactly representable as a double-precision IEEE float?
19:56:50 <ais523> korvo: I was aware of Nix the package manager but didn't realise it was an esolang
19:56:52 <korvo> I broke ground on a fast JIT-oriented version of Nix but got zero community buy-in.
19:56:58 <ais523> it does make sense, though, given the Sudoku solver in apt
19:57:21 <korvo> ais523: Perhaps you've heard folks mention "NEL" or "Nix expression language".
19:57:48 <ais523> (which isn't even really an abuse of apt – apt's entire job, other than downloading packages from the Internet, is to resolve dependencies and conflicts, and that's pretty much what Sudoku is)
19:58:27 <ais523> korvo: no, I've only seen it mentioned as a package manager
19:58:42 <korvo> It's basically an ML! It tastes like Haskell but without custom operators. It's not like HCL, the language in Packer or Terraform, which is not really up to general-purpose computation.
19:58:50 <b_jonas> ^ul (((d)S)((b)S))(( )S~:^*a~^^a*~:^):^( strings with Fibonacci lengths )!
19:58:50 <fungot> b d db dbd dbddb dbddbdbd dbddbdbddbddb dbddbdbddbddbdbddbdbd dbddbdbddbddbdbddbdbddbddbdbddbddb dbddbdbddbddbdbddbdbddbddbdbddbddbdbddbdbddbddbdbddbdbd dbddbdbddbddbdbddbdbddbddbdbddbddbdbddbdbddbddbdbddbdbddbddbdbddbddbdbddbdbddbddbdbddbddb dbddbdbddbddbdbddbdbddbddbdbddbddbdbddbdbddbddbdbddbdbddbddbdbddbddbdbddbdbddbdd ...too much output!
20:01:19 <korvo> https://github.com/milahu/nix-yaml/blob/main/from-yaml.nix is a decent example of what folks get up to when they're still trying to be productive. Nix has JSON import and export but not YAML.
20:02:18 <b_jonas> ais523: good question about the floating point, that might actually be true
20:04:40 <zzo38> I think JSON and YAML both have some problems and are not really the best kind of formats. It would depend what you are doing with it, but generally they aren't very good, I think.
20:04:46 <zzo38> I had heard of NixOS before, though.
20:04:55 <korvo> ais523: Curiously, we (nixpkgs) don't really use constraint-solving or other search. Instead, we work manually to holistically curate sets of packages which work together. Kind of like generalized Stackage or locked crates.
20:05:21 <korvo> TBH we don't do much computation at all. It's an open secret that Nix is only slow to evaluate because the reference implementation is a C++ tree-walking interpreter.
20:06:57 <korvo> zzo38: Nix mostly has it for configuring packages that are going to be built. It also can write XML, but not read it; Nix needs to be able to instruct Maven but not load from it.
20:11:15 <zzo38> XML is usually worse (but there are some things that XML is better for). Still, some programs will need to use JSON, XML, and other formats. (I think YAML is a superset of JSON; if that is how it works then it should not be necessary to write YAML unless you need extensible data types other than those in JSON.)
20:11:49 <zzo38> (I think YAML isn't really very good either though, actually)
20:12:04 <korvo> Sadly, no: https://john-millikin.com/json-is-not-a-yaml-subset
20:12:45 <korvo> YAML should be avoided. If an endpoint accepts both JSON and YAML, set application/json and read their docs; this helps with generating configuration for e.g. k8s.
20:13:06 <ais523> I vaguely remember changes that were made to YAML in an attempt to make it a true JSON superset, but they may not have been successful
20:13:24 <zzo38> O, now I see the problem, with "1e2".
20:14:08 <ais523> ah, the article you linked says that you need a declaration to use the strict-superset mode (for backwards compatibility) but JSON documents won't have it
20:14:52 <ais523> I guess there could be an API that defines its input as "YAML 1.2 without the header" – such an API would probably accept JSON too
20:15:04 <zzo38> Another variant would be PostScript notation. However, the binary format of PostScript does not have numbers longer than 32-bits and cannot store key/value lists (these are not problems with using the text format).
20:15:42 <ais523> fwiw, for YAMLish text formats, I think the best approach is probably for unquoted identifiers to be treated as enum variants (and you could plausibly define bool as an enum of true and false)
20:15:49 <ais523> although, that would probably need a schema to work well
20:17:02 <zzo38> Something I use in some of my programs more recently (since I wrote a library to use it) is DER (actually it is a minor variant that adds a few new types and does not use some of the standard types, but this does not affect the framing at all and is still compatible with X.509 and other existing schemas). This is a binary format; for text I invented the format TER which can be converted to DER.
20:18:13 <b_jonas> (if I want to write underload more complicated than that I'd probably have to write a compiler)
20:18:15 <ais523> I think there are basically two types of format that are useful for this sort of thing: interchange formats which should probably be binary, and text formats designed for humans to read and write
20:19:16 <ais523> and both benefit from a schema – the former because it allows the format to take up fewer bytes, and the latter to catch usage errors
20:20:12 <zzo38> (In PostScript, the binary format and the text format are actually the same format, so they can be mixed together in the same file.)
20:22:18 <zzo38> I do believe you that text formats and binary formats are both useful, for such purposes (and others).
20:23:42 <ais523> I am not sure that a good solution for linking documents to schemas has been invented, yet
20:23:57 <ais523> XML uses an URL near the start of the document, but this has lead to problems and is probably not a good solution
20:24:24 <ais523> hmm, I wonder if using the hash of a schema might make sense? especially if the schema format is such that only one sequence of bytes can describe any given schema
20:29:15 <zzo38> Possibly, if it has a canonical format. DER is already canonical format though, while canonical JSON is more complicated.
20:33:45 <ais523> it would need to be canonical not just in the encoding, but in the way it was represented (e.g. if there is a list whose order does not matter, it would need to be sorted)
20:33:47 <zzo38> (One problem with JSON and many other formats is their expectation to use Unicode; this means that non-Unicode data must be encoded as base64 or something else like that and just makes it less efficient, and can make it difficult. There is also a problem with numbers, but that depends on the implementation.)
20:34:22 <zzo38> ais523: DER already specifies that if there a list whose order does not matter (called a "set", although it is actually more like a multiset), then it is sorted.
20:37:02 <ais523> ah, I was wondering how this related to ASN.1, but it turns out to be a subset of it
20:43:09 <zzo38> If my variant of DER is used, then it can actually store a superset of the data that JSON can store (my variant adds a key/value list type), although this is not really the best way to use DER, it at least demonstrates that it is possible. I wrote a program to do this conversion (although it does not fully validate it).
20:43:46 <ais523> what tag class is your key/value list?
20:43:46 <b_jonas> python3 has dictionaries that preserve insertion order of the elements and you can iterate them in that order. that's often very convenient for sets whose order don't matter, resulting in an order that's easy to understand when I inspect results. at other times I need an explicit sort for a convenient order, and I have written custom sort functions for that.
20:44:12 <ais523> b_jonas: quite a few languages have order-preserving dictionaries, I think
20:44:28 <b_jonas> perhaps for the same reason
20:44:32 <ais523> it strikes me as a bit of an awkward type, it's storing extra data it usually doesn't need to
20:45:28 <ais523> it would make sense for a golfing language, though, I guess
20:45:33 <zzo38> ais523: Universal, which isn't really supposed to be used unless ITU does it, but this is deliberately nonstandard ASN.1 which adds some new universal types (starting at 64 to make it unlikely to conflict).
20:45:33 <ais523> especially as you can type-pun it with a list of pairs
20:46:01 <ais523> zzo38: I think if I were doing something similar I would encode it as private
20:46:05 <zzo38> The program is https://raw.githubusercontent.com/zzo38/scorpion/refs/heads/trunk/asn1/jsontoder.c and if you use a program such as "dumpasn1" or "openssl asn1parse -inform der" then it will be able to read the output of that program. It cannot recognize the key/value list type but would still be able to display the contents of he key/value list.
20:46:27 <ais523> with terminal control code encodings, some of the private-use encodings have become de-facto standards but are still in the private-use range
20:52:09 -!- molson has joined.
20:52:22 <zzo38> Yes, I know that is the case with terminal control codes.
20:58:09 -!- molson has quit (Remote host closed the connection).
20:58:11 <zzo38> (A problem I had seen in many libraries for dealing with DER (although not my own one) is the insistence of converting OIDs to decimal even when doing so is unnecessary (and it usually is unnecessary). If you merely want to validate it, this can be done more efficiently.)
21:00:35 <korvo> ais523, b_jonas: You won't hear the history of Python ordered dicts from the CPython community.
21:02:07 <korvo> They were first prototyped in PyPy, and they were only ordered as a side-effect of the implementation. The main goals were to be smaller and faster than standard hash tables.
21:02:46 <korvo> fijal explains better than I can: https://pypy.org/posts/2015/01/faster-more-memory-efficient-and-more-4096950404745375390.html
21:02:52 <ais523> one thing I hate is how that in practice, hash tables often spend so much time hashing that they negate the benefit form actually being a hash table
21:03:11 <ais523> I normally use B+ trees in practice unless I know that the table is likely to get very large
21:05:06 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154401&oldid=154360 * Buckets * (+29)
21:05:10 <korvo> If it gets to that, I normally reach for something that can do stream processing. SQLite usually, sometimes jq.
21:05:18 <ais523> although, PyPy's dictionaries are a bit interesting – they're basically a normal hash table where the entries are boxed using a bump allocator, so you can determine the insertion order via looking at the addresses they were allocated at
21:05:38 <ais523> and the tradeoff is that deletion becomes amortized O(1) rather than true O(1)
21:05:50 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154402&oldid=154336 * Buckets * (+11)
21:06:05 <esolangs> [[MemeS]] N https://esolangs.org/w/index.php?oldid=154403 * Buckets * (+1056) Created page with "MemeS is an Esoteric programming language created by [[User:Buckets]] in 2021. MemeS has no fixed Commands, They would Automatically change to The Most relevant memes at that time Of Year, month, day, hour, Minute, second, femtosecond. {| class="wikitable" |- ! Commands
21:06:08 <korvo> I like that analogy. It's totally a bump allocator.
21:07:40 <ais523> I think it's different from a typical ordered dictionary in that if you update a value without changing the key, the order doesn't change
21:09:52 <korvo> Yeah. In that sense, the capability to iterate over an ordered dict can be used to gain knowledge about the dict and provoke non-deterministic behavior, and it's actually kind of problematic compared to e.g. a weak-value mapping without iteration (JS "WeakMap").
21:15:02 <zzo38> For making trees in C, there is tsearch and the related functions, but it does not seem to have the way to take advantage of the existing tree structure when you want to read the tree from a file or write the tree to a file (in order to avoid having to reconstruct the tree from the start again when reading it back).
21:16:26 <zzo38> (Another issue is with the examples, that they will make a heap allocation and then free it if the record already exists, but I think it seems better to make a stack allocation and then replace it with a heap allocation if the record does not already exist, which seems like it would be more efficient, to me. My own programs do use a stack allocation like that.)
21:16:39 <esolangs> [[Esorn]] M https://esolangs.org/w/index.php?diff=154404&oldid=154339 * Buckets * (+2)
22:18:16 <esolangs> [[Zudjn]] https://esolangs.org/w/index.php?diff=154405&oldid=154357 * Stkptr * (+19) It has no loops and finite memory
22:58:55 <esolangs> [[NOR Machine]] https://esolangs.org/w/index.php?diff=154406&oldid=150840 * Stkptr * (+19)
23:31:50 -!- chiselfuse has quit (Remote host closed the connection).
23:32:05 -!- chiselfuse has joined.
23:35:39 <esolangs> [[PAL]] https://esolangs.org/w/index.php?diff=154407&oldid=154390 * I am islptng * (-313)
23:38:48 <esolangs> [[Fontmess]] M https://esolangs.org/w/index.php?diff=154408&oldid=154316 * Buckets * (-364)
23:58:31 <esolangs> [[Neucomp]] https://esolangs.org/w/index.php?diff=154409&oldid=127696 * Kaveh Yousefi * (+763) Rectified the cat program and Truth Machine examples, introduced as a further example a looping counter, rectified several orthographic mistakes, and improved the formatting.
00:00:29 <esolangs> [[Neucomp]] https://esolangs.org/w/index.php?diff=154410&oldid=154409 * Kaveh Yousefi * (+233) Added a hyperlink to my implementation of the Neucomp programming language on GitHub and supplemented the several page category tags.
00:04:03 -!- mtm has quit (Ping timeout: 252 seconds).
00:05:41 -!- mtm has joined.
00:39:39 <zzo38> To deal with what is apparently the LLM scrapers, I set up port knocking for the HTTP server, by usig iptables. (The other services do not use port knocking.) However, this requires that you know which port to knock, but automated scrapers are unlikely to know that automatically, so it should still help. Manually accessing it will work.
00:48:31 <korvo> That's a fun idea. Hope it works.
00:49:43 <korvo> I have a scrawled note that I think reads "nginx: leaky bucket" and I think is for my side business. Still, worth mentioning: rate-limiting in httpd?
00:54:27 <zzo38> The connections usually use different IP addresses per connection, so rate-limiting probably will not help very well.
00:55:40 <zzo38> Perhaps I should mention in the gopher and/or scorpion servers, a file that mentions what port number to use for port knocking. (Some of the wrong port numbers which are not otherwise used will lock you out until you use the correct one, in order to avoid someone accessing it by accident when using port scanning.)
01:23:55 <ais523> zzo38: that might be a good idea if the HTTP server isn't intended for use by the general public
01:24:06 <ais523> but it wouldn't work for a website that you'd want anyone to be able to visit
01:24:46 <ais523> korvo: one of the most persistent LLM scrapers uses a different IP address for every connection
01:26:08 <ais523> it strikes me that that behaviour might be exploitable somehow, although the details would probably depend on how the bots set the referer
01:26:23 <korvo> ais523: Ah, that's right. So this sticky note must have been for me.
01:29:02 <ais523> somewhere I saw someone suggest serving Markov chains to suspected LLM scrapers – they may not be able to easily distinguish them from useful training data
01:30:31 <korvo> This is HTTP, right? No TLS? There's a pile of techniques to slow down fresh TLS handshakes, serving as kind of a gentle captcha, that would punish fresh user agents.
01:30:52 <korvo> Er, not a captcha. A hashcash? We need better generic names for these.
01:31:20 <ais523> there are quite a few proof-of-work-based systems being deployed at the moment, but those have the side effect of preventing people without JS accessing the sites
01:31:35 <ais523> doing it in TLS rather than JS is an interesting idea
01:31:58 <korvo> I was going to say that TLS is PoW~
01:32:34 <ais523> I don't really like proof-of-work though a) due to the energy consumption, b) connecting from lots of different IPs means the scrapers probably have lots of different computers so it's likely to hurt them less than it hurts legitimate users
01:33:20 <ais523> hmm, now I'm thinking about browser fingerprinting
01:33:26 <korvo> I don't remember the details offhand. I'd have to look it up. The idea is to invert the advice for stapling certs and disabling OSCP and etc. so that clients do a minimum of trips, *and* put a small-but-real delay between each part of the handshake.
01:33:31 -!- lambdabot has quit (Remote host closed the connection).
01:33:52 <ais523> I was thinking a while ago that instead of trying to prevent fingerprinting by making all the browsers look the same, you could prevent it by randomizing as much of the fingerprint as possible so that sites think you're a unique user each tiee
01:34:24 <ais523> korvo: ooh, that's different from proof-of-work, I think; if your round-trips are slow then it slows down connections but most of that time is spent sleeping
01:34:34 <korvo> Kind of like how, during the American Prohibition when drinking alcohol was generally banned, grocers would sell bricks of compressed vinegar must with instructions, "do *not* let this sit in water in a cabinet for two weeks, or it might go *bad* and turn into wine"
01:35:07 <ais523> it wouldn't surprise me if the scrapers didn't validate the certificate properly, but that might also be a way to detect them
01:35:08 -!- lambdabot has joined.
01:35:13 <korvo> ais523: You can make the client either wait for the entire handshake or recommit a bit of compute each time in order to generate a new pubkey. I'm not finding the details offhand.
01:36:25 <zzo38> ais523: I have recently seen "powxy" which displays instructions for what you need to calculate, but also includes a JavaScript code to automatically do so, so that you can also make your own implementation, so that JavaScripts is not required.
01:36:52 <korvo> Everybody's talking about TLS fingerprinting, which is another thing that can't be skipped on HTTPS. With that, e.g. CloudFlare can force scrapers to wait for the handshake *and* generate a new key per new IP/client.
01:36:55 <zzo38> I have also seen others, such as Anubis (which seems to bypass the requirement for JavaScripts if your user-agent string does not contain "Mozilla", e.g. if you are using Lynx).
01:37:39 <ais523> hmm, I wonder whether search engines are going to be in trouble in a year or two
01:37:53 <ais523> because all the anti-LLM-scraping stuff is likely to affect search engine crawlers as collateral damage
01:38:04 <esolangs> [[Woodchuck]] M https://esolangs.org/w/index.php?diff=154411&oldid=154380 * Rdococ * (+57)
01:38:32 <ais523> that could be a reason to bypass the JS requirement for weird user-agent strings – most search engine crawlers do at least one crawl with a clear user-agent that doesn't look anything like a browser user-agent
01:38:50 <ais523> (some repeat the crawl with a browser user agent, though, to detect sites that are serving them different content ffrom regular users)
01:38:55 <zzo38> I personally do not mind if search engine crawlers cannot access them.
01:41:07 -!- int-e has quit (Remote host closed the connection).
01:42:37 <zzo38> In my case, the HTTP server does contain stuff that is useful for many people, but some of the files are available on the other protocols and/or external servers (e.g. GitHub) as well, anyways. But, someone could also manually access it by using the port knocking.
01:45:19 <zzo38> My server has no TLS, but that is because I had not set it up, yet. Even if I do set it up, I do not intend to disallow unencrypted connections.
01:47:14 <zzo38> (I also intend to eventually set up TLS on the scorpion server (which will be useful for clients who want encryption, but also in case some files will require X.509 authentication), and when it is, both encrypted and unecrypted connections will be supported (although you will need to use TLS if you want X.509 authentication).)
01:48:50 -!- int-e has joined.
01:48:54 <korvo> Oh, wait, you're not fizzie. Sorry, I thought this was about the recent pressure on the wiki.
01:50:23 <int-e> port knocking for a public web server would be... interesting
01:55:07 <ais523> hmm, what about this – if someone connects from an IP address the server hasn't seen recently, have the page soft-redirect to itself – that way legitimate users get the page quickly but connect-from-lots-of-different-IPs bots get stuck in a redirect loop
01:55:13 <ais523> depending on how the bots work, even a meta refresh might work
01:55:21 <zzo38> I expect the esolang wiki probably is affected by this LLM-scraping too (apparently a lot of HTTP(S) servers are), but whoever manages that will have to deal with it.
01:55:38 <ais523> (the "to itself" could be to a duplicate page)
01:55:59 <ais523> zzo38: we've been mitigating it by restricting access to pages that exist in quantity, like diff pages
01:56:08 <ais523> in a way that hopefully won't affect too many legitimate users
01:56:59 <ais523> (all the protections are disabled for people with login cookies, as the bots don't have accounts, so logging in is a way to work around a false positive)
02:01:01 <fizzie> If you're talking about the wiki, it just dawned on me that while I had the cookie exemption for the manually built "sus IP" list rate-limiting, I didn't actually apply it to the current diff-page block. Should probably have done that.
02:02:17 <ais523> there must surely be a complete list of IPs the LLM scraper is using, by now
02:02:46 <ais523> it would be quite long but it'll only be a small proportion of the whole IPv4 space
02:02:49 <fizzie> It's also only blocking access to diff pages where the CGI query parameters are in a different order than how the MediaWiki HTML links have them, which sounds like it shouldn't work, but did.
02:03:24 <ais523> it hasn't worked at some other wikis – I wonder why it works at ours? maybe there are two different scrapers
02:03:32 <zzo38> ais523: That is a reasonable idea, but I wonder if they might change later due to dynamic IP addresses that may be reassigned later.
02:04:00 <ais523> actually I'm wondering whether it alphabetises query parameters on all websites, or something like that
02:04:10 <ais523> perhaps to avoid crawling the same page twice
02:04:14 <int-e> oh the order thing is funny
02:04:54 <fizzie> Actually looking at the wiki-server CPU usage for the last 2d, looks like it's probably not working so good any more: https://zem.fi/tmp/cpu.png
02:06:08 <ais523> so my theory now is that it's the same bot that fixed a bug that caused it to change query parameter order
02:06:20 <fizzie> Oh, it's hack.esolangs.org now: https://zem.fi/tmp/req.png
02:06:35 <fizzie> So that's the Mercurial repo, which I don't have any specific rules about.
02:06:49 <fizzie> (But it can also do expensive diffs.)
02:06:54 <ais523> ah, different website, same server
02:07:06 <ais523> how often is that one used legitimately by humans?
02:08:39 <fizzie> Only when people get inspired to play around with the bot, I imagine. (Which doesn't happen particularly frequently these days.)
02:10:05 <fizzie> On a cursory glance, this current burst of scraping is all from Alibaba Cloud LLC's IPv4 ranges, which probably means no human users.
02:10:25 <int-e> Well, this is messed up... spammer submitting an email pretending to be my mail server (including spoofing reverse DNS), failing the SPF check, and the bounce ends up... in my mailbox.
02:10:58 <ais523> fizzie: can probably block those, I suspect
02:12:00 <int-e> Well, not sure about the reverse DNS spoof.
02:13:36 <int-e> Ah. No, I'm reading this all wrong.
02:15:00 <int-e> They're just faking a failed email delivery. So the bounce *is* the original spam message, as far as I am concerned. So just a misconfigured mail server that accepts emails for third parties so it effectively is a weird open relay.
02:18:04 <fizzie> Added Alibaba Cloud to the "one request every two seconds from any of these addresses in total unless esolang_wikiUserName cookie is set" list. (The cookie exemption doesn't really make sense for hack.esolangs.org since it will never be present there, but it was easier.)
02:22:34 <fizzie> Definitely a different scraper though. The previous one had what looked like a large selection of common user agents. These requests have just one user agent, so I could've potentially also used that for blocking this time.
02:22:44 <fizzie> Said UA being: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43"
02:22:53 <fizzie> I don't think "Edg" is an actual browser.
02:23:16 <int-e> hack. is mostly interesting for IRC users anyway, so whoever runs into that can complain here?
02:25:01 <ais523> fizzie: and I don't think any legitimate browser claims to be Safari and Edge simultaneously?
02:25:11 <zzo38> I notice on my own HTTP server logs also many say "Edg", but they use many different user-agent strings, some of which do not say "Edg" but all of which contain "Mozilla".
02:26:23 <fizzie> It was a surprise to me, but allegedly that's the real user agent from the Chromium-based version of Edge.
02:27:29 <fizzie> (With "Edg/" and "Safari/" both.)
02:28:27 <fizzie> (The "Chrome/X Safari/Y" part is from Chrome, and they tag on that "Edg/" on top of it.)
02:28:33 <fizzie> User agents are so silly.
02:29:57 <ais523> maybe Microsoft wanted to save a byte
02:30:17 <ais523> I am reminded of the story of Google making significant savings from removing the </html> at the end of their homepage
02:40:52 -!- 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:41:08 <int-e> Using Edg subverts configuration that actually match Edge and serve different contents based on that.
02:41:38 <int-e> I feel that's a more likely desire than saving a byte (mostly on the user's side).
02:42:11 <int-e> A bit like skipping Windows 9.
02:42:59 <ais523> int-e: but wouldn't sites that wanted to detect Edge just look for "Edg"?
02:42:59 <int-e> (the idea there being that it's the common prefix of Windows 95 and Windows 98)
02:43:25 <int-e> ais523: well they can do that now, but why would they do that before the Chromium switch?
02:44:06 <int-e> I'm assuming, perhaps incorrectly, that they used "Edge" before switching to Chromium.
02:44:19 <int-e> It's not really a browser brand that I care about ;)
02:44:23 <fizzie> I believe they did, yes.
02:45:13 <esolangs> [[Fn]] N https://esolangs.org/w/index.php?oldid=154412 * C0ffee * (+335) Created page with "{{lowercase}} '''fn''' is a programming language. ==Functions== {| class="wikitable" |- ! Function !! Description |- | 0 || 0 |- | s(a) || return a+1 |- | i(a,b) || set the a-th memory value to b |- | d(a,b) || return b |- | w(a,b) || execute b while the a-th memory value |-
02:45:37 <fizzie> On an unrelated note: my IPv6 network trouble (home <-> DigitalOcean VPS) continues, they just sent a "we've not heard back from the engineering team yet" update, but it's the weirdest thing, while ICMP pings still get address-unreachable from the intermediate Internet access point (LONAP), and TCP connections go nowhere, my custom port-knocking utility (which does it over both v4 and v6) reports
02:45:39 <esolangs> [[User:C0ffee]] https://esolangs.org/w/index.php?diff=154413&oldid=153711 * C0ffee * (+12)
02:45:44 <fizzie> Maybe it's just some misleading output though. Can't see why that specifically would work when nothing else does.
02:46:35 <fizzie> The knocking does a TCP handshake with a specific TCP MSS value, so I guess hypothetically that *could* maybe affect the routing somehow. Seems unlikely though.
02:55:48 <ais523> int-e: oh, I see, it's to distinguish Edge using Microsoft's engine from Edge using Chromium
03:00:14 <esolangs> [[Fn]] https://esolangs.org/w/index.php?diff=154414&oldid=154412 * C0ffee * (+3522)
03:04:08 <esolangs> [[Fn]] https://esolangs.org/w/index.php?diff=154415&oldid=154414 * C0ffee * (+69)
03:13:09 -!- drwiz has joined.
03:22:07 -!- craigo has joined.
03:27:54 -!- drwiz has quit (Quit: Client closed).
03:37:33 -!- FreeFull has quit.
04:43:52 <esolangs> [[StackBBQ2+]] N https://esolangs.org/w/index.php?oldid=154416 * I am islptng * (+202) Created page with "<b>StackBBQ2+</b> is a language designed by islptng to compile to StackBBQ. == Commands == {|class="wikitable" ! Command !! Compile into !! Explanation |- | 1 || 1 || Push 1 |- | 0 || 1110 || Push 0 |}"
04:49:10 <esolangs> [[StackBBQ2+]] https://esolangs.org/w/index.php?diff=154417&oldid=154416 * I am islptng * (+318)
04:51:04 <esolangs> [[StackBBQ2+]] https://esolangs.org/w/index.php?diff=154418&oldid=154417 * I am islptng * (+51)
04:58:19 <esolangs> [[StackBBQ2+]] https://esolangs.org/w/index.php?diff=154419&oldid=154418 * I am islptng * (+461)
04:59:30 <esolangs> [[StackBBQ2+]] https://esolangs.org/w/index.php?diff=154420&oldid=154419 * I am islptng * (+13)
05:03:09 <esolangs> [[StackBBQ2+]] https://esolangs.org/w/index.php?diff=154421&oldid=154420 * I am islptng * (+28)
05:11:14 <esolangs> [[8 bits, 6 bytes]] N https://esolangs.org/w/index.php?oldid=154422 * I am islptng * (+312) Created page with "It was designed for a 8-bit computer which has 6 registers. You can write 256 instructions at 1 time. <pre> 0~63: reg[0] = instruction 64-127 64+a: reg[3] = reg[2] [NAND,OR,AND,NOR,+,-][a] reg[1] 128~191 128+8a+b: reg[b] = reg[a] 192~255 192+a: if reg[3] [F
06:53:41 -!- ais523 has quit (Quit: quit).
07:14:53 -!- Lord_of_Life_ has joined.
07:15:42 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
07:16:16 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:32:36 -!- Sgeo has quit (Read error: Connection reset by peer).
08:37:52 <esolangs> [[User:JIT]] https://esolangs.org/w/index.php?diff=154423&oldid=154293 * JIT * (+44)
08:52:14 <esolangs> [[Non-Plushie-complete]] https://esolangs.org/w/index.php?diff=154424&oldid=154235 * JIT * (+17)
08:53:40 <esolangs> [[Long]] https://esolangs.org/w/index.php?diff=154425&oldid=101854 * JIT * (+9)
09:21:28 <b_jonas> if the scrapers are using new IPs all the time, you could just slow down replies to connections from new IPs with a delay instead of a redirect, that would be less annoying to legitimate users
09:23:55 <int-e> but that only reduces CPU load if the scrapers are "impatient"?
09:24:20 <int-e> or if you think that they have a sequential backend somewhere I suppose
09:24:41 <int-e> or would that be a frontend ;)
09:25:25 <b_jonas> you mean they'd send you requests just as fast? maybe
09:27:02 <int-e> I mean I don't know, but I think that's likely
11:06:22 <fizzie> FTR, while the rate limiting of Alibaba Cloud (returning 429 immediately) _worked_ in terms of CPU use, it also made them peak at 80 reqs/s there for an hour, I imagine because the failed requests were taking less time to complete.
11:06:37 <fizzie> Nothing in the last 6 hours though, so maybe they gave up.
11:08:49 <fizzie> Well, "nothing" isn't exactly right, it's still going on with an almost exactly 50% error rate, so they're still sending on average one request per second, half of which fail.
11:09:54 <fizzie> I'm sure getting a diff of /interps/clc-intercal/CLC-INTERCAL-UI-Cursers-1.-94.-2/META.yml was incredibly useful to whoever's behind it.
11:45:40 <fizzie> https://zem.fi/tmp/errors.png <- that almost even looks like some sort of a feedback mechanism.
11:48:34 -!- wib_jonas has joined.
11:51:13 <wib_jonas> fizzie: I don't understand, what causes the 50% failure rate? did you make the webserver on your side refuse every other request from new IPs?
11:56:18 <fizzie> No, it's a rate limit I added for the previous scraping. It allows at most 0.5 requests/second from any IP from the "likely bad scraper" list (excluding any that have a `esolang_wikiUserName` cookie set), returning a HTTP 429 for the excess. Like, globally, not per-IP or anything. I just added that Alibaba Cloud network to the list of IPs.
11:57:39 <fizzie> So it _could_ look like that because they have some mechanism of dialing back the per-site scraping rate based on failures. (Or for some other reason that I didn't think of.)
12:02:34 -!- mtm has quit (Ping timeout: 260 seconds).
12:06:08 -!- mtm has joined.
12:09:48 <wib_jonas> that's good. that's why I recommended adding a delay to responses, say three seconds of delay for first request from any IP address. if they implemented flow control well then that should also slow their requests down.
12:10:15 <wib_jonas> and it's less annoying than failures for legitimate users.
12:10:46 <wib_jonas> but then failures for very fast requests also makes sense.
12:11:25 -!- wib_jonas has quit (Quit: Client closed).
12:11:55 <int-e> fizzie: there's the fallacy of measuring programmer productivity in lines of code produced; maybe we're seeing a similar fallacy that measures scrapers in number of unique (by URL) pages fetched.
12:14:43 -!- wib_jonas has joined.
12:20:22 -!- Noisytoot has quit (Remote host closed the connection).
12:21:11 -!- Noisytoot has joined.
12:39:11 -!- wib_jonas has quit (Quit: Client closed).
12:44:26 <fizzie> Well, I may have been a little too optimistic about how smart(/polite) they're being: https://zem.fi/tmp/errors2.png
12:45:48 <int-e> your earlier CPU graph https://zem.fi/tmp/cpu.png showed that activity varies quite heavily over time
12:46:21 <int-e> it's weird, it's annoying, and I'm not even dealing with it...
12:48:45 <fizzie> At work these sort of charts would of course be a roundoff error, the esolangs.org infrastructure is just... a bit more modest in scale.
12:48:48 <fizzie> I don't know what we'd do if we became an actually popular website somehow, but fortunately that doesn't seem all that likely.
12:51:01 -!- wib_jonas has joined.
12:51:13 <wib_jonas> fizzie: that plot is strange, it seems to say that the requests aren't for the wiki
12:51:24 <wib_jonas> that is https://zem.fi/tmp/errors2.png top half
12:51:59 <int-e> oh! I didn't pay attention to the colors
12:53:44 <int-e> Haha. "There are certain things here." -- I'm not sure if I've ever looked at https://hack.esolangs.org/
12:54:03 <fizzie> They're not, they're for hack.esolangs.org/repo URLs this time. (I've also clicked on hack.esolangs.org on both charts to hide the other lines for clarity.)
12:54:36 <int-e> Anyway, the repo is also prone to https://xkcd.com/609/ (Tab Explosion)
12:55:20 <int-e> (except that if you're human you'll realize that most of the potential explosion is redundant and boring)
12:56:07 <wib_jonas> but weren't they getting all pairwise diffs between revisions on wiki pages? isn't that what generated lots of pointless URLs?
12:57:15 <fizzie> That was the previous incident. The hack.esolangs.org repo browser is pretty similar, you can also ask it for all past versions and blame (annotate) views and diffs and such.
12:57:17 <int-e> you can browse all revisions of the hackeso repo too (revisions * number of files) so that's a lot
12:57:57 <int-e> hmm I don't know whether there are arbitrary diffs between revisions or just from one to the next
12:58:07 <int-e> it never came up :)
12:58:44 <wib_jonas> and maybe diffs with current version
12:58:52 <wib_jonas> because the default interface has links to those
12:58:59 <fizzie> Hmm, yes, it's possible it can only do diff views one commit at a time. But you can definitely browse the entire tree at any revision.
13:02:02 <fizzie> I've got a https://hack.esolangs.org/robots.txt file that attempts (successfully or not) to express "allow indexing the tip but nothing else". Not that these clients respect or even look at robots.txt.
13:05:37 <int-e> I wonder... if you put a Disallow: /nowhere/ line in there, will that results in the bots trying to fetch /nowhere/
13:06:28 <int-e> (not really a meaningful experiment; it probably won't even work as a honeypot)
13:28:52 <esolangs> [[Special:Log/newusers]] create * Mahdoosh1 * New user account
13:36:26 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154426&oldid=154321 * Mahdoosh1 * (+179) sss
13:48:45 <esolangs> [[+]] https://esolangs.org/w/index.php?diff=154427&oldid=150037 * PrySigneToFry * (+41)
13:55:24 -!- chiselfuse has quit (Ping timeout: 264 seconds).
14:04:06 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154428&oldid=154132 * Hotcrystal0 * (+76)
14:04:20 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=154429&oldid=154428 * Hotcrystal0 * (-76)
14:04:50 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=154430&oldid=154298 * Hotcrystal0 * (+100)
14:12:32 -!- craigo has quit (Quit: Leaving).
14:51:18 -!- wib_jonas has quit (Ping timeout: 240 seconds).
14:53:48 <esolangs> [[Neucomp]] M https://esolangs.org/w/index.php?diff=154431&oldid=154410 * Kaveh Yousefi * (+341) Supplemented scholia to the Looping Counter example program.
15:02:39 <esolangs> [[Special:Log/upload]] overwrite * 47 * uploaded a new version of "[[File:My github profile read me.png]]"
15:11:02 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=154433&oldid=154430 * Hotcrystal0 * (-1)
15:36:46 -!- sprock has quit (Ping timeout: 265 seconds).
15:43:13 -!- sprock has joined.
16:02:50 -!- wib_jonas has joined.
16:03:07 <HackEso> olist <https://www.giantitp.com/comics/oots1321.html>: shachaf oerjan Sgeo boily nortti b_jonas Noisytoot
16:21:09 <esolangs> [[User:Quito0567]] https://esolangs.org/w/index.php?diff=154434&oldid=132090 * Quito0567alt * (-5)
16:22:26 <esolangs> [[User:Quito0567]] https://esolangs.org/w/index.php?diff=154435&oldid=154434 * Quito0567alt * (+154)
17:07:16 -!- chiselfuse has joined.
17:21:17 <esolangs> [[User:TheEyeOfAr3s]] https://esolangs.org/w/index.php?diff=154436&oldid=106040 * TheEyeOfAr3s * (-98) Removed dead project
17:34:29 -!- wib_jonas has quit (Quit: Client closed).
18:04:42 -!- sprock has quit (Ping timeout: 252 seconds).
18:36:47 -!- sprock has joined.
19:01:28 -!- galactum has joined.
19:23:51 <galactum> does anyone here have a particular favorite esolang?
19:24:01 <galactum> mine is probably forte right now
19:36:06 <b_jonas> galactum: I don't have a favorite, but if you want to browse among interesting ones and https://esolangs.org/wiki/Special:Random takes you to boring pages the you can try to look at https://esolangs.org/wiki/User:B_jonas/List where I list most of the interesting esolangs that we have articles about and that I encountered
20:22:07 -!- galactum has quit (Quit: WeeChat 4.5.2).
20:26:11 <esolangs> [[Sigma]] N https://esolangs.org/w/index.php?oldid=154437 * Stysan * (+613) Created page with "Sigma is a language by [[User:Stysan]], *kinda*. This is because it's [[Python]], but with Greek letters. {| class="wikitable sortable" |+ Letters |- ! Latin !! Greek |- | a || |- | b || |- | c || |- | d || |- | e || |- | f || |- | g || |- | h || |- | i || |- | j
20:26:29 <esolangs> [[Sigma]] https://esolangs.org/w/index.php?diff=154438&oldid=154437 * Stysan * (+0)
20:26:43 <esolangs> [[Sigma]] https://esolangs.org/w/index.php?diff=154439&oldid=154438 * Stysan * (+4)
20:26:51 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154440&oldid=154401 * Buckets * (+91)
20:27:34 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154441&oldid=154402 * Buckets * (+90)
20:27:45 <esolangs> [[Kcufniarb]] N https://esolangs.org/w/index.php?oldid=154442 * Buckets * (+1183) Created page with "{{lowercase}} {{wrongtitle|title=<span style="display:inline-block; transform:scaleX(-1);">brainfuck</span>}} <span style="display:inline-block; transform:scaleX(-1);">brainfuck</span> is an Esoteric programming language created by [[User:Buckets]] in 2022. {| class="
20:42:21 <esolangs> [[Esorn]] M https://esolangs.org/w/index.php?diff=154443&oldid=154404 * Buckets * (+0)
20:45:03 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154444&oldid=152430 * Ractangle * (+19) /* Variables */
20:46:50 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154445&oldid=154444 * Ractangle * (+29) /* Variables */
20:47:44 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154446&oldid=154445 * Ractangle * (+50) /* Variables */
20:50:15 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154447&oldid=154446 * Ractangle * (+46) /* Variables */
20:50:48 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154448&oldid=154447 * Ractangle * (+7) /* Variables */
20:51:30 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154449&oldid=154448 * Ractangle * (-9) /* Variables */
20:53:41 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154450&oldid=154449 * Ractangle * (-43) /* Commands */
20:54:13 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154451&oldid=154450 * Ractangle * (+2) /* Classes */
20:55:16 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154452&oldid=154451 * Ractangle * (-7) /* Functions */
21:02:33 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154453&oldid=154452 * Ractangle * (+24) /* Variables */
21:05:22 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154454&oldid=154453 * Ractangle * (-17) /* Variables */
21:05:56 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154455&oldid=154454 * Ractangle * (-23) /* Infinite loop */
21:07:01 <esolangs> [[Sleep.]] M https://esolangs.org/w/index.php?diff=154456&oldid=153018 * Buckets * (+1)
21:12:32 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154457&oldid=154455 * Ractangle * (+148) /* Variables */
21:18:07 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154458&oldid=154457 * Ractangle * (+36) /* Errors */
21:19:36 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154459&oldid=154458 * Ractangle * (+12) /* Syntax */
21:24:10 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154460&oldid=154459 * Ractangle * (+53) /* Examples */
21:26:25 <esolangs> [[G Sharp]] https://esolangs.org/w/index.php?diff=154461&oldid=154460 * Ractangle * (-10) /* Truth-machine */
21:30:19 <esolangs> [[true]] https://esolangs.org/w/index.php?diff=154462&oldid=151671 * Ractangle * (+23) /* Infinite loop */
21:33:18 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=154463&oldid=151333 * Ractangle * (+106) /* Implementations */
21:33:57 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=154464&oldid=154463 * Ractangle * (+0) /* Implementations */
21:34:38 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=154465&oldid=154464 * Ractangle * (-63)
21:39:38 -!- amby has joined.
22:03:08 -!- Sgeo has joined.
22:14:36 <esolangs> [[User:Maza]] N https://esolangs.org/w/index.php?oldid=154466 * Maza * (+112) Maza's profile
22:28:49 <esolangs> [[Postrado]] https://esolangs.org/w/index.php?diff=154467&oldid=151227 * Ractangle * (-27) /* Infinite Loop */
22:34:27 <esolangs> [[Queue-based esolang++]] https://esolangs.org/w/index.php?diff=154468&oldid=151148 * Ractangle * (-1)
22:52:28 -!- zzo38 has quit (Read error: Connection reset by peer).
22:53:27 -!- zzo38 has joined.
22:55:35 <zzo38> Unfortunately the port knocking configuration seemed to cause a kernel panic
23:08:44 -!- tromp has quit (Ping timeout: 260 seconds).
00:00:38 <zzo38> (The router has no configuration for port knocking (as far as I can tell), which is why I had to configure it on the computer instead.)
00:04:30 -!- mtm has quit (Ping timeout: 252 seconds).
00:06:16 -!- mtm has joined.
00:09:46 <esolangs> [[BytePusher]] M https://esolangs.org/w/index.php?diff=154469&oldid=150105 * Bradcypert * (+136) Add new Bytepusher implementation to machines list
00:27:45 <esolangs> [[Talk:Reversible Brainfuck]] https://esolangs.org/w/index.php?diff=154470&oldid=51462 * L4.m2 * (+189) /* `.` and `,` */ new section
00:56:45 <esolangs> [[Foldy]] https://esolangs.org/w/index.php?diff=154471&oldid=153903 * Squareroot12621 * (-19) No Buckets, you got it wrong. Maybe use the interpreter next time?
01:07:19 -!- mtm has quit (Ping timeout: 260 seconds).
01:08:51 -!- mtm has joined.
01:35:22 -!- 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:24:28 <zzo38> The article gopher://verisimilitudes.net/02019-11-22 is managed to make most of the lines into the same length. They also complain about some stuff that I had wanted to complain about too, such as registering a domain nme purely to have it point to a HTTP server providing a single document, and Unicode.
03:28:37 <zzo38> (I do not agree with everything mentioned there even though there are some good points. For example, I think that using one character set (or one character encoding) for all text for all applications is not a good idea.)
03:38:27 <esolangs> [[Fn]] https://esolangs.org/w/index.php?diff=154472&oldid=154415 * C0ffee * (-37)
03:42:50 <esolangs> [[Fn]] https://esolangs.org/w/index.php?diff=154473&oldid=154472 * C0ffee * (-14)
03:43:07 <esolangs> [[User:C0ffee]] https://esolangs.org/w/index.php?diff=154474&oldid=154413 * C0ffee * (+0)
04:48:54 <zzo38> They also invented a homoiconic variant of brainfuck; I can add into esolang wiki if desired
05:07:12 <esolangs> [[Masturbation]] N https://esolangs.org/w/index.php?oldid=154475 * Zzo38 * (+746) Created page with "'''Masturbation''' is a variant of [[brainfuck]] with homoiconicity. There is one new command, which is <code>=</code> which has the following behaviour: If the value of the current cell is zero then the program memory overwrites the data memory, but if nonzero then
05:22:30 <esolangs> [[User:Stkptr/sandbox]] https://esolangs.org/w/index.php?diff=154476&oldid=127594 * Stkptr * (+11770)
06:19:10 -!- Sgeo has quit (Read error: Connection reset by peer).
07:04:07 <esolangs> [[Special:Log/newusers]] create * Gabenugeet1141 * New user account
07:14:56 -!- Lord_of_Life_ has joined.
07:15:14 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
07:16:19 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
09:24:30 <esolangs> [[Special:Log/newusers]] create * Banba man * New user account
09:33:31 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=154477&oldid=153747 * I am islptng * (+186) the same thing for xdi8 wiki is being collected!
09:58:14 <esolangs> [[Special:Log/newusers]] create * BerdiesLuvr * New user account
10:01:21 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=154478&oldid=154426 * BerdiesLuvr * (+166) /* Introductions */
10:22:58 <esolangs> [[Special:Log/upload]] upload * BerdiesLuvr * uploaded "[[File:Quadnary Icon.png]]"
10:32:10 <esolangs> [[Brainknot]] N https://esolangs.org/w/index.php?oldid=154480 * Mahdoosh1 * (+5081) Created page with "=About brainknot= It's a similar language to [[Brainfuck]] and [[Turing machine]] made by [[Users:Mahdoosh1]]. But with some changes ==Syntax== it's the same, but alphabet are not counted as comments, you need a spcific symbol before every comment ==What's the dif
10:36:54 <esolangs> [[Users:Mahdoosh1]] N https://esolangs.org/w/index.php?oldid=154481 * Mahdoosh1 * (+304) Created page with "== Info == Hey! I am Mahdoosh1 and my real name is Mahdi. I also have two YT channels: [https://youtube.com/@The-BitStream Bit Stream] and [https://youtube.com/@mahdoosh1907 Mahdoosh1] == Contact == You can contact me in [https://discord.com/users/mahdoosh1 Dis
10:40:05 <esolangs> [[User:PkmnQ]] https://esolangs.org/w/index.php?diff=154482&oldid=153912 * PkmnQ * (+796) Beginnings of an [[efghij]] program
10:41:34 <esolangs> [[Brainknot]] https://esolangs.org/w/index.php?diff=154483&oldid=154480 * Mahdoosh1 * (-1) fix typo
11:26:45 -!- Lykaina has joined.
11:53:19 <int-e> Does APic say more than a thousand words?
11:55:03 -!- Lykaina has quit (Quit: Leaving).
12:02:53 -!- mtm has quit (Ping timeout: 245 seconds).
12:05:44 -!- mtm has joined.
12:06:48 <esolangs> [[QuadnaryLang]] N https://esolangs.org/w/index.php?oldid=154484 * BerdiesLuvr * (+2965) Created page with "[https://www.mediafire.com/file/xt5gjzelrl2j1rp/QuadnaryLang.zip/file Link to QuadnaryLang interpreter (node.js)]<br/> Sorry if this page is dry, I don't know what happened with previous page. First, an explanation on quadnaries. What are they? They function si
12:15:16 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154485&oldid=154383 * Hotcrystal0 * (+165) /* Merge pages */ new section
12:15:31 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=154486&oldid=154485 * Hotcrystal0 * (+93)
12:44:48 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=154487&oldid=154477 * PrySigneToFry * (+47)
12:47:10 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=154488&oldid=154465 * PrySigneToFry * (+148)
12:59:32 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=154489&oldid=154487 * Hotcrystal0 * (+75)
13:02:48 <esolangs> [[User:PrySigneToFry]] https://esolangs.org/w/index.php?diff=154490&oldid=154212 * 47 * (-14) /* What do I like and hate at same time */ bots don't even have a gender
13:03:44 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=154491&oldid=153624 * Hotcrystal0 * (-8)
13:04:03 <esolangs> [[User:Hotcrystal0/CAPI]] https://esolangs.org/w/index.php?diff=154492&oldid=154491 * Hotcrystal0 * (-1)
13:05:07 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[User:Hotcrystal0/CAPI]] to [[CAPI]]: I think its no longer WIP
13:05:07 <esolangs> [[Special:Log/move]] move * Hotcrystal0 * moved [[User talk:Hotcrystal0/CAPI]] to [[Talk:CAPI]]: I think its no longer WIP
13:05:22 <esolangs> [[CAPI]] https://esolangs.org/w/index.php?diff=154497&oldid=154493 * Hotcrystal0 * (-40)
13:43:19 <esolangs> [[Rivulet]] N https://esolangs.org/w/index.php?oldid=154498 * Rottytooth * (+1814) Initial stub
13:51:47 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154499&oldid=154498 * Rottytooth * (+67) Added categories
13:54:24 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154500&oldid=154499 * Rottytooth * (+166) Design inspiration
14:19:50 -!- craigo has joined.
14:24:05 <esolangs> [[User:PrySigneToFry/Sandbox/Draft of EtPL]] N https://esolangs.org/w/index.php?oldid=154501 * PrySigneToFry * (+2218) Created page with "{{WIP}} Eternal Pratical Language is designed by PrySigneToFry in 2025, it is designed for all beginners to learn programming, like [[Bunnybell]](or Bellbase). As an easy-to-understand and practical programming language, this lang
14:24:42 <esolangs> [[User:PrySigneToFry/Sandbox]] https://esolangs.org/w/index.php?diff=154502&oldid=154266 * PrySigneToFry * (+61)
14:38:25 <esolangs> [[Abacus Computer]] https://esolangs.org/w/index.php?diff=154503&oldid=153529 * LillyHStClaire * (+3378) Add explanation for the top level abilities of Abacus
14:44:32 <esolangs> [[Talk:BitChanger Busy beaver]] https://esolangs.org/w/index.php?diff=154504&oldid=153603 * C++DSUCKER * (+34)
17:20:36 <esolangs> [[Quadratic sync problem]] https://esolangs.org/w/index.php?diff=154505&oldid=79158 * Stkptr * (+1076) /* Computational class */
17:43:20 -!- justdanishere has joined.
17:43:37 -!- justdanishere has quit (Client Quit).
17:48:06 <esolangs> [[Long3]] N https://esolangs.org/w/index.php?oldid=154506 * JIT * (+4454) Created page with "== Trilogy of the [[Long]]'s == [[Long]] (or [[Long|Long1]] for [[Long]]) by [[User:Hex96]] [[Long2]] by [[User:Yes]] [https://esolangs.org/wiki/Long3/ Long3] by [[User:JIT]] == The esolang part == Long3 is an esolang by [[User:JIT]], 2025 To set a number, you have to <
17:50:43 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154507&oldid=154440 * JIT * (+35) /* L */
17:51:16 -!- zemhill has quit (Ping timeout: 244 seconds).
17:51:25 -!- zemhill has joined.
17:51:55 <esolangs> [[Long2]] https://esolangs.org/w/index.php?diff=154508&oldid=102695 * JIT * (+25)
18:42:37 <esolangs> [[Long3]] https://esolangs.org/w/index.php?diff=154509&oldid=154506 * 47 * (-1)
18:53:06 <esolangs> [[Topple]] https://esolangs.org/w/index.php?diff=154510&oldid=153931 * H33T33 * (+6979)
19:00:28 -!- ais523 has joined.
19:03:43 <esolangs> [['Python' is not recognized]] https://esolangs.org/w/index.php?diff=154511&oldid=151373 * 47 * (+15) /* Syntax */
19:03:57 <esolangs> [['Python' is not recognized]] https://esolangs.org/w/index.php?diff=154512&oldid=154511 * 47 * (+0) /* Syntax */
19:06:26 <esolangs> [[Talk:Topple]] N https://esolangs.org/w/index.php?oldid=154513 * H33T33 * (+369) Created page with "{| class="wikitable" |+ Caption text |- ! Header text |- | Example |} ==Bugs/Problems== ''If any problems or bugs are found, please report them below and they will be fixed as soon as possible'' ==Questions== ''Questions about the language, its syntax, etc. will go
19:06:55 <esolangs> [[Talk:Topple]] https://esolangs.org/w/index.php?diff=154514&oldid=154513 * H33T33 * (-71)
19:13:56 -!- leah2 has quit (Ping timeout: 244 seconds).
19:17:10 <esolangs> [['Python' is not recognized]] https://esolangs.org/w/index.php?diff=154515&oldid=154512 * 47 * (-14) /* Syntax */
19:20:18 <esolangs> [['Python' is not recognized]] https://esolangs.org/w/index.php?diff=154516&oldid=154515 * 47 * (+49) /* Syntax */
19:25:13 -!- craigo has quit (Quit: Leaving).
19:26:44 -!- leah2 has joined.
20:09:05 <APic> And wb leah2 😉
21:06:24 <esolangs> [[Diophantine equation]] N https://esolangs.org/w/index.php?oldid=154517 * Stkptr * (+5738) Create page
21:08:09 <esolangs> [[Quadratic sync problem]] M https://esolangs.org/w/index.php?diff=154518&oldid=154505 * Stkptr * (+1) /* Computational class */
21:08:25 <esolangs> [[Quadratic sync problem]] M https://esolangs.org/w/index.php?diff=154519&oldid=154518 * Stkptr * (+0) /* Computational class */
21:10:37 <esolangs> [[Tableaux]] M https://esolangs.org/w/index.php?diff=154520&oldid=95384 * Stkptr * (+4) /* Computational class */ Link to Diophantine equation page
21:10:55 <esolangs> [[Tableaux]] M https://esolangs.org/w/index.php?diff=154521&oldid=154520 * Stkptr * (+0) /* Computational class */ link case
21:13:13 <esolangs> [[Diophantine equation]] https://esolangs.org/w/index.php?diff=154522&oldid=154517 * Stkptr * (+29)
21:15:15 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154523&oldid=154507 * Buckets * (+10)
21:15:41 <esolangs> [[Diophantine equation]] M https://esolangs.org/w/index.php?diff=154524&oldid=154522 * Stkptr * (+30) /* As a model of computation */ Use HTML superscript
21:15:51 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154525&oldid=154441 * Buckets * (+24)
21:16:04 <esolangs> [[AoA]] N https://esolangs.org/w/index.php?oldid=154526 * Buckets * (+2236) Created page with "AoA is an Esoteric programming language created by [[User:Buckets]] in An Unknown year. After Every command, A Random Thing will Be forgotten, either A number, Command or Variable (This does not Include <code>REMEMBER! []</code>, Instead of forgetting A Command or number O
21:35:10 <esolangs> [[Diophantine equation]] https://esolangs.org/w/index.php?diff=154527&oldid=154524 * Stkptr * (+347)
21:52:41 <esolangs> [[User:Aadenboy/Zerons]] N https://esolangs.org/w/index.php?oldid=154528 * Aadenboy * (+853) experimental math system
21:53:04 <esolangs> [[User:Aadenboy]] M https://esolangs.org/w/index.php?diff=154529&oldid=154140 * Aadenboy * (+27) /* anything else */
21:58:18 -!- ais523 has quit (Ping timeout: 246 seconds).
22:07:01 -!- ais523 has joined.
22:10:52 <esolangs> [[Quebe]] https://esolangs.org/w/index.php?diff=154530&oldid=118931 * Stkptr * (+273)
22:24:58 -!- Sgeo has joined.
22:42:52 -!- mtm has quit (Quit: Textual IRC Client: www.textualapp.com).
23:48:59 <esolangs> [[User:Aadenboy/Zerons]] https://esolangs.org/w/index.php?diff=154531&oldid=154528 * Aadenboy * (+958) some more juicy MATH
23:51:47 <esolangs> [[Signals]] N https://esolangs.org/w/index.php?oldid=154532 * Stkptr * (+3928) Create page
00:39:26 <esolangs> [[Topple]] https://esolangs.org/w/index.php?diff=154533&oldid=154510 * H33T33 * (-42)
00:41:56 <esolangs> [[User:H33T33]] M https://esolangs.org/w/index.php?diff=154534&oldid=152196 * H33T33 * (+12) /* Experience */
00:52:09 <esolangs> [[Special:Log/newusers]] create * Hazel * New user account
00:54:15 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154535&oldid=154478 * Hazel * (+111) Hello, world -Hazel
00:55:17 <esolangs> [[User:Hazel]] N https://esolangs.org/w/index.php?oldid=154536 * Hazel * (+48) Created page with "== hazel == transfem lesbian, she/her. the end."
00:59:22 <esolangs> [[User:Aadenboy/Zerons]] M https://esolangs.org/w/index.php?diff=154537&oldid=154531 * Aadenboy * (+0) /* Further */ mistake
01:24:18 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154538&oldid=154500 * Rottytooth * (+2625) Added more syntax
01:29:13 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154539&oldid=154538 * Rottytooth * (+361) Adding images
01:35:18 <esolangs> [[Special:Log/upload]] upload * Rottytooth * uploaded "[[File:Rivulet Fibonacci1.png]]": A Fibonacci program in the Rivulet language
01:36:10 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154541&oldid=154539 * Rottytooth * (+0)
01:36:13 <esolangs> [[Goog]] N https://esolangs.org/w/index.php?oldid=154542 * Hazel * (+2271) Add Esolang "Goog"
01:36:51 <esolangs> [[Special:Log/upload]] upload * Rottytooth * uploaded "[[File:Rivulet Fibonacci2.png]]"
01:37:50 <esolangs> [[Special:Log/upload]] upload * Rottytooth * uploaded "[[File:Rivulet Fibonacci4.png]]": Another Fibonacci program in Rivulet
01:42:18 <esolangs> [[UT19]] https://esolangs.org/w/index.php?diff=154545&oldid=122761 * Stkptr * (+327) /* The production rules of UT19 */ Add more typical alphabetical version for clarity
01:44:34 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154546&oldid=154541 * Rottytooth * (+151) Added images
01:45:08 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154547&oldid=154546 * Rottytooth * (+0) Resized images
01:49:44 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154548&oldid=154523 * Hazel * (+11) /* G */ - Add Goog
03:52:41 <fizzie> The IPv6 saga continues: DigitalOcean has now (politely) told me to go complain to my ISP instead. Well, there's still a "different team" investigating it from their end, but still.
03:53:09 <fizzie> So I filed a support ticket with my ISP, and hit the size limit of their web form, and after clicking submit the report just... disappeared.
03:53:28 <fizzie> So I've sent them an email instead, because at least that doesn't have silly-short size limits.
03:55:07 <fizzie> But I'm pessimistically expecing I have to go through the standard support script of "have you tried restarting your router?" and (once they learn I'm not actually using the one they supplied) the request to switch back to their dinky box, no matter how clear it seems to be that the problem's _between_ the ISP and DigitalOcean networks, not at either end.
03:56:36 <fizzie> And I guess to be fair, it's not entirely impossible that, I don't know, their "Hyperhub" does some special magic in the DHCPv6 prefix delegation request that enables this one particular route to also work.
03:57:16 <int-e> heh that could be the worst outcome
04:00:14 <int-e> . o O ( haunted IPv6 routing )
04:52:56 <esolangs> [[Goog]] https://esolangs.org/w/index.php?diff=154549&oldid=154542 * Stkptr * (-230) Fix categories, no looping so it's total, also no conditionals
05:08:43 -!- ais523 has quit (Quit: quit).
05:27:24 <zzo38> I wanted to make up a pokemon battle with each side only having one pokemon remaining, of which the first one has a move with recoil damage (or Life Orb) that will knock itself out, and knock out the second pokemon iff it scores a critical hit, but the second pokemon is faster, and confused and will knock itself out if it attacks itself due to confusion but has a move that will defeat the first one in one hit.
05:28:57 <zzo38> Furthermore, the second one must be allowed to learn Roar or Whirlwind, and the first one does not have any move without recoil damage that it is able to select.
06:22:09 <zzo38> (Actually, it is probably not necessary for the confusion damage to knock out yourself in one hit, but it must knock you out when added to the minimum damage caused by the opponent's attack.)
06:36:16 -!- Sgeo has quit (Read error: Connection reset by peer).
06:43:12 <zzo38> On TI-92, newList(0) is an error even though logically it would be sense to be valid (to make a empty list), I think.
07:15:01 -!- Lord_of_Life_ has joined.
07:16:08 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
07:16:23 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:42:17 <esolangs> [[Table]] M https://esolangs.org/w/index.php?diff=154550&oldid=148527 * Rdococ * (-47) /* Semantics */
08:31:40 <esolangs> [[Special:Log/upload]] upload * BerdiesLuvr * uploaded "[[File:L'toile Noire.png]]"
08:55:08 -!- b_jonas has quit (Quit: leaving).
09:42:23 -!- sirikon has joined.
09:43:12 -!- sirikon has quit (Client Quit).
09:43:33 -!- sirikon has joined.
09:44:50 -!- sirikon has quit (Client Quit).
10:36:29 -!- rodgort has quit (Ping timeout: 244 seconds).
11:15:16 -!- rodgort has joined.
11:32:58 -!- wib_jonas has joined.
11:34:36 <wib_jonas> re https://logs.esolangs.org/libera-esolangs/2025-03-24.html#lub the "Edg/" thing is correct, https://dpaste.com/C2XPZU8K2.txt has request headers I got from actual browsers on windows. These are headers for a request to an unknown host, so probably not quite the same as the typical headers that browsers send, where they already know they can send
11:35:06 <wib_jonas> the user agent string says: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0
11:39:29 <wib_jonas> so yes, that has quite a few brand names in there. we should make one that also says Netscape Firebird MSIE Opera in the same line.
11:41:02 <fizzie> Latest charts: https://zem.fi/tmp/errors3.png -- nice stair-step pattern there. So still happening, sporadically.
12:09:43 -!- craigo has joined.
13:33:26 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=154552&oldid=154100 * Hotcrystal0 * (+508)
13:33:45 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=154553&oldid=154552 * Hotcrystal0 * (+1)
13:34:13 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=154554&oldid=154081 * Hotcrystal0 * (+35)
13:44:36 -!- chiselfuse has quit (Ping timeout: 264 seconds).
13:45:25 -!- chiselfuse has joined.
13:57:59 <esolangs> [[User:JIT]] https://esolangs.org/w/index.php?diff=154555&oldid=154423 * JIT * (+336)
14:01:32 <esolangs> [[Fontmess]] https://esolangs.org/w/index.php?diff=154556&oldid=154408 * JIT * (+33)
14:13:22 <esolangs> [[Rivulet]] M https://esolangs.org/w/index.php?diff=154557&oldid=154547 * Rottytooth * (+43) /* Strand Types */
14:15:19 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154558&oldid=154548 * Rottytooth * (+14) Added Rivulet
14:16:39 <esolangs> [[User:Rottytooth]] https://esolangs.org/w/index.php?diff=154559&oldid=152628 * Rottytooth * (+31) Lang list
14:26:15 <esolangs> [[User:PrySigneToFry/Sandbox/Draft of EtPL]] https://esolangs.org/w/index.php?diff=154560&oldid=154501 * PrySigneToFry * (+838)
14:32:01 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154561&oldid=154557 * Rottytooth * (+84) /* Example */
14:32:16 <esolangs> [[Rivulet]] https://esolangs.org/w/index.php?diff=154562&oldid=154561 * Rottytooth * (+1) /* Example */
14:37:30 -!- FreeFull has joined.
15:00:01 <esolangs> [[User:Aadenboy/Zerons]] https://esolangs.org/w/index.php?diff=154563&oldid=154537 * Aadenboy * (-809) /* \sqrt{q}? */ hang on that's wrong
15:14:34 -!- amby has joined.
15:54:12 -!- ais523 has joined.
16:29:22 -!- wib_jonas has quit (Quit: Client closed).
16:29:31 <esolangs> [[Special:Log/newusers]] create * Ilikeundertale * New user account
16:54:11 <esolangs> [[Waduzitdo]] M https://esolangs.org/w/index.php?diff=154564&oldid=130315 * Krolkrol * (+123)
16:58:30 <korvo> Curses. I've seen the end of programming. I'm adding "set up a co-op that can fund the next stage of software development" to my topics to chat with my lawyer about.
16:58:54 <korvo> I've been chewing on "Galois Theory of Algorithms" https://arxiv.org/abs/1011.0014 and thinking about what it means for writing a program.
16:59:38 <korvo> Let's say that I'm hacking in some cruddy imperative "close-to-the-metal" ALGOL descendant. There are few automorphisms which fix the semantic behavior of programs in that language, because almost every statement is fully dependent on almost every other prior statement. We call this "data-dependent control flow".
17:00:46 <korvo> Yanofsky proposes three reasonable operations, and notes that we can take a quotient of programs based on the requirement that these operations commute. The operations are "bracket" (product), primitive recursion, and sequential composition.
17:01:26 <korvo> So, for example, if we have a program like `x += 1; y += 2;` then we can note that the lack of data dependency between the two statements allows us to find an automorphism respecting composition sending it to `y += 2; x += 1;`
17:02:13 <korvo> I'll skip the category theory. It's shown that we can decide equivalence of programs given bracket and composition, but *not* with primitive recursion.
17:03:07 <korvo> It's also known that the "initial operations" generated by these three operations include building every natural number, and thus that the automorphisms ought to respect those operations; a program that outputs 5 should never be considered equivalent to a program which doesn't output 5.
17:04:21 <korvo> Finishing the background, Yanofsky gives the punchline that the automorphism group under all three ops is the trivial group; there are programs whose behavior isn't equivalent to others under these three reasonable ways of combining programs.
17:05:04 <korvo> This isn't in any fancy computational model. It's Kleene's primitive-recursive functionals. The same stuff used in HOL or Cammy or Peano arithmetic.
17:06:39 <korvo> Here's what I just realized. Let some monad carry our imperative language's effects. The monad freely gives a Kleisli category, *which has composition*. We usually compute over sets, over which all monads are strong, so we freely *have a bracket*.
17:08:39 <korvo> So, given some equivalence of imperative programs, Yanofsky says that we also have an equivalence of arrows in the Kleisli category. But they also say that if we add primitive recursion for those arrows, then we can't compute the equivalence any longer.
17:09:46 <korvo> But primitive recursion in a category is merely repeated composition. So this means that we can't even compare equivalence of programs under indefinitely-repeated composition, which makes sense if you know about e.g. mortal-matrix problems.
17:13:37 <korvo> It's not quite a slogan, but: Sometimes a program will not be computably equivalent to any other program, even any other program which computes the same function.
17:14:53 <korvo> This is kind of like making Rice's theorem worse, and also kind of like an irreducible-control-flow lemma.
17:18:30 <korvo> ...It's also obviously a little wrong, in the sense that given some total program P, some composition c() and some identity program I, c(P,I) ≈ P, and even for partial P, c(I,P) ≈ P. So we need some sort of size to give order and metric, and then restate "sometimes, the *smallest* program computing some function..."
17:21:23 <korvo> Anyway, my big insight is that we currently write *programs*, and we have trouble not doing that because sometimes we can't (efficiently??) express certain *functions* without getting into machine-specific details.
17:22:22 <korvo> Obviously we want to write *algorithms* since the 60s and *functions* since the 80s. Yes. But how? We know programs are surjective on algorithms are surjective on functions, but that doesn't somehow ease the task of actually picking out a program for a particular function.
17:24:06 <korvo> Functions and algorithms both give genuine categories; we *can* decompose them with the three ops. But we can't do that for programs. So instead our compilers all work in subsets of the languages that support "calling conventions" and "procedures" and other ways of reusing and compressing code.
17:25:47 <korvo> Since we can't stop paying those costs, we call them "interpretative overhead" and brag about how our "Jones-optimal partial evaluator" can remove them, asymptotically, probably. We complain about how "intrinsics" perform an object-register mapping and never consider whether ORMs are necessary.
17:30:37 <korvo> This is also the root of the split between MLs. I've long struggled to see why Haskell, OCaml, etc. have efficient runtimes and also aren't eta- or beta-equivalent, and meanwhile Idris, Adga, Coq, etc. are pure type systems that are not fast and must undergo extraction for speed. If we note that the latter have a vague concept of program equivalence, then it's somewhat obvious what's going on: the latter are program-oriented, not function-oriented
17:31:48 <korvo> ...Yes, thanks IRC. Anyway, this suggests that e.g. Rust in the former camp and therefore can't save software development because it lacks nice composition properties. It also suggests that e.g. Cammy is in the latter camp, and indeed it's only fast because of extraction with a JIT. I'm open to frame challenges but this is explaining more than it's obscuring.
17:39:41 <ais523> korvo: reading your messages now
17:41:06 -!- ajal has joined.
17:41:06 -!- amby has quit (Read error: Connection reset by peer).
17:41:46 <ais523> korvo: I think I have my own thoughts about this sort of thing, but they don't contradict yours
17:43:19 <ais523> recently I've been viewing programming through a lens of a) trying to make subprograms into pure functions as much as possible, with any effects encoded in the input and output, and b) where possible, limiting the syntax to things that have a nice canonical form that optimizers can operate based on
17:44:10 <ais523> one of the biggest mistakes programming languages make is to accidentally make a detail that should be irrelevant observable
17:44:39 <ais523> and this is a type of mistake that normally can't be backwards-compatibly corrected
17:45:06 <ais523> and I think the reason it happens is that the languages start by using algorithms to specify functions, and that makes it easy to accidentally capture an implementation detail
17:47:04 <ais523> I've also been considering writing a blog post about why Rust reborrowing (the thing that is special about &mut) seems to cause most of Rust's major problems, even though it's hard to deal without – and I think that is consistent with your viewpoint too, as reborrowing is the Rust construct that behaves least like a pure function
17:49:18 <korvo> ais523: Yeah. I think that we often couch all of this in terms of purity, which happens to generalize Yanofsky because functions are definitionally pure. Certainly, implementing pure type systems is a special case of all of this.
17:49:57 <ais523> I think purity is the most marketing-friendly way to talk about the concept, at least – even people who aren't deeply into type theory can have an idea of what it means
17:50:29 <korvo> To stereotype my conversations with implementors of languages like Idris or Coq, they have a distinction between "computation" in terms of simplifying/rewriting terms, and "extraction" in terms of actual compilation.
17:51:18 <korvo> This also shows up in partial evaluation; in e.g. lambda calculus, there's a real distinction between beta-reduction of symbolic terms and the effective beta-reduction performed by call/return semantics.
17:51:41 <korvo> Er, like CBV semantics obviously, but also calling by partially-evaluated reference.
17:52:33 <ais523> I am increasingly thinking that references should be an implementation detail rather than something explicitly managed by the programmer
17:53:06 <ais523> an obvious example is the distinction between &T and &&T in Rust, which is necessary for type-system reasons but causes runtime overhead for almost no good reason
17:53:39 <korvo> ais523: Your (b) is definitely both desirable and something for which we have a type-theoretic ceiling. It's known that Cartesian-closed categories have a canonical form for arrows on their own, but if we add sums (bicartesian) or natural-numbers objects, then equivalence is undecidable.
17:53:54 <ais523> (the only thing that prevents you optimising &&T into a copy of the &T is that it might get converted to a raw pointer, which most programs don't care about doing)
17:54:40 <ais523> I wouldn't expect practically useful programming languages to have decidable equivalence, because that places huge constraints on the computational class that likely rule out a wide range of useful programs
17:54:43 <korvo> The first part of that sounds a lot like "no Turing-complete language has genuine sums and products", but it comes from a totally different angle: there's no finite axiomatization of rewrites for bicartesian-closed categories.
17:55:09 <ais523> but maybe large portions of them can
17:56:20 <ais523> in a language I am working on, I realised that programs are conceptually much easier to express if the virtual-machine evaluation order used in the specification is very different from the evaluation order of the compiled assembly language
17:56:40 <ais523> although in order to pull that off, you need a lot of statements to be able to commute
17:58:17 <ais523> I suspect the construct that most commonly causes program equivalence to become undecidable is the unbounded loop (whether done via recursion or imperatively)
17:58:25 <ais523> or, well, Blindfolded Arithmetic is enough to demonstrate that
17:58:30 <ais523> don't even need any control flow, just the loop
17:58:37 <korvo> Yeah. And we can see the gaps here. For example, when we compile a language with pairs ("bracket") into stack-machine code, we usually get to choose whether to evaluate the left-hand or right-hand component first. That choice is a compiler choice and often commutative.
17:59:11 <ais523> yes – and ideally a well-designed language would make it impossible to write a program where the choice was observable
17:59:25 <korvo> But that suggests that, as a compiler, we're embedding a possibly-trivial automorphism group into a non-trivial group.
17:59:35 <ais523> for example, you could reject programs in which both arguments to the pair constructor had side effects
18:00:12 <ais523> or use a type system to do the same thing
18:00:45 <korvo> And Yanofsky showed that the non-trivial automorphism groups correspond to equivalences of programs which don't fully respect bracket, composition, or recursion. Since bracket is freely respected here, and since composition is usually implied in homomorphic compilers, this means that e.g. Cammy's compiler must create some observable non-equivalences of recursion.
18:00:46 <ais523> I don't think pair constructors are special here, the same thing is true of function arguments in general
18:01:00 <korvo> And indeed there are some test Cammy programs that provoke StackOverflow in the underlying JIT.
18:02:10 <korvo> Pair construction is just a convenient example. We could use any categorical structure that's implied by the three ops.
18:02:16 <ais523> I am not surprised that lack of equivalence is mathematically unavoidable, and agree that recursion/loops is the best place for it to happen
18:03:19 <korvo> I used to be a little surprised that OCaml and GHC Haskell don't have eta-equivalence. Angry, even. Now I'm thinking that it's inevitable if they want to automatically and homomorphically generate efficient programs.
18:04:40 <korvo> (It doesn't matter that Hask isn't a category! Yanofsky expects languages to only give graphs. For categories, the structure's already too nice to have interesting Galois theory.)
18:06:48 <ais523> which version of eta-equivalence are you talking about? the general one which lets you substitute any function for another function with the same I/O behaviour, or the specific one that only converts between f and \x -> f x?
18:07:34 <korvo> Either TBH, but Ocaml specifically lacks the latter, and GHC has historically had many bugs relating to it.
18:08:10 <ais523> right – Ocaml specifically has observable evaluation order which breaks that equivalence – Haskell I would have expected to uphold it, though, and it sounds like it's trying to?
18:12:20 <korvo> Well, the automorphism groups don't preserve computational complexity. GHC bugs usually aren't miscompiles but performance problems; the relevant part of the compiler is their "lambda lifter", which also decides whether to eta-convert expressions to add/remove laziness.
18:13:14 <korvo> ...I mean, some of the automorphism groups do preserve complexity, but anything involving loops appears to not be that easy. Yanofsky suggests that natural numbers are some sort of special semantic object that brings in the complexity.
18:13:56 <ais523> I think that might be backwards – in the sense that I suspect the same sorts of things that introduce complexity can also be used to implement natural numbers
18:14:29 <ais523> this is why The Waterfall Model is so good at proving TCness – pretty much anything that is complex enough to be TC can implement natural numbers more or less directly, and TWM doesn't need anything else
18:15:30 <ais523> and the basic reason is that anything TC has to be able to store arbitrary amounts of data, and "the amount of data" is typically something you can use to represent a number
18:15:45 <esolangs> [[Table]] M https://esolangs.org/w/index.php?diff=154565&oldid=154550 * Rdococ * (-156)
18:16:44 <esolangs> [[Table]] M https://esolangs.org/w/index.php?diff=154566&oldid=154565 * Rdococ * (+1) /* Truth machine */
18:26:20 <korvo> That's definitely a way of looking at it, although I worry that it's too focused on the computer as the source of the complexity. After all, we usually define complexity in terms of asymptotes which extend beyond any single computer.
18:26:45 <ais523> oh, I'm thinking in terms of abstract machines here, not physical computers
18:27:49 <korvo> Oh! I was always thinking in terms of abstract machines, sorry. Like, "the computer" might well be Kleene's formalism, which also assumes the existence of natural numbers.
18:28:39 <ais523> I guess I have a semantics-first way of thinking about TC proofs because that's how most esolangs are defined
18:29:37 <ais523> but I also have a suspicion that taking asymptotes/limits of programs is a dangerous/risky operation in the sense that it may not be well-defined – it can definitely cause a huge expansion to a computational class
18:29:45 <korvo> No worries. I only think so much about abstract syntax because I'm always writing cruddy compilers.
18:30:42 <ais523> for example, suppose you have a language equipped with a random oracle; if you use it it returns either true (with probability p) or false (with probability 1-p) – you can give that to a TC language and it's still TC (just with potentially random behaviour) – but if you take the limit as p goes to 0, it becomes able to solve the halting problem
18:30:54 <ais523> (even though the actual value of p=0 would be entirely useless)
18:31:54 <korvo> Right. We can always define limits of categories, and a "star graph" category can serve as the appropriate diagram; it's got arrows 0 → 1, 0 → 2, 0 → 3, etc. But programs only give a graph, not a category, under typical rewriting rules.
18:33:04 <korvo> Ah, yeah, the limit has to be WRT some categorical structure, and I'm not sure how the complexity class R behaves when we do that. (I've failed to understand Turing categories like three times; they are not easy constructions.)
18:33:16 <ais523> I would not expect programs to usefully give a limit ("useful" in the sense that it corresponds to any operation that you can actually calculate or implement or that gives insight for reasoning about programs)
18:35:09 <korvo> Well, we can get one insight: what are some trivial complexity bounds for a given program? If we can determine which algorithm it implements, then we can shift to the category of algorithms, optionally give it a non-uniform representation, map it onto a star graph, and take the limit in some metric space.
18:36:04 <korvo> That determiniation must be the hard part, because we usually just kind of handwave over the rest of it!
18:36:58 <ais523> I agree – you can prove that by "contradiction" in that if we could easily tell what algorithm an arbitrary program implemented, it would be trivial to optimise it
18:38:05 <korvo> In the sense that, since programs are surjective on algorithms, once we've picked out a representative (which we established earlier is hard) then we can hand-optimize that representative. And recognizing an algorithm is "idiom detection" from compiler engineering.
18:38:40 <ais523> there are limited languages in which you can do that, e.g. with a language that has integer constant and variables and + - × and non-recursive functions but no control flow or loops, you can canonicalise functions into polynomials
18:39:11 <ais523> and one thing that I'm interested in is expanding that sort of language into something that still canonicalises but can express a greater range of useful programs
18:39:23 <ais523> e.g. can we add bitwise operators and bitshifts to that?
18:39:26 <korvo> Oh, but also: for a given program, we know at least one algorithm it implements, because we know one function it implements: it implements the effects encoded by the Kleisli category of the effect monad! And algos are surjective on functions.
18:40:11 <korvo> Further we know how to use abstract interpretation to concretely transform a program with loops into a worst-case complexity analysis, and we teach it to undergrads when we show them the triply-nested loop for matrix multiplication.
18:40:38 <ais523> idiom detection annoys me – I a) intuitively feel like it's the wrong approach but b) don't know any better alternatives
18:41:11 <ais523> I think the reason I think it's the wrong approach is that it will usually optimise some programs differently from other programs that are clearly (to a human) equivalent
18:41:19 <ais523> especially if it isn't confluent, which it isn't usually
18:41:44 <korvo> Hm. That's a good question and one that we'd need a ring theorist to really take apart. It sounds very familiar, maybe because somebody stubbed a Diophantine-equation article recently.
18:42:52 <korvo> Right, we know that tile-oriented instruction selection is NP-hard to do well, and idiom detection is -- if we allow individual instructions to be idioms -- therefore NP-hard too.
18:43:10 <ais523> come to think of it, just being able to prove that a set of tree-rewriting optimisations is confluent would be useful, and seems theoretically possible in at least some cases
18:43:29 <ais523> oh, NP-hardness, that makes sense
18:44:07 <korvo> To the point where I always remember NOLTIS in terms of what it stands for: Nearly-Optimal Linear-Time Instruction Selection. Wow! And it uses tiles explicitly, too.
18:45:24 <ais523> related: I recently came across a problem related to instruction selection for which the abstract version is this: you have a number of known finite sets, and need to choose one element for each set – for each pair of elements in different sets there is a (possibly zero) cost, and you want to make a selection that minimises the total cost across all pairs of elements you selected
18:46:02 <ais523> this looks really reminiscent of an NP-complete problem but I haven't immediately figured out which one – in particular it reminds me a lot of Boolean satisfaction but the restriction to pairs makes it hard to implement anything other than 2-SAT directly
18:46:17 -!- b_jonas has joined.
18:46:56 <korvo> It reminds me of how Sudoku is solved, and Hamiltonian cycles are doable in a similar setup. It becomes 0-1 programming when we set the cost to be a Dirac delta (0 when i = j and 1 otherwise).
18:47:44 <korvo> Pair-of-elements is like a 2-graph; it's a double-decker where each edge is valued in the *elements* of nodes and not just the nodes themselves.
18:48:05 <ais523> oh you're right, I think it does do Hamiltonian cycles directly (the sets are the edges from each vertex, and there's a high cost for choosing two edges that don't connect to each other)
18:48:39 <korvo> It reminds me of Sudoku because I bet Norvig's heuristic is decent on it: pick the smallest set and generate the collection of all possible pairs in/out of it, recursively eliminating possibilities.
18:49:06 <ais523> yes, it looks like the sort of NP-complete problem for which there are good approximations
19:05:41 <korvo> Okay, I'm back to the three ops. Was thinking about how UNIX kernels used to be handwritten. A kernel can take programs and perform the three ops on them. We'll only consider input and output effects, like with UNIX pipes.
19:07:00 <korvo> Then composition obviously holds. Bracket-pairing should work too. Recursion needs help from a system daemon or a jank series of syscalls but should be possible. So, in a sense, one of the jobs of a (UNIX) kernel is to promote programs into algorithms; the individual programs might not compose, but the computer does as a whole.
19:12:21 <korvo> This is a pretty stark contrast with the "page of code" school, e.g. from VPRI/STEPS, which contends that we should write a single low-level program that is about one page long and merely bootstraps a nicer programming environment, about five or six times.
19:13:15 <ais523> I'm not convinced that the "page of code" strategy is necessarily a sensible way to do programming, but it sounds like a lot of fun – I might try that some time
19:13:40 <korvo> Sure, maybe the first page of code gets us into a nice low-level image-based Forth-ish or Tcl-ish environment. Maybe the next page of code sets up a GC. Maybe the next page establishes platform-specific hooks and prepares for a userland.
19:14:28 <korvo> But at some point, we want the computer to transition from running one program to providing some sort of program-running environment and giving us various meta powers, and in particular we might want to compose two programs. But programs don't compose.
19:14:53 <ais523> I think the page-of-code approach eventually hits Kolmogorov complexity limits
19:15:18 <ais523> you can create increasingly golfy programming environments, but even the golfiest won't be able to fit a program that's too complicated into a single page
19:15:44 <korvo> For sure. I also think it's based on some very optimistic assumptions. I think I've documented Nile on-wiki as an example of a STEPS language; it's part ML and part APL, and it was designed to express GPU shaders very succinctly.
19:15:50 <ais523> so you'd have to start encoding the actual program you wanted into the language, rather than just writing the best generic language you could
19:16:00 <korvo> And that still takes maybe two pages to implement Porter-Duff in toto.
19:16:12 <ais523> and at that point you're losing the benefits from the approach
19:16:33 <ais523> it could make sense for early bootstrapping, though, as long as you abandon it once it stops working
19:16:36 <korvo> Or at least the benefits start shifting to the eDSL benefits.
19:17:44 <korvo> ...Sorry, what a bad sentence, and I can't figure out how to rephrase it.
19:19:04 <korvo> Like, we want to make simple high-level statements like "boot the system", and if those get rephrased to machine-parseable `boot(theSystem)` statements then that's not necessarily worse. Machines can check their well-formedness, do a model-check, etc.
19:19:35 <korvo> Pantagruel might be a good example of that sort of language, but the reference implementation's in Janet and I've been unable to adopt it because Janet's custom build system is jank.
20:02:00 <esolangs> [[Clockwise Turing machine]] N https://esolangs.org/w/index.php?oldid=154567 * Stkptr * (+2710) creat
20:07:15 <esolangs> [[FOSMOL]] M https://esolangs.org/w/index.php?diff=154568&oldid=153872 * Aadenboy * (+46) /* Example macros */ oh duplication is simple actually
20:08:39 <esolangs> [[Pantagruel]] N https://esolangs.org/w/index.php?oldid=154569 * Corbin * (+1818) Stub a desirable specification language.
20:13:31 <korvo> ais523: Okay, so I'm still thinkin' way too hard, but here's an example of a spec language that isn't as encumbered as Dafny or as austere as TLA+. Pantagruel documents are basically little diagrams of a simple type theory. We could imagine interpreting them in a world of functions.
20:14:55 <korvo> We could imagine calculating a program for such a spec. First, figure out a candidate function; we'll just take the least upper point of the diagram, requiring every property to abstractly hold. Then pull back once for an algorithm, and twice for a program.
20:16:02 <korvo> Hopefully we only get stuck at that second stage, since that's the one that we thought was hard earlier. Which algorithm implements the least upper point? Well, any algorithm that checks each property by examining the input will do. We can choose the cheapest one through standard algebraic optimization.
20:18:32 <esolangs> [[Clockwise Turing machine]] https://esolangs.org/w/index.php?diff=154570&oldid=154567 * Stkptr * (+29)
20:20:14 <korvo> (I'm not handwaving that, BTW. There's a wonderful book using equational reasoning to work through how to *compute* algorithms with desired properties: https://di.uminho.pt/~jno/ps/pdbc.pdf "Program Design by Calculation")
20:20:34 <esolangs> [[Clockwise Turing machine]] https://esolangs.org/w/index.php?diff=154571&oldid=154570 * Stkptr * (-29) Undo revision [[Special:Diff/154570|154570]] by [[Special:Contributions/Stkptr|Stkptr]] ([[User talk:Stkptr|talk]])
20:21:24 <korvo> (I guess this is covered in the current Chapter 7, "Contract-oriented Programming")
20:29:11 <ais523> I'm kind-of stuck confused between different levels of abstraction, as usual when I'm thinking about category theory
20:30:07 <korvo> Totally fair. Galois theory is very difficult for me in general, and I think I'd be completely lost if it weren't for programs => algos => functions right now.
20:31:23 <ais523> is it the case that with your terminology, algorithm→program is "hard" because the program captures inessential details that the algorithm doesn't capture, so you can end up producing an undesirable program by forcing the wrong details?
20:33:35 <korvo> It's hard to find an efficient program quickly. NP-hard in the specific case of idiom recognition, at least. We can find a decent program using homomorphisms and generic tools, but it'll do "slow" things that respect the symmetries of composition, like saving registers for calling conventions or spilling them for inlined subroutines.
20:34:16 <ais523> OK, yes, I think I understand now – finding an arbitrary program isn't hard, but finding one with desirable properties is
20:34:31 <korvo> The faster programs might exist, but they won't be found programmatically by a symmetry-respecting tool like a BURG. They'll have to be found by something a little more brute like a superoptimizer.
20:35:30 <ais523> oh, this reminds me – I think at least inefficiencies related to cross-subroutine register allocation are probably fixable without a full rethink of the way compilers work
20:36:29 <ais523> I think register allocation is done too early in typical compile pipelines – it seems like the sort of thing that could reasonably be left as late as possible
20:36:32 <korvo> A slogan that might help: A concrete category is a path category on some graph (called its "quiver", because it holds arrows, haha~ ugh). This sort of program generation has to follow paths from one possible optimized program to another, and those paths are defined WRT some underlying symmetry due to their inner control flow.
20:37:08 <ais523> and that would open the possibility of each subroutine being built with its own ABI, or maybe even multiple ABIs, that are propagated to do a more optimal register assignment
20:37:59 <korvo> In order to find one of those uniquely efficient programs, the generator has to find a similarly unique path of applied optimizations; in particular, *no optimizations may commute* or else there are multiple underlying paths.
20:40:54 <korvo> ais523: Oh sheesh, that reminds me of a blog post I did *not* write. If we ignore call/return and stack semantics, the remaining opcodes of most processors give a structure called an "operad".
20:41:57 <korvo> Terminology around these things is awful. An operad is a category that takes multiple inputs and has multiple outputs (a "multicategory"). We want to let some registers be general and others specific (they have "colors", again ugh), and we can apply arguments in any order.
20:42:43 <korvo> But once that's all set up, an operad exactly encodes the dataflow of a program. To evaluate some operation, first evaluate its arguments and then perform the operation itself.
20:43:46 <ais523> I think most practical processors nowadays are moving away from special-purpose registers, except a) stack/subroutine-related registers, b) the instruction pointer, and c) the fact that some registers are typically larger than others
20:44:06 <korvo> So the *processor* has symmetries! It's not actually running programs, it's running algorithms! No wonder the modern CPU basically has an on-die JIT.
20:44:52 <korvo> But only if there's a lot of GPRs. Like maybe two or three GPRs, at least. So maybe the 6502 has genuine programs.
20:45:00 <ais523> oh, that's more true than you imagine – registers nowadays are primarily a convention for expressing SSA in a fairly compressed/golfy form and get decompiled into SSA in the processor
20:45:56 <ais523> the only time a value is stored in an actual physical register is if you don't mention the register for ages (around 100 instructions) and the compiler needs to remember the assignment of value to register name long-term
20:46:06 <ais523> the rest of the time it's all virtual SSA registers, and there are hundreds of them
20:47:44 <korvo> But 6502 is different. Or Z80, whatever. Every primitive operation only operates on specific registers, and they usually can't be substituted for each other. So there's practically no commuting sequences of code in terms of register effects.
20:48:41 <korvo> So there's no point to JIT. Or the point would only be to JIT an emulator if we're virtualized, I guess. But the hardware itself, not able to commute operations, executes programs.
20:48:43 <ais523> microcontrollers can be different again – the one I used had one traditional register which was an implicit operand of basically every command, and the other operand was memory, but it had a huge number of special-purpose memory addresses
20:49:23 <ais523> e.g. to do an indirect access to memory, you would store the address at, IIRC, memory location 4 and then read/write the value of memory location 0, which was defined as an alias to whatever memory location 4 was poining to
20:49:37 <ais523> so from one point of view it had only one register, from another point of view it had hundreds
20:49:58 <ais523> it was sort-of like a transport-triggered architecture, except that it had normal arithmetic instructions as well as the memory-mapping
20:50:18 <ais523> and likewise normal control flow instructions
20:50:53 <korvo> So nothing would commute, since the implicit register creates data dependencies. Although, if we add standard read-write memory semantics for the rest of the memory bank, then some operations would commute again.
20:52:18 <ais523> oh, it was worse than that – there were only a couple of hundred bytes of memory total, and it was documented as expected behaviour to use special-purpose registers for general-purpose purposes in order to get a bit more memory
20:52:38 <korvo> So, in some sense, equipping a concrete machine with some I/O -- even just memory -- is loosening it up to only evaluate some algorithm, rather than a specific program.
20:52:41 <ais523> many of them would, e.g., have enable flags in a different register and act like regular memory when disabled
20:52:51 <korvo> And that makes sense if we think about memory controllers having many different tools for speeding up transfers.
20:53:37 <ais523> I found some of my own asm code for this, it's mostly mov instructions with occasional arithmetic and control flow
20:54:04 <ais523> and instructions to set/clear/toggle single bits directly in memory, without needing to go via the register
20:54:50 <ais523> I wasn't expecting this to have RMW instructions but those ones do make sense, given how the processor works (and, come to think of it, might have been implemented without a specific read cycle via using memory that could be written a single bit at a time)
20:55:28 <korvo> *But* if the program is written to require a specific memory-controller behavior, then that would still be targeting a concrete machine. So it turns out that when we want to work with "a machine", we need to be fairly specific about whether it's evaluating programs or algorithms, and we can only tell by doing some Galois theory to see how strongly Hyrum's Law applies.
20:55:39 <ais523> ah no, it appears to have actual RMW instructions, there are some "add register to memory", "increment/decrement memory" in here
20:56:04 <korvo> Oh, that's nice of them.
20:56:27 <ais523> korvo: my guess is that practical programming and practical computers don't try to make a hard distinction between programs and algorithms in your sense
20:56:41 <ais523> and this occasionally leads to trouble but mostly works well enough for people to not be bothered by it
20:58:13 <korvo> ais523: I agree. And also, more nuanced: a hardware-maker is trying to turn programs into algorithms, which requires new symmetries to be exposed so that some operations can commute. A programmer is trying to turn algorithms into programs, which requires breaking symmetries and choosing a good order of operations.
21:00:34 <korvo> A compiler author must do both, first by taking a program as representative of a class of algorithms, then by viewing that class as an equivalent category to some other class, and finally by choosing an efficient representative program from the class.
21:03:28 <korvo> Those almost sound like slogans. Needs a bit more cooking.
21:05:15 <esolangs> [[Special:Log/newusers]] create * OskuDev * New user account
21:06:44 <b_jonas> ais523: I may be misunderstanding something, but I don't think Hamiltonian cycles can be easily reduced to the optimization problem that you gave.
21:07:31 <korvo> ais523: Sorry for the headache; thanks for the rubber-ducking. I think that I have the bulk of the insights for the post; the rest of it is just verifying theses like "every modern language expresses exactly one of: programs, algorithms, or functions".
21:08:06 <b_jonas> I think it's NP-complete nevertheless, that's just not the right way to prove it
21:08:52 <b_jonas> I think you have to reduce chromatic number instead, or maximal matching, or something like that.
21:09:15 <b_jonas> The reduction that you mention doesn't work because it doesn't enforce that there's only once cycle instead of a union of disjoint cycles.
21:12:07 <korvo> b_jonas: Ah curses, and Sudoku doesn't encode nicely for the same reason. Nice catch, thank you.
21:12:27 <ais523> b_jonas: ah yes, the construction doesn't seem to handle cycle count
21:13:03 <ais523> I actually considered pinging you at that point in the conversation, it seemed like your sort of problem
21:14:17 <esolangs> [[Bi-tag system]] N https://esolangs.org/w/index.php?oldid=154572 * Stkptr * (+2341) crate pag
21:14:28 <ais523> the chromatic number decision problem (more or less than some specific value) seems to work fairly directly? just have a high cost for two adjacent vertices being the same color
21:15:41 <korvo> My entire thought process about it was wrong, sorry. In particular, if the cost function is always 0 or 1, then it's poly-time whether there's a zero-cost path. I was completely misled by superficial details.
21:15:53 <esolangs> [[Tag system]] https://esolangs.org/w/index.php?diff=154573&oldid=115677 * Stkptr * (+20) /* See also */
21:16:20 <ais523> korvo: I think even the only-0-or-1 case can solve the chromatic number decision problem
21:16:44 <ais523> which is NP-complete for, e.g., determining whether a graph is 3-colorable
21:16:49 <b_jonas> correct, that's my sort of problem
21:17:07 <b_jonas> and yes, chromatic number works well for this
21:18:45 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=154574&oldid=154535 * OskuDev * (+94) /* Introductions */
21:20:34 <korvo> Oh, okay, yeah. The 0-1 case comes out as the path problem for inhabited finite relations, which is canonically NP-complete. I see the chromatic-number encoding too.
21:21:04 -!- craigo has quit (Quit: Leaving).
21:29:39 <b_jonas> as for read-write-modify memory, the silliest language in that respect is https://esolangs.org/wiki/Y86 . it starts normal: most instructions can read an operand from memory but only write to a register, there's of course an ordinary store instruction. but there's one exception: you can one's complement memory in place. I don't know why it's designed that way.
21:31:50 <korvo> It looks like it's the only unary operation? Could be a simplification due to how addressing modes are (expected to be) decoded in hardware.
21:32:46 <b_jonas> korvo: yeah, but why would they have that unary instruction when there are so few instructions?
21:32:59 <korvo> At the time, the same sort of operation on a Z80 or 6502 could only happen on the accumulator X, I think? So maybe it went from an op with an implicit address to an op with explicit addressing.
21:33:11 <korvo> b_jonas: I don't know. Retrospect is puzzling.
21:33:48 <zzo38> I think that there may be benefits of not having any instruction that both read and write memory; some are read and some are write but not both.
21:35:19 <b_jonas> I mean there's kind of a reason, which is that to some extent y86 is based on 8086, which has special instructions for one's complement, but still, it has lots of other special instructions too
21:40:42 <zzo38> (The benefit might be that the cycles of the instruction should be more clearly, e.g. instruction cycle, calculation cycle, memory cycle. That way you should not need multiple memory cycles, but calculation cycles might be able to run at same time than other instructions do in some cases, since the calculation cycle does not need to access memory.)
21:42:13 <b_jonas> a more common pattern is https://esolangs.org/wiki/Viktor%27s_amazing_4-bit_processor and https://esolangs.org/wiki/Lawrence_J._Krakauer%27s_decimal_computer , both of which have arithmetic instructions that get one operand from memory and the other from accumulator and store to accumulator, and have two store instructions: one to store the accumulator and one to store the program counter (for
21:49:57 <ais523> korvo: on the 6502, A is the register that supports most operations; X and Y are limited to moves, increment/decrement, and being used as an address
21:50:20 <ais523> I'm not as familiar with the Z80 but am not sure it even has an X
21:50:36 <ais523> (I learned to program on a 6502, originally, so it's the first platform I learned)
21:51:52 <ais523> b_jonas: huh, I'm familiar with two standard ways to do subroutine calls in hardware and that isn't either of them
21:52:25 <ais523> although I vaguely remember it being used by some early programming languages that didn't support recursion – the location of the caller would be stored in a static variable of the callee
21:53:30 <ais523> it crosses my mind that you don't really need "store/push current address" if you have "store/push immediate", unless you're using some sort of ASLR – but it might be useful anyway due to the instruction being shorter / needing fewer immediate bytes
21:54:29 <b_jonas> ais523: well these are small toy processors. this wouldn't be very practical in a real machine because you have to know where the return instruction is to call the function, which makes it hard to change programs. optimized programs that ignore the published API and refer to addresses of specific subroutines in the kernal would hardcode not only the entry but the exit address. that would make it very
21:54:35 <b_jonas> annoying to update the ROM.
21:56:49 <ais523> b_jonas: IIRC the convention was to store the return address immediately before the called address
21:56:58 <ais523> (obviously this requires program memory to be writable)
21:57:36 <ais523> back in the days of old languages that didn't support recursion, presumably on processors that didn't have stacks because otherwise they would have used those instead
21:58:34 <ais523> ooh, even more fun – you don't need an indirect jump instruction to return, you can have a goto-immediate instruction at a known location and, when calling a function, just overwrite the immediate to decide where to return to
21:59:07 <ais523> this seems like it might potentially be a useful technique for implementing VMs in esolangs?
22:00:32 <b_jonas> all three of Knuth's processors (that I documented) have a call instruction that puts the return address into a register, and then the called subroutine can use that register.
22:04:23 <b_jonas> ais523: yes, Viktor T. Toth's CPU and Krakauer's language do that, they don't have indexing on any instruction, just modify the address field of the instruction in memory. and Krakauer's language actually adds the same trick to this as MIX does: the store program counter instruction actually only modifies the address field of the memory word, keeps the instruction field unchanged. Viktor T. Toth's CPU
22:04:29 <b_jonas> has nybble-granular memory so you can just directly address the address field, just like you can do on the 6502.
22:05:31 <ais523> "directly address the address field" reminds me of Redcode
22:06:01 <b_jonas> MIX also has indexing with index registers, and you can use that for an indirect jump, but subroutine returns don't do that too often. you can only store the return address to memory directly, it's one more instruction to load it back to an index register. can still be worth if you have many return statements from the same subroutine of course.
22:07:20 <b_jonas> the 6502 and BMOW-1 have indexing with index registers, but even more so than MIX they encourage you to also use self-modifying code for indirect memory access.
22:10:08 <ais523> hmm, that's interesting – the 6502 doesn't really seem to need self-modifying code for that
22:10:09 <b_jonas> whereas https://esolangs.org/wiki/Apollo_Guidance_Computer has an indexing instruction that loads an index from memory and it will be added to the next instruction between fetching and executing it. it works for almost any instruction. so it's even more general as MIX's indexing mechanism.
22:10:42 <ais523> you can indirect via a memory address plus a register, and can add the register either to the address being indirected via or the address loaded indirectly
22:11:19 <b_jonas> ais523: in the 6502 the indexed addressing modes use the X or Y registers as an index, and those registers are one byte long, but the address space is two bytes long, and sometimes you want to index with more than just a byte
22:11:24 <ais523> I do like the "add to next instruction" for a short-pipeline processor, it's like you get the benefits of self-modifying code without needing to actually modify the program in RAM
22:11:54 <ais523> b_jonas: yes but you still can indirect via two bytes read from memory
22:12:05 <ais523> so you don't need to self-modify code, just store the address you want in RAM
22:12:18 <ais523> (and you still get to add one byte of offset to it)
22:12:42 <b_jonas> yes, you don't *need* self-modifying code, but self-modifying code is very often the easiest, at least if you have a non-small amount of memory
22:12:55 <ais523> you can even do jump tables in a single instruction (although there's no automatic doubling of the offset like x86 can do, so you probably need another instruction to double the register first)
22:13:25 <ais523> I didn't program on banked 6502 implementations but they are very common, to get more than 64KiB of program+data memory
22:13:48 <ais523> and I suspect they would make self-modifying code even less useful, especially as code is usually executed from ROM on those
22:14:39 <b_jonas> yeah, in this case by "non-small" I just mean not just like 128 bytes of RAM plus 2 kilobytes of ROM like the Atari 2600 has, but enough RAM that you actually want indexes longer than a byte sometimes
22:15:35 <ais523> b_jonas: yes – but my point is that you can store the address into data RAM and indirect via it, or you can store the address into program RAM (if you even have any) and have it decoded as part of the instruction, and the former is neater and doesn't seem to have any downsides by comparison?
22:15:41 <ais523> unless you need a double indirection
22:18:22 <b_jonas> ais523: ok, I guess I was too strong above. probably you only want self-modifying code for a minority of indirect or indexing.
22:18:38 <b_jonas> the indirect addressing modes are good for most cases
22:32:50 <esolangs> [['Python' is not recognized]] https://esolangs.org/w/index.php?diff=154575&oldid=154516 * Stkptr * (+35) It can never pop, so the stack is effectively 2 symbols deep
22:51:02 <esolangs> [[Special:Log/upload]] upload * Buckets * uploaded "[[File:Fontpride Logo.png]]": This is the logo for Fontpride/<span style="background-color:#FFAFC8;color:white;">F</span><span style="background-color:#74D7EE;color:black;">o</span><span style="background-color:#613915;color:white;">n</span><span style="background-color:#E40303;color:black;">t</span><span st
22:52:09 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154577&oldid=154558 * Buckets * (+557)
22:52:52 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154578&oldid=154525 * Buckets * (+556)
22:53:52 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154579&oldid=154578 * Buckets * (+1)
22:54:33 <esolangs> [[Fontpride]] N https://esolangs.org/w/index.php?oldid=154580 * Buckets * (+12518) Created page with "{{wrongtitle|title=<span style="background-color:#FFAFC8;color:white;">F</span><span style="background-color:#74D7EE;color:black;">o</span><span style="background-color:#613915;color:white;">n</span><span style="background-color:#E40303;color:black;">t</span><span st
22:59:04 <esolangs> [[Batch No For]] https://esolangs.org/w/index.php?diff=154581&oldid=139891 * Stkptr * (+98)
23:05:59 -!- Sgeo has joined.
23:24:15 <esolangs> [[Talk:]] https://esolangs.org/w/index.php?diff=154582&oldid=108008 * Hotcrystal0 * (+61) /* Unstack */ new section
23:24:22 <esolangs> [[Talk:]] https://esolangs.org/w/index.php?diff=154583&oldid=154582 * Hotcrystal0 * (+93)
23:25:00 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=154584&oldid=154489 * Hotcrystal0 * (+51)
23:25:12 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=154585&oldid=154584 * Hotcrystal0 * (+3)
23:30:20 <esolangs> [[AH'TALIQUAE ENGLISH/Examples]] M https://esolangs.org/w/index.php?diff=154586&oldid=141133 * Buckets * (+0)
00:02:26 <esolangs> [[Lag system]] N https://esolangs.org/w/index.php?oldid=154587 * Stkptr * (+2757) corate pag
00:33:57 <esolangs> [[Tag system]] https://esolangs.org/w/index.php?diff=154588&oldid=154573 * Stkptr * (+17) /* See also */
01:18:51 -!- ajal 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:37:47 -!- Artea has quit (Killed (ozone (No Spam))).
04:31:34 -!- Artea has joined.
04:55:55 -!- chiselfuse has quit (Remote host closed the connection).
04:56:08 -!- chiselfuse has joined.
05:00:15 -!- chiselfuse has quit (Read error: Connection reset by peer).
05:01:11 -!- chiselfuse has joined.
06:18:50 -!- ais523 has quit (Quit: quit).
06:31:06 -!- yewscion has quit (Remote host closed the connection).
06:31:11 -!- yewscion_ has joined.
07:16:07 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
07:17:50 -!- Lord_of_Life has joined.
07:32:11 -!- Hoolootwo has quit (Quit: ZNC 1.8.2+deb2+deb11u1 - https://znc.in).
07:43:03 -!- Hooloovoo has joined.
08:03:49 -!- Sgeo has quit (Read error: Connection reset by peer).
08:36:18 -!- Hooloovoo has quit (Ping timeout: 276 seconds).
08:49:21 -!- Hooloovoo has joined.
08:51:41 <esolangs> [[Special:Log/newusers]] create * JHSHernandez-ZBH * New user account
08:57:14 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=154589&oldid=154574 * JHSHernandez-ZBH * (+525) /* Introductions */
09:01:03 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154590&oldid=154589 * JHSHernandez-ZBH * (+62) /* Introductions */
09:04:11 <b_jonas> TODO: on 2025-04-01 set that month's password to "outside the scope of this wisdom entry"
09:12:56 <esolangs> [[Special:Log/newusers]] create * Macattacc * New user account
09:37:01 -!- tromp has joined.
09:41:15 <korvo> Hacked up a basic embedded domain-specific language for validating Sammy programs: https://gist.github.com/MostAwesomeDude/ddcd93b59f149c6d97a91c849e6a4071
09:41:31 <korvo> Gotta implement Kan extensions. Need sleep first.
09:53:33 <esolangs> [[User:JHSHernandez-ZBH/befunge98.b98]] N https://esolangs.org/w/index.php?oldid=154591 * JHSHernandez-ZBH * (+188) Created page with " ];;;;;;;;;;;;;;;;;;;;] ]@ ; ;THIS IS BEFUNGE-98; ; ; ;;;;;;;;;;;;;;;;;;;; ;'. ;[ [;T+ ;;;;;;;;;;;;;;;;;;;;;;;;,8 [B', ',S',I', ',S',I',H']* [,'E,'F,'U,'N,'G,'E,'-,9a["
09:56:26 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=154592&oldid=152731 * JHSHernandez-ZBH * (+204) /* Tests */
10:51:56 -!- FreeFull has quit (Quit: Lost terminal).
10:54:23 <esolangs> [[Esolang:Sandbox]] https://esolangs.org/w/index.php?diff=154593&oldid=154592 * 47 * (-843) /* Tests */
12:28:46 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=154594&oldid=154590 * Macattacc * (+103)
12:28:51 <esolangs> [[TerraScript]] N https://esolangs.org/w/index.php?oldid=154595 * Macattacc * (+2050) Created page with "This is an esolang inspired by the game Terraria. The language itself uses the names of items from the game. This does NOT include blocks and furniture; strangely, it still includes torches and their variants. This DOES include weapons, torches, accessories and co
12:47:21 <esolangs> [[STRTRAN]] https://esolangs.org/w/index.php?diff=154596&oldid=147442 * Froginstarch * (-11) /* IO */
12:49:30 <esolangs> [[STRTRAN]] https://esolangs.org/w/index.php?diff=154597&oldid=154596 * Froginstarch * (+61) /* IO */
12:49:53 <esolangs> [[STRTRAN]] https://esolangs.org/w/index.php?diff=154598&oldid=154597 * Froginstarch * (+0) /* IO */
12:50:15 <esolangs> [[STRTRAN]] https://esolangs.org/w/index.php?diff=154599&oldid=154598 * Froginstarch * (+1) /* IO */
13:30:07 -!- tromp has quit (Ping timeout: 252 seconds).
13:58:42 -!- amby has joined.
14:05:50 -!- tromp has joined.
14:20:38 -!- craigo has joined.
14:30:17 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154600&oldid=154594 * Aadenboy * (+4) clarification
15:11:48 -!- wib_jonas has joined.
15:38:42 <esolangs> [[Funge-98]] https://esolangs.org/w/index.php?diff=154601&oldid=122690 * Tomrs123 2 * (+0) spelling error!!
15:51:20 <esolangs> [[User:JunebugEsolanging/Sandbox]] N https://esolangs.org/w/index.php?oldid=154602 * JunebugEsolanging * (+4209) Testing
15:53:28 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154603&oldid=154602 * JunebugEsolanging * (+19)
15:55:13 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154604&oldid=154603 * JunebugEsolanging * (+52) /* Example Programs */
15:55:36 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154605&oldid=154604 * JunebugEsolanging * (-52) /* Example Programs */
15:56:00 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154606&oldid=154605 * JunebugEsolanging * (+19) /* Example Programs */
15:56:45 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154607&oldid=154606 * JunebugEsolanging * (+38) /* Example Programs */
15:57:06 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154608&oldid=154607 * JunebugEsolanging * (-38) /* Example Programs */
15:57:34 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154609&oldid=154608 * JunebugEsolanging * (+6) /* Example Programs */
16:03:07 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154610&oldid=154609 * JunebugEsolanging * (+23)
16:13:33 -!- Sgeo has joined.
17:14:02 -!- wib_jonas has quit (Quit: Client closed).
18:19:40 <esolangs> [[Transfinite program]] https://esolangs.org/w/index.php?diff=154611&oldid=87920 * Stkptr * (+941) /* Uncountably infinite programs */
18:59:58 <esolangs> [[Turing machine]] https://esolangs.org/w/index.php?diff=154612&oldid=127502 * Stkptr * (+1702)
19:10:25 <esolangs> [[Total function]] N https://esolangs.org/w/index.php?oldid=154613 * Stkptr * (+1386) Created page with "A '''total function''' is a function which is defined for all inputs, that is, no input to the function will ever result in the answer ''undefined''. In the context of computer science, machines which halt (or equivalent definitions) on a given input are considere
19:10:45 <esolangs> [[Partial function]] N https://esolangs.org/w/index.php?oldid=154614 * Stkptr * (+28) Redirected page to [[Total function]]
19:11:16 <esolangs> [[Partial]] N https://esolangs.org/w/index.php?oldid=154615 * Stkptr * (+30) Redirected page to [[Partial function]]
19:11:34 <esolangs> [[Total]] N https://esolangs.org/w/index.php?oldid=154616 * Stkptr * (+28) Redirected page to [[Total function]]
19:33:21 -!- FreeFull has joined.
19:39:30 <esolangs> [[Total function]] https://esolangs.org/w/index.php?diff=154617&oldid=154613 * Stkptr * (+62)
19:40:30 <esolangs> [[Diophantine equation]] M https://esolangs.org/w/index.php?diff=154618&oldid=154527 * Stkptr * (+4) /* As a model of computation */
19:59:26 <esolangs> [[Computable]] M https://esolangs.org/w/index.php?diff=154619&oldid=153819 * Stkptr * (+172) /* Non-examples */
20:08:28 <esolangs> [[Transfinite program]] https://esolangs.org/w/index.php?diff=154620&oldid=154611 * Stkptr * (+1313)
20:12:00 <esolangs> [[Sammy]] M https://esolangs.org/w/index.php?diff=154621&oldid=154198 * Corbin * (+181) /* References */ Cruttwell's encoding will be important.
20:14:12 <esolangs> [[Turing machine]] M https://esolangs.org/w/index.php?diff=154622&oldid=154612 * Stkptr * (+49)
20:21:43 <esolangs> [[Clockwise Turing machine]] https://esolangs.org/w/index.php?diff=154623&oldid=154571 * Stkptr * (+110)
20:23:59 <esolangs> [[User:JunebugEsolanging/Sandbox]] https://esolangs.org/w/index.php?diff=154624&oldid=154610 * JunebugEsolanging * (-108) /* Things in Switchy! */
20:53:47 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154625&oldid=154577 * Buckets * (+12)
20:54:26 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154626&oldid=154579 * Buckets * (+11)
20:54:33 <esolangs> [[Aquas]] N https://esolangs.org/w/index.php?oldid=154627 * Buckets * (+1581) Created page with "Aquas is an Esoteric programming language created by [[User:Buckets]] in 2021. {| class="wikitable" |- ! Commands !! Instructions |- | Input || Gets an input and Sets it to the Current Variable. |- | {}OP#m || If the Input is The option equalling to The Curly braces with
20:57:26 <esolangs> [[User:GreenThePear/Sandbox]] N https://esolangs.org/w/index.php?oldid=154628 * GreenThePear * (+4965) rgbl first draft
20:58:19 -!- dawids_ has joined.
21:00:04 -!- dawids_ has quit (Remote host closed the connection).
21:04:47 -!- dawids_ has joined.
21:47:44 <esolangs> [[Unsmiley]] N https://esolangs.org/w/index.php?oldid=154629 * Rdococ * (+1077) Silly idea
21:48:16 <esolangs> [[User:Rdococ]] M https://esolangs.org/w/index.php?diff=154630&oldid=154369 * Rdococ * (+68)
22:15:04 -!- dawids_ has quit (Ping timeout: 265 seconds).
22:49:29 <korvo> Bleh, still stuck on Kan extensions, and out of time for now, but I bumped that paste with a better API: https://gist.github.com/MostAwesomeDude/ddcd93b59f149c6d97a91c849e6a4071
22:50:58 <korvo> From the "Counting Finite Categories" slides, there's a way to encode finite categories as matrices of natural numbers, and so we can reuse a lot of standard graph-theory techniques here. (Technically a category is a hypergraph with path equivalences, but this only encodes hypergraphs and we have to promise to preserve equivalent paths.)
22:59:23 <korvo> But I think that Sammy constructions are computable. Just arduous and possibly memory-intensive.
23:16:32 <esolangs> [[Sammy]] https://esolangs.org/w/index.php?diff=154631&oldid=154621 * Corbin * (+571) Still unusable, but implemented about as much as any other underspecified language.
23:17:36 -!- craigo has quit (Quit: Leaving).
00:27:52 -!- zzo38 has quit (Quit: Shut down temporarily for cleaning).
01:15:15 <b_jonas> http://sigbovik.org/2025/ posted
01:16:02 -!- 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:33:56 -!- Guest46 has joined.
01:35:16 -!- zzo38 has joined.
01:47:52 -!- zzo38 has quit (Killed (NickServ (GHOST command used by zzo38_))).
01:48:03 -!- zzo38 has joined.
02:06:54 -!- Guest46 has quit (Ping timeout: 240 seconds).
02:18:15 <zzo38> A variant of DER can be "Multi-DER", which means any number of DER files concatenated together. Converting Multi-DER to BER is easy by adding a constant prefix and suffix; converting Multi-DER to DER is easy by adding a prefix (no suffix) with the length of the data (in bytes). In neither case is it necessary to parse or modify the existing data at all.
02:19:01 <zzo38> Converting the JSONL, NDJSON, record-separator-delimited JSON, concatenated JSON, etc into ordinary JSON is a bit more complicated (especially concatenated JSON) because it will be necessary to add the commas.
03:12:19 -!- tromp has quit (Ping timeout: 260 seconds).
03:34:12 <esolangs> [[SCOOP]] https://esolangs.org/w/index.php?diff=154632&oldid=153613 * Anthonykozar * (-138) /* Programs */ Adding link to linked list example.
04:06:18 -!- sprock has quit (Ping timeout: 244 seconds).
04:13:20 -!- sprock has joined.
04:21:38 -!- fungot has quit (Ping timeout: 245 seconds).
05:53:41 <esolangs> [[BF instruction minimalization]] M https://esolangs.org/w/index.php?diff=154633&oldid=145938 * Xyzzy * (+609)
07:15:55 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
07:19:25 -!- Lord_of_Life has joined.
07:25:22 -!- strerror has joined.
07:33:33 <strerror> Exploit with an esolang: https://googleprojectzero.blogspot.com/2021/12/a-deep-dive-into-nso-zero-click.html
07:34:06 <strerror> “JBIG2 doesn't have scripting capabilities, but when combined with a vulnerability, it does have the ability to emulate circuits of arbitrary logic gates operating on arbitrary memory. So why not just use that to build your own computer architecture and script that!? That's exactly what this exploit does.”
07:48:24 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=154634&oldid=154585 * I am islptng * (+2)
08:44:54 -!- sprout has quit (Ping timeout: 246 seconds).
08:52:36 -!- Sgeo has quit (Read error: Connection reset by peer).
09:06:17 -!- sprout has joined.
09:27:08 -!- tromp has joined.
10:31:18 <b_jonas> strerror: yep, that's a naturally occurring esolang
11:22:26 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=154635&oldid=154593 * JHSHernandez-ZBH * (+221)
11:22:47 <esolangs> [[Esolang:Sandbox]] M https://esolangs.org/w/index.php?diff=154636&oldid=154635 * JHSHernandez-ZBH * (+11) /* befunge */
11:24:18 <esolangs> [[User:JHSHernandez-ZBH]] N https://esolangs.org/w/index.php?oldid=154637 * JHSHernandez-ZBH * (+214) Created page with "<code><pre> ];;;;;;;;;;;;;;;;;;;;] ]@ ; ;THIS IS BIBILTU-14; ; ; ;;;;;;;;;;;;;;;;;;;; ;'. ;[ [;T+ ;;;;;;;;;;;;;;;;;;;;;;;;,4 [B', ',S',I', ',S',I',H']* [,'I,'B,'I,'L,'T,'U,'-,1a[ </pre></code>"
11:38:50 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=154638&oldid=154553 * PrySigneToFry * (+660)
11:40:14 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=154639&oldid=154554 * PrySigneToFry * (+39)
12:16:22 -!- amby has joined.
12:20:17 <esolangs> [[Special:Log/newusers]] create * Tpaefawzen * New user account
12:25:39 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=154640&oldid=154600 * Tpaefawzen * (+573) Tpaefawzen
12:29:23 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:35:56 -!- craigo has joined.
12:45:49 <esolangs> [[257-wrap brainfuck]] N https://esolangs.org/w/index.php?oldid=154641 * Tpaefawzen * (+654) Created page with "'''257-wrap brainfuck''' is a [[brainfuck]] derivative published by Code Golf StackExchange user [https://codegolf.stackexchange.com/users/76323/l4m2 l4m2] in March 2022. == Overview == L4m2 criticized that usual brainfuck language (who uses 256-value as d
12:51:06 <esolangs> [[User:Tpaefawzen]] N https://esolangs.org/w/index.php?oldid=154642 * Tpaefawzen * (+164) Profile
13:51:15 -!- tromp has joined.
15:38:49 <esolangs> [[Reduced Lambda Calculus]] N https://esolangs.org/w/index.php?oldid=154643 * Yetyetty1234567890 * (+313) Created page with "--- REDUCED LAMBDA CALCULUS --- 0 1 ( 0. ( _ _ ) ) _ ( 1. ( _ _ ) ) _ 0 1 ( 0. _ ) _ ( 1. _ ) _ # just let it operate on both v ( _ ) _ # you only need 1 variable bc of deterministic { ( _ ) _ == ( v. _ ) _ } thats it if you think rea
15:38:49 <perlbot> esolangs: Error: DBD::SQLite::db do failed: database or disk is full at ./plugins/karma_modify.pm line 68.
15:39:06 <esolangs> perlbot: The error "DBD::SQLite::db do failed: database or disk is full" means your SQLite database is overflowing. Here's a quick fix: 1. **Check Disk Space:** Ensure you have enough free disk space. 2. **Delete Unnecessary Data:** Remove old or unused data from your database. 3. **Optimize Database:** Consider using indexes or other database optimization...
15:39:06 <esolangs> techniques. 4. **Increase Database Size:** If you need more space, consider increasing the size of your database file. If the issue persists, provide more context about your database setup and the code around line 68.
15:39:06 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:39:27 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:39:27 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:39:27 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:39:49 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:39:49 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:39:49 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:40:10 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:40:10 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:40:10 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:40:31 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:40:31 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:40:32 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:40:53 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:40:53 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:40:53 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:41:14 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:41:14 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:41:14 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:41:36 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:41:36 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:41:36 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:41:57 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:41:57 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:41:57 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:42:19 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:42:19 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:42:19 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:42:40 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:42:40 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:42:40 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:43:01 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:43:01 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:43:02 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:43:23 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:43:23 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:43:23 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:43:44 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:43:44 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:43:45 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:44:06 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:44:06 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:44:06 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:44:27 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:44:27 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:44:28 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:44:49 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:44:49 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:44:49 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:44:57 -!- ChanServ has set channel mode: +o fizzie.
15:45:10 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:45:10 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:45:10 <perlbot> esolangs: Error: DBI connect('dbname=perlbot;host=192.168.32.1','perlbot',...) failed: connection to server at "192.168.32.1", port 5432 failed: Connection refused Is the server running on that host and accepting TCP/IP connections? at ./plugins/factoids.pm line 84.
15:45:11 -!- fizzie has set channel mode: +q perlbot!*@*.
15:45:32 <esolangs> perlbot: The error message indicates that your Perl bot is unable to connect to the PostgreSQL database server at the specified address and port. Here's a quick troubleshooting checklist: 1. **Verify PostgreSQL Server:** Ensure the PostgreSQL server is running on the host `192.168.32.1`. 2. **Check Port:** Confirm that port 5432 is open and accessible. 3....
15:45:32 <esolangs> **Database Credentials:** Double-check that the database credentials (`dbname`, `host`, `user`, `password`) are correct. 4. **Firewall:** Check if your firewall is blocking the connection. If the server is running and the port is open, the issue might be with the database credentials or the connection string.
15:45:52 <fizzie> A little impolite, but the fastest thing I could think of, since I think all the easy ways to stop esolangs from replying would cause it to produce an error message.
15:47:01 <fizzie> (I wonder if this is the first recorded *accidental* botloop on the channel.)
15:47:03 -!- errilaz_ has quit (Ping timeout: 245 seconds).
15:48:42 <fizzie> I'd unquiet it now but I'm worried the next wiki-recent-changes update would start it again (that seems to have been the original trigger) so I'll leave it like this until I have some free time to put in something more fine-tuned.
15:49:33 -!- wib_jonas has joined.
15:51:33 <wib_jonas> fizzie: the problem is that the first line says "database or disk is full"
15:52:27 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:53:16 <wib_jonas> simcop2387: ^ you may want to check that out
15:53:44 <wib_jonas> also I'm sorry, I asked to bring perlbot here so that's partly my fault
15:55:29 <wib_jonas> fizzie: it doesn't look to me like a wiki change was the trigger, but it could be
15:56:09 <wib_jonas> I should test it outside the channel
15:57:17 <fizzie> From the perspective of my client, there was a note about the creation of the page "Reduced Lambda Calculus" at 15:38:49, and the first disk-full response from perlbot on the same second, that's all I can say.
15:57:22 <wib_jonas> fizzie: I think there are two problems here,
15:58:02 <wib_jonas> one is that perlbot has some kind of database error and responds to any ordinary query with that, so I recommend you to keep perlbot quieted in this channel for now
15:58:19 <fizzie> That one is also different in that it's from karma_modify.pm, rather than factoids.pm like the others.
15:58:42 <wib_jonas> but the other problem is that perlbot usually responds when addressed, and so does esolangs, and something made perlbot reply to esolangs which resulted in a botloop, and I don't understand what started it\
15:58:48 <fizzie> So I expect it might've been due to the `--` in the wiki change to begin with.
16:00:02 <wib_jonas> so when there's no database error, would esolangs triggering perlbot's karma thing result in a loop?
16:00:52 -!- fizzie has set channel mode: -o fizzie.
16:01:33 <fizzie> Botloops are very on-brand here, so I think it was rather nice to see one again.
16:02:14 <fizzie> Also the inference speed of the LLM made this one run kinda slowly.
16:03:46 <wib_jonas> yeah, but a faster bot like jconn could print a double-hyphen just as much. I know jconn is dead for good, and I'm glad, but there could be other bots like that
16:05:05 <wib_jonas> fizzie: shouldn't esolang add some prefix to its lines to avoid triggering bots though, like a \x0F ?
16:06:59 <wib_jonas> I mean jevalbot should too, and I should remember this the next time I write a bot that can emit PRIVMSG
16:07:52 <fizzie> It probably should, and I don't even have the "it's written in Befunge, that's too hard" excuse this case.
16:13:27 -!- tromp has joined.
16:19:49 -!- wib_jonas has quit (Quit: Client closed).
16:51:19 -!- nitrix has quit (Ping timeout: 260 seconds).
16:58:09 -!- nitrix has joined.
17:17:35 -!- Sgeo has joined.
17:29:52 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:39:29 -!- tromp has joined.
18:02:35 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:18:46 -!- tromp has joined.
18:22:48 <korvo> esolangs: What is Kolmogorov complexity? Explain for a layperson.
18:24:03 <esolangs> korvo: Imagine you have a piece of text. Kolmogorov complexity is a way to measure how much information is needed to describe that text. It's like asking, "How many steps would it take to write down this text?" The smaller the number of steps, the lower the complexity. Think of it like this: a simple text like "Hello" has low complexity, while a complex...
18:24:03 <esolangs> text like a novel has high complexity.
18:24:38 <korvo> esolangs: What is Kolmogorov complexity? Explain for a theoretical computer scientist.
18:25:53 <esolangs> korvo: Kolmogorov complexity measures the minimal amount of information needed to describe a given object. It's essentially the length of the shortest program that can generate that object. A high Kolmogorov complexity implies a complex object, while a low complexity suggests a simple, easily describable object. For a theoretical computer scientist, it's...
18:25:53 <esolangs> a fundamental concept in algorithmic information theory, used to analyze the inherent complexity of data and algorithms.
18:35:41 <korvo> esolangs: What is Kolmogorov complexity? Explain for a software developer.
18:36:58 <esolangs> korvo: Kolmogorov complexity is a measure of how much information is needed to describe a piece of data. Imagine you have a program that can describe a piece of data. The complexity of that data is how much information you need to write the program to describe it. For example, a simple string like "abababababababababababababababababababab" has low...
18:36:58 <esolangs> complexity because it's easy to describe with a short program. A complex data structure like a tree would have higher complexity.
18:37:22 <korvo> esolangs: What is Kolmogorov complexity? Explain for a programming-language designer/theorist/implementor.
18:38:35 <korvo> I wonder if "explain" is causing RAG to return less useful context, or causing the model to de-emphasize the context.
18:38:40 <esolangs> korvo: Kolmogorov complexity measures the minimal amount of information needed to describe a given object. For a programming language designer, it's a crucial concept for understanding the inherent "complexity" of a program's structure. A low Kolmogorov complexity suggests a program is concise and easily describable, while a high complexity indicates a...
18:38:40 <esolangs> program is intricate and difficult to represent. This can inform design choices, like optimizing for efficient code generation or understanding the inherent limitations of a language.
18:38:56 <korvo> esolangs: What is Kolmogorov complexity?
18:40:11 <esolangs> korvo: Kolmogorov complexity measures the minimum number of bits needed to describe a given object. It's a way to quantify how "computable" an object is. A simple example: the string "abababababababababababababababababababab" has low complexity because it can be generated by a simple loop. The more complex the object, the more bits are needed to describe...
18:41:12 <korvo> Huh, RAG must just not be returning much. I'm done for now; thanks for humoring me.
18:49:53 <esolangs> [[Pljic++!]] N https://esolangs.org/w/index.php?oldid=154644 * Mmmph! * (+1678) Created page with "'''Pljic++!''' is a programming language created by [[User:Mmmph!]] as another thing to do. == Overview == Pljic++! code is executed two characters at a time. The first Character of a command is the command type, and the second is the command data, which is represented
18:50:25 <esolangs> [[User:Mmmph!]] https://esolangs.org/w/index.php?diff=154645&oldid=126257 * Mmmph! * (+19)
18:57:44 <esolangs> [[User:Mmmph!]] https://esolangs.org/w/index.php?diff=154646&oldid=154645 * Mmmph! * (+30) a clue
19:12:25 <sprout> the matrix is glitching
19:26:05 <esolangs> [[Pljic++!]] https://esolangs.org/w/index.php?diff=154647&oldid=154644 * Mmmph! * (+46) subtraction is now definitely possible
19:27:20 <esolangs> [[Pljic++!]] M https://esolangs.org/w/index.php?diff=154648&oldid=154647 * Mmmph! * (+5) specification of the increment amount
19:36:57 <esolangs> [[Linear bounded automata]] N https://esolangs.org/w/index.php?oldid=154649 * Stkptr * (+38) Redirected page to [[Linear bounded automaton]]
19:39:24 <esolangs> [[Pushdown automata]] N https://esolangs.org/w/index.php?oldid=154650 * Stkptr * (+33) Redirected page to [[Push-down automaton]]
20:04:46 <esolangs> [[L-system]] N https://esolangs.org/w/index.php?oldid=154651 * Stkptr * (+8069) create page
20:05:27 -!- ais523 has joined.
20:05:38 <ais523> the bots managed to create a botloop on their own, I'm amazed
20:06:10 <esolangs> [[L-system]] https://esolangs.org/w/index.php?diff=154652&oldid=154651 * Stkptr * (+87) /* See also */
20:06:46 <esolangs> [[Luigi]] M https://esolangs.org/w/index.php?diff=154653&oldid=35941 * Stkptr * (-19)
20:07:20 <zzo38> I have a function ASN1_Encoder*asn1_create_encoder(FILE*) but I want to add another function that also creates a ASN1_Encoder object but with different arguments, which are the ASN1_Value structure to write into, and the class, type, and flags (whether or not to automatically sort the data). What should this function be called?
20:08:30 <esolangs> [[L-system]] M https://esolangs.org/w/index.php?diff=154654&oldid=154652 * Stkptr * (-3) /* Computational class */
20:15:18 <ais523> zzo38: the existing name makes the new function hard to name; names like asn1_encode_to_file and asn1_encode_to_value would be more symmetrical
20:16:49 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154655&oldid=154625 * Buckets * (+10)
20:17:17 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154656&oldid=154626 * Buckets * (+9)
20:17:28 <esolangs> [[XFS]] N https://esolangs.org/w/index.php?oldid=154657 * Buckets * (+1222) Created page with "{{Stub}} XFS is an Esoteric programming language created by [[User:Buckets]] in 2023. "" means 72 in this Esolang. {| class="wikitable" |- ! Commands !! Instructions |- | || 0. |- | || 4. |- | || 8. |- | || 1. |- | || 13. |- | || 9. |- | || 7. |- | || 11. |- | ||
20:18:45 <esolangs> [[XFS]] M https://esolangs.org/w/index.php?diff=154658&oldid=154657 * Buckets * (+32)
20:19:13 <esolangs> [[XFS]] M https://esolangs.org/w/index.php?diff=154659&oldid=154658 * Buckets * (+0)
20:22:53 <esolangs> [[L-system]] https://esolangs.org/w/index.php?diff=154660&oldid=154654 * Stkptr * (+732) /* Computational class */
21:11:37 <esolangs> [[L-system]] https://esolangs.org/w/index.php?diff=154661&oldid=154660 * Stkptr * (+444)
21:21:58 -!- nitrix has quit (Quit: ZNC 1.9.1 - https://znc.in).
21:23:54 -!- nitrix has joined.
21:24:57 <esolangs> [[L-system]] https://esolangs.org/w/index.php?diff=154662&oldid=154661 * Stkptr * (+1310) /* Examples */
21:32:35 -!- lynndotpy6 has quit (Quit: bye bye).
21:33:44 -!- lynndotpy6 has joined.
21:57:21 <zzo38> ais523: However, the function names starting with "asn1_encode_" are used for operating with an existing ASN1_Encoder object to encode specific values into the file.
21:59:52 -!- chiselfuse has quit (Remote host closed the connection).
22:00:05 -!- chiselfuse has joined.
22:00:31 <ais523> zzo38: ah, "asn1_start_encoding_…" then
22:01:02 <zzo38> OK, that seems like good, then.
22:08:51 -!- tromp has quit (Ping timeout: 246 seconds).
22:54:00 -!- craigo has quit (Quit: Leaving).
23:20:45 <esolangs> [[L-system]] https://esolangs.org/w/index.php?diff=154663&oldid=154662 * Stkptr * (+781) /* Examples */ Add stochastic example
23:32:12 <esolangs> [[L-system]] M https://esolangs.org/w/index.php?diff=154664&oldid=154663 * Stkptr * (+54) /* Python implementation (D2L) */ Fix D2L step function
23:46:18 <esolangs> [[User:Stkptr]] https://esolangs.org/w/index.php?diff=154665&oldid=154285 * Stkptr * (+390)
23:51:08 <esolangs> [[User:Stkptr]] https://esolangs.org/w/index.php?diff=154666&oldid=154665 * Stkptr * (+50)
00:03:39 <esolangs> [[SCOOP/Linked List]] N https://esolangs.org/w/index.php?oldid=154667 * Anthonykozar * (+4284) A SCOOP implementation of a doubly linked list type with example usage.
00:13:59 -!- nitrix has quit (Quit: ZNC 1.9.1 - https://znc.in).
00:16:21 <esolangs> [[User:Stkptr]] https://esolangs.org/w/index.php?diff=154668&oldid=154666 * Stkptr * (+134)
00:46:23 <esolangs> [[User:Stkptr]] https://esolangs.org/w/index.php?diff=154669&oldid=154668 * Stkptr * (+130)
00:48:54 <ais523> so I've been watching Claude Plays Pokémon a lot recently (although it was more interesting yesterday than today), and realised that it's actually an esolang and possibly Turing-complete
00:49:43 <ais523> as a summary of how it works, it's basically an LLM connected to a Gameboy emulator and a text editor (both of which are modified to be drivable by LLM output), together with instructions telling it to use the text editor to record its thought process in certain ways
00:50:20 <ais523> but it got me thinking – this is pretty similar to using an LLM like a Turing machine head to drive a tape, and that could be TC off relatively simple instructions
00:50:46 <ais523> (if they were simple enough the LLM would be unlikely to make a mistake, and I think you can fit a universal Turing machine into that level of complexity)
00:58:54 <ais523> note that this probably isn't a good way to design a language, which is why it's an esolang
01:00:46 -!- FreeFull has quit (Ping timeout: 244 seconds).
01:20: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).
01:29:59 <esolangs> [[L-system]] https://esolangs.org/w/index.php?diff=154670&oldid=154664 * Stkptr * (+1084) /* Definition */
02:19:28 -!- nitrix has joined.
03:23:46 -!- ais523 has quit (Ping timeout: 265 seconds).
03:31:48 -!- ais523 has joined.
05:53:09 <strerror> ais523: in the limit, if you fix one LLM and sample it with temperature 0, it'll have deterministic gadgets (that can be found by working backwards from the desired output logits)
05:54:00 <strerror> But that's just a normal turing machine with extra steps
05:59:56 <strerror> If the transformer takes the whole notepad/tape as input, then it's almost surely still TC, but it's not obvious how to prove that since the gadget sees a different input each step
06:30:05 <ais523> strerror: the transformer can't take the whole tape as input, it only has finite context
06:30:36 <ais523> Claude Plays Pokémon is trying to work around that issue with bank-switching, which is not going well
06:39:36 <strerror> ais523: well in theory a transformer takes any length input. It just has more trouble recalling any specific part of a huge input, and (more pertinently) uses more GPU memory than what Anthropic has
06:48:04 <strerror> Is it playing the same version as the Twitch Plays? Twitch didn't need that much memory (or internal consistency) to finish their game, iirc
06:49:16 <ais523> strerror: very close, it's been given a color patch that makes it easier for it to see most things on the map (but has been causing some issues due to making it harder to see cut trees)
06:50:03 <ais523> also, Twitch commenters at least seem to understand basic rules of navigation like "if you cross from one area to another, then go in the opposite direction, you normally return to the original area"
06:51:07 <ais523> navigation becomes a lot harder if you don't make that assumption, and Claude doesn't seem to, meaning that it's trying to navigate a directed rather than undirected world graph (and has trouble identifying the same place as being the same, sometimes it goes to the same place twice but thinks it's two different places)
06:54:19 <strerror> OK yes, it's playing Red. And officially sanctioned by Anthropic, that's interesting
06:56:05 <strerror> ais523: that's not too surprising as animals have special brain structures for doing that, and Claude probably doesn't
07:15:40 -!- Lord_of_Life_ has joined.
07:16:24 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
07:17:04 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:39:08 <ais523> strerror: right, my point is that the Twitch commentators had an unfair advantage (and a second unfair advantage in being able to see the screen properly)
07:41:00 <int-e> games sometimes do the opposite to mess with people... deliberately break object permanence.
07:42:29 <ais523> I think humans could adapt to a world without object permanence, but they don't live in such a world, so there's little reason to do so
07:43:00 <int-e> it's hard to imagine such a world tbh
07:44:45 <int-e> Well, as a physical reality, whee human bodies would exist.
07:47:59 <int-e> I guess we have the concept of magic that can do it. So you don't break the rules of physics everywhere, but very selectively.
07:51:20 -!- ais523 has quit (Quit: quit).
07:55:28 <esolangs> [[Special:Log/newusers]] create * Esomini * New user account
08:02:50 <esolangs> [[User:PrySigneToFry/Sandbox/Draft of EtPL]] https://esolangs.org/w/index.php?diff=154671&oldid=154560 * PrySigneToFry * (+227)
08:05:33 -!- halloy5388 has joined.
08:06:11 <strerror> Claude is on a bike now, and trying to move 1 square to reach a door, but has trouble understanding that bikes move 2 squares at a time
08:06:20 -!- halloy5388 has changed nick to ceridwen15.
08:08:36 <strerror> I wonder how human brains figure that out, it's unlikely that we had discrete parity problems in the evolutionary environment
08:11:02 -!- ceridwen15 has quit (Quit: ceridwen15).
08:11:45 <int-e> hmm, does crossing rivers count?
08:11:45 -!- ceridwen15 has joined.
08:16:09 <strerror> Perhaps. I don't know if hominids crossed large rivers though. Bonobos split off from chimpanzees because the Congo river widened, and neither species could cross it.
08:16:15 -!- ceridwen15 has quit (Client Quit).
08:16:19 <int-e> (I mean the idea that if you crossed a river twice you *probably* wasted a whole lot of energy. But you can't avoid crossing it once if you need something from the other side.)
08:16:41 <int-e> (simplified obviously)
08:17:10 -!- ceridwen15 has joined.
08:17:43 <int-e> Stuff that moves in discrete intervals though... yeah that feels highly artificial.
08:17:54 -!- ceridwen15 has quit (Client Quit).
08:18:10 <int-e> That said, the "AI" has discrete inputs so it kind of should cope ;-)
08:19:09 <int-e> strerror: Also, parity phenomena are something we learn. Like, there's this puzzle of a knight on a chessboard with two opposite corners removed, asking for a tour. And I'm sure that this actually stumps people.
08:19:35 <int-e> We do not live in a natural environment anymore.
08:22:23 <int-e> TBH this sounds better (more honest) than DeepMind cherry-picking their showcases to be things that their "AI"s are actually good at.
08:24:56 <strerror> int-e: yes, but Pokémon Red can be played by children without that kind of learning (and might perhaps be the first introduction to parity for some of them)
08:25:48 <int-e> a human will keep track of the squares they can get to and soon realize that 3/4 aren't covered.
08:26:26 <int-e> more object permanence I guess.. the game won't suddenly be different just because we've reached the same square a second time.
08:27:02 <int-e> I think we also leanr that trying random things to see if something interesting or new happens is a problem solving strategy.
08:28:32 <int-e> and I guess we do have a working memory that isn't just a hacky afterthought
09:29:23 <esolangs> [[SETANDCOUNT]] https://esolangs.org/w/index.php?diff=154672&oldid=144306 * Cycwin * (+15) /* Introduction & Syntax */
10:24:34 -!- Sgeo has quit (Read error: Connection reset by peer).
10:30:47 <esolangs> [[User:BCByte]] https://esolangs.org/w/index.php?diff=154673&oldid=147688 * BCByte * (+1)
10:33:48 -!- tromp has joined.
10:36:42 <esolangs> [[BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=154674&oldid=153609 * Int-e * (-11625) remove unfinished manual proof effort for size 15 holdouts per discussion on the parent page
11:41:55 <esolangs> [[User:PrySigneToFry/Sandbox/Draft of EtPL]] https://esolangs.org/w/index.php?diff=154675&oldid=154671 * PrySigneToFry * (+1161)
11:58:00 <esolangs> [[EternalGolf]] https://esolangs.org/w/index.php?diff=154676&oldid=152931 * PrySigneToFry * (+149)
11:59:37 <esolangs> [[User talk:None1]] https://esolangs.org/w/index.php?diff=154677&oldid=154064 * PrySigneToFry * (+929) /* Hey! */ new section
12:02:58 <esolangs> [[R + S]] N https://esolangs.org/w/index.php?oldid=154678 * C++DSUCKER * (+931) Created page with "R+S is a very simple esoteric programing language. <br> It is reversible and can't be turing complete because it cant have infinite memory. its only memory is a finite width register of some arbitrary amount of bits === Instructions: === <code>+</code> increments the
12:31:58 -!- FreeFull has joined.
13:10:49 -!- craigo has joined.
13:47:37 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=154679&oldid=154488 * PrySigneToFry * (+183)
13:49:18 <esolangs> [[FunnyLang]] N https://esolangs.org/w/index.php?oldid=154680 * AlmostGalactic * (+8190) Created page with "= FunnyLang = '''Note''': This language is heavily inspired by [https://gitlab.com/tsoding/porth Porth] by Tsoding. FunnyLang is a simple, stack-based, interpreted language implemented in Python. It uses postfix (Reverse Polish) notation for operations and su
13:52:29 <esolangs> [[Brainfuck]] https://esolangs.org/w/index.php?diff=154681&oldid=123532 * PrySigneToFry * (+155)
14:36:01 <esolangs> [[FunnyLang]] https://esolangs.org/w/index.php?diff=154682&oldid=154680 * AlmostGalactic * (-353) /* FunnyLang */
14:52:16 <esolangs> [[SETANDCOUNT]] https://esolangs.org/w/index.php?diff=154683&oldid=154672 * Cycwin * (+126)
14:54:00 <esolangs> [[SETANDCOUNT]] https://esolangs.org/w/index.php?diff=154684&oldid=154683 * Cycwin * (+28) /* Some examples */
15:38:21 <korvo> int-e, strerror: Technically we live in a world without object permanence; large objects merely tend to have inertia as a matter of statistics.
15:40:09 <int-e> I'm using it as a cognitive concept in this context
15:41:23 <int-e> so less about how the world functions and more about how we model it and form expectations about it
15:54:23 <korvo> Sure. But, like, we can be misled in both directions. Stage magicians make a career out of fooling people into thinking that an object has not moved.
15:57:07 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:57:58 <korvo> I dunno. It's an old discussion in neuroscience. Another fun example is when a cat comes into a house with two doors X and Y; the cat crosses X, crosses Y, goes *around the house*, and crosses X again. They look around as if they expected to be somewhere new. Are they being stupid or thinking in 4D?
16:02:15 <korvo> I really liked the video game Antichamber, which glues together a bunch of 3D rooms with a 4D topology. Objects are permanent, but there are many situations where an object's visibility is unintuitive due to 4D effects.
16:07:59 <esolangs> [[Special:Log/newusers]] create * Esdraslov * New user account
16:13:31 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154685&oldid=154640 * Esdraslov * (+176)
16:14:14 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=154686&oldid=154685 * Esdraslov * (+8)
16:14:18 <korvo> strerror: You might be interested in the Maupertuisian approach to learning, where a learner is merely trying to minimize the Maupertuis action arising from comparing observations of reality to its predictions. At human scales, object permanence is just a description which lines up with statistics and thus has low action.
16:27:20 -!- chiselfuse has quit (Read error: Connection reset by peer).
16:27:40 -!- chiselfuse has joined.
16:30:35 <int-e> korvo: I'm not trying to claim that object permanence is totally accurate. I even thought of (but didn't mention) magicians and how they play around with it before you brought them up.
16:33:16 <korvo> int-e: No worries. I'm not arguing against you, just adding nuance. I thought it was an interesting conversation.
16:33:19 <int-e> Hmm, funny. I've played Antichamber. I thought of it as a portal-based game like Descent and didn't really think about the topology beyond that.
16:33:41 <int-e> korvo: Ah, it's the thing where IRC doesn't carry tone.
16:34:18 <korvo> Ha! That's quite interesting; I never thought of its relation to Portal before!
16:35:33 <int-e> It was a bit confusing to navigate. (Portals in Descent and generally in games (mostly 3d but you can do this in 2d too): levels were a bunch of cubes, which had coordinates, and each face would link to the next cube. So you could completely violate physics too.)
16:35:49 <int-e> Portal the game was novel in that it made it into a game mechanic.
16:36:32 <korvo> Ah, I see. So myhouse.wad would be another portal-based game, even though the goal is explicitly to introduce a non-Euclidean geometry and use it for narrative.
16:37:16 <int-e> IIRC Antichamber *mostly* adhered to the rule that going back where you came from would return you to where you came from... though I seem to recall a few exceptions? It's been a while.
16:40:20 <int-e> Hmm I should say "cubes" because the faces didn't have to be squares nor be orthogonal.
16:43:21 <int-e> In Antichamber the thing I enjoyed most was the various ways to fill levels with cubes. I think I crashed the game a couple of times too :-) (I definitely made the GPU suffer)
16:43:37 -!- tromp has joined.
16:46:58 <korvo> I don't think I ever built a healthy relationship with the cubes. I only really learned the speedrunning techniques for them, and any% skips most of the game.
16:47:53 <int-e> Hah. I've never looked into speedruns for Antichamber.
16:48:54 <korvo> It will ruin your respect for some of the puzzles. Speedrunners basically never climb the tower, even in the All Stickers category.
16:49:45 <korvo> Also, just like in Valve's Source games, Antichamber has some fun cube-climbing techniques; once the cube gun's warmed up, it can be used to traverse rooms in arbitrary paths.
16:49:55 <int-e> Hmm. for the most part the puzzles are only interesting up to the point where you can get arbitrary many cubes.
16:51:20 <int-e> In any case, speaking generically... speedrunning games and playing them normally tend to be very different things, I'm used to that. :)
16:53:29 <int-e> I've seen Portal speedruns, for example. 4 or so normal levels (though amazingly fast, thowing boxes instead of walking and placing them and such things) and then they go out of bounds... hilarious. Oh also bunny-hopping backwards because for some reason that's faster than going forwards.
16:55:46 <int-e> And I guess the craziest thing is how they beat GLaDOS... somehow keeping a portal open to a room with turrets, so that the turret shoots at them while they're running towards the boss, hitting it three times which the game counts for releasing the three cores...
16:56:20 <int-e> So... yeah I'd expect crazy tricks that are utterly unlike normal gameplay. :)
16:56:40 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=154687&oldid=154679 * 47 * (-92) people can read the dang infobox
16:57:33 <korvo> I don't have any videos of myself running it, but any% involves glitching into the end puzzle almost immediately, usually skipping at least one upgrade, and then executing the end of the game. The PC version is sensitive to window-resize lag, which can be used to clip through doors.
16:58:00 <int-e> that sounds about right
17:01:54 <korvo> Antichamber is one of the rare games where the developer actually has a positive opinion of us, which is why I'm so enthused about it. A lot of indie games are cute and fun, but this one also has an in-game timer and a developer who tells us that it's okay to not use the in-game timer.
17:06:21 <int-e> Is that really so rare? I mean speedrunners tend to be quite enthusiastic about the games the play, so as long as the glitches are rare enough that they won't affect casual players... I
17:06:40 <int-e> 've seen quite a few developers who will not address those.
17:07:29 <esolangs> [[!lyriclydemoteestablishcommunism!]] M https://esolangs.org/w/index.php?diff=154688&oldid=154687 * Corbin * (+15) Trivial complexity class.
17:08:49 <int-e> I guess my sample is biased because a lot of it comes from IGN's "Devs React to Speedruns" series.
17:09:20 <korvo> I think it depends on the nature of the bug and the ease of patching. In Horizon (both of 'em) and the rebooted Sypro trilogy, both using some Unreal/Unity-style world-builder, there's quite a few out-of-bounds that they won't ever fix. But they did fix infinite jumping in Horizon Forbidden West, which was a frame-perfect animation bug.
17:10:40 <korvo> I get really bad vertigo from going OoB, so learning the Forbidden West OoB wasn't fun. It saves a minute but involves swimming in glitched water through a hall of mirrors above a lake of lava.
17:13:10 <esolangs> [[CDE2+]] N https://esolangs.org/w/index.php?oldid=154689 * Esdraslov * (+2490) Created page with "'''CDE2+''' is an esolang by Esdraslov == Commands == In CDE2+, commands parameters are separated by a T and a command ends on a E. {| class="wikitable" !Command !Action |- | style="text-align:center"|<code>MV</code> |Moves the value in parameter 1 to the cell specifie
17:16:24 <esolangs> [[CDE2+]] https://esolangs.org/w/index.php?diff=154690&oldid=154689 * Esdraslov * (+24)
17:33:34 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=154691&oldid=154688 * 47 * (+17)
17:52:47 <esolangs> [[Talk:BitChanger Busy beaver]] M https://esolangs.org/w/index.php?diff=154692&oldid=154504 * Stkptr * (+45)
17:55:16 <esolangs> [[Talk:Reversible Brainfuck]] https://esolangs.org/w/index.php?diff=154693&oldid=154470 * Stkptr * (+40)
17:56:45 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:56:58 <esolangs> [[Talk:Braindrunk]] M https://esolangs.org/w/index.php?diff=154694&oldid=154363 * Stkptr * (+99)
18:19:05 -!- tromp has joined.
18:35:53 -!- chiselfuse has quit (Remote host closed the connection).
18:36:11 -!- chiselfuse has joined.
18:38:06 -!- chiselfuse has quit (Remote host closed the connection).
18:41:12 -!- chiselfuse has joined.
18:59:57 -!- Sgeo has joined.
19:53:32 <esolangs> [[```]] https://esolangs.org/w/index.php?diff=154695&oldid=106927 * Kaveh Yousefi * (+637) Introduced an examples section comprehending three incipial members, these constituting a repeating cat program, a truth-machine, and an instruction skipper.
19:54:37 <esolangs> [[```]] https://esolangs.org/w/index.php?diff=154696&oldid=154695 * Kaveh Yousefi * (+177) Added a hyperlink to my implementation of the ``` programming language on GitHub and altered the Unimplemented category tag to Implemented.
19:54:39 <esolangs> [[CDE2+]] M https://esolangs.org/w/index.php?diff=154697&oldid=154690 * Esdraslov * (+107)
19:57:16 -!- ais523 has joined.
20:34:02 <esolangs> [[Unsmiley]] https://esolangs.org/w/index.php?diff=154698&oldid=154629 * Rdococ * (+446) Make it theoretically implementable
20:39:16 <esolangs> [[SCOOP]] https://esolangs.org/w/index.php?diff=154699&oldid=154632 * Anthonykozar * (+8) Adding template WIP.
20:40:02 <esolangs> [[Unsmiley]] M https://esolangs.org/w/index.php?diff=154700&oldid=154698 * Rdococ * (-12) /* Semantics */
20:40:24 <esolangs> [[Unsmiley]] M https://esolangs.org/w/index.php?diff=154701&oldid=154700 * Rdococ * (-2) /* Ruleset */ promote to full section
20:50:10 <korvo> ais523: Gotta catch a bus, but I hacked out the background parts of that blog post. Everything so far is hopefully uncontroversial: https://gist.github.com/MostAwesomeDude/32244043b6b2cea55693a04f286bf1ec
20:52:46 <ais523> I think you might be using "quotient" incorrectly – you are quotienting by the equivalence relation implied by a subset of algorithms, not by the algorithms themselves (which are equivalence classes) – and you seem to be applying that relationship to subprograms too, without explicitly stating that
20:54:51 <ais523> also you haven't defined what notion of equivalence algorithms use, which I think is the most complicated / subtle part of the post
20:55:14 <ais523> it isn't function equivalence because otherwise there would be no difference between an algorithm and a function
20:55:45 <ais523> I think it might be intended to be intentionally open, but in that case you will need to place some constraints on it (e.g. that it is a subset of function equivalence)
20:56:27 -!- FreeFull has quit.
20:56:55 <ais523> I used to work at a university, and our CS theory seminars worked like this: someone would present the work they were working on, spend 10 minutes presenting the definitions, then we'd spend the other 50 mintues discussing the definitions and whether they were correct, and never reach the rest of the research
20:57:10 <ais523> and this seems like it might have been genuinely more valuable than using the seminar time as intended
20:57:41 <ais523> CS results are often fairly easy to reproduce if you know what definitions are being used, and in particular, the set of definitions that are relevant
21:15:55 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154702&oldid=154319 * Stkptr * (+9138) /* Summary */ Literature dump
21:16:14 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154703&oldid=154702 * Stkptr * (-1233) Remove part of head
21:41:40 <esolangs> [[FunnyLang]] https://esolangs.org/w/index.php?diff=154704&oldid=154682 * Stkptr * (+79)
21:47:13 <esolangs> [[CDE2+]] https://esolangs.org/w/index.php?diff=154705&oldid=154697 * Stkptr * (+163)
21:48:52 <esolangs> [[HeXPlik]] N https://esolangs.org/w/index.php?oldid=154706 * Esdraslov * (+2817) Created page with "'''HeXPlik''' is (kind of) based on [[Befunge]] and made by [[User:Esdraslov]] == Commands == '''HeXPlik''' is cell-based, and the cell pointer moves to the next cell everytime a write action is made. Please note that any <code>...</code> should be replaced. '''HeX
21:52:53 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154707&oldid=154655 * Buckets * (+12)
21:53:18 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154708&oldid=154656 * Buckets * (+11)
21:53:34 <esolangs> [[Zypp!]] N https://esolangs.org/w/index.php?oldid=154709 * Buckets * (+784) Created page with "Zypp! Is an Esoteric programming language created by [[User:Buckets]] in 2022. {| class="wikitable" |- ! Commands !! Instructions |- | 1A.B. || Replace all Instances of A to B. |- | 2C. || Create a cell C. |- | 3D. || Go to Cell D. |- | 4E. || Delete Cell E. |- | 5H.I.J.
21:53:58 <esolangs> [[Zypp!]] M https://esolangs.org/w/index.php?diff=154710&oldid=154709 * Buckets * (+3)
22:01:28 <korvo> ais523: Ah, that's fair. I guess I should take a completely different approach since I want to talk to programmers, not to people who understand CS.
22:01:36 <korvo> And yes, all the words are incorrect.
22:05:42 <esolangs> [[```]] https://esolangs.org/w/index.php?diff=154711&oldid=154696 * Kaveh Yousefi * (+3050) Supplemented information concerning the architecture.
22:07:17 <esolangs> [[```]] M https://esolangs.org/w/index.php?diff=154712&oldid=154711 * Kaveh Yousefi * (+15) Rectified the anchor references in the memory layout.
22:25:51 -!- FreeFull has joined.
22:26:32 <korvo> ais523: Actually, changed my mind and deleted it.
23:32:37 -!- FreeFull has quit.
23:38:26 -!- FreeFull has joined.
00:01:37 <esolangs> [[```]] M https://esolangs.org/w/index.php?diff=154713&oldid=154712 * Kaveh Yousefi * (+1) Amended an orthographic mistake.
00:23:48 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
01:16:11 -!- FreeFull has quit.
01:30:12 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154714&oldid=154703 * Stkptr * (+1344) /* Summary */
01:38:45 <esolangs> [[Special:Log/newusers]] create * Shazun bhasfu * New user account
01:46:19 <esolangs> [[SECIAEQBNJMPDIFZR]] N https://esolangs.org/w/index.php?oldid=154715 * Esdraslov * (+2101) Created page with "SECIAEQBNJMPDIFZR (SEt C to a If A is EQuals to B aNd JuMP to D if b is ZeRo) is a [[OISC]] by [[User:Esdraslov]]. == How to code == === Printing === We need the usage of some variables like <code>IOI</code> (Input Output Index) to make our code better an
02:05:04 -!- op_4 has quit (Remote host closed the connection).
02:05:35 -!- op_4 has joined.
02:37:10 -!- craigo has quit (Quit: Leaving).
03:46:29 -!- zzo38 has quit (Ping timeout: 248 seconds).
03:52:09 -!- ais523 has quit (Ping timeout: 276 seconds).
04:00:11 -!- ais523 has joined.
04:25:53 -!- tromp has joined.
04:26:02 -!- tromp has quit (Client Quit).
04:26:44 <esolangs> [[!lyriclydemoteestablishcommunism!]] https://esolangs.org/w/index.php?diff=154716&oldid=154691 * PrySigneToFry * (+222)
04:33:38 <esolangs> [[SECIAEQBNJMPDIFZR]] https://esolangs.org/w/index.php?diff=154717&oldid=154715 * Stkptr * (+47) 4 billion addresses each with 4 billion possible values is finite
04:36:22 <esolangs> [[Insanity]] https://esolangs.org/w/index.php?diff=154718&oldid=116350 * Stkptr * (+54)
04:37:21 <esolangs> [[General blindfolded arithmetic]] https://esolangs.org/w/index.php?diff=154719&oldid=154714 * Stkptr * (+89) /* Example languages */
04:39:52 <esolangs> [[Talk:Unsmiley]] N https://esolangs.org/w/index.php?oldid=154720 * Stkptr * (+285) Created page with "== Computability == Since this can arbitrarily modify its own specification, could it be [[uncomputable]]? What are the limits of its self rewriting? Could it add a command which solves the halting problem? ~~~~"
04:56:14 <esolangs> [[Snowflake]] https://esolangs.org/w/index.php?diff=154721&oldid=105725 * Ais523 * (+32) see also [[Unsmiley]]
04:56:21 <esolangs> [[Unsmiley]] https://esolangs.org/w/index.php?diff=154722&oldid=154701 * Ais523 * (+33) see also [[Snowflake]]
05:08:15 <korvo> ais523: How's this? https://gist.github.com/MostAwesomeDude/f31eff9e483a9e0223f14fb629c55755 I think it properly taunts the reader while assuring them that they don't understand what's going on.
05:10:56 <ais523> korvo: I'm not convinced BF is an A rather than a P, especially if you can't go left of the starting location
05:12:14 <korvo> ais523: It's got a lovely monoid which produces a pile of symmetries. A compiler into BF has to choose e.g. how to move values from one cell to another.
05:12:43 <ais523> korvo: oh, things like [>+<-] versus [->+<]
05:12:56 <ais523> I forgot that symmetry
05:13:24 <korvo> Yeah. Those give non-trivial automorphisms. Malbolge doesn't have anything quite so forgiving, because the automorphism has to act on the encrypted text.
05:14:01 <ais523> Thue as an F also seems like a stretch – I think you can meaningfully define the computational class of a Thue program, which seems wrong for an F
05:14:51 <ais523> err, I meant complexity class and said the wrong thing
05:15:52 <ais523> I guess my intuition is "if the language lets you define both bubble sort and merge sort, and there's a way to tell them apart, the language is not operating only on functions"
05:16:26 <ais523> in any case, I think algorithms versus programs is a continuum rather than two clear categories, depending on how much symmetry there is
05:16:58 <ais523> when compiling you can often choose options for symmetries one by one, rather than having to do it all at once
05:19:06 <korvo> Oh, all of these languages require us to write programs. The difference is that some of them promise that some programs are equivalent to others.
05:20:01 <korvo> In a Brand F language, the programmer doesn't get a choice of algorithm. A Thue author has to confront genuine non-determinism, including perhaps adversarial or nemesis runtimes. A Prolog author can rely on WAM-style evaluation order.
05:20:15 <ais523> during my PhD (and a little before) I was working with a functional hardware description language in which program equivalence was literally and concretely definable
05:21:02 <korvo> In a Brand P language, the programmer must specify any optimizations themselves, because the machine only cares about details and has no insight into its actions.
05:21:10 <ais523> I was dealing with languages that had bounded memory, and knew it – and that meant that you could in theory translate your program into a finite state machine with I/O on the transitions
05:21:38 <ais523> and the programs were equivalent if and only if those were equivalent (i.e. same I/O behaviour even if the state numbering didn't match or some states were duplicated)
05:23:01 <korvo> Nice. Sounds a lot like defunctionalization.
05:23:27 <ais523> korvo: Byzantine (demonic) Thue is not a concept I've thought about much before, except when defining Thue programs that work regardless of evaluation order in order to avoid questions about what Thue's evaluation order actually is
05:24:21 <ais523> I think most people (who know about Thue) consider its evaluation order to be either angelic nondeterminism (i.e. "the interpreter makes choices that will cause the program to work correctly, maybe by evaluating all possibilities in parallel") or entirely random
05:25:01 <ais523> I believe (but may be incorrect) that it was originally intended to be the former, and that it has generally been interpreted as the latter by people writing for or implementing the language
05:25:41 <korvo> Yeah, I got kind of ruined by that one paper introducing adversarial quicksort. Really changed my views on what we mean when we say "choose" or "random" or "non-deterministic".
05:27:19 <ais523> byzantine failures are such an interesting programming concept that feels very esoteric – although they have a fairly real-world usage, in considering how an attacker might attack a program
05:28:19 <ais523> but for, e.g., byzantine-failure-tolerant distributed systems, you have to consider that the failed node might send any possible sequence of bytes over the network, including sequences that contain, e.g., encryption keys that it doesn't know
05:30:05 <korvo> Yep. We usually handle that by saying that a value is "unguessable" if it is, in fact, guessable. Very poor terminology. But the idea is that we assume unguessable values won't be guessed. In practice, we count the bits; 256 bits is fairly unguessable today.
05:30:39 <korvo> And then any capability-theoretic statement can be extended across a network by weakening unforgeability to unguessability.
05:30:46 -!- zzo38 has joined.
05:31:38 <esolangs> [[Infinite state machine]] https://esolangs.org/w/index.php?diff=154723&oldid=108021 * Stkptr * (-1262) Replace it with actually correct information
05:31:53 <ais523> it would be nice if there were a concise term for "the probability of this ever being guessed within the useful life of the system is too low for us to worry about, even if there's a concerted computing effort made against it"
05:32:39 <korvo> Sometimes we use the same "exponentially-unlikely" phrasing as physicists doing thermodynamics.
05:33:03 <korvo> Have we done thermodynamics of (Turing) machines here yet? It's a fun mind-bender.
05:34:43 <korvo> But yeah, this is nicer than the standard Gordian knot. For example, recently I saw folks arguing over whether ASLR is security by obscurity or not. The answer is no, because ASLR can be revealed using Kerchoff's principle, and the address layout is merely unguessable.
05:35:29 <ais523> I generally consider security to not be "by obscurity" if the thing that's obscure is randomized between sufficiently many symmetrical possibilities
05:36:33 <ais523> the reason security by obscurity doesn't work is the same reason that using single words that a human chose mentally as passwords doesn't work – the number of possibilities that a human is reasonably likely to think of is small enough that the chance of guessing them is unacceptably high
05:38:39 <ais523> fwiw, I don't consider ASLR reliable, but the reason is different – the number of possibilities is too small for me to be comfortable that they won't be guessed
05:39:31 <ais523> it'd be more secure if there were a way to detect failed attempts and lock out the attacker, but often that isn't available for one reason or another, and ASLR has been broken before just by running the program repeatedly until you get the address you need
05:39:55 <ais523> and living with all the segfaults and other similar consequences all the times when the address rolled wrong
05:40:23 <ais523> (additionally, pointer leaks are semi-common – I wouldn't be confident that any given program had no pointer leaks unless the language was enforcing that somehow)
05:41:33 <korvo> And at that point, the language might as well enforce pointer hygiene to cut off the entire avenue of attack.
05:43:43 <zzo38> Valgrind can detect some improper memory accesses and memory leaks. (I often find more memory leaks and invalid accesses in libraries called by my programs than in my programs themself, and when I do find them in my program I can usually correct them without so much difficulty)
05:43:59 <zzo38> I think that ASLR has some advantages and disadvantages.
05:45:35 <ais523> zzo38: so I think Valgrind Memcheck doesn't work against the sort of attacks ASLR is designed to mitigate, unless it's able to notice a return address being overwritten
05:45:54 <ais523> because those attacks use only valid memory addresses that the program is able to access legitimately
05:45:58 <zzo38> I don't know whether or not valgrind detects that
05:47:06 <zzo38> (maybe it is able to do so but not by default; there are some things that it does not do by default but you can add extra switches to do so)
05:47:12 <ais523> I don't know either – my guess is no, but in theory it could notice a return-from-subroutine machine code command popping an address that wasn't written by a call-subroutine command
05:47:39 <ais523> although that would have a lot of false positives nowadays, now that Spectre is a problem that most OSes and compilers want to mitigate
05:47:53 <zzo38> In some programs (although, I think mostly written in assembly language rather than in C, probably), it is sometimes useful to use specific addresses for some things.
05:49:21 <ais523> C compilers used to (and for some platforms still do) compile static and global variables to be stored at memory addresses hardcoded in the generated program, and sometimes also do that for the address of called functions (although it's hard to make that compatible with shared objects so usually they don't)
05:49:56 <zzo38> (With my own idea of operating system design, the program is supposed to be guaranteed the same every time it is run if the program is the same and all input is the same, so ASLR will not be suitable. I have other ideas as well, though.)
05:50:27 <ais523> x86-64 was a big improvement over x86 in that respect – it has an easy syntax for IP-relative memory addressing, which has most of the advantages of hardcoded addresses but is more compatible with ASLR
05:50:49 <ais523> (although it doesn't allow randomizing the section containing the program code separately from the section containing static variables)
05:51:37 <ais523> it makes the shared object case easier, too
05:52:09 <ais523> (and by "easy syntax" I mean easy in the machine code)
05:52:15 <zzo38> Yes, and IP-relative addressing can be helpful for other reasons as well, if you have both absolute and relative addressing available
05:53:48 <ais523> x86-64 does still have absolute addressing although the syntax is a bit more complex (they used the simplest syntax for relative, which I think was the right decision)
05:54:44 <ais523> absolute addressing isn't so useful there because the commands can't take 64-bit immediate values, so the only addresses you can access absolutely are those in the bottom 4 GiB of memory
05:55:03 <ais523> (possibly the bottom 2 GiB if it's interpreted as a signed number, which it might be)
06:17:03 <esolangs> [[257-wrap brainfuck]] https://esolangs.org/w/index.php?diff=154724&oldid=154641 * Ais523 * (+1197) unstub, cat, and use a more typical page structure
06:20:20 -!- ais523 has quit (Quit: quit).
07:09:02 -!- tromp has joined.
07:15:49 -!- Lord_of_Life_ has joined.
07:17:02 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
07:17:15 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
08:02:17 <esolangs> [[R + S]] https://esolangs.org/w/index.php?diff=154725&oldid=154678 * C++DSUCKER * (+75)
08:34:40 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:33:48 -!- tromp has joined.
09:35:51 <esolangs> [['Python' is not recognized]] https://esolangs.org/w/index.php?diff=154726&oldid=154575 * Ractangle * (-32)
09:36:28 <esolangs> [['Python' is not recognized]] https://esolangs.org/w/index.php?diff=154727&oldid=154726 * Ractangle * (-13)
09:48:34 <esolangs> [['Python' is not recognized]] https://esolangs.org/w/index.php?diff=154728&oldid=154727 * Ractangle * (-6)
10:11:29 -!- Sgeo has quit (Read error: Connection reset by peer).
10:24:02 <int-e> ais523: Oh this is a bit wild... yes, offsets are signed but if you use 32 bit addressing you get a zero-extended address. But also, virtual addresses are sign-extended. But Linux doesn't allow user space pointers to have the topmost bit set. Otherwise you'd get 6GB of absolute addressable memory. Thirdly, there are some special instructions to load from an absolute 64 bit address.
10:59:56 <esolangs> [[Apollo(PSTF)]] N https://esolangs.org/w/index.php?oldid=154729 * PrySigneToFry * (+3690) Created page with "Apollo is a Brainfuck derivative designed by PSTF. This is inspired from [[Artemis]], [[Brainfuck 2.0]], [[Masqualia]], [[BFInfinity]], Javascript, and [[Brainfuck extended]]. = Syntax Overview = As a Brainfuck derivative, Apollo is [[Turing-complete]], has
11:04:50 <esolangs> [[Apollo]] N https://esolangs.org/w/index.php?oldid=154730 * PrySigneToFry * (+292) Created page with "There are two esolangs calls Apollo in history or currently: # [[User:Hppavilion1/UniFunge]](This is already called Apollo, but then changed to Unifunge) by [[User:Hppavilion1]], which is a fungeoid. # [[Apollo(PSTF)]] by [[User:PrySigneToFry]], which is a Brainfuck
11:05:35 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=154731&oldid=154707 * PrySigneToFry * (+13)
11:25:55 <fizzie> The IPv6 story has stalled a little, except that my ISP's support replied that "we've escalated to the relevant team for further investigation and will let you know", followed by an automated email saying (basically) "you didn't reply to our earlier email, if we don't hear back in 48 hours we'll assume you no longer need help and close your ticket", which was a little rude.
11:30:23 <fizzie> So I sent them back a second list of random debugging things I've tried (other Europe DO datacenters also fail; those also get routed through LONAP; non-Europe DO networks are fine; both the DHCPv6 delegated prefix and the single address assigned to the router behave the same; LONAP's looking-glass service shows that the router sending the address-unreachable errors last changed up/down state the
11:30:25 <fizzie> same day the problems started; traffic to another VPS that goes through LINX instead of LONAP works fine) mostly just to keep it alive.
11:33:27 <fizzie> Oh, DO support just sent a similar thing, except their timer is 3 days rather than 2.
12:02:51 <fizzie> It would be nice if you could still tell IPv6 packets which way they should go, to be able to better test these things, but they deprecated that option long ago -- https://www.rfc-editor.org/rfc/rfc5095.txt -- and I imagine most places wouldn't have respected it anyway.
12:06:38 <b_jonas> "<ais523> a functional hardware description language in which program equivalence was literally and concretely definable / bounded memory" => did the hardware also have no nondeterminism in cases that you'd call undefined behavior?
12:12:58 <b_jonas> fizzie; "to the relevant team" sounds like a deliberately obscure answer, they don't even want to tell you what department. did they escalate to their criminal reporting department because they think you need IPV6 for money laundering or sending spam? their mental health department because they think you're crazy? their team with the shovels and optical cables to lay new optical cable next to your house?
12:14:46 <b_jonas> "if we don't hear back in 48 hours" => I assume it's enough if they hear back that you did the same test again and still have the same symptoms, eg. can't access the server through IPV6 from your connection but hosts in other ISPs can
12:38:18 -!- CanisCorvus has joined.
14:19:58 <esolangs> [[Special:Log/move]] move * PkmnQ * moved [[Apollo(PSTF)]] to [[Apollo (PSTF)]]: Misspelled title: space
14:20:52 -!- amby has joined.
14:27:17 <esolangs> [[Apollo]] https://esolangs.org/w/index.php?diff=154734&oldid=154730 * PrySigneToFry * (+1)
14:28:41 <esolangs> [[Apollo(PSTF)]] https://esolangs.org/w/index.php?diff=154735&oldid=154733 * PrySigneToFry * (+59) Removed redirect to [[Apollo (PSTF)]]
14:49:32 -!- ais523 has joined.
14:50:17 <ais523> <b_jonas> did the hardware also have no nondeterminism in cases that you'd call undefined behavior? ← there was no UB in the language (it was somewhat easier than normal to avoid because the langauge didn't support division, just addition, subtraction, multiplication and bitwise operators)
14:50:56 <ais523> the research was primarily about statically avoiding race conditions (interestingly, Rust ended up doing the same thing, basically the same way, a couple of years later)
14:51:14 <ais523> so we didn't have problems with those either
15:16:39 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:17:20 <int-e> ais523: https://logs.esolangs.org/libera-esolangs/2025-03-30.html#lFb was for you
15:34:39 -!- tromp has joined.
15:36:26 <esolangs> [[WhatLang]] M https://esolangs.org/w/index.php?diff=154736&oldid=150865 * DGCK81LNN * (-4)
15:48:05 -!- ais523 has quit (Ping timeout: 248 seconds).
15:48:32 <esolangs> [[WhatLang]] M https://esolangs.org/w/index.php?diff=154737&oldid=154736 * DGCK81LNN * (-40)
15:50:11 -!- craigo has joined.
15:51:02 <esolangs> [[WhatLang]] M https://esolangs.org/w/index.php?diff=154738&oldid=154737 * DGCK81LNN * (+13) /* Koishi runtime specific */
16:14:09 <esolangs> [[User:Esdraslov]] N https://esolangs.org/w/index.php?oldid=154739 * Esdraslov * (+195) Created page with "I am [[User:Esdraslov]] == My Esosteric programming languages == [[CDE2+]] EDE [[HeXPlik]] _!dlroW ,olleH-=p[<p]/ {{{{{{{{{{{{{[.}] [[SECIAEQBNJMPDIFZR]] IOI 108 108 IOI+1"
16:20:52 -!- ais523 has joined.
16:21:16 <ais523> int-e: ooh, so it's even more complicated than I expected
17:04:53 <int-e> I didn't know that either. :)
17:18:34 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:36:42 -!- tromp has joined.
17:55:10 * ais523 finds a yacc grammar which produces exponentially large compiled output: https://codegolf.stackexchange.com/a/278992
17:56:50 <ais523> I like this one because it exploits properties of the target virtual machine – almost all yacc implementations compile via deterministic push-down automata, and this program can't be represented in less than exponential code by a DPDA
17:57:28 <ais523> so in a way the output is "inherently" exponentially large
18:03:37 <ais523> now I'm wondering how non-yaccs handle this – I suspect backtracking parsers might do quite well as they can handle the entire program in only 24 backtracks
18:16:05 -!- Sgeo has joined.
18:16:35 <b_jonas> ais523: is this one of those that get much easier to parse if the input is reversed?
18:17:08 <ais523> b_jonas: yes, but you can work around that by writing the reverse grammar too and concatenating them with a `2` between them
18:17:11 <ais523> so that reversing doesn't help
18:19:03 <b_jonas> as for compiler bombs, I recently tried what happens if you give rustc an exponential size macro_rules macro expansion. it just blows up, doesn't seem to have limits stopping that.
18:19:56 <esolangs> [[User:Ractangle]] https://esolangs.org/w/index.php?diff=154740&oldid=151770 * Ractangle * (-11) /* Other things */
18:20:23 <ais523> the threat model for DOS attacks on compilers is interesting
18:20:48 <ais523> most of the time you assume that any code you're going to compile, you're also going to run unsandboxed, so there isn't a need to guard against source code that maliciously attacks the compiler
18:21:48 <ais523> I have seen some compilers that don't make that assumption, e.g. Rust's `regex` crate intentionally aims for performance that's linear-time in the length of the regex plus the length of its input, meaning that malicious end-user-supplied regexes can't cause a DOS
18:23:29 <b_jonas> there's this DOS I recently found that is not related to a compiler but should be running sandboxed => https://logs.esolangs.org/libera-esolangs/2025-03.html#lDU
18:23:32 <esolangs> [[L-system]] M https://esolangs.org/w/index.php?diff=154741&oldid=154670 * Stkptr * (+19) /* Python implementation (D2L) */ Support empty string emission
18:24:23 <ais523> hmm, maybe the "prevent this web page showing additional dialogs" option should be used in that case too, if it isn't already
18:24:43 <b_jonas> you don't get to choose options between the dialogs
18:24:55 <b_jonas> and the dialog is modal so you can't choose anything during the dialog
18:27:00 <ais523> I think the option is normally placed *in* the dialog so that you can select it even if the dialog is modal
18:27:07 <ais523> but maybe Firefox can't adjust the file-save dialog like that
18:27:55 <int-e> is it too heretical to suggest that the problem here is JS ;-)
18:28:16 <ais523> does that attack even require JS?
18:28:29 <int-e> how else would you trigger *multiple* downloads at the same time?
18:30:02 <b_jonas> I think everyone learns the frames trick from sourceforge, it shows a frame to be able to show you an advertisment-riddled page and send a download at the same time
18:30:05 -!- FreeFull has joined.
18:30:39 <int-e> . o O ( what's sourceforge ) (scnr)
18:31:14 <b_jonas> yeah, you can't really modify the Windows save dialog that way, at least not in a way that's transparent to the users. you could put a fake save format in the list, but users might not find it.
18:31:43 <b_jonas> but firefox could ask a question after you cancel a save dialog
18:32:15 <esolangs> [[HeXPlik]] https://esolangs.org/w/index.php?diff=154742&oldid=154706 * Stkptr * (+29) Seems TC enough
18:32:21 <b_jonas> like after that you have to click somewhere to show more save dialogs
18:32:30 <b_jonas> it does something like that with popups
18:33:31 <int-e> https://arstechnica.com/information-technology/2016/06/under-new-management-sourceforge-moves-to-put-badness-in-past/ ...I wonder how that went
18:33:52 <int-e> I haven't touched the site since 2015.
18:38:09 <esolangs> [[R + S]] https://esolangs.org/w/index.php?diff=154743&oldid=154725 * Stkptr * (+62) Combinational, no category for that
18:48:03 <b_jonas> also large sizes reminds me, https://sqlite.org/limits.html says that in theory sqlite can handle databases as large as 256 tebibytes, but “This particular upper bound is untested since the developers do not have access to hardware capable of reaching this limit.”
18:48:44 <b_jonas> these days 256 tebibytes file size should be reachable so they might be able to test it
18:50:30 <b_jonas> date announced, SIGBOVIK conference is on 2025-04-04 http://sigbovik.org/2025/
19:07:27 <ais523> hmm, if a server did have 256 TiB of storage, how long would it take to fill it all?
19:07:43 <ais523> I guess it wouldn't even be that long, given that it's only TiB, not PiB or XiB
19:08:04 <ais523> people do gigabyte-scale things all the time, this is only 1000 times as much
19:22:28 <zzo38> The other possibility might be to make up a VFS to make up the data as it is being read, if it can be made up according to the proper file format and trees
19:28:27 <b_jonas> it might not be very fast, but I don't think that's a problem here
19:52:25 <esolangs> [[User:HiIam]] M https://esolangs.org/w/index.php?diff=154744&oldid=131148 * HiIam * (+79) Well, it's fine... I guess.
19:54:01 <esolangs> [[User:HiIam]] https://esolangs.org/w/index.php?diff=154745&oldid=154744 * HiIam * (+4) Not a big change...
20:05:23 <esolangs> [[Funciton]] https://esolangs.org/w/index.php?diff=154746&oldid=154395 * Timwi * (+169) Regular expressions: add (used in https://www.youtube.com/watch?v=Nt_8O7ZHmFQ), and change layout
20:39:07 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=154747&oldid=154731 * Buckets * (+16)
20:40:01 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=154748&oldid=154708 * Buckets * (+15)
20:40:16 <esolangs> [[```]] M https://esolangs.org/w/index.php?diff=154749&oldid=154713 * Kaveh Yousefi * (+0) Amended a word's case to its minuscular form.
20:40:18 <esolangs> [[Misprefix]] N https://esolangs.org/w/index.php?oldid=154750 * Buckets * (+653) Created page with "Misprefix is an Esoteric programming language created by [[User:Buckets]] in 2024. {| class="wikitable" |- ! Commands !! Instructions |- | Cre- || Create a New command. |- | Ed- || Name the Newest command. |- | Je- || End the Naming process. |- | Yon- || Set the speci
20:42:41 <esolangs> [[Talk:Burn]] https://esolangs.org/w/index.php?diff=154751&oldid=153081 * BestCoder * (+67)
20:48:20 <esolangs> [[Template:Stubnoinfo]] https://esolangs.org/w/index.php?diff=154752&oldid=129874 * Ractangle * (+43)
20:55:26 <esolangs> [[Misprefix]] M https://esolangs.org/w/index.php?diff=154753&oldid=154750 * Buckets * (+211)
21:04:37 <esolangs> [[Abba]] M https://esolangs.org/w/index.php?diff=154754&oldid=152646 * Buckets * (+9)
21:04:51 <esolangs> [[Abba]] M https://esolangs.org/w/index.php?diff=154755&oldid=154754 * Buckets * (+0)
21:13:43 <esolangs> [[Talk:Uhidklol]] https://esolangs.org/w/index.php?diff=154756&oldid=154154 * Juanp32 * (+302)
21:28:32 <esolangs> [[Talk:ight]] M https://esolangs.org/w/index.php?diff=154757&oldid=148910 * Buckets * (+283)
21:36:17 <esolangs> [[Happy]] M https://esolangs.org/w/index.php?diff=154758&oldid=154343 * Buckets * (+35)
21:43:16 <esolangs> [[Misprefix]] M https://esolangs.org/w/index.php?diff=154759&oldid=154753 * Buckets * (-1)
21:51:01 <esolangs> [[Sleep.]] M https://esolangs.org/w/index.php?diff=154760&oldid=154456 * Buckets * (+66)
21:57:58 <esolangs> [[Talk:ight]] M https://esolangs.org/w/index.php?diff=154761&oldid=154757 * Buckets * (-19)
22:02:19 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:40:02 <esolangs> [[PTL]] M https://esolangs.org/w/index.php?diff=154762&oldid=117645 * Buckets * (+0) /* Truth machine */
23:43:47 -!- craigo has quit (Read error: Connection reset by peer).
23:43:57 -!- craigo has joined.
23:54:23 <esolangs> [[BitTurn]] https://esolangs.org/w/index.php?diff=154763&oldid=150583 * Stkptr * (+358)
23:56:52 <esolangs> [[Albuqer chng]] https://esolangs.org/w/index.php?diff=154764&oldid=148764 * Stkptr * (+28)
23:59:10 <esolangs> [[Domino]] https://esolangs.org/w/index.php?diff=154765&oldid=54408 * Stkptr * (+24) Unknown class
23:59:37 <esolangs> [[EISC]] https://esolangs.org/w/index.php?diff=154766&oldid=37959 * Stkptr * (+23)
00:07:18 <esolangs> [[EvenOdd]] https://esolangs.org/w/index.php?diff=154767&oldid=126727 * Stkptr * (+58) Can only define functions
00:23:47 <esolangs> [[Talk:NOB]] N https://esolangs.org/w/index.php?oldid=154768 * Anthonykozar * (+924) Some suggestions for clarification.
00:45:28 -!- 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:30:01 <zzo38> I also had some ideas relating to a graphics processor of a computer, that it could have memory areas that cannot access each other (for security), and windows that have memory areas assigned to them (some of which will be read-only), and will also contain programs for altering registers per scanline and for rendering pixels (which may work in parallel, or during the previous scanline, or both).
01:31:35 <zzo38> A window may have position, size, and depth, and may be mapped in a specific order and in specific other windows. And then, there may also be sprites, which can also belong to windows and will have a position, size, depth, and order.
01:32:05 <zzo38> (This is not for 3D graphics, but it is for 2D graphics)
02:08:50 <ais523> what's a good name for a special conceptual value that can be read and stored, but returns itself if used as an operand of an arithmetic operation, and is UB to branch on?
02:08:58 <ais523> sort-of like how uninitialised memory works in Valgrind
02:11:28 <ais523> (bonus points if it doesn't return itself in cases where the value doesn't otherwise matter, e.g. it becomes 0 if you multiply it by 0)
02:12:16 <ais523> in a way it's very similar to NaN, I guess
02:28:31 <zzo38> Yes, it seems to be like NaN but not quite.
02:33:04 -!- craigo has quit (Ping timeout: 272 seconds).
03:13:55 -!- FreeFull has quit.
04:10:05 <esolangs> [[User:I am islptng/List of the users that is also in conwaylife.com]] https://esolangs.org/w/index.php?diff=154769&oldid=154634 * I am islptng * (+109) /* xdi8 wiki */
04:33:51 -!- ais523 has quit (Quit: quit).
04:57:12 <esolangs> [[Talk:NOB]] https://esolangs.org/w/index.php?diff=154770&oldid=154768 * Anthonykozar * (+414) More suggestions.
05:49:09 <esolangs> [[User:Win7HE]] https://esolangs.org/w/index.php?diff=154771&oldid=151665 * Win7HE * (-7) /* Smasnug (hq9+3/oi[]) */
05:49:20 <esolangs> [[User:Win7HE]] https://esolangs.org/w/index.php?diff=154772&oldid=154771 * Win7HE * (+2) /* Smasnug */
05:54:07 <esolangs> [[Special:Log/upload]] upload * Win7HE * uploaded "[[File:A more descriptive name.jpeg]]": pepsi
06:05:16 <esolangs> [[Special:Log/upload]] overwrite * Win7HE * uploaded a new version of "[[File:When start.png]]": Recreated in PenguinMod
06:06:36 <esolangs> [[File:When start.png]] https://esolangs.org/w/index.php?diff=154775&oldid=154774 * Win7HE * (+81)
06:06:52 <esolangs> [[File:When start.png]] https://esolangs.org/w/index.php?diff=154776&oldid=154775 * Win7HE * (+0)
06:21:23 <esolangs> [[User:Win7HE]] https://esolangs.org/w/index.php?diff=154777&oldid=154772 * Win7HE * (-57) /* Deadman (technically deadfish 2.1) */
06:59:41 -!- tromp has joined.
07:15:59 -!- Lord_of_Life_ has joined.
07:16:55 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
07:17:21 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
07:31:57 -!- chiselfuse has quit (Remote host closed the connection).
07:32:16 -!- chiselfuse has joined.
08:03:37 -!- Sgeo has quit (Read error: Connection reset by peer).
08:16:59 <esolangs> [[User:I am islptng/Lambda Calculus Tutorial]] N https://esolangs.org/w/index.php?oldid=154778 * I am islptng * (+1986) Created page with ":::::<i>Thanks for YouTuber 2swap (His video helps a lot.)</i> Since I was confused about lambda calculus at first, and I took a long time to understand it. So I'll write this article to help others. Also evaluating lambda expres
08:23:43 <esolangs> [[User:I am islptng/Lambda Calculus Tutorial]] https://esolangs.org/w/index.php?diff=154779&oldid=154778 * I am islptng * (+82)
08:32:57 <b_jonas> ais523: infinity? no, that isn't UB to branch on.
08:33:41 <b_jonas> possibly "indefinite representation" or something
08:34:59 <b_jonas> or how about poisoned (rotten, moldy, tainted) value?
08:35:19 <b_jonas> you have to treat anything it touches as also poisonous
08:35:39 <b_jonas> because one drop of poison mixed with a barrel of wine still counts as poison
08:48:05 -!- CanisCorvus has quit (Quit: Client closed).
09:16:02 -!- amby has joined.
11:26:16 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:49:24 -!- tromp has joined.
13:56:33 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:59:53 <esolangs> [[Twasm]] N https://esolangs.org/w/index.php?oldid=154780 * JHSHernandez-ZBH * (+664) Created page with "{{displaytitle:twasm}} {{lc:<div> twasm is a cpu assembly with 4 instructions {| !opcode!!binary code!!arguments!!action |-halt||00||none||halts the processor |-jinz||01||addr1, addr2||jumps execution to addr2 if the value at addr1 is not zero |-copy||11||addr1,
14:00:09 <esolangs> [[Twasm]] https://esolangs.org/w/index.php?diff=154781&oldid=154780 * JHSHernandez-ZBH * (+0)
14:00:34 <esolangs> [[Twasm]] https://esolangs.org/w/index.php?diff=154782&oldid=154781 * JHSHernandez-ZBH * (-18)
14:02:36 <esolangs> [[Twasm]] M https://esolangs.org/w/index.php?diff=154783&oldid=154782 * JHSHernandez-ZBH * (+32)
14:03:03 <esolangs> [[Twasm]] https://esolangs.org/w/index.php?diff=154784&oldid=154783 * JHSHernandez-ZBH * (+3)
15:14:17 <korvo> ais523: Another possibility is "tainting", which is what PyPy called it. They've removed the feature now, but it used to be possible to "taint" a value, and accesses to a tainted value would either throw an exception or return more taint. Def 5 for verb form: https://en.wiktionary.org/wiki/taint
15:35:24 -!- tromp has joined.
17:26:11 -!- craigo has joined.
17:57:16 -!- FreeFull has joined.
20:23:34 <esolangs> [[Talk:Sigil]] N https://esolangs.org/w/index.php?oldid=154785 * Anthonykozar * (+1112) Questions and comments about Sigil syntax and semantics.
20:31:45 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
20:41:28 -!- ally_ok has joined.
20:41:36 <zemhill> ally_ok: "!zjoust progname code". See http://zem.fi/bfjoust/ for documentation.
20:51:39 -!- FreeFull has quit (Quit: Lost terminal).
20:51:50 -!- tromp has joined.
21:01:28 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:10:18 -!- tromp has joined.
21:24:32 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:32:49 -!- tromp has joined.
21:32:56 -!- tromp has quit (Client Quit).
21:33:31 -!- tromp has joined.
21:38:21 -!- FreeFull has joined.
21:48:40 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:59:12 -!- tromp has joined.
22:02:02 -!- ais523 has joined.
22:02:25 <ais523> korvo: Perl has tainted values too, but they work a bit differently – you can branch on them but not pass them to I/O builtins
22:05:07 <ais523> <b_jonas> possibly "indefinite representation" or something ← I think names of that form are often used for a specific NaN payload (IIRC the one where the two most significant bits are 1 and everything else is 0)
22:05:19 <ais523> as opposed to canonical NaN, which has one 1 bit at the top
22:06:09 <b_jonas> ais523: yes, "indefinite" is not appropriate here, I figured out a bit better ones after that
22:06:33 <ais523> hmm – the value in question is basically the "don't care" value from electronic engineering, usually called X
22:06:47 <ais523> VHDL has it as an actual constant in the language
22:06:57 <ais523> (and uses it as the NaN equivalent for booleans)
22:07:12 <ais523> well, they aren't technically booleans but their main states are true and false, like booleans have
22:07:56 <b_jonas> I was thinking of hardware bit indefinite, where the voltage might not be read consistently as a zero or one
22:07:56 <b_jonas> so branching on it might not consistently produce one or the other branch but could give a mixture
22:08:46 <ais523> I think in VHDL that can be represented by either X or W, depending on what happens if you connect a strong voltage to it
22:09:05 <ais523> i.e. W is being weakly pulled both up and down, whereas something that's being strongly pulled both up and down is an X
22:09:15 <ais523> (and something that's just purely floating is Z)
22:10:57 <ais523> oh wait, I think "don't care" might be - rather than X
22:11:02 <ais523> it's so long since I did this
22:11:15 <ais523> it's hard to remember all the various behaviours of 9-valued booleans
22:23:15 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:54:14 -!- Sgeo has joined.
22:55:31 <ais523> fortunately, I turned out not to need this sort of value, so I no longer have a pressing need for a name (but it seems potentially useful for the future)
23:20:49 -!- craigo_ has joined.
23:24:30 -!- craigo has quit (Ping timeout: 276 seconds).
23:38:22 <esolangs> [[User:I am islptng/Silicon dioxide in a polypropylene box]] N https://esolangs.org/w/index.php?oldid=154786 * I am islptng * (+1435) Created page with "...... anyway this is my sandbox (silicon dioxide in a polypropylene box, sand in a plastic box, sand box, sandbox) == The uaZ of uoy1d, by SJ313d W!1 == {{SUBST:wrongtitle|title=The <span style="display:inline-blo
23:39:10 <esolangs> [[User:I am islptng/Silicon dioxide in a polypropylene box]] https://esolangs.org/w/index.php?diff=154787&oldid=154786 * I am islptng * (+37)
23:40:20 <esolangs> [[User:I am islptng/Silicon dioxide in a polypropylene box]] https://esolangs.org/w/index.php?diff=154788&oldid=154787 * I am islptng * (-12) /* The uaZ of uoy1d, by SJ313d W!1 */