Get in Touch

Course Outline

Advanced Tables

  • Using tables for queues and stacks
  • Representing graphs with tables
  • Implementing matrices as tables
  • Creating linked lists using tables
  • Managing string buffers

Metatables Illustrated with Examples

  • Proxy objects
  • Read-only tables
  • Memoization techniques
  • Applying memoization in dynamic programming
  • Calculating Fibonacci sequences

Environments

  • Understanding the link between global variables and environments
  • Handling free variables
  • Working with the _ENV and _G tables

Further Exploration of Modules

  • Various methods for creating modules
  • Modules that modify existing behaviour
  • Module initialisation and argument handling
  • Utilising environments to build secure modules

Advanced Iterators and Co-routines

  • Producer, consumer, and filter patterns
  • Encapsulating co-routines to create iterators
  • Developing stateless iterators for linked lists

Contributing to the Ecosystem

  • Publishing packages to MoonRocks

The Functional Paradigm in Lua

  • The map function
  • The reduce or fold function

Object-Oriented Programming

  • Various strategies for implementing OOP
  • Different approaches to inheritance
  • Practical examples

Exploring the Lua Standard Libraries

Requirements

Foundational knowledge of the Lua programming language

 14 Hours

Related Categories