Perl 6
Perl 6 Glossary Tablet: Revision 4
{section: Index} "Intro"[Perl 6 Intro Tablet] - _Chapter:_ "0:History"[Perl 6 History Tablet] "1:Design"[Perl 6 Language Design Tablet] "2:Basics"[Perl 6 Basics Tablet] "3:Var"[Perl 6 Variable Tablet] "4:Op"[Perl 6 Operator Tablet] "5:IO"[Perl 6 IO Tablet] "6:{}"[Perl 6 Block Tablet] "7:Sub"[Perl 6 Subroutine Tablet] "8:OOP"[Perl 6 OOP Tablet] "9:Rx"[Perl 6 Regex Tablet] "10:Meta"[Perl 6 Meta Tablet]
"Overview"[Perl 6 Tablets] - _Appendices:_ "A:Index"[Perl 6 Index Tablet] "B:Tables"[Perl 6 Lookup Tablet] "C:Cook"[Perl 6 Cookbook Tablet] "D:Delta"[Perl 6 Delta Tablet] "E:Best of"[Best Of Perl 6 Tablet] "F:Links"[Perl 6 Links Tablet] *"G:Glossary"[Perl 6 Glossary Tablet]*

----

{link: A} | {link: B} | {link: C} | {link: D} | {link: E} | {link: F} | {link: G} | {link: H} | {link: I} | {link: J} | {link: K} | {link: L} | {link: M} | {link: N} | {link: O} | {link: P} | {link: Q} | {link: R} | {link: S} | {link: T} | {link: T} | {link: U} | {link: V} | {link: W} | {link: X} | {link: Y} | {link: Z}

^^ "A"{link: Index} {section: A}

* _ALAP_ {section: alap} - as late as possible, within a given execution phase (compile time or run time)
* _ASAP_ {section: asap} - as soon as possible, within a given execution phase (compile time or run time)
* _AST_ {section: AST} - (abstract syntax tree), tree like data structure, in which source code is transformed, before running the programm

^^ "B"{link: Index} {section: B}

* _backtracking_ {section: backtracking} - after a part of a pattern didn't match, this last operation might not be counted (undone) and the pointer for the position in the string where actual matching is taking place is going a few steps to the left (it goes back)
* _"binding"{link: [Perl 6 Variable Tablet] Binding}_ {section: binding} - making two variables share the same content by pointing to same memory location
* _block_ {section: block} - syntactically just a piece of code inside curly brackets (*{}*), when "evaluated"{link: evaluation} it becomes an object of the type *"Block"{link: [Perl 6 Index Tablet] block type}*

^^ "C"{link: Index} {section: C}

* _closure_ {section: closure} - routines whose state (content of all local variables) is completely preserved until the next execution, mostly used as a fancy alias for a _"block"{link: block}_
* _coderef_ {section: coderef} - reference (pointer) to an executable block of code (routine)
* _compilation_ - reading the human written source code and make it an executable (piece of) program
* _compile time_ {section: compile time} - time when Perl converts source code to executable form (bytecode), is always before _"runtime"{link: runtime}_ even if code can be compiled via *"eval"{link: [Perl 6 Index Tablet] eval}* and *"evalfile"{link: [Perl 6 Index Tablet] evalfile}* when the program is already runnung, to run code at the begin of compile time use *"BEGIN"{link: [Perl 6 Index Tablet]begin phaser}* and *"CHECK"{link: [Perl 6 Index Tablet]check phaser}* to run at the end of compile time for that unit (mostly the file or the to be *"evaled* string)
* _context_ {section: context} - when executing a function or operator Perl considers the expression from which the call was to return a "scalar"{link: [Perl 6 Index Tablet] scalar type} or other kind of result
* _context variable_ {section: context variable} - name for *"$_"{link: context var}*, which is used by built in Perl functions as an implicit parameter and as memory of the last result
* _currying_ {section: currying} - creating a subroutine that calls another with certain _"parameter"{link: parameter}_ to be predefined

^^ "D"{link: Index} {section: D}

* _declarative programming_ {section: declarative programming} - programming paradigm that expresses the logic of a computation without describing its control flow
* _design by contract_ {section: Design by Contract} - programming style in which parameters and return values from routines must meet conditions; A signature is considered contract in Perl 6

^^ "E"{link: Index} {section: E}

* _evaluation_ {section: evaluation} - executing a piece of program, before that all variables will be replaced with their content

^^ "F"{link: Index} {section: F}

* _functional programming_ {section: Functional Programming} - exclusively function based programming style, "strongly supported"{link: [Perl 6 Delta Tablet] Functional Programming} by Perl 6, considered as a branch of _"declarative Programming"{link: declarative programming}_

^^ "G"{link: Index} {section: G}

^^ "H"{link: Index} {section: H}

^^ "I"{link: Index} {section: I}

* _iteration_ {section: iteration} - flow control, repeatedly executing a block

^^ "J"{link: Index} {section: J}

* _junction_ {section: junction} - a type of value that holds a logical combination of several values, example: (A and B) or C

^^ "K"{link: Index} {section: K}

^^ "L"{link: Index} {section: L}

* _list context_ -
* _longest token matching_ {section: longest token matching} - (short _LTM_) when searching a pattern with alternatives (sub|substr) the search will continue after finding the pattern 'sub' because of looking for the longest alternative

^^ "M"{link: Index} {section: M}

* _"metaoperator"{link: [perl 6 lookup tablet] metaoperators}_ {section: metaoperator} - alters the meaning of other operators

^^ "O"{link: Index} {section: O}

* _object oriented programming_ {section: object oriented programming} - (short oop) programming paradigm (style), that arranges data and functions that belong together into so called objects

^^ "P"{link: Index} {section: P}

* _parameter_ {section: parameter} - value passed to a method or subroutine, mostly as part of the signature
* _parsetree_ {section: parsetree} - hierarchical data representing the logical structure of a program, also called _"AST"{link: AST}_
* _pipe_ {section: pipe} - connection between 2 processes, move data (mostly only in one direction) without buffering
* _"POD"{link: [perl 6 basics tablet] pod}_ {section: POD} - Plain Old Documentation, a markup language to be embeded into Perl source code, has in Perl 6 ability to store data to be retrieved later
* _pointy block_ {section: pointy block} - a block that is given parameters with *"->"{link: [Perl 6 Index Tablet] arrow op}*
* _property_ {section: property} - metadata of a variable set at runtime

^^ "Q"{link: Index} {section: Q}

^^ "R"{link: Index} {section: R}

* _reference_ {section: reference} - address of data in memory, often termed a Capture in Perl 6
* _regular expression_ {section: regular expression} - in Perl5: pattern matching notation, either regex, token or rule in Perl6
* _runtime_ {section: runtime} - time when execution hits a certain part of the program, after _"compile time"{link: compile time}_

^^ "S"{link: Index} {section: S}

* _scope_ {section: scope} - the block of code within which an identifier is usable
* _sigil_ {section: sigil} - character that serves as a prefix to categorize the following name, most prominent in Perl are the variable "sigils"{link: [perl 6 lookup tablet] Sigils}: *"$"{link: [Perl 6 Index Tablet] dollar sigil}*, *"@"{link: [Perl 6 Index Tablet] at sigil}* and *"%"{link: [Perl 6 Index Tablet] percent sigil}*
* _signature_ {section: signature} - function parameters (left-hand side of a binding), surrounded by round parentheses
* _slice_ {section: slice} - part of an array or list
* _slurpy array_ {section: slurpy array} - array parameter that receives all (slurps) all optional subroutine arguments

^^ "T"{link: Index} {section: T}

* _topicalizer_ {section: topicalizer} - every keyword that sets the *"$_"{link: context var}* variable, eg given, for
* _trait_ {section: trait} - additional property of a variable, defined at compile time, see *"but"{link: but}*, what other languages call _trait_ Perl calls "role"{link: role}
* _"twigil"{link: [perl 6 lookup tablet] Twigils}_ {section: twigil} - second(ary) _"sigil"{link: sigil}_ indicating a special property of a variable

^^ "U"{link: Index} {section: U}

^^ "V"{link: Index} {section: V}

^^ "W"{link: Index} {section: W}

^^ "X"{link: Index} {section: X}

^^ "Y"{link: Index} {section: Y}

* _"yadda operator"{link: [perl 6 Operator tablet] yadda}_ {section: yadda operator} - placeholder for later to be written code, because in empty routines are forbidden, comes in 3 flavours: *"..."{link: [Perl 6 Tablets] triple dot yadda op}*, *"???"{link: [Perl 6 Tablets] triple question mark}* and *"!!!"{link: [Perl 6 Tablets] triple exclamation mark}*

^^ "Z"{link: Index} {section: Z}

{link: A} | {link: B} | {link: C} | {link: D} | {link: E} | {link: F} | {link: G} | {link: H} | {link: I} | {link: J} | {link: K} | {link: L} | {link: M} | {link: N} | {link: O} | {link: P} | {link: Q} | {link: R} | {link: S} | {link: T} | {link: U} | {link: V} | {link: W} | {link: X} | {link: Y} | {link: Z}

----

"Intro"[Perl 6 Intro Tablet] - _Chapter:_ "0:History"[Perl 6 History Tablet] "1:Design"[Perl 6 Language Design Tablet] "2:Basics"[Perl 6 Basics Tablet] "3:Var"[Perl 6 Variable Tablet] "4:Op"[Perl 6 Operator Tablet] "5:IO"[Perl 6 IO Tablet] "6:{}"[Perl 6 Block Tablet] "7:Sub"[Perl 6 Subroutine Tablet] "8:OOP"[Perl 6 OOP Tablet] "9:Rx"[Perl 6 Regex Tablet] "10:Meta"[Perl 6 Meta Tablet]
"Overview"[Perl 6 Tablets] - _Appendices:_ "A:Index"[Perl 6 Index Tablet] "B:Tables"[Perl 6 Lookup Tablet] "C:Cook"[Perl 6 Cookbook Tablet] "D:Delta"[Perl 6 Delta Tablet] "E:Best of"[Best Of Perl 6 Tablet] "F:Links"[Perl 6 Links Tablet] *"G:Glossary"[Perl 6 Glossary Tablet]*

----


Upload Files

Click "Browse" to find the file you want to upload. When you click "Upload file" your file will be uploaded and added to the list of attachments for this page.

Maximum file size: 50MB

 
 
 
File Name Author Date Uploaded Size

Save Page As

Enter a meaningful and distinctive title for your page.

Page Title:

Tip: You'll be able to find this page later by using the title you choose.

Page Already Exists

There is already a page named XXX. Would you like to:

Save with a different name:

Save the page with the name "XXX"

Append your text to the bottom of the existing page named: "XXX"

Upload Files

Click "Browse" to find the file you want to upload. When you click "Add file" this file will be added to the list of attachments for this page, and uploaded when you save the page.

 
 
 
Add Tags

Enter a tag and click "Add tag". The tag will be saved when you save the page.

Tag: 

Suggestions: