Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

There seems to be two major ways to set up a web server backend. You can use a L

ID: 651536 • Letter: T

Question

There seems to be two major ways to set up a web server backend. You can use a LAMP stack, with the server-side code in something like PHP or Python (or Ruby or JavaScript, which don't start with a P.) These scripting languages tend to be dynamically typed, with all of the disadvantages in performance, correctness and maintainabilty that dynamically typed languages bring, but it's easy to update the server because all the page generation logic is stored in external scripts.

The other major architecture style in wide use is ASP.NET, where the page generation logic is written in compiled code. This tends to use statically typed languages, so you get code that's had the benefit of a compiler, but all of the page generation logic is compiled into the server, which means if you need to change something, you have to take the server down and replace it with a new build.

So that makes me wonder. Are there any server-side scripting languages that use static typing, for the best of both worlds?

Explanation / Answer

UPDATE: More current solutions include AtScript

You should try Google Dart.

It has optional typing, which means that you can add type annotations that will be checked in 'checked' aka developer mode at runtime, but they are not required and the language provides many of the advantages of other dynamic languages like python. However, the editor will do type inference to try to help you find errors ahead of time. The dart VM is fast and can produce snapshots, which can accelerate startup time up to 10x. It also compiles down to javascript and it's fast.

The main downside here is that is a somewhat new technology, so there aren't as many libraries for it, and honestly, interoperability with javascript is not as simple as it should be. Also, the language is still in development, so there are breaking changes from time to time.

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote