background preloader

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs

Related:  online-coursegeneral knowledge

C# 4.0 Reflection Programming - Part 4 In this last article of this series, we will learn what to do with reflection. But before making the topic more interesting, we'll first look at how to dynamically create an object. The C# 4.0 Reflection Programming series Part 1 An introduction to Reflection in C#.Part 2 As introduced in the first article, the most typically-used tools associated with .NET reflection are: the Type class and Assembly class related members. Scripting Languages: PHP, Perl, Python, Ruby - Hyperpolyglot a side-by-side reference sheet sheet one: version | grammar and execution | variables and expressions | arithmetic and logic | strings | regexes | dates and time | arrays | dictionaries | functions | execution control | exceptions | threads sheet two: streams | asynchronous events | files | file formats | directories | processes and environment | option parsing | libraries and namespaces | objects | inheritance and polymorphism | reflection | net and web | gui | databases | unit tests | logging | debugging sheet two: streams | asynchronous events | files | directories | processes and environment | option parsing | libraries and namespaces | objects | inheritance and polymorphism | reflection | net and web | gui | databases | unit tests | logging | debugging version used The versions used for testing code in the reference sheet.

Practical: Building a Unit Test Framework Copyright © 2003-2005, Peter Seibel In this chapter you'll return to cutting code and develop a simple unit testing framework for Lisp. This will give you a chance to use some of the features you've learned about since Chapter 3, including macros and dynamic variables, in real code. Microsoft Access Tutorials Instructions Two hints on using the Acrobat Reader: Version 3.0 provides a plug-in that works with most WWW browsers (e.g., Netscape Navigator, Microsoft Internet Explorer) and allows the PDF document to be shown within the browser window. Connecting to your creation 26 Feb 2012 edit: there is now a downloadable jar: After seeing Bret Victor's talk, Inventing on Principle, the other night, I was curious how hard it would be to build some of things he demoed - so I put together a live ClojureScript game editor today. Here's a video of it in action: It basically replicates what was in his demo (minus the Braid graphics). The one thing I didn't implement was rolling forward and back with a slider, since I thought the projection was far more useful.

Coding4Fun Articles We've all cringed as a hopelessly out of tune contestant appears on the latest episode of “American Idol.” Occasionally, there's a contestant who manages to be pitch perfect all the way through—right until they flub the final note. And in the cutthroat world of televised auditions, sing one slightly flat note and you're out. LISP Tutorial Lecture 3: Data Abstraction Binary Trees Suppose we want to create a new kind of recursive data type, our familiar binary trees. The first thing we have to do is to define the data type in terms of its constructors, selectors and recognizers. In the case of binary trees, we have the following: The Meditation Course: a 12 week on-line Buddhist meditation course Vipassana Fellowship Meditation Course An established online course in Mindfulness Meditation as found in the Serenity and Insight traditions of early Buddhism. Please join us for one of our 12 week courses: April 2014 (12 week course: 5 Apr - 27 Jun) - Course startedSeptember 2014 (12 week course: 6 Sept - 28 Nov) - Applications open next weekJanuary 2015 (12 week course: 10 Jan - 3 Apr) Vipassana Fellowship's online meditation courses have been offered since 1997 and have proven helpful to meditators in many countries around the world.

creating a simple game in clojure - ideolalia There's a certain type of person who, upon seeing a new language, feels compelled to write a game with it. Functional languages represent a unique challenge in this respect, as has been written about at some length elsewhere. Clojure adds an interesting wrinkle to this problem, in the form of its Java interop. If a game consists of a thin layer of Clojure wrapped around a full-featured Java game engine, is it actually "written in Clojure"? Without getting bogged down in semantics, I suggest that a Clojure application (such as the game discussed in this post) is something that can be easily extended using Clojure's data structures and concurrency primitives.

PHP IDE: Avoiding Emacs I love Emacs. I consider this a problem, because while it’s an exceptionally powerful and productive environment for a programmer, I feel like it’s a tool that has a good chance of being left in the dust of quickly developing modern IDE’s. I use Emacs for basically every kind of programming and writing, both in Windows and Linux, but I’ve resisted using it in programming for the web. I’ve been using Dreamweaver: the Visual Basic of PHP IDE’s in Windows, and I mean that in a bad way. I don’t use almost any of the visual features of Dreamweaver, because in my opinion, those features are intended for designers that are for the most part new to web design.

Pointer Basics This document introduces the basics of pointers as they work in several computer languages -- C, C++, Java, and Pascal. This document is the companion document for the Pointer Fun with Binky digital video, or it may be used by itself. This is document 106 in the Stanford CS Education Library. This and other free materials are available at Deep Emacs Lisp Part 2 Streams Last time we went through a lengthy development of monads in emacs lisp. Most of our attention was focused on just getting the idea down, and we developed a pretty full list monad. It was intimated at the time that the list monad can be thought of as a "possibilities" monad. Description of Vipassana Meditation Vipassana, which means to see things as they really are, is one of India's most ancient techniques of meditation. It was rediscovered by Gotama Buddha more than 2500 years ago and was taught by him as a universal remedy for universal ills, i.e., an Art Of Living. This non-sectarian technique aims for the total eradication of mental impurities and the resultant highest happiness of full liberation. Vipassana is a way of self-transformation through self-observation. It focuses on the deep interconnection between mind and body, which can be experienced directly by disciplined attention to the physical sensations that form the life of the body, and that continuously interconnect and condition the life of the mind. It is this observation-based, self-exploratory journey to the common root of mind and body that dissolves mental impurity, resulting in a balanced mind full of love and compassion.

Related:  Compiler Construction and DesignScalaTutorials & lessons