Hacker News new | ask | show | jobs
by ParetoOptimal 1430 days ago
> People abstract before an abstraction is necessary.

Sometimes an abstraction cuts to the core of the reason why.

See for example https://algebradriven.design/

Good abstractions can communicate intent better than mounds of concrete code because they speak at a higher level.

However, mounds of okay concrete code is way easier to deal with then poorly thought out abstractions.

This means pragmatists get little practice in abstractions, where their pragmatism is needed most to uncover the useful abstraction and avoid the overly complex invented abstraction.

Abstract code also has the advantage of parametricity in strongly typed programming languages.

1 comments

I started designing an algebraic language by writing code.

https://GitHub.com/samsquire/algebralang

It's designed to be expressive and powerful and practical.

The core insight to a problem is rarely what we spend most of our programming time doing.

> The core insight to a problem is rarely what we spend most of our programming time doing.

I believe that is a mistake.

I'll have to check your language out though!

Are those code samples formatted correctly? (they are difficult to read as is)