最新章節
- Summary
- Filtering and transforming data streams
- Live supplies
- Using lists as the source of the supply data
- The react and whenever keywords
- Generating data with supplies
品牌:中圖公司
上架時間:2021-07-02 18:58:44
出版社:Packt Publishing
本書數字版權由中圖公司提供,并由其授權上海閱文信息技術有限公司制作發行
- Summary 更新時間:2021-07-03 00:06:42
- Filtering and transforming data streams
- Live supplies
- Using lists as the source of the supply data
- The react and whenever keywords
- Generating data with supplies
- On-demand supplies
- What is reactive programming?
- Reactive Programming
- Summary
- Lazy and infinite lists
- Creating and using iterators
- Dynamic scope
- Currying
- Closures
- Manipulating the scope
- Piping data and feed operators
- The WhateverCode blocks
- Higher-order functions and lambdas
- Using reduction
- Using recursion
- What is functional programming?
- Functional Programming
- Summary
- Channels as queues
- Closing channels
- To wait or not to wait?
- Basic use cases
- Channels
- The anyof and allof methods
- Executing code after the promise is kept or broken
- Combining promises
- The result of a promise
- Factory methods
- Statuses of a promise
- Creating a promise
- Promises
- Using locks in Perl 6
- Lifetime threads
- Printing thread objects as a string
- The id and name methods
- Creating and running a new thread
- Starting a thread
- Threads
- Autothreading
- Junctions
- Concurrent Programming
- Summary
- The whole program
- Using the actions class
- Handling expressions
- Using abstract syntax tree attributes
- Using actions
- Using rules and tokens
- Matching a grammar
- Creating a grammar
- Grammars
- Summary
- Substitution and altering strings with regexes
- :ex (:exhaustive)
- :ov (:overlap)
- :r (:ratchet)
- :c (:continue)
- :g (:global)
- :p (:pos)
- :s (:sigspace)
- :i (:ignorecase)
- Modifying regexes with adverbs
- Looking forward and backward with assertions
- Matching word boundaries
- Matching at the start and at the end of lines or strings
- Positioning regexes with anchors
- Using alternations in regexes
- Named captures
- The Match object
- Capturing groups
- Extracting substrings with capturing
- Greediness
- Creating repeated patterns with quantifiers
- Character class arithmetics
- Using Unicode properties
- Predefined subrules
- Character classes
- \w and \W characters
- \d and \D characters
- \n and \N characters
- \v and \V characters
- \h and \H characters
- \t and \T characters
- \s and \S characters
- Backslashed character classes
- The . (dot) character
- Character classes
- Literals
- Matching against regexes
- Regexes
- Summary
- Creating custom exceptions
- The Failure object
- Rethrowing exceptions
- Typed exceptions
- Resuming from exceptions
- Throwing exceptions
- The Exception object
- The CATCH phaser
- Soft failures
- The $! variable
- The try block
- Working with Exceptions
- Summary
- Floating-point numbers
- Integers
- Characters and strings
- The printf method
- Example of using the gist method
- The say method
- The print function
- Writing to a stream
- The eof method
- Lazy readers
- Reading characters
- Reading a single line
- Reading from a stream
- Working with directories
- Manipulating files
- Testing file and directory properties
- Closing a file
- Opening a file
- Working with files and directories
- Standard input and output
- Input and Output
- Summary
- Method postfix operators
- Using introspection to learn more
- Appending objects and classes using roles
- Multiple inheritance
- Submethods
- Overriding methods
- Using child class instances as objects of a base class
- Inheriting from a class
- Inheritance
- Class methods
- Class attributes
- Automatic getters and setters
- Public and private attributes
- More about attributes
- Private methods
- Working with methods
- Using other classes as data types
- Typed attributes
- Read-and-write attributes
- Working with attributes
- Creating a class
- Object-Oriented Programming
- Summary
- How Rakudo stores modules
- zef command summary
- Uninstalling modules
- Searching for a module
- Installing a module
- Using zef
- Introspection
- Selective import
- Exporting variables
- More on is export
- Scoping
- The require keyword
- The use keyword
- The import keyword
- The need keyword
- Using modules
- Creating a module
- Modules
- Summary
- Anonymous subs
- Passing functions as arguments
- Creating operators
- Nested subroutines
- An example
- Multi subs
- Return type
- Typed parameters
- Type constraints
- Parameter placeholders
- Slurpy parameters
- Parameter traits
- Named parameters
- Optional parameters
- Default values
- Creating and calling subroutines
- Subroutines
- Summary
- Setting the topic with given
- Collecting data with gather and take
- Executing code once
- Using labels
- Breaking the loop
- Using while until and repeat
- The for loop
- The loop cycle
- Using loops
- Conditional checks
- The do keyword
- Understanding code blocks and variable scoping
- Control Flow
- Summary
- User-defined operators
- Hyper-operators
- Zip meta-operator
- Cross meta-operator
- Reduction meta-operator
- Reverse meta-operator
- Negation meta-operator
- Assignment meta-operator
- Meta-operators in Perl 6
- Invoke operator
- Element access operators
- Positional access operator
- Postcircumfix operators
- Hash or block creation operator
- Group operator
- Quote-word operator
- Circumfix operators
- Increment and decrement operators
- Object-oriented postfix operators
- Postfix operators
- The so operator
- The not operator
- The let operator
- The temp operator
- The upto operator
- Boolean coercion and negation operator
- Two-complement binary negation operator
- String coercion operator
- Numeric negation operator
- Numeric coercion operator
- Boolean negation operator
- Boolean coercion operator
- Increment and decrement operators ++ and --
- Prefix operators
- Ternary operator ?? !!
- Data pipe operators
- Logical operator with lower precedence
- Binding operators
- Sequence operator
- Cross operator
- Zip operator
- Invocant separator
- Comma operator
- Pair creation operator
- Operators for minimum and maximum
- Defined-or operator
- Boolean logical operators
- Approximate-equality operator
- Smartmatch operator
- Bound check operator
- Value identity operator
- Equivalency test operator
- The before and after operators
- Other string comparison operators
- String comparison operators eq and ne
- Numerical comparison operators
- Equality and non-equality operators
- Range creating operator
- Comparison operator for Real numbers
- String comparison operator leg
- Universal comparison operator
- The but operator
- The does operator
- Junction operators
- String concatenation operator
- List repetition operator
- String repetition operator
- Great common divisor and least common multiple operators
- Boolean logical operators
- String logical operators
- Integer shift operators
- Bitwise operators
- Integer division and modulo operators
- Divisibility operator
- Modulo operator
- Operators for addition and subtraction
- Operators for multiplication and division
- Assignment operators
- Infix operators
- Operators in Perl 6
- Operators as functions
- Categories of operators
- Operator classification
- Working with Operators
- Summary
- Using the DateTime data type
- Using the Date class
- Data types to manipulate date and time
- Getting real and imaginary parts
- Methods of the Complex data type
- Complex numbers
- Reversing a string
- Length of the string
- Methods to check the content of a string
- Methods to cut strings
- Converting register
- Methods of the Str class
- String data type
- Methods to generate random Boolean values
- Using pred and succ
- Methods of the Bool type
- Boolean data type
- Enumerations
- Num versus Numeric versus Real
- Numeric data type
- Methods pred and succ
- Methods for rounding the value
- Getting the numerator and denominator
- Converting to an Int value
- Getting the Perl representation of the value
- Methods of the Rat type
- Rational data type
- Getting the absolute value
- Getting the next and previous values
- Calculating the square root of the value
- Getting the sign of the value
- Generating a random number
- Checking whether the number is prime
- Converting to a character using the chr method
- Methods of the Int type
- Integer data type
- Using simple built-in data types
- Typed variables
- Naming conventions
- Methods of the Hash class
- Hashes
- Methods of the Array type
- Arrays
- Scalars
- Variable containers in Perl 6
- Declaring variables
- Using variables
- Working with Variables and Built-in Data Types
- Summary
- Simple input and output
- Phasers
- The =begin / =end Pod block
- Creating Pod documentation
- Embedded comments
- Multiline comments
- One-line comments
- Comments
- Whitespaces and unspaces
- Using Unicode
- Writing Code
- Summary
- Writing our Hello World program
- The --stagestats command
- The -v and --version command
- The -I and -M commands
- The -p command
- The -n command
- The -h and --help commands
- The -e command
- The --doc command
- The -c command
- Command-line options
- Downloading and installing Rakudo Star
- Working with Rakudo Star
- Rakudo
- Perlito
- Pugs
- Parrot
- Compilers
- Community
- STD.pm
- Test Suite
- Documentation
- Perl 6 resources
- Compatibility with Perl 5
- Classes
- Signatures
- Sigils
- Differences from Perl 5
- Origins of Perl 6
- What is Perl 6?
- Questions
- Piracy
- Errata
- Downloading the example code
- Customer support
- Reader feedback
- Conventions
- Who this book is for
- What you need for this book
- What this book covers
- Preface
- Customer Feedback
- Why subscribe?
- www.PacktPub.com
- About the Reviewer
- Acknowledgements
- About the Author
- Credits
- Perl 6 Deep Dive
- Copyright
- Title Page
- cover
- cover
- Title Page
- Copyright
- Perl 6 Deep Dive
- Credits
- About the Author
- Acknowledgements
- About the Reviewer
- www.PacktPub.com
- Why subscribe?
- Customer Feedback
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Downloading the example code
- Errata
- Piracy
- Questions
- What is Perl 6?
- Origins of Perl 6
- Differences from Perl 5
- Sigils
- Signatures
- Classes
- Compatibility with Perl 5
- Perl 6 resources
- Documentation
- Test Suite
- STD.pm
- Community
- Compilers
- Parrot
- Pugs
- Perlito
- Rakudo
- Working with Rakudo Star
- Downloading and installing Rakudo Star
- Command-line options
- The -c command
- The --doc command
- The -e command
- The -h and --help commands
- The -n command
- The -p command
- The -I and -M commands
- The -v and --version command
- The --stagestats command
- Writing our Hello World program
- Summary
- Writing Code
- Using Unicode
- Whitespaces and unspaces
- Comments
- One-line comments
- Multiline comments
- Embedded comments
- Creating Pod documentation
- The =begin / =end Pod block
- Phasers
- Simple input and output
- Summary
- Working with Variables and Built-in Data Types
- Using variables
- Declaring variables
- Variable containers in Perl 6
- Scalars
- Arrays
- Methods of the Array type
- Hashes
- Methods of the Hash class
- Naming conventions
- Typed variables
- Using simple built-in data types
- Integer data type
- Methods of the Int type
- Converting to a character using the chr method
- Checking whether the number is prime
- Generating a random number
- Getting the sign of the value
- Calculating the square root of the value
- Getting the next and previous values
- Getting the absolute value
- Rational data type
- Methods of the Rat type
- Getting the Perl representation of the value
- Converting to an Int value
- Getting the numerator and denominator
- Methods for rounding the value
- Methods pred and succ
- Numeric data type
- Num versus Numeric versus Real
- Enumerations
- Boolean data type
- Methods of the Bool type
- Using pred and succ
- Methods to generate random Boolean values
- String data type
- Methods of the Str class
- Converting register
- Methods to cut strings
- Methods to check the content of a string
- Length of the string
- Reversing a string
- Complex numbers
- Methods of the Complex data type
- Getting real and imaginary parts
- Data types to manipulate date and time
- Using the Date class
- Using the DateTime data type
- Summary
- Working with Operators
- Operator classification
- Categories of operators
- Operators as functions
- Operators in Perl 6
- Infix operators
- Assignment operators
- Operators for multiplication and division
- Operators for addition and subtraction
- Modulo operator
- Divisibility operator
- Integer division and modulo operators
- Bitwise operators
- Integer shift operators
- String logical operators
- Boolean logical operators
- Great common divisor and least common multiple operators
- String repetition operator
- List repetition operator
- String concatenation operator
- Junction operators
- The does operator
- The but operator
- Universal comparison operator
- String comparison operator leg
- Comparison operator for Real numbers
- Range creating operator
- Equality and non-equality operators
- Numerical comparison operators
- String comparison operators eq and ne
- Other string comparison operators
- The before and after operators
- Equivalency test operator
- Value identity operator
- Bound check operator
- Smartmatch operator
- Approximate-equality operator
- Boolean logical operators
- Defined-or operator
- Operators for minimum and maximum
- Pair creation operator
- Comma operator
- Invocant separator
- Zip operator
- Cross operator
- Sequence operator
- Binding operators
- Logical operator with lower precedence
- Data pipe operators
- Ternary operator ?? !!
- Prefix operators
- Increment and decrement operators ++ and --
- Boolean coercion operator
- Boolean negation operator
- Numeric coercion operator
- Numeric negation operator
- String coercion operator
- Two-complement binary negation operator
- Boolean coercion and negation operator
- The upto operator
- The temp operator
- The let operator
- The not operator
- The so operator
- Postfix operators
- Object-oriented postfix operators
- Increment and decrement operators
- Circumfix operators
- Quote-word operator
- Group operator
- Hash or block creation operator
- Postcircumfix operators
- Positional access operator
- Element access operators
- Invoke operator
- Meta-operators in Perl 6
- Assignment meta-operator
- Negation meta-operator
- Reverse meta-operator
- Reduction meta-operator
- Cross meta-operator
- Zip meta-operator
- Hyper-operators
- User-defined operators
- Summary
- Control Flow
- Understanding code blocks and variable scoping
- The do keyword
- Conditional checks
- Using loops
- The loop cycle
- The for loop
- Using while until and repeat
- Breaking the loop
- Using labels
- Executing code once
- Collecting data with gather and take
- Setting the topic with given
- Summary
- Subroutines
- Creating and calling subroutines
- Default values
- Optional parameters
- Named parameters
- Parameter traits
- Slurpy parameters
- Parameter placeholders
- Type constraints
- Typed parameters
- Return type
- Multi subs
- An example
- Nested subroutines
- Creating operators
- Passing functions as arguments
- Anonymous subs
- Summary
- Modules
- Creating a module
- Using modules
- The need keyword
- The import keyword
- The use keyword
- The require keyword
- Scoping
- More on is export
- Exporting variables
- Selective import
- Introspection
- Using zef
- Installing a module
- Searching for a module
- Uninstalling modules
- zef command summary
- How Rakudo stores modules
- Summary
- Object-Oriented Programming
- Creating a class
- Working with attributes
- Read-and-write attributes
- Typed attributes
- Using other classes as data types
- Working with methods
- Private methods
- More about attributes
- Public and private attributes
- Automatic getters and setters
- Class attributes
- Class methods
- Inheritance
- Inheriting from a class
- Using child class instances as objects of a base class
- Overriding methods
- Submethods
- Multiple inheritance
- Appending objects and classes using roles
- Using introspection to learn more
- Method postfix operators
- Summary
- Input and Output
- Standard input and output
- Working with files and directories
- Opening a file
- Closing a file
- Testing file and directory properties
- Manipulating files
- Working with directories
- Reading from a stream
- Reading a single line
- Reading characters
- Lazy readers
- The eof method
- Writing to a stream
- The print function
- The say method
- Example of using the gist method
- The printf method
- Characters and strings
- Integers
- Floating-point numbers
- Summary
- Working with Exceptions
- The try block
- The $! variable
- Soft failures
- The CATCH phaser
- The Exception object
- Throwing exceptions
- Resuming from exceptions
- Typed exceptions
- Rethrowing exceptions
- The Failure object
- Creating custom exceptions
- Summary
- Regexes
- Matching against regexes
- Literals
- Character classes
- The . (dot) character
- Backslashed character classes
- \s and \S characters
- \t and \T characters
- \h and \H characters
- \v and \V characters
- \n and \N characters
- \d and \D characters
- \w and \W characters
- Character classes
- Predefined subrules
- Using Unicode properties
- Character class arithmetics
- Creating repeated patterns with quantifiers
- Greediness
- Extracting substrings with capturing
- Capturing groups
- The Match object
- Named captures
- Using alternations in regexes
- Positioning regexes with anchors
- Matching at the start and at the end of lines or strings
- Matching word boundaries
- Looking forward and backward with assertions
- Modifying regexes with adverbs
- :i (:ignorecase)
- :s (:sigspace)
- :p (:pos)
- :g (:global)
- :c (:continue)
- :r (:ratchet)
- :ov (:overlap)
- :ex (:exhaustive)
- Substitution and altering strings with regexes
- Summary
- Grammars
- Creating a grammar
- Matching a grammar
- Using rules and tokens
- Using actions
- Using abstract syntax tree attributes
- Handling expressions
- Using the actions class
- The whole program
- Summary
- Concurrent Programming
- Junctions
- Autothreading
- Threads
- Starting a thread
- Creating and running a new thread
- The id and name methods
- Printing thread objects as a string
- Lifetime threads
- Using locks in Perl 6
- Promises
- Creating a promise
- Statuses of a promise
- Factory methods
- The result of a promise
- Combining promises
- Executing code after the promise is kept or broken
- The anyof and allof methods
- Channels
- Basic use cases
- To wait or not to wait?
- Closing channels
- Channels as queues
- Summary
- Functional Programming
- What is functional programming?
- Using recursion
- Using reduction
- Higher-order functions and lambdas
- The WhateverCode blocks
- Piping data and feed operators
- Manipulating the scope
- Closures
- Currying
- Dynamic scope
- Creating and using iterators
- Lazy and infinite lists
- Summary
- Reactive Programming
- What is reactive programming?
- On-demand supplies
- Generating data with supplies
- The react and whenever keywords
- Using lists as the source of the supply data
- Live supplies
- Filtering and transforming data streams
- Summary 更新時間:2021-07-03 00:06:42