Сравнение языков программирования (синтаксис) - Comparison of programming languages (syntax)

Это сравнение языки программирования сравнивает особенности синтаксис языка (формат) для более чем 50 языков программирования.

Выражения

Язык программирования выражения можно в целом разделить на четыре синтаксических структуры:

префиксная запись
  • Лисп (* (+ 2 3) (исключение 4 5))
инфиксная запись
суффикс, постфикс или Обратная польская запись
математическая запись
  • УЧИТЕЛЬ (2 + 3)(45) $$ обратите внимание на неявный оператор умножения

Заявления

Язык программирования заявления обычно есть соглашения для:

  • разделители операторов;
  • терминаторы операторов; и
  • продолжение строки

Разделитель операторов используется для разграничения границ между двумя отдельными операторами. Терминатор оператора используется для обозначения конца отдельного оператора. Языки, которые интерпретируют конец строки как конец оператора, называются «строчно-ориентированными» языками.

«Продолжение строки» - это соглашение в строчно-ориентированных языках, где символ новой строки потенциально может быть неверно истолкован как терминатор оператора. В таких языках это позволяет одному оператору занимать более одной строки.

ЯзыкРазделитель-терминатор операторовВторичный сепаратор[1]
ABAPразделенный период
Адаточка с запятой завершается
АЛГОЛточка с запятой разделена
АЛГОЛ 68точка с запятой и запятая разделены[2]
APLперевод строки завершен отделенный
AppleScriptперевод строки завершен
AutoHotkeyперевод строки завершен
БАЗОВЫЙперевод строки завершендвоеточие отделено
Буперевод строки завершен
Cточка с запятой завершает операторызапятая разделяет выражения
C ++точка с запятой завершает операторызапятая разделяет выражения
C #точка с запятой завершается
КОБОЛразделенные пробелами, иногда через точку, необязательно через запятую и точку с запятой.
Кобраперевод строки завершен
CoffeeScriptперевод строки завершен
CSSточка с запятой разделена
Dточка с запятой завершается
Эйфельперевод строки завершенточка с запятой
Erlangдвоеточие отделено, точка завершена
F #перевод строки завершенточка с запятой
Фортранперевод строки завершенточка с запятой
Четвертыйточки с запятой завершают определения слов
GFA BASICперевод строки завершен
Идтиточка с запятой (вставляется компилятором)
Haskell (в до-нотации)новая строка разделена
Haskell (в do-нотации, когда используются фигурные скобки)точка с запятой разделена
Яваточка с запятой завершается
JavaScriptразделены точкой с запятой (но иногда неявно вставляются в символы новой строки)
Котлинразделены точкой с запятой (но иногда неявно вставляются в символы новой строки)
Luaразделенные пробелами (точка с запятой необязательно)
Mathematicaточка с запятой разделена
MATLABперевод строки завершенточка с запятой или запятая[3]
Object Pascal (Delphi )точка с запятой разделена
Цель-Cточка с запятой завершается
OCamlточка с запятой разделена
Паскальточка с запятой разделена
Perlточка с запятой разделена
PHPточка с запятой завершается
Выбрать базовыйперевод строки завершенточка с запятой разделена
PowerShellперевод строки завершенточка с запятой разделена
Прологчерез запятую (соединение), через точку с запятой (дизъюнкцию), точку с завершением (предложение)
Pythonперевод строки завершенточка с запятой
Ракуточка с запятой разделена
Красныйразделены пробелами
Рубинперевод строки завершенточка с запятой
Ржавчинаточка с запятой завершает операторызапятая разделяет выражения
Scalaновая строка завершена (точка с запятой необязательна)точка с запятой
Семя7разделенные точкой с запятой (завершение точкой с запятой допускается)
Симулаточка с запятой разделена
Сленгточка с запятой разделена
Болтовняразделенный период
Стандартный MLточка с запятой разделена
Swiftточка с запятой (вставляется компилятором)
Visual Basicперевод строки завершендвоеточие отделено
Visual Basic .NETперевод строки завершендвоеточие отделено
Язык Wolfram Languageточка с запятой разделена
Xojoперевод строки завершен
ЯзыкРазделитель-терминатор операторовВторичный сепаратор[1]

Продолжение линии

Продолжение строки обычно выполняется как часть лексический анализ: новая строка обычно приводит к добавлению токена в поток токенов, если не обнаружено продолжение строки.

Пробел - Языки, не требующие продолжения
  • Ада - Строки заканчиваются точкой с запятой
  • C # - Строки заканчиваются точкой с запятой
  • JavaScript - Строки заканчиваются точкой с запятой (что может означать)
  • Lua
  • OCaml
Амперсанд как последний символ строки
Обратная косая черта как последний символ строки
Обратная кавычка как последний символ строки
Дефис как последний символ строки
Нижнее подчеркивание как последний символ строки
Многоточие (как три точки - не один специальный символ)
  • MATLAB: Токен с многоточием не обязательно должен быть последним символом в строке, но любые следующие за ним будут игнорироваться.[6] (По сути, это начинается с комментария, расширяющего через (т.е. включая) первый последующий символ новой строки. Сравните это со встроенным комментарием, который расширяет до тех пор первый последующий перевод строки.)
Разделитель запятых как последний символ строки
  • Ruby (комментарий может следовать за разделителем)
Разделитель левой квадратной скобки как последний символ строки
Оператор как последний объект линии
  • Ruby (комментарий может следовать за оператором)
Оператор как первый символ продолжения строки
  • AutoHotkey: Любые операторы выражения, кроме ++ и -, а также запятой или точки.[8]
Обратная косая черта как первый символ продолжения строки
Некоторая форма встроенный комментарий служит продолжением линии
Позиция персонажа
  • Фортран 77: Строка без комментария является продолжением предыдущей строки без комментария, если какой-либо непробельный символ появляется в столбце 6. Строки комментариев не могут быть продолжены.
  • КОБОЛ: Строковые константы могут быть продолжены, не заканчивая исходную строку в предложении PICTURE с ', а затем вставив - в столбце 7 (то же положение, что и * для комментария используется.)
  • УЧИТЕЛЬ: Строки, начинающиеся с табуляции (после любого отступа, требуемого контекстом), продолжают предыдущую команду.
[Конец и начало] с использованием обычных кавычек
  • C и C ++ препроцессор: строка заканчивается нормально и продолжается, начиная с кавычки в следующей строке.

Библиотеки

К импорт а библиотека это способ чтения внешних, возможно, скомпилированных подпрограмм, программ или пакетов. Импорт можно классифицировать по уровню (модуль, пакет, класс, процедура, ...) и по синтаксису (имя директивы, атрибуты, ...)

Импорт файла


Импорт пакета


Импорт класса
  • из модуль импорт класс Python
  • импорт класс Сокол
  • импорт пакет.класс Ява, MATLAB, Котлин
  • импорт класс от "имя мода";, JavaScript
  • импорт {класс} из "имя мода";, JavaScript
  • импорт {класс так как altname} из "имя мода";JavaScript
  • импорт пакет.класс, Scala
  • импорт пакет.{ class1 => альтернативное имя, класс2 }, Scala
  • импорт пакет._Scala
  • использовать NamespaceClassName;, PHP
  • использовать NamespaceClassName как AliasName; PHP
Импорт процедуры / функции
  • из модуль импорт функция Python:
  • импорт package.module : символ;, D:
  • импорт package.module : altsymbolname = символ; D:
  • импорт Модуль (функция) Haskell:
  • импорт функция от "имя мода";, JavaScript:
  • импорт {функция} из "имя мода";, JavaScript:
  • импорт {функция так как altname} из "имя мода";JavaScript:
  • импорт пакет.функция MATLAB:
  • импорт пакет.класс.функция, Scala:
  • импорт пакет.класс.{ функция => альтернативное имя, otherFunction }Scala:
  • используйте модуль ('символ');Perl:
  • использовать функцию Пространство имен;, PHP:
  • использовать Пространство имен имя_функции как псевдоним_функции; PHP:
  • использовать модуль::подмодуль::символ;, Ржавчина:
  • использовать модуль::подмодуль::{символ1, символ2};, Ржавчина:
  • использовать модуль::подмодуль::символ так как altname; Ржавчина:


Постоянный импорт
  • использовать const Пространство именCONST_NAME; PHP

Вышеупомянутые операторы также могут быть классифицированы по тому, являются ли они синтаксическим удобством (позволяя ссылаться на вещи по более короткому имени, но они все равно могут ссылаться на какое-либо полностью определенное имя без импорта) или действительно ли они необходимы для доступа код (без которого невозможно получить доступ к коду, даже с полностью определенными именами).

Синтаксическое удобство
  • импорт пакет.* Ява
  • импорт пакет.класс Ява
  • открыто модуль OCaml
Требуется код доступа
  • import altname "имя пакета" Идти
  • импорт altname от "имя мода";JavaScript
  • импорт модульPython

Блоки

А блокировать - это обозначение группы из двух или более операторов, выражений или других единиц кода, которые связаны таким образом, чтобы составлять единое целое.

Фигурные скобки (также известные как фигурные скобки) { ... }
Скобки ( ... )
Квадратные скобки [ ... ]
  • Болтовня (блоки - это объекты первого класса, также известные как замыкания)
начать ... конец
делать ... конец
делать ... сделанный
делать ... конец
  • Lua, Рубин (передать блоки как аргументы, за петля), Семя7 (охватывает тела петель между делать и конец)
ИКС ... конец (например. если ... конец):
  • Рубин (если, в то время как, до тех пор, def, класс, модуль заявления), OCaml (за & в то время как петли), MATLAB (если & переключатель условные, за & в то время как петли, пытаться пункт пакет, classdef, свойства, методы, События, & функция блоки), Lua (тогда / еще & функция)
(начать ...)
(прогноз ...)
(делать ...)
Отступ
Другие
  • Ада, Visual Basic, Семя7: если ... конец, если
  • APL: :Если ... : EndIf или :Если ... :Конец
  • Баш, ш, и кш: если ... фи, делать ... сделанный, кейс ... esac;
  • АЛГОЛ 68: начать ... конец, ( ... ), если ... фи, делать ... od
  • Lua, Паскаль, Модула-2, Семя7: повторение ... до тех пор
  • КОБОЛ: ЕСЛИ ... КОНЕЦ-ЕСЛИ, ВЫПОЛНЯТЬ ... КОНЕЦ ВЫПОЛНЕНИЯи т.д. для выписок; ... . для предложений.
  • Visual Basic .Net: Если ... Конец, если, За ... Следующий, Делать ... Петля
  • Маленький Базовый: Если ... Конец Если, За ... EndFor, В то время как ... Конец

Комментарии

Комментарии можно классифицировать по:

  • стиль (встроенный / блок)
  • правила синтаксического анализа (игнорируются / интерполируются / сохраняются в памяти)
  • рекурсивность (вложенность / не вложенность)
  • использует (строки документации / одноразовые комментарии / другое)

Встроенные комментарии

Встроенные комментарии - это обычно те, которые используют новая линия символ для обозначения конца комментария и произвольный разделитель или последовательность жетоны для обозначения начала комментария.

Примеры:

СимволЯзыки
CФортран I в Fortran 77 (C в столбце 1)
REMБАЗОВЫЙ, Пакетные файлы
::Пакетные файлы, COMMAND.COM, cmd.exe
NB.J; от (исторически) общепринятой аббревиатуры Nota Bene на латыни означает «хорошо заметь».
APL; Мнемоника состоит в том, что глиф (пораженный обувью) напоминает настольную лампу и, следовательно, «освещает» все вышесказанное.
#Оболочка Борна и другие Оболочки UNIX, Кобра, Perl, Python, Рубин, Семя7, Windows PowerShell, PHP, р, Делать, Клен, Эликсир, Ним[10]
%TeX, Пролог, MATLAB,[11] Erlang, Сленг, Визуальный пролог
//ActionScript, С (C99), C ++, C #, D, F #, Идти, Ява, JavaScript, Котлин, Object Pascal (Дельфи), Цель-C, PHP, Ржавчина, Scala, SASS, Swift, Xojo
'Обезьяна, Visual Basic, VBScript, Маленький Базовый, Гамбас, Xojo
!Фортран, Базовый Плюс, Информ, Выбрать базовый
;Сборка x86, AutoHotkey, AutoIt, Лисп, Common Lisp, Clojure, Ребол, Красный, Схема
--Эйфория, Haskell, SQL, Ада, AppleScript, Эйфель, Lua, VHDL, SGML, PureScript
*Ассемблер S / 360 (* в столбце 1), КОБОЛ I в COBOL 85, Лапа, От Fortran IV до Fortran 77 (* в столбце 1), Выбрать базовый
||Завиток
"Vimscript, ABAP
Четвертый
*>COBOL 90

Заблокировать комментарии

Блочные комментарии - это, как правило, те, в которых используется разделитель для обозначения начала комментария и другой разделитель для обозначения конца комментария. В контексте, пробел и новая линия символы не считаются разделителями.

Примеры:

СимволЯзыки
комментарий ~ ;АЛГОЛ 60, SIMULA
¢ ~ ¢,
# ~ #, co ~ co,
комментарий ~ комментарий
АЛГОЛ 68[12][13]
/* ~ */ActionScript, AutoHotkey, С, С ++, С #, D,[14] Идти, Ява, JavaScript, Котлин, Цель-C, PHP, PL / I, Пролог, Rexx, Ржавчина (могут быть вложенными), Scala (могут быть вложенными), SAS, SASS, SQL, Swift (могут быть вложенными), Визуальный пролог, CSS
#cs ~ #ceAutoIt[15]
/+ ~ +/D (может быть вложенным)[14]
/# ~ #/Кобра (может быть вложенным)
<# ~ #>Powershell
<!-- ~ -->HTML, XML
= начать ~ = вырезатьPerl
#`( ~ )Раку (символы в квадратных скобках могут быть (), <>, {}, [], любые символы Unicode с зеркальным отображением BiDi или символы Unicode со свойствами Ps / Pe / Pi / Pf)
= начать ~ = конецРубин
#<ТЕГ > ~ #</ТЕГ >, #остановка ~ EOF,
#iffalse ~ #endif, #ifntrue ~ #endif,
#if false ~ #endif, #если правда ~ #endif
Сленг[16]
{- ~ -}Haskell (может быть вложенным)
(* ~ *)Delphi, ML, Mathematica, Object Pascal, Паскаль, Семя7, Яблоко, OCaml (могут быть вложенными), Standard ML (могут быть вложенными), Maple, Новояз, F #
{ ~ }Delphi, Object Pascal, Pascal, Красный
{# ~ #}Nunjucks, Веточка
{{! ~ }}Усы, Рули
{{!-- ~ --}}Рули (не могут быть вложенными, но могут содержать {{ и }})
|# ~ #|Завиток
%{ ~ %}MATLAB[11] (символы должны быть в отдельной строке)
#| ~ |#Лисп, Схема, Ракетка (может быть вложен во все три).
#[ ~ ]#Ним[17]
--[[ ~ ]],
--[=[ ~ ]=],
--[=...=[ ~ ]=...=]
Lua (скобки могут иметь любое количество совпадающих символов =; могут быть вложены в несовпадающие разделители)
" ~ "Болтовня
(комментарий ~ )Clojure

Уникальные варианты

Фортран
  • Отступы строк в Фортран 66/77 значительна. Фактическая инструкция находится в столбцах с 7 по 72 строки. Любой непробельный символ в столбце 6 означает, что эта строка является продолжением предыдущей. А 'C'в столбце 1 означает, что вся эта строка является комментарием. Столбцы с 1 по 5 могут содержать число, которое служит меткой. Столбцы с 73 по 80 игнорируются и могут использоваться для комментариев; в дней перфокарт, эти столбцы часто содержали порядковые номера, чтобы колоду карт можно было отсортировать в правильном порядке, если кто-то случайно уронил карты. Fortran 90 устранил необходимость в правиле отступа и добавил встроенные комментарии, используя ! символ в качестве разделителя комментариев.
КОБОЛ
  • В коде фиксированного формата отступ строк имеет значение. Столбцы 1–6 и столбцы, начиная с 73, игнорируются. Если * или / находится в столбце 7, то эта строка является комментарием. До COBOL 2002, если D или d был в столбце 7, он определил бы «строку отладки», которая игнорировалась бы, если компилятор не получил указание скомпилировать ее.
Кобра
  • Cobra поддерживает блочные комментарии с "/# ... #/"который похож на"/* ... */"часто встречается в языках, основанных на C, но с двумя отличиями. # символ повторно используется из формы однострочного комментария "# ... ", а комментарии к блокам могут быть вложенными, что удобно для комментирования больших блоков кода.
Завиток
  • Curl поддерживает блочные комментарии с пользовательскими тегами, как в | foo # ... #foo |.
Lua
  • Как и необработанные строки, между квадратными скобками может быть любое количество знаков равенства, при условии, что открывающий и закрывающий теги имеют одинаковое количество знаков равенства; это позволяет вложение, если комментарии / необработанные строки вложенных блоков используют другое количество знаков равенства, чем их закрывающий комментарий: - [[комментарий - [= [вложенный комментарий] =]]]. Lua отбрасывает первую новую строку (если она есть), которая следует непосредственно за открывающим тегом.
Perl
  • Блочные комментарии в Perl считаются частью документации и получают имя Обычная старая документация (POD). Технически Perl не имеет соглашения о включении блочных комментариев в исходный код, но POD обычно используется как обходной путь.
PHP
  • PHP поддерживает стандартные комментарии в стиле C / C ++, но также поддерживает стиль Perl.
Python
  • Использование тройных кавычек для комментирования строк исходного текста фактически не формирует комментарий.[18] Заключенный текст становится строковым литералом, который Python обычно игнорирует (кроме случаев, когда это первая инструкция в теле модуля, класса или функции; см. строка документации ).
Раку
  • Раку использует #`(...) для обозначения блочных комментариев.[19] На самом деле Raku позволяет использовать любые парные скобки "правые" и "левые" после #` (т.е. #`(...), #`[...], #`{...}, #`<...>, и даже более сложный #`{{...}} все допустимые комментарии к блоку). Скобки также могут быть вложены в комментарии (т.е. # `{a {b} c} переходит к последней закрывающей скобке).
Рубин
  • Комментарий блока в Ruby открывается по адресу = начать линия и закрывается на = конец линия.
Сленг
  • Область линий, заключенных # <тег> и # разделители игнорируются интерпретатором. Имя тега может быть любой последовательностью буквенно-цифровых символов, которая может использоваться для обозначения того, как должен быть расшифрован заключенный блок. Например, # <латекс> может указывать на начало блока документации в формате LaTeX.
Схема и ракетка
  • Следующий полный синтаксический компонент (s-выражение) можно закомментировать с помощью #; .
ABAP

ABAP поддерживает два разных типа комментариев. Если первым символом строки, включая отступ, является звездочка (*) вся строка рассматривается как комментарий, а одинарная двойная кавычка (") начинает встроенную коммуникацию, которая действует до конца строки. Комментарии ABAP невозможны между операторами EXEC SQL и ENDEXEC потому что в собственном SQL эти символы используются и по-другому. В большинстве диалектов SQL двойное тире (--) можно использовать вместо этого.

Эзотерические языки

Сравнение комментариев

Существует множество стилей синтаксиса для объявления комментариев в исходном коде.BlockComment здесь курсивом используется для обозначения стиля блочного комментария.Встроенный комментарий Курсив здесь используется для обозначения стиля встроенного комментария.

ЯзыкВстроенный комментарийЗаблокировать комментарий
Ада, Эйфель, Эйфория, Оккам, ИСКРА, ANSI SQL, и VHDL-- Встроенный комментарий
АЛГОЛ 60комментарий BlockComment;
АЛГОЛ 68¢ BlockComment ¢

комментарий BlockComment комментарий
co BlockComment co
# БлокКомментарий #
£ BlockComment £

APLВстроенный комментарий
AppleScript-- Встроенный комментарий(* BlockComment *)
язык ассемблера (варьируется); Встроенный комментарий один пример (большинство языков ассемблера используют только строковые комментарии)
AutoHotkey; Встроенный комментарий/* BlockComment */
AWK, Баш, Оболочка Борна, Оболочка C, Клен, р, Tcl, и Windows PowerShell# Встроенный комментарий<# BlockComment #>
БАЗОВЫЙ (разные диалекты):'Встроенный комментарий (не все диалекты)

REM Встроенный комментарий

C (K&R, ANSI / C89 / C90), ХОЛОД, PL / I, и REXX/* BlockComment */
С (C99), C ++, Идти, Swift и JavaScript// Встроенный комментарий/* BlockComment */
C #// Встроенный комментарий
/// Встроенный комментарий (Комментарий к документации XML)
/* БлокКомментарий */
/** БлокКомментарий */ (Комментарий к документации XML)
КОБОЛ Я в COBOL 85 * Встроенный комментарий (* в графе 7)
КОБОЛ 2002*> InlineComment
Завиток|| Встроенный комментарий|# BlockComment #|

| foo # BlockComment #|

Кобра# Встроенный комментарий/# BlockComment #/ (гнездовой)
D// Встроенный комментарий
/// Документация Встроенный комментарий (ddoc Комментарии)
/* BlockComment */
/** Документация BlockComment */ (ddoc Комментарии)

/+ BlockComment +/ (гнездовой)
/ ++ Документация BlockComment +/ (гнездовой, ddoc Комментарии)

DCL$! InlineComment
ECMAScript (JavaScript, ActionScript, так далее.)// InlineComment/* BlockComment */
Четвертый Встроенный комментарий( BlockComment ) (однострочный и многострочный)

( перед -- после ) соглашение о комментариях к стеку

FORTRAN I к FORTRAN 77C Встроенный комментарий (C в столбце 1)
Фортран 90! Встроенный комментарий
Haskell-- InlineComment{- BlockComment -}
Ява// Встроенный комментарий/* БлокКомментарий */

/** BlockComment */ (Javadoc комментарий к документации)

Лисп и Схема; InlineComment#| BlockComment |#
Lua-- Встроенный комментарий --[==[ BlockComment]==] (переменное количество знаков =)
Клен# Встроенный комментарий(* BlockComment *)
Mathematica(* BlockComment *)
Matlab% InlineComment%{
BlockComment (вложенный)
%}

Примечание. Оба символа процентных скобок должны быть единственными непробельными символами в соответствующих строках.
Ним# Встроенный комментарий#[ BlockComment ]#
Object Pascal (Delphi)// Встроенный комментарий(* BlockComment *)
{ BlockComment }
OCaml(* BlockComment (* вложенный *) *)
Паскаль, Модула-2, Модула-3, Оберон, и ML:(* БлокКомментарий *)
Perl и Рубин# InlineComment= начать
BlockComment
= вырезать
(= конец в Ruby) (POD комментарий к документации)

__КОНЕЦ__
Комментарии после конца кода

PHP# Встроенный комментарий
// Встроенный комментарий
/* БлокКомментарий */
/** Документация BlockComment */ (Комментарии PHP Doc )
ПИЛОТР:Встроенный комментарий
PLZ / SYS! BlockComment !
PL / SQL и TSQL-- Встроенный комментарий/* BlockComment */
Пролог% InlineComment/* BlockComment */
Python# Встроенный комментарий''' BlockComment '''
""" BlockComment """

(Строка документации когда первая строка модуля, класса, метода или функции)

Раку# Встроенный комментарий#`{
БлокКомментарий
}

= комментарий
Этот параграф комментариев идет до следующей директивы POD
или первая пустая строка.
[20][21]

Красный; Встроенный комментарий{ БлокКомментарий }
Ржавчина// Встроенный комментарий

/// Встроенный комментарий (Комментарий рустдока "Внешний")
//! Встроенный комментарий ("Внутренний" комментарий рустдока)

/* БлокКомментарий */ (гнездовой)

/** БлокКомментарий */ (Комментарий рустдока "Внешний")
/*! БлокКомментарий */ ("Внутренний" комментарий рустдока)

SAS* БлокКомментарий;
/* БлокКомментарий */
Семя7# Встроенный комментарий(* БлокКомментарий *)
Симулакомментарий БлокКомментарий;
! БлокКомментарий;
Болтовня"БлокКомментарий"
Умный{* БлокКомментарий *}
Стандартный ML(* БлокКомментарий *)
TeX, Латекс, PostScript, Erlang, Эликсир и Сленг% Встроенный комментарий
Texinfo@c Встроенный комментарий

@комментарий Встроенный комментарий

УЧИТЕЛЬ* Встроенный комментарий
команда $$ Встроенный комментарий
Visual Basic' Встроенный комментарий
Рем Встроенный комментарий
Visual Basic .NET' Встроенный комментарий

''' Встроенный комментарий (Комментарий к документации XML)
Рем Встроенный комментарий

Визуальный пролог% Встроенный комментарий/* БлокКомментарий */
Язык Wolfram Language(* БлокКомментарий *)
Xojo' Встроенный комментарий
// Встроенный комментарий
rem Встроенный комментарий

Смотрите также

Рекомендации

  1. ^ а б Для нескольких операторов в одной строке
  2. ^ Три разных вида предложений, в каждом по-разному разделяются фразы и единицы:
      1. серийное предложение с использованием жетон (а именно точка с запятой): начать а; б; c конец - агрегаты выполнены по порядку.
      2. дополнительная оговорка с использованием а также жетон (а именно ","): начать а, б, в конец - порядок выполнения должен быть оптимизирован компилятором.
      3. параллельное предложение с использованием а также жетон (а именно ","): номинальное начало а, б, в конец - блоки должны запускаться в параллельных потоках.
  3. ^ точка с запятой - результат удаления оператора скрыт, запятая - результат отображается
  4. ^ Справочное руководство по Bash, 3.1.2.1 escape-символ
  5. ^ Документация Python, 2. Лексический анализ.: 2.1.5. Явное соединение строк
  6. ^ Mathworks.com В архиве 7 февраля 2010 г. Wayback Machine
  7. ^ https://ss64.com/nt/syntax-brackets.html
  8. ^ https://autohotkey.com/docs/Scripts.htm#continuation
  9. ^ Чтобы M-файл (источник MATLAB) был доступен по имени, его родительский каталог должен находиться в пути поиска (или текущем каталоге).
  10. ^ https://nim-lang.org/docs/manual.html#lexical-analysis-comments
  11. ^ а б "Mathworks.com". Архивировано из оригинал 21 ноября 2013 г.. Получено 25 июн 2013.
  12. ^ "Algol68_revised_report-AB.pdf в формате PDF, стр. 61–62, исходный документ, стр. 121–122" (PDF). Получено 27 мая 2014.
  13. ^ «HTML-версия пересмотренного отчета AB Algol68». Архивировано из оригинал 17 марта 2013 г.. Получено 27 мая 2014.
  14. ^ а б "DLang.org, лексический". Получено 27 мая 2014.
  15. ^ "Справочник по ключевым словам AutoItScript.com, # comments-start". Получено 27 мая 2014.
  16. ^ "slang-2.2.4 / src / slprepr.c - строки с 43 по 113". Получено 28 мая 2014.
  17. ^ "Nim Manual".
  18. ^ «Совет Python: вы можете использовать многострочные строки как многострочные комментарии», 11 сентября 2011 г., Гвидо ван Россум
  19. ^ «Документация Perl 6 (синтаксис)». docs.perl6.org. Комментарии. Получено 5 апреля 2017.
  20. ^ "Комментарии Perl 6 POD".
  21. ^ «Perl 6 POD (сокращенные блоки)».