Comment Re:Don't repeat yourself in a multilingual project (Score 1) 170
An application can be separated into logic and presentation, or model and view, however your framework prefers to describe them. A program may require separate presentation for each platform, but versions of a program for multiple platforms should ideally share the logic. But some platforms strongly recommend or even require use of certain languages. How can a programmer follow the rule of not repeating yourself to share logic across languages? Say I developed a game in Java or Objective-C but I want to port it to a Microsoft platform that allows only C#. (In theory it allows any language that compiles to verifiably type-safe
I don't think writing logic should be a gating factor that keeps a developer from using the right tool for the job, or keep a developer or a community locked in single language programming hell. There are edge cases (I've worked on an Android/iOS app that kept a bunch of code in JavaScript because it runs on both), but this doesn't even make the answer automatically "Java". I could very well say that developer should just go learn JavaScript because it runs on everything.
But more to the point, I don't usually see server architectures and client architectures sharing too much in the way of logic code, and the code they share typically isn't that complex, and doesn't usually require much work to port from one language to the next.