What is the benefit of writing plugins in Lua rather than any other language?

This page summarizes the projects mentioned and recommended in the original post on /r/neovim

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • MessagePack

    MessagePack serializer implementation for Java / msgpack.org[Java]

  • I definitely don't want to program in vimscript but as I understand it, there "MessagePack structured communication enables extensions in any language".

  • pynvim

    Python client and plugin host for Nvim

  • Here's the GitHub project for the api: https://github.com/neovim/pynvim.

  • 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.

    InfluxDB logo
  • libuv

    Cross-platform asynchronous I/O

  • No you can't. The event loops in Vim and Neovim are different. Neovim uses https://libuv.org/ with https://luvit.io/ So the event loop itself is lua. And it is not exposed to vimscript (as far as I know)

  • benchmarks

    Some benchmarks of different languages

  • Do you have a source for LuaJit being faster than compiled languages? https://github.com/kostya/benchmarks

  • lua-languages

    Languages that compile to Lua

  • You can find a rather extensive list here, with maybe Castl the closest to JS?

  • luajit2

    OpenResty's Branch of LuaJIT 2

  • luajit.org said

  • Fennel

    Lua Lisp Language

  • Frankly, would have preferred plain old JS which is far more a neutral language compared to Lua. But I guess there was no embeddable QuickJS https://bellard.org/quickjs/quickjs.html at the time the Neovim project was started. Thankfully there is stuff like https://fennel-lang.org/ around

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts