ПО, ЭВМ и АСУ из Таможенного Союза

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » ПО, ЭВМ и АСУ из Таможенного Союза » книги и публикации » 2005-10-26, Д.А. Понятов


2005-10-26, Д.А. Понятов

Сообщений 1 страница 10 из 10

1

ФОРТ. Язык и операционная система.

0

2

Страница 12

В отличие от компьютеров человек не обладает способностью мыслить категориями единиц и нулей. Поэтому он нуждается в языке для общения с компьютером.

Всё было не так! Это не человек нуждается в языке для общения с компьютером. Это компьютер нуждается в том, чтобы работать на языке человека. Конечно, как неодушевлённый предмет, компьютер не может ни в чём нуждаться. Тогда мысль можно переформулировать так:
человек нуждается в том, чтобы языком общения с компьютером стал человеческий.

Я понимаю, что хотел сказать автор. Он хотел сказать, что любой более высокоуровневый язык будет лучше и удобнее нулей и единиц и надо стремиться к тому, чтобы сделать более высокоуровневый язык, поэтому будем делать его как умеем (то есть формальным).

Но в формулировке "нужен язык для общения с компьютером" так и читается "скупой и ограниченный". Потерян идеал стремления к человечности языка.

0

3

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

Опять всё неправильно. Могли ли бы мы сформировать в памяти последовательность единиц и нулей не используя мнемонические инструкции? Конечно да, причём несколькими способами. Мы могли бы обозначить нули и единицы символами "1" и "0" и формировать значения в памяти из цепочки таких символов. А могли бы ввести группированные символы, например шестнадцатеричные цифры, и формировать значения в памяти из записи в шестнадцатеричных числах.
То есть, функция "размещения в памяти", это совершенно отдельная функция, которая не имеет никакого отношения к ассемблеру. Может быть мы вообще будем формировать напряжения на шине при помощи контактов ("включателей/выключателей") аппаратно. В лабораторных работах в ВУЗе на микропроцессорном комплекте 1804 так и делали.

Чем же на самом деле является "программа ассемблер"? Она является моделью, которую вложили в компьютер для повышения уровня абстракций языка. То есть, во-первых, эти абстракции сформулировали в терминах тех нулей и единиц, а во вторых автоматизировали работу с этими абстракциями (и записали нулями и единицами).

Все дальнейшие языки являются введением новых абстракций (и повышением уровня этих абстракций). Собственно и машина сама-по-себе тоже кое-что реализует аппаратно (некоторые абстракции). Всё-таки свести современный процессор к базису логических элементов - отдельная большая работа.

Чтобы работать с абстракциями придумали словари, толковые словари, тезаурусы, онтологии. Большое дело такая работа, не просто и непросто "сформировать в памяти".

Отредактировано Лис (2023-03-14 19:43:01)

0

4

Страница 22:
«Многие разработчики слышали о языке Форт, но не используют его из-за отсутствия хорошей документации»

Да-да, об этом мне ещё Уткин говорил про ОдинСкрипт.

Отредактировано Лис (2023-03-16 07:05:26)

0

5

Factor (язык программирования) — Википедия

Основное влияние на язык Factor оказали языки программирования Joy, Forth, Lisp и Self.

вся работа со строками была переведена на Unicode с поддержкой UTF-8 и UTF-16

0

6

«Программирование на языкe Форт cвoдитcя к определению нoвыx, cпециализированных
для целей пользователя, слов в терминах ранее введенных cлoв.»

ну если вообще говорить про русский язык, то тоже есть толковые словари, где одни слова определяются через другие.
У Апресяна, например есть "Активный словарь русского языка". Это, получается, у него русский форт?

0

7

Лис написал(а):

у него русский форт?

Придумать название для операционной системы,
написанной на Форте,
очень легко:
Форточки!

0

8

NuShaman написал(а):

Форт-очки!

Я никогда VR не увлекался, считаю, что технологии ещё не доросли (стоимость, практичность).

0

9

Имеющийся у меня экземпляр книги недописан, там пустые главы.

Но спросить я хотел не это.
Вот у Форта единый синтаксис для всего - часть токенов низкоуровневые и поставляются заранее запрограммированными таким образом, что ими можно читать в память и стек и писать потом туда же.
Ну и что? Что именно даёт такого единость синтаксиса?
Всё равно архитектура машины пролезет в исходный код на форте, а если там есть операционная система, то и константы операционной системы.

http://compiler.su/pochemu-obrechyon-yazyk-fort.php

«Шитый код» проще, «дешевле» и эффективнее байт-кодов

Вот с этим утверждением я тоже несогласен. Во-первых, всё зависит от конкретики.
Во-вторых, регистровые машины эффективнее стековых.

Отредактировано Лис (2023-03-17 20:14:07)

0

10

Я бы даже сказал, что синтаксис форта является его минусом. Не потому что там "обратная польская запись", а вообще, в принципе.
По мере усложнения моделей в виртуальных машинах им требуются всё более сложные, подходящие им (моделям) языки.
А если синтаксис форта поменять, то это уже будет и не форт, а язык в новом синтаксисе.

Тут встаёт вопрос - а единый русский, это нормально, или слабовато?

Отредактировано Лис (2023-03-17 21:11:46)

0


Вы здесь » ПО, ЭВМ и АСУ из Таможенного Союза » книги и публикации » 2005-10-26, Д.А. Понятов