tag:blogger.com,1999:blog-7506593179569894775.post9114932582834947880..comments2023-06-19T08:53:41.980-04:00Comments on Languages and Logic: Natural language processing in F# and ScalaSami Badawihttp://www.blogger.com/profile/12508131380437723177noreply@blogger.comBlogger11125tag:blogger.com,1999:blog-7506593179569894775.post-55482027017448711682011-11-12T01:15:59.273-05:002011-11-12T01:15:59.273-05:00This comment has been removed by the author.David Beardsleyhttps://www.blogger.com/profile/16930834333119863674noreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-85789046292788062332011-11-07T14:28:49.231-05:002011-11-07T14:28:49.231-05:00Hi Sami
Good post. You have mentiotned Azure for ...Hi Sami<br /><br />Good post. You have mentiotned Azure for F# and Hadoop (via EC2 or one's own cloud) for Scala. Well google's colud of GAE also is on the Scala side. For the web libraries, there is lift web frame work for Scala. Here is Scala lift frame work on Google App Engine. http://lift-example.appspot.com/Win Myo Htethttps://www.blogger.com/profile/12932751895421525726noreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-84929457615375454852011-07-16T16:39:25.137-04:002011-07-16T16:39:25.137-04:00Hi Det,
You are making a lot of good detailed poi...Hi Det,<br /><br />You are making a lot of good detailed points; and I agree with what you say. I had to keep the blog post short and readable. My focus was the great progress of FP seen from an NLP viewpoint.<br /><br />Yes functional programming should work fine for Web applications. I worked with ASP.NET using Visual Studio 2008 and it is a tremendous amount of work Microsoft has put into making this easy to use. So my statement was more about the web tools than the merit of FP. I have not tried any of the Scala web libraries, so maybe they have caught up with ASP.NET on Visual Studio.Sami Badawihttps://www.blogger.com/profile/12508131380437723177noreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-28190713326271317822011-07-16T11:38:02.760-04:002011-07-16T11:38:02.760-04:00Hi Sami,
you wrote that in 2006 Scala had no REPL,...Hi Sami,<br />you wrote that in 2006 Scala had no REPL, but do not mention that there currently exist a very useful REPL.<br /><br />Then, comparing Scala and F# you attest F# "fantastic concurrency" .<br />I don't know F#, so I've no idea where F# is better than Scala's actor approach.<br />But you definitely should put it into account for Scala when comparing that with Java.<br /><br />Then Scala's alleged "complexity" is widely discussed. Throwing that in without any further comment doesn't help that discussion, because OTOH you attest Scala being "More orthogonal, reusing the same constructs", which in some perspective <i>reduces</i> complexity e.g. compared with Java.<br /><br />In the end, what I did not understand is: "For GUI and web programming the object oriented languages still rules."<br /><br />For GUI I am with you. For Web I do not see the point, as there are currently so much approaches to functional web services: First of all Node.js, v8cgi and Rhino-for-webapps (all Javascript), then regarding Scala the Unfiltered library or the http package in Scalaz, to just mention a few.<br />As web is always semantically response = webservice(request), and as webservices live from parallelism and other things where FP is strong (e.g. map/reduce algorithms), I can't see where OO shines in this area.<br /><br />KR<br />DetAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-76452223150475388722011-07-12T20:44:47.125-04:002011-07-12T20:44:47.125-04:00Hi Danno,
I would normally write the GUI in C# an...Hi Danno,<br /><br />I would normally write the GUI in C# and the logic in F#, but for my first F# program I wanted to write the whole thing in F#.Sami Badawihttps://www.blogger.com/profile/12508131380437723177noreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-52937299643549442062011-07-12T13:40:26.019-04:002011-07-12T13:40:26.019-04:00What about writing your UI in C# and doing work pa...What about writing your UI in C# and doing work part in F#? This could be easily done by creating class libraries for the different parts. One of the big advantages of the .NET platform is being able to match the language to the functionality desired.Dannohttps://www.blogger.com/profile/13243445994675575647noreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-12601169977888133162011-07-12T12:52:44.747-04:002011-07-12T12:52:44.747-04:00@Sami - I think that Alex is talking about using t...@Sami - I think that Alex is talking about using the free Visual Studio Shell and not trying to shoe-horn F# into SharpDevelop.<br /><br />http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=115<br /><br />There is also an F# plug-in for MonoDevelop if you find yourself developing on Linux or Mac and want to use F#:<br /><br />http://functional-variations.net/monodevelop/<br /><br />Thanks for the article. This is a really great and informative comparison.<br /><br />I should also point out that IKVM.NET makes it really easy to use Java libraries in your .NET projects. I have used big Java libraries a few times and been really happy with how well they integrate into my .NET apps. So, you could still use F# if you wanted without having to give up the Java libraries.<br /><br />One of the reasons that I prefer the CLR is that I find it gives me access to all the great .NET libraries plus all the great Java ones. For example, I wrote a reporting module for a website a couple of years ago that use the HTML Agility Pack (a great .NET HTML parser) and Flying Saucer (a fantastic Java based CSS parser/renderer) to create on the fly PDF reports from dynamically generated HTML pages CSS templates. I even deployed the whole thing on Linux/Apache using Mono. It worked really well.<br /><br />I am obviously more of a .NET guy but I have been thinking for a while that Scala would eventually win me over to the JVM.<br /><br />F# scared me away at first but lately I have been liking it more and more. So maybe the CLR has me for a while longer.<br /><br />Clojure really interests me as well but I never seem to get around to it. The JVM is obviously it's primary home but the CLR version looks quite good (unlike the CLR version of Scala).Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-75900721402049895292011-07-12T10:28:04.684-04:002011-07-12T10:28:04.684-04:00Hi Alex Peake,
I did get the F# interactive shell...Hi Alex Peake,<br /><br />I did get the F# interactive shell running from within SharpDevelop 4.1, but I do not get the code completion to work. Could you?Sami Badawihttps://www.blogger.com/profile/12508131380437723177noreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-74592175061982267332011-07-12T10:14:24.001-04:002011-07-12T10:14:24.001-04:00You do not need to pay for the Visual Studio IDE f...You do not need to pay for the Visual Studio IDE for F#. Just download the free Shell and install F#.<br /><br />http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=115Alex Peakehttps://www.blogger.com/profile/17955248236939699939noreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-89975884601724055342011-07-12T10:04:23.030-04:002011-07-12T10:04:23.030-04:00Nemerle is better than all. It is the only one whi...Nemerle is better than all. It is the only one which has metaprogramming capabilitiesOnur Gümüşhttps://www.blogger.com/profile/07923423373852682999noreply@blogger.comtag:blogger.com,1999:blog-7506593179569894775.post-9030217074969839572011-07-12T09:58:45.842-04:002011-07-12T09:58:45.842-04:00This comment has been removed by the author.Karim Ahmedhttps://www.blogger.com/profile/15607260786211222497noreply@blogger.com