URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 73914
[ Назад ]

Исходное сообщение
"Анализ популярности языков программирования в 2010 году"

Отправлено opennews , 11-Янв-11 00:18 
Компания TIOBE Software подвела итоги (http://www.tiobe.com/index.php/content/paperinfo/tpci/index....) популярности языков программирования в 2010 году. Индекс популярности TIOBE не пытается найти самый лучший язык программирования по самому большому количеству написанных строк кода, а строит свои доводы по изменению интереса к языкам, на основе анализа статистики поисковых запросов в таких системах, как Google, Google Blogs, Yahoo!, Wikipedia, MSN и YouTube.


Звание языка 2010 года присуждено языку программирования Python, увеличившему свой рейтинг с 4.455% до 6.265% (увеличение на 1.81%), что позволило ему подняться с 7 на 5 место.  Судя по всему Python также становится стандартом де-факто в области написания скриптов для системных нужд, вытесняя на этом поприще язык Perl, популярность которого упала на 0.71% (за год Perl переместился с 8 на 9 место). В области web-программирования Python, особенно в связке с фреймворком Django, активно конкурирует с PHP, рейтинг которого ухудши...

URL: http://www.tiobe.com/index.php/content/paperinfo/tpci/index....
Новость: http://www.opennet.ru/opennews/art.shtml?num=29236


Содержание

Сообщения в этом обсуждении
"Анализ популярности языков программирования в 2010 году"
Отправлено Devider , 11-Янв-11 00:18 
Статья для тех кому лень открыть http://www.tiobe.com/index.php/content/paperinfo/tpci/index.... ?

"Анализ популярности языков программирования в 2010 году"
Отправлено alltiptop , 11-Янв-11 00:45 
да

"Анализ популярности языков программирования в 2010 году"
Отправлено Анон , 11-Янв-11 04:08 
Так на каждую новость можно тыкнуть "для тех кому лень открыть <источник>". Прошёл год, это некое подведение итогов. Не думаю, что много народу намеренно лазит на эту статистику пофапать а не набрал ли его обожаемый ЯП лишний процентик.

"Анализ популярности языков программирования в 2010 году"
Отправлено anonymous vulgaris , 11-Янв-11 06:40 
Статья для тех кто верит что количество упоминаниний языка в гугле соответствует его популярности.

смотрим тут
http://www.tiobe.com/index.php/content/paperinfo/tpci/tpci_d...

или по русски тут
http://www.rsdn.ru/forum/philosophy/2315566.flat.aspx

Т.е. если я напишу 100500 постов на тему с++-сакс и питон-отстой то популярность обоих по тиобе возрастет.

Вообще удивительно что этот самопиар тиобовцев вызывает какие-то обсуждения.


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 10:00 
Тренды интереса к языкам поисковики  показывают достаточно неплохо. Другие методы еще хуже: проводить опросы - не будет объективности и полного охвата, считать строки открытого кода в публичных репозиториях пропустим большой пласт разных внутренних разработок, наколеночных скриптов и проприетарных систем. А в поисковиках ищут все, и разработчики проприетарных программ, и открытых, и авторы наколеночных скриптов. Подчеркиваю, речь именно о трендах, т.е. изменении популярности во времени.

"Анализ популярности языков программирования в 2010 году"
Отправлено Kodir , 11-Янв-11 11:22 
Здесь имеет место быть полная терминологическая мешанина. Что такое "популярность"? "Интерес"? Даже на пальцах это трудно объяснить, не говоря о смехотворных фапоцифрах тиёбы.

Тиёба показывает тупо "количество запросов", куда входят как праздный интерес (манагеров, например), запросы по конкретному API (прогеров), "левые" запросы (искали кофе Java или основы чего-либо (basic)), запросы дебилов, неспособных прочесть две страницы доков ("как открыть сокет в java") и т.п. Из этой помойки ни один мат.аппарат не способен вывести ничего полезного.
Опросы - чем они плохи? Что необъективного может быть в "какой язык вы используете?"?
Только сам опрос должен быть детальным: не "использую", а "рабочий инструмент"/"хобби"/"временно заставили"... Плюс нужно учитывать (отдельным блоком) уровень юзающего - нет смысла включать "начинающих осваивать сортировку". Тогда уровень того же C# подымется в разы - я в жизни не поверю, чтобы доминирующая платформа с единственным вразумительным языком была ниже ковыляющей по обочине жабы или, прости господи, похапэ. Кстати, "веб" и "нативные приложения" тоже должны разделяться, т.к. сайтоклепателей - легион и нет им счёта.
Вобщем, тиёба позорится своими цифрами, зря нервируя людей.


"Анализ популярности языков программирования в 2010 году"
Отправлено Бублик , 11-Янв-11 18:20 
Популярность коррелирует с "озвученностью", т.е. количеством цитирования (не важно какого оно рода). Метод даёт довольно общие результаты, но другого нет.

"Анализ популярности языков программирования в 2010 году"
Отправлено funny_falcon , 14-Янв-11 17:57 
> Тогда уровень того же C# подымется в разы - я в жизни не поверю, чтобы доминирующая
> платформа с единственным вразумительным языком была ниже ковыляющей по обочине жабы

К моему великому стыду, не програмлю ни на C# ни на Java, но всё равно слова про "доминирующую платформу" воспринимаю как пускание пузырей в луже: Java была за долго до .Net, она есть сейчас и будет ещё очень долго, возможно что всегда. В пресловутом интерпрайзе ещё очень долго она останется доминирующей, хотя бы потому, что в интерпрайзе доминируют версии Unix, а Mono как реализация .Net в подмётки джаве не годится.

Про десктоп: у нас на работе биллинг куплен - и серверная и клиентская часть ("нативное приложение") на джаве, благодаря чему его спокойно юзают пользователи и Linux и Windows.

> Кстати, "веб" и "нативные приложения" тоже должны разделяться,
> т.к. сайтоклепателей - легион и нет им счёта.

И именно по-этому они побеждают


"Анализ популярности языков программирования в 2010 году"
Отправлено kshetragia , 12-Янв-11 05:39 
Не следует забывать еще о сложности языка и его основных библиотек. Какой-нибудь Паскаль освоить куда легче чем C++, а PHP так вообще будет лидировать по количеству запросов. Ибо в его бардачном API сам черт ногу сломит.

"Анализ популярности языков программирования в 2010 году"
Отправлено anonymous vulgaris , 12-Янв-11 20:39 
>Какой-нибудь Паскаль освоить куда легче чем C++

Справедливости ради современный Паскаль тоже стал изрядно запутанным языком (и имеет тенденцию к дальнейшему усложнению), да и литературы по нему меньше.


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 01:11 
С каких пор Delphi - это язык?

"Анализ популярности языков программирования в 2010 году"
Отправлено Devider , 11-Янв-11 01:20 
Года с 2000ого примерно.

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 01:30 
Delphi это название среды, язык, на котором пишут в делфи - object pascal

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 01:42 
Object Pascal-ем этот язык был до выхода 7-ой версии IDE Delphi, с выходом этой версии Borland стала и сам язык называть "Delphi".

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 02:37 
delphi language - точнее

"Анализ популярности языков программирования в 2010 году"
Отправлено anonymous vulgaris , 11-Янв-11 06:49 
> delphi language - точнее

трудно сказать, у них самих было написано так

whats_new_in_borland_delphi7_studio.pdf

Documentation
..
• The Object Pascal language is now called the Delphi™ language. The online Help and documentation have been updated accordingly.
• The Object Pascal Language Guide is now the Delphi Language Guide.



"Анализ популярности языков программирования в 2010 году"
Отправлено FSA , 11-Янв-11 01:31 
Программы, написанные на Java по быстродействию вызывают полное отвращение.

"Анализ популярности языков программирования в 2010 году"
Отправлено sabitov , 11-Янв-11 06:26 
Это сильно зависит от того, кто и как пишет эту самую программу :)
Пару лет назад было показано, что _реальные_ программы на цпп работают _медленнее_ чем их жаба-аналоги. А всё от того, что отдельные быдло-кодеры пишут на цпп так:


class A {
.....
}

void f1 ( A a1, A a2 ) {
.....
}

void f2 () {
    A a1, a2;
    f1 ( a1, a2 );
}

Испортить можно всё :)

PS. Как было написано у Буча: "Даже адепты языка CLOS стараются не использовать все его возможности".


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 07:18 
косяков в этом коде не вижу.

"Анализ популярности языков программирования в 2010 году"
Отправлено Damon_ , 11-Янв-11 07:50 
При передаче управления в f1, для обоих параметров будет вызван конструктор копирования. Если класс A тривиальный, не проблема, а если нет -- лишние затраты на создание копии.

А еще, дополнительный источник тормозов -- чрезмерное использование виртуальных методов. При передаче управления виртуальному методу, надо прочитать указатель на метод из VTable, после перейти по нему. В этом смысле, шаблоны и подход осуществленный в STL рулят, т.к. минимизируют количество виртуальных методов.


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 08:19 
Уже интересно. А как тогда правильно?

"Анализ популярности языков программирования в 2010 году"
Отправлено Damon_ , 11-Янв-11 08:26 
А правильность уже зависит от того, что вы хотите получить.
Чтобы избежать оверхеда с копированием, можно передавать, как указатель, либо как ссылку. Вообще, параметры _НЕ_ИЗМЕНЯЮЩИЕСЯ_ в функции, рекомендуется передавать, как константную ссылку. Ну, понятно, что передавать "const char& ch", изврат, ессно! :-) В общем, здесь тоже надо смотреть по обстоятельствам.

"Анализ популярности языков программирования в 2010 году"
Отправлено iZEN , 11-Янв-11 10:16 
В Java скорость вызова методов примерно в 20 раз выше, чем в C++.
http://keithlea.com/javabench/data

В Java в параметры методов передаются копии значений, в том числе и ссылки на объекты передаются отдельными копиями (ссылок, а не объектов!). При этом GC учитывает все копии ссылок на объекты, в том числе и те, которые были переданы в качестве параметров методов.


"Анализ популярности языков программирования в 2010 году"
Отправлено Анон , 11-Янв-11 10:28 
А вот, например, другие результаты:

http://shootout.alioth.debian.org/u32/benchmark.php?test=all...

Java, как видно, соснула в разы, особенно по памяти.


"Анализ популярности языков программирования в 2010 году"
Отправлено iZEN , 11-Янв-11 11:11 
>А вот, например, другие результаты

А что там? Не увидел конкретики — все тесты свалены в кучу, выбран средний результат.

>Java, как видно, соснула в разы, особенно по памяти.

Память больше не ресурс. 2ГБ сейчас стоят около 1000 рублей и продолжают дешеветь. Java нуждается в памяти так же, как ZFS нуждается в ней. То есть выделенная память используется наиболее эффективно. Правда, смотря по разгону Python'а, можно и этого достоинства лишиться. Deluge, например, кушает как не в себя. :))


"Анализ популярности языков программирования в 2010 году"
Отправлено 2Nike , 11-Янв-11 13:59 
> Память больше не ресурс

Вон из профессии!


"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 12-Янв-11 11:09 
> Вон из профессии!

64 гига памяти на java-машину стоят менее одного человекамесяца труда квалифицированного программиста.


"Анализ популярности языков программирования в 2010 году"
Отправлено Damon_ , 11-Янв-11 12:41 
> В Java скорость вызова методов примерно в 20 раз выше, чем в C++.

Вобщем-то, что я и говорил по поводу виртуальных функций.


class Toggle {
public:
     ....
    virtual Toggle& activate() {
         ....
    }
     ....
};

class NthToggle : public Toggle {
public:
     ....
    Toggle& activate() {
         ....
    }
     ....
};

    Toggle *toggle = new Toggle(val);
    for (int i=0; i<n; i++) {
    val = toggle->activate().value();
    }

     ....

    NthToggle *ntoggle = new NthToggle(val, 3);
    for (int i=0; i<n; i++) {
    val = ntoggle->activate().value();
    }

Это говорит лишь о конкретном компиляторе, но не о всех компиляторах.
В данном случае, не смотря на "виртуальность" ф-ции, контекст их использования известен, по этому, компилятор мог бы их и проинлайнить, результат работы от этого бы не изменился. Тем неменее, он этого не сделал и результат на лице. Как я понимаю, Server JVM, в конечном коде, который выполняется на процессоре (врядли при подобной скорости там интерпретируется байткод) это учла.

Так же там использовался gcc-3.3.1, мягко говоря, далеко не самый последний. Уж 4.5.5 на дворе, 4.6 ветка на подходе. Насколько помню, вроде были новости, что там не слабо оптимизацию подвинули.


"Анализ популярности языков программирования в 2010 году"
Отправлено Damon_ , 11-Янв-11 12:49 
> Уж 4.5.5 на дворе, 4.6 ветка на подходе.

Прошу прощения.

4.4.5, ессно! Или 4.5.2...


"Анализ популярности языков программирования в 2010 году"
Отправлено Reyn , 11-Янв-11 19:00 
>В Java скорость вызова методов примерно в 20 раз выше, чем в C++.

http://keithlea.com/javabench/index
>Despite its obvious flaws, this benchmark continues drawn a lot of attention and e-mail.

Быдлокодинг быдлокодингом, а vuze c eclipse как были коровами так и остались, сколько память не дешевела и процы не разгонялись. Схожие по функциональности µTorrent, kdevelop работают намного быстрей.



"Анализ популярности языков программирования в 2010 году"
Отправлено iZEN , 11-Янв-11 21:57 
> Быдлокодинг быдлокодингом, а vuze c eclipse как были коровами так и остались,
> сколько память не дешевела и процы не разгонялись. Схожие по функциональности
> µTorrent, kdevelop работают намного быстрей.

Если бы Eclipse и Vuse переписали бы на C++, то они бы не взлетели вообще. Вот такая вот сложность присутствует.



"Анализ популярности языков программирования в 2010 году"
Отправлено ананим , 12-Янв-11 11:45 
кедовцам и кутэшнигам это расскажи. вместе посмеётесь.

"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 12-Янв-11 11:13 
Под явой стоит понимать только Java EE, остальные реинкарнации - так, с боку припёка.

"Анализ популярности языков программирования в 2010 году"
Отправлено kshetragia , 12-Янв-11 05:43 
Правильно - забыть про C++

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 17:23 
ну ты и быдлокодер значит. В функцию надо передавать объекты по ссылке

"Анализ популярности языков программирования в 2010 году"
Отправлено Анон , 11-Янв-11 09:41 
>Пару лет назад было показано, что _реальные_ программы на цпп работают _медленнее_ чем их жаба-аналоги.

Толсто

>А всё от того, что отдельные быдло-кодеры пишут на цпп так:

Т.е. вы выбираете те средства, что наиболее податливы для "быдло-кодеров"?


"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 12-Янв-11 11:04 
Вы их не видели просто. Java EE исполняется быстрее нативного си-кода.

"Анализ популярности языков программирования в 2010 году"
Отправлено Keeper , 12-Янв-11 11:16 
> Вы их не видели просто. Java EE исполняется быстрее нативного си-кода.

Доооооо


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 01:34 
В относительном приросте Objective C круче Питона. По сравнению с 2009 рост более чем в 2 раза.

"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 12-Янв-11 11:16 
> В относительном приросте Objective C круче Питона. По сравнению с 2009 рост
> более чем в 2 раза.

Obj-c хороший язык. Простой и мощный. С отличными развитыми каркасами. Да и сама процедура разработки под Мак ОС довольно незатейлива.


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 01:54 
Tcl/Tk незаслуженно забыт, имхо. Только где-то в недрах всяких Cisco используется, да и то по историческим причинам. Изюмительный, очень высокоуровневый, легко расширяемый, кроссплатформенный и с собственным граф. тулкитом - где вот он?

"Анализ популярности языков программирования в 2010 году"
Отправлено pavlinux , 11-Янв-11 03:46 
> ... где вот он?

Его придавило Питоном

Честно говоря, кроме старой версии инсталлера S.u.S.E,
и морды для Citrix я особо-то и не помню где его видел.


"Анализ популярности языков программирования в 2010 году"
Отправлено Damon_ , 11-Янв-11 07:55 
У Xilinx'а, в его среде для разработки под ПЛИС, используется для написания скриптов.

"Анализ популярности языков программирования в 2010 году"
Отправлено AHAH , 11-Янв-11 12:03 
его придавило РМСом =) < Заметный удар по популярности языка нанёс Ричард Столлман, опубликовав в сентябре 1994 г. в ряде новостных групп рекомендацию «Почему вы не должны использовать Tcl». > http://ru.wikipedia.org/wiki/Tcl

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 23:30 
"Тем не менее, рост Tcl-разработчиков за этот период составил 600%" - оттуда же.
Столлман, по-моему, эффектно слил, по-другому эти субъективные капризы тяжело назвать. Синтаксис, видите ли, непривычный - это смотря что считать привычным, любимый столлмановский Lisp тоже тяжело назвать привычным для большинства программистов. Синтаксис Tcl минималистичен и вполне последователен. Или то, что он "не разработан как серьезный язык программирования" - во-первых, есть и такая ниша, скриптинг, небольшие несложные программы на основе компонентов; во-вторых, Остераут его для того и разрабатывал, а, в третьих, давайте позволим судить об этом тем, кто этим языком реально пользуется? Остераут сам охренел, узнав, что на Tcl написаны полмиллиона строк для какой-то нефтяной платформы. А про притягательность для хакеров я вообще не понял, вспомнить перл тут было бы более уместно, а потом, что плохого в этой притягательности?

"Анализ популярности языков программирования в 2010 году"
Отправлено JL2001 , 12-Янв-11 02:10 
> есть и такая ниша, скриптинг, небольшие несложные программы на основе компонентов; во-вторых, Остераут его для того и разрабатывал

чисто из интересу что мешает программировать на "нормальных" языках скрипты, примерно так как это здесь реализовано http://gosu-lang.org/intro.shtml раздел "Gosu Programs" ? (ну кроме того что нет инфраструктуры компиляции при первом запуске такого "скипта" и сохранения в кеше откомпиленного)


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 12-Янв-11 08:00 
Всегда интересовали небольшие "чистые" языки программирования с полным доступом к ядру интерпретатора. Проще синтаксис - меньше аксиом в грамматике и семантике языка, больше можно реализовать всяких хитрых парадигм вроде функциональной.

"Анализ популярности языков программирования в 2010 году"
Отправлено JL2001 , 12-Янв-11 13:29 
> Всегда интересовали небольшие "чистые" языки программирования с полным доступом к ядру
> интерпретатора. Проще синтаксис - меньше аксиом в грамматике и семантике языка,
> больше можно реализовать всяких хитрых парадигм вроде функциональной.

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


"Анализ популярности языков программирования в 2010 году"
Отправлено sabitov , 11-Янв-11 06:32 
> Tcl/Tk незаслуженно забыт, имхо. Только где-то в недрах всяких Cisco используется, да
> и то по историческим причинам. Изюмительный, очень высокоуровневый, легко расширяемый,
> кроссплатформенный и с собственным граф. тулкитом - где вот он?

Угу, только в этом ЯП можно написать такое:
1=2;



"Анализ популярности языков программирования в 2010 году"
Отправлено ffirefox , 11-Янв-11 20:36 
Да ладно! Таких языков полно. Forth, например.

"Анализ популярности языков программирования в 2010 году"
Отправлено pavlinux , 12-Янв-11 03:10 
>> Tcl/Tk незаслуженно забыт, имхо. Только где-то в недрах всяких Cisco используется, да
>> и то по историческим причинам. Изюмительный, очень высокоуровневый, легко расширяемый,
>> кроссплатформенный и с собственным граф. тулкитом - где вот он?
> Угу, только в этом ЯП можно написать такое:
> 1=2;


#!/bin/bash

[ 1 = 2 ];
   echo $?;
set 1=2;
   echo $1;
set 1 = 2;
   echo $*

$:~> ./test.sh

1
1=2
1 = 2

:)


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 01:59 
Надеюсь новоиспеченные веб-фреймворки типа Mojolicious вытянут популярность языка Perl на более висший уровень.

"Анализ популярности языков программирования в 2010 году"
Отправлено Анон , 11-Янв-11 04:03 
Ну и плюс perl6, который будем надеяться скоро допилят

"Анализ популярности языков программирования в 2010 году"
Отправлено anoo , 11-Янв-11 11:07 
Пока быстродействие perl6 только оставляет желать лучшего

"Анализ популярности языков программирования в 2010 году"
Отправлено Anonym , 12-Янв-11 00:40 
> Пока быстродействие perl6 только оставляет желать лучшего

Да вроде, ребята пока заняты полной реализацией спецификации (по последним данным что-то около 90%), и потихоньку пилят производительность.
Вся надежда на Parrot! Хочется чтобы сделали удобный переходной мостик из Perl6 в CPAN Perl5. =)


"Анализ популярности языков программирования в 2010 году"
Отправлено Antverpen , 11-Янв-11 22:19 
Это точно.
А уж для системных скриптов питон уж вряд ли перл вытеснит.
Хотя поживем - увидим.

"Анализ популярности языков программирования в 2010 году"
Отправлено Anonym , 12-Янв-11 00:34 
Да, будем надеяться! Mojo, Dancer, Moose, различные событийные фреймоврки, это явно поможет перлу в поднятии популярности! =)

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 12-Янв-11 17:17 
Может быть. Хотя - аналоги всему этому есть в том же питоне ...
Вобщем поживем - будем посмотреть! :)

"Анализ популярности языков программирования в 2010 году"
Отправлено Reyn , 11-Янв-11 03:32 
> на основе анализа статистики поисковых запросов

Угу, и смысла в этом столько же, сколько в вычисление рейтина президента по позиции в музыкальном хит-параде.


"Анализ популярности языков программирования в 2010 году"
Отправлено szh , 11-Янв-11 05:48 
у них флуктуации огромные, javascript в 2 раза упал за последний год, бред.

"Анализ популярности языков программирования в 2010 году"
Отправлено Anonym , 12-Янв-11 00:46 
> у них флуктуации огромные, javascript в 2 раза упал за последний год,
> бред.

Согласен, скорее всего это связано с изменениями в алгоритмах сбора статистики, а не изменением популярности языка.


"Анализ популярности языков программирования в 2010 году"
Отправлено Troy , 11-Янв-11 05:48 
Питон радует )

"Анализ популярности языков программирования в 2010 году"
Отправлено filosofem , 11-Янв-11 06:23 
О! Питон самый трендовый. Внезапно же. Кто бы мог подумать.

"Анализ популярности языков программирования в 2010 году"
Отправлено tulskiy , 11-Янв-11 06:29 
Просветите, что случилось между 2004 и 2006 что так упала популярность джавы? Питон 2.4?

"Анализ популярности языков программирования в 2010 году"
Отправлено anonymous vulgaris , 11-Янв-11 06:55 
> Просветите, что случилось между 2004 и 2006 что так упала популярность джавы? Питон 2.4?

Поскольку абсурдный индекс тиобе основан на результатах гуглопоиска (см.выше) то очевидно стали меньше задавать на форумах вопросов - а как на жабе поделить 2 на 2, и больше вопросов - а как на питоне поделить 2 на 2.


"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 09:21 
такой бредовый метод построения статистики у этой TIOBE Software. Я весть такой сижу теперь, и верю в питон :)

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 09:50 
Что же мы делаем, друзья? Зачем обижаем Perl? Нужно постараться и поднять его в тройку лидеров! Это действительно Великий Язык, он того заслуживает!

"Анализ популярности языков программирования в 2010 году"
Отправлено Зилибоба , 11-Янв-11 15:56 
Конкретные предложения будут?

"Анализ популярности языков программирования в 2010 году"
Отправлено Горлов , 11-Янв-11 16:39 
Провести Perl Fest 2011 )

"Анализ популярности языков программирования в 2010 году"
Отправлено Anonym , 12-Янв-11 00:42 
> Провести Perl Fest 2011 )

В мае в дефолт-сити две будут. В латвии августе еще одна.


"Анализ популярности языков программирования в 2010 году"
Отправлено Anonym , 12-Янв-11 00:43 
> Конкретные предложения будут?

Нужен сайт для новичков в Perl в рунете. А то ничего такого вменяемого нету к сожалению.


"Анализ популярности языков программирования в 2010 году"
Отправлено whip , 12-Янв-11 12:24 
>Конкретные предложения будут?

каждый запустит у себя на сервере скрипт, который будет бомбить гуугл поисковыми запросами со словом "perl"
:)


"Анализ популярности языков программирования в 2010 году"
Отправлено Antverpen , 11-Янв-11 22:20 
Истинно же. =)

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 10:12 
C# тут точно не место

"Анализ популярности языков программирования в 2010 году"
Отправлено вася , 11-Янв-11 23:11 
Судя по Тиобе, дела у шарпа идут не блестяще. Растет, но медленнее, чем падает васик. А очевидно же - с васика мигрируют в основном на шарп. Вот и получается - весь рост только за счет поедания трупа васика, и то он его не успевает съесть целиком...

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 10:23 
А где Haskell?

"Анализ популярности языков программирования в 2010 году"
Отправлено Анон , 11-Янв-11 10:30 
На 41м месте (читай "в глубокой попе").

"Анализ популярности языков программирования в 2010 году"
Отправлено Роман , 11-Янв-11 10:33 
У TIOBE получился рейтинг популярности языков среди людей, не умеющих решать проблемы самостоятельно.
Т.е. рейтинг довольно неоднозначный - в определёной степени низкое значение свидетельствует о технической продвинутости языка.

"Анализ популярности языков программирования в 2010 году"
Отправлено Анон , 11-Янв-11 10:51 
Не столько о продвинутости, сколько скажем о качестве сопутствующей документации. Если в perldoc можно найти ответ на почти любой вопрос, то разработчик, научившись раз им пользоваться гуглить почти перестанет.

"Анализ популярности языков программирования в 2010 году"
Отправлено вася , 11-Янв-11 23:15 
Вот вам и ответ, как перлу рейтинг накрутить. Начинаем дружно гуглить нубские вопросы по сабжу (^-^)

"Анализ популярности языков программирования в 2010 году"
Отправлено tulskiy , 11-Янв-11 15:31 
> У TIOBE получился рейтинг популярности языков среди людей, не умеющих решать проблемы
> самостоятельно.

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

> Т.е. рейтинг довольно неоднозначный - в определёной степени низкое значение свидетельствует
> о технической продвинутости языка.

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


"Анализ популярности языков программирования в 2010 году"
Отправлено Anonus , 11-Янв-11 12:42 
C/C++ во веки веков!

"Анализ популярности языков программирования в 2010 году"
Отправлено Sw00p aka Jerom , 11-Янв-11 13:14 
+1 ну не надо таких высказываний

а то не интересно читать сабж про крутость жабы XDDD


"Анализ популярности языков программирования в 2010 году"
Отправлено xanten , 11-Янв-11 13:52 
Не пойму, в чем смысл таких рейтингов. Ну применяется Java чаще C++, и что из этого следует?

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 11-Янв-11 21:54 
Чисто теоретически. Если у языка и сопутствующих его платформ есть отличный, просто идеальный мануал, тогда он в этот рейтинг и не попадет :)))

"Анализ популярности языков программирования в 2010 году"
Отправлено Sw00p aka Jerom , 12-Янв-11 01:45 
а шо есть в рейтинге язык без мануала ?

"Анализ популярности языков программирования в 2010 году"
Отправлено JL2001 , 12-Янв-11 01:10 
a) существуют ли языки позволяющие:
1) для класса/функции/участка нити алгоритма указывать какая требуется оптимизация ?
2) для функции указать компилятору при каких ограничениях входных значений функция быстра или указать что работает как o(f(n)) или сам компилятор способен ли это определить ?
3) в объектной модели при создании объектов использовать интерфейс (а не непосредственно класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал из наличествующих реализаций конкретный класс под требования ?

b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным) стилем ?

c) существуют ли языки (не программирования а описательные скорее) с удобной или автоматической валидацией теорем-утверждений, с удобной работой с самими утверждениями ?
типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие теоремы и аксиомы


"Анализ популярности языков программирования в 2010 году"
Отправлено Sw00p aka Jerom , 12-Янв-11 01:42 
>>1) для класса/функции/участка нити алгоритма указывать какая требуется оптимизация ?

asm

>>2) для функции указать компилятору при каких ограничениях входных значений функция быстра или указать что работает как o(f(n)) или сам компилятор способен ли это определить ?

зачем явно указывать o(f(n)) если можно выполнить как o(1)

>>3) в объектной модели при создании объектов использовать интерфейс (а не непосредственно класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал из наличествующих реализаций конкретный класс под требования ?

объект - экземпляр класса, класс - пользовательский тип данных, интерфейс - обёртка, компилятор вам не ИИ - ибо нах ваще создавать язык программирования если всё будет делать компилятор ?

>>b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным) стилем ?

MC VS XDDDDD

>>c) существуют ли языки (не программирования а описательные скорее) с удобной или автоматической валидацией теорем-утверждений, с удобной работой с самими утверждениями ?

типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие теоремы и аксиомы

MathLab XDD


"Анализ популярности языков программирования в 2010 году"
Отправлено JL2001 , 12-Янв-11 01:57 
>>>1) для класса/функции/участка нити алгоритма указывать какая требуется оптимизация ?
> asm

спасибо, а то на баше не смешно нонче

>>>2) для функции указать компилятору при каких ограничениях входных значений функция быстра или указать что работает как o(f(n)) или сам компилятор способен ли это определить ?
> зачем явно указывать o(f(n)) если можно выполнить как o(1)

разворачивание алгоритмов это вопрос оптимизации, данный же вопрос относится к алгоритмизации на понимаемом компиляторе языке для дальнейшего использования в оптимизациях

>>>3) в объектной модели при создании объектов использовать интерфейс (а не непосредственно класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал из наличествующих реализаций конкретный класс под требования ?
> объект - экземпляр класса, класс - пользовательский тип данных, интерфейс - обёртка,

спасибо, Кэп!
итого я могу запросить такой объект который [(катается + красный) * максимально сытный] а будет ли это морковка, помидор или яблоко - подсчитает компилятор

> компилятор вам не ИИ - ибо нах ваще создавать язык программирования
> если всё будет делать компилятор ?

зачем вам компьютер если вы на счётах трушно посчитаете ? вы и ещё 100500 ваших клонов, а кто плохо считать будет того пустят на корм остальным 100499

>>>b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным) стилем ?
> MC VS XDDDDD

негуглится, или уточните или пишите без орфографических ошибок

>>>c) существуют ли языки (не программирования а описательные скорее) с удобной или автоматической валидацией теорем-утверждений, с удобной работой с самими утверждениями ?
> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
> теоремы и аксиомы
> MathLab XDD

пока пользовался только Математикой, там нет нормального языка описания общих утверждений
в матлабе есть язык для работы с _ОБЩИМИ_ утверждениями ? есть ли к нему средства обработки отдельные от матлаба ?


"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 12-Янв-11 11:26 
> объект - экземпляр класса, класс - пользовательский тип данных, интерфейс - обёртка,
> компилятор вам не ИИ - ибо нах ваще создавать язык программирования
> если всё будет делать компилятор ?

Наверное сильно удивитесь, но большинство ОО-языков способствуют объявлению не типов, а интерфейсов. Типы вообще редко используются.
Да и GoF постулируют именно использование интерфейсов, а не типов.


"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 12-Янв-11 11:23 
>[оверквотинг удален]
> 3) в объектной модели при создании объектов использовать интерфейс (а не непосредственно
> класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал
> из наличествующих реализаций конкретный класс под требования ?
> b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным)
> стилем ?
> c) существуют ли языки (не программирования а описательные скорее) с удобной или
> автоматической валидацией теорем-утверждений, с удобной работой с самими утверждениями
> ?
> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
> теоремы и аксиомы

По всем этим вопросам можно смело стереотипно ответить - да ))



"Анализ популярности языков программирования в 2010 году"
Отправлено JL2001 , 12-Янв-11 11:33 
>[оверквотинг удален]
>> класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал
>> из наличествующих реализаций конкретный класс под требования ?
>> b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным)
>> стилем ?
>> c) существуют ли языки (не программирования а описательные скорее) с удобной или
>> автоматической валидацией теорем-утверждений, с удобной работой с самими утверждениями
>> ?
>> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
>> теоремы и аксиомы
> По всем этим вопросам можно смело стереотипно ответить - да ))

"имя!! назови мне имя!!!!" (с)


"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 12-Янв-11 15:48 
Да имён - масса. Всё, что вызвало ваши вопросы, реализовано и существует. В работу большинство современных промышленных компиляторов вмешивать не имеет смысла. Можно, конечно, что-то покрутить в препроцессоре, но толку от этого, скорее всего, не будет. Лучшие компилятор сейчас довольно интеллектуальны. Уж точно, более интеллектуальны, чем средний прогер.

Большинство ОО-языков имеют общий объектный тип, вроде id в obj-c. И динамическая типизация вполне успешно применяется на практике. У неё есть свои явные плюсы, но и свои явные минусы.

UML имеет развитые средства описания ограничений и трансляции диаграмм в целевой код.

>> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
>> теоремы и аксиомы

Функциональные языки позволяют реализовать нечто подобное.


"Анализ популярности языков программирования в 2010 году"
Отправлено JL2001 , 12-Янв-11 20:32 
> В работу большинство современных промышленных компиляторов вмешивать не имеет смысла.
> Можно, конечно, что-то покрутить в препроцессоре, но толку от этого, скорее
> всего, не будет. Лучшие компилятор сейчас довольно интеллектуальны. Уж точно, более
> интеллектуальны, чем средний прогер.

почему тогда до сих пор популярны ассемблерные вставки которые реально увеличивают производительность участков ?


> Большинство ОО-языков имеют общий объектный тип, вроде id в obj-c. И динамическая
> типизация вполне успешно применяется на практике. У неё есть свои явные
> плюсы, но и свои явные минусы.

либо я вас не понял, либо вы меня
динамическая типизация позволяет мне сделать такое ?

Интерфейс ИнтерфейсЕда {
function void сьесть()
}

Класс Помидор реализует ИнтерфейсЕда {
@Красное //описание свойств класса или автовычислимое компилятором или заботливо созданное программистом

function void сьесть() @вес 150 калорий //описание свойств метода класса --//--
}
Класс Огурец реализует ИнтерфейсЕда {
@Зелёное
@вес 350 калорий
}
Класс Яблоко реализует ИнтерфейсЕда {
@Красное
@вес 1350 калорий
}
Класс Морковь реализует ИнтерфейсЕда {
@Красное
@вес 50 калорий
}

ИнтерфейсЕда a = new ИнтерфейсЕда()[пусть она красная; пусть в сьесть() калорий < 200]

и в результате у меня в a - Морковь или Помидор (что из них конкретно - выбирается по внутренним соображениям компилятора)

например я бы хотел использовать вместо цвета - вес класса, а вместо калорийности - время выполнения метода при входящих параметрах x, y и z


> UML имеет развитые средства описания ограничений и трансляции диаграмм в целевой код.

многие жалуются на результаты такой трансляции и говорят что приходится полностью самостоятельно переписывать, а UML подходит только чтоб эти схемы на стену повесить и смотря на них кодить


>>> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
>>> теоремы и аксиомы
> Функциональные языки позволяют реализовать нечто подобное.

не подскажите как это вобще называется по научному, я не оч понимаю как это можно реализовать в функциональных языках


"Анализ популярности языков программирования в 2010 году"
Отправлено angra , 13-Янв-11 00:07 
> например я бы хотел использовать вместо цвета - вес класса, а вместо
> калорийности - время выполнения метода при входящих параметрах x, y и z

Как только вы сможете дать математическиое определение таким понятиям как "вес класса" и "время выполнения метода при входящих параметрах x, y и z". Даю подсказку, следущие параметры в общем случае никак не связаны между собой: количество строк исходного кода, время компиляции, объем байткода, результирующее количество инструкций процессора, потребляемая память различных видов, процессорное время, реальное время, нагрузка на IO. Также стоит помнить, что кроме воображаемого мира адептов функциональщины существует еще реальный мир, в котором время выполнения и результат функций/методов зависит от состояния внешних объектов.


> многие жалуются на результаты такой трансляции и говорят что приходится полностью самостоятельно
> переписывать, а UML подходит только чтоб эти схемы на стену повесить
> и смотря на них кодить

А многие жалуются на отсутствие кнопки "сделать все за меня" и что дальше? UML это инструмент, применять нужно с умом и в подходящих условиях. Ожидать что он сделает за вас всю работу просто глупо, а вот сократить рутину и улучшить читабельность вполне может.


"Анализ популярности языков программирования в 2010 году"
Отправлено JL2001 , 13-Янв-11 01:56 
>> например я бы хотел использовать вместо цвета - вес класса, а вместо
>> калорийности - время выполнения метода при входящих параметрах x, y и z
> Как только вы сможете дать математическиое определение таким понятиям как "вес класса"
> и "время выполнения метода при входящих параметрах x, y и z".
> Даю подсказку, следущие параметры в общем случае никак не связаны между
> собой: количество строк исходного кода, время компиляции, объем байткода, результирующее
> количество инструкций процессора, потребляемая память различных видов, процессорное
> время, реальное время, нагрузка на IO. Также стоит помнить, что кроме
> воображаемого мира адептов функциональщины существует еще реальный мир, в котором время
> выполнения и результат функций/методов зависит от состояния внешних объектов.

алгоритмы часто имеют известную сложность от входящих и потребление памяти в логических единицах от входящих (а ещё их можно множить на размер логических единиц в байтах)

а f(g(n)) при работе с внешним объектом с характеристикой g(n) вполне считать можно
зы: ни кто не мешает в "условиях вызова" указывать диапазоны значений, а в условиях функций - диапазоны и характерные функции к ним


> UML это инструмент, применять нужно с умом и в подходящих
> условиях. Ожидать что он сделает за вас всю работу просто глупо

а почему собсно бы и не всю работу ? UML я правда лично ещё не смотрел толком но не понимаю что мешает из блоксхемы с нормально расписанными условиями, циклами и прочим делать нормальный код, разбитый по модулям/классам в соответствии с разбивкой в блоксхеме
по крайней мере для жавы я представляю себе и преобразование кода в блоксхему и обратное преобразование

зы: и я таки хочу всё вместе:

и возможность описания требуемых мне автоматических оптимизаций

и возможность описывать код характеризующими функциями с возможностью выбора оптимального варианта для данных входных значений компилятором (фактически сейчас это можно реализовывать через фабрику-обёртку-дао где делать ифы и по результатам возвращать оптимум - НО это приходится делать руками... работу с объектами можно тоже сделать через функциональщину - но ручками то писать неохото когда за человека способна поработать железяка - прописать таблицы вызовов и выбор, попутно ещё и оптимизировав... что-то в этом духе http://rainman-rocks.livejournal.com/122876.html ==> повышаем декларативность так сказать..)

и возможность переходить в блоксхемный вид (куда более наглядный и раскрывающий связи) и обратно с возможностью "писать код" в обоих по своему выбору где мне удобнее (тоесть преобразование язык-блоксхема должно быть достаточно однозначным)


"Анализ популярности языков программирования в 2010 году"
Отправлено nuclight , 24-Янв-11 17:16 
> a) существуют ли языки позволяющие:
> 1) для класса/функции/участка нити алгоритма указывать какая требуется оптимизация ?

Можно костылями - для каждого .o свои ключи оптимизации указывать. На уровне языка - это не совсем его задача, тут разве что кейворды типа inline.

> 2) для функции указать компилятору при каких ограничениях входных значений функция быстра
> или указать что работает как o(f(n)) или сам компилятор способен ли
> это определить ?

Сам определить? Такие требования скорее для ИИ, а его нет. А учет в алгоритме, при каких параметрах функция быстра - собственно, и есть работа программиста. Чем-то отдаленно напоминающее есть в функциональных языков (задание функций по входным значениям), например, в Haskell

> 3) в объектной модели при создании объектов использовать интерфейс (а не непосредственно
> класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал
> из наличествующих реализаций конкретный класс под требования ?

Это как? Сам пошел в аналог CPAN и скачал нужные модули? =) Вообще всё сообщение по требованиям смахивает на кнопку "сделайте мне хорошо" (т.е. работу за меня).

> b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным)
> стилем ?

Лого или черепашка =)

Вообще-то все попытки создать такое провалились. Известный пример - UML. Ну и правильно - мышление должно быть текстовым.

Еще можно на http://c2.com/cgi/wiki?FlowBasedProgramming посмотреть, хотя это не то.

> c) существуют ли языки (не программирования а описательные скорее) с удобной или
> автоматической валидацией теорем-утверждений, с удобной работой с самими утверждениями
> ?
> типо есть аксиомы и по ним проверять теоремы, раскладывать теоремы на составляющие
> теоремы и аксиомы

Ну да, их так и называют - декларативные/логические (третья парадигма, кроме императивной и функциональной). Пример - Prolog.


"Анализ популярности языков программирования в 2010 году"
Отправлено JL2001 , 30-Янв-11 05:10 
>> a) существуют ли языки позволяющие:
>> 1) для класса/функции/участка нити алгоритма указывать какая требуется оптимизация ?
> Можно костылями - для каждого .o свои ключи оптимизации указывать. На уровне
> языка - это не совсем его задача, тут разве что кейворды
> типа inline.

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

>> 2) для функции указать компилятору при каких ограничениях входных значений функция быстра
>> или указать что работает как o(f(n)) или сам компилятор способен ли
>> это определить ?
> Сам определить? Такие требования скорее для ИИ, а его нет. А учет
> в алгоритме, при каких параметрах функция быстра - собственно, и есть
> работа программиста. Чем-то отдаленно напоминающее есть в функциональных языков (задание
> функций по входным значениям), например, в Haskell

в математике теория алгоритмов весьма же развита, из программы часто можно построить её граф выполнения, можно оценить трудозатраты на выполнение участка графа (это к вопросу об ИИ компилятора)
работа программиста - перевод ТЗ заказчика с русского на язык понятный компьютору, чтоб он по этому ТЗ мог выдать результат в понимаемом заказчиком виде
выбор же варианта алгоритма под конкретную задачу не сложнее тупого перебора всех возможных вариантов алгоритмов решающих конкретную задачу с учётом нужных условий
а вот на сколько хорош алгоритм и в каких условиях - этим занимается математика (а не программист, если говорить по серьёзному)
но не существует в математике готовых алгоритмов на все случаи жизни, только поэтому программист не является совсем ремесленником а таки и творцом нового - учёным-математиком, создаёт новый алгоритм по "переводу тыканья мышкой клавиш в годовой отчёт с графиками"
однако алгоритмы сортировки массива созданы и детально разобраны математиками и по факту программисту остаётся только выбрать лучший для его задачи - а это работа "ремесленника" которую способен осуществить компьютор (хотяб методом тупого перебора всех возможных вариантов алгоритма сортировки), но компьютор не в состоянии выбрать "предпочтения" которые может иметь программист в своём глобальном алгоритме "годового отчёта"

>> 3) в объектной модели при создании объектов использовать интерфейс (а не непосредственно
>> класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал
>> из наличествующих реализаций конкретный класс под требования ?
> Это как? Сам пошел в аналог CPAN и скачал нужные модули? =)
> Вообще всё сообщение по требованиям смахивает на кнопку "сделайте мне хорошо"
> (т.е. работу за меня).

почти - посмотрел все инклуды (инклуды модулей, неймспейсов, аль ещё какие) - нашёл все реализации требуемого интерфейса и выбрал нужный основываясь на пожеланиях указаных программистом
это вполне рабочая кнопка "сделать мне хорошо" - такая же как современное автодополнение в ИДЕ

>> b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным)
>> стилем ?
> Вообще-то все попытки создать такое провалились. Известный пример - UML. Ну и
> правильно - мышление должно быть текстовым.

на сколько я понял UML по факту не предназначен именно для программирования
я вобще тут подумал-прикинул - для любого языка можно сделать прямое отображение код-блоксхема и блоксхема-код, всё упирается в наличие готового инструмента и качество кодогенератора из блоксхемного описания
тут уже встал вопрос - почему компиляторы не переводят программы в алгоритмическое описание (точнее почему это описание не является каноническим "исходным кодом" для последующей оптимизации и кодогенерации для всяких llvm)

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


"Анализ популярности языков программирования в 2010 году"
Отправлено nuclight , 30-Янв-11 18:14 
>>> a) существуют ли языки позволяющие:
>>> 1) для класса/функции/участка нити алгоритма указывать какая требуется оптимизация ?
>> Можно костылями - для каждого .o свои ключи оптимизации указывать. На уровне
>> языка - это не совсем его задача, тут разве что кейворды
>> типа inline.
> .o это слишком глобально,

Никто не мешает реорганизовать проект так, чтобы соответствующие функции попадали в нужные .o - в конце концов, в былые времена иные .o вообще могли генерироваться из другого языка (того же ассмблера, например).

> у моего вопроса уши растут из "почему ассемблерные
> вставки до сих пор повышают производительность?" ибо по факту асм-вставка и
> есть прямое указание компилятору "как оптимизировать этот кусок" в виде "ничего
> не трогай, просто перепиши как тут буква в букву"

Хе. Повышают где/у кого/на каком языке/в каких условиях? В ряде случаев современные компиляторы уже оптимизируют код гораздо эффективнее, чем ручные ассемблерные вставки. Потому что процессоры нынче такие - удержать в голове все их конвееры и прочие особенности уже весьма сложно.

>[оверквотинг удален]
> в математике теория алгоритмов весьма же развита, из программы часто можно построить
> её граф выполнения, можно оценить трудозатраты на выполнение участка графа (это
> к вопросу об ИИ компилятора)
> работа программиста - перевод ТЗ заказчика с русского на язык понятный компьютору,
> чтоб он по этому ТЗ мог выдать результат в понимаемом заказчиком
> виде
> выбор же варианта алгоритма под конкретную задачу не сложнее тупого перебора всех
> возможных вариантов алгоритмов решающих конкретную задачу с учётом нужных условий
> а вот на сколько хорош алгоритм и в каких условиях - этим
> занимается математика

Ржал. Если уж речь о графах, математике и переборе зашла, может, про NP-полные задачи и их вычислительной сложности пора вспомнить, а?

> занимается математика (а не программист, если говорить по серьёзному)
> но не существует в математике готовых алгоритмов на все случаи жизни, только
> поэтому программист не является совсем ремесленником а таки и творцом нового
> - учёным-математиком, создаёт новый алгоритм по "переводу тыканья мышкой клавиш в
> годовой отчёт с графиками"

"Ученый-математик" занимается годовым отчетом, опеннет нынче вместо цирка читать можно.

> однако алгоритмы сортировки массива созданы и детально разобраны математиками и по факту
> программисту остаётся только выбрать лучший для его задачи - а это
> работа "ремесленника" которую способен осуществить компьютор (хотяб методом тупого перебора
> всех возможных вариантов алгоритма сортировки), но компьютор не в состоянии выбрать
> "предпочтения" которые может иметь программист в своём глобальном алгоритме "годового
> отчёта"

Не способен, потому что ему задача неизвестна. Компьютер - он думать не умеет.

>[оверквотинг удален]
>>> класс) с указанием компилятору требований необходимой реализации чтоб сам компилятор выбрал
>>> из наличествующих реализаций конкретный класс под требования ?
>> Это как? Сам пошел в аналог CPAN и скачал нужные модули? =)
>> Вообще всё сообщение по требованиям смахивает на кнопку "сделайте мне хорошо"
>> (т.е. работу за меня).
> почти - посмотрел все инклуды (инклуды модулей, неймспейсов, аль ещё какие) -
> нашёл все реализации требуемого интерфейса и выбрал нужный основываясь на пожеланиях
> указаных программистом
> это вполне рабочая кнопка "сделать мне хорошо" - такая же как современное
> автодополнение в ИДЕ

Из всея Интернета-то? Или в таком IDE предполагается держать скачанными десятки гигабайт всех имеющихся библиотек для языка?

Если "такая же" и "вполне рабочая" - так пойдите и сделайте, в чем проблема-то.

>>> b) отдельно - есть ли языки программирования с "алгоритмическим" (типо блоксхемно-описательным)
>>> стилем ?
>> Вообще-то все попытки создать такое провалились. Известный пример - UML. Ну и
>> правильно - мышление должно быть текстовым.
> на сколько я понял UML по факту не предназначен именно для программирования

Он таким задумывался, кодогенераторы же есть. А по факту да, провалился.

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

На каком уровне, обернув каждую лексему в свой блок? =) Да, можно, AST и получится, вот только толку от такого уровня детализации немного. А попытки в более общем виде создать "для любого" таки провалились (для разнообразных DSL успешные попытки бывали, да).

Кстати, насчет восторженности по поводу блок-схем, Брукс еще в 75 году проехался, рекомендую перечитать соответствующую главу.

> тут уже встал вопрос - почему компиляторы не переводят программы в алгоритмическое
> описание (точнее почему это описание не является каноническим "исходным кодом" для
> последующей оптимизации и кодогенерации для всяких llvm)

Это в школу, читать Dragon book (Ахо и Ульман по компиляторам) и много думать.

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

Я развеиванием наивностей заниматься не буду, просто дам ссылки, где это давно уже умными людьми всё пережевано, подробно:

http://c2.com/cgi/wiki?VisualProgrammingLanguage
http://c2.com/cgi/wiki?GraphicalProgramming
http://c2.com/cgi/wiki?GraphicalProgrammingLanguage
http://c2.com/cgi/wiki?FlowChart

Там достаточно, здесь эту дискуссию можно не продолжать.


"Анализ популярности языков программирования в 2010 году"
Отправлено TYN , 12-Янв-11 01:15 
Basic true по ходу. Не ожидал его увидеть в рейтинге.

"Анализ популярности языков программирования в 2010 году"
Отправлено Keeper , 12-Янв-11 10:29 
Ещё бы, на нём СТОЛЬКО студентов пишут...
Плюс те, кто автоматизирует MS Office.

"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 12-Янв-11 11:19 
> Ещё бы, на нём СТОЛЬКО студентов пишут...
> Плюс те, кто автоматизирует MS Office.

Если бы студенты. На Бейсике понаписано полно всякого убожества в промышленных системах. Подобным писакам надо б руки вырывать, прям из их задницы.


"Анализ популярности языков программирования в 2010 году"
Отправлено anonymous vulgaris , 12-Янв-11 21:44 
>На Бейсике понаписано полно всякого убожества в промышленных системах.

Дык Хьюлетт его например для работы со своими приборами давал

The Agilent E2060B, HP BASIC for Windows, brings the power and ease of use of the popular HP BASIC (also known as Rocky Mountain Basic®) to the PC and the Microsoft Windows operating system.



"Анализ популярности языков программирования в 2010 году"
Отправлено angra , 12-Янв-11 23:44 
> Если бы студенты. На Бейсике понаписано полно всякого убожества в промышленных системах.
> Подобным писакам надо б руки вырывать, прям из их задницы.

Простите убожественность в данном случае это проблема писак, языка или его реализаций? На бейсике как и на любом другом скриптовом языке вполне можно грамотно писать.


"Анализ популярности языков программирования в 2010 году"
Отправлено Кырыл , 17-Янв-11 10:05 
Проблема в том, что язык порождает среду. И чем проще язык, тем менее строгой получается эта среда. Создаётся порочная цепочка, когда упрощение на одном уровне порождает каскад проблем на всех прочих. Строгая же среда дисциплинирует работающего с ней, заставляет думать и понимать, что он делает.

"Анализ популярности языков программирования в 2010 году"
Отправлено Аноним , 12-Янв-11 01:55 
радует попадание асма в список О_о

"Анализ популярности языков программирования в 2010 году"
Отправлено НАЧИНАЮЩИЙ , 12-Янв-11 21:11 
извините а как насчёт популярности сред разработки языков программирования таких как например Qt? где можно бы узнать