I don't think it's actually fair to say Elixir has a type system. There are expressions that are specially handled at the compiler level, but are mostly ignored unless you invoke another separate system. It's effectively comments that have syntax.
It has a gradual type 'system', along with a means of type checking (via Dialyzer) at compile time. However the type checking isn't enforced at compile time, and it has the possibility for some false negatives (though it isn't so bad in experience).
Okay then by that measure comments with details about input and output are also a type system, an even easier one since there's generally only one syntax rule!
Functions can have pattern matching and guards which act as type safety measures, granted they are runtime and not as robust as, say, rust’s type system
Not part of the official language spec, but Ruby has Sorbet, from a company who employs Ruby core contributors and helped with the recently released JIT additions to the language, among countless other contributions over the last couple decades.
The work on the type System seems to be going well and the work on machine learn is starting to get attention