Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [D] Язык программирования D 
:(
    Опции темы
volte
Дата 3.8.2008, 19:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 30.6.2008

Репутация: нет
Всего: нет



Цитата(kemiisto @ 2.8.2008,  21:45)
История с раскруткой D на tiobe хорошо известна. 
Методика подсчета популярности была проста (сейчас они её немного "усовершенствовали"): в поисковике набирается запрос "X programming".
Однажды "D programming" начал выдавать офигительное количество ссылок и, естественно, рейтинг D стремительно взлетел ввысь. Но некоторые заинтересовались этими ссылками. И с удивлением обнаружили, что после первого десятка страниц все они ведут на багзилу. Умные парни догадались вставить в каждый файл исходников "/* The D programming language ...*/".
Ну, и с названием D повезло. 
По просьбам трудящихся tiobe исключет "3-D Programming" из статистики D, зато туда попадает 
"Thomas D.Programming in Ruby"

я сомневаюсь, что только продвижение языка D, является активным, а остальные языки ни каких шагов не проявляют. И другие с грешками. что насчёт рейтинга, то во многих статьях идёт ссылка именно к TIOBE, а это наверное не пустозвон, а проверенно и их рейтингом следует принимать во внимание если не как факт, то как один из самых уважаемых мнений.
PM MAIL   Вверх
kemiisto
Дата 3.8.2008, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(volte @  3.8.2008,  20:55 Найти цитируемый пост)
я сомневаюсь, что только продвижение языка D, является активным, а остальные языки ни каких шагов не проявляют.

Возможно.

Цитата(volte @  3.8.2008,  20:55 Найти цитируемый пост)
во многих статьях идёт ссылка именно к TIOBE

Я таких не видел, а если б увидел, что по этому рейтингу в статье судят о популярности ЯП, сразу б читать перестал.
 
Цитата(volte @  3.8.2008,  20:55 Найти цитируемый пост)
следует принимать во внимание если не как факт, то как один из самых уважаемых мнений

Нет, нет! Как раз таки надо принимать этот рейтинг как факт, т.е. количество запросов "x programming" по различным x. Но не более того. Любые попутки какой-либо иной интерпретации как минимум спорны. 

Это сообщение отредактировал(а) kemiisto - 3.8.2008, 20:44


--------------------
PM MAIL WWW GTalk Jabber   Вверх
volte
Дата 3.8.2008, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 30.6.2008

Репутация: нет
Всего: нет



Цитата

Я таких не видел, а если б увидел, что по этому рейтингу в статье судят о популярности ЯП, сразу б читать перестал.

из источников был www.linuxcenter.ruwww.opennet.ruwww.rsdn.ru (это лишь те которые я часто использую) и другие...
Цитата

Любые попутки какой-либо иной интерпретации как минимум спорны. 

интерпретировать результаты TIOBE... зачем? они сами признаются, что меряют информационный шум, а не востребованность. тем более как говорится, плохие измерения лучше отсутствия таковых.

не нужно забывать, что самих владельцев TIOBE интересует не значения конкретных месячных показателей, а тенденции за длительный период, в которых всплески накрутки рейтинга фанатами какого-либо языка нивелируются длительностью измерений. Так что, как "шумомер" с большой долей погрешности TIOBE вполне адекватен, особенно если не выискивать в нем того, что туда не закладывали сами его создатели.

Добавлено через 6 минут и 55 секунд
А сам язык выглядит вполне съедобно smile. Кончено в нем нет кардинально новых решений, но заложенные возможности не разочаровывают. Но хотелось бы еще посмотреть его быстродействие в сравнении с с++ smile 
PM MAIL   Вверх
kemiisto
  Дата 3.8.2008, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(volte @  3.8.2008,  23:18 Найти цитируемый пост)
интерпретировать результаты TIOBE... зачем? они сами признаются, что меряют информационный шум, а не востребованность

 smile И я о том же!

Цитата(volte @  3.8.2008,  23:18 Найти цитируемый пост)
плохие измерения лучше отсутствия таковых

Ох, знаете, очень, ну очень, спорный тезис. Спорный не только в рамках информатики. Имея некоторое отношение к научному сообществу (к химическому правда), уверяю Вас: то, что Вы написали - предмет постоянных споров. Есть некий метод, не дающий 100%-х результатов, но использовать альтернативные методы не представляется возможным по причине их отсутствия или высокой (не обязательно дененжной, а вычислительной, например) стоимости. Стоит ли пользовать такой метод? Нужны ли данные, достоверность которых неочевидна? Тут не всё так однозначно. Признаться, я ещё и сам для себя до конца не решил, чью сторону занять. 

Цитата(volte @  3.8.2008,  23:18 Найти цитируемый пост)
тенденции за длительный период

А за эту информацию будьте любезны кругленькую сумму! Нехорошо. Капиталисты, блин...  smile 

P.S. Прошу прощенья за  smile , но просто не мог не высказаться.

Добавлено через 5 минут и 58 секунд
Цитата(volte @  3.8.2008,  23:18 Найти цитируемый пост)
Но хотелось бы еще посмотреть его быстродействие в сравнении с с++

Пожалуйста!
Очень интересный сайт!

Это сообщение отредактировал(а) kemiisto - 3.8.2008, 22:37


--------------------
PM MAIL WWW GTalk Jabber   Вверх
$tatic
Дата 4.8.2008, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 651
Регистрация: 28.1.2005

Репутация: нет
Всего: 22



kemiisto, только лучше имхо брать компилятор DMD.
PM MAIL   Вверх
volte
Дата 4.8.2008, 12:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 30.6.2008

Репутация: нет
Всего: нет



Судя по тестам, D вполне подойдёт для постепенного вытеснения С++ в новых проектах smile 
PM MAIL   Вверх
Любитель
Дата 4.8.2008, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: нет
Всего: 92



Цитата(kemiisto @  1.8.2008,  21:48 Найти цитируемый пост)
а смысл такой языковой "фичи"?

Мультилайн-запись строк в первую очередь:
Код

const char* s = "aaa\n"
                         "bbb";

Предполагается, что aaa и bbb очень длинны.


--------------------
PM MAIL ICQ Skype   Вверх
source777
Дата 4.8.2008, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 2
Всего: 56



Цитата($tatic @  31.7.2008,  22:38 Найти цитируемый пост)
 Garbage Collector повышает расход памяти (неиспользуемые объекты какое-то время лежат в памяти) и замедляет программу (в D сборщик мусора использовать необязательно, т.к. ручное управление в данном случае эффективнее);
По правде говоря, Garbage Collector вызывается либо когда заканчивается ОЗУ, либо когда завершается программа, либо вручную, так что ничего он не замедляет кроме завершения работы приложения разве что... Все критичные к освобождению ресурсов места по прежнему управляются вручную при помощь Dispose да using.


Цитата($tatic @  31.7.2008,  22:38 Найти цитируемый пост)
высокоуровневость и, как следствие, неудобство при работе с памятью напрямую (важно для быстродействия);
C каких пор работать с памятью напрямую стало удобно? Да и вообще подобные утверждения дурно пахнут преждевременной оптимизацией...

Цитата($tatic @  31.7.2008,  22:38 Найти цитируемый пост)
все методы виртуальные (замедление работы) - в D компилятор автоматически распознаёт необходимость виртуализации.
Это только для Java и только по умолчанию, ставь кл.слово final и метод даже в Java не будет виртуальным.


Про остальные пункты уже сказали...

На мой взгляд единственным "недостатком" осталось, то что в C# шаблоны - динамические, а в D - статические. Но тут уж вопрос спорный, что лучше?

Цитата(volte @  3.8.2008,  22:18 Найти цитируемый пост)
тем более как говорится, плохие измерения лучше отсутствия таковых.
Говорится:
Уж лучше голодай, чем что попало есть, и лучше будь один, чем вместе с кем попало. (с) Омар Хайям
Во много раз лучше отсутсвие всяких рейтингов, чем присутсвие такого бреда как Tiobe...


Это сообщение отредактировал(а) source777 - 4.8.2008, 14:53


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
$tatic
Дата 4.8.2008, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 651
Регистрация: 28.1.2005

Репутация: нет
Всего: 22



source777
Цитата(source777 @  4.8.2008,  15:53 Найти цитируемый пост)
C каких пор работать с памятью напрямую стало удобно? Да и вообще подобные утверждения дурно пахнут преждевременной оптимизацией...

Возможно, но при работе с 3D (OpenGL) это имхо приходится делать немного чаще.
PM MAIL   Вверх
source777
Дата 4.8.2008, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 2
Всего: 56



Цитата($tatic @  4.8.2008,  16:17 Найти цитируемый пост)
Возможно, но при работе с 3D (OpenGL) это имхо приходится делать немного чаще. 
Я не спец по играм, но на мой взгляд не там ты узкие места ищешь, оптимизация прямого доступа к памяти давно уж потеряла актуальность... 
Тут скорее надо упор делать на скорость работы с вещественными типами, это гораздо более узкое место, чем доступ к памяти.


P.S. Кстати хочется отметить, что D -  весьма хорошая замена С++ для тех кто ещё до сих пор пользуется этим самым С++. Ну а для тех, кто уже перешёл на .NET | Java, он никаких существенных преимуществ не даёт. + ему не хватает крупной компании в роли двигателя, если у Java есть Sun, у C# - MS & Novell, то у D только Digital Mars, этого маловато чтобы раскрутиться для полноценной конкуренции. 


Это сообщение отредактировал(а) source777 - 4.8.2008, 20:59


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
$tatic
Дата 4.8.2008, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 651
Регистрация: 28.1.2005

Репутация: нет
Всего: 22



Цитата(source777 @  4.8.2008,  21:44 Найти цитируемый пост)
Я не спец по играм, но на мой взгляд не там ты узкие места ищешь, оптимизация прямого доступа к памяти давно уж потеряла актуальность... 

Ну, во-первых, приходится сортировать и обсчитывать объекты огромных современных игровых уровней. При сортировке оптимизация крайне желательна, т.к. это сильно влияет на фпс.
Во-вторых, существует потребность быстро загружать данные с диска в память видеокарты (есть даже пейпер Fast Texture Transfers), а это проще всего сделать, если маппить подготовленный на видеокарте буфер и напрямую читать в него файл с диска (OpenGL), либо маппить файл в память с помощью команд ОС.
Если принять во внимание технологию мегатекстур, то там крайне важно быстро считывать данные из файла мегатекстуры, т.к. её невозможно загрузить целиком.
Быстрый расчёт вещественных чисел, разумеется, тоже важен, в D также есть для этого все средства, включая встроенный x86-ассемблер.
Вот как альтернатива C++ язык D очень хорош, по крайней мере у него я вижу только два недостатка - мало литературы и куча плюсовых проектов.
PM MAIL   Вверх
$tatic
Дата 9.8.2008, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 651
Регистрация: 28.1.2005

Репутация: нет
Всего: 22



Цитата(source777 @  4.8.2008,  15:53 Найти цитируемый пост)
По правде говоря, Garbage Collector вызывается либо когда заканчивается ОЗУ, либо когда завершается программа

Откуда такие сведения?
По моим наблюдениям (профайлинг в NetBeans Profiler) Garbage Collector в циклическом приложении периодически включается и подбирает созданные в цикле объекты. Это хорошо видно по пилообразному графику потребления памяти. GC активируется примерно каждые 5 секунд.
PM MAIL   Вверх
source777
Дата 9.8.2008, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 2
Всего: 56



Цитата($tatic @  9.8.2008,  15:57 Найти цитируемый пост)
Откуда такие сведения?

Согласно Рихтеру:
Цитата

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

  •  Заполнение поколения 0 приводит к запуску сборщика мусора. Это событие намного чаще остальных приводит к вызову метода Finalize, так как является естественным следствием создания новых объектов во время работы кода приложения. 
  •  Явный вызов статического метода Collect объекта System. GC Код может явно запросить сбор мусора у CLR. Хотя Microsoft настоятельно не  рекомендует так поступать, порой принудительный сбор мусора имеет смысл. 
  •  Windows сообщает о нехватке памяти Для общего мониторинга  системной памяти CLR использует Win32-функции CreateMemoryResourceNotification и QueryMemoryResourceNotification. Если Windows сообщает о нехватке  памяти, CLR запускает сбор мусора, чтобы освободить нерабочие объекты и  уменьшить рабочий набор процесса. 
  •  Выгрузка домена приложения CLR Выгружая домен приложения, CLR  считает, что ни один объект в нем не является корнем, и выполняет сбор мусора всех поколений. 
  •  Закрытие CLR CLR завершает работу после нормального завершения  работы процесса (в отличие от внешнего завершения, например диспетчера задач). При этом CLR считает, что в процессе нет корней, и вызывает метод Finalize для всех объектов в управляемой куче. Учтите, что CLR не пытается сжать или освободить память, потому что процесс завершается, a Windows освобождает всю занятую им память. 



Т.е. в случае твоего приложения, это вариант, когда приложение беспрерывно создаёт новые объекты... Если бы ты вынес процедуру создания объектов из цикла, то сборшик мусора не проявил бы активности...



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
$tatic
Дата 9.8.2008, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 651
Регистрация: 28.1.2005

Репутация: нет
Всего: 22



source777, это понятно, но меня интересуют именно игры, а там, естественно, всё зациклено... Но интересно тогда, чем процесс сборки мусора в JRE отличается от такового в CLR.
PM MAIL   Вверх
source777
Дата 9.8.2008, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 2
Всего: 56



Цитата($tatic @  9.8.2008,  21:00 Найти цитируемый пост)
source777, это понятно, но меня интересуют именно игры, а там, естественно, всё зациклено...
А что там зациклено то? Ты для каждой прорисовки заново все объекты создаёшь что ли? Не легче ли создать все нужные объекты при загрузке уровня, а потом уже ими "управлять"?

Добавлено через 42 секунды
P.S. Про JRE не знаю, жди джавистов...


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Добро пожаловать в раздел "Другие языки" форума Vingrad!

Void
Void

Раздел посвящён различным языкам программирования, для которых (в силу невысокой популярности) нет отдельного раздела (GPSS, Lua, MATLAB, Ada, Forth, Smalltalk, Tcl, REXX, AWK и др.)

  • Обязательно следуйте правилам Форума.
  • Пожалуйста, прочитайте и следуйте рекомендациям по работе в разделе и навигации по Форуму.
  • Для вставки текстов исходных кодов используйте подсветку синтаксиса из выплывающего списка Код в форме ответа. Если Ваш язык в списке не представлен, то используйте тег: [code=ваш_язык]код[/code], например, [code=ada]код[/code]. Если в будущем подсветка синтаксиса для указанного языка будет реализована, исходный код преобразится.
  • Помните, один вопрос - одна тема.

Приятного времяпрепровождения! С уважением, Void, kemiisto .

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Другие языки | Следующая тема »


 




[ Время генерации скрипта: 0.1503 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.