www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Fortress

reply zwang <nehzgnaw gmail.com> writes:
Developed by Sun, Fortress is a new language intended to be a
successor to Fortran.  It has a bunch of interesting features
that may inspire the development of D.  For example, its support
for domain-specific language construction, more formal maths
expressions using Unicode characters (as discussed in this NG
before), extensible component system, native parallelism mecha-
nisms, multiple return values, and many more.

A draft of the language spec is available here:
http://research.sun.com/projects/plrg/fortress0618.pdf
May 01 2005
parent reply bobef <bobef_member pathlink.com> writes:
And I guess it is slower than Java...

In article <d52sp0$2pen$1 digitaldaemon.com>, zwang says...
Developed by Sun, Fortress is a new language intended to be a
successor to Fortran.  It has a bunch of interesting features
that may inspire the development of D.  For example, its support
for domain-specific language construction, more formal maths
expressions using Unicode characters (as discussed in this NG
before), extensible component system, native parallelism mecha-
nisms, multiple return values, and many more.

A draft of the language spec is available here:
http://research.sun.com/projects/plrg/fortress0618.pdf

May 01 2005
parent reply Norbert Nemec <Norbert Nemec-online.de> writes:
bobef schrieb:
 And I guess it is slower than Java...

I strongly doubt that: It is aimed to be for Fortran what D is for C++. The major strength of Fortran is performance... The Fortress specs talk of a "virtual machine", but I'm pretty sure this will in no way harm the performance. A first glipse tells me that Fortress should be taken serious as a Fortran successor, just like D should be taken serious as C++ successor. The only major drawback of Fortress that I can see right now is, that it does not aim at being a general purpose language. I would guess that it has good chances in the niche of numerics and high-performance computing, but it does not even seem to attempt going beyond that.
May 03 2005
parent =?ISO-8859-15?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> writes:
Norbert Nemec wrote:

 And I guess it is slower than Java...

I strongly doubt that: It is aimed to be for Fortran what D is for C++. The major strength of Fortran is performance... The Fortress specs talk of a "virtual machine", but I'm pretty sure this will in no way harm the performance. A first glipse tells me that Fortress should be taken serious as a Fortran successor, just like D should be taken serious as C++ successor.

I thought that D was a C successor, and a simpler alternative to C++ ? (I don't enough advanced C++ to tell whether it's a "full" replacement) And I don't know Fortran, so I can't say much of the Fortress analogy. However, it seems to aim to "do what Java did for C" - or so they say. The performance is provided by Just-In-Time compilation (like Java/C#), but there might be more opportunities for optimization in this language.
 The only major drawback of Fortress that I can see right now is, that it 
 does not aim at being a general purpose language. I would guess that it 
 has good chances in the niche of numerics and high-performance 
 computing, but it does not even seem to attempt going beyond that.

Their strategy seems to be different from what Walter chose for D : "Wherever possible, consider whether a proposed language feature can be provided by a library rather than having it wired into the compiler." (http://research.sun.com/sunlabsday/docs/Talks/Track1/1.02_steele.pdf) This is different from the D approach, which hardwires a lot of things ? "D offers several capabilities built in to the core language that are implemented as libraries in other languages such as C++" (http://www.digitalmars.com/d/builtin.html) And then Walter didn't even mention unit testing or contracts there... Also: - Booleans, integers, floats, characters are all objects (first-class) - Libraries define math operators supplied by Unicode (i.e. Unicode ops) Not even Java added that, but it kept the primitives and the ASCII ops ? And D has kept with this tradition, as well. (i.e. the C/C++ tradition) Even though object wrappers and unicode operators have been mentioned. ("suggestions" seems to come up on the newsgroup on a regular basis...) --anders
May 03 2005