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

#6 scaling the ladder of abstraction

This is one I have a tough time explaining to students who are so focused on the task at hand they don't feel there's time to sit back and reason in generality.




Came across this Dijkstra quote via https://www.youtube.com/watch?v=GqmsQeSzMdw

> The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise

By taking away all the non-essential things and leaving only on what you need, it allows you to truly understand the structures that you are studying. Definitely rings true when I work in ML/Haskell-style type systems. Easier said than done convincing the students though...


> By taking away all the non-essential things and leaving only on what you need, it allows you to truly understand the structures that you are studying.

This is the essence of type abstraction and parametricity!




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

Search: