[...]
13:39:11 <esolangs> [[User:TenBillionPlusOne/Draft]] N https://esolangs.org/w/index.php?oldid=157833 * TenBillionPlusOne * (+194) Created page with "'''Transformation is complete''' is esolang by former [[User:TBPO]], now a clone of [[User:Hakerh400]]. I made a timestamp to mark when my transformation became complete: (( I'll insert later ))"
13:47:32 <esolangs> [[Special:Log/newusers]] create * TheCatFromGithub * New user account
13:48:19 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:48:37 <esolangs> [[User:TenBillionPlusOne]] https://esolangs.org/w/index.php?diff=157834&oldid=157814 * TenBillionPlusOne * (+104)
13:49:31 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] N https://esolangs.org/w/index.php?oldid=157835 * H. H. P. M. P. Cole * (+964) Created page with "'''Modulo 2 v2''' is a programming language created by [[User:H. H. P. M. P. Cole]]. It is based off [[User:I am islptng]]'s modification of the original language but with features present in the original, like multiple "codeblock
13:50:36 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=157836&oldid=157752 * TheCatFromGithub * (+152) /* Introductions */ added introduction
13:51:10 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=157837&oldid=157836 * TheCatFromGithub * (+106) oops forgot to sign
13:56:10 <esolangs> [[User:TenBillionPlusOne/Sandbox]] M https://esolangs.org/w/index.php?diff=157838&oldid=157832 * TenBillionPlusOne * (-19)
14:00:38 <esolangs> [[Logica]] M https://esolangs.org/w/index.php?diff=157839&oldid=157822 * H. H. P. M. P. Cole * (+4)
14:02:08 <esolangs> [[PNPL]] https://esolangs.org/w/index.php?diff=157840&oldid=157773 * Henry * (+1498)
14:06:34 <esolangs> [[Logica]] M https://esolangs.org/w/index.php?diff=157841&oldid=157839 * H. H. P. M. P. Cole * (+10)
14:11:49 <esolangs> [[WTF]] https://esolangs.org/w/index.php?diff=157842&oldid=157790 * H33T33 * (+238)
14:24:35 <esolangs> [[WTF]] M https://esolangs.org/w/index.php?diff=157843&oldid=157842 * H33T33 * (-7)
14:28:08 <esolangs> [[WTF]] https://esolangs.org/w/index.php?diff=157844&oldid=157843 * H33T33 * (-9)
14:34:46 <esolangs> [[User talk:H. H. P. M. P. Cole]] https://esolangs.org/w/index.php?diff=157845&oldid=157760 * Hotcrystal0 * (+285)
14:35:24 <esolangs> [[User talk:H. H. P. M. P. Cole]] https://esolangs.org/w/index.php?diff=157846&oldid=157845 * Hotcrystal0 * (-162)
14:35:58 <esolangs> [[Infinite noise automata]] https://esolangs.org/w/index.php?diff=157847&oldid=145311 * Hotcrystal0 * (+2793) Undo revision [[Special:Diff/145311|145311]] by [[Special:Contributions/RainbowDash|RainbowDash]] ([[User talk:RainbowDash|talk]])
14:37:24 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=157848&oldid=157675 * Hotcrystal0 * (-94)
14:37:52 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=157849&oldid=157848 * Hotcrystal0 * (+27)
14:38:21 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=157850&oldid=157849 * Hotcrystal0 * (+18)
14:38:34 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=157851&oldid=157850 * Hotcrystal0 * (+9)
14:41:01 -!- Sgeo has joined.
14:44:25 <esolangs> [[ShiftEso]] N https://esolangs.org/w/index.php?oldid=157852 * TheCatFromGithub * (+557) created page
14:44:45 <esolangs> [[User:TheCatFromGithub]] N https://esolangs.org/w/index.php?oldid=157853 * TheCatFromGithub * (+30) Created page with "Hello, I created [[ShiftEso]]."
14:45:06 <esolangs> [[ShiftEso]] https://esolangs.org/w/index.php?diff=157854&oldid=157852 * TheCatFromGithub * (+3)
14:46:44 -!- tromp has joined.
14:47:23 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=157855&oldid=157785 * TheCatFromGithub * (+15) /* S */ added shifteso
14:51:07 -!- amby has quit (Ping timeout: 276 seconds).
14:51:48 -!- amby has joined.
14:58:47 -!- wib_jonas has joined.
14:59:33 <wib_jonas> what the heck? "correspondance" is spelled with "ance" in english, but "ence" in french? I was told that the "ance" vs "ence" spelling always matches between english and french! it's all lies!
15:01:19 <wib_jonas> oh... yes, it's spelled with "ence" in english and "ance" in french
15:09:24 <korvo> Another example is "difference" vs "diffránce" (sp?); there was some sort of vowel shift after the loaning of these words.
15:10:41 <ais523> korvo: My dictionary says that it's "différence" in French, which has the same ending
15:10:43 <korvo> Oh, wow. "différance". I was not even close.
15:10:56 <ais523> (and I don't think that á is a letter in French)
15:11:36 <ais523> différance is a French word, but it's the equivalent of the obscure English word différance (which is presumably a loanword)
15:11:59 <korvo> ais523: Oh, apparently Derrida deliberately used the old spelling, and that's why it sticks out in my mind.
15:12:16 <korvo> So this is a non-example for modern Francophones.
15:12:30 <ais523> <Wikipedia> The ⟨a⟩ of différance is a deliberate misspelling of différence, though the two are pronounced identically
15:12:45 <korvo> Yep, an example of hauntology.
15:16:41 <wib_jonas> "ance" vs "ence" ending is always pronounced differently, that's why this is so confusing
15:17:25 <wib_jonas> "ance" vs "ence" ending is always pronounced the same, that's why this is so confusing
15:18:45 <wib_jonas> I mean there was the part where "correspondence" applies at the meta level too because these are about english and french words corresponding to each other, and now you brought up "difference".
15:18:58 <ais523> the vowel's more a schwa than anything, I think – which would imply that it would be pronounced differently if you stressed the syllable but not in its usual unstressed state
15:19:43 <ais523> are there any esolangs which are named using regular words except that the stress is in the wrong place?
15:21:09 <wib_jonas> hmm, maybe the spelling is an attempt to set up a who shaves the barber style paradox, like "what's the only word ending in 'ance' or 'ence' where the correspondence between english and french spelling is broken?" "correspondence." "yes, that's what I said."
15:22:01 <wib_jonas> "except the stress is in the wrong place" => probably, because there are both british and american esolangers, and they don't always agree on where the stress is
15:23:00 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:26:01 <wib_jonas> of course this started because I was writing "correspondence" and then decided to look up the spelling. not that my readers would care in this case.
15:27:53 <ais523> often the only way to memorise this sort of thing is to read enough English that it become subconscious
15:28:42 <int-e> b_jonas: "why" -- apparently it's taken from Latin without the detour via French: https://www.etymonline.com/word/correspondence
15:30:21 <wib_jonas> yes, I know "existence" is one that I often used to spell wrong
15:32:09 <wib_jonas> int-e: latin is what usually decides between "ance" and "ence" spelling yes, and that's why it matches in french and english, but that doesn't explain the difference for "correspondance" in french vs "correspondence" in english
15:33:12 <int-e> I guess I don't care about that part as much.
15:37:01 -!- tromp has joined.
15:49:24 -!- amby has quit (Read error: Connection reset by peer).
15:49:31 -!- amby has joined.
15:53:31 <esolangs> [[Mlatu-6]] https://esolangs.org/w/index.php?diff=157856&oldid=157650 * Zhil * (+4) Reduced the size of the one-combinator bases
16:18:50 -!- wib_jonas has quit (Quit: Client closed).
16:59:19 <esolangs> [[Mlatu-6]] M https://esolangs.org/w/index.php?diff=157857&oldid=157856 * Zhil * (+1)
17:05:05 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:05:14 -!- chloetax has quit (Quit: Leaving).
17:05:34 -!- chloetax has joined.
17:26:30 -!- Noisytoot has quit (Excess Flood).
17:29:00 -!- Noisytoot has joined.
17:32:06 <esolangs> [[Monoid]] https://esolangs.org/w/index.php?diff=157858&oldid=157821 * Corbin * (+1854) I see that leaving this half-finished was a mistake. Next time I will not start editing before bed.
17:32:56 <korvo> ais523: I can't see a way to save your paragraph in [[monoid]]. The freedom of equality isn't the point, and that's actually why I included equality in the top-level definition.
17:33:28 <korvo> What's relevant here is that for any set L, L* is a monoid; that is, there's a functor * : Set -> Mon.
17:33:59 -!- tromp has joined.
17:34:07 <korvo> I need to bulldoze that section somewhat anyway, because I didn't realize that I need to define monoid presentations and rank *after* free monoids.
17:38:16 <esolangs> [[Monoid]] https://esolangs.org/w/index.php?diff=157859&oldid=157858 * Corbin * (+240) Put the category-theory gibberish at the bottom, out of the way. Most folks will only care about sets.
17:38:27 <ais523> korvo: so the basic problem with the article is that someone who knows enough of the relevant mathematics to be able to understand it would already know what a monoid is, so it's unclear who the target audience is
17:38:48 <korvo> ais523: Oh! Okay, let's reset assumptions before I keep editing.
17:39:21 <ais523> that's probably fixable after the artice is finished, though
17:40:02 <korvo> My main thought was that I've gotten basically no guidance on [[concatenative language]]. My secondary thought was that monoids sure pop up a lot but we never bother to explain what they are.
17:41:39 <korvo> I'm seriously concerned that we're going to enter a third generation of programmers who refuse to learn what a monoid homomorphism is, and we're not even having a page that bikesheds the terminology.
17:42:15 <ais523> concatenative languages bother me a bit, because there are a) concatenative calculus languages like Joy and Mlatu which clearly fit, and b) a whole sphere of concatenative-ish languages like brainfuck which are a bit of a grey area
17:42:23 <ais523> and I'm not sure how to deal with b) in my head
17:42:32 <korvo> [[BF instruction minimalization]] is a messy read at best. Basically lab notes. Do we have a clear target audience for that?
17:43:09 <korvo> Ah, sure, the tribes of programming languages are a difficult Whorfian mind-lock to escape.
17:43:11 <ais523> it's for people who want to see a lot of partial attempts at minimalising BF
17:43:26 <ais523> which is a nontrivially-sized target audience
17:43:50 <korvo> Sure. As opposed to [[simple translation]], which is for the much smaller audience of folks who are minimising BF~
17:43:51 <ais523> there are so many programmers who see that < and - can be combined into a single instruction and the language still works, then try to go further
17:44:14 <ais523> the simple translation page came a lot later, and was an attempt to formalise some of the concepts rather than to show a lot of attempts
17:44:43 <ais523> (and was also intended to shed light onto the "minimalise BF into a turning tarpit" approach which may, oddly, still be possible via simple translation)
17:45:19 <ais523> but "trying to minimalise BF" is a) a popular subject, b) something that it's very easy to do incorrectly
17:45:39 <ais523> so having a lot of visible attempts is in some sense useful to avoid duplication of effort (and also to demonstrate why it's hard to do correctly)
17:46:42 <ais523> I'm trying to remember if anyone's tried obviously futile things like memory-mapping [ and ] yet – it wouldn't surprise me
17:46:54 <korvo> Also, I think that you and I look at deep structure differently. I'm completely unsurprised that monoids would show up randomly in the syntax of existing languages, because existing languages tend to have *much* richer structures, up to Kleene algebras!
17:47:40 <ais523> korvo: oh, I'm not surprised that the syntax forms a monoid – I'm surprised that the syntax forms a *function* in a way that makes composition meaningful
17:48:31 <korvo> ais523: Oh, it's because control flow tends to be monadic and monads are a special kind of monoid.
17:48:52 <korvo> If you have the ability to say "do this, then do that", that usually implies some sort of monoidal action combining this and that.
17:50:07 <ais523> right, but the monadic flatmap feels a bit different from the normal sense of function composition
17:50:33 <ais523> I think it can be viewed as a function composition, though
17:52:36 <esolangs> [[ShiftEso]] https://esolangs.org/w/index.php?diff=157860&oldid=157854 * TheCatFromGithub * (+2)
17:52:53 <korvo> The way we usually do it (for some monad M) is to lift functions X → Y to actions X → M(Y). This is why folks say that monad-heavy languages act "in the monad" or "return into the monad".
17:53:01 <esolangs> [[User:Hotcrystal0]] https://esolangs.org/w/index.php?diff=157861&oldid=157851 * Hotcrystal0 * (-10)
17:53:22 <korvo> Then the composition is "ordinary" function composition, using the pieces of the monad as needed.
17:53:48 <korvo> Anyway, yeah, monoids are just special cases of categories. It's all just goo at some point.
17:54:03 <ais523> well, no, because the syntactic composition composes X→M(Y) with Y→M(Z) to produce X→M(Z), and function composition doesn't do that
17:54:29 <ais523> it's a related operation but not identical
17:54:44 <korvo> Syntactic composition with the semicolon will do that. Most languages don't have the "programmable semicolon"; the monad is fixed.
17:55:10 <ais523> oh, OK, I think I understand what I'm stuck on now
17:55:48 <ais523> we are composing X→Y and Y→Z but the actual program is doing M(X→Y) and M(Y→Z) for some fixed monad M
17:56:39 <ais523> there are, e.g., two ways to view an Underload fragment: either it's a function from the portion of the stack it reads to the portion of the stack it writes, or it's a function from stacks to stacks
17:56:56 <korvo> Yes, exactly. Like for BF, the monad passes the state of the tape and pointer and manages I/O. The homomorphism is sending us to the Kleisli category where that monad is a fixed background effect.
17:57:07 <ais523> and the latter view is easy to understand and reason about – but the former view is the one you are mostly using when programming in it
17:57:31 <korvo> Right. The latter is what we do with Forth-style stack-effect comments like ( x y -- z w z )
17:57:35 <ais523> for languages which are further away from concatenative calculus, the monad is pulling more weight and is less visible
17:58:01 <korvo> But the former is what we operationalize with e.g. Haskell stacks like (x, (y, Stack)) -> (z, (w, (z, Stack)))
17:58:21 <ais523> so defining them as concatenative means that you are trying to force the monad "into view", and into the definition of syntax fragments as functions, when it isn't something that programmers consciously think about usually
17:58:47 <korvo> Yes. And for languages like Cammy, with *no* background monad, this hopefully trivializes; one can pretend that Cammy is always talking about sets.
17:59:28 <ais523> fwiw, I'm generally a believer that statically typed languages should try to make their background monads more visible, especially by integrating them into the type system
17:59:55 <ais523> I think effect systems are an example of that sort of thing
18:00:14 <ais523> and Haskell is substantially in that direction already (although I don't use it much)
18:01:13 <korvo> So, here's a concrete motivation for compiler engineers: concatenative reasoning can be used to iterate over a list of operations, and a monoid can be used to optimize those iterations down into a single action.
18:01:41 <korvo> Peephole optimizers are an obvious example, but abstract interpreters can be defined to generally walk over a list (or anything traversable, of course...)
18:01:54 <ais523> so compiler intermediate representations have been gradually moving in that direction – but they also usually have more symmetries than a monoid implies
18:02:17 <ais523> so you end up with something that is a monoid, but has extra structure on top (and typically doesn't syntactically match the original language)
18:02:44 <korvo> Well, tell me what you think of this: https://github.com/rpypkgs/rpypkgs/blob/main/bf/bf.py#L163-L192
18:03:09 <ais523> oh right, Github doesn't work without JS nowadays
18:03:12 <korvo> This is a one-register abstract interpreter over BF. Its correctness is mostly from the idea that we really do have a monoid.
18:03:33 <ais523> (pull requests still work, and readmes on project home pages, just not anything else)
18:04:00 <korvo> Are raw links still working? https://raw.githubusercontent.com/rpypkgs/rpypkgs/refs/heads/main/bf/bf.py
18:04:50 <ais523> korvo: I loaded it, eventually
18:05:01 <ais523> I find it hard to read and hard to get an idea of whether or not it's correct
18:05:59 <ais523> …also I was surprised that I'm apparently not the only person who habitually uses "rv" for temporary variables that are used to construct the return value of a function, despite the name being an obvious initialism
18:07:17 <ais523> anyway, things like "elif adHead is anAdd and ad is aZero: bfHead, adHead, immHead = bf, ad, imm" look like bugs to me – I assume that adds are more complicated than zeros, so why would you overwrite the add with the zero?
18:07:28 <ais523> but that doesn't mean they are bugs, it might just mean that I'm not understanding how the code works
18:08:48 <korvo> adHead is the next instruction to commit and ad is the next instruction to decode. This corresponds to BF code like `++[-]`; we're committed to adding 2, but that will be wiped out by an unconditional 0.
18:09:09 <ais523> ah, I see – it's a "set to zero" instruction, so you're wiping out any previous changes
18:09:21 <korvo> Ah, yeah, like in bfmacro.
18:10:17 <ais523> I guess this code is not making use of the monoidal nature of BF because it would work just as well scanning left to right
18:11:00 <ais523> …although it's hard to imagine a nonassociative version of BF that could be used to demonstrate the code still working
18:11:44 <ais523> "do a, then (b then c)" is basically inherently equivalent to "do (a then b), then c" and I can't currently think of a way to break it even in an esolang
18:11:52 <ais523> maybe some sort of race condition/
18:11:55 <korvo> The correctness stems from the idea that a monoid can always be forcefully turned from a sequence into a (left-leaning?) tree, and then we can do induction and recursion.
18:12:55 <ais523> korvo: I was thinking of the converse: I agree the fact that it's a monoid makes it correct, *but* the approach seems conceptually correct even for non-monoids
18:13:12 <ais523> it's just that it's hard to verify how that works because it's hard to imagine the underlying operation being nonassociative
18:13:29 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:13:32 <ais523> I guess it's easier to imagine the underlying operation not having an identity
18:14:27 <ais523> although that would be a weird language design exercise: to create a language where (e.g.) empty program and loop bodys aren't allowed, and there is no way to combine commands in order to produce a no-op
18:16:44 <korvo> Elements of bicategories are monads, so there's probably some flavor of Hilton-Eckmann argument nearby.
18:17:58 <korvo> Anyway, I'll come back to this eventually, if I find the motivation again.
18:18:12 <korvo> Sometimes contributing to this wiki makes me want to smash a keyboard against the wall.
18:20:24 <ais523> I frequently have trouble producing the motivation to do anything
18:27:15 <korvo> Well, I'll stop being a distraction.
18:27:39 <ais523> I'm not sure that distractions really hurt (except that sometimes I can't even get the motivation to go on IRC)
18:28:53 -!- korvo has left.
18:28:57 <ais523> (to be clear, sometimes I'm offline for other reasons – if distractions would be a problem I just disconnect from the Internet)
18:46:38 -!- Lord_of_Life has quit (Excess Flood).
18:47:04 -!- Lord_of_Life has joined.
18:53:39 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
18:53:39 -!- callforjudgement has joined.
18:54:05 -!- Lord_of_Life has joined.
18:54:13 -!- ais523 has quit (Ping timeout: 248 seconds).
18:54:45 -!- citrons has quit (Ping timeout: 252 seconds).
18:55:17 -!- FreeFull has quit (Ping timeout: 248 seconds).
18:55:22 -!- tromp has joined.
18:55:26 -!- FreeFull has joined.
18:56:35 -!- leah2 has quit (Ping timeout: 252 seconds).
18:56:54 -!- leah2 has joined.
18:57:36 -!- gry has quit (Ping timeout: 272 seconds).
18:57:50 -!- callforjudgement has changed nick to ais523.
18:57:51 -!- gry has joined.
18:59:55 -!- citrons has joined.
19:07:40 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:23:28 -!- tromp has joined.
19:39:29 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:46:49 <int-e> . o O ( imagine using WASM just to get access to a 64 bit integer type )
19:59:26 -!- tromp has joined.
20:05:15 <esolangs> [[Monoid]] https://esolangs.org/w/index.php?diff=157862&oldid=157859 * Aadenboy * (+8) marking this as a work in progress since some sections are blank
20:05:54 <esolangs> [[ShiftEso]] https://esolangs.org/w/index.php?diff=157863&oldid=157860 * TheCatFromGithub * (+1856) explained the language
20:07:10 <esolangs> [[ShiftEso]] https://esolangs.org/w/index.php?diff=157864&oldid=157863 * TheCatFromGithub * (+39) /* Examples */ add example
20:08:12 <esolangs> [[ShiftEso]] M https://esolangs.org/w/index.php?diff=157865&oldid=157864 * TheCatFromGithub * (+43)
20:09:22 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
20:23:48 -!- tromp has joined.
20:48:18 <int-e> Hmm, why is BV so isolated in https://smt-lib.org/logics.shtml (can't be combined with any (linear) arithmetic flavors)... I guess it's intentionally a fragment that can be bit-blasted?
21:09:10 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:13:30 -!- tromp has joined.
21:34:44 -!- ais523 has quit (Quit: quit).
22:08:11 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:13:19 -!- lisbeths has joined.
22:23:12 <esolangs> [[Special:Log/newusers]] create * Las-r * New user account
22:30:33 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=157866&oldid=157837 * Las-r * (+260) introduction
22:30:41 <esolangs> [[Greed]] N https://esolangs.org/w/index.php?oldid=157867 * Las-r * (+881) Create page.
22:32:28 <esolangs> [[Greed]] M https://esolangs.org/w/index.php?diff=157868&oldid=157867 * Las-r * (-12) Fix formatting
22:33:23 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=157869&oldid=157855 * Buckets * (+10)
22:34:11 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=157870&oldid=157771 * Buckets * (+9)
22:34:24 <esolangs> [[Jil]] N https://esolangs.org/w/index.php?oldid=157871 * Buckets * (+1401) Created page with "Jil is an Esoteric programming language created by [[User:Buckets]] in 2021. {| class="wikitable" |- ! Commands !! Instructions |- | > || Set the Input to The current Target. |- | - || Set the Target to The Next character as A Variable. |- | < || Output The Current target I
22:35:25 <esolangs> [[Jil]] M https://esolangs.org/w/index.php?diff=157872&oldid=157871 * Buckets * (+1)
22:37:12 <esolangs> [[Greed]] M https://esolangs.org/w/index.php?diff=157873&oldid=157868 * Las-r * (+109) Add links to source and creator.
22:39:47 <esolangs> [[Greed]] M https://esolangs.org/w/index.php?diff=157874&oldid=157873 * Las-r * (+16)
22:42:14 <esolangs> [[Greed]] M https://esolangs.org/w/index.php?diff=157875&oldid=157874 * Las-r * (+40) Add categories
22:42:53 <esolangs> [[Greed]] M https://esolangs.org/w/index.php?diff=157876&oldid=157875 * Las-r * (+1) Fix categories
22:43:05 <esolangs> [[Greed]] M https://esolangs.org/w/index.php?diff=157877&oldid=157876 * Las-r * (-3)
22:47:30 <esolangs> [[Treadnil]] https://esolangs.org/w/index.php?diff=157878&oldid=148990 * BoundedBeans * (-1) Fixed Truth machine
22:47:40 <esolangs> [[WTF]] https://esolangs.org/w/index.php?diff=157879&oldid=157844 * H33T33 * (+592)
22:50:02 <esolangs> [[Greed]] M https://esolangs.org/w/index.php?diff=157880&oldid=157877 * Las-r * (+85) Add more categories
22:53:01 <esolangs> [[Hello world program in esoteric languages (D-G)]] M https://esolangs.org/w/index.php?diff=157881&oldid=152431 * Las-r * (+200) Add greed
22:54:50 <esolangs> [[Hello world program in esoteric languages (D-G)]] M https://esolangs.org/w/index.php?diff=157882&oldid=157881 * Las-r * (-30) Fix formatting so greed doesnt get cut off
22:57:46 <esolangs> [[Greed]] M https://esolangs.org/w/index.php?diff=157883&oldid=157880 * Las-r * (+108) Add brainfuck inspiration
22:59:09 <b_jonas> ais523 "empty program and loop bodys aren't allowed, and there is no way to combine commands in order to produce a no-op" => you could do that with a hypothetical CPU where every instruction overwrites a result or flags register, so if you want to do a conditional branch with the status flags you have to put the branch instruction right after the compare instruction (with not even a function call or
22:59:15 <b_jonas> return between) and if you want to store the result of some arithmetic then you have to put the store right after the arithmetic instruction
23:01:58 <b_jonas> no no-op combinations because you can never preserve both result registers from the previous state, only one of the two
23:06:53 <b_jonas> or you could have a machine where every instruction writes exactly one of the eight generaly purpose registers, and the instruction can never read and write the same register, so you always lose the value of one of the eight
23:12:23 <b_jonas> heck, let's make that sillier, there are 9 general purpose registers, every instruction nominally has two register input arguments and one register output arguments and all three must be distinct, and the three register indexes together are encoded into a 9 bit field. some instructions ignore one or both nominal input registers, just to keep the operand encoding uniform, but the output register is
23:20:31 -!- Lord_of_Life_ has joined.
23:22:00 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
23:22:01 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
00:22:30 -!- lisbeths has quit (Quit: Connection closed for inactivity).
00:49:52 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=157884&oldid=157866 * Shazun bhasfu * (+248) /* Introductions */
01:03:02 <esolangs> [[Somp]] N https://esolangs.org/w/index.php?oldid=157885 * Shazun bhasfu * (+855) the somp esolang!
01:03:19 <esolangs> [[Somp]] M https://esolangs.org/w/index.php?diff=157886&oldid=157885 * Shazun bhasfu * (+1)
01:03:31 <esolangs> [[Somp]] M https://esolangs.org/w/index.php?diff=157887&oldid=157886 * Shazun bhasfu * (+4)
01:05:49 -!- 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:06:26 <esolangs> [[Talk:Anti-Machine language]] https://esolangs.org/w/index.php?diff=157888&oldid=157554 * None1 * (+284) /* What counts as a machine? */
01:21:36 <esolangs> [[Machine-language]] N https://esolangs.org/w/index.php?oldid=157889 * None1 * (+965) Created page with ":{{Distinguish/Confusion|text=the non-esoteric machine language, which is the language used by the CPU directly.}} '''Machine-language''', as opposed to [[Anti-machine language]], is invented by [[User:None1]]. ==Execution== This esolang is the same as [[brainfu
01:21:45 <esolangs> [[Machine-language]] https://esolangs.org/w/index.php?diff=157890&oldid=157889 * None1 * (+0)
01:22:44 <esolangs> [[Joke language list]] https://esolangs.org/w/index.php?diff=157891&oldid=156958 * None1 * (+67) /* General languages */
01:23:10 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=157892&oldid=157219 * None1 * (+66)
01:24:25 <esolangs> [[User talk:H. H. P. M. P. Cole]] M https://esolangs.org/w/index.php?diff=157893&oldid=157846 * H. H. P. M. P. Cole * (+136)
01:50:11 <esolangs> [[User talk:H. H. P. M. P. Cole]] https://esolangs.org/w/index.php?diff=157894&oldid=157893 * Hotcrystal0 * (+292)
01:50:45 <esolangs> [[User talk:H. H. P. M. P. Cole]] https://esolangs.org/w/index.php?diff=157895&oldid=157894 * Hotcrystal0 * (-162)
02:18:20 <esolangs> [[ShiftEso]] https://esolangs.org/w/index.php?diff=157896&oldid=157865 * TheCatFromGithub * (+67)
02:31:35 <esolangs> [[Somp]] M https://esolangs.org/w/index.php?diff=157897&oldid=157887 * Shazun bhasfu * (+41)
02:34:29 <esolangs> [[Somp]] M https://esolangs.org/w/index.php?diff=157898&oldid=157897 * Aadenboy * (-52) fixing formatting
02:35:42 <esolangs> [[Somp]] M https://esolangs.org/w/index.php?diff=157899&oldid=157898 * Shazun bhasfu * (+27)
02:36:49 <esolangs> [[Somp]] M https://esolangs.org/w/index.php?diff=157900&oldid=157899 * Shazun bhasfu * (+26)
02:36:58 <esolangs> [[ShiftEso]] M https://esolangs.org/w/index.php?diff=157901&oldid=157896 * TheCatFromGithub * (+2) fixed to be more consistent
02:38:02 <esolangs> [[ShiftEso]] M https://esolangs.org/w/index.php?diff=157902&oldid=157901 * Aadenboy * (-2) I assume you might want the link to be visible?
02:40:30 <esolangs> [[ShiftEso]] M https://esolangs.org/w/index.php?diff=157903&oldid=157902 * TheCatFromGithub * (+5) /* An explanation of shifting */ fixed some errors i made
03:51:18 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=157904&oldid=157820 * PrySigneToFry * (+920)
05:10:02 <esolangs> [[Kyu]] N https://esolangs.org/w/index.php?oldid=157905 * BoundedBeans * (+15968) Created page with "Kyu is a weird semi-esoteric language by [[User:BoundedBeans]] created for an unpublished scratch project of a weird console-only queue-based operating system called Kronos-QOS. However, the language is not very queue-based itself. Also, the language has many dependen
05:10:28 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=157906&oldid=157869 * BoundedBeans * (+10)
05:11:33 <esolangs> [[User:BoundedBeans]] https://esolangs.org/w/index.php?diff=157907&oldid=153052 * BoundedBeans * (+154)
05:16:43 <esolangs> [[Kyu]] https://esolangs.org/w/index.php?diff=157908&oldid=157905 * BoundedBeans * (+63) The visual basic thing isn't exact enough to be considered a conformant implementation
05:31:47 <esolangs> [[User talk:PrySigneToFry]] https://esolangs.org/w/index.php?diff=157909&oldid=156951 * None1 * (+349) /* programming language */
06:01:16 <esolangs> [[User:H. H. P. M. P. Cole]] M https://esolangs.org/w/index.php?diff=157910&oldid=157831 * H. H. P. M. P. Cole * (+54)
06:02:49 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157911&oldid=157835 * H. H. P. M. P. Cole * (-961) Replaced content with "no."
06:03:01 <esolangs> [[User:H. H. P. M. P. Cole]] M https://esolangs.org/w/index.php?diff=157912&oldid=157910 * H. H. P. M. P. Cole * (-45)
06:11:46 <esolangs> [[Special:Log/upload]] upload * H. H. P. M. P. Cole * uploaded "[[File:Logica logo.png]]"
06:12:32 <esolangs> [[Logica]] M https://esolangs.org/w/index.php?diff=157914&oldid=157841 * H. H. P. M. P. Cole * (+61)
06:12:51 <esolangs> [[Logica]] M https://esolangs.org/w/index.php?diff=157915&oldid=157914 * H. H. P. M. P. Cole * (-1)
06:28:20 -!- tromp has joined.
07:17:31 <esolangs> [[Irma]] https://esolangs.org/w/index.php?diff=157916&oldid=157749 * Neon * (+1671)
07:19:30 <esolangs> [[Irma]] https://esolangs.org/w/index.php?diff=157917&oldid=157916 * Neon * (+97)
07:22:27 <esolangs> [[Irma]] https://esolangs.org/w/index.php?diff=157918&oldid=157917 * Neon * (+161)
07:23:44 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
07:24:07 <esolangs> [[Irma]] M https://esolangs.org/w/index.php?diff=157919&oldid=157918 * Neon * (+7)
07:31:52 -!- tromp has joined.
07:45:16 <esolangs> [[Talk:SETANDCOUNT]] N https://esolangs.org/w/index.php?oldid=157920 * Cycwin * (+74) Created page with "Can someone help me...Maybe it can realize one-register minsky machine?..."
08:20:14 -!- Sgeo has quit (Read error: Connection reset by peer).
08:22:06 -!- Sgeo has joined.
08:39:12 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:30:35 <esolangs> [[Minsky machine busy beaver]] https://esolangs.org/w/index.php?diff=157921&oldid=157112 * C++DSUCKER * (+0)
09:49:55 -!- tromp has joined.
10:38:37 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
10:44:01 <esolangs> [[Logica]] M https://esolangs.org/w/index.php?diff=157922&oldid=157915 * H. H. P. M. P. Cole * (+166)
10:49:24 <esolangs> [[User:H. H. P. M. P. Cole]] M https://esolangs.org/w/index.php?diff=157923&oldid=157912 * H. H. P. M. P. Cole * (+45)
10:49:33 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157924&oldid=157911 * H. H. P. M. P. Cole * (+961)
11:06:05 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157925&oldid=157924 * H. H. P. M. P. Cole * (+1298)
11:06:36 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157926&oldid=157925 * H. H. P. M. P. Cole * (+10)
11:07:20 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157927&oldid=157926 * H. H. P. M. P. Cole * (+84)
11:19:47 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157928&oldid=157927 * H. H. P. M. P. Cole * (+1223)
11:21:01 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157929&oldid=157928 * H. H. P. M. P. Cole * (+3)
11:21:49 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157930&oldid=157929 * H. H. P. M. P. Cole * (+54)
11:22:52 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157931&oldid=157930 * H. H. P. M. P. Cole * (-3)
11:24:53 -!- tromp has joined.
11:36:22 -!- wib_jonas has joined.
11:36:43 -!- Sgeo has quit (Read error: Connection reset by peer).
11:44:57 <wib_jonas> ais523: the change in Rustc 1.87.0, does that solve whatever problem you had with writing vectorized code that dispatches between CPU types in rust? or does this address a different problem?
11:48:38 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:18:37 -!- amby has joined.
12:37:45 <esolangs> [[ShiftEso]] https://esolangs.org/w/index.php?diff=157932&oldid=157903 * TheCatFromGithub * (+95) /* Examples */ add example
12:40:55 <esolangs> [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=157933&oldid=157725 * Hotcrystal0 * (+29)
13:01:41 -!- tromp has joined.
13:03:56 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157934&oldid=157931 * H. H. P. M. P. Cole * (-1) /* Example program */
13:08:53 <esolangs> [[ShiftEso]] M https://esolangs.org/w/index.php?diff=157935&oldid=157932 * TheCatFromGithub * (+26) /* Hello, World! */ better
13:10:04 <esolangs> [[User:H. H. P. M. P. Cole/Modulo 2 v2]] M https://esolangs.org/w/index.php?diff=157936&oldid=157934 * H. H. P. M. P. Cole * (+97)
13:22:12 -!- shikhin has quit (Ping timeout: 252 seconds).
13:26:56 -!- shikhin has joined.
13:42:48 <esolangs> [[Category talk:Sus]] N https://esolangs.org/w/index.php?oldid=157937 * PrySigneToFry * (+867) Created page with "So we can clean out this category. --[[User:PrySigneToFry|<span style="color:blue;background:yellow;"></span>]][[User talk:PrySigneToFry|<span style="color:aqua;background:red;"></span>]]Special:Contributions/PrySigneToFry|<span style="color:red;backgroun
13:47:27 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:55:27 <esolangs> [[User talk:PrySigneToFry]] https://esolangs.org/w/index.php?diff=157938&oldid=157909 * None1 * (+320) /* programming language */
13:58:18 <esolangs> [[XVector]] N https://esolangs.org/w/index.php?oldid=157939 * None1 * (+1024) Created page with "'''xVector''' is an [[OISC]] invented by [[User:None1]] and inspired by [[Vector]], it uses a 3-dimensional vector. Instead of dot product, it uses cross product. ==Data== As said above, Vector uses a 3D vector called ''A'', it is initially (0,0,0). A vector literal is r
13:58:32 <esolangs> [[XVector]] https://esolangs.org/w/index.php?diff=157940&oldid=157939 * None1 * (+14)
13:58:50 <esolangs> [[XVector]] M https://esolangs.org/w/index.php?diff=157941&oldid=157940 * None1 * (+0)
13:59:47 <esolangs> [[OISC]] https://esolangs.org/w/index.php?diff=157942&oldid=157655 * None1 * (+183) /* List of OISCs */
14:06:30 <esolangs> [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=157943&oldid=157933 * PrySigneToFry * (+286)
14:09:53 -!- tromp has joined.
14:46:13 -!- Lykaina has joined.
14:48:19 <esolangs> [[Irma]] M https://esolangs.org/w/index.php?diff=157944&oldid=157919 * Neon * (+283)
15:19:13 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:34:00 -!- wib_jonas has quit (Quit: Client closed).
15:36:57 -!- tromp has joined.
16:03:48 -!- ajal has joined.
16:04:36 -!- amby has quit (Ping timeout: 268 seconds).
16:35:14 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:56:12 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
16:56:34 -!- Lord_of_Life has joined.
17:14:58 -!- shikhin has changed hostmask to ~shikhin@offtopia/offtopian.
17:22:28 -!- tromp has joined.
17:32:28 -!- Lykaina has quit (Quit: Leaving).
18:17:40 <esolangs> [[Talk:Black]] https://esolangs.org/w/index.php?diff=157945&oldid=131504 * Hotcrystal0 * (+331)
18:19:06 <esolangs> [[User:MathR]] https://esolangs.org/w/index.php?diff=157946&oldid=83925 * MathR * (-68) Blanked the page
18:46:56 -!- ais523 has joined.
18:47:19 <ais523> <wib_jonas> ais523: the change in Rustc 1.87.0, does that solve whatever problem you had with writing vectorized code that dispatches between CPU types in rust? ← it helps, in that it makes a solution possible
18:47:49 <ais523> but it isn't a complete solution – you still have to write the functions multiple times with different target_feature flags, it just reduces the amount of unsafe you have to use
18:48:58 <ais523> I like your "every instruction overwrites a register that wasn't an input" construction, it seems to give a clear path to creating a language with no syntactic monoid
18:54:05 <esolangs> [[Afth]] https://esolangs.org/w/index.php?diff=157947&oldid=153612 * Lykaina * (-2) /* Arrays */ changing 16384 to 256
18:54:40 -!- Sgeo has joined.
18:57:08 <esolangs> [[Afth]] https://esolangs.org/w/index.php?diff=157948&oldid=157947 * Lykaina * (+6) /* Core Instructions */ updating to current
18:58:26 -!- leah2 has quit (Ping timeout: 265 seconds).
18:59:42 <fizzie> Oh, oh, it's Eurovision time again.
19:00:57 <esolangs> [[Afth/ASCII-Core]] https://esolangs.org/w/index.php?diff=157949&oldid=152469 * Lykaina * (+0) /* ASCII-Sorted Core Instructions */ updating to current
19:06:11 <esolangs> [[User talk:Hakerh400]] https://esolangs.org/w/index.php?diff=157950&oldid=157127 * Lykaina * (+161) /* Afth Language */
19:11:06 -!- leah2 has joined.
21:21:24 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:22:28 -!- tromp has joined.
22:28:50 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=157951&oldid=157906 * Buckets * (+12)
22:29:21 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=157952&oldid=157870 * Buckets * (+11)
22:29:38 <esolangs> [[28]] N https://esolangs.org/w/index.php?oldid=157953 * Buckets * (+3078) Created page with "28 is an Esoteric programming language created by [[User:Buckets]] in 2025. {| class="wikitable" |- ! Commands !! Instructions |- | || Start A String. |- | || End a string. |- | { || Start A List. |- | } || End a list, You csn only Make an Empty set. |- | \\ || Name the l
22:31:04 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:48:18 -!- rodgort has quit (Ping timeout: 245 seconds).
22:49:29 -!- rodgort has joined.
22:50:44 <esolangs> [[Special:Log/newusers]] create * Yomikoma * New user account
22:53:21 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=157954&oldid=157884 * Yomikoma * (+232)
22:53:45 -!- impomatic has joined.
22:59:01 <esolangs> [[Mystical]] N https://esolangs.org/w/index.php?oldid=157955 * Yomikoma * (+357) Start page
23:04:22 <zzo38> I thought that in a operating system with capabilities, maybe it will be necessary to add two kind of capabilities: communication capabilities and identification capabilities. (They are the same to the CPU, but the operating system kernel treats them differently.)
23:05:58 <zzo38> Identification capabilities cannot be used for communication (trying to send to it is like a disconnected capability and trying to receive from it produces nothing), but the process that created a identification capability (and only that process; no others) can tell that it is a identification capability and can read/write data it stores (probably a single 64-bit value is sufficient; it can be an address if more data is needed).
23:06:47 <zzo38> Or, maybe such a thing can be done better in a different way.
23:21:00 -!- Lord_of_Life_ has joined.
23:21:39 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
23:22:21 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:25:01 <impomatic> There's a nano Core War tournament if anyone's interested, $100 first prize. You just have to program a 5-instruction warrior (or evolve one with something like Yace). http://inversed.ru/CoreWar_Challenge_2.htm
23:27:46 <int-e> impomatic: I revisited this old thing: https://old.reddit.com/r/box256/comments/4dtkwb/official_leaderboard/mmof14w/ (and many more improvement to other pictures, all in that thread0
00:01:23 -!- 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).
00:17:29 <esolangs> [[TrumpScript]] https://esolangs.org/w/index.php?diff=157956&oldid=139796 * H33T33 * (+1)
00:21:19 <ais523> impomatic: I'm surprised that just five instructions is enough to create a sufficient spread of different possible strategies
00:21:42 <ais523> I guess it's at about the point where most of the basic strategies can be just-about implemented
00:22:32 <ais523> can scissors be done in five? it might be possible with code-golfing tricks, but seems like it might need a little more
00:50:21 <esolangs> [[SussyLang]] https://esolangs.org/w/index.php?diff=157957&oldid=133460 * PrySigneToFry * (+19)
00:53:35 <esolangs> [[Machine-language]] https://esolangs.org/w/index.php?diff=157958&oldid=157890 * PrySigneToFry * (+173)
00:59:48 <esolangs> [[Machine-language]] https://esolangs.org/w/index.php?diff=157959&oldid=157958 * None1 * (+57)
01:00:06 <esolangs> [[Machine-language]] https://esolangs.org/w/index.php?diff=157960&oldid=157959 * None1 * (+0)
01:00:50 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=157961&oldid=157951 * None1 * (+14) /* X */
01:01:28 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=157962&oldid=157892 * None1 * (+75) /* My Esolangs */
01:02:54 <esolangs> [[Machine-language]] https://esolangs.org/w/index.php?diff=157963&oldid=157960 * None1 * (+18) /* Hello, World! */
01:03:20 <esolangs> [[Anti-Machine language]] https://esolangs.org/w/index.php?diff=157964&oldid=157652 * None1 * (+18)
01:54:09 -!- ^[ has quit (Quit: ^[).
02:05:03 -!- op_4 has quit (Remote host closed the connection).
02:05:39 -!- op_4 has joined.
02:15:09 -!- ^[ has joined.
02:50:27 <esolangs> [[User talk:PrySigneToFryAltered]] N https://esolangs.org/w/index.php?oldid=157965 * PrySigneToFry * (+487) Created page with "This account only be used when PrySigneToFry forgot his password. = WARNING = <span style='color:red;font-family:Segoe UI;'>THIS ACCOUNT SHOULD ONLY BE USED WHEN PRYSIGNETOFRY LOG OUT AND TRY TO CANCEL HIS ACCOUNT. IF ANY EDITS APPEARS ON TH
03:00:32 -!- chiselfuse has quit (Remote host closed the connection).
03:00:49 -!- chiselfuse has joined.
03:04:11 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
03:43:02 -!- tromp has joined.
03:43:08 -!- tromp has quit (Client Quit).
04:52:22 -!- Lord_of_Life has joined.
05:37:01 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=157966&oldid=157904 * PrySigneToFry * (+928)
05:42:03 <esolangs> [[Special:Log/move]] move * I am islptng * moved [[User:I am islptng/Draft]] to [[LinearModulo2]]: Misspelled title
05:42:03 <esolangs> [[Special:Log/move]] move * I am islptng * moved [[User talk:I am islptng/Draft]] to [[Talk:LinearModulo2]]: Misspelled title
05:43:52 <esolangs> [[User:I am islptng/Draft]] https://esolangs.org/w/index.php?diff=157971&oldid=157968 * I am islptng * (+60) Removed redirect to [[LinearModulo2]]
05:55:01 -!- zzo38 has quit (Ping timeout: 276 seconds).
06:02:30 -!- citrons has quit (Remote host closed the connection).
06:28:23 -!- ais523 has quit (Ping timeout: 252 seconds).
06:50:08 -!- tromp has joined.
07:31:45 <esolangs> [[User:I am islptng/Draft]] https://esolangs.org/w/index.php?diff=157972&oldid=157971 * I am islptng * (+318)
08:21:37 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:29:46 -!- tromp has joined.
08:54:06 -!- impomatic has quit (Ping timeout: 240 seconds).
08:58:23 <esolangs> [[Special:Log/newusers]] create * EsolangFloris * New user account
09:04:31 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
09:06:03 -!- tromp has joined.
09:07:56 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=157973&oldid=157954 * EsolangFloris * (+247) Add my description thingy
09:15:57 <esolangs> [[User:EsolangFloris]] N https://esolangs.org/w/index.php?oldid=157974 * EsolangFloris * (+271) User page
09:47:19 -!- Sgeo has quit (Read error: Connection reset by peer).
10:46:08 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
10:56:32 -!- ais523 has joined.
11:02:12 -!- ais523 has quit (Quit: quit).
11:17:47 <esolangs> [[Semistack]] N https://esolangs.org/w/index.php?oldid=157975 * PrySigneToFry * (+3488) Created page with "Semistack is an Esoteric programming language designed by PSTF for all beginners of stack structure. It has a stack, and it will be Turing-complete. = Overview of Semistack = Semistack doesn't ignore case, so every command should all in lowercase(or be parsed
11:19:00 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=157976&oldid=157961 * PrySigneToFry * (+16)
11:30:45 -!- tromp has joined.
11:53:44 -!- amby has joined.
12:12:18 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:13:21 <esolangs> [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=157977&oldid=157943 * Hotcrystal0 * (+34) Just so you know, you are not allowed to lock the rules on the main board.
13:16:15 <esolangs> [[EternalGolf]] https://esolangs.org/w/index.php?diff=157978&oldid=156654 * PrySigneToFry * (+22)
13:20:54 <esolangs> [[User:I am islptng/Silicon dioxide in a polypropylene box]] https://esolangs.org/w/index.php?diff=157979&oldid=155709 * PrySigneToFry * (+10)
13:28:18 <esolangs> [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/My new brief introduction]] N https://esolangs.org/w/index.php?oldid=157980 * PrySigneToFry * (+1176) Created page with "This is my new brief introduction. = Text = I'm PrySigneToFry. By chance, I appeared here, a mysterious realm. At that time, the first page I visited was [[Befunge]]. In the first few mon
13:28:38 <esolangs> [[User:PrySigneToFry/Silicon dioxide in a polypropylene box]] https://esolangs.org/w/index.php?diff=157981&oldid=155527 * PrySigneToFry * (+90)
13:29:34 -!- tromp has joined.
13:50:33 -!- Lykaina has joined.
14:46:41 -!- igelcbdx2 has joined.
14:49:26 -!- igelcbdx2 has quit (Client Quit).
15:51:12 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:52:49 -!- Noisytoot has quit (Excess Flood).
15:55:22 -!- Noisytoot has joined.
15:58:42 -!- Noisytoot has quit (Remote host closed the connection).
16:00:05 -!- Noisytoot has joined.
16:05:56 <esolangs> [[6]] https://esolangs.org/w/index.php?diff=157982&oldid=152272 * Krolkrol * (+39)
16:07:36 -!- tromp has joined.
16:12:50 -!- Lykaina has quit (Quit: Leaving).
16:24:14 <esolangs> [[Afth/ASCII-Core]] https://esolangs.org/w/index.php?diff=157983&oldid=157949 * Lykaina * (+6) /* ASCII-Sorted Core Instructions */ updating to current
17:24:18 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:40:35 -!- impomatic has joined.
17:46:20 -!- Sgeo has joined.
17:47:46 -!- tromp has joined.
18:42:24 <esolangs> [[User:TenBillionPlusOne/Sandbox]] https://esolangs.org/w/index.php?diff=157984&oldid=157838 * TenBillionPlusOne * (+18)
18:52:13 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=157985&oldid=157833 * TenBillionPlusOne * (+330)
19:01:07 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=157986&oldid=157985 * TenBillionPlusOne * (+428)
19:37:27 -!- Guest19 has joined.
19:37:56 -!- Guest19 has quit (Client Quit).
20:14:13 -!- zzo38 has joined.
20:30:07 -!- amby has quit (Remote host closed the connection).
20:30:24 -!- amby has joined.
20:48:59 -!- visilii_ has joined.
20:49:19 -!- visilii has quit (Ping timeout: 252 seconds).
21:12:27 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:19:25 -!- tromp has joined.
21:59:41 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
00:41:37 -!- 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:44:18 <esolangs> [[User:I am islptng/Silicon dioxide in a polypropylene box]] https://esolangs.org/w/index.php?diff=157987&oldid=157979 * I am islptng * (-13)
01:53:47 -!- impomatic has quit (Quit: Client closed).
04:45:18 -!- amadaluzia has joined.
04:55:26 -!- Lord_of_Life_ has joined.
04:56:19 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
04:56:49 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
05:11:03 -!- Noisytoot has quit (Remote host closed the connection).
05:11:26 -!- Noisytoot has joined.
05:14:25 -!- Noisytoot has quit (Remote host closed the connection).
05:15:51 -!- Noisytoot has joined.
05:23:34 <esolangs> [[Timeline]] N https://esolangs.org/w/index.php?oldid=157988 * Undalevein * (+14794) Added Timeline language, still working on it but I only saving progress.
05:42:45 -!- zzo38 has quit (Ping timeout: 252 seconds).
05:53:37 <esolangs> [[Timeline]] https://esolangs.org/w/index.php?diff=157989&oldid=157988 * Undalevein * (-273) Finished working on the Language Overview (for now)
05:53:45 -!- amadaluzia has quit (Ping timeout: 252 seconds).
06:00:36 <esolangs> [[Timeline]] https://esolangs.org/w/index.php?diff=157990&oldid=157989 * Undalevein * (+530) Added example programs.
06:04:25 <esolangs> [[Timeline]] M https://esolangs.org/w/index.php?diff=157991&oldid=157990 * Undalevein * (+10) Changed Unknown Usability to Unknown Computational Class
06:06:04 <esolangs> [[Timeline]] M https://esolangs.org/w/index.php?diff=157992&oldid=157991 * Undalevein * (+53) Changed quotations to <code>
06:06:57 <esolangs> [[Timeline]] M https://esolangs.org/w/index.php?diff=157993&oldid=157992 * Undalevein * (+0) Not being careful with typos, sorry.
06:20:50 -!- tromp has joined.
06:34:45 <esolangs> [[User:Undalevein]] N https://esolangs.org/w/index.php?oldid=157994 * Undalevein * (+135) Added a small bio.
07:16:52 -!- Sgeo has quit (Read error: Connection reset by peer).
07:34:31 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
08:41:26 -!- tromp has joined.
08:58:12 <esolangs> [[UserEdited]] M https://esolangs.org/w/index.php?diff=157995&oldid=157480 * H. H. P. M. P. Cole * (+863)
09:12:10 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=157996&oldid=157995 * I am islptng * (+76) /* Commands */
09:55:26 -!- amby has joined.
10:25:56 <esolangs> [[Talk:Semistack]] N https://esolangs.org/w/index.php?oldid=157997 * I am islptng * (+677) Created page with "Another [[SLet (Old 3)|Slet 3]] Derivative??? Interesting. --~~~~"
11:18:23 <gry> APic: may i ask how are you
11:18:30 <gry> what you doing here
11:19:01 <gry> i wanna figure out what you working on. i code in perl and a bit js
11:21:15 * APic just breakfasts a Butter-Brezn
11:21:22 <APic> No active Projects currently
11:24:49 <gry> hm, what you special in?
11:31:45 <esolangs> [[Timeline]] https://esolangs.org/w/index.php?diff=157998&oldid=157993 * Undalevein * (-2) Changed the Hello, World program to work in the latest update.
11:32:42 <esolangs> [[Timeline]] M https://esolangs.org/w/index.php?diff=157999&oldid=157998 * Undalevein * (-11) Fixed weird grammar/contextual issue.
11:32:42 * APic can code in C, C++, x86/x64/ARM-Assembly, Perl, Python, Java and JavaScript
11:32:53 <APic> And some BrainFuck
11:39:21 -!- gry has changed hostmask to ~gry@botters/gry.
11:41:29 <gry> do you know of some platfirm for byte sized content
11:41:33 <gry> like duolingo
11:41:44 <gry> but where i can add my own "course"
11:54:32 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
12:19:39 -!- wib_jonas has joined.
12:52:17 <esolangs> [[User talk:H. H. P. M. P. Cole]] https://esolangs.org/w/index.php?diff=158000&oldid=157895 * Hotcrystal0 * (+479)
12:53:06 <esolangs> [[User talk:H. H. P. M. P. Cole]] https://esolangs.org/w/index.php?diff=158001&oldid=158000 * Hotcrystal0 * (-163)
13:00:37 -!- impomatic has joined.
13:02:43 <esolangs> [[UserEdited]] https://esolangs.org/w/index.php?diff=158002&oldid=157996 * Hotcrystal0 * (+0)
13:02:54 -!- tromp has joined.
13:16:19 <wib_jonas> there's something I don't understand about inter-thread mutex interfaces. so we have all these multithreading library interfaces, including Posix threads, C++11 threads, C11 threads, rust std::sync.
13:16:24 <wib_jonas> they each have their own mutex and once_flag implementations that are incompatible with other libraries but have similar semantics for inter-thread synchronization. what I find weird is how the mutex and once_flag are created and destroyed.
13:16:29 <wib_jonas> the linux implementation of posix threads has the easiest to use interface. both mutexes and once_flags are just pure memory, they can be initialized by a C constant initializer, and you can just forget about either of them without calling a destructor without leaking any resuorce.
13:16:33 <wib_jonas> this makes sense, because you can effectively implement these with an atomic flag and a linked list of nodes that the waiters allocate on the stack.
13:16:38 <wib_jonas> in the contented case, the waiter blocks a signal, atomically pushes itself to the wake-up list by adding its thread-id, verifies that the lock flag is still set, then sigwaits for the signal, then atomically checks-and-sets the flag, then atomically pops himself from the wake-up list.
13:17:03 <wib_jonas> when the thread that was holding the mutex unlocks, it atomically clears the flag then pthread_kills the first thread in the wake-up list.
13:17:07 <wib_jonas> or something like that, maybe I got the sequence a bit wrong here.
13:17:11 <wib_jonas> the C11, C++, Rust interfaces are a bit less general: they all give you a constructor and destructor function for mutexes, so a mutex can hold resources like operating system handles. this makes sense, they want to be general so they can be implemented on any system.
13:17:14 <wib_jonas> the posix threads interface as POSIX defines it also gives you a constructor and destructor function. but it also says that instead of calling the constructor, you can just use a static initializer.
13:17:37 <wib_jonas> further, https://man7.org/linux/man-pages/man3/pthread_mutex_destroy.3p.html has the weird statement "Attempting to initialize an already initialized mutex results in undefined behavior".
13:17:40 <wib_jonas> what kind of implementation would ever need such a strong guarantee that you aren't allowed to leak a mutex and overwrite the memory containing the structure even if you promise never to use it again?
13:17:44 <wib_jonas> but the weirdest part is the once_flag. neither the posix threads pthread_once_t and C11 once_flag type have no destructors, and both can be statically initialized.
13:17:47 <wib_jonas> but the weirdest part is the once_flag. neither the posix threads pthread_once_t and C11 once_flag type have no destructors, and both can be statically initialized.
13:17:50 <wib_jonas> how come mutexes can leak resources if you don't destroy them, but once_flag can somehow be implemented such that it doesn't hold any resources?
13:21:17 -!- ajal has joined.
13:23:00 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
13:23:49 -!- amby has quit (Ping timeout: 260 seconds).
13:27:57 -!- tromp has joined.
13:32:16 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=158003&oldid=157674 * Cycwin * (+89) /* uhhhhhhhhhhhhh */ new section
14:01:52 <wib_jonas> in the context of a memory tracker that tries to run your program in a slower way where it tracks every memory allocation and free that you do and tries to find where you dereference a stray pointer or where you are accessing a library type that is supposed to be opaque in a way that the library interface doesn't expose for it. if you have a type
14:01:52 <wib_jonas> like the linux pthreads interface's mutex which normally doesn't need a destructor because it doesn't hold anything outside the structure, but the safety checked version does need to be destroyed or else it leaks resources, that can be annoying.
14:09:26 <wib_jonas> for a type that does have a destructor, there's no problem: if the debugged program leaks one without calling the destructor, it would already leak at least memory, so it's fine if the safety checker leaks more resources to track it.
14:19:03 <esolangs> [[User talk:H. H. P. M. P. Cole]] https://esolangs.org/w/index.php?diff=158004&oldid=158001 * Hotcrystal0 * (-316)
14:30:54 -!- impomatic has quit (Ping timeout: 240 seconds).
14:33:18 <esolangs> [[UserEdited/Versions]] https://esolangs.org/w/index.php?diff=158005&oldid=156250 * Hotcrystal0 * (+46)
14:39:17 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
14:49:30 -!- impomatic has joined.
14:58:14 -!- tromp has joined.
15:09:16 -!- impomatic has quit (Quit: Client closed).
15:17:27 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
15:23:50 -!- impomatic has joined.
15:38:16 <wib_jonas> Windows 11 file explorer claims that the size of a file is "1,01,903 KB", and if I open the properties popup then it says that the file size is more precisely "99.5 MB (10,43,47,972 bytes)". Is this a normal way to place commas in some locales, or is there something weird going on here?
15:48:41 <wib_jonas> it looks like it is a thing in some locales. but I hadn't realized that this computer was set up that way.
15:56:22 <int-e> > (104347872 / 2^10, 104347872 / 2^20) -- rounded up, rounded down?
15:56:36 <int-e> wib_jonas: that looks quite atrocious
15:57:50 <wib_jonas> I had thought the digit grouping separators were always at multiples of some distance (usually 3 or 4) away from the decimal point. but apparently computer people find the weirdest format that is ever used in real life and build it into the locale and timezones systems.
16:06:20 -!- ajal has quit (Remote host closed the connection).
16:11:51 -!- tromp has joined.
16:23:16 -!- amby has joined.
16:40:04 <fizzie> That's the "Indian style", isn't it?
16:43:36 <fizzie> Makes the commas match with the local languages having words for 100,000 and 10,000,000 (and apparently higher quantities with more factors of 10² too).
16:55:59 <esolangs> [[Timeline]] https://esolangs.org/w/index.php?diff=158006&oldid=157999 * Undalevein * (+26) Fixed contextual issues and changed the symbol order
16:56:32 <esolangs> [[Timeline]] M https://esolangs.org/w/index.php?diff=158007&oldid=158006 * Undalevein * (+5) Fixed bio link
17:11:05 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:11:29 -!- wib_jonas has quit (Quit: Client closed).
17:22:46 <int-e> Fun to see g++ outperform clang++ by a factor of 3 (on a particular tight number-crunching loop).
17:25:25 -!- tromp has joined.
18:07:52 <int-e> woah something has gone seriously wrong with clang's register allocation in this case: https://paste.rs/ca13U.txt (top: clang++, bottom: g++ ...this is the hot part of the code though that may not be obvious to the compiler)
18:09:55 <int-e> Hmm hmm. I guess one thing that makes this code bigger and increases register pressure is that it unrolled the loop.
18:15:30 <int-e> No, I don't think so. GCC just did better strength reduction, so one of the multiplication is now an addition (leaq).
18:18:33 <int-e> Oh, no, not the leaq; it's the addq %rbp, %r8. Sorry for the monolog, will move on now :-)
18:24:02 <esolangs> [[User:TenBillionPlusOne/Draft]] M https://esolangs.org/w/index.php?diff=158008&oldid=157986 * TenBillionPlusOne * (+52)
18:31:34 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158009&oldid=158008 * TenBillionPlusOne * (+400)
18:34:19 <int-e> Well, if I do that transformation manually, clang++ and g++ produce code of virtually equal speed.
18:35:31 -!- zzo38 has joined.
18:40:43 -!- molson has quit (Quit: Leaving).
18:41:57 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158010&oldid=158009 * TenBillionPlusOne * (+634)
18:51:18 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158011&oldid=158010 * TenBillionPlusOne * (+434) /* Expressions */
18:51:45 <zzo38> If making a better programming language than C, I think that I would avoid the confusing syntax for types that C has, I would avoid Unicode, I would avoid using "0" alone as the prefix for octal numbers ("0o" would be better), I would avoid confusions with the syntax such as "/*" for comments even though "/" followed by "*" would be meaningful, and I would avoid some of the more modern stuff in other programming languages that I think
18:52:41 <zzo38> However, I would also think to add things, such as customizing the linking in a more elaborate way, which is something that C doesn't do and I think most others also don't do. Being able to specify that a variable has the same address as another variable also can sometimes be useful.
18:53:15 <b_jonas> if an esoteric programming language has two variants and one of them is a wimpmode then what would you call the other?
18:55:30 <esolangs> [[User:TenBillionPlusOne/Draft]] M https://esolangs.org/w/index.php?diff=158012&oldid=158011 * TenBillionPlusOne * (+66) /* Expressions */
18:56:25 <zzo38> Maybe you will call it "not-wimpmode", but maybe there will be a better name
18:57:08 <int-e> Hrm. I think I messed up that speed test. clang++ is still slow on this code. It did get rid of the extra imul though.
18:58:26 <int-e> zzo38: maybe you'd like Rust ;-)
18:59:47 <zzo38> Rust uses Unicode and I think also does not have a "goto" command like C (someone told me that the goto command in Rust is only usable for case blocks; C doesn't have this and I think it would be useful to have both uses of goto)
19:00:17 <int-e> well, you wanted something better than C ;-)
19:01:35 <int-e> I do think Rust's type syntax is pretty neat. Except maybe for function types.
19:02:05 <zzo38> In my opinion, most of the programming languages that they try to make better than C have various problems (and some of the things they add into new versions of C are also not so good, although some (such as the #embed command) are good)
19:02:16 <int-e> OTOH, Go's type syntax looks terrible.
19:02:27 <int-e> C's may be objectively bad but I'm used to it. ;-)
19:03:03 -!- impomatic has quit (Quit: Client closed).
19:12:02 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:18:52 <esolangs> [[Timeline]] https://esolangs.org/w/index.php?diff=158013&oldid=158007 * Undalevein * (+63) Added Truth Machine Example
19:19:15 <esolangs> [[Timeline]] M https://esolangs.org/w/index.php?diff=158014&oldid=158013 * Undalevein * (+2) Fixed header type
19:21:01 -!- tromp has joined.
19:21:50 -!- impomatic has joined.
19:22:00 <esolangs> [[Timeline]] M https://esolangs.org/w/index.php?diff=158015&oldid=158014 * Undalevein * (+2) Header revisions
19:28:59 -!- impomatic has quit (Quit: Client closed).
19:54:56 <fizzie> Hey, what's wrong with Go's types?
19:55:04 <fizzie> (I guess I might just have gotten used to them.)
19:58:54 <b_jonas> yeah, I'm also used to C's type syntax so I try to write f32[8] instead of [f32;8] for the array type in rust. the actual rust syntax just isn't in my finger yet.
20:13:18 -!- Ae has quit (Quit: Bye).
20:16:38 -!- Ae has joined.
20:18:25 <zzo38> I made up a ASN1_IDENTIFIED_DATA type but I don't know if that is really a good name or if a better name should be used instead. One use of this type is to identify the format and meaning of a DER file if used at top level (although it can also be used in other levels), but has other uses too.
20:19:28 <zzo38> It starts with a set of object identifiers, object descriptors, and/or sequences that start with a object identifier, and these identify the format (if there is more than one, any one of them (other than object descriptors) can be used; this way, a subset or special case of a file format can be identified). The second item is any value of any type.
20:21:05 <zzo38> (There is also an optional third item.)
20:21:18 <zzo38> Do you think there should be a different better name for such a thing?
20:35:29 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=158016&oldid=157315 * Undalevein * (+27) Added Vyxal Example
20:57:00 <esolangs> [[User programmed]] N https://esolangs.org/w/index.php?oldid=158017 * Helpeesl * (+331) Created page with "User programmed is an esolang experiment created on May 19th 2025 by [[user:helpeesl]] where you give this page a program and what it does, and Ill try to make a working esolang that does all programs correctly. == Programs == == What I think the commands are =
20:58:06 <esolangs> [[ShiftEso]] https://esolangs.org/w/index.php?diff=158018&oldid=157935 * TheCatFromGithub * (+73) new feature
20:58:38 <esolangs> [[ShiftEso]] M https://esolangs.org/w/index.php?diff=158019&oldid=158018 * TheCatFromGithub * (+0) needs to be there
21:04:34 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=158020&oldid=158003 * Ractangle * (+173) /* uhhhhhhhhhhhhh */
21:07:47 <esolangs> [[Postrado]] https://esolangs.org/w/index.php?diff=158021&oldid=154467 * Ractangle * (-20) /* With functions */
21:11:22 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=158022&oldid=158020 * Aadenboy * (+411) /* uhhhhhhhhhhhhh */
21:17:22 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:29:19 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158023&oldid=158017 * Hotcrystal0 * (+334)
21:29:40 <esolangs> [[Filename "xxx" doesn't seem to be a valid filename. Please check if the filename your trying to execute is written correctly]] https://esolangs.org/w/index.php?diff=158024&oldid=156111 * Ractangle * (-163) /* See also */
21:29:50 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158025&oldid=158023 * Hotcrystal0 * (+20)
21:30:16 <esolangs> [[User:Ractangle/Sandbox]] https://esolangs.org/w/index.php?diff=158026&oldid=155010 * Ractangle * (-10) /* Stuff to continue */
21:30:49 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158027&oldid=158025 * Hotcrystal0 * (-63)
21:32:13 <esolangs> [[Talk:User programmed]] N https://esolangs.org/w/index.php?oldid=158028 * Hotcrystal0 * (+298) Created page with "This first program should be an easy one to guess. ~~~~"
21:32:28 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=158029&oldid=157693 * Ractangle * (+213) /* Movie */
21:34:09 <esolangs> [[ShiftEso]] https://esolangs.org/w/index.php?diff=158030&oldid=158019 * TheCatFromGithub * (+98)
21:34:33 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158031&oldid=158027 * Helpeesl * (+140)
21:36:06 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158032&oldid=158031 * Hotcrystal0 * (+89)
21:36:15 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158033&oldid=158032 * Hotcrystal0 * (+248)
21:36:49 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158034&oldid=158033 * Hotcrystal0 * (+16)
21:37:27 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158035&oldid=158034 * Hotcrystal0 * (+67)
21:38:43 <esolangs> [[Template:Wip]] https://esolangs.org/w/index.php?diff=158036&oldid=140647 * Ractangle * (-3) Redirected page to [[Template:WIP]]
21:39:18 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158037&oldid=158035 * Hotcrystal0 * (+114)
21:39:32 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158038&oldid=158037 * Hotcrystal0 * (+0)
21:47:17 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158039&oldid=158038 * Helpeesl * (+69)
21:52:58 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158040&oldid=158039 * Hotcrystal0 * (+100)
21:54:31 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158041&oldid=158040 * Hotcrystal0 * (-303)
21:56:33 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158042&oldid=158041 * Hotcrystal0 * (+6)
21:56:54 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158043&oldid=158042 * Hotcrystal0 * (-1)
21:57:03 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158044&oldid=158043 * Hotcrystal0 * (+7)
21:59:25 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158045&oldid=158044 * Helpeesl * (+199)
22:00:52 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158046&oldid=158045 * Hotcrystal0 * (+73)
22:01:07 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158047&oldid=158046 * Hotcrystal0 * (-2)
22:02:14 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158048&oldid=158047 * Hotcrystal0 * (+41)
22:02:50 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158049&oldid=158048 * Helpeesl * (+110)
22:03:33 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158050&oldid=158049 * Helpeesl * (+29)
22:08:26 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158051&oldid=158050 * Hotcrystal0 * (+58)
22:12:23 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158052&oldid=158051 * Helpeesl * (+143) /* 8th (alright Im probably not going to end anytime soon) */ error found
22:12:57 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158053&oldid=158052 * Helpeesl * (+5)
22:15:05 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158054&oldid=158053 * Hotcrystal0 * (+274)
22:15:26 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158055&oldid=158054 * Hotcrystal0 * (+20)
22:15:43 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158056&oldid=158055 * Hotcrystal0 * (-20)
22:17:19 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158057&oldid=158056 * Hotcrystal0 * (-1)
22:21:57 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158058&oldid=158057 * Helpeesl * (-32)
22:25:36 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158059&oldid=158058 * Hotcrystal0 * (+8)
22:29:58 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158060&oldid=158059 * Helpeesl * (+182)
22:35:19 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158061&oldid=158060 * Helpeesl * (+40)
22:37:48 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158062&oldid=158061 * Helpeesl * (+12)
22:39:16 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158063&oldid=158062 * Hotcrystal0 * (+122)
22:51:33 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=158064&oldid=157976 * Buckets * (+12)
22:52:08 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=158065&oldid=157952 * Buckets * (+11)
22:52:38 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158066&oldid=158063 * Helpeesl * (+374)
22:53:23 <esolangs> [[Nymal]] N https://esolangs.org/w/index.php?oldid=158067 * Buckets * (+3149) Created page with "Nymal is an Esoteric programming language created by [[User:Buckets]] in 2022. {| class="wikitable" |- ! Commands !! Instructions |- | #"" || Push number to The top Stack. |- | "" || Push String to The top Stack. |- | < || Push Input to The top Stack as a String. |- | >
22:54:05 <esolangs> [[Nymal]] M https://esolangs.org/w/index.php?diff=158068&oldid=158067 * Buckets * (+17)
23:03:13 -!- Sgeo has joined.
23:18:13 -!- molson has joined.
23:22:19 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158069&oldid=158066 * Hotcrystal0 * (+138) Reorganizing the commands part + 15-17
23:22:49 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158070&oldid=158069 * Hotcrystal0 * (+3)
23:24:05 <esolangs> [[User talk:H. H. P. M. P. Cole]] https://esolangs.org/w/index.php?diff=158071&oldid=158004 * Hotcrystal0 * (+184)
23:24:44 <esolangs> [[User Programmed]] N https://esolangs.org/w/index.php?oldid=158072 * Hotcrystal0 * (+29) Redirected page to [[User programmed]]
23:33:08 -!- 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).
23:35:55 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158073&oldid=158070 * Helpeesl * (+212)
23:50:06 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158074&oldid=158073 * Hotcrystal0 * (+175)
23:51:04 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158075&oldid=158074 * Hotcrystal0 * (-133)
23:51:18 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158076&oldid=158075 * Hotcrystal0 * (+1)
23:56:12 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158077&oldid=158076 * Hotcrystal0 * (+107)
23:58:10 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158078&oldid=158077 * Helpeesl * (+184)
23:59:29 <esolangs> [[Truth-machine]] https://esolangs.org/w/index.php?diff=158079&oldid=158016 * Undalevein * (+90) Added a more golfed version for the Python Code (I just had to)
00:58:31 <esolangs> [[APGsembly]] N https://esolangs.org/w/index.php?oldid=158080 * I am islptng * (+11920) Just want to port this here.
01:19:46 <esolangs> [[Mlatu-6]] https://esolangs.org/w/index.php?diff=158081&oldid=157857 * Dadsdy * (+111) /* External Resources */
01:49:56 <esolangs> [[Burnlike]] M https://esolangs.org/w/index.php?diff=158082&oldid=157417 * PkmnQ * (+3) /* Ruleset */ this seems more fitting
01:56:54 -!- Guest66 has joined.
02:07:55 -!- impomatic has joined.
02:12:55 -!- Guest66 has quit (Quit: Client closed).
02:58:05 -!- Oj742 has joined.
03:08:00 <zzo38> I had read about reversible computing that they will save power compared with other computers. However, maybe there might also be possibility making a kind of hybrid computing if it helps.
03:08:26 <zzo38> ChaCha20 has a reversible part and then a final part that is not reversible.
03:10:11 <zzo38> If you have C operators += -= ^= then you can also have locking, with shared locking for each use of each variable on the right, and exclusive locking for each use of each variable on the left (but, you would also have array bound checking and without using other kind of pointers). A counted loop will have shared locking on the repeat count and on the variable to count each iteration.
03:10:31 <zemhill> Oj742.quicklock: points -7.71, score 14.82, rank 36/47 (+7)
03:27:03 <esolangs> [[Special:Log/newusers]] create * Noewaeda * New user account
04:18:00 <zemhill> Oj742.maddash: points -9.31, score 13.08, rank 46/47
04:42:13 <esolangs> [[Wheddo]] N https://esolangs.org/w/index.php?oldid=158083 * Rombito * (+2080) Created page with "'''Wheddo''' is an esolang made and posted onto this wiki by [[user:Rombito]]. ==The Languages== A singular line in a Wheddo Program is structured into 2 parts: # The ID # and the Code Here, there will only be an explanation of the ID since the code is self-explanatory.
04:45:00 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158084&oldid=158083 * Rombito * (+72)
04:45:23 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158085&oldid=158084 * Rombito * (-21)
04:47:14 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158086&oldid=158085 * Rombito * (+7)
04:49:02 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158087&oldid=158086 * Rombito * (+22)
04:49:46 <esolangs> [[User:Rombito]] N https://esolangs.org/w/index.php?oldid=158088 * Rombito * (+63) Created page with "<b style="color:blue">I am rombito, and I do rombito things</b>"
04:50:03 -!- Oj742 has quit (Quit: Client closed).
04:56:01 -!- Lord_of_Life has quit (Ping timeout: 265 seconds).
04:56:25 -!- Lord_of_Life has joined.
05:27:47 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158089&oldid=158087 * Rombito * (-6)
05:28:47 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158090&oldid=158089 * Rombito * (+24)
05:39:11 <esolangs> [[User talk:PrySigneToFry]] https://esolangs.org/w/index.php?diff=158091&oldid=157938 * Cycwin * (+366) /* Any interests on joining our Esolang Tencent QQ group? */
05:40:47 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=158092&oldid=158064 * Rombito * (+13) /* W */
05:50:29 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=158093&oldid=157966 * Cycwin * (+29) /* Where are you from, and how can you understand Chinese? */
06:08:46 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158094&oldid=158090 * Rombito * (+246)
06:08:49 -!- tromp has joined.
06:09:07 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158095&oldid=158094 * Rombito * (-2)
06:09:22 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158096&oldid=158095 * Rombito * (+0)
06:50:15 -!- Sgeo has quit (Read error: Connection reset by peer).
07:17:08 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
07:17:47 -!- tromp has joined.
07:32:27 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
07:41:06 <esolangs> [[Fn]] https://esolangs.org/w/index.php?diff=158097&oldid=156970 * C0ffee * (-1) /* Examples */
08:05:26 -!- impomatic has quit (Quit: Client closed).
08:14:55 <esolangs> [[Brafunge]] N https://esolangs.org/w/index.php?oldid=158098 * C0ffee * (+1324) Created page with "'''Brafunge''' is a cell-based language inspired by [[brainfuck]] and [[Befunge]]. == Commands == {| class="wikitable" !Commands !Description |- | <code>></code> || Move the pointer to right. |- | <code><</code> || Move the pointer to left. |- | <code>+</code> || Incr
08:15:09 <esolangs> [[Brafunge]] https://esolangs.org/w/index.php?diff=158099&oldid=158098 * C0ffee * (-8)
08:38:06 <esolangs> [[Brafunge]] https://esolangs.org/w/index.php?diff=158100&oldid=158099 * C0ffee * (+192)
08:38:23 <esolangs> [[Brafunge]] https://esolangs.org/w/index.php?diff=158101&oldid=158100 * C0ffee * (+1) /* Examples */
08:41:02 <esolangs> [[Brafunge]] https://esolangs.org/w/index.php?diff=158102&oldid=158101 * C0ffee * (+27) /* Commands */
08:41:28 <esolangs> [[User:C0ffee]] https://esolangs.org/w/index.php?diff=158103&oldid=156973 * C0ffee * (+15)
08:42:16 <esolangs> [[Brafunge]] https://esolangs.org/w/index.php?diff=158104&oldid=158102 * C0ffee * (-3) /* Examples */
08:57:10 -!- ais523 has joined.
09:00:39 <ais523> <int-e> woah something has gone seriously wrong with clang's register allocation in this case: https://paste.rs/ca13U.txt ← if this is hot code, I would seriously consider moving the movabs-es outside the loop, although I *think* they're not the limiting factor here (a good approximation is that you can decode 12 instructions while doing a multiplication nowadays, and there are 10 instructions in the body of the loop if you count cmp+je and cmp+jb as one
09:00:41 <ais523> instruction each, so it shouldn't be blocked on decode)
09:01:29 <ais523> but gcc's move into %rdx is clearly movable outside the loop except in cases where %rdx needs to be preserved if the first iteration does the jump to .L24
09:07:48 <ais523> int-e: was the clang code compiled without optimisation? it moves a constant into %rax then immediately adds a constant to %rax, and I'd expect just about any compiler to be able to optimise that
09:33:14 -!- chiselfu1e has joined.
09:35:00 -!- chiselfuse has quit (Ping timeout: 264 seconds).
09:35:56 <ais523> b_jonas: I think many modern languages have been avoiding postfix [] for naming array types because they have a prefix operator that acts on types (e.g. pointer/reference formation), and it can make types hard to read and write unambiguously if you have both prefix and postfix operators
09:36:35 <ais523> Rust's [T; LENGTH] notation is clever because being circumfix, it's unambiguous no matter what operators you put inside or around it
09:38:25 -!- wib_jonas has joined.
09:40:12 <ais523> now I'm thinking about how array formation is one of the few two-argument operators that acts on types, but I'm not sure I've seen an infix syntax for it in any remotely recent language
09:40:28 <ais523> I think there's some really old language where you can do INTEGER*100 or the like to make an array, but forget which one, and doubt it nests
09:41:12 <ais523> forming product types is also a two-argument operator that acts on types, that's normally called (T, U) but I think I've seen * for it
09:41:45 <ais523> and forming sum types is interesting as that often doesn't have syntax at all, even in languages with sum types
09:41:52 <wib_jonas> ais523: well C++ kind of has std::array<mytype, mylength>
09:42:15 <ais523> wib_jonas: that's similar to the Rust way of doing things
09:43:21 <ais523> I guess you don't want to be able to declare something as "Int + String" (disjoint union) as that makes actual uses of the type difficult; because it could be "Int + Int" the syntax for accessing cases would have to be written by index
09:44:54 <ais523> OCaml lets you do [`I of int | `S of string] to create a disjoint union on the fly, with custom names for the variants
09:46:30 <ais523> I have been thinking for a while that possibly a good solution to this is to have newtypes that can be created on the fly, plus unions where all the options have to be different newtypes
09:54:48 <strerror> T*N would be a confusing array syntax as it isn't associative: (T*N)*M ≠ T*(N*M)
09:56:35 <ais523> it's sort-of associative, the former gives you a two-dimensional array, the latter gives you a one-dimensional array with the same total number of elements
09:56:45 <ais523> the types would be identical in a language that indexed by byte count rather than element count
09:57:07 <ais523> err, if it were weakly typed enough
10:09:08 <wib_jonas> ais523: so in naming types, the problem with the C syntax is that the variable name goes in the middle. everyone realized that this was a bad idea, so in a variable declaration, digitalmars D always puts the variable name after the whole type name, while Rust and golang and ziglang put the variable name before the whole type name. IIUC digitalmars
10:09:08 <wib_jonas> D and golang still uses the order return type then function name then argument list to define functions, but this only applies at the top nesting level, and for declaring function pointers a different syntax is used that keeps the whole typename together with the variable name still after the type in D and before the type in golang.
10:11:58 <fizzie> FORTRAN has a `TYPE*n` syntax, but it's not for arrays, it's for indicating different "variants" of the same type. So you have (standard) `CHARACTER*n` for any n > 0 for a fixed-length string; and you have (nonstandard) `INTEGER*2`, `INTEGER*4` and `INTEGER*8` types for different-sized integers; and you have `REAL*4` and `REAL*8` for two kinds of floats.
10:13:35 <ais523> wib_jonas: right, in general I think it is useful to be able to name a type without having a specific identifier representing the type name in the middle of the syntax
10:13:47 <ais523> this comes up in C with function pointers – they need an argument list but the arguments aren't named
10:15:55 <fizzie> (Looks like Fortran 90 changed `CHARACTER*123` into `character(len=123)`, too.)
10:17:58 <ais523> ooh, I just realised that maybe type * type should be a syntax for declaring a map type (value * key)
10:18:08 <wib_jonas> but there's a something strange here: in digitalmars D type operators go on the right of the base type like `double[8] v;` or around it; in Rust and golang and zig type operators go on the left of the base type like `v: &mut double` in rust and `v [8]f64` in golang and `v: [8]f64` in ziglang, or around it. so the simple type operators always go in
10:18:08 <wib_jonas> the middle. how come nobody is using a syntax where there are simple type operators that go only on one side of the type, but they're on the far side of the variable name?
10:18:26 <ais523> that generalizes the idea of type * int being an array, because an array is a map from indexes to values
10:19:26 <ais523> wib_jonas: I'm almost wondering if there's some parser ambiguity in doing that, but I can't immediately think of one
10:19:51 <ais523> (also, "double" isn't a Rust type)
10:20:25 <wib_jonas> so `v: &mut f64` in rust and `v [8]dobule` in golang and `v: [8]f64` in ziglang
10:20:48 <fizzie> C++ `std::tuple` has that property where you can access the individual fields by type if but only if they're distinct types, and have to fall back to indices if not.
10:21:13 <fizzie> `double` isn't a Go type either, the types are `float32` and `float64`.
10:21:16 <HackEso> double`? No such file or directory
10:23:07 <ais523> I think using lowercase names for primitive types in Rust was a mistake, given that all the standard-library-defined types are upper-camelcase
10:23:31 <ais523> I've definitely written code that had a bunch of temporary variables i1, i2, i3, etc.
10:23:52 <ais523> and although you can name a variable the same thing as a primitive type in Rust, so when I reached i8 the code still worked, it looked weird in an editor
10:24:33 <ais523> (Rust always needs to know whether it's parsing a type or a value so that it can work out whether >> is a bitshift or two closing brackets, so it allows types and values to have the same name as each other)
10:25:17 <wib_jonas> ok hold on, doesn't standard ML put the type constructor on the right and its argument on the left, and the name before the type, so you effectively end up with an order like `v: int list` which is similar to putting type operators on the outside?
10:26:10 <strerror> I guess Rust's `t: &mut T` was chosen to mimic the operator `&mut t`. (Just like in C, `T t[N];` was chosen to mimic the operator `t[n]`. Why would anyone find that confusing?)
10:26:51 <wib_jonas> so now we just need to find a language that can put the type modifier first, then the type, then the variable name.
10:28:06 <wib_jonas> and if there's no such language yet then we have to make one
10:28:06 <ais523> wib_jonas: OCaml uses that order too
10:28:10 <strerror> Speaking of parsing, the normal way round might be easier because there's usually not many ways to write a variable name
10:28:15 <ais523> which isn't surprising, also being an ML
10:29:00 <ais523> but, I think you're misinterpreting the ML order
10:29:17 <ais523> because for two-argument type constructors the syntax is IIRC dict: (string, int) map
10:29:26 <ais523> so, "int" is modifying "list" here rather than vice versa
10:30:14 <ais523> I guess you could compare to Haskell, which uses a similar syntax but in reverse: dict :: Map String Int
10:31:33 <fizzie> Go's map types are named `map[K]V`, is that a circumfix or a prefix operator, or both, or neither?
10:32:49 <ais523> postcircumfix is fairly common (object.method(args)), but I don't think I've seen a precircumfix operator before
10:35:28 <ais523> I guess [8]f64 is precircumfix too, so Go is being consistent there
10:35:58 <wib_jonas> huh, http://rosettacode.org/ is not reachable. that would be a useful way to look for various syntax.
10:37:42 <ais523> Wikipedia says it's www.rosettacode.org but that isn't reachable either
10:38:11 <fizzie> cppreference.com was being unusuably slow for me as well (wanted to double-check the std::tuple thing).
10:38:59 <ais523> I wonder whether these are side effects of the scraperbots
10:39:17 <ais523> although Rosetta Code was acting like it was intentionally down rather than overloaded
10:39:19 <wib_jonas> ais523: I think precircumfix for declaring arrays, with the type on the right and the size in the middle, is used in algol and pascal, so it's very old
10:39:31 <fizzie> I _think_ std::variant does the same thing as std::tuple w.r.t. allowing std::get<type>(x) if `type` uniquely determines the member.
10:39:46 <fizzie> (And std::get<N>(x) with an index in any case.)
10:40:37 -!- wib_jonas70 has joined.
10:40:53 -!- wib_jonas has quit (Killed (NickServ (GHOST command used by wib_jonas70))).
10:40:58 -!- wib_jonas70 has changed nick to wib_jonas.
10:41:03 <wib_jonas> fizzie: I think I have a downloaded copy of the important parts of cppreference.com at home, in case it disappears
10:41:42 <ais523> oddly I don't think I've used it
10:41:50 <ais523> generally for reading up on C and C++ I use draft standards
10:42:13 <ais523> that said, I don't program in C++ much – mostly it's just to modify pre-existing C++ programs, and the ones I work with are generally written in very old dialects of C++
10:44:35 <fizzie> It's convenient for (informally) checking which standard version introduced a thing, since they're pretty good at having "since C++17" style annotations where appropriate.
10:45:22 <wib_jonas> ais523: in Haskell, `let { DECLARATIONS } in EXPRESSION` is a postcircumfix operator that gives an expression
10:45:57 <ais523> you mean precircumfix?
10:46:07 <ais523> OCaml does that too, let a = b in c
10:46:52 <wib_jonas> also C typecasts are precircumfix like (double)4
10:47:00 <ais523> I should probably learn C23 at some point, primarily out of curiosity – newer versions of C don't seem so useful given that I expect most newer programs to be written in some safer language nowadays
10:49:10 <wib_jonas> I'm trying to understand something about the library interface of inter-thread synchronization, I asked yesterday starting from https://logs.esolangs.org/libera-esolangs/2025-05-19.html#l3 , I think some of you might be able to help because I think I'm missing something here
10:53:23 <wib_jonas> also, the SIGBOVIK 2025 proceedings have been released for like a week now. I have read only little of it so far, but it's SIGBOVIK so there'll probably be parts interesting or inspiring to this community in there
10:53:49 <ais523> it wouldn't surprise me if the pthreads API fundamentally didn't make sense
10:55:12 <ais523> wib_jonas: <POSIX> The pthread_mutex_destroy() function shall destroy the mutex object referenced by mutex; the mutex object becomes, in effect, uninitialized.
10:55:38 <ais523> I think this explains it: it *uninitialises* a mutex obejct, which is why calling it twice is UB (because you're calling it on an uninitialised variable)
10:56:50 <ais523> I can imagine a pthreads implementation where statically initialised mutexes are pointers to static variables that store mutex state, whereas pthread_mutex_init()ed mutexes are pointers to dynamically allocated memory
10:57:05 <ais523> I'm not sure that that's necessarily a sensible implementation, but it seems to be consistent with the standard
10:57:29 <wib_jonas> ais523: pthread_mutex_destroy twice is an undefined behavior makes sense, sure, my problem is why the manual says that pthread_mutex_init twice is an undefined behavior instead of just a resource leak. unless there is some pre-initialization that I must do before I call pthread_mutex_init, but if there is I don't know of it
10:58:11 <ais523> the POSIX rationale talks about machines which have a special sort of memory for storing mutexes, and where statically initialised mutexes allocate it lazily
10:59:29 <ais523> oh, it does mention why double-initialising is UB – it's to allow the implementation to return an unlisted error code in cases where it detects that that happens, rather than silently accepting it and leaking memory
10:59:49 <ais523> this would be better off as unspecified behaviour, I think: "either leaks memory or returns EBUSY"
11:00:38 <ais523> that said, I can see potential anything-happens UB if it ends up unlocking the mutex in the process of reinitialising it
11:01:14 <wib_jonas> oh, so you mean there'd be a separate table that has the mutex insides, and this has pointers back to the pthread_mutex_init handles that points into it, and pthread_mutex_init would look up what the existing handle points to with bounds checking and checks if the back pointer points back, and that way it can detect double initialization which is
11:02:35 <ais523> the Rationale doesn't explain how they expected implementations to check for double-initialisation, just that they were expecting that some could
11:03:11 <ais523> scanning a list of allocated mutexes seems like the only possibility?
11:04:06 <ais523> or, well, wouldn't have to be a linear scan, you could have a hashmap of them or something
11:04:28 <wib_jonas> no, it's not the only possibility. if you can rely on reading uninitialized memory as an integer array index without UB then you can do the back pointer thing.
11:04:54 <ais523> ah right – that's a sort of map in its own way, of course
11:05:08 <ais523> I forget what it's called
11:06:10 <wib_jonas> yeah, it's just one that's hard to use with the way current language standards handle reading from uninitialized memory. but if you're implementing a mutex you can probably able to rely on some machine-specific low-level detail that can bypass that.
11:06:26 <ais523> it has lead to a lot of acrimony in the Rust community because it can't be correctly implemented in Rust atm, not even by (e.g.) reading the potentially uninitialised memory with inline asm
11:07:27 <ais523> and the Rust developers don't want to add a way to do it until someone can prove it correct, which would probably need documenting the exact assumptions the optimiser was allowed to make in every possible scenario, which is a lot of work
11:08:21 <wib_jonas> yes, but even if you don't want to do this in a new library, an existing old library could be doing this and someone wanted to implement a pthreads interface over it
11:08:23 <ais523> the issue is that it's fine at the hardware level, but very difficult to prove that you aren't violating some assumption that the optimiser might theoretically be able to rely on in future, even if it doesn't at the moment
11:09:26 <wib_jonas> even if it's possible, I don't like this restriction in the library interface though.
11:09:29 <ais523> (partly because what the optimiser is and isn't allowed to do isn't specified anywhere)
11:10:11 <ais523> I got as far as proving that it's safe if the optimiser doesn't assume anything based about program executions that actually occurred based on program executions that could have occurred, but didn't
11:10:56 <ais523> or, well, not that exactly, it was a related operation (reading from memory that might be racily updated in paralle,)
11:11:13 <ais523> * in parallel, but ignoring the read value unless you can prove after that fact that no race happened
11:13:13 <wib_jonas> you can still use that sort of "uninitialized" structure if you only do it on memory that's low-level initialized earlier and you're just reusing such memory for a new array without reinitializing it, but that doesn't work in this weird mutex case
11:18:49 <ais523> in any case, this has convinced me that the POSIX decisions aren't completely ridiculous
11:19:02 <ais523> but I suspect it'd make more sense to use something Valgrindish than trying to do it from within the program
11:19:57 <ais523> I guess some sort of asan-like thing would make sense, but if it's defined as UB then detected UB should core dump rather than just returning an error code
11:20:18 <wib_jonas> I can see why the language definition people are worried about reading uninitialized memory because it could be a problem for future optimizations. If it's ever allowed I think it would be better to use some special primitive operation that copies bytes from potentially uninitialized memory, rather than allow it for ordinary reads.
11:21:59 <ais523> wib_jonas: the debate is about adding such a primitive
11:22:20 <ais523> I agree it should definitely be a separate primitive – but the Rust developers don't want to commit to the primitive even being possible to implement
11:22:27 <wib_jonas> yeah, and that'd have to be done on the llvm side
11:22:33 <ais523> LLVM already has such a primitive
11:23:04 <ais523> although it's awkward naming because the word "freeze" is also used in other contexts
11:23:44 <ais523> but the semantics are "given an uninitialised/poisoned/undef input, return an arbitrary bit pattern, otherwise return the value of the input"
11:25:57 <wib_jonas> I wonder if there also exists some old or exotic hardware where reading a word of memory that hasn't been initialized since poweron causes actual hardware level undefined behavior because an unclear signal from the bus can poison the CPU. Of course on such hardware you'd typically low-level initialize all the memory before you start to do anything
11:25:58 <wib_jonas> useful, so it wouldn't come up in practice.
11:26:05 <ais523> that said, I am somewhat unconvinced by the way LLVM makes decisions about optimiser semantics
11:26:18 -!- amby has joined.
11:27:21 <ais523> there was a bug a while ago where two optimisations conflicted with each other, optimising a correct program into an incorrect one, and LLVM decided to work around the problem by changing the semantics of load operations so that they would load undef if racing with a write (rather than doing UB) in order to make one of the optimisations valid
11:27:44 <ais523> but I'm not sure they checked all the other optimisations to make sure they were consistent with the change (rather than just the optimisation that was assuming that it would be UB)
11:48:52 <wib_jonas> how does that even work? is it not UB only if the load or the conflicting store is done from code compiled with llvm as opposed to code compiled by something else and linked?
11:57:00 <wib_jonas> and then there's the whole thing about how the language lets the programmer do floating-point arithmetic with the floating-point control bits changed. most code is compiled assuming that the control bits must be at the default as the ABI requires. so C introduced a new pragma for this, to say that a part of your code doesn't assume that. then in
11:57:01 <wib_jonas> code surrounded with such a pragma, you can change the control bits. that's the rounding mode, the bit for input operand denormals are zeros, the bit for output operand denormals are zeros, and the floating point exception mask. I personally don't care much about the last one, and the rounding modes are probably best handled by new built-in and
11:57:01 <wib_jonas> library functions that do operations with a certain rounding mode. but the two denormal flags are harder, you do often want to run a longer calculation with those enabled, and it would be inconvenient to write all code that works that way without some more convenient syntax than named library functions, but the code doing that still has a different
11:57:02 <wib_jonas> ABI from normal so the pragma seems like the best solution. IIRC rust doesn't seem to have an equivalent of the pragma yet.
11:58:14 <wib_jonas> and this can be tricky on the compiler and optimizer, because they suddenly have to know a lot specifically about the floating-point control flags, like what commutes with changing them because it does no floating-point operations etc.
12:05:49 <esolangs> [[User:Cycwin/sandbox]] N https://esolangs.org/w/index.php?oldid=158105 * Cycwin * (+221) Created page with " There will be my ideas there. You can edit them any time(please let me know who you edited this page are). ==About onechar== in onechar we only have <pre>:loop a (b) jp loop</pre> So how can we jump above >2 lines code?"
12:20:41 <esolangs> [[User:Cycwin/sandbox]] https://esolangs.org/w/index.php?diff=158106&oldid=158105 * Cycwin * (+0) /* About onechar */
12:57:47 -!- impomatic has joined.
12:59:34 <impomatic> ais523: basic scissors can be done in 5 instructions.
13:00:07 <ais523> that's actually quite impressive
13:01:23 <ais523> <wib_jonas> how does that even work? is it not UB only if the load or the conflicting store is done from code compiled with llvm as opposed to code compiled by something else and linked? ← it's not UB in general, it just reads an undefined value – all the hardware LLVM supports will return *some* value upon a racy read, even if it has no connection to reality, rather than (e.g.) crashing
13:02:52 <impomatic> There's actually quite a good spread of strategies, and the settings are pretty good if you want to evolve a competitor using genetic algorithms.
13:15:07 -!- impomatic has quit (Quit: Client closed).
13:24:37 -!- impomatic has joined.
13:32:18 -!- impomatic has quit (Quit: Client closed).
13:33:14 <esolangs> [[Irma]] https://esolangs.org/w/index.php?diff=158107&oldid=157944 * Neon * (+2282)
14:03:47 -!- molson has quit (Remote host closed the connection).
14:03:57 -!- molson has joined.
14:09:47 <esolangs> [[Special:Log/newusers]] create * Bits bytes * New user account
14:12:42 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=158108&oldid=157973 * Bits bytes * (+169)
14:35:03 -!- visilii_ has quit (Ping timeout: 265 seconds).
14:41:35 -!- isabella has changed nick to iza.
14:43:42 -!- wib_jonas has quit (Ping timeout: 240 seconds).
14:48:53 <esolangs> [[User talk:I am islptng]] https://esolangs.org/w/index.php?diff=158109&oldid=158022 * Hotcrystal0 * (+334)
15:29:51 -!- impomatic has joined.
15:33:41 -!- tromp has joined.
15:34:35 -!- tromp has quit (Client Quit).
15:37:17 -!- tromp has joined.
15:50:24 -!- visilii has joined.
16:04:01 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
16:27:02 -!- tromp has joined.
16:29:17 -!- FreeFull has quit (Quit: Lost terminal).
16:46:12 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158110&oldid=158078 * Hotcrystal0 * (+47)
16:48:22 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158111&oldid=158110 * Hotcrystal0 * (+0)
17:00:58 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:02:36 <esolangs> [[Nya~*kwrgsfish+-HQ9`:'"rbtAzxdi8]] https://esolangs.org/w/index.php?diff=158112&oldid=151994 * Qawtykit * (+695) laying out the commands into tables so its easier to read
17:21:50 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158113&oldid=158111 * Helpeesl * (+88)
17:27:03 -!- tromp has joined.
17:33:29 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158114&oldid=158012 * TenBillionPlusOne * (+502)
17:42:29 -!- Melvar has quit (Quit: WeeChat 4.6.0).
17:47:46 <esolangs> [[Burn]] https://esolangs.org/w/index.php?diff=158115&oldid=134283 * Aadenboy * (+31) /* see also */
17:55:12 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158116&oldid=158114 * TenBillionPlusOne * (+316)
17:58:03 -!- Melvar has joined.
18:08:18 -!- impomatic has quit (Quit: Client closed).
18:08:38 -!- impomatic has joined.
18:38:20 <esolangs> [[Main Page/lex]] N https://esolangs.org/w/index.php?oldid=158117 * Neon * (+1810) Created page with "==Introduction== Lex is a variant of pseudocode consisting of mainly letters and symbols. It was inspired by the P" (P double prime) primitive programming language created by Corrado Bohm. It is not meant to have be executed and is instead meant to illustrate the str
18:56:15 <esolangs> [[Talk:Main Page/lex]] N https://esolangs.org/w/index.php?oldid=158118 * Aadenboy * (+322) Created page with "why is this a subpage of the main page? ~~~~"
18:57:08 <esolangs> [[Special:Log/newusers]] create * TheKillerBunny * New user account
19:01:07 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=158119&oldid=158108 * TheKillerBunny * (+131)
19:01:26 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=158120&oldid=158119 * TheKillerBunny * (+78)
19:03:49 -!- impomatic has quit (Quit: Client closed).
19:13:01 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158121&oldid=158113 * Hotcrystal0 * (+132)
19:14:08 -!- impomatic has joined.
19:14:27 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158122&oldid=158121 * Hotcrystal0 * (+36)
19:15:54 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158123&oldid=158116 * TenBillionPlusOne * (+153) /* Examples */
19:19:56 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158124&oldid=158123 * TenBillionPlusOne * (+198)
19:20:49 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158125&oldid=158124 * TenBillionPlusOne * (+8) /* Examples */
19:22:18 <esolangs> [[Special:Log/move]] move * TenBillionPlusOne * moved [[User:TenBillionPlusOne/Draft]] to [[Transformation is complete]]: Finished the esolang
19:22:42 -!- HackEso has quit (Ping timeout: 252 seconds).
19:22:56 <esolangs> [[Transformation is complete]] https://esolangs.org/w/index.php?diff=158128&oldid=158126 * TenBillionPlusOne * (+65)
19:23:28 -!- HackEso has joined.
19:24:57 <esolangs> [[User:TenBillionPlusOne]] https://esolangs.org/w/index.php?diff=158129&oldid=157834 * TenBillionPlusOne * (-34)
19:25:44 <esolangs> [[User:TenBillionPlusOne/Draft]] https://esolangs.org/w/index.php?diff=158130&oldid=158127 * TenBillionPlusOne * (-40) Blanked the page
19:28:10 <esolangs> [[User:TenBillionPlusOne/Sandbox]] https://esolangs.org/w/index.php?diff=158131&oldid=157984 * TenBillionPlusOne * (-1020) /* Transformation is complete */
19:29:02 <esolangs> [[User:TenBillionPlusOne/Sandbox]] https://esolangs.org/w/index.php?diff=158132&oldid=158131 * TenBillionPlusOne * (+67)
19:29:54 <esolangs> [[Transformation is complete]] M https://esolangs.org/w/index.php?diff=158133&oldid=158128 * TenBillionPlusOne * (+13)
20:00:27 <esolangs> [[Transformation is complete]] https://esolangs.org/w/index.php?diff=158134&oldid=158133 * TenBillionPlusOne * (-23) /* Natural numbers */
20:19:16 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158135&oldid=158096 * Rombito * (-1)
20:25:03 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158136&oldid=158135 * Rombito * (+26)
20:32:14 <esolangs> [[Wheddo]] https://esolangs.org/w/index.php?diff=158137&oldid=158136 * Rombito * (-30)
20:41:39 <esolangs> [[Caca]] https://esolangs.org/w/index.php?diff=158138&oldid=156783 * Mari * (+175) Cell-based, unknown computational class, rather than all relative increments or decrements
21:03:35 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
21:06:42 <esolangs> [[User:XKCD Random Number]] https://esolangs.org/w/index.php?diff=158139&oldid=153906 * Mari * (+463) add Caca
21:21:06 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=158140&oldid=158092 * Buckets * (+11)
21:21:32 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=158141&oldid=158065 * Buckets * (+10)
21:21:44 <esolangs> [[Whyn]] N https://esolangs.org/w/index.php?oldid=158142 * Buckets * (+900) Created page with "Whyn is an Esoteric programming language created by [[User:Buckets]] in 2021. The Starting Direction is 45 Degrees Clockwise then Normal. {| class="wikitable" |- ! Commands !! Instructions |- | R || Turn 90 Degrees Clockwise. |- | L || Turn 90 Degrees Anti-Clockwise. |- |
21:56:02 -!- impomatic has quit (Quit: Client closed).
22:10:39 -!- slavfox has quit (Quit: ZNC 1.8.2 - https://znc.in).
22:11:00 -!- slavfox has joined.
22:39:19 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=158143&oldid=158141 * Buckets * (+0)
23:08:00 <esolangs> [[Special:Log/newusers]] create * Idkwhatever * New user account
23:21:03 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158144&oldid=158122 * I am islptng * (+219)
23:32:26 -!- Sgeo has joined.
23:33:40 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=158145&oldid=158120 * Idkwhatever * (+59)
23:33:52 <esolangs> [[Unibrain]] https://esolangs.org/w/index.php?diff=158146&oldid=74115 * Kaveh Yousefi * (+168) Added a hyperlink to my implementation of the Unibrain programming language on GitHub.
23:33: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).
23:41:54 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158147&oldid=158144 * Hotcrystal0 * (+21)
23:42:20 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158148&oldid=158147 * Hotcrystal0 * (+0)
23:44:34 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158149&oldid=158148 * Hotcrystal0 * (-44)
23:44:45 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158150&oldid=158149 * Hotcrystal0 * (-4)
23:53:37 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=158151&oldid=158093 * Hotcrystal0 * (+324)
23:53:47 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=158152&oldid=158151 * Hotcrystal0 * (-1)
23:53:59 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=158153&oldid=158152 * Hotcrystal0 * (+24)
23:54:44 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=158154&oldid=158153 * Hotcrystal0 * (+75)
23:55:12 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=158155&oldid=158154 * Hotcrystal0 * (+289)
23:57:06 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=158156&oldid=158029 * Hotcrystal0 * (+431) /* Filter 16 */ new section
23:57:23 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=158157&oldid=158156 * Hotcrystal0 * (-3)
23:57:41 <esolangs> [[User talk:Ais523]] M https://esolangs.org/w/index.php?diff=158158&oldid=158157 * Hotcrystal0 * (+0)
23:58:59 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=158159&oldid=158158 * Hotcrystal0 * (+58)
00:01:49 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=158160&oldid=158159 * Ais523 * (+462) /* Filter 16 */ it's hard to write a filter to cover all possibilities
00:03:43 <esolangs> [[User:Hotcrystal0/Sandbox]] https://esolangs.org/w/index.php?diff=158161&oldid=155072 * Hotcrystal0 * (+62)
00:05:52 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=158162&oldid=158160 * Hotcrystal0 * (+283)
00:06:05 <esolangs> [[User talk:Ais523]] https://esolangs.org/w/index.php?diff=158163&oldid=158162 * Hotcrystal0 * (+248)
00:21:54 <esolangs> [[User programmed]] https://esolangs.org/w/index.php?diff=158164&oldid=158150 * Helpeesl * (+334)
00:35:27 <esolangs> [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=158165&oldid=158155 * I am islptng * (+748)
01:08:24 <esolangs> [[User:H33T33]] M https://esolangs.org/w/index.php?diff=158166&oldid=157738 * H33T33 * (-4)
01:28:17 -!- user3456 has quit (Ping timeout: 248 seconds).
01:33:17 <esolangs> [[Smolder/build]] N https://esolangs.org/w/index.php?oldid=158167 * Aadenboy * (+582) Created page with "<includeonly><div style="width: 2em; height: 2em; font-size: 1.5em; display: inline-flex; align-items: center; justify-content: center; font-family: monospace; background-color: rgb({{#expr:{{{r|0}}}/3*255}}, {{#expr:{{{g|0}}}/3*255}}, {{#expr:{{{b|0}}}/3*255}});
01:36:43 <esolangs> [[Smolder/build]] M https://esolangs.org/w/index.php?diff=158168&oldid=158167 * Aadenboy * (+0)
01:37:35 <esolangs> [[Smolder/build]] M https://esolangs.org/w/index.php?diff=158169&oldid=158168 * Aadenboy * (+6)
01:37:58 <esolangs> [[Smolder/Cell]] N https://esolangs.org/w/index.php?oldid=158170 * Aadenboy * (+210) Created page with "<includeonly>{{:Smolder/build|b={{#sub:{{{1|}}}|0|1}}|g={{#sub:{{{1|}}}|1|1}}|r={{#sub:{{{1|}}}|2|1}}}}</includeonly><noinclude>{{:Smolder/Cell|101}}{{:Smolder/Cell|10}}{{:Smolder/Cell|32}}{{:Smolder/Cell|032}}"
01:49:00 <zzo38> Why is the computer often loud after a power outage for several hours, and then may be even more quiet than it seems to have been before that?
01:57:13 <ais523> computers do run hotter after boot (meaning they need to run the fan for longer or faster to cool down) because the boot process is quite CPU-intensive, but that effect only lasts minutes not hours
01:57:37 <ais523> it could be that the computer has to do some sort of recovery process if it losers power, that it doesn't have to do on a normal boot, and that heats it up
01:58:27 <esolangs> [[Smolder]] N https://esolangs.org/w/index.php?oldid=158171 * Aadenboy * (+5705) failed attempt at a burn-like which ended up being interesting on its own
01:59:06 <ais523> I have a display on my computer (that's permanently visible except when I'm running a program full-screen, or during screen lock or the boot/shutdown/login process) that shows CPU usage, free memory and swap, network download/upload usage and load average
01:59:22 <esolangs> [[User:Aadenboy]] https://esolangs.org/w/index.php?diff=158172&oldid=157748 * Aadenboy * (+126) /* my own esolangs */ [[Smolder]]
01:59:33 <ais523> that often gives me insight into what sort of thing the computer is doing (and lets me know what tool to open in an attempt to find out, if there's unexpected activity)
01:59:40 <int-e> . o O ( so much for "cold boot" :P )
01:59:55 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=158173&oldid=158140 * Aadenboy * (+14) /* S */ add [[Smolder]]
02:00:02 <zzo38> No, it was even while the computer was running normally. (Another thing that sometimes happens starting a few minutes after it boots, but not this time, is the cursor blinking stops working in some windows (while continuing to work in others), and then later starts working again.)
02:01:09 <int-e> to me this sounds weird, and probably specific to your particular computer
02:01:59 <int-e> some vibration noise can be temperature dependent because parts expand as they get warmer
02:02:06 <zzo38> I also have a permanently visible display (as long as X window system is running, unless the screen is off due to power saving) that displays memory usage, load average, current date/time, temperatures, and number of email messages, but I did not put network download/upload numbers on there.
02:04:40 <int-e> Anyway. Weird. Assuming the first effect is real the second effect could be purely psychological though; you got used to a louder noise so when that disappears the remaining sound will feel more quiet than usual for a bit.
02:06:01 <zzo38> Yes, I thought it might be psychological, although I am not in the room all the time. Possibly next time I could try to measure the noise (although I am not sure if I have a microphone, so I may have to look).
02:07:39 <zzo38> Also, I do have a surge protector, in case that matters, and the room does tend to get a bit dusty (even though I had tried to clean the dust several times, both in the room and in the computer). Also, the CPU temperature before the power outage was normally around 26 Celsius and is now at 28 Celsius. The temperature measured on my desk is apparently 22 Celsius.
02:21:53 -!- user3456 has joined.
02:23:11 -!- impomatic has joined.
02:27:49 <ais523> I don't have a permanently visible computer-internals-temperature display but I have one I can bring up if I want
02:28:24 <ais523> there are a range of different temperatures, measured from different parts of the computer
02:28:59 <ais523> e.g. the CPU is at about 40°C at the moment but the memory is at 23°C
02:29:24 <ais523> (is computer memory known for overheating? I'm a little surprised that it even has a temperature sensor)
02:30:38 -!- impomatic has quit (Quit: Client closed).
02:33:00 <int-e> a quick search suggests that this may happen if you set the voltage too high (possibly in connection with trying to overclock it)... or if it's defective
02:35:25 <int-e> I've been wondering about this for HBM... though I was more curious about the fate of a CPU buried under slices of RAM.
02:35:50 <int-e> (or GPU obviously)
02:36:40 <int-e> it's possible that I've misunderstood how HBM is usually packaged. https://en.wikipedia.org/wiki/File:High_Bandwidth_Memory_schematic.svg suggests a side by side scheme that wouldn't make me worry so much ;)
02:47:04 <ais523> I think the RAM usually doesn't go on top of the CPU because you generally have to put a heatsink there
02:50:58 <int-e> I had failed to connect HBM and the communication substrate/chiplet ideas.
02:51:37 <int-e> There's still a strong suggestion there that RAM doesn't get very hot... if it did, stacking it would pose problems.
03:16:50 <shachaf> Oh no, I misread that as failing to connect HBM and chiplets, and was wondering what sort of fancy integrated circuit things int-e was doing.
03:19:36 <esolangs> [[Caca]] https://esolangs.org/w/index.php?diff=158174&oldid=158138 * Mari * (+223) add infobox because those are cool
04:43:16 <zzo38> I do not seem to have memory temperature on my computer; there is CPU and MB and the "temp1" of the "nouveau-pci-0100". There is also the hard drive temperature, but it is accessed separately.
04:44:48 <ais523> oh, it might be a drive temperature sensor and I just misread the label
04:45:05 <ais523> they aren't labeled very clearly
04:45:34 -!- ais523 has quit (Quit: quit).
04:49:37 <esolangs> [[Hello world program in esoteric languages (B-C)]] https://esolangs.org/w/index.php?diff=158175&oldid=150247 * C0ffee * (+98)
04:52:22 <esolangs> [[Brafunge]] https://esolangs.org/w/index.php?diff=158176&oldid=158104 * C0ffee * (+0)
04:54:56 <esolangs> [[Brafunge]] https://esolangs.org/w/index.php?diff=158177&oldid=158176 * C0ffee * (+5)
04:55:35 -!- Lord_of_Life_ has joined.
04:56:11 <esolangs> [[Brafunge]] https://esolangs.org/w/index.php?diff=158178&oldid=158177 * C0ffee * (+0)
04:56:21 -!- Lord_of_Life has quit (Ping timeout: 248 seconds).
04:56:57 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
05:45:22 -!- Sgeo has quit (Read error: Connection reset by peer).
06:37:38 -!- Artea has quit (Ping timeout: 252 seconds).
06:38:22 -!- tromp has joined.
06:41:03 -!- Artea has joined.
06:51:08 <b_jonas> if the RAM doesn't usually overheat then it could be worth to have a temperaturesensor on the RAM to check if overheating is propagating in the whole case because the case cooling isn't working well
07:08:28 <esolangs> [[Main Page/lex]] M https://esolangs.org/w/index.php?diff=158179&oldid=158117 * Neon * (-482)
07:14:03 -!- Everything has joined.
07:18:56 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
07:30:00 -!- Everything has quit (Quit: leaving).
07:36:43 -!- tromp has joined.
To update automatically, stalker mode requires a reasonably modern browser with scripts enabled. If this message does not disappear, it's either because of that or a bug. Feel free to get in touch on channel for debugging. Or just work around the issue by manually reloading.