> You can fix the leaked token problem if your prover also proves that (a) the private token id is not on the public revocation list If the token contains an identifier that uniquely distinguishes it from other tokens,…
> my understanding is a "clean room" reverse engineering for interoperability was fair use and not a copyright violation To my understanding, reverse engineering algorithms and interfaces is not a copyright violation…
I don't know what quotemstr was specifically talking about, but here's my own take. The ideal error handling is inferred algebraic effects like in Koka[1]. This allows you to add a call to an error-throwing function 15…
Group theory entering quantum physics is a particularly funny example, because some established physicists at the time really hated the purely academic nature of group theory that made it difficult to learn.[1] If you…
> When I run 'notepad dir1/file1.txt', the package should not sneakily be able to access dir2. What happens if the user presses ^O, expecting a file open dialog that could navigate to other directories? Would the dialog…
Thanks for sharing this! Went and changed some keybinds right away.
My favourite feature is userChrome. The default chrome sucks in both Chrome and Firefox, but at least Firefox allows me to customize it to my liking without forking the entire browser. On the flip side, changing…
I feel that Windows Registry is similar legacy cruft as environment variables. Worse yet, most software doesn't document which registry keys it's using, so you have to find them on some ancient forum comment or do the…
> Is there anything C# _doesn’t_ have? Pi types, existential types and built-in macros to name a few.
Last month, a Finnish court judged that using derogatory words in an email sent privately to the offended person counts as defamation.[1] When this was discussed in the Finnish Reddit [2], some found it unjust that it…
The core difference between sums and unions is that sum types have cardinality |A+B| = |A| + |B|, whereas union types have cardinality |A∪B| = |A| + |B| - |A∩B|. As you noted, type systems with union types, such as…
The problem with forking is that updating becomes a nightmare. Most ERPs provide a stable-ish API and heavily recommend customers to stick with it, because then automatic updates just work.
> Most web apps today use APIs that return JSON and are called by JavaScript. Can you use REST for such services You kind of could, but it's a bad idea. A core tenet of the REST architecture is that it supports a…
Feel free to write a bug report to Chrome developers or ManifestV3 authors. In the meantime, Firefox users can override any delivered content with the webRequest API.
C++ also has generators[1], but the author is perhaps unaware of them. [1] https://en.cppreference.com/w/cpp/coroutine/generator
To me, the cool (and uncommon in other languages' standard libraries) part about C++ ranges is that they reify pipelines so that you can cut and paste them into variables, like so: auto get_ids(std::span<const Widget>…
That looks more like ad hoc union types than sum types. What happens if you do: data FooResult = Number | Number If you can't distinguish the two cases, then it means they're not an actual sum type, since e.g. the set…
Reminds me of this sketch https://youtu.be/iB1hQkqtNso
For me, that advanced reader is Thunderbird. It has amazing customizability with userchrome.css, web extensions, about:config and developer tools from Firefox.
Once, I wanted to write a C# function roughly like this: (T1, ..., Tn) Apply<T1, ..., Tn>((Func<P, T1>, ..., Func<P, Tn>) args) This is not possible in C# because the language doesn't have variadic generics. Instead, I…
Exceptions are difficult to discuss because different languages implement exceptions differently, each with their own downsides. That said, I don't think anyone has an issue with bubbling. Even sum type proponents love…
You can add to the end of an array by using the path /.../myarray/-, i.e., the index is replaced by a dash. JSON patch is indeed not idempotent.
The dataset Github page https://github.com/simonalexanderson/MotoricaDanceDataset does mention some missing finger data: > Session 2: Casual dancing ... No finger motion. > Session 3: Vintage jazz dancing ... Fingers…
It seems like the author had some very specific read and write pattern in mind when they designed for performance, but it's never explicitly stated. The problem setting only stated that "reads are more common than…
> Then there are other webapps which seem to implement their own login flow: they figure your session is expired, but don't allow you to switch accounts. The only way to use a different account from this flow is to sign…
> You can fix the leaked token problem if your prover also proves that (a) the private token id is not on the public revocation list If the token contains an identifier that uniquely distinguishes it from other tokens,…
> my understanding is a "clean room" reverse engineering for interoperability was fair use and not a copyright violation To my understanding, reverse engineering algorithms and interfaces is not a copyright violation…
I don't know what quotemstr was specifically talking about, but here's my own take. The ideal error handling is inferred algebraic effects like in Koka[1]. This allows you to add a call to an error-throwing function 15…
Group theory entering quantum physics is a particularly funny example, because some established physicists at the time really hated the purely academic nature of group theory that made it difficult to learn.[1] If you…
> When I run 'notepad dir1/file1.txt', the package should not sneakily be able to access dir2. What happens if the user presses ^O, expecting a file open dialog that could navigate to other directories? Would the dialog…
Thanks for sharing this! Went and changed some keybinds right away.
My favourite feature is userChrome. The default chrome sucks in both Chrome and Firefox, but at least Firefox allows me to customize it to my liking without forking the entire browser. On the flip side, changing…
I feel that Windows Registry is similar legacy cruft as environment variables. Worse yet, most software doesn't document which registry keys it's using, so you have to find them on some ancient forum comment or do the…
> Is there anything C# _doesn’t_ have? Pi types, existential types and built-in macros to name a few.
Last month, a Finnish court judged that using derogatory words in an email sent privately to the offended person counts as defamation.[1] When this was discussed in the Finnish Reddit [2], some found it unjust that it…
The core difference between sums and unions is that sum types have cardinality |A+B| = |A| + |B|, whereas union types have cardinality |A∪B| = |A| + |B| - |A∩B|. As you noted, type systems with union types, such as…
The problem with forking is that updating becomes a nightmare. Most ERPs provide a stable-ish API and heavily recommend customers to stick with it, because then automatic updates just work.
> Most web apps today use APIs that return JSON and are called by JavaScript. Can you use REST for such services You kind of could, but it's a bad idea. A core tenet of the REST architecture is that it supports a…
Feel free to write a bug report to Chrome developers or ManifestV3 authors. In the meantime, Firefox users can override any delivered content with the webRequest API.
C++ also has generators[1], but the author is perhaps unaware of them. [1] https://en.cppreference.com/w/cpp/coroutine/generator
To me, the cool (and uncommon in other languages' standard libraries) part about C++ ranges is that they reify pipelines so that you can cut and paste them into variables, like so: auto get_ids(std::span<const Widget>…
That looks more like ad hoc union types than sum types. What happens if you do: data FooResult = Number | Number If you can't distinguish the two cases, then it means they're not an actual sum type, since e.g. the set…
Reminds me of this sketch https://youtu.be/iB1hQkqtNso
For me, that advanced reader is Thunderbird. It has amazing customizability with userchrome.css, web extensions, about:config and developer tools from Firefox.
Once, I wanted to write a C# function roughly like this: (T1, ..., Tn) Apply<T1, ..., Tn>((Func<P, T1>, ..., Func<P, Tn>) args) This is not possible in C# because the language doesn't have variadic generics. Instead, I…
Exceptions are difficult to discuss because different languages implement exceptions differently, each with their own downsides. That said, I don't think anyone has an issue with bubbling. Even sum type proponents love…
You can add to the end of an array by using the path /.../myarray/-, i.e., the index is replaced by a dash. JSON patch is indeed not idempotent.
The dataset Github page https://github.com/simonalexanderson/MotoricaDanceDataset does mention some missing finger data: > Session 2: Casual dancing ... No finger motion. > Session 3: Vintage jazz dancing ... Fingers…
It seems like the author had some very specific read and write pattern in mind when they designed for performance, but it's never explicitly stated. The problem setting only stated that "reads are more common than…
> Then there are other webapps which seem to implement their own login flow: they figure your session is expired, but don't allow you to switch accounts. The only way to use a different account from this flow is to sign…