The Comonad.Reader » Boston Haskell http://comonad.com/reader types, (co)monads, substructural logic Thu, 02 May 2013 14:19:12 +0000 http://wordpress.org/?v=2.8.4 en hourly 1 Homotopy and Directed Type Theory Slides http://comonad.com/reader/2011/homotopy-and-directed-type-theory-slides/ http://comonad.com/reader/2011/homotopy-and-directed-type-theory-slides/#comments Fri, 28 Oct 2011 02:38:34 +0000 Edward Kmett http://comonad.com/reader/?p=425 As requested, here are the slides from Dan Doel's excellent presentation on Homotopy and Directed Type Theory from this past Monday's Boston Haskell.

]]>
http://comonad.com/reader/2011/homotopy-and-directed-type-theory-slides/feed/ 0
Hac Boston! http://comonad.com/reader/2011/hac-boston/ http://comonad.com/reader/2011/hac-boston/#comments Tue, 25 Oct 2011 21:35:40 +0000 Edward Kmett http://comonad.com/reader/?p=411 I am very pleased to officially announce Hac Boston, a Haskell hackathon to be held January 20-22, 2012 at MIT in Cambridge, MA. The hackathon will officially kick off at 2:30 Friday afternoon, and go until 5pm on Sunday with the occasional break for sleep.

Everyone is welcome -- you do not have to be a Haskell guru to attend! Helping hack on someone else's project could be a great way to increase your Haskell skills.

If you plan on coming, please officially register, even if you already put your name on the wiki. Registration, travel, some information about lodging and many other details can now be found on the Hac Boston wiki.

We have confirmed space for about 30 people, so please register early! Beyond that we'll have to either seek additional space or close registration.

We're also looking for a few people interested in giving short (15-20 min.) talks, probably on Saturday afternoon. Anything of interest to the Haskell community is fair game---a project you've been working on, a paper, a quick tutorial. If you'd like to give a talk, add it on the wiki.

We look forward to seeing you at MIT!

]]>
http://comonad.com/reader/2011/hac-boston/feed/ 0
Introducing Speculation http://comonad.com/reader/2010/introducing-speculation/ http://comonad.com/reader/2010/introducing-speculation/#comments Thu, 22 Jul 2010 19:53:03 +0000 Edward Kmett http://comonad.com/reader/?p=205 A couple of days ago, I gave a talk at Boston Haskell about a shiny new speculative evaluation library, speculation on hackage, that I have implemented in Haskell. The implementation is based on the material presented as "Safe Programmable Speculative Parallelism" by Prakash Prabhu, G Ramalingam, and Kapil Vaswani at last month's PLDI.

I've uploaded a copy of my slides here:

* Introducing Speculation [PowerPoint | PDF]

This package provides speculative function application and speculative folds. Speculative STM transactions take the place of the transactional rollback machinery from the paper, but transactions are not always required in pure code. To get a feel for the shape of the library, here is an excerpt from the documentation for one of the combinators:


spec :: Eq a => a -> (a -> b) -> a -> b

spec g f a evaluates f g while forcing a, if g == a then f g is returned, otherwise f a is evaluated and returned. Furthermore, if the argument has already been evaluated, we skip the f g computation entirely. If a good guess at the value of a is available, this is one way to induce parallelism in an otherwise sequential task. However, if the guess isn't available more cheaply than the actual answer, then this saves no work and if the guess is wrong, you risk evaluating the function twice. Under high load, since f g is computed via the spark queue, the speculation will be skipped and you will obtain the same answer as f $! a.

ASCII art time-lines of how this can speed up evaluation are available in both the slides and the documentation linked to above, but assuming an otherwise serial problem, you effectively wager otherwise idle CPU time and the time to generate your guess on the quality of your guess.

Note that numSparks# feature request that was mentioned in the slides has already been implemented in GHC HEAD, and support shall be added to improve the performance of the speculative STM transactions under high load as mentioned in the slides.

]]>
http://comonad.com/reader/2010/introducing-speculation/feed/ 11
Boston Haskell June http://comonad.com/reader/2010/boston-haskell-june/ http://comonad.com/reader/2010/boston-haskell-june/#comments Thu, 20 May 2010 22:44:11 +0000 Edward Kmett http://comonad.com/reader/?p=202 I've put together a poll about when folks would like to have the next meeting, if you're going to be in the area, please help us pick a date and time that works for you!

http://www.doodle.com/ux8mqaa9h2tngf6k

I pushed the dates out a little ways so we wouldn't be overlapping with Hac-Phi.

A couple of folks indicated that they had material they'd like to present this next time. If you want to present this month (or in the near future), please email me. Otherwise I'll have no choice but to blather on about category theory or automatic differentiation and there won't be a newbie left within earshot inside of 10 minutes.

Once we get a feel for the day people prefer, and what works for the presenters I'll follow up with the date, venue and summary of what is being presented, but for this session we'll likely set up in the CSAIL reading room again and I'll try to co-opt Chris into baking more cookies.

Please feel free to email me with any questions or concerns!

]]>
http://comonad.com/reader/2010/boston-haskell-june/feed/ 0
Finger Trees http://comonad.com/reader/2010/finger-trees/ http://comonad.com/reader/2010/finger-trees/#comments Thu, 29 Apr 2010 13:50:50 +0000 Edward Kmett http://comonad.com/reader/?p=174 I gave a talk last night at Boston Haskell on finger trees.

In particular I spent a lot of time focusing on how to derive the construction of Hinze and Paterson's 2-3 finger trees via an extended detour into a whole menagerie of tree types, and less on particular applications of the final resulting structure.

Overall, I think the talk went over quite well.

In other finger-tree-related news, Mark Chu-Carroll recently wrote a blog post on finger trees as well, which might serve as a faster introduction in case you don't want to wade through 50 slides before seeing something recognizable as a finger tree. The comments given in reply to his very timely article were very useful in fleshing out this presentation.

For those who are interested, while we have yet to establish a good way to record video, here are my slides.

There are two parts of the talk that may be difficult to adequately reconstruct from the slides alone:

  1. I talked through the notion of safe and dangerous digits in a Hinze and Paterson tree and explained how the extra slop in a Hinze and Paterson tree work.
  2. The other part that was talked through largely via the blackboard was how one uses the monotonicity of the function passed to split.

Otherwise, you can probably reconstruct the narrative from the slides.

If you have any questions or spot any errors or grievous omissions, please feel free to contact me.

[Edit: Updated slide 54]

]]>
http://comonad.com/reader/2010/finger-trees/feed/ 2
Iteratees, Parsec, and Monoids, Oh My! http://comonad.com/reader/2009/iteratees-take-2/ http://comonad.com/reader/2009/iteratees-take-2/#comments Wed, 16 Sep 2009 02:51:08 +0000 Edward Kmett http://comonad.com/reader/?p=165 I'll be giving a talk tomorrow, Wednesday, September 16th, 2009 at the Boston Haskell User Group in the MIT CSAIL Reading Room (on the 8th floor of the William H. Gates tower of the Stata center) about mixing Oleg's iteratees with parsec and monoids to build practical parallel parsers and to cheaply reparse after local modifications are made to source code.

Ravi is trying to organize some time before hand during which people can get together and work on Haskell projects, or spend some time learning Haskell, so its not all scary academic stuff.

The meeting is scheduled from 7-9pm, and an ever growing number of us have been wandering down to the Cambridge Brewing Company afterwards to hang out and talk.

If you are curious about Haskell, or even an expert, or just happen to be interested in parallel programming and find yourself in the area, come on by.

]]>
http://comonad.com/reader/2009/iteratees-take-2/feed/ 7