Алеф является прекращено одновременно язык программирования , разработанный в рамках плана 9 операционной системы с помощью Фил Уинтерботтом из Bell Labs . Он реализован канал на основе параллельности модель Newsqueak в скомпилированный , C -как языка.
Парадигма | скомпилированный , параллельный , структурированный |
---|---|
Разработано | Фил Уинтерботтом |
Впервые появился | 1992 г. |
Печатная дисциплина | Статичный , сильный |
Операционные системы | План 9 от Bell Labs |
Под влиянием | |
C , Newsqueak | |
Под влиянием | |
Лимбо , Ржавчина , Вперед |
История
Алеф появился в первой и второй редакциях Plan 9, но был оставлен во время разработки третьей редакции. [1] [2] Роб Пайк позже объяснил кончину Alef тем, что в нем не было автоматического управления памятью , несмотря на то, что Пайк и другие люди убеждали Винтерботтома добавить в язык сборку мусора ; [3] также, в слайд-шоу в феврале 2000 года Пайк отметил: «… хотя Alef был плодотворным языком, оказалось слишком сложно поддерживать вариантный язык в нескольких архитектурах, поэтому мы взяли то, что узнали из него, и создали библиотеку потоков для C. " [4]
Алеф был заменен двумя средами программирования. Язык программирования Limbo можно считать прямым наследником Alef и наиболее часто используемым языком в операционной системе Inferno . Модель параллелизма Alef была воспроизведена в третьей редакции Plan 9 в форме библиотеки libthread , которая делает некоторые функции Alef доступными для программ C и позволяет транслировать существующие программы Alef (такие как Acme ). [5]
Пример
Этот пример взят из справочника Alef. [1] Этот фрагмент иллюстрирует использование типа данных кортеж .
( int , byte * , byte ) func () { return ( 10 , "привет" , ' c ' ); }void main () { int a ; byte * str ; байт c ; ( a , str , c ) = func (); }
Смотрите также
Рекомендации
- ^ a b Уинтерботтом, Фил (1995). «Справочное руководство по языку алеф» . Руководство программиста Plan 9: Том второй . Мюррей Хилл: AT&T.
- ^ «Предисловие к третьему (2000 г.) изданию» . Plan 9 Руководство . Мюррей Хилл: Bell Labs. Июнь 2000 . Проверено 29 октября 2012 .
- ^ Пайк, Роб (2010). Истоки параллелизма в Go . OSCON Лагерь развивающихся языков.
- ^ Пайк, Роб. «Рио: Дизайн параллельной оконной системы» (PDF) . Проверено 8 марта 2013 года .
- ^ "нить (2)" . Plan 9 Руководство . Проверено 29 октября 2012 .
- Фландрена, Боб (1995). «Руководство пользователя Алеф» . Руководство программиста Plan 9: Том второй . Мюррей Хилл: Bell Labs.
- Фил Уинтерботтом (1992-10-20). «План9 ВМ» . Группа новостей : comp.os.research . Usenet: [email protected] .