Course Lua Programming

  • Content
  • Training
  • Modules
  • General
  • Reviews
  • Certificate
  • Course Lua Programming : Content

    In the course Lua Programming participants learn to use Lua in the development of applications. Lua is a lightweight, open source scripting language and is written in C. Lua is used in many platforms ranging from large server systems to small mobile applications. Lua is intended to be integrated with C code and complements C code with good facilities for string manipulation, simple testing and debugging capabilities, dynamic memory allocation and automatic memory management.

    Lua Intro

    The course starts with an explanation of the Lua Software system, the Lua Interpreter, the Lua Compiler and the SciTE IDE.

    Lua Syntax

    The Lua language syntax, the variables and data types, the difference between RValues ​​and LValues, operators, control flow and Lua modules are also discussed.


    Then defining and calling functions in Lua is treated with parameter passing, function scope and return values. Lua also supports functional programming and in this context attention is paid to functions as variables, functions as return values ​​and closures.

    Data Structures and Classes

    Also part of the course program are data structures and classes and objects in Lua. Arrays, iterators and tables are discussed and the concepts of inheritance, overriding and polymorphism are explained and demonstrated.

    Threads and Coroutines

    Then multithreading and coroutines are on the course schedule. It is discussed how different tasks can be executed in parallel in multiple threads and how coroutines transfer control to each other with yield and resume.

    Lua Data Access

    Finally the course ends with the treatment of data access from Lua applications. Both accessing files and accessing relational databases are treated.

  • Course Lua Programming : Training

    Audience Course Lua Programming

    The Lua Programming course is intended for developers who want to learn the fast and interpreted script language Lua.

    Prerequisites Course Lua Programming

    Programming experience is required to participate in this course. Experience with object oriented and functional programming is beneficial to understanding.

    Realization Training Lua Programming

    The theory is discussed on the basis of presentation slides. The theory is further explained through demos. After discussing a module, there is the possibility to practice. Course times are from 9.30 to 16.30.

    Certification Course Lua Programming

    After successful completion of the course the participants receive an official certificate Lua Programming.

    Course Lua Programming
  • Course Lua Programming : Modules

    Module 1 : Lua Intro

    Module 2 : Language Syntax

    Module 3 : Lua Functions

    Lua Origins
    Relation to C
    Lua Interpreter
    Lua Compiler
    Memory Management
    String Handling
    Lua's Software System
    Installing Lua
    Interactive Mode
    SciTE IDE
    Lua Extensions
    Lua Tokens
    Data Types
    LValues and RValues
    Type Function
    Control Flow
    If Selection
    require Statement
    Defining Functions
    Function Scope
    Parameter Passing
    Formal Parameters
    Return Values
    Assigning Functions
    Passing Functions
    Variable Arguments
    Chunks as Functions
    Built-In Functions

    Module 4 : Data Structures

    Module 5 : Object Orientation

    Module 6 : Threading and Coroutines

    Arrays and Indexing
    Multiple Dimensions
    Lua Iterators
    Generic For Iterator
    Stateless Iterators
    Stateful Iterators
    Lua Tables
    Table Representation
    Table Manipulation
    Sorting Tables
    Operation Behavior
    Classes and Objects
    Creating Objects
    Accessing Properties
    Member Functions
    Mutable Values
    Immutable Values
    Overriding Methods
    Garbage Collection
    Collector Functions
    What are Coroutines?
    Creating Coroutines
    Coroutine Functions
    yield and resume
    wrap and running
    Transferring Control
    Maintaining State
    Concurrent Tasks
    Event Handling
    Event Loops

    Module 7 : Data Access

    File I/O
    Implicit File Descriptors
    Explicit File Descriptors
    Database Access
    LuaSQL Library
    Making Connection
    Execute Function
    Inserts and Updates
    Executing Queries
    Retrieving Results
    SQLite and MySQL
  • Course Lua Programming : General

    Course Forms

    All our courses are classroom courses in which the students are guided through the material on the basis of an experienced trainer with in-depth material knowledge. Theory is always interspersed with exercises.


    We also do custom classes and then adjust the course content to your wishes. On request we will also discuss your practical cases.

    Course times

    The course times are from 9.30 to 16.30. But we are flexible in this. Sometimes people have to bring children to the daycare and other times are more convenient for them. In good consultation we can then agree on different course times.


    We take care of the computers on which the course can be held. The software required for the course has already been installed on these computers. You do not have to bring a laptop to participate in the course. If you prefer to work on your own laptop, you can take it with you if you wish. The required software is then installed at the start of the course.


    Our courses are generally given with Open Source software such as Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda and Netbeans. You will receive the digital course material to take home after the course.


    The course includes lunch that we use in a restaurant within walking distance of the course room.


    The courses are planned at various places in the country. A course takes place at a location if at least 3 people register for that location. If there are registrations for different locations, the course will take place at our main location, Houten which is just below Utrecht. A course at our main location also takes place with 2 registrations and regularly with 1 registration. And we also do courses at the customer’s location if they appreciate that.


    At the end of each course, participants are requested to evaluate the course in terms of course content, course material, trainer and location. The evaluation form can be found at https://www.klantenvertellen.nl/reviews/1039545/spiraltrain?lang=en. The evaluations of previous participants and previous courses can also be found there.


    The intellectual property rights of the published course content, also referred to as an information sheet, belong to SpiralTrain. It is not allowed to publish the course information, the information sheet, in written or digital form without the explicit permission of SpiralTrain. The course content is to be understood as the description of the course content in sentences as well as the division of the course into modules and topics in the modules.

  • Course Lua Programming : Reviews

  • Course Lua Programming : Certificate