Programming in Lua:
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Rio de Janeiro
Lua.org
2006
|
Ausgabe: | 2. ed. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XVII, 307 S. |
ISBN: | 8590379825 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV021710050 | ||
003 | DE-604 | ||
005 | 20111028 | ||
007 | t | ||
008 | 060828s2006 |||| 00||| eng d | ||
020 | |a 8590379825 |9 85-903798-2-5 | ||
035 | |a (OCoLC)70192284 | ||
035 | |a (DE-599)BVBBV021710050 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a eng | |
049 | |a DE-Aug4 |a DE-91G |a DE-83 |a DE-29 | ||
050 | 0 | |a QA76.73.L83 | |
082 | 0 | |a 005.133 |2 22 | |
084 | |a ST 250 |0 (DE-625)143626: |2 rvk | ||
084 | |a DAT 364f |2 stub | ||
100 | 1 | |a Ierusalimschy, Roberto |e Verfasser |4 aut | |
245 | 1 | 0 | |a Programming in Lua |c Roberto Ierusalimschy |
250 | |a 2. ed. | ||
264 | 1 | |a Rio de Janeiro |b Lua.org |c 2006 | |
300 | |a XVII, 307 S. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 4 | |a Lua (Computer program language) | |
650 | 0 | 7 | |a Lua |g Programmiersprache |0 (DE-588)7547043-3 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Lua |g Programmiersprache |0 (DE-588)7547043-3 |D s |
689 | 0 | |5 DE-604 | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014923882&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-014923882 |
Datensatz im Suchindex
_version_ | 1804135545989758976 |
---|---|
adam_text | Titel: Programming in Lua
Autor: Ierusalimschy, Roberto
Jahr: 2006
Contents
Preface xiii
I The Language 1
1 Getting Started 3
1.1 Chunks 4
1.2 Some Lexical Conventions 5
1.3 Global Variables 6
1.4 The Stand-Alone Interpreter 7
Types and Values 9
2.1 Nil 10
2.2 Booleans 10
2.3 Numbers 10
2.4 Strings 11
2.5 Tables 13
2.6 Functions 17
2.7 Userdata and Threads
17
Expressions 19
3.1 Arithmetic Operators 19
3.2 Relational Operators 20
3.3 Logical Operators 21
3.4 Concatenation 22
3.5 Precedence 22
3.6 Table Constructors 22
vii
viii
Contents
4 Statements 27
4.1 Assignment 27
4.2 Local Variables and Blocks 28
4.3 Control Structures 30
4.4 break and return 34
5 Functions 35
5.1 Multiple Results 36
5.2 Variable Number of Arguments 39
5.3 Named Arguments 42
6 More About Functions 45
6.1 Closures 47
6.2 Non-Global Functions 50
6.3 Proper Tail Calls 52
7 Iterators and the Generic for 55
7.1 Iterators and Closures 55
7.2 The Semantics of the Generic for 57
7.3 Stateless Iterators 58
7.4 Iterators with Complex State 60
7.5 True Iterators 61
8 Compilation, Execution, and Errors 63
8.1 Compilation 63
8.2 CCode 67
8.3 Errors 67
8.4 Error Handling and Exceptions 69
8.5 Error Messages and Tracebacks 70
9 Coroutines 73
9.1 Coroutine Basics 73
9.2 Pipes and Filters 76
9.3 Coroutines as Iterators 79
9.4 Non-Preemptive Multithreading 81
10 Complete Examples 87
10.1 Data Description 87
10.2 Markov Chain Algorithm 91
II Tables and Objects 95
11 Data Structures 97
11.1 Arrays 97
ix
11.2 Matrices and Multi-Dimensional Arrays 98
11.3 Linked Lists 100
11.4 Queues and Double Queues 100
11.5 Sets and Bags 101
11.6 String Buffers 103
11.7 Graphs 104
12 Data Files and Persistence 107
12.1 Data Files 107
12.2 Serialization 109
13 Metatables and Metamethods 117
13.1 Arithmetic Metamethods 118
13.2 Relational Metamethods 120
13.3 Library-Defined Metamethods 122
13.4 Table-Access Metamethods 122
14 The Environment 129
14.1 Global Variables with Dynamic Names 129
14.2 Global-Variable Declarations 131
14.3 Non-Global Environments 132
15 Modules and Packages 137
15.1 The require Function 138
15.2 The Basic Approach for Writing Modules 141
15.3 Using Environments 143
15.4 The module Function 144
15.5 Submodules and Packages 145
16 Object-Oriented Programming 149
16.1 Classes 151
16.2 Inheritance 152
16.3 Multiple Inheritance 154
16.4 Privacy 156
16.5 The Single-Method Approach 158
17 Weak Tables 161
17.1 Memoize Functions 163
17.2 Object Attributes 164
17.3 Revisiting Tables with Default Values 165
III The Standard Libraries 167
18 The Mathematical Library 169
Contents
19 The Table Library 171
19.1 Insert and Remove 171
19.2 Sort 172
19.3 Concatenation 173
20 The String Library 175
20.1 Basic String Functions 175
20.2 Pattern-Matching Functions 177
20.3 Patterns 180
20.4 Captures 183
20.5 Replacements 185
20.6 Tricks of the Trade 189
21 The I/O Library 193
21.1 The Simple I/O Model 193
21.2 The Complete I/O Model 196
21.3 Other Operations on Files 199
22 The Operating System Library 201
22.1 Date and Time 201
22.2 Other System Calls 203
23 The Debug Library 205
23.1 Introspective Facilities 205
23.2 Hooks 210
23.3 Profiles 211
IV The C API 215
24 An Overview of the C API 217
24.1 A First Example 218
24.2 The Stack 221
24.3 Error Handling with the C API 225
25 Extending Your Application 229
25.1 The Basics 229
25.2 Table Manipulation 231
25.3 Calling Lua Functions 235
25.4 A Generic Call Function 236
26 Calling C from Lua 241
26.1 C Functions 241
26.2 C Modules 244
xi
27 Techniques for Writing C Functions 247
27.1 Array Manipulation 247
27.2 String Manipulation 249
27.3 Storing State in C Functions 251
28 User-Defined Types in C 259
28.1 Userdata 260
28.2 Metatables 262
28.3 Object-Oriented Access 265
28.4 Array Access 267
28.5 Light Userdata 268
29 Managing Resources 269
29.1 A Directory Iterator 269
29.2 An XML Parser 271
30 Threads and States 281
30.1 Multiple Threads 281
30.2 Lua States 285
31 Memory Management 293
31.1 The Allocation Function 293
31.2 The Garbage Collector 295
Index 299
|
adam_txt |
Titel: Programming in Lua
Autor: Ierusalimschy, Roberto
Jahr: 2006
Contents
Preface xiii
I The Language 1
1 Getting Started 3
1.1 Chunks 4
1.2 Some Lexical Conventions 5
1.3 Global Variables 6
1.4 The Stand-Alone Interpreter 7
Types and Values 9
2.1 Nil 10
2.2 Booleans 10
2.3 Numbers 10
2.4 Strings 11
2.5 Tables 13
2.6 Functions 17
2.7 Userdata and Threads
17
Expressions 19
3.1 Arithmetic Operators 19
3.2 Relational Operators 20
3.3 Logical Operators 21
3.4 Concatenation 22
3.5 Precedence 22
3.6 Table Constructors 22
vii
viii
Contents
4 Statements 27
4.1 Assignment 27
4.2 Local Variables and Blocks 28
4.3 Control Structures 30
4.4 break and return 34
5 Functions 35
5.1 Multiple Results 36
5.2 Variable Number of Arguments 39
5.3 Named Arguments 42
6 More About Functions 45
6.1 Closures 47
6.2 Non-Global Functions 50
6.3 Proper Tail Calls 52
7 Iterators and the Generic for 55
7.1 Iterators and Closures 55
7.2 The Semantics of the Generic for 57
7.3 Stateless Iterators 58
7.4 Iterators with Complex State 60
7.5 True Iterators 61
8 Compilation, Execution, and Errors 63
8.1 Compilation 63
8.2 CCode 67
8.3 Errors 67
8.4 Error Handling and Exceptions 69
8.5 Error Messages and Tracebacks 70
9 Coroutines 73
9.1 Coroutine Basics 73
9.2 Pipes and Filters 76
9.3 Coroutines as Iterators 79
9.4 Non-Preemptive Multithreading 81
10 Complete Examples 87
10.1 Data Description 87
10.2 Markov Chain Algorithm 91
II Tables and Objects 95
11 Data Structures 97
11.1 Arrays 97
ix
11.2 Matrices and Multi-Dimensional Arrays 98
11.3 Linked Lists 100
11.4 Queues and Double Queues 100
11.5 Sets and Bags 101
11.6 String Buffers 103
11.7 Graphs 104
12 Data Files and Persistence 107
12.1 Data Files 107
12.2 Serialization 109
13 Metatables and Metamethods 117
13.1 Arithmetic Metamethods 118
13.2 Relational Metamethods 120
13.3 Library-Defined Metamethods 122
13.4 Table-Access Metamethods 122
14 The Environment 129
14.1 Global Variables with Dynamic Names 129
14.2 Global-Variable Declarations 131
14.3 Non-Global Environments 132
15 Modules and Packages 137
15.1 The require Function 138
15.2 The Basic Approach for Writing Modules 141
15.3 Using Environments 143
15.4 The module Function 144
15.5 Submodules and Packages 145
16 Object-Oriented Programming 149
16.1 Classes 151
16.2 Inheritance 152
16.3 Multiple Inheritance 154
16.4 Privacy 156
16.5 The Single-Method Approach 158
17 Weak Tables 161
17.1 Memoize Functions 163
17.2 Object Attributes 164
17.3 Revisiting Tables with Default Values 165
III The Standard Libraries 167
18 The Mathematical Library 169
Contents
19 The Table Library 171
19.1 Insert and Remove 171
19.2 Sort 172
19.3 Concatenation 173
20 The String Library 175
20.1 Basic String Functions 175
20.2 Pattern-Matching Functions 177
20.3 Patterns 180
20.4 Captures 183
20.5 Replacements 185
20.6 Tricks of the Trade 189
21 The I/O Library 193
21.1 The Simple I/O Model 193
21.2 The Complete I/O Model 196
21.3 Other Operations on Files 199
22 The Operating System Library 201
22.1 Date and Time 201
22.2 Other System Calls 203
23 The Debug Library 205
23.1 Introspective Facilities 205
23.2 Hooks 210
23.3 Profiles 211
IV The C API 215
24 An Overview of the C API 217
24.1 A First Example 218
24.2 The Stack 221
24.3 Error Handling with the C API 225
25 Extending Your Application 229
25.1 The Basics 229
25.2 Table Manipulation 231
25.3 Calling Lua Functions 235
25.4 A Generic Call Function 236
26 Calling C from Lua 241
26.1 C Functions 241
26.2 C Modules 244
xi
27 Techniques for Writing C Functions 247
27.1 Array Manipulation 247
27.2 String Manipulation 249
27.3 Storing State in C Functions 251
28 User-Defined Types in C 259
28.1 Userdata 260
28.2 Metatables 262
28.3 Object-Oriented Access 265
28.4 Array Access 267
28.5 Light Userdata 268
29 Managing Resources 269
29.1 A Directory Iterator 269
29.2 An XML Parser 271
30 Threads and States 281
30.1 Multiple Threads 281
30.2 Lua States 285
31 Memory Management 293
31.1 The Allocation Function 293
31.2 The Garbage Collector 295
Index 299 |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Ierusalimschy, Roberto |
author_facet | Ierusalimschy, Roberto |
author_role | aut |
author_sort | Ierusalimschy, Roberto |
author_variant | r i ri |
building | Verbundindex |
bvnumber | BV021710050 |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.73.L83 |
callnumber-search | QA76.73.L83 |
callnumber-sort | QA 276.73 L83 |
callnumber-subject | QA - Mathematics |
classification_rvk | ST 250 |
classification_tum | DAT 364f |
ctrlnum | (OCoLC)70192284 (DE-599)BVBBV021710050 |
dewey-full | 005.133 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.133 |
dewey-search | 005.133 |
dewey-sort | 15.133 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
discipline_str_mv | Informatik |
edition | 2. ed. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01318nam a2200373 c 4500</leader><controlfield tag="001">BV021710050</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20111028 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">060828s2006 |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">8590379825</subfield><subfield code="9">85-903798-2-5</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)70192284</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV021710050</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-Aug4</subfield><subfield code="a">DE-91G</subfield><subfield code="a">DE-83</subfield><subfield code="a">DE-29</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">QA76.73.L83</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.133</subfield><subfield code="2">22</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 250</subfield><subfield code="0">(DE-625)143626:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 364f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Ierusalimschy, Roberto</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Programming in Lua</subfield><subfield code="c">Roberto Ierusalimschy</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">2. ed.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Rio de Janeiro</subfield><subfield code="b">Lua.org</subfield><subfield code="c">2006</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVII, 307 S.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Lua (Computer program language)</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Lua</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)7547043-3</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Lua</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)7547043-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014923882&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-014923882</subfield></datafield></record></collection> |
id | DE-604.BV021710050 |
illustrated | Not Illustrated |
index_date | 2024-07-02T15:20:07Z |
indexdate | 2024-07-09T20:42:13Z |
institution | BVB |
isbn | 8590379825 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-014923882 |
oclc_num | 70192284 |
open_access_boolean | |
owner | DE-Aug4 DE-91G DE-BY-TUM DE-83 DE-29 |
owner_facet | DE-Aug4 DE-91G DE-BY-TUM DE-83 DE-29 |
physical | XVII, 307 S. |
publishDate | 2006 |
publishDateSearch | 2006 |
publishDateSort | 2006 |
publisher | Lua.org |
record_format | marc |
spelling | Ierusalimschy, Roberto Verfasser aut Programming in Lua Roberto Ierusalimschy 2. ed. Rio de Janeiro Lua.org 2006 XVII, 307 S. txt rdacontent n rdamedia nc rdacarrier Lua (Computer program language) Lua Programmiersprache (DE-588)7547043-3 gnd rswk-swf Lua Programmiersprache (DE-588)7547043-3 s DE-604 HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014923882&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Ierusalimschy, Roberto Programming in Lua Lua (Computer program language) Lua Programmiersprache (DE-588)7547043-3 gnd |
subject_GND | (DE-588)7547043-3 |
title | Programming in Lua |
title_auth | Programming in Lua |
title_exact_search | Programming in Lua |
title_exact_search_txtP | Programming in Lua |
title_full | Programming in Lua Roberto Ierusalimschy |
title_fullStr | Programming in Lua Roberto Ierusalimschy |
title_full_unstemmed | Programming in Lua Roberto Ierusalimschy |
title_short | Programming in Lua |
title_sort | programming in lua |
topic | Lua (Computer program language) Lua Programmiersprache (DE-588)7547043-3 gnd |
topic_facet | Lua (Computer program language) Lua Programmiersprache |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014923882&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT ierusalimschyroberto programminginlua |