Programming

Blog posts about computer programming languages.

Catching the Human Mind

I was benchmarking PCs to try to determine where to put some Chattermancy code and I started to wonder once more where we are in the unintentional technological race to build a cheap computer that can outperform the human brain. I've done this exercise a half-dozen times over the years. Here's what I found this time.

Calculating how long it's going to take for PCs to become as powerful as the human brain is easy if you can make a few assumptions.

Unattended Git-Based Backups à la MooseX::Declare


Warning: This MooseX::Declare program, which my server was calling as a cron job, stopped working. I'm not sure what caused the program to fail suddenly and I didn't have the time to investigate the issue thoroughly. I did, however, rewrite the program in classic Perl, which solved the problem for now. I plan to make the "classic" version available to everyone and I also plan to investigate why the MooseX::Declare program stopped working.

English and TIMTOWDI

I'm at the point where my body stops functioning well if I don't run 3.8 miles at least a few times a week. That seems like a lot, but I actually walk about 0.5 files of that, so the run is really more like 3.3 miles. Still a fair bit. But I'm wearing expensive earphones ($30) connected to an inexpensive MP3 player ($12) and I'm listening to female vocal trance, mostly. I'm also furiously processing random thoughts, much like when one dreams. So the time goes by quickly for me when I'm running.

128-Character Perl Prime Number Finder

Falicon told me about people that were posting programs of less than 140 characters to Twitter. I found this fascinating for some reason and I've created my own such program, a Prime Number Finder, in Perl. This program will spit out all the prime numbers in a given range. Plus, it's rather efficient for such a small Perl program.

SOAP vs. RESTful Web Services

KISS: Use REST always, never SOAP.

I've implemented many Web services using both standards and I can tell you categorically that in hindsight I should have used REST always.

Concise Programming and Super General Functions

Some time ago, I started to develop programs using tiny, super general, higher-order functions and I began to borrow a little from functional programming. I noticed interesting things about these new programs. They called for special language features that I had until then heard of but never really needed. I'm referring to language features like support for first-class functions, closures, and lexical binding. The programs I produced were smaller and easier to debug than programs written in a traditional procedural style.

On Perl's Learning Curve And Its Relative Capabilities

The big problem with Perl is that it’s easy to learn, but difficult to learn right. It has a tough learning curve and it can take years to master, even if you already know many other programming languages.

However, I’ve never met a person that uses the advanced features of Perl (closures in an OO context, hash dispatchers, higher-order methods, super general functions, and so on) that didn’t write beautiful, concise, fast, and bug-free code. People that really grok Perl (and there are precious few of those because of the learning curve) don’t bash Perl.

The Road to Emacs

What is Emacs?

Emacs is not just an editor. It's an editor construction kit that comes with a half-finished editor. And that's one of the features that makes it by far the best text editor in the world. The other feature is that you program it in Lisp. O.K., so Elisp (Emacs's Lisp) is an antiquated dynamically scoped Lisp, but it's still a real Lisp with Lisp macros and all.
Syndicate content