Olá, Nataly, como vai?
A diferença no uso das crases em JavaScript acontece porque cada linguagem define sua própria forma de lidar com interpolação de strings. Em JavaScript, apenas as template strings, escritas entre crases (`), permitem inserir variáveis diretamente dentro do texto com ${variavel}. Já em Dart, toda string aceita interpolação e o compilador identifica automaticamente o que é texto e o que é código ao encontrar o símbolo $.
Sobre a padronização, a falta de uma sintaxe única para interpolação de strings entre linguagens, se deve à evolução e objetivos distintos de cada linguagem. Cada uma é criada por diferentes equipes, em diferentes momentos, com foco em diferentes domínios (web/frontend, aplicativos móveis/backend, scripting de sistema), o que leva a escolhas de sintaxe que melhor se integram ao restante da linguagem.
Sobre a diferença entre Dart e Kotlin, ambas são linguagens modernas, fortemente tipadas e com foco em produtividade, mas com propósitos distintos. Dart foi criada pelo Google e é amplamente usada no desenvolvimento com Flutter, enquanto Kotlin, criada pela JetBrains, é mais comum no ecossistema Android e também pode ser usada em aplicações backend.
Espero ter ajudado.
Siga firme nos seus estudos e conte com o fórum sempre que precisar.
Abraços :)
Caso este post tenha lhe ajudado, por favor, marcar como solucionado