Hasta 55% | Hasta 12 MSI

Estas promociones se aplicarán a este artículo:

Algunas promociones pueden ser combinadas; otras no. Para mas detalles, revisa los Terminos y Condiciones asociados con cada promoción.

¡Te suscribiste a ! Compraremos en preventa tus artículos en un plazo de 24 horas a partir de que estén disponibles. Cuando se lancen nuevos libros, cobraremos a tu método de pago predeterminado el precio más bajo disponible durante el periodo de preventa.
Actualiza tu dispositivo o método de pago, cancela preventas individuales o tu suscripción en
Mis membresías y suscripciones
Imagen del logotipo de la app de Kindle

Descarga la app de Kindle gratuita y comienza a leer libros Kindle al instante en tu smartphone, tablet o computadora no se requiere un dispositivo Kindle.

Lee instantáneamente en tu navegador con Kindle para web.

Con la cámara de tu teléfono celular: escanea el siguiente código y descarga la app de Kindle.

Código QR para descargar la app de Kindle

Seguir al autor

Se produjo un error. Intenta enviar tu solicitud de nuevo más tarde.

Crafting Interpreters (English Edition) Edición Kindle

4.8 4.8 de 5 estrellas 591 calificaciones

Despite using them every day, most software engineers know little about how programming languages are designed and implemented. For many, their only experience with that corner of computer science was a terrifying "compilers" class that they suffered through in undergrad and tried to blot from their memory as soon as they had scribbled their last NFA to DFA conversion on the final exam.

That fearsome reputation belies a field that is rich with useful techniques and not so difficult as some of its practitioners might have you believe. A better understanding of how programming languages are built will make you a stronger software engineer and teach you concepts and data structures you'll use the rest of your coding days. You might even have fun.

This book teaches you everything you need to know to implement a full-featured, efficient scripting language. You’ll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up with new ideas, and your hands will get dirty and calloused.

Starting from main(), you will build a language that features rich syntax, dynamic typing, garbage collection, lexical scope, first-class functions, closures, classes, and inheritance. All packed into a few thousand lines of clean, fast code that you thoroughly understand because you wrote each one yourself.
Debido al gran tamaño del archivo, es posible que este libro tarde más en descargarse

Outlet de Libros Outlet de Libros

Detalles del producto

  • ASIN ‏ : ‎ B09BCCVLCL
  • Editorial ‏ : ‎ Genever Benning (27 julio 2021)
  • Idioma ‏ : ‎ Inglés
  • Tamaño del archivo ‏ : ‎ 18134 KB
  • Uso simultáneo de dispositivos ‏ : ‎ Sin límite
  • Texto a voz ‏ : ‎ Activado
  • Tipografía mejorada ‏ : ‎ Activado
  • X-Ray ‏ : ‎ No activado
  • Word Wise ‏ : ‎ No activado
  • Número de páginas ‏ : ‎ 1192 páginas
  • Opiniones de los clientes:
    4.8 4.8 de 5 estrellas 591 calificaciones

Acerca del autor

Sigue a autores para obtener actualizaciones sobre los estrenos y mejores recomendaciones.
Robert Nystrom
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Descubre más de los libros del autor, consulta autores similares, lee recomendaciones de libros y más.

Opiniones de clientes

4.8 de 5 estrellas
591 calificaciones globales

Las mejores reseñas de México

Comentado en México el 22 de octubre de 2021
Si alguna vez quisiste saber cómo escribir un intérprete de un lenguaje de programación de (relativamente) alto nivel, este es un gran libro. El autor empieza definiendo el lenguaje que quiere implementar (Lox) y luego desarrollo dos intérpretes para este lenguaje, uno en Java (para entender las bases) y luego otro mucho más rápido en C, pero también más complejo, en C.

Se trata de un libro ameno, escrito por un experto que conoce el tema a fondo y que te permitirá aprender todos los conceptos fundamentales. ¡Altamente recomendado!
A 7 personas les resultó útil
Reportar
Comentado en México el 23 de diciembre de 2022
El producto llego bien a pesar de haber pasado por anzalduas.
Poco más puedo pedir.

Más que una opción de DHL.
Comentado en México el 25 de enero de 2023
Excelente libro. Lo más importante de todo es que se muestra la implementación de la teoria.
Comentado en México el 3 de mayo de 2022
Excelente !!! los conceptos teóricos bastante bien explicados, todas las fases de compilación, análisis léxico, sintáctico y semántico están muy entendibles, para alumnos que cursan la carrera de sistemas, informática o tecnologías de la información, este libro está más que recomendable,
A 2 personas les resultó útil
Reportar

Mejores reseñas de otros países

Traducir todas las opiniones al Español
Richard Frantz Jr.
5.0 de 5 estrellas Useful information for writing a small interpreter
Comentado en los Estados Unidos el 29 de agosto de 2024
A lot of this reminds me of when I studied from the Dragon Book in school, and what I remember is very helpful, but this book is more on a practical tack of actually use it. (Best thing for me was a suggestion that I take as never mind getting the elegant and difficult way of doing what I want and just get started and I can add the hard to use tools later.) Uses examples that seem of trivial use but clear examples and well describes the techniques needed.
José
5.0 de 5 estrellas Excelente! Bem completo na área de compiladores
Comentado en Brasil el 13 de febrero de 2023
Recebi esse livro super rápido com nota fiscal e tudo certo! Ainda não tive tempo para ler o livro, mas é um produto excelente sobre compiladores.
Frederic Guerin
5.0 de 5 estrellas Outstanding and enjoyable!
Comentado en Canadá el 28 de julio de 2022
This is a fascinating book in many different ways.

I am myself a teacher and throughout the book I could feel the author
attention and dedication in making this book something you could learn from.
He touches many different aspects of the matter with many great explanations
and without hiding the forest behind the trees, adding a touch of humour and his own illustrations.
He deserves my own job 10 times.

All the code you need to write is in the book. I tried hard to find a mistake, even a typo, but to no avail.
At times you wonder why he is writing the code that way, but then later, you find about it,
so you need to be careful to follow him as much as possible. The problem is that each
chapter ends with some interesting challenges, and if you tackle them in the order they come,
then your code becomes somewhat different from what's in the book and you then need
to figure out how to put that into place in your own code. That is exactly the problem I was confronted with in the Java part of the book, and by chance refrained from doing in the C part.

Another problem is testing your code. Sooner or later you will need to get some certitude about the
things you wrote, even if you follow the author as much as possible, and that means testing it.
I put in place my own tests for the Java part, throwing in many hours of effort.
I then realised the author had build it's own testing framework on his github repo for the book,
and used his framework for testing the C part of the book. The tests are written in Dart, and there is not much documentation into place to instruct you how to run them on a chapter by chapter basis. I had to read the code to figure out how to do it, and adapt the code a little bit to make it run properly under Windows, but I finally succeed. Dart is easy to grasp, but you still need to understand how to install the Dart ecosystem and properly configure it with the package manager.

As for the code itself, the Java part is as you would expect it to be. Functionalities are well segregated in to many classes doing their own things, with proper encapsulation. As for the C part, well, I guess I am not very accostumed to how compiler coders are writing C code. To me, this code seems like a mess. Macros are used extensively. There are many cross-dependecies between files. Of course the author is very knowledgeable and know its art. When doing the NaN boxing at the end of the book (last chapter on optimization) you understand why so much macros to begin with. As for cross-dependencies, I tried to figure out how I could avoid it, but to no avail. I suppose I just need to accept it that way.

No book is perfect, but still, this book is mostly perfect, even in its imperfections. 5 stars.
Partime
5.0 de 5 estrellas Great content. Not so perfect binding.
Comentado en India el 10 de noviembre de 2024
This is a very good introductory book to writing compiler, although any advanced work will require comprehensive knowledge on formal languages, type theory, etc. Wish the book was available in hardcover as the glued binding does not look like it would last long them use.
PMU
5.0 de 5 estrellas Die Kraft des Tuns - Super!
Comentado en Alemania el 12 de julio de 2024
Robert Nystrom sagt gleich zu Anfang: „It’s the book I wish I’d had when I first started getting into languages…”. Diese Aussage kann ich nur unterstreichen. Ich habe in den letzten Jahrzehnten sehr viele Bücher zum Thema Scannen, Parsen, Kompilieren, Interpretieren und über den Aufbau und die Struktur von Sprachen durchgeackert und versucht, sie für meine Arbeit zu nutzen.

Dies ist vor allem wegen des immensen Theorieanteils der Werke nicht immer gelungen. Der akademische Aspekt, die Mathematik und Logik, deren Notationen und die dadurch erzielte Effizienz mögen wichtig sein; doch sie schläfern auch ein, lenken vom eigentlichen Ziel ab und können darüber hinaus auch mehr verwirren als helfen.

Der in diesem Buch verfolgte Ansatz ist viel pragmatischer und einfacher zu verstehen: Die speziell für den Lehrzweck geschaffene Sprache Lox wird gleich zweimal, Hand in Hand mit dem Leser, als Interpreter implementiert.

Einmal so simpel wie möglich, mit einem auf Java basierenden rekursiven Tree-Walking-Interpreter und einmal auf Performance und Kompaktheit optimiert, in maschinennahem C. Theorie gibt es immer nur so viel, wie es für den nächsten Abschnitt absolut notwendig ist.

Ich habe beide Teile durchgearbeitet und bin der Meinung, dass es mit Abstand das beste Buch zum Thema ist.

Es ist didaktisch rund und mit vielen Aufgaben und Herausforderungen gespickt, die im zugehörigen Github auch aufgelöst werden.

Es ist sprachlich ausgereift und trotz des „trockenen“ Themas sehr amüsant geschrieben.

Beide Teile implementieren das Gleiche mit unterschiedlichen Schwerpunkten; das hilft, zunächst die Konzepte und dann die Wege und Optimierungen zu verstehen.

Der Praxisbezug vermittelt Architektur und Design-Patterns auf beinahe spielerische Weise.

Aber das Beste: Das Buch hat keine Fehler. Obwohl der Code Schritt für Schritt ergänzt und verändert wird, ist er zu jedem vorgesehenen Zeitpunkt einsatzfähig und leistet, was er soll. Keine Sackgassen, Verwirrung und Frust!

Der erste Interpreter ist übrigens auch ohne Schwierigkeit auf Python implementierbar.

Informar de un problema


¿Este producto tiene contenido inapropiado?
¿Cree que este producto infringe los derechos de autor?
¿Este producto tiene problemas de calidad o formato?