3 ms·
agree -- ultra useful alternative to splitting would be neat to imagine a language where this was an optimizer feature rather than a decision the programmer ma
by awinter-py 5y ago
agree -- ultra useful alternative to splitting
would be neat to imagine a language where this was an optimizer feature rather than a decision the programmer made. many functions that return an array are ultimately using just one, or a few elements of it. the compiler can make a lot of decisions in the caller about how to reduce allocation or short-circuit array processing.
I think, but am not sure, this is what the experimental parsing language 'wuffs' is about https://github.com/google/wuffs https://github.com/google/wuffs -- the language itself is aware of array lengths as a first-class citizen and can make decisions accordingly
- layer8 5y agoThe optimization could be done by lazy evaluation, like a generator.
- tialaramex 5y agoWUFFS is, as it's name suggests, primarily about safety, but it gets performance advantages that fall out of safety (e.g it needs no runtime bounds or overflow/underflow checks because it proved these things can't happen at compile time)