LINUX.ORG.RU

Язык D


0

0

Заинтересовался я этим языком. Хотел было попробовать изучить но информации маловато, не то что на русском, а вообще вменяемой нет никакой, а всё что есть вода водой. Поэтому хочу написать книгу(точнее перевод) по Ди. А вообще нужно ли, или через пару лет он издохнет ? Не хочется зазря тратить время и силы на это дело.

> Поэтому хочу написать книгу(точнее перевод) по Ди.

Когда во мне просыпается нечто подобное, я записываю напоминание, сделать то-то, скажем, через 2 месяца и стараюсь забыть про эту затею. Увидев эту тему через пару месяцев, в 99% случаев удивляюсь, как мне в голову могла прийти столь глупая, бесполезная, трудоемкая затея?

Igron ★★★★★ ()
Ответ на: комментарий от wlan

В D есть не отключаемый сборщик мусора => в биореактор!

fdd2 ()
Ответ на: комментарий от fdd2

угу а еще он не совместим с сяшечкой, нет препроцессора и тд

и вообще нафега нужен этот велосипед.

2ТС: лучше си заботай, полезнее будет Ж)

wlan ★★ ()

Скоро выйдет книжка Александреску, почитай. Судя по драфтам, воды там никакой нет, а все четко и по делу.

А вообще нужно ли, или через пару лет он издохнет ? Не хочется зазря тратить время и силы на это дело.

Можешь почитать про одинэс, он через пару лет ещё не издохнет.

gizzka ★★ ()
Ответ на: комментарий от gizzka

Управление ресурсами (resource management) [править]Автоматическое управление памятью Выделение памяти в языке D полностью контролируется методикой сбора мусора. Опыт показывает, что большинство сложных возможностей языка C++ требуют последующего освобождения памяти. Методика сбора мусора делает жизнь проще. Существует мнение, что сбор мусора нужен только ленивым и начинающим программистам. В конце концов, в C++ нет ничего такого, чего нельзя было бы сделать в C или в ассемблере. Сбор мусора избавляет от утомительного написания кода, отслеживающего процесс выделения памяти, который, к тому же, может быть подвержен появлению ошибок. Конечно, сбор мусора можно использовать и в C++, но этот язык не дружественен по отношению к сборщикам мусора, что не может не сказаться на эффективности сбора мусора.

по ссылке выше на википедию, но за корректность информации ответственность не несу, статью писал не я и на Д я не быдлокодил

wlan ★★ ()

В D есть не отключаемый сборщик мусора => в биореактор!

Есть new и delete, которые можно вызывать явно, а также конструкторы и деструкторы , которые работают также как и С++.

угу а еще он не совместим с сяшечкой, нет препроцессора и тд

c C прекрасно совместим, а вот С++ есть какие то проблемы. И разве препроцессор это самое главное?

Когда во мне просыпается нечто подобное, я записываю напоминание, сделать то-то, скажем, через 2 месяца и стараюсь забыть про эту затею. Увидев эту тему через пару месяцев, в 99% случаев удивляюсь, как мне в голову могла прийти столь глупая, бесполезная, трудоемкая затея?

я какбы обещаний никому не даю, если не справлюсь, брошу, может кто-то другой кому будет интересно продолжит

espero ()
Ответ на: комментарий от wlan

Короче говоря, сборщик мусора действительно по умолчанию включен, но (по крайней мере на данный момент) может быть легко отключен. Пруф, например, здесь.

To turn off the GC in D2:

import core.memory;

void main(string[] args) {
    GC.disable;
    // Do stuff.
}

Хотя отключение действительно накладывает некоторые ограничения, а с другой стороны и требуется далеко не во всех программах. Ну и ещё:

That said, while D is designed to be usable with the GC disabled in a few critical pieces of code (the kind of critical pieces where real time constraints exist and you probably shouldn't be using any form of malloc not explicitly designed for real time computing anyhow), it was largely designed with the assumption that GC would be present. In your case, you can still use GC for all of the initialization stuff, etc. and only disable it when you hit the part of your game that actually needs to be real time.

As a side note, GC and manual memory management can coexist in D, and in practice, when optimizing code, manually deleting some large objects with trivial lifetimes can result in significant speedups. This can be done similarly to C++, using a delete statement, and is safe to do even if the GC is enabled. When you don't have real time constraints, this gives you most of the benefits of GC with most of the performance of manual memory management.

gizzka ★★ ()
Ответ на: комментарий от gizzka

>Скоро выйдет книжка Александреску, почитай. Судя по драфтам, воды там никакой нет, а все четко и по делу.

Она уже вышла, да только опять те же грабли: стоит ли её заказывать если он может , мне не понадобится. Вот когда точно определюсь обязательно закажу

espero ()
Ответ на: комментарий от espero

Она уже вышла

О, здорово, спасибо :) А то в моих местах отдыха интернета особо нет, я и не в курсе до сих пор.

А вообще и правда наверное проще скачать пдфку и ознакомиться. Если язык понравится/затянет - заказать никогда не поздно. Если нет - ну и ладно.

gizzka ★★ ()
Ответ на: комментарий от gizzka

да в том то и дело что , книга только вышла ничего нет. Вот можно полистать через страницу, для незарегистрированных. В принципе можно там зарегится книги есть не плохие, но надо как то ещё вытащить эту книгу из флеша http://my.safaribooksonline.com/9780321659538/firstchapter

espero ()
Ответ на: комментарий от espero

Да, что-то я посмотрел - тоже нигде нет.

Можно подождать или правда зарегаться на бесплатный триал и сохранить оттуда (картинками) в djvu, скажем. Хотя с моим интернетом через мобильник пока не получится :(

Как вариант - можно написать Александреску по почте и спросить, как он относится к идее перевода.

gizzka ★★ ()

если вы задаёте такие вопросы, сомневаясь в будущем языка, то книгу вам писать пока рановато. я имею ввиду - пишите! серьёзно.

jeuta ★★★★ ()
Ответ на: комментарий от espero

Было б круто, если б Александреску в открытый доступ разрешил перевод выложить... Но это я размечтался.

Короче говоря, если решишь-таки переводить - я ближе к осени подтянусь с отдыха и могу помочь/поучаствовать.

gizzka ★★ ()
Ответ на: комментарий от jeuta

>если вы задаёте такие вопросы, сомневаясь в будущем языка, то книгу вам писать пока рановато. я имею ввиду - пишите! серьёзно.

Корень моих сомнений - это вялость самих разработчиков, хотя если сам Александреску решил попиарить D, то это жжж не спроста :)

Вообщем это всё лирика, время покажет

espero ()

Оно уже научилось собирать что-нибудь на разных платформах? Если нет, то не особенно и стоит тратить время.

Deleted ()

Забей на это дело, один черт не закончишь. Я тут возжелал написать книгу по созданию систем управления, даже попытался договорится с издательством (БХВ), которое печатает авторов, но как-то затея сия сама по себе иссякла через пар унедель.

Zhbert ★★★★★ ()
Ответ на: комментарий от wlan

>нет препроцессора

Препроцессор - рудимент, и Слава Богу что его там нет =)

yoghurt ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.