Bay Area Haskell User Group meeting (January 2010)

0 views
Skip to first unread message

Ivan Tarasov

unread,
Jan 11, 2010, 1:39:56 AM1/11/10
to baha...@googlegroups.com, Evan Laforge, Vlad Patryshev, Larrytheliquid
As per discussion in BAHaskell google group:

BAHUG is meeting on Monday, January 18th at 7pm at Engine Yard (SOMA, San Francisco):

Engine Yard
500 Third Street, Suite 510
San Francisco, CA 94107

Contact cell (mine): 415-570-1669.
Host's phone: TBD (Larry, please follow up to BAHaskell with your contact phone number)

There's parking available close to Engine Yard, also it's usually possible to find an empty spot on the streets (parking is free after 6pm).

We have two presenters:
  1. Evan Laforge is going to present his Haskell project (music sequencer) and reflect upon his experiences in writing a non-trivial application in Haskell (20k lines of Haskell, 5k lines of C++).
  2. Vlad Patryshev is going to show an example of using comonads in Haskell.
As far as I understand, no “deep knowledge” of Haskell is required for this meeting, so even if you have just started trying Haskell out, please come to the meeting!

Some people will be going from the South Bay (and probably East Bay) to the meeting and back, so there's a possibility of carpooling. Also, it's very easy to get to Engine Yard from the Caltrain station. Please send me a message if you need help figuring out transportation.

Please forward this email to those who may be interested in attending but are not present in To/Cc fields and the respective lists. Please remove CCs if you decide to reply to this email.
If you plan to attend, please subscribe to BAHaskell Google Group to follow all the discussions related to this meeting.

Cheers,
Ivan

Larrytheliquid

unread,
Jan 11, 2010, 5:44:57 AM1/11/10
to Ivan Tarasov, baha...@googlegroups.com, Evan Laforge, Vlad Patryshev
My phone: 407-718-7665
--
Respectfully,
Larry Diehl
www.larrytheliquid.com

Evan Laforge

unread,
Jan 11, 2010, 2:32:49 PM1/11/10
to Ivan Tarasov, baha...@googlegroups.com, Vlad Patryshev, Larrytheliquid
> Some people will be going from the South Bay (and probably East Bay) to the
> meeting and back, so there's a possibility of carpooling. Also, it's very
> easy to get to Engine Yard from the Caltrain station. Please send me a
> message if you need help figuring out transportation.

Anyone coming from or going through Mountain View? Email if you are
and could give me a ride. Otherwise I can take the train, but a ride
is more fun...

Vlad Patryshev

unread,
Jan 11, 2010, 6:11:15 PM1/11/10
to Evan Laforge, Ivan Tarasov, baha...@googlegroups.com
I'm driving from Sunnyvale, and will be picking up Ivan, since there are two more seats currently available, you are welcome.
(408) 768 8721.

2010/1/11 Evan Laforge <qdu...@gmail.com>



--
Thanks,
-Vlad

dastels

unread,
Jan 15, 2010, 5:51:02 PM1/15/10
to Bay Area Haskell Users Group
I'll be heading to Mountain View after the meeting, so if there's an
empty car seat going that way I'd be happy to fill it. Otherwise the
train works fine.

Dave

On Jan 11, 3:11 pm, Vlad Patryshev <vpatrys...@gmail.com> wrote:
> I'm driving from Sunnyvale, and will be picking up Ivan, since there are two
> more seats currently available, you are welcome.
> (408) 768 8721.
>

> 2010/1/11 Evan Laforge <qdun...@gmail.com>

Corey O'Connor

unread,
Jan 15, 2010, 7:35:37 PM1/15/10
to baha...@googlegroups.com
I'll be heading from Oakland. email me if you'd like a ride.

Cheers,
Corey O'Connor

On Sun, Jan 10, 2010 at 10:39 PM, Ivan Tarasov <ivan.t...@gmail.com> wrote:

> --
> You received this message because you are subscribed to the Google Groups
> "Bay Area Haskell Users Group" group.
> To post to this group, send email to baha...@googlegroups.com.
> To unsubscribe from this group, send email to
> bahaskell+...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/bahaskell?hl=en.
>
>

baguasquirrel

unread,
Jan 19, 2010, 1:05:58 AM1/19/10
to Bay Area Haskell Users Group
First, thanks to Vlad and Evan. Although I'm still wrapping my head
around where comonads fit in, it's pretty clear what they *are*...
And it looks like there's a deep, rich program underneath the simple
gui that Evan wrote up.

I was in a rush to hit the safeway before grabbing the 9:40 Caltrain.
Seems like I left my black jacket at Engine Yard. Has anyone seen it?

-arthur


On Jan 10, 10:39 pm, Ivan Tarasov <ivan.tara...@gmail.com> wrote:
> As per discussion in BAHaskell google group:
>
> BAHUG is meeting on Monday, January 18th at 7pm at Engine Yard (SOMA, San
> Francisco):
>
> Engine Yard
> 500 Third Street, Suite 510
> San Francisco, CA 94107
>
> Contact cell (mine):415-570-1669.
> Host's phone: TBD (Larry, please follow up to BAHaskell with your contact
> phone number)
>
> There's parking

> available<http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=San+Franc...>close


> to Engine Yard, also it's usually possible to find an empty spot on
> the streets (parking is free after 6pm).
>
> We have two presenters:
>

>    1. Evan Laforge is going to present his Haskell project (music sequencer)


>    and reflect upon his experiences in writing a non-trivial application in
>    Haskell (20k lines of Haskell, 5k lines of C++).

>    2. Vlad Patryshev is going to show an example of using comonads in


>    Haskell.
>
> As far as I understand, no “deep knowledge” of Haskell is required for this
> meeting, so even if you have just started trying Haskell out, please come to
> the meeting!
>
> Some people will be going from the South Bay (and probably East Bay) to the
> meeting and back, so there's a possibility of carpooling. Also, it's very
> easy to get to Engine Yard from the Caltrain station. Please send me a
> message if you need help figuring out transportation.
>
> Please forward this email to those who may be interested in attending but
> are not present in To/Cc fields and the respective lists. Please remove CCs
> if you decide to reply to this email.
> If you plan to attend, please subscribe to BAHaskell Google

> Group<http://groups.google.com/group/bahaskell>to follow all the

Evan Laforge

unread,
Jan 19, 2010, 2:57:47 AM1/19/10
to baha...@googlegroups.com
> I was in a rush to hit the safeway before grabbing the 9:40 Caltrain.
> Seems like I left my black jacket at Engine Yard.  Has anyone seen it?

Yes, I saw a jacket on the way out, I thought to give it to our host
but I didn't realize he was still around at the time. In any case,
since he works there (I guess?) he can just get it in the morning so
the result is the same.

Anyway, it's on one of the seat backs so it's not lost.

Evan Laforge

unread,
Jan 19, 2010, 2:16:13 PM1/19/10
to baha...@googlegroups.com
Just to follow up on a few things:

Someone was asking about possibly reusable stuff and the logging
system. There's not much, but what there is is at
http://ofb.net/~elaforge/hs/util.tgz

This is mostly general utilities, MissingH kind of stuff. Lots of
list and Map stuff, and some graph and array functions. And LoggerT
along with the logging stuff.

Someone else (Ivan I think?) mentioned zippers for efficiently
modifying data... and he mentioned something more specific, maybe some
specific paper or library or something?

Yet another someone (sorry, I'm bad with names) was talking about an
introduction to programming models for computer music. I'd be
interested to read that.

An interesting idea that came up was to use Foldable or generics to
write a generic diff for testing. I'll be looking into that.

And... while I have an audience, if anyone is interested, my group is
doing a performance on the 30th. It's a Balinese ensemble and I
promise it sounds better than the bleeps and bloops I played
yesterday. Or if not for the music you could come for the dancing
girls.

Mahea Uchiyama Center for International Dance
Date: Saturday, January 30, 2010
Time: 8:00pm - 10:00pm
Location: 729 Heinz Avenue (near 7th), Berkeley, CA
General Admission……………..$20

Peter Burns

unread,
Jan 19, 2010, 2:45:22 PM1/19/10
to baha...@googlegroups.com
On Jan 19, 2010, at 11:16 AM, Evan Laforge wrote:

> An interesting idea that came up was to use Foldable or generics to
> write a generic diff for testing. I'll be looking into that.

I haven't gone too deep in that direction, but this is probably a good place to start: http://haskell.cs.yale.edu/ghc/docs/latest/html/libraries/base/Data-Typeable.html

--Peter

Larrytheliquid

unread,
Jan 19, 2010, 3:59:58 PM1/19/10
to baha...@googlegroups.com
Jacket aquired

Ivan Tarasov

unread,
Jan 19, 2010, 4:27:47 PM1/19/10
to baha...@googlegroups.com
On Tue, Jan 19, 2010 at 11:16 AM, Evan Laforge <qdu...@gmail.com> wrote:
Someone else (Ivan I think?) mentioned zippers for efficiently
modifying data... and he mentioned something more specific, maybe some
specific paper or library or something?

I was talking about the following article: Ralf Hinze, Johan Jeuring, “Weaving a Web”.

I'm not quite sure how applicable that would be to what you have there. I imagined that you have some kind of tree structure or even a graph and you needed to efficiently update only parts of that. Zippers/Web thing can help with that. But even if what you have is just a list of events, although zipper can help, you still may have a problem navigating to the right part of the datastructure (based on time, or score time, or whatever) efficiently; that may require a data-structure change.

Ivan

Evan Laforge

unread,
Jan 19, 2010, 4:53:40 PM1/19/10
to baha...@googlegroups.com
> I was talking about the following article: Ralf Hinze, Johan Jeuring,
> “Weaving a Web”.

Thanks, I'll check it out.

> I'm not quite sure how applicable that would be to what you have there. I
> imagined that you have some kind of tree structure or even a graph and you
> needed to efficiently update only parts of that. Zippers/Web thing can help
> with that. But even if what you have is just a list of events, although
> zipper can help, you still may have a problem navigating to the right part
> of the datastructure (based on time, or score time, or whatever)
> efficiently; that may require a data-structure change.

Yes, I have a tree of calls to functions, but they all emit events
that get merged into a single sorted list. When implementing the
caching stuff I'll probably have to change that to something like Map
TrackPos SortedEvents, where the TrackPos is the pos of the head of
SortedEvents. That way I can replace the output from one particular
note without disturbing the others.

Then if sublists are guaranteed to not overlap I can just do 'concat .
Map.toAscList'. Things get less efficient if they can overlap but I
think I can still do it lazily if the heads of the sublists are
nondecreasing.

And if I have a Map maybe I don't need zippers, Map.insert already
works pretty well :)

Reply all
Reply to author
Forward
0 new messages