ADV/PL - O que é?
O AdvPL (acrônimo para Advanced Protheus Language) é a linguagem de programação nativa do Microsiga Protheus, da empresa TOTVS S.A.
O AdvPL (acrônimo para Advanced Protheus Language) é a linguagem de programação nativa do Microsiga Protheus (ERP), da empresa TOTVS S.A.
Este sistema de gestão, inicialmente criado em dBase, acompanhou a evolução desta linguagem, as versões do Clipper e a utilização da biblioteca gráfica Fivewin. Planejando sua independência de plataforma, a Microsiga criou seu próprio ambiente de trabalho, intitulando a tecnologia de Protheus, uma plataforma cliente/servidor escrita em ANSI C++, possuindo uma IDE proprietária que compila o código AdvPL. A linguagem incorpora o padrão xBase do Clipper 5.3, bibliotecas externas como Fivewin, NanFor, entre outras, e funções internas criadas pela própria empresa.
O Servidor Protheus gera um arquivo único no momento da compilação, chamado de RPO (Repositório Protheus de Objetos). Este RPO é lido e executado dinamicamente. A linguagem possui uma série de funções próprias que auxiliam no desenvolvimento.
Atualmente, a tecnologia Protheus está na sua versão "10 1.2", sendo o "10" referente à tecnologia da Build (executáveis) e o "1.2" referente às regras de negócio (Financeiro, Faturamento, etc.) - Release 1.2, programadas em AdvPL, trabalhando na parte servidor em plataformas Unix e Windows e, na parte cliente, em plataformas Windows e Linux.
É uma linguagem derivada, de linhagem antiga (originou-se da CA-Clipper, que derivou-se da Clipper Summer, que derivou-se da dBase III for MS-DOS, que por sua vez, é uma migração da dBase II CP/M). As raízes da linguagem, portanto, datam de há mais de duas décadas.
Trata-se de uma pseudo-linguagem de programação (uma linguagem derivada de outra linguagem), e nos últimos anos ela vem sido aprimorada com a inclusão de diversas bibliotecas e interfaces gráficas, apesar de sua base ser antiga, não deixa nada a desejar com quaisquer das linguagens de desenvolvimento mais atuais como a Java, o C#, o Visual Basic, o PHP e outras.
Apesar de ter orientação a objetosde forma simplificada, esta é eficiente, se bem programado.
Fonte: http://pt.wikipedia.org/wiki/ADVPL