Skip to main content

F# eye for the C# guy

On Tuesday night I drove to Cambridge to see F# eye for the C# guy given by Phil Trelford at Software East. I’ve always been intrigued by functional programming languages, but never really taken the plunge. I’ve worked with C# on a couple of contracts in the past, so thought this would be a great introduction. And it was.

Phil Trelford has a very unique and charismatic presenting style that would have made the material interesting even if it had been boring, which it wasn’t.  There were a few slides and then some code. I like code! The initial example was a demonstration of how you can reduce a 30+ line, simple C# class down to only half a dozen lines of F#. That was a nice opener and there were plenty more examples like that. F# is certainly a very concise language and therefore has a slight edge in terms of power over C#.

Was I inspired to install an F# compiler and get hacking? Honestly? Not in the slightest. It’s a horribly ugly language and not as expressive as I think it could be. I was inspired to think a bit more about Clojure and Scala though.

Comments

  1. Would be interested to hear why you think it is a "horribly ugly language and not as expressive as I think it could be".
    Anything in particular that makes you feel that way?

    ReplyDelete
  2. I didn't find it aesthetically pleasing! It'ss expressive, in the same way LINQ is, in that you have to know what the operators mean and that I think is the hurdle I don't want to bother jumping yet.

    ReplyDelete
  3. Interesting.
    Thanks for clarifying

    ReplyDelete
  4. You can't possibly claim that scala code is more aesthetically pleasing than F#. Clojure is cleaner for sure.

    ReplyDelete
  5. I didn't say F# was more aesthetically pleasing thank scala. It was an absolute statement, not a relitive one.

    ReplyDelete

Post a Comment

Popular posts from this blog

Write Your Own Load Balancer: A worked Example

I was out walking with a techie friend of mine I’d not seen for a while and he asked me if I’d written anything recently. I hadn’t, other than an article on data sharing a few months before and I realised I was missing it. Well, not the writing itself, but the end result. In the last few weeks, another friend of mine, John Cricket , has been setting weekly code challenges via linkedin and his new website, https://codingchallenges.fyi/ . They were all quite interesting, but one in particular on writing load balancers appealed, so I thought I’d kill two birds with one stone and write up a worked example. You’ll find my worked example below. The challenge itself is italics and voice is that of John Crickets. The Coding Challenge https://codingchallenges.fyi/challenges/challenge-load-balancer/ Write Your Own Load Balancer This challenge is to build your own application layer load balancer. A load balancer sits in front of a group of servers and routes client requests across all of the serv

Bloodstock 2009

This year was one of the best Bloodstock s ever, which surprised me as the line up didn't look too strong. I haven't come away with a list of bands I want to buy all the albums of, but I did enjoy a lot of the performances. Insomnium[6] sound a lot like Swallow the Sun and Paradise Lost. They put on a very good show. I find a lot of old thrash bands quite boring, but Sodom[5] were quite good. They could have done with a second guitarist and the bass broke in the first song and it seemed to take ages to get it fixed. Saxon[8] gave us some some classic traditional heavy metal. Solid, as expected. The best bit was, following the guitarist standing on a monitor, Biff Bifford ripped off the sign saying "DO NOT STAND" and showed it to the audience. Once their sound was sorted, Arch Enemy[10] stole the show. They turned out not only to be the best band of the day, but of the festival, but then that's what you'd expect from Arch Enemy. Carcass[4] were very disappoin

Catalina-Ant for Tomcat 7

I recently upgraded from Tomcat 6 to Tomcat 7 and all of my Ant deployment scripts stopped working. I eventually worked out why and made the necessary changes, but there doesn’t seem to be a complete description of how to use Catalina-Ant for Tomcat 7 on the web so I thought I'd write one. To start with, make sure Tomcat manager is configured for use by Catalina-Ant. Make sure that manager-script is included in the roles for one of the users in TOMCAT_HOME/conf/tomcat-users.xml . For example: <tomcat-users> <user name="admin" password="s3cr£t" roles="manager-gui, manager-script "/> </tomcat-users> Catalina-Ant for Tomcat 6 was encapsulated within a single JAR file. Catalina-Ant for Tomcat 7 requires four JAR files. One from TOMCAT_HOME/bin : tomcat-juli.jar and three from TOMCAT_HOME/lib: catalina-ant.jar tomcat-coyote.jar tomcat-util.jar There are at least three ways of making the JARs available to Ant: Copy the JARs into th