Hacker News new | past | comments | ask | show | jobs | submit login

There are no non-leaky abstractions outside of toy applications. Extensibility is the unique strength of software. Otherwise you might as well do it with hardware. Other disciplines are (more) limited by their physical constraints. If air-tight abstractions could solve everything machines could do the programming and there wouldn't be much need for human programmers.



Yes, clearly the reason that machines aren't doing all of the programming is that there's no such thing as a non-leaky abstraction.

ಠ_ಠ


Well it is pretty self-evident that non-leaky abstractions don't exist -- or I haven't really seen one in all these years. Take functions in functional programming: if tail recursion matters that is one leak; if strict or lazy evaluation matters that is another leak; if you want to share intermediate results well that springs a big leak; etc. Engineering is about trade-offs. We are there to judge what matters to us and therefore "leaks" and abstract away details that may not matter to us (at the level we are working on). Yes fundamentally I do see this as the barrier to complete automation.


Funny, I just swapped out the network card on my work desktop, because the new card has features the old one lacked.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: