How-To#
Two kinds of task-oriented material live in this section. The distinction matters because it tells you how much time to put aside and what you’ll walk away with.
Guides are long-form and multi-chapter. You read them the way you read a book - cover to cover, or chapter by chapter with each chapter building on the last. A guide covers a whole subject in depth. The regex guide, for instance, takes you from m// through Unicode properties and backtracking performance; the debugging guide covers everything from attaching -d to decoding production stack traces.
Tutorials are narrow and single-sitting. One tutorial, one topic, one specific question answered. You land on a tutorial with a task in mind and leave with it done. No larger arc, no required prior reading.
Guides#
How pperl is built: the JIT, the FFI, native modules, and the concrete differences from upstream Perl 5.
Doing work in parallel: auto-parallelization, the ithreads reality, and how to choose between them.
Perl regex from first principles through performance tuning.
Making Perl run fast on pperl: measuring with the right tools, which classic idioms still pay off, and how to shape a loop so the JIT and parallelizer take it.
Modern class/field/method first, classical bless for maintainers, migration paths.
Finding and fixing bugs: the -d debugger, inspecting live state, production-path tools.
pperl at the shell: -e, implicit loops, progressive recipes, parameterised aliases, quoting gotchas.
Making a variable dispatch through a class: tied scalars, arrays, hashes, and filehandles, with a complete worked class for each.
Perl by analogy for developers fluent in another language: each construct you already know mapped to its Perl counterpart, with the gotcha the similarity hides. Python, PHP, Ruby, Lua, sed, awk, shell and Tcl.
Two-dimensional graphics in Perl, from the pixel up: the drawing algorithms, the raster and vector toolkits, reaching C libraries through pperl’s native FFI, and two runnable capstones on SDL2 (a drawing app and a 2D game).
Three dimensions: the transform pipeline, meshes and model formats, a software rasteriser you write yourself, and the GPU through pperl’s native Peta::WebGPU binding.
Tutorials#
Binary data layout: directives, endianness, network protocols, file formats.
The full open story: modes, encoding layers, pipes, in-memory handles, error handling.
Scalars, arrays, hashes, code, anonymous and weak references, nested structures.
Text vs bytes, source encoding, PerlIO layers, Unicode regex, common pitfalls.
Truthiness, all sixteen binary operators, De Morgan, NAND/NOR completeness, bitwise and regex applications.
Runnable IPC cookbook: subprocesses, FIFOs, TCP and UDP sockets, socket pairs, System V semaphores and shared memory.
pperl --cpan: where modules land, how pperl finds them, why the installer needs telling what pperl already has, and what the no-XS rule means in practice.
ipps, the prompt that runs Perl: values as you would write them, variables that stay, Tab completion, commands to inspect, time and ask the JIT, and a start file for your own macros.