News for hackers. Stuff that matters.
Re:Ask HN: What Happened to Elm? by kayodelycaon on Friday February 10, 2023 @09:56PM (#34749125)
F# was one of the languages I was thinking about with I wrote my comment. :)
Re:Ask HN: What Happened to Elm? by bmitc on Friday February 10, 2023 @10:17PM (#34749239)
Very strange. When I write F# code, it almost directly mimics the problem statement. For example, I have implemented a fair amount of The Ray Tracer Challenge in F#, and it feels like I'm literally just writing down the description and tests from the book and have working code.

Do you have a particular example of Python that you feel it shows off its pseudocode abilities? Because one can write F# almost identically to Python, so I just can't imagine Python being superior given that it lacks several domain modeling tools that F# has (records and discriminated unions).

Re:Ask HN: What Happened to Elm? by akkad33 on Saturday February 11, 2023 @01:25AM (#34750084)
Speaking as a python dev with some experience in F# , one maybe minor point is the unfamiliar function call syntax that could throw off programmers not familiar with curried functions. Most other languages have parenthesis for function calls, so it can be a bit jarring to have a sequence of strings and not know whether the result is a function or a value. Furthermore some experienced F# devs love making custom symbols, which can also obfuscate the code
Re:Ask HN: What Happened to Elm? by bmitc on Saturday February 11, 2023 @07:13AM (#34751674)
> so it can be a bit jarring to have a sequence of strings and not know whether the result is a function or a value

I think that the nice thing about F# is it is always a value. Function evaluation and currying can be taught fairly readily, especially given that once you get it, there's no gotchas.

> Furthermore some experienced F# devs love making custom symbols, which can also obfuscate the code

I agree that is painful when it occurs, but that style should absolutely be de-recommended and is so by Don Syme. I haven't really encountered it much in my personal development though (or I have avoided it).