程序设计语言概念(第7版影印版国外优秀信息科学与技术系列教学用书)

程序设计语言概念(第7版影印版国外优秀信息科学与技术系列教学用书)
作 者: 西贝斯塔
出版社: 高等教育出版社
丛编项:
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: 计算机与互联网 计算机专业 大学 教材教辅与参考书
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  472Dr.cRobertcSebestaciscancassociatecprofessorcofccomputercsciencecatcthecUniversitycofcColoradocatcColoradocSprings.cHereceivedchiscPh.cD.cinccomputercsciencecfromcPennsylvaniacStatecUniversity.cHiscresearchciscincprogrammingclanguagecdesigncandcsoftwarectesting.c...1a1c1ac111c111a1a1

内容简介

20世纪末,以计算机和通信技术为代表的信息科学和技术对世界经济、科技、军事、教育和文化等产生了深刻影响。信息科学技术的迅速普及和应用,带动了世界范围信息产业的蓬勃发展,为许多国家带来了丰厚的回报。进入21世纪,尤其随着我国加入WTO,信息产业的国际竞争将更加激烈。我国信息产业虽然在20世纪末取得了迅猛发展,但与发达国家相比,甚至与印度、爱尔兰等国家相比,还有很大差距。国家信息化的发展速度和信息产业的国际竞争能力,最终都将取决于信息科学技术人才的质量和数量。引进国外信息科学与技术优秀教材,在有条件的学校推动开展英语授课或双语教学,是教育部为加快培养大批高质量的信息技术人才采取的一项重要举措。为此,教育部要求由高等教育出版社首先开展信息科学与技术教材的引进试点工作。同时提出了两点要求,一是要高水平,二是要低价格。在高等教育出版社和信息科学技术引进教材专家组的努力下,经过比较短的时间,第一批由教育部高等教育司推荐的20多种引进教材已经陆续出版。这套教材出版后受到了广泛的好评,其中有不少是世界信息科学技术领域著名专家、教授的经典之作和反映信息科学技术最新进展的优秀作品,代表了目前世界信息科学技术教育的一流水平,而且价格也是最优惠的,与国内同类自编教材相当。这套教材基本覆盖了计算机科学与技术专业的课程体系,体现了权威性、系统性、先进性和经济性等特点。 在引进教材的同时,我们还应做好消化吸收,注意学习国外先进的教学思想和教学方法,提高自编教材的水平,使我们的教学和教材在内容体系上,在理论与实践的结合上,在培养学生的动手能力上能有较大的突破和创新。

图书目录

Chapter1Preliminaries.

1.1ReasonsforStudyingConceptsofProgrammingLanguages

1.2ProgrammingDomains

1.3LanguageEvaluationCriteria

1.4InfluencesonLanguageDesign

1.5LanguageCategories

1.6LanguageDesignTrade-offs

1.7ImplementationMethods

1.8ProgrammingEnvironments

Summary·ReviewQuestions·ProblemSet

Chapter2EvolutionoftheMajorProgrammingLanguages

2.1Zuse'sPlankalkOI

2.2MinimalHardwareProgramming:Pseudocodes

2.3TheIBM704andFortran.

2.4FunctionalProgramming:LISP

2.5TheFirstStepTowardSophistication:ALGOL60

2.6ComputerizingBusinessRecords:COBOL

2.7TheBeginningsofTimesharing:BASIC

Interview:ALANCOOPER--UserDesignandLanguageDesign

2.8EverythingforEverybody:PL/I

2.9TwoEarlyDynamicLanguages:APLandSNOBOL

2.10TheBeginningsofDataAbstraction:SIMULA67

2.11OrthogonalDesign:ALGOL68

2.12SomeEarlyDescendantsoftheALGOLs

2.13ProgrammingBasedonLogic:Prolog

2.14History'sLargestDesignEffort:Ada

2.15Object-OrientedProgramming:Smalltalk

2.16CombiningImperativeandObject-OrientedFeatures:C++

2.17AnImperative-BasedObject-OrientedLanguage:Java

2.18ScriptingLanguages:JavaScript,PHP,andPython

2.19AC-BasedLanguagefortheNewMillennium:C#

2.20Markup/ProgrammingHybridLanguages

Summary·BibliographicNotes·ReviewQuestions·ProblemSet

Chapter3DescribingSyntaxandSemantics

3.1Introduction

3.2TheGeneralProblemofDescribingSyntax

3.3FormalMethodsofDescribingSyntax

3.4AttributeGrammars

HistoryNote

3.5DescribingtheMeaningsofPrograms:DynamicSemantics

HistoryNote

Summary·BibliographicNotes·ReviewQuestions·ProblemSet·

ProgrammingExercises

Chapter4LexicaiandSyntaxAnalysis

4.1Introduction

4.2LexicalAnalysis

4.3TheParsingProblem

4.4Recursive-DescentParsing

4.5Bottom-UpParsing

Summary·ReviewQuestions·ProblemSet·ProgrammingExercises

Chapter5Names,Bindings,TypeChecking,andScopes

5.1Introduction

5.2Names

HistoryNote

HistoryNote

5.3Variables

HistoryNote

5.4TheConceptofBinding

Interview:RASMUSLERDORF--ScriptingLanguagesandOther

ExamplesofSlickSolutions

5.5TypeChecking

5.6StrongTyping

5.7TypeCompatibility

HistoryNote

5.8Scope

5.9ScopeandLifetime

5.10ReferencingEnvironments

5.11NamedConstants

Summary·ReviewQuestions·ProblemSet·ProgrammingExercises

Chapter6DataTypes

6.1Introduction

6.2PrimitiveDataTypes

6.3CharacterStringTypes

HistoryNote

6.4User-DefinedOrdinalTypes

6.5ArrayTypes

HistoryNote

HistoryNote

6.6AssociativeArrays

Interview:RASMUSLERDORF--TheOpenSourceMovement

andWorkLife

6.7RecordTypes

6.8UnionTypes

6.9PointerandReferenceTypes

HistoryNote

Summary·BibliographicNotes·ReviewQuestions·

ProblemSet·ProgrammingExercises

Chapter7ExpressionsandAssignmentStatements

7.1Introduction

7.2ArithmeticExpressions

HistoryNote

7.3OverloadedOperators

7.4TypeConversions

HistoryNote

7.5RelationalandBooleanExpressions

HistoryNote

7.6Short-CircuitEvaluation

7.7AssignmentStatements

HistoryNote

7.8Mixed-modeAssignment

Summary·ReviewQuestions·ProblemSet·ProgrammingExercises

Chapter8Statement-LevelControlStructures

8.1Introduction

8.2SelectionStatements

HistoryNote

HistoryNote

8.3IterativeStatements

HistoryNote

Interview:LARRYWALL--Part1:LinguisticsandtheBirth

ofPeri

8.4UnconditionalBranching

HistoryNote

8.5GuardedCommands

8.6Conclusions

Summary·ReviewQuestions·ProblemSet·ProgrammingExercises

Chapter9Subprograms

9.1Introduction

9.2FundamentalsofSubprograms

9.3DesignIssuesforSubprograms

9.4LocalReferencingEnvironments

9.5Parameter-PassingMethods

Interview:LARRYWALL--Part2:ScriptingLanguagesinGeneral..

andPeriinParticular

HistoryNote

HistoryNote

HistoryNote

9.6ParametersThatAreSubprogramNames

HistoryNote

9.7OverloadedSubprograms

9.8GenericSubprograms

9.9DesignIssuesforFunctions

9.10User-DefinedOverloadedOperators

9.11Coroutines

HistoryNote

Summary·ReviewQuestions·ProblemSet·ProgrammingExercises

Chapter10ImplementingSubprograms

10.1TheGeneralSemanticsofCallsandReturns

10.2Implementing"Simple"Subprograms

10.3ImplementingSubprogramswithStack-DynamicLocalVariables

10.4NestedSubprograms

Interview:NIKLAUSWlRTH--KeepingItSimple

10.5Blocks

10.6ImplementingDynamicScoping

Summary·ReviewQuestions·ProblemSet

Chapter11AbstractDataTypesandEncapsulationConstructs

11.1TheConceptofAbstraction

11.2IntroductiontoDataAbstraction

11.3DesignIssuesforAbstractDataTypes

11.4LanguageExamples

Interview:BJARNESTROUSTRUP--C++:ItsBirth,Its

Ubiquitousness,andCommonCriticisms

11.5ParameterizedAbstractDataTypes

11.6EncapsulationConstructs

11.7NamingEncapsulations

Summary·ReviewQuestions·ProblemSet·ProgrammingExercises

Chapter12SupportforObject-OrientedProgramming

12.1Introduction

12.2Object-OrientedProgramming

12.3DesignIssuesforObject-OrientedLanguages

12.4SupportforObject-OrientedProgramminginSmalltalk

12.5SupportforObject-OrientedProgramminginC++

Interview:BJARNESTROUSTRUP--OnParadigmsand

BetterProgramming

12.6SupportforObject-OrientedProgramminginJava

12.7SupportforObject-OrientedProgramminginC#

12.8Supportfor0bject-OrientedProgramminginAda95

12.9TheObjectModelofJavaScript

12.10ImplementationofObject-OrientedConstructs

Summary·ReviewQuestions·ProblemSet·ProgrammingExercises

Chapter13Concurrency

13.1Introduction

13.2IntroductiontoSubprogram-LevelConcurrency

13.3Semaphores

HistoryNote

13.4Monitors

13.5MessagePassing

13.6AdaSupportforConcurrency

13.7JavaThreads

13.8C#Threads

13.9Statement-LevelConcurrency

Summary·BibliographicNotes·ReviewQuestions·ProblemSet·

ProgrammingExercises

Chapter14ExceptionHandlingandEventHandling

14.1IntroductiontoExceptionHandling

HistoryNote

14.2ExceptionHandlinginAda

14.3ExceptionHandlinginC++

14.4ExceptionHandlinginJava

Interview:JAMESGOSLING--TheBirthofJava

14.5IntroductiontoEventHandling

14.6EventHandlingwithJava

Summary·BibliographicNotes·ReviewQuestions·ProblemSet

Chapter15FunctionalProgrammingLanguages

15.1Introduction

15.2MathematicalFunctions

15.3FundamentalsofFunctionalProgrammingLanguages

15.4TheFirstFunctionalProgrammingLanguage:LISP

15.5AnIntroductiontoScheme

15.6COMMONLISP

15.7ML

15.8Haskell

15.9ApplicationsofFunctionalLanguages

15.10AComparisonofFunctionalandImperativeLanguages

Summary·BibliographicNotes·ReviewQuestions·ProblemSet·

ProgrammingExercises

Chapter16LogicProgrammingLanguages

16.1Introduction

16.2ABriefIntroductiontoPredicateCalculus

16.3PredicateCalculusandProvingTheorems

16.4AnOverviewofLogicProgramming

16.5TheOriginsofProlog

16.6TheBasicElementsofProlog

16.7TheDeficienciesofProlog

16.8ApplicationsofLogicProgramming

Summary·BibliographicNotes·ReviewQuestions·ProblemSet·

ProgrammingExercises

Bibliography

Index...