Moo Edit как среда разработки для ЭКВМ

Развивая тему простой среды разработки для ЭКВМ, обращаю внимание почтенной публики на текстовый редактор mooedit или medit: http://mooedit.sourceforge.net/ .
Написан с использованием gtk, внешне напоминает gedit, но в отличие от последнего не пришит намертво к Gnome, и неплохо чувствует себя в Windows. Для подсветки синтаксиса использует тот же gtksourceview, что и gedit ,консольные инструменты (например, mkl2mkp) добавляются так же просто, как и в gedit.
Для включения подсветки достаточно скопировать эти http://pmk.arbinada.com/node/415 lang и xml файлы в /usr/share/moo/language-specs/ или c:/Program Files/medit/share/moo/language-specs ( Ubuntu Linux и Windows соответственно) в настройках выбрать цветовую схему - MK152.
На прилагаемом скриншоте - medit с открытой в нём программой-будильником.
Прямая ссылка на windows-версию: http://dfn.dl.sourceforge.net/sourceforge/mooedit/medit-0.9.4.exe . В Debian или Ubuntu - просто aptitude install medit.

File attachments: 
Прикрепленный файлРазмер
Image icon medit.png113.88 KB

Комментарии

Ключи. Осталось предусмотреть в MK.EXE способ использования через командную строку. И тогда настроенный medit будет лучшим средством разработки для ЭКВМ. Тут и нумерация, и подсветка.

Можно будет даже разработчику medit'а сообщить, пусть порадуется. :)

Да, теперь дело за консольными утилитами и, главное, за успешным распространением славной ЭКВМ МК-161. А так уже сейчас можно делать сборочку MK-IDE с настроенным medit+mkl2mkp и обновлять по мере появления утилит. Если найду время - попробую разобраться с этим.

Давайте. А с нас сами утилиты. Чего их дважды с нуля делать, когда все алгоритмы в mk.exe уже есть. Единственно, что они будут чуть позже, сейчас работы привалило, в том числе и с запуском серии МК-161.

Консольные утилиты. В принципе такой вариант в mk.exe был заложен, но не реализован.

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

Попробую откомпилировать исходник mkp2mkl и затем и остальных консольных программ для работы в виндах. Стандарты языка там соблюдаются, кодировку cp1251 поставить не вопрос. Естественно, программа обмена для каждой системы будет своя, но и это решаемо.

Спасибо за подсказку.

P.S. Представляю, как обрадуется разработчик mooedit-а тому известию, что он используется совместно с брутальной русской ЭВМ. :) А уж как наши хомячки и суслики порадуются названию этого редактора - вообще слов нет. ;)

“Му” это же ответ на вопрос «Обладает ли собака природой Будды?» из классического коана.

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

Кстати, в трактовке Эрика Реймонда описанное японское “му” означает третье логическое состояние. Ни “да”, ни “нет”, а “му”. В-общем, хорошее название.

Третье логическое состояние. Му - это хорошо сказано. :)

Маловато будет. Человеческая природа характеризуется логическими состояними множества континуум :) В нечеткой логике используют интервал действительных чисел от 0 до 1.

Нечеткая логика. Подумалось тут, для человеческой природы тоже недостаточно. В смысле, континуума хватит, но одного измерения нет.

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

Если ввести симметричные состояния, что гораздо удобнее, получим нижнюю полуплоскость заведомо недостоверных значений, не будем её сейчас касаться. Ещё имеем две крайние точки (1;1) - 100% да, и (-1;1) - 100% нет. Это классическая двоичная логика, а весь отрезок между ними - логика нечеткая.

Например, правильным ответом на вопрос, выпадут ли две монеты орлами, будет: "точно знаю, что вероятность этого 1/4" - или точка (-0,5; 1).

Точка Му соответствует здесь (0;0). :)

Причем область знания описывается треугольником от неё к точкам "да" и "нет", а все вокруг - область чистой веры. Например, уверенность в том, что у глокой куздры шерсть рыжая, или во что-либо подобное, соответствует точке (1;0). А вероятность завтрашнего дождя, с учетом опыта и доверия к метеорологам, что-то вроде (0;0,5) - то ли дождик, то ли снег, то ли будет, то ли нет. :)

Можно, конечно, снести всё в квадрат от (0;0) до (1;1) - принципиальной разницы нет. Зато представление вероятностей будет привычнее.

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

Но самих путей лишь немногим меньше, чем людей на планете. А если учитывать наращиваемые(!) возможности сохранять информацию о людях, их мысли — появившиеся с возникновением письменности, то предыдущие поколения тоже надо учитывать. Так что в лучшем случае это другая ось.

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

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

Давно хотел спросить по поводу кодировок: Какая кодировка - основная для ЭКВМ? Умеют ли текущие утилиты принимать на вход файлы с произвольной кодировкой?

P.S. Снисходительно смотрит Корова http://pmk.arbinada.com/system/files/moo161.gif на возню хомячков и сусликов.

866В ЭКВМ - кодировка ibm866, то есть принятая в ДОС. Так вот исторически сложилось. В документации об этом есть, да и таблица в приложении приведена.

Файлы MKL пока что распознаются только в кодировках 866 и cp1251 (это то, что в Windows). Задаётся это оператором в самом тексте. Сообщения в консольном компиляторе могут выводится в пяти кодировках. Они же потом будут допустимы и на входе.

Спасибо, всё стало кристально ясно! Наверное, главное компилятора -- выводить сообщения в заданной кодировке и, желательно, самому определять текущую системную кодировку. А mkl-файл, созданный по каким-то причинам в utf-8 можно перед скармливанием mkl2mkp преобразовать посредством iconv.