Live data from Hacker News

Pkl, a Programming Language for Configuration

pkl-lang.org

101–110 of 598 posts

Re: Pkl, a Programming Language for Configuration

#101

Pkl was built using the GraalVM Truffle framework. So it supports runtime compilation using Futamura Projections. We have been working with Apple on this for a while, and I am quite happy that we can finally read the sources! https://github.com/oracle/graal/tree/master/truffle Disclaimer: graalvm dev here. Edit: typo

I guess you mean Futamura projections?

Damn you autocomplete! This happens all the time :D

Re: Pkl, a Programming Language for Configuration

#103
post #99

Earlier quoted context omitted.

I guess you mean Futamura projections?

I wish people named more tech products after popular media instead of common words. Would make it equally hard to web search, but at least it would be funny for non-techies to listen to

[dead]

Re: Pkl, a Programming Language for Configuration

#105

So like cue [0] but more primitive, less principled and in java? [0] https://cuelang.org

Yes. I am sure it’s that simple. I’m sure that there are all downsides and no upsides. This is the first time in history where one technology is a strict superset of a competing technology, from all perspectives. /s

I really don’t know why this snark is necessary.

Re: Pkl, a Programming Language for Configuration

#106
What I like:

- the validation system

- ability to split large configuration files into smaller files and enhance readability (I know Java / Spring Boot apps already have this ability using profiles)

- multiple language support

Wonder if it’s possible to have more complicated validation functions. The example given validates 1 configuration (“port must be greater than 1000”). But there are times when some configuration is valid by itself however in the presence of other configuration the configuration(s) will possibly be ignored.

Given:

- configA

- configB supersedes configA in app

When:

- both configA and configB set in pkl

Then:

- at compile time, should throw a validation error

Criticisms:

- documentation (in typical Apple fashion) appears to be lacking. Couldn’t find anything on the validation system

- missing LSP support

- yet another config language to support/learn

Re: Pkl, a Programming Language for Configuration

#107

Pkl was built using the GraalVM Truffle framework. So it supports runtime compilation using Futamura Projections. We have been working with Apple on this for a while, and I am quite happy that we can finally read the sources! https://github.com/oracle/graal/tree/master/truffle Disclaimer: graalvm dev here. Edit: typo

> Pkl was built using the GraalVM Truffle framework. So it supports runtime compilation using Futamura Projections.

What now?

Re: Pkl, a Programming Language for Configuration

#108

Not to be confused with “pickle”, the Python object serialization format…

Or GNU poke ( https://www.gnu.org/software/poke/ ) source files which are called "pickles".

Or PECL (pronounced Pickle), the old PHP package manager superseded by Composer.

Re: Pkl, a Programming Language for Configuration

#109

Pkl was built using the GraalVM Truffle framework. So it supports runtime compilation using Futamura Projections. We have been working with Apple on this for a while, and I am quite happy that we can finally read the sources! https://github.com/oracle/graal/tree/master/truffle Disclaimer: graalvm dev here. Edit: typo

> ...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.

Re: Pkl, a Programming Language for Configuration

#110

Anything development related from Apple is inherently disinteresting unless it's aimed at Apple, is for Apple and you're building for Apple. Apple has done nothing cross platform or open source or community oriented so if they come out with something that's intended to be more general is has no base, no users, no audience of non-Apple developers to land on. I'm not anti Apple - I love MacOS and Apple is my main machi…

> Apple has done nothing cross platform or open source or community oriented Cups - https://en.wikipedia.org/wiki/CUPS Swift - https://en.wikipedia.org/wiki/Swift_(programming_language) Zeroconf - https://en.wikipedia.org/wiki/Bonjour_(software) I think they're bad, opaque opensource maintainers, but they did release some popular things that have communities on other systems. I do wish they just contributed to nickel…

CUPS was done by Easy Software Products, in 1997. Apple adopted it only in 2002.

Swift is a language entirely in the control of Apple, mainly targeting Apples platforms. With little to no community engagement.

Bonjour is not really cross platform, and not really open source either as it has lots of strings attached to the license and terms one can use it under.

(I wouldn't say that Apple has done "nothing" -- but to credit them for doing much is also a stretch)

Post reply on HN