F# programming language

J

Jon Harrop

Microsoft Research are developing a functional programming language called
F# for .NET and I've been playing with it recently. I've uploaded some
demos here:

http://www.ffconsultancy.com/dotnet/fsharp/

I'm keen to see what Windows developers think of this language as we're
considering using it to develop commercial applications on the Windows
platform.
 
C

Christopher Ireland

Jon Harrop said:
Microsoft Research are developing a functional programming language called
F# for .NET and I've been playing with it recently. I've uploaded some
demos here:

http://www.ffconsultancy.com/dotnet/fsharp/

I'm keen to see what Windows developers think of this language as we're
considering using it to develop commercial applications on the Windows
platform.

F# does seem to fit in better with XAML, conceptually speaking.

Nice examples, although raytracer.fs does not compile under FSharp-1.1.12.5.

Cheers!

Chris.
 
J

Jon Harrop

Christopher said:
F# does seem to fit in better with XAML, conceptually speaking.

What is XAML good for? I've seen the demo where they say "you don't have to
write code", then they write a load of code in XML and get a window filled
with RSS feed. Does anyone have any better demos of this technology?

I'm a scientist by trade and know virtually nothing about "web programming"
but I'm very interested in learning about it.
Nice examples, although raytracer.fs does not compile under
FSharp-1.1.12.5.

Yeah, I'm on a prerelease 1.1.13.2 which should become publically available
this week. It adds some cool features like comprehensions for lists, arrays
and IEnumerables.
 
C

Christopher Ireland

Jon Harrop said:
What is XAML good for? I've seen the demo where they say "you don't have
to
write code", then they write a load of code in XML and get a window filled
with RSS feed. Does anyone have any better demos of this technology?

I'm a scientist by trade and know virtually nothing about "web
programming"
but I'm very interested in learning about it.

I don't think it's just about "web programming". Have a look at this
article:
http://www.informit.com/discussion/index.asp?postid=3ba7dd28-5c97-416b-8179-11fef74b617e&rl=1

I get the impression that is to be used XAML as a functional/declarative
language to enable XML-based documents to become self-describing
applications.
Yeah, I'm on a prerelease 1.1.13.2 which should become publically
available
this week. It adds some cool features like comprehensions for lists,
arrays
and IEnumerables.

Nice one!

Cheers!

Chris.
 
L

Laurent Bugnion

Hi,

Christopher said:
I don't think it's just about "web programming". Have a look at this
article:
http://www.informit.com/discussion/index.asp?postid=3ba7dd28-5c97-416b-8179-11fef74b617e&rl=1

I see XAML as a way to encourage graphics designers and software
developer to work more closely together. Pretty much everything you can
do in XAML, you can also do it in C#. However, people who never
programmed will definitely feel intimidated by the C# environment. XAML
will help, because it can easily be generated by Graphics Design
application (like Expression or Zam 3D), can then easily be modified by
a Graphics Designer (for example, animations, etc...), and then passed
to the software developer for code integration (for example DB
connectivity, web services integration, etc...).

And you're absolutely right, XAML is not thought just for web
programming. In fact, AFAIK, Microsoft sees it more as a replacement for
WinForms than for ASP.NET.

HTH,
Laurent
 
C

clintonG

All this confusion? Its really very simple -- conceptually -- and in fact
simplification of the sublime complexity of logic is the objective. The goal
is to allow line of business analysts who understand the business
initimately to become proficient as application developers. That's all there
is to it for the time being.

This is being accomplished by developing declarative languages that can be
manually edited after or during the use of a push button monkey code
generator. Those who want to know what will come of this trend can (and
probably should) read Isaac Asimov's "Foundation Trilogy" which is the name
his writings were referred to the first couple of times I read these works
in the early 1960s.

<%= Clinton Gallagher
NET csgallagher AT metromilwaukee.com
URL http://clintongallagher.metromilwaukee.com/
MAP http://wikimapia.org/#y=43038073&x=-88043838&z=17&l=0&m=h

[1] http://en.wikipedia.org/wiki/The_Foundation_Series
 
L

Lucian Wischik

Jon Harrop said:
I'm keen to see what Windows developers think of this language as we're
considering using it to develop commercial applications on the Windows
platform.

I wrote a recent project in F#: 6,000 lines of code.
But the users required a C# version so I had to rewrite: 30,000 lines
of code to do exactly the same thing.
 
J

James Crosswell

Lucian said:
I wrote a recent project in F#: 6,000 lines of code.
But the users required a C# version so I had to rewrite: 30,000 lines
of code to do exactly the same thing.

Wow! I guess it's a program that lent itself to a functional solution
quite nicely. Why would your users care what language it was written in?

Best Regards,

James Crosswell
Microforge.net LLC
http://www.microforge.net
 
J

James Crosswell

Laurent said:
And you're absolutely right, XAML is not thought just for web
programming. In fact, AFAIK, Microsoft sees it more as a replacement for
WinForms than for ASP.NET.

Indeed, one of the main benefits of XAML is that it separates the code
from the interface (so the coders can work on logic while designers work
on interfaces)... Such separation has existing for web based apps, in
one form or another, for years - so the biggest benefits of XAML are
probably for Windows apps.

Best Regards,

James Crosswell
Microforge.net LLC
http://www.microforge.net
 
J

Jon Harrop

James said:
Indeed, one of the main benefits of XAML is that it separates the code
from the interface (so the coders can work on logic while designers work
on interfaces)... Such separation has existing for web based apps, in
one form or another, for years - so the biggest benefits of XAML are
probably for Windows apps.

I'm no expert on this stuff but, from my point of view, if you're trying to
create a technology that makes GUI design easy enough for non-coders then
you need a GUI, not another ASCII language. That's why I don't understand
what hole XAML is supposed to fill.

For one thing, it seems to be a bad programming language (from a language
design point of view), e.g. insufficient static checking. Even in the
14-line demo the author makes a mistake and can't see what is wrong.
Contrast that with Intellisense in a variety of languages...

I've just found another XAML demo here:

http://channel9.msdn.com/showpost.aspx?postid=116327

so I'll watch that and see what they're up to.
 
J

James Crosswell

Jon said:
I'm no expert on this stuff but, from my point of view, if you're trying to
create a technology that makes GUI design easy enough for non-coders then
you need a GUI, not another ASCII language. That's why I don't understand
what hole XAML is supposed to fill.

You're not actually supposed to write XAML - just like you're not
supposed to manually code gif or jpg files... it's a data format used to
store structures that will typically be designed/modified by design
tools like Sparkle (or whatever they're calling it now).
For one thing, it seems to be a bad programming language (from a language
design point of view),

I don't think it is really a programming language... no more than HTML
is a programming language. You create HTML template files for your
ASP.NET programs and the functionality for those GUIs is provided by a
separate piece of the puzzle - i.e. your C#/VB.NET/Chrome or whatever code.

I think you're probably missing the point. Check out some of the demos
on Sparkle on channel9.msdn.com - that gives you a good idea of how
useful XAML can be.

Best Regards,

James Crosswell
Microforge.net LLC
http://www.microforge.net
 
J

Jon Harrop

James said:
Wow! I guess it's a program that lent itself to a functional solution
quite nicely.

That would seem to be most programs. I've written everything from symbolic
maths programs in OCaml that were 100x the code density of C and much
faster to graphical applications (Presenta) that were 4-5x the code density
of C++ and faster.
Why would your users care what language it was written in?

Especially given that the whole point of a CLR is interoperability. Maybe
they wanted to develop it without any decent developers. ;-)
 
J

James Crosswell

Jon said:
That would seem to be most programs.

Like a business application that has grids and dialogs to edit
"entities" that are stored in a database? That's what the majority of
applications seem to be... but I fail to see how a functional solution
would reduce the amount of code for these apps. Don't get me wrong, I
think functional programming languages have their applications but just
because you have a hammer doesn't mean that everything else is a nail.
Especially given that the whole point of a CLR is interoperability. Maybe
they wanted to develop it without any decent developers. ;-)

Aye, most developers don't get much exposure to functional programming
(outside of their university degrees). It's a slightly different mindset
for sure.

Best Regards,

James Crosswell
Microforge.net LLC
http://www.microforge.net
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top