Language that is sneaking up on me

Discussion in 'App Development' started by nitro, Jan 27, 2014.

  1. nitro

    nitro

    Inspite of what you read on ET, a language with certain features makes a huge difference for 98% of all programmers, maybe all programmers. However, the language of choice is not that important the smaller the project is or the lower the realtime demands of the running program has.

    For example, in High Frequency Trading, provability is extremely important since bugs can bankrupt a business. So functional programs (as close to pure as possible) are critical.

    Expressiveness is another important aspect of a language. The smaller the equivalent two programs are, usually it is easier to understand the smaller program unless the language itself is terse. So once again, easier to understand usually means less bugs.

    A language should support concurrency and parallelism in a safe expressive way. This is probably the hardest thing to get right in modern languages, and leads to all sorts of bugs, EVEN by languages that are pushed by "experts".

    Finally, there is a programming style where instead of writing programs in a language, you first build a language where the problem space is very naturally expressed in this language, THEN write your program ontop of this language. These are often called DSLs in modern parlance. Some languages make this very pleasant, and they are highly desirable.

    Choosing the "correct" language for a given project is not a trivial issue, but the above reasons can give a person a clearer idea as to why the way a language is constructed from the ground up can have such a huge impact on productivity and correctness.
     
    #11     Jan 30, 2014
  2. 2rosy

    2rosy

    you don't have to be good to be productive. you can be productive in a few weeks.
     
    #12     Feb 9, 2014
  3. 2rosy

    2rosy

    do you have a code repo somewhere? github?
     
    #13     Feb 9, 2014
  4. nitro

    nitro

    I have a private one.
     
    #14     Feb 12, 2014
  5. Hey nitro,

    I'm fairly new to programming and have a much shorter list of languages under my belt (R, Python, Matlab, SQL and currently learning C to progress later to ++)
    I use mostly python for my coding, but I spend more and more time working with SQL since a lot of the problems I face have to do with moving and accessing a lot of data quickly.

    So I was a bit surprise to see that you didn't add SQL to your list... do you use a DB for your systems?
     
    #15     Feb 19, 2014
  6. nitro

    nitro

    To me, knowing SQL is not optional. I only listed those languages in which we do most of our domain programming in. All of us (old timers anyway) have to do SQL regardless of the language we program in, at least unless you wrap SQL inside abstractions like ORMs like Microsofts Entity Framework etc. So yes I know enough SQL to get by in 99% of the things that matter to me.

    I haven't listed all sorts of other things ("languages") that you need to know if you program for the markets, for example, FIX.

     
    #16     Feb 19, 2014
  7. Ah ok, yeah, that makes a lot of sense... :)
     
    #17     Feb 19, 2014
  8. sprstpd

    sprstpd

    Check out nimrod.
     
    #18     Feb 19, 2014
  9. 2rosy

    2rosy

    do you use nimrod? I was just looking at that to generate javascript.
     
    #19     Mar 6, 2014
  10. sprstpd

    sprstpd

    Just dabbled with it. I wanted to try out the Aporia editor for it just to check it out but I would have to recompile the latest head of nimrod for that to work on my machine. Since I am tight on time for the moment, I have pushed that aside for now. It definitely seems like an interesting and fast language but I'm not an expert.
     
    #20     Mar 6, 2014