
Learn an introduction to Lua basics and its scope across applications in this self-contained course designed for beginners and advanced users.
Discover Lua overview: a lightweight, extensible language written in C that integrates with C and other languages, offering safe memory management and efficient handling of dynamic data. Learn how Lua powers game development, standalone scripting, web extensions, and database add-ons, with a portable interpreter written in C that runs on diverse devices.
Learn how to declare and initialize Lua variables, understand global versus local scope, and differentiate lvalues and rvalues, including multiple assignments and simple value swaps.
Explore Lua's data types in a dynamically typed language, where variables hold values; learn boolean, number, string, function, user data, thread, and table, and use type to inspect types.
Explore Lua operators, including automatic, relational, logical, and miscellaneous, with hands-on examples of addition, subtraction, multiplication, division, modulus, exponent, unary, concatenation, and length, and precedence rules.
Explore how loops in Lua enable executing a block of code multiple times using while, for, and repeat until constructs, including nested loops.
This lecture explains Lua for loops as a control structure that runs code times using a start value and end value with increment, printing from 10 to 1.
Explain the Lua repeat until loop, which checks its condition at the bottom and guarantees at least one execution, using the syntax: repeat ... until condition, and repeats until true.
Learn how the break statement in Lua immediately terminates the active loop and resumes after it; in nested loops, it stops the inner loop, yielding values from 10 to 15.
Explore Lua decision statements with if, else if, else, and nested if structures. Understand how booleans and nil determine truth, and note zero is treated as true.
Explains lua if statements, boolean expressions, and truthy/falsy values, noting false and nil as false while zero is true, with an example testing a < 20.
Explore nested if statements in Lua by nesting one if inside another, using boolean expressions to compare values like 100 and 200, and observing how conditions determine outputs.
Learn how to define and call functions in Lua, using formal and actual parameters, local versus global scope, and returning values to compute the maximum of two numbers.
Explore strings in Lua as sequences of characters, with literals in single quotes, double quotes, or double square brackets, and learn escape sequences and basic printing.
Explore Lua string manipulation by applying upper and lower case conversions, substitutions with gsub, finding and reversing strings, formatting, byte and length operations, concatenation, and repetition.
Explore Lua arrays, including one- and multi-dimensional structures with indexing tables, growth under memory constraints, and element access via for loops with indices starting at 1, 0, or negative.
Explore lua tables as dynamic, growth-friendly objects with numeric and string keys, and learn table creation, assignment, nil removal, garbage collection, and using string.format from the string package.
Explore Lua table manipulation, including concatenation with table.concat, insertion with table.insert, removal with table.remove, finding the maximum index with table.maxn, and sorting with table.sort using practical examples with fruits.
Explore Lua modules as libraries loaded by require, exposing functions and variables in a global table. Learn to manipulate modules like tables and call them in multiple ways.
Learn how metatables modify table behavior in Lua by setting and getting a metatable, and using a method table to handle missing keys via an index lookup.
Explore coroutines in Lua, showing how the main program and a coroutine resume each other, suspend execution, and switch control to enable controlled cooperative execution.
This lecture explains error handling in Lua, covering syntax and runtime errors, common causes, and how to use error handling patterns and protected calls to manage errors.
Explore file handling in Lua by using implicit and explicit descriptors to open, read, write, and append to files while managing permissions and modes.
Explore how Lua's automated memory management uses garbage collection to reclaim memory, illustrating the garbage collector cycle and memory usage in kilobytes.
Explore Lua object oriented programming with classes, objects, and inheritance. Learn to access properties with dot notation and the colon operator, instantiate objects, and implement base and derived behaviors.
Explore how Lua environments manage objects, tables, and moments, and how end user data, C functions, and Lua functions share default environments to access global variables.
Explore lua iterators by building stateful closures over tables, using a factory function to yield each element by index and access key-value pairs during iteration.
This lecture introduces debugging in Lua, including an interactive mode and techniques to inspect functions, locals, upvalues, and stack levels using a debugging library.
Explore a practical Lua debugging example that demonstrates using getupvalue and setupvalue to inspect and modify function upvalues, with local variables, conditionals, and printed outputs to track behavior.
Explore how Lua game programming fuels cross-platform game development with engines like Corona SDK and Love framework, highlighting physics, collision handling, network, analytics, database, and file system APIs.
Explore lua's standard libraries, including the basic library, string and table manipulation, file input and output, operating system facilities, memory management with garbage collection, module loading, and the debug library.
Explore lua's math library for scientific and engineering calculations. Use absolute value, sign, floor, ceil, sin, cos, and radian to degree conversions, and work with random numbers and min/max values.
Explore Lua's os functions to update system facilities, including os.execute for running commands, os.date for date and time formatting, and os.getenv and related utilities to manage system tasks.
Lua is an open source language built on top of C programming language. Lua has its value across multiple platforms ranging from large server systems to small mobile applications. This course covers various topics ranging from the basics of Lua to its scope in various applications.
This course is designed for all those who are looking for a starting point to learn Lua. It has topics suitable for both beginners as well as advanced users.
It is a self-contained course and you should be able to grasp the concepts easily even if you are a total beginner. However it would help if you have a basic understanding of working with a simple text editor and command line.