Official Golf blog
Updated on 2025-09-27
- Golf is now RimStone (2025-09-27) (read full article)
Golf has changed name to RimStone (see blog-2025-09-26-formerly-golf for a previous announcement).
The software (and much of the web site) still use name Golf, however that will change soon. The new web site is rimstone-lang.com.
The installation should work as it is. Please be patient while this transition takes place! ...
- Golf soon to change name (2025-09-26) (read full article)
Golf will soon be renamed.
We got lots of feedback regarding the name, mostly for being hard to find. First of all, there's an inordinate amount of golf stuff, related to the sport. But, using 'golf-lang' instead of 'golf' would alleviate that.
And then there's golfing in programming. Believe or not, we didn't know about "golfing" languages at the time. It's a cool niche culture of programming, however Golf isn't exactly like it. ...
- Here's what installing Golf looks like (2025-09-25) (read full article)
If you're wondering how exactly the Golf installation goes in a terminal window, here's what installing Golf looks like.
You can see why things are done the way they're done and how safe and easy it is to install Golf. ...
- Golf 3.4.0 released (2025-09-24) (read full article)
This release gives Golf full-blown general puprose programming capabilities with the extensive support for a double type, including double arrays (see new-array). A double is created with set-double statement. Doubles are extended precision 64 bit floating point values. A long list of math functions have been added. The following return a double:
dbl
sin ...
- How to insert/update multiple-tables in a single transaction? (2025-09-13) (read full article)
Using multiple tables in a single transaction is common enough. You'd want the data to be either inserted/updated in all of them, or in none of them. So if one of such DML operations fail, then the others should not succeed to.
In other words, your work should be either all committed, or all rollbacked.
This example is a weather application that records temperatures for any given zip code. And it updates the climate (temperature) averages for each code too. So in such a transaction, one table is inserted and other updated, and that's done atomically. ...
- Articles only on official web site (2025-09-12) (read full article)
Golf articles (how-tos, examples, knowledge-base etc.) will no longer be published on external web sites (such as blogging, developer or other sites). Rather, they will only be published here on the Golf's official web site.
The reason is that there was lots of effort being put into the external web sites that could be better used for new bug fixes, features, more examples etc. While it's true that such external web pages reach broader audience, the flip side of it is that it takes time and effort to post and maintain such articles.
For instance, virtually every web site out there supports one version of markdown or the other. But what's exactly supported varies a lot. Also, code highlighting isn't available for Golf on any of them. Formatting is often different on various web sites, making it even more cumbersome to produce a consistent look. You would think by now there'd be a way to insert your article's plain valid HTML/CSS (safe without any scripting, thus ensuring quality appearance), but that's not the case, which effectively diverges the look and feel, sometimes to the point where it's hard to read. Even without all this, when new features are added, or there's a change in Golf syntax, it precipitates changing a number of web copies; publishing-by-reference isn't really a thing. And not to mention that different sites have different policies when it comes to what content they accept, and I mean even without any links or any kind of self-promotion. Of course, having such external presence is obviously useful for SEO, but it has a price; all I am saying we'd rather be making software better with it. ...
- Golf-3.3.0-released (2025-09-11) (read full article)
Fix a bug where error text for a SQL with MariaDB database would be empty (error code would still be correct though).
Fixed a help display issue with gg where SQLite would not be shown in help for --db option.
vim highlighting and indenting is now automatically added during install. ...
- Golf-3.2.2-released (2025-09-06) (read full article)
Fixed a bug with MariaDB where error message text isn't available in error-text of run-query.
vim coloring and indentation setup is now done automatically during installation (no need for gg -m).
Better formatting of database error reporting, and better error message reporting for database queries errors. ...
- Golf-3.2.0-released (2025-09-02) (read full article)
Added Golf application packaging and installation. "-p" option to gg utility will package an application into a .tar.gz file which can be installed on another computer with "-a" option.
Development version of programs like mgrg (process manager) can now be attached to with gdb without sudo privilege.
Fixed Golf installation issue on debian-like distros where the installation of toolkit packages would hang. ...
- Golf-3.1.34-released (2025-08-26) (read full article)
Fixed bug with the making of a Golf application; an application may need to be rebuilt in some cases. With this fix, once made, an application does not need to be rebuilt if the source code (or other dependencies) did't change.
For a Debian based system, updating of repository is now performed prior to toolkit library installation; in some cases it may fail without the update. ...
- Golf-3.1.22-released (2025-08-23) (read full article)
Added Golf packages for most popular distros (see install-package). Golf can now be installed via package (apt, dnf, zypper, pacman), which provides source code in a single location and installs all dependencies; you still need to install from source (see install-rimstone).
Added debian folder, rpm spec file and PKGBUILD file for various distro's package builds (see install-package).
Fixed issue with .bashrc if Golf is uninstalled, reinstalled etc. ...
- Golf-3.1.0-released (2025-08-19) (read full article)
Performance improvements in building application.
Added a list of outputs to print-out, so now print-out can output any number of strings and numbers concatenanted together.
Fixed uninstall and write-string documentation pages errata. ...
- How-to-get-web-page-HTML-code-and-HTTP-headers-programmatically (2025-08-17) (read full article)
You may want to obtain the web page source code (and the headers sent with it) for a number of reasons: to cache it, parse it to extract data, find out if it exists, etc.
If you want to fetch the web page like that anywhere on the web, here is how to do it in just a single line of code. ...
- Golf 3.0.12 released (2025-08-16) (read full article)
fixed missing default-value in documentation for get-param
added error message for type mismatches in some statements, including get-param
added the tracing ability (when attaching gdb to a server process) to Golf servers, when in development mode ...
- Golf 3.0.9: Bug and documentation fixes (2025-08-15) (read full article)
fixed bug in stack trace reporting,
fixed several examples to work with the new Golf (more to come),
fixed bug in gg -e, where error reporting not shown properly, ...
- Golf 3.0.1: Major Golf rewrite brings no-sudo installation, better performance and many new features (2025-08-13) (read full article)
Golf now installs without sudo in a local home folder. New gginst.sh utility is used to install Golf without sudo.
Golf is now source-only. The reason is performance and transparency; Golf generates C code for user applications, and then links (via Link Time Optimization, LTO) with Golf code. It's as if your code is directly compiled and optimized across whole program with Golf code. This can produce significant performance gains.
To use features that depend on other FOSS libraries, you need to install those libraries and you need sudo for that, which has nothing to do with Golf. The same goes for SELinux support. You can still use Golf without those features. Note that Golf installed can install them for you, or if you use them, it will tell you exactly how to install them yourself. ...
- Major new Golf version coming out soon (2025-08-12) (read full article)
A new version of Golf is coming soon, bringing many new features, better performance and stability.
Going forward, Golf will install locally in a user's home folder, and will not require sudo privileges.
The improvements will include stack depth control (for recursion for instance), better support for file uploading, default values for input parameters, many new string statements and expressions, new formats of output, new number expression (such as binary), better usage of hashes and arrays, much better error handling/message and run-time stack trace (using libbacktrace directly), many new optimizations such as new fast memory system, prefetching and other significant performance improvements. Also, quite a few bugs have been fixed as well. ...
Copyright (c) 2019-2025 Gliim LLC. All contents on this web site is "AS IS" without warranties or guarantees of any kind.