Rumors were that Microsoft had shelved its fledgling X# programming language. Instead, the company is forging ahead with it.
Rumors were that Microsoft had shelved its fledgling X# programming language. Instead, the company is forging ahead with it.
xml based languages have done many times before. http://www.waterlang.org is an example off the top of my head.
Now I am not sure as to the exact details of microsofts attempt at an xml based programming language but based on my experience programming in water…
Why do this? xml is so ugly to look at in a text editor. Don’t get me wrong, it is a great format for putting data in. The problem with using it for a language is that your code gets so many angle bracket in it that is all starts to look like giberish.
To me python has the best approach: Using indentation. By using code formating as the means of controlling flow it forces people to produce more readable code (keyword is more, some people still find a way).
That’s it. Never let the fact that your idea is totally weak stop you from forging ahead with it!
They should be finding a way to define these things in a generalized way, not hacking SQL and XML into the language proper.
Its harder to be fully general with an infix syntax like C#’s, but that’s why they pay Microsoft researchers the big bucks, right?
Or, they could just wait for Larry Wall to add redefinable syntax to Perl 6 then copy that…
but you shouldn’t knock them for trying.
MS has plenty of money to throw as dumb projects. Who knows, this might lead to something actually useful!
But XML is really a crappy way to program. The only advantage I see with XML is that if the current crop of tools matures enough it will be easy to redefine your programs through the use of stylesheets.
However, the current crop of XML tools is still poor compared to what they promise.
Somebody didn’t RTFA Xen is not a language with XML syntax. Instead, it has special syntax extensions to make it easier to work with XML documents.
http://www.extremetech.com/article2/0,3973,1441328,00.asp
That page has some example code.
Concerning your remark about using stylesheets to redefine programs. Lisp macros do exactly that. Instead of XML syntax they use a parenthesized syntax and instead of stylesheets they have macros. Its much cleaner that way because of two things: the parenthesized syntax is much less verbose than the XML syntax, and instead of using a cut-down applicative language (XSL) to manipulate the syntax tree, you get to use regular Lisp code.
Macros are very powerful for this sort of thing. Having programming-language constructs for manipulating structured data, and for handling relational databases is a good idea. But it needs to be completely general. Mathematicians would like to have programming language constructs for doing calculus. Engineers would like to have specialized constructs for doing fluid dynamics. Etc. With macros, you can add all these constructs in a natural way to the language, without actually building it *in* to to the language.
it’s nice to see exactly one comment is from someone who read the article.
rtfa!
That said, the only thing Xen is missing is perl’s RE support.
-hugh
Yes, leave it to the company who reinvented the acronym DNS as “Digital Nervous System” to usurp the name of a successful virtual server project (http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html) for the name of their programming language
The silly thing is, that project is funded by Microsoft.
What next? Trusted Computing Platform/Internet Platform 😉
Extensions to deal with XML and SQL… uh, don’t the .NET Frameworks already include that? I know that XML support is already there, and quite good…
– chrish
Yes, .net supports sql and xml.
BUT
The language (c#) does not. You merely access xml and sql through .net objects. Which is rather inconvenient compared to actually having xml and sql structure *in* the language itself.
“Somebody didn’t RTFA Xen is not a language with XML syntax. Instead, it has special syntax extensions to make it easier to work with XML documents….”
Went there. Looked at it.
As a 25-year veteran of computers, and a hobbyist of computer languages (forth, basic, cobol, pascal, c, python, on and on…):
Can somebody tell me why most of the computer languages and programs I’ve ever seen look like gobbldygook? When is somebody going to write software that makes a computer understand what humans say every day? Have we given up on that now?
“Can somebody tell me why most of the computer languages and programs I’ve ever seen look like gobbldygook? When is somebody going to write software that makes a computer understand what humans say every day? Have we given up on that now?”
yes we have. C was invented to fix all the problems that resulted in those human languages. because in the end those languages were weak and very simplistic. all languages have issues and shortcommings, but they were designed for programmers. because at the end of the day, programmers are the ones that will be using them, not your average human.
The first article didn’t explain much about Xen, but after reading the extremetech article I now can say that the idea of this is great. With the direction the article was taking it seems like they want a language that will bind Xml and SQL to C#. Which to me seems like a good idea. They are saying that most languages are really poor at just processing data, which is true. There are few languages that are good at taking data in one format and transforming the data into another format, dropping and adding data along the way. The want an easy way to transform data in C#, it seems is their goal.
While many of the things they are doing could be done in languages today, they seem to want to make it easy for C# programmers to get at the data. Rather then retrofit C# to be a data procesing language, they are creating their own.
It’ll be interesting to see if this actually works well.
“at the end of the day, programmers are the ones that will be using them, not your average human.”
So, if I get a robot, and I want it to go get me a cup of Boston coffee from Dunkin Donuts, how would I go about explaining this to the robot?
check out this post on my blog http://zerotrilogy.gotdns.com/jaysonblog/archive/2004/01/22/215.asp…