YorkshireSeason

Joined 11 years ago

Karma
833
Submissions
365
Member since
Jun 2
View on Hacker News

Recent submissions

Comment · 2 years ago
Clearly, effect systems, as we know them today, are very heavyweight, and not worth the effort in the small. That's not controversial. But we have to present the ideas to beginners somehow. Those complex types come into their own in (some) large-scale programs, and especially as large-scale programs evolve, as they are being changed by programmers other than the original authors. (Not all programming tasks may be suitable, see the article on Rust for games programming that's on the front page RN.) All that said, the whole point of the article, and the research on direct style effects is to make effect typing much more lightweight. Effect types as we do them today metastasise along the call graph, and that is a big problem (this is also why Java-style exception specifications are considered a mistake). Direct-style effects essentially use implicit arguments, as popularised by Haskell and Scala, to hide much of this complexity. Whether this experiment will succeed, or direct style effects suffer from other problems is unclear and we have to wait until we have enough experience with them. And that can only start, once there is a language that implements support for first class direct style effects.

The article suggests that this is coming to Scala, and I'm looking forward to being a guinea pig.

Comment · 2 years ago
The purpose of effect handlers, direct-style effects etc, is to let the type-checker/type-inferencer do most of the reasoning about side-effects.

Using such techniques requires an upfront investment of learning how this works, but once that mountain is climbed, programming becomes easier, faster and less error prone in many cases.

Comment · 2 years ago
The abstract concept here is liveness, aka "eventually something good will happen". In practise, liveness alone is insufficient because a locked up program/processor is indistinguishable from a very slow program/processor. So you really want bounded liveness, along the lines of "within X time units, something good will happen".
Comment · 2 years ago
Every good book on compilers. I learned this from [1]. The (hard to read) original papers include [2, 3]. Interesting tidbit: Gary Kildall, one of the pioneers of abstracting dataflow analyses, later played a role in the (in)famous deal between Microsoft and IBM that became the starting point for the dominance of the former. The foundational theory behind this is abstract interpretation for which you have many introductions, including [5, 6], with the (hard to read) original being [7].

[1] https://cs.au.dk/~amoeller/spa/

[2] G. A. Kildall, Global expression optimization during compilation.

[3] G. A. Kildall, A Unified Approach to Global Program Optimization.

[4] https://en.wikipedia.org/wiki/Gary_Kildall

[5] F. Nielson, H. Riis Nielson, C. Hankin, Principles of Program Analysis.

[6] X. Rival, K. Yi, Introduction to Static Analysis: An Abstract Interpretation Perspective.

[7] P. Cousot, R. Cousot, Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints.

Comment · 2 years ago
I agree this is an interesting direction. IIRC the top (open) bitvector synthesiser works like this (albeit not with ILP).

Trouble with ILP is that it doesn't work on GPUs (as of April 2024) and on CPUs synthesis and other forms of learning are hopeless. That may change in the future ...

Comment · 2 years ago
LLMs today still struggle to met specifications exactly, which is what synthesis is good at.
Comment · 3 years ago
Comment · 3 years ago
Unfortunately, Harrison's book, despite its many other merits, doesn't really treat CDCL (= conflict-driven clause learning), which is really what makes SAT solvers fly.
Comment · 3 years ago
Comment · 3 years ago
Whoops, typo. "(1) it is a sex change operation ..." should be: "(1) it is not a sex change operation"
Comment · 3 years ago
From the wikipedia article:

   "Michel Foucault argued that it is intolerable 
    to assume that a child is incapable of giving 
    meaningful consent to sexual relations."
The action of the french intellectuals or the German Greens was very clearly not just about equating the age of consent between homosexuals and heterosexual, but also about enabling sex between adults and prepubescent children.
Comment · 3 years ago
"extraordinary rare" is still too much, and trivialises the issue. There is serious lobbying in place in many countries to make it happen more. As you know, the only acceptable rate is 0. One important stepping stone in getting this rate back down to 0 is to make it illegal tout court even for adult. There should not even be medical infrastructure for such mutilation.

Aside, your user name here is after an organisation founded by one of world history's worst mass murderers. Can I suggest to show empathy with his victims, and not use this term? Using it trivialises his crimes.

Comment · 3 years ago
(1) it is a sex change operation, please do not misrepresent modern genital mutilation. Sex is a biological phenomenon to do with reproduction and, simplifying a small bit: there are two sexes, male and female. A man whose genitals are mutilated does not become a women (i.e. gains the ability to give birth to children).

(2) the purpose of modern genital mutilation for the mutilatee is to facilitate sex fraud, and for the mutilator is, one imagines, money.

(3) if believe someone at that age is mature enough to understand the implications of modern genital mutilation, you will have to face the question why you trivialise it. Your writing here may, directly or indirectly lead to more modern genital mutilation. Speech has consequences.

Comment · 3 years ago
> Lobotomy was generally not voluntary on the part of the patient [...] curious how you feel about other forms of body modification

In what sense can children consent to genital mutilation, since they do not understand at all human sexuality and the human sex drive, since the have had absolutely no experience with it? Virtually all other forms of body modification are also not legal for children.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton