SlideShare a Scribd company logo
1 of 140
Download to read offline
Perl 6 OOP
What is OOP ?
Larry Wall Says:
What is OOP ?
Position
Out Of Position
OOP
Man With Clue
Read That !
Damian Says:
Object-oriented
programming ...
many opinions,
theories, and even
ideologies have
been formulated on
the subject. ... Most
are mutually
inconsistent.
OOP
Classes / Prototypes
(Multiple) Inheritance / Roles
MMD + Delegation
Types + Subtypes
Introspection / Metaobj.
His Opinion
TIMTOWTDI
All There in Beauty
In Search Of Perf.
Starts With A Class
Class
class
Class
class
instanceable name space
Class
class module package
Class
class Excalibur;
class Babylon;
Class
class
instanceable name space
NS in Braces
class Excalibur {
...
}
Object
Object

my $obj =
Class.new();
Ops Changed

my $obj =
Class.new();
Create New
Clone Existing
Object

my $obj =
$old.clone();
Object

my $obj =
$old.clone(...);
Positional Paramters

clone($pos1, $pos2);
Named Parameters

clone( :key('value'),);
With Autoquoting
clone( :key<value>,);
Old School Works Too

clone( key=>'value',);
Object

new & clone
bless stayed
Attributes
+
Methods
Space Ship
Class
class Spaceship {
has Int $.speed;
method stop {
$speed = 0
}
}
I can do that too !
In Perl 5
package Spaceship;
use Moose;
has 'speed' => (
is => 'ro';
isa => 'Int';
);
sub stop {
$self = shift;
$self->speed = 0;
}
Me too !
In Perl 5
package Spaceship;
use Moo;
has 'speed' => (
is => 'ro';
isa => sub { die "…"
unless looks_like_number($_[0]);
});
sub stop {
$self = shift;
$self->speed = 0;
}
In Perl 5
use MooseX::Declare;
class Spaceship {
has 'speed' => (
is => 'ro';
isa => 'Int';
);
method stop {
$self->speed = 0;
}
}
Class
class Spaceship {
has Int $.speed;
method stop {
$.speed = 0;
}
}
Attribute Usage
P5
$self->speed
shift->speed

P6
$.speed
self.speed
$!speed
Twigil of
Accessors
.
!

public
private
Twigil of
Accessors
.
!

public
private

has $!speed; # private
Twigil of
Accessors
.
!
has $speed;

public
private
# private too
trusts
trusts
class Dog {
trusts Cat;
has $!Bone;
}
trusts
class Cat {
method steal {
my $carlo = Dog.new();
$carlo!Bone = 0;
...
.
!
^
:
*
?
=
~

Twigils

punlic access.
private access.
pos. auto para.
named auto p.
global var
compiler info
POD
sublang
Sigils
$
@
%

Scalar
Array
Hash
Sigils
has $.speed;
has @.shuttle;
has %.crew;
In Perl 5
use MooseX::Declare;
class Spaceship {
has 'speed' => (
is => 'ro';
isa => 'Int';
);
method stop {
$self->speed = 0;
}
}
In Perl 5
use MooseX::Declare;
class Spaceship {
has 'speed' => (
is => 'rw';
isa => 'Int';
);
method stop {
$self->speed = 0;
}
}
Class
class Spaceship {
has Int $.speed is rw;

}

method stop {
$.speed = 0;
}
Class
class Spaceship {
has Int $.speed is rw = 0;

}

method stop {
$.speed = 0;
}
In Perl 5
use MooseX::Declare;
class Spaceship {
has 'speed' => (
is => 'rw';
isa => 'Int';
default => 0;
);
method stop {
$self->speed = 0;
}
}
Perl 6 Attribute
no:
isa default (just Syntax)
predicate required coerce

reader writer init_arg
clearer builder lazy_build
That was my idea!
Perl 6 & Moose
has is
Subtypes
Moose
subtype 'Slogan'
=> as 'Str'
=> where {length $_< 50};
Perl 6
my subset Slogan of Str
where {$_.chars < 50};
Delegation
Excalibur
Perl 6
class Excalibur;
has $.clock handles 'now';
$excalibur = Excalibur.new;
$excalibur.clock.now;
Perl 6
class Excalibur;
has DateTime $.clock
handles 'now';
$excalibur = Excalibur.new;
$excalibur.now;
Moose
has 'clock' => (
handles => 'now';
);
Moose Rename
has 'clock' => (
handles => {
now => 'time'
};
);
Perl 6 Rename
class Spaceship;
has DateTime $.clock
handles { :time<now>};
Methods
Methods
method stop { … }
Methods
method !stop { … }
Methods
method !stop { … }
submethod
Methods
method !stop { … }
submethod # !inherit
MMD

?
MMD

Multi
Method
Dispatch
MMD
only
multi
proto
MMD
only # default anyway
multi # look at !
proto # later
MMD
multi method navigate
(Coord $place) {}
multi method navigate
(Str $cmd) {};
MMD
$excalibur.navigate('back');
MMD
only # default anyway
multi # MMD
proto # own handling
Inheritance
MooseX::Declare
class WhiteStar
extends Spaceship;
Inheritance

extends => is
Perl 6
class WhiteStar
is Spaceship;
Multiple Inheritance
class WhiteStar
is Spaceship is Minbari;
Vererbung später
extends => also is
MooseX::Declare
class WhiteStar;
...
extends Spaceship;
Perl 6
class WhiteStar {
...
also is Spaceship;
Roles
Class Hierarchy
Where to insert ?
Solution
Role:
Unit Of Reusable
Functionality
Therefore
Role:
Unit Of Reusable
Functionality
Outside Any Hierarchy
Solution
Role:
Unit Of Reusable
Functionality
Trait Elsewhere
Therefore
Role:
Unit Of Reusable
Functionality
Roles have Atributes, Traits not
Therefore
Role:
Reusable => Small
Remember?
Role:
Reusable => Small
Class:
instanceable name space
How To Solve That
Role:
Reusable => Small
Class:
Complete => Big
Class Do Can't Both
Role:
Reusable => Small
!=
Class:
Complete => Big
Roles
may be inherited !
if mixed into a class
& remove @ run time
Roles
conflicts throw exceptions
Roles
conflicts throw exceptions
No global overwrite like
Ruby Mixins
Roles
conflicts throw exceptions
No global overwrite like
Ruby Mixins
Refinements doesn't solve it all
Roles
conflicts throw exceptions
Roles > multiple inheritance
(conflicts remain unhandled
- in intelligent way)
Roles
conflicts throw exceptions
except when method is empty
Roles
conflicts throw exceptions
except when method is empty

then is has to be overwritten
(interface)
Roles
role Spaceship {
has Int $.speed;
method stop {
$.speed = 0
}
}
Roles
role Clock {
has DateTime $.time;
method alarm {
...
}
}
Apply Roles

with => does
Moose
class Excalibur
extends WhiteStar
with Clock;
Moo too !
Moo::Role
package Excalibur;
extends 'WhiteStar';
with 'Clock';
Perl 6
class Excalibur
is WhiteStar
does Clock;
Perl 6
class Excalibur
is Whitestar;
also does Clock;
Perl 6
class Excalibbur
is WhiteStar;
also does Clock
does PlasmaGun;
Perl 6
$excalibur does Clock;
Introspection
Methods
WHAT short name
WHICH object ID (type)
WHO package, long name in str context
WHERE memory address
HOW
object of meta class
WHEN (reserved for events?)
WHY
(reserved for documentation)
WHENCE autovivification of closures
Methods
WHAT short name
WHICH object ID (type)
WHO package, long name in str context
WHERE memory address
HOW
object of meta class
WHEN (reserved for events?)
WHY
(reserved for documentation)
WHENCE autovivification of closures
Methods
WHAT short name
WHICH object ID (type)
WHO package, long name in str context
WHERE memory address
HOW
object of meta class
WHEN (reserved for events?)
WHY
(reserved for documentation)
WHENCE autovivification of closures
Introspection
Class.HOW.methods($obj)
Class.^methods()
Metaobjectmethods
identifier
name authority version author
description
licensed

subject

parents

language
roles
Deeper & Deeper
$obj.^methods()[$which].signature
Introspection
All is an Object
Introspection
All is an Object
„objects are stupid“.uc
Introspection
All is an Object
Commands are Methods
Introspection
All is an Object
Commands are Methods
(Operators too)
Introspection
All is an Object
Commands are Methods
(Operators too)
MMD is everywhere
Introspection
All is an Object
Commands are Methods
(Operators too)
MMD is everywhere
also in Regexes
Name Spaces
package module
class
A Kind Of Class
package module
class grammar
Grammars
grammar {
token { … }
rule { … }
regex { … }
}
Learn More
S12: Objekte,S14: Rollen
perl6.org/documentation
http://perlcabal.org/syn/
opt. Precise & Volume
Learn More
Perl 6 Docs
doc.perl6.org/language/objects

Opt.: Short & Precise
Learn More
Perl 6 Tablets
tablets.perl6.org
opt.: Hypertext & Volume
Cockaigne
Thank You

More Related Content

What's hot

Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)Kang-min Liu
 
CoffeeScript
CoffeeScriptCoffeeScript
CoffeeScriptNone
 
Static Optimization of PHP bytecode (PHPSC 2017)
Static Optimization of PHP bytecode (PHPSC 2017)Static Optimization of PHP bytecode (PHPSC 2017)
Static Optimization of PHP bytecode (PHPSC 2017)Nikita Popov
 
A tour on ruby and friends
A tour on ruby and friendsA tour on ruby and friends
A tour on ruby and friends旻琦 潘
 
あたかも自然言語を書くようにコーディングしてみる
あたかも自然言語を書くようにコーディングしてみるあたかも自然言語を書くようにコーディングしてみる
あたかも自然言語を書くようにコーディングしてみるKazuya Numata
 
Introduction to Scala for Java Developers
Introduction to Scala for Java DevelopersIntroduction to Scala for Java Developers
Introduction to Scala for Java DevelopersMichael Galpin
 
Esprima - What is that
Esprima - What is thatEsprima - What is that
Esprima - What is thatAbhijeet Pawar
 
Building a java tracer
Building a java tracerBuilding a java tracer
Building a java tracerrahulrevo
 
Functional Programming & Event Sourcing - a pair made in heaven
Functional Programming & Event Sourcing - a pair made in heavenFunctional Programming & Event Sourcing - a pair made in heaven
Functional Programming & Event Sourcing - a pair made in heavenPawel Szulc
 
Good Evils In Perl
Good Evils In PerlGood Evils In Perl
Good Evils In PerlKang-min Liu
 
Red Flags in Programming
Red Flags in ProgrammingRed Flags in Programming
Red Flags in ProgrammingxSawyer
 
Introduction to CoffeeScript
Introduction to CoffeeScriptIntroduction to CoffeeScript
Introduction to CoffeeScriptStalin Thangaraj
 
ES6 in Production [JSConfUY2015]
ES6 in Production [JSConfUY2015]ES6 in Production [JSConfUY2015]
ES6 in Production [JSConfUY2015]Guillermo Paz
 
What's new in PHP 8.0?
What's new in PHP 8.0?What's new in PHP 8.0?
What's new in PHP 8.0?Nikita Popov
 
Introdução ao Perl 6
Introdução ao Perl 6Introdução ao Perl 6
Introdução ao Perl 6garux
 
Rails for PHP Developers
Rails for PHP DevelopersRails for PHP Developers
Rails for PHP DevelopersRobert Dempsey
 

What's hot (20)

Perl Moderno
Perl ModernoPerl Moderno
Perl Moderno
 
Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)
 
CoffeeScript
CoffeeScriptCoffeeScript
CoffeeScript
 
Static Optimization of PHP bytecode (PHPSC 2017)
Static Optimization of PHP bytecode (PHPSC 2017)Static Optimization of PHP bytecode (PHPSC 2017)
Static Optimization of PHP bytecode (PHPSC 2017)
 
A tour on ruby and friends
A tour on ruby and friendsA tour on ruby and friends
A tour on ruby and friends
 
Scalar data types
Scalar data typesScalar data types
Scalar data types
 
あたかも自然言語を書くようにコーディングしてみる
あたかも自然言語を書くようにコーディングしてみるあたかも自然言語を書くようにコーディングしてみる
あたかも自然言語を書くようにコーディングしてみる
 
JavaScript Primer
JavaScript PrimerJavaScript Primer
JavaScript Primer
 
Introduction to Scala for Java Developers
Introduction to Scala for Java DevelopersIntroduction to Scala for Java Developers
Introduction to Scala for Java Developers
 
Esprima - What is that
Esprima - What is thatEsprima - What is that
Esprima - What is that
 
Building a java tracer
Building a java tracerBuilding a java tracer
Building a java tracer
 
Functional Programming & Event Sourcing - a pair made in heaven
Functional Programming & Event Sourcing - a pair made in heavenFunctional Programming & Event Sourcing - a pair made in heaven
Functional Programming & Event Sourcing - a pair made in heaven
 
Good Evils In Perl
Good Evils In PerlGood Evils In Perl
Good Evils In Perl
 
Red Flags in Programming
Red Flags in ProgrammingRed Flags in Programming
Red Flags in Programming
 
Introduction to CoffeeScript
Introduction to CoffeeScriptIntroduction to CoffeeScript
Introduction to CoffeeScript
 
ES6 in Production [JSConfUY2015]
ES6 in Production [JSConfUY2015]ES6 in Production [JSConfUY2015]
ES6 in Production [JSConfUY2015]
 
What's new in PHP 8.0?
What's new in PHP 8.0?What's new in PHP 8.0?
What's new in PHP 8.0?
 
Introdução ao Perl 6
Introdução ao Perl 6Introdução ao Perl 6
Introdução ao Perl 6
 
Lists and arrays
Lists and arraysLists and arrays
Lists and arrays
 
Rails for PHP Developers
Rails for PHP DevelopersRails for PHP Developers
Rails for PHP Developers
 

Viewers also liked

Moose Design Patterns
Moose Design PatternsMoose Design Patterns
Moose Design PatternsYnon Perek
 
Learning Perl 6
Learning Perl 6 Learning Perl 6
Learning Perl 6 brian d foy
 
Perl family: 15 years of Perl 6 and Perl 5
Perl family: 15 years of Perl 6 and Perl 5Perl family: 15 years of Perl 6 and Perl 5
Perl family: 15 years of Perl 6 and Perl 5Michal Jurosz
 
Cool Things in Perl 6
Cool Things in Perl 6Cool Things in Perl 6
Cool Things in Perl 6brian d foy
 
Extending Moose
Extending MooseExtending Moose
Extending Moosesartak
 
Text in search queries with examples in Perl 6
Text in search queries with examples in Perl 6Text in search queries with examples in Perl 6
Text in search queries with examples in Perl 6Andrew Shitov
 
Test::Class::Moose
Test::Class::MooseTest::Class::Moose
Test::Class::MooseCurtis Poe
 

Viewers also liked (8)

Moose Design Patterns
Moose Design PatternsMoose Design Patterns
Moose Design Patterns
 
Learning Perl 6
Learning Perl 6 Learning Perl 6
Learning Perl 6
 
Perl family: 15 years of Perl 6 and Perl 5
Perl family: 15 years of Perl 6 and Perl 5Perl family: 15 years of Perl 6 and Perl 5
Perl family: 15 years of Perl 6 and Perl 5
 
Cool Things in Perl 6
Cool Things in Perl 6Cool Things in Perl 6
Cool Things in Perl 6
 
Extending Moose
Extending MooseExtending Moose
Extending Moose
 
Text in search queries with examples in Perl 6
Text in search queries with examples in Perl 6Text in search queries with examples in Perl 6
Text in search queries with examples in Perl 6
 
Test::Class::Moose
Test::Class::MooseTest::Class::Moose
Test::Class::Moose
 
TraitとMoose::Role
TraitとMoose::RoleTraitとMoose::Role
TraitとMoose::Role
 

Similar to P6 OO vs Moose (&Moo)

Introduction To Moose
Introduction To MooseIntroduction To Moose
Introduction To MooseMike Whitaker
 
Everything is Permitted: Extending Built-ins
Everything is Permitted: Extending Built-insEverything is Permitted: Extending Built-ins
Everything is Permitted: Extending Built-insAndrew Dupont
 
Intro to scala
Intro to scalaIntro to scala
Intro to scalaJoe Zulli
 
What I learned from Seven Languages in Seven Weeks (IPRUG)
What I learned from Seven Languages in Seven Weeks (IPRUG)What I learned from Seven Languages in Seven Weeks (IPRUG)
What I learned from Seven Languages in Seven Weeks (IPRUG)Kerry Buckley
 
Scala uma poderosa linguagem para a jvm
Scala   uma poderosa linguagem para a jvmScala   uma poderosa linguagem para a jvm
Scala uma poderosa linguagem para a jvmIsaias Barroso
 
OO Perl with Moose
OO Perl with MooseOO Perl with Moose
OO Perl with MooseNelo Onyiah
 
Scala for the doubters. Максим Клыга
Scala for the doubters. Максим КлыгаScala for the doubters. Максим Клыга
Scala for the doubters. Максим КлыгаAlina Dolgikh
 
Spock: Test Well and Prosper
Spock: Test Well and ProsperSpock: Test Well and Prosper
Spock: Test Well and ProsperKen Kousen
 
Anonymous Classes: Behind the Mask
Anonymous Classes: Behind the MaskAnonymous Classes: Behind the Mask
Anonymous Classes: Behind the MaskMark Baker
 
Anonymous classes2
Anonymous classes2Anonymous classes2
Anonymous classes2Mark Baker
 
Static or Dynamic Typing? Why not both?
Static or Dynamic Typing? Why not both?Static or Dynamic Typing? Why not both?
Static or Dynamic Typing? Why not both?Mario Camou Riveroll
 
Code Fast, Die Young, Throw Structured Exceptions
Code Fast, Die Young, Throw Structured ExceptionsCode Fast, Die Young, Throw Structured Exceptions
Code Fast, Die Young, Throw Structured ExceptionsJohn Anderson
 
Introduction to Ecmascript - ES6
Introduction to Ecmascript - ES6Introduction to Ecmascript - ES6
Introduction to Ecmascript - ES6Nilesh Jayanandana
 

Similar to P6 OO vs Moose (&Moo) (20)

Introduction To Moose
Introduction To MooseIntroduction To Moose
Introduction To Moose
 
Everything is Permitted: Extending Built-ins
Everything is Permitted: Extending Built-insEverything is Permitted: Extending Built-ins
Everything is Permitted: Extending Built-ins
 
Intro to scala
Intro to scalaIntro to scala
Intro to scala
 
What I learned from Seven Languages in Seven Weeks (IPRUG)
What I learned from Seven Languages in Seven Weeks (IPRUG)What I learned from Seven Languages in Seven Weeks (IPRUG)
What I learned from Seven Languages in Seven Weeks (IPRUG)
 
Scala uma poderosa linguagem para a jvm
Scala   uma poderosa linguagem para a jvmScala   uma poderosa linguagem para a jvm
Scala uma poderosa linguagem para a jvm
 
Moose
MooseMoose
Moose
 
OO Perl with Moose
OO Perl with MooseOO Perl with Moose
OO Perl with Moose
 
Javascript
JavascriptJavascript
Javascript
 
Scala for the doubters. Максим Клыга
Scala for the doubters. Максим КлыгаScala for the doubters. Максим Клыга
Scala for the doubters. Максим Клыга
 
Spock: Test Well and Prosper
Spock: Test Well and ProsperSpock: Test Well and Prosper
Spock: Test Well and Prosper
 
JS OO and Closures
JS OO and ClosuresJS OO and Closures
JS OO and Closures
 
Java script unleashed
Java script unleashedJava script unleashed
Java script unleashed
 
Anonymous Classes: Behind the Mask
Anonymous Classes: Behind the MaskAnonymous Classes: Behind the Mask
Anonymous Classes: Behind the Mask
 
Ruby basics
Ruby basicsRuby basics
Ruby basics
 
Scala
ScalaScala
Scala
 
Anonymous classes2
Anonymous classes2Anonymous classes2
Anonymous classes2
 
Static or Dynamic Typing? Why not both?
Static or Dynamic Typing? Why not both?Static or Dynamic Typing? Why not both?
Static or Dynamic Typing? Why not both?
 
Code Fast, Die Young, Throw Structured Exceptions
Code Fast, Die Young, Throw Structured ExceptionsCode Fast, Die Young, Throw Structured Exceptions
Code Fast, Die Young, Throw Structured Exceptions
 
Introduction to Ecmascript - ES6
Introduction to Ecmascript - ES6Introduction to Ecmascript - ES6
Introduction to Ecmascript - ES6
 
JS
JSJS
JS
 

More from lichtkind

Perl 5.20: Feature, Kultur, Module, Werkzeuge
Perl 5.20: Feature, Kultur, Module, WerkzeugePerl 5.20: Feature, Kultur, Module, Werkzeuge
Perl 5.20: Feature, Kultur, Module, Werkzeugelichtkind
 
Wx::Perl::Smart
Wx::Perl::SmartWx::Perl::Smart
Wx::Perl::Smartlichtkind
 
P6kontext2014
P6kontext2014P6kontext2014
P6kontext2014lichtkind
 
Complete Programming
Complete ProgrammingComplete Programming
Complete Programminglichtkind
 
Perl 5 Quiz Chemnitz Edition
Perl 5 Quiz Chemnitz EditionPerl 5 Quiz Chemnitz Edition
Perl 5 Quiz Chemnitz Editionlichtkind
 
Writing Perl 6 Rx
Writing Perl 6 RxWriting Perl 6 Rx
Writing Perl 6 Rxlichtkind
 
Wundertüte Perl
Wundertüte PerlWundertüte Perl
Wundertüte Perllichtkind
 
Perl 6 Regex und Grammars
Perl 6 Regex und GrammarsPerl 6 Regex und Grammars
Perl 6 Regex und Grammarslichtkind
 
Perl 6 Datastructures
Perl 6 DatastructuresPerl 6 Datastructures
Perl 6 Datastructureslichtkind
 
Perl 6 Datenstrukturen
Perl 6 DatenstrukturenPerl 6 Datenstrukturen
Perl 6 Datenstrukturenlichtkind
 
Document Driven Development
Document Driven DevelopmentDocument Driven Development
Document Driven Developmentlichtkind
 
Modern wx perl
Modern wx perlModern wx perl
Modern wx perllichtkind
 
Bettereditors
BettereditorsBettereditors
Bettereditorslichtkind
 
Was können wir von Rebol lernen?
Was können wir von Rebol lernen?Was können wir von Rebol lernen?
Was können wir von Rebol lernen?lichtkind
 
Perl Testing
Perl TestingPerl Testing
Perl Testinglichtkind
 
Perl in der Wiki
Perl in der WikiPerl in der Wiki
Perl in der Wikilichtkind
 
What is Kephra about?
What is Kephra about?What is Kephra about?
What is Kephra about?lichtkind
 

More from lichtkind (20)

Perl 5.20: Feature, Kultur, Module, Werkzeuge
Perl 5.20: Feature, Kultur, Module, WerkzeugePerl 5.20: Feature, Kultur, Module, Werkzeuge
Perl 5.20: Feature, Kultur, Module, Werkzeuge
 
Wx::Perl::Smart
Wx::Perl::SmartWx::Perl::Smart
Wx::Perl::Smart
 
P6kontext2014
P6kontext2014P6kontext2014
P6kontext2014
 
Complete Programming
Complete ProgrammingComplete Programming
Complete Programming
 
Perl 5 Quiz Chemnitz Edition
Perl 5 Quiz Chemnitz EditionPerl 5 Quiz Chemnitz Edition
Perl 5 Quiz Chemnitz Edition
 
P6oo
P6ooP6oo
P6oo
 
Writing Perl 6 Rx
Writing Perl 6 RxWriting Perl 6 Rx
Writing Perl 6 Rx
 
Wundertüte Perl
Wundertüte PerlWundertüte Perl
Wundertüte Perl
 
Perl 6 Regex und Grammars
Perl 6 Regex und GrammarsPerl 6 Regex und Grammars
Perl 6 Regex und Grammars
 
Perl 6 Datastructures
Perl 6 DatastructuresPerl 6 Datastructures
Perl 6 Datastructures
 
Perl 6 Datenstrukturen
Perl 6 DatenstrukturenPerl 6 Datenstrukturen
Perl 6 Datenstrukturen
 
Document Driven Development
Document Driven DevelopmentDocument Driven Development
Document Driven Development
 
Modern wx perl
Modern wx perlModern wx perl
Modern wx perl
 
Bettereditors
BettereditorsBettereditors
Bettereditors
 
Hgit
HgitHgit
Hgit
 
Was können wir von Rebol lernen?
Was können wir von Rebol lernen?Was können wir von Rebol lernen?
Was können wir von Rebol lernen?
 
Neuperl6
Neuperl6Neuperl6
Neuperl6
 
Perl Testing
Perl TestingPerl Testing
Perl Testing
 
Perl in der Wiki
Perl in der WikiPerl in der Wiki
Perl in der Wiki
 
What is Kephra about?
What is Kephra about?What is Kephra about?
What is Kephra about?
 

Recently uploaded

Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 

Recently uploaded (20)

Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 

P6 OO vs Moose (&Moo)