LINUX.ORG.RU
ФорумTalks

Команда TypeScript объявила о переходе на Go

 , , очень странные дела


1

5

Команда TypeScript только что объявила о переходе на Go.
Теперь в 10 раз быстрее

Первый стабильный релиз планируют к середине 2025, полноценный билд и языковой сервис — к концу года. Развитие JS-версии продолжится до TypeScript 6.x, а нативная реализация станет TypeScript 7

Официальный репозиторий

Перемещено CrX из development

★★★

Последнее исправление: CrX (всего исправлений: 2)
Ответ на: комментарий от unDEFER

как я понимаю, это был транспайлер (транслятор в JS). И написан он был на JS, чтобы код TS транслировать на лету в JS в веб-браузере.

MirandaUser2
()

Я так понимаю, они не переписывали его на Го, а написали какой-то автоматический транслятор TS->Go. Забавно, что точно так же «переписывали» компилятор (или весь рантайм?) Го с Си на Го.

MoldAndLimeHoney ★★
()

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

Syncro ★★★★★
()
Последнее исправление: Syncro (всего исправлений: 2)
Ответ на: комментарий от ugoday

Сейчас можно наконец-то уже разрешить из WASM ходить в DOM напрямую и вообще выкинуть все эти языки нафиг из браузеров

ahdenchik
()
Ответ на: комментарий от Syncro

классы дающие интерфейсный контракт

Проблема с классами в том, что к абстрактному контракту в них приколочена гвоздями и конкретная реализация.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 1)
Ответ на: комментарий от MoldAndLimeHoney

а написали какой-то автоматический транслятор TS->Go

Где пруфы?

sanyo1234
()
Ответ на: комментарий от goingUp

Но для штуки типа компилятора он неизбежно сольет даже гошечке, и ничего с этим не сделаешь, вот с сабжем тупо получили ускорение в 10 раз.

А C# AOT медленнее выхлопа Go?

IMHO единственная причина - это портабельность Go, чтобы новый компилятор для TypeScript v7 -> Native мог запускаться в т.ч. и на более других платформах, чем ARM и x86 (по сути единственные таргеты нынешнего .NET, ещё и по осям довольно скромно).

А таргетов для гошечки хоть отбавляй, почти как у Free пасквилянтов.

sanyo1234
()
Последнее исправление: sanyo1234 (всего исправлений: 1)
Ответ на: комментарий от kaldeon

Почему не Rust - понять можно. В Rust нет GC, это принципиальная разница с JS, что убивает любые шансы хоть сколько-нибудь быстрого переноса кода. По сути придётся переписывать вообще всё. Это, конечно, всегда хорошо, но эффективным менеджерам такое донести будет сложно, что новая версия выйдет не через год, а через 15 лет.

А вот почему не C# - понять нельзя.

vbr ★★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от MoldAndLimeHoney

написали какой-то автоматический транслятор TS->Go

Вангую, что просто запрягли GPT

goingUp ★★★★★
()
Ответ на: комментарий от Nervous

Проблема с классами в том, что к абстрактному контракту в них приколочена гвоздями и конкретная реализация.

Абстрактному контракту - абстрактные классы! Нет конкретной реализации - не проблем. В принципе, ничего нет.

Obezyan
()

Теперь можно говнокодить еще больше и все равно будет збс.

kirezz
()
Ответ на: комментарий от MirandaUser2

это был транспайлер (транслятор в JS). И написан он был на JS, чтобы код TS транслировать на лету в JS в веб-браузере.

Поправка: транспайлер написан на typescript, но скомпилирован в javascript.

MirandaUser2
()
Ответ на: комментарий от flant

в 10 раз быстрее что именно? компиляция в JS?

проверка сходимости типов

aiive
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)