Prednost ovoga je da ako znaš paskal/objektin paskal bolje nego C/C++ ili te profesor tera da radiš paskal ili jednostavno više voliš paskal, onda možeš raditi u tome. Druge prednosti ne znam jer ne znam nijednu prednost paskala u odnosu na C, odnosno objektnog paskala u odnosu na C++, osim možda lakše sintakse za učenje.
E, sad, zašto je zamro? Pa, ne znam nijednu njegovu prednost, ali znam istorijske mane.
Zamisli da imaš zadatak da učitaš prirodan broj n, a onda n realnih brojeva i na kraju ih sve ispišeš u neopadajućem poretku. U C-u ćeš nakon učitavanja broja n jednostavno rezervisati potreban prostor sa malloc i posle je jednostavno. E, u starom paskalu to jednostavno nije moglo. Pravilno rešenje je bilo da napraviš listu, koja opet u paskalu nije unapred definisana, pa da koristiš nju, već si morao da definišeš odgovarajući slogovni tip o odgovarajuće funkcije/procedure. Sa listom takođe imaš manje mogućnosti pri izboru algoritma za sortiranje.
Kasnije je Borland dodao funkcije GetMem i FreeMem, koje zamenjuju C-ovske funkcije malloc i free, ali je njihova upotreba u to vreme bila prljava. Nije GetMem bila kao danas, da prihvata pokazivač na određeni tip i broj bajtova, a da vraća pokazivač na taj tip, već je prihvatala samo broj bajtova i vraćala pokazivač koji odgovara C-ovskom void*, koji bi se onda dodelio pokazivaču na tip koji bi odgovarao nizu od jednog elementa jer sintaksa p[n], gde je p pokazivač, a ne niz nije postojala.
Takođe, paskal nije imao aritmetiku pokazivača, a for petlja mu je bila ograničena na nabrojivi tip za brojačku promenljivu. Ako si pisao program za numeričku integraciju, gde je priraštaj realan broj, obično mnogo manji od jedinice, morao si da koristiš while petlju. Nije bilo naredbi break i continue, a iz procedure/funkcije si mogao da izlaziš samo na kraju (nije postojala return naredba, već se rezultat funkcije vraćao kroz implicitno definisanu promenljivu tipa povratne vrednosti funkcije i imena istog kao funkcija). Nije postojala konverzija realnih brojeva u cele (naravno, uz odsecanje razlomljenog dela).
Nije bilo ni mogućnosti pisanja programa čiji se izvorni kod sastoji iz više od jednog fajla, kao ni pravljenje biblioteka. Doduše, borland je to ispravio u verziji 4.0 turbo paskala, ali ne kroz standardne obj fajlove, već kroz svoje tpu module, tako da nije bilo mogućnosti korišćenja biblioteka pisanih u drugim jezicima.
Borland je postepeno dodavao naredbe za kontrolu toka, adresnu aritmetiku i ostalo što je trebalo, ali sa velikim kašnjenjem u odnosu na C, koji je sve navedeno imao još 70-tih. Naravno, turbo C je sve to imao i bio upotrebljiviji od turbo paskala. Konačan ishod je da paskal danas ima iste mogućnosti kao C, a objektni paskal kao C++, međutim, u C/C++ ima mnogo više napisanog koda. Takođe, borland nije baš nešto podržavao operativne sisteme koji nisu majkrosoftovi. Svojevremeno je izašao Kylix (delfi za linuks), koji nikada nije zaživeo na linuksu zato što je besplatna verzija dozvoljavala samo pravljenje GPL projekata, a komercijalna koštala papreno, pa pored postojećih alata Kylix nije imao šta da traži.
[Ovu poruku je menjao Nedeljko dana 23.11.2012. u 15:17 GMT+1]
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.