Оглавление
- 1 Лаборатории Калейды
- 1.1 История Kaleida Labs
- 1.2 Проблемы и изменения на рынке
- 1.3 Совместные предприятия и разработки
- 1.4 Разработка и закрытие
- 1.5 Наследие и влияние
- 1.6 Описание ScriptX
- 1.7 Особенности синтаксиса
- 1.8 Многопоточность и синхронизация
- 1.9 История и развитие
- 1.10 Пример кода
- 1.11 Рекомендации
- 1.12 Полный текст статьи:
- 2 Калейда Лабс
Лаборатории Калейды
-
История Kaleida Labs
- Основана в 1991 году для производства мультимедийного кроссплатформенного медиаплеера Kaleida и языка программирования ScriptX.
- Нацелена на выпуск интерактивных компакт-дисков.
- В 1994 году система имела высокие системные требования и не была выпущена в формате PowerPC.
-
Проблемы и изменения на рынке
- Стремительные изменения на рынке, такие как распространение Всемирной паутины и Java, привели к снижению популярности интерактивных компакт-дисков.
- Kaleida не смогла добиться значительных успехов и была закрыта в 1996 году.
-
Совместные предприятия и разработки
- Kaleida была одним из трех совместных предприятий Apple и IBM, включая операционную систему Taligent и альянс AIM с Motorola.
- ScriptX был одной из нескольких аналогичных программных платформ, появившихся в Apple в тот период.
-
Разработка и закрытие
- В 1992 году компания начала деятельность с медиаплеером Kaleida Media Player.
- В 1993 году Голдхабер был заменен на посту генерального директора Майком Брауном.
- В 1994 году компания сократила штат и сосредоточилась на доработке ScriptX и библиотеки мультимедийных объектов.
- В 1995 году стало ясно, что рынок компакт-дисков сокращается, и Kaleida переключилась на доставку объектов через Интернет.
- В 1996 году Apple и IBM объявили о закрытии Kaleida Labs, и разработка ScriptX перешла к Apple.
-
Наследие и влияние
- ScriptX был реализован на C с использованием библиотеки Objects in C.
- Библиотека Objects in C содержит более 240 классов для поддержки мультимедиа и создания пользовательских интерфейсов.
- Ранние версии Flash во многом являются клоном ScriptX.
-
Описание ScriptX
- Объектно-ориентированный скриптовый язык
- Использует элементы дизайна из Smalltalk, Dylan, Hypertalk, Lisp, Object Logo, C++ и Pascal
- Поддерживает множественное наследование и динамическое связывание объектов
- Нет примитивных типов данных, все объекты являются экземплярами класса
-
Особенности синтаксиса
- Каждая строка программы представляет собой выражение, возвращающее значение
- Нет инструкций, каждая строка является выражением
- Оператор присваивания := аналогичен оператору присваивания в Pascal
- Переменные помечаются как локальные для определения области действия
-
Многопоточность и синхронизация
- Поддерживает многопоточность, но не многопроцессорность
- Предоставляет средства для синхронизации временных последовательностей действий
- Класс Clock обеспечивает синхронизацию мультимедийных приложений
-
История и развитие
- После закрытия Kaleida Labs Уэйнрайт стал главным разработчиком MAXScript
- MAXScript похож на ScriptX и используется для обработки контента для игр и 3D-приложений
-
Пример кода
- Метод sendTrackDrop отправляет сообщение trackDrop другому объекту
- Метод может быть определен для любого класса в любом файле
-
Рекомендации
- Дальнейшее чтение: руководства и документация по ScriptX
- Внешние ссылки: обзорная страница ScriptX, патенты Kaleida Labs