ФОРТ. Язык и операционная система.
2005-10-26, Д.А. Понятов
Сообщений 1 страница 10 из 10
Поделиться22023-03-14 19:14:15
Страница 12
В отличие от компьютеров человек не обладает способностью мыслить категориями единиц и нулей. Поэтому он нуждается в языке для общения с компьютером.
Всё было не так! Это не человек нуждается в языке для общения с компьютером. Это компьютер нуждается в том, чтобы работать на языке человека. Конечно, как неодушевлённый предмет, компьютер не может ни в чём нуждаться. Тогда мысль можно переформулировать так:
человек нуждается в том, чтобы языком общения с компьютером стал человеческий.
Я понимаю, что хотел сказать автор. Он хотел сказать, что любой более высокоуровневый язык будет лучше и удобнее нулей и единиц и надо стремиться к тому, чтобы сделать более высокоуровневый язык, поэтому будем делать его как умеем (то есть формальным).
Но в формулировке "нужен язык для общения с компьютером" так и читается "скупой и ограниченный". Потерян идеал стремления к человечности языка.
Поделиться32023-03-14 19:42:40
Каждая мнемоническая инструкция, в свою очередь, ассемблируется (размещается) с помощью программы, которая написана на машинном языке так, чтобы сформировать в памяти последовательность из единиц и нулей
Опять всё неправильно. Могли ли бы мы сформировать в памяти последовательность единиц и нулей не используя мнемонические инструкции? Конечно да, причём несколькими способами. Мы могли бы обозначить нули и единицы символами "1" и "0" и формировать значения в памяти из цепочки таких символов. А могли бы ввести группированные символы, например шестнадцатеричные цифры, и формировать значения в памяти из записи в шестнадцатеричных числах.
То есть, функция "размещения в памяти", это совершенно отдельная функция, которая не имеет никакого отношения к ассемблеру. Может быть мы вообще будем формировать напряжения на шине при помощи контактов ("включателей/выключателей") аппаратно. В лабораторных работах в ВУЗе на микропроцессорном комплекте 1804 так и делали.
Чем же на самом деле является "программа ассемблер"? Она является моделью, которую вложили в компьютер для повышения уровня абстракций языка. То есть, во-первых, эти абстракции сформулировали в терминах тех нулей и единиц, а во вторых автоматизировали работу с этими абстракциями (и записали нулями и единицами).
Все дальнейшие языки являются введением новых абстракций (и повышением уровня этих абстракций). Собственно и машина сама-по-себе тоже кое-что реализует аппаратно (некоторые абстракции). Всё-таки свести современный процессор к базису логических элементов - отдельная большая работа.
Чтобы работать с абстракциями придумали словари, толковые словари, тезаурусы, онтологии. Большое дело такая работа, не просто и непросто "сформировать в памяти".
Отредактировано Лис (2023-03-14 19:43:01)
Поделиться42023-03-16 07:04:07
Страница 22:
«Многие разработчики слышали о языке Форт, но не используют его из-за отсутствия хорошей документации»
Да-да, об этом мне ещё Уткин говорил про ОдинСкрипт.
Отредактировано Лис (2023-03-16 07:05:26)
Поделиться52023-03-16 07:26:30
Factor (язык программирования) — Википедия
Основное влияние на язык Factor оказали языки программирования Joy, Forth, Lisp и Self.
вся работа со строками была переведена на Unicode с поддержкой UTF-8 и UTF-16
Поделиться62023-03-16 12:35:31
«Программирование на языкe Форт cвoдитcя к определению нoвыx, cпециализированных
для целей пользователя, слов в терминах ранее введенных cлoв.»
ну если вообще говорить про русский язык, то тоже есть толковые словари, где одни слова определяются через другие.
У Апресяна, например есть "Активный словарь русского языка". Это, получается, у него русский форт?
Поделиться72023-03-16 13:32:23
у него русский форт?
Придумать название для операционной системы,
написанной на Форте,
очень легко:
Форточки!
Поделиться82023-03-16 13:49:31
Форт-очки!
Я никогда VR не увлекался, считаю, что технологии ещё не доросли (стоимость, практичность).
Поделиться92023-03-17 19:16:39
Имеющийся у меня экземпляр книги недописан, там пустые главы.
Но спросить я хотел не это.
Вот у Форта единый синтаксис для всего - часть токенов низкоуровневые и поставляются заранее запрограммированными таким образом, что ими можно читать в память и стек и писать потом туда же.
Ну и что? Что именно даёт такого единость синтаксиса?
Всё равно архитектура машины пролезет в исходный код на форте, а если там есть операционная система, то и константы операционной системы.
http://compiler.su/pochemu-obrechyon-yazyk-fort.php
«Шитый код» проще, «дешевле» и эффективнее байт-кодов
Вот с этим утверждением я тоже несогласен. Во-первых, всё зависит от конкретики.
Во-вторых, регистровые машины эффективнее стековых.
Отредактировано Лис (2023-03-17 20:14:07)
Поделиться102023-03-17 21:10:59
Я бы даже сказал, что синтаксис форта является его минусом. Не потому что там "обратная польская запись", а вообще, в принципе.
По мере усложнения моделей в виртуальных машинах им требуются всё более сложные, подходящие им (моделям) языки.
А если синтаксис форта поменять, то это уже будет и не форт, а язык в новом синтаксисе.
Тут встаёт вопрос - а единый русский, это нормально, или слабовато?
Отредактировано Лис (2023-03-17 21:11:46)