Concrete Abstractions: An Introduction to Computer Science by Max Hailperin

By Max Hailperin

Scheme has been taught to each scholar taking computing device 'science' at MIT for the previous two decades, and it really is more and more used through the international to educate that topic. The mainstream languages C++ and visible uncomplicated are thought of to be poorly designed, and C is just too low point to be a sensible choice in a path meant to supply a accomplished advent to desktop technological know-how (which is going a long way past what the common individual calls 'programming').

Scheme is a version of Lisp, that is the second one oldest laptop language, after Fortran. it truly is, besides the fact that, a completely smooth language, and has strongly stimulated the layout of alternative sleek languages like ML and Python.

The e-book begins in Scheme, then provides item orientated strategies and meeting language. It finishes with a transition to Java, that is, in fact, just like C++. This strategy will offer a wider history than a regular textual content utilizing C++ or C could.

Show description

Read Online or Download Concrete Abstractions: An Introduction to Computer Science Using Scheme PDF

Similar database storage & design books

Information Systems Reengineering and Integration

The strategic significance of data platforms is now largely authorised, and over the past 3 many years those structures have acquired significant funding. platforms have developed from dossier platforms, via database structures, to the emergence of administration info platforms (MIS) and - extra lately - government info structures (EIS).

MCTS Microsoft SQL Server 2005 Implementation and Maintenance Study Guide 70 - 431

With the discharge of SQL Server 2005, Microsoft is introducing a brand new multi-exam certification software. The Microsoft SQL Server 2005 Implementation and upkeep examination (70-431) is the 1st cease for everybody coming into this new certification song, and serves as either a unmarried examination certification in addition to the access examination for the MCITP-level certifications.

DB2 Developer's Guide: A Solutions-Oriented Approach to Learning the Foundation and Capabilities of DB2 for z/OS

DB2 Developer's advisor is the field's number one go-to resource for on-the-job details on programming and administering DB2 on IBM z/OS mainframes. Now, three-time IBM details Champion Craig S. Mullins has completely up-to-date this vintage for DB2 v9 and v10. Mullins absolutely covers new DB2 strategies together with temporal database help; hashing; common tablespaces; pureXML; functionality, defense and governance advancements; new information varieties, and lots more and plenty extra.

Tableau 9 : the official guide

Grasp the robust instruments and lines of Tableau 9Deliver significant BI visualizations and real-time dashboards to clients throughout your organization―quickly and simply. Written by way of an skilled writer and authorized coach, Tableau nine: The legit consultant bargains step by step guide, most sensible practices, examples, and downloadable video tutorials.

Extra info for Concrete Abstractions: An Introduction to Computer Science Using Scheme

Sample text

Define a procedure side-by-side that takes two images as arguments and creates a composite image having the first image on the left and the second image on the right. 3 An Application: Quilting 17 If you don’t see how to build the three additional procedures out of quarterturn-right and stack, you may want to play more with combinations of those two. Alternatively, try playing with paper squares with basic blocks drawn on them. 10 Each dark cross in the repeating crosses pattern is formed by joining together four copies of the basic block, each facing a different way.

Note that (- n) is quite different in form from -5: The former applies a procedure to an argument, whereas the latter is a single number. It is permissible to apply the procedure named - to a number, as in (- 5), but you can’t put a negative sign on a name the way you would on a number: -n isn’t legal Scheme. We could build these ideas into our procedure as follows: (define quot (lambda (n d) (if (< d 0) (- (quot n (- d))) (if (< n 0) (- (quot (- n) d)) (if (< n d) 0 (+ 1 (quot (- n d) d))))))) Notice that our first version of quot corresponds to the innermost if; the outer two if’s deal with negative values for n and d.

Note that on the first day, my true love gave me one present, on the second day three presents, on the third day six presents, and so on. The following procedure determines how many presents I received from my true love on the nth day of Christmas: 44 Chapter 2 Recursion and Induction (define presents-on-day (lambda (n) (if (= n 1) 1 (+ n (presents-on-day (- n 1)))))) How many presents did I receive total over the 12 days of Christmas? This can be generalized by asking how many presents I received in total over the first n days.

Download PDF sample

Rated 4.22 of 5 – based on 19 votes