Trying to include those things in the semantics of your language is a nightmare from which you will never awaken. Especially in the presence of inlining and extract function / inline function refactoring and I don't know what else.
-
-
Replying to @jonathanccast @dakami and
In any case, it is clearly possible to implement function calls in a way that stack overflow cannot happen - Scheme does it by omitting the stack, and Global Script nearly does it by using an extensible stack, and will do it always by using an extensible stack once I get to it.
1 reply 0 retweets 0 likes -
Replying to @jonathanccast @dakami and
So I don't see how they can possibly be part of the language spec when they are completely optional.
2 replies 0 retweets 0 likes -
Replying to @jonathanccast @dibblego and
What I’m trying to say (as a hacker who professionally abuses this) is that there are many lenses through which to see a language, a machine, a system. Sometimes stacks exist, sometimes they don’t. Sometimes integers overflow, sometimes they cause exceptions, sometimes BigInt.
1 reply 0 retweets 2 likes -
Replying to @dakami @jonathanccast and
When
@maradydd and I are doing work in#langsec the impl is part of the math because of course it is, we’re defending against otherwise unpredicted states. There’s just different analytical domains and no absolute ontological walls. Useful ones, yes. You choose your axioms.1 reply 0 retweets 2 likes -
Replying to @dakami @jonathanccast and
You can say an abstraction is leaky but what implementation details can a developer depend on? Matters. Poorly defined. Consistently emits unpredicted states.
1 reply 0 retweets 1 like -
Yeah. "Consistently emits unpredicted states" is the definition of a leaky abstraction. I don't think you're thinking clearly.
1 reply 0 retweets 1 like -
Replying to @jonathanccast @dakami and
The thing is, brains do that. Nature does that. Physics does that. As Dan Geer says, security is the absence of unmitigatable surprise.
1 reply 0 retweets 1 like -
Replying to @maradydd @jonathanccast and
All abstractions are leaky because they encode implicit assumptions. Attempting to make all assumptions explicit creates awkward pedantry that *still* leaks, because thought transfer is a lossy process. Conversational vs. legal verbiage. I'm thinking clearly about the unclear.
4 replies 0 retweets 2 likes -
Reminds me of testing's finding, "All oracles are heuristic". There are no perfect tests that can always separate the working from the not-working.
1 reply 0 retweets 0 likes
Yes there are. They are called proofs.
-
-
With no side channels?
1 reply 0 retweets 0 likes -
Replying to @DuncanYoudaho @dakami and
What is a "side channel"? Proofs show correctness, to the point that there is nothing left to show. It is correct.
1 reply 0 retweets 0 likes - Show replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.