[#]
Ответ на: Re: QtD 0.1 от wfrr 05.02.2009 20:32:29
Re: QtD 0.1
из википедии..
>Отказ создателей языка от препроцессора (как например в языке Cи) многие расценивают как рискованный и неверный шаг. Но в Ди имеются встроенные средства, которые позволяют обходиться без препроцессора.
>Существование двух разных стандартных библиотек создаёт некоторые трудности.
>он лёгок в изучении, поддерживает многие возможности в помощь программисту, а также пригоден для проведения агрессивной оптимизации кода компилятором.
[#]
Ответ на: Re: QtD 0.1 от wfrr 05.02.2009 20:32:29
Re: QtD 0.1
>А какие у него плюсы?
Лично мне после D в плюсах больше всего не хвататет делегатов, foreach, нормальных массивов с проверкой границ, полем размера и нормальной многомерностью (никаких долбанных циклов с var[i] = new var[size]!).
Язык D:
Отсутствие предупреждений (warnings)
Компиляторы языка D не генерируют предупреждений при встрече неоднозначного кода. Код может быть понятным компилятору или непонятным, это избавляет от необходимости решать, какие предупреждения относятся к ошибкам программы, а какие — нет. Использование предупреждений компилятора является признаком плохого дизайна языка.
[#]
Ответ на: Re: QtD 0.1 от AP 06.02.2009 15:45:10
Re: QtD 0.1
и вот:
http://www.dsource.org/projects/derelict
движок
http://team0xf.com/
This site is dedicated to support people interested in game development with the D programming language. Our objective is to get all dedicated and passionate D game coders together. We wish to build a society, which will exchange experience, concepts and whose members will help one another during the process of creating games.
http://deadlock.team0xf.com/
что-то сделали
и в составе Elive какую-то игру видел. когда по списку прошелся вспомнил. там корабль летит по туннелю, который изгибается, появляются провалы, крутится и графика каркасная.
[#]
Ответ на: Re: QtD 0.1 от kemm 06.02.2009 15:56:39
Re: QtD 0.1
>Язык D: Отсутствие предупреждений (warnings) Компиляторы языка D не >генерируют предупреждений при встрече неоднозначного кода. Код может >быть понятным компилятору или непонятным, это избавляет от >необходимости решать, какие предупреждения относятся к ошибкам >программы, а какие — нет. Использование предупреждений компилятора >является признаком плохого дизайна языка.
Тогда например - в коде ф-ция или переменная объявлена, но нигде не используется, это ошибка или нет ? В C++ это будет предупреждением, и это очень правильно и понятно.
anonymous
(06.02.2009 16:32:30)
[#]
Ответ на: Re: QtD 0.1 от AP 06.02.2009 15:45:10
[#]
Ответ на: Re: QtD 0.1 от Korwin 06.02.2009 16:42:42
Re: QtD 0.1
и как тебе такой бред пришёл в голову? не понятно
вообще я как бы и сам пишу на С++ и не испытываю проблем с утечками, в том же Qt определённого рода защита от утечек, она не затормаживает программу, так как никаких проходов по памяти с проверками нет, и в большинстве случаев нет проблем.
anonymous
(06.02.2009 16:49:00)
[#]
Ответ на: Re: QtD 0.1 от anonymous 06.02.2009 16:38:19
Re: QtD 0.1
Ну почему, на практике как правило это даже увеличивает скорость программы, так как мусора освобождается когда программа не работает. Вообще то здесь более важно как реализована работа с heap памятью, так как C++ + gcc4 с heap памятью ужасно работаєт (в раз 20 медленнее чем Sun Java).
Не говоря уже о скорости разработки программы и уменьшения количества ошибок.
anonymous
(06.02.2009 16:49:00)
[#]
Ответ на: Re: QtD 0.1 от anonymous 06.02.2009 16:42:04
[#]
Ответ на: Re: QtD 0.1 от anonymous 06.02.2009 16:49:00
Re: QtD 0.1
программа работает от запуска до выхода, а после выхода уже чистить смысла нет, ибо ОСь забирает всё, как же тогда понимать "когда программа не работает"?
anonymous
(06.02.2009 16:52:01)
[#]
Ответ на: Re: QtD 0.1 от Theif 06.02.2009 16:50:32
Re: QtD 0.1
ок, посмотрю
anonymous
(06.02.2009 16:54:52)
[#]
Ответ на: Re: QtD 0.1 от anonymous 06.02.2009 16:52:01
Re: QtD 0.1
Имею ввиду Garbage Collector работает в отдельной нити (как правило, потому как не знаю как именно он работает в D) с малым приоритетом, может время от времени работать з большим приоритетом если есть нехватка памяти. Так или иначе в C++ тратятся ресурсы на удаление объектов во время работы приложения. Как правило серверным (да и пользовательским приложением) важно быстро ответить на запрос, а с памятью можно разобраться во время простоя.
Так что вопрос тормозит сборщик мусора или нет это скорее религиозный вопрос.
anonymous
(06.02.2009 17:01:09)
[#]
Ответ на: Re: QtD 0.1 от Korwin 06.02.2009 16:42:42
Re: QtD 0.1
> Не. Товаришь боится, что не будет утечек и, соответственно, для support меньше работы. А на чем еще в OpenSource можно заработать?! :)
Я понимаю, что это звучит чудовищно, но не все пишущие фри софтваре пытаются на нем заработать и не все зарабатывающие на нем занимаются только поддержкой :)
Ой, жонглирование указателями, контроль памяти и прочее - конечно большая головная боль при работе с Си... Мне кажется давно пора переходить к языкам более высокого уровня где эти понятия вообще отсутствуют. Если D по простоте синтаксиса такой же как Python и собирает отличные быстрые бинарники то надеюсь он получит широкое развитие и поддержку.
ldc - http://www.dsource.org/projects/ldc свободен.
gdc потихоньку поддерживают в trunk. Последний коммит - 5 дней назад, но с развитием ldc про него скорее всего забудут.
На всякий случай: *llvm умеет генерировать машинный код*
Вот это мегановость! а то моно моно ... Вот D это очень даже. Только вот под убунтой64 оно пипец ересь делает с массивами :((( в трекере уже битый месяц висит баг..
[utopiamode]
вот ещеб QT вообще переписали на D
[/utopiamode]
[#]
Ответ на: Re: QtD 0.1 от AX 05.02.2009 21:30:58
Re: QtD 0.1
> Лично мне после D в плюсах больше всего не хвататет делегатов, foreach, нормальных массивов с проверкой границ, полем размера и нормальной многомерностью (никаких долбанных циклов с var[i] = new var[size]!).
vector чем не устроил ? там всё это есть. А за var[i] = new var[size] вообще руки отрывать надо.
[#]
Ответ на: Re: QtD 0.1 от kemm 06.02.2009 15:56:39
Re: QtD 0.1
>Язык D: Отсутствие предупреждений (warnings) Компиляторы языка D не генерируют предупреждений при встрече неоднозначного кода. Код может быть понятным компилятору или непонятным, это избавляет от необходимости решать, какие предупреждения относятся к ошибкам программы, а какие — нет. Использование предупреждений компилятора является признаком плохого дизайна языка.
поддерживаю.. если ворнинги есть, то всегда найдутся любители писать грязный код.