эм. в эрланге вот два типа строк, с кардинально разным "размещением в памяти конкретных данных", при это оба вполне себе семантически строки, пусть и с разными О() и нюансами, и можно написать кусок кода, которому будет безразлично, которая это из реализаций строк.