Re[11]: Языки общего назначения не имеют смысла!
От: vdimas Россия  
Дата: 25.04.12 05:45
Оценка: -1 :)
Здравствуйте, WolfHound, Вы писали:

WH>>>2)Сложность рукопашного кода всё равно больше. Чем сложность компилятора.

T>>Не нужно передергивать.
WH>В каком месте?

Например в месте обзора сложности компилятора N.
Re[12]: Языки общего назначения не имеют смысла!
От: vdimas Россия  
Дата: 25.04.12 05:47
Оценка:
Здравствуйте, Tanker, Вы писали:

T>Я видел проекты где решения вроде string.split работали десятками лет. Для чего там полноценный парсер ? Я вот не смог объяснить, потому там и по сей день string.split.


Если объемы данных невелики, то пойдет string.split, если же велики — то только оперативная обработка.
Re[10]: Языки общего назначения не имеют смысла?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 25.04.12 06:17
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Я бы сказал, вы все тут молодцы демагогией в той или иной степени занимаетесь Потому что обсуждение терминов почти всегда оно и есть. Правда, стоит заметить, что, почему то, топики с участием netch80 явно чаще среднего по больнице на обсуждение терминов скатываются.


А жаль. Это значит, что слишком много флеймов, где спорят, совершенно не согласовав, о чём вообще говорят.
The God is real, unless declared integer.
Re[15]: Языки общего назначения не имеют смысла!
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 25.04.12 06:23
Оценка:
Здравствуйте, oldjackal, Вы писали:

N>>Добавлю только, что само понятие "языка" с чёткими требованиями к синтаксису может быть чрезмерным для тех, кто пишет на DSL. Поэтому вопроса развиваются графические представления — для тех случаев, где они достаточны, и в них соблюдение синтаксических норм достигается само собой.

O> А вот на этом пути надо не перегибать палку. В некоторых промышленных CAD-ах так старались добиться "нечеткого" и "естественного" синтаксиса, что получились языки с тысячами ключевых слов и десятитомными документациями.

А я и не предлагал двигаться в эту сторону. В случае графически представимого DSL, внутренний синтаксис есть почти целиком дело исполняющей среды, и она может от этого уйти. В случае же явно записываемого человеком, есть как минимум два примера, оба достаточно знамениты: COBOL и конфиги fetchmail. В обоих адаптация под близость к естественному языку привела, хоть и по-разному, к одному и тому же — и естественного языка не добились, и искусственный получился каким-то... мнэээ... странноватым и малоудобным.
The God is real, unless declared integer.
Re[11]: Языки общего назначения не имеют смысла?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.04.12 07:30
Оценка: +1
Здравствуйте, netch80, Вы писали:

N>А жаль. Это значит, что слишком много флеймов, где спорят, совершенно не согласовав, о чём вообще говорят.


Моя практика показывает, что как только разговор заходит о трактовке терминов, ветку сразу можно бросать читать, потому что ничего интересного в ней уже не будет, один пустой срач.
... << RSDN@Home 1.2.0 alpha 5 rev. 33 on Windows 7 6.1.7601.65536>>
AVK Blog
Re[23]: Языки общего назначения не имеют смысла!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.04.12 11:10
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Ikemefula, Вы писали:


I>>Еак донести до ЦА ваши разработки ?


VD>Для Фомы — это бессмысленно. Вот до тебя я вроде информацию донес, но что толку то? У тебя же вера в том, что тебя обманывают.


И как ты решил что я это часть твоей ЦА? У меня не вера, а факты, как вы забили на обратную совместимость.

>Ты же проверять не будешь. А что тебе на словах можно доказать?


Что бы проверить на реальном проекте, мне нужно рассказать начальству как у вас все классно с обратной совместимостью, то есть пойти на прямой обман.
Re[25]: Языки общего назначения не имеют смысла!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.04.12 11:14
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>>>Насильно. Ибо в институтах только это направление и дают.

I>>Ты вообще хорошо понимаешь, что такое система образования, какие у нее задачи и
WH>Ее задача подготовить адекватных специалистов.

Осталось раскрыть что же ты вкладываешь в понятие "адекватных". Наверняка сюда ты хочешь притянуть "компиляторы" и "генераторы парсеров"

WH>Но она с этим не справляется.

WH>Ибо когда молодой специалист приходит на производство ему говорят, забудь все чему тебя учили и начинают учить по новой.

Это у вас так ? Сочувствую.

I>>какой критерий отбора материала для обучения ?

WH>По желанию левой пятки ответственных за подбор материала.

Соболезную твоему опыту.

Выйди на улицу и посмотри, какие проекты приходят в девелоперские конторы и в каких количествах. Отсюда станет ясно, что за запросы у отрасли и как их можно удовлетворить.
Re[12]: Языки общего назначения не имеют смысла?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.04.12 11:36
Оценка:
Здравствуйте, AndrewVK, Вы писали:

N>>А жаль. Это значит, что слишком много флеймов, где спорят, совершенно не согласовав, о чём вообще говорят.


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


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

Не совсем понятно, откуда возьмутся общие термины для вещей, которые не расписаны детально в букварях. И неясно, как прийти к согласию, если люди пользуются разными источниками.
Re[27]: Языки общего назначения не имеют смысла!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.04.12 11:58
Оценка: :)
Здравствуйте, Sinclair, Вы писали:

S>6. Опять даункаст. В целом, выглядит, как размазанная запись правила, которое в оригинале звучало как "убить все карточки, которые входят в бла-бла-бла". DSL, который бы позволял написать "убить все карточки, которые входят в бла-бла-бла", не отвлекаясь на порядок обхода итераторов, даункасты, и скобочки, был бы крайне уместен.


Так самое интересное в этих "бла-бла-бла". Но как только появляется не только выборка, но и всякие оптимизации, что откуда правильно тянуть, а потом появляются модификации, и снова оптимизации, что где правильно модифицировать, то крайне сложно придумать ДСЛ. А просто рожать ДСЛ для убиения карточек толку мало
Re[28]: Языки общего назначения не имеют смысла!
От: Sinclair Россия https://github.com/evilguest/
Дата: 25.04.12 12:32
Оценка: :)
Здравствуйте, Ikemefula, Вы писали:

I>Так самое интересное в этих "бла-бла-бла". Но как только появляется не только выборка, но и всякие оптимизации, что откуда правильно тянуть, а потом появляются модификации, и снова оптимизации, что где правильно модифицировать, то крайне сложно придумать ДСЛ. А просто рожать ДСЛ для убиения карточек толку мало

Все оптимизации должна делать платформа. Все вот эти вот "я лучше компилятора знаю, сколько у меня регистров" или "мне виднее, какой предикат селективнее" — повод улучшить платформу.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[29]: Языки общего назначения не имеют смысла!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.04.12 12:44
Оценка: :)
Здравствуйте, Sinclair, Вы писали:

I>>Так самое интересное в этих "бла-бла-бла". Но как только появляется не только выборка, но и всякие оптимизации, что откуда правильно тянуть, а потом появляются модификации, и снова оптимизации, что где правильно модифицировать, то крайне сложно придумать ДСЛ. А просто рожать ДСЛ для убиения карточек толку мало

S>Все оптимизации должна делать платформа. Все вот эти вот "я лучше компилятора знаю, сколько у меня регистров" или "мне виднее, какой предикат селективнее" — повод улучшить платформу.

Ну значит надо ждать хорошую платформу, в которой иммутабельность, ленивость, кеширование и тд вообще не расходуют никаких ресурсов, а до тех пор придется писать старым дедовским способом.
Re[26]: Языки общего назначения не имеют смысла!
От: WolfHound  
Дата: 25.04.12 13:24
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Осталось раскрыть что же ты вкладываешь в понятие "адекватных". Наверняка сюда ты хочешь притянуть "компиляторы" и "генераторы парсеров"

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

WH>>Ибо когда молодой специалист приходит на производство ему говорят, забудь все чему тебя учили и начинают учить по новой.

I>Это у вас так ? Сочувствую.
Это везде так. Причем в программировании особенно. Если студент не работал во время учебы, то он вообще писать не может.

WH>>По желанию левой пятки ответственных за подбор материала.

I>Соболезную твоему опыту.
У тебя есть другая информация? Поделишься?

I>Выйди на улицу и посмотри, какие проекты приходят в девелоперские конторы и в каких количествах. Отсюда станет ясно, что за запросы у отрасли и как их можно удовлетворить.

Заодно объясни, почему учат Виртовским поделкам? Какие запросы отрасли удовлетворяют?
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[27]: Языки общего назначения не имеют смысла!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.04.12 14:13
Оценка: +1 :)
Здравствуйте, WolfHound, Вы писали:

I>>Осталось раскрыть что же ты вкладываешь в понятие "адекватных". Наверняка сюда ты хочешь притянуть "компиляторы" и "генераторы парсеров"

WH>Нет. Но в институтах этому учат. Причем учат не правильно.
WH>После этой учёбы у людей либо появляется устойчивое мнение, что компиляторы это сложно. Либо что еще хуже случается дракон головного мозга. И они начинают хотеть заниматься факторизацией грамматик. А то, что существуют грамматики (не БНФ) которые и без этого работают они понять не в состоянии.

Ты о чем то о своём, наболевшем Ты похоже путаешь колмгоровскую сложность с когнитивной. Ты пойми простую вещь, с т.з. колмбгоровской сложности древние мировоззрения слижнее нынешних. С точки зрения когнитивной — всё наоборот.

Если чтото просто тебе, то это иллюзия, т.к. ты потратил годы на прокачку. Самое страшное для тебя — ты эту простоту никому и никогда не сможешь передать одной формулой и воплями "здесь всё просто а кто не понял тот дурак". Что бы знания распространялись, ктото должнен будет потратить столько же времени как и ты.

I>>Это у вас так ? Сочувствую.

WH>Это везде так. Причем в программировании особенно. Если студент не работал во время учебы, то он вообще писать не может.

Причина в том, что дать надлежащий уровень практики под силу только ведущим вузам планеты, вроде МИТ. Их штук 10 может и наберётся по всему миру. Этой горстки специалистов, что дают эти вузы, не хватит что бы закрыть потребность в индустрии хотя бы в лид-дев/архитекторах, не говоря о девелоперах.

WH>>>По желанию левой пятки ответственных за подбор материала.

I>>Соболезную твоему опыту.
WH>У тебя есть другая информация? Поделишься?

Делился раз пятьсот в этом форуме и в форуме образование. Уже подустал. Челы вроде тебя продолжают утверждать прямо противоположные вещи, например что де компилеры-грамматики это просто, и тут же людей, кто чего то не понял, обзывают разными словами или призывают гнать из индустрии.
Такого не бывает. Непонимание и отторжение это основные симптомы сложного направления. Если ты не понимаешь такой простой вещи, тебя нужно отстранить от форума ибо как и VladD2 похоронишь хорошее дело.

I>>Выйди на улицу и посмотри, какие проекты приходят в девелоперские конторы и в каких количествах. Отсюда станет ясно, что за запросы у отрасли и как их можно удовлетворить.

WH>Заодно объясни, почему учат Виртовским поделкам? Какие запросы отрасли удовлетворяют?

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

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

В образовании это проявляется в том, что ИТ-спецов учат чуть не где попало и все равно специалистов не хватает. Внимание, повторяю, не хватает !!! И это при том, что в программисты идут чуть ли не все подряд.

Отсюда ясно, что проблемы не у Виртовского направления. Люди, кому сложны виртовские вещи, сильно вряд ли освоят "грамматики (не БНФ)". Например я точно знаю, что подавляющее большинство выпускников во всех странах бывшего СССР не в состоянии работать не только с вещами вроде АСТ, но даже рекурсию осваивают с трудом.
До смешного доходит — распарсить строковое представление целого числа считается чуть не за верх совершенства.

Теперь про бизнес. Проекты приходят и успешно сдаются безо вских компиляторов-ДСЛ и многих других вещей. Внимание еще раз — проекты успешно сдаются. Успешность определяет сам бизнес. Соответственно и ВУЗы подстраиваются под этот поток заявок.

Отдельный момент — ДСЛ. Сочинение ДСЛ это крайне сложная задача. Если человек может решить бизнес-задачу, то это совершенно не значит, что он может сочинить ДСЛ для решения целого класса подобных задач. Даже если может написать фреймворк, то опять же не значит, что и ДСЛ сможет накидать.

И снова про разделение труда — как только оно более менее определится, снова уровень квалификации выпускников пойдет вверх. Это закон природы. Что бы он произошел, программухой должны заняться буквально необученые массы.

Собственно не все так плохо как кажется, раньше были просто программисты, сейчас от этой массы уже откололись всякие веб-кодеры, безопасники, админы, тестировщики, которые вобщем то тоже программисты. Т.е. разработчик ПО != программист.
Re[28]: Языки общего назначения не имеют смысла!
От: WolfHound  
Дата: 25.04.12 15:10
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Ты о чем то о своём, наболевшем Ты похоже путаешь колмгоровскую сложность с когнитивной. Ты пойми простую вещь, с т.з. колмбгоровской сложности древние мировоззрения слижнее нынешних. С точки зрения когнитивной — всё наоборот.

В каком месте гелиоцентрическая система сложнее геоцентрической?
Правильный ответ: Она во всех отношениях проще.
А книга дракона это луноцентрическая система. Ни понять. Ни запомнить.

I>Если чтото просто тебе, то это иллюзия, т.к. ты потратил годы на прокачку. Самое страшное для тебя — ты эту простоту никому и никогда не сможешь передать одной формулой и воплями "здесь всё просто а кто не понял тот дурак". Что бы знания распространялись, ктото должнен будет потратить столько же времени как и ты.

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

I>Причина в том, что дать надлежащий уровень практики под силу только ведущим вузам планеты, вроде МИТ. Их штук 10 может и наберётся по всему миру.

Да ладно. Нужно только программу правильную давать.

I>Такого не бывает. Непонимание и отторжение это основные симптомы сложного направления. Если ты не понимаешь такой простой вещи, тебя нужно отстранить от форума ибо как и VladD2 похоронишь хорошее дело.

Это не направление сложное.
Его дают сложно.
Разницу улавливаешь или как?
Это всё равно что принять за центр вселенной луну.
Прикинь какие траектории у небесных тел получатся...
Вот именно так и преподают компиляторы.

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

А что мешает этому учить на более актуальных инструментах?
Хотя бы на C#?

I>В образовании это проявляется в том, что ИТ-спецов учат чуть не где попало и все равно специалистов не хватает. Внимание, повторяю, не хватает !!! И это при том, что в программисты идут чуть ли не все подряд.

Их не хватает именно по тому, что они используют плохие методики и инструменты.
При правильном подходе число разработчиков можно сократить в десятки раз.

I>Например я точно знаю, что подавляющее большинство выпускников во всех странах бывшего СССР не в состоянии работать не только с вещами вроде АСТ, но даже рекурсию осваивают с трудом.

Вот только они так и ходят кругами по собеседованиям пока им это не надоедает.
А еще ноют по форумам, что на собеседовании гады заставляют написать 10 строчек кода. После того как они завалили задание уровня FizzBuzz.
По-хорошему институт им не должен давать диплом вообще. Ибо работать они всё равно не смогут.

I>Теперь про бизнес. Проекты приходят и успешно сдаются безо вских компиляторов-ДСЛ и многих других вещей. Внимание еще раз — проекты успешно сдаются. Успешность определяет сам бизнес. Соответственно и ВУЗы подстраиваются под этот поток заявок.

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

I>Отдельный момент — ДСЛ. Сочинение ДСЛ это крайне сложная задача. Если человек может решить бизнес-задачу, то это совершенно не значит, что он может сочинить ДСЛ для решения целого класса подобных задач. Даже если может написать фреймворк, то опять же не значит, что и ДСЛ сможет накидать.

Написать ДСЛ проще, чем написать фреймворк.
Просто по тому, что при написании фреймворка нужно решить две задачи.
1)Создать модель предметной области.
2)Натянуть модель предметной области на модель целевого языка так чтобы код не превратился в говно и работал не со скоростью улитки.

Причем вторая задача сложнее первой.

В случае с ДСЛ нам нужно решить только первую.
Вторую решать не надо. Ибо ДСЛ может генерировать любой говнокод. Ибо читать его всё равно никто не будет. Главное чтобы правильно и быстро работал.

I>И снова про разделение труда — как только оно более менее определится, снова уровень квалификации выпускников пойдет вверх. Это закон природы. Что бы он произошел, программухой должны заняться буквально необученые массы.

не пойдет. Ибо для того чтобы он пошёл в верх нужно менять преподов и программу.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[13]: Языки общего назначения не имеют смысла?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.04.12 15:52
Оценка:
Здравствуйте, Ikemefula, Вы писали:

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


Такое бывает редко. Обычно просто прячутся за терминологией, когда аргументы кончаются.
... << RSDN@Home 1.2.0 alpha 5 rev. 43 on Windows 7 6.1.7601.65536>>
AVK Blog
Re[14]: Языки общего назначения не имеют смысла?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.04.12 16:02
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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


AVK>Такое бывает редко. Обычно просто прячутся за терминологией, когда аргументы кончаются.


Странно, я такое вижу почти в каждом треде на этом форуме, а у тебя это редко
Re[29]: Языки общего назначения не имеют смысла!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.04.12 16:20
Оценка: +1
Здравствуйте, WolfHound, Вы писали:

I>>Ты о чем то о своём, наболевшем Ты похоже путаешь колмгоровскую сложность с когнитивной. Ты пойми простую вещь, с т.з. колмбгоровской сложности древние мировоззрения слижнее нынешних. С точки зрения когнитивной — всё наоборот.

WH>В каком месте гелиоцентрическая система сложнее геоцентрической?
WH>Правильный ответ: Она во всех отношениях проще.

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

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

Иначе, как через ручной труд понятия не прокачиваются. Вообще. Нет секретной формулы, котора сообщит знания того же паттерн-матчинга, если у юзер не решал руками все задачи на которые ориентирован ПМ.

I>>Если чтото просто тебе, то это иллюзия, т.к. ты потратил годы на прокачку. Самое страшное для тебя — ты эту простоту никому и никогда не сможешь передать одной формулой и воплями "здесь всё просто а кто не понял тот дурак". Что бы знания распространялись, ктото должнен будет потратить столько же времени как и ты.

WH>Нет. Годы я потратил на то чтобы перекопать мегатонны навоза и понять, как правильно делать.

Ну то есть ты напрочь отрицаешь ценность практики ?

WH>А самое страшное для тебя это то, что я эту самую простоту передаю всем, кто хочешь слушать.


Это иллюзия. Эти люди работают вместе с тобой над одной целью. Потому и происходит переход. В виде формулы — не выйдет.

WH>А тебя, конечно, ничего не передать. Ты ведь веришь что это все очень сложно.


Мне как бы понятно было по дракону и по вирту Лично я вижу в ДСЛ только инструмент для решения хорошо формализованых задач в конкретной области. У меня как то маловато таких

I>>Причина в том, что дать надлежащий уровень практики под силу только ведущим вузам планеты, вроде МИТ. Их штук 10 может и наберётся по всему миру.

WH>Да ладно. Нужно только программу правильную давать.

Тебе не кажется, что ты вещаешь про мировой заговор ? Я говорю про факты — должный уровень практики дают от силы десяток вузов. А у тебя какое то уникальное объяснение

WH>Это не направление сложное.

WH>Его дают сложно.

Если все мерить колмгоровской сложностью, то да, парадокс не разрешим

WH>Разницу улавливаешь или как?


Для кого просто, для тебя, для меня, для того, кто работает столько же сколько и ты, или для того, кто еле справляется с FizzBuzz ?

WH>Это всё равно что принять за центр вселенной луну.

WH>Прикинь какие траектории у небесных тел получатся...
WH>Вот именно так и преподают компиляторы.

Колмгоровская сложность не имеет никакого отношения к тому, насколько легко люди осваивают новое.

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

WH>А что мешает этому учить на более актуальных инструментах?
WH>Хотя бы на C#?

C# уже лет 5-6 как не новость для студентов. Где то 2й или 3й курс от силы.

I>>В образовании это проявляется в том, что ИТ-спецов учат чуть не где попало и все равно специалистов не хватает. Внимание, повторяю, не хватает !!! И это при том, что в программисты идут чуть ли не все подряд.

WH>Их не хватает именно по тому, что они используют плохие методики и инструменты.

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

WH>При правильном подходе число разработчиков можно сократить в десятки раз.


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

I>>Например я точно знаю, что подавляющее большинство выпускников во всех странах бывшего СССР не в состоянии работать не только с вещами вроде АСТ, но даже рекурсию осваивают с трудом.

WH>Вот только они так и ходят кругами по собеседованиям пока им это не надоедает.

Не только ходят, но еще и работают, при чем ЗП у них в среднем раз в 5 выше средней по стране. Завалил FizzBuzz — не беда, есть конкурентная фирма которая берет всех подряд и дает ЗП всего на 100$ меньше(а иногда, когда срочно, еще и больше).

WH>А еще ноют по форумам, что на собеседовании гады заставляют написать 10 строчек кода. После того как они завалили задание уровня FizzBuzz.

WH>По-хорошему институт им не должен давать диплом вообще. Ибо работать они всё равно не смогут.

Вот-вот. А этих людей подавляющее большинство и это я еще про китайцев и индусов не говорил.

Теперь жду внятных объяснений, как такому контингенту влить в голову грамматики, любые, какие тебе только нравятся.

I>>Теперь про бизнес. Проекты приходят и успешно сдаются безо вских компиляторов-ДСЛ и многих других вещей. Внимание еще раз — проекты успешно сдаются. Успешность определяет сам бизнес. Соответственно и ВУЗы подстраиваются под этот поток заявок.


WH>Только стоимость этих проектов в десятки раз больше чем могла бы быть.


Ликбез. Бюджет разработки хорошо если 10% от той суммы что приносит продукт. А если продукт это не софт, то разработка и вовсе меньше 1%.
Скажи, кто в своём уме будет оптимизировать ничтожно малое ?

WH>Но так как бизнес убедили, что по-другому быть не может вот этот бедный бизнес и платит за не пойми что.


Это снова теория заговора. С т.з. бизнеса наилучшие работники это
1. понимающие специфику бизнеса
2. направленые на результат
3. ответственные,дисциплинированые, предсказуемые

Странно, но здесь нет "ДСЛ"

I>>Отдельный момент — ДСЛ. Сочинение ДСЛ это крайне сложная задача. Если человек может решить бизнес-задачу, то это совершенно не значит, что он может сочинить ДСЛ для решения целого класса подобных задач. Даже если может написать фреймворк, то опять же не значит, что и ДСЛ сможет накидать.

WH>Написать ДСЛ проще, чем написать фреймворк.
WH>Просто по тому, что при написании фреймворка нужно решить две задачи.
WH>1)Создать модель предметной области.
WH>2)Натянуть модель предметной области на модель целевого языка так чтобы код не превратился в говно и работал не со скоростью улитки.

WH>Причем вторая задача сложнее первой.


Для написания фремворка не нужна глубокая формализация. Часто хватает тупой императивщины и низкоуровневых операций. Тупо набор функций, даже без внятных абстракций — фремфорк готов. Высунь нос из немерел — такими фремворками завалены чуть не все хостинги. Что бы выдать хотя бы качествуенноую детальную формализацию задачи, нужно набить руку в таких задачах.

WH>В случае с ДСЛ нам нужно решить только первую.


Прграммисты годами тренируются кодить. Соотвесвенно формализация проблемы закончится ровно с записью решения в виде кода. Самое главное преимущество — фремворк не надо выпиливать заранее. Можно наговнокодить а через два года как появится потребность, отрефакторить, покрыть тестами и сделать фремфорк.
Кроме того, для ДСЛ нужно заранее думать про оптимизации и все нюансы использования. С фремворком это не нужно — делаешь оптимизацию там где надо. То есть не нужна такая глубокая формализация. Да и фремворк не обязан покрывать все подряд.
Более того — начинать внедрять можно практически сразу, как только готов первый приемочный тест.

time to market — вот это рушит все надежды языко-писателей Потому ДСЛ интересен только в долгосрочной перспективе, если ожидается решение целой пачки задач, ане одной единственной.

I>>И снова про разделение труда — как только оно более менее определится, снова уровень квалификации выпускников пойдет вверх. Это закон природы. Что бы он произошел, программухой должны заняться буквально необученые массы.

WH> не пойдет. Ибо для того чтобы он пошёл в верх нужно менять преподов и программу.

А где ж ты их наберёшь ? Думаешь если абитуриенты не умеют дроби складывать, то став преподавателями, они автоматом получат божественный интеллект ?
Re[27]: Языки общего назначения не имеют смысла!
От: vdimas Россия  
Дата: 25.04.12 17:07
Оценка: :)
Здравствуйте, WolfHound, Вы писали:

WH>Песец. Полный. Даже комментировать тот феерический бред, что ты тут понаписал, не хочу.


Если правильно пользоваться терминологией и определениями, а не твоей свободной интерпретацией (типа неодноначности БНФ), то никакого бреда нет. Скорее всего, тебе просто нечего ответить.


WH>

WH>Это так, только если контекстно-свободная грамматика является неоднозначной. Т.е. если она не является на самом деле контекстно-свободной и мы располагаем лишь подмножеством контекстно-свободных правил из полной системы правил грамматики.

WH>Аааааааааа!!!!!!!!!!!!!! Жжжжжжжжееееееесть.

Да, пример был жесть. Ты повторно показал непонимание взаимоотношение грамматики языка и грамматики правил, по которой работает парсер этого языка. Почти никогда это отношение не является 1:1, иначе не нужен был бы семантический анализ.

Ты привел пример грамматики, в котором A и B заведомо неразличимы. Но, если требуется их различимость, значит была приведена неполная грамматика, или язык заведомо неоднозначный. Но последний вариант по дефолту отбрасывается, т.к. неоднозначные языки не имеют практической ценности, по крайней мере в кач-ве языков программирования. Ведь ты просто не сможешь их скомпилить ни в какой технике. Т.е. либо это была неполная грамматика языка, как в случае x * y, описанном здесь, либо таки A и B неразличимы, например, являются промежуточными нетерминалами (ты знаешь что это такое?) и могут быть без всяких последствий "склеены" в один в процессе приведения грамматики.

============
Тут уже разбирали как-то, что народ путает целевой формальный язык и грамматику парсера для него. Языки программирования зачастую контекстно-зависимые, но парсер будет работать скорее всего по неполной грамматике языка — по ее контекстно-свободной части, оставляя решение неоднозначностей семантическому анализатору. Насколько я помню, ты участвовал в том обсуждении, поэтому я хотел лишь напомнить, что ты и так должен был знать. Прочти теперь выделенную фразу еще раз — должно было полегчать.
Re[28]: Языки общего назначения не имеют смысла!
От: WolfHound  
Дата: 25.04.12 18:37
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Если правильно пользоваться терминологией и определениями, а не твоей свободной интерпретацией (типа неодноначности БНФ), то никакого бреда нет. Скорее всего, тебе просто нечего ответить.

У меня с терминологией все в порядке.
А вот ты не понимаешь, что БНФ может задать неоднозначную грамматику.
Но разбирающие грамматики (PEG, TDOP,...) проектируют так, чтобы задать неоднозначную грамматику было бы не возможно по построению.

WH>>

WH>>Это так, только если контекстно-свободная грамматика является неоднозначной. Т.е. если она не является на самом деле контекстно-свободной и мы располагаем лишь подмножеством контекстно-свободных правил из полной системы правил грамматики.

WH>>Аааааааааа!!!!!!!!!!!!!! Жжжжжжжжееееееесть.
V>Да, пример был жесть.
Он просто показал, что БНФ может задать неоднозначную грамматику.
Только и всего.
А твой гон про то, что неоднозначная КС грамматика не является КС грамматикой, просто противоречит всем определениям.

V>Ты повторно показал непонимание взаимоотношение грамматики языка и грамматики правил, по которой работает парсер этого языка. Почти никогда это отношение не является 1:1, иначе не нужен был бы семантический анализ.

Я про это говорю, уже не помню, сколько лет подряд.
И тут ты заявляешь, что я это не понимаю.
А еще я понимаю что то что приходится делать с БНФ для того чтобы скормить его генератору парсеров маразм.
А те генераторы, что жрут любую КС грамматику тормоза.

V>Ты привел пример грамматики, в котором A и B заведомо неразличимы.

Именно. Я привел простейшую неоднозначную грамматику.

V>Но, если требуется их различимость, значит была приведена неполная грамматика, или язык заведомо неоднозначный. Но последний вариант по дефолту отбрасывается, т.к. неоднозначные языки не имеют практической ценности, по крайней мере в кач-ве языков программирования. Ведь ты просто не сможешь их скомпилить ни в какой технике. Т.е. либо это была неполная грамматика языка, как в случае x * y, описанном здесь, либо таки A и B неразличимы, например, являются промежуточными нетерминалами (ты знаешь что это такое?) и могут быть без всяких последствий "склеены" в один в процессе приведения грамматики.

Разбирающим грамматикам весь этот бред не нужен.
Они однозначны по построению. Ты просто не сможешь задать неоднозначную разбирающую грамматику.
И работают как есть без всяких факторизаций.

Вся вина разбирающих грамматик в том, что они просты как пробка. И там исследовать нечего. Они просто работают. И как следствие на них не защитить диссертацию. Поэтому их научное сообщество и игнорирует.
То ли дело БНФ. Тут тебе и факторизации. И привидения. И построение разбирающих алгоритмов на основе порождающих правил. И куча тому подобного бреда.

Но мне на диссеры плевать.
Я создаю практичное решение.
Которым легко пользоваться.
Вот это грамматика разбирает текст и создает АСТ нужной формы.
Код генерируется по принципу, что вижу, то пою. Без трансформаций. Ручных или машинных.
Самое сложное, что тут происходит это превращение литералов в ДКА.
[Ast()]                                            Rule                        : Ast;
[Ast(LeftRule, RightRules)]                        SequenceRule                is Rule = Rule : 10 (Rule : 10)+;
[Ast(Op, Rule)]                                    NotRule                     is Rule = "!"s Rule : 20;
[Ast(Op, Rule)]                                    AndRule                     is Rule = "&"s Rule : 20;
[Ast(Rule, Op)]                                    OptionalRule                is Rule = Rule : 30 "?"s;
[Ast(Rule, Op)]                                    ZeroOrManyRule              is Rule = Rule : 30 "*"s;
[Ast(Rule, Op)]                                    OneOrManyRule               is Rule = Rule : 30 "+"s;
[Ast(Char)]                                        CharRule                    is Rule = CharLiteral;
[Ast(String)]                                      StringRule                  is Rule = StringLiteral;
[Ast(Open, Rule, Close)]                           RoundsRule                  is Rule = "("s Rule ")"s;
[Ast(Name, BP)]                                    CallRule                    is Rule = QIdentifier (":"s Number)?;
[Ast(Open, Rule, Semicolon, Separator, Close, Op)] ZeroOrManyWithSeparatorRule is Rule = "("s Rule ";"s Rule ")"s "*"s;
[Ast(Open, Rule, Semicolon, Separator, Close, Op)] OneOrManyWithSeparatorRule  is Rule = "("s Rule ";"s Rule ")"s "+"s;
[Ast(Name, Open, Rule, Close)]                     Scope                       is Rule = Identifier "{"s Rule "}"s;

Она однозначна по построению.
Она понимает левую рекурсию, приоритеты и ассоциативность из коробки.
Она поддерживает n-арные операторы. ChoiceTokenRule и SequenceTokenRule.
Она поддерживает изменение грамматики во время разбора. Например, встретили "using syntax Xml;". Получили поддержку ХМЛ внутри C#. Область видимости закончилась синтаксис ХМЛ отключился.

Ну и нахрена после этого нужен БНФ со всеми заморочками?

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

Зачастую? Тебе придется очень постараться, чтобы найти КС язык программирования. (Они конечно есть. Я даже регулярные знаю.) Ибо если у нас есть требование объявить перед использованием то это сразу минимум КЗ.

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

Вот пойди и почитай, что я там говорил.
Оно сильно разойдется с тем, что ты мне тут пытаешься пришить.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[30]: Языки общего назначения не имеют смысла!
От: WolfHound  
Дата: 25.04.12 19:24
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>С когнитивной тз она сложнее, например потому что юзер не в курсе про то что такое солнце. Для него солнце это шарик на синем небе. шарик и небо ему понятны. А все остальное он не может пощупать. Соответсвенно гелиоцентричекую ты такому юзеру в голову не вобьёшь до тех пор, пока он не потрогает все руками.

И как же мне это еще в детском саду объяснили то?

WH>>Нет. Годы я потратил на то чтобы перекопать мегатонны навоза и понять, как правильно делать.

I>Ну то есть ты напрочь отрицаешь ценность практики ?
Нет. Я говорю, что создание компиляторов на много проще чем принято думать.

WH>>А самое страшное для тебя это то, что я эту самую простоту передаю всем, кто хочешь слушать.

I>Это иллюзия. Эти люди работают вместе с тобой над одной целью. Потому и происходит переход. В виде формулы — не выйдет.
Какой еще формулы?
Какие люди?
Ты действительно думаешь, что все кто заходит в форму по немерле пишут компилятор немерла? Или тем более работают над Н2?
Над Н2 сейчас работает ровно один человек. И еще один статьи пишет.

WH>>А тебя, конечно, ничего не передать. Ты ведь веришь что это все очень сложно.

I>Мне как бы понятно было по дракону и по вирту Лично я вижу в ДСЛ только инструмент для решения хорошо формализованых задач в конкретной области. У меня как то маловато таких
Ох. Сколько еще раз повторить, что то, что написано в драконе не пригодно для практического применения?
Их методы заставляют делать в десятки, раз больше чем нужно и при этом даю посредственный результат.
Все что ты мог вынести из дракона это: Компиляторы это сложно.
И именно это ты и вынес. И пытаешься мне это втирать. Но я знаю, что это не так.

I>Тебе не кажется, что ты вещаешь про мировой заговор ? Я говорю про факты — должный уровень практики дают от силы десяток вузов. А у тебя какое то уникальное объяснение

Нет. Я вещаю про мировую глупость.

WH>>Это не направление сложное.

WH>>Его дают сложно.
I>Если все мерить колмгоровской сложностью, то да, парадокс не разрешим
Ох. В драконе когнитивная сложность тоже зашкаливает. Попробуй, объясни человеку что такое конфликт сдвиг/свертка.
Вперед.
При этом разбирающие грамматики можно объяснить за пять минут на пальцах.

WH>>Разницу улавливаешь или как?

I>Для кого просто, для тебя, для меня, для того, кто работает столько же сколько и ты, или для того, кто еле справляется с FizzBuzz ?
Те, кто не может осилить FizzBuzz программы писать не должены.
Совсем.
Даже если больше никого нет.
Ибо они просто физически не в состоянии это делать.
Способность к программированию она как музыкальный слух. Если она есть ее можно развить. Если ее нет, то хоть ты что делай. Человек программы писать не сможет.

I>C# уже лет 5-6 как не новость для студентов. Где то 2й или 3й курс от силы.

Ну, так и зачем нужны Виртовские поделки?
Вон тот же Лаптев с ними носится.

I>Начинать надо с качества абитуриентов. Мне уже не смешно, когда в программисты идут даже те, кто не сложение дробей не мог осилить.

I>У тебя что, есть волшебная палочка, которая сделает из такого абитуариента адского специалиста ?
Их нужно просто выкидывать из профессии. Прямо в институте.
А тем, кто может писать нужно дать инструменты, которые повысят их производительность.

WH>>При правильном подходе число разработчиков можно сократить в десятки раз.

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

I>Не только ходят, но еще и работают, при чем ЗП у них в среднем раз в 5 выше средней по стране. Завалил FizzBuzz — не беда, есть конкурентная фирма которая берет всех подряд и дает ЗП всего на 100$ меньше(а иногда, когда срочно, еще и больше).

Ты что этим доказать то хочешь?
То, что есть идиоты, которые берут на работу тех, кто писать не может?
Не надо. Я и так знаю, что они есть.

I>Вот-вот. А этих людей подавляющее большинство и это я еще про китайцев и индусов не говорил.

То-то сначала туда все ломанулись, а потом поняли что себе дороже. Это я про тех, кто продукт делает, а не бабло пилит.

I>Теперь жду внятных объяснений, как такому контингенту влить в голову грамматики, любые, какие тебе только нравятся.

Никак. Их нужно разогнать.
Совсем.
Ибо им в голову вообще ничего "влить" нельзя. У них просто нет нужного раздела головного мозга.

I>Ликбез. Бюджет разработки хорошо если 10% от той суммы что приносит продукт. А если продукт это не софт, то разработка и вовсе меньше 1%.

I>Скажи, кто в своём уме будет оптимизировать ничтожно малое ?
Ох. И почему же в машинных кодах то не пишут?
А по тому, что в машинных кодах просто ничего не напишешь. Люди такое не осилят.
Для этого и придумали ЯВУ.
Но и у ЯВУ есть свой придел сложности после которого в проект приходит жирная полярная лисичка.
Поднять предел сложности проекта можно только еще сильнее повысив уровень инструмента.

WH>>Но так как бизнес убедили, что по-другому быть не может вот этот бедный бизнес и платит за не пойми что.

I>Это снова теория заговора. С т.з. бизнеса наилучшие работники это
I>1. понимающие специфику бизнеса
I>2. направленые на результат
I>3. ответственные,дисциплинированые, предсказуемые
Не могущие написать FizzBuzz но упорно идущие к цели...

I>Для написания фремворка не нужна глубокая формализация.

Ты не поверишь. Для ДСЛ тоже.

WH>>В случае с ДСЛ нам нужно решить только первую.

I>Прграммисты годами тренируются кодить. Соотвесвенно формализация проблемы закончится ровно с записью решения в виде кода. Самое главное преимущество — фремворк не надо выпиливать заранее. Можно наговнокодить а через два года как появится потребность, отрефакторить, покрыть тестами и сделать фремфорк.
Так с ДСЛ все тоже самое.
Ты посмотри на историю того же
https://github.com/rampelstinskin/ParserGenerator
И его предка, из которого я его итерациями переделал.
https://github.com/rsdn/nemerle/tree/4855110cb34aa16ea6c5f481ee479bfe6513b706/snippets/peg-parser

I>Кроме того, для ДСЛ нужно заранее думать про оптимизации и все нюансы использования.

Не нужно.
Это все допиливается по ходу дела.
Особенно оптимизации.
Которые возможно вообще делать не придется. Если и так производительности хватает.

I>С фремворком это не нужно — делаешь оптимизацию там где надо. То есть не нужна такая глубокая формализация. Да и фремворк не обязан покрывать все подряд.

I>Более того — начинать внедрять можно практически сразу, как только готов первый приемочный тест.
Типа с ДСЛ это не так.
Я же говорю, ты испорчен драконом.
Все то, что ты говоришь можно и ДСЛем. Причем намного проще и быстрее.

I>time to market — вот это рушит все надежды языко-писателей Потому ДСЛ интересен только в долгосрочной перспективе, если ожидается решение целой пачки задач, ане одной единственной.

При правильных инструментах и методиках тут ДСЛи на высоте.

I>А где ж ты их наберёшь ? Думаешь если абитуриенты не умеют дроби складывать, то став преподавателями, они автоматом получат божественный интеллект ?

Я уже сто раз повторил. Выгонять не первой же сессии. Или еще лучше на вступительных экзаменах.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.