Programlama dillerinin karşılaştırılması (sözdizimi) - Comparison of programming languages (syntax)

Bu karşılaştırma programlama dilleri özelliklerini karşılaştırır dil sözdizimi 50'den fazla bilgisayar programlama dilleri için (format).

İfade

Programlama dili ifadeleri genel olarak dört sözdizimi yapısında sınıflandırılabilir:

önek gösterimi
  • Lisp (* (+ 2 3) (expt 4 5))
infix notasyonu
sonek, sonek veya Ters Lehçe notasyonu
matematik benzeri gösterim

İfadeler

Programlama Dilleri (genellikle Algol soyundan gelenler) ifadeleri olduğunda, genellikle aşağıdakiler için sözleşmeleri vardır:

  • ifade ayırıcılar;
  • ifade sonlandırıcılar; ve
  • satır devamı

İki ayrı ifade arasındaki sınırları belirlemek için bir ifade ayırıcı kullanılır. Tek bir ifadenin sonunu sınırlamak için bir ifade sonlandırıcı kullanılır. Satır sonunu bir ifadenin sonu olarak yorumlayan dillere "satır yönelimli" diller denir.

"Satır devamı", satırsonu karakterinin bir ifade sonlandırıcı olarak potansiyel olarak yanlış yorumlanabileceği satır yönelimli dillerdeki bir kuraldır. Bu tür dillerde, tek bir ifadenin birden fazla satıra yayılmasına izin verir.

Dilim İfade ayırıcı-sonlandırıcı İkincil ayırıcı-sonlandırıcı
ABAP dönem ayrılmış
Ada noktalı virgül sonlandırıldı
Algol noktalı virgülle ayrılmış
ALGOL 68 noktalı virgül ve virgülle ayrılmış
APL yeni satır sonlandırıldı [Direct_function ⋄] ayrılmış İkincil
AppleScript yeni satır sonlandırıldı
OtomatikKısayol tuşu yeni satır sonlandırıldı
TEMEL yeni satır sonlandırıldı kolon ayrılmış
yuh yeni satır sonlandırıldı
C noktalı virgül ifadeleri sonlandırır virgül ifadeleri ayırır
C++ noktalı virgül ifadeleri sonlandırır virgül ifadeleri ayırır
C# noktalı virgül sonlandırıldı
COBOL boşlukla ayrılmış, bazen noktalı ayrılmış, isteğe bağlı olarak virgül ve noktalı virgülle ayrılmış.
Kobra yeni satır sonlandırıldı
CoffeeScript yeni satır sonlandırıldı
CSS noktalı virgülle ayrılmış
NS noktalı virgül sonlandırıldı
Eyfel yeni satır sonlandırıldı noktalı virgül
Erlang kolon ayrıldı, dönem sonlandırıldı
F# yeni satır sonlandırıldı noktalı virgül
Fortran yeni satır sonlandırıldı noktalı virgül
ileri noktalı virgül sözcük tanımlarını sonlandırır. boşluk kelime kullanımını sonlandırır
GFA TEMEL yeni satır sonlandırıldı
Gitmek noktalı virgülle ayrılmış (derleyici tarafından eklenmiştir)
Haskell (do-notasyonunda) yeni satır ayrılmış
Haskell (do-notasyonda, parantezler kullanıldığında) noktalı virgülle ayrılmış
Java noktalı virgül sonlandırıldı
JavaScript noktalı virgülle ayrılmış (ancak bazen dolaylı olarak yeni satırlara eklenmiş)
Kotlin noktalı virgülle ayrılmış (ancak bazen dolaylı olarak yeni satırlara eklenmiş)
Lua boşlukla ayrılmış (noktalı virgül isteğe bağlı)
Mathematica Wolfram olarak
da bilinir
noktalı virgülle ayrılmış
MATLAB yeni satır sonlandırıldı noktalı virgül veya virgül
MUMPS M olarak
da bilinir
newline, M'nin sahip olduğu bir "ifadeye" en yakın olan satır kapsamını sonlandırır. bir boşluk, bir komutu ayırır/sonlandırır ve başka bir komutun takip etmesine izin verir.
Nim yeni satır sonlandırıldı
Nesne Pascal da ( Delphi ) noktalı virgülle ayrılmış
Amaç-C noktalı virgül sonlandırıldı
OCaml noktalı virgülle ayrılmış
paskal noktalı virgülle ayrılmış
Perl noktalı virgülle ayrılmış
PHP noktalı virgül sonlandırıldı
Temel Seç yeni satır sonlandırıldı noktalı virgülle ayrılmış
Güç kalkanı yeni satır sonlandırıldı noktalı virgülle ayrılmış
Prolog virgülle ayrılmış (bağlaç), noktalı virgülle ayrılmış (ayrılık), nokta sonlandırılmış (madde)
piton yeni satır sonlandırıldı noktalı virgül
r yeni satır sonlandırıldı noktalı virgül
Raku noktalı virgülle ayrılmış
kırmızı boşluk ayrılmış
yakut yeni satır sonlandırıldı noktalı virgül
Pas noktalı virgül ifadeleri sonlandırır virgül ifadeleri ayırır
Skala yeni satır sonlandırıldı (noktalı virgül isteğe bağlı) noktalı virgül
tohum7 noktalı virgülle ayrılmış (noktalı virgül sonlandırmaya izin verilir)
simülasyon noktalı virgülle ayrılmış
Argo noktalı virgülle ayrılmış
küçük konuşma dönem ayrılmış
standart makine öğrenimi noktalı virgülle ayrılmış
Süratli noktalı virgülle ayrılmış (derleyici tarafından eklenmiştir)
Visual Basic yeni satır sonlandırıldı kolon ayrılmış
Visual Basic .NET yeni satır sonlandırıldı kolon ayrılmış
Wolfram Dili noktalı virgülle ayrılmış
Xojo yeni satır sonlandırıldı
Dilim İfade ayırıcı-sonlandırıcı İkincil ayırıcı-sonlandırıcı

Satır devamı

Satır devamı genellikle sözcüksel analizin bir parçası olarak yapılır : yeni satır, satırın devamı algılanmadıkça, normal olarak belirteç akışına bir belirteç eklenmesiyle sonuçlanır.

Boşluk – Devam gerektirmeyen diller
  • Ada – Satırlar noktalı virgülle sonlanır
  • C# – Satırlar noktalı virgülle sonlandırılır
  • JavaScript – Satırlar noktalı virgülle sonlandırılır (çıkarılabilir)
  • Lua
  • OCaml
Ve işareti satırın son karakteri olarak
Satırın son karakteri olarak ters eğik çizgi
Satırın son karakteri olarak backtick
Satırın son karakteri olarak tire
Alt çizgi hattının son karakteri olarak
Üç nokta (bir özel karakter değil, üç nokta olarak)
  • MATLAB : Üç nokta belirtecinin satırdaki son karakterler olması gerekmez, ancak onu izleyenler yoksayılır. (Özünde, uzanan bir yorum başlar aracılığıyla (yani) takip eden ilk satır karakteri içeren. Uzanan bir satır içi ile karşılaştırın kadar takip eden ilk yeni satır).
Satırın son karakteri olarak virgül sınırlayıcı
  • Ruby (yorum sınırlayıcıyı takip edebilir)
Satırın son karakteri olarak sol köşeli ayraç sınırlayıcı
Satırın son nesnesi olarak operatör
  • Ruby (yorum operatörü takip edebilir)
Devam eden satırın ilk karakteri olarak operatör
  • AutoHotkey : ++ ve -- dışında herhangi bir ifade işlecinin yanı sıra virgül veya nokta
Devam eden satırın ilk karakteri olarak ters eğik çizgi
Bir tür satır içi yorum , satırın devamı olarak işlev görür
Karakter konumu
  • Fortran 77 : Yorumsuz satır, 6. sütunda boşluk olmayan herhangi bir karakter görünüyorsa, önceki yorum olmayan satırın devamıdır. Yorum satırlarına devam edilemez.
  • COBOL : Dize sabitleri, bir PICTURE yan tümcesindeki orijinal dizeyi ile sonlandırmadan ve 'ardından -7. sütuna bir a ekleyerek devam ettirilebilir ( *for yorumuyla aynı konum kullanılır.)
  • TUTOR : Sekme ile başlayan satırlar (bağlamın gerektirdiği herhangi bir girintiden sonra) önceki komutla devam eder.
Normal tırnak kullanarak [Bitir ve Başla]
  • C ve C++ önişlemcisi: Dize normal şekilde sonlandırılır ve bir sonraki satırda bir alıntı ile başlayarak devam eder.

Kütüphaneler

To içe bir kütüphane dış muhtemelen derlenmiş, rutinler, programlar veya paketleri okumak için bir yoldur. İthalatlar, seviyeye (modül, paket, sınıf, prosedür,...) ve sözdizimine (yönerge adı, nitelikler,...) göre sınıflandırılabilir.

Dosya içe aktarma
Paket içe aktarma
Sınıf içe aktarma
  • from module import class piton
  • import class Şahin
  • import package.class Java , MATLAB , kotlin
  • import class from "modname";, JavaScript
  • import {class} from "modname";, JavaScript
  • import {class as altname} from "modname";JavaScript
  • import package.class, Skala
  • import package.{ class1 => alternativeName, class2 }, Skala
  • import package._Skala
  • use Namespace\ClassName;, PHP
  • use Namespace\ClassName as AliasName; PHP
Prosedür/fonksiyon içe aktarma
  • from module import function Python :
  • import package.module : symbol;, D :
  • import package.module : altsymbolname = symbol; D :
  • import Module (function) Haskell :
  • import function from "modname";, JavaScript :
  • import {function} from "modname";, JavaScript :
  • import {function as altname} from "modname";JavaScript :
  • import package.function MATLAB :
  • import package.class.function, Skala :
  • import package.class.{ function => alternativeName, otherFunction }Ölçek :
  • use Module ('symbol');Perl :
  • use function Namespace\function_name;, PHP :
  • use Namespace\function_name as function_alias_name; PHP :
  • use module::submodule::symbol;, Pas :
  • use module::submodule::{symbol1, symbol2};, Pas :
  • use module::submodule::symbol as altname; Pas :
Sabit ithalat
  • use const Namespace\CONST_NAME; PHP

Yukarıdaki ifadeler, sözdizimsel uygunluk olup olmadığına (nesnelerin daha kısa bir adla anılmasına izin verir, ancak yine de içe aktarma olmadan tam nitelikli bir adla atıfta bulunulabilir) veya gerçekten erişmeleri gerekip gerekmediğine göre sınıflandırılabilir. kod (bu olmadan, tam nitelikli adlarla bile koda erişmek imkansızdır).

sözdizimsel kolaylık
  • import package.* Java
  • import package.class Java
  • open module OCaml
koda erişmek için gerekli

Bloklar

Bir blok , bir bütünü oluşturacak şekilde ilişkili iki veya daha fazla ifade, ifade veya diğer kod birimlerinden oluşan bir grup için bir gösterimdir.

Parantezler (aka küme parantezleri) {...}
parantezler (...)
Köşeli parantezler [...]
  • Smalltalk (bloklar birinci sınıf nesnelerdir. aka kapanışlar)
begin ... end
do ... end
do ... done
do ... end
  • Lua , Ruby (blokları argüman olarak ilet , fordöngü), Seed7 ( dove arasındaki döngü gövdelerini içine alır end)
X ... end(örneğin if... end):
  • Ruby ( if, while, until, def, class, moduledeyimler), OCaml ( for& whiledöngüler), MATLAB ( if& switchkoşullar, for& whiledöngüler, tryyan tümce, package, classdef, properties, methods, events, & functionbloklar), Lua ( then/ else& function)
( begin...)
(önceden ...)
( do...)
Girinti
Diğerleri

Yorumlar

Yorumlar şu şekilde sınıflandırılabilir:

  • stil (satır içi/blok)
  • ayrıştırma kuralları (yok sayıldı/enterpolasyon yapıldı/bellekte saklandı)
  • özyineleme (nestable/nestable olmayan)
  • kullanır ( belgeler / tek kullanımlık yorumlar / diğer)

satır içi yorumlar

Satır içi yorumlar genellikle bir yorumun sonunu belirtmek için yeni satır karakteri ve bir yorumun başlangıcını belirtmek için rastgele bir sınırlayıcı veya belirteç dizisi kullananlardır.

Örnekler:

Sembol Diller
C Fortran I'den Fortran 77'ye (1. sütunda C)
REM TEMEL , Toplu dosyalar
:: Toplu dosyalar , COMMAND.COM , cmd.exe
NB. J ; (tarihsel olarak) ortak kısaltma Nota bene'den , Latince "iyi not" için.
APL ; Anımsatıcı, gliftir (ayakkabı aşağı ile aşırı vurulmuş) bir masa lambasını andırır ve bu nedenle yukarıdakileri "aydınlatır".
# Bourne kabuğu ve diğer UNIX kabukları , Cobra , Perl , Python , Ruby , Seed7 , Windows PowerShell , PHP , R , Make , Maple , Elixir , Nim
% TeX , Prolog , MATLAB , Erlang , S-Lang , Görsel Prolog
// ActionScript , C (C99) , C++ , C# , D , F# , Go , Java , JavaScript , Kotlin , Object Pascal ( Delphi ), Objective-C , PHP , Rust , Scala , SASS , Swift , Xojo
' Maymun, Visual Basic , VBScript , Small Basic , Gambas , Xojo
! Fortran , Temel Artı, Bilgilendir, Temel Seç
; Montaj x86 , AutoHotkey , AutoIt , Lisp , Common Lisp , Clojure , Rebol , Red , Scheme
-- Euphoria , Haskell , SQL , Ada , AppleScript , Eiffel , Lua , VHDL , SGML , PureScript
* Assembler S/360 (* sütun 1'de), COBOL I - COBOL 85, PAW , Fortran IV - Fortran 77 (* sütun 1'de), Pick Basic , GAMS (* sütun 1'de)
|| kıvırmak
" Vimscript , ABAP
\ ileri
*> KOBOL 90

Yorumları engelle

Blok yorumlar genellikle bir yorumun başlangıcını belirtmek için bir sınırlayıcı ve bir yorumun sonunu belirtmek için başka bir sınırlayıcı kullananlardır. Bu bağlamda, boşluk ve yeni satır karakterleri sınırlayıcı olarak sayılmaz.

Örnekler:

Sembol Diller
comment ~ ; ALGOL 60 , SIMULA
¢~ ¢,
#~ #, co~ co,
comment~comment
ALGOL 68
/* ~ */ ActionScript, AutoHotkey , C, C++, C#, D, Go, Java , JavaScript , kotlin , Objective-C , PHP , PL/I , Prolog , Rexx , Rust (iç içe yerleştirilebilir), Scala (iç içe yerleştirilebilir), SAS , SASS, SQL, Swift (iç içe olabilir), Visual Prolog , CSS
#cs ~ #ce AutoIt
/+ ~ +/ D (iç içe olabilir)
/# ~ #/ Kobra (iç içe olabilir)
<# ~ #> Güç kalkanı
<!-- ~ --> HTML , XML
=begin ~ =cut Perl
#`( ~ ) Raku (parantez karakterleri (), <>, {}, [], BiDi yansıtmalı herhangi bir Unicode karakteri veya Ps/Pe/Pi/Pf özellikli Unicode karakterleri olabilir)
=begin ~ =end yakut
#<TAG>~ , ~ , ~ , ~ , ~ , ~#</TAG>#stopEOF
#iffalse#endif#ifntrue#endif
#if false#endif#if !true#endif
Argo
{- ~ -} Haskell (iç içe olabilir)
(* ~ *) Delphi , ML, Mathematica, Object Pascal, Pascal , seed7 , AppleScript , OCaml (kısıtlanabilir), Standart ML (kısıtlanabilir), Akçaağaç, Newspeak , F #
{ ~ } Delphi, Nesne Pascal, Pascal, Kırmızı
{# ~ #} Nunjucks, Twig
{{! ~ }} Bıyık , Gidon
{{!-- ~ --}} Gidonlar (iç içe yerleştirilemez, ancak {{ve içerebilir }})
|# ~ #| kıvırmak
%{ ~ %} MATLAB (semboller ayrı bir satırda olmalıdır)
#| ~ |# Lisp , Scheme , Racket (üçünün içinde yuvalanabilir).
#[ ~ ]# Nim
--[[~ ]],
--[=[~ ]=],
--[=... =[~ ]=...=]
Lua (parantezler herhangi bir sayıda eşleşen = karaktere sahip olabilir; eşleşmeyen sınırlayıcıların içine yerleştirilebilir)
" ~ " küçük konuşma
(comment ~ ) Clojure

Benzersiz varyantlar

Fortran
  • Fortran 66/77'deki girinti çizgileri önemlidir. Gerçek ifade, bir satırın 7'den 72'ye kadar olan sütunlarındadır. 6. sütundaki boşluk olmayan herhangi bir karakter, bu satırın önceki satırın devamı olduğunu gösterir. C1. sütundaki bir ' ', bu satırın tamamının bir yorum olduğunu gösterir. 1'den 5'e kadar olan sütunlar, etiket görevi gören bir sayı içerebilir. 73'ten 80'e kadar olan sütunlar yoksayılır ve yorumlar için kullanılabilir; Delikli kartların olduğu günlerde , bu sütunlar genellikle bir sıra numarası içeriyordu, böylece biri yanlışlıkla kartları düşürürse, kart destesi doğru sıraya göre sıralanabilirdi. Fortran 90, girinti kuralına olan ihtiyacı ortadan kaldırdı ve !karakteri yorum sınırlayıcı olarak kullanarak satır içi yorumlar ekledi .
COBOL
  • Sabit biçimli kodda satır girintisi önemlidir. 1-6 arasındaki sütunlar ve 73'ten sonraki sütunlar yoksayılır. a *veya /7. sütundaysa, o satır bir yorumdur. COBOL 2002'ye kadar a Dveya dsütun 7'deyse, derleyiciye onu derlemesi talimatı verilmedikçe göz ardı edilecek bir "hata ayıklama satırı" tanımlardı.
Kobra
  • Cobra, genellikle C tabanlı dillerde bulunan " ... " gibi , ancak iki farkla " /#... #/" ile blok yorumları destekler . Karakter Tek satırlı yorum formundan yeniden kullanılır " ..." ve blok yorumları koda büyük bloklar dışında yorum için uygun olan iç içe olabilir./**/##
kıvırmak
  • Curl, içinde olduğu gibi kullanıcı tanımlı etiketlerle blok yorumları destekler |foo# ... #foo|.
Lua
  • Ham dizeler gibi, hem açılış hem de kapanış etiketlerinin eşleşen sayıda eşittir işaretine sahip olması koşuluyla, köşeli parantezler arasında herhangi bir sayıda eşittir işareti olabilir; bu, iç içe blok yorumları/ham dizeler, çevreleyen yorumlarından farklı sayıda eşittir işareti kullandığı sürece iç içe geçirmeye izin verir: --[[comment --[=[ nested comment ]=] ]]. Lua, açılış etiketini doğrudan takip eden ilk yeni satırı (varsa) atar.
Perl
  • Perl'deki blok yorumlar, belgelerin bir parçası olarak kabul edilir ve Plain Old Documentation (POD) adı verilir . Teknik olarak, Perl'in kaynak koduna blok yorumları eklemek için bir kuralı yoktur, ancak POD rutin olarak bir geçici çözüm olarak kullanılır.
PHP
  • PHP, standart C/C++ stili yorumlarını destekler, ancak Perl stilini de destekler.
piton
  • Kaynak satırlarını yorumlamak için üçlü alıntıların kullanılması, aslında bir yorum oluşturmaz. Ekteki metin, Python'un genellikle yok saydığı bir dize değişmezi haline gelir (bir modülün, sınıfın veya işlevin gövdesindeki ilk ifade olması dışında; bkz. docstring ).
Raku
  • Raku#`(...) blok yorumları belirtmek için kullanır . Raku aslında herhangi bir "sağ" ve "sol" eşleştirilmiş parantezin kullanılmasına izin verir #`(yani #`(...), #`[...], #`{...}, #`<...>, ve hatta daha karmaşık #`{{...}}olanların tümü geçerli blok yorumlarıdır). Köşeli ayraçların yorumların içine yerleştirilmesine de izin verilir (yani #`{ a { b } c }son kapanış ayracına gider).
yakut
  • Ruby'de blok yorumu =beginsatırda açılır ve satırda kapanır =end.
Argo
  • #<tag>ve #</tag>sınırlayıcılar tarafından çevrelenen çizgilerin bölgesi yorumlayıcı tarafından yok sayılır. Etiket adı, ekteki bloğun nasıl deşifre edileceğini belirtmek için kullanılabilen herhangi bir alfasayısal karakter dizisi olabilir. Örneğin, #<latex>bir LaTeX formatlı belge bloğunun başlangıcını gösterebilir.
Şema ve Raket
  • Bir sonraki tam sözdizimsel bileşen (s-ifadesi) ile yorumlanabilir #;.
ABAP

ABAP iki farklı yorum türünü destekler. Girinti dahil bir satırın ilk karakteri bir yıldız ( *) ise, tüm satır bir yorum olarak kabul edilirken, tek bir çift tırnak ( ") satırın sonuna kadar hareket eden bir satır içi yorumu başlatır. İfadeler arasında EXEC SQLve ENDEXECNative SQL'in bu karakterler için başka kullanımları olduğundan ABAP yorumları mümkün değildir . Çoğu SQL lehçesinde --bunun yerine çift ​​tire ( ) kullanılabilir.

ezoterik diller

Yorum karşılaştırma

Kaynak kodda yorumları bildirmek için çok çeşitli sözdizimi stilleri vardır. BlockCommentitalik olarak burada blok yorum stilini belirtmek için kullanılır. InlineCommentitalik olarak burada satır içi yorum stilini belirtmek için kullanılır.

Dilim satır içi yorum Yorumu engelle
Ada , Eiffel , Euphoria , Occam , SPARK , ANSI SQL ve VHDL -- InlineComment
ALGOL 60 comment BlockComment;
ALGOL 68 ¢ BlockComment ¢

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

APL InlineComment
AppleScript -- InlineComment (* BlockComment *)
Montaj dili (değişir) ; InlineComment   bir örnek (çoğu derleme dili yalnızca satır yorumlarını kullanır)
OtomatikKısayol tuşu ; InlineComment /* BlockComment */
AWK , Bash , Bourne kabuğu , C kabuğu , Akçaağaç , R , Tcl ve Windows PowerShell # InlineComment <# BlockComment #>
BASIC (çeşitli lehçeler): 'InlineComment (tüm lehçeler değil)

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

C (K&R, ANSI/C89/C90), CHILL , PL/I ve REXX /* BlockComment */
C (C99) , C++ , Go , Swift ve JavaScript // InlineComment /* BlockComment */
C# // InlineComment
/// InlineComment (XML dokümantasyon yorumu)
/* BlockComment */
/** BlockComment */ (XML dokümantasyon yorumu)
COBOL I'den COBOL 85'e * InlineComment (* 7. sütunda)
COBOL 2002 *> InlineComment
kıvırmak || InlineComment |# BlockComment #|

|foo# BlockComment #|

Kobra # InlineComment /# BlockComment #/ (iç içe yerleştirilebilir)
NS // InlineComment
/// Documentation InlineComment( ddoc yorumları)
/* BlockComment */
/** Documentation BlockComment */( ddoc yorumları)

/+ BlockComment +/( nestable ) ( nestable , ddoc yorumları)
/++ Documentation BlockComment +/

DCL $! InlineComment
ECMAScript ( JavaScript , ActionScript , vb.) // InlineComment /* BlockComment */
ileri \ InlineComment ( BlockComment ) (tek satır ve çok satırlı)

( before -- after ) yığın yorum kuralı

FORTRAN I'den FORTRAN 77'ye C InlineComment (1. sütundaki C)
90 ! InlineComment
Haskell -- InlineComment {- BlockComment -}
Java // InlineComment /* BlockComment */

/** BlockComment */( Javadoc dokümantasyon yorumu)

Lisp ve Şema ; InlineComment #| BlockComment |#
Lua -- InlineComment --[==[ BlockComment]==] (değişken sayısı = işaretler)
Akçaağaç # InlineComment (* BlockComment *)
matematik (* BlockComment *)
matlab % InlineComment %{
BlockComment (nestable)
%}

Not: Her iki yüzde-parantez sembolü, ilgili satırlarında boşluk olmayan tek karakterler olmalıdır.
Nim # InlineComment #[ BlockComment ]#
Nesne Pascal // InlineComment (* BlockComment *)
{ BlockComment }
OCaml (* BlockComment (* nestable *) *)
Pascal , Modula-2 , Modula-3 , Oberon ve ML : (* BlockComment *)
Perl ve Ruby # InlineComment =begin
BlockComment
=cut
( =endRuby'de) ( POD dokümantasyon yorumu)

__END__
Comments after end of code

PHP # InlineComment
// InlineComment
/* BlockComment */
/** Documentation BlockComment */( PHP Doküman yorumları )
PİLOT R:InlineComment
PLZ/SYS ! BlockComment !
PL/SQL ve TSQL -- InlineComment /* BlockComment */
Prolog % InlineComment /* BlockComment */
piton # InlineComment ''' BlockComment '''
""" BlockComment """

( Modül, sınıf, yöntem veya işlevin ilk satırı olduğunda belge dizesi )

r # InlineComment
Raku # InlineComment #`{
BlockComment
}

=comment
    This comment paragraph goes until the next POD directive
    or the first blank line.

kırmızı ; InlineComment { BlockComment }
Pas // InlineComment

/// InlineComment ("Dış" rustdoc yorumu) ("İç" rustdoc yorumu)
//! InlineComment

/* BlockComment */ (iç içe yerleştirilebilir)

/** BlockComment */ ("Dış" rustdoc yorumu) ("İç" rustdoc yorumu)
/*! BlockComment */

SAS * BlockComment;
/* BlockComment */
tohum7 # InlineComment (* BlockComment *)
simülasyon comment BlockComment;
! BlockComment;
küçük konuşma "BlockComment"
akıllı {* BlockComment *}
standart makine öğrenimi (* BlockComment *)
TeX , LaTeX , PostScript , Erlang , Elixir ve S-Lang % InlineComment
Teksas bilgisi @c InlineComment

@comment InlineComment

ÖZEL ÖĞRETMEN * InlineComment
command $$ InlineComment
Visual Basic ' InlineComment
Rem InlineComment
Visual Basic .NET ' InlineComment

''' InlineComment (XML dokümantasyon yorumu)
Rem InlineComment

Görsel Giriş % InlineComment /* BlockComment */
Wolfram Dili (* BlockComment *)
Xojo ' InlineComment
// InlineComment
rem InlineComment

Ayrıca bakınız

Referanslar