I don’t know; it just got dropped at some point. Other examples: Calm*, balm*, psalm* (the P is also silent), salmon.
Note: Some Americans pronounce the L in the above mentioned words these days. This is a “spelling pronunciation”, and, in my opinion, wrong. But, who knows, maybe the standard will change in the coming decades.
Note that the L is also silent (with all speakers) in words like: Walk**, talk**, could, should, would. (The L in "could" was never ever pronounced; it's just there by analogy with "should" and "would".)
*The A is a broad-A.
**The A is an open-O.