Tuesday, September 30, 2014

repl.it - Love It! And Learn to program with two URLs

This morning I worked up a solution to today's Programming Praxis challenge (find it here). The code was simple enough to write (and yes, I wrote it on my Galaxy S5). A few minutes after I committed the solution to git, I decided I wanted to tweak a function name.

Github provides an easy enough way to edit a file and commit the change. The catch is that I know from countless goofs that even the most trivial change needs to be checked before committing. I could fire up my Android Scheme Dev environment without much difficulty, but at the time, I had a Firefox window open to Github on my Laptop. It occurred to me: surely there had to be an online Scheme REPL I could test my fix with. Then I wouldn't have to leave my browser (much less my dev environment).

I give you repl.it. Here's my fix in action:

Now I know this snippet of code was pretty trivial, but still, I'm floored by how impressive repl.it is. As an educational tool, it's nothing short of amazing. All you need is a web browser and some time, and you can be on your way to learning how to program.

repl.it isn't limited to Scheme dev either. Of particular note is the presence of a Forth interpreter, which is another language I enjoy puttering around with.

OK Ladies and Gentlemen, ready to learn to program? Here are the two URLs you're going to need:

  1. Structure and Interpretation of Computer Programs (SICP). Depending on who you ask, it's either the greatest text ever written on the topic of programming, or absolute junk. I belong to the former camp.
  2. repl.it. Don't just read SICP, execute it. Run the code. Solve the examples. repl.it seems powerful enough to do just that.

So stop surfing, and start learning!

1 comment:

  1. Not even a little? :-).

    OK, the version of the interpreter may be old - but unless I'm missing something, the UI experience is far more complete at repl.it than the webpage at biwascheme.org.

    With repl.it, I can compose some content, eval it, make tweaks and eval it again. (Not to mention, share the link with someone / bookmark it for later). With biwascheme.org, all I see is a basic REPL. (Which mind you, is very cool).

    It's just apples and oranges.