Personally I'm a fan of the Swift approach even if it does balloon the keyword count a bit.
Also better to trust the end used to decide what trade offs they want to make. For instance code that converts a user click to a database query, clean and understandable is more important than performance. If it takes 10ns or 10ms the user ain't going to know the difference.
SQLite has 147 keywords - https://www.sqlite.org/lang_keywords.html .
I see there's "ZERO", "ZEROES", and "ZEROS" - I didn't realize that both plurals are acceptable in English! - https://english.stackexchange.com/questions/3824/what-is-the... .
My favorite reserved word on that list is "KANJI". From https://www.ibm.com/docs/en/cobol-zos/4.2?topic=expressions-... :
> The class condition determines whether the content of a data item is alphabetic, alphabetic-lower, alphabetic-upper, numeric, DBCS, KANJI, or contains only the characters in the set of characters specified by the CLASS clause as defined in the SPECIAL-NAMES paragraph of the environment division.
And while some vb6 code is truly terrible, it isn't because of keywords. It's because beginners have no idea what they are doing.
So I imagine Swift code may be terrible because there are a lot of noobs out there doing whatever it takes to ship.
From Wikipedia: "Some Lisp control structures are special operators, equivalent to other languages' syntactic keywords."