1. 44
  1.  

  2. 4

    Ooh, nifty! There’s Common Lisp support, so I might explore setting this up for PAIP.

    1. 2

      What is PAIP?

      1. 3

        Paradigms of Artificial Intelligence Programming (1992), by Peter Norvig, is an advanced Lisp text. I’ve worked, off and on, on fixing up the online copy; it’s a work in progress.

        I was going to leave a breadcrumb on the relevant issue, but Klipse was already mentioned there.

    2. 2

      What are the security implications?

      1. 7

        No new implications. The website executes code which you provide and executes it locally. You already trust it with externally provided code, so nothing changes.

        1. 3

          In case Klipse would be used on a blogging platform like medium, it might allow a malicious blogger to run arbitrary code on a medium page. That’s why blogging platform forbids script tags et al… But on your own blog, there are no security issues.

        2. 2

          A long time ago, all the developers had a common dream. The dream was about interactivity, liveness, evaluation…

          And after a while, we even forgot that we ever had this dream.

          This assertion is unfounded, and I definitely don’t agree. There are some developers who love those things, and they definitely haven’t forgotten about it. There’s a reason many developers fawn over REPLs. On the other hand, many developers opt away from REPLs, because the sacrifices necessary to enable them aren’t always worth it.

          On the topic of the article, while it’s a cool demo, I don’t personally find it revolutionary, or all that useful. The tour of go, many programmers’ introduction to the language, is similarly interactive go programming in a webpage (albeit with compilation done on the backend). And honestly, when reading programming blogs, I’ve never once found myself wishing the snippets were interactive. If I want to tinker with a snippet, I can edit and compile it locally, in a familiar and comfortable environment.

          1. 4

            To build on this, I’ve found that blogs/sites that try to do clever interactive things with the examples completely fail to display any of the code snippet if javascript is turned off in the browser. So it’s beyond useless. Not everyone is browsing with a fast computer.

            1. 1

              The fact that the word “dream” is used, is telling. It is not an coincidence. The author us é the word he could use. A dream, something vague, not rationaly proven to make sense.

              Over the last decade or two, ever now and then, some website or programming language does this. Pyret, Crystal programming language, go programming language, eloquent JavaScript book. They all have this silly text boxes where one can paste code and click execute. I fail to understand why and to whom thismwould be useful. So you are advocating for the usage of a language and for interactivity and all for being able to use it “on your computer”, and you do so by encouraging the user to NOT running it their computer? Seems paradoxal to me. Also, if we are talking about JavaScript, there is no dream chase. You don’t need toy REPLs, your browser already comes with a proper one. To conter the example by Kay: such dream is already reality for JavaScript. Just open the browser JavaScript console while on Wikipedia.

              1. 1

                So you are advocating for the usage of a language and for interactivity and all for being able to use it “on your computer”, and you do so by encouraging the user to NOT running it their computer?

                I think I’ve missed the point you’re trying to make here. The code in the blog post runs on whatever computer the user is using to browse the internet. How is that NOT “their computer” while opening the javascript console on the very same browser while visiting wikipedia is “their computer”?

                1. 1

                  No, that is exactly my point. If you provide a text box on a webpage, the code is either executed remotely, which is the case for most examples I gave, or it relies (or is) JavaScript. For which we already have a superior experience in the developer tools.

            2. 1

              Their server is overloaded.

              Here is the archived (non-interactive) version: https://web.archive.org/web/20210829092736/https://blog.klipse.tech/golang/2021/08/29/blog-go.html

              1. 2

                That’s the main differentiator of Klipse: It’s client side => No scalabilty and stability issues!

              2. 1

                So long as you’re allowing arbitrary third-party JavaScript.