Introduction to Computing pdf (Explorations in Language, Logic, and Machines) is book written by David Evans, University of Virginia. This book is published in August 19, 2011 by Attribution-Noncommercial-Share Alike 3.0 United States License. This book consists of 266 pages and contains 12 chapters starting from computing, language, Programming, Problems and Procedures, Data, Machines, Cost, Sorting and searching, mutation, objects, interpreters, and Computability. These chapters are separated into 4 sections i.e Defining Procedures, Analyzing Procedures, Improving Expressiveness, and The Limits of Computing.
About the author of ntroduction to Computing pdf:
David Evans is a Professor of Computer Science, University of Virginia. His research group’s current work focuses mainly on secure multi-party computation(including Obliv-C), adversarial machine learning (EvadeML), and web security. This fall, he is co-teaching cs2102: Discrete Mathematics, with Mohammad Mahmoody. In Spring 2017, he taught a seminar focused on Understanding and Securing TLS. In Spring 2016, he taught cs1120: Introduction to Computing – Explorations in Language, Logic, and Machines, using a new approach mostly inspired by my then-three-year-old daughter’s Tae Kwon Do classes. Other courses he have taught recently include a course on cryptocurrencies and cs4414: Operating Systems (the first course to use the Rust programming language).
He developed two open on-line courses for Udacity: cs101: Building a search engine(Prospect Magazine, Chronicle, more…) and cs387: Applied Cryptography (according to InformationWeek, this the #1 Online Class To Pump Up IT Careers, although it is more meant as a fun introduction to cryptography).
To learn more about his research areas click on the below link:
conclusion of Introduction to Computing pdf:
Although today’s computers can do amazing things, many of which could not even have been imagined twenty years ago, there are problems that can never be solved by computing. The Halting Problem is the most famous example:
it is impossible to define a mechanical procedure that always terminates and correctly determines if the computation specified by its input would terminate. Once we know the Halting Problem is noncomputable, we can show that other problems are also noncomputable by illustrating how a solution to the other problem could be used to solve the Halting Problem which we know to be impossible.
Non computable problems frequently arise in practice. For example, identifying viruses, analyzing program paths, and constructing proofs, are all non computable problems.
Just because a problem is non computable does not mean we cannot produce useful programs that address the problem. These programs provide approximate solutions, which are often useful in practice. They produce the correct results on many inputs, but on some inputs must either fail to produce any result or produce an incorrect result