Forth http://fforum.winglion.ru/ |
|
Quark2 в виде компонентов http://fforum.winglion.ru/viewtopic.php?f=23&t=2736 |
Страница 2 из 2 |
Автор: | WingLion [ Ср июн 22, 2011 20:09 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
Напомнило: http://ruf09we.winglion.ru/index.php |
Автор: | Hishnik [ Ср июн 22, 2011 20:13 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
вопрос писал(а): вопрос писал(а): По поводу минимализма и чем он вредит форту и (форту - ладно) фортерам. Когда стремятся запрограммировать форт на 12-18 примитивах, это как раз есть игнорирование одной возможности форта - расширяемости вниз - подменяемости нижнего уровня Неправильный путь мастер (неслабый мастер, т.к. минимализм - удел не дилетантов) тратит время на создание одного за другим минимальных фортов, изощряясьи всякий раз начиная заново Правильный путь программист начинает не с создания фортов, но с уважения к экономии своего времени, он создаёт большой форт с понятной структурой а после урезает его, подменяя примитивы, а всё остальное уже имея реализованным (и протестированное) Ну так это все к чему? Утверждение-то где? |
Автор: | вопрос [ Ср июн 22, 2011 20:40 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
ЧТо тут неочевидно? Строить форт-систему нужно не 1. для каждого случая не 2. фрагментарно непонятно как а так, чтобы стремиться включить все случаи |
Автор: | WingLion [ Ср июн 22, 2011 20:55 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
вопрос писал(а): включить все случаи Например, не забыть обязательно включить примитивы для управления нейтронной бомбой! |
Автор: | вопрос [ Ср июн 22, 2011 21:13 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
просто наиболее широкий набор примитивов |
Автор: | Antender [ Ср июн 22, 2011 21:53 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
По-моему нормальный фреймворк это то, чего форту всегда не хватало. А если к новому кварку можно будет ещё и сишные библиотеки без проблем подключать, будет совсем шикарно. |
Автор: | Hishnik [ Ср июн 22, 2011 22:26 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
вопрос писал(а): ЧТо тут неочевидно? Строить форт-систему нужно не 1. для каждого случая не А для группы/класса случаев. вопрос писал(а): не 2. фрагментарно непонятно как Разве из изложения непонятен принцип разделения слов по компонентам? вопрос писал(а): так, чтобы стремиться включить все случаи Например, система на МК должна содержить константу 0 CONSTANT NUMBER_OF_USB3.0_HOST_CONTROLLERS, а также еще пару сотен килобайт подобных констант, которые описывали бы все возможные варианты использования конкретно этой сборки (одной на все применения), а заодно гарантированно съедали бы доступную системе память? вопрос писал(а): просто наиболее широкий набор примитивов В совокупности. А по факту системы на форт-процессорах уже имеют реализованное ядро, в некоторых есть и плавающая точка. Насильно впихивать, например, файловую систему - это самого себя загнать в угол, гарантированно застопорив работу, которая без файлов могла бы быть завершена существенно раньше и при меньшей потребности в ресурсах. Исключить файловую систему из требований - подрезать под корень PC-версии, которые теперь должны как-то исхитряться добраться до файлов. |
Автор: | Hishnik [ Ср июн 22, 2011 22:30 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
Antender писал(а): А если к новому кварку можно будет ещё и сишные библиотеки без проблем подключать, будет совсем шикарно. Скорее кварк будет новой библиотекой для сборки в составе проекта на Си. Как вариант, любая функция Си может быть "сброшена" в форт-машину в виде строки : AdditionalCFunction <xxxx> EXECUTE ; где xxxx - адрес, определенный для этой функции в рантайме. Имея функции Push и Pop для доступа к стеку данных, такие функции "влезут" и в форт-машину. |
Автор: | chess [ Чт июн 23, 2011 11:07 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
Хищник писал(а): Реализация, конечно, будет отличаться. Тогда ядро для форт-процессора (п.1) и ядро для ARM (п.1) будут разными компонентами? Похоже термин 'компонент' требует пояснения. |
Автор: | Hishnik [ Чт июн 23, 2011 11:44 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
chess писал(а): Тогда ядро для форт-процессора (п.1) и ядро для ARM (п.1) будут разными компонентами? Для компонента в данном случае специфицируется интерфейс, а не реализация. |
Автор: | VoidVolker [ Пт июл 08, 2011 07:21 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
А мне нравится - всеми лапами за. |
Автор: | Hishnik [ Чт авг 04, 2011 19:59 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
Может показаться интересно. В процессе разработки был фрагмент кода Code[pc]. В ходе рефакторинга был заменен на ReadCode(pc)... но скобки в одном месте "забылись" поменяться Получилось ReadCode[pc]. То есть простое обращение к массиву заменено на вызов функции. Как это проинтерпретировал компилятор: ReadCode - это адрес функции ReadCode. К нему надо прибавить смещение, равное pc, полученный адрес есть искомый адрес. А я все удивлялся "мерцающему" эффекту - тестовое слово DUP случайно оказалось по такому адресу, что его pc отправил компилятор на... Nop() На Форте это было бы не спутать Код: : ReadCode[pc] pc @ ['] ReadCode + ;
: ReadCode(pc) pc @ ReadCode ; |
Автор: | chess [ Чт авг 04, 2011 20:22 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
Хищник писал(а): На Форте это было бы не спутать Да спутать скобки нет ничего проще. Я уже путал { } на [ ] и наоборот. Причем ошибки явной нет(можно и так и так). И это уже в Форте с манипуляторами. Главное не где, а что. Появляется подобный синтаксис и с ним соответствующие ляпы. |
Автор: | dynamic-wind [ Вс авг 07, 2011 14:59 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
Хищник писал(а): Как это проинтерпретировал компилятор: ReadCode - это адрес функции ReadCode. К нему надо прибавить смещение, равное pc, полученный адрес есть искомый адрес. А я все удивлялся "мерцающему" эффекту - тестовое слово DUP случайно оказалось по такому адресу, что его pc отправил компилятор на... Nop() gcc в таком случает выдает 'error: subscripted value is neither array nor pointer'. У Вас проблемы с инструментом или с его использованием. |
Автор: | Hishnik [ Вс авг 07, 2011 20:33 ] |
Заголовок сообщения: | Re: Quark2 в виде компонентов |
dynamic-wind писал(а): gcc в таком случает выдает 'error: subscripted value is neither array nor pointer'. У Вас проблемы с инструментом или с его использованием. Там был typecast, поэтому ошибка оказалась подавлена. |
Страница 2 из 2 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |