3 ms·
F# Web Services on any platform in and out of a web server
- cdl 14y agoBecause WCF is an "anti-pattern promoting, over architected abstraction"
- hizanberg 14y agoI don't use F# but ServiceStack has been a breath of fresh air for us - much easier to get going and more productive than WebApi. Only Found it when reading that StackOverflow uses it: http://blog.stackoverflow.com/2012/02/stack-exchange-open-source-projects http://blog.stackoverflow.com/2012/02/stack-exchange-open-so...
- mythz 14y agoCool! (Core member of ServiceStack here :) For those interested I used F# on OSX/Mono for this post. Since F# is quite terse, I prefer to use a POTE (Plain Old Text Editor) to develop with it on OSX. You can configure Sublime Text to work with F# with these instructions (inc REPL in comments): http://onorioc.wordpress.com/2012/01/26/configuring-sublime-text-2-to-work-with-fsharp/ http://onorioc.wordpress.com/2012/01/26/configuring-sublime-... ServiceStack runs on .NET and Mono, even our http://www.servicestack.net http://www.servicestack.net website (inc. all live demos) have always run on Linux/Nginx + Mono/FastCGI for years. We've got a wiki page on how you can run a self-hosted ServiceStack as a Linux daemon here: https://github.com/ServiceStack/ServiceStack/wiki/Run-ServiceStack-as-a-daemon-on-Linux https://github.com/ServiceStack/ServiceStack/wiki/Run-Servic.... Also includes instructions on how to configure and run it behind a Apache + Nginx reverse proxy. You can also run ServiceStack inside an ASP.NET host which you can host in Apache (with mod_proxy) or in Nginx (with Mono/FastCGI) - some configuration on both of these configurations is here: https://groups.google.com/forum/#!msg/servicestack/04GQLsQ6YB4/M4CiESpYJI4J https://groups.google.com/forum/#!msg/servicestack/04GQLsQ6Y... If it helps here are the Nginx Mono/FastCgi server conf files for servicestack.net: https://groups.google.com/forum/#!msg/servicestack/kzfS88RldIU/Hz7asC4nA78J https://groups.google.com/forum/#!msg/servicestack/kzfS88Rld...
- jackfoxy 14y ago> Since F# is quite terse, I prefer to use a POTE (Plain Old Text Editor) to develop with it on OSX. I bow in your general direction. F# is terse, but most mortals rely on goodies like intellisense and red-squigglies in some IDE. Getting over the hump of writing non-trivial F# that builds correctly is, well, non-trivial.
- mythz 14y agoI think developing in F# is actually quite a different development experience to C# that lends itself better to be able to develop in a text editor with. Whilst developing in F# I'm mostly using the F# interpreter (fsi) to test and run snippets of code, once I'm happy with the code, I then just paste it into the main code-base. I've got some good links to help you get started with F# in the "Getting Started with F#" section, at the end of this earlier blog post: http://www.servicestack.net/mythz_blog/?p=765 http://www.servicestack.net/mythz_blog/?p=765
- jackfoxy 14y agoI never got in the habit of using FSI much, mainly because of the lack of intellisense I think. I should get back in the habit of having an FSI window open.
- skrebbel 14y agoI've been wondering, is there any firm or organisation backing ServiceStack? I guess that, maybe more than other ecosystems, many .NET developers are slightly afraid to heavily depend on something of which the future is uncertain (in a way, we're spoiled by MS's big spendings on all kinds of fancy tools). I recognise that in a way, this situation hurts the ecosystem, because people are afraid of using non-MS-tech, which limits commitment to decent open-source projects. Nevertheless, I have to admit sharing the same worries. Should I worry about that wrt ServiceStack?
- mythz 14y agoServiceStack is used to handle all of StackOverflow Careers 2.0 BackOffice Web + MQ services, making use of all its components e.g: Redis Client, OrmLite, ServiceStack's JSON, etc). I've personally led dev teams that have put ServiceStack in production enhancing existing internal CRM / SharePoint systems (where WCF wasn't able to run) for Man Investments and EON. I personally know many other IT consultants (professionally) that continue to deploy instances of it for their clients. We've collected a number of testimonials that we'll publish after we re-design our website. There have been over 100,000 total downloads in this past year alone, and I've had a number of chance run-ins with dev teams using it (even in my home town!), which I write a bit about it here: http://www.servicestack.net/100k-downloads/#feedback http://www.servicestack.net/100k-downloads/#feedback The above page also provides links where you can see the feedback we've received on Twitter and in the mailing list. ServiceStack was created 4 years ago as an OSS-run project, to use as an alternative to WCF - and we've been using ever since for all web service development. It's currently led by the core team who have received contributions from over 90 external contributors and is in the top 10 most popular OSS .NET projects on GitHub: https://github.com/languages/C%23/most_watched https://github.com/languages/C%23/most_watched Later this year we plan to offer a 'Long Term Supported' release that we'll provide commercial support options on.
- waf 14y agoThis article is kind of old (September 2011), and I notice that the last stable release of F# was April 12, 2010. Is F# still a maintained project at Microsoft, or are people moving to something else? I know a lot of the more functional JVM languages (clojure, scala) also run on the .NET CLR.
- cdl 14y agoCheck out What's New for Visual F# in Visual Studio 2012 http://msdn.microsoft.com/en-us/library/hh370982.aspx http://msdn.microsoft.com/en-us/library/hh370982.aspx New features include: Type Providers - OData (Open Data) Services - Database Connections such as SQL - Database Schema - Data specified by the Entity Data Model format - Web services in the WSDL format. Query Expressions Auto-implemented properties Parameter Help Enhanced IntelliSense Create applications that run against the following versions of the .NET Framework: 2.0, 3.0, 3.5, 4, and 4.5