OberonCore
https://forum.oberoncore.ru/

Генератор структурированного кода следующего поколения Libra
https://forum.oberoncore.ru/viewtopic.php?f=93&t=937
Страница 1 из 1

Автор:  Сергей Прохоренко [ Воскресенье, 06 Апрель, 2008 12:16 ]
Заголовок сообщения:  Генератор структурированного кода следующего поколения Libra

Часть приверженцев Оберона и Блэк-Бокса явно увлеклась Драконом.

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

Разработчик Libra молодой бывший харьковчанин Кирилл Осенков сменил вторую родину Германию на третью - США и сейчас работает в группе C# IDE Microsoft в Редмонде. Поэтому, весьма возможно, скоро мы увидим возможности Libra интегрированными в MS Visual Studio, а Блэк-Бокс будет вынужден догонять или останется на обочине навсегда. Будет жалко, если вместе с Блэк-Боксом на обочине останется и Оберон. Примечательно, что сайт Кирилла о генераторах структурированного кода удален из интернета.

На посты тех, кто как обычно не удосужится прочитать документы по приведенным ссылкам, отвечать не буду:

http://www-pscb.informatik.tu-cottbus.de/forschung/libra.ppt
http://www.osenkov.com/diplom/KirillOsenkovDiplom.pdf

Автор:  Илья Ермаков [ Воскресенье, 06 Апрель, 2008 13:04 ]
Заголовок сообщения:  Re: Генератор структурированного кода следующего поколения Libra

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


Прочитал. Собственно генератора не увидел. Увидел эргономичную форму работы с исходником. Только и всего...
Ну что за непоколебимая вера в магию формы, в волшебные примочки... Сколько не эргономизируй представление для одной модели (а разумной и обоснованной степени это, несомненно, важно), всё равно за её рамки не выпрыгнешь. А в первую очередь важно, как мы думаем. В каких категориях, каких паттернах (в смысле Info21), как мы умеем видеть старые и создавать новые паттерны в новых задачах... А инструмент должен бережно и послушно это поддерживать. Но это идеал, а на практике сегодня приходится добиваться того, чтобы этот инструмент не мешал (т.к. массовые все сплошь мешают). (Вот Ткачёв с Информатикой-21 поставил целью продвинуть в образование такой НЕ МЕШАЮЩИЙ инструмент. Чтобы детей и студентов не калечили собственными уродствами информатики...)

Так вот, возвращаясь к соотношению представления и модели. Если бы Вы обращали более внимание на вторую, а не на первое (хотя я допускаю, что Вам не хватает некоторых теор. знаний по программированию), то не ставили бы и близко паронджановский Дракон и осенковскую Либру. Первый - это сильная модель, в первую очередь. И уже над ней эргономичное представление. Выход в двумерное пространство, от текста к чертежу тоже нужно с умом сделать. Вот второе измерение Вам "дадено", но как Вы его будете использовать? Как оно будет семантически нагружено? Если не начать с этого вопроса, то окажется, что второе измерение будет использовано только под навороты представления - рюшки и боксы всякие... У Паронджанова же оно полностью семантически задействовано. Потому и речь о двумерном расширении Дейкстры. Получается выход с действительной прямой в комплексную плоскость.... А все до одного ваши "примеры более перспективные, чем Дракон" - это обвешивание прямой побрякушками... гырлянда.

Цитата:
и сейчас работает в группе C# IDE Microsoft в Редмонде. Поэтому, весьма возможно, скоро мы увидим возможности Libra интегрированными в MS Visual Studio, а Блэк-Бокс будет вынужден догонять или останется на обочине навсегда.

За Microsoft наблюдать интересно, конечно. Можно даже делать ставки, когда и в каком порядке они реализуют что-то, что было ясно уже лет 20 назад... "Эстоооонская гончая - выведена для загона раненых улиток" (С). Более быстрые внезапно оглядываются и видят, что "отстали". И кидаются назад "догонять".

Были ваши "Либро-структурирование кода" ещё в конце 80-х. По-моему, в реализации Модулы-2 на каком-то семействе машин. Там не было чистого посимвольного текста, а на экране исходник набирался сразу "кубиками" из синтаксического дерева.

Автор:  GlSal [ Воскресенье, 06 Апрель, 2008 18:52 ]
Заголовок сообщения:  Re: Генератор структурированного кода следующего поколения Libra

Была такая Модула. Народ сначала повизжал от восторга, а потом перешел на TopSpeed.

Автор:  Илья Ермаков [ Воскресенье, 06 Апрель, 2008 23:58 ]
Заголовок сообщения:  Re: Генератор структурированного кода следующего поколения Libra

Если не ошибаюсь - ЕС-ЭВМовская?

Автор:  batyrmastyr [ Понедельник, 19 Май, 2008 09:54 ]
Заголовок сообщения:  Re: Генератор структурированного кода следующего поколения Libra

Сергей Прохоренко писал(а):
Часть приверженцев Оберона и Блэк-Бокса явно увлеклась Драконом.

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

Вы помнится выкладывали на форуме ТЗ по подобному ГУИ-навороту.
Но, насколько я понял, эта Либра реализует около 10% того функционала (причем, самые легкие в реализации и бесполезные проценты) - конструкции задаются графически, но никакой помощи ввода содержания нет (т.е. писать "i++" надо самому, если "i" нигде не задано, то ругань будут потом).
Собственно генерация там делается простенькая и на "следующее поколение" никак не тянет.

К слову, нечто подобное я видел (лет 5 назад) в программке-автоответчике для dial-up модемов (только претензий на "генератор нового поколения" там небыло).
Цитата:
"Эстоооонская гончая - выведена для загона раненых улиток" (С).

Имхо, эта гончая с трудом загонит убитую утку.

Автор:  Сергей Прохоренко [ Понедельник, 19 Май, 2008 13:53 ]
Заголовок сообщения:  Re: Генератор структурированного кода следующего поколения Libra

Я не думаю, что MS спешит выложить на всеобщее обозрение самые свежие свои разработки. Возможно, что уже не 10%, а 20% сделано. Главное, что она уже вступила на эту дорогу, и ей придется пройти по ней не 20%, а все 100%. Кстати, у MS есть ещё какая-то разработка по древовидному программному коду - очень близкая по духу.

В любом случае, мне кажется, нет смысла злорадствовать, если в правильном направлении идет даже далеко не самая любимая (по заслугам) и не самая расторопная компания.

Автор:  Промпер [ Среда, 03 Июнь, 2009 12:46 ]
Заголовок сообщения:  Re: Генератор кода из операторов или случайного кода

Сделайте перебор классных алгоритмов
Сначала я понял что можно написать программу решения всех
примеров в цикле от 1 до 4 знаков +-*/ c числами заданными
вначале X2=10 X3=50 X4=-25
X-подставляеться от -50 до 100
prim=X+-*/X2+-*/X3+-*/X4
сначало пример без скобок, потом со скобками
prim=(X+-X2)+-*/(X3+-X4)
:)

[color=#4040FF]После решения всех примеров получиться массив(>20 МегаБайт) в
котором можно по индексам находить результат.

Но это еще не все дальше я понял что можно представить функции и
примеры и операторы как числа, тоесть от 1 до 5 операторы(1..4 ФУНКЦИЙ) и т.д.
1 if [c else]
2 for [c break]
3 do while [или while do]
4
switch()
{
0:; //запускаеться function1..1000000
break;
1:; // function1..1000000
break;
//..до 10
10:; // function1..1000000
//все остальные разнообразные значения которые принимала переменная
else:; //function1..1000000
break;
}

можно сделать вариант с решением всех примеров с нужными
функциями С++ и тогда можно после выполнения их всех искать в
массиве по отсортированным индексам =

(числа которые были перед кодом)
1строка пример
2строка function
3строка пример
(числа которые стали в конце)[/color]
:D Но намного лучше выполнить все алгоритмы в цикле до 6 вложеностей if и 4 else и после каждой можно запускать(или хотть какую другую или сакмому написать) стандартную функцию рисования
многоугольников из массива и ждите когда они все нарисуються >1
минуту или по линиям что-бы найти хорошие узоры или похожие на
введеные мышкой.
ввести переменную Cx-нажатие на клавиши и управлять алгоритмом курсором.
Если сделать все алгоритмы правильно то они будут все делать и сделать древовидное дерево.
Потом запускать интересные FUNCTIONы в цикле go to.


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

function randomcode(a;b;c;d;e;f) // или int abc[6]
{
// обнуление
randomPRIMER;
if(a>b){randomPRIMER;}
randomPRIMER;
randomPRIMER;
if((a>b)and(c<d)){randomPRIMER;
}else{
randomPRIMER;
}
if((a>b)and(c<d)){if((a>d)and(d==b)){randomPRIMER;
}else{
randomPRIMER;
}randomPRIMER;
}else{if((a==b)and(c<d)){randomPRIMER;
}else{
randomPRIMER;
}
randomPRIMER;
}

}
и записать сгенерированный код в файл программы '*.cpp'
или попробовать применять его для изменения чисел прямо в программе.


Вложения:
Комментарий к файлу: в Delphi 7 лучше сделать в switch операторы
перебора примеров и функций.zip [866.59 КБ]
Скачиваний: 344

Автор:  TAU [ Четверг, 04 Июнь, 2009 13:15 ]
Заголовок сообщения:  Re: Генератор структурированного кода следующего поколения Libra

Сергей Прохоренко писал(а):
Разработчик Libra молодой бывший харьковчанин Кирилл Осенков сменил вторую родину Германию на третью - США и сейчас работает в группе C# IDE Microsoft в Редмонде...

На посты тех, кто как обычно не удосужится прочитать документы по приведенным ссылкам, отвечать не буду:

http://www-pscb.informatik.tu-cottbus.de/forschung/libra.ppt
http://www.osenkov.com/diplom/KirillOsenkovDiplom.pdf

Почитал по ссылкам. У автора чувствуется ясный ум и несомненные способности.

Автор:  vladfind [ Понедельник, 07 Сентябрь, 2009 23:56 ]
Заголовок сообщения:  Re: Генератор структурированного кода следующего поколения Libra

GlSal писал(а):
Была такая Модула. Народ сначала повизжал от восторга, а потом перешел на TopSpeed.


TopSpeed -> Clarion

Система, которая явно не получила той популярности в России, на которую она обязана была претендовать!

Что нужно заказчику? Только высказал идею и вот оно воплощение на экране монитора в компьютерной системе.

Clarion - самая быстрая система создания работающих (!) компилированных приложений. И что народ нашёл в Delphi? Имеет на борту язык программирования Clarion и факультативно можно вставлять и компилировать вставки в основной код на С++, Modula-2. Имеет подсистему управление проектов в целом по дизайну. "Легким движением руки брюки превращаются... в шорты". Жаль, очень жаль что не учат наших студентов широкому взгляду на жизненный путь программ.

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

Кстати, инициаторы и разработчики TopSpeed, также взращены идеями Вирта.

Согласен с Ильей. Его цитата " Инструмент не должен мешать",- полностью мною разделяется. Добавлю. Мешать не только программить, но и понимать реализацию задачи. Сейчас контроль над проектами на языках монстрах программистом полностью потерян! И это на наблюдается на "мелких IDE", например на компиляторах С, С++ для микроконтроллеров. Достаточно включить не ту оптимизацию и проект разрушается на глазах, не собирается, возникает хвост артефактов. Даже в сообществе свободного программного обеспечения с языком gcc и инструментами мы играем в рулетку и вероятность получения положительного результата.

Автор:  prospero78 [ Воскресенье, 11 Сентябрь, 2016 22:04 ]
Заголовок сообщения:  Re: Генератор структурированного кода следующего поколения L

Прошло немного лет))
Значит, говорите, молодой и перспективный? BlackBox будет догонять?))))

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/