Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Ср окт 17, 2018 11:12

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 174 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 12  След.
Автор Сообщение
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Чт дек 21, 2017 22:25 
Не в сети

Зарегистрирован: Вт ноя 07, 2017 20:47
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.
«Система», уважаемый gudleifr, включает ещё электрическую розетку, линии ЛЭП и электростанции с их компьютерами. Но это не делает избыточной «Электронику МК-161», которая заряжается от розетки и на которой запущена программа Callisto.mkp

МК-161 с Каллисто это обычный калькулятор. Типо тех, что используют бухгалтеры, студенты и инженеры. Только помимо 2 2 + там можно ещё написать : SUMSQ x² ↔︎ x² + ; и определять другие слова, нужные для конкретных задач.

Весьма сложные проекты, кстати, можно разрабатывать на Каллисто, учитывая механизм <BUILDS DOES>


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Чт дек 21, 2017 22:36 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 631
Благодарил (а): 0 раз.
Поблагодарили: 5 раз.
Эх, опять позиция все дураки один я умный.
Говорите с gudleifr об реализации, а не о идеях.
Ему надоест и он уйдёт

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Чт дек 21, 2017 22:42 
ath писал(а):
МК-161 с Каллисто это обычный калькулятор.
К сожалению, не обычный. Он стоит как 30 ПЭВМ. И поэтому тем, кто способен воткнуть в упомянутую Вами розетку зарядку своего наладонника, планшета или ай-чего-то, еще надо доказать, что он на что-то годен.

ath писал(а):
можно ещё написать : SUMSQ x² ↔︎ x² + ;
... а можно и просто x2.

ath писал(а):
Весьма сложные проекты, кстати, можно разрабатывать на Каллисто, учитывая механизм <BUILDS DOES>
Ну, как бы из Вашей истории следует, что этого делать не стоит: тепловая смерть вселенной наступит раньше окончания вычислений. Почему древний способ чисто ручной компиляции с красиво разрисованной бумажки тут работает лучше.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Чт дек 21, 2017 23:03 
Не в сети

Зарегистрирован: Вт ноя 07, 2017 20:47
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.
Рассуждать на тему «Электроники МК-161» и её старшей сестры МК-152 можно долго. Но это мы уже лет 10 делаем и, честно говоря, скучно. Все ходы и выходы уже давно изучены, пластинка заезжана и новое вы вряд ли мне расскажете.

Факт, что кому-то новосибирские ЭКВМ нравятся, кто-то от них в восторге. А кому-то они мало интересны, предпочитают технику зарубежного изготовления — первая доза обходится дешевле, работает быстрее и вроде как даже «глюки» ихних мобильников можно изучить, запомнить и простить. :D :D

Но если брать две программы. Старинную советскую (работает на МК-161 «из коробки»):

00.Fx² 01.↔︎ 02.Fx² 03.+ 04.С/П

и её современный каллистянский вариант (работает на МК-161 с Каллисто):

: SUMSQ x² ↔︎ x² + ;

то каллистянский читать и использовать проще. Новое слово SUMSQ легко использовать в последующих вычислениях. «Тепловая смерть вселенной» наступит не раньше. По скорости работы Каллисто медленнее родного языка «Электроники МК-161» в 44,5 раз, зато быстрее советской «Электроники МК 56» в 18,9 раз. А многие до сих пор пользуются советскими ПМК и ничего, Вселенная жива пока ещё.

gudleifr писал(а):
ath писал(а):
можно ещё написать : SUMSQ x² ↔︎ x² + ;
... а можно и просто x2.


Вот этот ваш пример не понял. Объясните, если не сложно.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Чт дек 21, 2017 23:47 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6417
Благодарил (а): 14 раз.
Поблагодарили: 101 раз.
ath писал(а):
Рассуждать на тему «Электроники МК-161» и её старшей сестры МК-152 можно долго. Но это мы уже лет 10 делаем и, честно говоря, скучно. Все ходы и выходы уже давно изучены, пластинка заезжана и новое вы вряд ли мне расскажете.


И то, что это по сути фричество, не вызывает никаких ощущений? Факт тот, что имея определенную элементную базу МК, да при избыточности даже 8-разрядного ядра для решаемых задач, внутри можно делать хоть эмулятор Энигмы. И оно даже будет работать. Однако это ни в коей мере не доказывает эффективности подхода. По факту, МК-161 как самостоятельный процессор не существует, а представлен только в качестве эмулятора на МК с другой архитектурой. Что на этом оказались выпущены какие-то приборы - личное дело разработчиков, пока им нравится и пока укладываются в бюджет. Все равно при наличии в составе изделия пластика, металла и прочей фурнитуры экономить на копеечных электронных компонентах нет ни малейшего смысла. Однако нельзя игнорировать то, что эмулятор МК-161 (а также всей линейки советских ПМК) можно сделать и на каком-нибудь Java и загружать на планшет или дешевый ноутбук в качестве игрушки. Можно сделать и ZX-Spectrum в железе, но это не отменяет факта, что сейчас эмуляторы Спектрума доступны даже онлайн. Поэтому ностальгировать вполне можно, класть в собственные изделия по принципу legacy разработок - ну можно, раз такое групповое хобби образовалось. Но а дальше-то? Вести фортеров в светлое будущее, подсвечивая экраном 16x4 символа? :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Чт дек 21, 2017 23:49 
ath писал(а):
Рассуждать на тему «Электроники МК-161» и её старшей сестры МК-152 можно долго.
Ну, как бы, здесь это было бы интересно. Мы-то не в курсе ваших новосибирских инвенций. Кто берет, под что, за что хвалят, что просят добавить...

ath писал(а):
то каллистянский читать и использовать проще.
Кому как. Я (на 34-м) привык к совершенно другому стилю.

ath писал(а):
Вот этот ваш пример не понял.
Я к тому, что код возведения числа в квадрат - одна ячейка. Привязывать сюда стековые манипуляции, которые на MK привык оптимизировать, мне кажется избыточным.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Пт дек 22, 2017 01:51 
Не в сети

Зарегистрирован: Вт ноя 07, 2017 20:47
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.
В данном случае возводится в квадрат не одно число, а два — после чего квадраты двух чисел суммируются. На языке МК это 5 шагов, включая команду останова или возврата из подпрограммы. Из них два шага — да, одношаговая операция возведения числа в квадрат.

Ваше «... а можно и просто x2.» по-прежнему загадка.


Последний раз редактировалось ath Пт дек 22, 2017 02:05, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Пт дек 22, 2017 02:00 
Не в сети

Зарегистрирован: Вт ноя 07, 2017 20:47
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.
gudleifr писал(а):
ath писал(а):
то каллистянский читать и использовать проще.
Кому как. Я (на 34-м) привык к совершенно другому стилю.

И этот стиль максимально сохранён, насколько возможно. Зато фортовская часть Каллисто позволяет делать, например, вот такие вещи:
Код:
listmkt v1.0 (c) Васильев И.В., 7 ноября 2017, Файл: B043.mkt
  0 \ Pacman music #43, AtH, 20150413
  1 
  2 forth definitions  5 value темп
  3 
  4 vocabulary ММЯ  ММЯ definitions  \ Музыкальный Макро Язык
  5 : нота  ( частота длительность −−)
  6   <builds темп × , , does> here 4 cmove 4 allot ;
  7 : ;  ( −−)   ?csp  here over 2+ − 4 / ↔ !
  8   [compile] forth ; immediate
  9 
 10 0 1 нота .  0 2 нота ..  0 10 нота .10
 11 2470 1 нота b<  4939 ↑ 1 нота b  2 нота b+  2616 1 нота c
 12 5233 1 нота c>  3111 ↑ 1 нота d# 3 нота d#++
 13 3296 ↑ 1 нота e 3 нота e++  3492 1 нота f   3699 1 нота f#
 14 3920 1 нота g  4153 1 нота g#  4400 1 нота a
 15 
 16 forth definitions
 17 : :мелодия  ( −−)   <builds here  2 allot  !csp  ММЯ
 18   does> ↑ 2+ ↔ u@ (play) ;
 19 
 20 :мелодия Пакмэн  \ Манве, 13 апреля 2015
 21   b< . b . f# . d# . b f# .. d#++ .     \ такт 1
 22   c . c> . g . e . c> g .. e++ .        \ такт 2
 23   b< . b . f# . d# . b f# .. d#++ .     \ такт 3
 24   d# e f . f f# g . g g# a . b+ .10 ;   \ такт 4
 25 
 26 : tune  \ ( −−)   воспроизведение мелодии
 27   begin Пакмэн ?break again ;
 28 \s

На ходу создаётся собственный макроязык — после чего на этом языке записывается мелодия. На старом входном языке тоже можно проигрывать мелодии. Но свой макроязык создавать намного сложнее, а запись будет менее наглядная.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Пт дек 22, 2017 20:13 
ath писал(а):
... Pacman music ...
Спасибо за хороший пример. Понес к себе в "Работу над ошибками - Ненужные структурности".


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Сб дек 23, 2017 12:31 
P.S.
Попробую подвести итог.
FORTH - это средство получить от машины то, что надо, без лишнего напряга.
Но от МК-161 ничего нельзя получить в принципе.
Огромное количество операций "программирования" для этого девайса надо делать вручную только потому, что человек делает их лучше и быстрее него. И если кто-то хочет "FORTH для МК-161", то он должен включить человека внутрь FORTH-машины...


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Вс дек 24, 2017 03:48 
Не в сети

Зарегистрирован: Вт ноя 07, 2017 20:47
Сообщения: 74
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.
Повторюсь — первая версия Каллисто для МК-161 опубликована. Есть Proof of concept Форта для ЭКВМ. Вторая версия языка будет посвящена оптимизации по времени исполнения и принесёт некоторые другие улучшения. Например, уже продуман способ замены устаревшего <BUILDS DOES> на CREATE DOES> — что не так было просто сделать на МК-161 из-за невозможности исполнять код языка МК в области данных, где хранится шитый код.

Кому интересно, скачивайте, изучайте, присоединяйтесь. Исходный текст, руководство, документация, примеры, всё опубликовано и доступно по ссылкам в начале темы. По поводу второй версии — мне любопытно, например, обсудить способ хэширования имён слов в 12-разрядном десятичном регистре МК-161. Можно ещё задействовать 2 разряда порядка, знаки порядка и мантиссы. В идеале хотелось бы хранить 3 первых символа плюс длину имени. Это должно существенно ускорить FIND и дать выигрыш во времени компиляции «на борту».

Кому не интересна ни сама МК-161, ни работа над входным языком (его, кстати, можно будет перенести и на другие отечественные ПМК по мере их появления на рынке) — работайте над другими проектами и платформами, которые вам по жизни интересны больше. :D


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Вс дек 24, 2017 03:59 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6417
Благодарил (а): 14 раз.
Поблагодарили: 101 раз.
ath писал(а):
Кому не интересна сама МК-161 и работа над входным языком (его, кстати, можно будет перенести и на другие отечественные ПМК по мере их появления на рынке) — работайте над другими вещами, которые вам по жизни интересны больше.

А кому интересна эта работа - могут использовать информационные ресурсы компании-разработчика МК-161. Использование данного форума в качестве площадки для общения подразумевает согласие обсуждать те темы и с той стороны, которая интересна сообществу. В том числе и вопросы вида "почему же все так печально?".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Вс дек 24, 2017 14:01 
ath писал(а):
не интересна ... сама МК-161
Очень интересна.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Ср янв 03, 2018 17:07 
Случайно нашелся рисунок.
Конец 80-х.
Изображение
Можно видеть зачатки стековых комментариев (в виде подчеркиваний). Также (по смысловым комментариям) можно видеть, что "стандартные" FORTH-слова были бы только лишним геморроем.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Каллисто 1.0 для «Электроники МК-161»
СообщениеДобавлено: Чт янв 04, 2018 20:42 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 891
Благодарил (а): 3 раз.
Поблагодарили: 33 раз.
gudleifr писал(а):
ath писал(а):
не интересна ... сама МК-161
Очень интересна.

Если Калисто-калькуятор делать на базисе ПК. то это будет калькулятор на базе Форт ОС для ПК :)


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

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


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

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


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

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