Есть хорошее видео от JVM разработчика, который принимает участие в этом проекте. И хорошо проходит по теме «native» вызовов/памяти. На 29 минуте есть небольшое сравнение между JNI и «улучшенным вариантов». https://www.youtube.com/watch?v=sFxrjGTnvBs
Scala является strong static type языком. За механизм вывода типа отвечает компилятор, если вы не указываете его явно.
Все зависит от вашего style guide. Но обычно такой вызов метода, в infix notation, не используется. Предпочитают более явный: str.charAt(5)
https://www.youtube.com/watch?v=sFxrjGTnvBs
StringBuffer and StringBuilder performance with JMH