TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Tour of F#

390 pointsby dimitrovover 8 years ago

19 comments

kornishover 8 years ago
One observation from watching Go and Rust gain popularity is that having an online code evaluation tool like <a href="https:&#x2F;&#x2F;play.rust-lang.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;play.rust-lang.org&#x2F;</a> or <a href="https:&#x2F;&#x2F;play.golang.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;play.golang.org&#x2F;</a> can do wonders for adoption. People can experiment in a sandbox without having to hop into a development environment, and peers have an easier time debugging by easily sharing and reproducing problems.<p>For anyone interested in trying out F# online, looks like Microsoft Research has such a tool: <a href="http:&#x2F;&#x2F;www.tryfsharp.org&#x2F;Create" rel="nofollow">http:&#x2F;&#x2F;www.tryfsharp.org&#x2F;Create</a>. Unfortunately looks like you have to create an account of some sort to share scripts, so these alternatives might be better:<p><a href="https:&#x2F;&#x2F;repl.it&#x2F;languages&#x2F;fsharp" rel="nofollow">https:&#x2F;&#x2F;repl.it&#x2F;languages&#x2F;fsharp</a><p><a href="http:&#x2F;&#x2F;tryfs.net&#x2F;" rel="nofollow">http:&#x2F;&#x2F;tryfs.net&#x2F;</a>
评论 #13709492 未加载
评论 #13710489 未加载
评论 #13708903 未加载
评论 #13708824 未加载
评论 #13709633 未加载
评论 #13714700 未加载
评论 #13709274 未加载
评论 #13709468 未加载
评论 #13712462 未加载
phillipcarterover 8 years ago
Author of the article here. Happy to see this up on HN!<p>The article is actually more of an annotated version of the F# Tutorial Script[0] which ships inside Visual Studio 2017 (also in other version of Visual Studio, but the Tutorial script is a bit different there).<p>You can get started with F# just about everywhere everywhere:<p>* Visual Studio[1]<p>* Visual Studio for Mac[2]<p>* Visual Studio Code (via Ionide plugins)[3]<p>* .NET Core and the .NET CLI (`dotnet new console -lang F#`)[4]<p>* Azure Notebooks (Jupyter in the browser via Azure) [5]<p>[0]: <a href="https:&#x2F;&#x2F;github.com&#x2F;Microsoft&#x2F;visualfsharp&#x2F;blob&#x2F;master&#x2F;vsintegration&#x2F;ProjectTemplates&#x2F;TutorialProject&#x2F;Template&#x2F;Tutorial.fsx" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;Microsoft&#x2F;visualfsharp&#x2F;blob&#x2F;master&#x2F;vsinte...</a><p>[1]: <a href="https:&#x2F;&#x2F;www.visualstudio.com&#x2F;vs&#x2F;visual-studio-2017-rc&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.visualstudio.com&#x2F;vs&#x2F;visual-studio-2017-rc&#x2F;</a><p>[2]: <a href="https:&#x2F;&#x2F;www.visualstudio.com&#x2F;vs&#x2F;visual-studio-mac&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.visualstudio.com&#x2F;vs&#x2F;visual-studio-mac&#x2F;</a><p>[3]: <a href="https:&#x2F;&#x2F;marketplace.visualstudio.com&#x2F;items?itemName=Ionide.Ionide-fsharp" rel="nofollow">https:&#x2F;&#x2F;marketplace.visualstudio.com&#x2F;items?itemName=Ionide.I...</a><p>[4]: <a href="https:&#x2F;&#x2F;dot.net&#x2F;core" rel="nofollow">https:&#x2F;&#x2F;dot.net&#x2F;core</a><p>[5]: <a href="https:&#x2F;&#x2F;notebooks.azure.com" rel="nofollow">https:&#x2F;&#x2F;notebooks.azure.com</a>
评论 #13709898 未加载
评论 #13710307 未加载
steegoover 8 years ago
Just a reminder: Scott Wlaschin&#x27;s book, F# for fun is a great free resource for people interested in F#. It&#x27;s available here: <a href="https:&#x2F;&#x2F;fsharpforfunandprofit.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;fsharpforfunandprofit.com&#x2F;</a><p>If you have a short attention span, I recently started posting sped up screencasts on twitter that range between 1-2 minutes. <a href="https:&#x2F;&#x2F;twitter.com&#x2F;FSharpCasts" rel="nofollow">https:&#x2F;&#x2F;twitter.com&#x2F;FSharpCasts</a><p>If there&#x27;s a feature you want to see, let me know. I take requests.
illuminati1911over 8 years ago
For anybody curious&#x2F;interested in F# or any programmer who is interested in safe (functional) programming, check this out:<p><a href="https:&#x2F;&#x2F;fsharpforfunandprofit.com&#x2F;posts&#x2F;is-your-language-unreasonable&#x2F;" rel="nofollow">https:&#x2F;&#x2F;fsharpforfunandprofit.com&#x2F;posts&#x2F;is-your-language-unr...</a><p>I might be slightly biased but in my opinion it&#x27;s one of the best programming articles I have ever read.
评论 #13712126 未加载
problemsover 8 years ago
The problem I had going into this without a strong functional background is that often times to do practical things you&#x27;re forced to work with .NET libraries - these .NET libraries are not nice functional libraries and don&#x27;t encourage you to think functionally. Eventually I felt like everything I wrote was wrong and I just gave up on it.
评论 #13709548 未加载
评论 #13710263 未加载
评论 #13710685 未加载
评论 #13710163 未加载
评论 #13709415 未加载
评论 #13712134 未加载
markatkinsonover 8 years ago
So I learned F# and C# in parallel. But more emphasis on F# than on C#, and so when I landed my first dev job on C# I was so incredibly baffled at the code base. I would toss my arms up in shock at the sight of reference types or classes being passed around and updated from external methods. The horror! How could somebody do this.<p>Anyway, now I have come to learn it is just another way of doing things but my C# programming style is heavily influenced by a more functional style. I never realised till I actually landed a job where I had to interact with more standard OOP principles.<p>I wish there was a way I could do more F# at my work.
评论 #13712115 未加载
评论 #13712111 未加载
jsingletonover 8 years ago
These is also FAKE (F# Make), a DSL for build tasks (<a href="https:&#x2F;&#x2F;fsharp.github.io&#x2F;FAKE&#x2F;" rel="nofollow">https:&#x2F;&#x2F;fsharp.github.io&#x2F;FAKE&#x2F;</a>). Similar to CAKE (<a href="http:&#x2F;&#x2F;cakebuild.net&#x2F;" rel="nofollow">http:&#x2F;&#x2F;cakebuild.net&#x2F;</a>), which uses C#.
aashishkoiralaover 8 years ago
I know it&#x27;s already been mentioned, but I just wanted to endorse <a href="https:&#x2F;&#x2F;fsharpforfunandprofit.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;fsharpforfunandprofit.com&#x2F;</a> again - you could not ask for a better teacher than Scott Wlaschin if you want to learn F#.
评论 #13710966 未加载
agentultraover 8 years ago
So much like OCaml... but I like the ability to annotate units! That&#x27;s very cool.
评论 #13710146 未加载
评论 #13709558 未加载
评论 #13711197 未加载
knocteover 8 years ago
I hope this is not flagged as spam but I think another good way of learning F# is getting paid to write it :) see <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=13541679#up_13548091" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=13541679#up_13548091</a>
davidglover 8 years ago
A more concise cheat sheet: <a href="http:&#x2F;&#x2F;dungpa.github.io&#x2F;fsharp-cheatsheet&#x2F;" rel="nofollow">http:&#x2F;&#x2F;dungpa.github.io&#x2F;fsharp-cheatsheet&#x2F;</a>
评论 #13708941 未加载
评论 #13708942 未加载
xvilkaabout 8 years ago
I wonder, what are the pluses of F# that missing in more mature and widely adopted OCaml? Why to create a clone of good language? With porting opam to Windows platform [1], along with improving the Unicode support [2] in it I&#x27;d say it has a bigger potential in this field.<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;ocaml&#x2F;opam&#x2F;issues&#x2F;2191" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ocaml&#x2F;opam&#x2F;issues&#x2F;2191</a><p>[2] <a href="https:&#x2F;&#x2F;github.com&#x2F;ocaml&#x2F;ocaml&#x2F;pull&#x2F;153" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ocaml&#x2F;ocaml&#x2F;pull&#x2F;153</a>
评论 #13719996 未加载
mellingover 8 years ago
What&#x27;s the quick start for using F# on the Mac? Can I get a good native development environment? Am I better off running a Windows VM to get better tooling?
评论 #13709385 未加载
评论 #13709467 未加载
awebover 8 years ago
I know that it&#x27;s not entierely related to the post, but is there a specific job board for F# jobs? I tried the language a bit and really liked it but it seems to be rarely used in a professional setting, which is a shame... I&#x27;d be interested to know where I could potentially find a job where I could use F#!
omniover 8 years ago
&gt; &#x2F;&#x2F;&#x2F; Conditionals use if&#x2F;then&#x2F;elid&#x2F;elif&#x2F;else.<p>The &quot;elid&quot; intrigued me and I tried to look it up but couldn&#x27;t find anything. Is this just a typo?
评论 #13710291 未加载
评论 #13711278 未加载
vatotemkingover 8 years ago
Me while looking at the examples: Hmm F# looks like an easier version of Rust. I wonder how much of Rust was inspired by F# (since F# is older).
评论 #13714605 未加载
评论 #13714632 未加载
euroclydonover 8 years ago
How difficult is it to get an F# kernel for Jupyter running on my Mac?
评论 #13710189 未加载
评论 #13710446 未加载
ultrahateover 8 years ago
I realize that .NET is F#&#x27;s biggest strength from the perspective that Microsoft probably holds of trying to push C# more functional, and trying to attract talent from R, Ocaml, Rust, Julia, Haskell, etc, but it also feels like its biggest weakness.<p>I&#x27;d love to see some sort of bootstrapped version that makes use of .NET Native or CoreRT or whatever they use today, and I&#x27;d REALLY like to see a strong Stdlib for F# that takes into account what functional programmers are used to.<p>I&#x27;ve been doing functional programming for several years, and I feel like a moron working with F# because I don&#x27;t know half of these dumb .NET classes and some of the domain problems don&#x27;t really leave me able to budget enough time to bootstrap my own solutions OR learn all the .NET stuff I need. Especially not when I can jump into several other languages and have a working prototype often in days or hours.
评论 #13710236 未加载
ice109over 8 years ago
does anyone know what the state of C&#x2F;F# on Linux is?
评论 #13710339 未加载