Mobile Code for Everyman

W3C

Bert Bos

W3C workshop on webapps
1-2 June 2004
San Jose, CA, USA

Bert Bos
W3C, France

Déjà vu?

Nearly 10 years ago, HTML was in danger:

  1. Proprietary extensions for layout made HTML less useful, less accessible, less maintainable, less durable…
  2. … and they weren't even enough to provide reasonable typography.

So we created style sheets.

But HTML is in danger again!

Behavior is turning into procedural knowledge

JavaScript, the worst invention ever.

But Java is not so great for simple programs :-(

(Just like you don't use C, if Bash or Perl is enough.)

So we need a new language

… or two

… for the 80 % for which a scripting language is easier.

so that programs are portable, device independent, accessible, maintainable, re-usable…

↳ right from the start.

Imagine…

Imagine… we could start from scratch… we could leave the difficult 20 % to Java… we could take two years to define our language(s)… and two years more for version 2…

(and why couldn't we?)

A diagram or two

File Edit ViewText size… UI 1 UI 2 UI 3 Help

A program and its UI are downloaded from the Web and executed by a UA

A diagram or two

File Edit ViewText size… UI 1 UI 2 UI 3 Help

An alternative UI is downloaded from the Web and executed by the UA

A diagram or two

File Edit ViewText size… UI 1 UI 2 UI 3 Help

Welcome to foop 2.1
Type "help" for instructions
command>

How?

An easy, high-level, interpreted programming language

(Something like Ruby?)

↑  ↓
2-way pipe
↑  ↓

An easy, high-level, declarative UI language

(Something like Gist?)

The end

(Now we only need to work out some details, such as the set of UI objects, the built-in libraries, security levels, safe local storage, packaging and signing, the MIME type…

:-)