Fork me on GitHub

Version 0.4.5

Version 0.4.5 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.

Some new features in this version since 0.4.4:

  • Bug fixes
  • Fixes in event buffering
  • Hardware accelerated screen transitions (by Willem Bult)
  • Some new HTML5 controls (for iOS5 and Android 2.3+), including telField and rangeField.
  • Switched to YUI Compressor for release builds. Should be faster and more reliable.
  • This release works fine with Eclipse 3.7 (as did previous releases)

Full list of changes

Built a mobl application? Add your application to the show case.

Note: After upgrading, rebuild your project (Transform > Rebuild project).

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). To use the mobl compiler from the command line follow these instructions. Problems? Ask for support and report bugs on our bug tracker.


Version 0.4.4

Version 0.4.4 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.

Some new features in this version since 0.4.3:

Full list of changes

Note: After upgrading, rebuild your project (Transform > Rebuild project).

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). To use the mobl compiler from the command line follow these instructions. Problems? Ask for support and report bugs on our bug tracker.


Version 0.4.3

Version 0.4.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 since 0.4.2:

  • Bug fixes, and a lot of them
  • Code completion for global variables and styles
  • Indexer support, instead of writing: myarray.get(0) you can now write myarray[0] and instead of myarray.set(0, "hello") you can now write myarray[0] = "hello". The indexer is syntactic sugar for any object that has a get and set method. So that includes Map.

Full list of changes

Note: After upgrading, rebuild your project (Transform > Rebuild project).

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). To use the mobl compiler from the command line follow these instructions. Problems? Ask for support and report bugs on our bug tracker.

1 Comment more...

Version 0.4.2

Version 0.4.2 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 since 0.4.1:

  • Various bug fixes
  • Support for non-Latin characters in string literals and comments. So you can now use Chinese or Japanese in string literals, e.g. "汉语". Finally!
  • Some support for the browser’s back button. This is extremely naive at this point and will likely improve in the future. User complained that if they accidentally pressed the browser’s back button, they would leave the application. With a clever hack, using the back button (but in fact, in many cases the “forward” button as well) now actually calls screen return on your current screen.
  • Improved code completion for functions and controls. The old code completion would automatically include all optional arguments as well, which was messy. Now you have two options, a version with only required arguments and one with all arguments. Activated through Ctrl+space, as always.
  • Static function support for entities and types. Mobl already supported entity and type instance functions, now it also supports static function, i.e. functions called on the type itself. For instance:

    entity Task {
      name : String
      done : Bool
      // Instance method/function
      function toString() : String {
        return this.name;
      }
      // Static method/function
      static function create() : Task {
        return Task(name="Unnamed", done=false);
      }
    }
    // use:
    var newTask = Task.create()
    label(newTask.toString())
    
  • New httpRequest function in mobl that performs a HTTP request, very similar to services, but with less syntactic overhead, but less declarative too. Considering the option to deprecate service definitions in favor of regular types with static functions that perform httpRequests. The advantage would be that it would be one less language construct to learn (= simpler language). Any opinions on this?

Full list of changes

Note: After upgrading, rebuild your project (Transform > Rebuild project).

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). To use the mobl compiler from the command line follow these instructions. Problems? Ask for support and report bugs on our bug tracker.


Know Chinese, Want to Learn About Mobl?

Leon Zhang is writing a few articles about mobl on his website. Much appreciated Leon!

1 Comment more...

Version 0.4.1

Version 0.4.1 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 since 0.4.0:

  • Bug fixes, mainly concerning the release build.
  • New mobl::yql library to use the Yahoo! Query Language in your applications. Demo (bottom of page).
  • New mobl::media library with Audio type, to play audio files (supported in iOS 4.2+ and Android 2.3+).
  • Application cache support, experimental (cache the entire app in the browser), enable for release builds by adding the offline configuration. For instance:

    configuration
    offline
    
  • New isOnline() function in mobl to check whether an internet connection is available.

Full list of changes

Note: After upgrading, rebuild your project (Transform > Rebuild project).

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). To use the mobl compiler from the command line follow these instructions. Problems? Ask for support.

1 Comment more...

Version 0.4.0

Version 0.4.0 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.

Key new features

  • The ability to generate an optimized release version of your application. This operation performs a number of optimizations:

    1. Dead code elimination. Any function, screen, control, style or entity that is not used, will not appear in the generated code, i.e. your application only contains the code it actually needs to run.
    2. File concatenation. All Javascript files and CSS files are concatenated into a single .js and .css file.
    3. Javascript minification. UglifyJS is now included to reduce the file size even further.

    This is just the first step in optimization, however. There is still a lot of plain Javascript code that is required as a runtime for any mobl application. We have to see if we can perform further code elimination there as well.

  • $data(path/to/image.png) — this construct takes the content of an image and base64 encodes to a data URL. Essentially this inlines the image, avoiding an additional HTTP request to fetch the image separately. It can be used in any expression, as well as in styles and returns a string with the data URL.
  • Better internationalization support:
    • The mobl::i18n has been removed and is now included in mobl. So, if you used mobl::i18n before, simply remove the import and everything should work as usual.
    • All controls and functions in mobl and mobl::ui::generic now have configurable texts. Either by passing it as an argument, or by defining it as a key in the language .json files fetched using fetchLanguageBundle. For instance: "Back": "Terug" will set the text of all backButtons to “Terug” instead of “Back”.

Other improvements

  • Various bug fixes. Thanks to the community on the bug tracker and mailing list for all the feedback.
  • The mobl Eclipse plug-in now actually has text for the license.
  • New config.mobl configuration: release output "www.release" — the directory to generate optimized output files to.
  • Changes to config.mobl result in a project rebuild when saved.
  • New “mobl project” icon, improved new project wizard.
  • Additional “transform” options:
    1. Release build: performs a optimized release build.
    2. Clean project: removes the project build directories (usually www and www.release).
    3. Rebuild project: cleans the build directory and recompiles all application files in the project.
  • Much improved testing framework (mobl::test) provided by naush, the first external mobl code contribution! Hopefully more will follow. To see how to use it, look at naush’s mobl-spec project, which contains unit tests for many mobl APIs.
  • And more

Note: After upgrading, rebuild your project (Transform > Rebuild project).

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). If the “mobl editor” plug-in does not appear, uncheck the “Group items” checkbox. To use the mobl compiler from the command line follow these instructions. Problems? Ask for support.


Version 0.3.9

Version 0.3.9 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 since 0.3.8:

  • Bug fixes.
  • moved block and span to from mobl::ui::generic to mobl.
  • New selectField control (drop-down select box).
  • onswipe events on item, block and span.
  • New methods: toJSON and selectJSON on entity instances
  • style attributes added to textField, numField, passwordField and emailField
  • link with empty body displays now displays URL in body.
  • whenLoaded control now has style and loadingMessage attributes.
  • Check that all Collection entity properties have an (inverse: ...) annotation
  • New sample application: internationalization | source | demo

Note: After upgrading, remove the www directory in your project and recompile everything.

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). To use the mobl compiler from the command line follow these instructions. Problems? Ask for support.


Version 0.3.8

Version 0.3.8 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 since 0.3.7:

  • Bug fixes
  • Validation support for textField, numField control:

    application test
    import mobl::ui::generic
    function lengthValidator(s : String) : String {
      return s.length < 10 ? "" : "Too long, max 10";
    }
    screen root() {
      var s = "Short string"
      header("Validated")
      group {
        item {
          textField(s, validator=lengthValidator)
        }
        item {
          when(allInputValid) {
            "Everything valid!"
          }
        }
      }
    }
    

    The allInputValid global variable signifies if there are any validation error or not. A validator function should return an empty string when everything is OK, otherwise an error message to display.

Note: After upgrading, remove the www directory in your project and recompile everything.

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). To use the mobl compiler from the command line follow these instructions.


Version 0.3.7

Version 0.3.7 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 since 0.3.6:

  • Bug fixes
  • New crypto library, supporting md5 and sha1
  • New passwordField control, same as textField except that it hides its contents behind ****
  • Configurable screen call animations, every screen now has an additional animate argument in which you can configure the animation effect to the next screen (and back):

    screen bla() {
    }
    screen root() {
      button("Go", onclick={
        bla(animate="slide"); // default
        bla(animate="fade");
        bla(animate="none"); // no animation
      })
    }
    
  • An output configuration in config.mobl to configure the directory to generate all files to:

    configuration
    output "www" // default
    

Note: After upgrading, remove the www directory in your project and recompile everything.

To install, follow these instructions. To upgrade, simply upgrade from the update site (Via Help > Install new software). To use the mobl compiler from the command line follow these instructions.


mobl

Copyright © 2010-2020 mobl. All rights reserved.
iDream theme by Templates Next