hslua

A Lua language interpreter embedding in Haskell

Version on this page:0.4.1
LTS Haskell 22.13:2.3.1
Stackage Nightly 2024-03-14:2.3.1
Latest on Hackage:2.3.1

See all snapshots hslua appears in

MIT licensed by Gracjan Polak, Ömer Sinan Ağacan
Maintained by [email protected]
This version can be pinned in stack with:hslua-0.4.1@sha256:b5aab01f5b36ae5651064ca4005bb43e5a38256ff5dbadcaaa932d7c589f6476,4551

Module documentation for 0.4.1

Depends on 2 packages(full list with versions):
Used by 1 package in lts-8.5(full list with versions):

hslua – Lua interpreter interface for Haskell

Build Status Coverage Status Hackage

To use system-wide installed Lua/LuaJIT when linking hslua as a dependency, build/install your package using --constraint="hslua +system-lua" or for LuaJIT: --constraint="hslua +system-lua +luajit". For example, you can install Pandoc with hslua that uses system-wide LuaJIT like this:

cabal install pandoc --constraint="hslua +system-lua +luajit"

(Note that -fluajit flag is added with hslua 0.3.14)

Changes

Changelog

0.4.1

  • Bugfix(#30): tolist wasn’t popping elements of the list from stack.

0.4.0

  • pushstring and tostring now uses ByteString instead of [Char].
  • StackValue [Char] instance is removed, StackValue ByteString is added.
  • StackValue a => StackValue [a] instance is added. It pushes a Lua array to the stack. pushlist, islist and tolist functions are added.
  • Type errors in Haskell functions now propagated differently. See the Scripting.Lua documentation for detailed explanation. This should fix segfaults reported several times.
  • lua_error function is removed, it’s never safe to call in Haskell.

Related issues and pull requests: #12, #26, #24, #23, #18.

0.3.14

  • Pkgconf-based setup removed. Cabal is now using extra-libraries to link with Lua.
  • luajit flag is added to link hslua with LuaJIT.

0.3.13

  • Small bugfix related with GHCi running under Windows.

0.3.12

  • pushrawhsfunction and registerrawhsfunction functions are added.
  • apicheck flag is added to Cabal package to enable Lua API checking. (useful for debugging)

0.3.11

  • luaL_ref and luaL_unref functions are added.