Thursday, February 19, 2009 1:09 PM bart

Type Theory Essentials in Pictures – Part 1 – Quiz

I'm currently in the middle of preparing my talks for a trip to Europe the first two weeks of March (I’ll post a conference/session list later this week). One thing I love about speaking to (technical) audiences is to bring rather theoretical but essential topics in a way that’s easy to consume in the short time available for a session. There are two main strategies: use a lot of pictures or do a lot of on-stage coding. The latter is definitely the most fun both for me and for the audience and I try to apply it wherever possible. However, having a graphical illustration of the concepts used in the subsequent coding demos is often a good idea to make things stick.

Starting with this post, and in the next few ones, I want to share out some of my illustrations. Notice my artistic talents are limited to Paint and PowerPoint :-). I’ve removed the slide titles though, so that the reader can try to map the illustrated concept back to something familiar (or still unfamiliar) in the domain of types. Some advice:

  1. Go through the pictures in order (left-to-right, top-to-bottom traversal of the table) as graphical notations are reused subsequently.
  2. Pictures are grouped as well, e.g. 1 and 2 belong together, where groups start with abstract concepts and concretize them, e.g. indicated by an increase in color usage.
  3. Transitions between adjacent pictures could be made more gradual in some cases (i.e. an abstract concept is concretized a few steps at once).

Today’s series shouldn’t be too hard, although I’m biased obviously :-). Some hints: blocks are passive things that compose but are themselves composed. Humans are active (sometimes). Think in terms of objects, types and functions.

Answers can typically be formulated in C# syntax or pseudo-syntax. As we go further in this series of posts, some things might no longer have a notation. If that’s the case, answering with a theoretical term will be required (or using syntax from another language).

image 
Figure 1
image 
Figure 2
   
image 
Figure 3
image 
Figure 4
   
image 
Figure 5
image 
Figure 6
   
image 
Figure 7
image 
Figure 8
   
image 
Figure 9
image 
Figure 10
   
image 
Figure 11 (extra)
image 
Figure 12
   
image 
Figure 13
image 
Figure 14
   
image 
Figure 15

Good luck!

Del.icio.us | Digg It | Technorati | Blinklist | Furl | reddit | DotNetKicks

Filed under:

Comments

# re: Type Theory Essentials in Pictures – Part 1 – Quiz

Thursday, February 19, 2009 3:20 PM by Joel

A horizontal scrollbar would be convenient...

# re: Type Theory Essentials in Pictures – Part 1 – Quiz

Thursday, February 19, 2009 7:36 PM by bart

Hi Joel,

Thanks for the feedback. My HTML wizardy is rather limited (that together with some weblog engine preview restrictions), so I'll update the table to have only 2 columns.

Hope this helps,

-Bart

# re: Type Theory Essentials in Pictures – Part 1 – Quiz

Thursday, February 19, 2009 7:49 PM by Doug L.

And the "overflow: hidden" somewhere in your CSS is just plain rude.  I had to hit command-minus SEVEN times in order for the pix to be show in their entirety.

# re: Type Theory Essentials in Pictures – Part 1 – Quiz

Thursday, February 19, 2009 10:42 PM by bart

Hi Doug,

Actually I'm just using a default theme that ships with the blog engine software. As a presentation-ignorant personality, I've never attempted to convince myself to consider learning CSS. This said, I'm absolutely open though to suggestions about better "themes" in the Community Server distribution.

Thanks,

-Bart

# re: Type Theory Essentials in Pictures – Part 1 – Quiz

Friday, February 20, 2009 10:31 AM by aL

im sorry but i dont get this at all :D

# Type Theory Essentials in Pictures – Part 1 – Hints

Friday, February 20, 2009 1:38 PM by B# .NET Blog

A few colleagues hinted kindly my post on Type Theory Essentials in Pictures – Part 1 – Quiz might be

# re: Type Theory Essentials in Pictures – Part 1 – Quiz

Friday, February 20, 2009 1:40 PM by bart

Hi folks,

I've added an intermediate post between Quiz and Answers, categorized as Hints. Check it out here: community.bartdesmet.net/.../type-theory-essentials-in-pictures-part-1-hints.aspx

Hope this helps,

-Bart

# Type Theory Essentials in Pictures – Part 1 – Answers

Thursday, April 16, 2009 11:36 PM by B# .NET Blog

A while back I posted Type Theory Essentials in Pictures – Part 1 – Quiz , a series of non-annotated