HN user

robert-brown

48 karma
Posts1
Comments29
View on HN

One big problem is that Python's semantics make it difficult to implement the language efficiently. When I translate the sieve code into safe Common Lisp, I get a speedup of 15. After adding a few declarations, making the code as unsafe as C, the speedup factor is 30. Those improvements are possible because the compiler can assume many things about the functions and operators used in the code. For instance, that the Lisp equivalents of range() and len() have not been redefined.

There's a big difference between the complexity of setting up Bazel and the experience of using Bazel at a company where Bazel has been set up for you. As a user I love Bazel. When working with Java, I use the java_binary and java_library rules. When coding in Go, there's nothing new to learn regarding the build, just use go_binary and go_library instead. Everything is repeatable, builds and tests are cached, it's easy to query the build dependency tree, etc.

A few startups are offering "Bazel build/test as a service." It's one way to eliminate the work involved in setting up Bazel for an organization.

The best way to acquire a quality sofa is to purchase a used one made by a furniture maker known to create high quality pieces. It requires a bit of research. You need to figure out which builders around you produced excellent furniture 50 or more years ago. In the USA, Dunbar is an example. Buy an old Dunbar sofa from the 1950s and reupholster it. It will easily last another 100 years.

When I was about ten, Chi Corp., which was associated with Case Western, had an open house. I keypunched my name on a card and fed it to a Univac 1108, which output a large image of my name on a line printer. I think an image of Snoopy was also output. I was hooked.

In middle school wrote Basic code on an HP-2000E. High school summer job writing C code on a PDP-11/70? running Version 6 or 7 Unix. Later, spent a summer at Bell Labs. Bjarne was working down the hall on C with objects. Rob Pike demoed a wire-wrapped Blit prototype. I wrote an assembler for an Ikonas frame buffer in Turner Whitted's graphics group for a C compiler port.

Having broken a couple of kingpins at high speed on roller skates, it's definitely no fun. Unfortunately, the kingpins are under a lot of stress and they're threaded. Invariably, the break occurs on the threads.

Titanium kingpins are available for skates and skateboards, and are much lighter. I don't know if they help with breakage.

A couple more details ...

Good quality roller skate truck pivot pins end in a spherical ball and the pivot pin cup on the truck is also spherically machined. There's no bushing in the cup.

One more thing ...

Good quality skates have pivot pins whose length is adjustable. I don't know if skateboard trucks generally have this feature.

You tighten and loosen the pressure on the kingpin rubber bushings by shortening and lengthening the kingpin in order to adjust resistance for cornering. When you do that, you also need to be able to adjust the length of the pivot pin. Otherwise, lengthening the kingpin results in a pivot pin that's not resting properly in its cup. You want it just touching, not floating out of the cup or exerting a lot of pressure on the cup.

Roller skating plate trucks are similar to skateboard trucks.

Kingpin angle affects cornering ability. Kingpins at higher angle from vertical corner more sharply, so skaters doing figures tend to prefer more vertical kingpins than dance skaters, who want to be able to do deep curves. For instance, kingpin angle is the major difference between Snyder Super Deluxe and Imperial plates.

Durability is a serious consideration for roller skating kingpin angles. It's painful when a kingpin breaks and more common with less vertical kingpins, so most skaters doing freestyle will choose a plate with kingpins closer to vertical. Roller skate plates also often have a "jump bar" connecting the two trucks to decrease the chance that a kingpin will break when a jump is landed. Sometimes even a jump bar breaks.

Anyone interested in syntax highlighting should read the book Human Factors and Typography for More Readable Programs. The majority of the book is devoted to non-color techniques, but they do present some ideas for how to effectively use color near the end.

Much of syntax highlighting in the wild is junk, just distracting eye candy.

I saw the film with two women who had essentially the same reaction, hating both Craig and the film. What exactly was he suffering from? Perhaps we're supposed to have unbounded sympathy for every 50-ish male?

Common Lisp Koans 7 years ago

The Lisp Style Guide actually predates Google's acquisition of ITA. Common Lisp was used to develop some machine learning code. After the acquisition of ITA, the guide was extensively updated.