3 ms·
Big systems growing over decades are usually easy targets for drastic simplifications by building upon better abstractions. There's a great talk by Alan Kay ti
by jpfr 11y ago
Big systems growing over decades are usually easy targets for drastic simplifications by building upon better abstractions.
There's a great talk by Alan Kay titled 'Is it really "Complex"? Or did we just make it "Complicated"?' [1].
He shows for example the Nile system where they replaced several 10k of vector-graphics rendering code with 450 lines. An example from a different context is the miniKanren / microKanren approach to logic programming. It's basically Prolog fitting on a single page [2].
If a similar simplification and unification could be accomplished for representations of (solid) 3D objects, that would be a great great result.
[1] https://www.youtube.com/watch?v=ubaX1Smg6pY https://www.youtube.com/watch?v=ubaX1Smg6pY
[2] http://minikanren.org/ http://minikanren.org/
- ddingus 11y agoOver very long time periods, we may see progress here, but inertia is huge. Take Parasolid. It's a very good kernel. Between it, Granite and the Dassault kernel, we have most of the world's geometry being handled on those kernels. Probably billions of man hours at this point. Interoperability is basically terrible. If it were me, I would see efforts to interoperable and infer intent, features, etc... as the most productive task. Those kernels aren't going anywhere, nor are the geometry use cases getting easier. A refactoring of all that is a very seriously expensive, time consuming task and still that body of data, intent, automation, etc... is there to deal with. It's hard to even think about an economically viable case. There are some trying with primitive, open kernels, and various takes on forks of the established ones. One vendor is dividing the kernel into well defined pieces do that other software can operate in those gaps and do so efficiently.