Definition
Fortress is a programming language designed to support parallel computing for scientific applications at scales ranging from multicore desktops and laptops to petascale supercomputers. Its generality and features for user extension also make it a useful framework for experimental design of domain-specific languages. The project originated at Sun Microsystems Laboratories in 2003 as part of their work on the DARPA HPCS (High Productivity Computing Systems) program [6] and became an open-source project in 2007.
Discussion
Design Principles
Fortress provides the programmer with a single global address space, an automatically managed heap, and automatically managed thread parallelism. Programs can also spawn threads explicitly.
The three major design principles for Fortress are:
Mathematical syntax: Fortress syntax is inspired by mathematical tradition, using the full Unicode character set and two-dimensional notation where relevant. The goal is to simplify the desk-checking of...
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsBibliography
Allen E, Chase D, Flood C, Luchangco V, Maessen JW, Ryu S, Steele Jr GL (2007) Project Fortress Community website. http://projectfortress.java.net
Allen E, Chase D, Hallett J, Luchangco V, Maessen JW, Ryu S, Steele Jr GL, Hochstadt ST (2008) The Fortress Language Specification Version 1.0. http://research.sun.com/projects/plrg/fortress.pdf, March 2008. See also http://research.sun.com/projects/plrg/Publications/fortress1.0beta.pdf, March 2007
Allen E, Culpepper R, Nielsen JD, Rafkind J, Ryu S (2009) Growing a syntax. In: ACM SIGPLAN Foundations of Object-Oriented Languages workshop, Savannah, 2009
Bailey DH, Barszcz E, Barton JT, Browning DS, Carter RL, Fatoohi RA, Frederickson PO, Lasinski TA, Simon HD, Venkatakrishnan V, Weeratunga SK (1991) The NAS parallel benchmarks. Technical report, Int J Supercomput Appl 5(3):63–73
Corbett RP (1982) Enhanced arithmetic for Fortran. ACM SIGPLAN Notices 17(12):41–48, http://doi.acm.org/10.1145/988164.988168
High Productivity Computer Systems program of the Defense Advanced Research Projects Agency (United States Department of Defense). http://www.highproductivity.org/ and see also //www.darpa.mil/IPTO/programs/hpcs/hpcs.asp
Steele Jr GL (1998) Growing a Language. Invited talk. Abstract in OOPSLA ’98 Addendum: Addendum to the 1998 Proceedings of the Conference on Object-Oriented Programming, Systems, Languages, and Applications. ISBN 1-58113-286-7. ACM, New York, http://doi.acm.org/10.1145/346852.346922 Transcript in Higher-Order and Symbolic Computation 12, 3 (October 1999), 221–236. Video at http://video.google.com/videoplay?docid=-8860158196198824415\#
The Unicode Consortium (2006) The Unicode Standard, Version 5.0. Addison-Wesley, Boston
Wiki Creole project and website. Sponsored by the Wiki Symposium. http://www.wikicreole.org/wiki/Creole1.0
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer Science+Business Media, LLC
About this entry
Cite this entry
Steele, G.L. et al. (2011). Fortress (Sun HPCS Language). In: Padua, D. (eds) Encyclopedia of Parallel Computing. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-09766-4_190
Download citation
DOI: https://doi.org/10.1007/978-0-387-09766-4_190
Publisher Name: Springer, Boston, MA
Print ISBN: 978-0-387-09765-7
Online ISBN: 978-0-387-09766-4
eBook Packages: Computer ScienceReference Module Computer Science and Engineering