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

It's great to be back at the ACCU Conference 2025!

Last week I was back at the ACCU Conference in Bristol, for the first time since I gave an opening keynote in 2019 . In March 2020, COVID hit the UK and I got out of the habit of attending and speaking at conferences. Plus the ACCU Conference, and the organisation in general, took a big step back towards C++ and that hasn’t been relevant to me for nearly two decades. It’s taken until now, 2025 for me to want to talk again, and I was really pleased to be accepted for the ACCU Conference again. It was just a 20 minute session and I only attended for the day I was speaking. There was enough varied content for it to be interesting to me and I’m hoping to be back for the full conference next year. I really enjoyed attending and it was great to catch up with people I hadn’t seen for years. I felt re-engaged and particularly liked being asked if I’d been to nor(DEV):con . Learning to stop writing code (and why you won't miss it) Daisy Hollman I should have read the summary of the openin...

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...

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...