powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Язык D как альтернатива C++0x
25 сообщений из 166, страница 4 из 7
Язык D как альтернатива C++0x
    #36820016
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl
2. Переход на UTF-8 в строках и исходниках. char[] str = "русский текст" - это не 14 байт, а больше. И хотя способ посимвольно итерироваться встроен (итератор UTF-32), но печать в консоли - автоматически не декодируется (и chcp 65001 не спасает). А требуемая ф-ция Win32 CharToOEM не включена как оказалось, в стандартную либу 2.0. "Простой вопрос, а ставит Вас в тупик" (с)

-Компилятор не понимает исходники в 1251, только любой Юникод.

и правильно, 1251 не нужна и должна сдохнуть, чем скорее, тем лучше, юникод -- наше фсьо =)

Siemargl
-Нет фреймворков - GUI, Database, GameDev, см.также ниже. Особенно касается версии 2.0

ну знаете, Вы хотите прям всего и сразу, будет язык популярен -- будут фреймворки/библиотеки, а пока чего-то не хватает... пишите! как буд-то для всех остальных языков фреймворки появились сразу и в наилучшем качестве (ну может только в "корпоративных платформах" типа дотнета и джавы, но и то, там именно что на это ставки и делали, а не на языки Java и C#)
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36934767
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Навеяно темкой про Delphi x64.

1. В язык D специально добавлены ассемблерные вставки с единым синтаксисом, т.к. язык позиционируется как системный.
2. В настоящее время задача №1 у Брайта - он делает 64-битный компилятор. Референсный, хотя через LDC (или LLVM - неважно) уже можно получать 64-битный код.

=> Интересно, что сделает с ассемблером ?
Я в жизни не видел, что там за инструкции в x64, сильно отличаются или нет.

ЗЫ. Готов зуб ставить, что Уолтер сделает компилятор быстрее чем муБардакеро.=)
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36937171
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Siemargl:

SiemarglНавеяно темкой про Delphi x64.
Этой что ли?

Siemargl1. В язык D специально добавлены ассемблерные вставки с единым синтаксисом, т.к. язык позиционируется как системный.
Единый синтаксис для x86-32 и x86-64? Или что имеется в виду?

Siemargl2. В настоящее время задача №1 у Брайта - он делает 64-битный компилятор. Референсный, хотя через LDC (или LLVM - неважно) уже можно получать 64-битный код.
Зачем большинству программ 64-битность? 2 гб адресного пространства (в 32-битном Windows) мало? Или Вы работаете со string-ами, в которых > 2 миллиарда элементов?

SiemarglЗЫ. Готов зуб ставить, что Уолтер сделает компилятор быстрее чем муБардакеро.=)
C++ Builder реально используется при программировании-за-деньги, D этим похвастаться не может (пока?).
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36937219
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пётр Седов,

>Единый синтаксис для x86-32 и x86-64? Или что имеется в виду?
Сейчас сделан единый asm для Win и Lin.
Для x64-64 пока офиц.доки нет.

>Зачем большинству программ 64-битность?
1. Серверная сторона уже сейчас,
2. Системные тулзы, мелкие утилиты, т.к.нафиг такая утилита, которой нужно подгружать 32бит подсистему совместимости.
3. Видел пожелания юзеров на форуме - для выполнения расчетных задач - массивы не влазят.

>C++ Builder реально используется при программировании-за-деньги, D этим похвастаться не может (пока?).
D сейчас хорош для обучения, для задач п.3, ждем-с пока. Это EDGE.

ЗЫ. За последние два месяца вышло две минорных версии. А минимальный тулсет для работы я таки насобирал (DB+GUI).
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36937241
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl
D сейчас хорош для обучения, для задач п.3, ждем-с пока. Это EDGE.
А при чем тут EDGE ? Это же вроде что-то из мобильной связи.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36937571
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav,

technology edge
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36938008
Evil_proger_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Модератор: По теме ничего не сказано.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36938272
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Siemargl:

Siemargl>Зачем большинству программ 64-битность?
1. Серверная сторона уже сейчас,
2. Системные тулзы, мелкие утилиты, т.к.нафиг такая утилита, которой нужно подгружать 32бит подсистему совместимости.
3. Видел пожелания юзеров на форуме - для выполнения расчетных задач - массивы не влазят.
Получается, что большинству GUI-программ (да те же Firefox/Opera, например) 64-битность не нужна. Да, с одной стороны, при выполнении Win32-exe-шника в 64-битном Windows имеем overhead из-за слоя-переходника, который marshal-ит 32-битные WinAPI-вызовы в 64-битную среду. Но, с другой стороны, переход к Win64-exe-шнику тоже повлечёт overhead, из-за увеличения размера указателей (и, возможно, некоторых ассемблерных инструкций).

SiemarglА минимальный тулсет для работы я таки насобирал (DB+GUI).
Какая GUI-библиотека? Она вся на D написана, или является binding-ом к GUI-библиотеке, написанной на другом языке?
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36938394
Lepsik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пётр Седов2 Siemargl:

Зачем большинству программ 64-битность? 2 гб адресного пространства (в 32-битном Windows) мало? Или Вы работаете со string-ами, в которых > 2 миллиарда элементов?



злые языки говорят 64-битный софт на 15% быстрее на 64-битной ОС
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36938434
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Lepsik:

Lepsikзлые языки говорят 64-битный софт на 15% быстрее на 64-битной ОС
Если программа непрерывно делает WinAPI-вызовы, то может так оно и есть. Но ведь обычная GUI-программа большую часть времени «спит», ожидая прихода оконного сообщения. Не всё ли равно, отреагировала программа на щелчок мыши за 100 мс или 115 мс?

Кстати, есть какие-нибудь замеры, насколько возрастает расход памяти при переходе с Win32-exe-шника на Win64-exe-шник? (а он обязательно возрастает) А то вполне может оказаться, что 32-битный soft в 64-битном Windows имеет смысл. Вон в Windows 95/98/ME (которые 32-битные) реализация GDI была 16-битной, для экономии памяти.

Я клоню к тому, что, по-моему, зря Брайт себе задачей № 1 выбрал создание 64-битного компилятора D. (Siemargl: «В настоящее время задача №1 у Брайта - он делает 64-битный компилятор.») Лучше бы делал удобную IDE с интегрированным отладчиком, позволяющим, например, смотреть содержимое hash-таблиц (встроенных в D). Без неё D вряд ли составит конкуренцию C++0x (см. название обсуждения).
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36938492
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пётр СедовЛучше бы делал удобную IDE с интегрированным отладчиком, позволяющим, например, смотреть содержимое hash-таблиц (встроенных в D). Без неё D вряд ли составит конкуренцию C++0x (см. название обсуждения).
Вы шо! Ни в коем случае нельзя авторам языков и компиляторов доверять создание программ GUI и заставлять всех потом работать в них. Это был бы ужас-ужас.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36938518
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пётр Седов
Какая GUI-библиотека? Она вся на D написана, или является binding-ом к GUI-библиотеке, написанной на другом языке?

DWT = портирована (переписана на D) с SWT
Пётр Седов
Я клоню к тому, что, по-моему, зря Брайт себе задачей № 1 выбрал создание 64-битного компилятора D. (Siemargl: «В настоящее время задача №1 у Брайта - он делает 64-битный компилятор.») Лучше бы делал удобную IDE с интегрированным отладчиком, позволяющим, например, смотреть содержимое hash-таблиц (встроенных в D). Без неё D вряд ли составит конкуренцию C++0x (см. название обсуждения).
Было такое обсуждение. Итог такой - язык должен быть настолько простым и диагностируемым, чтобы обходиться без плюшек в виде IDE. Потому создатель языка длжен заниматься фреймворком - язык + стандартная библиотека, а остальное - коммьюнити.

Сейчас например есть Visual D, есть плагин к VStudio, я пробовал Codeblocks+GDB.
Терпимо, но до VS конечно далеко.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36939277
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у этой альтернативы C++0x (D т.е.) случайно не предусматривается какая нибудь совместимость с С++ ? Ну типа один файл-модуль-obj-dll на С++, другой на D и все это линкуется штатно...
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36939324
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petravА у этой альтернативы C++0x (D т.е.) случайно не предусматривается какая нибудь совместимость с С++ ? Ну типа один файл-модуль-obj-dll на С++, другой на D и все это линкуется штатно...
Предусматривается. В принципе, проблемы те же, что и собрать вместе модули от разных С++ компиляторов.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36939364
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglpetravА у этой альтернативы C++0x (D т.е.) случайно не предусматривается какая нибудь совместимость с С++ ? Ну типа один файл-модуль-obj-dll на С++, другой на D и все это линкуется штатно...
Предусматривается. В принципе, проблемы те же, что и собрать вместе модули от разных С++ компиляторов.
Тогда и посмотреть на D можно... только осторожно.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36939387
Foxi-Voxi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav...
Тогда и посмотреть на D можно... только осторожно.

Да-да, развлекайся:

Siemargl DWT = портирована (переписана на D) с SWT
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36939440
Sharkfire
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
алчность, Обвинить соавторов языка в его не знании это реально epic fail ))))
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36939880
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что у D с функциональным программированием ? Лямбды там всякие... А то в С++ с этим как-то совсем тяжело.

А можно ли программно генерировать классы и их интерфейсы ? Т.е. программный код порождает не только данные, но сам код.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36939900
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav,

1. Лямбды и и замыкания есть. Т.к.сказать необходимый минимум ФП.
2. Язык со статической типизацией. Компилится в нативный код. Так что нет. Зато есть продвинутые шаблоны.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36939970
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
k0rvinи правильно, 1251 не нужна и должна сдохнуть, чем скорее, тем лучше, юникод -- наше фсьо
Она не сдохнет, пока существуют исходники в однобайтной виндозной кодировке. И по моему вопрос стоит в другой плоскости. Надо всего-лишь, доукомплектовать среду конвертером. Это проще чем найти все-все исходники на всех-всех рабочих станциях в старой кодировке и уничтожать с гарантией невосстановления ИМХО.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36940234
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 petrav:

petravА можно ли программно генерировать классы и их интерфейсы ? Т.е. программный код порождает не только данные, но сам код.
Так это в любом языке можно :).
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
FILE* pFile = fopen("Items.h", "wt");
fprintf(pFile, "// generated file, don't edit\n");
for (int n =  1 ; n <=  5 ; n++)
{
  fprintf(pFile, "class Item%i { };\n", n);
}
fclose(pFile);
Код: plaintext
1.
#include "Items.h"
Только генератор классов встроен не в компилятор языка, а в build-процесс.

Если хочется во время выполнения программы генерировать ассемблерный код и запускать его, можно использовать библиотеку LLVM . А в простых случаях можно и самому. Как, например, библиотеки ATL/WTL: они создают функции-thunk-и «на лету» (ищите в исходниках вызов FlushInstructionCache).

2 mayton:
maytonk0rvinи правильно, 1251 не нужна и должна сдохнуть, чем скорее, тем лучше, юникод -- наше фсьо
Она не сдохнет, пока существуют исходники в однобайтной виндозной кодировке. И по моему вопрос стоит в другой плоскости. Надо всего-лишь, доукомплектовать среду конвертером.
Зачем? У Вас что, скопилось много D-шных исходников в кодировке code page 1251? В любом случае, конвертировать текстовый файл из code page 1251 в UTF-8 -- это любой Notepad может, поэтому разработчику компилятора не обязательно заморачиваться поддержкой устаревших кодировок.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36940281
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пётр СедовЗачем? У Вас что, скопилось много D-шных исходников в кодировке code page 1251? В любом случае, конвертировать текстовый файл из code page 1251 в UTF-8 -- это любой Notepad может, поэтому разработчику компилятора не обязательно заморачиваться поддержкой устаревших кодировок.
Вы достигаете преемстенности такой ценой? Это, знаетели-всё равно что "рубить головы" если шляпа мешает в дверь входить. А по поводу "устаревшей кодировки" вы очень сильно ошибаетесь. Готов спорить на любое количество коньяку, что 1251 еще не раз появится в вашей и моей жизни в самый неподходящий момент. Де-факто в ней работают сотни-тысяч БД вместе с загрузками-выгрузками, CSV, сетевыми протоколами и проч. Про глобальный интер/рунет я вообще молчу.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36940293
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lepsikзлые языки говорят 64-битный софт на 15% быстрее на 64-битной ОС
Думаю - вранье. Он может быть быстрее, если со сменой архитектуры "на борт" влепили больше планок памяти (8-32 Гб). И те, механизмы, которые раньше работали через PAE стали получать доступ к сегментам непосредственно. В остальном - 64 битный код ничем не лучше. А в плане структур данных (struct) с указателями - он более громоздкий.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36940302
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 mayton:

maytonПётр СедовЗачем? У Вас что, скопилось много D-шных исходников в кодировке code page 1251? В любом случае, конвертировать текстовый файл из code page 1251 в UTF-8 -- это любой Notepad может, поэтому разработчику компилятора не обязательно заморачиваться поддержкой устаревших кодировок.
Вы достигаете преемстенности такой ценой?
Какая преемственность? Речь о D-шных исходниках: поддерживает D-компилятор code page 1251 или нет.

maytonЭто, знаетели-всё равно что "рубить головы" если шляпа мешает в дверь входить.
Не понял аналогию.

maytonА по поводу "устаревшей кодировки" вы очень сильно ошибаетесь.
Говоря «устаревшая кодировка», я не имел в виду «исчезнувшая кодировка» :).

maytonГотов спорить на любое количество коньяку, что 1251 еще не раз появится в вашей и моей жизни в самый неподходящий момент. Де-факто в ней работают сотни-тысяч БД вместе с загрузками-выгрузками, CSV, сетевыми протоколами и проч. Про глобальный интер/рунет я вообще молчу.
Да пожалуйста. Но зачем разработчику компилятора нового языка программирования поддерживать code page 1251? Пишите D-шные исходники сразу в UTF-8.
...
Рейтинг: 0 / 0
Язык D как альтернатива C++0x
    #36940338
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пётр СедовДа пожалуйста. Но зачем разработчику компилятора нового языка программирования поддерживать code page 1251? Пишите D-шные исходники сразу в UTF-8.
Да я и не пишу вовсе. Просто есть задачи ... может портировать чего-нибудь С-шное на D. Вот такие пирожки.
...
Рейтинг: 0 / 0
25 сообщений из 166, страница 4 из 7
Форумы / C++ [игнор отключен] [закрыт для гостей] / Язык D как альтернатива C++0x
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]