Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re^3: pissed off about functional programming

by Anonymous Monk
on Apr 25, 2005 at 16:57 UTC ( #451271=note: print w/ replies, xml ) Need Help??


in reply to Re^2: pissed off about functional programming
in thread pissed off about functional programming

The shift from programming in assembly language to programming with high level languages produced an order-of-magnitude increase in programmer productivity.
...snip...
Sorry. We've already been using FP long enough to know that it isn't the next silver bullet.
Hmm. Are you sure there isn't another 10x productivity boost from functional languages? Or are you just refusing to see it? Take a web browser. Code one up in C. Then do the same thing in O'Caml. There you go.


Comment on Re^3: pissed off about functional programming
Re^4: pissed off about functional programming
by jdporter (Canon) on Apr 25, 2005 at 17:18 UTC
    Except that C isn't a HLL, it's assembly language. Your experiment would only substantiate his point.
      Of course you conveniently omitted your definition of HLL. Maybe you'd like to give us some examples of un-functional high level languages?
        Maybe you'd like to give us some examples of un-functional high level languages?

        Ruby? Lisp? Smalltalk? Perl? Pop-11? Eiffel? Javascript?

Re^4: pissed off about functional programming
by mstone (Deacon) on Apr 25, 2005 at 22:22 UTC

    Why bother with C? That just invites arguments about whether it's fair for me to use gecko instead of writing my own layout engine from scratch.

    O'Caml supports both functional and imperative programming, so we can eliminate all that quibbling by doing both versions in the same language and using the same libraries. Then we can be really sure that we're seeing a valid comparison between the functional and imperative styles.

    So.. you spend five weeks writing a web browser in a strictly O'Caml functional style, then I'll see if I can write an O'Caml imperative version that matches your feature set in one year.

    Or how about you do your version in O'Caml, and I'll do my version in Java? Again, you get five weeks, and I get a year.

    If you want to compare library sets, we'll compare library sets. If you want to compare languages, we'll compare languages. Either way, I think you'll have a hard time demonstrating even a consistent 1.25x increase in productivity strictly from using the functional style.

      So.. you spend five weeks writing a web browser in a strictly O'Caml functional style, then I'll see if I can write an O'Caml imperative version that matches your feature set in one year. Or how about you do your version in O'Caml, and I'll do my version in Java? Again, you get five weeks, and I get a year.
      Do it guys, I'd love to see something better in the (free) browser department than Mozilla. (There's a project that could use some desperate refactoring (functional or otherwise))

        You think it’s possible for one guy to rewrite something to the level of completeness that Gecko has reached, within in a year? I’m no fan of the bloat that Gecko has become, but I’m absolutely certain you’re setting yourself up for some disappointment.

        Makeshifts last the longest.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://451271]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (5)
As of 2014-12-25 15:59 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (160 votes), past polls