172 похожих чатов

Эх кто-то пришел и весь праздник испортил :( You need complex

FBX scene importing setup to change things on import? good luck with that.
You need navigation and pathfinding? good luck with that.
You need physics engine that is not going to stuck on collision? right, you should've already guess it.
extern(C++) with all mess such as const applied to different parts e.g. const foo* const vs const foo* the former has a mangling scheme that is not supported by D, great.

Dealing with non-D libraries as well when using GC managed references(arrays, objects) is PITA, you have basically slap __gshared on every reference because as soon as it crosses thread boundary it is gone, very funny debugging awaits you in this path.
As was mentioned in another thread dealing with const and @safe is another level of PITA.
We also have our own @nogc and "GC bad" zealots.

Add to that compiler bugs, for example when working on godot-dlang compiler spits random error message in template with return scope, probably because there is loads of cyclic imports, but the message says something completely unrelated so I just given up on return and now it is basically leaking up refcounted reference leading to more bugs when used incorrectly.
Here is an example of such problem, getTexture returns Ref! wrapper that has leaky alias this, this means that getTexture immediately returns released instance.
Sure this is my problem, and I suck at programming.
void setTexture(Mesh3D* mesh) {
// let's assume we just want to invert colors
Texture2D tex = mesh.getTexture;
// code that inverts colors
mesh.setTexture(tex); // oops
}
This all is just little annoying nuances, but how much it is really different from that "i'm done with rust" article?

5 ответов

92 просмотра

он не справился с D, не выдержав испытаний судьбы и квалификации. Мы никого не потеряли, поскольку он изначально был не наш человек.

Constantin_FV
он не справился с D, не выдержав испытаний судьбы ...

ну как, похоже на d-евангелизм? По-сути так оно и есть. Везде есть плюсы и минусы. Плюс сложностей и ограничений - рост квалификации т.п. Когда хз как сделать, но нужно.

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

Serg-Gini Автор вопроса
Constantin_FV
напиши там, что раст сильно отличается от популярн...

Ууу сложно) Но он вроде конкретные штуки написал, может ждёт что ему детально ответят

Serg Gini
Ууу сложно) Но он вроде конкретные штуки написал, ...

ммм... ну тут вовсю срабатывает принцип Парето 80\20 и где-то близко уже начинается спам по принципу галопа Гиша, когда большое количество нюансов пытаются увеличить вес\важность\авторитет сообщения. Однако все эти детали\проблемы в общем-то маловажные, очень ситуативные и будут всегда в любой системе, а в ЯП и подавно. Чем сложнее система - тем их больше просто в силу масштаба сложной высокоэнтропийной системы. Так что маловероятно, что на это кто-то поведётся. Я выше скорее поднял вопрос, что лучше: юзать классические способы евангелизма для защиты ди: не получается - не вывозишь, либо таки просто игнорировать, хм... Везде есть свои плюсы и минусы так-то. Тут вот дилемма. Так-то мы все хейтим какие-то части инструментов, которые используем и я в т.ч. это норма кагбэ.

Похожие вопросы

Обсуждают сегодня

@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Заметил в ghci 9.4.8: > :t (<*>) @((->)_) (<*>) @((->)_) :: (w -> (a -> b)) -> (w -> a) -> w -> b Разве не должно (w -> (a -> b)) быть записано как (w -> a -> b)? Это баг, ил...
Михаил
13
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Any electron dev here?
Sayanth Tezro
12
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
так это может кто что знает или использует что-то как макбук только не макбук? на 13…14 дюймов
Michael
9
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Кто-нибудь знает почему SPM клонирует репо целиком? Некоторые репы просто огромные, как та же swift-syntax которая нужна для использования макросов. Сначала подумал, что это...
iMike
6
Карта сайта