Jump to content

Сравнение языков программирования (синтаксис)

(Перенаправлено из Блокировать комментарии )

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

Выражения

[ редактировать ]

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

префиксная запись
инфиксная запись
суффикс, постфикс или обратная польская запись
математическое обозначение

Заявления

[ редактировать ]

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

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

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

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

Язык Разделитель-терминатор операторов Вторичный сепаратор-терминатор [1]
АБАП период разделен
Есть точка с запятой заканчивается
АЛГОЛ точка с запятой, разделенная
АЛГОЛ 68 точка с запятой и запятая разделены [2]
АПЛ новая строка прекращена [Direct_function ⋄] разделенный вторичный
AppleScript новая строка прекращена
Автогорячая клавиша новая строка прекращена
БАЗОВЫЙ новая строка прекращена разделенная двоеточием
Бу новая строка прекращена
С точка с запятой завершает операторы запятая разделяет выражения
С++ точка с запятой завершает операторы запятая разделяет выражения
С# точка с запятой заканчивается
КОБОЛ разделяются пробелами, иногда точкой, при необходимости разделяются запятыми и точками с запятой.
Кобра новая строка прекращена
Кофескрипт новая строка прекращена
CSS точка с запятой заканчивается
Д точка с запятой заканчивается
Эйфелева новая строка прекращена точка с запятой
Эрланг отделилась толстая кишка, менструация закончилась
Ф# новая строка прекращена точка с запятой
Фортран новая строка прекращена точка с запятой
Форт точки с запятой завершают определения слов. пробел прекращает использование слов
БАЗОВЫЙ ГФА новая строка прекращена
Идти через точку с запятой (вставляется компилятором)
Haskell (в do-нотации) новая строка разделена
Haskell (в do-нотации, когда используются фигурные скобки) точка с запятой, разделенная
Ява точка с запятой заканчивается
JavaScript разделяются точкой с запятой (но часто вставляются как знак завершения оператора)
Котлин разделяются точкой с запятой (но иногда неявно вставляются в новую строку)
Два разделяются пробелами (точка с запятой необязательно)
Математика
также называется Вольфрам
точка с запятой, разделенная
МАТЛАБ новая строка прекращена точка с запятой или запятая [3]
Свинка
также называется М
новая строка завершает область действия строки, что наиболее близко к «инструкции», которую имеет M. пробел разделяет/оканчивает команду, позволяя следовать другой команде
Nim новая строка прекращена
Объектный Паскаль ( Делфи ) точка с запятой, разделенная
Цель-C точка с запятой заканчивается
OCaml точка с запятой, разделенная
Паскаль точка с запятой, разделенная
Перл точка с запятой, разделенная
PHP точка с запятой заканчивается
Выберите базовый новая строка прекращена точка с запятой, разделенная
PowerShell новая строка прекращена точка с запятой, разделенная
Пролог через запятую (союз), через точку с запятой (дизъюнкция), точка в конце (предложение)
Питон новая строка прекращена точка с запятой
Р новая строка прекращена [4] точка с запятой [4]
Раку точка с запятой, разделенная
Красный разделены пробелами
Руби новая строка прекращена точка с запятой
Ржавчина точка с запятой заканчивается запятая разделяет выражения
Скала завершение новой строки (точка с запятой необязательно) точка с запятой
Сид7 через точку с запятой (допускается завершение через точку с запятой)
начало точка с запятой, разделенная
Сленг точка с запятой, разделенная
Смолток период разделен
Стандартный ML точка с запятой, разделенная
Быстрый через точку с запятой (вставляется компилятором)
V (Vlang) новая строка прекращена через запятую или точку с запятой
Визуальный Бейсик новая строка прекращена разделенная двоеточием
Визуальный Бейсик .NET новая строка прекращена разделенная двоеточием
Вольфрам Язык точка с запятой, разделенная
Содзё новая строка прекращена
Зиг точка с запятой заканчивается
Язык Разделитель-терминатор операторов Вторичный сепаратор-терминатор [1]

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

[ редактировать ]

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

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

Библиотеки

[ редактировать ]

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

Импорт файла
Импорт пакетов
Импорт классов
Импорт процедур/функций
Постоянный импорт
  • use const Namespace\CONST_NAME; PHP

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

Синтаксическое удобство
Требуется для доступа к коду

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

Фигурные скобки (они же фигурные скобки) { ... }
Круглые скобки ( ... )
Квадратные скобки [ ... ]
begin ... end
do ... end
do ... done
do ... end
  • Lua , Ruby (передавать блоки в качестве аргументов, for цикл), Seed7 (заключает тела цикла между do и end)
Х... end (например if ... end):
  • Руби ( if, while, until, def, class, module операторы), OCaml ( for & while циклы), MATLAB ( if & switch условные предложения, for & while петли, try пункт, package, classdef, properties, methods, events, & function блоки), Луа ( then / else & function)
( begin ...)
(прога...)
( do ...)
Отступ
Другие

Комментарии

[ редактировать ]

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

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

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

[ редактировать ]

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

Примеры:

Символ Языки
CОт Фортрана I до Фортрана 77 (C в столбце 1)
REMБЕЙСИК , Пакетные файлы , Visual Basic
::Пакетные файлы , COMMAND.COM , cmd.exe
NB.Дж ; от (исторически) распространенной аббревиатуры Nota bene , что на латыни означает «хорошо замечать».
АПЛ ; Мнемоника заключается в том, что глиф (черта, перечеркнутая ботинком) напоминает настольную лампу и, следовательно, «освещает» вышеизложенное.
#Boo , оболочка Bourne и другие оболочки UNIX , Cobra , Perl , Python , Ruby , Seed7 , PowerShell , PHP , R , Make , Maple , Elixir , Julia , Nim [12]
%ТеХ , Пролог , MATLAB , [13] Эрланг , S-Lang , Визуальный Пролог , PostScript
//ActionScript , Boo , C (C99) , C++ , C# , D , F# , Go , Java , JavaScript , Kotlin , Object Pascal ( Delphi ), Objective-C , PHP , Rust , Scala , Sass , Swift , Xojo , V (Vlang) ) , Зиг
'Обезьяна, Visual Basic , VBScript , Small Basic , Gambas , Xojo
!Фактор , Фортран , Базовый Плюс, Информ, Выбор Базового
;Большинство языков ассемблера , AutoHotkey , AutoIt , Lisp , Common Lisp , Clojure , PGN , Rebol , Red , Scheme
--Euphoria , Haskell , SQL , Ada , AppleScript , Eiffel , Lua , VHDL , SGML , PureScript , Elm
*Ассемблер S/360 (* в столбце 1), от COBOL I до COBOL 85, PAW , от Fortran IV до Fortran 77 (* в столбце 1), Pick Basic , GAMS (* в столбце 1)
||Завиток
"Вимскрипт , ABAP
\Форт
*>КОБОЛ 90

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

[ редактировать ]

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

Примеры:

Символ Языки
comment ~ ;АЛГОЛ 60 , ПОХОЖИЙ
¢ ~ ¢,
# ~ #, co ~ co,
comment ~ comment
АЛГОЛ 68 [14] [15]
/* ~ */ActionScript, AutoHotkey , C, C++, C#, D, [16] Go, Java , JavaScript , Kotlin , Objective-C , PHP , PL/I , Prolog , Rexx , Rust (может быть вложенным), Scala (может быть вложенным), SAS , SASS, SQL, Swift (может быть вложенным), V (Vlang) , Визуальный Пролог , CSS
#cs ~ #ceАвтоИт [17]
/+ ~ +/D (может быть вложенным) [16]
/# ~ #/Кобра (может быть вложенной)
<# ~ #>PowerShell
<!-- ~ -->HTML , XML
=begin ~ =cutPerl (простая старая документация)
#`( ~ )Raku (символами в скобках могут быть (), <>, {}, [], любые символы Юникода с зеркальным отображением BiDi или символы Юникода со свойствами Ps/Pe/Pi/Pf)
=begin ~ =endРуби
#<TAG> ~ #</TAG>, #stop ~ EOF,
#iffalse ~ #endif, #ifntrue ~ #endif,
#if false ~ #endif, #if !true ~ #endif
Сленг [18]
{- ~ -}Haskell (может быть вложенным)
(* ~ *)Delphi , ML , Mathematica , Object Pascal , Pascal , Seed7 , AppleScript , OCaml (может быть вложенным), Standard ML (может быть вложенным), Maple , Newspeak , F#
{ ~ }Delphi, Объект Паскаль, Паскаль, PGN , Красный
{# ~ #}Нунджакс, Твиг
{{! ~ }}Усы , Руль
{{!-- ~ --}}Рули (не могут быть вложенными, но могут содержать {{ и }})
|# ~ #|Завиток
%{ ~ %}МАТЛАБ [13] (символы должны быть в отдельной строке)
#| ~ |#Lisp , Scheme , Racket (может быть вложенным во все три).
#= ~ =#Юлия [19]
#[ ~ ]#Nim [20]
--[[ ~ ]],
--[=[ ~ ]=],
--[=... =[ ~ ]=... =]
Lua (скобки могут содержать любое количество совпадающих символов =; могут быть вложены в несовпадающие разделители)
" ~ "Смолток
(comment ~ )Клоджур
#If COMMENT Then ~ #End If[а] Визуальный Бейсик .NET
#if COMMENT ~ #endif[б] С#
' comment _ или REM comment _[с] Классический Visual Basic , VBA , VBScript

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

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

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

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

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

[ редактировать ]

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

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

comment BlockComment comment
co BlockComment co
# BlockComment #
£ BlockComment £

АПЛ InlineComment
AppleScript -- InlineComment(* BlockComment *)
Язык ассемблера (варьируется) ; InlineComment один пример (большинство языков ассемблера используют только комментарии к строкам)
Автогорячая клавиша ; InlineComment/* BlockComment */
AWK , оболочка Bourne , оболочка C , Maple , PowerShell # InlineComment<# BlockComment #>
Баш # InlineComment<<EOF
BlockComment
EOF


: '
BlockComment
'
БЕЙСИК (различные диалекты): 'InlineComment (не все диалекты)

*InlineComment (not all dialects)
!InlineComment (not all dialects)
REM InlineComment

C (K&R, ANSI/C89/C90), ОХЛАЖДЕНИЕ , PL/I , REXX /* BlockComment */
C (C99) , C++ , Go , Swift , JavaScript , V (Vlang) // InlineComment/* BlockComment */
С# // InlineComment
/// InlineComment (комментарий к XML-документации)
/* BlockComment */
/** BlockComment */ (комментарий к XML-документации)
#if COMMENT
  BlockComment
#endif
(директива компилятора) [б]
КОБОЛ I — КОБОЛ 85 * InlineComment (* в графе 7)
КОБОЛ 2002 *> InlineComment
Завиток || InlineComment|# BlockComment #|

|foo# BlockComment #|

Кобра # InlineComment/# BlockComment #/ (нестабильный)
Д // InlineComment
/// Documentation InlineComment ( комментарии в ddoc )
/* BlockComment */
/** Documentation BlockComment */ ( комментарии в ddoc )

/+ BlockComment +/ (нестабильный)
/++ Documentation BlockComment +/ (вложенный, комментарии ddoc )

ДКЛ $! InlineComment
ECMAScript ( JavaScript , ActionScript и т. д.) // InlineComment/* BlockComment */
Эликсир # InlineComment~S"""
BlockComment
"""

@doc """
BlockComment
"""
(Документация, работает только в модулях)
@moduledoc
BlockComment
"""
(документация модуля)
@typedoc
BlockComment
"""
(Типовая документация)
Форт \ InlineComment( BlockComment ) (однострочный и многострочный)

( before -- after ) соглашение о комментариях в стеке

ФОРТРАН I — ФОРТРАН 77 C InlineComment (С в столбце 1)
Фортран 90 и более поздние версии ! InlineComment#if 0
  BlockComment
#endif
[д]
Хаскелл -- InlineComment{- BlockComment -}
Дж NB.
Ява // InlineComment/* BlockComment */

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

Юлия # InlineComment #= BlockComment =#
Лисп , Схема ; InlineComment#| BlockComment |#
Два -- InlineComment --[==[ BlockComment]==] (переменное количество знаков =, вложенное с разделителями с разным количеством знаков =)
Клен # InlineComment(* BlockComment *)
Математика (* BlockComment *)
Матлаб % InlineComment%{
BlockComment (nestable)
%}

Примечание. Оба символа процентных скобок должны быть единственными символами без пробелов в соответствующих строках.
Nim # InlineComment #[ BlockComment ]#
Объектный Паскаль // InlineComment(* BlockComment *)
{ BlockComment }
OCaml (* BlockComment (* nestable *) *)
Паскаль , Модуль-2 , Модуль-3 , Оберон , МЛ : (* BlockComment *)
Перл , Руби # InlineComment =begin
BlockComment
=cut
( =end в Ruby) ( комментарий к документации POD )

__END__
Comments after end of code

ПГН , Красный ; InlineComment{ BlockComment }
PHP # InlineComment
// InlineComment
/* BlockComment */
/** Documentation BlockComment */ ( комментарии PHP-документа )
ПИЛОТ R:InlineComment
ПЛЗ/СИС ! BlockComment !
ПЛ/SQL , ТSQL -- InlineComment/* BlockComment */
Пролог % InlineComment/* BlockComment */
Питон # InlineComment ''' BlockComment '''
""" BlockComment """

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

Р # InlineComment
Раку # InlineComment #`{
BlockComment
}

=comment
    This comment paragraph goes until the next POD directive
    or the first blank line.
[25] [26]

Ржавчина // InlineComment

/// InlineComment («Внешний» комментарий в Rustdoc)
//! InlineComment (Внутренний комментарий в Rustdoc)

/* BlockComment */ (нестабильный)

/** BlockComment */ («Внешний» комментарий в Rustdoc)
/*! BlockComment */ (Внутренний комментарий в Rustdoc)

САС * BlockComment;
/* BlockComment */
Сид7 # InlineComment(* BlockComment *)
начало comment BlockComment;
! BlockComment;
Смолток "BlockComment"
Умник {* BlockComment *}
Стандартный ML (* BlockComment *)
TeX , LaTeX , PostScript , Эрланг , S-Lang % InlineComment
Техинфо @c InlineComment

@comment InlineComment

РЕпетитор * InlineComment
command $$ InlineComment
Визуальный Бейсик ' InlineComment
Rem InlineComment
' BlockComment _
BlockComment

Rem BlockComment _
BlockComment
[с]
Визуальный Бейсик .NET ' InlineComment

''' InlineComment (комментарий к XML-документации)
Rem InlineComment

#If COMMENT Then
  BlockComment
#End If
Визуальный Пролог % InlineComment/* BlockComment */
Вольфрам Язык (* BlockComment *)
Содзё ' InlineComment
// InlineComment
rem InlineComment
Зиг // InlineComment
/// InlineComment
//! InlineComment

См. также

[ редактировать ]
  1. ^ Перейти обратно: а б Для нескольких операторов в одной строке
  2. ^ Три разных типа предложений, каждое из которых по-разному разделяет фразы и единицы:
      1. серийное предложение с использованием токена перехода (т. е. точки с запятой): начать a; б; c end – модули выполняются по порядку.
      2. дополнительное предложение с использованием and-also-token (а именно ","): Begin a, b, c end – порядок выполнения должен быть оптимизирован компилятором.
      3. параллельное предложение с использованием and-also-token (а именно ","): par Begin a, b, c end – модули должны выполняться в параллельных потоках.
  3. ^ точка с запятой – результат удаления оператора скрыт, запятая – результат отображается
  4. ^ Перейти обратно: а б Из определения языка R , раздел 3.2 Структуры управления: «Точка с запятой всегда указывает на конец оператора, в то время как новая строка может указывать на конец оператора. Если текущий оператор не является синтаксически полным, новые строки просто игнорируются оценщиком. "
  5. ^ Справочное руководство Bash , 3.1.2.1 Escape-символ
  6. ^ Документация Python , 2. Лексический анализ : 2.1.5. Явное соединение строк
  7. ^ «Mathworks.com» . Архивировано из оригинала 7 февраля 2010 года.
  8. ^ «Кробки/скобки — Windows CMD — SS64.com» . ss64.com .
  9. ^ «Скрипты — определение и использование | AutoHotkey» .
  10. ^ Чтобы M-файл (источник MATLAB) был доступен по имени, его родительский каталог должен находиться в пути поиска (или текущем каталоге).
  11. ^ Перейти обратно: а б с «Подробный синтаксис — F# | Microsoft Learn» . Microsoft Learn . 5 ноября 2021 г. Проверено 17 ноября 2022 г.
  12. ^ «Руководство Нима» . nim-lang.org .
  13. ^ Перейти обратно: а б «Mathworks.com» . Архивировано из оригинала 21 ноября 2013 года . Проверено 25 июня 2013 г.
  14. ^ «Algol68_revised_report-AB.pdf в формате PDF, стр. 61–62, исходный документ, стр. 121–122» (PDF) . Проверено 27 мая 2014 г.
  15. ^ «HTML-версия пересмотренного отчета Algol68 AB» . Архивировано из оригинала 17 марта 2013 года . Проверено 27 мая 2014 г.
  16. ^ Перейти обратно: а б «DLang.org, Лексический» . Проверено 27 мая 2014 г.
  17. ^ «Справочник по ключевым словам AutoItScript.com, #comments-start» . Проверено 27 мая 2014 г.
  18. ^ "slang-2.2.4/src/slprepr.c – строки с 43 по 113" . Проверено 28 мая 2014 г.
  19. ^ «Пунктуация · Язык Джулии» .
  20. ^ «Руководство Нима» . nim-lang.org .
  21. ^ «Совет по Python: вы можете использовать многострочные строки в качестве многострочных комментариев» , 11 сентября 2011 г., Гвидо ван Россум
  22. ^ «Написание документации — Эликсир v1.12.3» . Проверено 28 июля 2023 г.
  23. ^ «Документация Perl 6 (синтаксис)» . docs.perl6.org. Комментарии . Проверено 5 апреля 2017 г. .
  24. ^ «Использование препроцессора FPP» . Архивировано из оригинала 18 ноября 2022 года . Проверено 18 ноября 2022 г.
  25. ^ «Комментарии к Perl 6 POD» . 25 мая 2023 г.
  26. ^ «Perl 6 POD (сокращенные блоки)» . 25 мая 2023 г.

Примечания

[ редактировать ]
  1. ^ Visual Basic .NET не поддерживает традиционные многострочные комментарии, но их можно эмулировать с помощью директив компилятора.
  2. ^ Перейти обратно: а б Хотя C# поддерживает традиционные блочные комментарии /* ... */для их имитации можно использовать директивы компилятора, как и в VB.NET.
  3. ^ Перейти обратно: а б Символ продолжения строки _ может использоваться для расширения однострочного комментария на следующую строку без необходимости ввода ' или REM снова. Это можно делать до 24 раз подряд.
  4. ^ Фортран не поддерживает традиционные блочные комментарии, но некоторые компиляторы поддерживают директивы препроцессора в стиле C / C++ , позволяя программисту эмулировать многострочные комментарии. [24]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2ec256032cffedf91940fe2a1c691925__1719521880
URL1:https://arc.ask3.ru/arc/aa/2e/25/2ec256032cffedf91940fe2a1c691925.html
Заголовок, (Title) документа по адресу, URL1:
Comparison of programming languages (syntax) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)