���٤�Perl�����ǤϤ���ޤ���

Perl

�����ǤϤʤ�....


PHP

���ï�����䤬PHP������äƸ��äƤ�Τ�:)....


Python

��...


Ruby

��...


Scheme (gauche)

��...


JavaScript (SpiderMonkey)

�����ǤϤʤ�....


Perl6 (rakudo)

�ޤ�(�������٤�����)��


�Ȥ���

API��URI��

http://api.dan.co.jp/lleval.cgi?c=callback&s=source

�Ȥʤ�ޤ����ɤθ��줫��l=language������Ф����Ȥ����ʤ����#!��Ȥ��ޤ���

http://api.dan.co.jp/lleval.cgi?q=1

�ǡ�����Υꥹ�Ȥ���ޤ���

askLanguages = function(dst){
    if (! this['JSONP']) JSONP = {};
    JSONP['q'] = function(json){
        dst.innerHTML = '';
        dst.appendChild(json2table(json));
    };
    (function(d, uri){
        var s = d.createElement('script');
        s.charset = 'UTF-8';
        s.src = uri + '&q=1';
        s.id = s.src;
        d.body.appendChild(s);
    })(document, 'http://api.dan.co.jp/lleval.cgi?c=JSONP.q');
};

�����ǻȤäƤ���JS¦�Ϥ���ʤǤ���

runJSON = function(name, func, src, ll){
    if (! this['JSONP']) JSONP = {};
    JSONP[name] = func;
    (function(d, uri){
        var s = d.createElement('script');
        s.charset = 'UTF-8';
        s.src = uri + '&s=' + encodeURIComponent(src);
        if (ll) s.src += '&l=' + encodeURIComponent(ll)
        s.id = s.src;
        d.body.appendChild(s);
    })(document, 'http://api.dan.co.jp/lleval.cgi?c=JSONP.' + name, src, ll);
};
LLEval = function(src, dst, ll){
    var d = document;
    runJSON(ll || 'll', function(json){
        dst.innerHTML = '';
        dst.appendChild(json2table(json));
    }, src.value, ll);
};

��API

����ˤȤ�ʤ���

�ǾҲ𤷤���API���ѻߤȤ����Ƥ��������ޤ����������餺��

̵�ݾ�

�Ǥ��������ѹ��������ӥ�����ߡ��ѻߤʤɡ���ζ��軰���ȿ����Ƥ���������

Enjoy!

Dan the LL Monger

����¾JS

var appendText = (function(){
    var d = document;
    if (1 /*@cc_on -1@*/){
        return function(n, t){ n.appendChild(d.createTextNode(t)) };
    }else{
        return function(n, t){ n.innerText = t };
    }
})();
json2table = function(json){
    var keys = [];
    for (var k in json) keys[keys.length] = k;
    keys.sort();
    var d = document;
    var tbody = d.createElement('tbody');
    for (var i = 0, l = keys.length; i < l; i++){
        var k = keys[i]; var v = json[k];
        var tr = d.createElement('tr');
        tr.style.verticalAlign = 'top';
        var th = d.createElement('th');
        th.style.textAlign = 'right';
        appendText(th, k);
        tr.appendChild(th);
        var td = d.createElement('td');
        appendText(td, v);
        if (keys[i].match(/^std/)){
            td.style.fontFamily = 'monospace';
            td.style.whiteSpace = 'pre';
        }
        tr.appendChild(td);
        tbody.appendChild(tr);
    }
    var table = d.createElement('table');
    table.appendChild(tbody);
    return table;
};