• 时间:
  • 浏览:260
  • 来源:跟我学网络

No – I am not going to discuss the theoretical pros and cons of Scala and Python. Instead, I am going to talk about the practical issues startup founders like me face in establishing our main language.

The context: The core of is a mathematical framework involving highly structured data representations and numerical algorithms. The product involves a large relational database and is delivered through a web application. We wanted to move fast with our development, but we also wanted to build for scale and robustness. A compiled language like C++ was not in consideration because dev progress would be too sluggish. On the other hand, a web programming language like PHP was also not in consideration because it simply wouldn’t work for mathematical modeling.

Initial Thoughts: My first thought was Haskell. You say, “Haskell? Are you crazy?” Crazy– You got that right. It’s a very beautiful language and once you start coding in Haskell, you tend to get religious about functional programming. Lately, Haskell has become a fairly pragmatic language and is gaining popularity because of the emergence of functional programming paradigms in mainstream languages. However, people talked me out of it – although I am still considering Haskell as a choice for the future

The next thought was Scala. Scala is inspired by Haskell and is a more pragmatic functional programming language because of its interop with Java. I decided that Scala will be our core language and that we will program in Scala in the “Haskell-style”.