Apple releases Pkl – onfiguration as code language

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • cue

    The home of the CUE language! Validate and define text-based and dynamic configuration

    I've been somewhat surprised that CUE bills itself as "tooling friendly" and doesn't yet have a language server- the number one bit of tooling most devs use for a particular language.

    I'm assuming it's becaus CUE is still unstable?

    Anyway, if others are interested in CUE's LSP work, I think https://github.com/cue-lang/cue/issues/142 is the issue to subscribe to

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • dhall-lang

    Maintainable configuration files

    Well, Dhall provides something between JSON and a Turing complete language that can make a lot of configuration much quicker to write, if you can hack the functional syntax.

    http://dhall-lang.org/

  • starlark

    Starlark Language

    Trivia note, the bazelbuild starlark readme example shows a rare correct implementation of FizzBuzz, with no unique case for "FizzBuzz".

    https://github.com/bazelbuild/starlark

  • Graal

    GraalVM compiles Java applications into native executables that start instantly, scale fast, and use fewer compute resources 🚀

    Pkl was built using the GraalVM Truffle framework. So it supports runtime compilation using Futurama 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.

  • pkl-go

    Pkl bindings for the Go programming language

    sadly the Go implementation is bloated as hell:

    https://github.com/apple/pkl-go/blob/main/go.sum

    no thank you.

  • edn

    Extensible Data Notation

    > was utterly surprised how no one ever apparently has thought to create a configuration/templating system that's basically a fancy library on top of Scheme.

    There's Clojure's extensible data notation: https://github.com/edn-format/edn

  • pkl-pantry

    Shared Pkl packages

    More poking around in this; it'd be great if things like

    https://github.com/apple/pkl-pantry

    Had more documentation. Like there's a prometheus template; is that for use only in k8?

  • copybara

    Copybara: A tool for transforming and moving code between repositories.

    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

  • graalvm-demos

    This repository contains example applications to illustrate the different capabilities of GraalVM

  • cel-spec

    Common Expression Language -- specification and binary representation

    My employer uses a combination of Protocol Buffers (for the config schema definition) and Bazel/Starlark (for concrete instantiations). Configs are validated at build time and runtime using CEL (https://github.com/google/cel-spec).

  • simplelanguage

    A simple example language built using the Truffle API.

    Truffle has no opinion on how you parse the sources. It cares about how you execute them from an intermediate Truffle guided representation produced by the parser.

    In other words antlr and truffle are a great fit. We even use this pairing for our example language simplelanguage.

    https://github.com/graalvm/simplelanguage

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Having trouble creating an exe file in netbeans on a mac.

    2 projects | /r/javahelp | 26 Dec 2022
  • Adding algebraic data types to Nickel

    3 projects | news.ycombinator.com | 7 Sep 2024
  • Primitive Recursive Functions for a Working Programmer

    3 projects | news.ycombinator.com | 4 Aug 2024
  • What are good Java demo projects?

    4 projects | /r/java | 27 Mar 2023
  • R Shiny App Equivalent

    3 projects | /r/java | 11 Feb 2023

Did you konow that Java is
the 8th most popular programming language
based on number of metions?