summaryrefslogtreecommitdiff
path: root/site_root/blog
diff options
context:
space:
mode:
authorsanine <sanine.not@pm.me>2022-01-13 17:41:02 -0600
committersanine <sanine.not@pm.me>2022-01-13 17:41:02 -0600
commit0ff62ea7886bdeff160682d3d5713c2c8a6dd4b1 (patch)
treec70d31f35c1e54a7fc01246eb6740d79aef0ccd0 /site_root/blog
initial commit
Diffstat (limited to 'site_root/blog')
-rw-r--r--site_root/blog/announcing_honeysuckle.lua37
1 files changed, 37 insertions, 0 deletions
diff --git a/site_root/blog/announcing_honeysuckle.lua b/site_root/blog/announcing_honeysuckle.lua
new file mode 100644
index 0000000..5fb97fb
--- /dev/null
+++ b/site_root/blog/announcing_honeysuckle.lua
@@ -0,0 +1,37 @@
+return {
+ title='announcing honeysuckle',
+ layout='blog',
+ date='2021-05-23',
+ markdown=[[
+As I’ve been working on various projects for the past couple of years
+I have continued to find that a combination of C and Lua is my favorite
+way to write code. The ongoing development of [my game engine honey](https://honey3d.org/)
+uses that pair and I’m planning on using it (whenever I get around to it) for my [dream
+atlas project](https://sanine.net/projects/dream-atlas). But, and I’ll be the first
+to admit this, the C API is a little clunky.
+I don’t generally mind that all too much (after all, one of my favorite things about
+both C and Lua is that they’re languages you can carry around in your head, and having
+a very explicit API means you only need to understand the fundamental concepts to use it)
+but it does mean that dev work goes a bit slower.
+
+I did a good bit of work streamlining the process of writing Lua bindings in C when
+tinkering with honey and ever since then I’ve found myself peeking back at that code
+and re-implementing it in other projects. A colleague of mine once said that the time
+to write a library is when you’ve done something once, you’re doing it now, and you
+re pretty sure you’ll do it again, and I think I’ve quite handily cleared that condition
+So! I’m splitting that code out and refactoring it into its own library which, due
+to its historical roots, I’ve chosen to call honeysuckle.
+
+honeysuckle is still under development – the API is a bit different from the one I
+came up with when working on honey and imo is easier to use – but when it’s ready
+it will provide a whole host of helpful functions that make integrating Lua scripting
+into C applications simple and fast. I am (attempting) to employ readme-driven development
+so I’ve written up a readme for honeysuckle. Any feedback on the proposed API and
+features would be much appreciated! As of writing, honeysuckle is planned to include
+functions for parsing arguments to C functions from Lua, creating and processing tables
+throwing and handling Lua errors, using the Lua registry, and creating printf-formatted strings.
+
+I’ve already created a repository for honeysuckle. There’s just a README in there
+for now, but that will probably have changed even just later today, since I’m planning
+on working on it more this afternoon. :p
+]]}