Vista Slow to recognize the Belkin Flip

Friday, February 6th, 2009

I have a couple of Belkin Flip KVM switches, one I use to switch between a MacBook Pro and a Linux desktop (Ubuntu Dapper) and another I use to switch between a MacBook and a Vista Dell. Switching to the Macs or to Linux is almost instantaneous. However, the PC takes maybe 30 seconds before it will recognize the keyboard and mouse. (The monitor is usually asleep until it the keyboard or mouse wakes it up.) Any ideas?

%lxNSMOCqVM%

Thursday, February 5th, 2009

%%6LCXPOnb%%

Data Constructors and Readability

Thursday, February 5th, 2009

I think I’ve put my finger on one reason I’m finding Haskell hard to read. Consider this algebraic data type definition from Real World Haskell:

data Doc = Empty
         | Char Char
         | Text String
         | Line
         | Concat Doc Doc
         | Union Doc Doc
         deriving (Show, Eq)

There’s no distinction between the value constructor and the components of the type. This is especially critical when the constructor and the components have the same name as in the Char constructor above. It also doesn’t help that they have the same naming convention (mixed camel case, initial uppercase letter).

A Java class with multiple factory methods or multiple constructors would be much more verbose, but much more readable. Humans need redundancy, even if it’s logically superfluous.

I suspect a language that retained Haskell’s semantics, but completely replaced the syntax with something more usable, legible, and familiar would have a much greater chance of success.