Companies using DSLs with Functional Programming Languages

One of the questions that has been lingering in the back of my mind for a long time is “When should a company use a DSL?”. My stock answer has always been “When it makes sense.”
Perhaps a better way is to answer that question is to look at how companies are actually using them today, rather then to simply guess!
Have a look at the “case studies” section in this presentation on ContractML to see how companies are using DSLs today.
(via cufp)

Why mathematics is not fun (when it should be!)

One man’s lament.
(thanks jfm)
Addendum: 8/6/8
On vacation, I re-read this, and wanted to share some interesting bits:

  • p5. Mathematics is the art of explanation.
  • p6. Math is not about following directions, it is about making new ones.
  • p7. It isn’t doing anyone any good having vague memories of formulas and clear memories of hating them.
  • p11. Teaching is not about information. It’s about having an honest intellectual relationship with your students. Teaching means openness and honesty, an ability to share excitement, and a love of learning.
  • p21. Mathematics is about removing obstacles to our intuition, and keeping things simple.

Switching Caps Lock with Control on Windows

Getting the control key “back into the right spot” on PC keyboards is a goal shared between Emacs and UNIX folks. The following are a collection of links on how to do so (this list is sure to grow):

Addendum: 10/01/08
The Sysinternals solution is excellent, but it throws away caps lock. This was fine for me for a while, but believe it or not, now I need it back. As such, I now employ the solution found here.

Addendum: 1/11/11
This approach does not work on Windows 7 (I just started using Win7 this week).
KeyMapper works brilliantly though.
(via emacswiki)
Addendum: 2014-12-10

Coming back to Windows I found that KeyMapper quit working for me.

AutoHotkey seems to be doing the job of swapping:

  • caps lock with left control
  • left control with caps lock
  • enter with right control
  • right shift with enter
    • Seems to be the best way to use any keyboard out there
  • scroll up and down on the wheel mouse

Alt (Meta) - Enter doesn’t seem to work.

I’ll keep at it. Here is the config.

WheelUp::
Send {WheelDown}
Return
WheelDown::
Send {WheelUp}
Return
Capslock::Ctrl
LCtrl::CapsLock
Enter::RCtrl
RShift::Enter