There's so many languages out there, I reject Raku out-of-hand simply since IMO the type should follow the variable name.
You mean like:
my $a of Int = 42; say $a; # 42
my $a of Int = "foo";' # Type check failed in assignment to $a; expected Int but got Str ("foo") ?
hmmm Raku is C style
int number; … you choose Pascal style number : Integer;
You mean like:
or