Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
I have had only a really a brief glance at your code, nothing controversial so far. Peeking right into the first source ast.go only reminded unfortunate design decision of Go authors, preventing to have now generic methods. Instead of repetitive writing down all common implementing methods like GetToken, TokenLiteral, it could be done in only a single parametrized definiton. So sad. End of little rant.
The manual has lots of examples, and so does the distribution that goes with it --- in fact over 12% of the source code distro is example code in Charm rather than actual Go source code. (Look in the src folder.) This includes toy implementations of Forth, Z80 machine code, and most recently Lisp.
There's source code here, a Mac executable with auxiliary files here, and there's a manual here which also has notes in pink to explain the reasoning behind my choices. If you like the project, please add a star to the source code repo. Thanks!
Not too much to say on this but you may want a different name, charms already used for a go terminal library https://github.com/charmbracelet/charm
For regex, I would suggest making sure you use PCRE, since the built-in RE2 is slower and more limited. I also have a go module that uses PCRE regex with a cache, and some JavaScript like features: https://github.com/AspieSoft/go-regex
You mentioned something about PHP. We also already have a templating language in the standard library that can be extended (commonly done with sprig).
... I kind of am, though. Which is why I didn't know what to do. I don't see a lot of free open source projects with extensive documentation in their README. Some, yes, but for example here's the readline library I'm using. I, in my well-meaning ignorance, supplied 50 pages of documentation and people are behaving like I ate a baby 'cos it's in the wrong format. I will now put it all in the README as people would like, but I did genuinely act out of ignorance and not out of a wish to insult the customs of the tribe.
Related posts
- Improve performance of Go serving a React frontend
-
goview VS Salix - a user suggested alternative
2 projects | 31 Oct 2023
-
fasttemplate VS Salix - a user suggested alternative
2 projects | 31 Oct 2023
- What would you choose if you are in my shoes?
- What's a really niche tool you use that you can't live without?