Hello World – “Aum” of Programming

It has been quite a long time since I set up my developer blog. Blog name decided. Blogger engine installed. Themes selected. Then I changed my CMS engine a couple of times; need not add, updated themes a lot more times. What I never did, however, was to post anything to my blog. Not because, I didn’t had the idea of what I wanted to do with my blog but because of some other reason. In fact, I had already collected quite a few interesting stuffs and some must have gone out of date due to the delay. So why didn’t I post? Well answer is ridiculously simple (or will you say simply ridiculous). I couldn’t decide what should be the first post. Yes, the first Post. And then… It all struck to me last night. And now when I think of it, why didn’t it strike me earlier. Well now you know. What I really wanted to start was with a “Hello World”. Of course, since time immemorial, it has been our tradition to start with a “Hello World”. So how old is exactly this time immemorial?


Well to be exact the concept first gained universal audience and acceptance when it appeared in the famous white book “The C Programming Language” authored by Brian Kernighan and Dennis Ritchie. This book, published in 1977, apart from giving the first introduction to C Language, also served as the un-official standard for the C language till it was formally standardized by ANSI in 1989. Anyway as far as “Hello World” Program is concerned, it was inherited from an internal Bell Laboratories memorandum by Brian Kernighan, Programming in C: A Tutorial, which dates back to 1974. So let us have a look at this first version of “Hello World”.

main(){
    printf("Hello, World");
}

However, it would be unfair to call it the first known implementation of Hello World. For the credit of being the first should go to Kernighan’s own earlier tutorial of 1972 titled Introduction to the Language B. The only fundamental data type available on that particular implementation was 4 byte long Machine word and as such the first ever implementation of Hello World known to the computerkind (like in mankind) was done in a comparatively lesser known language using a rather obscure syntax due to the limitation of implementation. Let us have a look at that (pre) historic piece of code:

main( ) {
extrn a, b, c;
putchar(a); putchar(b); putchar(c); putchar('!*n');
}

a 'hell';
b 'o, w';
c 'orld';

 

 

You can notice Hello,World is broken up in three parts of 4 bytes each due to limitation, I mentioned above. Also conspicuous is assignment operator by its absence.

So which is my version? Should I began thinking which one should be my signature on my blog space? Hello World using C or C++, Java or C#, Desktop or Web application or Web Services? Or Should I use WCF, WPF or WF to say “Hello World”. However the idea got solidified in a time lesser than it took to compose these last two lines. So here is my version of Hello World which is my signature on this blog space:

10 PRINT "Hello , World"
20 END

RUN

Hello, World

So, what language is this? I will not be surprised if either you recognized it or failed to do so. It is one of the earlier avatars of Basic language and I used it under the name of BASICA and GWBASIC. It enjoyed its days of glory in early nineties. So why have I chosen GWBASIC? Well this was the first programming language I had touched during my school days. And I sincerely feel I had missed writing the “Hello,World” application then. So I guess I must now do this to pay my honour both to the language and the Tradition. Seem to be fitting beginning. Isn’t it?

 

Foot note: I am a big fan of Hello World concept. However, bigger fans have collected a comprehensive list of Hello World application in scores of different programming languages. Should you wish to have a reference of different language implementations you may check at these links:

2 Replies to “Hello World – “Aum” of Programming”

  1. Hey Vivek,

    Just curious to know the Board from which you did your schooling.
    I have also used GWBASIC in my school days.
    I am from ICSE background which during my time (if i am not wrong)
    was the only board offering it in the curriculum.

Leave a Reply

Your email address will not be published. Required fields are marked *