aichaos / rivescript-go

A RiveScript interpreter for Go. RiveScript is a scripting language for chatterbots.
https://www.rivescript.com/
MIT License
60 stars 15 forks source link

Make the API more idiomatic as a Go library #17

Open kirsle opened 7 years ago

kirsle commented 7 years ago

This is a blanket ticket for going through the codebase and doing general cleanup and API fixes to make the code more idiomatic from a Go point of view.

Examples:

rmasci commented 4 years ago

Any work on updated versions of Rivescript? We depend on this for our chatbots we're building at my work place and Rivescript has been a huge in making the chatbot easy for others to get the chatbot to say and do different things without having to be a programmer.

kirsle commented 4 years ago

I'm still maintaining this module along with some of the other implementations of RiveScript (Python, JS and Perl) but the RiveScript language itself isn't really getting any new features added as of late.

If you find bugs in the Go version feel free to report them or send a pull request. Some new features may be accepted too -- but see the RiveScript Goals and Scope. I basically want the RiveScript language itself to behave more-or-less the same on all 5 implementations, but added features that don't break the cross-language compatibility can be added to one library or another.

For example, the Python and JavaScript versions got features to store user variables directly in Redis or other DB back-end, at different times in their lifecycles, and these didn't have to do directly with the RiveScript language itself so didn't need feature parity across programming languages.

rmasci commented 4 years ago

Sounds good. Thanks for your work on this. The key thing is that in the chatbot I've developed I can then hand it off and my team can extend that chatbot with rivescript. So we've got people with little to no programming skills spinning up chatbots to perform various functions.