Declarative Semantics

This post came out of the Blue Sky discussion. The disclaimer for that discussion applies here as well. I expect you to roll your eyes at how impractical it is.

Suppose I write "get http://www.kimbly.com/" in a program, exactly as shown. It won't compile in nearly any programming language. I have to write something more like this:

    url = new URL("http://www.kimbly.com/")
    url.get()

Having a reusable URL class is a lot better than having to work with sockets, but there's still a lot of noise there. From the user's perspective, I have to "quote" the url to turn it into a "string", and then I have to "pass" that string to the "constructor" of a "class". Then I "call" a "method" on the "object" that the constructor "returned". And so on. This is the price of modeling.

Application programmers shouldn't have to do modelling. Once a concept has been added to a library, the programmer should be able to talk about things directly, without having to use programming-language abstractions. This is Blue Sky.

Unfortunately I don't know of any good ways to express the semantics of "get http://www.kimbly.com/". I could make a macro that would let the literal code compile into something, but what should it evaluate as? An anonymous function? A string containing the html source? A structured object that lets me request the title and so on? Any decision would be premature, because URLs in themselves are not about executable code. They're not an algorithm, or a data structure. They're just a concept.

We don't have any well-known techniques for working with abstract concepts like this -- instead, the macro writer is forced to decide on a single executable "meaning". They decide whether "get <url>" should mean eagerly fetching the url or looking it up in a cache, whether it should mean parsing the result or just leaving it as a string, and whether the whole thing should be stored in memory or written to disk.

There is no way for me to write a declarative description of what a URL really is in a way that a programming language could understand. I want to be able to explain that it's not only a string of letters, but that it can be meaningfully broken into pieces (protocol, host, port, path) that may or may not be relevant. I want to be able to explain its relationship with the HTTP protocol. And I want to explain these things in a declarative way -- more like a knowledge base than a code library.

In fact, I want even more than that. I want other people to be able to add to, refine, or even override the statements that I made about URLs. You have to stop modeling at some point or else you'll never get anything done -- but maybe my model of URLs stopped too soon for some purposes. Perhaps I didn't care to mention 404s, or character set encoding. Someone else should be able to add declarative statements to my description, without requiring my cooperation, and without having to completely recreate my model. RDF is kind of like this, in that it lets people add new predicates and new statements, without having to coordinate with each other.

Currently, programming languages map concrete syntax into abstract programming-language concepts, which then get mapped into machine code. Application programmers never work with their problems directly -- instead, they work indirectly, by referring to and manipulating programming-language concepts like functions, objects, and types. At no point do they ever actually refer to the problem domain itself. I want to change this so that syntax instead maps to problem domain concepts, which then map to programming-domain concepts and so on to machine code. And I want to keep all the mappings separate.

I don't know exactly how to implement this idea (it is Blue Sky, after all), but I do have an intuitive feeling that it doesn't have to be as hard as we might think -- especially if you allow models to be incomplete, over-simplified, and even wrong sometimes.

Followups to Declarative Semantics:

Posted on August 29, 2003 03:00 PM
More languages articles

Comments

Good article. Interestingly enough, there is a language that will run something strikingly similar to your first example ("read http://www.kimbly.com", specifically) — REBOL which is focused on the internet "problem domain." Unfortunately, it's a closed language.

Posted by: Anode at August 29, 2003 06:56 PM

The map is not the territory, although it sounds like you want the map and the territory to be interchangible. That is definitely Blue Sky stuff here (and to think I first came across TUNES *six* years ago and wrote them off as a bunch of hand waving lunatics---interesting to see them still waving those hands around). Personally, I would much rather have F=(G*m1*m2)/r*r than drop the computer out the window.

Now, to go on to your example of the URL and trying to work with it directly. You are right, a URL is a concept but there is a declarative descritpion (written in such a way that a programming language could understand) of a URL in RFC-2396 (BNF format if your curious). But that's only half the battle. You go on to say that you want to declare the relationships of the parts of a URL to, say, HTTP (HTTP protocol is redundant in much the same was as PIN number) but that it is hard to do. Yes, I agree to that. What, exactly does

get http://www.kimbly.com/

mean? What does it return? And where does it return it to? (as written, I would expect $_ to contain a reference to something, but I'm not real keen on Perl myself) And more importantly, the action "get" doesn't map cleanly to every form of URL:

get mailto:sean@conman.org

What does that mean? I certainly hope it doesn't mean you get my email (although, given the level of spam, perhaps that isn't such a bad idea after all). The actions allowed via HTTP are: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE and CONNECT, each with their own semantics (POST is different that PUT), but of those actions, only POST can be said to apply to mailto: and even then it's more of a pun than anything.

And how to map these upon ftp:? Or even file://localhost/etc/passwd?

Perhaps a different example then.

I personally would love to make Flash animations. I've tried the Macromedia Flash animation program but found I couldn't figure out how to work it. It's not like I don't understand animation---as a kid I wanted to be a comic artist and a film maker so I'm not unfamiliar with the concepts (8mm film runs at 16 fps, 16mm and 35mm run at 24 fps. Professional animations run at 12 fps and typically use some form of cell based animation where there characters are painted onto transparencies, although an animator like Ralph Bashki (personally I can't stand his work) has also used rotoscoped techniques; I could go on about this ... ). I would expect a program to work with cells, frames and clips. And perhaps tracks for sound. A frame is made up of multiple cells. Clips are sequences of frames with an associated track for sound (so I guess at a minimum, a clip requires two frames, and a frame requires at least one cell).

Hmm ... lots of declarative stuff there, but I'm still no closer to an animation program than I was before.

So how is this Blue Sky stuff supposed to work again?

Posted by: Sean Conner at August 29, 2003 11:26 PM

There's no reason you can't write (less line noise):
url = getUrl("http://www.kimbly.com")

If you language allows it then you could use this syntax:
url = getUrl "http://www.kimbly.com"

... but's that's just syntactic sugar.

(BTW, where do I find the text formatting rules for Moveable Type? I assume it's a bit wiki-ish.)

"Application programmers shouldn't have to do modeling."

Yes, they should. That's exactly what they should be doing. What I think you mean, though, is that application programmers shouldn't have to do modeling outside of their problem domain.

I was also a bit disturbed by this comment in the original discussion: "I think we should strive to make modeling unnecessary."

You can't make modeling unnecessary. Modeling is what writing software is all about; you can't avoid it. Modeling is the act of identifying what parts of your problem domain are relevant (because not all of them are) and capturing those in software. All we can do to improve this is to minimise the amount of unnecessary, incidental, modelling we often have to do.

"Application programmers never work with their problems directly... At no point do they ever actually refer to the problem domain itself."

In programming languages, types capture semantic information from the problem domain. Types also define what operations/behaviours are allowed. Compilers can use type information to tell you when you are doing something illegal/nonsensical. When you are using types, you are referring to the problem domain (or rather, the parts of it you want to model).

It's all very well to say "I want to express everything declaratively" but eventually your code has to be executed, on some machine, and so somehow, somewhere, actions must be performed. You must have some kind of underlying execution model that the programmer knows about. In the URL example, at some point software must perform the actions of the HTTP protocol to fetch the resource.

"... syntax instead maps to problem domain concepts, which then map to programming-domain concepts ..."

From the sounds of this, all you need are domain-specific languages, and easy ways to create them. Which we already have.

Posted by: Alistair Bayley at September 1, 2003 07:05 AM

Sean, you just described a semantic model for your hypothetical animation program. That's great. Now you need two more things: a mapping from syntax to semantics, and a mapping from semantics to implementation. (The mapping from implementation to machine code is currently handled pretty well by compilers.) Programmers and Computer Scientists currently don't really have a concept of mapping syntax to semantics to implementation. Instead we go straight from syntax to implementation.

I think that by explaining the semantic model of your animation program, you are closer to having a runnable program than you were before. Now the compiler has some idea of "what you're talking about". You're doing the same kind of thing when you sketch out classes on CRC cards, or when you assign types to various pieces of your program (as Alistair points out). Just because you haven't started coding doesn't mean that this design phase wasn't necessary.

Your closing question simply emphasizes that semantic models don't automatically imply an implementation. And I think that this is exactly why it's important to focus on semantic models as distinct from programming language implementation -- otherwise we're skipping a step. You may think that step is worthless, but I disagree. I think that coding without a semantic model is what "real men" do -- like writing programs directly in machine code.

Posted by: kim at September 2, 2003 11:05 PM

Alistair, thanks for clarifying what I said about application programmers not doing modeling outside of their application domain. That's what I meant. I was using "modeling" to mean "fitting the application to the structures provided by the implementation language". Also, I agree with your point about how types capture semantic information. Currently they're just about the only technique we have for doing so.

However, I don't think that DSLs are the answer to my prayers. A given DSL will have a particular syntax, and a particular semantic model, and a fixed set of implementation techniques. I want to separate all of these things, so that they can be chosen separately. But most importantly, I want the semantic model to be additive (i.e. composable with other semantic models). Every DSL I know of is based on a parser that creates a particular data structure representing the semantics of that DSL. This data structure is usually not extensible, and is frequently not even accessible. It is also usually highly tuned to implementation concerns (e.g. bytecode). What I want is to make this data structure be the actual output of the DSL, rather than merely an intermediate representation that is used as input for subsequent execution.

In a way, you can think of this as merely a different way of looking at macros and DSLs. And as with everything in programming, it's been done before. The goal is to make a language that encourages this style, and makes it useful.

Tangent: if we assume that types are the closest thing we currently have to a semantic model, then this leads to the question: are there DSLs for types?

And by the way, the formatting rules for Movable Type are straight HTML.

Posted by: kim at September 2, 2003 11:32 PM

I want the semantic model to be additive (i.e. composable with other semantic models).

What does this mean? And what do you mean that a given DSL will have a particular semantic model? I would have thought that the semantic model for a DSL would be determined by the domain being modeled i.e. it would be the semantic model from the domain (unless my idea - admittedly vague - of what "semantic model" means is wrong). Which would mean that you couldn't choose it, which would mean that there's no value in separating it (if that's possible).

are there DSLs for types?

Yes. They are the syntax/language you use to specify type information to compilers. In Haskell it's separated from the code syntax, whereas in Java it's integrated with the code syntax (look at the type signature for a function - it's specified in the function itself). Although... you could say that Java interface syntax is a DSL for types, because that's what Java's interfaces are - types.

Posted by: Alistair Bayley at September 3, 2003 05:03 AM

When I saw your "get http://www.kimbly.com/" I
immediately thought of some perl stuff
(In case you haven't guessed, I'm mostly
a perl guy). For example, look at something
like:
get http://www.kimbly.com/
Now, the program has to figure out what you mean,
just like a person who read the program would.
In perl, if you say 9 + "2.3" perl figures out
from the context that you want to treat the string as a number, and it does it's best to
interpret that string as a number. So, your
program might look at 'get' and decide it is
a postfix method or operator, then it could
look at http://www.kimbly.com/ and decide that
it is a url. Now, "decide this string is a
url" would probably be a pretty expensive
process relative to what most languages do
today, but this is basically what you are
asking for. Now, since the program has
decided that this string is a url 'object'
and there is the context of the unsatisfied
operation 'get', the progam executes the
get method of the url. Finally, there is no
LHS type context, so the program may throw
the result away, but a better response might
be to store the result in the default context,
which is called $_ in perl. Later, when you
write

get http://www.kimbly.com/
print

The program will understand that you want to
call the print method of the object that
resulted from the get method of the url
(could be an html page, or something else)

The more you generalize these sorts of
operations, the more expensive it is for the
machine, and the harder it is to figure out
when it doesn't do what you want, but this
is the cost of this DoWhatIMean approach.

-Kris

Posted by: Kris Bosland at September 9, 2003 11:01 AM

It's not OpenGL that I see as the problem, it is how it is used. You could render a scene represented in X3D with OpenGL and JavaScript, or you could create the same content programmatically with just JavaScript. It is the later that bothers me because people are likely to do it because it is perceived as being that much easier, but the result is that the 'content' is less useful and more difficult if not downright impossible to re-purpose.

Posted by: migliori siti di craps online at April 17, 2009 06:51 AM

Great post, thanks.

Posted by: free online games at October 25, 2009 04:14 PM

These Women's Classsic Tall 5815 Boots in pink flower print can either be worn at their normal height if you want Ugg boots, but in order for you to create a more casual look to what you are wearing they can be pushed down Women's UGG Classic Tall 5815 Boots in Baked Clay

Posted by: ugg boots on sale at October 27, 2009 02:24 PM

Many websites have copied much of our contents word by word and photos.These are scam websites. As a result, many customers from the scam replica watches website contact us, asking where their shipment is. replica watch Please be aware, that if you see a website with a VERY similar name or contents,omega watches it is probably a scam. WE ARE NOT associated with any other websites.

Posted by: replica watches at October 28, 2009 04:43 AM

Love this man. Great stuff, great prices, free shipping. Email him if you cant find what you are looking for and he will look for you. Good customer service.louis vuittonSomeone who is knowledgeable in louis vuitton.Another guy from hong Kong (Largest louis vuitton second hand city, I believe) he has great stuff at fair prices but his shipping is insane

Posted by: louis vuitton at October 29, 2009 07:51 AM

Love this man. Great stuff, great prices, free shipping. Email him if you cant find what you are looking for and he will look for you. Good customer service.louis vuittonSomeone who is knowledgeable in louis vuitton.Another guy from hong Kong (Largest louis vuitton second hand city, I believe) he has great stuff at fair prices but his shipping is insane

Posted by: louis vuitton at October 29, 2009 07:55 AM

Love this man. Great stuff, great prices, free shipping. Email him if you cant find what you are looking for and he will look for you. Good customer service.louis vuittonSomeone who is knowledgeable in louis vuitton.Another guy from hong Kong (Largest louis vuitton second hand city, I believe) he has great stuff at fair prices but his shipping is insane

Posted by: louis vuitton at October 29, 2009 07:56 AM

Love this man. Great stuff, great prices, free shipping. Email him if you cant find what you are looking for and he will look for you. Good customer service.louis vuittonSomeone who is knowledgeable in louis vuitton.Another guy from hong Kong (Largest louis vuitton second hand city, I believe) he has great stuff at fair prices but his shipping is insane

Posted by: louis vuitton at October 29, 2009 07:57 AM

Love this man. Great stuff, great prices, free shipping. Email him if you cant find what you are looking for and he will look for you. Good customer service.louis vuittonSomeone who is knowledgeable in louis vuitton.Another guy from hong Kong (Largest louis vuitton second hand city, I believe) he has great stuff at fair prices but his shipping is insane

Posted by: louis vuitton at October 29, 2009 07:57 AM

Love this man. Great stuff, great prices, free shipping. Email him if you cant find what you are looking for and he will look for you. Good customer service.louis vuittonSomeone who is knowledgeable in louis vuitton.Another guy from hong Kong (Largest louis vuitton second hand city, I believe) he has great stuff at fair prices but his shipping is insane

Posted by: louis vuitton at October 29, 2009 07:57 AM

Love this man. Great stuff, great prices, free shipping. Email him if you cant find what you are looking for and he will look for you. Good customer service.louis vuittonSomeone who is knowledgeable in louis vuitton.Another guy from hong Kong (Largest louis vuitton second hand city, I believe) he has great stuff at fair prices but his shipping is insane

Posted by: louis vuitton at October 29, 2009 07:58 AM

Welcome to purchase online or contact us and we will be happy to provide you with the best quality service of ugg Bailey Button boots .


classic cardy uggs boots is loved by many young people.It’s one of hot items of our company.If you haven’t worn classic tall ugg boots you are missing out.They are lightweight and comfortable.

Posted by: UGG Knightsbridge boots at November 2, 2009 10:35 AM

Eliminating the need for the extra trouble to wear ugg boots uk
ugg boots saleuggs, in the extreme sports, look for happiness in life, with UGG Classic boots and nike sb showed off your tall body, do not worry about being laughed at, dancing new style ugg australia and nike sb dunk . The flavor of life that is colorful, there are Christian Louboutincheap nike dunksUGG cardy boots、and nike sb for sale also used fear to creep away money from your pocket Mody ? Love beauty, you might even love UGG Classic tall bootsUGG Nightfall bootsUGG Classic short bootsnew nike sb。There are an infinite high power drivers of popular front ugg boots saleugg saleuggsnike dunkdiscount ugg bootsnike dunk sb, our website also have UGG Nightfall bootsbutton ugg bootsbailey button uggugg button bootsbailey button bootsnike dunk midnike dunk highChristian Louboutin Boots, pick your favorite, do not hesitate!

Posted by: ugg boots sale at November 12, 2009 03:44 AM

People all over the world know the abercrombie and fitch,but not everyone really knows how fashion the abercrombie is,hollister is the Legend maker. Everybody wears the hollister clothing would be the abercrombie mensand the abercrombie womens, if you want know you can search the Ruehl No.925 or abercrombie outlet in the www.google.com .

Posted by: fitch at November 14, 2009 02:03 AM

Uggs on sale now.UGG Classic Cardy Boot makes me different form the other

girls. The UGG Bailey Button Boot is a good choice for female.

Posted by: ugg classic cardy boots at November 17, 2009 12:02 AM

Louis Vuitton , commonly referred to as Louis Vuitton Patch Bag and Louis Vuitton Bags, or sometimes shortened to Louis Vuitton Sale has become one of the most Louis Vuitton Speedy 35 Bag Agendas luxurybrands LV Wallet.

Posted by: 1 at November 17, 2009 01:34 AM

UGG Bailey Button bootsis a new style in 2009.The classic cardy uggs boots is another hot boots that worth of buying.And the classic tall ugg boots will make your winter amusing.And now uggs on sale,if you are looking for such a boot,the ugg boots is good choice this year.

Posted by: UGG Bailey Button Boots at November 17, 2009 01:46 AM

I love Women's UGG Classic Cardy Boot 5819 very much. And the new style UGG Mayfaire Boots is aslo a good choice this year.

Posted by: UGG Bailey Button Fancy Boots at November 17, 2009 03:20 AM

www.enjoywholesale.com

china wholesale clothing,china wholesale shoes,china wholesale electronics,china wholesale suppliers,china manufacturers

china wholesale products,light in the box,wholesale lots,wholesale ipod
china direct,china dropship,china trade,made in china

electronics wholesaler,ebay wholesaler,financial wholesaler
fashion wholesaler,clothing wholesaler,wholesaler magazine

computer wholesaler,external wholesaler,dvd wholesaler,wholesaler definition,china wholesaler,mutual fund wholesaler,define wholesaler,insurance wholesaler


discount ugg boots
forture
ugg boots
Discount store

Posted by: wholesaler business website, net shopping site, external wholesaler,dvd wholesaler,wholesaler definition,china wholesaler,mutual fund wholesaler,define wholesaler,insurance wholesaler at November 18, 2009 03:04 AM

lxjuan08ed hardyis a famous ed hardy store which sell directly ed hardy clothing, shoes, boots, swim suit and other cheap ed hardy.

Browse through our catalogue of hundreds of ed hardy clothing,Ed hardy Shirt,Ed hardy ... Buy Ed Hardy today for a gift, for a friend, or for yourself.

ED HARDY Online Shop,Ed Hardy Store by Christian Audigier,coach handbags,rolex watches.We supply cheapest Newest ed hardy discount 2009 Commodity New styles.


ed hardy sale

Posted by: ed hardy at November 18, 2009 03:29 AM

Good day! Thx for your great post and Im thinking about how to introduce my ugg boots to you cos Im not sure if u like this. Many people who live in the cold area like the ugg boots, especially the north-europe. Our uggshare.co.uk supply the cheapest classic cardy ugg boots, class tall ugg boots, classic short ugg boots and other series of uggs, hope my words didn’t trouble u, cy!

Posted by: ugg boots at November 18, 2009 09:10 PM

The price is not cheap, but it's a great value since the darn

things don't wear out. The look is sort of ... clunky, yet I see a

lot of copies (of lesser quality) in all the mall

href="http://www.mytobling.com/ugg-mayfaire-boots-c-

99.html">ugg mayfaire boots

this year. I'm

buying a couple more pair for my teenagers this year, and even a

pair for myself.


Posted by: aewrtwet at November 19, 2009 08:33 PM

We are the best online sales for the china wholesale . Here you can have a large of choices of kinds Ugg Boots,Converse Shoes,Timberland Boots,puma shoes,Nike Shox Shoes ,Nike Dunk SB Shoes,Nike Air Max,Links Of London,Tiffany Jewelry,Dior Handbags?,jimmy choo handbags ,Cartier Watches, 8GB Mp4 Players,Bluetooth Car DVDs. All our cheap online cheap goods are high quality and original packages, and best service. We offer our customers the best service, 7 days arrive at your door.Enjoy your easy and happy shopping with us.

Posted by: cheap goods sale. at November 19, 2009 10:09 PM

Thank You! Nice quality

-boots-c-99.html">ugg mayfaire boots

. A+

Posted by: 4ty5 at November 19, 2009 11:59 PM

Do you like sports? If you like it,the NIke Air Max TN and Nike Air Max 360 is a good choice for you.And now the there is a good news,CheapNike Air Max running Shoes is waiting for you.I think The New Nike Air MAX 2009 Running Shoes makes you great comfortable.

Posted by: Nike Air Max shoes at November 20, 2009 03:34 AM

xiaorong Auction house Antiquorum auctioned off a very rare vintage chronograph Patek Philippe that
replica watches
replica watches
replica Jaeger LeCoultre watches


replica watches
replica watches
replica A.Lange&Sohne watches

replica watches
replica watches
replica Breitling watches

Posted by: replica Piaget watches at November 21, 2009 05:37 AM

Thank you for useful information. Looking for a very long time. Add nothing. Everything has been said. I can share useful links. Thanks to author. Design is also pleased.
mp4 movie downloads
legal music downloads
download movie film
Where to Buy Music mp3

Posted by: at November 22, 2009 05:45 PM

Thank you for useful information. Looking for a very long time. Add nothing. Everything has been said. I can share useful links. Thanks to author. Design is also pleased.
mp4 movie downloads
legal music downloads
download movie film
Where to Buy Music mp3

Posted by: at November 22, 2009 05:48 PM

Thank you for useful information. Looking for a very long time. Add nothing. Everything has been said. I can share useful links. Thanks to author. Design is also pleased.
mp4 movie downloads
legal music downloads
download movie film
Where to Buy Music mp3

Posted by: Imdb at November 22, 2009 05:48 PM

Your article is write very well, I like it very much ~
ghd Hair Straightener
ghd Hair Straighteners
ghd straighteners
GHD
hair straighteners
bose in ear headphones
bose on ear headphones
bose headphones
nike sb dunks
nike dunks
I wish you have a wonderful day!Thank you.

Posted by: ghd straighteners at November 22, 2009 08:02 PM

Timeberland boots on sale now! Do you want moreTimeberland boots information?Just move your mouse and press it to our Timberland shoes online store.

Posted by: Timberland uk at November 23, 2009 12:51 AM

Laptop Battery Laptop Battery Laptop Batteries
Laptop Batteries discount laptop battery
discount laptop battery
notebook battery notebook battery
computer battery computer battery
replacement laptop battery replacement laptop battery
notebook batteries notebook batteries

Posted by: Laptop Battery at November 24, 2009 09:56 PM

Ugg Classic Cardy

Boots

Ugg Classic Tall

Boots

Ugg Classic Short

Boots

Posted by: topuggshoes at November 26, 2009 03:21 AM

Uggs have been identified as a fashion trend for both sexes since the early 2000s.Ugg boots ugg classic cardy boots ride the vagaries of fashion trends,ugg classic tall boots with a growth in popularity for men tied to increased celebrity usage (e.g., Leonardo DiCaprio. Men and women especially of college age, teens, and tweens wear Uggs with jeans, dresses, shorts and long shirts or sweaters with leggings,classic cardy boots ugg footless tights, or knee socks and sometimes without any legwear.

Posted by: ugg classic tall boots at November 26, 2009 06:52 AM

Uggs have been identified as a fashion trend for both sexes since the early 2000s.Ugg boots ugg classic cardy boots ride the vagaries of fashion trends,ugg classic tall boots with a growth in popularity for men tied to increased celebrity usage (e.g., Leonardo DiCaprio. Men and women especially of college age, teens, and tweens wear Uggs with jeans, dresses, shorts and long shirts or sweaters with leggings,classic cardy boots ugg footless tights, or knee socks and sometimes without any legwear.

Posted by: ugg classic tall boots at November 26, 2009 06:53 AM

chaoying nfl jerseys
Giants Jerseys
Patriots Jerseys
Packers Jerseys
These things are good, I hope you can continue to maintain!

Posted by: jerseysleague at November 29, 2009 03:29 AM

Paul Smith has been collaborating with a few different organizations recently and his latest venture sees him teaming up with Japanese bicycle saddle, Paul Smith bag, on a limited edition leather saddle. The release features Smith’s signature stripes where only 20 will be available at Paul Smith Clothing store in Japan and 8 at the Floral Street store in London. Get on it quick

Posted by: fasf at November 29, 2009 11:46 AM

Just wanted to say great job with the blog, today is my first visit here and I’ve enjoyed reading your posts so far
ugg bailey button
Wow, my ugg classic mini will not be coming off now! I’ve had them on for 12hrs strait and I do not want to take them off. Thanks for everything, well worth the wait.

Posted by: ugg bailey button boots at November 30, 2009 06:07 AM

Spring is near,every girl wants to be the bride in the special season.They are eager to put on beautiful Wedding Dresses or the Bridal gowns.During the day the Wedding gowns is the good choose,and the night,if you want radiant,you need the Evening gowns.
About the bridesmaid,they have to wear Bridesmaid Dresses in order to avoid grab limelight with the bride.And the Flower Girl has the Flower Girl Dresses,too.In the wedding,the Cocktail Dresses and the Evening Dresses is necessary,too!And remember,the Wedding Dress of the Bridal Dress must be the most glaring!

Posted by: weddingdressclub at December 1, 2009 01:54 AM

It is no doubt that Replica Louis Vuitton Speedy 30 enjoys highest reputation in the world. Louis Vuitton Speedy 30, purses, shoes, watches, clothes, and belts successfully seize loving heart of a majority of people. Speedy 30 is filled with romantic and fantasy, and it is a symbol of noble and high quality of life for gucci ever! Today, let us talk about Tivoli PM.belts have different styles and colors, such as Monogram series belts, Graffiti series belts, both men and women love them crazily. All of them match with various leisure clothes, formal business suits, and beautiful clothes very well. Whenever you wear a Louis Vuitton belt to make your public appearance, you will be naturally concerned and admired by every body. When we talk of high quality, there is no other company to compare with Louis Vuitton Replica Speedy 30. All Louis Vuitton belts adopt top quality cow leather, high quality hard ware, and the color will never be faded. The belts are so durable, and you can wear them to match your clothes for several years. Also, you can clearly see an obvious LV logo as a buckle of each belt.

Posted by: fanqin at December 1, 2009 02:21 AM

[URL=http://www.ugggo.com/ugg-classic-tall-c-52.html]ugg classic tall boots[/URL]
[URL=http://www.ugggo.com/ugg-classic-tall-c-52.html]classic tall ugg boots[/URL]

Posted by: ugg boots sale at December 1, 2009 02:51 AM

uggs on sale
classic tall uggs on sale

Posted by: ugg boots sale at December 1, 2009 02:52 AM

Uggs have been identified as a fashion trend for both sexes since the early 2000s.Ugg boots ugg classic cardy boots ride the vagaries of fashion trends,ugg classic tall boots with a growth in popularity for men tied to increased celebrity usage (e.g., Leonardo DiCaprio. Men and women especially of college age, teens, and tweens wear Uggs with jeans, dresses, shorts and long shirts or sweaters with leggings,classic cardy boots ugg footless tights, or knee socks and sometimes without any legwear.

Posted by: ugg classic tall boots at December 1, 2009 10:04 PM

ugg boots sale at a time when large heat has set off a winter 08/09 to Ewha.Outlines the

warm wool winter fashion degree to wool crocheted wool ugg boots uk to join after the

body does not stimulate your skin soft, soft comfort UP. Fashion can not without
ugg boots presence in Winter.and ugg boots have many series.such as:
ugg classic
UGG Bailey Button boots
ugg nightfall
ugg kids

Posted by: uggboots at December 2, 2009 08:44 PM
Post a comment









Remember info?




Prove you're human. Type "human":