abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:22 | Komunita

    Společnost Valve sponzoruje a společnost Collabora portuje RADV (open source Vulkan ovladač pro AMD GPU z projektu Mesa) na Windows.

    Ladislav Hagara | Komentářů: 0
    včera 20:44 | Zajímavý projekt

    Starling (GitHub) je desktopové prostředí vytvořeno umělou inteligencí (s dohledem jednoho vývojáře během šesti měsíců).

    Ladislav Hagara | Komentářů: 15
    včera 14:22 | IT novinky

    Dne 30. června 2026 byla završena fyzická realizace projektu Czech National Quantum Communication Infrastructure (CZQCI), tedy České národní kvantové komunikační infrastruktury. Projekt byl realizován od 1. března 2023 a financován z Národního plánu obnovy částkou 121,6 milionu Kč. Cílem podpořeného projektu bylo vybudovat základy národní kvantové komunikační infrastruktury a ověřit možnosti jejího praktického využití. Mezi

    … více »
    Ladislav Hagara | Komentářů: 3
    včera 14:11 | IT novinky

    Město Šumperk se stalo terčem kybernetického útoku, chod úřadu je omezen. Zjišťuje se, jestli unikla nějaká data. Cílem hackerů byla městská datová síť. První útoky zaznamenali odborníci na informační technologie již v pondělí večer, závady se ale plně projevily až dnes ráno. Město událost nahlásilo Národnímu úřadu pro kybernetickou a informační bezpečnost (NUKIB).

    Ladislav Hagara | Komentářů: 1
    včera 13:55 | Bezpečnostní upozornění

    Samba, svobodná implementace síťového protokolu SMB/CIFS, byla vydána ve verzích 4.24.5, 4.23.10 a 4.22.11. Řešeno je 6 zranitelností.

    Ladislav Hagara | Komentářů: 0
    27.7. 23:44 | IT novinky

    Přední technologické společnosti (Adobe, Cadence, Capital One, Cisco, Cloudera, Cloudflare, Cognition, CrowdStrike, Databricks, Dell Technologies, DoorDash, Elastic, HPE, Hugging Face, IBM, LangChain, Linux Foundation, Microsoft, NAVER, NetApp, Nous Research, NVIDIA, OpenClaw, Palantir, Palo Alto Networks, Red Hat, Reflection AI, Salesforce, SAP, ServiceNow, Siemens, SK Telecom, Snowflake, SpacexAI, Synopsys, Thinking

    … více »
    Ladislav Hagara | Komentářů: 5
    27.7. 18:11 | Zajímavý projekt

    Krabix.cz je online 3D konfigurátor krabiček pro 3D tisk s exportem do STL. Běží přímo v prohlížeči. Nic se neposílá na server.

    Ladislav Hagara | Komentářů: 7
    27.7. 17:00 | Komunita

    Nadace Open Home Foundation spustila veřejnou preview verzi komunitní databáze zařízení pro Home Assistant. Má fungovat jako „Wikipedie pro chytrá zařízení".

    Ladislav Hagara | Komentářů: 0
    27.7. 15:22 | Komunita

    Na stránce nového panelu Firefoxu přibudou nové widgety. Například denně aktualizována interaktivní křížovka.

    Ladislav Hagara | Komentářů: 0
    27.7. 14:11 | Zajímavý projekt

    PGSimCity (GitHub) je webová 3D vizualizace vnitřního fungování databázového systému PostgreSQL v podobě města. Vytvořena pomocí umělé inteligence.

    Ladislav Hagara | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (18%)
     (30%)
     (5%)
     (6%)
     (2%)
     (15%)
     (23%)
    Celkem 2275 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Google přibližuje světu jazyk Dart

    Google světu ukázal jazyk Dart, jehož účelem je nahradit JavaScript ve webových aplikacích. Veškeré informace a ukázky najdete na dartlang.org. Jazyk se dost podobá Javě, ale zachovává některé rysy JavaScriptu.

    10.10.2011 13:14 | Luboš Doležel (Doli) | Zajímavý projekt


    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Saljack avatar 10.10.2011 13:24 Saljack | skóre: 28 | blog: Saljack | Praha
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Execute Dart code directly in a VM on the server side?
    Sex, Drugs & Rock´n Roll.
    Rezza avatar 10.10.2011 13:52 Rezza | skóre: 25 | blog: rezza | Brno
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Kolikaty je to jazyk od Google? :)))
    10.10.2011 14:02 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    tento pocin vitam daleko vic nez treba go, protoze resi konkretni problem... a to, ze javascript je jedno velke programatorske peklo a pokud se ho podari nahradit necim civilizovanejsim, mozna se bude dat rozumne programovat i na strane klienta... ale hodne zalezi na tom, jak se bude jazyk a jeho podpora dal vyvijet.
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    10.10.2011 14:11 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    +1, aby se dal JavaScript rozumně použít, musí se hrozně znásilňovat. Viz jQuery... Ne, že by to nefungovalo, ale je to takové, no, je na tom vidět, že ten jazyk na to není stavěný.
    10.10.2011 14:33 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Rozšiřitelnost není znásilňování. JavaScript je šílený jazyk, ale má pár skvělých vlastností: událostní smyčku, funkce jako hodnoty (first-class functions, higher-order functions) a rozšiřitelnou syntaxi.
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    10.10.2011 14:50 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Rozšiřitelnost není znásilňování.

    knihovna od zakladu prekopavajici cely jazyk za ucelem, aby se dal ten jazyk pouzivat k tomu, k cemu byl vubec navrzeny mi prijde opravdu trochu jako zvracenost a znasilneni
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    10.10.2011 14:53 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Jo, a největší prča na tom je, že ta knihovna nemění vůbec nic. Čekal bych, že zrovna ty budeš mít trochu pochopení, v JavaScriptu je pod pár vrstvami špíny a hnusu ukryté Scheme, které by mohly pochopit i masy :-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    10.10.2011 15:10 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Jo, a největší prča na tom je, že ta knihovna nemění vůbec nic.
    to jo. mimochodem, osobne radsi preferuju dojo, prijde mi takove nejake civilizovanejsi.
    Čekal bych, že zrovna ty budeš mít trochu pochopení, v JavaScriptu je pod pár vrstvami špíny a hnusu ukryté Scheme, které by mohly pochopit i masy :-)
    ano, jedna cast meho ja ocenuje, ze tam je opravdu schovany scheme, a ze JS zpristupnuje funkcionalni zpusob programovani i sirokym masam. ale ta druha cast meho ja, ktera v tom obcas musi neco programovat by autory specifikace i s implementatory vymachala v dehtu a peri a hnala je pres cele silicon valley.
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    10.10.2011 15:08 R
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    A ked sa ta kniznica parsuje pri kazdom nacitani stranky, to je parada...
    10.10.2011 15:09 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    To je věc konkrétní implementace.
    10.10.2011 14:11 polymorf | skóre: 14 | blog: tar_zxpf
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Co konkretne ti na JS vadi?
    Luboš Doležel (Doli) avatar 10.10.2011 14:17 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Z hlediska API je hrozně nízkoúrovňový.
    Bedňa avatar 10.10.2011 14:32 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Tak, tak s čím súvisia aj rozdielne implementácie DOMu.
    KERNEL ULTRAS video channel >>>
    10.10.2011 14:31 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    In love!
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    alblaho avatar 10.10.2011 19:32 alblaho | skóre: 17 | blog: alblog
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Proč? Má to pořádně udělanou kompozici objektů?
    11.10.2011 10:28 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Nemá, pořád je tam dědičnost (jednoduchá, plus možná v budoucnu přibudou traity), ale má to kromě normálních i factory konstruktory, což je zatím to nejlepší řešení konstruktorů, co jsem viděl. A i jinak je to docela hezké, rozhodně mne překvapili… no i když Gilad Bracha a Peter Ahé, ti mne vlastně mohli překvapit jenom příjemně :-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    10.10.2011 14:46 __dark__
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Po fiasku s jazykem Go uvádí google Dart, jakákoliv podobnost s actionscriptem je čistě náhodná, pro jistotu byla změněna i standardní syntax deklarace funkcí, konstruktorů, a přejmenovány některé typy ;-)
    10.10.2011 15:47 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Těší mě možnost statického typování a zároveň doufám, že prohlížeče využijí typovou informaci ke zvýšení rychlosti.
    10.10.2011 20:38 pozortucnak | skóre: 21 | blog: vecny_windowsar
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    To tu nikdo nezná/nepoužívá haxe?

    Jsem mimořádně obtížný případ
    10.10.2011 21:48 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Důležité IMO je, že za Dartem stojí Google a bude mít podporu přímo v Chrome.
    10.10.2011 22:14 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Jazyk, ze kterého se dá nageneroat JS, PHP a C++? Nic prot, ale to zní dost šíleně :-D
    Saljack avatar 10.10.2011 22:17 Saljack | skóre: 28 | blog: Saljack | Praha
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Proč?
    Sex, Drugs & Rock´n Roll.
    10.10.2011 22:57 Juraj
    Rozbalit Rozbalit vše Pre pythonistov - CoffeeScript
    CoffeeScript - Velmi som v tom este nerobil ale kod sa dobre cita.

    11.10.2011 10:14 Michal Karas | skóre: 45 | blog: /dev/random
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Hello world v Dartu zkompilovaný do JavaScriptu: https://gist.github.com/1277224. :)
    11.10.2011 12:34 polymorf | skóre: 14 | blog: tar_zxpf
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Epic thread :D

    Inak ak ma byt dart->js docasna nahrada za GWT (ktore je tiez humus) pre prehliadace ktore nebudu podporovat dart (vsetky okrem chrome) tak to neni az take zle. Samozrejme pouzivat by som to nechcel, je to proste taka politicky korektnejsia nahrada za alert('Stranka je optimalizovana pre google chrome')
    11.10.2011 12:54 pozortucnak | skóre: 21 | blog: vecny_windowsar
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart

    Hello world v haxe zkompilovaný do JavaScriptu:

    haxe
    import js.Lib;
    class Main 
    {
      static function main() 
      {
        Lib.alert("ahoj světe");
      }
    }
    
    javascript
    $estr = function() { return js.Boot.__string_rec(this,''); }
    Std = function() { }
    Std.__name__ = ["Std"];
    Std["is"] = function(v,t) {
    	$s.push("Std::is");
    	var $spos = $s.length;
    	var $tmp = js.Boot.__instanceof(v,t);
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    Std.string = function(s) {
    	$s.push("Std::string");
    	var $spos = $s.length;
    	var $tmp = js.Boot.__string_rec(s,"");
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    Std["int"] = function(x) {
    	$s.push("Std::int");
    	var $spos = $s.length;
    	if(x < 0) {
    		var $tmp = Math.ceil(x);
    		$s.pop();
    		return $tmp;
    	}
    	var $tmp = Math.floor(x);
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    Std.parseInt = function(x) {
    	$s.push("Std::parseInt");
    	var $spos = $s.length;
    	var v = parseInt(x,10);
    	if(v == 0 && x.charCodeAt(1) == 120) v = parseInt(x);
    	if(isNaN(v)) {
    		$s.pop();
    		return null;
    	}
    	var $tmp = v;
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    Std.parseFloat = function(x) {
    	$s.push("Std::parseFloat");
    	var $spos = $s.length;
    	var $tmp = parseFloat(x);
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    Std.random = function(x) {
    	$s.push("Std::random");
    	var $spos = $s.length;
    	var $tmp = Math.floor(Math.random() * x);
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    Std.prototype.__class__ = Std;
    IntIter = function(min,max) {
    	if( min === $_ ) return;
    	$s.push("IntIter::new");
    	var $spos = $s.length;
    	this.min = min;
    	this.max = max;
    	$s.pop();
    }
    IntIter.__name__ = ["IntIter"];
    IntIter.prototype.min = null;
    IntIter.prototype.max = null;
    IntIter.prototype.hasNext = function() {
    	$s.push("IntIter::hasNext");
    	var $spos = $s.length;
    	var $tmp = this.min < this.max;
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    IntIter.prototype.next = function() {
    	$s.push("IntIter::next");
    	var $spos = $s.length;
    	var $tmp = this.min++;
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    IntIter.prototype.__class__ = IntIter;
    Main = function() { }
    Main.__name__ = ["Main"];
    Main.main = function() {
    	$s.push("Main::main");
    	var $spos = $s.length;
    	js.Lib.alert("ahoj světe");
    	$s.pop();
    }
    Main.prototype.__class__ = Main;
    if(typeof js=='undefined') js = {}
    js.Lib = function() { }
    js.Lib.__name__ = ["js","Lib"];
    js.Lib.isIE = null;
    js.Lib.isOpera = null;
    js.Lib.document = null;
    js.Lib.window = null;
    js.Lib.alert = function(v) {
    	$s.push("js.Lib::alert");
    	var $spos = $s.length;
    	alert(js.Boot.__string_rec(v,""));
    	$s.pop();
    }
    js.Lib.eval = function(code) {
    	$s.push("js.Lib::eval");
    	var $spos = $s.length;
    	var $tmp = eval(code);
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    js.Lib.setErrorHandler = function(f) {
    	$s.push("js.Lib::setErrorHandler");
    	var $spos = $s.length;
    	js.Lib.onerror = f;
    	$s.pop();
    }
    js.Lib.prototype.__class__ = js.Lib;
    js.Boot = function() { }
    js.Boot.__name__ = ["js","Boot"];
    js.Boot.__unhtml = function(s) {
    	$s.push("js.Boot::__unhtml");
    	var $spos = $s.length;
    	var $tmp = s.split("&").join("&").split("<").join("<").split(">").join(">");
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    js.Boot.__trace = function(v,i) {
    	$s.push("js.Boot::__trace");
    	var $spos = $s.length;
    	var msg = i != null?i.fileName + ":" + i.lineNumber + ": ":"";
    	msg += js.Boot.__unhtml(js.Boot.__string_rec(v,"")) + "<br/>";
    	var d = document.getElementById("haxe:trace");
    	if(d == null) alert("No haxe:trace element defined\n" + msg); else d.innerHTML += msg;
    	$s.pop();
    }
    js.Boot.__clear_trace = function() {
    	$s.push("js.Boot::__clear_trace");
    	var $spos = $s.length;
    	var d = document.getElementById("haxe:trace");
    	if(d != null) d.innerHTML = "";
    	$s.pop();
    }
    js.Boot.__closure = function(o,f) {
    	$s.push("js.Boot::__closure");
    	var $spos = $s.length;
    	var m = o[f];
    	if(m == null) {
    		$s.pop();
    		return null;
    	}
    	var f1 = function() {
    		$s.push("js.Boot::__closure@67");
    		var $spos = $s.length;
    		var $tmp = m.apply(o,arguments);
    		$s.pop();
    		return $tmp;
    		$s.pop();
    	};
    	f1.scope = o;
    	f1.method = m;
    	$s.pop();
    	return f1;
    	$s.pop();
    }
    js.Boot.__string_rec = function(o,s) {
    	$s.push("js.Boot::__string_rec");
    	var $spos = $s.length;
    	if(o == null) {
    		$s.pop();
    		return "null";
    	}
    	if(s.length >= 5) {
    		$s.pop();
    		return "<...>";
    	}
    	var t = typeof(o);
    	if(t == "function" && (o.__name__ != null || o.__ename__ != null)) t = "object";
    	switch(t) {
    	case "object":
    		if(o instanceof Array) {
    			if(o.__enum__ != null) {
    				if(o.length == 2) {
    					var $tmp = o[0];
    					$s.pop();
    					return $tmp;
    				}
    				var str = o[0] + "(";
    				s += "\t";
    				var _g1 = 2, _g = o.length;
    				while(_g1 < _g) {
    					var i = _g1++;
    					if(i != 2) str += "," + js.Boot.__string_rec(o[i],s); else str += js.Boot.__string_rec(o[i],s);
    				}
    				var $tmp = str + ")";
    				$s.pop();
    				return $tmp;
    			}
    			var l = o.length;
    			var i;
    			var str = "[";
    			s += "\t";
    			var _g = 0;
    			while(_g < l) {
    				var i1 = _g++;
    				str += (i1 > 0?",":"") + js.Boot.__string_rec(o[i1],s);
    			}
    			str += "]";
    			$s.pop();
    			return str;
    		}
    		var tostr;
    		try {
    			tostr = o.toString;
    		} catch( e ) {
    			$e = [];
    			while($s.length >= $spos) $e.unshift($s.pop());
    			$s.push($e[0]);
    			$s.pop();
    			return "???";
    		}
    		if(tostr != null && tostr != Object.toString) {
    			var s2 = o.toString();
    			if(s2 != "[object Object]") {
    				$s.pop();
    				return s2;
    			}
    		}
    		var k = null;
    		var str = "{\n";
    		s += "\t";
    		var hasp = o.hasOwnProperty != null;
    		for( var k in o ) { ;
    		if(hasp && !o.hasOwnProperty(k)) {
    			continue;
    		}
    		if(k == "prototype" || k == "__class__" || k == "__super__" || k == "__interfaces__") {
    			continue;
    		}
    		if(str.length != 2) str += ", \n";
    		str += s + k + " : " + js.Boot.__string_rec(o[k],s);
    		}
    		s = s.substring(1);
    		str += "\n" + s + "}";
    		$s.pop();
    		return str;
    	case "function":
    		$s.pop();
    		return "<function>";
    	case "string":
    		$s.pop();
    		return o;
    	default:
    		var $tmp = String(o);
    		$s.pop();
    		return $tmp;
    	}
    	$s.pop();
    }
    js.Boot.__interfLoop = function(cc,cl) {
    	$s.push("js.Boot::__interfLoop");
    	var $spos = $s.length;
    	if(cc == null) {
    		$s.pop();
    		return false;
    	}
    	if(cc == cl) {
    		$s.pop();
    		return true;
    	}
    	var intf = cc.__interfaces__;
    	if(intf != null) {
    		var _g1 = 0, _g = intf.length;
    		while(_g1 < _g) {
    			var i = _g1++;
    			var i1 = intf[i];
    			if(i1 == cl || js.Boot.__interfLoop(i1,cl)) {
    				$s.pop();
    				return true;
    			}
    		}
    	}
    	var $tmp = js.Boot.__interfLoop(cc.__super__,cl);
    	$s.pop();
    	return $tmp;
    	$s.pop();
    }
    js.Boot.__instanceof = function(o,cl) {
    	$s.push("js.Boot::__instanceof");
    	var $spos = $s.length;
    	try {
    		if(o instanceof cl) {
    			if(cl == Array) {
    				var $tmp = o.__enum__ == null;
    				$s.pop();
    				return $tmp;
    			}
    			$s.pop();
    			return true;
    		}
    		if(js.Boot.__interfLoop(o.__class__,cl)) {
    			$s.pop();
    			return true;
    		}
    	} catch( e ) {
    		$e = [];
    		while($s.length >= $spos) $e.unshift($s.pop());
    		$s.push($e[0]);
    		if(cl == null) {
    			$s.pop();
    			return false;
    		}
    	}
    	switch(cl) {
    	case Int:
    		var $tmp = Math.ceil(o%2147483648.0) === o;
    		$s.pop();
    		return $tmp;
    	case Float:
    		var $tmp = typeof(o) == "number";
    		$s.pop();
    		return $tmp;
    	case Bool:
    		var $tmp = o === true || o === false;
    		$s.pop();
    		return $tmp;
    	case String:
    		var $tmp = typeof(o) == "string";
    		$s.pop();
    		return $tmp;
    	case Dynamic:
    		$s.pop();
    		return true;
    	default:
    		if(o == null) {
    			$s.pop();
    			return false;
    		}
    		var $tmp = o.__enum__ == cl || cl == Class && o.__name__ != null || cl == Enum && o.__ename__ != null;
    		$s.pop();
    		return $tmp;
    	}
    	$s.pop();
    }
    js.Boot.__init = function() {
    	$s.push("js.Boot::__init");
    	var $spos = $s.length;
    	js.Lib.isIE = typeof document!='undefined' && document.all != null && typeof window!='undefined' && window.opera == null;
    	js.Lib.isOpera = typeof window!='undefined' && window.opera != null;
    	Array.prototype.copy = Array.prototype.slice;
    	Array.prototype.insert = function(i,x) {
    		$s.push("js.Boot::__init@205");
    		var $spos = $s.length;
    		this.splice(i,0,x);
    		$s.pop();
    	};
    	Array.prototype.remove = Array.prototype.indexOf?function(obj) {
    		$s.push("js.Boot::__init@208");
    		var $spos = $s.length;
    		var idx = this.indexOf(obj);
    		if(idx == -1) {
    			$s.pop();
    			return false;
    		}
    		this.splice(idx,1);
    		$s.pop();
    		return true;
    		$s.pop();
    	}:function(obj) {
    		$s.push("js.Boot::__init@213");
    		var $spos = $s.length;
    		var i = 0;
    		var l = this.length;
    		while(i < l) {
    			if(this[i] == obj) {
    				this.splice(i,1);
    				$s.pop();
    				return true;
    			}
    			i++;
    		}
    		$s.pop();
    		return false;
    		$s.pop();
    	};
    	Array.prototype.iterator = function() {
    		$s.push("js.Boot::__init@225");
    		var $spos = $s.length;
    		var $tmp = { cur : 0, arr : this, hasNext : function() {
    			$s.push("js.Boot::__init@225@229");
    			var $spos = $s.length;
    			var $tmp = this.cur < this.arr.length;
    			$s.pop();
    			return $tmp;
    			$s.pop();
    		}, next : function() {
    			$s.push("js.Boot::__init@225@232");
    			var $spos = $s.length;
    			var $tmp = this.arr[this.cur++];
    			$s.pop();
    			return $tmp;
    			$s.pop();
    		}};
    		$s.pop();
    		return $tmp;
    		$s.pop();
    	};
    	if(String.prototype.cca == null) String.prototype.cca = String.prototype.charCodeAt;
    	String.prototype.charCodeAt = function(i) {
    		$s.push("js.Boot::__init@239");
    		var $spos = $s.length;
    		var x = this.cca(i);
    		if(x != x) {
    			$s.pop();
    			return null;
    		}
    		$s.pop();
    		return x;
    		$s.pop();
    	};
    	var oldsub = String.prototype.substr;
    	String.prototype.substr = function(pos,len) {
    		$s.push("js.Boot::__init@246");
    		var $spos = $s.length;
    		if(pos != null && pos != 0 && len != null && len < 0) {
    			$s.pop();
    			return "";
    		}
    		if(len == null) len = this.length;
    		if(pos < 0) {
    			pos = this.length + pos;
    			if(pos < 0) pos = 0;
    		} else if(len < 0) len = this.length + len - pos;
    		var $tmp = oldsub.apply(this,[pos,len]);
    		$s.pop();
    		return $tmp;
    		$s.pop();
    	};
    	$closure = js.Boot.__closure;
    	$s.pop();
    }
    js.Boot.prototype.__class__ = js.Boot;
    $_ = {}
    js.Boot.__res = {}
    $s = [];
    $e = [];
    js.Boot.__init();
    {
    	String.prototype.__class__ = String;
    	String.__name__ = ["String"];
    	Array.prototype.__class__ = Array;
    	Array.__name__ = ["Array"];
    	Int = { __name__ : ["Int"]};
    	Dynamic = { __name__ : ["Dynamic"]};
    	Float = Number;
    	Float.__name__ = ["Float"];
    	Bool = { __ename__ : ["Bool"]};
    	Class = { __name__ : ["Class"]};
    	Enum = { };
    	Void = { __ename__ : ["Void"]};
    }
    {
    	Math.__name__ = ["Math"];
    	Math.NaN = Number["NaN"];
    	Math.NEGATIVE_INFINITY = Number["NEGATIVE_INFINITY"];
    	Math.POSITIVE_INFINITY = Number["POSITIVE_INFINITY"];
    	Math.isFinite = function(i) {
    		$s.push("js.Boot::__init");
    		var $spos = $s.length;
    		var $tmp = isFinite(i);
    		$s.pop();
    		return $tmp;
    		$s.pop();
    	};
    	Math.isNaN = function(i) {
    		$s.push("js.Boot::__init");
    		var $spos = $s.length;
    		var $tmp = isNaN(i);
    		$s.pop();
    		return $tmp;
    		$s.pop();
    	};
    }
    {
    	js.Lib.document = document;
    	js.Lib.window = window;
    	onerror = function(msg,url,line) {
    		var stack = $s.copy();
    		var f = js.Lib.onerror;
    		$s.splice(0,$s.length);
    		if( f == null ) {
    			var i = stack.length;
    			var s = "";
    			while( --i >= 0 )
    				s += "Called from "+stack[i]+"\n";
    			alert(msg+"\n\n"+s);
    			return false;
    		}
    		return f(msg,stack);
    	}
    }
    js.Lib.onerror = null;
    Main.main()
    Jsem mimořádně obtížný případ
    11.10.2011 12:59 Wizard
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Ono když to převáděl do JS tak tam zahrnul všechny knihovny. Samozřejmě že kdyby si nastavil správné parametry tak mu to vygeneruje daleko jednoduší kód. Nehledě toho že to do budoucna budou více toto řešení optimalizovat a vylepšovat.
    11.10.2011 17:01 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    12.10.2011 13:47 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Google přibližuje světu jazyk Dart
    Přiložím další polínko.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.

    Založit nové vláknoNahoru


    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.