Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
Hirrolot
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
31.
▲
Alan Kay – Programming and Scaling [video]
(youtube.com)
4 points
by
Hirrolot
3y ago
|
0 comments
32.
▲
Dynamic Typing with Dependent Types
(citeseerx.ist.psu.edu)
2 points
by
Hirrolot
3y ago
|
0 comments
33.
▲
by
Hirrolot
3y ago
> I'm pretty sure that this is one of the unsafeties that rust borrows from c But integer arithmetic is safe in terms of Rust. > Checking every addition adds a massive slowdown It only does so for debug mode. In release mode, it
34.
▲
by
Hirrolot
3y ago
Thanks for your comprehensive answer, it's really nice to see that async traits and etc. might be coming soon.
35.
▲
by
Hirrolot
3y ago
Async traits, async `Drop`, TAITs, variadic generics (unlikely they will every be implemented), generic closures, optional/named parameters, anonymous enums. These are the first that came to my mind.
36.
▲
by
Hirrolot
3y ago
Exactly. The point is that most Rust libraries use semantic versioning, which actually forces you to determine if the change you've made to your library is backwards-compatible or not. I think it's a good practice but it's un
37.
▲
by
Hirrolot
3y ago
> As long as the time is much larger than it takes to handle the old statement limit it is preserved. As a library developer, how can I know that? > The old version might have prevented your code from compiling as mentioned in the not
38.
▲
by
Hirrolot
3y ago
Since I entered Rust (circa 2018-2019) and async/.await was stabilized, I started to lose my expectations on the growth of the language. Almost every language issue I wanted to be resolved is still unresolved (besides GATs, which are g
39.
▲
by
Hirrolot
3y ago
> To avoid having long compilations without feedback, the compiler will always emit a message after your compile-time code has been running for a while, and repeat that message after a period that doubles each time. Is this "period&
40.
▲
by
Hirrolot
3y ago
> Surprisingly, these particles were found decades ago by Alonzo Church, the inventor of Lambda calculus long before electronic computers even existed!! Lambda calculus is not the simplest computational device based on functions; with SK
41.
▲
by
Hirrolot
3y ago
> the great benefit of the y-combinator is that it permits indefinite iteration in a system that seems at first glance to not support iteration at all This is only the case for untyped systems. If we try to type the Y combinator, we will
42.
▲
by
Hirrolot
3y ago
You keep answering with the same words though. My question was _where_ the Y combinator is useful, not _what_ it is designed for, which I am of course aware of.
43.
▲
by
Hirrolot
3y ago
What are the useful cases of the Y combinator then? (I don't say that the lambda calculus is useless, I was responding to a comment that claimed the lambda calculus is useless without the Y combinator.)
44.
▲
by
Hirrolot
3y ago
> which is what makes it a useful concept rather than an arbitrary bundle of rules. I cannot recall a single practical FP language based on the Y combinator for recursion. The typical approach is to extend lambda calculus with a separate
45.
▲
by
Hirrolot
3y ago
> Nobody has ever complained that a talk was too short. People did complain. In some of my writings, I regret of not expounding a topic a bit more.
46.
▲
by
Hirrolot
3y ago
> Unidirectional type inference would make for more intelligible compiler errors. Full Hindley-Milner can get confusing. Bidirectional type checking has good error messages and a very intuitive implementation.
47.
▲
by
Hirrolot
3y ago
> Sure, a turing-complete compile-time language would be nice I wrote Metalang99 [1] as a compile-time language that is able to perform loops, recursion, etc. It's not Turing-complete though, as the C preprocessor is not Turing-comp
48.
▲
by
Hirrolot
3y ago
I don't believe the original performs NbE. It _looks_ like NbE, but the composition of `eval` and `quote` will not give you beta-normal forms. `quote` explicitly wraps inferrable terms in `Inf`, while `eval` eliminates `Inf`.
49.
▲
by
Hirrolot
3y ago
I don't kind of agree with your statement, since I earlier implemented a 80-line dependent lambda calculus [1]. I think dependent types make type checking a bit more involved due to non-trivial type equality, but that's all about
50.
▲
by
Hirrolot
3y ago
If you combine these two naming schemes in the same syntax, of course it will be ambiguous. In the examples of the K combinator, they don't clash with each other though, as those are different examples.
51.
▲
by
Hirrolot
3y ago
The "simple" from the title I wrote as the usual meaning of "simple" in English. I had some hard time devising a proper title, so I understand the complaints.
52.
▲
by
Hirrolot
3y ago
The techniques present in the paper and blog post are not really from functional programming but from mathematics. Functional programming just happens to present them in the most natural way; this is why the paper chose Haskell. We could im
53.
▲
by
Hirrolot
3y ago
For those who are wondering whether types can be computed in the same way as values -- yes, they can, with a proper type system. Idris [1] is a prominent example of a programming language with first-class types, meaning that if you can perf
54.
▲
by
Hirrolot
3y ago
We are remote (fixed).
55.
▲
by
Hirrolot
3y ago
The need to express polymorphism manually in C, the need to remember to check errors returned by functions (instead of the monadic style of computation), the need to define closure's environment structures (those that are passed via so
56.
▲
by
Hirrolot
3y ago
I occasionally have to manipulate binary numbers too. But, aside from bitwise operations, I almost always forget what I had learned last time and have to re-read the material again.
57.
▲
by
Hirrolot
3y ago
I wonder what is the target audience of articles like this. I think the article is well-written, however 90-95% of the terminology make little or no sense to me who is not proficient in this field. Would the article be useful for someone wh
58.
▲
by
Hirrolot
3y ago
> The "strong type systems" work by having you design the types correctly in the first place. I was responding to a comment that was suggesting letting an AI to do that. > The one thing worse than debugging code is debugging
59.
▲
by
Hirrolot
3y ago
I'm imagining an AI based on a deductive system rather than sequential text generation. This is roughly how "strong type systems" work, and so it might be simpler to map this model to formal methods. By the way, if you spend
60.
▲
by
Hirrolot
3y ago
Good point, gotta try it.
More ›