Skip to content

Introduction to Programming Using SML

Best in textbook rentals since 2012!

ISBN-10: 0201398206

ISBN-13: 9780201398205

Edition: 1999

Authors: Michael Hansen, Hans Rischel

List price: $39.00
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Introduction to Programming using SML provides a thorough introduction to the principles of programming and program design using the Standard ML programming language. The emphasis throughout is to put the theory of programming into practice. The examples and exercises teach the student how to apply basic theoretical concepts to produce succinct and elegant programs and program designs.Coverage includes an introduction to fundamental data structures and their applications. The notions of binding, environment, store, closure and evaluation are introduced in order to explain the meaning of programs in an informal but precise way. Thus, the authors provide the reader with a set of durable…    
Customers also bought

Book details

List price: $39.00
Copyright year: 1999
Publisher: Addison-Wesley Longman, Incorporated
Publication date: 7/21/1999
Binding: Paperback
Pages: 372
Size: 6.77" wide x 9.21" long x 0.75" tall
Weight: 1.188
Language: English

Preface
Getting started
Values, types, identifiers and declarations
Simple function declarations
Comments
Recursion
The power function
About types and type checking
Bindings and environments
Summary
Exercises
Basic values and operators
Integers and reals
Expressions, precedence, association
Euclid's algorithm
Evaluations with environments
Characters and strings
Truth values
The if-then-else expression
Overloaded operators
Type inference
Summary
Exercises
Tuples and records
Tuples
Tuple patterns
Infix functions on pairs
Records
Record patterns
Type declarations
Locally declared identifiers
Summary
Exercises
Problem solving I
Problem statement: rational numbers
Solution 1
Solution 2
Comparing the solutions
A solution using records
Summary
Exercises
Lists
Building lists
The 'cons' operator
List patterns
Append and reverse; polymorphic types
Polymorphic values
A library of list functions
Membership; equality types
Type inference
Summary
Exercises
Problem solving II
Problem analysis: cash register
Programming
Test
Summary
Exercises
Tagged values and partial functions
Datatype declarations
The case-expression
Enumeration types
The order type
Partial functions: the option datatype
Exception handling
The Eight Queens problem
Summary
Exercises
Finite trees
Chinese boxes
Symbolic differentiation
Trees of ancestors; traversal of a tree
Mutual recursion
Parameterized datatypes
Electrical circuits
Abstract types
Summary
Exercises
Higher-order functions
Expressions denoting functions
Value declarations of recursive functions
The map function
Declaring higher order functions
Higher-order list functions
Functional composition
Tree recursion
Type inference for higher-order functions
Closures
Static binding
Lazy evaluation
Summary
Exercises
Finite sets
A representation of sets
Operations on sets
An abstype for sets
Other representations of sets
Summary
Exercises
Modules
Structures
Specifications and signatures
Signatures and structures
Further facilities
Fixity of identifiers
Functors
Summary
Exercises
Tables
The table concept
A representation of tables
Operations on tables
Summary
Exercises
Problem solving III
Problem analysis
A sample run
Programming
Test
Summary
Exercises
Input/output in SML
Input streams
Output streams
Simple input and output
Use of conversions
Sequential composition
Input/output of composite data
Input with prompt and validation
Summary
Exercises
Interactive programs
A quiz program
Actions
Action schemas
Functions for action schemas
Dialogue automaton
Dialogue program
Action refinement
Summary
Exercises
Problem solving IV
Problem analysis
Programming
Test
Summary
Exercises
Iteration
Resource measures
Two problems
Solutions: accumulating parameters
Iteration
Summary
Exercises
Imperative programming
The store
Operations on the SML store
References and polymorphism
Arrays
The while loop
Imperative data structures
Summary
Exercises
Appendices
SML systems
Overview of Standard ML
Lexical conventions
Syntax
Value, environment and store
Types
Semantics
Overview of the SML module system
Lexical conventions
Syntax
Interfaces and environments
Semantics
Selected parts of the SML basis library
General
Numbers
Characters and strings
Lists
Vectors
Arrays
Timers and time
Date
Conversions
Text input
Text output
Modules of sets and tables
Sets
Tables
Signatures
Structures
The ASCII alphabet
Further reading
Index