Is anyone interested in trying to kick off meetups again?

83 views
Skip to first unread message

Joel Crisp

unread,
Jul 7, 2011, 4:02:25 PM7/7/11
to Austin Functional Programmers
There were some interesting conversations ...

Joel

Dan Luu

unread,
Jul 10, 2011, 10:44:48 PM7/10/11
to aust...@googlegroups.com
Yeah, I'm interested.

Cheers,
Dan

On Thu, Jul 7, 2011 at 3:02 PM, Joel Crisp <joel.a...@googlemail.com> wrote:
> There were some interesting conversations ...
>
> Joel
>

> --
> You received this message because you are subscribed to the Google Groups
> "Austin Functional Programmers" group.
> To post to this group, send email to aust...@googlegroups.com.
> To unsubscribe from this group, send email to
> austin-fp+...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/austin-fp?hl=en.
>

Duke Banerjee

unread,
Jul 11, 2011, 12:36:45 AM7/11/11
to aust...@googlegroups.com
Make that two.

Duke

Matt M

unread,
Jul 11, 2011, 4:18:50 PM7/11/11
to Austin Functional Programmers
I met up with the first wave of Austin functional programmers (Chance,
et al) a few times, but don't think I've met any in this new group.
If I'm free when you meet, I'll probably come.

Joel Crisp

unread,
Jul 11, 2011, 4:31:44 PM7/11/11
to aust...@googlegroups.com
Ok, I think that is sufficient interest for us to try to meetup.

I know we met at Genuine Joe before, does anyone have a preference? The groups still seems to have the weekly meetings in the calendar, but would anyone prefer an alternate time? Weeknights would be better for me.

I don't have a projector so we'd need to scrounge one of those up from somewhere.

Thoughts?

Joel

Matt M

unread,
Jul 11, 2011, 6:00:17 PM7/11/11
to Austin Functional Programmers
We used to meet at Spider House, but Genuine Joe is actually better
for me, since I'm coming from the north (near Round Rock).

Weeknights at or after 6:30 are usually fine for me. What format do
these meetings usually take? Someone (everyone?) picks a paper and
gives an N minute presentation?



On Jul 11, 3:31 pm, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> Ok, I think that is sufficient interest for us to try to meetup.
>
> I know we met at Genuine Joe before, does anyone have a preference? The
> groups still seems to have the weekly meetings in the calendar, but would
> anyone prefer an alternate time? Weeknights would be better for me.
>
> I don't have a projector so we'd need to scrounge one of those up from
> somewhere.
>
> Thoughts?
>
> Joel
>

Joel Crisp

unread,
Jul 11, 2011, 6:56:10 PM7/11/11
to aust...@googlegroups.com
Hi Matt

I think the parking at Spider House makes it tricky for a lot of people. Another possibility would be Monkey Nest Coffee on Burnet, which is nice but a little more expensive that Joe's. It has a meeting room and decent parking, and is just up from a Torchy's tacos ;-)

I think one of the issues with the previous meetings was that they tended towards the chaotic. I like your suggestion of picking a topic and doing a short presentation on it.

Anyone else?

Joel

Matt M

unread,
Jul 11, 2011, 7:17:10 PM7/11/11
to Austin Functional Programmers
Joel,

I jumped to the conclusion of presentations at the mention of finding
a projector. I don't mind giving a talk on something, but it would
help to know what interests and backgrounds people have...
"functional programmers" is getting to be a big tent. So I'll
probably just observe round one unless you want to work with me to
pick a topic and appropriate level of detail.

Matt




On Jul 11, 5:56 pm, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> Hi Matt
>
> I think the parking at Spider House makes it tricky for a lot of people.
> Another possibility would be Monkey Nest Coffee on Burnet, which is nice but
> a little more expensive that Joe's. It has a meeting room and decent
> parking, and is just up from a Torchy's tacos ;-)
>
> I think one of the issues with the previous meetings was that they tended
> towards the chaotic. I like your suggestion of picking a topic and doing a
> short presentation on it.
>
> Anyone else?
>
> Joel
>

Joel Crisp

unread,
Jul 11, 2011, 7:20:37 PM7/11/11
to aust...@googlegroups.com
Matt, I'd be happy to do that.

We had a bunch of Scala folks (some who do it commercially), I'm more hobbyist on Haskell.

We had some talks about parsers and functional data structures, and it seems like there is the usual issue of pure vs. impure functional programming.

I think people are mostly interested in everything - after all, we're programmers ;-)

Joel

Matt M

unread,
Jul 12, 2011, 8:27:09 AM7/12/11
to Austin Functional Programmers
Joel,

Sounds good. I'm more on the Haskell side of things as well.

Someone toss out a date and time. Next week?

Matt

On Jul 11, 6:20 pm, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> Matt, I'd be happy to do that.
>
> We had a bunch of Scala folks (some who do it commercially), I'm more
> hobbyist on Haskell.
>
> We had some talks about parsers and functional data structures, and it seems
> like there is the usual issue of pure vs. impure functional programming.
>
> I think people are mostly interested in everything - after all, we're
> programmers ;-)
>
> Joel
>

Sean Duckett

unread,
Jul 12, 2011, 10:18:50 AM7/12/11
to aust...@googlegroups.com
I keep falling-off due to scheduling conflicts on the weekends, but I'll
show up to ask (hopefully good) questions if we can schedule a weeknight.

--
Sean

Donnie Jones

unread,
Jul 12, 2011, 12:29:20 PM7/12/11
to aust...@googlegroups.com
I've been on the mailing list for a while, and never have made one of
the meetings due to conflicts. Week nights work better for me too.
I'm mostly interested in Haskell, but enjoy all programming languages
/ compilers / algorithms related topics.

Thanks.
--
Donnie

Joel Crisp

unread,
Jul 12, 2011, 1:36:22 PM7/12/11
to aust...@googlegroups.com
Hi all

I tried to contact Chance to see if we can get admin rights on the calendar but his email address is bouncing.

Does anyone have alternate contact details for him? If so, please mail them to me not the list!

Thanks

Joel


Chance

unread,
Jul 12, 2011, 3:06:47 PM7/12/11
to Austin Functional Programmers
Hey - sorry for the delay! Joel is right, that email started
bouncing and this is the first I've heard of it (which is why I also
am just catching up to the posts).

I am going to be out of pocket this evening (trying to get a talk
proposal out the door) but will plan to open up the calendar to
another admin (Joel - would you volunteer?).

Also, I have an office at this point and should have access to a
projector if we want to use my space on a weekend/weeknight as long as
it is outside of general business hours. There is a small kitchen
with a fridge for drinks and such.

Thoughts?
Chance

Joel Crisp

unread,
Jul 12, 2011, 3:10:23 PM7/12/11
to aust...@googlegroups.com
Hi Chance

Thanks for your response! Yes, I'd be happy to admin the calendar for now if no-one objects.

It does seem as if the consensus is after working hours during the week, due to other commitments people have at the weekend.

I suggest Wednesday if the majority of people can make it. I'm not sure an office would work - we may want a more casual environment with public wifi?

Thoughts?

Joel

Matt M

unread,
Jul 12, 2011, 3:35:27 PM7/12/11
to Austin Functional Programmers
Wednesday's are fine with me. An office has pros and cons. It's hard
for me to say more than that without seeing how these meetings play
out.

Sukant Hajra

unread,
Jul 12, 2011, 3:36:06 PM7/12/11
to aust...@googlegroups.com
Excerpts from Joel Crisp's message of 2011-07-12 12:36:22 -0500:

Hi everyone,


Admin Stuff
-----------

This thread reached a critical mass and I shouldn't continue to put off a
reply. I was involved in the previous reboot of this meetup, and have probably
all the access anyone can want to the Google Apps site, which has the calendar.

I /just/ tried to set up the Calendar to allow members of this mailing list
write access to the calendar using the sneaky "aust...@googlegroups.com" as a
member. That works on some other Google products like Google Code. Let's see
if that works for the calendar. Give it a shot and reply back.

Also, I thought I set it up the AFP Google Sites page the same way, so everyone
should be able to edit that page too.

The only rub is that you need to have subscribed to this mailing list with the
same Gmail email address that you use to authenticate with to get to Google
Calendar and Google Site.

I know it's a little confusing. Just reply back if you're still stuck.


Reading I'm Interested In
-------------------------

Have you guys been keeping up with Robert Harper's blog [1]? I'm enjoying his
write-ups and trying not to get caught up in some of his inflammatory
assertions. I get/agree with his position on object-orientation. But I'm not
sure where I stand with respect to his aversion to lazy evaluation.

Also, stumbled onto a recent 70-page PDF by Simon Marlow titled "Parallel and
Concurrent Programming in Haskell" [2]. I really haven't touched parallel
programming in Haskell, so it would be great of the group had some interest in
this. The write-up is much more pragmatic than academic, so I could see us
playing around with some of the example code code in a REPL.

I have a projector if you guys are interested in that. I'm more or less fine
with most of the suggested times/locations for a meetup, but won't know for
sure until there's a proposed date. Mondays can be bad for me.

[1] http://existentialtype.wordpress.com/
[2] http://community.haskell.org/~simonmar/par-tutorial.pdf


Functional Stuff
----------------

I actually started using the Functional Java library here at work because some
of our algorithms really benefited from persistent immutable data structures.
I didn't want to code them from scratch, wasn't happy with some of the other
half-baked implementations out there, and wasn't ready to fight the
introduction of Scala or Clojure just yet. Functional Java is really just a
tidy proof-of-concept. It works, is more or less cleanly implemented, but is
far from full-featured.

It feels weird to have witnessed this much of the functional style in pure
Java. But it's actually worked out pretty well, because the mutable version of
the algorithm would have had some tedious correctness hurdles with observers
and deep copies.

I think the strongest observation I had was that the binding of methods to
objects is extremely premature. So I ended up with a barrage of first class
static variants of the methods I'd put on objects just for the flexibility of
map, join, and compose.

Still, though, it's pretty ghetto. I call this "the assembly language of
functional programming." But it was kind of worth it; I ended up with a parser
combinator to define a kind of regex grammar to search one of our trees for
subtrees. The embedded DSL in Java turned out pretty clean, and it gives our
team some needed flexibility.

That said, my opinion is that I really should be using Scala. The code I've
laid down illustrates what this style looks like in Java. I think my next step
is to do the same in Scala, to demonstrate the improvements (syntax,
performance, etc.). But also, there will be the build/integration/social
problems too, so I'll have to see how those compare to the gains.


-Sukant

Duke Banerjee

unread,
Jul 12, 2011, 3:59:00 PM7/12/11
to aust...@googlegroups.com
Wednesday's my soccer night, but I'm good for almost any other night
during the weekdays. We were doing Genuine Joe's before, which I thought
was a good venue.

Matt M

unread,
Jul 12, 2011, 6:14:57 PM7/12/11
to Austin Functional Programmers
Ah, the 'existential type' blog. I've read some of those. Can you
link to the one about Object Orientation?

I mostly agree with him about laziness, but the important question is
what features you replace it with. If you just made Haskell strict
without any other modifications, you would make it worse, I think. I
haven't tried Disciple, though.

Joel Crisp

unread,
Jul 12, 2011, 6:24:08 PM7/12/11
to aust...@googlegroups.com
If I have understood it correctly, Haskell has selective strictness anyway with the ! operator in constructors and the `seq` operator.

Thoughts?

Joel

Matt M

unread,
Jul 12, 2011, 6:38:33 PM7/12/11
to Austin Functional Programmers
I don't think see the debate as over whether Haskell can express
strictness, but rather as about defaults and best practices.


On Jul 12, 5:24 pm, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> If I have understood it correctly, Haskell has selective strictness anyway
> with the *!* operator in constructors and the *`seq`* operator.
>
> Thoughts?
>
> Joel

Sukant Hajra

unread,
Jul 12, 2011, 11:04:46 PM7/12/11
to aust...@googlegroups.com
Excerpts from Matt M's message of 2011-07-12 17:14:57 -0500:

>
> Ah, the 'existential type' blog. I've read some of those. Can you link to
> the one about Object Orientation?

The anti-OO theme is kind of laced throughout a few blogs. I guess the one
that caught my attention first was his advocacy to make OO a more senior,
elective course at CMU [1].

Harper is almost in full-tilt rant with gems like

"Object-oriented programming is eliminated entirely from the introductory
curriculum, because it is both anti-modular and anti-parallel by its very
nature, and hence unsuitable for a modern CS curriculum."

Some of us had read Cook's "On Understanding Data Abstraction, Revisited" paper
[2] for a previous meetup. I think Cook makes a nice defense for the value of
objects. The problem, I think, is that Cook's definition of objects are not
the common view of objects.

More recently [3], Harper had other ranty comments like

"We have for decades struggled with using object-oriented languages, such
as Java or C++, to explain these simple ideas, and have consistently
failed. And I can tell those of you who are not plugged into academics at
the moment, many of my colleagues world-wide are in the same situation, and
are desperate to find a way out. The awkward methodology, the “design
patterns”, the “style guidelines”, all get in the way of teaching the
principles. And even setting that aside, you’re still doing imperative
programming on ephemeral data structures. It just does not work, because
it is fundamentally the wrong thing. Just try to teach, say, binary search
tree delete; it’s a horrific mess! You wind up with absurd “null pointer”
nonsense, and a complex mess caused by the methodology, not the problem
itself. Pretty soon you have to resort to “frameworks” and “tools” just to
give the students a fighting chance to get anything done at all, distancing
them from the essential ideas and giving the impression that programming is
painful and ugly, an enormous tragedy."

It's kind of disappointing, because Harper clearly knows a ton about
programming language theory, but he's completely ignoring Cook's thesis (I
can't help but think he's at least aware of it). Cook flatly dispenses the
entanglement of object-orientation with mutable state or even subtype
polymorphism. That leaves a definition of OO that's more about implementation
hiding.

[1] http://existentialtype.wordpress.com/2011/03/15/teaching-fp-to-freshmen/
[2] http://www.cs.utexas.edu/~wcook/Drafts/2009/essay.pdf
[3] http://existentialtype.wordpress.com/2011/04/16/modules-matter-most/

> I mostly agree with him about laziness, but the important question is
> what features you replace it with. If you just made Haskell strict
> without any other modifications, you would make it worse, I think. I
> haven't tried Disciple, though.

Cool, I didn't know about the Disciple project till just now (Googling it).
I'm clearly not plugged into the Haskell community enough. From what I
understand, arguments against laziness involve:

- non-intuitive space leaks

- difficulties reasoning about performance

Those make sense to me in the abstract. I think I've encountered these
problems a little in pedagogical examples, but I'm interested in more
structured arguments.

-Sukant

Joel Crisp

unread,
Jul 13, 2011, 1:33:05 AM7/13/11
to aust...@googlegroups.com
To me, it boils down to the usual suspects. Know the mechanics behind your language and always, always profile before assuming where the performance bottleneck is.

The issue with lazy evaluation is that reasoning about performance is hard, but measuring it is still relatively easy, so I think this discussion has a lot of theoretical vs. empirical issues in it.

As the level of abstraction rises, so does the separation from the hardware and the performance concerns thereof.

Thoughts?

Joel


-Sukant

Matt M

unread,
Jul 13, 2011, 10:52:43 AM7/13/11
to Austin Functional Programmers


On Jul 12, 10:04 pm, "Sukant Hajra" <w6fbrjf...@snkmail.com> wrote:
> Harper is almost in full-tilt rant with gems like
>
>     "Object-oriented programming is eliminated entirely from the introductory
>     curriculum, because it is both anti-modular and anti-parallel by its very
>     nature, and hence unsuitable for a modern CS curriculum."
>
> Some of us had read Cook's "On Understanding Data Abstraction, Revisited" paper
> [2] for a previous meetup.  I think Cook makes a nice defense for the value of
> objects.  The problem, I think, is that Cook's definition of objects are not
> the common view of objects.

I liked Cook's paper, and I endorse his definition of what makes an
object, but I don't think OOP (using objects in a pervasive way) is a
good idea. That's the argument Cook has to make to support OOP, that
you should use the object construction everywhere.


> More recently [3], Harper had other ranty comments like
>
>     "We have for decades struggled with using object-oriented languages, such
>     as Java or C++, to explain these simple ideas, and have consistently
[...]   painful and ugly, an enormous tragedy."
>
> It's kind of disappointing, because Harper clearly knows a ton about
> programming language theory, but he's completely ignoring Cook's thesis (I
> can't help but think he's at least aware of it).  Cook flatly dispenses the
> entanglement of object-orientation with mutable state or even subtype
> polymorphism.  That leaves a definition of OO that's more about implementation
> hiding.

His implication that this criticism applies to all OOP languages might
be unfair,
but I mostly agree with his point of using C++ and Java for teaching
basics.
They bring alot of baggage with them.

>     - non-intuitive space leaks
>
>     - difficulties reasoning about performance
>
> Those make sense to me in the abstract.  I think I've encountered these
> problems a little in pedagogical examples, but I'm interested in more
> structured arguments.

My preference for strictness over laziness isn't just about
performance. In a strict language, with code like this:

foo :: (Int, Int) -> (Int, Int)
foo (x,y) = (1, x)

You can think of 'foo' as taking a pair of honest-to-goodness integers
and constructing another pair. On the other hand in a lazy language
you could use foo like this:

bar :: (Int, Int)
bar = foo bar

So in a lazy language, your functions must deal with terms
(expressions for values) rather than simple minded values. That's a
problem for performance (which strictness analysis can maybe largely
fix), but also I just don't like it conceptually.

Sukant Hajra

unread,
Jul 13, 2011, 11:34:28 AM7/13/11
to aust...@googlegroups.com
Excerpts from Matt M mclelland.matt-at-gmail.com |Austin Functional Programmers/mailing_lists|'s message of 2011-07-13 09:52:43 -0500:

>
> I liked Cook's paper, and I endorse his definition of what makes an
> object, but I don't think OOP (using objects in a pervasive way) is a
> good idea. That's the argument Cook has to make to support OOP, that
> you should use the object construction everywhere.

Hmm, not to split hairs, but I don't think Cook is trying to advocate OOP
blanketly -- that wasn't my read of the paper at least. I think he's more
saying that objects have some benefits of abstraction (implementation hiding
mostly) that ADTs don't have. So in the instances we can use them, it makes
sense. Furthermore, he goes on to describe what he calls "complex" methods,
which inhibit object-orientation, because collaborating components have to
reach into the implementation of each other. Within the context of "simple"
methods, the transformation between ADTs and objects is facile.

So my read of the paper is an advocacy for objects, but only in the simple
cases, which may or may not be the norm, given the context. That's my read, at
least.

> My preference for strictness over laziness isn't just about performance. In
> a strict language, with code like this:
>
> foo :: (Int, Int) -> (Int, Int)
> foo (x,y) = (1, x)
>
> You can think of 'foo' as taking a pair of honest-to-goodness integers and
> constructing another pair. On the other hand in a lazy language you could
> use foo like this:
>
> bar :: (Int, Int)
> bar = foo bar
>
> So in a lazy language, your functions must deal with terms (expressions for
> values) rather than simple minded values. That's a problem for performance
> (which strictness analysis can maybe largely fix), but also I just don't like
> it conceptually.

I'm thinking of your example, and I think this is less about performance, and
more about halting. For instance, I can do this in both a lazy language like
Haskell

Prelude> let foo = (\(x, y) -> (1, x)) :: (Int, Int) -> (Int, Int)
Prelude> let bar = foo bar
Prelude> bar

(doesn't halt)

and also a strict language like Scala.

scala> def foo = {tuple:(Int, Int) => (1, tuple._1)}
foo: ((Int, Int)) => (Int, Int)

scala> def bar: (Int, Int) = foo(bar)
bar: (Int, Int)

scala> bar
java.lang.StackOverflowError
at $anonfun$foo$1.<init>(<console>:7)
at .foo(<console>:7)
at .bar(<console>:11)
at .bar(<console>:11)
...

Maybe I'm missing something subtle about the difference between the two. Or
maybe there's another example that better illustrates your point?

I'm seeing a number of discussion points here between laziness and strictness:

- true limitations of performance

- ease of reasoning about performance

- ease of reasoning about halting

- ease of reasoning about space leaks

- stylistic preferences

-Sukant

Matt M

unread,
Jul 13, 2011, 12:27:19 PM7/13/11
to Austin Functional Programmers


On Jul 13, 10:34 am, "Sukant Hajra" <w6fbrjf...@snkmail.com> wrote:

> Hmm, not to split hairs, but I don't think Cook is trying to advocate OOP
> blanketly -- that wasn't my read of the paper at least.  

Maybe so. I'll have to reread it. I think that ADTs are the
unifying, more fundamental approach, though. Where appropriate we can
choose an object style encoding for our ADT. I'm not opposed to some
support for objects in languages, but I don't like "everything is an
object."

> I'm thinking of your example, and I think this is less about performance, and
> more about halting.  For instance, I can do this in both a lazy language like
> Haskell
>
>     Prelude> let foo = (\(x, y) -> (1, x)) :: (Int, Int) -> (Int, Int)
>     Prelude> let bar = foo bar
>     Prelude> bar
>
>     (doesn't halt)
>
> and also a strict language like Scala.
>
>     scala> def foo = {tuple:(Int, Int) => (1, tuple._1)}
>     foo: ((Int, Int)) => (Int, Int)
>
>     scala> def bar: (Int, Int) = foo(bar)
>     bar: (Int, Int)
>
>     scala> bar
>     java.lang.StackOverflowError
>             at $anonfun$foo$1.<init>(<console>:7)
>             at .foo(<console>:7)
>             at .bar(<console>:11)
>             at .bar(<console>:11)
>             ...

Yes, this is the difference I was getting at. Bar is somewhat evil,
and that results in non-termination in a strict language. Foo asks
for a pair of integers, and bar passes it pair returned by foo. In
Scala this results in endless regress, as it rightly should IMO. In
Haskell, foo gets passed integer thunks, expressions which will be
integers if they turn out not to diverge. Thus your mental model
for values in Haskell has to be expressions, rather than something
more simple minded.


So what day are we meeting? I'd prefer not Friday night.

Sukant Hajra

unread,
Jul 14, 2011, 12:58:33 AM7/14/11
to aust...@googlegroups.com
Excerpts from Matt M's message of 2011-07-13 11:27:19 -0500:

>
> Yes, this is the difference I was getting at. Bar is somewhat evil,
> and that results in non-termination in a strict language. Foo asks
> for a pair of integers, and bar passes it pair returned by foo. In
> Scala this results in endless regress, as it rightly should IMO. In
> Haskell, foo gets passed integer thunks, expressions which will be
> integers if they turn out not to diverge. Thus your mental model
> for values in Haskell has to be expressions, rather than something
> more simple minded.

At home and a little restless, so I thought I'd play around a little more with
this simple example. By the way, my Haskell is pretty weak, so someone who
knows more, please step in and let me know if I'm convincing myself of a
non-truth.

Here's a variant of the example in a properly compiled Haskell program (just in
case GHCi injects some unconventional behavior):

foo :: (Int, Int) -> (Int, Int)
foo (x, y) = (1, 2)

bar :: (Int, Int)
bar = foo bar

main :: IO ()
main = do print "this will print"
_ <- return $ fst bar
print "this will print"
x <- return $ fst bar
print "this will print"
print x
print "but this won't"

What I've done is even less tricky than what you did before. Mathematically,
it should be clear that bar converges to (1, 2). But Haskell isn't that smart:

$ ./a.out
"this will print"
"this will print"
"this will print"
a.out: <<loop>>

The laziness averts a little disaster the first time around because we never
use the _ binding. But it ultimately isn't much different from a strict
version in Scala. Haskell has a little more clever detection of the loop at
runtime (doesn't actually do the infinite recurse), but otherwise, it's more or
less the same effect -- a nasty runtime error.

So if the endless regress is what you prefer, then I think Haskell is doing
more-or-less what you want/expect. I wonder if there's a way to disable the
loop detection. It would be interesting the see the convergence happen, even
if there's the risk of the CPU spinning if it doesn't.

> So what day are we meeting? I'd prefer not Friday night.

I think someone's waiting for someone to make a decision. I think I lobbied
against Monday, and you're not into Friday. The previous meetup was on
Saturday -- I'm guessing no one's a fan of that.

So that leaves Tuesday, Wednesday, or Thursday after work hours?

-Sukant

Joel Crisp

unread,
Jul 14, 2011, 1:02:14 AM7/14/11
to aust...@googlegroups.com
I think someone voted down Wednesday. I was hoping to call a couple of coffee shops today but got a bit overtaken by events.

Tuesday or Thursday are both good for me (I don't have a life)

Joel

Sukant Hajra

unread,
Jul 14, 2011, 1:27:38 AM7/14/11
to aust...@googlegroups.com
Excerpts from Joel Crisp's message of 2011-07-14 00:02:14 -0500:

>
> I think someone voted down Wednesday. I was hoping to call a couple of coffee
> shops today but got a bit overtaken by events.
>
> Tuesday or Thursday are both good for me (I don't have a life)

By the way, ASM (the mentorship group I work with) just met up at Cherrywood
Coffeeshop [1] on East 38th for our last meetup. I highly recommend that
place. Good food, good-enough coffee, several beer options (on tap, I think),
and plenty of seating, with a side room we might be able to reserve. It's kind
of central, near the Feista off I-35.

So here's a summary of the options I've heard mentioned thus far:

- Chance's office
- Cherrywood
- Genuine Joe's
- Monkey's Nest
- Spiderhouse

Personally, I'm fine with anything, but prefer Spiderhouse the least.
Spiderhouse is a great place socially, but the way they've laid out the tables,
chairs, and outlets isn't as conducive for breaking out a bunch of laptops or a
projector.

[1] http://www.cherrywoodcoffeehouse.com/

Joel Crisp

unread,
Jul 14, 2011, 1:44:26 AM7/14/11
to aust...@googlegroups.com
How about trying for Thursday 21st @ 7pm then? Or is that too early for people?

Joel


--

Chance Coble

unread,
Jul 14, 2011, 8:40:22 AM7/14/11
to aust...@googlegroups.com
My flight lands in Austin Thursday @ 5pm so that would work for me. :)

intractable

unread,
Jul 11, 2011, 9:30:01 AM7/11/11
to Austin Functional Programmers
Yeah, I'd be interested in this (although I didn't know about this
when the meetups were active).

-j

On Jul 10, 11:36 pm, Duke Banerjee <dbanerje1...@gmail.com> wrote:
> Make that two.
>
> Duke
>
> On 7/10/2011 9:44 PM, Dan Luu wrote:
>
>
>
>
>
>
>
> > Yeah, I'm interested.
>
> > Cheers,
> > Dan
>
> > On Thu, Jul 7, 2011 at 3:02 PM, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> >> There were some interesting conversations ...
>
> >> Joel
>

lyo...@pervasive.com

unread,
Jul 11, 2011, 9:35:33 AM7/11/11
to Austin Functional Programmers
I liked these conversations, but can't promise regular attendance.
Monthly demos for my boss-to-the-third-power. Development processes
and automation getting more interesting than language constructs.


Thedward Blevins

unread,
Jul 11, 2011, 10:10:38 AM7/11/11
to aust...@googlegroups.com

I'd be interested.

Joel Stanley

unread,
Jul 12, 2011, 8:46:12 AM7/12/11
to aust...@googlegroups.com
How often are these meetings held?  I wouldn't be able to make next week because I'll be out of time, but am generally interested in attending.

Thanks,
Joel Stanley

Craig LaValle

unread,
Jul 12, 2011, 4:35:16 PM7/12/11
to aust...@googlegroups.com
A weeknight at a public location works for me too.

Has a format been decided on?  Is everyone bringing a possible presentation or is a single person or persons willing to take up the torch?

Savanni D'Gerinel

unread,
Jul 12, 2011, 9:21:44 AM7/12/11
to aust...@googlegroups.com
I was never able to make the other meetings, but I can probably make
just about anything that gets scheduled now. Monkey's Nest is right
next to where I'm currently living, too.

I'm more of a Clojure person, but I've done stuff in Haskell and Ocaml
and generally liked both of them.

--
Savanni

On Tue, 2011-07-12 at 05:27 -0700, Matt M wrote:
> Joel,
>
> Sounds good. I'm more on the Haskell side of things as well.
>
> Someone toss out a date and time. Next week?
>
> Matt
>

Thedward Blevins

unread,
Jul 12, 2011, 10:02:44 AM7/12/11
to aust...@googlegroups.com
On Tue, Jul 12, 2011 at 07:27, Matt M <mclella...@gmail.com> wrote:
> Sounds good.  I'm more on the Haskell side of things as well.
>
> Someone toss out a date and time.  Next week?

Next Monday around 7pm?

Monkey Nest Coffee?

Thedward Blevins

unread,
Jul 14, 2011, 9:12:09 AM7/14/11
to aust...@googlegroups.com
On Thu, Jul 14, 2011 at 00:44, Joel Crisp <joel.a...@googlemail.com> wrote:
> How about trying for Thursday 21st @ 7pm then? Or is that too early for
> people?

I'll second this motion.

I would also like to second the suggestion of Cherrywood as the venue
to keep things moving forward.

(Though any of the other suggestions would be fine with me except Spiderhouse)

Matt M

unread,
Jul 14, 2011, 10:01:09 AM7/14/11
to Austin Functional Programmers
Sukant,

Sorry, I messed up my example. Pattern matching is strict, which is
why Haskell diverges on that example. I should have written it like
this:

foo p = (1, fst p)
bar = foo bar

I started with this example and then switched it to pattern matching
style so that it would be more idiomatic. Whoops. Here bar should
evaluate to (1,1).

Try to imagine stepping through 'foo' in a debugger. What value does
'p' have when you first enter 'foo'?

Matt

Sean Duckett

unread,
Jul 14, 2011, 10:19:01 AM7/14/11
to aust...@googlegroups.com
Count me in - I think I've finally gotten the hang of Thursdays.

--
Sean

Matt M

unread,
Jul 14, 2011, 10:47:40 AM7/14/11
to Austin Functional Programmers
Thursday the 21st is good with me also. I'll suggest, of the proposed
venues, that we not meet at Chance's office for the first meet-up. I
also agree that Spider House with its steeply reclined seating and low
tables was not ideal for this kind of meeting.

In terms of format of the first meeting, I suggest that anyone who has
a talk they want to give or a paper they want to discuss, toss it out
now (if you provide a link to paper, I'll probably read it at least).
Otherwise, we can just start with a social meet and discuss whatever
comes out of that.

Matt

On Jul 14, 8:12 am, Thedward Blevins <thedw...@barsoom.net> wrote:

Joel Crisp

unread,
Jul 14, 2011, 11:44:17 AM7/14/11
to aust...@googlegroups.com
Ok then. I think we're converging on a meeting date and time : Thursday 21st @ 7pm

I will try to find out if we can book Monkey Nest or Cherrywood or Genuine Joe if I can't get either of those.

Does anyone have a projector we can use? I think Sukant used to bring one but I don't know if that is still possible.

Joel

Sukant Hajra

unread,
Jul 14, 2011, 11:44:25 AM7/14/11
to aust...@googlegroups.com
Excerpts from Matt M mclelland.matt-at-gmail.com |Austin Functional Programmers/mailing_lists|'s message of 2011-07-14 09:01:09 -0500:

>
> Sorry, I messed up my example. Pattern matching is strict, which is why
> Haskell diverges on that example. I should have written it like this:
>
> foo p = (1, fst p)
> bar = foo bar
>
> I started with this example and then switched it to pattern matching
> style so that it would be more idiomatic. Whoops. Here bar should
> evaluate to (1,1).

Awesome. Thanks for the clarification. I was playing around with that
example, trying to figure out why it didn't converge when I thought that
Haskell was capable of more.

> Try to imagine stepping through 'foo' in a debugger. What value does 'p'
> have when you first enter 'foo'?

This is a very interesting statement. Most debuggers have a lot to do with
exposing the state of the system. When I last played around with Hat, I was
kind of blown away, because I wasn't really ready for a debugger that was like
that. It was useful. . . but it got me thinking that when the functional style
is taken to an extreme, we may find that we get more understanding from tests
than from debugging. When I did the work I was alluding to earlier using
Functional Java, I definitely felt this way. Debugging was far more tedious,
because a lot of the execution was delayed and control was shuttling around
between tiny functions (anonymous classes in Java) a lot.

I wonder if the larger Haskell community feels this way -- that because pure
functions are often nicely decoupled and easy to compose, setting up unit tests
is pretty trivial and easy (or playing around in a REPL) to the point that
diving into a debugger isn't as common of an exercise. And I guess with pure
functions, it's a lot easier to do both instance-based testing and
property-based testing.

By the way, here's my short list of things I'm interested in that I haven't dug
deep enough into:

- More deeply understanding how monads generalize to applicative functors.
I understand loosely that it's all about "join," which you lose with
applicatives. There's the whole "monads don't compose, but applicatives
do" thing, but I'd like to see more practical observations in the
discussion. I know LYAH has some wonderful chapters on the topic; I need
to read them again (I'm dense and sometimes it takes a second reading for
things to really sink in).

- The parallel Haskell paper from Marlowe I mentioned before

- Edward Kmett has what appears to be a wonderful 5-part Vimeo [1] on
lenses that I'm interested in. I got through about half of it. I'm not
good about carving out time to watch videos. But having worked with
immutable data structures some, I feel it's important to have a stronger
arsenal of functions to manipulate them.

- On that note, I haven't gotten to Iteratees.

- Also, I haven't gotten to Arrows yet either.

- And on a practical note, I haven't really pushed myself to explore
testing with ScalaCheck or QuickCheck.

By the way, the last time we were meeting up, I mentioned that I really like
learning by staying in the REPL on a projector, and keeping to small
pedagogical examples. That's just how I learn well personally. I don't know
if that resonates with you guys as well. But I also like reading papers.

[1] http://www.youtube.com/watch?v=efv0SQNde5Q

-Sukant

Phil Knoll

unread,
Jul 14, 2011, 11:31:00 AM7/14/11
to Austin Functional Programmers
+1 for Thurs 7pm @ Spiderhouse or Monkey's Nest

On Jul 14, 12:44 am, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> How about trying for Thursday 21st @ 7pm then? Or is that too early for
> people?
>
> Joel
>

Sukant Hajra

unread,
Jul 14, 2011, 11:56:41 AM7/14/11
to aust...@googlegroups.com
Excerpts from Joel Crisp joel.a.crisp-at-googlemail.com |Austin Functional Programmers/mailing_lists|'s message of 2011-07-14 10:44:17 -0500:

>
> Ok then. I think we're converging on a meeting date and time : Thursday 21st
> @ 7pm
>
> I will try to find out if we can book Monkey Nest or Cherrywood or Genuine
> Joe if I can't get either of those.
>
> Does anyone have a projector we can use? I think Sukant used to bring one
> but I don't know if that is still possible.

I can make my projector available. I should be available next Thursday.

Whoever's doing the booking (I know I did it last time. . . but I'm
apprehensive to take it on again), I guess it might be good to see if there's a
wall we can project on. Genuine Joe's was /awesome/ in this regard. But I can
bring something ghetto like a whiteboard and an easel.

-Sukant

Joel Crisp

unread,
Jul 14, 2011, 1:55:25 PM7/14/11
to aust...@googlegroups.com
I will be going to Monkey Nest for lunch today so I will check it out and if they have a screen in their conference room I will book it.

Thanks to everyone who replied ;-)

Joel


--

Joel Crisp

unread,
Jul 14, 2011, 5:12:58 PM7/14/11
to aust...@googlegroups.com
Monkey Nest are booked out, and so are Cherrywood.

The room at Monkey Nest has a large TV with an VGA cable, and is about suitable for 6-10 people.

I've not had chance to follow up with Joe's but does anyone have any more suggestions in case their room is unavailable?

Thanks

Joel

Matt M

unread,
Jul 15, 2011, 12:24:22 PM7/15/11
to Austin Functional Programmers
I called Joe's. Their "board room" is booked, but they have a room
called "the cellar" (or maybe "the seller", but that makes less sense
to me) that fits 25 and has a screen for a projector.

We'd have to guarantee $25/hr minimum, though if we don't reach that
total we can buy giftcards to get there. What do you guys think?
How many hours will we be there? How many of you would come at 7pm
on Thursday the 21st? Will we drink $25/hr in coffee? (I don't think
they serve beer)

Matt


On Jul 14, 4:12 pm, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> Monkey Nest are booked out, and so are Cherrywood.
>
> The room at Monkey Nest has a large TV with an VGA cable, and is about
> suitable for 6-10 people.
>
> I've not had chance to follow up with Joe's but does anyone have any more
> suggestions in case their room is unavailable?
>
> Thanks
>
> Joel
>
> On Thu, Jul 14, 2011 at 12:55 PM, Joel Crisp <joel.a.cr...@googlemail.com>wrote:
>
> > I will be going to Monkey Nest for lunch today so I will check it out and
> > if they have a screen in their conference room I will book it.
>
> > Thanks to everyone who replied ;-)
>
> > Joel
>

Joel Crisp

unread,
Jul 15, 2011, 12:26:18 PM7/15/11
to aust...@googlegroups.com
From past experiences the cellar is a good location, and we usually get close enough to the $25

Joel

Matt M

unread,
Jul 15, 2011, 1:16:22 PM7/15/11
to Austin Functional Programmers
Does that mean these things usually lasted an hour?

On Jul 15, 11:26 am, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> From past experiences the cellar is a good location, and we usually get
> close enough to the $25
>
> Joel
>

Joel Crisp

unread,
Jul 15, 2011, 2:09:50 PM7/15/11
to aust...@googlegroups.com
Usually about that, some more, some less

Joel

Sukant Hajra

unread,
Jul 15, 2011, 2:12:52 PM7/15/11
to aust...@googlegroups.com
Excerpts from Matt M's message of 2011-07-15 12:16:22 -0500:

>
> Does that mean these things usually lasted an hour?

To keep costs down, I'd normally book it for an hour, with the possibility of
being kicked out by another group. I just lucked out that that happened pretty
rarely for the time I'd book the room. We can try that for next Thursday and
see how it goes.

-Sukant

Donnie Jones

unread,
Jul 15, 2011, 2:41:25 PM7/15/11
to aust...@googlegroups.com
Hello,

I'm having a hard time keeping up with the discussion of time and
location. I hope to make the next meeting, once a final decision is
made I would appreciate someone sending out a notification email with
the details.
Thank you.
--
Donnie

Matt M

unread,
Jul 15, 2011, 3:19:44 PM7/15/11
to Austin Functional Programmers
Since Joel says the other options presented won't work, and since no
one chimed in with an alternative, I think we should try to get the
Joe's "cellar" at 7PM on Thursday the 21st and then send out an
invitation to everyone who's expressed interest on this list. Joel,
do you want to make the reservation? Or l can make the reservation
if you'd like (either way, I don't mind covering whatever portion of
the $25 we don't meet).



On Jul 15, 1:41 pm, Donnie Jones <don...@darthik.com> wrote:
> Hello,
>
> I'm having a hard time keeping up with the discussion of time and
> location.  I hope to make the next meeting, once a final decision is
> made I would appreciate someone sending out a notification email with
> the details.
> Thank you.
> --
> Donnie
>

Joel Crisp

unread,
Jul 15, 2011, 3:40:23 PM7/15/11
to aust...@googlegroups.com

Hi Matt

I'm a little busy so as you've already looked into it would you mind making the reservation?

Thanks

Joel

Matt M

unread,
Jul 15, 2011, 3:53:24 PM7/15/11
to Austin Functional Programmers
Done.


On Jul 15, 2:40 pm, Joel Crisp <joel.a.cr...@googlemail.com> wrote:
> Hi Matt
>
> I'm a little busy so as you've already looked into it would you mind making
> the reservation?
>
> Thanks
>
> Joel
Reply all
Reply to author
Forward
0 new messages