Orkut Gmail Calendar Documents Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Promoting FP at workplace
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  14 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Vijay Mathew  
View profile  
 More options Jan 24, 7:36 pm
From: Vijay Mathew <vijay.the.sche...@gmail.com>
Date: Sun, 24 Jan 2010 06:06:05 -0800 (PST)
Local: Sun, Jan 24 2010 7:36 pm
Subject: Promoting FP at workplace
Anyone using or trying to promote FP at his workplace? Sharing the
experience will be interesting. If a manager asks, "who uses FP?",
then these links might help in giving a fitting reply:

ITA Software (http://itasoftware.com/), Clozure Associates (http://
www.clozure.com/index.html), Steamtech (http://www.streamtech.nl/site/
about+streamtech) - Common Lisp, Scheme

Jane Street Capital (http://www.janestcapital.com/) - Ocaml.

Ericsson, Facebook, Amazon and many others use Erlang. (http://
stackoverflow.com/questions/690875/real-world-applications-of-erlang)


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Shantanu Kumar  
View profile  
 More options Jan 24, 9:17 pm
From: Shantanu Kumar <kumar.shant...@gmail.com>
Date: Sun, 24 Jan 2010 07:47:29 -0800 (PST)
Local: Sun, Jan 24 2010 9:17 pm
Subject: Re: Promoting FP at workplace

On Jan 24, 7:06 pm, Vijay Mathew <vijay.the.sche...@gmail.com> wrote:

> Anyone using or trying to promote FP at his workplace? Sharing the
> experience will be interesting. If a manager asks, "who uses FP?",

I have had "interesting" negative experience, but concerning
colleagues. When I mentioned FP to colleagues (at more than one
company at Bangalore) they looked at me as if I had lost my mind. I
have spoken with the Java crowd and most of them are apparently happy
with OOP because it secures their CTC. It is sure that I was speaking
with the wrong people, but what is really interesting is that managers
are not "reaching out" beyond traditional technologies despite those
same things serving them poorly.

I have understood that it makes more sense to talk to potential early-
adopters -- whose who have a problem to solve and know that
traditional technologies won't serve them well, people who are willing
to bet on you. This looks like a Catch-22 situation but I hope the
situation will improve. I have also noticed that telling people "who
uses FP" isn't that effective. When you create effective solutions
(even though only a prototype) for the problems they face, they start
paying you a lot of attention.

Regards,
Shantanu


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Vijay Mathew  
View profile  
 More options Jan 25, 9:46 am
From: Vijay Mathew <vijay.the.sche...@gmail.com>
Date: Sun, 24 Jan 2010 20:16:47 -0800 (PST)
Local: Mon, Jan 25 2010 9:46 am
Subject: Re: Promoting FP at workplace

> I have also noticed that telling people "who
> uses FP" isn't that effective. When you create effective solutions
> (even though only a prototype) for the problems they face, they start
> paying you a lot of attention.

I agree with that and that's what I try to do, whenever I get a chance
to develop a prototype or write some tool for the internal use of the
company.

-- Vijay


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Zaki Manian  
View profile  
 More options Jan 25, 10:28 am
From: Zaki Manian <zman...@gmail.com>
Date: Mon, 25 Jan 2010 10:28:43 +0530
Local: Mon, Jan 25 2010 10:28 am
Subject: Re: Promoting FP at workplace

It is less common right now to see pure functional languages in the work
place.

But you see functional techniques in the API's of common libraries in python
and C#.

And C# 4.0 will support a wide range of functional techniques.

The question is do OOP coders realize that they are doing functional
programming when they find FP in their standard languages?

India phone:+91 9945111824
US phone:+1 6508625992
Follow me online@ http://friendfeed.com/zmanian

On Mon, Jan 25, 2010 at 9:46 AM, Vijay Mathew
<vijay.the.sche...@gmail.com>wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Shantanu Kumar  
View profile  
 More options Jan 25, 9:12 pm
From: Shantanu Kumar <kumar.shant...@gmail.com>
Date: Mon, 25 Jan 2010 07:42:53 -0800 (PST)
Local: Mon, Jan 25 2010 9:12 pm
Subject: Re: Promoting FP at workplace

> The question is do OOP coders realize that they are doing functional
> programming when they find FP in their standard languages?

No they (the majority of them) don't! Not at least until they are
told. I have had fun writing functional style code in Java and see OOP
fanatics scratch their heads looking at them. They can sense it's
fundamentally different from their imperative approach but they remain
in WTF-zone not being able to appreciate why I code the way I do. I
generally make my point with these:

- Interfaces are better than classes for establishing contracts
- Inheritance generally sucks
- Single responsibility principle is a good thing
- Slim interfaces are better for design fitness (I turn major and
higher order functions into slim interfaces)
- Immutable is better than mutable (lockless)
- Decorator, Strategy and Template patterns are good
- The "static" keyword is generally bad
- You want coffee? Don't start a kitchen here - get/use a vending
machine. Use dependency injection.

Regards,
Shantanu


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Saager Mhatre  
View profile  
 More options Jan 26, 12:31 am
From: Saager Mhatre <saager.mha...@gmail.com>
Date: Tue, 26 Jan 2010 00:31:46 +0530
Local: Tues, Jan 26 2010 12:31 am
Subject: Re: Promoting FP at workplace

From where I stand, most of those features are not native to FP; and are
also usually quoted as best-practice for OO design.
Maybe I'm just not getting the way you code, an example might help.

On Mon, Jan 25, 2010 at 9:12 PM, Shantanu Kumar <kumar.shant...@gmail.com>wrote:

--
Saager Mhatre

    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
C. K. Ponnappa  
View profile  
 More options Jan 26, 12:50 am
From: "C. K. Ponnappa" <ckponna...@gmail.com>
Date: Tue, 26 Jan 2010 00:50:58 +0530
Local: Tues, Jan 26 2010 12:50 am
Subject: Re: Promoting FP at workplace

> They can sense it's
> fundamentally different from their imperative approach

OOP done right isn't really all that imperative, you know. All the
points you mention that you use while writing OOP that aren't
appreciated by 'OOP fanatics' are perfectly standard OOP best practices.
If they aren't doing all of what you describe, they have no business
considering themselves any good at OOP. Throw a copy of 'Refactoring' at
them and hope for the best.
> The "static" keyword is generally bad

I would go so far as to say the only reason you'd mark something static
is as step one of an extract class refactoring.

Cheers,
Sidu.
http://blog.sidu.in
http://twitter.com/ponnappa


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Eli Barzilay  
View profile  
 More options Jan 26, 2:54 am
From: Eli Barzilay <e...@barzilay.org>
Date: Mon, 25 Jan 2010 16:24:06 -0500
Local: Tues, Jan 26 2010 2:54 am
Subject: Re: Promoting FP at workplace
On Jan 26, C. K. Ponnappa wrote:

> > They can sense it's fundamentally different from their imperative
> > approach

> OOP done right isn't really all that imperative, you know. All the
> points you mention that you use while writing OOP that aren't
> appreciated by 'OOP fanatics' are perfectly standard OOP best
> practices.  If they aren't doing all of what you describe, they have
> no business considering themselves any good at OOP. Throw a copy of
> 'Refactoring' at them and hope for the best.

Something that is relevant here is Felleisen's talks on OO, see for
example the "Functional Objects" entry at
http://www.ccs.neu.edu/home/matthias/presentations.html

--
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Shantanu Kumar  
View profile  
 More options Jan 26, 11:30 am
From: Shantanu Kumar <kumar.shant...@gmail.com>
Date: Mon, 25 Jan 2010 22:00:25 -0800 (PST)
Local: Tues, Jan 26 2010 11:30 am
Subject: Re: Promoting FP at workplace

On Jan 26, 12:01 am, Saager Mhatre <saager.mha...@gmail.com> wrote:

> From where I stand, most of those features are not native to FP; and are
> also usually quoted as best-practice for OO design.

That's right.

I find it feasible to write functional style code which is also good
OO, which is what I try to adopt using Java. While making a case for
my coding style, I only mention the good OO characteristics to OO
folks.

> Maybe I'm just not getting the way you code, an example might help.

Though only mildly functional in style, here's something I am working
on: http://code.google.com/p/bitumenframework/

Regards,
Shantanu


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Shantanu Kumar  
View profile  
 More options Jan 26, 11:39 am
From: Shantanu Kumar <kumar.shant...@gmail.com>
Date: Mon, 25 Jan 2010 22:09:17 -0800 (PST)
Local: Tues, Jan 26 2010 11:39 am
Subject: Re: Promoting FP at workplace

On Jan 26, 12:20 am, "C. K. Ponnappa" <ckponna...@gmail.com> wrote:

> > They can sense it's
> > fundamentally different from their imperative approach

> OOP done right isn't really all that imperative, you know. All the
> points you mention that you use while writing OOP that aren't
> appreciated by 'OOP fanatics' are perfectly standard OOP best practices.

That's true.

> If they aren't doing all of what you describe, they have no business
> considering themselves any good at OOP. Throw a copy of 'Refactoring' at
> them and hope for the best.

I have found OOP fanatics ("OO is the best" crowd) to be bad at OO
(ironic), and those who know good OO are generally appreciative of FP.

> The "static" keyword is generally bad

> I would go so far as to say the only reason you'd mark something static
> is as step one of an extract class refactoring.

LOL. +1 for that.

Regards,
Shantanu


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Saager Mhatre  
View profile  
 More options Jan 27, 11:31 am
From: Saager Mhatre <saager.mha...@gmail.com>
Date: Wed, 27 Jan 2010 11:31:16 +0530
Local: Wed, Jan 27 2010 11:31 am
Subject: Re: Promoting FP at workplace

Was going through liliput (tried to pick a small codebase) and I'm not sure
I'd refer you're code to too many people as 'good' OOP.

There's definitely some good qualities in there, but a lot of the code
remains declarative/FP-ish.
Although that's not a bad thing, I'd say an OO thought process would evolve
a significantly inverted dispatch model.

And for someone who hates statics jwebmvc seems to have one too many static
utils.

On Tue, Jan 26, 2010 at 11:30 AM, Shantanu Kumar
<kumar.shant...@gmail.com>wrote:

--
Saager Mhatre

    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Saager Mhatre  
View profile  
 More options Jan 27, 11:32 am
From: Saager Mhatre <saager.mha...@gmail.com>
Date: Wed, 27 Jan 2010 11:32:55 +0530
Local: Wed, Jan 27 2010 11:32 am
Subject: Re: Promoting FP at workplace

On Tue, Jan 26, 2010 at 11:39 AM, Shantanu Kumar
<kumar.shant...@gmail.com>wrote:

> > The "static" keyword is generally bad

> > I would go so far as to say the only reason you'd mark something static
> > is as step one of an extract class refactoring.

> LOL. +1 for that.

Sidu/Shantanu,
You *really* want to be careful when making extreme statements, people tend
to latch on to them dogmatically.

--
Saager Mhatre


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Shantanu Kumar  
View profile  
 More options Jan 27, 2:05 pm
From: Shantanu Kumar <kumar.shant...@gmail.com>
Date: Wed, 27 Jan 2010 00:35:03 -0800 (PST)
Local: Wed, Jan 27 2010 2:05 pm
Subject: Re: Promoting FP at workplace

On Jan 27, 11:01 am, Saager Mhatre <saager.mha...@gmail.com> wrote:

> Was going through liliput (tried to pick a small codebase) and I'm not sure
> I'd refer you're code to too many people as 'good' OOP.

> There's definitely some good qualities in there, but a lot of the code
> remains declarative/FP-ish.
> Although that's not a bad thing, I'd say an OO thought process would evolve
> a significantly inverted dispatch model.

> And for someone who hates statics jwebmvc seems to have one too many static
> utils.

Thanks for the review - the whole thing is still in alpha, so I guess
it has many more rough edges. :-) I moved the JWebMVC code base over
to form Taimen. JWebMVC is deprecated now. One of the chief design
goals for JWebMVC/Taimen has been to be 100% compatible with Clojure.
Declarative-ness seems to be the closest one can get in Java to
emulate "lazy evaluation" as in FP - I guess that explains my bias
towards it.

Regards,
Shantanu


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Saager Mhatre  
View profile  
 More options Jan 27, 2:54 pm
From: Saager Mhatre <saager.mha...@gmail.com>
Date: Wed, 27 Jan 2010 14:54:55 +0530
Local: Wed, Jan 27 2010 2:54 pm
Subject: Re: Promoting FP at workplace

On Wed, Jan 27, 2010 at 2:05 PM, Shantanu Kumar <kumar.shant...@gmail.com>wrote:

> Declarative-ness seems to be the closest one can get in Java to
> emulate "lazy evaluation" as in FP - I guess that explains my bias
> towards it.

sounds like a fair argument; personally, i try to keep the two paradigms
apart.

--
Saager Mhatre


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2010 Google