Component Deployment with PLaneT

Here is a paper about how PLT Scheme’s package repository, PLanetT was designed. PLanetT is a the PLT Scheme equivalent of CPAN.

For the past two years we have been developing PLaneT, a package manager built in to PLT Schemes module system that simplifies program development by doing away with the distinction between installed and uninstalled packages. In this paper we explain how PLaneT works and the rationales behind our major design choices, focusing particularly on our decision to integrate PLaneT into PLT Scheme and the consequences that decision had for PLaneTs design. We also report our experience as PLaneT users and developers and describe what have emerged as PLaneTs biggest advantages an drawbacks.

(mentioned in this post PLT)

What is Study-HTDP?

Study-HTDP is a study group for folks who want to read through HTDP. My rationale is explained here. I suspect that many blog posts in the following months will be tagged with ‘Study-HTDP’.
I’m pretty excited to see how this turns out. I hope not only to learn a lot about programming, but also about learning with other folks, especially with this distributed/online model.

Why post to Study-HTDP rather than PLT?

Originally published here:

You may or may not know that the authors of HTDP are all directly available on the PLT Discussion list located here:
http://list.cs.brown.edu/mailman/listinfo/plt-scheme/
You might rightly be wondering why you would post messages here rather than directly to the PLT list? Well, there are two good reasons:
1. This group has a very focused goal. We can leverage our similar interests, and answer a lot of questions that anyone on our track would need answered once, and build a focused knowledge base. The PLT list discussed a much broader range of topics, mostly focusing on Scheme.
2. All of those guys on the PLT list are super nice folks, and world-class programmers, who are *happy* to answer our questions (even stupid ones, seriously). Buy why bother them with questions that we can answer ourselves? We can make life easier for the PLT folks by answering said questions here, first, and leaving tough questions for them.

One thing to note here is that there is a read-only mirror of this group located here:
http://groups.google.com/group/plt-scheme
This provides a nicer interface and more importantly the ability to search messages which is particularly helpful if you know for what you are looking.
It might be a good resource if you are looking for HTDP focused content.

My invitation to the world

Originally published here:

Do you love programming?
Does the famous Alan Perlis quip that “[Any programming language] that doesn’t affect the way you think about programming, is not worth knowing.” give you a rush?
Are you obsessed with becoming a better programmer?
I am. That is why I started this Google group called ‘Study-HTDP’.
I want a place where I can study, collaborate, and learn while we I down this path; and I figured “Why go it alone?”
_How_to_Design_Programs_ (HTDP) is a book about learning how to think about programming. I’ve no doubt that most of us, my friends and peers, already know how to program, and in fact, are excellent at it. But how did we get here? More importantly, how would we teach others to get there? (Is the unexamined life worth living?)
That is the question with which I was obsessed for months and months. My answer to the question is to re-learn how to program. HTDP is how I’m going to do it. If you are interested too, please have a look at:
http://www.htdp.org/
Let us begin!

Managing tags in WordPress

WordPress lets you associate tags with your posts. Version 2.6 even provides a nice UI to manage them. If you are interested in working with them directly in the database, here is a query to help you along:

SELECT
	term.term_id,
	tax.count,
	term.name,
	term.slug
FROM
	wp_term_taxonomy tax,
	wp_terms term
WHERE
	tax.taxonomy = 'post_tag'
	AND
	tax.term_id = term.term_id
ORDER BY
	term.name ASC
LIMIT
	0, 200

How to Design Worlds

Via PLT:

As some of you know, we have been working on a new way of writing interactive applications, such as games, using just pure functional programming. We call this the World style, and it is embodied in the world.ss Teachpack included in the DrScheme distribution.
In response to demand, we are creating extended materials on this style of programming:
http://world.cs.brown.edu/

Addendum: 26 October 2008
Some folks might find HTDW a little more interesting in that it is purely functional programming.

Teaching Programming Languages in a Post-Linnaean Age

Programming language “paradigms” are a moribund and tedious legacy of a bygone age. Modern language designers pay them no respect, so why do our courses slavishly adhere to them? This paper argues that we should abandon this method of teaching languages, offers an alternative, reconciles an important split in programming language education, and describes a textbook that explores these matters.

This is a nice paper explaining the author’s rationale for his approach.
(via PLT)