All entries for July 2006

July 17, 2006

Busy times ahead

It's so nice to have the summer vacation to do what ever I please. However it comes at a price: having to choose!

I'm currently involved in a few open source projects (BindingListView , Specter and BooML )
I also have to eat… so I'm working on some commerical software too.
I really should try to get out and see friends too! Damn, 3 months may not be enough for it all.

Hopefully I'll find time to keep blogging too… :)


BooML Source Online

Follow-up to BooML SourceForge Project Pending from codeMonkey.Weblog();

The source for BooML is now online. The project is hosted by SourceForge. link

So far I've just got the source into SubVersion. I'm so busy at the moment (too many pies, not enough fingers!) – but I really must get some docs online too.


July 01, 2006

BooML SourceForge Project Pending

Follow-up to BooML – Language Integrated XML in Boo from codeMonkey.Weblog();

I have submitted a project request to SourceForge for BooML. I hope it is processed faster than Specter was!

BooML – Language Integrated XML in Boo

Creating XML using the .NET XmlWriter object model tends to make your code look awful. I realised that using some mackery I could make Boo support creating XML right in the language. Thus was born "BooML"

Here is a little example.

import System
import System.IO
import System.Xml
import BooML

class Book:
[property(Title)]
private _title as string
[property(Author)]
private _author as string

def GetBooks():
return [
Book(Title: "Foo Bar", Author: "Bob Smith"),
Book(Title: "Test Title", Author: "Andrew Davey")
]

[XmlLiteral()]
def GetBooksXml(books):
books:
for book as Book in books:
book:
@id = book.GetHashCode()
title book.Title
author book.Author


xml = GetBooksXml(GetBooks())
print xml.ToString()
The resulting XML is:
<?xml version="1.0" encoding="utf-8"?>
<books>
<book id="54267293">
<title>Foo Bar</title>
<author>Bob Smith</author>
</book>
<book id="18643596">
<title>Test Title</title>
<author>Andrew Davey</author>
</book>
</books>

The magic is in the XmlLiteral AST Attribute. It transforms macros (in the example: books, book, @id, title and author) into XML macros. The XML macros then in turn create the XmlTextWriter calls.

I think this could be a really powerful language enhancement for people doing web development who want to return abitrary XML from methods.

I may start a SourceForge project to open source the development.


Google Ads

Search this blog

Most recent comments

  • I scratched my eye while i was holding some kind of plastic packaging.. Anyways the corner of the pl… by Ercan on this entry
  • About a year ago my contacts that i was wearing, i guess were fautly, because shortly after they wer… by Jon on this entry
  • I got shower gel in my eye 4 and a half days ago, and becasue i rubbed my eyes a lot, i have scratch… by Chris on this entry
  • This website may help http://www.webmd.com/eye–health/tc/Eye–Injuries–Home–Treatment by S on this entry
  • I somehow got dirt, or debris in my eye. The terrible pain sent me in a tailspin. I was afraid of sa… by Bobbi on this entry

Tags

July 2006

Mo Tu We Th Fr Sa Su
Jun |  Today  | Aug
               1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31                  

Galleries

Blog archive

Loading…
Not signed in
Sign in

Powered by BlogBuilder
© MMXXI