Hacker News new | past | comments | ask | show | jobs | submit login
The Missing Link: Explaining ELF Static Linking, Semantically [pdf] (kent.ac.uk)
55 points by ingve 16 days ago | hide | past | web | favorite | 2 comments

Root cause analysis.

1. Why is static linking[1] complicated? Because we want to 'reuse' libraries unmodified.

2. Why do we want to use libraries unmodified? Because libraries can get quite complex, and building them isn't always trivial.

3. Why are libraries complex to build? (Here I must resort to a weasel word.) Largely because we want to provide the ability to reuse libraries unmodified[2].

Oops, did I say root cause? We just have circular reasoning. I'm working on coming up with an alternative: https://lists.tildeverse.org/hyperkitty/list/tildeclub@lists...

[1] Dynamic linking has other values, like reducing memory requirements. But not static linking.

[2] Here's an example, about how Unix `cat` has gained bloat over time, purely out of compatibility concerns: https://news.ycombinator.com/item?id=11340510#11341175

At a glance the paper looks good and made sense to me. But the codes went way above my head. I think reading more papers on this topic will give me more insight.

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