Version 0.3.3 of mobl has been released. Mobl is a language for rapid development of mobile web applications using HTML5 technologies. Programs written in the mobl language are compiled to a combination of HTML, Javascript and CSS and can run on any webkit browser, specifically those on iOS and Android devices.

New in this version compared to 0.3.2:

  • Bugfix where destroyAll() wouldn’t trigger an update to lists (thanks by Dave Gardner)
  • New async feature in controls, useful for operations that take a longer time to complete (e.g. database-intensive calls and web services calls):

    var results = async(SomeService.someCall())
    whenLoaded(results) {
      list(result in results) { ... }
    }
    

    this is equivalent to:

    var results : [ResultType] = null
    script {
      async {
        results = SomeService.someCall();
      }
    }
    whenLoaded(results) {
      list(result in results) { ... }
    }
    

    i.e. it performs the call asynchronously, allowing the UI to fully render, then, when the call returns, the result is assigned to the control/screen variable. The whenLoaded control simply takes an argument and if its value is null, it will show a “Loading…” screen, otherwise it will render its body.

To install, follow these instructions. To upgrade, simply upgrade from the update site.