Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Вс окт 06, 2024 19:58

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 124 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9
Автор Сообщение
 Заголовок сообщения: Re: Блог программиста любителя
СообщениеДобавлено: Вт авг 27, 2024 03:15 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 12, 2008 03:18
Сообщения: 331
Откуда: Москва
Благодарил (а): 37 раз.
Поблагодарили: 7 раз.
После перерыва, решил возобновить разработку.

Перерыв был вызван причинами в основном технического порядка, когда проект, над которым я упорно работал, написанный
на java 17, отказавлся компилироваться на java, который использовался в android Ide.

Тут еще и моя ошибка, пытался использовать статические классы на java, думал, что это круто, и переписал под
это свой, в общем то приемлемо сделанный проект.
На самом деле, в отличии от статических переменных, статические классы полное дерьмо, и проект нужно было
возвращать взад, что постоянно откладывал, потом начал потихоньку забывать детали.
В общем, как там это... психические болезни программистов - просто .. как там ее.. ...ариация какая-то.

(В общем, для меня, все разговоры, что стремление к стандартизации не нужно - побоку.)

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

Но недавно благорастворение закончилось, навигационная программа начала бешено выжирать
заряд батареи. Просто кэщирование было организованно самым примитивным способом -
тайл карты загружался из интернета и сохранялся на sd карте. Имя тайла - типа (z6x45y2345),
присоединялось к строке, в которой таким же образом были записанны имена предыдущих,
загруженных из интернета тайлов. Прежде, чем загрузить из интернета картинку, осуществлялся
поиск по строке. Если находил, загружался с SD, если нет - с интернету. В конце концов размер строки
стал килобайт 300 наверное!
В общем поправить не трудно, да за два года образовалась полная разруха.
Я забыл, из каких проектов скомпилировал нынешние, находящиеся в эксплуатации apk - файлы.
Реально, их там куча. Это сохраненные промежуточные проекты, и развитие существующих, и оставленные на будущее.

Их можно компилировать и они запустятся, но во всех из них могут быть ощибки и даже не понятно как их использовать.
В общем, надо переписывать заново, к счастью многие фрагменты проектов хорошо проработаны, и
много кусков можно надергать из старых.

Но тут напасть - авторы aide забросили проект и гугол удалил его из play по причине отсутствия обновлений.
(я сперва подумал, присоединились к санкциям, когда разобрался, решил задонатить, гугл плай не пропустил платеж)

В общем, если кому нужен aide, можно сюда
https://4pda.to/forum/index.php?showtopic=319369

там лежит крякнутая версия, в отличии от бесплатной, которая может собрать проект не больше чем из 5 файлов,
в этой можно собрать проект из любого кол-ва файлов. Можно взять у меня apk-файл, скачанный из google play давно.

Вчера удалось собрать android проект из командной строки, думаю развивать это направление

Утилиты командной строки можно скачать с официального
https://developer.android.com/studio?hl=ru
Далее буду описывать, как всем этим пользоваться.

ps. Тяжеленную android studio ставил, проблевался.
Вдобавок отказалась компилировать мои aide-проекты, никаких дел с ней больше иметь не буду, даже по приговору суда.

_________________
Линукс решает, винда глотает.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Блог программиста любителя
СообщениеДобавлено: Пт сен 13, 2024 02:44 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 12, 2008 03:18
Сообщения: 331
Откуда: Москва
Благодарил (а): 37 раз.
Поблагодарили: 7 раз.
Вообще, разруха не только у меня. Altlinux, которым без проблем пользовался больше 20 лет,
начал выдавать странности. Из проекта исчезла опера,( уже давно), не запускается avidemux,
нечем редактировать видеофайлы. Исчез gfort, что крайне неприятно. Не с чем стало сравнивать
свой форт. Сходу собрать gfort из исходников не удалось, ковырятся не хотелось.

к счастью в http://forth.org.ru/ Russian FORTH Interest Group

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

В общем, можно приступать.
Еще, кажется окончательно разобрался с компилятором командной строки для android проектов.

_________________
Линукс решает, винда глотает.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Блог программиста любителя
СообщениеДобавлено: Пн сен 23, 2024 09:38 
Не в сети

Зарегистрирован: Пт июн 06, 2008 14:21
Сообщения: 129
Откуда: Карелия
Благодарил (а): 1 раз.
Поблагодарили: 5 раз.
В Help написано как убрать заглавные буквы

Особенности SPF
Краткое вступление для тех, кто уже знаком с какой-либо Форт-системой и стандартом ANS'94.

Последнее обновление: $Date: 2008/11/14 20:13:12 $

[Русский] [Английский]

Содержание
Установил SPF4. И где здесь что-куда?
Как запускать и подключать файлы?
REQUIRE
Пути поиска файлов для INCLUDED
Модули
Регистро-зависимость
Ввод чисел
Вещественные числа (числа с плавающей точкой)
Структуры
Где FORGET?
Где NOT?
Где DEFER?
Как одним словом очистить стек?
Комментарии
Строки
Многозадачность
Словари
Локальные и временные переменные
Генерация исполняемых модулей (exe-файлов)
Подключение dll-библиотек
Средства отладки
Оптимизатор
Поддержка ANS
Callback'и
Слово NOTFOUND
Scattered colons
Область видимости
Обработка исключений

Установил SPF4. И где здесь что-куда?
Первое и самое важное - расположение ваших рабочих файлов. В дистрибутиве SPF есть каталог DEVEL, предназначенный для разработчиков (в том числе и вас). Создайте в ней ваш подкаталог, например, ~vasya. И теперь вы можете подключать ваши файлы написав сокращённый путь в виде ~vasya/prog/myprog.f. Это упрощает взаимный доступ к библиотекам и программам. Общепринято библиотеки класть в подкаталог lib, а примеры программ в prog.

В каталоге DEVEL собраны наработки других SP-Forth'еров, с кратким (очень кратким) их обзором вы можете ознакомиться в SPF_DEVEL, либо пройтись по файлам самому.

В каталоге samples/win/spfwc вы найдёте GUI фронтенд для SPF. Просто запустите compile.bat и скопируйте полученный бинарный файл spf4wc.exe в корневой каталог установки (рядом с spf4.exe).


Как запускать и подключать файлы?
В командной строке скормить файл SPF'у можно просто указав путь к нему в параметрах запуска,

spf.exe ~vasya/prog/myprog.f
Заметьте, что путь для включения могут быть как абсолютным, так и относительно каталога devel.

В консоли SPF (в режиме интерпретации) достаточно набрать имя файла:

~vasya/prog/myprog.f
В целях совместимости лучше подключать явно:

S" ~vasya/prog/myprog.f" INCLUDED
Но правильнее всего использовать REQUIRE.


REQUIRE
В SPF есть нестандартное слово REQUIRE ("word" "file" -- ), где word - некоторое слово определённое в библиотеке file. Если слово word присутствует в контекстном словаре, REQUIRE считает, что библиотека уже была подключена и не загружает её. Так избегается двойная загрузка библиотек. Если же найти word не удаётся - библиотека подключается обычным образом (через INCLUDED). Например:

REQUIRE CreateSocket ~ac/lib/win/winsock/sockets.f
REQUIRE ForEach-Word ~pinka/lib/words.f
REQUIRE ENUM ~nn/lib/enum.f
NB: В качестве word выбирайте всегда наиболее уникальное слово из подключаемой библиотеки.


Пути поиска файлов для INCLUDED
S" file.f" INCLUDED будет искать в перечисленных ниже местах в именно таком порядке

короткое имя файла file.f (т.е. в текущем каталоге)
PATH_TO_SPF.EXE/devel/file.f (т.о. удобно использовать чужие наработки),
PATH_TO_SPF.EXE/file.f (так подключаются стандартные либы и другие файлы из поставки SPF).
Если требуется указать больше путей поиска (например использовать форт код разделяемый между системами, или неважно - любой код вне дерева каталогов SPF который не может быть адресован относительно текущего файла), то можно либо переопределить FIND-FULLNAME (который VECT) либо использовать внешнюю либу - ~ygrek/spf/included.f.

TODO: Вынести отдельно

Тогда потребуется только прописать в spf4.ini

~ygrek/spf/included.f
with: my_path\
S" my path with spaces/" with
и все файлы будут искаться в my_path в дополнение к описанному выше алгоритму (my_path может быть как абсолютным так и относительно spf.exe).


Модули
В SPF есть модули, которые позволяют скрывать некоторые внутренние слова библиотек выводя наружу только слова для взаимодействия.

MODULE: vasya-lib
\ внутренние слова
EXPORT
\ слова взаимодействия, видные снаружи, компилируются во внешний словарь.
DEFINITIONS
\ опять внутренние слова
EXPORT
\ ну вы поняли :)
;MODULE
Код MODULE: vasya-lib можно писать много раз - последующие вызовы будут докомпилировать слова в тот же модуль. На самом деле слово определённое через MODULE: это обычный словарь.


Регистро-зависимость
SPF регистрозависим, то есть для него слова CHAR , Char и char - три разных слова. Сделать SPF независимым от регистра слова можно подключив файл lib/ext/caseins.f. По умолчанию, регистро-независимость включается сразу после подключения lib/ext/caseins.f.

Чтобы регистро-независимость временно выключать/включать, используйте переменную CASE-INS:

REQUIRE CASE-INS lib/ext/caseins.f
2 dup * .
CASE-INS OFF \ вернуть обратно режим зависимости от регистра
2 DUP * .
CASE-INS ON \ включить регистро-независимость
2 dup * .



За это сообщение автора F-MAP поблагодарил: vikt
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Блог программиста любителя
СообщениеДобавлено: Ср сен 25, 2024 03:08 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 12, 2008 03:18
Сообщения: 331
Откуда: Москва
Благодарил (а): 37 раз.
Поблагодарили: 7 раз.
Спасибо большое!

_________________
Линукс решает, винда глотает.


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

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


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

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


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

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