Forth http://fforum.winglion.ru/ |
|
µForth (MetaForth) http://fforum.winglion.ru/viewtopic.php?f=40&t=2933 |
Страница 1 из 4 |
Автор: | Majestio [ Вт май 21, 2013 22:42 ] |
Заголовок сообщения: | µForth (MetaForth) |
µForth (произносим: метафорт) - язык которого еще нет. Он в моем сознании, когда я практикую дзен (... и не прошло и "пол-года") Оглавление
A.Слезное обращение Сразу убедительная просьба - если собираетесь гнобить (в смысле справедливой критики), очень прошу это делать системно. Иными словами - постулат+обоснование. Эмоциональные выпады буду приравнивать к измене Родине! B.Мои цели в отношении языка µForth
C.Первоначальное ориентирование процессоры семейства x86, IA-32, IA-32e/AMD64/Intel64/EM64T, IA-64, ARM7, ARM9, ARM11, Cortex пока не знаю, возможно ПЛИСы (обсуждать надо) D.Сценарий Первое время - только чисто академический проект, практическая реализация (или реализации) возможны по ходу. E.Прогноз В развитии проекта планирую две нити - методологическая и методическая.
F.Линки 1) Этот тред, если его не зарубят по религиозным соображениям 2) Мой форум-блог, хотелось бы там - но по-любому, все ваши норм идеи там и будут, с копилефтами ессессно 3) Sourceforge - на всякий случай, это будет тут - https://sourceforge.net/projects/metaforth/ 4) Где-то была ссылка на язык "Спепплер", знал бы факс автора - выслал бы печенек ))) Годный ресурс! J.Люблю ЖИ Напоследочек кагбэ. В Форте я - полный ноль, кроме концепции (польская запись и словари) ниче не цепляет, хотя нет ... бутстрэппинг еще. В асме x86-64 плаваю уверенно, но ни разу не синхронно. Однако за плечами короткий опыт на PL/1 (институт только, я не извращенецЪ!), хороший и долгий опыт на Pascal, Asm 8086, Clarion, Perl, С, С++, Java, Js, PHP (в хронологическом порядке) ... согласитесь, есть из чего выбрать для ненависти ))) .... А начинал с "Электроника МК-61" (хотя запамятовал, может и с МК-62, но не суть) ... Жду любых соучастников, критиков, креативщиков, тупокодеров, просто хороших людей. Не дождусь - буду один, нам ли жить ф печали! Уттаквот! ЗЫ: На днях засыплю вопросами) |
Автор: | VoidVolker [ Ср май 22, 2013 00:43 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Поддержка x64 - это очень хорошо. Под какую ОС? Или будет кроссплатформенным? Какие инструменты будут использоваться для его написания? Словари-то они и в африке словари. А вот некоторые форты все равно что-то по-своему с ними делают. Какая будет архитектура форта? В т.ч. ядра. Оптимизатор? Например для МК зачастую надо считать каждый такт и каждый байт. А для каждого процессора нужен свой. Или будет использоваться что-то готовое? В ПЛИС тоже не все так просто, как кажется на первый взгляд. В данном случае, я думаю, имеет смысл взять что-то уже маленькое и готовое и допилить его под поставленные задачи. Кстати, а каковы они? P.S. читать мю как мета как-то не получается =) |
Автор: | Majestio [ Ср май 22, 2013 00:57 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
VoidVolker писал(а): Поддержка x64 - это очень хорошо. Под какую ОС? Или будет кроссплатформенным? Какие инструменты будут использоваться для его написания? Инструменты ... нет , должен быть ОДИН. На данном этапе - просто загрузить себя и вывеести это в консоль. |
Автор: | VoidVolker [ Ср май 22, 2013 08:28 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Majestic писал(а): Инструменты ... нет , должен быть ОДИН. Окк. Какой? |
Автор: | Majestio [ Ср май 22, 2013 10:28 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
VoidVolker писал(а): Majestic писал(а): Инструменты ... нет , должен быть ОДИН. Окк. Какой? Я планирую все начальные части (загрузчик, базовый словарь) писать на Perl. Цель - генерация нативного опкода для целевых систем, минуя стадию ассемблирования. Иными словами, для каждого процессора, своя реализация базовых примитивов + свой загрузчик, исходя из целевой операционной системы. Операционные системы, которые интересны:
Почему Perl? Да просто потому, что парсинг текстовых входных данных на нем делать наиболее естественно и просто. |
Автор: | VoidVolker [ Ср май 22, 2013 11:07 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Хорошо, пускай будет Perl. А что с оптимизацией результирующего кода? Или в Perl все это есть для каждой архитектуры? Какие еще преимущества дает этот самый Perl? |
Автор: | Majestio [ Ср май 22, 2013 11:25 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
VoidVolker писал(а): Под какую ОС? Или будет кроссплатформенным? Какие инструменты будут использоваться для его написания? Кроссплатформенным.Perl. VoidVolker писал(а): Словари-то они и в африке словари. А вот некоторые форты все равно что-то по-своему с ними делают. Какая будет архитектура форта? В т.ч. ядра. Пока не определился. Надо поэксперементировать на предмет компромиса: компактность-vs-быстродействие. Допустим пишем тест а-ля "Hello World" или "Stupid Text", что делать с базовым словарем? Закидывать его в исполняемый модуль без оглядки - не кошерно) VoidVolker писал(а): Оптимизатор? Например для МК зачастую надо считать каждый такт и каждый байт. А для каждого процессора нужен свой. Или будет использоваться что-то готовое? Свое с оглядкой на существующие решение. Не прошло и года ... с 1990 года, как свежа в памяти замена "умножения" для 8086 на пару "сдвиг+сложение". Такты считать нужно! VoidVolker писал(а): В ПЛИС тоже не все так просто, как кажется на первый взгляд. Я это предполагаю и совсем не жду бархатных дорожек. Все решаемо. Вопрос цены усилий. А если цель "без привязки ко времени реализации", то это только вопрос самоорганизации и самодисциплины. VoidVolker писал(а): В данном случае, я думаю, имеет смысл взять что-то уже маленькое и готовое и допилить его под поставленные задачи. Отчасти согласен. Почему отчасти? Потому что "готовые решения" - есть ценный багаж чужих идей и проделанной работы. Почему не полностью согласен? Не хочется делать "очередной форт" борющийся с существующими стандартами. Рамки решений должны быть разумно свободными. VoidVolker писал(а): Кстати, а каковы они?
VoidVolker писал(а): P.S. читать мю как мета как-то не получается =) В свете мета-реализации придется расширять порог восприятия Кстати уже и слоган для проекта созрел: "µForth - это не очередной Forth, это µ". По поводу "готовых решений" ... пока внимательно смотрю на концепции - Forth, Perl, Ada. К парадигме ООП отношусь крайне подозрительно. Как интересный вариант построения приложений - рассматриваю реализацию на скелете машины состояний (FSM, finite-state machine). Ну вот такие исходные данные. |
Автор: | Majestio [ Ср май 22, 2013 11:28 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
VoidVolker писал(а): Хорошо, пускай будет Perl. А что с оптимизацией результирующего кода? Или в Perl все это есть для каждой архитектуры? Какие еще преимущества дает этот самый Perl? Нет, Perl к оптимизации никаким боком. Это язык способный наиболее удобно обрабатывать текстовые данные, что нам и нужно. А нужно следующее: описать архитектуру и операционную систему в виде понятных текстовых данных, таблиц, настроек, зависимостей - потом это распарсить и получить набор нужных машинных кодов. |
Автор: | Majestio [ Ср май 22, 2013 11:56 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Просьба модераторам: если не трудно, перекиньте пост в этот раздел. Все же это будет не совсем форт, наверное. |
Автор: | Mihail [ Ср май 22, 2013 13:33 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Majestic писал(а): В Форте я - полный ноль, кроме концепции (польская запись и словари) ниче не цепляет, Сперва надо понять, что есть Форт в принципе. Лично я его языком не считаю. Но тут еще встает вопрос; что есть язык программирования. Словари используются всеми интерпретаторами (компилятор тоже интерпретатор). Как-же без них? Только в Форте эти словари доступны пользователю форт-системы. Ели мы хотим выполнить программу (на любом языке) , то без промежуточного представления в польской записи не обойтись. Цитата: Не хочется делать "очередной форт" борющийся с существующими стандартами. Или это Форт или не Форт. При всей своей несовместимости между версиями форт-систем принципиальной разницы нет. Форт это не синтаксис и семантика, а степень доступа к средствам интерпретатора. Если предоставить полный доступ к интерпретатору то мы собственно Форт и получим. Чтобы понять, что есть Форт, нужно разобраться и исходными текстами какой-нибудь форт-системы (маленькой). Это не сложно. |
Автор: | KPG [ Ср май 22, 2013 16:16 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Majestic писал(а): VoidVolker писал(а): Majestic писал(а): Инструменты ... нет , должен быть ОДИН. Окк. Какой? Я планирую все начальные части (загрузчик, базовый словарь) писать на Perl. Цель - генерация нативного опкода для целевых систем, минуя стадию ассемблирования. Иными словами, для каждого процессора, своя реализация базовых примитивов + свой загрузчик, исходя из целевой операционной системы. . Таких реализаций Форт "подобных" языков достаточно много и ссылки можно найти на местном форуме . А использование Perl, в сравнении с другими скриптовыми и например функциональными языками не такое однозначное решение если только Perl не ощущается на кончиках пальцев:) На функциональном языке, одна из реализаций для PIC18, называется Staapl есть и на Ephorии FortheC... можно и другие повспоминать, например на Tcl. Использовать регулярные выражения можно и в Форт, но мне их использование не показалось однозначным при пробах использования для оптимизации результирующего "SP-Forth" кода созданного Cи-Forth конвертером. P.S. Можете попробовать и даже бы рекомендовал для этого Форт и тогда возникнут вопросы без знакомства и решения которых будет труднее сделать адекватный инструмент для использования. |
Автор: | mOleg [ Ср май 22, 2013 16:59 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Не скажу, что мне не интересно, что у вас будет получаться Но у меня тоже слезное обращение: не называйте Фортом то, что им не является. А оно фортом не является, т.к. вы сами признались, что нем не разбираетесь. И еще просьба, поменьше ссылок (содержимое тексов по ссылкам сложно цитировать и обсуждать). |
Автор: | Majestio [ Ср май 22, 2013 20:57 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Mihail писал(а): Сперва надо понять, что есть Форт в принципе. Лично я его языком не считаю. Очень часто говорят что Форт - это среда, слышал такое. Mihail писал(а): Или это Форт или не Форт. При всей своей несовместимости между версиями форт-систем принципиальной разницы нет. Форт это не синтаксис и семантика, а степень доступа к средствам интерпретатора. Если предоставить полный доступ к интерпретатору то мы собственно Форт и получим. Тогда скорее всего будет не совсем форт. А как-то знакомился с форком mOleg'а и словил себя на мысли, что заметно часто упоминается в различных местах уход от стандарта. Для себя я решил - что это должен быть Форт-подобный язык, без отнесения к любым стандартам (хотя в разработке - и с учетом). Mihail писал(а): Чтобы понять, что есть Форт, нужно разобраться и исходными текстами какой-нибудь форт-системы (маленькой). Это не сложно. Я смотрел код. Просто обзорно. Для общей картины считаю это достаточно. А вот когда пойдут мелочи - тогда надо будет смотреть, что можно позаимствовать, а от чего отказаться. KPG писал(а): Таких реализаций Форт "подобных" языков достаточно много и ссылки можно найти на местном форуме . Я в курсе. Но решил для себя в образовательных целях сделать свое. KPG писал(а): А использование Perl, в сравнении с другими скриптовыми и например функциональными языками не такое однозначное решение если только Perl не ощущается на кончиках пальцев:) Ощущается. С 1997 года ) KPG писал(а): На функциональном языке, одна из реализаций для PIC18, называется Staapl есть и на Ephorии FortheC... можно и другие повспоминать, например на Tcl. Использовать регулярные выражения можно и в Форт, но мне их использование не показалось однозначным при пробах использования для оптимизации результирующего "SP-Forth" кода созданного Cи-Forth конвертером. P.S. Можете попробовать и даже бы рекомендовал для этого Форт и тогда возникнут вопросы без знакомства и решения которых будет труднее сделать адекватный инструмент для использования. Спасибо, любой рекомендации рад. Все в заметочки падает) mOleg писал(а): Не скажу, что мне не интересно, что у вас будет получаться mOleg писал(а): Но у меня тоже слезное обращение: не называйте Фортом то, что им не является. А оно фортом не является, т.к. вы сами признались, что нем не разбираетесь. Процитирую сам себя: Majestic писал(а): Просьба модераторам: если не трудно, перекиньте пост в этот раздел. Все же это будет не совсем форт, наверное. mOleg писал(а): И еще просьба, поменьше ссылок (содержимое тексов по ссылкам сложно цитировать и обсуждать). Ok. |
Автор: | Majestio [ Чт май 23, 2013 00:30 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
mOleg, есть еще насущный вопрос ... Свой этот проект я все ж решил стартануть. Все необходимое как-бы есть, форумы, sourceforge ... одного пока нет. Однозначности. Где будет вестись обсуждение вопросов среди заинтересованных?
В связи с этим пару вопросов: 1) Можно ли сделать на данном форуме выделенный раздел для "µForth"? (естественно, если перегорю, удалить же в два клика можно) 2) Если не хочется делать, можно я буду более обычного кидать линки на обсуждение на своем форуме? (этого очень не хочется, ибо я свой форум позиционирую просто как копилку полезного) ЗЫ: Я вполне понимаю, пока, кроме идеи, ничего нет. Но на "заслуживать доверие" нет времени, жысть конечна ... |
Автор: | Hishnik [ Чт май 23, 2013 09:05 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
В пятницу доберусь до нормального интернета. С телефона не очень удобно администрировать. |
Страница 1 из 4 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |