Forth http://fforum.winglion.ru/ |
|
µForth (MetaForth) http://fforum.winglion.ru/viewtopic.php?f=40&t=2933 |
Страница 4 из 4 |
Автор: | in4 [ Сб май 25, 2013 09:15 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Majestio писал(а): in4 писал(а): - м. не делать одну универсальную систему, лучше сделать несколько специализированных Не согласен. Как пример, приведу пересборку ядра *nix систем. Есть все что надо "под все". Но когда делаем под себя - конфигурируем. Что есть по себе - мета-программирование. В результате получаем ядро с нужными встроенными модулями (мы знаем что они будут дергаться в работе постоянно) + получаем отдельно загружаемые модули (редкого использования).А еще для разной разрядности и endian-овости могут быть разные оптимизации алгоритма. Так что или имеем один файл со сложными проверками условий либо несколько файлов, специализированных для каждого варианта. Я за второй вариант. А еще лучше - за систему, которая выделяет сходства и отличия разных вариантов, поддерживая их все. И речь идет не о текстовой конфигурации. При сборке используются не тексты, а нужные части внутреннего представления. Majestio писал(а): in4 писал(а): --- но тогда как удобно перемещать между ними хорошие специализированные решения? - Мой ответ - более высокоуровневая среда разработки Мне кажется дело не столько в среде разработки, сколько в возможностях подстройки (в ее реализации) кода к условиям эксплуатации. К примеру, взбредет кому в голову написать библиотеку по тензорному анализу. Будет преступлением - игнорировать наличие какого-нить GPU Ati Radeon'а.А если добавить поддержку Raspberry Pi (GPU VideoCore) и CubieBoard(GPU Mali400), то луше в ту библиотеку добавить условий для оптимизации под каждый вариант, или сделать несколько вариантов(свою реализацию набора примитивов для каждого GPU) ? Среда должна помочь одновременно поддерживать все эти GPU. Majestio писал(а): in4 писал(а): - при специальном представлении исходников - в прекомпилированном виде - можно значительно увеличить скорость компиляции ценой усложнения редактора и возможностей легкой передачи текстов исходников У меня вообще шальная идея )) Исходники хранить только в ипостаси дампа (обычного читаемого). А все рабочее - загнать в SQlite, обеспечить норм индексацией. По сравнению с работой с файловой системой - ускорение будет на порядки. Только не забывать периодически сбрасывать снимки базы на диск. Вон люди уже давно извращаются.- читаемость внутреннего представления не обязательна - аналогичные возможности может обеспечить хорошая система контроля версий Вот я сейчас рассматриваю, подходит ли Git для некоторых работ. Мне кажется, нужна бОльшая интеграция системы разработки и системы контроля версий, но это вопрос удобства и будущего. |
Автор: | gudleifr [ Сб май 25, 2013 13:06 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
in4 писал(а): ...высокоуровневым... Вопрос был риторическим. Но, в Вашей трактовке, боюсь он стал просто нерешаемым.НЕНУЖНЫЕ ПОУЧЕНИЯ (можно не читать): Вы очень близко подошли к грани: "Не знаю, как решить задачу, но если мне дадут красивое визуальное средство, она сразу решится сама собой". Принцип всегда был один: "Создайте интерфейс, которым может пользоваться и дурак, и только дурак захочет им пользоваться". И, на примере Винды, мы видим, что он работает. Есть задача - решайте. Нет - посмотрите, среди отложенных нерешенных. Создавать обобщенный решатель можно только, если Ваша текущая задача - его создать (понятно, что она относится уже к совершенно другой теории). Иначе имеем, как обычно: "писание не того, что нужно, а того, что легко написать". |
Автор: | gudleifr [ Сб май 25, 2013 13:46 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
in4 писал(а): делать систему с кучей проверок различных условий (по результатам метапрограммирования) Как бы метапрограммирование и придумано для избежания "кучи проверок"...
|
Автор: | in4 [ Вс май 26, 2013 02:16 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
gudleifr писал(а): in4 писал(а): делать систему с кучей проверок различных условий (по результатам метапрограммирования) Как бы метапрограммирование и придумано для избежания "кучи проверок"... |
Автор: | in4 [ Вс май 26, 2013 02:59 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
gudleifr писал(а): in4 писал(а): ...высокоуровневым... Вопрос был риторическим. Но, в Вашей трактовке, боюсь он стал просто нерешаемым.gudleifr писал(а): Вы очень близко подошли к грани: "Не знаю, как решить задачу, но если мне дадут красивое визуальное средство, она сразу решится сама собой". Как решать дальше - знаю.... Сама задача не решится, надо много чего добавлять до действительно хорошего решения. Но простые решения получить можно без больших объемов работ. А если у вас есть "красивое визуальное средство": - основанное на простых понятных принципах - с хорошей документацией и примерами - функционально полное, но не переусложненное - программируемое - с красивой внутренней моделью (моделями) - под DOS, Windows, Linux, Android скажите, я его обязательно попробую! Возможно, оно решит мои текущие проблемы и можно будет заниматься действительно интересными вещами! Кстати, автору темы тоже поможет! Я такого пока не нашел. Обычно или функционально не полные - нельзя простым способом сделать нужные вещи, или плохая документация/внутренние модели/переусложненное, или и то, и другое. OFFTOPIC gudleifr писал(а): Принцип всегда был один: "Создайте интерфейс, которым может пользоваться и дурак, и только дурак захочет им пользоваться". И, на примере Винды, мы видим, что он работает. У меня как раз другие запросы - мне сложный конструктор надо, а не форму с кнопкой "сделай что мне нужно!". Для меня (в данном случае) компьютер - просто инструмент для исследований. И я учитываю его ограничения на текущий момент. То, что мне нужно, есть по частям в нескольких системах, но я нигде не видел это вместе. Я пояснил этот момент?/OFFTOPIC |
Автор: | Alex [ Вс май 26, 2013 09:45 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
to in4 гляньте пожалуйста сюда, китаец делает интересные вещи. |
Автор: | gudleifr [ Вс май 26, 2013 10:45 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
in4 писал(а): целевая задача - получить универсальное решение, то при некоторых подходах может появится разветвленное дерево условий Причем, без всякого метапрограммирования...in4 писал(а): А если у вас есть "красивое визуальное средство" У меня тоже все застопорилось из-за отсутствия красивого решения... Но это совсем другая история.in4 писал(а): У меня как раз другие запросы - мне сложный конструктор надо, а не форму с кнопкой "сделай что мне нужно!". Обычное оправдание создателей дурацких интерфейсов. Каждый из нас постоянно упирается в то, что используемый графический интерфейс не позволяет или затрудняет визуализацию очередного гениального видения... Тут надо понять, что же действительно надо, а что - только хочется, либо потратиться на частное решение (которое станет таким же неудобным для следующей задачи, как то, что имеем сейчас).in4 писал(а): То, что мне нужно, есть по частям в нескольких системах, но я нигде не видел это вместе. Если, например, Вы не понимаете, почему их нельзя объединить, значит Вы не понимаете, зачем они нужны. Или еще как-то... Бросайте эту маниловщину...P.S. Пока писал, понял, почему у меня не получается то самое "красивое решение"... |
Автор: | Hishnik [ Вс май 26, 2013 11:43 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
in4 писал(а): - основанное на простых понятных принципах - с хорошей документацией и примерами - функционально полное, но не переусложненное - программируемое - с красивой внутренней моделью (моделями) - под DOS, Windows, Linux, Android А все это не выглядит несколько противоречивым? |
Автор: | gudleifr [ Пн май 27, 2013 19:29 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Пока мы не забыли с чего начали, рискну предположить: перед коллегой Majestio сейчас два пути: 1. Реализовать на Perl квази-Forth, худо-бедно соответствующий стандарту. 2. Сразу перейти к 4-му этапу и написать "хоть что-то работающее". И я боюсь, что и то, и то отсечет какие-то возможности и интересности. Единственный выход - сразу готовиться к тому, что результат придется выкинуть и начать заново. Не тянуть "хвосты" ошибочно принятых решений с этапа на этап. |
Автор: | Majestio [ Пн май 27, 2013 22:16 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
gudleifr писал(а): Пока мы не забыли с чего начали, рискну предположить: перед коллегой Majestio сейчас два пути: 1. Реализовать на Perl квази-Forth, худо-бедно соответствующий стандарту. 2. Сразу перейти к 4-му этапу и написать "хоть что-то работающее". И я боюсь, что и то, и то отсечет какие-то возможности и интересности. Единственный выход - сразу готовиться к тому, что результат придется выкинуть и начать заново. Не тянуть "хвосты" ошибочно принятых решений с этапа на этап. Однозначно п.1 - ибо "первый заяц" моего убийства - изучения Forth. Только не поймите меня превратно - я не собираюсь зубрить синтаксис. Мне интересна концепция, ее базовая реализация, попытки стандартизации, "разброд и шатание" вокруг всего этого ... хочется чтобы чужая идея стала частичкой меня. Дальше я куда-то пойду. Однозначно не в сторону ANSI 94. Причин несколько: 1) Форт на подиуме языков программирования - не красивее бабы Яги, я против статистики не боец 2) Перспективы развития - типа сестры фата Могран'ы (эт я так образно), я еще учусь 3) "Ошибочно принятые решения" - это жИ ценнейший багаж!!! Вы же не собираетесь жить вечно? Мои нынешние подходы, их скромно два: 1) Все что понимаю, или верю что разобрался - исследую на предмет соответствия нескольким критериям - полнота, непротиворечивость, однозначность, эффективность ... ну вот как-то так 2) Все что не понимаю - пытаюсь делить на субсистемы (субпонятия) Не тороплюсь. Эта тема для меня - вместо ТиВи. Я так отдыхаю |
Автор: | Hishnik [ Пн май 27, 2013 22:49 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Majestio писал(а): Мне интересна концепция, ее базовая реализация, попытки стандартизации, "разброд и шатание" вокруг всего этого ... хочется чтобы чужая идея стала частичкой меня. Замечательно! Серьезно. Зубрить синтаксис действительно ни к чему - существующий синтаксис ведь тоже придуман живыми людьми, у которых были свои соображения... а еще свои условия, в которых они находились, и свои задачи. Под реальные задачи собираются реальные Форты. Под выдуманные - ну, "что выросло, то и выросло". Я могу осторожно предложить подумать над следующими вопросами: 1. Стек и работа с памятью. Как с этим в Perl? Конкретнее - как это будет решаться при текущей постановке задачи, и с учетом кроссплатформенности? 2. Словарь. Он несколько вытекает из п.1, поскольку размещен в памяти. Какой тип кода предполагается (машинный или ШК), какова будет структура словарной статьи? 3. Интерфейс с ОС. Как выглядит типовое приложение? |
Автор: | Majestio [ Пн май 27, 2013 23:10 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Хищник писал(а): Я могу осторожно предложить подумать над следующими вопросами: 1. Стек и работа с памятью. Как с этим в Perl? Конкретнее - как это будет решаться при текущей постановке задачи, и с учетом кроссплатформенности? И просто ... и сложно. В плане Perl'а я имею возможность разместит что угодно и когда угодно ... вопрос - где и как решает Perl. Тут засада №1. Хищник писал(а): 2. Словарь. Он несколько вытекает из п.1, поскольку размещен в памяти. Какой тип кода предполагается (машинный или ШК), какова будет структура словарной статьи? Я пока не знаю, честно. Но логика подсказывает - два варианта. Для "закрытых" систем - машинный код, соответственно для "открытых" - ШК. По идее - этот головняк разработчика, что решил (продать, предоставить, подарить), то и должно быть. Хищник писал(а): 3. Интерфейс с ОС. Как выглядит типовое приложение? [/quote] Хрен его знает ....сперва возможно консоль, мот так легче.... |
Автор: | gudleifr [ Вт окт 07, 2014 19:50 ] |
Заголовок сообщения: | Re: µForth (MetaForth) |
Majestio писал(а): KPG писал(а): ... если только Perl не ощущается на кончиках пальцев:) Ощущается. С 1997 года ) |
Страница 4 из 4 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |