The phrase я ошибся is past tense but doesn't include an л near the end. Are there any other examples of this phenomenon? I asked some native speakers and they couldn't think of any. One of them proposed that this might be a special property of the verbs that only have a form ending with -ся, but this isn't the case since the past tense for надеятся, смеяться, and улыбаться uses л.
There are a number of verbs that do not take "-л-" to form past masculine forms.
Those are verbs that have the stem ending in -с, -з, -б, -г, -к, -р in the past tense. For example,
нести -> нёс, спасти -> спас, трясти -> тряс, везти -> вёз, ползти -> полз, лезть -> лез, грызть -> грыз, грести -> грёб, скрести -> скрёб, ошибиться -> ошиб-ся, ушибить(ся) -> ушиб-(ся), мочь -> мог, умереть -> умер
Note that "-л-" is missing only in masculine forms. Feminine, neuter and plural forms all take "-л-".
я/ты/она несла, спасла, лезла, гребла, ошиблась, могла etc. мы/вы/они несли, спасли, лезли гребли, ошиблись, могли etc.
The explanation for this that I could find is that in Old Russian, short participle forms (that in modern Russian are used for past tense) took gender endings -ъ(masculine), -а(feminine), -о(neuter).
писалъ - писала - писало, моглъ - могла - могло
Later the weak reduced vowel -ъ was dropped, and pronouncing consonant clusters like "-сл-, -зл-, -бл-, -гл-, -кл-, -рл-" at the end of a word became more problematic. "-л-" was often devoiced or hard to pronounce in words like *спасл, *могл, *умерл and was later dropped as well.
It didn't happen with feminine, neuter and plural endings because there was a vowel following "-л-".