С дотнетом и шарпом что-то не так
От: rudzuk  
Дата: 13.03.25 13:00
Оценка: 2 (2) +2 -2 :))) :)))
Вы же в курсе, что Хейлсбрег переписал компилятор TypeScript (с TypeScript) на GO? Вот. Вопрос: почему не на C#? Ответ немного очевиден: с шарпом и дотнетом что-то не так, раз их папа предпочел изделие конкурента, а не догфудинг. Вощем, кирдык скоро вашей америке дотнетине
avalon/3.0.2
Re: С дотнетом и шарпом что-то не так
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 13.03.25 13:12
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Вы же в курсе, что Хейлсбрег переписал компилятор TypeScript (с TypeScript) на GO? Вот. Вопрос: почему не на C#? Ответ немного очевиден: с шарпом и дотнетом что-то не так, раз их папа предпочел изделие конкурента, а не догфудинг. Вощем, кирдык скоро вашей америке дотнетине


Очевидно: им нужна скорость и не только работы, а и в том числе быстрый запуск.
Re: С дотнетом и шарпом что-то не так
От: Osaka  
Дата: 13.03.25 13:15
Оценка: :)))
R>Вы же в курсе, что Хейлсбрег переписал компилятор TypeScript (с TypeScript) на GO? Вот. Вопрос: почему не на C#?
Не вписался в современный молодой энергичный коллектив же.
Друга ищи не того, кто любезен с тобой, кто с тобой соглашается, а крепкого советника, кто полезного для тебя ищет и противится твоим необдуманным словам.
Re[2]: С дотнетом и шарпом что-то не так
От: rudzuk  
Дата: 13.03.25 13:16
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N> Очевидно: им нужна скорость и не только работы, а и в том числе быстрый запуск.


А как же дотнетовский AOT, который для этого и нужен?
avalon/3.0.2
Re[3]: С дотнетом и шарпом что-то не так
От: wl. Россия  
Дата: 13.03.25 17:04
Оценка:
Здравствуйте, rudzuk, Вы писали:

N>> Очевидно: им нужна скорость и не только работы, а и в том числе быстрый запуск.


R>А как же дотнетовский AOT, который для этого и нужен?


Unity пошли по другому пути, и компилируют IL в c++
Re: С дотнетом и шарпом что-то не так
От: dsorokin Россия  
Дата: 13.03.25 18:02
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Вы же в курсе, что Хейлсбрег переписал компилятор TypeScript (с TypeScript) на GO? Вот. Вопрос: почему не на C#? Ответ немного очевиден: с шарпом и дотнетом что-то не так, раз их папа предпочел изделие конкурента, а не догфудинг. Вощем, кирдык скоро вашей америке дотнетине


А вы не видели на ЛОРе недавнее обсуждение?! Время от времени посматриваю издалека тамошние баталии. Там ответили, что так было проще перенести работающий код с JavaScript на Go из-за близости языков. Вполне выглядит правдоподобно, хотя JavaScript я давно и успешно забыл, а c Go почти не знаком. Если языки действительно близки, то на реальную причину очень похоже. Не вижу смысла искать другие. Да и, может, просто автору захотелось разнообразия, потому что любая технология приедается, даже самая совершенная.

А дотнет сам по себе очень хорош за всем, кроме одного такого маленького нюанса, что он — американский
Re: С дотнетом и шарпом что-то не так
От: SkyDance Земля  
Дата: 13.03.25 18:15
Оценка: +1
R>Вы же в курсе, что Хейлсбрег переписал компилятор TypeScript (с TypeScript) на GO? Вот. Вопрос: почему не на C#? Ответ немного очевиден: с шарпом и дотнетом что-то не так, раз их папа предпочел изделие конкурента, а не догфудинг.

Не надо искать сложные ответы там, где есть простой. Простой ответ — Go моложе и не успел обрасти дичайшим легаси. К тому же внутрикорпоративные запросы почти всегда перерастают в политику. Мне тоже было куда проще работать с адекватной open source community и другими компаниями (тем же Ericsson), чем с индус-триализованной частью моего предыдущего места работы. Объяснимо, конечно — open source community работает на открытых принципах, тогда как внутренние копроративные процессы завязаны на "кому сколько достанется на очередном performance review". То бишь, открытая разработка vs кулуарные переговоры.
Re: С дотнетом и шарпом что-то не так
От: hi_octane Беларусь  
Дата: 13.03.25 19:19
Оценка: :))) :)
R>Вы же в курсе, что Хейлсбрег переписал компилятор TypeScript (с TypeScript) на GO? Вот. Вопрос: почему не на C#?

А если двухходовочка? Сейчас пишем TS на Go. За пару лет C# выходит на AOT такого-же уровня: компиляция в Native, мелкий экзешник. Через 2 года Хельсберг и ко выкатывают статью что "мы всё переписали с Go, получилось в десять раз хуже чем мы ожидали, сейчас переписываем на C#". Без этапа с Go такую PR-акцию не провернуть
Re[4]: С дотнетом и шарпом что-то не так
От: rudzuk  
Дата: 13.03.25 19:58
Оценка:
Здравствуйте, wl., Вы писали:

wl.> R>А как же дотнетовский AOT, который для этого и нужен?


wl.> Unity пошли по другому пути, и компилируют IL в c++


Полагаю, они не стали бы этого делать, появись AOT раньше.
avalon/3.0.2
Re[2]: С дотнетом и шарпом что-то не так
От: rudzuk  
Дата: 13.03.25 19:58
Оценка:
Здравствуйте, SkyDance, Вы писали:

SD> Не надо искать сложные ответы там, где есть простой. Простой ответ — Go моложе и не успел обрасти дичайшим легаси. К тому же внутрикорпоративные запросы почти всегда перерастают в политику.


SD> Объяснимо, конечно — open source community работает на открытых принципах, тогда как внутренние копроративные процессы завязаны на "кому сколько достанется на очередном performance review". То бишь, открытая разработка vs кулуарные переговоры.


Так дотнет уже давно опенсорс. Компилятор TypeScript тоже опенсорс. Ну а какая такая легаси в дотнете или шарпе могла помешать Хейлсбергу я вообще не догоняю

Зато мы видим, что МС свой облачный офис переписывает с шарпа на раст: https://www.opennet.ru/opennews/art.shtml?num=60533 А теперь такой удар в спину собственному детищу от Хейлсберга. Однако, еще немного и будет уже тенденция.
avalon/3.0.2
Re[2]: С дотнетом и шарпом что-то не так
От: rudzuk  
Дата: 13.03.25 19:58
Оценка:
Здравствуйте, dsorokin, Вы писали:

d> А вы не видели на ЛОРе недавнее обсуждение?! Время от времени посматриваю издалека тамошние баталии. Там ответили, что так было проще перенести работающий код с JavaScript на Go из-за близости языков.


Этот тезис я на опенете видел, он, вроде, от самого. Однако, он выглядит неубедительным. На мой взгляд, схожесть TypeScript и Go, скажем так, несколько преувеличена, в то время, как о C# и TypeScript говорится, примерно, так:
https://learn.microsoft.com/ru-ru/dotnet/csharp/tour-of-csharp/tips-for-javascript-developers

C#, TypeScript и JavaScript являются членами семейства языков C. Сходство между языками помогает быстро повысить эффективность работы в C#.


https://www.quora.com/Why-are-TypeScript-and-C-so-much-alike

They’re alike because their development was led by the same guy: Anders Hejlsberg.


Да что там, даже вика говорит, что TypeScript инфлюенсед бай C#, что, как бы, намекает
avalon/3.0.2
Re[2]: С дотнетом и шарпом что-то не так
От: rudzuk  
Дата: 13.03.25 20:04
Оценка: +1
Здравствуйте, hi_octane, Вы писали:

h> А если двухходовочка? Сейчас пишем TS на Go. За пару лет C# выходит на AOT такого-же уровня: компиляция в Native, мелкий экзешник. Через 2 года Хельсберг и ко выкатывают статью что "мы всё переписали с Go, получилось в десять раз хуже чем мы ожидали, сейчас переписываем на C#". Без этапа с Go такую PR-акцию не провернуть



Звучит разумно.
avalon/3.0.2
Re: С дотнетом и шарпом что-то не так
От: BlackEric http://black-eric.lj.ru
Дата: 13.03.25 20:05
Оценка: +1
Здравствуйте, rudzuk, Вы писали:

R>Вы же в курсе, что Хейлсбрег переписал компилятор TypeScript (с TypeScript) на GO? Вот. Вопрос: почему не на C#? Ответ немного очевиден: с шарпом и дотнетом что-то не так, раз их папа предпочел изделие конкурента, а не догфудинг. Вощем, кирдык скоро вашей америке дотнетине


Да вот тоже это удивило. Почему не шарп от МС, а го от гугла? Действительно странно.
https://github.com/BlackEric001
Re[2]: С дотнетом и шарпом что-то не так
От: SkyDance Земля  
Дата: 14.03.25 04:09
Оценка: +2
BE>Да вот тоже это удивило. Почему не шарп от МС, а го от гугла? Действительно странно.

Да может челу просто захотелось новый инструмент изучить.
Мне вот тоже интересно что-нибудь на Расте написать. Не потому, что язык крутой, а просто любопытно.
Re[3]: С дотнетом и шарпом что-то не так
От: FR  
Дата: 14.03.25 04:52
Оценка: 13 (6) +2
Здравствуйте, rudzuk, Вы писали:

R>Этот тезис я на опенете видел, он, вроде, от самого. Однако, он выглядит неубедительным. На мой взгляд, схожесть TypeScript и Go, скажем так, несколько преувеличена


Там же упор на то что и в TypeScript и в Go типизация структурная, переписать с нее на обычную номинативную может быть очень трудоемко.
Тут и выбора кроме Go и нет среди хотя бы относительно популярных языков, еще и OCaml бы подошел и практически нет больше кандидатов.
Re: С дотнетом и шарпом что-то не так
От: Pzz Россия https://github.com/alexpevzner
Дата: 14.03.25 06:14
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Вы же в курсе, что Хейлсбрег переписал компилятор TypeScript (с TypeScript) на GO? Вот. Вопрос: почему не на C#? Ответ немного очевиден: с шарпом и дотнетом что-то не так, раз их папа предпочел изделие конкурента, а не догфудинг. Вощем, кирдык скоро вашей америке дотнетине


На хабре же есть с ним интервью как раз по поводу этого приекта: https://habr.com/ru/articles/890056/

Говорят, Go — очень кроссплатформенный, в отличии от C#

Жалко, что это порт именно компилятора, и нет режима работы в качестве интерпретатора, не зависящего от node.js.

У меня сейчас возникла потребность вставить в программу на Go некий встроенный скриптинг. По всему получается, что в качестве скриптового языка придется выбрать Питон. А я его терпеть не могу...
Re[2]: С дотнетом и шарпом что-то не так
От: rudzuk  
Дата: 14.03.25 07:25
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz> На хабре же есть с ним интервью как раз по поводу этого приекта: https://habr.com/ru/articles/890056/


Pzz> Говорят, Go — очень кроссплатформенный, в отличии от C#


Так дотнет же тоже
avalon/3.0.2
Re[4]: С дотнетом и шарпом что-то не так
От: rudzuk  
Дата: 14.03.25 07:25
Оценка:
Здравствуйте, FR, Вы писали:

FR> Там же упор на то что и в TypeScript и в Go типизация структурная, переписать с нее на обычную номинативную может быть очень трудоемко.

FR> Тут и выбора кроме Go и нет среди хотя бы относительно популярных языков, еще и OCaml бы подошел и практически нет больше кандидатов.

А вот это действительно веский аргумент. Спасибо.
avalon/3.0.2
Re[3]: С дотнетом и шарпом что-то не так
От: Pzz Россия https://github.com/alexpevzner
Дата: 14.03.25 07:59
Оценка: 4 (2)
Здравствуйте, rudzuk, Вы писали:

Pzz>> Говорят, Go — очень кроссплатформенный, в отличии от C#


R>Так дотнет же тоже


Ну вот смотрю я на эту табличку: https://github.com/dotnet/core/blob/main/release-notes/9.0/supported-os.md

Получается, что на линухе дотнет поддерживает Arm32, Arm64, x64, ppc64le и s390x. Причем в зависимости от дистрибутива, список может быть короче.

Go, для сравнения, поддерживает вот такой список:

$ go tool dist list | grep linux
linux/386
linux/amd64
linux/arm
linux/arm64
linux/loong64
linux/mips
linux/mips64
linux/mips64le
linux/mipsle
linux/ppc64
linux/ppc64le
linux/riscv64
linux/s390x


Я понимаю, какой-нибудь условный 386 уже и мало кому нужен сейчас. Но loong64, riscv64 и любимый китайцами mips...

И это, притом на любом дистре. И можно кросс-компилировать свободно, откуда хочешь и куда хочешь.

Про всякие там FreeBSD и NetBSD я уж не говорю...
Re[4]: С дотнетом и шарпом что-то не так
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 14.03.25 08:13
Оценка: 1 (1)
Здравствуйте, FR, Вы писали:

FR>Здравствуйте, rudzuk, Вы писали:


R>>Этот тезис я на опенете видел, он, вроде, от самого. Однако, он выглядит неубедительным. На мой взгляд, схожесть TypeScript и Go, скажем так, несколько преувеличена


FR>Там же упор на то что и в TypeScript и в Go типизация структурная, переписать с нее на обычную номинативную может быть очень трудоемко.

FR>Тут и выбора кроме Go и нет среди хотя бы относительно популярных языков, еще и OCaml бы подошел и практически нет больше кандидатов.

Я уж думал что не найду адекватное мнение в этом треде, но оказывается еще есть думающие люди.

Хейлсберг даже в 15 минутном анонсе раза три упомянул, что это не переписывание компилятора на другой язык, а портирование, буквально построчный перевод на другой язык, а это возможно только если фичи языка +\- совпадают. То есть целевой язык для переписывания ts должен иметь структурную типизацию интерфейсов и сборщик мусора.

Я думаю если бы хотели именно переписать компилятор на другом языке, то взяли бы Rust, он даже внутри MS более модный.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.