Search the Catalog
 
Jones and Bartlett Home > Computer Science > Programming Languages and Methodologies > Table of Contents
Overview
Appropriate Courses
Key Features
Table of Contents
About the Author(s)
Programming Languages and Methodologies
Robert J. Schalkoff, Clemson University

ISBN-13: 9780763740597
ISBN-10: 0763740594
$127.95 (Sugg. US List)
Hardcover
636 Pages
© 2007

Request a Print Exam Copy

1.   Introduction:  Programming Concepts and Languages
     1.1   Overview
     1.2   'Productivity' and Moore's Law
     1.3   Programming History:  From Gears to Software Objects
     1.4   Programming Paradigms and Possible Language Taxonomies
     1.5   Introduction to a more Formal Viewpoint
     1.6   Programming Tools
     1.7   Coding Standards and Conventions
     1.8   Some Humor:  The Evolution of a Programmer
2.   From Formal Grammars to Programming Languages
     2.1   Prelude
     2.2   A Syntactic Viewpoint: Programs are Strings
     2.3   Formal Grammars
     2.4   Using Grammars - Derivation Trees and Ambiguity
     2.5   BNF and Alternatives
3.   Programming in Prolog
     3.1   Introduction
     3.2   Prolog Syntax and Use
     3.3   Alternate Imperpretations of Prolog
     3.4   Parsing (Grammatical Recognition) and Prolog
     3.5   Prolog and Constraint Satisfaction Problems (CSP)
4.   Sample Programming Language minic: (Version 1) and Aspects of Scanning and Parsing
     4.1   Overview
     4.2   minic (ver 1) Syntax
     4.3   Development of Parsers for minic: Basic Concerns
     4.4   Parsing
     4.5   Life After Parsing

5.   Using Prolog for Scanning and Parsing
     5.1   Scanner and parser for minic ver 1:  Overall Objectives
     5.2   minic Prolog Scanner
     5.3   Prolog Parser
6.   Scanning and Parsing minic Using flex and bison
     6.1   Building Scanners and Parsers with flex and bison
     6.2   flex and bison
     6.3   flex
     6.4   Applying flex to minic
     6.5   bison
     6.6   Using flex and bison Together for minic
     6.7   A More Complete Example
     6.8   bison:  'Under the Hood'
     6.9   Toward a More Complete Parser/Compiler
7.  Enhancing minic:  Control Statements, Interactive Constructs, Comments and Type Checking
     7.1   minic, Version 2
     7.2   Scanning and parsing minic Version 2 Using flex and bison
     7.3   Scanning and Parsing minic Version 2 Using Prolog
     7.4   Further minic Extensions (Extended Version 2)
     7.5   Scanning and Parsing minic Extended Version 2 Using flex and bison
     7.6   Scanning and Parsing minic Extended Version 2 using Prolog
     7.7   Considering Contextual Constraints and Yped Languages
     7.8   Attribute Grammars
     7.9   flex/bison Implementation of A minic Parser Using Attibute Grammars and a Symbol Table
     7.10 Prolog Implementation of A minic Parser Using Attribute
8.   Functional Programming and the lambda Calculus
     8.1   Introduction to the lambda Calculus and Functional Programming
     8.2   The Syntax and Semantics of the lambda Calculus
     8.3   Functional Programming Concepts and Syntax
     8.4   Side Effects and Functional Programming
     8.5   Functional Programming with Typed Functions: A Preliminary Example Using ML
9.   Lisp
     9.1   Lisp Introduction, Pragmatics and Resources
     9.2   The Lisp Top-Level Loop (EVAL)
     9.3   Basic Common Lisp Building Blocks
     9.4   Basic Lisp Manipulation
     9.5   Lisp Booleans and Conditionals
     9.6   Scope and Iteration in Lisp
     9.7   I/O in COmmon Lisp
     9.8   CommonLisp Macro
     9.9   (Common) Lisp Programming Conventions
     9.10  Funtion (Program) Design, Implementation and Correctness
     9.11  Extended CommonLisp Design Example:  Implementing and Training a Single Artificial Neural Unit
     9.12  CommonLisp FUnctions (and Macros) You Should Know  
10.  Object-Oriented Functional Programming:  The Common Lisp Object System
     10.1  The CommonLisp Object System (CLOS)
     10.2  CommonLisp Object System (CLOS)
     10.3  Relation to Other Programming Languages
11.  Object-Oriented, Typed Functional Programming with Modules: ML and CAML
     11.1  An Introduction to SML/NJ and CAML
     11.2  The SML/NJ Language
     11.3  CAML and ocaml
     11.4  Scanning and Parsing in CAML
     11.5  CAML Compilation with ocamlc
12.  Abstract Syntax and Formal Approaches to Programming Language Semantics
     12.1  Programming Language Semantics
     12.2  Semantics, Semantics, Semantics
     12.3  A Quick Overview of Approaches to Semantics Formalization
     12.4  Semantic Equivalence
     12.5  Semantic Descriptions Using an Abstract Syntax
     12.6  Denotational Semantics
     12.7  Axiomatic Semantics
     12.8  Functional Programming- Semantics and Correctness
     12.9  Algebraic Semantics
13.  Event-Driven Programming Part 1:  Introduction and Window Examples
     13.1  Introduction
     13.2  Example: Microsoft Windows and the MFC
     13.3  Example: The X-Windows System
     13.4  Cross and Multi-Platform Software Development 
14.  Event-Driven Programming Part 2:  PDA Programming with the PalmOS
     14.1  Overview
     14.2  Palm Programming Specifics, Part I
     14.3  A More Elaborate Example (Buttons, Multiple Forms and A Menu)
     14.4  Interaction with User-Entered Data and the 'echo' Application
     14.5  Example: Numerical Input and Computations and Interaction with Fields
     14.6  Additional PalmOS Programming Notes and Features
     14.7  Implementing Databases on the Palm
15.  Parallel Computing and Parallel Programming
     15.1  Introduction
     15.2  Algorithm Decomposition Techniques and Tools
     15.3  Parallelism in Declarative Programming (Prolog)
     15.4  Extension of Languages to Allow Concurrent Programming
     15.5  MPI and Beowulf Cluster Programming
     15.6  Extended MPI Examples
     15.7  Selected (Abbreviated) MPI and MPE man Pages 

 Find Your Sales Rep
 Recommend This Title
 Technical Support
 International Sales

Computer Science
 Programming Languages
 Software Engineering
Titles by Robert Schalkoff
 Intelligent Systems: Principles, Paradigms and Pragmatics

About Jones and Bartlett | Computer Science Home | Tell a Friend | Contact Us | Find Your Sales Rep | Request Review Copies | Sign up for eUpdates | Become an Author | Technical Support | Privacy Policy