How many lua scripts distributed via Homebrew ?
What is Lua ? 🔗
Lua is a powerful, lightweight, and efficient scripting language designed primarily to be embedded into other applications rather than running as a standalone program. Created in 1993, it is known for its speed, portability, and ease of use, making it a favorite for extending software functionality.
Core Philosophy and Design 🔗
Lua is a multi-paradigm language, supporting procedural, object-oriented, functional, and data-driven programming styles. Its primary design goal is to be an “extension language”, meaning developers embed it inside a host program (often written in C or C++) to allow for easy scripting and customization.
Because it is written in ANSI C, Lua is highly portable and can run on almost any system with a C compiler, from large servers to small embedded devices like thermostats. The entire Lua interpreter is incredibly small—roughly 247 kB when compiled—which is significantly lighter than languages like Python or Java.
Key Technical Features 🔗
- Tables: Lua uses a single data structure called a “table” to represent arrays, sets, lists, dictionaries, and objects. This simplicity allows for flexible and efficient data management without complex syntax.
- Dynamic Typing: Like Python or JavaScript, variables in Lua do not need explicit type definitions, making the syntax concise and beginner-friendly.
- C Compatibility: Lua has a powerful Application Programming Interface (API) that allows it to interface seamlessly with C code, enabling developers to write high-performance functions in C and call them from Lua scripts.
Popular Use Cases 🔗
Lua is ubiquitous in the gaming industry and embedded systems due to its speed and low memory footprint.
- Video Games: It is the primary scripting language for massive platforms like Roblox and is used for interface/modding in games like World of Warcraft, Angry Birds, and Far Cry.
- Software Applications: Major applications like Adobe Photoshop Lightroom use Lua for their user interface and add-on architecture.
- Embedded Systems: It acts as middleware for systems like Ginga (digital TV in Brazil) and is used in network routers and IoT devices.
Origins and Name 🔗
Lua was created in 1993 by a team at the Pontifical Catholic University of Rio de Janeiro in Brazil. The name “Lua” comes from the Portuguese word for Moon. This name was chosen because the language was designed to replace an older language named SOL (Simple Object Language), which means “Sun” in Portuguese.
Statistics of lua scripting language 🔗
On December 16th 2025, The number of CLI apps written in lua and distributed via Homebrew Core Formulae is 46 apps.
You may like to compare it with Perl and Ruby .
Apps written in lua and distributed via Homebrew Core Formulae 🔗
- kyoto-tycoon : Database server with interface to Kyoto Cabinet
- mgba : Game Boy Advance emulator
- pdns : Authoritative nameserver
- wordgrinder : Unicode-aware word processor that runs in a terminal
- gnuplot : Command-driven, interactive function plotting
- lmod : Lua-based environment modules system to modify PATH variable
- lunarml : Standard ML compiler that produces Lua/JavaScript
- pdnsrec : Non-authoritative/recursing DNS server
- sc-im : Spreadsheet program for the terminal, using ncurses
- clingo : ASP system to ground and solve logic programs
- corsixth : Open source clone of Theme Hospital
- highlight : Convert source code to formatted text with syntax highlighting
- lsyncd : Synchronize local directories with remote targets
- luacheck : Tool for linting and static analysis of Lua code
- lutok : Lightweight C++ API for Lua
- neomutt : E-mail reader with support for Notmuch, NNTP and much more
- nmap : Port scanning utility for large networks
- fnlfmt : Formatter for Fennel code
- imapfilter : IMAP message processor/filter
- lpeg : Parsing Expression Grammars For Lua
- macvim : GUI for vim, made for macOS
- osm2pgsql : OpenStreetMap data to PostgreSQL converter
- osrm-backend : High performance routing engine
- texlive : Free software distribution for the TeX typesetting system
- tracebox : Middlebox detection tool
- librime : Rime Input Method Engine
- lxi-tools : Open source tools for managing network attached LXI compatible instruments
- modsecurity : Libmodsecurity is one component of the ModSecurity v3 project
- tio : Simple TTY terminal I/O application
- wxlua : Lua bindings for wxWidgets cross-platform GUI toolkit
- bozohttpd : Small and secure http version 1.1 server
- luv : Bare libuv bindings for lua
- mle : Flexible terminal-based text editor
- rpm : Standard unix software packaging tool
- vis : Vim-like text editor
- weechat : Extensible IRC client
- widelands : Free real-time strategy game like Settlers II
- fennel-ls : Language Server for Fennel
- freeswitch : Telephony platform to route various communication protocols
- wireshark : Network analyzer and capture tool - without graphical user interface
- fennel : Lua Lisp Language
- lcm : Libraries and tools for message passing and data marshalling
- luarocks : Package manager for the Lua programming language
- vim : Vi ‘workalike’ with many additional features
- z.lua : New cd command that helps you navigate faster by learning your habits
- busted : Elegant Lua unit testing
I hope you enjoyed reading this post as much as I enjoyed writing it. If you know a person who can benefit from this information, send them a link of this post. If you want to get notified about new posts, follow me on YouTube , Twitter (x) , LinkedIn , and GitHub .