should i go with Clojure or common Lisp? i’m looking for an intuitive language and the tooling is great. my background: Ruby programmer and i use neovim. my goal: AI development. do people really use Lisp family for AI dev tho?

  • e0qdk@reddthat.com
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    8 days ago

    Ruby is already a functional programming language – you can pass functions to functions, return functions from functions, and make closures in Ruby already. You’re probably already using some functional programming concepts if you’ve done anything non-trivial in Ruby even if it didn’t register for you as “functional programming”.

    If you want to do ML (current “AI”), you’d probably do best to learn some Python (PyTorch, TensorFlow, etc.) and maybe CUDA for lower-level control. (It’s basically C++ with extra features for running code on NVIDIA GPUs.) There might be Ruby wrappers for the underlying ML libraries, but I expect most resources you’ll find (e.g. StackOverflow answers) will assume you’re working with Python…

    If you’re still interested in learning one of the languages you listed, you’ll get some educational benefits from exploring them but I don’t think you’re likely to get much practical benefit out of it for AI over Ruby. I learned a lot from exploring Clojure personally – I particularly liked the idea of identity as a series of values over time – but I don’t work in the JVM ecosystem, and so I haven’t actually done anything with the language in 10+ years… The concepts I learned from playing with it were more useful than the language itself to me.

    • Hammerheart
      link
      fedilink
      arrow-up
      2
      ·
      4 days ago

      Were you able to transfer those concepts you learned from clojure to other languages?

      • e0qdk@reddthat.com
        link
        fedilink
        arrow-up
        1
        ·
        4 days ago

        Yes, but more in a philosophical sense. Basically, just go read this: https://clojure.org/about/state

        I generally use message passing rather than the sort of transactional concurrency the language promotes, but the idea of value vs identity has stuck with me.

    • occultist8128@infosec.pubOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 days ago

      yes i been already using some of functional features on it, but i want to use Lisp family language esp for AI dev