Programlama dillerinin oluşturulmasındaki amaç, bir dilin bütün bilgisayar cihazlarında kullanılmasının sağlanmasıdır. Fakat uygulamada, IBM uyumlu makineler ve Apple-Macintosh ailesi gibi gruplaşmalar ortaya çıktığından, bu amaca yeteri kadar ulaşılamamıştır.
Bilgisayar programlama dilleri konuşma diline yakın olup olmamasına göre, düşük seviyeli programlama dilleri ve yüksek seviyeli programlama dilleri olmak üzere ikiye ayrılır.
Konuşma diline oldukça uzak, buna karşılık makine diline oldukça yakın olan diller, düşük seviyeli programlama dilleri grubuna girer. Bu dil grubu da Makine Dili ve ASSEMBLY Dili olarak ikiye ayrılır.
Yüksek Seviyeli Programlama Dilleri
Bu grubun kapsamına giren diller, İngilizce konuşma diline yakın olan dillerdir. Bu nedenle bu dilleri kullanarak program yazmak, düşük seviyeli dillere oranla çok daha kolaydır. Yüksek seviyeli programlama dilleri, programcıların tüm ihtiyaçlarına cevap verebilmek için, çeşitli özelliklere sahip çok sayıda komut içermektedir. Böylece, programcıya, düşündüklerini programa dönüştürebilmesi için bir çok imkan sağlanmış olmaktadır. Üst düzey programlama dilleri ile program yazmak ve hata ayıklamak daha kolaydır. Bu diller genelde taşınabilirlik özelliğine sahiptirler. Donanım konusunda uzmanlık gerektirmezler. Ada, Basic, Cobol, Fortran, Module-2, PL/I ve Pascal gibi diller, yüksek seviyeli diller grubuna girerler.
Diğer yandan, düşük ve yüksek seviyeli dillerin özelliklerine sahip diller arasında sayılabilecek bazı diller de vardır. Bunlar arasında C, Forth, Macro Assembler dili sayılabilir. Yukarıda sayılan dillerden başka, değişik amaç, yaklaşım, teknik ve yapılara sahip Algol, APL, Eiffel, Lisp, Jawa, Perl, Prolog, Simula ve Smalltalk gibi birçok programlama dili vardır.
Dünyanın dört bir köşesinde amatör veya profesyonel programcılar tarafından sürekli olarak geliştirilen milyonlarca farklı program, üç ana grup altında toplanabilir:
1. Sistem Programları 2. Çevirici Programları 3. Uygulama Programları