Twierdza (język programowania)
Deweloper | Laboratoria Słońca |
---|---|
Po raz pierwszy pojawiły się | 2006 |
Ostateczne wydanie | 1.0_5033 / 7 września 2011
|
Dyscyplina pisania | Statyczny |
Platforma | Java SE 1.6+ |
system operacyjny | Międzyplatformowe |
Licencja | BSD |
Strona internetowa | |
Pod wpływem | |
Fortrana , Scali , Haskella |
Fortress to wycofany z produkcji eksperymentalny język programowania do obliczeń o wysokiej wydajności , stworzony przez Sun Microsystems przy finansowaniu z projektu DARPA High Productivity Computing Systems . Jednym z projektantów języka był Guy L. Steele Jr. , którego poprzednie prace obejmowały Scheme , Common Lisp i Javę .
Projekt
Nazwa „Twierdza” miała kojarzyć się z bezpiecznym Fortranem , tj. „językiem do obliczeń o wysokiej wydajności, który zapewnia abstrakcję i bezpieczeństwo typów na równi z zasadami współczesnego języka programowania”. Cechy języka obejmowały niejawną równoległość , obsługę Unicode i konkretną składnię podobną do notacji matematycznej . Język nie został zaprojektowany tak, aby był podobny do Fortranu. Syntaktycznie najbardziej przypomina Scalę , Standard ML i Haskell . Fortress został zaprojektowany od samego początku tak, aby zawierał wiele składniowych arkuszy stylów. Kod źródłowy może być renderowany jako tekst ASCII , w Unicode lub jako ładny obraz. Pozwoliłoby to na obsługę symboli matematycznych i innych symboli w renderowanym wyniku w celu łatwiejszego czytania. Narzędzie emacsie o nazwie fortify przekształca kod źródłowy Fortress oparty na ASCII na dane wyjściowe LaTeX .
Fortress został również zaprojektowany tak, aby był zarówno wysoce równoległy, jak i miał bogatą funkcjonalność zawartą w bibliotekach, czerpiąc z Javy. Na przykład for
była operacją równoległą, która niekoniecznie musiałaby iterować w ściśle liniowy sposób, w zależności od podstawowej implementacji. Jednak for
była funkcją biblioteczną i można ją było zastąpić inną wersją gustu programisty, zamiast być wbudowaną w język.
Projektanci Fortress maksymalnie zbliżyli składnię do pseudokodu i przeanalizowali setki artykułów, kursów, książek i czasopism z informatyki i matematyki , używając pseudokodu, aby wyodrębnić typowe wzorce użycia języka angielskiego i standardowej notacji matematycznej, gdy są używane do reprezentowania algorytmów w pseudokodzie . Następnie zmusili kompilator do utrzymania korespondencji jeden do jednego między pseudokodem a wykonywalną Fortress. [ potrzebne lepsze źródło ]
Historia
Fortress był jednym z trzech języków stworzonych dzięki środkom z projektu High Productivity Computing Systems ; pozostałe to X10 firmy IBM i Chapel firmy Cray, Inc. W listopadzie 2006 roku, kiedy DARPA zatwierdziła finansowanie trzeciej fazy projektu HPCS, X10 i Chapel zostały sfinansowane, ale Fortress nie, co doprowadziło do niepewności co do przyszłości Fortress.
W styczniu 2007 Fortress został wydany jako open source. Wersja 1.0 specyfikacji języka Fortress została wydana w kwietniu 2008 roku wraz ze zgodną implementacją ukierunkowaną na wirtualną maszynę Java .
W lipcu 2012 roku Steele ogłosił, że aktywny rozwój Fortress zakończy się po krótkim okresie likwidacji, powołując się na komplikacje związane z używaniem systemu typów Fortress na istniejących maszynach wirtualnych.
Przykład: Witaj świecie!
To jest wersja Fortress archetypowego programu hello world , jak przedstawiono w karcie referencyjnej Fortress :
komponent hello export Plik wykonywalny run() = println("Witaj, świecie!") end
Instrukcja export sprawia, że program jest wykonywalny , a każdy wykonywalny program w Fortress musi implementować funkcję run() . Plik, w którym zapisywany jest program do kompilacji, musi mieć taką samą nazwę jak podana w początkowej komponentu . Funkcja println() wyświetla komunikat „Witaj, świecie!” słowa na ekranie.
Zobacz też
Linki zewnętrzne
- Witryna projektu Fortress
- Aktywna oś czasu wdrażania specyfikacji i referencji
- Specyfikacja języka fortecy (najnowsza wersja to 1.0, 31 marca 2008 r.)
- The Soul of Fortress — wywiad z twórcą Fortress, Guyem Steele
- Strona główna projektu Fortress Open Source (licencja BSD)
- Grupa badawcza języka programowania firmy Sun
- Publikacje i specyfikacje fortecy
- Wtyczka Fortress do Eclipse (alfa)
- Często zadawane pytania dotyczące twierdzy
- Slajdy samouczka dotyczące twierdzy
- Listy mailingowe fortecy
- Artykuł Lambda the Ultimate
- Zamiennik Fortran firmy Sun staje się oprogramowaniem typu open source (CNET News.com, 12 stycznia 2007 r.)
- Prezentacja twierdzy
- Domyślnie równoległy — prezentacja przeglądu twierdzy z adnotacjami
- Języki programowania tablicowego
- Języki programowania współbieżnego
- Wycofane języki programowania
- Rodzina języków programowania Fortran
- Języki programowania JVM
- Numeryczne języki programowania
- Języki programowania stworzone w 2006 roku
- Języki programowania obsługujące jednostki miary
- Oprogramowanie korzystające z licencji BSD