89 citations found. Retrieving documents...
P. Hudak, J. Peterson, and J. Fasel. A gentle introduction to Haskell 98. http://www.haskell.org/tutorial/, 1999.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

Hybrid Skeletons for Parallel Higher Order Function Evaluation - Bristow (2001)   (Correct)

....them. By succeeding a stage of hardware driven skeleton choice with optimisations such as modifying granularity the group hope to maintain performance portability. 2.3. 1 The Skeletons Four skeletons are presented, covering both data and task parallelism, with the de nitions being in Haskell [18]. The shape of the computations represented will probably be familiar to anyone with a knowledge of parallelism. The list functionals map and foldr are used in the following skeletons. We give their Haskell de nitions here, taken from [13] with the exception of the type de nition for foldr which ....

....between processes. Eden is similar to Imperial s work in that it uses a two level structure based on separating computation from coordination. Unlike Imperial s work, the computation and coordination models are not speci ed in separate notations. The computation model is based on Haskell [18] with the coordination being provided by extensions to the base language. 2.5.1 Process Abstractions The keyword process is added to Haskell to describe process abstractions. A process abstraction has the following type and form. p : k P rocess ( 1 ; m ) 1 ; ....

Paul Hudak, John Peterson, and Joseph H. Fasel. A gentle introduction to haskell 98. Technical report, Yale University and University of California, October 1999. Available online at http://www.haskell.org/tutorial/.


A Formal Semantics for the C Programming Language - Nikolaos Papaspyrou Doctoral (1998)   (1 citation)  (Correct)

....semP (App (fact, Int (7) This program calculates the factorial of 7, using a recursive definition. The result of the evaluation of main is the value Basic (Number 5040) 15.2. 2 Haskell and related languages Haskell belongs to the family of strongly typed lazy purely functional languages [Huda96, Pete97]. THE Its popularity increases steadily and there are currently many efficient compilers. Haskell provides non strict semantics, a static polymorphic type system, algebraic data types, modules, monads and monadic I O and a rich system of primitive data types. A variation of Haskell is Gofer, ....

P. Hudak, J. Fasel and J. Peterson, "A Gentle Introduction to Haskell", Technical Report YALEU/DCS/RR-901, Yale University, Department of Computer Science, May 1996.


Refinement of a System Specification for a Digital Equalizer into.. - Lu (2002)   (1 citation)  (Correct)

....denoted as NullS, which is also the last event of a signal. P1 P3 P2 [a4 : a3 : a2 : a0 ] b4 : b3 : b2 : b0 ] 5th:4th:3rd:2nd:1st] 5th:4th:3rd:2nd:1st] Figure 1.1: A system modeled by concurrent processes 1.1. 2 Haskell as the modeling language The Functional language Haskell [1] [2] [3] has been selected as modeling language. A functional program is a single expression, which is executed by evaluating the expression. It focuses on what is to be computed, not how it should be computed. C, Java, Pascal, Ada and so on, are all imperative languages. They are imperative in the ....

....be used for all functions and lists, which are compatible to map s type declaration. This demonstrates the rst class nature of functions, which when used in this way are usually called higher order functions. As an example of the use of map, we can increment the elements in a list: map (add 1 ) [ 1 , 2 , 3 ] = 2 , 3 , 4 ] Similarly we can multiply the elements in a list: map ( 2 ) 1 , 2 , 3 ] 2 , 4 , 6 ] Higher order functions like map are used extensively in the ForSyDe modeling technique as skeletons. Skeletons are employed to model synchronous processes. A skeleton is a higher order ....

[Article contains additional citation context not shown here]

Paul Hudak, John Peterson, Joseph Fasel. A Gentle Introduction to Haskell. June, 2000.


Notes on Functional Programming with Gofer - Cunningham (1995)   (3 citations)  (Correct)

....as a part of the Gofer system [15] In addition to the Bird and Wadler textbook and the Gofer manual, I used the following sources in the preparation of these lecture notes: Paul Hudak and Joseph H. Fasel. A Gentle Introduction to Haskell , ACM SIGPLAN NOTICES, Vol. 27, No. 5, May 1992 [12]. Paul Hudak, Simon Peyton Jones, and Philip Wadler. Report on the Programming Language Haskell: A Non strict, Purely Functional Language , ACM SIGPLAN NOTICES, Vol. 27, No. 5, May 1992 [13] E. P. Wentworth. Introduction to Functional Programming using RUFL, Department of Computer ....

....9.1 Overview References: The content of this section is based, in part, on the following sources: Section 3. 2 of Hudak s article Conception, Evolution, and Application of Functional Programming Languages [11] Section 8 of Hudak and Fasel s article A Gentle Introduction to Haskell [12]. Chapter 12 of Jones tutorial manual An Introduction to Gofer [16] Section 7.5 of Davie s book An Introduction to Functional Programming Systems Using Haskell [7] So far we have not considered explicit input output operations in Gofer. We have defined Gofer functions and then ....

[Article contains additional citation context not shown here]

P. Hudak and J. H. Fasel. A gentle introduction to Haskell. ACM SIGPLAN NOTICES, 27(5), May 1992.


Probability Model Type Sufficiency - Fitzgibbon, Allison, Comley (2003)   (Correct)

....reducing the time complexity of many machine learning algorithms. In this paper we investigate how the explicit inclusion of su#cient statistics in a model type allows machine learning algorithms to be generalized while maintaining optimal time complexity. Code examples are given in the Haskell [4] programming language using a fixed width font. Footnotes are used to explain some of the semantics of the Haskell code. 2 A Basic Model Type In this section we define the basic requirements for a model type that can be used for inference or learning. To perform probabilistic learning we need ....

P. Hudak and J. H. Fasel. A gentle introduction to Haskell. SIGPLAN Notices, 27(5), May 1992.


System Modeling and Design Refinement in ForSyDe - Sander (2003)   (Correct)

....general is unsolvable. 2.5 Introduction to Haskell Since the functional language Haskell is used to express the system models in ForSyDe, this section gives a small introduction to functional languages and Haskell in particular. Many examples are taken from A Gentle Introduction to Haskell 98 [51], a good textbook on Haskell is [108] A functional program is a function that receives the program s input as argument and delivers the program s output as result. Usually the main function is defined in terms of other functions, which can be composed of still other functions until at the bottom ....

P. Hudak, J. Peterson, and J. H. Fasel. A Gentle Introduction to Haskell 98. October 1999. http://www.haskell.org/tutorial.


A Comparative Review of Robot Programming Languages - Pembeci, Hager (2001)   (Correct)

....developing modular, reusable high level programs. The principles underlying current FRP framework were first introduced in Fran [5] a domain specific language for programming reactive animations. The host language for Fran was Haskell which gives FRP the flavor of declarative programming [21] [11]. FROB (for Functional Robotics) is another domain specific language embedded in Haskell based on FRP which is designed for robot control [19] 20] 9] FRP is now also used for vision and other control systems applications [22] 12] Haskell, the host language of FRP, is a higher order, ....

P. Hudak and J. Fasel. A gentle introduction to Haskell. ACM SIGPLAN Notices, 27(5), May 1992.


Hugs 98: A functional programming system based on Haskell 98.. - Jones, Peterson (1999)   (Correct)

....many di#erent types of value, including numbers, booleans, characters, strings, lists, functions, and user defined datatypes. Some of these are illustrated in the following example: Prelude (not True) False False Prelude reverse Hugs is cool looc si sguH Prelude filter even [1. 10] [2, 4, 6, 8, 10] Prelude take 10 fibs where fibs = 0:1:zipWith ( fibs (tail fibs) 0, 1, 1, 2, 3, 5, 8, 13, 21, 34] Prelude You cannot create new definitions at the command prompt these must be placed in files and loaded, as described later. The definition of fib in the last example above is local to ....

.... Eedit for the standard DOS editor, or Enotepad for the Windows notepad editor. However, neither edit or notepad allow you to specify a start line number, so you may prefer to install a di#erent editor. Print statistics s, s Normally, Hugs just shows the result of evaluating each expression: [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] Prelude [1. 1, 2, 3, 4, Interrupted Prelude With the s option, the interpreter will also display statistics about the total number of reductions and cells; the former gives a measure of the work done, while the latter gives an indication of the amount of memory used. For example: ....

[Article contains additional citation context not shown here]

P. Hudak and J. Fasel. A gentle introduction to Haskell. ACM SIGPLAN Notices, 27(5), May 1992.


Elementary Microarchitecture Algebra - Matthews, Launchbury (1999)   (1 citation)  (Correct)

....or symbolically, and provides a formal basis for reasoning about their behavior at source code level. Currently Hawk is a set of libraries built on top of the pure functional language Haskell, which is strongly typed, supports rst class functions, and in nite data structures, such as streams [8, 21]. It is this legacy that led us to look for transformation laws in the rst place: one often cited bene t of purely functional programs is that they are amenable to veri cation through equational reasoning. We wanted to see if such algebraic techniques scaled up to microarchitectural veri cation. ....

Hudak, P., Peterson, J., and Fasel, J. A gentle introduction to Haskell. Available at www.haskell.org, Dec. 1997.


Specifying superscalar microprocessors in Hawk - Cook, Launchbury, Matthews (1998)   (14 citations)  (Correct)

....design review, simulation, and verification. We assume the reader is familiar with the basic concepts of functional languages and microarchitectural design (such as branch prediction and pipelining) For an in depth introduction to Haskell, read Hudak, Peterson, and Fasel s tutorial [5]. For more information on microarchitectures, refer to Johnson s textbook [6] The remainder of this paper is organized as follows: in Section 2 we introduce an architecture; in Section 3, we provide an introduction to Hawk; in Section 4 we use Hawk to specify the architecture; and in Section 5 ....

....Fig. 8, retired,ready,n,err) rob 6 (fetched,computed) except for the size parameter, correspond to those in Fig. 9. 4.1 Top level structural specification In Fig. 8 the first equation specifies how transactions are fetched from the instruction memory, mem: instrs,npc) ifu 5 mem pc err ([5,5] before n) The Instruction Fetch (IFU) function, ifu, uses its first parameter, 5, to determine the maximum number of transactions to fetch at each cycle. The IFU retrieves consecutive transactions beginning at the program counter, pc. Initially, during the first and second cycles, 5 ....

[Article contains additional citation context not shown here]

Hudak, P., Peterson, J., and Fasel, J. A gentle introduction to Haskell. Available at www.haskell.org, Dec. 1997.


Microprocessor Specification in Hawk - Matthews, Cook, Launchbury (1998)   (22 citations)  (Correct)

....concentrating on the level of micro architecture. In the long term we plan for Hawk to be a standalone language. In the meantime we have embedded our language into Haskell, a strongly typed functional language with lazy (demand driven) evaluation, firstclass functions, and parametric polymorphism [5] [12] The library makes essential use of these features. As an example, we have used Hawk to specify and simulate the integer portion of a pipelined DLX microprocessor[4] The DLX is a complete microprocessor and is a widely used model among researchers. Several DLX simulators exist, as well as a ....

Hudak, P., Peterson, J., and Fasel, J. A gentle introduction to Haskell. Available at www.haskell.org, Dec. 1997.


Partial Evaluation for Dictionary-free Overloading - Jones (1993)   (15 citations)  (Correct)

....[21] as a means of supporting overloading (ad hoc polymorphism) in a language with a polymorphic type system. This section gives a brief overview of the use of type classes in a language like Haskell and provides some examples that will be used in later sections. Further details may be found in [6, 7]. The basic idea is that a type class corresponds to a set of types (called the instances of the class) together with a collection of member functions (sometimes described as methods) that are defined for each instance of the class. For example, the standard prelude in Haskell defines the class ....

P. Hudak and J. Fasel. A gentle introduction to Haskell. ACM SIGPLAN notices, 27, 5, May 1992.


Hybrid Quadtrees - Winter (1999)   (Correct)

....on the fly. No storage for a global operation is required. The local results (for each leaf) can be folded by a logical or ( to a global four intersection matrix. 5 Realization in Haskell We implemented the above presented hybrid interpretation of a quadtree in a functional language, Haskell [13, 3]. The complete code three pages of paper isavailable from the author s web page. Here some details are discussed. 12 A generic quadtree of arbitrary leaf type (a) could be written like: data GenericQT a = Leaf Morton a Fork Morton (GenericQT a) GenericQT a) GenericQT a) ....

P. Hudak, J. Peterson, and J. H. Fasel, A Gentle Introduction to Haskell, Version 1.4,http://haskell.cs.yale.edu/tutorial/, Yale University, 1997.


Generation of and Debugging with Logical Pre and.. - Herranz-Nieva.. (2000)   (Correct)

....in Java terminology) the behaviour of another abstract class Abstract Class by matching all its components (attributes if any, functions) by components of The Class. Abstract classes and imitation provides the full power of theories (in OBJ terminology) as well as type classes ( a la Haskell [8, 10]) playing a more powerful role than C templates. 2.2.4 Classes as types A class de nes a datatype. In particular, it is clear that it represents an algebraic datatype when we move labels to constructors and di erent alternatives are collected in an union type. In the presence of inheritance, ....

P. Hudak, J. Fasel, and J. Peterson. A gentle introduction to haskell. Technical Report YALEU/DCS/RR-90, Yale University, 1996.


Linguistic, Philosophical, and Pragmatic Aspects of.. - Shaumyan, Hudak   Self-citation (Hudak)   (Correct)

....of a word having several roles (and types) simultaneously in the same sentence. 5 An NLP Prototype Written in Haskell Our NLP prototype was written in Haskell [10] a standard for non strict purely functional programming languages. Tutorial information on Haskell may be found elsewhere [1, 9]; in the following discussion we assume basic familiarity with the language. Our use of Haskell is fitting since the language is, in fact, named for the logician Haskell B. Curry whose work on combinatory logic cited above provides much of the foundation for both functional programming and AUG. As ....

P. Hudak and J. Fasel. A gentle introduction to Haskell. ACM SIGPLAN Notices, 27(5), May 1992.


Directions in Functional Programming for Real(-Time).. - Taha, Hudak, Wan   Self-citation (Hudak)   (Correct)

....LUSTRE also have a macro like 1 ESTEREL first translates programs into circuits (or state machines) then these circuits are analysed to ensure determinism. Taha, Hudak, and Wan facility that supports recursion, but runs the risk of causing the compiler to diverge. FRP is embedded in Haskell [46, 31, 47] and so inherits recursion and non termination. RT FRP [100] is a subset of FRP that guarantees resourcebounded program execution: every interactive RT FRP computation terminates. Using a special type system, RT FRP still allows two forms of recursion similar in spirit to the idea of ....

....in the area of programming languages that capture complexity classes. While there are few implementations of purely functional programming languages, there is a number of good introductions to programming in Haskell which would still serve as an excellent introduction to the subject nevertheless [47, 46]. Di Cosmo s monograph on isomorphisms of types [27] and Hindley s treatment of the simply typed lambda calculus [39] are excellent introductions to types in the sense that we have used them here. Lee [58] gives an overview of how many ongoing efforts fit into the greater picture of transferring ....

Paul Hudak and Joe Fasel. A gentle introduction to Haskell. ACM SIGPLAN Notices, 27(5), May 1992.


There and Back Again: Arrows for Invertible Programming - Alimarine, Smetsers, van .. (2005)   (Correct)

No context found.

P. Hudak, J. Peterson, and J. Fasel. A gentle introduction to Haskell 98. http://www.haskell.org/tutorial/, 1999.


Adding Multidimensionality to Procedural Programming - Languages Rondogiannis..   (Correct)

No context found.

P. Hudak, J. Peterson, and J. Fasel. A Gentle Introduction to Haskell. Journal of Functional Programming, 1997.


Towards Automating the Iterative Rapid Prototyping.. - Herranz-Nieva..   (Correct)

No context found.

P. Hudak, J. Fasel, and J. Peterson. A gentle introduction to haskell. Technical Report YALEU/DCS/RR-90, Yale University, 1996.


On the Role of Functional-logic Languages for the.. - Herranz-Nieva.. (2000)   (Correct)

No context found.

P. Hudak, J. Fasel, and J. Peterson. A gentle introduction to haskell. Technical Report YALEU/DCS/RR-90, Yale University, 1996.


A Type Classes System for Logic Programming - Fernández   (Correct)

No context found.

HUDAK. P. and FASEL J.H., A gentle introduction to Haskell, ACM Sigplan Notices, 27,5, 1992.


Tool Support for Logics of Programs - Paulson (2002)   (Correct)

No context found.

Paul Hudak and Joseph H. Fasel. A gentle introduction to Haskell. SIGPLAN Notices, 27(5), May 1992.


Experiences in Translating Z Designs to Haskell Implementations - Sherrell, Carver (1994)   (2 citations)  (Correct)

No context found.

P. Hudak and J. H. Fasel, `A gentle introduction to Haskell', SIGPLAN Notices, 27, (5), T1--T53 (1992).


Extending a Functional Programming System for Embedded.. - Wallace, Runciman (1995)   (3 citations)  (Correct)

No context found.

Paul Hudak and Joseph H. Fasel, `A gentle introduction to Haskell', ACM SIGPLAN Notices, 27, (5), (1992).


On the Role of Functional-logic Languages for the.. - Herranz-Nieva.. (2000)   (Correct)

No context found.

P. Hudak, J. Fasel, and J. Peterson. A gentle introduction to Haskell. Technical Report YALEU/ DCS/RR-90, Yale University, 1996.

First 50 documents  Next 50

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC