categories - Category Theory list
 help / color / mirror / Atom feed
From: Thorsten Altenkirch <txa@Cs.Nott.AC.UK>
To: Steve Vickers <s.j.vickers@cs.bham.ac.uk>
Subject: Re: additions
Date: Wed, 23 Dec 2009 19:06:39 +0000	[thread overview]
Message-ID: <E1NOGNz-0002YM-4N@mailserv.mta.ca> (raw)
In-Reply-To: <85E4A5AE-3C86-450A-BFFC-4760E40B89F1@cs.bham.ac.uk>

Hi Steve & Mike,

I completely agree with Steve, I'd like to add  that instead of  
functional programming we could have said "mathematically structured  
programming". But then indeed the two terms are very closely related.

Category Theory helps us to structure abstractions. In Computer  
Science and in other areas (e.g. Physics). Some people seem to think  
that abstractions don't buy your anything concrete. E.g. they don't  
deliver faster algorithms or new physical theories. These people often  
overlook that everything they do relies essentially on abstractions  
which have been established a while ago.

Hence, while it is hard to measure the impact of abstractions exactly,  
IMHO it is almost impossible to underestimate their value.

Cheers,
Thorsten

On 23 Dec 2009, at 11:19, Steve Vickers wrote:

> Dear Mike,
>
> Of course, in functional programming the applications of categories  
> go far beyond lambda terms.
>
> (1) At a fairly elementary level, the treatment of list types in  
> functional programming languages gives a good lead in to universal  
> properties (e.g. list type = free monoid or free (empty, cons)- 
> algebra). Things you do with the universal properties are present as  
> well known tools in functional programming with lists. The universal  
> properties can then be used to motivate the abstract structure of  
> categories: they describe data types by their external interfaces  
> with the rest of the world rather than by their concrete internal  
> structure, and the morphisms play the role of saying what the  
> external interactions are. Expositionally, for Mac Lane universal  
> properties were an important example where the working mathematician  
> had been doing category theory all along without knowing it.
>
> (2) More advanced, Haskell has made important use of monads as a  
> programming technique for bringing side-effects, I/O etc into  
> functional programming in an elegant way. (The way this came about  
> is that it has long been more or less self-evident that categories  
> are just what you need for describing the semantics, and the  
> categorical experience of the semanticists led to the practical  
> application of monads.)
>
> So it could be that the best way forward is to teach them Haskell  
> first. (I gave a short introduction to categories at Imperial, in  
> the Compujting Department, and I exploited heavily the fact that  
> they had all done Miranda, a predecessor of Haskell.)
>
> Regards,
>
> Steve Vickers.
>

[For admin and other information see: http://www.mta.ca/~cat-dist/ ]


  parent reply	other threads:[~2009-12-23 19:06 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-17 23:30 A well kept secret? peasthope
2009-12-18  4:09 ` John Baez
2009-12-18 22:25   ` Ellis D. Cooper
2009-12-19 17:45     ` Ronnie Brown
2009-12-19 22:16     ` John Baez
2009-12-20 22:52       ` Greg Meredith
2009-12-21 15:46       ` Zinovy Diskin
2009-12-22 16:59         ` zoran skoda
2009-12-23  1:53       ` Tom Leinster
2009-12-23 14:15         ` Colin McLarty
2009-12-23 19:10       ` CatLab Joyal, André
2009-12-20 21:50     ` A well kept secret? jim stasheff
     [not found]     ` <d4da910b0912220859q3858b68am4e58749f21ce839d@mail.gmail.com>
2009-12-23  4:31       ` Zinovy Diskin
2009-12-23 14:35         ` Ronnie Brown
     [not found]     ` <4B322ACA.50202@btinternet.com>
2009-12-25 20:06       ` Zinovy Diskin
2009-12-20 17:50   ` Joyal, André
     [not found]     ` <B3C24EA955FF0C4EA14658997CD3E25E2159B6AA@CAHIER.gst.uqam.ca>
2009-12-21  8:43       ` additions Joyal, André
2009-12-21 14:16         ` additions Bob Coecke
2009-12-22  2:24           ` additions Joyal, André
2009-12-23 20:51             ` additions Thorsten Altenkirch
2009-12-24 23:55             ` additions Dusko Pavlovic
2009-12-26  2:14             ` additions Peter Selinger
     [not found]           ` <B3C24EA955FF0C4EA14658997CD3E25E370F5626@CAHIER.gst.uqam.ca>
     [not found]             ` <B3C24EA955FF0C4EA14658997CD3E25E370F5636@CAHIER.gst.uqam.ca>
     [not found]               ` <B3C24EA955FF0C4EA14658997CD3E25E370F5638@CAHIER.gst.uqam.ca>
2009-12-28 17:54                 ` quantum information and foundation Joyal, André
2009-12-29 12:13                   ` Urs Schreiber
2009-12-29 15:55                   ` zoran skoda
2009-12-22  0:39         ` additions Mike Stay
2009-12-23 11:19           ` additions Steve Vickers
2009-12-23 18:06             ` additions Mike Stay
2009-12-24 13:12               ` additions Carsten Führmann
2009-12-24 19:23               ` additions Dusko Pavlovic
2009-12-23 19:06             ` Thorsten Altenkirch [this message]
     [not found]         ` <Pine.LNX.4.64.0912211413340.15997@msr03.math.mcgill.ca>
     [not found]           ` <B3C24EA955FF0C4EA14658997CD3E25E2159B6B3@CAHIER.gst.uqam.ca>
2009-12-23 17:08             ` RE : categories: additions Joyal, André
2009-12-21 19:20   ` additions Michael Barr
2009-12-27 23:14   ` quantum information and foundation Dusko Pavlovic
     [not found]   ` <Pine.GSO.4.64.0912272037140.28761@merc3.comlab>
2009-12-28 16:38     ` Bob Coecke
     [not found]   ` <Pine.GSO.4.64.0912281630040.29390@merc4.comlab>
2009-12-28 18:17     ` Bob Coecke
2009-12-18 10:48 ` A well kept secret? KCHM
2009-12-19 20:55   ` Vaughan Pratt
2009-12-22 12:21 ` additions Mark Weber
2009-12-23  0:05   ` additions Scott Morrison
2009-12-23 14:13     ` additions Mark Weber
     [not found] ` <B3C24EA955FF0C4EA14658997CD3E25E2159B6B8@CAHIER.gst.uqam.ca>
2009-12-23 21:04   ` CatLab Urs Schreiber
     [not found] ` <4B3368C1.3000800@bath.ac.uk>
2009-12-24 16:25   ` additions Mike Stay
2009-12-26  0:03     ` additions Toby Bartels
     [not found]   ` <7f854b310912240825s39f195b2x2db16cc8f3a5cde7@mail.gmail.com>
2009-12-25  8:18     ` additions Carsten Führmann
     [not found] ` <4B347567.9070603@bath.ac.uk>
2009-12-29 23:17   ` additions Mike Stay
2009-12-30 21:00     ` additions Greg Meredith
2009-12-22  1:43 additions Fred E.J. Linton
2009-12-23  1:38 additions Fred E.J. Linton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E1NOGNz-0002YM-4N@mailserv.mta.ca \
    --to=txa@cs.nott.ac.uk \
    --cc=s.j.vickers@cs.bham.ac.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).