Molte ottimizzazioni non le fanno perché il linguaggio è permissivo, e la type inference si può fare solo col beneficio del dubbio.
Esempio pratico:
Sembra triviale da ottimizzare in una struct c (e facciamo finta di sapere per certo che x e y sono interi):
Che succede se io nel codice faccio:
Il linguaggio lo permette, nessuno impedisce di avere un eval che carica del codice che al caricamento della pagina non esisteva nemmeno perché recuperato via ajax, dovresti a quel punto de-ottimizzare la struct e tutti i frammenti di binario eseguibile prodotti dal jit, ricalcolare nuovamente tutto il cucuzzaro.
Gli engine js lo fanno già (deottimizzare se il codice esce dal seminato), ma non rischiano troppo per evitare di dover ricalcolare troppe cose (e laggare dal punto di vista utente).
Esempio pratico:
function Point (x,y) {
this.x = x;
this.y = y;
}
Sembra triviale da ottimizzare in una struct c (e facciamo finta di sapere per certo che x e y sono interi):
typedef struct {
int x;
int y;
} point_t;
Che succede se io nel codice faccio:
var p = new Point(3,4); p.z = 5;
Il linguaggio lo permette, nessuno impedisce di avere un eval che carica del codice che al caricamento della pagina non esisteva nemmeno perché recuperato via ajax, dovresti a quel punto de-ottimizzare la struct e tutti i frammenti di binario eseguibile prodotti dal jit, ricalcolare nuovamente tutto il cucuzzaro.
Gli engine js lo fanno già (deottimizzare se il codice esce dal seminato), ma non rischiano troppo per evitare di dover ricalcolare troppe cose (e laggare dal punto di vista utente).
Young professional woman and busy mom.
Il coraggio degli asiatici
Ad
https://imgur.com/iYd5ZkJ
Cinesi salvano Gatto Selvaggio da sicuro annegamento, altro che musulmani!
Scritto da: altg
>
>
http://en.wikipedia.org/wiki/V8_(JavaScript_engine... 
>
> Compilano, trasformano lo script in assembly e poi lo assemblano ed eseguono.
> E nel tempo lo ottimizzano dinamicamente, pure.
>
> Direi che la differenza tra qualcosa di scritto in ASM o in L.in.oleum si e` ridotta a finire nello stesso ordine di grandezza, oggi. Insomma, direi che oggi il codice JS puo` girare in un browser a un passo che puo` essere di qualche volta piu` lento di una sua versione ASM ottimizzata con coscienza, ma non di interi ordini di grandezza piu` lento.
Non farti fregare dalle buzzword, il just-in-time compiler ottimizza solo alcuni tipi di operazione, gli accessi agli oggetti e agli array in javascript sono difficilmente ottimizzabili perché sostanzialmente tutto è un oggetto ed ha delle property; è una caratteristica del linguaggio che cozza con le ottimizzazioni.
Il grosso vantaggio invece delle virtual machine è che hai la profilazione del codice nel tempo reale di esecuzione, con dati reali, e quello permette di saltare a piè pari rami morti di codice e altro; da questo punto di vista il jit di java 7+ è molto evoluto perché aiutato dagli hint sui tipi che javascript non ha.
asm.js è un subset di javascript che introduce un po' di tipizzazione e permette un guadagno di performance su quel tipo di codice che è sostanzialmente movimentazione di primitivi e array di primitivi che possono essere assimilati a veri array.
Il tipo di codice che serve ad asm.js per entrare in gioco è difficilmente scritto a mano, solitamente è il prodotto di una elaborazione di altro, nel caso che ho portato io è emscripten, che porta il codice c++ in asm.js.
Un altro fattore decisivo per le performances di questo tipo di programmi è webgl, che oggi è implementato nei browser ed è un wrapper molto semplice di chiamate alle api native delle schede video.
>
>

>
> Compilano, trasformano lo script in assembly e poi lo assemblano ed eseguono.
> E nel tempo lo ottimizzano dinamicamente, pure.
>
> Direi che la differenza tra qualcosa di scritto in ASM o in L.in.oleum si e` ridotta a finire nello stesso ordine di grandezza, oggi. Insomma, direi che oggi il codice JS puo` girare in un browser a un passo che puo` essere di qualche volta piu` lento di una sua versione ASM ottimizzata con coscienza, ma non di interi ordini di grandezza piu` lento.
Non farti fregare dalle buzzword, il just-in-time compiler ottimizza solo alcuni tipi di operazione, gli accessi agli oggetti e agli array in javascript sono difficilmente ottimizzabili perché sostanzialmente tutto è un oggetto ed ha delle property; è una caratteristica del linguaggio che cozza con le ottimizzazioni.
Il grosso vantaggio invece delle virtual machine è che hai la profilazione del codice nel tempo reale di esecuzione, con dati reali, e quello permette di saltare a piè pari rami morti di codice e altro; da questo punto di vista il jit di java 7+ è molto evoluto perché aiutato dagli hint sui tipi che javascript non ha.
asm.js è un subset di javascript che introduce un po' di tipizzazione e permette un guadagno di performance su quel tipo di codice che è sostanzialmente movimentazione di primitivi e array di primitivi che possono essere assimilati a veri array.
Il tipo di codice che serve ad asm.js per entrare in gioco è difficilmente scritto a mano, solitamente è il prodotto di una elaborazione di altro, nel caso che ho portato io è emscripten, che porta il codice c++ in asm.js.
Un altro fattore decisivo per le performances di questo tipo di programmi è webgl, che oggi è implementato nei browser ed è un wrapper molto semplice di chiamate alle api native delle schede video.
Young professional woman and busy mom.
Scritto da: altg
>
> Cioe` vorresti paragonare la resa grafica di Cydonia con quell'affare li` dove le pareti sono poster piatti da tardi anni '90 e che ci ha messo una decina di minuti per caricare tutto?
>
> Cydonia non e` in tempo reale, ma ha poco da invidiare a un raytracer, non so se hai notato...
>
> **Modificato dall'autore il 25.02.2014 00:13**
Ma non fa pum pum.
>
> Cioe` vorresti paragonare la resa grafica di Cydonia con quell'affare li` dove le pareti sono poster piatti da tardi anni '90 e che ci ha messo una decina di minuti per caricare tutto?

>
> Cydonia non e` in tempo reale, ma ha poco da invidiare a un raytracer, non so se hai notato...
>
> **Modificato dall'autore il 25.02.2014 00:13**
Ma non fa pum pum.
Young professional woman and busy mom.
Scritto da:
>
> È tutto l'insieme: il vialetto, l'arco, i lampioni... tutto sa di transizione verso l'aldilà e l'atmosfera generale suggerisce proprio questi pensieri. Mi ricorda l'ambientazione di un rebus, e infatti trovavo cimiteriali anche i rebus.
>
> Comunque complimenti per il fatto di riuscire a creare un motore di rendering in Javascript, anche se non in tempo reale. È una dimostrazione della qualità del software della PisanoSoft. Ah no come si chiamava? Sweet Pixel?
Certo non sarà come questo: http://www.quakejs.com/
>
> È tutto l'insieme: il vialetto, l'arco, i lampioni... tutto sa di transizione verso l'aldilà e l'atmosfera generale suggerisce proprio questi pensieri. Mi ricorda l'ambientazione di un rebus, e infatti trovavo cimiteriali anche i rebus.
>
> Comunque complimenti per il fatto di riuscire a creare un motore di rendering in Javascript, anche se non in tempo reale. È una dimostrazione della qualità del software della PisanoSoft. Ah no come si chiamava? Sweet Pixel?
Certo non sarà come questo: http://www.quakejs.com/

Young professional woman and busy mom.
$ mysql -u root Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 6 Server version: 5.5.35-MariaDB-log MariaDB Server Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> CREATE DATABASE testdb; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> USE testdb; Database changed MariaDB [testdb]> CREATE TABLE TBL1 (id INT(1) PRIMARY KEY) ENGINE=InnoDB DEFAULT CHARSET=utf8; Query OK, 0 rows affected (0.01 sec) MariaDB [testdb]> CREATE TABLE TBL2 (id2 INT(1) REFERENCES TBL1 (id)) ENGINE=InnoDB DEFAULT CHARSET=utf8; Query OK, 0 rows affected (0.01 sec) MariaDB [testdb]> INSERT INTO TBL2 VALUES (1); Query OK, 1 row affected (0.00 sec) MariaDB [testdb]> DROP TABLE TBL1; Query OK, 0 rows affected (0.00 sec) MariaDB [testdb]> DROP TABLE TBL2; Query OK, 0 rows affected (0.00 sec) MariaDB [testdb]> DROP DATABASE testdb; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> Bye
wat? che mi sono perso? perché non controlla le foreign key?
Installazione di default di mariadb 5.5, sia su windows che su archlinux.
Young professional woman and busy mom.
Vieni anche tu a scuola in Svezia!
Ad
https://www.breitbart.com/europe/2019/01/11/swedish-journalist-teachers-have-given-up-rising-school-violence/
Qui accettiamo qualunque tipo di animale! Non facciamo discriminazioni noi! Mica siamo razzisti!!!
Young professional woman and busy mom.
Richieste Forum
Scritto da: Giambo
>
>
> Su Linux Mint rulez ! si vede divesamente che nel tuo screenshot:
>

> I dati dell'utente sono sotto l'avatar, non alla sua sinistra. O forse e' perche' non uso il layout "largo" ?
Sì, è il layout largo che lo sposta.
>
>
> Su Linux Mint rulez ! si vede divesamente che nel tuo screenshot:
>

> I dati dell'utente sono sotto l'avatar, non alla sua sinistra. O forse e' perche' non uso il layout "largo" ?
Sì, è il layout largo che lo sposta.
Young professional woman and busy mom.
Richieste Forum
Scritto da:
>
> Postate qualche blattshot per chi è troppo pigro per loggarsi e capire di cosa state parlando.

>
> Postate qualche blattshot per chi è troppo pigro per loggarsi e capire di cosa state parlando.


Young professional woman and busy mom.
Richieste Forum
Scritto da: Giambo
> Chiedo ufficialmente all'ometto irsuto di applicare il tema "Flat" come tema standard !
>
> E' troppo belliffimo
e io credo di amarti !
E sono due, ho bisogno di un minimo di accettazione da parte degli altri.
Also ci sono alcuni bug sul tema da fixare.
> Chiedo ufficialmente all'ometto irsuto di applicare il tema "Flat" come tema standard !
>
> E' troppo belliffimo
e io credo di amarti !E sono due, ho bisogno di un minimo di accettazione da parte degli altri.
Also ci sono alcuni bug sul tema da fixare.
Young professional woman and busy mom.
Vieni anche tu a scuola in Svezia!
Ad
https://www.breitbart.com/europe/2019/01/11/swedish-journalist-teachers-have-given-up-rising-school-violence/
Qui accettiamo qualunque tipo di animale! Non facciamo discriminazioni noi! Mica siamo razzisti!!!
Scritto da:
>
> !important
>
> Prima o poi dovrò reimparare CSS.
Gli userstyles hanno una priorità più bassa rispetto agli stili di pagina, !important vince sulle altre priorità. L'ideale è non usarlo mai in pagina, mentre per gli userstyles lo usi solo se l'elemento che vuoi stilare ha uno stile già definito con un selettore che vince sul proprio selettore.
>
> !important

>
> Prima o poi dovrò reimparare CSS.
Gli userstyles hanno una priorità più bassa rispetto agli stili di pagina, !important vince sulle altre priorità. L'ideale è non usarlo mai in pagina, mentre per gli userstyles lo usi solo se l'elemento che vuoi stilare ha uno stile già definito con un selettore che vince sul proprio selettore.
Young professional woman and busy mom.
Non fate caso a questo post.
@namespace url(http://www.w3.org/1999/xhtml);
@-moz-document domain("forumdeitroll.com") {
/* nascondi i quotes */
.quoteLvl1,
.quoteLvl1 + br,
.quoteLvl2,
.quoteLvl2 + br,
.quoteLvl3,
.quoteLvl3 + br,
.quoteLvl4,
.quoteLvl4 + br,
.quote-container,
.quote-container + br
{
visibility: collapse !important;
display: none !important;
}
}
@namespace url(http://www.w3.org/1999/xhtml);
@-moz-document domain("forumdeitroll.com") {
.message, .msgInfo *, a, .threadBox {
font-family: Helvetica !important;
}
.message,.threadBox,.pager {
font-size: 10pt !important;
}
div#nav>ul>li>a,.msgVisible>span>b>a {
font-size: 9pt !important;
}
.messagesBoxInvisible {
margin: 4px 5px !important;
}
}
Young professional woman and busy mom.
Scritto da:
> potresti aprire un nuovo forum per una volta
>
> l'angolo dell'inoccupato
>
> dove posto regolarmente la mia cronostoria sulla ricerca del lavoro
puoi taggare i tuoi post con un tag a tua scelta e poi quando clicchi sul tag vengono fuori tutti
> potresti aprire un nuovo forum per una volta
>
> l'angolo dell'inoccupato
>
> dove posto regolarmente la mia cronostoria sulla ricerca del lavoro

puoi taggare i tuoi post con un tag a tua scelta e poi quando clicchi sul tag vengono fuori tutti
Young professional woman and busy mom.
Scritto da: Seu
>
> Farla arrivare dall'ammeriga è un delirio, dovrei trovarne una dalla germania ma è impresa ardua, sono praticamente auto rare
>
> Pensavo che prima o poi ripiegheró su una vw karmann ghia del 73 (visto che la lincon zephyr del 39 è offlimits)
S'io potessi una tvr typhoon non me la toglierebbe nessuno
>
> Farla arrivare dall'ammeriga è un delirio, dovrei trovarne una dalla germania ma è impresa ardua, sono praticamente auto rare

>
> Pensavo che prima o poi ripiegheró su una vw karmann ghia del 73 (visto che la lincon zephyr del 39 è offlimits)

S'io potessi una tvr typhoon non me la toglierebbe nessuno
Young professional woman and busy mom.
Scritto da:
>
> Ma adesso c'è un fottio di nuove estensioni.
un .com è per sempre
-- de beers
>
> Ma adesso c'è un fottio di nuove estensioni.
un .com è per sempre
-- de beers
Young professional woman and busy mom.
NON DIRMELO SE LO SAI MA SE NON LO SAI SAPPILO
Ad
http://sallo.it
LO SAI? Allora NON fa per te. NON LO SAI? Allora non ti serve.
Young professional woman and busy mom.
Scritto da:
> che ha modificato il title in "forum della lista nera"
>
>
> che ha modificato il title in "forum della lista nera"

>
>

Young professional woman and busy mom.
Si chiama Flat, lo trovate nelle opzioni utente, appare meglio se abbinato allo stile largo.
Young professional woman and busy mom.
