21st Century Smalltalk

April 21, 2007

Microsoft Hit with Patent Suit over .Net

Filed under: General — pfisk @ 3:50 pm

InfoWorld recently posted this story about a Texas company suing Microsoft:

Vertical filed suit April 18 in a U.S. District Court in Texas alleging that Microsoft has infringed on its Patent No. 6,826,744 for a “system and method for generating Web sites in an arbitrary object framework.”

The patent is for Vertical’s SiteFlash technology, which utilizes XML (Extensible Markup Language) to create a component-based structure to build and efficiently operate Web sites, according to the company’s Web site. A Vertical spokesman could not be reached for comment.

The complaint says Microsoft is still willfully infringing on the patent despite Vertical having put Microsoft on notice about it on Feb. 7. Vertical is asking for a jury trial.

As far as I can understand, this means that XAML infringes their patent. And, if the lawsuit succeeds, they will surely sue Adobe over Flex/MXML which is very similar to XAML.

I have written a number of posts about XAML. Basically, I don’t like the whole idea of mixing compiled procedural code with a declarative data structure – the “code behind” approach (the same model is used in Flex as well).

Lisp can elegantly support static data structures, embedded code, macro expansions, and selective macro expansions through “backquote macros”, which I will soon be adding to Vst/Flash. XML is fine for serializing static data and ActionScript/C# are fine for writing procedures. But, mix them together and what you have is (IMHO) a mess.

I have no idea what the outcome of this lawsuit will be – and I sincerely hope that it fails very soon.

Maybe a bright lawyer somewhere has already patented using Lisp or Smalltalk in Internet applications, or using Lisp and Smalltalk together in one application. It really wouldn’t surprise me if that were true.

Sometimes truth is stranger than fiction.

ClassBrowser Updated

Filed under: Lisp, Vista Smalltalk — pfisk @ 2:56 pm

classbrowser2
Vista Smalltalk Site

Open Vista Smalltalk in your browser.

The ClassBrowser is now able to handle code transitions between Lisp and Smalltalk. Lisp code for the ClassBrowser and other tools is available here.

Smalltalk-like capablities have been added to several core classes to facilitate the extensions. In particular:

List collect-

(@collect- ‘(1 2 3 4 5 6 7) (lambda(x) (* x x)))
=> (1 4 9 16 25 36 49)

List select-

(@select- ‘(1 2 3 4 5 6 7) (lambda(x) (@odd x)))
=> (1 3 5 7)

Object perform

(@perform ‘println “Hello world”)
=> “Hello world” (on Transcript)

Many of the Lisp to Smalltalk transformations are still incomplete; they are currently performed by functions written in ActionScript. My plan is to rewrite them as Lisp functions and make them available as part of the public code base.

Blog at WordPress.com.