Guys we thought of going towards nashorn is mainly for peromence, Can we do
a simple performance comparison with node/php/jsp/nashorn.

Regards,
/Nuwan


On Fri, Jan 24, 2014 at 1:37 PM, Buddhi Mihara <[email protected]> wrote:

> hi all,
>
> today we had a review on the jaggery2 process.
>
> jaggery 2 can be accessed via command line using ./jjs command
> here is the summary what we have implemented so far
>
>    1.) we registered a global object to nashorn global called
> 'jaggery'.this obj
>         takecare all the house keeping stuff of jaggery2.
>         you can call this object from command line just using 'var jaggery
> = jaggery'
>
>         these are the properties implemented in jaggery obj
>             * version                 - - jaggery version(return 'jaggery
> 2.0')
>             * moduleLoadList     - - module loaded to the jaggery
>             * arch                     - - platform architecture jaggery
> running on
>             * platform
>             * argv                     - - conatain all the argument pass
> to jaggery
>             * cwd                      - - current working dir
>
>              there is a special function in jaggery object call
> 'bind'.access via
>              var foo = jag.bind(param);
>
>              at the moment user can supply two parameters, 'natives' and
> 'contextify'
>              bind function make a glue between java and js
>
>              *a parameter to bind*
>
>              1. 'natives'
>                      to get script object which contain all the core
> module content to
>                      the js environment
>                         eg: var natives = jag.bind('natives');
>                               var path = natives.path;
>
>                2. 'contextify'
>                      script object contain three methods
>                           * isContext(not implemented)
>                           * makeContext
>                           * contextifyScript
>
>      2.) jaggery.js file implemented the core module loading system.
>
>      3.) user defined module will load to jaggery via module.js
> file.'module' is a core
>           module which is require by jaggery.js file when jaggery2 star.
>           inside user js file user can require a module using following
> syntax
>                     * var foo =  require('foo') ,
>                        var foo = require('./foo')
>                        var foo = require('../foo');
>                        var foo = require('/home/buddhi/jaggery/foo ');
>            this foo can be a core module,js file or folder as a
> module.user can require
>            js file by ommiting file extension(or user can mention
> extension as well)
>
>            if module is a folder as a module jaggery2 tries to read
> package.json
>            inside that module foler.if no package.json then reads
> index.js(using .jag
>            extension is not implemented yet)
>
>            all of above algorithms were written.but still we tested first
> scenario(if
>            module is a core module)
>
>            user must use keyword 'exports' to expose properties of one js
> file to
>            outside world
>                      eg: in foo.js file --- >exports.name = 'buddhi';
>                            then in bar.js file if bar.js file require
> foo.js
>                            var foo = require('foo');
>                            print(foo.name);
>
>
>       4.) path.js implemented all path relevant manpilation. only works
> for unix
>            systems(single root systems)
>            functions in path.js
>                 * normalize(path);                 - - normalize a path  
> taking
> care of ../
>                                                                  and ./
> parts of a path string
>                 * join(path1 ,[paths ...])          - - join paths
>                 * resolve(path1, [paths ...])    - - resolve to abs path
>                 * relative(path1, path2)          - - if two path relative
> to each other
>                 * baseName(path)                 - - base name of the path
>                 * dirName(path)                    - - dir name of the path
>                 * extName(path)                   - - extension name of
> the file
>                 * isAbsolute(path)                 - - is absolute path
>                 * getRoot(path)                     - - root dir of the
> path
>
>
> use ant to build project.(Nas/make/build.xml)
>
>
> --
> Thanks & Best Regards,
>
> *Buddhi Nipun Mihara*
> Software Engineer(intern)
> WSO2, Inc.:http://wso2.com
>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 



*Thanks & Regards,Nuwan BandaraTechnical Lead; **WSO2 Inc. *
*lean . enterprise . middleware |  http://wso2.com <http://wso2.com> *

*blog : http://nuwanbando.com <http://nuwanbando.com>; email:
[email protected] <[email protected]>; phone: +1 812 606 7390 *
<http://www.nuwanbando.com/>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to