• Corpus ID: 6411443

An Experiment in Software Prototyping Productivity

@inproceedings{Hudak1994AnEI,
  title={An Experiment in Software Prototyping Productivity},
  author={Paul Hudak and Michael A. Jones},
  year={1994}
}
We describe the results of an experiment in which several conventional programming languages, togetherwith the functional language Haskell, were used to prototype a Naval Surface Warfare Center (NSWC) requirement for aGeometric Region Server. The resulting programs and development metrics were reviewed by a committee chosen by the Navy. The results indicate that the Haskell prototype took significantly less time to develop and was considerably more concise and easier to understand than the… 

Figures from this paper

A Case Study in Modular Programming: Using AspectJ and OCaml in an Undergraduate Compiler Project
TLDR
This article has converted an entire undergraduate compiler course from using AspectJ, an aspect-oriented language, to using OCaml, a functional language, and analyzes the usage of the two programming languages to compare and contrast the two software projects on a number of parameters.
A Scientific Rapid Prototyping Model for the Haskell Language
TLDR
The results indicate that the proposed methodology can be easily implemented for developers or coders with little in-depth knowledge of functional programming capabilities; thereby, enabling applicability for a wide range of users.
Synthesizing Object-Oriented and Functional Design to Promote Re-Use
TLDR
This paper presents a composite design pattern that synthesizes the best of both approaches to extensibility and in the process resolves the tension between the two design strategies.
An empirical comparison of C, C++, Java, Perl, Python, Rexx, and Tcl for a search/string-processing program
TLDR
The results indicate that, for the given programming problem, "scripting languages" (Perl, Python, Rexx, Tcl) are more productive than conventional languages and often turn out better than Java and not much worse than C or C++.
Tinte: Developing a Prototype for Typesetting Music in Clean { a Case Study
TLDR
The development of a typesetting program for music in the lazy functional programming language Clean that transforms a description of the music to be typeset in a dvi-le just like T E X does with mathematical formulae is described.
Software Engineering Properties of Functionally Enabled Languages
TLDR
The issues that prohibit the use of classic complexity and productivity metrics are discussed and the rationale behind a new set of metrics that targets this increasingly important set of languages is presented.
SEJITS: Getting Productivity and Performance With Selective Embedded JIT Specialization
TLDR
Efficiency-language performance with productivitylanguage programmability is combined using selective embedded just-in-time specialization (SEJITS), allowing domain experts to exploit different parallel hardware architectures with a fraction of the programmer time and effort usually required.
A Framework for Productive, Efficient and Portable Parallel Computing
TLDR
This dissertation presents PyCASP, a Python-based software framework that automatically maps Python application code to a variety of parallel platforms, an application- domain-specific framework that uses a systematic, pattern-oriented approach to offer a single productive software development environment for application writ- ers.
Are Ours Really Smaller Than Theirs
TLDR
This paper examines this claim using a particular measure of (i) program length and (ii) programming language “level” (a measure of expressive power) both from the work of Halstead on software metrics.
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 14 REFERENCES
Functional programming, formal specification, and rapid prototyping
  • P. Henderson
  • Computer Science
    IEEE Transactions on Software Engineering
  • 1986
TLDR
It is argued that functional programs combine the clarity required for the formal specification of software designs with the ability to validate the design by execution, making them ideal for rapidly prototyping a design as it is developed.
Prototyping High-Performance Parallel Computing Applications in Proteus
TLDR
Proteus is a high-level imperative notation based on sets and sequences with succinct yet powerful constructs for the parallel composition of processes communicating through shared memory that supports the construction of high-performance computing applications across a wide range of parallel machines.
Report on the programming language Haskell: a non-strict, purely functional language version 1.2
TLDR
"Some half dozen persons have written technically on combinatory logic, and most of these, including ourselves, have published something erroneous"; this is regarded as evidence that the subject is refractory.
An experiment using Haskell to prototype "geometric region servers" for navy command and control
  • Research Report 1031, Department of Computer Science, Yale University, November
  • 1993
Polymorphism and type abstraction in the Griffin prototyping language
  • Proceedings of Software Technology Conference, pages 458–470. DARPA
  • 1992
Prototyping demonstration problem for the prototech hiper-d joint prototyping demonstration project
  • CCB Report 0.2, Naval SurfaceWarfare Center, August 1993. Last modified October 27, 1993; further changes specified by J. Caruso are described in "Addendum to Prototyping Demonstration Problem for the Prototech HiPer-D Joint Prototyping Demonstration Project," November 9
  • 1993
ProtoTech HiPer-D Joint Prototyping
  • Demonstration Project,
  • 1994
ProtoTech HiPer-D Joint Prototyping Demonstration Project
  • ProtoTech HiPer-D Joint Prototyping Demonstration Project
  • 1994
ProtoTechHiPer-D Joint Prototyping Demonstration Project
  • February
  • 1994
...
1
2
...