Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Advanced tables
- Tables for queues and stacks
- Tables representing graphs
- Matrices implemented as tables
- Linked lists built using tables
- String buffers
Metatables illustrated through examples
- Proxies
- Read-only tables
- Memoisation
- Dynamic programming with memoisation
- The Fibonacci example
Environments
- The relationship between global variables and environments
- Free variables
- The _ENV table and the _G table
More about modules
- Different approaches to creating modules
- Modules that alter behaviour
- Module initialisation and arguments
- Using environments to implement safe modules
Advanced iterators and co-routines
- Producer, consumer, and filter patterns
- Wrapping co-routines to create iterators
- Stateless iterators for linked lists
Contributing to the Ecosystem
- Uploading packages to MoonRocks
Functional paradigm in Lua
- The map function
- The reduce / fold function
Object-oriented Programming
- Different approaches to OOP
- Different approaches to inheritance
- Examples
A walkthrough of the Lua Standard Libraries
Requirements
Basic knowledge of the Lua programming language
14 Hours