Valitse sivuston käyttötapa: Mobiili

Etsitkö etäkoulutusta? Kokosimme verkko- ja etäkoulutukset tänne »

Rakudo Perl 6 and NQP Internals

Tieturi
Yhteenveto
2 päivää
1 550 EUR + alv 24 %
Sopimuksen mukaan
   
Tilauksesta
Verkossa
Koulutus
Tieturin koulutukset

Rakudo Perl 6 and NQP Internals


This workshop offers a deep dive into Rakudo Perl 6 and NQP. The main focus is on the backend independent parts but also with some focus on the JVM and the upcoming MoarVM. During the training, participants build their own little compiler, complete with a simple class-based object system, to help them understand how the tool chain works.
Perl 6 is finally here! Get the most relevant and important skills and information from Jonathan Worthington from Edument who has been actively involved in the development of the Rakudo Perl 6 Compiler, as well as the language itself.

Day 1Overview: Compiler, and NQP/Rakudo-architecture

Role of the compilers
Perl 6 challenges
NQP as a language
NQP as a toolbox for building compilers 
QAST
Operations in nqp::
Bootstrapping in a nutshell
How Rakudo uses NQP

NQP Language

Designgoals
Literals, variables, and control structures
Subroutines, pointy blocks, closure semantics
Classes, attributes, classes, and methods
Regexps and grammar
Roles
Multiple dispatch
Builtin commands and nqp::-operations
Exception handling
Limitations and other differences from the full-fledged Perl 6
Shortcomings

Compiling

Class HLL::Compiler
Frontends, backends, and QAST in between
Grammar based parsing, AST building with documents
Code generation
Build a small language from scratch

QAST

QAST::Node, base of everything
Overall structure of AST
Literals: QAST::IVal, QAST::NVal and QAST::SVal
Operations: QAST::Op, basic example
Sequencing: QAST::Stmts, QAST::Stmt
Variables: QAST::Var, QAST::VarWithFallback, scope, decl, value
Block-symbol table
Calls
Parameters and arguments
Contextualisation: QAST::Want
Block references: QAST::BVal
Object references: QAST::WVal
Backend escape hatch: QAST::VM
On top QAST::CompUnit

A closer look at nqp::-operationerna

Arithmetic
Comparisons
Containers
Strings
Control flow
Exception related
Context introspection
Big integers

Day 26model

Object: behavior + state
Types and varieties
Meta object
Representations
Stables
knowhow, the root of everything
Building a simple object system from scratch
Adding items to our new little language, with a World
Method caches
Tycp checking
Booling
Calls
Explore NQPs metaobject
Explore Rakudos metaobject
Working with the container

Limited serialization and module handling

Compilation phase vs. run phase
Serialization contexts
QAST::WVal recap
What is "limited" in it
Takeback, conflicts and other nasty issues
nqp::-operations in relation to serialization contexts
World recap
How module loading works

Regex- and grammar engine

QAST::Regex node and its sub types
Cursor and Match
Two stacks: bstack and cstack
NFA:s and the longest token matching

JVM backend

Description of the JVM
QAST-to-JAST-translation
Run time support library

MoarVM backend

Description of the MoarVM
QAST-to-MAST-translation

Tieturi

Tieturi

Tieturi – valmentaa paremmaksi

Tieturi on koulutuksen edelläkävijä, jonka kasvattaa yksilöiden ja organisaatioiden osaamista ja tuottavuutta. Autamme kohtaamaan liiketoiminnan muutokset ja kääntämään ne voimavaraksi. Olemme alan monipuolisin toimija ja tarjoamme sekä avoimia että yritysten tarpeisiin räätälöityjä koulutuksia. Erityisiä osaamisalueitamme ovat ohjelmistokehitys, projektityö, infrastruktuuri, tiedonhallinta...


Lue lisää kouluttajasta Tieturi ja katso koulutustarjonta täältä

Yhteydenottopyyntö

Haluatko tietää lisää koulutuksesta Rakudo Perl 6 and NQP Internals? Täytä yhteystietosi, niin koulutuksen järjestäjä ottaa sinuun yhteyttä.

Yhteystiedot : Tieturi

Tieturi

Mannerheimintie 15
00260 Helsinki

 Näytä puhelinnumero
www.tieturi.fi


Kohderyhmä


Reasonable knowledge of Perl 6 language. Experience with NQP is helpful.
Arvioinnit
Arvioinnit
Arvioi tämä koulutus ensimmäisenä.

Arvioinnit kouluttajasta
(4,0)
Perustuu 13 arviointiin
Näytä kouluttajan kaikki arvioinnit
Yhteydenotto

Saadaksesi lisätietoa aiheesta Rakudo Perl 6 and NQP Internals täytä seuraavat tiedot:

Saatat olla kiinnostunut myös näistä: