السلام عليكم ،
كمقدمة كلاسيكية : Hello World هو أول برنامج وأبسط برنامج ستكتبه باستخدام لغة برمجية ما ، وكثير من مطوّري لغات البرمجة أو المكتبات التي تعتمد على لغات برمجية ، يحاولون استعراض عضلاتهم بمدى سهولة وتنظيم " التطبيق الأول " ، باعتبار أن كل من سيقرأ Hello World سيستمر في رحلة التعلّم أو أن يصاب بصدمة نفسية تقضي على المسيرة مبكراً ( إن كان له الخيرة من أمره ) .
الـ Wikiيقول ، إن كتاب Programming in C: A Tutorial ، هو من أوائل من احتوى على هذه الجملة لكتابة تطبيق يطبع Hello Word :
#include <stdio.h>
int main()
{
printf("hello, world");
return 0;
}
أمّا النطبيق الأول على الاطلاق فقد يكون حدث في عام 1972 في Kernighan's Tutorial Introduction to the Language B :
main( ) {
extrn a, b, c;
putchar(a); putchar(b); putchar(c); putchar('!*n');
}
a 'hell';
b 'o, w';
c 'orld';
يمكنك من خلال موقع http://hellowiki.org ، الاطلاع بشكل سريع على الـ Hello World للغات برمجية كثيرة .
Hello World للغات غريبة
لغة Brainfuck
( لا تستغرب جمال الاسم ، فستعرف لماذا الآن ) ، و Hello World الخاص بها والذي يطبع جملة Hello World على الشاشة :
+++++ +++++ initialize counter (cell #0) to 10
[ use loop to set the next four cells to 70/100/30/10
> +++++ ++ add 7 to cell #1
> +++++ +++++ add 10 to cell #2
> +++ add 3 to cell #3
> + add 1 to cell #4
<<<< - decrement counter (cell #0)
]
> ++ . print 'H'
> + . print 'e'
+++++ ++ . print 'l'
. print 'l'
+++ . print 'o'
> ++ . print ' '
<< +++++ +++++ +++++ . print 'W'
> . print 'o'
+++ . print 'r'
----- - . print 'l'
----- --- . print 'd'
> + . print '!'
> . print '\n'
فعلاً ، اسم على مسمّى :/ .
لغة Whitespace
طبعاً كسابقتها ، فالاسم على مسمّى ، ولتطبق جملة Hello World ، ستحتاج إلى أن تستخدم إبهامك مئات المرّات لتصل إلى Space بسرعة :
| | | |
| | | | | | | | | | |
| | | | | | | |
| | | | | | | | | | |
| | | | | | | | |
| | | | | | | | | | |
| | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
| | | | |
| | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | |
| | | |
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
| | | | | | | |
| | | | | | | | | | |
| | | | | | | |
| | | | | | | | | | |
| | | | |
| |
| | | | | | |
empty-line
| | | | | |
empty-line
| | | | | |
empty-line
| | | | | |
| |
| | | | | | |
| | | | |
empty-line
| | | |
empty-line
| | | | | |
empty-line
empty-line/EOF
لغة LOLCODE
غرابة اللغة بأسلوبها ، وليس بتعقيدها هذه المرة ، وهذا Hello World مناسب :
HAI
CAN HAS STDIO?
PLZ OPEN FILE "LOLCATS.TXT"?
AWSUM THX
VISIBLE FILE
O NOES
INVISIBLE "ERROR!"
KTHXBYE
التفسير البشري لبعض الجمل سيكون : Please try to open a file ، و Okay thanks, bye !
لغة Ladder Logic
لا أعرف Hello World لها ، ولكن أعرف أنها بشعة بما يكفي :
| X001 Y001 Y001 |
|-| |---|/|---[01000 TON T002]-[01000 TOF T003]---------( )--|
| |
| X001 Y002 |
|--| |----+---------------------------------------------( )--|
| | |
| Y002 | |
|--| |----+ |
| |
| X001 R006 |
|--| |--|/|--[01000 TON T004]-----+-------[D150 + 1 -> D150]-|
| | R006 |
| +---[01000 TOF T005]--( )--|
| |
| Y003 |
|-[D150 >200]-------------------------------------------( )--|
| |
| Y003 |
|-| |-----------------------------------------[ 0 MOV D150]--|
| |
|--{END}-----------------------------------------------------|
أخيراً :
خطر ببالي الموضوع بينما كنت أقرأ أحد مواضيع programmers.stackexchange.com ، الموقع يبدو رائع .
كثير من اللغات السابقة تتبع تصنيفEsoteric programming languages ،