For abstractions think: automated memory management, rich class/object libraries, idiomatic libraries, compilers that recognize and vectorize common usage patterns, runtime error handling, dynamic typing, etc.
That's not obfuscation, its faster code development, easier to read code, simpler maintainability.
Everything at a higher level than stack, manual heap, processor instruction, registers, explicit addressing and modes, direct I/O, and networking primitives level.
To have all that help, but still be able to drop down to the lowest level, in one consistent toolset is really nice for development and reliable sharing.
(Only a Julia fan at a distance! Not had the pleasure.)
I guess this sounds nice but I wouldn't want to be told that I should just learn assembler, or that if I know assembler that I'd have to put up with whatever high level memory management scheme that I'd have to work around, etc...
That's not obfuscation, its faster code development, easier to read code, simpler maintainability.
Everything at a higher level than stack, manual heap, processor instruction, registers, explicit addressing and modes, direct I/O, and networking primitives level.
To have all that help, but still be able to drop down to the lowest level, in one consistent toolset is really nice for development and reliable sharing.
(Only a Julia fan at a distance! Not had the pleasure.)