各プログラミング言語は、独自の方法で優れています。 ただし、誰もがこの声明に同意するわけではありません。 以下の資料を読んだ後、異議のランクは補充できます。 さらに、一部の「構築物」はプログラミング言語とはみなせないという意見もあります。
ウィキペディアによると、プログラミング言語はコンピュータープログラムを記録するために設計された正式なサインシステムです。 プログラミング言語は、プログラムの外観と、エグゼキュータが自分の制御下で実行するアクションを決定する一連の字句、構文、およびセマンティックルールを定義します。
いくつかの象徴的なシステムは習得が容易で、一部はより複雑です。 しかし、その中には非常に奇妙なものもあります。 そして非常に複雑なため、最も筋金入りの開発者だけがそれらをマスターします。
ブレインファック
このプログラミング言語の名前は、ロシア語の「頭脳除去」にほぼ対応しています。 この言語は本当に存在します。 1993年にアーバンミュラーによって造られました。 一つには、楽しみのために作られました。 一方、brainfuckは、世界で最も小さなコンパイラの1つである200バイト未満のサイズのコンパイラを開発するために作成されました。
ただし、brainfuckは、これまでに作成された中で最も非実用的な言語とも呼ばれます。 言語自体は8つのチームで構成され、プログラムはこれらのチームの組み合わせです。 これらのコマンドのほとんどは順番に実行されます。
プログラムにチーム以外のキャラクターが登場した場合、それらはコメントとして認識されました。 そして、悪名高い「Hello World!」のブレインファックは次のようになります。
++++++++++[>+++++++>++++++++++> +++>+<<<<-]>++.>+.+++++++..+++. >++.<<+++++++++++++++.>.+++.——. ——--.>+.>.
, brainfuck , .
– ( 1) , ASCII- , (70, 100, 30, 10). 10- 7, 10, 3 1, .
.
...
Befunge
, Befunge, . , – .
Befunge 1993 . , , . . Befunge 97- .
Befunge , , , , , . , , .
«Hello World»:
> v
@,,,,,,,,,,,,"Hello World!"<
:
Befunge . , . Befunge . . , – .
, . , . ( ) :
, 1980-. The Codeless Code. , Apple II, Apple ][.
, «». , , . , , .
- IDE, «» , .— . «» , .
, , Applesoft BASIC ( MS BASIC) . :
100 PRINT "&F2&B&H3&W2Hello, world!"
#2, , , , «Hello, world!» . , , Apple ][ — , .
, «», , , «Hello World» :
BB 11 01 B9 0D 00 B4 0E 8A 07 43 CD 10 E2 F9 CD 20 48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 21
, Assembler:
CODE SEGMENT
ASSUME CS:CODE, DS:CODE
ORG 100h
START:
mov ah,9
mov dx,OFFSET Msg
int 21h
int 20h
Msg DB 'Hello World',13,10,'$'
CODE ENDS
END START
, Assembler - , . . , .
Bloomberg , . 50- . , , . , , , .
1. ALGOL
1958 . « » — Algorithmic Language. . — 1958–1968.
. , . , , , -.
BEGIN
FILE F (KIND=REMOTE);
EBCDIC ARRAY E [0:11];
REPLACE E BY "HELLO WORLD!";
WHILE TRUE DO
BEGIN
WRITE (F, *, E);
END;
END.
: .
2. COBOL
1959 . Common Business-Oriented Language. , , «». COBOL — 60-80 . (, ..).
. 2000 COBOL , « 2000 ».
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
* simple hello world program
PROCEDURE DIVISION.
DISPLAY 'Hello world!'.
STOP RUN.
.
3. PL/I
1964 («» 1969 ). Programming Language One. IBM. — 1970-.
IBM System/360, — . , COBOL, FORTRAN . , . 1970-, . IBM , , PL/I, .
HELLO: PROCEDURE OPTIONS (MAIN);
/* A PROGRAM TO OUTPUT HELLO WORLD */
FLAG = 0;
LOOP: DO WHILE (FLAG = 0);
PUT SKIP DATA('HELLO WORLD!');
END LOOP;
END HELLO;
-.
4. PASCAL
1968 , . — 1980-. ALGOL, Apple.
1983 Turbo Pascal. , , 30 .
program HelloWorld;
begin
WriteLn('Hello, World!');
end.
: .
5. LISP
1958 , — List Processing. 60- . , , AI- .
(PRINT '«HELLO, WORLD!»)
.
6. APL
1962 , «A Programming Language». — , . APL 60-. . . : . ( , ).
, , — , , , .
@ This program is very simple in APL!
'Hello World!'
@ In APL, anything that is printed in quotes is printed to the terminal. (@ in APL signifies a comment)
@ If the "Hello World statement needed to be stored, then you could use the following :
h<-'Hello World'
h
@Typing h causes h's value to be printed to be printed.
.
7. FORTRAN
, Formula Translator. IBM . — 60-70 .
, .
program hello
print *, "Hello World!"
end program hello
.
8. LOGO
— «», «» «». 1967 MIT. , , . Arduino.
PRINT [Hello world]
.
9. ADA
, . 80- , . Ada .
with Text_To; use Text_To
procedure hello is
begin
put("Hello World");
end hello
, .