By way of the astronomy picture of the day, I encountered a really fantastic site about the analemma. The analemma is the apparent path that the sun takes in the…
A Second Stab at Sheaves
I’ve mostly been taking it easy this week, since readership is way down during the holidays, and I’m stuck at home with my kids, who don’t generally give me a lot of time for sitting
and reading math books. But I think I’ve finally got time to get back to the stuff
I originally messed up about sheaves.
I’ll start by talking about the intuition behind the idea of sheaves. The basic idea of
a sheave is to provide a way of taking some local property of a topological space, and
demonstrating that it holds everywhere. The classic example of this is manifolds, where the *local* property of being locally almost euclidean around a point is expanded to being almost euclidean around *all* points.
Friday Not-So-Random Five, December 29
Friday Not-So-Random Five I decided in honor of the new year, I'd do something a bit different this week. Instead of doing a random shuffle on my IPod, I separated…
Doctor Who Chatter
Like my friend and blogfather [Orac][orac], I'm a huge fan of Doctor Who, and I've been greatly enjoying its renewed life in the new series on BBC. In fact, the…
Giving IDists too much credit: the Pandas Thumb and CSI
Being a Nice Jewish BoyTM, Christmas is one of the most boring days of the
entire year. So yesterday, I was sitting with my laptop, looking for something interesting to read. I try to regularly read the [Panda’s Thumb][pt], but sometimes when I don’t have time, I just drop a bookmark in my “to read” folder; so on a boring Christmas afternoon, my PT backlog seemed like exactly what I needed.
[One of the articles in my backlog caught my interest.][pt-sc] (I turned out to be short enough that I should have just read it instead of dropping it into the backlog, but hey, that’s how things go sometimes!) The article was criticizing that genius of intelligent design, Sal Cordova, and [his article about Zebrafish and the genetics of regeneration
in some zebrafish species.][sc] I actually already addressed Sal’s argument [here][bm-sc].
[pt]: http://www.pandasthumb.org
[pt-sc]: http://www.pandasthumb.org/archives/2006/11/when_ignorance.html
[sc]: http://www.uncommondescent.com/archives/1781
[bm-sc]: http://scienceblogs.com/goodmath/2006/11/bad_news_for_uncommon_descent_1.php
Friday Random Ten for Dec 22
1. **Lunasa, "Feabhra"**: My favorite traditional Irish band. These guys are *really* traditional instrumental Irish - Uillean pipes, flute, guitar, bodhran, and bass. The pipe player is without doubt one…
Pathological Programming in a Circular Queue
Today, I’m going to show you a very simple, very goofy little language called “SCEQL”, which standards for “slow and clean esoteric queue language”. It’s based on nothing but a circular queue
of numbers with nothing but 8 commands. It’s not one of the more exciting languages, but it can
be a lot of fun to figure out how to make the circular queue do what you want it to.
Stepping Back a Moment
The topology posts have been extremely abstract lately, and from some of the questions
I’ve received, I think it’s a good idea to take a moment and step back, to recall just
what we’re talking about. In particular, I keep saying “a topological space is just a set
with some structure” in one form or another, but I don’t think I’ve adequately maintained
the *intuition* of what that means. The goal of today’s post is to try to bring back
at least some of the intuition.
Tail Recursion: Iteration in Haskell
In Haskell, there are no looping constructs. Instead, there are two alternatives: there are list iteration constructs (like foldl which we’ve seen before), and tail recursion. Let me say, up front, that in Haskell if you find yourself writing any iteration code on a list or tree-like structure, you should always look in the libraries; odds are, there’s some generic function in there that can be adapted for your use. But there are always cases where you need to write something like a loop for yourself, and tail recursion is the way to do it in Haskell.
Tail recursion is a kind of recursion where the recursive call is the very last
thing in the computation of the function. The value of tail recursion is that in a tail
recursive call, the caller does nothing except pass up the value that’s returned
by the the callee; and that, in turn, means that you don’t need to return to the caller
at all! If you think of it in terms of primitive machine-level code, in a tail-recursive call, you can use a direct branch instruction instead of a branch-to-subroutine; the tail-recursive call does *not* need to create a new stack frame. It can just reuse the callers frame.
Wacky Physics: It must be right, because the math works!
Over the weekend, in an attempt to cheer me up, a kind and generous reader sent me a link
[to a *really* wonderful site of crackpot science][adams]. It’s a crackpot theory about how physics has it all wrong. You see, there is no such thing as gravity – it’s all just pressure. And the earth (and all other planets) is actually a matter factory – matter is constantly created in the *hollow* center of the earth, and the pressure of all the new matter forces the earth to constantly expand. And the pressure of expansion creates the illusion of gravity. And according to the crackpot behind it all, the best part is that [*the math works!*][mathworks]
The site is the masterwork of graphic artist Neal Adams. Mr. Adams is a computer animation
guy; he’s responsible for the obnoxious bumblebee “nasonex” ad. Mr. Adams believes that in
addition to drawing comic books and animated TV commercials, he’s also a genius who’s going to
totally reinvent all of physics, and show how all of those bigshot physicists and geologists are all wrong about everything.
[adams]: http://www.nealadams.com/morescience.html
[mathworks]: http://www.nealadams.com/PhysicsOfGrow.html