Lua Embedding Training Course

Primary tabs

Course Language

This course is delivered in Polish or English.

Course Code

luaemb

Duration Duration

14 hours (usually 2 days including breaks)

Requirements Requirements

A good understanding of the basics of the Lua programming language

Overview Overview

This Lua course teaches how to interact with Lua from C (and/or other programming languages).

We discuss integration in both directions: how to embed C code in Lua (eg. for performance gains), and how to make a C/C++/Java program extensible with Lua.

As an in-class exercise we create a small program that is extensible with Lua.

The course also tackles the Lua virtual machine and teaches how to understand the bytecode underpinning the language.

This course can serve an add-on to the Lua Fundamentals or Lua Advanced courses in which case a shorter (1 day) version can be organized.

Course Outline Course Outline

Compilation

  • Compilation
  • Eval
  • Relationship with the environment
  • Binary chunks

Garbage collection

  • Weak tables
  • Finalizers, the __gc meta-method

Lua bytecode and virtual machine

  • Generating bytecode from source code
  • Reading and analyzing bytecode
  • Quick tour of the source code of the Lua VM

C modules

  • Calling C from Lua
  • Search path and loading of C modules

Calling Lua from C

  • The Stack
  • Error handling
  • Continuations

Handling Lua values and types from C

  • Arrays
  • Strings
  • Userdata
  • Metatables
  • Object oriented calls
  • Light userdata

Memory management

  • Allocators
  • GC API

Threads in Lua

  • Co-routines vs threads
  • Real multi-threading and Lua states

Guaranteed to run even with a single delegate!
Public Classroom Public Classroom
Participants from multiple organisations. Topics usually cannot be customised
From 3097PLN
(77)
Private Classroom Private Classroom
Participants are from one organisation only. No external participants are allowed. Usually customised to a specific group, course topics are agreed between the client and the trainer.
From 3097PLN
Request quote
Private Remote Private Remote
The instructor and the participants are in two different physical locations and communicate via the Internet
From 8900PLN
Request quote
SelfStudy SelfStudy
Self-study courses allow you to learn at your own pace on your own time. There is no live instructor involved. The participants use recorded video, quizzes and reading at their own convenience.
Price not set yet
Register Interest

The more delegates, the greater the savings per delegate. Table reflects price per delegate and is used for illustration purposes only, actual prices may differ.

Number of Delegates Public Classroom Private Classroom Private Remote
1 3097PLN 3097PLN 8900PLN
2 2899PLN 2799PLN 5700PLN
3 2832PLN 2699PLN 4633PLN
4 2799PLN 2649PLN 4100PLN
Cannot find a suitable date? Choose Your Course Date >>
Too expensive? Suggest your price

Related Categories


Course Discounts

Course Venue Course Date Course Price [Remote/Classroom]
Visual Basic for Applications (VBA) for Analysts Poznan, Garbary Mon, 2016-07-04 09:00 1912PLN / 1278PLN
Debian Administration Poznan, Garbary Mon, 2016-07-04 09:00 3157PLN / 2083PLN
Agile Project Management with Scrum Szczecin Wed, 2016-07-06 09:00 1746PLN / 1361PLN
A Practical Guide to Successful Pricing Strategies Poznan, Garbary Wed, 2016-07-06 09:00 1427PLN / 1093PLN
SQL language in MSSQL Poznan, Garbary Thu, 2016-07-07 09:00 1568PLN / 1142PLN
Excel and VBA Programming for Audit and Finance Professionals Warszawa, ul. Złota 3/11 Mon, 2016-07-11 09:00 1913PLN / 1441PLN
Forecasting with R Poznan, Garbary Thu, 2016-07-14 09:00 2188PLN / 1527PLN
Introduction to Selenium Wrocław, ul.Ludwika Rydygiera 2a/22 Thu, 2016-07-14 09:00 768PLN / 539PLN
Machine Learning Fundamentals with R Warszawa, ul. Złota 3/11 Mon, 2016-07-18 09:00 2523PLN / 1828PLN
Administracja bazą danych Microsoft SQL Server 2012 Toruń, ul. Żeglarska 10/14 Mon, 2016-07-18 09:00 2509PLN / 1653PLN
Apache Tomcat Administration Kraków Mon, 2016-07-18 09:00 1713PLN / 1438PLN
Effective working with spreadsheet in Excel Gdańsk Tue, 2016-07-19 09:00 768PLN / 652PLN
ITIL®: Intermediate Lifecycle Stream: Service Strategy (SS) Kraków Tue, 2016-07-19 09:00 4338PLN / 3116PLN
Microsoft Access - download the data Poznan, Garbary Wed, 2016-07-20 09:00 1117PLN / 856PLN
Debian Administration Olsztyn, ul. Kajki 3/1 Mon, 2016-07-25 09:00 3157PLN / 2167PLN
Python Programming Warszawa, ul. Złota 3/11 Mon, 2016-08-01 09:00 5790PLN / 3753PLN
Data Analysis with Oracle 11g - workshop Warszawa, ul. Złota 3/11 Mon, 2016-08-01 09:00 4350PLN / 3012PLN
Web Application Development in PHP Warszawa, ul. Złota 3/11 Wed, 2016-08-03 09:00 2688PLN / 2022PLN
Zapewnienie jakości oprogramowania – przegląd metodyk Warszawa, ul. Złota 3/11 Tue, 2016-08-09 09:00 2735PLN / 1863PLN
Oracle 11g - Programming with PL / SQL II Wrocław, ul.Ludwika Rydygiera 2a/22 Wed, 2016-08-10 09:00 2363PLN / 1785PLN
Stress management Warszawa, ul. Złota 3/11 Thu, 2016-08-18 09:00 2112PLN / 1212PLN
Programming in WPF 4.5 Warszawa, ul. Złota 3/11 Mon, 2016-09-05 09:00 2359PLN / 1355PLN
Building Web Apps using the MEAN stack Szczecin Mon, 2016-09-12 09:00 4788PLN / 3124PLN
BPMN 2.0 for Business Analysts Wrocław, ul.Ludwika Rydygiera 2a/22 Tue, 2016-09-27 09:00 3110PLN / 2337PLN
Visual Basic for Applications (VBA) in Excel - Advanced Białystok, ul. Malmeda 1 Mon, 2016-11-14 09:00 1689PLN / 1413PLN

Upcoming Courses

VenueCourse DateCourse Price [Remote/Classroom]
Olsztyn, ul. Kajki 3/1Thu, 2016-07-14 09:004100PLN / 2728PLN
Wrocław, ul.Ludwika Rydygiera 2a/22Mon, 2016-07-18 09:004100PLN / 2682PLN
LublinWed, 2016-07-20 09:004100PLN / 2786PLN
OpoleMon, 2016-07-25 09:004100PLN / 2843PLN
GdańskTue, 2016-07-26 09:004100PLN / 2759PLN

Some of our clients