-
- Weitere Informationen zu diesem Buch:
Inhaltsverzeichnis | Index | Probekapitel | Kolophon | Rezensionen |
- Weitere Informationen zu diesem Buch:
Second Edition Juli 2005
ISBN 978-0-596-00456-9
Weitere Informationen zu diesem Buch
Inhaltsverzeichnis |
Index |
Probekapitel |
Kolophon |
Rezensionen |
Index
[ Symbols ], [ Numbers ], [ A ], [ B ], [ C ], [ D ], [ E ], [ F ], [ G ], [ H ], [ I ], [ J ], [ K ], [ L ], [ M ], [ N ], [ O ], [ P ], [ Q ], [ R ], [ S ], [ T ], [ U ], [ V ], [ W ], [ X ], [ Y ], [ Z ],
Symbols[ Top ]
{ } (braces)
escaping, 89
evaluating code inside of, 84-86
[ ] (square brackets), 46
" " (stringification operator), 28
\ (backslash), escaping, 89
$! (special variable), 25
| (pipe) symbol, 109
Numbers[ Top ]
0+ (numification operator), 28
0+$object, 24
A[ Top ]
Abigail, 262, 265
accessors
AUTOLOAD and, 10
Class::Accessor:Assert module, 119
converting methods to, 23
Acme::
Acme::Bleach, 266-267
Acme::Chef, 269-270
overview of, 266-270
actions, Parse::RecDescent, 48-51
advanced techniques
AUTOLOAD, 10-12
globs (see globs)
time shifting (see time shifting)
unexpected code (see unexpected code)
Algorithm::NaiveBayes, 164
algorithms
Algorithm::NaiveBayes, 161-164
encoding, 174-177
named-entity extraction, 168
stemming words, 157
aliasing
creating subroutines with glob assignment, 8-10
glob assignment for, 4-5
Alzabo
Maypole and, 147
relational mappers, 141
ANNIE, GATE::ANNIE::Simple, 168-170
Apache
Apache Cocoon project, 114
testing, 231-232
Application, CGI::Application, 147
applications, Web (see Web appliations)
artificial intelligence, 149
(see also NLP)
ASCII character set, 172
ASM, Inline::ASM, 254
attrs module, 36
autohandler, HTML::Mason and, 99
AUTOLOAD
combining with UNIVERSAL, 23
overview of, 10-12
automation
automated testing, 219-220
autostubbing, 59
Parse::RecDescent, 57-59
AxKit, 114-116
B[ Top ]
B module, for inspecting bytecode tree, 17-19
back-references, object, 133
Balanced, Text::Balanced, 46
Bayes's theorem, 160
B::Deparse, 260-261
BEGIN blocks, 34-35
Belfast Perl Mongers, 257-258
Berkeley DB, 118
binary serialization, 123
blocks (see code blocks)
boggle, 259
bottom-up parsers
overview of, 43
yacc, 68
Bowden, Tony, 137, 142
braces (see {})
BROKEN subroutine, Text::Template, 88-89
built-in functions
recoding in C vs. Perl built-in function, 12-14
replacing with CORE and CORE::GLOBAL, 12-14
Burke, Sean, 75, 150
byte mode, data handling, 179
bytecode, inspecting, 16-19
C[ Top ]
C libraries
DBMs and, 118
fmtcheck function, 235
Perl and, 233
recoding in C vs. Perl built-in function, 235-236
SQLite and, 135
wrapping, 245-247
C++ overloading, 26
calculators, parsing applications, 72
caller function, HOOK::LexWrap, 14-15
can method, UNIVERSAL class, 20
CDBI (see Class::DBI)
Ceglowski, Maciej, 166
CGI::Application, 147
character code, in Unicode, 173
character encoding, in Unicode, 173
character mode, data handling, 179
character repertoire, in Unicode, 173
character set, ASCII, 172
characters, in Unicode, 173
CHECK blocks, 35-38
Chen, Francine, 164
chr, 178
class subroutine, 19
Class::Accessor::Assert module, 119
Class::DBI
combining with Template Toolkit, 142-144
extensions, 141
Maypole and, 144-147
object relational mapping with, 135, 137-141
relationships, 139-140
schema and classes, 119
setting up, 137-138
updates, 138
classes
Test::Class, 226-229
UNIVERSAL, 20-23
Class::PINT, 141
closures, 9-10
COBOL, 256
code
keeping tests and code together, 225
testing (see testing)
code blocks
actions and, 50
matiching portions of data stream, 47
parsing, 60
codepoint, in Unicode, 173
<commit> directive, Parse::RecDescent, 53-54
comp method, HTML::Mason, 104
components, HTML::Mason, 96-97
components, POE
high-level, 212-213
medium-level, 208-210
overview of, 207-208
components, Template Toolkit, 112-113
concatenation operator, 33
conditional statements, parsing, 54-55
conditions, HTML::Template, 90-92
Config::Auto, 78
configuration files, parsing, 77
context sensitivity, 51
Conway, Damian, 23, 36, 44, 150, 260
CORE, 12-14
CORE::GLOBAL, 12-13
CPANPLUS module, 124
CPR interpreter, Inline::CPR, 253-254
curses, POE::Wheel::Curses, 202
D[ Top ]
data
character encodings, 184-185
handling, 179
iCalendar formats, 60
matching portions of data stream, 47
scalars compared with objects, 119
storing in/retrieving from DBMs, 123
structured, 82
structured vs. other, 43
UTF-8, 179-180
data structures
Inline::Struct, 254
scalars compared with objects, 119
database abstraction, 134
databases
DBMs (see DBMs)
object databases (see object databases)
database-side object, Tangram, 132
Data::Dumper, 121-123, 126
DB_File, 118
DBIx::SearchBuilder, 141
DBMs, 118-129
Dumping Data, 121-123
flat files and, 118
multilevel, 125-127
object databases, 129
object serialization and, 119
overview of, 118-119
Pixie module, 127-129
pruning problem, 124-125
schema and classes, 119-121
storing/retrieving data, 123
debugging, 14
Inline::C, 247-249
Parse::RecDescent, 51-53
serialization during, 121
TANGRAM_TRACE, 134
deleting objects, Tangram, 134
DELIMITERS option, Text::Template, 89
Désarménien, François, 68
DESTROY
AUTOLOAD and, 10
time shifting and, 25
document categorization
Bayesian approach, 159-163
keyword extraction, 166-168
name and place extraction, 168-170
overview of, 159
summarization, 163-166
documentation, perlxstut, 233
Dominus, Mark-Jason, 84, 195, 260
dumping data (Data::Dumper), 121-123, 126
DWIM (do what I mean) methods, 33, 130, 217
dynamic method resolution, in class model, 23
E[ Top ]
e-mail, filtering, Mail::Audit, 64-68
Encode, 184-189
converting data between various character encodings, 184-185
handling Unicode data in Perl, 186-190
English
Lingua::EN::Inflect, 150-154
Lingua::EN::Keywords, 166-168
Lingua::EN::NamedEntity, 168-170
Lingua::EN::Sentence, 155
Lingua::EN::Splitter, 155-156, 158
Lingua::EN::StopWords, 158, 166
Lingua::EN::Summarize, 163
Lingua::EN::Tagger, 166
<error> directive, Parse::RecDescent, 55-56
escaping
HTML::Mason, 102
Text::Template, 89
eval, 34-35
event loop, 196
event-driven paradigm, 195-196
Exporter module, glob assignment and, 4-5
Extending and Embedding Perl (Manning), 233
Extensible Server Pages (XSP), 114
extension subroutines (see XS)
extensions, Class::DBI, 138
Extreme Programming (XP), 215, 226
F[ Top ]
fallback feature, of overload pragma, 28
filehandles
formats and, 82
POE wheels as equivalent of, 200
UTF-8 and, 180
Filter, Tangram::Filter, 133
filters
DBM filter facility, 125-126
in Template Toolkit, 109
Filter::Simple, 269
Filter::Util::Call, 269
final attribute, 36
final methods, Java, 37
fmt command, Unix, 82-83, 235
format filter, Template Toolkit, 109
format STDOUT, 80-82
formats
HTML (see HTML::Mason; HTML::Template)
iCalendar, 60
Perl, 80-84
text (see Text::Template)
Franz, Benjamin, 157
FreezeThaw module, 126
fun and games
Acme::*, 266-270
JAPH (Just Another Perl Hacker), 262-263
obfuscation, with Perl, 256-261
Perl Golf, 263-265
Perl Poetry, 264-265
functions, built-in
C vs. Perl built-in, 12-14
replacing with CORE and CORE::GLOBAL, 12-14
fwp (Fun With Perl), 270
G[ Top ]
game tree, for Go, 45
GATE::ANNIE::Simple, 168-170
*glob = ... (assigning references to globs), 8
GLOBAL, CORE::GLOBAL, 12-13
globs, 2-10
accessing parts of, 5-8
aliasing, 4-5
finding in symbol table, 2-3
subroutines created with, 9-10
glyphs, Unicode, 173
GNU libgdbm, 118
Go game, 44-45
golf, Perl Golf, 263-265
Graham, Tony, 174
grammar, Parse::Yapp, 69-70
Gtk, 195
GUIs, event-driven paradigm and, 195
Guttman, Uri, 263
H[ Top ]
handlers
autohandler, 100
filehandles, 82, 180, 200
UTF8 data, 179-180
harness, Test::Harness, 220-221
has_a relationship, Class::DBI, 139
hash keys, globs accessed by, 8
hashdump, 97, 98
hashes
Inline::C, 244-245
Text::Template, 86-87
has_many relationships, Class::DBI, 139-140
Hazel, Philip, 245
Hearst, Marti, 156
Hello World examples, POE, 196-200
hexdump command, 201-202
HOOK::LexWrap, 14-16
Hopkins, Sharon, 265
HTML
formatting (see HTML::Template)
HTML::Parser, 73-75
templating modules, 79
transforming XML to, 114
HTML::LinkExtor, 75
HTML::Mason, 96-107
adding templates to Mason pages, 97-98
Class::Class::DBI and Template Toolkit and, 119
compared with Template Toolkit, 107
components, 96-97
Maypole and, 147
overview of, 96
Perl logic, 98
RSS aggregation, 98-107
HTML::Parser, 73-75
HTML::Template, 90-96
loops, 93
overview of, 90
PageKit and, 147
validation, 92
variables and conditions, 90-92
HTML::TokeParser, 75
HTTP
POE::Component::Client::HTTP, 212
POE::Component::Server::HTTP, 210-212
hyphenation, 84
I[ Top ]
iCalendar, parsing, 60-64
import routine, 5
INCLUDE directive, 112-113
ined, 144
inflections, natural language tools for, 150-152
Ingerson, Brian, 233, 249
Ing-Simmons, Nick, 184
inheritance
dynamic method resolution, 23
final methods and, 35
handling with package variables, 25
in Perl OO, 20
inline extensions, 233-255
Inline::C (see Inline::C)
Inline::CPR, 253-254
Inline::Python, 251-252
Inline::Ruby, 252-253
Inline::Struct, 254
others, 260
overview of, 233
Inline::ASM, 254
Inline::Basic, 254
Inline::C
arrays, 243-244
C vs. Perl built-in functions, 235-236
dealing with Perl's Internal Values (scalars, and arrays), 237-241
debugging, 247-249
hashes, 244-245
inline extensions, 233-235
packaging inline modules, 249-250
references, 243
stack handling, 241-243
wrapping C libraries, 245-247
Inline::CPR, 253-254
Inline::Java, 254
Inline::Python, 250-252
Inline::Ruby, 252-253
Inline_Stack_Item, 241-242
Inline::Struct, 254
I/O library, PerlIO, 186
isa method, UNIVERSAL class, 20-21
is_a relationships, Class::DBI, 140
ISO standards
ASCII, 172
Unicode and, 174-175
%item hash, in Parse::RecDescent, 59
J[ Top ]
(JAPH) Just Another Perl Hacker, 261-263
Java
final methods, 35
Inline::Java, 254
joins, multitable, 141
JPL (Java Perl Lingo), 254
K[ Top ]
kernel, POE, 196
key-values, in DBMs, 119
keyword extraction, document categorization, 166-168
Knuth, Donald, 84
Kogai, Dan, 184
Kupiec, Julian, 164
L[ Top ]
languages
NLP, 149-171
OO programming, 53-54
text-processing, 149
Latin 1 standard, ISO, 172
Learning Perl (Schwartz), 261
Leroy, Jean-Louis, 130
Lester, Andy, 221
lex & yacc, 68
lexing operations
HOOK::LexWrap, 14-16
Parse::Lex, 71
Lingua::EN::Inflect, 150-154
NUMWORDS subroutine, 152-154
overview of, 150
PL and NO subroutines, 151
Lingua::EN::Keywords, 166-168
Lingua::EN::NamedEntity, 168-170
Lingua::EN::Sentence, 155
Lingua::EN::Splitter, 155-156, 158
Lingua::EN::StopWords, 158, 166
Lingua::EN::Summarize, 163
Lingua::EN::Tagger, 166
Lingua::Segmenter::TextTiling, 155-156
Lingua::Stem::En, 157
Lingua::Stemmer, 157
Lingua::Stopwords, 161
LinkExtor, HTML::LinkExtor, 75
loops
event loop (or main loop), 196
loops (continued)
HTML::Template, 93
Text::Template and, 86-87
Luhn, Hans Peter, 164
M[ Top ]
MACRO directive, 112
macros, in Template Toolkit, 112-113
Mail::Audit, 64-68
main loop, in event-driven paradigm, 196
maps, trivial object-relational mapping, 141
Marquess, Paul, 269
Mason (see HTML::Mason)
matches, data stream, 47-48
Matsumoto, Yukihiro, 24, 252
Maypole, 144-147
actions, 145-146
Class::DBI and, 144-145
goals or functions of, 144
McMahon, Joe, 221
memory location, 25
method calls
concatenation operator and, 33
in OO programming languages, 53-54
MLDBM, 126-127
modifiers, getting values of, 59
modules, POE (see components, POE)
Mono project, 76
multilevel DBMs, 125-127
multitable joins, 141
mutators, converting methods to, 23
MVC Patterns, 142
my variables, 85, 98
MySQL, 119
N[ Top ]
named-entity extraction, Lingua::EN::NamedEntity, 168-170
namespace, POE::Component:: namespace, 207
natural language processing (see NLP)
network servers, event-driven paradigm for, 195
NLP (natural language processing), 149-171
converting words to numbers, 152-154
document categorization, 159-170
inflections, 150-152
overview of, 149
parsing English, 154
Perl and, 149-150
pluralization, 150-151
splitting text into chunks, 154-156
stemming words, 156-157
stop words, 158
NO subroutine, Lingua::EN::Inflect, 151
numbers, converting words to, 152-154
NUMWORDS subroutine, Lingua::EN::Inflect, 151-154
O[ Top ]
Obfuscated Perl Contest, 256, 260
obfuscation, with Perl, 256-261
object databases
Class::DBI, 137-140
database abstraction, 134
overview of, 129
pitfalls of, 130
Tangram, 130-134
trivial object-relational mapping, 135-137
object orientation (see 00)
Object Oriented Perl (Conway), 23
object serialization (see serialization)
objects
relationships in Tangram, 133
schema and classes, 119-121
on-demand storage references, Tangram, 133
one-liners, 265
OO (object orientation), 20-25
dynamic method resolution, 23
method calling, 53-54
singleton methods, 24-25
UNIVERSAL class, 20-23
op tree, 19-20
OpenFrame, 147
OpenInteract, 147
operators
concatenation, 33
in B module, 17
numification, 28
overloading, 26-29
stringification, 28
Oracle, 119
$OUT variable, Text::Template, 87
overloading
limitations of, 34
non-operator overloading, 29-33
operator overloading, 26-28
overview of, 26-28
P[ Top ]
pack, getting formatted output, 80
PageKit, 147
Paris Perl Mongers, 263
Parse::Lex, 71
Parse::RecDescent, 44-68
actions, 48-51
applying to game of Go, 44-45
automating, 57-59
commit, reject, and error, 53-56
debugging, 51-53
iCalendar example, 60-64
matching portions of data stream, 47
other features, 59-60
procmail example, 64-68
Text::Balanced, 46-47
whitespace, 56-57
Parse::Yapp, 68-72
parsing techniques, 43-78
Config::Auto, 78
HTML::Parser, 73-75
natural language tools for parsing English text, 159
overview of, 43-44
Parse::Lex, 71
Parse::RecDescent (see Parse::RecDescent)
Parse::Yapp, 68-72
XML::Parser, 75-77
Pazdziora, Jan, 84
pcre library, 245-247
Pedersen, Jan O., 164
Perl & LWP, 75
Perl & XML, 77
Perl formats
overview of, 80-82
Text::Autoformat compared with, 83-84
Perl Golf, 263-265
Perl Kwalitee Assurance team, 215
Perl logic, HTML::Mason and, 97-98
Perl Object Environment (see POE)
Perl poetry, 264-266
PerlUnit, 226
perlxstut, Perl documentation, 233
PINT, Class::PINT, 141
pipe (|) symbol, 109
Pixie module, 127-129
PL subroutine, Lingua::EN::Inflect, 151
place extraction, document categorization, 168-170
plaintext
formatting, 84
matching portions of data stream, 47
plugins
Class::DBI plug-in relationships, 140
in Template Toolkit, 110-111
Template::Plugin, 110, 113
pluralization, natural language tools for, 150-154
PoCo (see POE::Component)
Pod::Tests, 225
POE (Perl Object Environment), 195-214
components, 207-213
event-driven paradigm, 195-196
Hello World example, 196-200
overview of, 195
port forwarder, 203-207
wheels, 200-202
POE::Component::Client::HTTP, 212
POE::Component::Client::TCP, 208-210
POE::Component::namespace, 207
POE::Component::RSSAggregator, 213
POE::Component::Server::HTTP, 210-212
POE::Component::Server::TCP, 208-210
POE::Wheel::Curses, 202
POE::Wheel::FollowTail, 200-202
POE::Wheel::ReadWrite, 205-206
POE::Wheel::SocketFactory, 204-206
polymorphism, 132
port forwarder, POE, 203-207
Porter, Martin, 157
printf
format filter compared with, 109
getting formatted output, 80
procmail, Parse::RecDescent examples, 64-68
programmers, rites of passage, 79
Programming Perl (Wall), 1, 261
pruning DBMs, 124-125
Pugh, Kate, 142
Python, Inline::Python, 250-252
Q[ Top ]
queries, Tangram, 134
R[ Top ]
RecDescent (see Parse::RecDescent)
recognizer, in Parse::RecDescent, 48-49
redos, testing and, 222-223
references
assigning to parts of globs, 6-8
Inline::C, 233
looking up, 3
regular expressions
matching portions of data stream, 47
Unicode, 181-183
<reject> directive, Parse::RecDescent, 54-55
relational databases
object-relational mapping, 135-137
Oracle and MySQL, 119
SQLite, 135
relationships, Class::DBI, 139-140
remote objects, searching and retrieving, Tangram, 131
repetition directives, 47
require module, UNIVERSAL class, 22
RSS (Remote Site Summary)
aggregation, 93-96
HTML::Mason and, 98-107
HTML::Template and, 95
in template toolkit, 113-114
overview of, 90
POE::Component::RSSAggregator, 213
Ruby, 24
Inline::Ruby, 252-253
objects in, 30-31
overloading in, 26, 31-33
rules, matching portions of data stream, 47
S[ Top ]
scalars
compared with objects, 119
Inline::C, 237-241
schema, DBMs, 119-121
Schwartz, Randal, 261
Schwern, Michael, 137, 215, 222
SDBM library, 118
SearchBuilder, DBIx::SearchBuilder, 141
security, Text::Template, 87
segmenters, Lingua::Segmenter::TextTiling, 155-156
SelfGOL, 260
sentences
extracting key, 163
Lingua::EN::Sentence, 155
splitting up, 154-155
Sergeant, Matt, 198
serialization, 119-129
Data::Dumper, 121-123
multilevel DBMs and, 125-127
overview of
Pixie module, 127-129
pruning problem, 124-125
Storable and FreezeThaw, 125
YAML, 122
sessions, POE, 196
SGF (Smart Game Format), 44-45
shutdown methods, Test::Class, 229
singleton method, applying to object rather than class, 24-25
skips, testing and, 218-219
Sleepycat Berkeley DB, 118
Smart Game Format (SGF), 44-45
source filters, 269
spam, NLP for preventing, 159
SpamAssassin, 159
special variables
$! (special variable), 25
formats and, 82
splitters, Lingua::EN::Splitter, 155-156, 158
SPOPS
Maypole and, 147
relational mappers, 141
sprintf, getting formatted output, 80
SQLite, 135
square brackets ([ ]), 46
stack, handling in Inline::C, 241-243
standards, Unicode (see Unicode)
startup methods, Test::Class, 229
stemming words, natural language tools, 156-157
stopwords
Lingua::EN::StopWords, 158, 166
natural language tools, 158
Storable module, 123
storage, symbol table mapping to, 2
storing/retrieving data, 129
(see also DBMs)
stringification operator (" "), 28
strings
encoding, 191-193
overloading and, 31-33
traversing, 190-191
Struct, Inline::Struct, 254
structured data
parsing, 43
wrapping, 82
subclassing, singleton method and, 24
subroutines
creating with globs, 8-10
wrappers around, 14-16
subrules, matching portions of data stream, 47
substr, getting formatted output, 80
summarization, document categorization, 163-166
Summarization, Lingua::EN::Summarize, 163
symbol table
finding globs in, 2-3
looking up variable names in, 2-3
T[ Top ]
tagging documents, Lingua::EN::Tagger, 166
taint mode, Text::Template, 87
Tangram, 130-134
classes and schema, 130-131
create, read, update, delete, 132-134
overview of, 130-131
Tangram::Cursor, 133
Tangram::Expr, 133
Tangram::Filter, 133
Tangram::Storage, 133-134
TANGRAM_TRACE, 134
TAP (Test Anything Protocol), 221
TCP
POE::Component::Client::TCP, 208-210
POE::Component::Server::TCP, 208-212
Template Toolkit
Class::DBI and, 142-144
components and macros, 112-113
filters, 109
overview of, 107-109
pluggins, 110-111
RSS Aggregator, 113-114
Template::Plugin::Autoformat, 110
Template::Plugin::XML::RSS, 113-114
Template::Plugin::XML::Simple, 110
templating tools
AxKit, 114-117
formats and, 80-82
HTML::Mason (see HTML::Template)
HTML::Template (see HTML::Template)
Template Toolkit (see Template Toolkit)
Text::Autoformat, 82-84
Text::Template (see Text::Template)
terminal symbol, parsing for, 52
Test Anything Protocol (TAP), 221
Test::Builder, 222-223
Test::Builder::Tester, 224-225
Test::Class, 226-229
overview of, 226-227
startup and shutdown methods, 229
testing Apache, DBI, and other complex environments, 231-232
Test::Fuzzy, 224
Test::Harness, 220-221
testing
Apache, 231-232
automated, 219-220
DBI, 231
keeping tests and code together, 225
overview of, 215
Pod::Tests, 225
skips and redos, 218-219
Test::Builder, 222-223
Test::Builder::Tester, 224-225
Test::Class, 226-229
Test::Harness, 220-221
Test::MockObject, 229-230
Test::More, 217-218
Test::Simple, 215-217
unit tests, 226
Test::Inline, 225
Test::MockObject, 229-230
Test::More
automated testing with, 219-220
overview of, 217-218
skips and redos, 218-219
Test::Simple, 215-217
Test::Tutorial, 232
TeX package, 84
text, English
converting words to numbers, 152-154
document categorization (see document categorization)
inflections, 150-152
pluralization, 150-151
splitting into chunks, 154-156
stemming words, 156-157
stopwords, 158
text formatting (see Text::Template)
text handlers, 74
Text::Autoformat, 82-84
compared with Perl formatting language, 83-84
hyphenation and, 84
Template::Plugin::Autoformat, 110
wrapping structured text, 82-83
Text::Balanced, 46
text-processing languages, 149, 171
Text::Sentence, 154
Text::Template
compared with Template Toolkit, 108
loops, arrays, and hashes and, 86-87
overview of, 84-86
security and error checking, 87
tricks, 89-90
TextTiling, Lingua::Segmenter::TextTiling, 155-156
Text::Wrap, 82
threading, attributes and, 36
Time module, overloading, 26-28
time shifting
BEGIN, 34-35
CHECK blocks and, 35-38
DESTROY, 38
eval, 34-35
overview of, 34
Tk, 195-196
<TMPL_ELSE>, HTML::Template, 92
<TMPL_IF>, HTML::Template, 92
<TMPL_LOOP>, HTML::Template, 93
<TMPL_VAR>, HTML::Template, 90
tokens
bottom-up parsing and, 43
HTML::TokeParser, 75
top-down parsers, 43
(see also Parse::RecDescent)
tracing, TANGRAM_TRACE, 134
TT (see Template Toolkit)
tutorials
POE, 198
Test::Tutorial, 232
U[ Top ]
UCS (Universal Character Set)
overview of, 175
UCS-2, 176-177
UCS-4, 178
unexpected code
limitations of overloading, 34
non-operator overloading, 29
operator overloading, 26-28
overloading, 26-28
overview of, 25
Unicode, 172-194
entering Unicode characters, 180-181
handling UTF-8 data, 179-180
overview of, 174
PerlIO and, 186
reasons for using, 176
regular expressions, 181-183
terminology and, 172-173
transformation formats (see UTF)
UCS (Universal Character Set), 174-175
Unicode Consortium, 175
XS authoring and, 190-193
Unicode: A Primer (Graham), 174
Unicode Technical Committee (UTC), 175
Unicode Technical Report (UTR), 174
unit tests
overview of, 226
Test::Class, 226-229
Test::MockObject, 229-230
Universal Character Set (see UCS)
UNIVERSAL class, 20-23
can method, 20
combine with AUTOLOAD, 23
isa method, 20-21
methods, 20
require module, 22
VERSION method, 20-22
updates
Class::DBI, 138
Tangram, 133
use strict, 85
UTC (Unicode Technical Committee), 175
UTF (Unicode Transformation Format)
character encoding, 173
transformation formats, 176-180
UCS-2, 176-177
UCS-4, 178
UTF-16BE, 178
UTF-16LE, 178
UTF-32, 178
UTF-7, 179
UTF-8, 179-180
UTF-EBCDIC, 179
UTF-8
encoding strings, 191-193
handling UTF-8 data from external sources, 179-180
handling UTF-8 data from inside program, 180-181
overview of, 177
traversing strings, 190-191
UTR (Unicode Technical Report), 174
V[ Top ]
validation, HTML::Template, 92
variables
accessing, 2-3
HTML::Template, 90-92
VERSION method, UNIVERSAL class, 20-22
virtual machines, Perl, 18
W[ Top ]
Wall, Larry, 149-150
Wardley, Andy, 107
Watkiss, Neil, 250, 254
Web applications
Class::DBI and Template Toolkit and, 142-144
Maypole, 144-147
overview of, 142
Web sites
Paris Perl Mongers, 263
POE tutorial, 198
Test::Tutorial, 232
wheels, POE, 200-202
POE::Wheel::Curses, 202
POE::Wheel::FollowTail, 200-202
POE::Wheel::ReadWrite, 205-206
POE::Wheel::SocketFactory, 204-206
whitespace
Parse::RecDescent, 56-57
Perl tolerance of, 258-259
Winters, Chris, 147
word distribution, Zipf's Law, 164
words, natural language tools for converting to numbers, 152-154
wrappers
around subroutines, 14-16
C libraries, 245-247
HOOK::LexWrap, 14-16
Text::Autoformat, 82-83
Text::Wrap, 82
X[ Top ]
XML
RSS based on, 90
Template::Plugin::XML::RSS, 113
Template::Plugin::XML::Simple, 110
transforming to HTML, 114
XML::Parser, 75-77
XP (Extreme Programming), 215, 226
XS (extension subroutines), 190-193
bridging Perl and C, 233
encoding strings, 191-193
Perl internal values and, 237
references, 243
skeleton module, 249
traversing strings, 191-193
XS (extention subroutines)
traversing strings, 190-191
XSP (Extensible Server Pages), 114
Y[ Top ]
yacc (Yet Another Compiler Compiler)
as traditional parser, 44
overview of, 68
YAML (YAML Ain't Markup Language), 122
yapp
command-line utility, 71-72
Parse::Yapp, 68-72
Yona, Shlomo, 155
Z[ Top ]
Zipf's Law of Word Distribution, 164
Zurück zu Advanced Perl Programming