BLISS (linguagem de programação)
BLISS | |
---|---|
Surgido em | 1970 |
Criado por | W. A. Wulf, D. B. Russell, A. N. Habermann da Carnegie Mellon University |
Estilo de tipagem | sem tipagem |
Dialetos: | Common BLISS |
Influenciada por | ALGOL |
BLISS é uma linguagem de programação de sistemas desenvolvida na Universidade Carnegie Mellon por W. A. Wulf, D. B. Russell, e A. N. Habermann por volta do ano 1970. Ela foi talvez a mais conhecida linguagem de programação de sistemas até o surgimento da linguagem C. Desde então, C despontou e BLISS ficou legada ao esquecimento. Quando C foi ainda estava em sua infância, havia ainda debates em alguns projetos, no âmbito dos laboratórios da Bell, a cerca do mérito de BLISS vs C.
BLISS é uma linguagem baseada em expressões em vez de declarações, estruturada em blocos, sem tipos e inclui construções de manipulação de exceções, corotinas e macros. Não inclui uma declaração goto.
O nome é dito várias vezes para ser uma sigla para "Basic Language for Implementation of System Software" ou "System Software Implementation Language, Backwards". Foi por vezes chamado de "Bill's Language for Implementing System Software", após Bill Wulf.
O compilador original feito em Carnegie Mellon foi notável pela sua utilização extensiva de otimizações, e formou a base do clássico livro The Design of an Optimizing Compiler.
A DEC desenvolveu e manteve compiladores BLISS para o PDP-10 e PDP-11, DEC Alpha, Intel IA-64 e VAX. A maior parte dos programas utilitários para o sistema operativo VMS foram escritos em BLISS-32.
Exemplo de Código
O exemplo a seguir é tomado textualmente do manual da linguagem Bliss citado acima:
MODULE E1 (MAIN = CTRL) =
BEGIN
FORWARD ROUTINE
CTRL,
STEP;
ROUTINE CTRL =
!+
! This routine inputs a value, operates on it, and
! then outputs the result.
!-
BEGIN
EXTERNAL ROUTINE
GETNUM, ! Input a number from terminal
PUTNUM; ! Output a number to terminal
LOCAL
X, ! Storage for input value
Y; ! Storage for output value
GETNUM(X);
Y = STEP(.X);
PUTNUM(.Y)
END;
ROUTINE STEP(A) =
!+
! This routine adds 1 to the given value.
!-
(.A+1);
END
ELUDOM
Versões
- BLISS-10
- BLISS-11 - um cross compiler para o PDP-11
- BLISS-16
- BLISS-16C - Versão DEC de BLISS-11
- BLISS-32
- BLISS-36
- BLISS-64
Ligações externas
- Manual de BLISS na DECUS
- Manual de Referência da Linguagem
- "BLISS: A Language for Systems Programming" by W.A. Wulf, D.B. Russell, and A.N. Habermann. (PostScript)
- Session notes for "Introduction to BLISS" by Matthew D. Madison. (PostScript)
![]() | Este artigo sobre programação de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.
|