С высоты

Jun 25, 2019 18:42


Про Clojure и что я все сильнее про него ощущаю.

В каком-то смысле это продолжение моих размышлений, куда податься после Software Disenchantment, когда я понял, что надо что-то менять, но не понял, на что именно.

Да, Clojure это прекрасный, замечательный высокоуровневый/прикладной язык, лучший на свете. Прикладной в том смысле, что на нем хорошо ( Read more... )

Leave a comment

binf June 25 2019, 17:19:56 UTC
== Я не говорю что это лучше читается или еще что-то

это на много лучше читается

== Даже Java подходит с очень большой натяжкой.

Джава нормально подходит. На 10% в среднем деградация процессора и 15-20 памяти на синтетическом helloworld-json http сервере vs. c++, и то если не заморачиваться тюнингом gc и т.п.

Соответственно

== То есть ее конечно можно разогнать, но зачем?

за тем, что на джава разработка в разы дешевле чем на С++

== Что на нем писать-то? Непонятно опять.

Очень даже понятно. Напишите нативный десктопный гуй. Весьма актуальная проблема - десктопный гуй на java/C#/js дико лагает из-за микропауз gc. Вот и попробуйте написать его на rust-е - сразу поймёте, какое rust говно

Reply

binf June 25 2019, 18:51:09 UTC
Там проблема не в GC, а отсутствии AoT и плохой применимости JIT для клиентских приложений.

На Qt/Widgets с Python/C++ UI прекраснопишется.

Reply

binf June 25 2019, 19:39:53 UTC
== Там проблема не в GC

попробуйте написать гуй-ный эвент луп с рендрингом на питоне, будете неприятно удивлены

== а отсутствии AoT и плохой применимости JIT для клиентских приложений.

в С# насколько я знаю весьма продвинутая AoT компиляция. при этом WPF/UWP приложения тормозят ни чуть не меньше java аналогов

== На Qt/Widgets с Python/C++ UI прекраснопишется.

Без питона ещё лучше - зачем этот костыль и гемор с развёртыванием? Я собственно и не встречал qt на питоне в проде, имхо какой-то миф

Reply

wizzard0 June 30 2019, 10:11:49 UTC
> в С# насколько я знаю весьма продвинутая AoT компиляция
при всей моей любви к C# и дотнету, WPF/UWP/XAML имеет столько слоев оверхеда, что никаким джитом или AOT это не победить :/ гораздо хуже веба, например.

куча 3D игрушек написано на Unity3D, в котором Mono, которое намного хуже .net/.net core, и отлично справляется с тем чтобы молотить сотни мегабайт game state вписываясь в 16ms (60 fps), а wpf это победа GoF над здравым смыслом, увы.

Reply

binf July 4 2019, 17:21:55 UTC
Давненько не ковырял WPF, но что там сплошь индусятина, факт. Была надежда, что её починили за эти годы. Получается, тщетная.

Значит я не прав. и деградация перформанса GUI не связана с gc напрямую. Но как тогда объяснить, что все относительно быстрые GUI фреймворки (Qt, Delphi, qW ) без gc

Reply

rdia July 9 2019, 00:29:11 UTC
Ну Qt не особо быстрый. Вообще, функциональщики пишут на Haskell/Ocaml с помощью gtk2 - прикладухи получаются достаточно быстрыми и от Сшных не отличаются по скорости запуска/работы.

Reply

binf July 4 2019, 17:28:17 UTC
== победа GoF над здравым смыслом, увы.

бггг)) Метко сказано, и как никогда актуально. Я в голанге 3 года, слежу за движухой и трендами. Так там прям наплыв ООПшников и депенденси инжектров в последнее время. Из джавы видимо. Сорян за оффтоп.

Reply

wizzard0 June 30 2019, 10:14:14 UTC
если взять тупо BitmapData из System.Drawing, и рисовать всё софтверно - все равно очень легко обогнать GPU-accelerated WPF (окей, на 4k мониторе чудес не будет, а на 1920х1080 где-то поровну)

Reply

tonsky June 25 2019, 23:19:01 UTC
так подходит Java или не подходит? определитесь

Reply

binf June 26 2019, 04:31:04 UTC
для GUI не подходит
для perf-critical - it depends of, но обычно подходит. Если конечно готовы мирится с тем, что она из себя представляет

Reply

(The comment has been removed)

binf June 26 2019, 10:36:09 UTC
даже на питоне пишут

Reply


Leave a comment

Up