2 comments

  • borodi 2 hours ago
    Fun fact, Julia's parser and part of its compiler are implemented in femtolisp, and you can access it using a not so secret option in the Julia CLI.
    • markkitti 1 hour ago

          $ julia --lisp
          ;  _
          ; |_ _ _ |_ _ |  . _ _
          ; | (-||||_(_)|__|_)|_)
          ;-------------------|-----    ------------------------------    -----------------------
          > (+ 1 2)
          3
    • eigenspace 1 hour ago
      We are slowly moving on replacing this stuff with implementations written in pure julia.

      Currently the femtolisp parser is only used during bootstrapping the core systems so that we can parse the pure-julia parser and then we switch over to the julia parser. The same process is now happening with the femtolisp implementation of the lowering pass.

      • tokai 1 hour ago
        So Julia will no longer be a LISP? :'(
        • eigenspace 52 minutes ago
          Having some components written in lisp was never the lispy part of julia. The thing that makes julia lispy is its semantics and features.
          • tokai 39 minutes ago
            I agree. Was trying a tongue in cheek comment about how the Julia/LISP discussion over the years often would have someone point to julia --lisp as an argument for Julia being a LISP dialect.
  • danlitt 29 minutes ago
    Interesting! This seems superficially related to GNU Mes[1], although I imagine femtolisp does not require its small source to be written in a "simple" dialect of C.

    [1]: https://www.gnu.org/software/mes/