News for hackers. Stuff that matters.

jclark_th

Re:SatPulse: A server-oriented alternative to gpsd on Wednesday April 29, 2026 @09:20AM (#47948025)
Author here. When I started working on SatPulse a few years ago, I was focused on a narrow use case: making it easy to create your own PTP server using inexpensive hardware. But it turned out that producing a really good solution for this use case involved building a fairly general GNSS subsystem, with some unique capabilities including vendor-independent configuration and support for a wide range of modern Chinese GNSS hardware (see https://satpulse.net/2026/04/01/a-tour-of-the-gps-modules-su...). With SatPulse 0.2, I have extended the GNSS subsystem, and the daemon and CLI built on top of it, to work for a range of timing and positioning use cases beyond the original PTP focus. To be clear, I am not trying to replace gpsd, which does an excellent job of what it sets out to do. But I think there is room for another approach, particularly for server environments, where explicit configuration makes sense. I have also done an experimental cross-platform GUI powered by the same Go library that is used by the daemon and CLI: https://satpulse.net/2026/04/26/desktop-gui-preview.html.

Happy to answer questions.

Re:Ballerina Programing Language on Wednesday February 26, 2020 @07:10AM (#22422254)
I didn't say that all the listed problems were caused by the goal of being familiar.

It doesn't yet have generics because they are hard to get right and the language is still at an early stage. Many languages that subsequently added generics did not have them in the earliest versions of the language (C++, Java, C#, TypeScript, Go).

Re:Ballerina Programing Language on Monday February 24, 2020 @11:06AM (#22405248)
There’s lots of detail in the language spec:

https://ballerina.io/spec/lang/2019R3/

I also wrote a blog explaining what we are trying to achieve:

https://blog.jclark.com/2019/09/ballerina-programming-langua...

Re:Ballerina Programing Language on Monday February 24, 2020 @09:51AM (#22404399)
Ballerina has simple lambdas e.g. x => x + 1.
Re:Ballerina Programing Language on Monday February 24, 2020 @05:17AM (#22402915)
The language has a lot of syntactic compromises, because it has a design goal of being familiar to users of C-family languages like C, JavaScript, Java, C#, etc.
Re:Ballerina, a language with structural type system on Thursday September 12, 2019 @05:58AM (#20949747)
Thank you for your comments. Both the cartoon and the sentence you highlighted have been fixed. We want to create an environment where everybody feels welcome. Your rule about not sexualizing the name seems like an excellent idea.
Re:Ballerina, a language with structural type system on Wednesday September 11, 2019 @12:49AM (#20936642)
Here's what the spec [1] says about the sequence diagram aspect of the language: "[Ballerina's] abstractions and syntax for concurrency and network interaction have been designed so that there is a close correspondence with sequence diagrams. This enables a bidirectional mapping for any Ballerina function between its textual representation in the syntax described in this specification and its graphical representation as a sequence diagram, such that the sequence diagram fully shows the aspects of the behavior of that function that relate to concurrency and network interaction."

The two biggest things that are different about Ballerina in my view are the language abstractions for providing and consuming network services, and the correspondence with sequence diagrams.

[1] https://ballerina.io/spec/lang/2019R3/