"drawings by Duane Bibby" foreword by Gerald J. Sussman "I learned more about LISP from this book than I have from any of the other LISP books I've read over the years. . . . While other books will tell you the mechanics of LISP, they can leave you largely uninformed on the style of problem-solving for which LISP is optimized. The Little LISPer teaches you how to think in the LISP language. . . an inexpensive, enjoyable introduction." -- Gregg Williams, Byte The notion that "thinking about computing is one of the most exciting things the human mind can do" sets both "The Little Schemer" (formerly known as "The Little LISPer" ) and its new companion volume, "The Seasoned Schemer," apart from other books on LISP. The authors' enthusiasm for their subject is compelling as they present abstract concepts in a humorous and easy-to-grasp fashion. Together, these books will open new doors of thought to anyone who wants to find out what computing is really about. "The Little Schemer" introduces computing as an extension of arithmetic and algebra -- things that everyone studies in grade school and high school. It introduces programs as recursive functions and briefly discusses the limits of what computers can do. The authors use the programming language Scheme, and interesting foods to illustrate these abstract ideas. "The Seasoned Schemer" informs the reader about additional dimensions of computing: functions as values, change of state, and exceptional cases. "The Little LISPer" has been a popular introduction to LISP for many years. It had appeared in French and Japanese. "The Little Schemer" and "The SeasonedSchemer" are worthy successors and will prove equally popular as textbooks for Scheme courses as well as companion texts for any complete introductory course in Computer Science. Download DrScheme - a graphical environment for developing Scheme programs
There are surprises in store for the diligent reader of this masterful introduction to recursion as a fundamental tool for expressing and solving problems. With wit and wisdom, The Little LISPer unfolds some of the most beautiful concepts in mathematics, computer science, and logic. The authors' goal is to show that recursive thinking is first of all fun, that it is powerful, and that the programming language Lisp allows one to express ideas recursively and naturally. There are hard problems along the way, but their solution brings mastery of recursive, functional, and meta-linguistic abstractions, developing skills in the underlying creative programming in Lisp. The Little LISPer is self-contained: an interpreter for the language is developed using the tools of the book itself .
foreword by Ralph E. Johnson and drawings by Duane Bibby 'This is a book of 'why' not 'how.' If you are interested in the nature of computation and curious about the very idea behind object orientation, this book is for you. This book will engage your brain (if not your tummy). Through its sparkling interactive style, you will learn about three essential OO concepts: interfaces, visitors, and factories. A refreshing change from the 'yet another Java book' phenomenon. Every serious Java programmer should own a copy.' -- Gary McGraw, Ph.D., Research Scientist at Reliable Software Technologies and coauthor of Java Security Java is a new object-oriented programming language that was developed by Sun Microsystems for programming the Internet and intelligent appliances. In a very short time it has become one of the most widely used programming languages for education as well as commercial applications. Design patterns, which have moved object-oriented programming to a new level, provide programmers with a language to communicate with others about their designs. As a result, programs become more readable, more reusable, and more easily extensible. In this book, Matthias Felleisen and Daniel Friedman use a small subset of Java to introduce pattern-directed program design. With their usual clarity and flair, they gently guide readers through the fundamentals of object-oriented programming and pattern-based design. Readers new to programming, as well as those with some background, will enjoy their learning experience as they work their way through Felleisen and Friedman's dialogue. src='/graphics/yellowball.gif' href='/books/FELTP/Java-fm.html'Foreword and Preface
A++ ist eine Programmiersprache, die an Minimalismus nicht zu übertreffen ist. Ihr einziger Zweck ist es, an der Programmierung Interessierten zu helfen, so schnell und effizient wie nur möglich das Wesentliche der Programmierung zu erfassen. In verhältnismäßig kurzer Zeit werden Denkmuster eingeübt, die einen befähigen, sich müheloser in die großen populären Programmiersprachen einzuarbeiten, um in ihnen produktiv werden zu können. In diesem Buch wird eine Erweiterung von A++ vorgestellt, die einer neuen Programmiersprache entspricht (mit Compiler und virtueller Maschine) in der die Funktionalität von Scheme, Python, Java, C++ und C enthalten ist. Dies ist möglich, da in ARS++ eine Schnittstelle zu den anderen Sprachen namens ARSAPI eingebaut ist. Nicht nur ein A++-Interpreter wird zur Verfügung gestellt, sondern auch ein ARS++-Compiler und ein Interpreter für die virtuelle Maschine (AVIM). Auch dieses Buch enthält im Anhang eine Einführung in das Lambda-Kalkül von Alonzo Church. Das Buch wendet sich an alle Personen, die sich mit dem Erlernen der Kunst der Programmierung befassen. Dies sind vor allem Lehrende und Lernende an Hochschulen und den Oberstufen von Gymnasien in den Fachbereichen der Informatik, der Mathematik und der Physik.
An introduction to writing proofs about computer programs, written in an accessible question-and-answer style, complete with step-by-step examples and a simple proof assistant.
Der Turing Omnibus macht in 66 exzellent geschriebenen Beiträgen Station bei den interessantesten Themen aus der Informatik, der Computertechnologie und ihren Anwendungen.
Die Übersetzung der bewährten Einführung in die Informatik, entstanden am Massachusetts Institute of Technology (MIT), wird seit Jahren erfolgreich in der Lehre eingesetzt. Schritt für Schritt werden Konstruktion und Abstraktion von Daten und Prozeduren dargestellt. Von der Modularisierung bis zum Problemlösen mit Registermaschinen werden verschiedene Programmierparadigmen entwickelt und die effektive Handhabung von Komplexität gezeigt. Als Programmiersprache wird SCHEME verwendet, ein Dialekt von LISP. Alle Programme laufen in jeder dem IEEE-Standard entsprechenden SCHEME-Implementierung.
Janie Jenkins hat alles: Ruhm, Geld und gutes Aussehen. Doch dann wird ihre Mutter ermordet – und alle Beweise sprechen gegen sie. Das Problem: Janie kann sich selbst nicht daran erinnern, was in jener Nacht geschehen ist. Als sie zehn Jahre später aus dem Gefängnis entlassen wird, macht sie sich auf die verzweifelte Suche nach der Wahrheit. Eine Spur führt sie in die kleine Stadt Adeline in South Dakota, wo sie unter falscher Identität Stück für Stück die Vergangenheit ihrer Mutter entschlüsselt. Warum musste diese sterben – und trägt Janie tatsächlich Schuld an ihrem Tod?
This textbook offers an understanding of the essential concepts of programming languages. The text uses interpreters, written in Scheme, to express the semantics of many essential language elements in a way that is both clear and directly executable.
Sie ist elegant, schlank, modern und flexibel: Die Rede ist von Scala, der neuen Programmiersprache für die Java Virtual Machine (JVM). Sie vereint die Vorzüge funktionaler und objektorientierter Programmierung, ist typsicherer als Java, lässt sich nahtlos in die Java-Welt integrieren – und eine in Scala entwickelte Anwendung benötigt oft nur einen Bruchteil der Codezeilen ihres Java-Pendants. Kein Wunder, dass immer mehr Firmen, deren große, geschäftskritische Anwendungen auf Java basieren, auf Scala umsteigen, um ihre Produktivität und die Skalierbarkeit ihrer Software zu erhöhen. Das wollen Sie auch? Dann lassen Sie sich von den Scala-Profis Dean Wampler und Alex Payne zeigen, wie es geht. Ihre Werkzeugkiste: Schon bevor Sie loslegen, sind Sie weiter, als Sie denken: Sie können Ihre Java-Programme weiter verwenden, Java-Bibliotheken nutzen, Java von Scala aus aufrufen und Scala von Java aus. Auch Ihre bevorzugten Entwicklungswerkzeuge wie NetBeans, IntelliJ IDEA oder Eclipse stehen Ihnen weiter zur Verfügung, dazu Kommandozeilen-Tools, Plugins für Editoren, Werkzeuge von Drittanbietern – und natürlich Ihre Programmiererfahrung. In Programmieren mit Scala erfahren Sie, wie Sie sich all das zunutze machen. Das Hybridmodell: Die Paradigmen "funktional" und "objektorientiert" sind keine Gegensätze, sondern ergänzen sich unter dem Scala-Dach zu einem sehr produktiven Ganzen. Nutzen Sie die Vorteile funktionaler Programmierung, wann immer sich das anbietet – und seien Sie so frei, auf die guten alten Seiteneffekte zu bauen, wenn Sie das für nötig halten. Futter für die Profis: Skalierbare Nebenläufigkeit mit Aktoren, Aufzucht und Pflege von XML mit Scala, Domainspezifische Sprachen, Tipps zum richtigen Anwendungsdesign – das sind nur ein paar der fortgeschrittenen Themen, in die Sie mit den beiden Autoren eintauchen. Danach sind Sie auch Profi im Programmieren mit Scala.
In Visionare der Programmierung - Die Sprachen und ihre Schopfer werden exklusive Interviews mit den Entwicklern von historischen wie auch von hoch aktuellen Programmiersprachen veroffentlicht. In dieser einzigartigen Zusammenstellung erfahren Sie uber die Hintergrunde, die zu den spezifischen Design-Entscheidungen in den Programmiersprachen gefuhrt haben und uber die ursprungliche Ziele, die die Entwickler im Kopf hatten, als sie eine neue Programmiersprache entwarfen. Ebenso konnen Sie lesen, wieso Abweichungen zum ursprunglichen Design entstanden und welchen Einflu die jeweilige Sprache auf die heutige Softwareentwicklung noch besitzt. Adin D. Falkoff: APL Thomas E. Kurtz: BASIC Charles H. Moore: FORTH Robin Milner: ML Donald D. Chamberlin: SQL Alfred Aho, Peter Weinberger und Brian Kernighan: AWK Charles Geschke und John Warnock: PostScript Bjarne Stroustrup: C++ Bertrand Meyer: Eiffel Brad Cox und Tom Love: Objective-C Larry Wall: Perl Simon Peyton Jones, Paul Hudak, Philip Wadler und John Hughes: Haskell Guido van Rossum: Python Luiz Henrique de Figueiredo und Roberto Ierusalimschy: Lua James Gosling: Java Grady Booch, Ivar Jacobson und James Rumbaugh: UML Anders Hejlsberg: Delphi-Entwickler und fuhrender Entwickler von C#
Books in print is the major source of information on books currently published and in print in the United States. The database provides the record of forthcoming books, books in-print, and books out-of-print.
EINE TOUR DURCH C++ // - Dieser Leitfaden will Ihnen weder das Programmieren beibringen noch versteht er sich als einzige Quelle, die Sie für die Beherrschung von C++ brauchen – aber diese Tour ist wahrscheinlich die kürzeste oder einfachste Einführung in C++11. - Für C- oder C++-Programmierer, die mit der aktuellen C++-Sprache vertrauter werden wollen - Programmierer, die in einer anderen Sprache versiert sind, erhalten ein genaues Bild vom Wesen und von den Vorzügen des modernen C++ . Mit dem C++11-Standard können Programmierer Ideen klarer, einfacher und direkter auszudrücken sowie schnelleren und effizienteren Code zu schreiben. Bjarne Stroustrup, der Designer und ursprüngliche Implementierer von C++, erläutert die Details dieser Sprache und ihre Verwendung in seiner umfassenden Referenz „Die C++-Programmiersprache“. In „Eine Tour durch C++“ führt Stroustrup jetzt die Übersichtskapitel aus der Referenz zusammen und erweitert sie so, dass auch erfahrene Programmierer in nur wenigen Stunden eine Vorstellung davon erhalten, was modernes C++ ausmacht. In diesem kompakten und eigenständigen Leitfaden behandelt Stroustrup – neben Grundlagen – die wichtigsten Sprachelemente und die wesentlichen Komponenten der Standardbibliothek. Er präsentiert die C++-Features im Kontext der Programmierstile, die sie unterstützen, wie die objektorientierte und generische Programmierung. Die Tour beginnt bei den Grundlagen und befasst sich dann mit komplexeren Themen, einschließlich vieler, die neu in C++11 sind wie z.B. Verschiebesemantik, einheitliche Initialisierung, Lambda-Ausdrücke, verbesserte Container, Zufallszahlen und Nebenläufigkeit. Am Ende werden Design und Entwicklung von C++ sowie die in C++11 hinzugekommenen Erweiterungen diskutiert. Programmierer erhalten hier – auch anhand von Schlüsselbeispielen – einen sinnvollen Überblick und praktische Hilfe für den Einstieg. AUS DEM INHALT // Die Grundlagen // Benutzerdefinierte Typen // Modularität // Klassen // Templates // Überblick über die Bibliothek // Strings und reguläre Ausdrücke // E/A-Streams // Container // Algorithmen // Utilities // Numerik // Nebenläufigkeit // Geschichte und Kompatibilität
Comprehensive treatment focuses on creation of efficient data structures and algorithms and selection or design of data structure best suited to specific problems. This edition uses Java as the programming language.

Best Books