Papinho nerd. Por que linguagens script são lentas? Porque são interpretadas. Ou seja, as instruções do texto são lidas e executadas uma por uma. Mas elas não precisam ser interpretadas, podem, mesmo sendo linguagens interativas, ser compiladas, isto é, as instruções são lidas, é montado um código de máquina e em seguida ele é executado.
Presumamos uma interface por linha de caracteres (CLI). O compilador lê a linha de entrada até um ENTER. Procura por comandos na linha (tokens). Acha o ponto de entrada do código de máquina de cada token, numa lista de tokens, e monta uma lista de CALLs para as rotinas de máquina. Quando chega no final da linha de entrada, monta um RETURN e dá um JUMP para o início da lista de CALLS (na verdade, verdadeiro código de máquina):
INICIO: CALL comando_1 CALL comando_2 CALL comando_3 RET
Os comandos compilados rodam em velocidade de máquina, e quando é encontrado o RET, o compilador volta para a linha de entrada para ler mais comandos. Pronto. Assim eram o GraForth e o TransForth do Apple ][, as mais bonitas peças de software que eu já vi, criação da cabeça genial do matemático Paul Lutus. Mas o modelo lógico é Forth, criação da cabeça genial de Chuck Moore. E que agora, graças ao projeto OLPC, se tornará uma das linguagens mais usadas no mundo: ela é o BIOS e bootloader do laptop XO.
Prezado.
Ví que esta matéria é de 2007 e estamos em 2011, portanto cabe aqui algumas perguntas: A linguagem Forth, na sua opinião, é uma linguagem que está morrendo ? Assim como você, acho também que esta linguagem foi a mais inteligente criada até hoje mas não é qualquer um que consegue entender, portanto, você vê algum futuro para ela, no desenvolvimento de aplicativos comerciais ?
Olá, Mário!
Atualmente, ela é usada no bootloader do laptop XO do programa One Laptop Per Child. É uma linguagem de nicho, ótima para hackers. Não é, digamos, uma linguagem “comercial”.