Pico (linguagem de programação)

Origem: Wikipédia, a enciclopédia livre.
Pico
Criado por Vrije Univesiteit Brussel

Pico é uma linguagem de programação desenvolvida no laboratório de programação da Virgem Univesiteit Brussel. Ela foi criada para introduzir elementos essenciais de programação para estudantes que não cursam ciência da computação ou cursos afins. Portanto, ela pode ser vista como um esforço para gerar uma linguagem acessível e proveitosa para pessoas que não querem estudar a fundo a elegância e o poder de uma linguagem. Eles fizeram isso adaptando esquemas semânticos.

A linguagem Pico poderia ser classificada como uma linguagem pequena, e a ideia foi criá-la para fins educacionais.

Enquanto desenvolviam a linguagem Pico, o laboratório de programação da universidade foi inspirado pelo livro de Abelson e Sussman: “Structure and Interpretation of Computer Programs”. Adicionalmente, eles também foram influenciados pelo ensino de programação das escolas de nível médio.

Pico é um editor de texto screen-oriented, conhecido também como nano.

Elementos[editar | editar código-fonte]

Em Pico, os comentários são definidos por aspas (“”), e as variáveis são definidas dinamicamente, usando escopos estáticos:

var: value

Já as funções são objetos de primeira classe, que podem ser definidas como variáveis. Por exemplo, uma função com dois argumentos arg1 e arg2 pode ser definida:

func(arg1, arg2): ...

Funções são chamadas utilizando a seguinte sintaxe:

func(value1, value2)

Operadores podem ser usados como de forma prefixada ou infixada:

+(5, 2)
5 + 2

Pico possui os seguintes tipos de dado: String, integer, real e tabelas. Não há um tipo de char nativo, sobrando como alternativa uma String de tamanho 1. Tabelas são compostas de estruturas de dados, e podem conter qualquer uma das estruturas de dados. Tipos booleanos são representados por funções, da mesma maneira que o cálculo lambda faz.

Entre as estruturas de controle, somente o if está incluído:

if(condition, then, else)

Ligações externas[editar | editar código-fonte]