‹ BackHN Continuity

Thread

Evolving programming languages in the AI era

139 points · 99 comments · pjm331

  1. spankalee · · focus · HN ↗
    This part:

    ---

    - Correct by construction: the language makes invalid states or programs hard or impossible to express.

    - Statically established: types, proofs, and static analysis establish properties before execution.

    - Runtime-enforced: memory management, isolation, capability boundaries, and other runtime enforced properties.

    - Empirically validated: program validation through tests, property-based testing, and fuzzing.

    ---

    Along with being familiar, so it&#x27;s easy to generate, is a huge part of why I&#x27;m building Zena: <a href="https:&#x2F;&#x2F;zena-lang.dev&#x2F;" rel="nofollow">https:&#x2F;&#x2F;zena-lang.dev&#x2F;

    I don&#x27;t have the AI-first rationale put into the public docs well just yet, but I mention some of it here: <a href="https:&#x2F;&#x2F;zena-lang.dev&#x2F;guide&#x2F;why-zena&#x2F;#familiar-to-humans-and-to-agents" rel="nofollow">https:&#x2F;&#x2F;zena-lang.dev&#x2F;guide&#x2F;why-zena&#x2F;#familiar-to-humans-and...

    along with a doc in the repo on this topic: <a href="https:&#x2F;&#x2F;github.com&#x2F;elematic&#x2F;zena&#x2F;blob&#x2F;main&#x2F;docs&#x2F;design&#x2F;ai-first-language.md" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;elematic&#x2F;zena&#x2F;blob&#x2F;main&#x2F;docs&#x2F;design&#x2F;ai-fi...

    In short, the more deterministic, automated, checks the better. AI can deal with a pedantic language. I intend to add statically verified structured concurrency, units of measure, contracts, and eventually more and more formal methods into the language so it can be a familiar TYpeScript-like base with as many static guarantees as we can fit in.

    I also think that fine-grained isolation, which Zena gets via Web Assembly, is critical for limiting the capabilities of generated code and the blast radius of bugs, vulnerabilities, and non-aligned behavior.

    I do have an optimistic hope that a language also optimized for humans, readability and simple semantics especially, has value in the future, even when most code is generated. We&#x27;ll see about that.

    1. demibabs · · focus · HN ↗
      A programming language for agents seems ill-conceived in my opinion.

      Agents will naturally be bad at it due to a lack of examples.

      1. abletonlive · · focus · HN ↗
        &gt; bc agents will naturally be bad at it due to a lack of examples.

        Can we please as a community stop parroting these false premises as a basis of every argument against doing anything new? It&#x27;s plainly obvious to anybody that uses LLMs on a regular basis that it&#x27;s not true.

        1. demibabs · · focus · HN ↗
          It seems plainly obvious to me that an agent trained on zillions of TypeScript examples is going to be better at TypeScript compared to novel langs.
          1. ModernMech · · focus · HN ↗
            True, it’s also trained on millions of papers of programming language research, so you can write a language to operationalize that research and it does great with it. The millions of lines of typescript scaffold the syntax, the PL papers scaffold the semantics.
Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.