Oops! Meant to say *“Using Lua to develop plugins in Go would NOT be ideal IMO.”*
On Saturday, October 28, 2023 at 10:47:56 PM UTC-4 Mike Schinkel wrote: > I recently started using github.com/yuin/gopher-lua for a project to > allow users to add filtering criteria that would be highly-specific to a > user, but I would never consider using it for implementing a > general-purpose plugin. > > Using Lua to develop plugins in Go would be ideal IMO. It is not > performant like Go, not type-safe like Go, debugging embedded Lua code is > difficult compared to working with Delve and Go, and you will have to ship > plugin source code, or embed and write to a possibly hidden directory. > > For real-world plugins I'd say stick with Hashicorp's go-plugin > <https://github.com/hashicorp/go-plugin> or similar as others have > recommended, and then only fall back to Lua when you want to allow > end-users who are not Go developers to extend your app in small ways. > #jmtcw #fwiw > > -Mike > P.S. You could also use JavaScript > <https://prasanthmj.github.io/go/javascript-parser-in-go/> instead of > Lua, and most people are likely more familiar with that. I chose not to use > a JavaScript package as I wanted something significantly lighter weight > than JS. OTOH, I am seriously considering switching out Lua and moving to > github.com/antonmedv/expr for my use-case as it is even lighter weight > still. > > On Saturday, October 28, 2023 at 8:50:54 AM UTC-4 alex-coder wrote: > >> Hi all. >> >> Of course, in case if anyone is in interest to write plugins for Go. >> I found another option for writing plugins by use Lua. >> I haven't touched the example yet, but I'm giving out the link. >> https://github.com/yuin/gopher-lua/ >> >> Thank you. >> >> четверг, 3 августа 2023 г. в 15:47:26 UTC+3, alex-coder: >> >>> Hi All, >>> Currently I walk through the next book about native go development and >>> find out that it is possible to use the plugin, >>> but with limitations, so it became interesting what alternatives there >>> are. >>> >>> Thank you. >>> >>> четверг, 3 августа 2023 г. в 12:09:21 UTC+3, Christoph Berger: >>> >>>> WebAssembly comes to mind - see, for example, https://wazero.io/ >>>> >>>> A plugin would then be a .wasm binary that can be compiled in any >>>> language that supports WebAssembly as target. >>>> >>>> Disclaimer: I have not yet tried this approach. >>>> >>>> On Wednesday, August 2, 2023 at 12:14:15 PM UTC+2 alex-coder wrote: >>>> >>>> Hi All ! >>>> Plug-in package is very interesting, but in case the development under >>>> windows it does not work, >>>> So, any hint to use some option instead will be highly appreciated. >>>> >>>> Thank you. >>>> >>>> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/b396f51f-1f2f-4fbc-b1ce-a24bab3043bdn%40googlegroups.com.