New programming language


  • Patron

    So, I’m looking into learning a new programming language, besides Javascript, and I thought you guys could give me some advice about that.

    These are my requirements:

    1. It must be a highly useful language

    Meaning that it’s cross-platform and has all kinds of interfaces for all kinds of APIs.

    2. It must be dynamically typed

    I just hate having to do type casting.

    3. It must be as much or less verbose than Javascript

    I’m tired of typ

    P.S: Lua seems seriously interesting…


  • LDG

    Maybe Python?

    1. Ubiquitous and cross-platform
    2. My understanding is that it’s strongly typed but dynamic
    3. I’ve seen some commands more terse than Ja


  • +1 for python! Given your requirements, Python is the best fit IMO. It’s a terrific general purpose language - from writing games, to running web servers, to running scripts, etc. It’s also pretty fast, and you can drop down and write functions in C if necessary (or, you can also use PyPy instead of CPython - the standard implementation). There’s also a very solid OpenCL wrapper (PyOpenCL) if you’re interested in GPU programming (the JS ones are still…meh). I’ve used python for various tasks for almost a decade and it’s always been a solid choice, but for me not the best fit for all tasks. Ruby is also another valid option (but I’m not a fan of Ruby). Python can also be concise, many times more so than Javascript.

    Sometimes the best tool to use is the one on hand. Overall, it might be worthwhile to investigate your goals. If you just want to mix it up a little bit and learn a slightly different language vs. new / different programming concepts, Python is probably your best bet . Languages are artifacts that allow you implement mental abstractions. It may be more interesting to discover new and different abstractions you’re not familiar with vs. a different syntax for implementing abstractions you’re already comfortable with. Consider functional programming (since you know Javascript, a good place to start is https://leanpub.com/javascript-allonge which tackles some FP concepts in JS - also, check out Scheme). I’d also recommend checking out Go ( http://golang.org/ ), it’s another language that may alter your way of approaching problems. I’ve been using it for the past year or so for various backend tasks, which is very well suited for, and it’s worked wonderfully.

    To get a little philosophical, creating mental abstractions for solving problems is the essence of programming - the way you actually implement those abstractions (i.e., python or ruby or javascript), is more of a secondary concern (but of course, the language can shape how you implement an abstraction).

    tl;dr - python, dude. http://imgs.xkcd.com/comics/python.png


  • Patron

    Thanks guys!

    I don’t have much interest in functional programming or anything like that. I just wanted to have an idea of how stuff works outside of the JS environment, as I’ve seen some guys ranting on the Tigs about it (saying that it’s not memory-efficient and stuff).

    Go seems really interesting, but I don’t like the idea of having to compile code…

    So, I guess I’ll check Python out. My uncle always wanted to get me into it anyways…

    What do you guys think about Lua? It seems to be kind of similar to Javascript, and I like the concept of tables.


  • Patron

    @Josue said:

    What do you guys think about Lua? It seems to be kind of similar to Javascript, and I like the concept of tables.

    Lua is most often used as a wrapper to a lower-level language (often C++). For example. the Corona SDK uses Lua as a cross-platform programming language to be able to target both iOS and Android. I believe the Unreal Engine also uses Lua to script events. This is by design. Lua is very embeddable. I don’t think I’ve ever seen it used stand-alone.

    Writing Lua feels a bit like Python blended with JavaScript. Corona SDK has a free Starter edition. Go ahead and take a stab at it if you are curious.


Log in to reply