Про BEAM VM, там где GC не останавливает мир (у каждого процесса — свой, друг на друга они не влияют, поэтому нет таких проблем на backend'ах, когда все запросы стоят и ждут).
S>Я с ним незнаком, но есть ли где-то бенчмарки, на которых очевидно преимущество Эрланга над CLR?
Да безо всяих бенчмарков, я просто вижу затупы всех сервисов на GC. И никакие background ухищрения не помогают, и server mode, и все прочее тоже. Потому что там один на всех rootset.
S>Так-то дотнет идёт в основном по пути минимизации нагрузки на GC, но я понимаю, что хороший GC ещё лучше, чем возможность обойтись без сборки мусора.
Даже не столько "хороший", сколько неблокирующий. Я вижу, что за многие годы .NET уже получил достаточно усовершенствований из других языков и платформ, но там сама основа мешает (разделяемый пул).
Здравствуйте, SkyDance, Вы писали:
SD>Да безо всяих бенчмарков, я просто вижу затупы всех сервисов на GC. И никакие background ухищрения не помогают, и server mode, и все прочее тоже. Потому что там один на всех rootset.
Если нужна изоляция rootset, то почему не использовать прямой инструмент, который для этого предназначен — process/remoting?
Внутри процесса все ровно полной изоляции не достичь из за nativelibs и т.д.
Здравствуйте, Sinclair, Вы писали:
S> но я понимаю, что хороший GC ещё лучше, чем возможность обойтись без сборки мусора. https://bun.sh/
гц конечно хорошая вещь, но не лучшая
Здравствуйте, scf, Вы писали:
Р>>у меня для этого F# ))
scf>Это хорошо, пока все пишешь сам для себя и только для винды. Большинство опнсорса для автоматизации написано на питоне, тот же ansible.
Интересно почему для винды? Я сейчас тестирую на винде, но в WSL2 для убунты
Докеры на .Net лет 6 как есть.
и солнце б утром не вставало, когда бы не было меня
-1) Nemerle...
0) шелл (bash), а то как с компом работать?
1) скриптовые языки с динамической типизацией: awk, perl, python, tcl, etc...
2) компилируемый язык со статической типизацией и сборщиком мусора (C#, Java, Go, etc...)
3) C;
4) C++;
5) ECMAScript/Javascript.
5) Rust, Zig и др. экзотика, Common Lisp и Турбо-пролог, Fortran.
Р>Любая достаточно сложная программа на C или Fortran содержит специальную, неформально заданную, полную ошибок и медленную реализацию половины Common Lisp.
Это про голый C без ничего. Не удивительно. Но он нужен, т.к. лежит в основе всего.
А без Lisp можно обойтись.
Здравствуйте, fk0, Вы писали:
fk0>Здравствуйте, Разраб, Вы писали:
fk0> -1) Nemerle...
умирает)) под корку поддержки нет. жаль конечно. в отличии от F# он органично расширял C#.
fk0> 4) C++;
C# просто нагло украденная Java, испорченная бессмысленной чушью вроде partial классов и не нужная никому за пределами Windows.
Давно пора закопать и похоронить бесполезные C# и .NET рядом с FoxPro и Visual Basic.
Да и костыльную, проприетарную, несовместимую с общепринятыми мировыми стандартами Windows тоже бы стоило (а для игр достаточно сделать специальную сборку Linux/BSD с WINE).
ИМХО, набор из Java + C + Asm + какой-нибудь скриптовый язык (Python, JavaScript, Lua и др.) решает практически любую задачу.
Возможно, в роли последнего Лисп подходит лучше.
Как запру я тебя за железный замок, за дубовую дверь окованную,
Чтоб свету божьего ты не видела, мое имя честное не порочила…
М. Лермонтов. Песня про царя Ивана Васильевича, молодого опричника и удалого купца Калашникова
Здравствуйте, Разраб, Вы писали:
fk0>> -1) Nemerle... Р>умирает)) под корку поддержки нет. жаль конечно. в отличии от F# он органично расширял C#.
Надо было расширять Си или Паскаль. Вот как разработчики Go. А так умирает вполне заслуженно, ведь никто не заставлял создателей Nemerle быть копрофилами и шквариться об .NET. Получилось как в "Зеленом слонике" — пользователи, как и Епифанцев, покушать принесенный сладкий хлебушек категорически отказались.
Как запру я тебя за железный замок, за дубовую дверь окованную,
Чтоб свету божьего ты не видела, мое имя честное не порочила…
М. Лермонтов. Песня про царя Ивана Васильевича, молодого опричника и удалого купца Калашникова
V>Впариваешь заказчику, типа мы сейчас тебе тут на C#.NET наштампуем формочки для винды, подключим их к базе данных. А потом ещё для андроида что-нибудь сделаем на Kotlin. Ещё можно что-нибудь на Python наваять, вызовы из программ и библиотек C++ подёргать.
Ну вот люди на Xamarin, а сейчас и на MAUI штампуют кроссплатформенный интерфейс.
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, SkyDance, Вы писали:
S>>Почему для винды-то? Дотнет уже много лет прекрасно работает на линуксах.
SD>Да и на Маке, в общем-то, неплохо, за минусом некоторых фич на AARCH64. SD>Но какой же он тормозной...
Сейчас развивается Native AOT.
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, Worminator X, Вы писали: WX>ИМХО, набор из Java + C + Asm + какой-нибудь скриптовый язык (Python, JavaScript, Lua и др.) решает практически любую задачу. WX>Возможно, в роли последнего Лисп подходит лучше.
Джаву (как платформу) ещё улучшать и улучшать, чтобы получить уровень .Net.
Вот экосистема там — да, отличная, вопросов нет. Многие дефекты платформы залиты кровью и потом разработчиков всяческого софта. Потому что тот самый "+ С + Asm" на Java крайне трудноисполним (в отличие от того же CLR, где всё это идёт сразу изкоробки).
Но вообще в целом риски у платформы .Net велики — фокус внимания сместился с виртуальных машин на скриптоту. Питон — страшное убожество, но играет в аналогичном джаве жанре — "давайте обложим все прикладные задачи готовым кодом на Питоне, чтобы прикладникам достаточно было просто складывать их как кубики Лего в своих Jupyter notebooks". В итоге даже новые движки СУБД PoC-ают на питоне ()
А вот тайпскрипт — весьма крутая вещь. Ничего подобного до него не видел — беспрецедентное сочетание статики и динамики. При этом вопросы о том, "а как оно там исполняется унутре" делегируются на два уровня абстракции ниже.
Для огромной доли разрабатываемого кода этого вполне достаточно, т.к. скорость разработки важнее скорости исполнения.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.