Hacker News new | ask | show | jobs
by princesse 2489 days ago
Can you provide more details? Are you talking about algorithms like modular decomposition[1]? Any specific challenge you'd like to see addressed in the following years?

[1] https://en.wikipedia.org/wiki/Modular_decomposition

1 comments

Especially automatic refactorings...

If you look at real code, often the main reason why this routine was added to this file... was that the programmer worked in this file last.

Is that a Good Reason? No it's a bloody awful reason.

An automated tool should be able to look at the network of declarations, definitions and references and work out which module each thing should be in.

I'm using a datastructure like that in my sideproject (a new "software" editor aka a list editor) - you got a data point that exists in multiple dimensions - it has representations in backend, frontend, graphql schema, UI, db, mobile client) and different relationships in each of those dimensions. And it can have subdimensions and they can have their subdimensions etc. So when you update the core representation, all get the update in the dimension they care about.

It's a pretty great datastructure for writing code, you get automatic refactor everywhere.

If you're interested to take a look ping me, would love fresh eyes