3 ms·
To me, any language with a well defined semantics, consistent syntax, understandable error messages, strong (preferably static) typing is a good choice to learn
by yodsanklai 13y ago
To me, any language with a well defined semantics, consistent syntax, understandable error messages, strong (preferably static) typing is a good choice to learn programming. Also, it's important that you don't need to introduce many concepts to do simple things, which is typically the case with C# or Java.
For instance, consider Hello World in C#:
public class Hello {
public static void Main() {
System.Console.WriteLine("Hello, World!");
}
}
you have either to explain several difficult concepts or tell the students that there are some magical things going there that they'll understand later. To me, it's not really satisfying. In the end, it will work, but with extra confusion and risk of losing some students along the way.
compare this with "hello world" in ocaml:
print_string "hello world"
I'd much prefer to teach programming to a newbie in ocaml, python or pascal, rather than C#, Java, C++ or C.