<?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 : math, algorithms, Revit</title><link>http://www.atalasoft.com/cs/blogs/rickm/archive/tags/math/algorithms/Revit/default.aspx</link><description>Tags: math, algorithms, Revit</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Discoveries This Week 02/06/2009</title><link>http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx</link><pubDate>Fri, 06 Feb 2009 16:24:00 GMT</pubDate><guid isPermaLink="false">647108ca-f046-4d8d-9feb-a7fbd2049b37:17428</guid><dc:creator>RickM</dc:creator><slash:comments>1</slash:comments><comments>http://www.atalasoft.com/cs/blogs/rickm/comments/17428.aspx</comments><wfw:commentRss>http://www.atalasoft.com/cs/blogs/rickm/commentrss.aspx?PostID=17428</wfw:commentRss><wfw:comment>http://www.atalasoft.com/cs/blogs/rickm/rsscomments.aspx?PostID=17428</wfw:comment><description>&lt;p&gt;Some interesting gems this week.&amp;nbsp; Revit, Closures and MathTools won the day.&amp;nbsp; However, I do hope you'll take a look at the IL post as well. &lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;h3&gt;Blog – &lt;a href="http://thebuildingcoder.typepad.com/blog/2009/01/use-f-directly-in-revit.html"&gt;Jeremy Tammik’s Use F# Directly in Revit&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;In Jeremy’s post he discusses what is initially necessary to get F# and Revit working together.&amp;nbsp; He also provides a sample of a Revit addin written in F#.&amp;nbsp; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://usa.autodesk.com/adsk/servlet/index?siteID=123112&amp;amp;id=8479974"&gt;Revit&lt;/a&gt; is Autodesk’s architecture and design studio.&amp;nbsp; It allows physical engineers to coordinate and play with, design and visualize data while integrating directly with AutoCad.&amp;nbsp; It also provides &lt;a href="http://usa.autodesk.com/adsk/servlet/index?siteID=123112&amp;amp;id=2484975"&gt;a .NET 2.0 API&lt;/a&gt;.&amp;nbsp; Given F#’s support for units as well as it’s concise and mathy style, it makes sense that it would be an ideal language for engineers.&lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;h3&gt;Site - &lt;a href="http://en.wikibooks.org/wiki/F_Sharp_Programming"&gt;WikiBooks FSharp Programming&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;Before I stumbled upon this site, I had never head of of WikiBooks.&amp;nbsp; That’s why I was incredibly surprised to find that it has the best online general F# reference around.&amp;nbsp; It has extensive sections on functional, immutable and imperative programming with rich examples and references to the math behind the ideas presented.&amp;nbsp; It’s a great site to have at hand for both those learning about the language and those experienced but still needing to occasionally look something small up.&lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;h3&gt;StackOverflow -&amp;nbsp; &lt;a href="http://stackoverflow.com/questions/12924/f-closure"&gt;A practical example of a closure in F#&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;Learning how to program functionally is much more than just learning some&amp;nbsp; new ideas and a new syntax.&amp;nbsp; It comes along with a ton of new jargon, some of which can be quite foreign sounding.&amp;nbsp; I find that it often turns out that the jargon actually represents a very simple idea and that becomes immediately obvious when discussed with a simple example. &lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;h3&gt;Software – &lt;a href="http://www.codeplex.com/fsmathtools"&gt;FSharp.MathTools&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;As you might have suspected by its name, MathTools is an extensive set of mathematics libraries for F#.&amp;nbsp; It provides, among other things, statistical functions, fast fourier transforms, optimization algorithms, &lt;a href="http://www.mathworks.com/"&gt;Matlab&lt;/a&gt; compatibility and extended mathematical notation.&amp;nbsp; With a little development this combined with &lt;a href="http://www.codeplex.com/vslab"&gt;VSLab&lt;/a&gt; could provide a viable alternative to tools like Matlab while still allowing for collaboration with colleagues.&lt;/p&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;h3&gt;Article – &lt;a href="http://www.codeproject.com/KB/msil/ilassembly.aspx"&gt;Introduction to IL Assembly Language&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;It’s the responsibility of any serious programmer to know how how his or her tools work all the way down the chain.&amp;nbsp; In this relatively short article (given the topic) everything you would need to write a .NET compiler is distilled.&amp;nbsp; It’s the best reference of it’s kind I’ve seen. &lt;/p&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/2009/02/06/discoveries-this-week-02-06-2009.aspx&amp;amp;;subject=Discoveries+This+Week+02%2f06%2f2009" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx&amp;amp;;title=Discoveries+This+Week+02%2f06%2f2009" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx&amp;amp;;phase=2" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx&amp;amp;title=Discoveries+This+Week+02%2f06%2f2009" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx&amp;amp;;title=Discoveries+This+Week+02%2f06%2f2009" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.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/2009/02/06/discoveries-this-week-02-06-2009.aspx&amp;amp;;title=Discoveries+This+Week+02%2f06%2f2009&amp;amp;;top=1" target="_blank" title = "Post http://www.atalasoft.com/cs/blogs/rickm/archive/2009/02/06/discoveries-this-week-02-06-2009.aspx"&gt;live it!&lt;/a&gt;&lt;/div&gt;&lt;img src="http://www.atalasoft.com/cs/aggbug.aspx?PostID=17428" 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/functional/default.aspx">functional</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/IL/default.aspx">IL</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/optimization/default.aspx">optimization</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/.NET/default.aspx">.NET</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/VSLab/default.aspx">VSLab</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/algorithms/default.aspx">algorithms</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/AutoCad/default.aspx">AutoCad</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/jargon/default.aspx">jargon</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/Revit/default.aspx">Revit</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/closure/default.aspx">closure</category><category domain="http://www.atalasoft.com/cs/blogs/rickm/archive/tags/math/default.aspx">math</category></item></channel></rss>