Just recently read this
While it is not always readily obvious whether a programming language is a toy language, there is at least one criterion that is generally applied: if a compiler or interpreter for the language can be written in the language, it’s no longer a toy. This is not always the final word however: it is trivial to write a compiler for Scheme in Scheme (considered by some a toy language), while Perl (considered by many a non-toy language) is (so far) still written in C.
Another test for a language to be considered not a toy is for the language to be powerful enough to implement an operating system. Whether this means that all purely interpreted or virtual machine languages are toys is left as an exercise for the reader.
Yeah, I know some languages that can compile themselves, and of course can be used to write OSes too.