PAWN

Pawn (Small olarak da bilinir) açık kaynaklı bir programlama dilidir. Hollanda'da kurulan CompuPhase şirketi tarafından geliştirilmiştir. İlk olarak 1998 yılında yayınlanmıştır. 3. versiyonu yayınlanana kadar Small dili olarak bilinmiştir,3.versiyonu 2005 yılının Mart ayında çıkmıştır.

Pawn dinamik yazılı kodlama dilidir. Small-C dilinden etkilenilerek yaratılmıştır ve kodları C dilini andırmaktadır.

Pawn,San Andreas Multiplayer mod, Half-Life mod, AMX Mod X ve Source Engine gibi çeşitli projelerde kullanılmaktadır.

Tasarım 
PAWN kodları compiler tabanlıdır. PAWN scriptleri '.pwn' uzantılı dosyada tutulur.Bu pwn uzantılı dosyaları not defteri dahil çeşitli kod editörleri açabilir.

PAWN compiler,kaynak kodlarını P-code veya bytecode dillerine çevirir.Bu diller de '.amx' uzantısıyla kaydedilir. '.amx" uzantılı dosyaların açılma yolu yoktur. Tek bir yolu vardır o da illegal bir yöntemdir ve moda ekleyeceğiniz ufak bir eklentiyle çözülmektedir.

Özellikleri 
 PAWN C kodlama diline benzer.
 Include ekleyebilirsiniz ki bu da fonksiyon çeşitliliği sağlar.
 Başka dillere kolayca çevirebilmek için PAWN,mümkün oldukça ANSI dilinde geliştirilmiştir.
 PAWN Unicode/UCS-4 ve UTF-8 dillerini de destekler.

Kullanım alanları

Grand Theft Auto: San Andreas Multiplayer 
Popüler gayriresmî Grand Theft Auto: San Andreas modifikasyonu için kullanılır. "San Andreas Multiplayer". Bu oyunda,oyunun tek kişilik versiyonundaki her şeyi PAWN ile yapılabilir.Türkiye'de yaygın olarak kullanılır. Counter-Strike 1.6 multiplayer için plug-in yaratmak için kullanılır.

Scriptler arası tasarım 
PAWN diğer programlama dillerinin kodları arasındaki bir köprü dil olarak tasarlanmıştır. PAWN dili hiçbir native fonksiyonu taşımaz. PAWN fonksiyonlarını include dosyalarından alır.

Operatörler 

Örnek Operatör kullanımları

Kod Örnekleri 
Dizi örneği
#include <core>

new dizi[3]; // İçerisine 3 adet değer alabilecek bir dizi tanıttık.

main()
{
	dizi[0] = 5; 
	dizi[1] = 10;
	dizi[2] = dizi[1] * dizi[2]; // Dizi 1 ve 2'deki değerleri çarpıp dizi 3'e atadık.
	printf("Dizi 1 ile Dizi 2'de bulunan değerlerin çarpımı: %i", dizi[3]); // dizi 3 içerisinde bulunan değeri printf ile ekrana yazdırdık
}

Dış bağlantılar 
 

Özgür derleyiciler ve yorumlayıcılar
Betik dilleri