LINUX.ORG.RU

Вышла новая версия компилятора языка D DMD 2.064

 ,


0

4

C момента последнего релиза были проделаны большие работы по улучшению компилятора и самого языка. К основным нововведениям относится улучшенная система импорта модулей и расширение использования ключевого слово new. Множественным улучшениям подверглись шаблоны языка, которые получили не только новый синтаксический сахар, но и возможность неявного указания типа, а также ряд других новых возможностей.

Нововведения коснулись также системы документирования исходного кода DDoc, которая теперь выполняет анализ комментариев исходных кодов и может предупреждать программиста, если пример кода в комментарии не соответствует последующему исходному коду.

Важной вехой в развитии языка стало начало использования его в компании FaceBook.

В настоящий момент идет активное расширение функциональности системной библиотеки Phobos и работа над созданием универсального кросплатформенного графического тулкита D-Quick

>>> Подробности

★★

Проверено: maxcom ()
Последнее исправление: ymn (всего исправлений: 3)
Ответ на: комментарий от special-k

Пишем ирц-бота. Хандлеры — практически двустрочные функции. Просто вызываем funcs[command](args) вместо портянки switch case. funcs удобнее определить полностью литералом, чем на ходу вгонять туда функции.

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

Обычно когда возникает такая ситуация, следом, почти сразу начинает наблюдаться закономерность (повторяющийся код), и хочется сделать одну обобщающую функцию, чтобы стало посуше. А command просто попадает в один из параметров функции. У меня все массивы процев так заканчивались..

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k

словарь анонимных функций

Что это за бред -_^

А как в Lua, например. Все функции являются объектами первого порядка и анонимны. «function f(x, y)» работает как «f = function(x, y)», то есть определяет переменную, которой эта функция присваивается как значение. Можно так же запихать их в словарь. А в Python придётся сначала объявлять именованные функции, а потом делать из них словарь.

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

Как только функция длиннее одной строчки, уже нет.

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

А, я понял. Наверное, годится как одноразовое решение.

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

Но при чем здесь тогда анонимность? Так можно и в си, в мапе строка-указатель на функцию, наверное, делать. Примерно тот же уровень удобства)

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

Анонимность при том, что в неймспейсе функций нет. Для JS и прочих языков с first class функциями это очевидный синтаксис (ну кроме питона с корявыми лямбдами), в си очевиднее написать switch.

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

Я уже понял, что это не то. И да, как видно из ответа человека, с которым я вел диалог до того, как ты встрял, разница есть.

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

Это мне известно, я просто не вижу толкового применения.

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