Showing off scheme - Functions - Expressions - Defining your own procedures - Words and sentences - True and false - Variables - Higher-order functions - Lambda - Introduction to recursion - The leap of faith - How recursion works - Common patterns in recursive procedures - Advanced recursion - Example : the functions program - Files - Vectors - Example : a spreadsheet program - Implementing the spreadsheet program - What's next?
This is the first introduction to computer programming text to focus on functional programming which is not too mathematically rigorous for freshmen. The text features an introduction to the Scheme programming language and real-world examples and exercises which are easy to follow and learn from.
Grothendieck’s beautiful theory of schemes permeates modern algebraic geometry and underlies its applications to number theory, physics, and applied mathematics. This simple account of that theory emphasizes and explains the universal geometric concepts behind the definitions. In the book, concepts are illustrated with fundamental examples, and explicit calculations show how the constructions of scheme theory are carried out in practice.
It was a time when anything seemed possible–instant wealth, glittering fame, fabulous luxury–and for a run of magical weeks in the spring and summer of 1920, Charles Ponzi made it all come true. Promising to double investors’ money in three months, the dapper, charming Ponzi raised the “rob Peter to pay Paul” scam to an art form. At the peak of his success, Ponzi was raking in more than $2 million a week at his office in downtown Boston. Then his house of cards came crashing down–thanks in large part to the relentless investigative reporting of Richard Grozier’s Boston Post. A classic American tale of immigrant life and the dream of success, Ponzi’s Scheme is the amazing story of the magnetic scoundrel who launched the most successful scheme of financial alchemy in modern history.
A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming. This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.
The new edition of a classic text that concentrates on developing general methods for studying the behavior of classical systems, with extensive use of computation. We now know that there is much more to classical mechanics than previously suspected. Derivations of the equations of motion, the focus of traditional presentations of mechanics, are just the beginning. This innovative textbook, now in its second edition, concentrates on developing general methods for studying the behavior of classical systems, whether or not they have a symbolic solution. It focuses on the phenomenon of motion and makes extensive use of computer simulation in its explorations of the topic. It weaves recent discoveries in nonlinear dynamics throughout the text, rather than presenting them as an afterthought. Explorations of phenomena such as the transition to chaos, nonlinear resonances, and resonance overlap to help the student develop appropriate analytic tools for understanding. The book uses computation to constrain notation, to capture and formalize methods, and for simulation and symbolic analysis. The requirement that the computer be able to interpret any expression provides the student with strict and immediate feedback about whether an expression is correctly formulated. This second edition has been updated throughout, with revisions that reflect insights gained by the authors from using the text every year at MIT. In addition, because of substantial software improvements, this edition provides algebraic proofs of more generality than those in the previous edition; this improvement permeates the new edition.
Racket is a descendant of Lisp, a programming language renowned for its elegance, power, and challenging learning curve. But while Racket retains the functional goodness of Lisp, it was designed with beginning programmers in mind. Realm of Racket is your introduction to the Racket language. In Realm of Racket, you'll learn to program by creating increasingly complex games. Your journey begins with the Guess My Number game and coverage of some basic Racket etiquette. Next you'll dig into syntax and semantics, lists, structures, and conditionals, and learn to work with recursion and the GUI as you build the Robot Snake game. After that it's on to lambda and mutant structs (and an Orc Battle), and fancy loops and the Dice of Doom. Finally, you'll explore laziness, AI, distributed games, and the Hungry Henry game. As you progress through the games, chapter checkpoints and challenges help reinforce what you've learned. Offbeat comics keep things fun along the way. As you travel through the Racket realm, you'll: –Master the quirks of Racket's syntax and semantics –Learn to write concise and elegant functional programs –Create a graphical user interface using the 2htdp/image library –Create a server to handle true multiplayer games Realm of Racket is a lighthearted guide to some serious programming. Read it to see why Racketeers have so much fun!
'The Address Book' starts with some of the fundamental questions asked by everyone, in every culture, since the beginning of civilisation. Who am I? Where am I? Where am I going?
'There's no such thing as an average or old-fashioned business, just average or old-fashioned ways to do business. In fact, the opportunity to reach for extraordinary may be most pronounced in settings that have been far too ordinary for far too long' Far away from Silicon Valley, in familiar, traditional, even unglamorous fields, ordinary people are unleashing extraordinary advances that amaze customers, energize employees, and create huge economic value. Their secret? They understand that inventing the future doesn't just mean designing mobile apps and developing virtual-reality headsets. In Simply Brilliant, the visionary co-founder of Fast Company William C. Taylor goes behind the scenes at some of the unsung organizations that are revolutionizing their otherwise humdrum fields. These unlikely agents of change range from a parking garage that also serves as a wedding venue, to a military insurance company that puts salespeople through simulated overseas deployment. The message is both simple and subversive: in a time of wrenching disruptions and exhilarating leaps, of unrelenting turmoil and unlimited promise, the future is open to everybody. Simply Brilliant illustrates how breakthrough creativity and breakaway performance can be summoned in all industries, if leaders dare to reimagine what's possible in their fields.
A new way forward for sustainable quality of life in cities of all sizes Strong Towns: A Bottom-Up Revolution to Build American Prosperity is a book of forward-thinking ideas that breaks with modern wisdom to present a new vision of urban development in the United States. Presenting the foundational ideas of the Strong Towns movement he co-founded, Charles Marohn explains why cities of all sizes continue to struggle to meet their basic needs, and reveals the new paradigm that can solve this longstanding problem. Inside, you’ll learn why inducing growth and development has been the conventional response to urban financial struggles—and why it just doesn’t work. New development and high-risk investing don’t generate enough wealth to support itself, and cities continue to struggle. Read this book to find out how cities large and small can focus on bottom-up investments to minimize risk and maximize their ability to strengthen the community financially and improve citizens’ quality of life. Develop in-depth knowledge of the underlying logic behind the “traditional” search for never-ending urban growth Learn practical solutions for ameliorating financial struggles through low-risk investment and a grassroots focus Gain insights and tools that can stop the vicious cycle of budget shortfalls and unexpected downturns Become a part of the Strong Towns revolution by shifting the focus away from top-down growth toward rebuilding American prosperity Strong Towns acknowledges that there is a problem with the American approach to growth and shows community leaders a new way forward. The Strong Towns response is a revolution in how we assemble the places we live.