Penlight VS Lua

Compare Penlight vs Lua and see what are their differences.

Penlight

A set of pure Lua libraries focusing on input data handling (such as reading configuration files), functional programming (such as map, reduce, placeholder expressions,etc), and OS path management. Much of the functionality is inspired by the Python standard libraries. (by lunarmodules)

Lua

Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description. (by lua)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
Penlight Lua
7 118
1,823 7,996
0.9% 1.3%
6.6 8.5
17 days ago 15 days ago
Lua C
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Penlight

Posts with mentions or reviews of Penlight. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-27.
  • Pluto, a Modern Lua Dialect
    9 projects | news.ycombinator.com | 27 Dec 2023
    To have enough batteries you kind of just need penlight[1] and maybe luastd. Of course there's posix, lfs, socket, luasec and you're semi set.

    [1]: https://lunarmodules.github.io/Penlight/

  • I love that Lua can access file so simply using io.open, can Lua be used to delete, copy and paste folders?
    1 project | /r/lua | 4 Apr 2023
    https://github.com/lunarmodules/Penlight provides a bunch of functionality for stuff like that.
  • [discussion] Why don't more (any?) plugin authors use penlight?
    3 projects | /r/neovim | 30 Sep 2022
    However, there's already a widely known, well-tested library in the lua community called penlight that covers a lot of lua's "missing" functionality. It's got sane string manipulation, ergonomic tables, a basic class mechanism, functional programming, enums, exceptions, path manipulation, etc...
  • What would be the significant benefits if one would develop equivalent libraries that are available for Python for Lua/Nelua?
    4 projects | /r/lua | 18 Sep 2022
    Lua is a small language and its "standard library" is very minimal. Lua's intended for embedding so usually the host program provides a broader standard library by exposing functions to lua. However, there are several standard library packages for lua: batteries and lume are focused on gamedev; Penlight aims at bringing the breadth of python's stdlib to lua; plenary.nvim for nvim plugins; and probably more for other domains. I'd definitely recommend checking these out to help get closer to functionality level of most other languages (I use both lume and batteries, but dropped penlight awhile back because I found some implementations confusing/overcomplicated/inconsistent).
  • Thoughts on LUA?
    4 projects | /r/gamedev | 13 Apr 2022
    Lua is a small language and its "standard library" is very minimal. This was one of my initial roadblocks. Lua's intended for embedding so usually the host program provides a broader standard library by exposing functions to lua. However, there are several standard library packages for lua: batteries, Penlight, or the aforementioned lume. I'd definitely recommend checking these out to help get closer to functionality level of most other languages (I use both lume and batteries, but dropped penlight awhile back).
  • Trying Fennel for GTK apps and it's surprisingly good
    5 projects | /r/lisp | 20 Sep 2021
    As for batteries, there's things like penlight which comes with a huge set of pure Lua libraries inspired by Python. And, well, there's Fennel libraries with macros and more lispy style APIs.
  • Lua's Lack of “Batteries”
    7 projects | news.ycombinator.com | 15 Jan 2021
    I'm very surprised there was no mention of Penlight in that article. Penlight, a supplemental standard library for Lua that is heavily inspired by Python's own standard library, has been around for years now:

    https://github.com/lunarmodules/Penlight

Lua

Posts with mentions or reviews of Lua. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-19.
  • 5-Step Approach: ProjectSveltos Event Framework for Kubernetes Deployment with Cilium Gateway API
    3 projects | dev.to | 19 Feb 2024
    The EventSource uses the Lua language to search for any services with ports set to 80 or 443 in the ‘argocd’ namespace. More examples can be found here.
  • Building a Wordle Clone with Lua! 🕹
    3 projects | dev.to | 25 Jan 2024
    If you're new to the 12 in 24 series, I'm learning and building projects with a new programming language every month - this month, it's the Lua scripting language. You can find source code for the projects I build in the official GitHub repository (check it out, this week's folder contains code for both this and two other bonus projects!).
  • Gearing up for Lua
    3 projects | dev.to | 1 Jan 2024
    This month, we're talking about Lua. It's not always a first choice when it comes to programming, but I think there's a lot to enjoy about this little language. Heck, I'm a big game development fan myself - I would look into it even if that was the only reason to.
  • Pluto, a Modern Lua Dialect
    9 projects | news.ycombinator.com | 27 Dec 2023
    It’s Portuguese. It’s the same in the Lua codebase [1].

    [1]: https://github.com/lua/lua

  • Fluent Bit with ECS: Configuration Tips and Tricks
    4 projects | dev.to | 26 Dec 2023
    If we think we need more flexibility for processing records, we can write our own embedded filters using Lua language. Lua is a highly efficient programming language used mainly for embedded scripting.
  • A Linguagem Lua completa 30 anos!
    3 projects | dev.to | 17 Oct 2023
  • The Top 20 Programming Languages and Their Origins
    7 projects | dev.to | 24 Sep 2023
    Lua
  • Lua C headers, MacOS
    2 projects | /r/lua | 7 Sep 2023
    ➜ ~ brew info lua ==> lua: stable 5.4.6 (bottled) Powerful, lightweight programming language https://www.lua.org/ /opt/homebrew/Cellar/lua/5.4.6 (29 files, 788.7KB) * Poured from bottle using the formulae.brew.sh API on 2023-05-16 at 11:03:06 From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/l/lua.rb License: MIT ==> Caveats You may also want luarocks: brew install luarocks ==> Analytics install: 16,599 (30 days), 56,745 (90 days), 139,027 (365 days) install-on-request: 1,763 (30 days), 6,266 (90 days), 21,105 (365 days) build-error: 0 (30 days)
  • How do you like code documentation inline in the source code vs. as separate guides, or how would you do it?
    3 projects | /r/ProgrammingLanguages | 3 Jul 2023
    I think Lua is a good example of doing documentation well. The source code is commented only as much as needed, mainly with brief comments about things that might not be obvious and a small number of longer explanations of how the architecture works (mainly relevant to developers). It also has a super nice feature that's surprisingly rare: each file has a very short line at the top that describes what the file is, so you don't have to guess based on the filename alone. The API is documented in a single HTML file on the website that has both the high level descriptions of the language and architecture, as well as documentation for each public-facing function. The docs are maintained by hand, but the API is mostly stable, so the docs don't need to change very often.
  • Total Noob With a Question.
    2 projects | /r/learnprogramming | 27 Jun 2023
    This is using the Lua language and the Solar2d game framework

What are some alternatives?

When comparing Penlight and Lua you can also consider the following projects:

luafun - Lua Fun is a high-performance functional programming library for Lua designed with LuaJIT's trace compiler in mind.

julia - The Julia Programming Language

Vermintide-2-Source-Code - Decompiled scripts from Warhammer: Vermintide 2.

assemblyscript - A TypeScript-like language for WebAssembly.

luaforwindows - Lua for Windows is a 'batteries included environment' for the Lua scripting language on Windows. NOTICE: Looking for maintainer.

NvChad - Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.

lua-vips - Lua binding for the libvips image processing library

lua-nginx-module - Embed the Power of Lua into NGINX HTTP servers

luakit - Fast, small, webkit based browser framework extensible by Lua.

kotlin-script-examples - Examples of Kotlin Scripts and usages of the Kotlin Scripting API

sqlite.lua - SQLite LuaJIT binding with a very simple api.

mal - mal - Make a Lisp