Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 14:59

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 69 ]  На страницу Пред.  1, 2, 3, 4, 5  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вт июл 21, 2009 17:54 
Не в сети

Зарегистрирован: Ср дек 06, 2006 12:42
Сообщения: 49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
очень интересная разработка.
написал одному из модераторов на
http://forum.motofan.ru
посмотрим.
если анонсируют, возможно появиться интерес у некторых к форту
через этот путь.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт сен 25, 2009 17:50 
Не в сети

Зарегистрирован: Ср дек 06, 2006 12:42
Сообщения: 49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
автор обновил
http://sergey-frt.narod.ru/frt_sci.jar
от 09.09.09
Цитата:
Выложил обновлённую версию frt_sci.jar, которая должна адекватно обрабатывать CRLF.

был баг
> подключаемые пользовательские новые файлы ~имя.frt и все остальные
> в frt_sci.jar работают только если строка в файле заканчивается LF
\ --------------



из ближайшего от автора

> Добрый день
> Frt-sci развивается?
> какие планируются изменения-дополнения?
>
Некоторое время он не развивался, но скоро планирую опубликовать новую версию. Изменения -- переменные с любыми именами, большее соответствие стандартному форту (if then вместо [ ] и т.п.)

> для интерактива
> мониторинг состояния клавиш (нажата/не нажата) возможно в будущем прикрутить?
> графику бы переработать с возможностью задания своего цвета и
> например координат точки для закраски.

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

> 1.а нельзя какой-нибудь файл типа autostart.frt
> сделать авто запускаемым при старте приложения?
> ну т.е. его если нет или он пустой - ничего не происходит,
> а так автозапуск прописанных задач

Можно, в следующей версии.

> 2.если аналог HERE?
HERE будет в следующей версии. Сейчс в библиотеке lib.txt определено несколько слов для работы с массивами, которые используют переменную 'a' в качестве указателя на первую свободную ячейку памяти.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 12, 2009 21:06 
Не в сети

Зарегистрирован: Пт июл 10, 2009 19:14
Сообщения: 26
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Доброго всем времени суток!
Выложил новую версию frt_sci 0.2. http://sergey-frt.narod.ru/frt_sci.html

Основные изменеия: слова { } и [ ] заменены на do loop if then, есть режимы интерпретации и компиляции (и слова [ ]), " заменена на ." и после неё должен быть пробел, create does> here allot, нет ограничения в 1000 ячеек памяти.

Список слов:
Код:
ret quit dup drop . swap rot over + - * / abs exp sqrt sin asin cos acos tan atan pi
@ ! i j k 0 bl cr ln lg ^ max min rnd erfc = < > <= >= sinh cosh tanh asinh acosh
atanh graph plot show yshow sleep int var ['] exec r> >r not or and 1+ 1- 2* 2/ %
r@ bye format depth cli clo milliseconds randomize today now norm sci eng here
allot create , ' immediate last_word i@ i! dump

( *** immediate - слова *** )
: ; ( ." if then else [ ] [compile] begin until do loop to does> +do repeat while


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 12, 2009 21:08 
Не в сети

Зарегистрирован: Пт июл 10, 2009 19:14
Сообщения: 26
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Да, ещё одна функция (по просьбе AlikasS): если в мидлет засунуть файл autostart.frt, он будет автоматически исполнен при старте.

_________________
http://sergey-frt.narod.ru/frt_sci.html


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 12, 2009 21:14 
Не в сети

Зарегистрирован: Пт июл 10, 2009 19:14
Сообщения: 26
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Дальше планирую (параллельно с отловом глюков:) ) поменять способ вывода графиков на более универсальный. Ещё бы можно include. Затем наверное попробую перенести на мобилу JBForth. В нём всё-таки ява-машина используется более рационально...


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт окт 13, 2009 22:18 
Не в сети

Зарегистрирован: Пт июл 10, 2009 19:14
Сообщения: 26
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Строки.

Мне они пока не нужны, но в принципе вещь полезная. Только есть два варианта как их реализовать:

1) Совсем как в форте, строки в кодофайл записываются посимвольно и извлекаться могут с помощью стандартных слов C@ C!. Недостаток: будет медленно работать.

2) Хранить как ява-объекты. Тогда в кодофайле каждая строка занимает одну ячейку. Использовать оригинальные методы явы для работы со строками (похоже на СИ): слова INSTR SUBSTRING CONCAT и некий аналог C@, C!.

Мне гораздо больше нравится вариант 2. Если никто не скажет, что первый нужнее, то я второй и реализую.

_________________
http://sergey-frt.narod.ru/frt_sci.html


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт окт 13, 2009 23:47 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
А никак нельзя померить производительность и попытаться понять, насколько первый вариант медленнее? Потому что в Форте часто попадаются алгоритмы, которые работают со строками именно через C@ C!, то есть строк как таковых нет. К примеру, я обычно делаю как-то так

Код:
256 CONSTANT MAXSTR
CREATE $FILENAME MAXSTR ALLOT

" filename.ext" $FILENAME SMOVE


То есть строка - это просто выделенное место в памяти.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 14, 2009 00:36 
Не в сети

Зарегистрирован: Пт июл 10, 2009 19:14
Сообщения: 26
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Померять-то можно... Только результат я могу предсказать. В яве даже чтобы выделить память как в примере выше, придётся создать 256 объектов класса Character.

Расскажу чуть подробней про устройство frt-sci чтобы была ясна суть проблемы.
Кодофайл у меня -- это не массив заранее заданной длинны, а класс Vector, который может содержать любые объекты и позволяет извлекать/перезаписывать объекты по заданному адресу. Удобно в нём то, что
1) объекты могут быть любыми, не надо преобразовывать типы (ведь ява строго типизирована, а мне нужны как минимум целые числа для адресов и Real для данных);
2) обычный массив не может расти во время работы программы, а Vector может. Т.е. слово ALLOT действительно выделяет новые объекты, а не только двигает указатель.
Не удобно: сравнительно медленно. Чтение из Vector происходит медленне, чем из обычного массива. На ПК проигрыш в скорости где-то раза в 3, я проверял. На телефоне не проверял (там может быть подругому).
А встроенные методы работы со строками по идее могут быть написаны на ассемблере. Т.е. на задачах вроде поиска подстроки в строке вариант с использованием оригинальных методов явы будет быстрее где-то раз в 10.

Для каких задач вообще планируется использовать строки на мобильном?

_________________
http://sergey-frt.narod.ru/frt_sci.html


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 14, 2009 03:07 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
У меня тут вобщем-то достаточно тривиальное соображение - в Форте со строками обычно отдельно не работают. То есть есть будет такой Java-Форт, то у него может получиться явное отличие от программ на Форте, потому что массив байтов может вылезти где угодно. И тут уже надо сразу определяться - либо основывать транслятор на работе с объектами (и тогда уж делать так во всех местах), или сказать, что Ява - это просто кроссплатформенный инструмент, доступный на телефоне, и мы будем мириться с теми недостатками, которые из его кроссплатформенности проистекают.
Можно еще посмотреть, так ли страшна потеря производительности. Мне кажется, что не очень, либо совершенно не страшна. Телефону ведь не мегабайты текстов обрабатывать, а хотя бы текстовое сообщение вывести или пару строк принять с клавиатуры. Это очень немного получается, и по размеру, и по объему операций.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 14, 2009 10:12 
Не в сети

Зарегистрирован: Пт июл 10, 2009 19:14
Сообщения: 26
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Хорошо, я попробую сперва сделать как в форте.

Ещё вопрос. Со словом S" я встречался -- возвращает адрес и длину. А слово " это строка со счётчиком чтоли?

_________________
http://sergey-frt.narod.ru/frt_sci.html


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 14, 2009 14:57 
Не в сети
Аватара пользователя

Зарегистрирован: Чт апр 26, 2007 21:09
Сообщения: 303
Благодарил (а): 12 раз.
Поблагодарили: 10 раз.
В языках, подобных яве и си-шарпу, было бы намного полезнее вообще не включать тип "символ", а обходиться типом "элемент строки". Тогда бы масса проблем была в зародыше удушена... :twisted:


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 14, 2009 19:06 
Не в сети
Аватара пользователя

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1261
Благодарил (а): 3 раз.
Поблагодарили: 19 раз.
sergey.f77 писал(а):
А слово " это строка со счётчиком чтоли?

Нет, обычно просто az-строка.
sergey.f77, доступ к блутузу есть?

_________________
Cтоимость сопровождения программного обеспечения пропорциональна квадрату творческих способностей программиста.
Роберт Д. Блисc


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср окт 14, 2009 20:05 
Не в сети

Зарегистрирован: Пт июл 10, 2009 19:14
Сообщения: 26
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Блютуза пока нет, но можно сделать. И ИК можно сделать.

_________________
http://sergey-frt.narod.ru/frt_sci.html


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 15, 2009 00:35 
Не в сети
Аватара пользователя

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1261
Благодарил (а): 3 раз.
Поблагодарили: 19 раз.
ИК незачем, а вот блутуз был-бы очень полезен.

_________________
Cтоимость сопровождения программного обеспечения пропорциональна квадрату творческих способностей программиста.
Роберт Д. Блисc


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт окт 15, 2009 20:07 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 12, 2008 03:18
Сообщения: 327
Откуда: Москва
Благодарил (а): 36 раз.
Поблагодарили: 7 раз.
Блютуз из явы на мобильном телефоне доступен при условии если ява на телефоне поддерживает
библиотеку jsr82 , то есть блютуз на телефоне может быть, но управлять из явы им может
быть невозможно.
Я написал библиотеку для работы с блютузом , чтобы подключить мобильный форт к gps навигатору
но надежно работает только с моим навигатором, но так как пока не нужен все заброшено до середины
ноября. Если нужно вышлю конечно. Но большинство навигаторов работает по протоколу l2cap
а мой btspp, там есть отличия при приеме данных.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 69 ]  На страницу Пред.  1, 2, 3, 4, 5  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB