Icon

Language Icon it inherits the ideology of the language Snobol. The name of language has nothing in common with "ikonkami", but it is reduction from the word "iconoclastic" (iconoclast), utilized in the sense of fight with the conformism in the development of the languages of programming.

Language Icon has much general, bringing together it with the languages logical programming, so Christopher he writes: "the largest difference between Icon'om and other languages of programming - this that that expression Icon'a - generators."

Example of the use of the generator:

    procedure main()
    L:= [ "1", "22", "333" ] # the list of the lines
    every writes("",! L)
    end
    ----
    Output: 1 22 333

Language is not tipizirovannym, it has the built-in powerful types of data. Procedures in Icon'e "relate to the values of the first class (first class values, that it indicates the possibility of taking by the variable of the values of procedures themselves, but not the results of their fulfillment). There is a mechanism of with- expressions (co -expression), that makes it possible to create co-programs. Also Icon is extended in accordance with the license .

Ideas undertaken and tested from language Icon and Snobol they were subsequently (naturally with some simplifications, which optimize fulfillment on the speed) they are transferred in the language , and so consequently in Unix medium and many other languages of the programming (this it especially concerns the constructions of those containing "& &" or "||", and so regular expressions), for example:

[ $ringing!= 0 ]&&.echyuo Phone ringing!!!

So konstrukiya shell:

 xview -.root of `.gtk-syuell -.t "Which image?"-.fs`

If 4 I will not select the name of file- picture xview all -equal it will be neglected in any event. However, in the style of language Icon this never it occurred.

The analogs of regular expressions are the part of the language itself, making it possible to use systems of working the text of unconfined complexity, not for free Icon, it is considered the language of writing compilers.

The wide flexibility of language, makes it possible to write very large kolichesto of actions, without decreasing in this case the readability of text.

The most developed continuation Icon, is the language Unicon, so extended on , purpose of which is the greatest integration of ideas Icon s Unix by medium.


| | | ALGOL 68 | APL | | Awk | | Brainfuck | | Objective- h | Si++ | | COBOL | | | | | | FoxPro | | INTERCAL | Io | | | JOVIAL | | | Log | Limbo | Lua | Mesa | | Modula-2 | | | Occam | | | | Pike | | PL/M | PL/SQL | | Postskript | | | | REFAL | REXX | | sh | | | Self | Simula | | | xBase | Eiffel

 

  > Russian to English > ru.wikipedia.org (Machine translated into English)