Xah Programing Blog Archive 2011-01

Discovered that there's actually a keyboard shortcut for copy and paste in Windows Console. See: Windows Console Key Shortcuts.

How Does a Unicode Character Get Mapped to a Glyph in a Font?

Just created this list: HTML XML Entities.

Am surprised to learn that Stack Overflow is based on Microsoft technologies.

See: Source blog.stackoverflow.com.

Great going Microsoft!

Firefox 4 and AutoHotkey: MozillaWindowClass.

Google Earth Mouse Navigation and Keys.

Idiotic Adobe Reader (aka Adobe Acrobat).

When in Google Chrome browsing a pdf file, Chrome tells me: “Parts of this PDF document could not be displayed. Open in Adobe Reader?”. So i clicked Yes. Then, Chrome tells me: “Adobe Reader is out of date and may be insecure”, with a option to update. That's a bit strange, because i thought i have it up-to-date. So, i manually opened Adobe Reader, then clicked on the “Check for Update…” under the Help menu. It says: “No updates available”. I then checked version, it's “9.4.2”. Then i went back to Chrome and get the update, the download is “Adobe Reader X (10.0.1)”. F���ing idiotic Adobe Reader.

See also: Complexity and Tedium of Software Engineering.

and Google Chrome is really fantastic. See: Google Chrome, SPDY Protocol, Browser War II.

What's the Max Number of Directories a Directory Can Have?.

UNIX Tar Problem: File Length Truncation, Unicode Name Support.

Programing Style: Variable Naming: English Words Considered Harmful.

How I lost my faith [in lisp], Ron Garret

A old comp.lang.lisp newsgroup post has been dug up by Hacker News. The post is: How I lost my faith By Erann Gat. @ http://groups.google.com/group/comp.lang.lisp/msg/6f75cfb5a289d3f6.

i read it at the time it was posted, and just read it again. Note that its author, Erann Gat (aka Ron Garret), is somewhat a controversial figure in comp.lang.lisp. I think primarily having to do with the nasty fight between him and Erik Naggum. Also, i don't know the details, but he also doesn't get alone with another lisp regular Kenny Tilton.

Over all, i'll say i agree with his post there, that lisp isn't that great a language today, as i've expressed many times in the past years. My path to lisp is similar. For me, lisp started in 1998. First, there's awful amount of admiration and respect from me, even just for the association with the phrase “artificial intelligence”. Though, i never really got to the lisp-loving stage. I find problems with the lisp's list and cons in the very beginning, due to my experience with Mathematica. (a question about cons was my first post to comp.lang.scheme and flamed by one Naggum, in 1998. See: Death of a Troll — My Memory of Erik Naggum (1965 – 2009).) For real life reasons, i never actually got to code lisp. Only untill around 2006, i started to dig seriously into emacs lisp.

For all my love of elisp, it is primarily due to it being a functional language, and the emacs environment system. I can't say the love came from the lang being lispy. Ι HATE the cons, i HATE the parens (actually i LOVE the regular nested syntax (as in Mathematica), but lisp screwed it so bad). 〔➤see Fundamental Problems of Lisp〕 And other identy of lisp that lispers perennially get excited about — the macros — i find abominable and useless. (and Schemer's call-cc, i find to be a lang design feature that i have no interest)

(everytime you use a vector instead of list/cons, the lisp fanatics stare at you like crazy. Everytime you didn't tuck-in the closing parens at end, they think you are a newb. For all the AI automation lisp is renowned for, the lispers at comp.lang.lisp still don't get the concept of automated code formatting. They diddle with code formatting just like every stupid imperative lang. This is particularly disgraceful because lisp's got such a superior syntax at maintaining structural info, which IS the main advantage of purely nested syntax. (See: A Simple Lisp Code FormatterA Text Editor Feature: Extend Selection by Semantic Unit.))

Update: Unicode Support in File Names: Windows, Mac, Emacs, Unison, Rsync, USB, Zip.

Discovered Google computer programing style guide. It has style guide for lang including: C++, JavaScript, Objective-C, Python, XML. At http://code.google.com/p/google-styleguide/

The ones am interested are:

I spent 30 min to read the js one. Haven't finished yet. Very good reading. If you are not a expert of the lang, you learn something about the lang too.

I'll be reading them all.

How to Create a APL or Math Symbols Keyboard Layout.

FSF made a declaration on Facebook. See: Mark Zuckerberg is TIME Magazine's Person of the Year? Where's the “dislike” button? by Matt Lee et al. @ fsf.org.

FSF say no to facebook Zuckerberg

See also: Facebook's Ethics.

Discovered a new ergonomic layout, for French, called bvofrak. See: Alternative Keyboard Layouts List. (thanks to Hugues Dumez.)

It's interesting that on their site bvofrak.blogspot.com they mentioned this (translated by Google):

Computer Language Design: String Syntax (essay)

Reminder. If you like this blog, you might also enjoy my other programer related blogs:

Usually i don't repeat a article in more than one place, even if it's related to both.

Programer Keyboarding Advices (Typing, Ergonomics, RSI).

Computer Languages, ASCII Jam, Fortress, Unicode.

How to Make Youtube Play a Video Repeatedly.

One Language to Rule Them All? (commentary)

Unicode Support in Ruby, Perl, Python, JavaScript, Java, Emacs Lisp, Mathematica.

Guy Steele on Parallel Programing (video; commentary; functional programing)

Discovered that the entire Perl Cookbook is now available online. Originally i thought it's official from O'Reilly, but until trying to announce the URL, i realized it's pirated. The site actually contains ≈100 O'Reilly books. The URL is 〔http://docstore.mik.ua/orelly/〕. Screenshot: . The site is Google ranked at 5. (i discovered it while Google search Perl modules.) I guess the site is making money by the ads.

Ι wonder if O'Reilly knew. Ι hope they can take action, but i guess it's fruitless. Am also guessing that there are probably tens or hundreds of such sites. (they are all over bittorrent anyway.)

See also: Software Freedom is Free Speech or Free Beer?Perl Books Survey 2002.

Internet History, Netscape, Dot Com, Code Rush 📺

Unicode 6 Emoticons.

Mouse Wheel: Smooth Scroll vs Notched Scroll (review; commentary)

Anyone who teaches “syntax is not important; semantic is”, should be immediately kicked in the ass.

How to Delete Flash Cookies.

productivity tip: Windows: How to swap Mouse Buttons: Right-Click, Middle-Click.

Remove Windows Media Player Context Menu (tips)

3D Visualization Design (commentary; tips)

Worked with Mathematica for 5 hours yesterday. Fantastic! This old hand can still do something! lol. My plane curve packages soon to be out n am gonna be rich.

…gosh what godly hours i've spend on Mathematica in 1990s. Surprised to find that i even Unproctected builtin symbols to fix things. (get rid of asymptotes in ParametricPlot) (Draft notes as i go: Mathematica Version 3 to Version 7 Conversion Notes)

… i recall, i stopped doing Mathematica in 1998 because it's a career dead-end as a programing lang, and dived into the utterly idiotic Perl and unix and mysql world. (See: The Unix PestilenceXah Lee's Computing Experience (Impression Of Lisp from Mathematica)The Condition of Industrial Programers)

Well, dead-end just as Emacs Lisp i'm spending my nights with in the past 4 years. LOL. And on that note, same thing can be said with haskell, OCaml.

Though, fringe langs are picking up these days. Remember Python, ruby, in year 2000? Who'd imagined they'd become mainstream. But it took 10+ years. 〔➤see Language, Purity, Cult, and Deception

Also got reminded my age recently. Someone on stackoverflow is asking about what are those “A:” and “B:” drives on Windows. (anyone heard of floppy drives?) In another incident, i was chatting to a friend, and the topic went to internet tech in 1990s, and i was telling him about how PHP (aka Pretty Home Page) came about, then naturally i discussed CGI. After a while, i realized, those who are around 20 years old today were under 10 in the 1990s. They wouldn't know what was CGI, and no amount of explanation can tell them exactly it was like, because it has become HISTORY — if you didn't live it, you can't feel it.

Nice typing race site. http://play.typeracer.com/. You can have a friend go to the site and compete typing speed with you.

What's the Most Readable Computer Language Syntax?.

Ultimate Xah Keyboard Layout (keyboard design)

Idiocy of Computer Language Docs: Unix, Python, Perl, Haskell.

On Windows, what's the difference between AppData/Roaming/ and AppData/Local/?

Basically, the “Roaming” dir is for useful user data, and the “Local” one is for data like cache. Things in Roaming dir might be synced with a server so the data is available to user on different machines.

The “AppData” dir is introduced with Windows Vista, and used in Windows 7 too. In XP, it just have “Application Data” dir. On Vista and later, any write to “Application Data” automatically goes to “AppData/Roaming/”.

Managing Roaming User Data Deployment Guide Source technet.microsoft.com