|
|
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
D129если дать такое же краткое описание структурному программированию, или функциональному, то разница в этих описаниях будет очевидна, в виду разности концепций. Ой опиши а, очень интересно послушать Сравнивать нужно сравнимое, а не мягкое с теплым. Вот взять хоть Схему. И тебе функциональная и структурная :) P.S. А статья вызывает в памяти ассоциации с небезысвестным ЧАЛом (у которого доска на стене висит криво). Чуть более интеллектуальная маниловщина ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 08:41:52 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) Ой опиши а, очень интересно послушать Гугл еще работает сегодня. Я проверил. :-) Gluk (Kazan)Сравнивать нужно сравнимое, а не мягкое с теплым. Вот взять хоть Схему. И тебе функциональная и структурная :) Если "мягкое" компилируется в код на том же ассемблере что и "теплое" то можно их сравнивать. Gluk (Kazan) P.S. А статья вызывает в памяти ассоциации с небезысвестным ЧАЛом (у которого доска на стене висит криво). Чуть более интеллектуальная маниловщина Не совсем согласен... пытаться придумать что-то другое (пусть даже не новое) - это позитив. Получится, не получится - будущее покажет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 11:22:44 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
D129Ну вот, когда я даю имена методам класса Shuttle - тележка, например, я и создаю этот новый, предметный язык, определяя слова и действия и операторы для конкретной предметной штуки. А делаю я это на базовом языке, необходимость которого вы признаете, и который понимает компилятор, и это или VB, или С++ или С#. krvsa .... все это компилятор сводик к одинаковому объектному коду... Это мне напоминает мышление реляционных фундаменталистов, которые отождествляют моделирование данных с реляционной моделью. Они считают, что если что-то можно выразить на SQL, то значит ничего нового в этом нет. (Но парадокс, что реляционные догматики одновремнно отрицают, что если SQL можно выразить на ассемблере, то в реляционной модели ничего нового нет.) В общем, по мнению Глюка_Казанского и др. реляционной бRатвы, земля держится на пяти реляционных слонах и трех реляционных китах и доказывать им что земля круглая бесполезно Против этого есть только одно возражение: если ЯОП можно свести к ООП, процедурном или ФП, то это не значит, что в нем нет ничего нового. Точно так же существует множество физических дисциплин, хотя фундаментально все они могут сводиться к квантовой механике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 11:27:29 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
D129 Gluk (Kazan) Ой опиши а, очень интересно послушать Гугл еще работает сегодня. Я проверил. :-) Гугл четал - многа букв. Мне твое мнениё интересно ;) D129 Gluk (Kazan)Сравнивать нужно сравнимое, а не мягкое с теплым. Вот взять хоть Схему. И тебе функциональная и структурная :) Если "мягкое" компилируется в код на том же ассемблере что и "теплое" то можно их сравнивать. И что из них получилось теплее, тьфу ты, мягче ??? (ты мене совсем запутал) По буквам: Понятия СТРУКТУРНОЕ и ФУНКЦИОНАЛЬНОЕ ортогональны ничто не запрещает ФУНКЦИОНАЛЬНОМУ быть СТРУКТУРНЫМ Стало быть их ПРОТИВОПОСТАВЛЕНИЕ наводит на нехорошие мысли (может ты все таки императивное поимел ввиду ?) D129 Gluk (Kazan) P.S. А статья вызывает в памяти ассоциации с небезысвестным ЧАЛом (у которого доска на стене висит криво). Чуть более интеллектуальная маниловщина Не совсем согласен... пытаться придумать что-то другое (пусть даже не новое) - это позитив. Получится, не получится - будущее покажет. Угу, а протуливать свои наколенки - это немножко по другому называится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 11:31:41 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
чалНо парадокс, что реляционные догматики одновремнно отрицают, что если SQL можно выразить на ассемблере, то в реляционной модели ничего нового нет. SQL та на ассемблере канечно можна, да токма ломаить свой оптимизатор писать Я за разделение труда. Зачем кажный раз СНОВА и СНОВА изобретать лисапед ??? А вообще оно конечно, если мы чего-то (или кого-то) НЕ ПОНИМАЕМ, для себя спокойнее считать это парадоксальным (а то устои мировоззрения можно пошатнуть, а это уже опасно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 11:38:39 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
авторГугл четал - многа букв. Мне твое мнениё интересно ;) Спасибо, приятно конечно, что мое мнение небезразлично, но подозреваю подвох... :-/ :-) боюсь что тоже получится "многа букав" ... А в общем, я понимаю это так: чистый машинный код - неструктурный, непредметный, нечитаемый (хотя я до сих пор помню что 65 - это извлечь из 5 регистра в стек (ИП5 на ассемблере Б3-34) а 45 - записать из стека в 5 регистр (П5) в одной игровой програмке использовали это 65 и для вызова из регистра, и как адрес перехода на 65 шаг программы (такой выкрутас был возможен только в одном месте программы и давал экономию в 2 ячейки памяти, что при общем количестве 98 было критично) но Goto - отдыхает.) Обертка над ним - Ассемблер Над ассемблером - неструктурные языки программирования. Я программировал на нескольких, но не на IBM, и приводить названия не буду. Их принципиальное отличие - началось управление типами данных. то есть появились числа с плавающей точкой, строки... Это было ново, хотя и было ограничением и заставляло разрабатывать стандарты... Структурные языки - навели порядок в спагетти-коде, и в глобальных переменных, благодаря введению понятия область видимости. Это было ново, и решало проблемы больших программ. ООП - Структуры данных объединили с методами(функциями) в одну связку и назвали это дело классом.В комплекте с динамическим выделением памяти, разработанном на предидущем этапе - это давало возможность множить код программы во время выполнения и выполнять один и тот же код паралельно, синтаксически разделяя используемые данные. В структурном языке пришлось бы создать массив - и каждому процессу дать диапазон в этом массиве. Вот это и было новое и самое полезное отличие. Про способы написания программ, в которых у меня нет практического опыта (не писал я на Haskell) говорить не буду - не имею собственного мнения. Ну а если пофантазировать то, следующим шагом будет не просто умножение заранее определенного кода, а его динамическое написание (самодописывающаяся программа). Может быть, ЯОП - какой-то шаг на пути к этому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 13:32:02 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Ну IMHO неправильно ты это понимаешь :) Если очень грубо то есть (я знаю) три способа писать программы: 1. Императивный (Algol, Basic, Pascal, C, различные ассемблеры и т.п.) 2. Функциональный (LISP, Haskell и менее известные языки) 3. Логический (Prolog и наверняка что то еще) Разбивка по языкам весьма условна, LISP к примеру поддерживает императивное программирование, а в C++ нашелосьмного уголков для функционального. Несколько особняком стоит логическое, но в том же LISP-е оно прекрасно реализуется :) Разница очень упрощенно: 1. Описывают последовательность действий изменяющих состояние неких объектов 2. Программирование без побочных эффектов (например нет присваивания) 3. Программа сама ищет возможные пути решения исходя из некоей декларации Структурное программирование, родоначальником которого является Algol, помимо привычных C и Pascal было унаследовано Схемой (диалект Lisp-а) в некотором роде более функциональной чем Common Lisp (IMHO превратившийся за годы своего существования в помойку). Так что противопоставлять его функциональному никак не следует. Что касается ООП в нем вообще нет какой-то глубокой теории. Кроме того ООП может пониматься ОЧЕНЬ И ОЧЕНЬ по разному (скажем в Smalltalk-е и C++) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 14:26:55 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Насчет самодописывающихся программ говорят лисп хорош. Там уже давно программы пишут программы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 14:32:04 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
да совсем забыл :) "самодописывающиеся" программы это метапрограммирование ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 14:38:17 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
как всегда рулит С++ Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. (с) GameDev.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2008, 03:13:18 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Lepsikкак всегда рулит С++ ... ты хотел сказать Си ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2008, 07:26:17 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) Lepsikкак всегда рулит С++ ... ты хотел сказать Си ? В данном случае С, но это я еще до примеров метапрограмирования не дошел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2008, 20:21:36 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Lepsik Gluk (Kazan) Lepsikкак всегда рулит С++ ... ты хотел сказать Си ? В данном случае С, но это я еще до примеров метапрограмирования не дошел. Ты знаешь язык на котором нельзя писать непонятно ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2008, 09:20:41 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Lepsikкак всегда рулит С++ Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2008, 11:20:22 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Статья излагается понятно, вплоть до этого места: автор Чтобы избежать проблемы выбора, мы решили делать в MPS сразу все. Сначала вы определяете целевой язык в MPS, используя язык структуры. Этот целевой язык должен иметь прямое, «один-к-одному» , отображение в целевой формат. К примеру, если целевой формат – машинный код, в MPS определяется целевой язык, представляющий машинный код; если целевой формат – исходники на Java, определяется Java-подобный целевой язык. Целевой язык не обязан поддерживать все возможности целевого формата, достаточно прямого отображения всех возможностей, которые вам нужны. и тут же автор...обратим внимание на более интересную фазу трансформации. По сути, проблема сведена к тому, чтобы перевести модель с одного языка на другой. Но исходный и целевой языки могут отличаться радикально, что усложняет трансформацию – например, если один узел исходного языка должен отобразиться на множество узлов целевого, разбросанных по целевой модели. А это уже не один к одному... И кроме того, а если один узел не просто отображатеся на множество узлов целевого языка, но и за счет взаимовлияния отображается неоднозначно, в зависимости от других "узлов". Далее вообще непонятно. Чем Итеративный подход отличается от Шаблонов.... Как участвует (еще один) язык запросов модели... Более менее конкретно описываются шаблоны. Но это и так есть во множестве реализаций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2008, 11:30:53 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
to All: Вы то-ли не читали, то-ли перевод там хромает (я на русском не читал), то-ли еще что-то. MPS/LOP/... - это технология позволяющая уменьшить разрыв между мышлением человека и "мышлением" компютера. Под программой понимается любое однозначное решение задачи, а вовсе не инструкции процессору или селекты. Все эти OOP, AOP, OOD/OOP, GOF Design Patterns, SQL, ... призваны решить только одну задачу - упростить создание ПО. Ну так вот, LOP развивает эту концепцию далее. авторЭто хорошо, когда и в преклонном возрасте человек не теряет юношеского максимализма и задора P.S. Опыт приходит только с возрастом P.P.S. Но гораздо чаще возраст приходит одинНу сначала бы подумал про кого ты так говоришь. Этот чел - создатель Intellij IDEA. Кто с ней сталкивался и помнит как выглядили другие IDE на время ее выхода, тому думаю все ясно. Martin Fowler где-то упоминал, что IDE можно разделить на те, которые были до выхода IDEA и после. Сочуствую, что к тебе опыт прийдет тогда, когда будет уже не нужен. автор Мне всегда представлялось, что в программировании - процессор - это уровень атомарности. Компилятор пишется для чего? Для конкретного процессора. Следовательно, пока не появится новый процессор, то что бы вы не писали на языке высокого (или сверхвысокого) уровня, .... все это компилятор сводик к одинаковому объектному коду...Ну так и пиши на обьектном коде, нафиг тебе вообще языки программирования? Ты статью вообще читал? Там как раз оч. подробно расписано это заблуждение, что "программирование" - это "написание инструкций для процессора", хотя многие так и думают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2008, 00:02:56 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
private авторЭто хорошо, когда и в преклонном возрасте человек не теряет юношеского максимализма и задора P.S. Опыт приходит только с возрастом P.P.S. Но гораздо чаще возраст приходит одинНу сначала бы подумал про кого ты так говоришь. Этот чел - создатель Intellij IDEA. Кто с ней сталкивался и помнит как выглядили другие IDE на время ее выхода, тому думаю все ясно. Ну да конечно. Он же небожитель и посему какает исключительно бабочками. Собственно высказывание про задор, разумеется, больше не к нему относится, а к разнообразным вчерашним студентам, по верхам нахватавшимся высказываний авторитетов (у которых что то свое на уме, далекое и не всегда понятное и жизненное) и поднимающих знамена холиваров за нейронки внутре, ООБД, трехзвенки и прочий бред. иногда с юношеским задором, но порой и со старческим маразмом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2008, 09:55:00 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
privateЭтот чел - создатель Intellij IDEA. Кто с ней сталкивался и помнит как выглядили другие IDE на время ее выхода, тому думаю все ясно. Я помню много чего. У IDEA была кучка шумных фанатов, приписывавших ей всевозможные воображаемые достоинства. Но, судя по их активности тут в форуме, нелепая мода проходит. Популярные IDE никогда не были хуже, чем IDEA и вроде ничего от неё не заимствовали. Но это тема для обсуждения в форуме по Java. Насчёт ЯОП. Автор темы напрасно предположил,ЯОП - общеизвестное или важное понятие. Плохая статья в плохом журнале, только и всего. Нету его, в общем. Вот, сейчас посмотрел даваемую в статье ссылку по ЯОП http://www.jetbrains.com/mps/ "Проект MPS всё ещё в состоянии исследования". Последняя приведённая новость относится к 16 июня 2005 г. А есть ли в болтологии о ЯОП что-то разумное? Кажется, я обнаружил и такое: автор Если мы хотим сделать создание языков легким, нужно отделить представление и хранение программы от самой программы. Мы должны хранить программы прямо в виде структурированного графа, что дает возможность вносить любые дополнения в язык. Временами текстовое хранилище вообще не нужно. Хорошим примером может послужить Excel. 99% пользователей совершенно все равно, в каком формате хранятся данные – в случае чего, всегда есть импорт и экспорт. Единственная причина использования текста – отсутствия редактора лучшего, чем текстовый. Но это поправимо. Разумным тут кажется деление программы на модули с описанием связей между модулями. На этом разумное кочается, т.к. описание связей делается задачей ЯОП, а его не существует. Между тем, в популярных IDE - Eclipse и Netbeans - она решается. (Поэтому они - не только IDE, как IDEA, а ещё и "платформы для разработки приложений", то есть программ из модулей, причём Eclipse и Netbeans отвечают за организацию связей между модулями (ну и предоставляют готовые модули). Итак, кто не говорит (разработчики Eclipse и Netbeans), тот делает. А кто говорит, тот не делает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2008, 12:22:18 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Farus А это уже не один к одному... ИсходныйЯзык <- 1 --- n -> ЦелевойЯзык <--1--1--> ЦелевойФормат ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2008, 17:21:53 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
Partisan MИтак, кто не говорит (разработчики Eclipse и Netbeans), тот делает. А кто говорит, тот не делает. Есть даже те кто не понимает, а говорит. Навпример в данном случае речь шла о том, что надо отделить модель языка от хранения и представления. То есть хранить в некоем формате, не обяательно текстовом, а представлять в виде текста, схемы и т.д. То есть IDE получается как некий редактор для AST. При чем тут модульность Eclipse? Кстати, насчет "не делает" вы не правы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2008, 17:27:15 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
_модПодход "сделай языки и решай на них задачу" абсолютно правильный и далеко не новый - собсно любой профи так и работает. Хорошие средства саморасширения были еще в клиппере. Так и вспоминается незабвенный Чарльз Мур (Charles "Chuck" Moore) с его Фортом (Forth). Человек сделал язык под свои задачи, и хотя это был скорее "стековый язык среднего уровня", ставший потом метакомпилятором, его возможности по теме поставленного вопроса (приближение синтаксиса языка к предметной области задачи) демонстрируется с помощью этого языка на раз-два... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2008, 19:44:40 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
_модПодход "сделай языки и решай на них задачу" абсолютно правильный и далеко не новый - собсно любой профи так и работает. Хорошие средства саморасширения были еще в клиппере. Я бы сказал, что тут LISP впереди планеты всей. Почитайте про DSL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2008, 11:08:58 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
MasterZivЯ бы сказал, что тут LISP впереди планеты всей. Почитайте про DSL. В принципе, да. Но DSL - это целое направление для разных языков (например logix для питона). У клиппера один из первых DSL - простой и мощный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2008, 12:46:13 |
|
||
|
Языково-ориентированное программирование
|
|||
|---|---|---|---|
|
#18+
_мод MasterZivЯ бы сказал, что тут LISP впереди планеты всей. Почитайте про DSL. В принципе, да. Но DSL - это целое направление для разных языков (например logix для питона). У клиппера один из первых DSL - простой и мощный. А M4 для sendmail-а точно не раньше ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2008, 13:15:28 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=35242588&tid=1344806]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
210ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
88ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 581ms |

| 0 / 0 |
