A r t i c l e s
Navigation

Note: This site is
a bit older, personal views
may have changed.

M a i n P a g e

D i r e c t o r y

Stop The Multiple Language Insanity


People have come to realize that managing and speaking multiple spoken languages is a major waste of time. Imagine trying to maintain your software project if you are continually fiddling with multiple languages such as French, English, Chinese, Japanese, etc. What happens is that you get less work done on the software project, and you spend more time fiddling. The same goes for multiple-language countries and multiple-language websites.

Imagine all the paper and manufacturing costs wasted for a multilingual country such as Canada who has to print both French and English on each package. What if the country was trilingual? How would it ever fit three languages on the package? How about if the country spoke ten languages? Wouldn't this eventually cause so much stress, that some sensible reduction of duplication would be considered?

In perspective
The same goes with software. People are speaking all sorts of scripting languages, and learning all sorts of compiled languages. The amount of time people waste learning 10 scripting languages and 10 compiled languages is ridiculous. Some people toot about how learning multiple languages is just gaining more knowledge. This is false. Look back at the cereal/product box issue in a multi-lingual country. Eventually, having multiple languages on hand is useless, and a waste of resources. Trying to fit 10 languages on the Cheerios cereal box is stressful, and a waste of time.

In software, it is more important to grasp very different languages than it is to grasp similar languages. For example - grasp functional concepts, imperative concepts, OOP concepts. But try not to waste too much time trying 35 languages that all do the same thing (Java, Perl, Python, Ruby, PHP, ASP, etc.)

It's hard - since we have all these products to choose from - isn't it?


Ektron says:

"ASP + ASP.NET + PHP + JSP + ColdFusion
= Unlimited Content Flexibility"

PasWiki says:

"ASP + ASP.NET + PHP + JSP + ColdFusion
= Unlimited Time Wasted Learning Many Languages That Do The Same Thing"

Someone says:

"we have a plethora of scripting languages available on our platform"

PasWiki says:

"we have a plethora of time to waste installing, configuring, writing, and maintaining scripts in several different languages"

Some languages will have a few more features than the other language.. but does Chinese, Japanese, German have any more extremely useful features than the other? Can't we just get along, and improve one powerful language to make it the best? This is what they have done with HTML. You don't see one website using BVTML, Another using TML, another using YML, another using GML, another using RML, another using JML, another using OML. Do we have to have these egotistic thinkers who feel "We need all sorts of little businesses and programming languages in our town, especially the small mom and pop style ones who only sell one item. I like to get my milk at one store, my meat at another store, my cereal at another store, vegetables at another store, fruit at another store, juice at another store, sugar at another store, flour at another store,.. oh, and I waste twice as much gas and resources driving to each store, oh and I also never get any programming done because I'm too busy driving around wasting time and resources".

Operating System Language?

Unfortunately commonly we see people use Perl, Bash, Java, C++, C, Python, Ruby, Delphi, Pascal, etc. to maintain the operating system. But is it necessary? Would one powerful major language be useful for many tasks?

I think an interesting operating system would one similar to UCSD Pascal (but let's kill Pascal as it has failed). Everyone writes shell scripts (actually just programs) in something like Qompute (a quick fast language without allocating your own strings like in Cee) to replace Bash, Perl, Python, Ruby, Delphi, Pascal, C++, Java, batch files, etc. All these languages do similar things.. why have them all?

Why write batch files in one language and programs in another? A batch program is still a program. We just need quick useful modules that make programming in the language easy. i.e. instead of using shell scripts, just use a "shell" module for your language.

This shell module shouldn't require heavy handed Ada style programming.. but quick stack based objects without free and create, or simple procedures and one of style imperative calls.. just like how a batch script is. And it can be done - fpmake by the FPC team is a batch tool, and my build system for powtils is a build tool.

Other tricks are making a compiler run the program right after it compiles it, instead of the person having to separately compile and run the program (even worse, separate linking).

Even Apple used pascalscript at one time.. but I think pascal isn't quick enough and that Qompute style is more suited.

UCSD Pascal (operating system and language) along with Oberon (operating system and language) had similar ideas.. with it all consistently being pascal to run and maintain the system (less need for perl, python, but sure if you want to install it you could). Again, though, I think Pascal's verbosity is the problem and people would more prefer something quicker like Qompute syntax. The Cee language would never work as a batch/general purpose language because it requires tedious memory allocations and is not suited for prototyping.

About
This site is about programming and other things.
_ _ _