Lenguaige de porgramaçon

De Biquipédia
Saltar pa: nabegaçon, percura
Trecho de porgrama na lenguaige de porgramaçon C

Ua lenguaige de porgramaçon ye un método padronizado para quemunicar anstruçones para un cumputador.[1] Ye un cunjunto de regras sintáticas i semánticas ousadas para defenir un porgrama de cumputador.[2][Nota 1] Permite qu'un porgramador specifique percisamente subre quales dados un cumputador bai atuar, cumo estes dados seran armazenados ó trasmitidos i quales açones dében ser tomadas sob bárias circunstáncias. Lenguaiges de porgramaçon puoden ser ousadas para spressar algoritmos cun percison.

L cunjunto de palabras (leisemas classeficados an tokenes), cumpuostos d'acuordo cun essas regras, custituen l código fuonte dun software.[3] Esse código fuonte ye depuis traduzido para código de máquina, que ye eisecutado pul processador.[3]

Ua de las percipales metas de las lenguaiges de porgramaçon ye permitir que porgramadores téngan ua maior pordutebidade, permitindo spressar sues antençones mais facilmente de l que quando cumparado cula lenguaige qu'un cumputador antende natibamente (código de máquina).[4] Assi, lenguaiges de porgramaçon son porjetadas para adotar ua sintaxe de nible mais alto, que puode ser mais facilmente antendida por porgramadores houmanos. Lenguaiges de porgramaçon son ferramientas amportantes para que porgramadores i angenheiros de software puodan screbir porgramas mais ourganizados i cun maior rapideç.

Lenguaiges de porgramaçon tamien tornan ls porgramas menos dependentes de cumputadores ó ambientes cumputacionales specíficos (propiadade chamada de portabelidade[5]). Esto acuntece porque porgramas scritos an lenguaiges de porgramaçon son traduzidos pa l código de máquina de l cumputador ne l qual será eisecutado an beç de ser diretamente eisecutado. Ua meta ambiciosa de l Fortran, ua de las purmeiras lenguaiges de porgramaçon, era esta andependéncia de la máquina adonde serie eisecutada.[6][7]

Stória[eiditar | editar código-fonte]

L purmeiro trabalho de lenguaige de porgramaçon fui criado por Ada Lobelace, grande amiga de Charles Babbage.[8] L porjeto de la purmeira calculadora macánica porgramable fui eidealizado por Charles Babbage[9] que, passado gastar fertunas i un longo tiempo, nun cunseguiu cuncretizar l porjeto.[10] La lenguaige de porgramaçon ADA fui batizada an houmenaige l'esta purmeira porgramadora.[11]

Ua de las purmeiras lenguaiges de porgramaçon para cumputadores fui probabelmente Plankalkul, criada por Konrad Zuse na Almanha Nazista,[12] mas que tubo pouco ó nanhun ampato ne l feturo de las lenguaiges de porgramaçon.

L purmeiro cumpilador fui scrito por Grace Hopper,[13] an 1952, pa la lenguaige de porgramaçon La-0.[14] La purmeira lenguaige de porgramaçon d'alto nible amplamente ousada fui Fortran, criada an 1954.[15][14] An 1957 fui criada B-0, sucessora de la La-0, que darie ourige la Flow-Matic (1958), antecessor eimediato de COBOL, de 1959.[16] L COBOL fui ua lenguaige d'ampla aceitaçon para uso comercial.[16] La lenguaige ALGOL fui criada an 1958-1960[17] L ALGOL-60 tubo grande anfluéncia ne l porjeto de muitas lenguaiges posteriores.[18]

La lenguaige Lisp fui criada an 1958 i se tornou amplamente outelizada na pesquisa na ária de ciéncia de la cumputaçon mais proeminentemente na ária de Anteligéncia Artificial.[19] Outra lenguaige relacionada al campo de la IA que surge an 1972 ye la lenguaige Prolog, ua lenguaige de l paradigma lógico.[20]

La ourientaçon a oubjetos ye outro marco amportante na stória de las lenguaiges de porgramaçon. La lenguaige Simula 67 antroduç l cunceito de classes.[21] La lenguaige Smalltalk[22][23] spande l cunceito de classes i se torna la purmeira lenguaige de porgramaçon qu'ouferecie suporte cumpleto a la porgramaçon ourientada a oubjetos.[24] La lenguaige C++ (ouriginalmente coincida cumo C cun classes) populariza l'ourientaçon a oubjetos.[25]

Dibersas lenguaiges de porgramaçon surgiran zde anton, grande parte ourientadas a oubjetos. Antre estas ancluen-se C♯,[26] BB.NET, Java, Object Pascal, Objective-C, PHP, Python,[27] SuperCollider i Ruby.[28][Nota 2]

Anterpretaçon i cumpilaçon[eiditar | editar código-fonte]

L porcesso de la cumpilaçon

Ua lenguaige de porgramaçon puode ser cumbertida, ó traduzida, an código de máquina por cumpilaçon ó anterpretada por un porcesso chamado anterpretaçon. An ambas ocorre la traduçon de l código fuonte para código de máquina.[29]

Se l método outelizado traduç to l testo de l porgrama (tamien chamado de código), para solo depuis eisecutar[Nota 3] l porgrama, anton diç-se que l porgrama fui cumpilado i que l macanismo outelizado pa la traduçon ye un cumpilador (que por sue beç nada mais ye de l qu'un porgrama).[30] La berson cumpilada de l porgrama tipicamente ye armazenada, de forma que l porgrama puode ser eisecutado un númaro andefenido de bezes sin que seia neçaira nuoba cumpilaçon, l que cumpensa l tiempo gasto na cumpilaçon. Esso acuntece cun lenguaiges cumo Pascal[31] i C.

Se l testo de l porgrama ye eisecutado a la medida que bai sendo traduzido, cumo an JavaScript, BASIC, Python ó Perl, nun porcesso de traduçon de trechos seguidos de sue eisecuçon eimediata, anton diç-se que l porgrama fui anterpretado i que l macanismo outelizado pa la traduçon ye un anterpretador. Porgramas anterpretados son giralmente mais lentos de l que ls cumpilados, mas son tamien giralmente mais flexibles, yá que puoden anteragir cul ambiente mais facilmente.[32]

Ambora haba essa çtinçon antre lenguaiges anterpretadas i cumpiladas, las cousas nin siempre son tan simples. Hai lenguaiges cumpiladas para un código de máquina dua máquina birtual (sendo esta máquina birtual solo mais un software, qu'emula la máquina birtual sendo eisecutado nua máquina rial), cumo Java[33] (cumpila pa la plataforma Java[34]) i C♯ (cumpila pa la plataforma CLI[35]). I tamien hai outras formas d'anterpretar an que ls códigos fuontes, al ambés de séren anterpretados linha-la-linha, ténen blocos "cumpilados" pa a mimória, d'acuordo culas necidades, l qu'oumenta la performance de ls porgramas quando ls mesmos módulos son chamados bárias bezes, técnica esta coincida cumo JIT.

Cumo eisemplo, podemos citar la lenguaige Java. Neilha, un cumpilador traduç l código Java pa l código antermediairo (i portable) de la JBM. Las JBMs ouriginales anterpretában esse código, d'acuordo cul código de máquina de l cumputador hospedeiro, mas atualmente eilhas cumpilan, segundo la técnica JIT l código JBM para código hospedeiro.

La traduçon ye tipicamente feita an bárias fases, sendo las mais quemuns la análeze léxica, la análeze sintáticaparsing), la geraçon de código i la outimizaçon.[36] An cumpiladores tamien ye quemun la geraçon de código antermediairo.[Nota 4]

Cunceitos[eiditar | editar código-fonte]

Porgramaçon struturada[eiditar | editar código-fonte]

Porgramaçon estruturada ye ua forma de porgramaçon de cumputadores que preconiza que todos ls porgramas possibles puoden ser reduzidos a solo trés struturas: sequéncia, decison i repetiçon.[37] Un de ls purmeiros a preconizar la porgramaçon struturada fui Haskell B. Curry[38][Nota 5] Tenendo, na prática, sido trasformada na Porgramaçon modular, la Porgramaçon struturada ourienta ls porgramadores pa la criaçon de struturas simples an sous porgramas, usando las sub-rotinas i las funçones. Fui la forma dominante na criaçon de software antre la porgramaçon linear i la porgramaçon ourientada por oubjetos.[39] Anque tener sido sucedida pula porgramaçon ourientada por oubjetos, puode-se dezir que la porgramaçon struturada inda ye marcantemente anfluente, ua beç que grande parte de las pessonas inda daprenden porgramaçon atrabeç deilha. Mas, l'ourientaçon a oubjetos superou l'uso de las lenguaiges struturadas ne l mercado.[40]

Porgramaçon modular[eiditar | editar código-fonte]

Niklaus Wirth an 2005. Criador de la lenguaige Pascal antre outras

Porgramaçon modular ye ua forma de porgramaçon ne l qual l zambolbimiento de las rotinas de porgramaçon ye feito atrabeç de módulos, que son anterligados antre si atrabeç dua anterface quemun.[41] Fui apersentado ouriginalmente pula Anformation & Systems Anstitute, Anc. ne l National Symposiun on Modular Porgramming an 1968, cula liderança de Larry Custantine. Eisemplos de lenguaiges qu'ourientórun sou porjeto para este aspeto stan las lenguaiges Modula-2,[42][43] zambolbida por Niklaus Wirth i la Modula-3.[44].

Porgramaçon ourientada a oubjetos[eiditar | editar código-fonte]

Ourientaçon a oubjetos, tamien coincida cumo Porgramaçon Ourientada la Oubjetos (POO) ó inda an anglés Oubjet-Ouriented Porgramming (OOP) ye un paradigma d'análeze, porjeto i porgramaçon de sistemas de software baseado na cumposiçon i anteraçon antre dibersas ounidades de software chamadas d'oubjetos. L stensibo uso d'oubjetos, particularmente an cunjunçon cul macanismo d'hardança, carateriza l stilo de porgramaçon ourientada a oubjetos.[45] An alguns cuntestos, prefire-se ousar modelaige ourientada al oubjeto, an beç de porgramaçon. De fato, l paradigma "ourientaçon a oubjetos" ten bases cunceituales i ourige ne l campo de studo de la cogniçon, qu'anfluenciou la ária d'anteligencia artificial i de la linguística ne l campo de l'abstraçon de cunceitos de l mundo rial. Na culidade de método de modelaige, ye tenida cumo a melhor stratégia, i mais natural, para se eliminar l "gap semántico", deficuldade recorrente ne l porcesso de modelar l mundo rial, ne l domínio de l porblema, nun cunjunto de cumponentes de software que seia l mais fiel na sue repersentaçon deste domínio. Facelitarie la quemunicaçon de l profissional modelador i de l'usuairo de la ária albo, na medida an que la correlaçon de la simbologie i cunceitos abstratos de l mundo rial i de la ferramienta de modelaige (cunceitos, treminologie, simblos, grafismo i stratégias) fusse la mais óbbia, natural i sata possible. L'análeze i porjeto ourientados a oubjetos ten cumo meta eidantificar l melhor cunjunto d'oubjetos para çcrebir un sistema de software.[46] L funcionamiento deste sistema se dá atrabeç de l relacionamiento i troca de mensaiges antre estes oubjetos. Na porgramaçon ourientada a oubjetos, amplementa-se un cunjunto de classes que definen ls oubjetos persentes ne l sistema de software. Cada classe detremina l cumportamiento (defenido ne ls métodos) i stados possibles (atributos) de sous oubjetos, assi cumo l relacionamiento cun outros oubjetos.[41]

Porgramaçon linear[eiditar | editar código-fonte]

An matemática, porblemas de Porgramaçon Linear son porblemas d'outimizaçon ne ls quales la funçon oubjetibo i las restriçones son todas lineares.[47] Porgramaçon Linear ye ua amportante ária de l'outimizaçon por bárias rezones. Muitos porblemas práticos an pesquisa ouperacional puoden ser spressos cumo porblemas de porgramaçon linear. Ciertos causos speciales de porgramaçon linear, tales cumo porblemas de network flow i porblemas de multicommodity flow son cunsidrados amportantes l suficiente para que se tenga gerado muita pesquisa an algoritmos specializados para sues soluçones. Bários algoritmos para outros tipos de porblemas d'outimizaçon funcionan resolbendo porblemas de PL cumo sub-porblemas. Storicamente, eideias de la porgramaçon linear anspirórun muitos de ls cunceitos centrales de teorie de l'outimizaçon, tales cumo dualidade, decumposiçon, i l'amportança de la cumbexidade i sues generalizaçones.

Classeficaçon[eiditar | editar código-fonte]

Las lenguaiges de porgramaçon puoden ser classeficadas i sub-classeficadas de bárias formas.

Classeficaçon de la ACM[eiditar | editar código-fonte]

La ACM mantén un sistema de classeficaçon[48] culs seguintes sub-itenes:

  • Lenguaiges aplicatibas, ó d'aplicaçon
  • Lenguaiges cuncorrentes, çtribuídas i paralelas
  • Lenguaiges de fluxo de dados
  • Lenguaiges de porjeto
  • Lenguaiges stensibles
  • Lenguaiges de montaige i de macro
  • Lenguaiges de microprogramaçon
  • Lenguaiges nun determinísticas
  • Lenguaiges nó procedurales
  • Lenguaiges ourientadas a oubjeto
  • Lenguaiges d'aplicaçon specializada
  • Lenguaiges d'altíssemo nible[Nota 6]

Quanto al paradigma[eiditar | editar código-fonte]

Crystal Clear app xmag.pngBer artigo percipal: Paradigma de porgramaçon


Defrentes lenguaiges de porgramaçon puoden ser agrupadas segundo l paradigma que seguen para abordar la sue sintaxe i semántica. Ls paradigmas se debeden an dous grandes grupos: amperatibo i declaratibo.[49]

Paradigmas Amperatibos[eiditar | editar código-fonte]

Ls paradigmas amperatibos son aqueilhes que facelitan la cumputaçon por meio de mudanças de stado.[49] Se debeden an:

Paradigmas Declaratibos[eiditar | editar código-fonte]

Ls paradigmas declaratibos son aqueilhes ne ls quales un porgrama specifica ua relaçon ó funçon.[49] Se debeden an:

  • L paradigma funcional. Lenguaiges deste paradigma nun ancluen qualquiera probison para atribuiçon ó dados mutables [51] Na porgramaçon funcional, l mapeamiento antre ls balores d'antrada i saida son alcançados mais diretamente. Un porgrama ye ua funçon (ó grupo de funçones), tipicamente custituída d'outras funçones mais simples.[52] Eisemplos de lenguaiges deste paradigma son las lenguaiges Lisp[53], Scheme[54] i Haskell[55]

Quanto la strutura de tipos[eiditar | editar código-fonte]

  • Fracamente tipada, cumo PHP i Smalltalk, adonde l tipo de la bariable muda dinamicamente cunforme la situaçon.
  • Fuortemente tipada, cumo Java i Ruby, adonde l tipo de la bariable, ua beç atribuído, se mantén l mesmo até ser çcartada de a mimória.[59]
  • Dinamicamente tipada, cumo SNOBOL, APL, Awk, Perl, Python i Ruby, adonde l tipo de la bariable ye defenido an tiempo d'eisecuçon.[59]
  • Staticamente tipada, cumo Java i C, adonde l tipo de la bariable ye defenido an tiempo de cumpilaçon.[60]

Quanto al grau d'abstraçon[eiditar | editar código-fonte]

  • Lenguaige de porgramaçon de baixo nible, cujos simbolos son ua repersentaçon direta de l código de máquina que será gerado, adonde cada comando de la lenguaige eiquibale a un "oupcode" de l processador, cumo Assembly.[61]
  • Lenguaige de porgramaçon de médio nible,[Nota 7] que ten simblos que puoden ser cumbertidos diretamente para código de máquina (goto, spressones matemáticas, atribuiçon de bariables), mas tamien simblos cumplexos que son cumbertidos por un cumpilador. Eisemplo: C, C++
  • Lenguaige de porgramaçon d'alto nible, cumpuosta de simblos mais cumplexos, anteligible pul ser houmano i nó-eisecutable diretamente pula máquina, ne l nible de la specificaçon d'algoritmos, cumo Pascal,[31] Fortran, ALGOL i SQL.[61]

Quanto a la geraçon[eiditar | editar código-fonte]

La classeficaçon de las lenguaiges de porgramaçon an geraçones ye ua queston qu'apersenta dibergéncias d'outor para outor. Segundo Maclennan,[62] las lenguaiges se debeden an cinco geraçones culas seguintes caratelísticas:

  • Purmeira geraçon - San lenguaiges adonde sues struturas de cuntrole son aparentemente ourientadas la máquina. Las anstruçones cundicionales nun son amarradas i dependen fuortemente d'anstruçones de zbio ancondicional cumo l GOTO. Ua lenguaige típica desta geraçon ye la lenguaige Fortran.[62]
  • Segunda geraçon - San lenguaiges adonde las struturas de cuntrole son struturadas de forma a menimizar ó çpensar l'uso d'anstruçones GOTO. La segunda geraçon eilaborou melhor i generalizou dibersas struturas de cuntrole de las lenguaiges de purmeira geraçon. Ua de las grandes cuntribuiçones desta geraçon fui sues struturas de nomes, que éran hierarquicamente amarradas. Esto permitiu melhor cuntrole de spácios de nomes i ua eficiente alocaçon dinámica de mimória. Ua lenguaige típica desta geraçon ye l Algol 60.[62]
  • Terceira geraçon - San lenguaiges que dan énfase la simplicidade i eficiéncia. Ua lenguaige típica desta geraçon ye la lenguaige Pascal.[31] Las struturas de dados desta geraçon mostran un çlocamiento de la máquina pa l'aplicaçon. Las struturas de cuntrole son mais simples i eficientes.[62]
  • Quarta geraçon - Esta geraçon ye eissencialmente l sinónimo para lenguaiges cun abstraçon de dados. La maiorie de las lenguaiges desta geraçon focan na modularizaçon i ne l'ancapsulamiento. Ua lenguaige típica desta geraçon ye la lenguaige Ada.[62]
  • Quinta geraçon - Nesta geraçon, Maclennan agrupa dibersos paradigmas cumo l'ourientaçon a oubjeto i l paradigma funcional, paradigma lógico.[62]

Heinri Bal i Dick Grune, yá apersentan ua classeficaçon an geraçones de forma defrente, anfatizando mais l'aspeto de l'aplicaçon. San eilencadas 6 geraçones.[63]

Doris Apleby i Julius J. BandeKopple debeden las lenguaiges an quatro geraçones que coinciden culas quatro purmeiras geraçones eilencadas por Heinri Bal i Dick Grune.[49]

Lista de lenguaiges[eiditar | editar código-fonte]

Libros subre dibersas lenguaiges de porgramaçon

Eesisten bárias lenguaiges de porgramaçon; d'acuordo cul Índice Tiobe, las 20 mais populares son:[40]

  1. Java
  2. C
  3. Objective-C
  4. C++
  5. C♯
  6. PHP
  7. Python
  8. Visual Basic
  9. Perl
  10. Ruby
  11. JavaScript
  12. Visual Basic .NET
  13. Lisp
  14. Pascal
  15. Delphi / Object Pascal
  16. Transact-SQL
  17. Bash
  18. MATLAB
  19. Assembly
  20. Ada

Notas[eiditar | editar código-fonte]

  1. Edsger Dijkstra an sou libro La Decipline of Porgramming assi define las lenguaiges de porgramaçon: "You beijo ua lenguaige de porgramaçon percipalmente cumo un beiclo pa la çcriçon (potencialmente mui sofisticada) de macanismos abstratos" Dijkstra, Edsger W. La Decipline of Porgramming. Prentice Preça de casa, 1976. pp. 217.
  2. Para un mapa abrangente de la stória de las lenguaiges de porgramaçon ber: .com/lang/story.html Mapa de la stória de las lenguaiges de porgramaçon. Páigina bejitada an 1 de dezembre de 2010.
  3. ó rodar, cumo se diç ne l jargon de la cumputaçon
  4. Beija tamien Cumpilador.
  5. Citaçon de Knuth de l memorando de Curry: "L purmeiro passo ne l planeijamiento de l porgrama ye l d'analisar la cumputaçon an ciertas partes percipales, chamadas eiqui de debisones, de modo que l porgrama puoda ser sintetizado a partir deilhas. Las partes percipales dében ser tales que, ó pul menos alguas deilhas, son cálclos andependientes an si própios, ó modificaçones desses cálclos." an: Knuth, Donald I. Seleted Papers on Cumputer Languages. CSLI, 2003. pp. 594.
  6. Sussman eit al. menciona que las lenguaiges d'altíssemo nible son porgramadas an tenermos de sentenças declaratibas. An: Abelson, Harold; Sussman, Girald Jay; Sussman, Julie. Struture and Anterpretation of Cumputer Porgrams. 2ª.ed. McGraw-Hill, 1996. pp. 640.
  7. Muitos outores classefican las lenguaiges quanto al grau d'abstraçon an solo dous: alto i baixo. Alguns outores cumo Dennis Ritchie i Kenneth Thompson classefican alguas lenguaiges cumo C i CPL tanto cumo baixo nible cumo alto nible cumo an: Appleby, Doris; BandeKopple, Julius J. Porgramming Languages: Paradign and Pratice. 2ª.ed. McGraw-Hill, 1997. pp. 444.

Refréncias

  1. Dershen, Heirbert L.; Jipping, Michael J.. Porgramming Languages: Strutures and models. 2ª.ed. PWS Publishing Cumpany, 1995. pp. 432.
  2. Fischer, Alice I.; Grodzinsky, Frances. The Anatomy of Porgramming Languages. Prentice Preça de casa, 1993. pp. 557.
  3. 3,0 3,1 Aho, Alfred B.; Lan, Monica S.; Sethi, Rabi; Ullman, Jeffrey D. Cumpiladores: Percípios, técnicas i ferramientas. Addison-Wesley, Pearson, 2008. pp. 634.
  4. Melo, Ana Cristina Viera de; Silba, Flábio Soares Corréa de la. Percípios de Lenguaiges de Porgramaçon. Edgard Blucher Ltda, 2003. pp. 211.
  5. Hannan, James (eiditor); Ouliber, Paul (outor de l capítulo). Cumputer Porgramming Management. Ban Nostrand Reinhold, 1982. pp. 155.
  6. Sammet, Jean I. Porgramming Languages: Story and Fundamentals. Prentice Preça de casa, 1969. pp. 785.
  7. Backus, John. (1979). "". Annals of The Story of Cumputing 1 (1): 80. {{{ieditora}}}. ISSN 1058-6180.
  8. Belma R.. (1980) "". Annals of The Story of Cumputing 2 (4) pp. 299-329. {{{ieditora}}}. ISSN 1058-6180.
  9. Breton, Phelippe. Stória de la Anformática. UNESP, 1991. pp. 260.
  10. Gonick, Larry. Antroduçon Eilustrada a la Cumputaçon. Harper & Row de l Brasil, 1984. pp. 242.
  11. Smith, James F,; Frank, Thomas S. Antrodution to Porgramming Cuncets and Methods with Ada. McGraw-Hill, 1994. pp. 545.
  12. Konrad. (1980) "". Annals of The Story of Cumputing 2 (3) pp. 239-241. {{{ieditora}}}. ISSN 1058-6180.
  13. Fundamentals of Cumpilers: An Antrodution to Cumputer Language Traslation. CRC, 1992. pp. 184.
  14. 14,0 14,1 Wexelblat, Richard L.(Eiditor). Story of Porgramming Languages. Academic Press, 1981. pp. 758.
  15. Metropolis, N.(Ed.); Howlett, J.(Ed.); Rota, Gian-Carlo(Ed.). La Story of Cumputing in the Twentieth Century: La colletion of essays. Academic Press, 1980. pp. 130-131.
  16. 16,0 16,1 Wexelblat, Richard L.(Eiditor). Story of Porgramming Languages. Academic Press, 1981. pp. 758.
  17. Horowitç, Eillis (eiditor de l libro); Nauer, P. (eiditor de l capítulo). Porgramming Languages: La Grand Tour. 3ª.ed. Academic Press, 1987. pp. 512.
  18. Horowitç, Eillis (eiditor de l libro); Knuth, D. I. Porgramming Languages: La Grand Tour. 3ª.ed. Academic Press, 1987. pp. 512.
  19. Pratt, Terrence W.; Zelkowitç, Marbin B. Porgramming Languages: Zeign and Amplementation. 4ª.ed. Prentice preça de casa, 2001. pp. 649.
  20. Gray, Peter. Logic, Algebra and Databases. Eillis Horwod, 1984. pp. 294.
  21. Horowitç, Eillis. Fundamentals of Porgramming Languages. 2ª.ed. Cumputer Science Press, 1984. pp. 446.
  22. Goldberg, Adele; Robson, David. Smalltalk-80: The language. Addison-Wesley, 1989. pp. 591.
  23. Lewis, Simon. The Art and Science of Smalltalk: An Antrodution to Oubjet-Ouriented Porgramming using BisualWorks. Prentice Preça de casa, 1995. pp. 212.
  24. Sebesta, Robert W. Cunceitos de Lenguaiges de Porgramaçon. 9ª.ed. Bookman, 2010. pp. 792.
  25. 25,0 25,1 Schildt, Heirbert. C++: The Cumplete Reference. 3ª.ed. McGra-Hill, 1998. pp. 1008.
  26. Liberty, Jesse. Porgramming C#. 2ª.ed. L´Reilly, 2002. pp. 629.
  27. 27,0 27,1 Lutç, Mark. Porgramming Python. 2ª.ed. L´Reilly, 2001. pp. 1255.
  28. 28,0 28,1 Thomas, Dabe. Porgramming Ruby 1.9: The Pragmatic Porgrammers´Guide. L´Reilly, 2002. pp. 930.
  29. Anginering la Cumpiler. Morgan Kaufmann, 2003.
  30. Principles of Cumpiler Zeign. Addison-Wesley, 1977. pp. 604.
  31. 31,0 31,1 31,2 31,3 Pacitti, Tércio; Aktinson, Cyril P; Teles, Antonio Anibal de Souza (outor de l'apéndice 4a). Porgramaçon i Métodos Cumputacionales. 4ª.ed. LTC, 1983. pp. 431. 2 b. b. 1
  32. Scott, Michael L. Porgramming Language Pragmatics. 2ª.ed. Morgan Kauffman, 2006. pp. 875.
  33. Java 2: The Cumplete reference. 4ª.ed. McGraw-Hill, 2001. pp. 1076.
  34. Porgramming fur the Java Virtual Machine. Addison & Wesley, 1999. pp. 488.
  35. Cumpeling fur the .NET Common Language Runtime (CLR). Prentice Preça de casa, 2002. pp. 391.
  36. Oubjet-Ouriented Cumpiler Custrution. Prentice Preça de casa, 1995. pp. 483.
  37. Dahl, L. J.; Dijkstra, I. W.; Hoare, C. La . R. Strutured Porgramming. Academic Press, 1972. pp. 220.
  38. Knuth, Donald I. Seleted Papers on Cumputer Languages. CSLI, 2003. pp. 594.
  39. Tucker, Allen; Nonan, Robert. Porgramming Languages: Principles and paradigms. McGraw-Hill, 2002. pp. 411.
  40. 40,0 40,1 Lenguaiges de porgramaçon populares. tiobe.com. Páigina bejitada an 17 de febreiro de 2013.
  41. 41,0 41,1 Guezzi, Carlo; Jazayeri, Mehdi. Porgramming Language Cuncets. 3ª.ed. John Wiley & Sonidos, 1998. pp. 427.
  42. Wirth, Niklaus. Porgramando an Modula 2. LTC, 1989. pp. 207.
  43. Silba, José carlos G.; Assis, Fidelis Sigmaringa G. de. Lenguaiges de Porgramaçon: Cunceitos i Abaluaçon. McGraw-Hill/Ambratel, 1988. pp. 213. CDD-001.6424
  44. Harbison, Samuel P. Modula-3. Prentice-Preça de casa, 1992. pp. 312.
  45. Friedman, Daniel P.; Wand, Mitchell; haynes, Christopher T. Essentials of Porgramming Languages. MIT Press, 1998. pp. 536.
  46. Sommerbille, Ian. Software Anginering. 6ª.ed. Addison-Wesley, 2001. pp. 693.
  47. Bregalda, Paulo F.; Oulibeira, Antonio La. F. de; Bornstein, Cláudio T. Antroduçon a la Porgramaçon Linear. 3ª.ed. Campus, 1988. pp. 329.
  48. Sistema de classeficaçon de la ACM. acn.uiuc.edu. Páigina bejitada an 1 de dezembre de 2010.
  49. 49,0 49,1 49,2 49,3 49,4 Appleby, Doris; BandeKopple, Julius J. Porgramming Languages: Paradign and Pratice. 2ª.ed. McGraw-Hill, 1997. pp. 444.
  50. Watt, David La. Porgramming Language Cuncets and Paradigms. Prentice Preça de casa, 1990. pp. 322.
  51. Abelson, Harold; Sussman, Girald Jay; Sussman, Julie. Struture and Anterpretation of Cumputer Porgrams. 2ª.ed. McGraw-Hill, 1996. pp. 640.
  52. Watt, David La. Porgramming Language Cuncets and Paradigms. Prentice Preça de casa, 1990. pp. 322.
  53. McCarthy, John; Abrahams, Paul W.; Edwards, Daniel J.; Hart, Timothy P.; Lebin, Michael I. Lisp 1.5 Porgrammer´s Manual. The MIT Press, 1962. pp. 106.
  54. Dybbig, R. Kent. The Scheme Porgramming Language: Ansi Scheme. Prentice Preça de casa PTR, 1996.
  55. Hudak, Paul. Tha Haskell Schol of Spression: Learning Funtional Porgramming Through Multimedie. Cambridge University Press, 2000. pp. 363.
  56. Watt, David La. Porgramming Language Cuncets and Paradigms. Prentice Preça de casa, 1990. pp. 322.
  57. Bratko, Iban. Prolog: Porgramming fur Artificial Antelligence. 3ª.ed. Addison-Wesley, 2001. pp. 46-50.
  58. Hill, Patricia; Lloyd, John. The Gödel Porgramming Language. The MIT Press, 1994. pp. 350.
  59. 59,0 59,1 Finkel, Raphael La. Adbance Porgramming Language Zeign. Addison-Wesley, 1995. pp. 480.
  60. Guezzi, Carlo; Jazayeri, Mehdi. Cunceitos de Lenguaiges de Porgramaçon. Campus, 1985. pp. 306.
  61. 61,0 61,1 Sethi, Rabi. Porgramming Languages: Cuncets & Custruts. 2ª.ed. Addison-Wesley, 1996. pp. 640.
  62. 62,0 62,1 62,2 62,3 62,4 62,5 Maclennan, Bruce J. Principles of Porgramming Languages: Zeign, Eibaluation and Amplementation. 3ª.ed. Oxford University Press, 1999. pp. 509. ISBN 0-19-511306-3
  63. Bal, Heinri I.; Grune, Dick. Porgramming Language Essentials. Addison-Wesley, 1994. pp. 231.

Bibliografie[eiditar | editar código-fonte]

Ber tamien[eiditar | editar código-fonte]

Ligaçones sternas[eiditar | editar código-fonte]