<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.1" -->
<rss version="0.92">
<channel>
	<title>cdiggins.com</title>
	<link>http://cdiggins.com</link>
	<description>Christopher Diggins</description>
	<lastBuildDate>Fri, 25 Apr 2008 15:02:43 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	
	<item>
		<title>Some things I am doing</title>
		<description>Here are some of the things I have been up to:

	Looking at using Cat as a replacement for the SECD machine to express operational semantics of Heron (see http://lambda-the-ultimate.org/node/2787)
	Developing the Heron to Cat interpreter (sorry no demos yet). This requires the introduction of local definitions in Cat to emulate labels ...</description>
		<link>http://cdiggins.com/2008/04/25/some-things-i-am-doing/</link>
			</item>
	<item>
		<title>Objects in Cat</title>
		<description>I have been thinking a lot about how to extend the Cat type system so that I can handle objects. The big challenge is to do this in a way that doesn't add any significant complexity to the language. This is particularly hard to do for a language as small ...</description>
		<link>http://cdiggins.com/2008/04/18/objects-in-cat/</link>
			</item>
	<item>
		<title>Cat Programming Language version 1.0 beta 4</title>
		<description>Cat version 1.0 beta 4 was just released, download available here. New features inlude:

	static type checking of all primitives
	fixed type inference of "quote" function
	reintroduced "self" types to indicate a function accepting itself as an argument (e.g. define m { dup apply }, m : ('A ('A self -&#62; 'B) -&#62; 'B))
	added ...</description>
		<link>http://cdiggins.com/2008/04/16/cat-programming-language-version-10-beta-4/</link>
			</item>
	<item>
		<title>Open-Source Cat Interpreter (v1.2) in Javascript Online</title>
		<description>This is to announce that I have released version 1.2 of the online Cat interpreter. There are some bug fixes (e.g. "dup" now properly copies lists) and I have introduced primitive graphics capabilities, along with a new tool-tip help text to the various predefined instructions. Have fun, and feel free to ...</description>
		<link>http://cdiggins.com/2008/04/15/open-source-cat-interpreter-v12-in-javascript-online/</link>
			</item>
	<item>
		<title>SVN Version of Cat does type checking!</title>
		<description>I finally just finished integrating type checking back into the Cat compiler. This is only available in the version of Cat most recently checked into the SVN repository so feel free to pull it out: http://code.google.com/p/cat-language/source/checkout.

So Cat supports "self" types again which are references to enclosing functions. They are relatively ...</description>
		<link>http://cdiggins.com/2008/04/14/svn-version-of-cat-does-type-checking/</link>
			</item>
	<item>
		<title>Cat Programming Language Release v1.0 beta 3</title>
		<description>This is an announcement of a new release of the Cat programming language. Recent changes include:

	automatic loading of the standard library
	481 unit-tests (#test_all)
	documentation of over 400 primitive and standard-library instructions
	various minor bug fixes to the standard library
	searching for definitions matching a particular prefix, using "prefix" #defmatch

Cat is a functional stack-based ...</description>
		<link>http://cdiggins.com/2008/04/13/cat-programming-language-release-v10-beta-3/</link>
			</item>
	<item>
		<title>Expressing Local Assignment without Side-Effects using Fold (can you do this in Haskell?)</title>
		<description>I have been talking lately on my blog and at Lambda-the-Ultimate.org about how a while loop that modifies local values can be expressed as the composition of a sequence of pure functions (e.g. without side-effects) by writing it in a stack-based language. To demonstrate this I have been using the following ...</description>
		<link>http://cdiggins.com/2008/04/11/expressing-local-assignment-without-side-effects-using-fold-can-you-do-this-in-haskell/</link>
			</item>
	<item>
		<title>Local Assignment can be Pure Functional</title>
		<description>In a functional stack-based langauge, it is quite natural to handle local assignment with destroying referential transparency. The following is from a recent post I made to Lambda-the-Ultimate.org in order to ascertain the wider thinking on the problem.
Okay, this might seem like an odd question, but is there contention on whether or not a while ...</description>
		<link>http://cdiggins.com/2008/04/10/local-assignment-can-be-pure-functional/</link>
			</item>
	<item>
		<title>Reversing a List in 3 Instructions</title>
		<description>Cat is my functional stack-based language based on Joy. One of the interesting characteristics Cat shares with Joy is an incredible succinctness, which rivals that of array-oriented languages such as K or Q. A demonstration of this is how list reversal can be achieved with just three instructions:
nil [cons] fold 
You would ...</description>
		<link>http://cdiggins.com/2008/04/07/reversing-a-list-in-3-instructions/</link>
			</item>
	<item>
		<title>Cat version 1.0 beta 1</title>
		<description>I have just released version 1.0 beta 1 of Cat at http://code.google.com/p/cat-language/downloads/list. So what does 'beta 1' mean for Cat? It means that virtually all of the final functionality is there. I have run it through a pretty comprehensive test suite (477 unit tests). I have replaced many of the predefined primitives ...</description>
		<link>http://cdiggins.com/2008/04/06/cat-version-10-beta-1/</link>
			</item>
</channel>
</rss>
