PERL MODULES, REFERENCE OBJECTS UsingWriting Perl Modules
Shared by: hcw25539
PERL PROGRAMMING CLASS (Interm/Adv) 4-day class Tuesday-Friday, August 11-14, 2009 9:00 a.m.-4:00 p.m., CG2-CTTC Trainer: Tom Christiansen, Christiansen Consulting Cost: $533/pp (FREE to NCAR staff - paid by NCAR Directorate) Sponsored by the Software Engineers Assembly (SEA) PERL MODULES, REFERENCE & OBJECTS: Using/Writing Perl Modules, References, Data Structures, Object-Oriented Perl, Exceptions, Signal Handling. STRINGS, UNICODE, AND PATTERN MATCHING: Filehandles to in-memory strings, Constant and/or read-only strings, String functions from Scalar::Util, CPAN string modules, Binary data/character data?, Perl Unicode support, Encodings & I/O layers, Combined characters, Troubleshooting, Internationalization vs. globalization, Maximal/minimal/possessive quantifiers, Backtracking control verbs, Match variables & pattern switches, White space controls, Context & scoping issues, Case-conversions & quoting, Capture Buffers, Dynamic regexes using qr//, New relative & named capture buffers, Lookahead & lookbehind assertions, Embedding code in patterns, Dynamic & recursive patterns, Security concerns, CPAN regex modules. PACKAGES, MODULES & CLASSES: Typeglobs, Per-package symbol-table hashes, Symbolic references, Overriding, Garbage collection & reference counting, References, Saving complex data structures, New & improved pragmas & modules, Numbers as objects, Lexical pragmas, Conditional module loading, New object facilities, Object privacy via safe-hashes or closures, Diamond-inheritance issues, Tying variables and handles to classes; Overloading operations & constants, Packaging modules for distros. MULTITASKING VIA PROCESSES AND THREADS: Full-process forking vs. threading, Signals: safe and otherwise, Accessing POSIX signal facilities, Signals, system(), and backticks, Stderr redirection, Security concerns, Safe pipe opens, Deadlock issues, IPC::Open2 and IPC::Open3, Low-level primitives: fork, pipe, waitpid, exec, Forking servers & client-server hybrids, Sharing data, The ithread model: use threads, Thread management, Retrieving data, Yielding the processor, Locking protocols & deadlock avoidance, The Thread::Queue module, Thread-queues versus process-pipes,Using Semaphores, Process pools vs. thread pools, Useful threading modules from CPAN. Prerequisites: Working knowledge of PERL Level 1 programming. Especially valuable for PERL programmers/system administrators who handle international or legacy datasets, who need to output in UTF-8 (like most Web pages); those needing complex data structure or object facilities, those interested in the higher-level object facilities of tying and overloading or in building their own lexical pragmas, and those who need to write programs that do more than one thing at a time. To register, visit: Staff Development Catalog via Connect at: https://www.fin.ucar.edu/hrisConnect/employee. Log on using your UCAS (timecard) login and password, click the Training and Education Tab on top of the page, click the Staff Development Catalog, search by class, click details and enroll. COST $533/pp: (FREE TO NCAR STAFF - paid through NCAR Directorate). For non-NCAR staff, have your representative with signature authority email Kate Pohl, email@example.com, with account information to charge. A $50 cancellation fee with be assessed for cancellations made within 48 hours of class. For more information, contact Cheryl Cristanelli at ext. 8708, firstname.lastname@example.org, or see the Web page at Staff Development Catalog via Connect.