Carrinho de Compras

Seu carrinho está vazio no momento.

Carrinho de Compras

Seu carrinho está vazio no momento.

Implementing Programming Languages. an Introduction to Compilers and Interpreters

Aarne Ranta (Autor)

College Publications (Editora)

R$ 151,66
SKU: 9781848900646

Implementing a programming language means bridging the gap from the programmer's high-level thinking to the machine's zeros and ones. If this is done in an efficient and reliable way, programmers can concentrate on the actual problems they have to solve, rather than on the details of machines. But understanding the whole chain from languages to machines is still an essential part of the training of any serious programmer. It will result in a more competent programmer, who will moreover be able to develop new languages. A new language is often the best way to solve a problem, and less difficult than it may sound.

This book follows a theory-based practical approach, where theoretical models serve as blueprint for actual coding. The reader is guided to build compilers and interpreters in a well-understood and scalable way. The solutions are moreover portable to different implementation languages. Much of the actual code

is automatically generated from a grammar of the language, by using the BNF Converter tool. The rest can be written in Haskell or Java, for which the

book gives detailed guidance, but with some adaptation also in C, C++, C#, or OCaml, which are supported by the BNF Converter.

The main focus of the book is on standard imperative and functional languages: a subset of C++ and a subset of Haskell are the source languages, and Java Virtual Machine is the main target. Simple Intel x86 native code compilation is shown to complete the chain from language to machine. The last chapter leaves the standard paths and explores the space of language design ranging from

minimal Turing-complete languages to human-computer interaction in natural language.

Sobre o Livro

Implementar uma linguagem de programação é apresentado como a ponte entre o pensamento de alto nível do programador e a representação binária das máquinas, com foco em soluções práticas para compilers e interpreters. O texto explora tanto linguagens imperativas quanto funcionais, tomando subconjuntos de C++ e Haskell como exemplos concretos.

O uso do BNF Converter é mostrado para gerar automaticamente grande parte do código a partir da gramática da linguagem, e o livro detalha implementações em Haskell e Java com orientações que podem ser adaptadas a outras linguagens. Há ênfase em modelos teóricos que servem de guia para codificação portável e escalável.

A cadeia completa da linguagem à máquina é ilustrada com alvo principal na Java Virtual Machine e com compilação nativa simples para Intel x86. O texto também examina variações de design linguístico, incluindo linguagens mínimas Turing-completas e aspectos de interação natural homem-computador.

Características

Categoria Tecnologia
Subcategoria Computação
Autores Aarne Ranta
Sobre o Autor Aarne Ranta é autor de obras na área de linguagens de programação e implementações formais. Escreve sobre teoria e prática de compiladores e ferramentas relacionadas.
Idioma Inglês
Quantidade de Páginas 224
Acabamento Brochura
Editora College Publications
ISBN 9781848900646
Tamanho 15.6x23.4
Translation missing: pt-BR.general.search.loading