OpenLDK: Bringing the Java World into Common Lisp

(atgreen.github.io)

111 points | by atgreen 4 days ago ago

19 comments

  • mgdev 2 days ago ago

    Wouldn’t it be wonderful if, in the world of LLMs, Lisp became the new lingua franca, because we don’t have to convince humans that parens are scary, and because it enables exactly this kind of magic.

    Full circle for Lisp as an AI language.

    • atgreen 2 days ago ago

      Hey, I'm the author. Yes, I worked in the University of Toronto's AI lab as a student many years ago, back when Lisp in AI was a thing. It definitely would be full circle!

    • jonhohle 2 days ago ago

      LLMs can’t count. Do you think they can balance parens?

      Personally, I’ve wondered why they don’t just generate machine code.

      • 2 days ago ago
        [deleted]
      • shoobiedoo 2 days ago ago

        I never thought of that. Humans avoid machine code for many reasons. If LLM's don't need to produce human-readable output, then why not?

        • __m 2 days ago ago

          It would be architecture dependent

          • lmz 2 days ago ago

            Well they could output plan.md files that are architecture independent first. Then we can commit those, and only generate the final machine code on demand.

            • SkiFire13 a day ago ago

              That's a very good way to ensure your software is not reproducible.

              People don't trust other people making little changes to existing software, who will ever be ok with rebuilding it from scratch?

              • lmz a day ago ago

                We could call the final phase a coLLMpiler for good measure.

      • sharts a day ago ago

        they can call tools to count tho?

      • rafram 2 days ago ago

        I mean, is this an actual issue? There have to be plenty of developers using LLMs to write Lisp(s).

        I have occasionally seen Claude models struggle to balance brackets/parens in nesting-heavy languages like Dart (Flutter), but it’s gotten much better.

        • BaronSamedi 7 hours ago ago

          LLMs can write Common Lisp just fine. I have no idea where the myth that they can't because of the all the parentheses comes from.

        • mgdev 17 hours ago ago

          Plus your agent (strictly speaking) doesn't need to generate parens as tokens. Instead they can generate imperative stack commands that manipulate the AST. Or something paredit-like.

  • Trusteando 2 days ago ago

    I think OpenLDK allow you to use the Java world for sbcl when you don't want to use Clojure or ABCL. But using OpenLDK requires you to pay the interop cost and when speed of the java libraries is not a sharp constrain.

    • vindarel 3 hours ago ago

      (or LispWork$ and its Java interface)

  • rjsw 2 days ago ago

    Your "light mode" button doesn't work.

    • adrianmonk 2 days ago ago

      That button makes the invisible scrollbar visible, though, which is great.

  • bjornroberg 2 days ago ago

    I love lisp. I have fond memories of reading/studying Land of Lisp many years ago. Glad to see stuff like this being created.

  • yogthos 2 days ago ago

    Incidentally, it looks like this idea also works with Jolt now. It's still in alpha stages, but works as a proof of concept. https://github.com/jlt-commons/jolt-openldk