<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www.atalasoft.com/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Rick Minerich's Development Wonderland : WebSharper, fsharp, SEO, FsLex, HuwmanCode</title><link>http://www.atalasoft.com/cs/blogs/rickm/archive/tags/WebSharper/fsharp/SEO/FsLex/HuwmanCode/default.aspx</link><description>Tags: WebSharper, fsharp, SEO, FsLex, HuwmanCode</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>F# Discoveries This Week 06/25/2010</title><link>http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx</link><pubDate>Fri, 25 Jun 2010 14:40:51 GMT</pubDate><guid isPermaLink="false">647108ca-f046-4d8d-9feb-a7fbd2049b37:20848</guid><dc:creator>RickM</dc:creator><slash:comments>1</slash:comments><comments>http://www.atalasoft.com/cs/blogs/rickm/comments/20848.aspx</comments><wfw:commentRss>http://www.atalasoft.com/cs/blogs/rickm/commentrss.aspx?PostID=20848</wfw:commentRss><wfw:comment>http://www.atalasoft.com/cs/blogs/rickm/rsscomments.aspx?PostID=20848</wfw:comment><description>&lt;p&gt;As always, a huge number of software releases and high quality articles this week.&amp;#160; My favorite thing about the F# community is that someone is always writing about something that tickles my brain.&amp;#160; While right out of a computer science textbook, I enjoyed Erik Schulz’s sorting animations quite a lot.&amp;#160; His animations are excellent.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h1 align="center"&gt;News&lt;/h1&gt;  &lt;h3&gt;&lt;a href="http://lorgonblog.spaces.live.com/Blog/cns!701679AD17B6D310!2120.entry"&gt;VS2010 Pro Power Tools Released&lt;/a&gt; (fixes scrolling reference dialog)&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;A set of extensions to Visual Studio Professional (and above) which improves developer productivity.&amp;#160; Includes a &lt;/em&gt;&lt;em&gt;New ‘Add Reference’ dialog: Pops up fast and is more pleasant (less frustrating) to use.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://huwmancode.codeplex.com/"&gt;HuwmanCode 0.1 Released – Simplified Windows Services in F#&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;HuwmanCode is a collection of libraries intended to enhance the base class libraries for developers writing F#. Using HuwmanCode you can write a Windows Service in F# entirely.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://fsprojectextender.codeplex.com/"&gt;F# Project Extender 0.9.3 Released&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;Installing F# Project Extender provides tools to better organize files in F# projects by allowing project subdirectories and separating file management in Solution Explorer from controlling compilation order.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://vcc.codeplex.com/"&gt;VCC 2.1.30625 Released (Written in F#)&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;VCC is a mechanical verifier for concurrent C programs. VCC takes a C program, annotated with function specifications, data invariants, loop invariants, and ghost code, and tries to prove these annotations correct. If it succeeds, VCC promises that your program actually meets its specifications.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://github.com/sandersn/fing"&gt;Fing 0.1 Released&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;Fing is F# API Search. It's inspired by Hoogle, although it is not a port.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h1 align="center"&gt;Audio/Video&lt;/h1&gt;  &lt;h3&gt;&lt;a href="http://skillsmatter.com/podcast/open-source-dot-net/tomas-petricek-reactive-programming-in-fsharp"&gt;Tomas Petricek at the London F# User Group – Reactive Programming in F#&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;During this talk, Tomas will cover two techniques. We'll start by looking at F# events and declarative approach for specifying event processing. Next, we'll look at embedding F# event handling into asynchronous workflows and programming using &amp;quot;state machines&amp;quot;. We'll also briefly mention how this relates to more general functional programming &amp;quot;design patterns&amp;quot;.&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&amp;#160;&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;&lt;a href="http://www.fsug.org/OtherEvents/TechEdOnline/tabid/69/Default.aspx"&gt;A Listing of F# TechEd Talks, at the New England F# User Group&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;A complete listing of all TechEd talks pertaining to F#.&amp;#160; Thanks Talbott!&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h1 align="center"&gt;Articles&lt;/h1&gt;  &lt;h3&gt;&lt;a href="http://programmingzen.com/2010/06/23/how-microsoft-is-changing-the-programming-world/"&gt;Antonio Cangiano’s How Microsoft is changing the programming world.&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;The end result of Microsoft’s new approach is that now Joes everywhere are getting exposed to functional programming (masses of people who would otherwise be virtually shielded from the rest of the programming world).&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://gradbot.blogspot.com/2010/06/cartesian-tree-sort.html"&gt;Erik Schulz’s Cartesian Tree Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/06/insertion-sort.html"&gt;Insertion Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/06/priority-queue-heap-sort.html"&gt;Priority Queue &amp;amp; Heap Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/06/heap-sort.html"&gt;Heap Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/06/selection-sort.html"&gt;Selection Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/06/quick-sort.html"&gt;Quick Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/06/gnome-sort.html"&gt;Gnome Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/06/comb-sort.html"&gt;Comb Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/06/odd-even-sort.html"&gt;Odd-even Sort&lt;/a&gt;, &lt;a href="http://gradbot.blogspot.com/2010/05/cocktail-sort.html"&gt;Cocktail Sort&lt;/a&gt;, and &lt;a href="http://gradbot.blogspot.com/2010/05/bubble-sort.html"&gt;Bubble Sort&lt;/a&gt;.&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;Inspired be Wikipedia's algorithm pages I decided to recreate their animations using JavaSrcipt and HTML5 canvas elements. IE 8 does not support canvas however new versions of all other modern browsers do. Mozilla Firefox, Google Chrome, Safari, and Opera.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://laurent.le-brun.eu/site/index.php/2010/06/23/57-fsharp-opengl-a-cross-platform-sample"&gt;Laurent Le Brun’s F# + OpenGL: a cross-platform sample&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;The nice thing is that the application was cross-platform. I tried it on Windows, Linux and Mac, it worked everywhere, without changing a single line. It seems like F# is ready to make great cross-platform 3D applications!&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://bloggemdano.blogspot.com/2010/06/f-wpf-mvvm-project-template.html"&gt;Daniel Mohl’s An F# WPF MVVM Project Template&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;I've been planning for a while to create an F# WPF MVVM Template to add to the other templates that have been announced on this blog.&amp;#160; A resent post by Mark Pearl provided a great simple example which helped kick me into gear and bring this plan to fruition.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://blogs.msdn.com/b/jomo_fisher/archive/2010/06/15/use-fslex-and-fsyacc-to-make-a-parser-in-f.aspx"&gt;Jomo Fisher’s Use FsLex and FsYacc to make a parser in F#&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;The starter project implements a simple calculator language that you can grow into a more sophisticated Domain Specific Language or text processing application.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://lepensemoi.free.fr/index.php/2010/06/15/seo-helpers-in-f"&gt;Julien Ortin’s SEO helpers in F#&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;In this post, we describe how to implement functions that help fetch information that can be used to study how well (or bad) the keywords are used on a given website in comparison with other (successful) competitors.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://techneilogy.blogspot.com/2010/06/flip-operator-for-f.html"&gt;Neil Carrier’s Flip Operator for F#&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;I ask again: is there a good native way to do this in F#? If not, it might well worth standardizing this. (And potentially other FORTH-like operators like “over” and “rot,” perhaps with an extensible syntax.)&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://www.intellifactory.com/blogs/joel.bjornson/2010/6/18/Fun-with-dependent-formlets.article"&gt;Joel Björnson’s Fun with dependent formlets&lt;/a&gt; (in WebSharper)&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;To give some hints of what you can do with the WebSharper formlet library, the objective of the following exercise is to create a simple spread-sheet like widget based on formlets. &lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://www.intellifactory.com/blogs/joel.bjornson/2010/6/17/More-of-Ext-JS-and-WebSharper.article"&gt;Joel Björnson’s More of Ext JS and WebSharper&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;In general, seamlessly being able to create data abstractions and transfer data back and forth between the server and client is a very strong incentive for using the WebSharper extension.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://www.intellifactory.com/blogs/joel.bjornson/2010/6/17/Reactive-programming-with-WebSharper.article"&gt;Joel Björnson’s Reactive programming with WebSharper&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;In following post I'd like to highlight F# (and WebSharper) support for asynchronous and reactive programming.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://geekswithblogs.net/MarkPearl/archive/2010/06/23/f-seq.unfold.aspx"&gt;Mark Pearl’s F# Seq.Unfold&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;The more I play the more I am really loving F# and how succinct the language is.&amp;#160; Today I thought I would put up a brief post on the Seq.unfold function.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://blog.codingadventure.com/2010/06/21/testing-f/"&gt;Daniel Merino’s Testing F#&lt;/a&gt; (with Traveling Salesmen)&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;The next example is a little snippet that returns a dictionary distances between cities for a small distributed traveling salesman problem I did last year to test F# on a software engineering class.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://richardminerich.com/2010/06/love-the-lambda/"&gt;Richard Minerich’s Love the Lambda&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;So the idea for Love the Lambda was born:&amp;#160; I would demonstrate both the usefulness and sheer novelty of first class functions and do so simultaneously in C# and F#.&amp;#160; More than that, I would use the opportunity as a kind of F# omnibus.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://www.petehunt.net/blog/?p=15"&gt;Pete Hunt’s F# rocks (so far)&lt;/a&gt;&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;I have to say, I really like F# so far. For those of you not in the know, F# is Microsoft’s new first-class language that has been in development since 2002 but debuted in Visual Studio 2010. It is basically a dialect of O’Caml that runs on .NET and has full Visual Studio support.&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;a href = "mailto:?body=Thought you might like this: http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx&amp;amp;;subject=F%23+Discoveries+This+Week+06%2f25%2f2010" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx&amp;amp;;title=F%23+Discoveries+This+Week+06%2f25%2f2010" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx&amp;amp;title=F%23+Discoveries+This+Week+06%2f25%2f2010" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx&amp;amp;;title=F%23+Discoveries+This+Week+06%2f25%2f2010" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;;mkt=en-us&amp;amp;;url=http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx&amp;amp;;title=F%23+Discoveries+This+Week+06%2f25%2f2010&amp;amp;;top=1" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2010/06/25/f-discoveries-this-week-06-25-2010.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://www.atalasoft.com/cs/aggbug.aspx?PostID=20848" width="1" height="1"&gt;</description><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/F_2300_/default.aspx">F#</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/fsharp/default.aspx">fsharp</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/roundup/default.aspx">roundup</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/WebSharper/default.aspx">WebSharper</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/Fing/default.aspx">Fing</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/FsYacc/default.aspx">FsYacc</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/F_2300_+Project+Extender/default.aspx">F# Project Extender</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/VC2010+Pro+Power+Tools/default.aspx">VC2010 Pro Power Tools</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/Sorting/default.aspx">Sorting</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/OpenGL/default.aspx">OpenGL</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/Reactive+Programming/default.aspx">Reactive Programming</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/SEO/default.aspx">SEO</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/Parsers/default.aspx">Parsers</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/FsLex/default.aspx">FsLex</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/VCC/default.aspx">VCC</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/HuwmanCode/default.aspx">HuwmanCode</category></item></channel></rss>