LocalazyLocalazy
OPS5 é uma linguagem de programação baseada em regras concebida no início da década de 1970 por Charles Forgy enquanto trabalhava no seu doutoramento na Carnegie Mellon University. É amplamente considerado o primeiro sistema de regras de produção, e inspirou uma série de línguas posteriores baseadas em regras, tais como CLIPS, JESS, e Drools. O OPS5 foi concebido para ser uma alternativa mais amigável e poderosa à então popular linguagem de programação Lisp. Foi concebido para permitir aos programadores escrever e manter facilmente programas que pudessem tomar decisões com base num conjunto de regras. Forgy baseou a sintaxe do OPS5 na da Lisp, mas fez uma série de alterações importantes. Mais notadamente, substituiu a sintaxe de expressão S de Lisp por uma notação infix mais tradicional. Isto tornou os programas do OPS5 muito mais fáceis de ler e escrever, e também permitiu a utilização de operadores aritméticos padrão. Os programas do OPS5 são compostos por um conjunto de regras. Cada regra tem uma condição e uma acção. Quando a condição de uma regra é cumprida, a acção é executada. Isto permite que os programas tomem decisões e tomem acções baseadas num conjunto de condições. O OPS5 é uma linguagem poderosa e expressiva que se adequa bem a uma grande variedade de aplicações. É particularmente bem adequado para inteligência artificial e sistemas especializados.