F-Script - это объектно-ориентированный язык программирования сценариев для операционной системы MacOS от Apple, разработанный Филиппом Муженом. F-Script - это интерактивный язык, основанный на Smalltalk , использующий собственный MacOS Cocoa API.
Парадигма | мультипарадигма : объектно-ориентированный , массив |
---|---|
Разработано | Филипп Мужен |
Разработчик | Джонатан Митчелл, Илья Кулаков и другие |
Впервые появился | 28 июня 2009 г . |
Стабильный выпуск | 2.2.1 / 5 февраля 2014 г . |
Печатная дисциплина | динамичный |
Платформа | x86 |
Операционные системы | macOS |
Лицензия | Открытый источник |
Веб-сайт | github |
Основные реализации | |
F-скрипт | |
Под влиянием | |
Smalltalk , APL |
Обзор
F-Script основан на чисто объектной парадигме: каждая сущность, которой манипулируют в языке, является объектом. Его базовый синтаксис и концепции идентичны таковым из языка Smalltalk (канонический пример объектно-ориентированного языка) со специальными расширениями для поддержки программирования массивов, как в языке APL .
F-Script предоставляет истолковано , интерактивную среду с поддержкой рабочих областей, которые обеспечивают богатый набор функций , в том числе объектов упорства , распределенные объекты , графический пользовательский интерфейс (GUI) базы, базы данных доступа, среди прочего.
Синтаксис
Как и в Smalltalk, синтаксис F-Script очень прост и не требует специальной нотации для управляющих структур, которые унифицированно предоставляются message send
операцией. В отличие от Smalltalk, F-Script предоставляет специальные расширения для поддержки Array
класса, используя фигурные скобки для описания литеральных массивов, которые могут содержать любые выражения F-Script.
Например, {1+3, 'name', true}
это допустимый литерал массива . Пустой массив обозначается {}
. Массивы массивов поддерживаются прозрачно, поскольку любой массив - это просто еще один объект.
Отправка сообщения
Выражения сообщений в F-Script аналогичны выражениям в Smalltalk: они указывают, какой объект является получателем сообщения, какая операция вызывается сообщением и какие объекты аргументов необходимы для этой операции. F-Script поддерживает унарные, двоичные сообщения и сообщения с ключевыми словами. Семантика сообщений F-Script расширена для поддержки программирования массивов за счет признания того, что операция с массивом, такая как добавление к числовым векторам, должна рассматриваться как генерация ряда сообщений, касающихся элементов задействованных векторов
Таким образом, если A = {1, 2, 3}
и B = {10, 20, 30}
, то F-Script позволяет A + B = {11, 22, 33}
.
Применение
F-сценарии в основном используются в качестве легкого сценариев слоя поверх MacOS «с какао интерфейса прикладного программирования (API). Он может быть встроен в приложения с использованием фреймворка F-Script и палитр Interface Builder . Его также можно использовать в интерактивном режиме от интерпретатора F-Script до прототипов приложений. Наконец, его можно использовать для исследования иерархии объектов приложений с помощью инжектора, такого как F-Script Anywhere.
Вилки
Первоначальная разработка F-скрипта Филиппа Мужена остановилась на версии 2.1 в 2011 году. Илья Кулаков (Kentzo) взял на себя ответственность за веб-сайт FScript.org и обновил программу для работы с Mac OS X 10.7–10.10 до версии 2.3 2014 года, опираясь на Джонатана. Работа Митчелла по модернизации. Кулаков отметил, что, поскольку F-Script глубоко связан с системой, код необходимо изменить, чтобы отразить структуру, доступную в каждой версии Mac OS X. Последнее обновление этой цепочки работ было сделано в 2018 году Вольфгангом Байрдом, который обновил F-Script для работы с Mac OS X 10.12. [1]
Рекомендации
- ↑ Бэрд, Вольфганг (23 марта 2020 г.). "w0lfschild / F-Script" .