Pascal | |
---|---|
Paradigma | imperativa, estruturada |
Data | 1970 |
Tipo de dato | forte, dinámica, segura |
Dialectos | Delphi, Turbo Pascal, UCSD Pascal |
Influído por | ALGOL W |
Influíu | Ada, Component Pascal, Go, Java, Modula /-2 /-3, Oberon /.2, Object Pascal, Oxygene, Seed7 |
Pascal é unha linguaxe de programación desenvolta polo profesor suízo Niklaus Wirth a finais da década de 1960. O seu obxectivo era crear unha linguaxe que facilitase a aprendizaxe da programación aos seus alumnos. Con todo, co tempo a súa utilización excedeu o ámbito académico para converterse nunha ferramenta para a creación de aplicacións de todo tipo. Caracterízase por ser unha linguaxe de programación estruturada fortemente tipificada.
O suízo Niklaus Wirth desenvolveu a linguaxe de programación Pascal no ano 1970, co obxectivo de que fose unha linguaxe educativa de cara a aprendizaxe da programación estruturada. Pascal está baseada na linguaxe Algol e chamouse así en honra ao matemático e filósofo Blaise Pascal.
Pascal é orixinariamente unha linguaxe de programación estruturada, mais non é orientada a obxectos.
A diferenza de linguaxes de programación descendentes de C, Pascal utiliza o símbolo := para a asignación no canto de = . Aínda que o segundo é máis conciso, a práctica demostrou que moitos usuarios utilizan o símbolo de igualdade para comparar valores en lugar do comparador de C que é o símbolo == . Esta sintaxe conduce a moitos erros ou bugs difíciles de rastrexar en código C. Dado que Pascal non permite dentro de expresións e utiliza sintaxe distinta para asignacións e comparacións, non sofre estes erros.
Ademais os seus programas teñen definidas dous partes: declarativa e executiva. Na primeira debe aparecer todo o que se usará na segunda, pola contra detéctase como descoñecido e evita certas incomprensións como veremos máis adiante. Na parte declarativa enúncianse librarías existentes (unit), procedementos (procedure), funcións (function), variables (var), constantes (const) e novos tipos de datos estruturados (type).
Outra diferenza importante é que en Pascal, o tipo dunha variable fíxase na súa definición; a asignación a variables de valores de tipo incompatible non están autorizadas (En C, en cambio, o compilador fai o mellor esforzo para dar unha interpretación a case todo tipo de asignacións). Isto prevén erros comúns onde variables son usadas incorrectamente porque o tipo é descoñecido. Isto tamén evita a necesidade de notación húngara, que son prefixos que se engaden aos nomes das variables e que indican o seu tipo.
As primeiras versións do compilador de Pascal, entre elas a máis distribuída foi UCSD Pascal, traducían o código fonte para unha máquina virtual chamada máquina-P. A gran vantaxe deste enfoque é que para ter un compilador de Pascal nunha nova arquitectura de máquina só facía falta reimplementar a máquina-P. Como consecuencia disto, só unha pequena parte do intérprete tiña que ser reescrita cara a moitas arquitecturas.
Nos anos oitenta, Anders Hejlsberg escribiu o compilador Blue Label Pascal para a Nascom-2. Máis tarde foi traballar para Borland e reescribiu o seu compilador que se converteu en Turbo Pascal para a IBM PC. Este novo compilador vendeuse por 49 $ un prezo orientado á distribución masiva.
O económico compilador de Borland tivo unha longa influencia na comunidade de Pascal que o comezou a utilizar principalmente no IBM PC. En busca dunha linguaxe estruturada moitos afeccionados ao PC substituíron a linguaxe BASIC por este produto. Dado que Turbo Pascal, só estaba dispoñible para unha arquitectura, traducía directamente cara ao código máquina do Intel 8088, logrando construír programas que se executaban moito máis rapidamente que os producidos nos esquemas interpretados.
Durante os anos 1990, estivo dispoñible a tecnoloxía para construír compiladores que puidesen producir código para diferentes arquitecturas de hardware. Isto permitiu que os compiladores de Pascal traducisen directamente ao código da arquitectura na que corresen.
Con Turbo Pascal versión 5, Borland, agregou programación orientada a obxectos a Pascal.
Con todo, Borland despois decidiu mellorar esa extensión da linguaxe introducindo o seu produto Delphi, deseñado a partir de estándar Object Pascal proposto por Apple como base. Borland chamouno tamén Object Pascal nas primeiras versións, pero nas últimas versións o nome da linguaxe de programación foi Delphi.
program OlaMundo(output);
begin
Writeln('¡Ola, Mundo!')
end.
program raiz(input, output);
(*
Obter a raíz cadrada dun número real x calquera.
*)
var x, y: real;
begin
writeln('** Calcular a raíz cadrada de x **');
writeln;
writeln('Entrar x (> 0): '); readln(x);
y := sqrt(abs(x)); (* Obten a raíz cadrada do valor absoluto de x para evitar problemas coas
raíces imaxinarias *)
writeln;
if (x<0) then (* Aquí evalua si x é negativo, polo que p resultado modificase coma imaxinario *)
writeln('A raíz cadrada de ', x, ' é o número imaxinario ', y,'i')
else
writeln('A raíz cadrada de ', x:4:2, ' é ', y:4:2);
writeln; writeln('** Fin **');
readln; (* Espera a que o usuario pulse enter para saír do programa *)
end.
Varios compiladores de Pascal están dispoñibles para o uso do público en xeral:
Baixo nivel |
| ||||||
---|---|---|---|---|---|---|---|
Alto nivel |
| ||||||
|