Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Book announcement

29 views
Skip to first unread message

Damian

unread,
May 8, 2011, 1:18:37 AM5/8/11
to
Announcing the publication of Scientific Software Design: The Object-
Oriented
Way by Damian Rouson, Jim Xia, and Xiaofeng Xu (Cambridge University
Press,
2011).  This book contains three parts:

Part I introduces object-oriented programming (OOP) in Fortran 2003
with brief
comparisons to C++.
Part II aims to be the first textbook presentation of object-oriented
design
patterns in Fortran 2003 (with companion C++ implementations). 
Part III presents advanced topics, including writing formal
constraints
on designs and modeling those constraints with runtime assertions; OOP
in a
mixed-language environment (Fortran, C and C++); parallel programming
and case
studies on multiphysics software architecture.

The examples in the book draw inspiration from the field of
multiphysics
modeling -- that is coupling interdisciplinary numerical simulations
involving
systems of ordinary-, partial- and integro-differential equations.  I
expect
the book to be somewhat controversial as it emphasizes code clarity,
development
cost, and complexity over achieving the highest performance. The book
advocates
throughout for a programming style that relies heavily upon defined
operators to
generate an expressive, calculus-like syntax.  The case studies in the
final
chapter demonstrate that this approach has produced publishable
scientific
results across a range of fields.  The final chapter also presents
several
avenues to make such an approach scalable via multiple parallel
programming
models, including Fortran 2008 coarrays.

Each chapter includes extensive code demonstrations and chapter-ending
exercises
suitable to use in university courses at the senior and beginning
graduate level
for students in engineering and the physical sciences. The book is an
outgrowth
of a university class the first author has taught and the material is
being
developed into a short-course format.

Additional descriptions and searchable previews can be found online
at 
Amazon: http://tinyurl.com/ScientificSoftwareDesignAmazo
or at Cambridge University Press:
http://tinyurl.com/ScientificSoftwareDesignCambri

Damian

m_b_metcalf

unread,
May 10, 2011, 2:59:42 AM5/10/11
to
On May 8, 7:18 am, Damian <dam...@rouson.net> wrote:
> Announcing the publication of Scientific Software Design: The Object-

The sole purpose of this post is to lift this interesting announcement
above the scum of spam which has buried it since Sunday.

MM

Clive Page

unread,
May 10, 2011, 4:57:41 AM5/10/11
to

I just thought I might mention (and it might also help to lift the
visibility of the announcement) that since I switched my news feed to
news.individual.net the level of spam I have seen has been very low. I
don't know how they do it, but it seems well worth the €10/year that it
costs. I have no relationship with them other than as a satisfied
customer for the last couple of years.

--
Clive Page

robin

unread,
May 10, 2011, 10:33:15 AM5/10/11
to
"m_b_metcalf" <michael...@compuserve.com> wrote in message
news:e3816c24-0c52-4ef1...@gv8g2000vbb.googlegroups.com...

Try setting your newsreader to ignore spam.


Paul van Delst

unread,
May 10, 2011, 11:03:31 AM5/10/11
to
My copy just arrived in the mail and all I have done is scan through it (paper cuts from going too fast). The two things
that immediately jumped out at me and warmed the cockles of my heart:
1) References a-go-go. Love it.
2) GoF patterns implemented in Fortran! I'm misty-eyed. I've always found GoF to be mostly inaccessible -- but no more.

cheers,

paulv

viper-2

unread,
May 10, 2011, 12:35:13 PM5/10/11
to
On May 8, 1:18 am, Damian <dam...@rouson.net> wrote:
> Announcing the publication of Scientific Software Design: The Object-
> Oriented
> Way by Damian Rouson, Jim Xia, and Xiaofeng Xu (Cambridge University
> Press,
> 2011).  This book contains three parts:
>
> Part I introduces object-oriented programming (OOP) in Fortran 2003
> with brief
> comparisons to C++.
> Part II aims to be the first textbook presentation of object-oriented
> design
> patterns in Fortran 2003 (with companion C++ implementations). 
> Part III presents advanced topics, including writing formal
> constraints
> on designs and modeling those constraints with runtime assertions; OOP
> in a
> mixed-language environment (Fortran, C and C++); parallel programming
> and case
>

I suppose one needs to understand C++ in order to appreciate the book?

agt

--
Freedom - no pane, all gaiGN!

Code Art Now
http://codeartnow.com
Email: a...@codeartnow.com


Paul van Delst

unread,
May 10, 2011, 12:50:27 PM5/10/11
to
viper-2 wrote:
> On May 8, 1:18 am, Damian <dam...@rouson.net> wrote:
>> Announcing the publication of Scientific Software Design: The Object-
>> Oriented
>> Way by Damian Rouson, Jim Xia, and Xiaofeng Xu (Cambridge University
>> Press,
>> 2011). This book contains three parts:
>>
>> Part I introduces object-oriented programming (OOP) in Fortran 2003
>> with brief
>> comparisons to C++.
>> Part II aims to be the first textbook presentation of object-oriented
>> design
>> patterns in Fortran 2003 (with companion C++ implementations).
>> Part III presents advanced topics, including writing formal
>> constraints
>> on designs and modeling those constraints with runtime assertions; OOP
>> in a
>> mixed-language environment (Fortran, C and C++); parallel programming
>> and case
>>
>
> I suppose one needs to understand C++ in order to appreciate the book?

Based on my quick initial flip-through (regular work reared it's head), I think of it more like a Rosetta stone - the
same OOP patterns are implemented in both Fortran and C++.

cheers,

paulv

Paul van Delst

unread,
May 10, 2011, 1:22:10 PM5/10/11
to
Paul van Delst wrote:
> (regular work reared it's head)

...reared ITS head.

Man I hate that. :o(

Damian

unread,
May 14, 2011, 2:43:24 AM5/14/11
to

Yes, one goal of the book is to put Fortran and C++ on equal footing
and to make it easier for those more conversant in one language to
better understand object-oriented implementations in the other
language.

Damian

0 new messages