I completely agree!
I wish I had more upvotes to give, since I'd give your comment the most if it were possible. I agree that there are some omissions from the community here, especially Ionide (which I personally use in addition to Visual Studio). I should probably do a video showing a breadth of F# tooling and libraries for F#, because it really is a great landscape where you can pick the tools and libraries based on their merit, rather than being stuck with one particular set of tools.
- install VSCode and then Ionide
- install .net core
- install mono (i believe ionide still uses mono)
- install node and npm and then yeoman
- install the aspnet generator for yo
- "yo aspnet" will give the option to generate a working ASP.NET F# website
Not in my experience. Never since it appear the setup have worked for me, not even once.
I try again last week. I need to copy-paste the .sh script from github because the one it generate was wrong.
P.D: I don' use yeoman. NPM bloat is not my style: I follow the MS tutorial:
https://docs.microsoft.com/en-us/dotnet/articles/fsharp/tuto...
Also, you don't need to use yeoman, "dotnet new --lang F#" produces a blank F# .net core project and then you can add all of the dependencies manually.
I'd love to learn more about what went wrong in setup. Keeping that article up to date and, more importantly, correct is a priority of mine, because I really want people to learn about Ionide and F#.
> build.sh: line 34: syntax error: unexpected end of file
So I delete the last empty line, and get:
> build.sh: line 33: syntax error near unexpected token `fi'
I don't see any wrong with the script (I don't know bash scripting). So I go to the github site and just copy from https://github.com/ionide/ionide-vscode-fake/blob/master/bui...
And it work.
This is the diff:
diff -r 8b6c97c12f6e build.sh
--- a/build.sh Fri Dec 09 20:27:05 2016 -0500
+++ b/build.sh Fri Dec 09 20:27:50 2016 -0500
@@ -3,7 +3,7 @@
then
# use .Net
- .paket/paket.bootstrapper.exe
+ .paket/paket.bootstrapper.exe prerelease
exit_code=$?
if [ $exit_code -ne 0 ]; then
exit $exit_code
@@ -15,7 +15,7 @@
exit $exit_code
fi
- packages/FAKE/tools/FAKE.exe $@ --fsiargs build.fsx
+ packages/FAKE/tools/FAKE.exe $@ --nocache --fsiargs build.fsx
else
# use mono
mono .paket/paket.bootstrapper.exe
@@ -29,5 +29,5 @@
if [ $exit_code -ne 0 ]; then
exit $exit_code
fi
- mono packages/FAKE/tools/FAKE.exe $@ --fsiargs -d:MONO build.fsx
+ mono packages/FAKE/tools/FAKE.exe $@ --nocache --fsiargs -d:MONO build.fsx
fi
\ No newline at end of fileHe says that what devs are telling them is that the language is good, but they want better tools, so he wouldn't be opposed to a solid maintenance release just around improving tooling (but nothing is planned yet).
So the day after watching that, four years after the video, it's a bit weird to find you saying "F# 4 and now F# 4.1 - the language is way ahead of the tooling".
* http://fable.io, which is a modern F# to JavaScript compiler that lets you build Elm-style apps, access React and all that fun
* http://ionide.io which is an F# integration for Atom and VS Code that is doing amazing work towards bringing F# to a fully cross-platform ecosystem
* http://notebooks.azure.com which is (very new) free Microsoft-hosted Jupyter Notebook service that provides support for the usual suspects (R and Python), but also ships with great F# support out-of-the-box
In other words, I think the language is way ahead of the libraries and tooling - there is so much more that can be done (and is being done) using F# as-is!