More and more people are deploying Services, APIs and all kinds of distributed components. Major content providers are finally finding out that exposing their features to developers not only keep them relevant but also creates a nice ecosystem around their business.
When someone decides to expose a piece of software to others –being internal users in […]
Archive for February, 2009
What Is a Service?
Published by February 24th, 2009 in business, components, domain driven design, layers, soa, software architecture, software design, trends and web. 9 CommentsProgramming Languages Pragmatics, 2nd Edition – A Review
Published by February 3rd, 2009 in books, language adaptation, language oriented programming, object orientation, software architecture and software design. 1 CommentLong time since my last book review. I just finished reading Programming Language Pragmatics, by Michael L. Scott.
The book describes how diverse programming languages implement diverse features and paradigms. It uses a cleat language and it is full of examples.
It starts really well with an overview of the steps executed during parsing and compilation. It […]
Clojure: Adding Metadata to Java Objects and Proxies
Published by February 1st, 2009 in clojure, java and lisp. 5 CommentsOne of the most amazing features of Clojure is the ability to decorate references to objects with metadata, as in the following example:
user> (def my-user {:login “pcalcado” :password “secret123″})
#’user/my-user
user> my-user
{:login “pcalcado”, :password “secret123″}
user> ^my-user
nil
user> (def my-cached-user (with-meta my-user {:cached-at (java.util.Date. )}))
#’user/my-cached-user
user> my-cached-user
{:login “pcalcado”, :password “secret123″}
user> ^my-cached-user
{:cached-at #}
user> my-user
{:login “pcalcado”, :password “secret123″}
user> ^my-user
nil
That feature makes the […]

