Support more languages with an API
OLA already has support for Java (#16) and Python. Other languages we maybe can support are probably:
- [ ] GoLang
- there has already been work on a API for GoLang (#728).
- [ ] ruby
- a ruby protobuf implementation (e.g. ruby-protobuf)
- Rice (C/C++ ruby interface)
- [ ] node.js
- node-gyp (C/C++ nodejs interface)
- a nodejs protobuf implementation (e.g. ProtoBuf.js)
- [ ] perl (#611)
- a perl protobuf implementation (e.g. Google::ProtocolBuffers)
Other already-supported APIs are listed on our website: https://www.openlighting.org/ola/apis/
Further info on third-party languages here These are some suggestions that anyone can pickup when they want and open for suggestions for other languages/implementations.
See also my hacky, partial implementation for Perl using the JSON API: https://wiki.openlighting.org/index.php/OLA_JSON_API
There is a very basic Node implementation here: https://github.com/tfitschen/ola_node
There's a hacky Node example (not a library) using protobuf here: https://github.com/kripton/node-ola-protobuf
@taw10 has Guile support, although not currently in a standalone library: https://github.com/taw10/starlet/blob/main/src/guile-ola.cpp