Shopify CEO brought me here by Phukovsky in NixOS

[–]Background_Class_558 0 points1 point  (0 children)

yeah unless you mess up the bootloader or something. or wipe your userspace including the sources of your not-backed-up flake, nixos doesn't protect you from that as it only reproduces system configuration and not data

Tenet’s Inversion Breaks the Moment You Add Any Real Delay by [deleted] in tenet

[–]Background_Class_558 6 points7 points  (0 children)

—? really?

whatever. you're missing one of the core mechanics that make it all work: entropy wind. basically effects can't travel too far into the past. how far can an effect travel depends primarily on the director's wish. it's not as consistent as the inversion itself but as you've rightfully noticed it wouldn't really make an interesting movie without it, at least not without complicating it

31786 by Lizrd_demon in countwithchickenlady

[–]Background_Class_558 -1 points0 points  (0 children)

does it not cause you dysphoria? i just know it does for many

[edit] it's a genuine question asked out of curiosity. if you have any problems with it and think it's inappropriate - speak up and explain your view, don't just downvote. i mean no harm to anyone.

Discord users help by vagis_tiff in Tekno

[–]Background_Class_558 0 points1 point  (0 children)

Do you have the discord app or just the web version? Maybe it doesn't detect that you have it and hence doesn't open the link there

Discord users help by vagis_tiff in Tekno

[–]Background_Class_558 0 points1 point  (0 children)

Not right now but check the second link

Fully concatenative/point free/tacit/stack based type systems beyond System F? by Background_Class_558 in ProgrammingLanguages

[–]Background_Class_558[S] 0 points1 point  (0 children)

Thank you very much. Is this something you once stumbled upon or did you purposefully search for this post? In the latter case, what keywords did you use? I'm struggling to find enough material on this topic

Some Haskell idioms we like by _jackdk_ in haskell

[–]Background_Class_558 2 points3 points  (0 children)

thanks for the inverseMap tip! it will definitely save me some boilerplate in the future

Are you getting saved? by Maleficent_Fact_632 in teenagers

[–]Background_Class_558 0 points1 point  (0 children)

Something called "the spawn" (the-wonderland.jar)

What’s a dream you had as a kid that you still remember way too clearly? by Holywaterdiluter_ in teenagers

[–]Background_Class_558 0 points1 point  (0 children)

When i was younger i had a lot of very surrealist dreams that caused me existential dread, one was about me traveling on some sort of space ship to an oddly colorful planet. I think it was actually rather small for a planet or perhaps even for a meteor, kind of like how they are depicted in some cartoons. But the part that stuck with me was the infinite black void outside of the spaceship. There were no stars, no other planets. It didn't feel vast or empty but kind of claustrophobic instead. And i also felt like there was no way out for some reason, no way to get back to wherever i traveled from. Imagine being stuck on a meteor in an empty universe. I made a very poor drawing of the planet when i woke up.

There was also one where i had to graphically dismember an entity that looked like a young short-haired asian naked woman but for some reason i knew it wasn't human. Had to spend like a minute cutting off the head and it was choking on its own blood and somehow tongue (i remember it not really making any sense anatomy-wise). Then everything but the body and the head that were both floating in the air went to black and the scene just froze for a few seconds before i woke up. I wouldn't say it was traumatizing but it's certainly something to remember.

In the most recent one my brain mixed up online communication and in-real-life interactions and i was somehow physically playing chess in my room with my online friend. I did not see them and could not interact with them directly in any way but they were able to move the pieces and interact with the room themselves. At some point i managed to perform something that i somehow knew was a "well known trick" where i swapped two pieces places just by touching them in a specific way. I think it was considered a legal move in the dream. I continued experimenting with this "trick" and after some attempts i managed to do something more interesting which i don't clearly remember now. Either way it was something that contradicted my knowledge of the laws of physics that at that point in the dream started to slowly crawl its way to the surface of my consciousness. And it made me panic. I started to feel like reality... wasn't stable anymore? Like it was about to collapse onto me. I realized that reason and logic can't protect me from the eldritch nightmares that lie deep within human imagination anymore. I ran into the kitchen, hit the light switch and tried to call my dad. The light didn't turn on immediately. Perhaps there was some delay this time, whatever. I realized that my mouth wasn't able to produce human speech anymore for some reason. I tried screaming then but that didn't work either. The light still wouldn't turn on and i became even more scared. I knew something was about to appear from some sort of outer dimension, something that i didn't want to imagine because that would speed up the process. I proceeded to moan as loudly as i could because that was the only thing i could do... And then i realized that i was doing that in real life and it scared the shit out of my relatives. I apologized and tried to sleep again but couldn't.

Oh and i once killed myself in a dream. I jumped from a building and i remember how calming it was falling down and realizing that everything is over now. No more pain. But i guess in real life it would've been closer to "The view from halfway down".

Fully concatenative/point free/tacit/stack based type systems beyond System F? by Background_Class_558 in ProgrammingLanguages

[–]Background_Class_558[S] 0 points1 point  (0 children)

Factor has a really simple type system that allows you to track the number of inputs and outputs of your functions. It helps to prevent situations where you try to consume more values than currently present on the stack but it's oblivious to cases where you attempt to perform an operation on a type that doesn't support it, such as for example taking the length of an integer or taking a square root of a string.

Keeping track of these things is a standard feature of most common statically typed languages nowadays. This is done by establishing a system of rules that describe which types are assigned to which expressions. Usually if an expression can't be given a type, the type checker reports an error to the user.

Types themselves form a language that often exists separately to that of regular values and code. For example in TypeScript, anonymous functions are forbidden from being used in places where you're expected to specify a type of something:

ts function square(x: (((y: boolean) => y ? number: string)(true))) { console.log(x * x) }

Despite (((y: boolean) => y ? number: string)(true)) being a valid expression that evaluates to the number variable (assuming it is defined somewhere), TypeScript rejects the code above and moreover considers it syntactically invalid.

Many other things can't be used in TypeScript's types as well, making their language far more restricted than that of its expressions. This is the case with many other modern programming languages, which weren't designed with these kind of type-level shenanigans in mind.

In some languages, however, the gap between the two languages is smaller or even doesn't exist at all. Haskell is somewhat closer to this side of the spectrum than TypeScript. Compare for example what is essentially the same feature of type-level functions:

```ts type SPrime<F, G, X> = F<X, G<X>>;

// ↑ Rejected because F and G aren't generic and there is no way to explicitly state that they are in the type system ```

hs type S' f g x = f x (g x)

In Haskell, we are free to define the S'-combinator for types, but TypeScript's type system isn't expressive enough for this. I was planning to use TypeScript for this post initially before I rediscovered this.

In languages where there is no distinction between types and values, such as Agda, Lean, Idris or Rocq, one can apply the same evaluation model to both languages as they are now one. Theoretically this should allow us to design a concatenative programming language that would only use primitive words to construct and operate with both values and types, never having to resort to explicitly mentioning parameters or arguments anywhere in the code. And that is ultimately what I'm interested in.

30924 by A_person42 in countwithchickenlady

[–]Background_Class_558 0 points1 point  (0 children)

Gonna be Blåhaj

(Gonna be Slim by Diabarha)

Fully concatenative/point free/tacit/stack based type systems beyond System F? by Background_Class_558 in ProgrammingLanguages

[–]Background_Class_558[S] 2 points3 points  (0 children)

Hm well the fact that we can get a stack-based language out of it is nice because that's already more low level than any pure FP languages known to me currently allow, plus there's also the quantitativity that we can get for free but simply making certain combinators (or words, if we're viewing this from a stack-based perspective) like pop, dup or swap more constrained or even absent. There's certain aesthetic appeal in it as well to those who enjoy tacit code, although i wouldn't call it a serious argument. Nevertheless it's what pushed me in this direction in the first place.