Report on the Larch shared language
Science of Computer Programming
Computability
Memory storage patterns in parallel processing
Memory storage patterns in parallel processing
Algebraic specification
Vector models for data-parallel computing
Vector models for data-parallel computing
Parallel functional languages and compilers
Parallel functional languages and compilers
Crystal: theory and pragmatics of generating efficient parallel code
Parallel functional languages and compilers
Larch: languages and tools for formal specification
Larch: languages and tools for formal specification
Fortran 90 handbook: complete ANSI/ISO reference
Fortran 90 handbook: complete ANSI/ISO reference
Categories and computer science
Categories and computer science
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Design patterns for object-oriented software development
Design patterns for object-oriented software development
Introduction to the Special Issue on Software Architecture
IEEE Transactions on Software Engineering - Special issue on software architecture
Experiences of parallelising finite-element problems in a functional style
Software—Practice & Experience
Building domain-specific embedded languages
ACM Computing Surveys (CSUR) - Special issue: position statements on strategic directions in computing research
Making the future safe for the past: adding genericity to the Java programming language
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Communications of the ACM
Communications of the ACM
On the criteria to be used in decomposing systems into modules
Communications of the ACM
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The C++ Programming Language, Third Edition
The C++ Programming Language, Third Edition
CLU Reference Manual
Software Engineering Economics
Software Engineering Economics
Algorithms + Data Structures = Programs
Algorithms + Data Structures = Programs
The Definition of Standard ML
The Java Language Specification
The Java Language Specification
High Performance Compilers for Parallel Computing
High Performance Compilers for Parallel Computing
CoFI: The Common Framework Initiative for Algebraic Specification and Development
TAPSOFT '97 Proceedings of the 7th International Joint Conference CAAP/FASE on Theory and Practice of Software Development
The Data Parallel Programming Model: A Semantic Perspective
The Data Parallel Programming Model: Foundations, HPF Realization, and Scientific Applications
Data Parallelism and Functional Programming
The Data Parallel Programming Model: Foundations, HPF Realization, and Scientific Applications
Formal software engineering for computational modelling
Nordic Journal of Computing
A programming language
Coordinate free programming of computational fluid dynamics problems
Scientific Programming
Machine and collection abstractions for user-implemented data-parallel programming
Scientific Programming
An algebraic programming style for numerical software and its optimization
Scientific Programming
The rational numbers as an abstract data type
Journal of the ACM (JACM)
Coordinate free programming of computational fluid dynamics problems
Scientific Programming
Machine and collection abstractions for user-implemented data-parallel programming
Scientific Programming
Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Testing with concepts and axioms in C++
Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Institutions, property-aware programming and testing
LCSD '07 Proceedings of the 2007 Symposium on Library-Centric Software Design
Coordinate-free numerics: all your variation points for free?
International Journal of Computational Science and Engineering
Hi-index | 0.00 |
The use of domain specific languages and appropriate software architectures are currently seen as the way to enhance reusability and improve software productivity. Here we outline a use of algebraic software methodologies and advanced program constructors to improve the abstraction level of software for scientific computing. This leads us to the language of coordinate free numerics as an alternative to the traditional coordinate dependent array notation. This provides the backdrop for the three accompanying papers: {\it Coordinate Free Programming of Computational Fluid Dynamics Problems}, centered around an example of using coordinate free numerics, {\it Machine and Collection Abstractions for User-Implemented Data-Parallel Programming}, exploiting the higher abstraction level when parallelising code, and {\it An Algebraic Programming Style for Numerical Software and its Optimization}, looking at high-level transformations enabled by the domain specific programming style.