Category Archives: Lua

Efficient algorithm for expanding circular buffers

Circular buffers are based on an algorithm well known by any developer who’s got past the “Hello world!” days. They offer a number of key characteristics with wide applicability such as constant and efficient memory use, efficient FIFO semantics, etc. … Continue reading

Posted in Architecture, Article, C/C++, Erlang, Go, Haskell, Java, Lua, Perl, Python, Ruby, Snippet | 3 Comments

Introducing The Hacking Sandbox

When I started programming in Python long ago, one of the features which really hooked me up was the quality interactive interpreter offered with the language implementation. It was (and still is) a fantastic way to experiment with syntax, semantics, … Continue reading

Posted in C/C++, Erlang, Go, Haskell, Java, Lua, Perl, Ruby | 10 Comments

The forgotten art of error checking

I was just rambling randomly yesterday, in the usual microblogging platforms, about how result checking seems to be ignored or done badly. The precise wording was: It’s really amazing how little attention error handling receives in most software development. Even … Continue reading

Posted in Architecture, Go, Java, Lua, Perl, Python, Ruby, Snippet, Test | 10 Comments

Embedding Lua interpreter into RPM

I’ve recently committed into the RPM CVS HEAD the internal support for Lua scripts. Please, notice that this is experimental stuff. Why embedding Lua in RPM? Many scripts execute simple operations which in an internal interpreter require no forking at … Continue reading

Posted in C/C++, Lua, Patch | Leave a comment

More additions to APT-RPM Lua interface

The APT-RPM Lua interface is constantly being improved. This time, the following functions were added: pkgid() and verid() Return a unique integer identifying a package or a version. verpkg() Returns the parent package of some given version. verdeplist() Returns a … Continue reading

Posted in C/C++, Lua, Project | Leave a comment

Functions vs. Callable objects in Lua

While working on Lunatic Python, I’ve understood that Lua does specific type checking with lua_isfunction() in some places where a callable type is expected. As a side effect, these places only accept a real Lua function when the callable object … Continue reading

Posted in Lua, Project, Python | Leave a comment

Lunatic Python

Lunatic Python is a two-way bridge between Python and Lua, allowing these languages to intercommunicate. Being two-way means that it allows Lua inside Python, Python inside Lua, Lua inside Python inside Lua, Python inside Lua inside Python, and so on. … Continue reading

Posted in C/C++, Lua, Project, Python | Leave a comment

Why Lua was embedded into APT-RPM

Why embedding at all? APT-RPM is a port of the debian APT tool to RPM systems. Since I’ve started working in the project, I’ve been thinking about integrating a higher level language on it. Actually, it’s pretty easy to explain … Continue reading

Posted in C/C++, Lua, Project | Leave a comment