Built-in fetching of http resources and reading files from the filesystem[1] combined with turing-completeness are features that I wasn't expecting from a configuration language. I wonder if the complexity this brings is justified. 1: https://pkl-lang.org/main/current/language-reference/index.h...
Pkl, a Programming Language for Configuration
481–490 of 598 posts
Re: Pkl, a Programming Language for Configuration
#482Earlier quoted context omitted.
The experience with LSPs is quite underwhelming compared to what a native language plugin in IntelliJ can do. That isn’t to say the approach is bad, but it’s definitely a trade off.
How come? I don't know anything in say, pycharm, that can't be done with a LSP server and plugins. But that's probably because I don't know enough so I'm curious about what limitations an LSP would involve!
Re: Pkl, a Programming Language for Configuration
#483Re: Pkl, a Programming Language for Configuration
#484Earlier quoted context omitted.
Looks like it might fix three big issues I had with Cue: 1. The only way to use it is to run their Go CLI app to convert the Cue into JSON and then load that. That sucks. I want native support. Jsonnet does this a lot better ( https://jsonnet.org/ref/bindings.html ), and PKL at least supports 4 languages. Cue only supports Go directly. Not good. 2. Cue has a super fancy type system, but as far as I could figure out t…
> [CUE] doesn't even have functions. Note that CUE has comprehensions, which are morally (but not syntactically) functions (actually closures). They are a way to transform values (which can be types) into other values. We are also adding real function types to CUE. At least in the beginning these functions will be written in other languages than CUE itself, however. While we are very principled when it comes to langu…
Re: Pkl, a Programming Language for Configuration
#485Earlier quoted context omitted.
> ...GraalVM Truffle framework... Futurama Projections... I know it's partly on me for not knowing the domain, but I honestly suspected somebody is trying to make fun of me with some concentrated technobabble. Especially since I wouldn't expect the topic (configuration languages) to require complex mathematical machinery to work with. Now I have something interesting to dig into.
What has most impressed me about GraalVM and Truffle is their capability of deep-optimizing high-level code like Python and Ruby. I once saw a demo where someone took a simple operation in Ruby using inefficient-but-elegant syntax (including creating and sorting an array, where a simple loop would have been the appropriate approach in C). He compiled that using TruffleRuby and the entire array construction and sortin…
Re: Pkl, a Programming Language for Configuration
#486Earlier quoted context omitted.
You're absolutely right, k8s is a pig.
Especially since k8s allows using arbitrary labels for plugins, effectively creating „stringly typed“ programming. Nobody is stopped from compiling code, converting it to base64 and storing it into a label for later execution. Arbitrary parameters like this are the opposite of a unifying abstraction. That ingress-behavior wasn‘t defined but pluggable to suit existing load balancers also broke the abstraction.
Re: Pkl, a Programming Language for Configuration
#487Earlier quoted context omitted.
Copybara uses it
Step two of installing Copybara is to install Bazel [0], so that doesn't exactly contradict my claim that if you're not already using Bazel you probably won't use Starlark. [0] https://github.com/google/copybara
Re: Pkl, a Programming Language for Configuration
#488Earlier quoted context omitted.
There's no "walled garden" here. We want Pkl to be useful for many developers, for a variety of purposes. Hopefully that's clear enough with Java, Kotlin, and Go being amongst the various supported language bindings. We also already support Linux, and plan on supporting Windows. It's also open sourced under the Apache 2.0 license, which grants you the right to distribute and modify it. Cheers
I appreciate you having good intentions. I don't mean to be disrespectful. This however does not change my position that we have more than enough scripting languages focused on string operations, and don't need another language. And especially not a bloated one that itself depends on huge frameworks. If the same task can be solved using a 76KB standard Unix tool, creating a custom language with a huge bloated runtime…
It would also make far more sense for humans to agree on most things and work towards a common goal that benefitted us all, but that’s just as much of a pipe dream.
Proposing something that will never happen is not a practical solution.
Re: Pkl, a Programming Language for Configuration
#489Pkl, pronounced like pickle? Pickle in Python https://docs.python.org/3/library/pickle.html Tcl pronounced tickle. https://www.tcl.tk/ PCL, was it ever pronounced pickle? https://en.m.wikipedia.org/wiki/Printer_Command_Language
I mean, at this point almost every memorable 3 letter file extension probably already has some claim to it, but still, it would have been nice if Apple had done some research and made this more unique.
Re: Pkl, a Programming Language for Configuration
#490Earlier quoted context omitted.
What has most impressed me about GraalVM and Truffle is their capability of deep-optimizing high-level code like Python and Ruby. I once saw a demo where someone took a simple operation in Ruby using inefficient-but-elegant syntax (including creating and sorting an array, where a simple loop would have been the appropriate approach in C). He compiled that using TruffleRuby and the entire array construction and sortin…
Really? Link?
Here is one of the many: https://youtu.be/bf5pQVgux3c?si=S8Dm5d_GXYXgJtnY
If you go looking for more you will find many more marbles.