u/burakyCoding
burakyCoding
burakyCoding
I am currently improving my F# skills with exercism. Awesome work!
burakyCoding
So you are also seperating frontend and backend in different folders, right ?
burakyCoding
This is a new compiler and doesn't have to include F#
burakyCoding
good bot.
burakyCoding
Don't expect to be getting hired as a "full stack" developer anytime soon.
No one has to know everything from day one to get a job. My first ever job was fullstack and i didn't knew everything, yet i got the job. I worked on both fe and be, and it paid my bills.
Also, to be able to start learning backend, you don't have to be frontend ninja or vice versa.
Learning concepts and fundamentals is really important, you are right there. But, the way you say it and some extras are wrong. Your comment is far from being constructive.
Edit: Fixed typo, deleted unnecessary comment.
burakyCoding
İf not using PublishAot (which u cant use before dotnet 7) u can use "PublishTrimmed". That also reduces size. Aot automatically uses that, so when using aot u dont need to use trim
burakyCoding
I wonder if this supports F# language as well
burakyCoding
Did u set "PublishAot" option as true? I compiled my F# project with 2 libs which re not aot compitable yet, but the end result was still 17mb while dotnet 6 version was 37mb
burakyCoding
Size of the executable has decreased to 17.3 mb. While compiling, the two packages i mentioned earlier caused warnings for aot mode. On microsoft's website it was already mentioned that most of libraries are not compitable for aot mode yet.
Aot is not perfect yet, but future looks bright :)
burakyCoding
I just saw that dotnet team has completed serious work on 'native aot' compilation with the dotnet 7 release. You can check the details here.
I will share the results from here when i can try compiling the project with dotnet 7 myself. On the microsoft page they say not all libraries are compitable yet, so packages i used might still be a problem. But F# getting better at compiling is good news!
Also i should add that there is a compiler project called Fable, which translates F# to JS but they also work on translating into Python and Rust. Translating into Rust option is worth considering.
burakyCoding
Not functional, but Go also is gc'ed and outputs are pretty small and compiles faster than a web page loads. I havent used but also OCaml is pretty good afaik, very close to Go.
burakyCoding
You can look at OCaml. I havent used before but afaik it has better performance, better compilation and computation time, lesser memory usage. They come from the same language family: ML
burakyCoding
F# has one disadvantage for CLI tools: size of the compiled project.
I developed a CLI app as an internal tool in my company. It basically fetches some data from an API, then creates some sql insert scripts as "*.sql" files. Whole codebase is ~370 LoC, i only used FSharp.Data and FSharp.Json packages. I compiled(publish) the project with 'PublishTrimmed' option but the output was still 35mb.
I also used 'SelfContained' option but i expect a CLI tool to be independent and 35mb is still much IMO.
I can hear both, even when i switch in the middle like "brain needle" or "green storm". Wow. Brain is an interesting topic.