Advanced Programming Guide.pdf
(
13106 KB
)
Pobierz
Maple
AdvancedProgramming
Guide
M.B.MonaganK.O.GeddesK.M.Heal
G.LabahnS.M.VorkoetterJ.McCarron
P.DeMarco
cMaplesoft,adivisionofWaterlooMapleInc.2005.
ii ¯
Maple,Maplesoft,Maplet,andOpenMaplearetrademarksofWater-
looMapleInc.
c
Maplesoft,adivisionofWaterlooMapleInc.2005.Allrightsre-
served.
Theelectronicversion(PDF)ofthisbookmaybedownloadedand
printedforpersonaluseorstoredasacopyonapersonalmachine.The
electronicversion(PDF)ofthisbookmaynotbedistributed.Information
inthisdocumentissubjecttochangewithoutnoticeanddoesnotrep-
resentacommitmentonthepartofthevendor.Thesoftwaredescribed
inthisdocumentisfurnishedunderalicenseagreementandmaybeused
orcopiedonlyinaccordancewiththeagreement.Itisagainstthelawto
copythesoftwareonanymediumasspecißcallyallowedintheagreement.
WindowsisaregisteredtrademarkofMicrosoftCorporation.
JavaandallJavabasedmarksaretrademarksorregisteredtrade-
marksofSunMicrosystems,Inc.intheUnitedStatesandothercountries.
MaplesoftisindependentofSunMicrosystems,Inc.
Allothertrademarksarethepropertyoftheirrespectiveowners.
ThisdocumentwasproducedusingaspecialversionofMaplethat
readsandupdatesL
A
T
E
Xßles.
PrintedinCanada
ISBN1-894511-77-8
Contents
Preface 1
Audience.............................. 1
WorksheetGraphicalInterface.................. 2
ManualSet............................. 2
Conventions............................. 3
CustomerFeedback......................... 3
1Procedures,Variables,andExtendingMaple 5
PrerequisiteKnowledge................... 5
InThisChapter ....................... 5
1.1NestedProcedures...................... 5
ScopingRules......................... 6
LocalVersusGlobalVariables................ 6
TheQuick-SortAlgorithm.................. 8
Example............................ 8
CreatingaUniformRandomNumberGenerator..... 11
1.2ProceduresThatReturnProcedures............ 14
ConveyingValues....................... 14
CreatingaNewtonIteration................. 14
Example1........................... 15
Example2........................... 16
AShiftOperator....................... 17
1.3LocalVariablesandInvokingProcedures.......... 19
Example1........................... 19
Example2........................... 20
ProcedureasaReturnedObject.............. 22
Example3........................... 22
Example4........................... 24
Exercises ........................... 26
1.4InteractiveInput....................... 27
iii
iv¯Contents
ReadingStringsfromtheTerminal............. 27
Example1........................... 28
ReadingExpressionsfromtheTerminal .......... 28
Example2........................... 29
ConvertingStringstoExpressions ............. 30
1.5ExtendingMaple....................... 31
DeßningNewTypes..................... 31
Exercises ........................... 33
NeutralOperators...................... 33
Example1........................... 34
Exercise............................ 37
ExtendingCommands.................... 39
1.6Conclusion.......................... 42
2ProgrammingwithModules 43
Modules............................ 43
Examples........................... 44
ModuleVersusProcedure.................. 45
AccessingModuleExports.................. 46
InThisChapter ....................... 46
2.1SyntaxandSemantics.................... 47
TheModuleDeßnition.................... 47
TheModuleBody...................... 48
ModuleParameters...................... 48
NamedModules ....................... 48
Declarations.......................... 50
ExportedLocalVariables.................. 52
ModuleOptions........................ 57
ImplicitScopingRules.................... 58
LexicalScopingRules.................... 58
ModulesandTypes...................... 60
Example:ASymbolicDiÞerentiator............ 61
2.2Records............................ 72
2.3Packages............................ 78
WhatIsaPackage...................... 78
WritingMaplePackagesbyUsingModules ........ 80
TheLinkedListPackage.................. 80
CodeCoverageProßlingPackage.............. 87
TheShapesPackage..................... 95
2.4TheuseStatement......................103
OperatorRebinding.....................106
Contents¯v
2.5ModelingObjects.......................108
PriorityQueues........................111
AnObject-orientedShapesPackage............115
2.6InterfacesandImplementations...............117
Interfaces...........................118
GenericGraphAlgorithms..................124
QuotientFields........................129
AGenericGroupImplementation..............138
2.7ExtendedExample:ASearchEngine............159
IntroductiontoSearching..................159
InvertedTermOccurrenceIndexing.............161
TheVectorSpaceModel...................164
TermWeighting........................167
BuildingaSearchEnginePackage.............168
LatentSemanticAnalysis..................172
TheSearchEnginePackage.................173
UsingthePackage......................180
2.8Conclusion..........................184
3InputandOutput 185
InThisChapter .......................185
3.1ATutorialExample.....................186
3.2FileTypesandModes....................190
BuÞeredFilesversusUnbuÞeredFiles...........190
TextFilesversusBinaryFiles................190
ReadModeversusWriteMode...............191
ThedefaultandterminalFiles..............191
3.3FileDescriptorsversusFileNames.............192
3.4FileManipulationCommands................193
OpeningandClosingFiles..................193
PositionDeterminationandAdjustment..........194
DetectingtheEndofaFile.................195
DeterminingFileStatus...................195
RemovingFiles........................196
3.5InputCommands.......................197
ReadingTextLinesfromaFile...............197
ReadingArbitraryBytesfromaFile............197
FormattedInput.......................198
ReadingMapleStatements .................204
ReadingTabularData....................204
3.6OutputCommands......................206
Plik z chomika:
AniaO1990
Inne pliki z tego folderu:
Advanced Programming Guide.pdf
(13106 KB)
Introductory Programming Guide.pdf
(9121 KB)
Maple 10 Quick Reference Card.pdf
(481 KB)
Inne foldery tego chomika:
License 10.06
Zgłoś jeśli
naruszono regulamin