At runtime, you have **all** information from compile, **and additionally** runtime info from profiling. Did you bothered to read the link I provided? It is not something I discovered or even work on: I read about it and found it interesting, that's all. If I was smart enough to implement it, I would not be wasting time here in PT forum
> Why is it that academia places such a hard emphasis on "computers are fast, memory is cheap"?
Actually, it is not academia but pragmatic programmers who have deadlines I am surprised what thesis themes of grad students are mentioned at the CompSci mailing list: Less than one a year even sounds interesting and relevant
> computers are not fast, and memory is not cheap when you have someone reading a stream one character at a time and appending it to a string in a language where strings are immutable
then don't use string what you need to reallocate but a buffer. get some classes in data structures If input stream is slow, you have plenty of time to process and reallocate between characters.
Not if you use reference counting for GC. CPU is fast enough that there is plenty of time to do lots of things between disk reads, trust me.(talk all you want about GC, it still needs processor time to run and has to effective stop everything else so that the memory is only changed by itself(the GC)).