Startup IntelliFactory Rolls Out WebSharper Platform

Microsoft’s Tech Days Paris began this week, and programming languages and web apps are major themes. During a demo talk at the show, Don Syme, principal researcher at Microsoft Research, Cambridge, will focus on F# (a Microsoft-developed language), Robert Pickering will talk about quotations, and Adam Granicz, founder of the IntelliFactory, will discuss WebSharper, a framework that allows you to write web applications with no JavaScript, no HTML, etc. It’s all functional programming.

WebSharper is fully supported in the .NET Framework and Visual Studio 2010, which allows developers to leverage the entire .NET Framework and additional F# core libraries. So, what exactly is F#? Wikipedia (http://en.wikipedia.org/wiki/F_Sharp_(programming_language)) defines it like so: “F# (pronounced F Sharp) is a multi-paradigm programming language, targeting the .NET Framework, that encompasses functional programming as well as imperative object-oriented programming disciplines. It is a variant of ML and is largely compatible with the OCaml implementation.” As a developer, learning how F# and WebSharper work could put you on the bleeding edge of next generation web site development.

The WebSharper product provides a means for developers to expand into rapid web development with F#. WebSharper web applications are dramatically shorter and are considered type-safe. Plus, a plethora of extensions are available to enable third-party JS frameworks and libraries directly with F#. It all fits seamlessly together. Writing in type-safe F# allows you to write a fraction of the code you would normally write in JavaScript, which is known as an untyped language.

This doesn’t mean that you can’t, or shouldn’t, use JS technologies. In fact, F# provides bindings to JS, so you can do jQuery, Flapjax, Qooxdoo or even YUI controls.

IntelliFactory, a startup based out of Hungary now expanding to London, Paris, and California, plans to release WebSharper in February. WebSharper applications are built from pagelets written in F# that correspond to client-side functionality, and are automatically converted into optimized JavaScript. Client-side execution alleviates unnecessary work from the web servers.

This is a stark contrast from traditional web applications that are inherently server-based, which requires the server to perform and render most of the interaction on the pages. This client-side approach speeds the delivery of a web page, which allows for more complex functionality without the risk of a slow-loading page.

Addressing Weaknesses

Developers can easily take existing ASP.NET applications and enhance them with WebSharper-based functionality. This new web developer tool addresses many of the weaknesses of ASP.NET. This includes using strings for IDs and method names to connect markup with code behind untyped form values, overly complex form construction, etc., and provides type-safe and robust alternatives such as formlets or flowlets.

When writing JavaScript code, it is easy for developers to create errors and it can take a long time to complete a project due to JS being an untyped language. In addition, there is little IDE support and many bugs only surface at runtime. WebSharper eases the development of complex UI interactions, form validation, and other typical client chores that prove daunting tasks with pure JavaScript. Due to its difficult nature, a proliferation of various JavaScript layers or packages exist to ease the burden, but they still require developers to code in JavaScript.

WebSharper uses the F# core libraries (i.e., the Seq module for filtering out certain values from a lazy sequence), and various .NET core libraries (i.e., for working with regular expressions or math functions) without any concern for how these map to JavaScript. The platform takes care of the mapping through its advanced proxy mechanism. This is also extensible, so developers provide their own mappings to JavaScript for whatever .NET type and its members.

The first version of WebSharper comes with extensions for formlet support to Yahoo UI, and Google Maps and Visualization. Further extensions to Qooxdoo, JQuery UI, surveys, and many more are planned to roll out in the near future.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

The Latest

homes in the real estate industry

Exploring the Latest Tech Trends Impacting the Real Estate Industry

The real estate industry is changing thanks to the newest technological advancements. These new developments — from blockchain and AI to virtual reality and 3D printing — are poised to change how we buy and sell homes. Real estate brokers, buyers, sellers, wholesale real estate professionals, fix and flippers, and beyond may

man on floor with data

DevX Quick Guide to Data Ingestion

One of the biggest trends of the 21st century is the massive surge in internet usage. With major innovations such as smart technology, social media, and online shopping sites, the internet has become an essential part of everyday life for a large portion of the population. Due to this internet

payment via phone

7 Ways Technology Has Changed Traditional Payments

In today’s digital world, technology has changed how we make payments. From contactless cards to mobile wallets, it’s now easier to pay for goods and services without carrying cash or using a checkbook. This article will look at seven of the most significant ways technology has transformed traditional payment methods.