Parrot SDL
Introducing Parrot SDL
A Little Parrot
What is Parrot?
Why does Parrot matter?
What does Parrot do?
A Little SDL
What is SDL?
What does SDL do?
Why does SDL matter?
Hey, You Got Your SDL on my Parrot!
Why combine the two?
How do you combine the two?
The Parrot You Need to Know
Primitives
Opcodes
PMCs
Libraries
Objects
Defining a Class
Declaring Methods
Creating Objects
Working with Objects
The SDL You Need to Know
It's all surfaces
Surfaces and rectangles
Updating surfaces
Oh yeah, this is only graphics...
A bit about events
NCI is the Glue
The problem NCI solves
Automatic bindings to functions in libraries
With a little glue...
Structs are a little harder
SDL_Rect in C and Parrot
It's still easier than Perl 5's XS
Parrot SDL: Encapsulation for HLLs
The base classes
The blue rectangle example
Working with SDL::Image
The image animation example
Working with SDL::Event and SDL::EventHandler
The move an image example
Future Directions
Add Features as Parrot Matures
Add more SDL Features
Encapsulate more higher-level functionality
A domain-specific language?
Work with other libraries
Where is The Code?