A weblog by Will Fitzgerald

Monthly Archives: December 2005

Leap second!

capture of leap second

Leap Second Lovers are Traitors

Leap Second Lovers are Traitors

Look, look, look, look. A leap second is a denial of everything American, of everything good, of everything moral.

Hey, it wasn’t my idea; I was just trying to ameliorate the consequences.

Tune test

I probably wouldn’t mark this website, unless I had scored perfectly on the NIH’s Tune test, an online test for tone deafness–you have to decide whether 25 short tunes are played correctly or not.. Some might claim that Sacred Harp tunes would sound incorrect… I did notice that two tunes in the Sacred Harp show up on the page–‘New Britain’ (Amazing Grace) and ‘Plenary’ (Auld Lang Syne).

PROGN considered harmful

Guy Steele in DDJ, Thoughts on Language Design: discusses going beyond the structured programming constructs of loops, if-then-else, and sequential operation:

What might a language look like in which parallelism is the default? How about data-parallel languages, in which you operate, at least conceptually, on all the elements of an array at the same time? These go back to APL in the 1960s, and there was a revival of interest in the 1980s when data-parallel computer architectures were in vogue. But they were not entirely satisfactory. I’m talking about a more general sort of language in which there are control structures, but designed for parallelism, rather than the sequential mindset of conventional structured programming. What if do loops and for loops were normally parallel, and you had to use a special declaration or keyword to indicate sequential execution? That might change your mindset a little bit.

The programming language I work on, Apex (as well as its predecessor, the RAP System), has parallelism turned off on by default, so that, for example, in

(procedure (do something)
  (step (do this))
  (step (do that)))

the “do this” step and the “do that” steps are executed in parallel. This does, in fact, turn out to require a change in mindset, especially when the individual steps are themselves composed of substeps executing in parallel. The RAP system also had an interesting approach to the if-then-else: procedures can have various methods which are tried in different cases; for example:

(procedure (open door)
  (method (is-automatic door))
    (step (walk up to door)))
  (method (has-knob door))
    (step (turn knob))))

I think that the syntax for both Apex and the Rap System turns out to be a bit heavy on keywords (method, step, etc.), which are, in turn due to their roots in Lisp. (There are some advantages to the ‘everything looks like data’ approach though). Neither the Rap System nor Apex really handle looping very well, though we’re working on some new looping constructs for Apex.

In addition to the breakthroughs with respect to ‘structured programming’ constructs, both Apex and the Rap System have other important features, which like default parallelism, require some ‘changes in mindet.’ For example, conditions (such as in the methods above) can be much more richly expressed than boolean queries, but can stream bindings. Anyway, it is nice to think that Steele is working on making some of these ideas find their way into the mainstream. Here’s the latest spec for his new language Fortress, which also includes support for Unicode-based operators, for example: “A × B” instead of the traditional ASCII “A * B” to indicate multiplcation.

(via lambda the ultimate).

Kunonga watch V: charges dropped

Watch your ears

‘Ear bud’ headphones can cause hearing loss, experts warn:

“I have an audiologist friend at Wichita State University who actually pulls off earphones of students he sees and asks, in the interest of science, if he could measure the output of the signal going into their heads,” Garstecki said. Often he finds students listening at 110 to 120 decibels. “That’s a sound level equivalent to measures that are made at rock concerts,” said Garstecki. “And it’s enough to cause hearing loss after only about an hour and 15 minutes.”

(via /.).

At the tone, the time will be 2005 December 31, 23h 59m 60s.

It’s rare that I get to write an email this geeky: what to do about the upcoming leap second if you’re using some time and date code I wrote for Scheme a while back: Upcoming leap second.

Merry Christmas

And it came to pass in those days, that there went out a decree from Caesar Augustus that all the world should be taxed. And all went to be taxed, every one into his own city. And Joseph also went up from Galilee, out of the city of Nazareth, into Judaea, unto the city of David, which is called Bethlehem; because he was of the house and lineage of David: To be taxed with Mary his espoused wife, being great with child.

And so it was, that, while they were there, the days were accomplished that she should be delivered. And she brought forth her firstborn son, and wrapped him in swaddling clothes, and laid him in a manger; because there was no room for them in the inn.

And there were in the same country shepherds abiding in the field, keeping watch over their flock by night. And, lo, the angel of the Lord came upon them, and the glory of the Lord shone round about them: and they were sore afraid. And the angel said unto them,

Fear not: for, behold, I bring you good tidings of great joy, which shall be to all people. For unto you is born this day in the city of David a Saviour, which is Christ the Lord. And this shall be a sign unto you; Ye shall find the babe wrapped in swaddling clothes, lying in a manger.

And suddenly there was with the angel a multitude of the heavenly host praising God, and saying,

Glory to God in the highest, and on earth peace, good will toward men.

And it came to pass, as the angels were gone away from them into heaven, the shepherds said one to another, “Let us now go even unto Bethlehem, and see this thing which is come to pass, which the Lord hath made known unto us.” And they came with haste, and found Mary, and Joseph, and the babe lying in a manger. And when they had seen it, they made known abroad the saying which was told them concerning this child. And all they that heard it wondered at those things which were told them by the shepherds. But Mary kept all these things, and pondered them in her heart. (Luke, Chapter 2, King James Version).

Wild: BASIC for Javascript

BASIC for Javascript (Requires Firefox 1.5). Even wierder than than Lisp in Javascript.

Cost of operating UAVs for border patrol

Border UAVS May Not Be All They’re Cracked Up To Be: Are UAVs cheaper than manned aircraft?

Not necessarily, according to Department of Homeland Security Inspector General Richard Skinner. According to his written testimony, one UAV requires a crew of up to 20 support personnel. In fact, the operating cost is more than double that of a manned aircraft.