Pevnost (programovací jazyk) - Fortress (programming language)
![]() | Tento článek je Použití externí odkazy nemusí dodržovat zásady nebo pokyny Wikipedie.Září 2016) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Vývojář | Sluneční laboratoře |
---|---|
Poprvé se objevil | 2006 |
Konečné vydání | 1.0_5033 / 7. září 2011 |
Psací disciplína | Statický |
Plošina | Java SE 1.6+ |
OS | Cross-platform |
Licence | BSD |
webová stránka | github |
Ovlivněno | |
Fortran, Scala, Haskell |
Pevnost je ukončený experiment programovací jazyk pro vysoce výkonné výpočty, vytvořil Sun Microsystems s financováním od DARPA je Vysoce produktivní výpočetní systémy projekt. Jedním z jazykových designérů byl Guy L. Steele Jr., jehož předchozí práce zahrnuje Systém, Společný Lisp, a Jáva.
Design
Jméno „pevnost“ mělo znamenat bezpečný Fortran, tj. „jazyk pro vysoce výkonné výpočty, který poskytuje abstrakci a typovou bezpečnost na stejné úrovni jako principy moderního programovacího jazyka“.[1] Funkce jazyka zahrnuty implicitně rovnoběžnost, Unicode podpora a beton syntax podobný matematická notace. Jazyk nebyl navržen tak, aby byl podobný Fortranu. Syntakticky se nejvíce podobá Scala, Standardní ML, a Haskell. Pevnost byla od samého počátku navržena tak, aby měla několik syntaktických stylů. Zdrojový kód lze vykreslit jako ASCII text, v Unicode, nebo jako domnělý obrázek. To by umožnilo podporu matematických symbolů a dalších symbolů ve vykresleném výstupu pro snazší čtení. An emacs -zvaný nástroj s názvem opevnit transformuje zdrojový kód pevnosti založený na ASCII na Latex výstup.[2]
Pevnost byla také navržena tak, aby byla vysoce paralelní a měla bohatou funkcionalitu obsaženou v knihovnách, čerpajících z Javy. Například pro
konstrukce smyčky byla paralelní operace, která by nemusela nutně iterovat striktně lineárním způsobem, v závislosti na základní implementaci. Nicméně pro
konstrukt byl funkcí knihovny a mohl být nahrazen jinou verzí programátoru, než aby byl zabudován do jazyka.
Návrháři pevnosti se svou syntaxi co nejvíce přiblížili pseudo kód a analyzoval stovky počítačová věda a matematika články, kurzy, knihy a časopisy využívající pseudokód k extrakci běžných vzorců používání anglického jazyka a standardní matematické notace, pokud jsou použity k reprezentaci algoritmy v pseudokódu. Poté přiměli kompilátor, aby se snažil udržovat vzájemnou korespondenci mezi pseudokódem a spustitelnou pevností.[3][je zapotřebí lepší zdroj ]
Dějiny
Pevnost byla jedním ze tří jazyků vytvořených s financováním z Vysoce produktivní výpočetní systémy projekt; ostatní byli X10 od IBM a Kaple z Cray, Inc.. V listopadu 2006, kdy DARPA schválila financování třetí fáze projektu HPCS, byly financovány projekty X10 a Chapel, ale pevnost nebyla,[4] což vedlo k nejistotě ohledně budoucnosti pevnosti.
V lednu 2007 byla Fortress vydána jako open-source.[5]Verze 1.0 specifikace jazyka pevnosti byla vydána v dubnu 2008 spolu s kompatibilní implementací zaměřenou na Virtuální stroj Java.
V červenci 2012 Steele oznámil, že aktivní vývoj pevnosti bude po krátkém období ukončení ukončen s odvoláním na komplikace s používáním systému typu Fortress na stávajících virtuálních strojích.[6]
Příklad: Hello world!
Toto je verze archetypální pevnosti Ahoj světe programu, jak je uvedeno v Referenční karta pevnosti:[2]
komponenta helloexport Executablerun () = println (“Hello, World!”) konec
The vývozní prohlášení dělá program spustitelný a každý spustitelný program v pevnosti musí implementovat běh() funkce. Soubor, do kterého je program uložen pro kompilaci, musí mít stejný název, jaký je uveden v iniciále součástka prohlášení. The println () funkce je to, co vydává "Hello, World!" slova na obrazovce.
Viz také
Reference
- ^ Eric Allen; David Chase; Joe Hallett; Victor Luchangco; Jan-Willem Maessen; Sukyoung Ryu; Guy L. Steele ml .; Sam Tobin-Hochstadt; et al. (2008-03-31). „Specifikace jazyka pevnosti: Verze 1.0“ (PDF). research.sun.com. Sun Microsystems. Archivovány od originál (PDF) dne 2013-01-20.
- ^ A b „Referenční karta pevnosti projektu“ (PDF). Java.net. Archivovány od originál (PDF) dne 04.03.2016. Citováno 2016-09-24.
- ^ "pseudokód - standardy pro pseudokód?". Přetečení zásobníku. 16. 10. 2009. Citováno 2016-09-24.
- ^ Josh Simons (22. listopadu 2006). „Pro HPCS Fáze III: Moje myšlenky nebylo vybráno slunce“. Pupek Narcisu. Archivovány od originál dne 06.01.2012 - prostřednictvím blogs.oracle.com.
- ^ „Co je na pevnosti skvělé“. gbcacm.org. Větší bostonská kapitola ACM. Archivovány od originál dne 2012-08-02.
- ^ Gls-Oracle (2012-07-20). "Pevnost zabalená". Pevnost projektu. Archivovány od originál dne 24. 9. 2016 - prostřednictvím blogs.oracle.com.
externí odkazy
- Webové stránky Project Fortress
- Aktivní časová osa specifikace a implementace referencí
- Specifikace jazyka pevnosti (nejnovější verze je 1.0, 31. března 2008)
- Duše pevnosti - rozhovor s vývojářem pevnosti Guyem Steeleem
- Domovská stránka projektu Fortress Open Source (licence BSD)
- Skupina pro výzkum programovacího jazyka Sun
- Publikace a specifikace pevnosti
- Fortress Plugin For Eclipse (alfa)
- Často kladené dotazy ohledně pevnosti
- Výukové snímky pevnosti
- Poštovní seznamy pevnosti
- Článek Lambda The Ultimate
- Náhrada Fortranu od Sunu jde na open-source (CNET News.com, 12. ledna 2007)
- Prezentace pevnosti
- Ve výchozím nastavení paralelní - prezentace Přehled anotované pevnosti