Cue Does It All, but Can It Literate?

(xlii.space)

29 points | by xlii 3 days ago

3 comments

  • spookylukey 1 hour ago
    Please, please - just link to the actual "CUE" project. Not everyone has heard of your favourite thing. The first reference to `CUE` should be a hyperlink.

    For other people: I'm pretty sure the author is talking about https://cuelang.org/

  • jddj 29 minutes ago
    Maybe it's unfair, unhelpful or overdone to call out llmisms, but if OP is reading this I stopped reading pretty quickly as a result of things like:

    > [CUE] does not just hold the text; it validates that the pieces actually fit. It ensures that the code in your explanation is the exact same code in your final build. It is like having a Lego set where the bricks refuse to click if you are building something structurally unsound.

    And that's despite having a passing interest in both cue and LP

    • CuriouslyC 0 minutes ago
      Ah, the negative positive construction. Another casualty of the anti-AI movement. The semicolon was almost certainly inserted manually in place of an em-dash, models almost never use them.
  • solatic 1 hour ago
    Is there anyone out there that has actually, in the real world, realized CUE's promise of bundling type safety + data/configuration + task running in such a way that does not require wrapping it in shell scripts? Can you set up your CI/CD pipelines so that it's literally just invoking some cue cmd, and have that cmd invocation be reasonably portable?

    The problem is, once you have to wrap CUE, the loss of flexibility within a special-purpose language like CUE is enough for people to ask why not just bother writing the scripts in a general purpose language with better ecosystem support. And that's a hard sell in corporate environments, even ones that find benefit in type safe languages in general, because they can just pick a general purpose language with a static type checker.

    • maccard 12 minutes ago
      I can't speak for CUE, but I've worked with CI and "build orchestration tools"in the past. Most CI providers provide executor APIs that let you override it as a plugin. One example is https://buildkite.com/resources/plugins/buildkite-plugins/do... - you mark this as "this is using docker" and configure it in the environment, and then you provide the command. You need to be very careful about the design of the plugin, but I've done it a few times and it's viable.
    • CuriouslyC 1 hour ago
      Cue.js has a wasm port. I really like cue for my spec driven development tool Arbiter, it is great for structured specs because it acts like a superset of most configuration/programming languages.