Programmazione
Scritto da
Non Autenticato
il 2020-02-24 22:17:52.0 alle 2020-02-24 22:17:52.0
Scritto da: Mattia
> Per capire come programmare a oggetti con javascript, partiremo scrivendo un programma "tradizionale" per calcolare area e parimetro di un quadrato e poi lo trasformeremo in un programma a oggetti.
>
>
>
>
> Nonostante le versioni più recenti di javascript supportino la programmazione a oggetti (certo, in una forma alquanto discutibile) molti sviluppatori utilizzano ancora la programmazione procedurale, che in effetti era l'unica forma supportata in origine.
>
> Perché non abituarsi a programmare a oggetti anche con javascript? Vediamo come.
>
>
>
>
>
> ... e se in futuro mi verrà chiesto di aggiungere altre cose, tipo il calcolo della diagonale (o tantissime altre cose che possono venire in mente) le metterò nel prototipo Quadrato.
> Tutte le funzioni di validazione di dati finiranno invece ammucchiate nel prototipo DataValidator, così tutti gli sviluppatori sapranno che troveranno lì dentro tutto quello che serve per validare i dati.
>
> Quindi ogni volta che un programmatore del team, da qualche parte nel software, avrà bisogno di un quadrato, comincierà prima di tutto a creare un quadrato con l'apposito prototipo e poi esplorerà tutti i metodi a disposizione per capire se c'è già quello che gli serve per giungere ai risultati richiesti. Se non c'è ancora, lo aggiunge oppure chiede al team di sviluppatori del Quadrato di aggiungerlo, perché magari solo loro hanno la specializzazione universitaria che serve per lavorare sui quadrati ed è perciò compito loro fare in modo che tutti gli altri sviluppatori hanno tutto quello che serve per lavorare con i quadrati.
>
> In questo modo il Quadrato diventa sempre più maturo, più intelligente, praticamente autocosciente e gli sviluppatori che arriveranno per ultimi, quando il cuore del programma sarà completo, non dovranno più preoccuparsi di inventare la ruota: si potranno preoccupare di modellare il front-end.
>
> Più elegante! Più strutturato! Più moderno! Più progressista!
Sin da quando ho iniziato a vedere Javascript gli oggetti ci sono sempre stati e gli ho sempre usati, però gli oggetti creati dal browser corrispondenti a caratteristiche della pagina. L'uso degli oggetti a livelo generale mi è tuttora arduo come concetto.
Inoltre non ho una buona conoscenza degli oggetti relativi alle pagine web: quando ho un problema cerco una soluzione e uso gli oggetti indicati. È il difetto di una formazione informatica non sistematica ma a macchia di leopardo
> Per capire come programmare a oggetti con javascript, partiremo scrivendo un programma "tradizionale" per calcolare area e parimetro di un quadrato e poi lo trasformeremo in un programma a oggetti.
>
>
function calcolaPerimetroQuadrato(lato){
> ensureQuadratoIsValid(lato);
>
> return lato * 4;
> }
>
> function calcolaAreaQuadrato(lato){
> ensureQuadratoIsValid(lato);
>
> return lato * lato;
> }
>
> function ensureQuadratoIsValid(lato){
> if(!isANumberGreaterThanZero(lato)){
> throw new Error("Il lato di un quadrato deve essere un numero superiore a 0");
> }
> }
>
>
> function isANumberGreaterThanZero(number){
> return !isNaN(number) && number > 0;
> }
>
>
> var lato;
>
> while(!isANumberGreaterThanZero(lato)){
> lato = prompt("Inserisci il lato del quadrato. Deve essere un numero superiore a 0.");
> }
>
> console.log("Il perimetro del quadrato è " + calcolaPerimetroQuadrato(lato));
> console.log("L'area del quadrato è " + calcolaAreaQuadrato(lato));>
>
> Nonostante le versioni più recenti di javascript supportino la programmazione a oggetti (certo, in una forma alquanto discutibile) molti sviluppatori utilizzano ancora la programmazione procedurale, che in effetti era l'unica forma supportata in origine.
>
> Perché non abituarsi a programmare a oggetti anche con javascript? Vediamo come.
>
>
>
function Quadrato(lato){
> var validator = new DataValidator();
> if(!validator.isANumberGreaterThanZero(lato)){
> throw new Error("Il lato di un quadrato deve essere un numero superiore a 0");
> }
>
> this.lato = lato;
>
> this.getPerimetro = function(){
> return this.lato * 4;
> }
>
> this.getArea = function(){
> return this.lato * this.lato;
> }
> }
>
> function DataValidator(){
> this.isANumberGreaterThanZero = function(number){
> return !isNaN(number) && number > 0;
> }
> }
>
>
> var lato;
> var dataValidator = new DataValidator();
>
> while(!dataValidator.isANumberGreaterThanZero(lato)){
> lato = prompt("Inserisci il lato del quadrato. Deve essere un numero superiore a 0.");
> }
>
> var quadrato = new Quadrato(lato);
>
> console.log("Il perimetro del quadrato è " + quadrato.getPerimetro());
> console.log("L'area del quadrato è " + quadrato.getArea());>
>
> ... e se in futuro mi verrà chiesto di aggiungere altre cose, tipo il calcolo della diagonale (o tantissime altre cose che possono venire in mente) le metterò nel prototipo Quadrato.
> Tutte le funzioni di validazione di dati finiranno invece ammucchiate nel prototipo DataValidator, così tutti gli sviluppatori sapranno che troveranno lì dentro tutto quello che serve per validare i dati.
>
> Quindi ogni volta che un programmatore del team, da qualche parte nel software, avrà bisogno di un quadrato, comincierà prima di tutto a creare un quadrato con l'apposito prototipo e poi esplorerà tutti i metodi a disposizione per capire se c'è già quello che gli serve per giungere ai risultati richiesti. Se non c'è ancora, lo aggiunge oppure chiede al team di sviluppatori del Quadrato di aggiungerlo, perché magari solo loro hanno la specializzazione universitaria che serve per lavorare sui quadrati ed è perciò compito loro fare in modo che tutti gli altri sviluppatori hanno tutto quello che serve per lavorare con i quadrati.
>
> In questo modo il Quadrato diventa sempre più maturo, più intelligente, praticamente autocosciente e gli sviluppatori che arriveranno per ultimi, quando il cuore del programma sarà completo, non dovranno più preoccuparsi di inventare la ruota: si potranno preoccupare di modellare il front-end.
>
> Più elegante! Più strutturato! Più moderno! Più progressista!

Sin da quando ho iniziato a vedere Javascript gli oggetti ci sono sempre stati e gli ho sempre usati, però gli oggetti creati dal browser corrispondenti a caratteristiche della pagina. L'uso degli oggetti a livelo generale mi è tuttora arduo come concetto.
Inoltre non ho una buona conoscenza degli oggetti relativi alle pagine web: quando ho un problema cerco una soluzione e uso gli oggetti indicati. È il difetto di una formazione informatica non sistematica ma a macchia di leopardo

France in free fall
Ad
https://sheikyermami.com/2019/01/france-in-free-fall/
Ennesima vittoria liberale in Francia. Clicca qui per saperne di più!
Scritto da
Non Autenticato
il 2020-02-24 22:12:59.0 alle 2020-02-24 22:12:59.0
Scritto da: Ordine
> Scritto da: Mattia
> > Scritto da:
> > > Scritto da:
> > > > Scritto da:
> > > > > Scritto da:
> > > > > > Scritto da: Mattia
> > > > > > > Scritto da:
> > > > > > > > Scritto da:
> > > > > > > > > > > > > https://gisanddata.maps.arcgis.com/apps/opsdashboa...
> > > > > > > > > > > >
> > > > > > > > > > > > Dall'altro giorno i morti sono quasi raddoppiati.
> > > > > > > > > > >
> > > > > > > > > > > 725
> > > > > > > > > >
> > > > > > > > > > La mortalità sembra essere del 20-30%.
> > > > > > > > >
> > > > > > > > > 910
> > > > > > > >
> > > > > > > > 1018
> > > > > > >
> > > > > > > La mortalità si sta abbassando... adesso è al 18%. Dicono che ci si mette tanto a guarire.
> > > > > >
> > > > > > 60,364 contagiati.
> > > > > >
> > > > > > 1,370 morti.
> > > > >
> > > > > 67.178 - 1.527.
> > > >
> > > > 69.287 - 1.670
> > >
> > > 71.902 - 1.775
> >
> > La mortalità è scesa al 13%.
> >
> > Io ho la febbre, chissà se...
>
> Speriamo
E poi chi tiene il fòro?
> Scritto da: Mattia
> > Scritto da:
> > > Scritto da:
> > > > Scritto da:
> > > > > Scritto da:
> > > > > > Scritto da: Mattia
> > > > > > > Scritto da:
> > > > > > > > Scritto da:
> > > > > > > > > > > > > https://gisanddata.maps.arcgis.com/apps/opsdashboa...

> > > > > > > > > > > >
> > > > > > > > > > > > Dall'altro giorno i morti sono quasi raddoppiati.
> > > > > > > > > > >
> > > > > > > > > > > 725
> > > > > > > > > >
> > > > > > > > > > La mortalità sembra essere del 20-30%.
> > > > > > > > >
> > > > > > > > > 910
> > > > > > > >
> > > > > > > > 1018
> > > > > > >
> > > > > > > La mortalità si sta abbassando... adesso è al 18%. Dicono che ci si mette tanto a guarire.
> > > > > >
> > > > > > 60,364 contagiati.
> > > > > >
> > > > > > 1,370 morti.
> > > > >
> > > > > 67.178 - 1.527.
> > > >
> > > > 69.287 - 1.670
> > >
> > > 71.902 - 1.775
> >
> > La mortalità è scesa al 13%.
> >
> > Io ho la febbre, chissà se...
>
> Speriamo
E poi chi tiene il fòro?
Scritto da
Non Autenticato
il 2020-02-24 22:12:20.0 alle 2020-02-24 22:12:20.0
Scritto da: Mattia
> Perchè l'Italia ha il contagio più alto di Europa?
>
> Perché il governo italiano è stato neglicente e quello svizzero lo sarà altrettanto: tutti i giorni in Ticino arriveranno 60'000 frontalieri italiani e così il virus si diffonderà anche in Ticino. Il medico cantonale alla RSI ha già detto che sarebbe una violazione della libertà chiudere le frontiere.
>
> "Talmente liberali da permettere persino ai virus di varcare le frontiere": il mantra è questo.
>
> Contrastare la diffusione di un virus non è facile, questo è chiaro, ma se provvedimenti di buonsenso vengono bocciati perché "è razzismo" o "è contro la libertà" allora sospetti che il vero killer sia il politically correct. A partire dalla Cina che non ha fatto niente per un po' di tempo per non fare brutta figura con il mondo.
I moldavi sostengono che il virus sia stato diffuso dagli americani.
> Perchè l'Italia ha il contagio più alto di Europa?
>
> Perché il governo italiano è stato neglicente e quello svizzero lo sarà altrettanto: tutti i giorni in Ticino arriveranno 60'000 frontalieri italiani e così il virus si diffonderà anche in Ticino. Il medico cantonale alla RSI ha già detto che sarebbe una violazione della libertà chiudere le frontiere.
>
> "Talmente liberali da permettere persino ai virus di varcare le frontiere": il mantra è questo.
>
> Contrastare la diffusione di un virus non è facile, questo è chiaro, ma se provvedimenti di buonsenso vengono bocciati perché "è razzismo" o "è contro la libertà" allora sospetti che il vero killer sia il politically correct. A partire dalla Cina che non ha fatto niente per un po' di tempo per non fare brutta figura con il mondo.
I moldavi sostengono che il virus sia stato diffuso dagli americani.
Politica
Scritto da
Non Autenticato
il 2020-02-24 22:11:08.0 alle 2020-02-24 22:11:08.0
Politica
Scritto da
Non Autenticato
il 2020-02-24 17:06:29.0 alle 2020-02-24 17:06:29.0
Vieni anche tu a fare autostop in merio oriente!!!
Ad
https://imgoat.com/uploads/cdd60ea004/183004.png
Non lasciarti scappare questa occasione più unica che rara di conoscere nuove culture e la gentilezza dei taxisti che provano a stuprarti ma a metà opera se ne pentono e ti lasciano in mezzo ad un bosco!
Politica
Il mio commento...
E allora il PD? Parlaci di Bibbiano!!!
**Modificato dall'autore il 24.02.2020 20:11**
Perchè l'Italia ha il contagio più alto di Europa?
Perché il governo italiano è stato neglicente e quello svizzero lo sarà altrettanto: tutti i giorni in Ticino arriveranno 60'000 frontalieri italiani e così il virus si diffonderà anche in Ticino. Il medico cantonale alla RSI ha già detto che sarebbe una violazione della libertà chiudere le frontiere.
"Talmente liberali da permettere persino ai virus di varcare le frontiere": il mantra è questo.
Contrastare la diffusione di un virus non è facile, questo è chiaro, ma se provvedimenti di buonsenso vengono bocciati perché "è razzismo" o "è contro la libertà" allora sospetti che il vero killer sia il politically correct. A partire dalla Cina che non ha fatto niente per un po' di tempo per non fare brutta figura con il mondo.
**Modificato dall'autore il 24.02.2020 02:13**
Perché il governo italiano è stato neglicente e quello svizzero lo sarà altrettanto: tutti i giorni in Ticino arriveranno 60'000 frontalieri italiani e così il virus si diffonderà anche in Ticino. Il medico cantonale alla RSI ha già detto che sarebbe una violazione della libertà chiudere le frontiere.
"Talmente liberali da permettere persino ai virus di varcare le frontiere": il mantra è questo.
Contrastare la diffusione di un virus non è facile, questo è chiaro, ma se provvedimenti di buonsenso vengono bocciati perché "è razzismo" o "è contro la libertà" allora sospetti che il vero killer sia il politically correct. A partire dalla Cina che non ha fatto niente per un po' di tempo per non fare brutta figura con il mondo.
**Modificato dall'autore il 24.02.2020 02:13**
Scritto da: Mattia
> Scritto da:
> > Scritto da:
> > > Scritto da:
> > > > Scritto da:
> > > > > Scritto da: Mattia
> > > > > > Scritto da:
> > > > > > > Scritto da:
> > > > > > > > > > > > https://gisanddata.maps.arcgis.com/apps/opsdashboa...
> > > > > > > > > > >
> > > > > > > > > > > Dall'altro giorno i morti sono quasi raddoppiati.
> > > > > > > > > >
> > > > > > > > > > 725
> > > > > > > > >
> > > > > > > > > La mortalità sembra essere del 20-30%.
> > > > > > > >
> > > > > > > > 910
> > > > > > >
> > > > > > > 1018
> > > > > >
> > > > > > La mortalità si sta abbassando... adesso è al 18%. Dicono che ci si mette tanto a guarire.
> > > > >
> > > > > 60,364 contagiati.
> > > > >
> > > > > 1,370 morti.
> > > >
> > > > 67.178 - 1.527.
> > >
> > > 69.287 - 1.670
> >
> > 71.902 - 1.775
>
> La mortalità è scesa al 13%.
>
> Io ho la febbre, chissà se...
Speriamo
> Scritto da:
> > Scritto da:
> > > Scritto da:
> > > > Scritto da:
> > > > > Scritto da: Mattia
> > > > > > Scritto da:
> > > > > > > Scritto da:
> > > > > > > > > > > > https://gisanddata.maps.arcgis.com/apps/opsdashboa...

> > > > > > > > > > >
> > > > > > > > > > > Dall'altro giorno i morti sono quasi raddoppiati.
> > > > > > > > > >
> > > > > > > > > > 725
> > > > > > > > >
> > > > > > > > > La mortalità sembra essere del 20-30%.
> > > > > > > >
> > > > > > > > 910
> > > > > > >
> > > > > > > 1018
> > > > > >
> > > > > > La mortalità si sta abbassando... adesso è al 18%. Dicono che ci si mette tanto a guarire.
> > > > >
> > > > > 60,364 contagiati.
> > > > >
> > > > > 1,370 morti.
> > > >
> > > > 67.178 - 1.527.
> > >
> > > 69.287 - 1.670
> >
> > 71.902 - 1.775
>
> La mortalità è scesa al 13%.
>
> Io ho la febbre, chissà se...
Speriamo
"Se tutti facessero così..."
"La Romania è ricchissima" cit. Dada
"La Romania è ricchissima" cit. Dada
Tua madre succhia cazzi all'inferno
Ad
http://www.vatican.va/content/vatican/en.html
Nessuno ci crede per poi affogare nella realtà subito dopo
Come è messa l’Italia rispetto al resto d’Europa? Siamo il Paese con il numero di contagi più robusto. Attualmente la Germania ha registrato 16 casi di infezione, la Francia 12m il Regno Unito 9, la Spagna 2, il Belgio, la Svezia e la Finlandia 1.
Nel mondo va ancora peggio: siamo al quarto posto nella classifica mondiale dei contagiati, a ridosso del terzo occupato dal Giappone
1) Cina 77579
2) Corea del Sud 556
3) Giappone 135
4) Italia 115
5) Singapore 85
6) Hong Kong 70
7) Thailandia 35 P
Praticamente stiamo in Europa ma ai numeri sembriamo un Paese asiatico.
Qual è il problema? Sembra sia stato il blocco dei voli deciso dal ConteCasalino e daSperanza per prendersi le prima pagine dei giornali. È infatti sorprendente che il Paese che ha vantato di aver adottato le misure più stringenti, oggi risulta essere il più colpito. In sostanza: bloccando i voli dalla Cina si è instaurato un meccanismo degli arrivi attraverso voli indiretti, arrivi dunque innumerevoli (da ogni parte del mondo) e incontrollabili in modo approfondito.
coronavirus
CORONAVIRUS
Non puoi pensare di mettere in quarantena ogni essere umano che entra in Italia, né di interrogarlo per capire se è stato in Cina, Dunque i controlli generici sono stati effettuati con il solo ausilio del termoscanner, che rileva solo la febbre, ma abbiamo visto he il contagio può arrivare persino dai portatori sani, senza contare che il virus ha un periodo di incubazione molto lungo.
Gli altri Paesi Ue, lasciando aperto la tratta con la Cina, hanno invece avuto la possibilità di circoscrivere il problema. Nessuno è rientrato in Spagna o in Germania da voli indiretti. E tutti quelli che rientrati dalla Cina sono stati messi direttamente in quarantena. Altro che termoscanner, che non serve a nulla. Se Conte e Speranza avessero lasciato aperto il transito dei voli dalla Cina, oggi anche l’Italia avrebbe avuto un canale unico su cui lavorare
https://www.dagospia.com/rubrica-29/cronache/come-...
Nel mondo va ancora peggio: siamo al quarto posto nella classifica mondiale dei contagiati, a ridosso del terzo occupato dal Giappone
1) Cina 77579
2) Corea del Sud 556
3) Giappone 135
4) Italia 115
5) Singapore 85
6) Hong Kong 70
7) Thailandia 35 P
Praticamente stiamo in Europa ma ai numeri sembriamo un Paese asiatico.
Qual è il problema? Sembra sia stato il blocco dei voli deciso dal ConteCasalino e daSperanza per prendersi le prima pagine dei giornali. È infatti sorprendente che il Paese che ha vantato di aver adottato le misure più stringenti, oggi risulta essere il più colpito. In sostanza: bloccando i voli dalla Cina si è instaurato un meccanismo degli arrivi attraverso voli indiretti, arrivi dunque innumerevoli (da ogni parte del mondo) e incontrollabili in modo approfondito.
coronavirus
CORONAVIRUS
Non puoi pensare di mettere in quarantena ogni essere umano che entra in Italia, né di interrogarlo per capire se è stato in Cina, Dunque i controlli generici sono stati effettuati con il solo ausilio del termoscanner, che rileva solo la febbre, ma abbiamo visto he il contagio può arrivare persino dai portatori sani, senza contare che il virus ha un periodo di incubazione molto lungo.
Gli altri Paesi Ue, lasciando aperto la tratta con la Cina, hanno invece avuto la possibilità di circoscrivere il problema. Nessuno è rientrato in Spagna o in Germania da voli indiretti. E tutti quelli che rientrati dalla Cina sono stati messi direttamente in quarantena. Altro che termoscanner, che non serve a nulla. Se Conte e Speranza avessero lasciato aperto il transito dei voli dalla Cina, oggi anche l’Italia avrebbe avuto un canale unico su cui lavorare
"Se tutti facessero così..."
"La Romania è ricchissima" cit. Dada
"La Romania è ricchissima" cit. Dada
Programmazione
Per capire come programmare a oggetti con javascript, partiremo scrivendo un programma "tradizionale" per calcolare area e parimetro di un quadrato e poi lo trasformeremo in un programma a oggetti.
Nonostante le versioni più recenti di javascript supportino la programmazione a oggetti (certo, in una forma alquanto discutibile) molti sviluppatori utilizzano ancora la programmazione procedurale, che in effetti era l'unica forma supportata in origine.
Perché non abituarsi a programmare a oggetti anche con javascript? Vediamo come.
... e se in futuro mi verrà chiesto di aggiungere altre cose, tipo il calcolo della diagonale (o tantissime altre cose che possono venire in mente) le metterò nel prototipo Quadrato.
Tutte le funzioni di validazione di dati finiranno invece ammucchiate nel prototipo DataValidator, così tutti gli sviluppatori sapranno che troveranno lì dentro tutto quello che serve per validare i dati.
Quindi ogni volta che un programmatore del team, da qualche parte nel software, avrà bisogno di un quadrato, comincierà prima di tutto a creare un quadrato con l'apposito prototipo e poi esplorerà tutti i metodi a disposizione per capire se c'è già quello che gli serve per giungere ai risultati richiesti. Se non c'è ancora, lo aggiunge oppure chiede al team di sviluppatori del Quadrato di aggiungerlo, perché magari solo loro hanno la specializzazione universitaria che serve per lavorare sui quadrati ed è perciò compito loro fare in modo che tutti gli altri sviluppatori hanno tutto quello che serve per lavorare con i quadrati.
In questo modo il Quadrato diventa sempre più maturo, più intelligente, praticamente autocosciente e gli sviluppatori che arriveranno per ultimi, quando il cuore del programma sarà completo, non dovranno più preoccuparsi di inventare la ruota: si potranno preoccupare di modellare il front-end.
Più elegante! Più strutturato! Più moderno! Più progressista!
**Modificato dall'autore il 22.02.2020 20:20**
function calcolaPerimetroQuadrato(lato){
ensureQuadratoIsValid(lato);
return lato * 4;
}
function calcolaAreaQuadrato(lato){
ensureQuadratoIsValid(lato);
return lato * lato;
}
function ensureQuadratoIsValid(lato){
if(!isANumberGreaterThanZero(lato)){
throw new Error("Il lato di un quadrato deve essere un numero superiore a 0");
}
}
function isANumberGreaterThanZero(number){
return !isNaN(number) && number > 0;
}
var lato;
while(!isANumberGreaterThanZero(lato)){
lato = prompt("Inserisci il lato del quadrato. Deve essere un numero superiore a 0.");
}
console.log("Il perimetro del quadrato è " + calcolaPerimetroQuadrato(lato));
console.log("L'area del quadrato è " + calcolaAreaQuadrato(lato));Nonostante le versioni più recenti di javascript supportino la programmazione a oggetti (certo, in una forma alquanto discutibile) molti sviluppatori utilizzano ancora la programmazione procedurale, che in effetti era l'unica forma supportata in origine.
Perché non abituarsi a programmare a oggetti anche con javascript? Vediamo come.
function Quadrato(lato){
var validator = new DataValidator();
if(!validator.isANumberGreaterThanZero(lato)){
throw new Error("Il lato di un quadrato deve essere un numero superiore a 0");
}
this.lato = lato;
this.getPerimetro = function(){
return this.lato * 4;
}
this.getArea = function(){
return this.lato * this.lato;
}
}
function DataValidator(){
this.isANumberGreaterThanZero = function(number){
return !isNaN(number) && number > 0;
}
}
var lato;
var dataValidator = new DataValidator();
while(!dataValidator.isANumberGreaterThanZero(lato)){
lato = prompt("Inserisci il lato del quadrato. Deve essere un numero superiore a 0.");
}
var quadrato = new Quadrato(lato);
console.log("Il perimetro del quadrato è " + quadrato.getPerimetro());
console.log("L'area del quadrato è " + quadrato.getArea());... e se in futuro mi verrà chiesto di aggiungere altre cose, tipo il calcolo della diagonale (o tantissime altre cose che possono venire in mente) le metterò nel prototipo Quadrato.
Tutte le funzioni di validazione di dati finiranno invece ammucchiate nel prototipo DataValidator, così tutti gli sviluppatori sapranno che troveranno lì dentro tutto quello che serve per validare i dati.
Quindi ogni volta che un programmatore del team, da qualche parte nel software, avrà bisogno di un quadrato, comincierà prima di tutto a creare un quadrato con l'apposito prototipo e poi esplorerà tutti i metodi a disposizione per capire se c'è già quello che gli serve per giungere ai risultati richiesti. Se non c'è ancora, lo aggiunge oppure chiede al team di sviluppatori del Quadrato di aggiungerlo, perché magari solo loro hanno la specializzazione universitaria che serve per lavorare sui quadrati ed è perciò compito loro fare in modo che tutti gli altri sviluppatori hanno tutto quello che serve per lavorare con i quadrati.
In questo modo il Quadrato diventa sempre più maturo, più intelligente, praticamente autocosciente e gli sviluppatori che arriveranno per ultimi, quando il cuore del programma sarà completo, non dovranno più preoccuparsi di inventare la ruota: si potranno preoccupare di modellare il front-end.
Più elegante! Più strutturato! Più moderno! Più progressista!

**Modificato dall'autore il 22.02.2020 20:20**
Scritto da:
>
> Così func1 crea una variabile locale a e func2 lo stesso.
No, in realtà quello che fanno le due funzioni è cercare di assegnare un valore a una variabile "a" che già esiste.
Visto che la variabile "a" non viene dichiarata in nessuna delle due funzioni, si può dare per scontato che la variabile "a" sia una variabile globale dichiarata da qualche parte nel codice al di fuori di qualsiasi funzione.
L'altra possibilità è che il programmatore si stia sbagliando, perché la variabile "a" non esiste: se si assume che quello che hai messo sopra è l'intero codice del tuo programma, allora questa seconda opzione è quella corretta.
La variabile "a" non viene MAI dichiarata, quindi è un errore.
Se javascript fosse un linguaggio di programmazione serio, quel programma non partirebbe nemmeno: ti darebbe un errore di interpretazione/compilazione, costringendoti a correggere l'errore.
Siccome però javascript è un linguaggio di merda (come diceva anche Wakko per le stesse ragioni) invece ti perdona l'errore e dietro le quinte te lo corregge.
Questo codice...
...verrà così trasformato dietro le quinte.
"a" è una variabile globale.
Non è bello il fatto che l'interprete ti corregga gli errori?
No, perché:
- Così facendo non impari a scrivere correttamente il codice
- Il codice che viene eseguito nel programma non è quello che hai tu sotto gli occhi
- A volte ti ritrovi a correre dietro a un bug derivante da un errore di scrittura, che si poteva semplicemente evitare se l'interprete ti avesse segnalato l'errore prima dell'esecuzione anziché voler eseguire il programma a tutti i costi
Ora, immagina di metterti a lavorare su un programma di migliaia di righe di codice...
... se tu scrivi il codice che hai messo sopra e nel programma esistesse già una variabile globale "a" le due funzioni che hai messo non farebbero altre che assegnare un nuovo valore a quella variabile, per cui la tua idea che stai creando una nuova variabile locale in ciascuna delle due funzione sarebbe del tutto errata.
Se poi quella variabile globale fosse di importanza cruciale, il tuo codice andrebbe a creare un errore critico nel software.
Quindi il codice corretto è questo qui.
Javascript da questo punto di vista non funziona come PHP, ma come il C.
C
Javascript
Anche in Javascript, come in C, una variabile deve essere prima di tutto dichiarata in maniera esplicita. La differenza è che siccome il C è un linguaggio tipizzato, la dichiarazione ha anche lo scopo di stabilire il tipo della variabile, mentre in javascript no: per questo si usa il generico "var" anziché int/double/float ecc ecc...
> Se chiamo func1 e func2 una dopo l'altra, a funziona indipendentemente in ciascuna di esee. Ma se func2 chiama func1,
>
>
> quello che fa func1 dentro func2 direi che sia cambiare in 3 il valore della variabile a definita da func2, e non definire una propria variabile interna indipendente fa quella di func2.
Lascia perdere tutto sto codice.
Basta questo.
Quando chiami la funzione, l'intrprete si accorgerà che c'è l'errore spiegato sopra, cioè che la variabile "a" non è mai stata dichiarata.
Quindi se tu scrivi questo codice...
... lui dietro le quinte lo trasforma in
"a" è una variabile globale.
Se tu però scrivessi il codice in maniera corretta, l'intrprete non avrebbe bisogno di essere creativo.
Il codice corretto per l'esempio da te fatto.
Come puoi constatare, con una scrittura del codice corretta tutto funziona alla perfezione: la variabile in ciascuna delle due funzioni è e sempre resterà una variabile locale diversa e nessuna funzione potrà interferire con la variabile dell'altra.
Ecco invece come è stato interpretato il tuo codice a causa dell'errore della mancata dichiarazione delle variabili.
Alla chiamata della funzione func2, l'interprete, accorgendosi dell'errore della mancata dichiarazione della variabile a, la dichiara nella memoria globale prima di chiamare la funzione func2. Quindi tutto il tuo codice sarà semplicemente un'assegnazione di valori a questa variabile globale.
Adesso sai perché io e Wakko consideriamo javascript un linguaggio di merda: la sua scarsa severità, nonché il suo prendere personale iniziativa nella correzione di errori formali, porta a bug che sarebbero evitabili.
Certo, anche leggere un libro prima di mettersi a usare un linguaggio comunque previene errori evitabili: mica si può andare a naso con i linguaggi di programmazione, supponendo arbitrariamente che javascript funzioni come PHP.
**Modificato dall'autore il 22.02.2020 17:43**
>
function func1(){
> a=3;
> }
>
> function func2(){
> a=4;
> }> Così func1 crea una variabile locale a e func2 lo stesso.
No, in realtà quello che fanno le due funzioni è cercare di assegnare un valore a una variabile "a" che già esiste.
Visto che la variabile "a" non viene dichiarata in nessuna delle due funzioni, si può dare per scontato che la variabile "a" sia una variabile globale dichiarata da qualche parte nel codice al di fuori di qualsiasi funzione.
L'altra possibilità è che il programmatore si stia sbagliando, perché la variabile "a" non esiste: se si assume che quello che hai messo sopra è l'intero codice del tuo programma, allora questa seconda opzione è quella corretta.
La variabile "a" non viene MAI dichiarata, quindi è un errore.
Se javascript fosse un linguaggio di programmazione serio, quel programma non partirebbe nemmeno: ti darebbe un errore di interpretazione/compilazione, costringendoti a correggere l'errore.
Siccome però javascript è un linguaggio di merda (come diceva anche Wakko per le stesse ragioni) invece ti perdona l'errore e dietro le quinte te lo corregge.
Questo codice...
func1(); func2();
...verrà così trasformato dietro le quinte.
var a; func1(); func2();
"a" è una variabile globale.
Non è bello il fatto che l'interprete ti corregga gli errori?
No, perché:
- Così facendo non impari a scrivere correttamente il codice
- Il codice che viene eseguito nel programma non è quello che hai tu sotto gli occhi
- A volte ti ritrovi a correre dietro a un bug derivante da un errore di scrittura, che si poteva semplicemente evitare se l'interprete ti avesse segnalato l'errore prima dell'esecuzione anziché voler eseguire il programma a tutti i costi
Ora, immagina di metterti a lavorare su un programma di migliaia di righe di codice...
... se tu scrivi il codice che hai messo sopra e nel programma esistesse già una variabile globale "a" le due funzioni che hai messo non farebbero altre che assegnare un nuovo valore a quella variabile, per cui la tua idea che stai creando una nuova variabile locale in ciascuna delle due funzione sarebbe del tutto errata.
Se poi quella variabile globale fosse di importanza cruciale, il tuo codice andrebbe a creare un errore critico nel software.
Quindi il codice corretto è questo qui.
function func1(){
var a=3; //dichiarazione di una variabile locale "a" che nasconde eventuali variabili globali con lo stesso nome
}
function func2(){
var a=4; //dichiarazione di una variabile locale "a" che nasconde eventuali variabili globali con lo stesso nome
}Javascript da questo punto di vista non funziona come PHP, ma come il C.
C
int a; //dichiarazione della variabile a=2; //assegnazione di un valore alla variabile
Javascript
var a; //dichiarazione della variabile a=2; //assegnazione di un valore alla variabile
Anche in Javascript, come in C, una variabile deve essere prima di tutto dichiarata in maniera esplicita. La differenza è che siccome il C è un linguaggio tipizzato, la dichiarazione ha anche lo scopo di stabilire il tipo della variabile, mentre in javascript no: per questo si usa il generico "var" anziché int/double/float ecc ecc...
> Se chiamo func1 e func2 una dopo l'altra, a funziona indipendentemente in ciascuna di esee. Ma se func2 chiama func1,
>
>
function func1(){
> a=3;
> }
>
> function func2(){
> a=4;
> func1();
> }> quello che fa func1 dentro func2 direi che sia cambiare in 3 il valore della variabile a definita da func2, e non definire una propria variabile interna indipendente fa quella di func2.
Lascia perdere tutto sto codice.
Basta questo.
function func1(){
a=3;
}Quando chiami la funzione, l'intrprete si accorgerà che c'è l'errore spiegato sopra, cioè che la variabile "a" non è mai stata dichiarata.
Quindi se tu scrivi questo codice...
func1();
... lui dietro le quinte lo trasforma in
var a; func1();
"a" è una variabile globale.
Se tu però scrivessi il codice in maniera corretta, l'intrprete non avrebbe bisogno di essere creativo.
Il codice corretto per l'esempio da te fatto.
function func1(){
var a=3;
}
function func2(){
var a=4;
func1();
console.log(a);
}
func2(); //stampa 4
console.log(a); //Dà errore: la variabile "a" qui non esiste
Come puoi constatare, con una scrittura del codice corretta tutto funziona alla perfezione: la variabile in ciascuna delle due funzioni è e sempre resterà una variabile locale diversa e nessuna funzione potrà interferire con la variabile dell'altra.
Ecco invece come è stato interpretato il tuo codice a causa dell'errore della mancata dichiarazione delle variabili.
function func1(){
a=3;
}
function func2(){
a=4;
func1();
console.log(a);
}
var a;
func2(); //stampa 3
console.log(a); //stampa 3: la variabile è accessibile anche da qui essendo globale
Alla chiamata della funzione func2, l'interprete, accorgendosi dell'errore della mancata dichiarazione della variabile a, la dichiara nella memoria globale prima di chiamare la funzione func2. Quindi tutto il tuo codice sarà semplicemente un'assegnazione di valori a questa variabile globale.
Adesso sai perché io e Wakko consideriamo javascript un linguaggio di merda: la sua scarsa severità, nonché il suo prendere personale iniziativa nella correzione di errori formali, porta a bug che sarebbero evitabili.
Certo, anche leggere un libro prima di mettersi a usare un linguaggio comunque previene errori evitabili: mica si può andare a naso con i linguaggi di programmazione, supponendo arbitrariamente che javascript funzioni come PHP.
**Modificato dall'autore il 22.02.2020 17:43**
Scritto da
Non Autenticato
il 2020-02-22 00:02:59.0 alle 2020-02-22 00:02:59.0
code]var a=1;
function func1(){
a=3;
}
function func2(){
var a=3; //dichiarazione di una variabile locale che nasconde quella globale
}[/code]
Eccolo qui l'errore: nelle mie funzioni non ho messo var z = perché pensavo, probabilmente da PHP, che var a = 3 e a = 3 in func1 facessero la stessa cosa.
Così func1 crea una variabile locale a e func2 lo stesso. Se chiamo func1 e func2 una dopo l'altra, a funziona indipendentemente in ciascuna di esee. Ma se func2 chiama func1,
quello che fa func1 dentro func2 direi che sia cambiare in 3 il valore della variabile a definita da func2, e non definire una propria variabile interna indipendente fa quella di func2.
Giusto?
> Vediamo poi un'ultima curiosità.
>
>
>
> Se non lo sapevi, sallo: mentre in altri linguaggi ogni blocco di codice ha uno scope separato, in javascript ciò che viene dichiarato dentro un blocco (ciclo, if, ecc ecc...) finisce nella memoria globale.
> Quindi, per evitare di fare confusione, è meglio dichiarare tutte le variabili fuori dai blocchi per poi usarle dentro i blocchi.
>
> L'unico modo per creare uno scope separato in javascript è attraverso le funzioni.
Questo più o meno lo sapevo: alla fine del ciclo k rimane a 19.
function func1(){
a=3;
}
function func2(){
var a=3; //dichiarazione di una variabile locale che nasconde quella globale
}[/code]
Eccolo qui l'errore: nelle mie funzioni non ho messo var z = perché pensavo, probabilmente da PHP, che var a = 3 e a = 3 in func1 facessero la stessa cosa.
function func1(){
a=3;
}
function func2(){
a=4;
}Così func1 crea una variabile locale a e func2 lo stesso. Se chiamo func1 e func2 una dopo l'altra, a funziona indipendentemente in ciascuna di esee. Ma se func2 chiama func1,
function func1(){
a=3;
}
function func2(){
a=4;
func1();
}quello che fa func1 dentro func2 direi che sia cambiare in 3 il valore della variabile a definita da func2, e non definire una propria variabile interna indipendente fa quella di func2.
Giusto?
> Vediamo poi un'ultima curiosità.
>
>
for(var k=0;k<20;k++){
> }
>
> if(true){
> var a=4;
> }
>
> console.log(k);
> console.log(a);>
> Se non lo sapevi, sallo: mentre in altri linguaggi ogni blocco di codice ha uno scope separato, in javascript ciò che viene dichiarato dentro un blocco (ciclo, if, ecc ecc...) finisce nella memoria globale.
> Quindi, per evitare di fare confusione, è meglio dichiarare tutte le variabili fuori dai blocchi per poi usarle dentro i blocchi.
>
> L'unico modo per creare uno scope separato in javascript è attraverso le funzioni.
Questo più o meno lo sapevo: alla fine del ciclo k rimane a 19.
Scritto da:
> Scritto da:
> > Scritto da: Mattia
> > > Scritto da:
> > > > Come mai il risultato di queste due funzioni Javascript è diverso?
> > > >
> > > >
> > > > La prima esegue la somma dei valori di delta(n, j*k, x) per j da 2 a n, la seconda no.
> > > > Funzioni simili dove invece della somma si fa un prodotto non mostrano differenze cambiando l'ordine dei fattori.
> > >
> > > Posta anche la funzione delta.
> >
> > È un po' complesso, spero non manchi niente.
> >
> > Per il quadro completo bisogna andare su
> >
> > http://www1.chapman.edu/~jipsen/svg/asciisvgeditor...
> >
> > scaricare la pagina con tutti gli annessi, aggiungerci nell'HEAD la riga
> >
> > <script type="text/javascript" src="myfunctions.js"></script>
> >
> > Avevo poi aggiunto istruzioni, suggerite dalla suora, per mostrare il sorgente del SVG prodotto in una TEXTAREA.
> >
> > Lo script myfunctions.js definisce alcune funzioni
> >
> >
> > La funzione delta si può definire al volo delta come delta2 o delta4 per vedere se cambia qualcosa. Differiscono per l'ordine dei fattori nel ciclo ma il risultato non cambia.
> >
> > Nella funzione a invece stranamente l'ordine degli addendi conta.
> >
> > L'istruzione return(0 + z) è perché poi dovrò aggiungere a z un valore costante, momentaneamente azzerato per il debugging.
> >
> > Nel riquadro della pagina con le istruzioni si mette
> >
> >
> > dove plot è una funzione definita dall'autore della pagina, che suppongo priva di bachi perché con questa pagina ho disegnato funzioni su funzioni quando creavo le figure per la tesi di laurea, senza mai notare anomalie.
> >
> > Puoi cambiare i parametri nelle funzioni delta ed a per vedere come cambia il grafico. Per la delta ne ho esaminate parecchie, per la a devo ancora farlo perché avevo il problema che non dava i risultati attesi, risolto cambiando l'ordine degli addendi.
> >
> > Potrei pensare che
> >
> > z = delta(n, j*k, x) + z
> >
> > calcoli delta, assegni tale valore a z e poi ci sommi z, che avendo assunto tale valore risulta in due volte delta, e che invece
> >
> > z = z + delta(n, j*k, x)
> >
> > assegni a z il valore del ciclo precedente e poi vi somma delta, che è quanto voluto.
> >
> > Prove fatte con delle delta definite costanti mi porterebbero a pensare che succeda proprio questo: ma allora perché nelle altre funzioni, dove invece di sommare si moltiplica, il risultato è quello giusto indipendentemente dall'ordine?
> >
> > P.S. CODE produce testo diverso a seconda che contenga o meno dei salti a capo.
>
> R. Credo che l'ANOmalia sia dovuta all'uso della stessa variabile z come accumulatore in una funzione e in un'altra funzione da essa chiamata. Non perché ne abbia seguito passo per passo le conseguenze, ma perché chiamando le variabili in modo diverso la funzione si comporta come dovrebbe indipendentemente dall'ordine degli addendi.
>
> Credevo che ogni variabile interna a una funzione avesse uno scope distinto da variabili omonime in altre funzioni o al di fuori di quella funzione, a quanto pare non è così. Però ciò complica la vita allo scrivere funzioni in Javascript da riutilizzare, perché nel farlo dovresti andare a vedere come sono fatte e non ti puoi fidare.
Errato: in javascript le funzioni sono il solo modo possibile per creare uno scope separato, tant'è che siccome in javascript non ci sono i namespace per ottenerli si usano le funzioni.
Quello a cui devi stare attento se mai è il contrario: qualsiasi cosa venga dichiarata al di fuori di una funzione, finisce nella memoria globale.
Facciamo degli esempi...
Quando chiami la funzione func2 ti dirà errore: ti dirà che la variabile "a" non è mai stata dichiarata, perché infatti viene dichiarata nella funzione func1 che ha un suo scope separato.
In questo caso invece a è una veriabile globale ed è accessibile a tutte le funzioni.
In quest'ultimo caso all'interno della funzione func1 viene dichiarata una variabile locale omonima di quella globale: all'interno della funzione la variabile globale viene nascosta in favore di quella locale, mentre in tutto il resto del codice (al di fuori della funzione func1) "a" è la variabile globale.
Anche la funzione func3, trovandosi all'interno della funzione func1, accede alla variabile locale, che nasconde quella globale. Essa, a sua volta, potrebbe nascondere la variabile locale di func1 dichiarando a sua volta una nuova variabile "a".
Vediamo poi un'ultima curiosità.
Se non lo sapevi, sallo: mentre in altri linguaggi ogni blocco di codice ha uno scope separato, in javascript ciò che viene dichiarato dentro un blocco (ciclo, if, ecc ecc...) finisce nella memoria globale.
Quindi, per evitare di fare confusione, è meglio dichiarare tutte le variabili fuori dai blocchi per poi usarle dentro i blocchi.
L'unico modo per creare uno scope separato in javascript è attraverso le funzioni.
> Scritto da:
> > Scritto da: Mattia
> > > Scritto da:
> > > > Come mai il risultato di queste due funzioni Javascript è diverso?
> > > >
> > > >
function a(n, k, x) {
> > > > z = 0;
> > > > for (j = 2; j <= n; j++) {
> > > > z = z + delta(n, j*k, x);
> > > > }
> > > > return (0 + z);
> > > > }
> > > >
> > > > function a(n, k, x) {
> > > > z = 0;
> > > > for (j = 2; j <= n; j++) {
> > > > z = delta(n, j*k, x) + z;
> > > > }
> > > > return (0 + z);
> > > > }> > > > La prima esegue la somma dei valori di delta(n, j*k, x) per j da 2 a n, la seconda no.
> > > > Funzioni simili dove invece della somma si fa un prodotto non mostrano differenze cambiando l'ordine dei fattori.
> > >
> > > Posta anche la funzione delta.
> >
> > È un po' complesso, spero non manchi niente.
> >
> > Per il quadro completo bisogna andare su
> >
> > http://www1.chapman.edu/~jipsen/svg/asciisvgeditor...

> >
> > scaricare la pagina con tutti gli annessi, aggiungerci nell'HEAD la riga
> >
> > <script type="text/javascript" src="myfunctions.js"></script>
> >
> > Avevo poi aggiunto istruzioni, suggerite dalla suora, per mostrare il sorgente del SVG prodotto in una TEXTAREA.
> >
> > Lo script myfunctions.js definisce alcune funzioni
> >
> >
function fatt(n) {
> > var i,f
> > f=1
> > for(i = n; i > 1; i--) {
> > f=f*i
> > }
> > return(f)
> > }
> >
> >
> > function delta2(n, j, x) {
> > y = 1;
> > z = 1;
> > for (i = 1; i < j; i++) {
> > y = (x - i)*y;
> > }
> > for (i = j + 1; i <= n; i++) {
> > z = (x - i)*z;
> > }
> > z = z*y
> > z = z * (-1)**(n - j) / ( fatt(j - 1) * fatt(n - j) )
> > return z;
> > }
> >
> > function delta4(n, j, x) {
> > y = 1;
> > z = 1;
> > for (i = 1; i < j; i++) {
> > y = y*(x - i);
> > }
> > for (i = j + 1; i <= n; i++) {
> > z = z*(x - i);
> > }
> > z = z*y
> > z = z * (-1)**(n - j) / ( fatt(j - 1) * fatt(n - j) )
> > return z;
> > }
> >
> > function delta(n, j, x) {
> > return delta2(n, j, x);
> > }
> >
> > function a(n, k, x) {
> > z = 0;
> > for (j = 2; j <= n; j++) {
> > z = z + delta(n, j*k, x);
> > }
> > return (0 + z);
> > }> > La funzione delta si può definire al volo delta come delta2 o delta4 per vedere se cambia qualcosa. Differiscono per l'ordine dei fattori nel ciclo ma il risultato non cambia.
> >
> > Nella funzione a invece stranamente l'ordine degli addendi conta.
> >
> > L'istruzione return(0 + z) è perché poi dovrò aggiungere a z un valore costante, momentaneamente azzerato per il debugging.
> >
> > Nel riquadro della pagina con le istruzioni si mette
> >
> >
setBorder(1)
> > initPicture(-1,12, -2, 2)
> > axes(1, 1, "labels", 1, 1)
> >
> > stroke = "blue"
> > plot("delta(10, 4, x)")
> >
> > plot("a(10, 5, x)")> > dove plot è una funzione definita dall'autore della pagina, che suppongo priva di bachi perché con questa pagina ho disegnato funzioni su funzioni quando creavo le figure per la tesi di laurea, senza mai notare anomalie.
> >
> > Puoi cambiare i parametri nelle funzioni delta ed a per vedere come cambia il grafico. Per la delta ne ho esaminate parecchie, per la a devo ancora farlo perché avevo il problema che non dava i risultati attesi, risolto cambiando l'ordine degli addendi.
> >
> > Potrei pensare che
> >
> > z = delta(n, j*k, x) + z
> >
> > calcoli delta, assegni tale valore a z e poi ci sommi z, che avendo assunto tale valore risulta in due volte delta, e che invece
> >
> > z = z + delta(n, j*k, x)
> >
> > assegni a z il valore del ciclo precedente e poi vi somma delta, che è quanto voluto.
> >
> > Prove fatte con delle delta definite costanti mi porterebbero a pensare che succeda proprio questo: ma allora perché nelle altre funzioni, dove invece di sommare si moltiplica, il risultato è quello giusto indipendentemente dall'ordine?
> >
> > P.S. CODE produce testo diverso a seconda che contenga o meno dei salti a capo.
>
> R. Credo che l'ANOmalia sia dovuta all'uso della stessa variabile z come accumulatore in una funzione e in un'altra funzione da essa chiamata. Non perché ne abbia seguito passo per passo le conseguenze, ma perché chiamando le variabili in modo diverso la funzione si comporta come dovrebbe indipendentemente dall'ordine degli addendi.
>
> Credevo che ogni variabile interna a una funzione avesse uno scope distinto da variabili omonime in altre funzioni o al di fuori di quella funzione, a quanto pare non è così. Però ciò complica la vita allo scrivere funzioni in Javascript da riutilizzare, perché nel farlo dovresti andare a vedere come sono fatte e non ti puoi fidare.
Errato: in javascript le funzioni sono il solo modo possibile per creare uno scope separato, tant'è che siccome in javascript non ci sono i namespace per ottenerli si usano le funzioni.
var myNamespace = new function() {
var internalFunction = function() {
};
this.publicFunction = function() {
};
};
Quello a cui devi stare attento se mai è il contrario: qualsiasi cosa venga dichiarata al di fuori di una funzione, finisce nella memoria globale.
Facciamo degli esempi...
function func1(){
var a=1;
}
function func2(){
console.log(a);
}Quando chiami la funzione func2 ti dirà errore: ti dirà che la variabile "a" non è mai stata dichiarata, perché infatti viene dichiarata nella funzione func1 che ha un suo scope separato.
var a=1;
function func1(){
a=3;
}
function func2(){
console.log(a);
}
func2(); //stampa 1
func1(); //cambia valore alla variabile globale a
func2(); //stampa 3In questo caso invece a è una veriabile globale ed è accessibile a tutte le funzioni.
var a=1;
function func1(){
var a=3; //dichiarazione di una variabile locale che nasconde quella globale
console.log(a);
func3();
function func3(){
console.log(a);
}
}
function func2(){
console.log(a);
}
func2(); //stampa 1
func1(); //stampa 3 per due volte
func2(); //stampa 1In quest'ultimo caso all'interno della funzione func1 viene dichiarata una variabile locale omonima di quella globale: all'interno della funzione la variabile globale viene nascosta in favore di quella locale, mentre in tutto il resto del codice (al di fuori della funzione func1) "a" è la variabile globale.
Anche la funzione func3, trovandosi all'interno della funzione func1, accede alla variabile locale, che nasconde quella globale. Essa, a sua volta, potrebbe nascondere la variabile locale di func1 dichiarando a sua volta una nuova variabile "a".
Vediamo poi un'ultima curiosità.
for(var k=0;k<20;k++){
}
if(true){
var a=4;
}
console.log(k);
console.log(a);Se non lo sapevi, sallo: mentre in altri linguaggi ogni blocco di codice ha uno scope separato, in javascript ciò che viene dichiarato dentro un blocco (ciclo, if, ecc ecc...) finisce nella memoria globale.
Quindi, per evitare di fare confusione, è meglio dichiarare tutte le variabili fuori dai blocchi per poi usarle dentro i blocchi.
L'unico modo per creare uno scope separato in javascript è attraverso le funzioni.
Scritto da
Non Autenticato
il 2020-02-21 20:20:03.0 alle 2020-02-21 20:20:03.0
Scritto da:
> Scritto da: Mattia
> > Scritto da:
> > > Scritto da:
> > > > Scritto da:
> > > > > Scritto da:
> > > > > > Scritto da: Mattia
> > > > > > > Scritto da:
> > > > > > > > Scritto da:
> > > > > > > > > > > > > https://gisanddata.maps.arcgis.com/apps/opsdashboa...
> > > > > > > > > > > >
> > > > > > > > > > > > Dall'altro giorno i morti sono quasi raddoppiati.
> > > > > > > > > > >
> > > > > > > > > > > 725
> > > > > > > > > >
> > > > > > > > > > La mortalità sembra essere del 20-30%.
> > > > > > > > >
> > > > > > > > > 910
> > > > > > > >
> > > > > > > > 1018
> > > > > > >
> > > > > > > La mortalità si sta abbassando... adesso è al 18%. Dicono che ci si mette tanto a guarire.
> > > > > >
> > > > > > 60,364 contagiati.
> > > > > >
> > > > > > 1,370 morti.
> > > > >
> > > > > 67.178 - 1.527.
> > > >
> > > > 69.287 - 1.670
> > >
> > > 71.902 - 1.775
> >
> > La mortalità è scesa al 13%.
>
> 73.451 - 1.875
>
> > Io ho la febbre, chissà se...
>
> 73.452
76.798 - 2.250
> Scritto da: Mattia
> > Scritto da:
> > > Scritto da:
> > > > Scritto da:
> > > > > Scritto da:
> > > > > > Scritto da: Mattia
> > > > > > > Scritto da:
> > > > > > > > Scritto da:
> > > > > > > > > > > > > https://gisanddata.maps.arcgis.com/apps/opsdashboa...

> > > > > > > > > > > >
> > > > > > > > > > > > Dall'altro giorno i morti sono quasi raddoppiati.
> > > > > > > > > > >
> > > > > > > > > > > 725
> > > > > > > > > >
> > > > > > > > > > La mortalità sembra essere del 20-30%.
> > > > > > > > >
> > > > > > > > > 910
> > > > > > > >
> > > > > > > > 1018
> > > > > > >
> > > > > > > La mortalità si sta abbassando... adesso è al 18%. Dicono che ci si mette tanto a guarire.
> > > > > >
> > > > > > 60,364 contagiati.
> > > > > >
> > > > > > 1,370 morti.
> > > > >
> > > > > 67.178 - 1.527.
> > > >
> > > > 69.287 - 1.670
> > >
> > > 71.902 - 1.775
> >
> > La mortalità è scesa al 13%.
>
> 73.451 - 1.875
>
> > Io ho la febbre, chissà se...
>
> 73.452

76.798 - 2.250
Scritto da
Non Autenticato
il 2020-02-21 20:17:08.0 alle 2020-02-21 20:17:08.0
Scritto da:
> Scritto da: Mattia
> > Scritto da:
> > > Come mai il risultato di queste due funzioni Javascript è diverso?
> > >
> > >
> > > La prima esegue la somma dei valori di delta(n, j*k, x) per j da 2 a n, la seconda no.
> > > Funzioni simili dove invece della somma si fa un prodotto non mostrano differenze cambiando l'ordine dei fattori.
> >
> > Posta anche la funzione delta.
>
> È un po' complesso, spero non manchi niente.
>
> Per il quadro completo bisogna andare su
>
> http://www1.chapman.edu/~jipsen/svg/asciisvgeditor...
>
> scaricare la pagina con tutti gli annessi, aggiungerci nell'HEAD la riga
>
> <script type="text/javascript" src="myfunctions.js"></script>
>
> Avevo poi aggiunto istruzioni, suggerite dalla suora, per mostrare il sorgente del SVG prodotto in una TEXTAREA.
>
> Lo script myfunctions.js definisce alcune funzioni
>
>
> La funzione delta si può definire al volo delta come delta2 o delta4 per vedere se cambia qualcosa. Differiscono per l'ordine dei fattori nel ciclo ma il risultato non cambia.
>
> Nella funzione a invece stranamente l'ordine degli addendi conta.
>
> L'istruzione return(0 + z) è perché poi dovrò aggiungere a z un valore costante, momentaneamente azzerato per il debugging.
>
> Nel riquadro della pagina con le istruzioni si mette
>
>
> dove plot è una funzione definita dall'autore della pagina, che suppongo priva di bachi perché con questa pagina ho disegnato funzioni su funzioni quando creavo le figure per la tesi di laurea, senza mai notare anomalie.
>
> Puoi cambiare i parametri nelle funzioni delta ed a per vedere come cambia il grafico. Per la delta ne ho esaminate parecchie, per la a devo ancora farlo perché avevo il problema che non dava i risultati attesi, risolto cambiando l'ordine degli addendi.
>
> Potrei pensare che
>
> z = delta(n, j*k, x) + z
>
> calcoli delta, assegni tale valore a z e poi ci sommi z, che avendo assunto tale valore risulta in due volte delta, e che invece
>
> z = z + delta(n, j*k, x)
>
> assegni a z il valore del ciclo precedente e poi vi somma delta, che è quanto voluto.
>
> Prove fatte con delle delta definite costanti mi porterebbero a pensare che succeda proprio questo: ma allora perché nelle altre funzioni, dove invece di sommare si moltiplica, il risultato è quello giusto indipendentemente dall'ordine?
>
> P.S. CODE produce testo diverso a seconda che contenga o meno dei salti a capo.
R. Credo che l'ANOmalia sia dovuta all'uso della stessa variabile z come accumulatore in una funzione e in un'altra funzione da essa chiamata. Non perché ne abbia seguito passo per passo le conseguenze, ma perché chiamando le variabili in modo diverso la funzione si comporta come dovrebbe indipendentemente dall'ordine degli addendi.
Credevo che ogni variabile interna a una funzione avesse uno scope distinto da variabili omonime in altre funzioni o al di fuori di quella funzione, a quanto pare non è così. Però ciò complica la vita allo scrivere funzioni in Javascript da riutilizzare, perché nel farlo dovresti andare a vedere come sono fatte e non ti puoi fidare.
> Scritto da: Mattia
> > Scritto da:
> > > Come mai il risultato di queste due funzioni Javascript è diverso?
> > >
> > >
function a(n, k, x) {
> > > z = 0;
> > > for (j = 2; j <= n; j++) {
> > > z = z + delta(n, j*k, x);
> > > }
> > > return (0 + z);
> > > }
> > >
> > > function a(n, k, x) {
> > > z = 0;
> > > for (j = 2; j <= n; j++) {
> > > z = delta(n, j*k, x) + z;
> > > }
> > > return (0 + z);
> > > }> > > La prima esegue la somma dei valori di delta(n, j*k, x) per j da 2 a n, la seconda no.
> > > Funzioni simili dove invece della somma si fa un prodotto non mostrano differenze cambiando l'ordine dei fattori.
> >
> > Posta anche la funzione delta.
>
> È un po' complesso, spero non manchi niente.
>
> Per il quadro completo bisogna andare su
>
> http://www1.chapman.edu/~jipsen/svg/asciisvgeditor...

>
> scaricare la pagina con tutti gli annessi, aggiungerci nell'HEAD la riga
>
> <script type="text/javascript" src="myfunctions.js"></script>
>
> Avevo poi aggiunto istruzioni, suggerite dalla suora, per mostrare il sorgente del SVG prodotto in una TEXTAREA.
>
> Lo script myfunctions.js definisce alcune funzioni
>
>
function fatt(n) {
> var i,f
> f=1
> for(i = n; i > 1; i--) {
> f=f*i
> }
> return(f)
> }
>
>
> function delta2(n, j, x) {
> y = 1;
> z = 1;
> for (i = 1; i < j; i++) {
> y = (x - i)*y;
> }
> for (i = j + 1; i <= n; i++) {
> z = (x - i)*z;
> }
> z = z*y
> z = z * (-1)**(n - j) / ( fatt(j - 1) * fatt(n - j) )
> return z;
> }
>
> function delta4(n, j, x) {
> y = 1;
> z = 1;
> for (i = 1; i < j; i++) {
> y = y*(x - i);
> }
> for (i = j + 1; i <= n; i++) {
> z = z*(x - i);
> }
> z = z*y
> z = z * (-1)**(n - j) / ( fatt(j - 1) * fatt(n - j) )
> return z;
> }
>
> function delta(n, j, x) {
> return delta2(n, j, x);
> }
>
> function a(n, k, x) {
> z = 0;
> for (j = 2; j <= n; j++) {
> z = z + delta(n, j*k, x);
> }
> return (0 + z);
> }> La funzione delta si può definire al volo delta come delta2 o delta4 per vedere se cambia qualcosa. Differiscono per l'ordine dei fattori nel ciclo ma il risultato non cambia.
>
> Nella funzione a invece stranamente l'ordine degli addendi conta.
>
> L'istruzione return(0 + z) è perché poi dovrò aggiungere a z un valore costante, momentaneamente azzerato per il debugging.
>
> Nel riquadro della pagina con le istruzioni si mette
>
>
setBorder(1)
> initPicture(-1,12, -2, 2)
> axes(1, 1, "labels", 1, 1)
>
> stroke = "blue"
> plot("delta(10, 4, x)")
>
> plot("a(10, 5, x)")> dove plot è una funzione definita dall'autore della pagina, che suppongo priva di bachi perché con questa pagina ho disegnato funzioni su funzioni quando creavo le figure per la tesi di laurea, senza mai notare anomalie.
>
> Puoi cambiare i parametri nelle funzioni delta ed a per vedere come cambia il grafico. Per la delta ne ho esaminate parecchie, per la a devo ancora farlo perché avevo il problema che non dava i risultati attesi, risolto cambiando l'ordine degli addendi.
>
> Potrei pensare che
>
> z = delta(n, j*k, x) + z
>
> calcoli delta, assegni tale valore a z e poi ci sommi z, che avendo assunto tale valore risulta in due volte delta, e che invece
>
> z = z + delta(n, j*k, x)
>
> assegni a z il valore del ciclo precedente e poi vi somma delta, che è quanto voluto.
>
> Prove fatte con delle delta definite costanti mi porterebbero a pensare che succeda proprio questo: ma allora perché nelle altre funzioni, dove invece di sommare si moltiplica, il risultato è quello giusto indipendentemente dall'ordine?
>
> P.S. CODE produce testo diverso a seconda che contenga o meno dei salti a capo.
R. Credo che l'ANOmalia sia dovuta all'uso della stessa variabile z come accumulatore in una funzione e in un'altra funzione da essa chiamata. Non perché ne abbia seguito passo per passo le conseguenze, ma perché chiamando le variabili in modo diverso la funzione si comporta come dovrebbe indipendentemente dall'ordine degli addendi.
Credevo che ogni variabile interna a una funzione avesse uno scope distinto da variabili omonime in altre funzioni o al di fuori di quella funzione, a quanto pare non è così. Però ciò complica la vita allo scrivere funzioni in Javascript da riutilizzare, perché nel farlo dovresti andare a vedere come sono fatte e non ti puoi fidare.
Politica
Scritto da
Non Autenticato
il 2020-02-21 20:09:03.0 alle 2020-02-21 20:09:03.0
> Hai anche detto che l'ambientalismo deve essere imposto
Attenzione, io lo dicevo in senso oggettivo, non normativo, anche se la distinzione è più che altro filosofica.
In altre parole, in una democrazia l'ambientalismo non vince perché la gente non lo capisce.
In realtà mi pare di constatare che un'ideologia coerentemente basata sulla logica non esiste. A me piacerebbe una politica strutturata come un sistema assiomatico, ma qualsiasi principio per quanto buono negli intenti di chi l'ha formulato viene prima o poi deformato fino a nuocere a qualcuno (basta vedere che chiunque si definisca liberale prima o poi va a parare sul nucleare, la politica energetica più illiberale che c'è). Ne consegue che la formazione della società non può che avvenire tramite compromessi e tiri alla fune, una continua lotta, che è proprio ciò che la ricerca di principi universali vorrebbe evitare.
Riflettevo l'altro giorno sul water che la politica, inoltre, è stata resa - probabilmente apposta - da un lato estremamente tecnica, richiedente una preparazione specifica in giurisprudenza, scienze politiche e materie simili, il che ne rende difficile l'accesso al comune cittadino (che deve votare senza capire); dall'altro così sporca che chiunque abbia un minimo d'intelligenza non la tocca nemmeno con un bastoncino.
Chi è intelligente studia qualcosa e poi cerca di praticare ciò che ha studiato, chi non possiede altra forma di intelligenza che saper parlare finisce in politica. Quindi politici mediocri, maggiordomi dei grandi poteri, costituiscono l'unica scelta oggi possibile.
(Sì, è all'"avvocato degli italiani" che in questo momento dovrebbero fischiare le orecchie)
Attenzione, io lo dicevo in senso oggettivo, non normativo, anche se la distinzione è più che altro filosofica.
In altre parole, in una democrazia l'ambientalismo non vince perché la gente non lo capisce.
In realtà mi pare di constatare che un'ideologia coerentemente basata sulla logica non esiste. A me piacerebbe una politica strutturata come un sistema assiomatico, ma qualsiasi principio per quanto buono negli intenti di chi l'ha formulato viene prima o poi deformato fino a nuocere a qualcuno (basta vedere che chiunque si definisca liberale prima o poi va a parare sul nucleare, la politica energetica più illiberale che c'è). Ne consegue che la formazione della società non può che avvenire tramite compromessi e tiri alla fune, una continua lotta, che è proprio ciò che la ricerca di principi universali vorrebbe evitare.
Riflettevo l'altro giorno sul water che la politica, inoltre, è stata resa - probabilmente apposta - da un lato estremamente tecnica, richiedente una preparazione specifica in giurisprudenza, scienze politiche e materie simili, il che ne rende difficile l'accesso al comune cittadino (che deve votare senza capire); dall'altro così sporca che chiunque abbia un minimo d'intelligenza non la tocca nemmeno con un bastoncino.
Chi è intelligente studia qualcosa e poi cerca di praticare ciò che ha studiato, chi non possiede altra forma di intelligenza che saper parlare finisce in politica. Quindi politici mediocri, maggiordomi dei grandi poteri, costituiscono l'unica scelta oggi possibile.
(Sì, è all'"avvocato degli italiani" che in questo momento dovrebbero fischiare le orecchie)
Multiculturalismo a Bruxelles
Ad
https://www.davidicke.com/article/513643/firemen-flee-attacked-migrant-youths-multicultural-molenbeek
“They call us for small fires and attack us while we want to help.”
Politica
Scritto da
Non Autenticato
il 2020-02-21 19:51:11.0 alle 2020-02-21 19:51:11.0
Scritto da: Mattia
> https://www.boredpanda.com/school-bullying-boy-dwa...
>
> Ed ecco perché il bullismo deve essere punito con il riformatorio o con il carcere (a seconda dell'età del bullo).
Basta vedere che effetti ha avuto su Yoda
> https://www.boredpanda.com/school-bullying-boy-dwa...

>
> Ed ecco perché il bullismo deve essere punito con il riformatorio o con il carcere (a seconda dell'età del bullo).
Basta vedere che effetti ha avuto su Yoda
Politica
Scritto da
Non Autenticato
il 2020-02-21 19:49:55.0 alle 2020-02-21 19:49:55.0
Scritto da: Ordine
> Scritto da:
> > Scritto da: Mattia
> > > Scritto da:
> > > > Scritto da: Mattia
> > > > > Scritto da:
> > > > > > > la scimmietta bionda, non avendo nessuna qualità intellettuale,
> > > > > >
> > > > > > belink?
> > > > >
> > > > > Giusto, dimenticavo la sua capacità di crearsi dei followers urlando cazzate per alimentare polemiconi sterili.
> > > >
> > > > Porta esempi di interventi in cui la Meloni ha dato prova di essere una deficiente.
> > >
> > > Fa parte di una destra illiberale, di ispirazione fascista, che esalta la cristianità e che si oppone alle istanze politiche in favore della libertà personale.
> > > Tanto per mettersi ancora un po' di più in ridicolo, fa sceneggiate come quella che vedi nel video sopra, o come quella su cui è stato fatto il famoso remix.
> > >
> > > Solo Salvini la supera per idiozia. Del resto dobbiamo ricordarci che sia lei che Salvini cercano i voti di tutti quei mezzi analfabeti di termometropolitico che si definiscono di destra.
> > >
> > > > Per esempio ha definito la Jebreal "scema", per cui i casi sono due:
> > > > Meloni è una persona normale e Jebreal una scema;
> > > > Meloni è una deficiente e Jebreal una scema deficiente
> > >
> > > Penso che tu ti riferisca a questo.
> > >
> > >
> > >
> > > Non l'ha chiamata "scema"... l'ha chiamata "matta"
> >
> > "scema" dev'essere stata una mia rielaborazione
> >
> > > dopo che lei ha affermato che l'Italia non si è mai liberata dal fascismo (cosa verissima) e che sa che è difficile guardare in faccia a una donna straniera che è diventata cittadina italiana.
> > > Infatti tra gli elettori della Meloni (e anche tra quelli che si fanno corteggiare come te) ci sono tante persone che la cittadinanza non gliel'avrebbero mai data.
> >
> > Minchia, hanno dato la cittadinanza alla Jebreal? Com'è facile avere la cittadinanza in Italia! Facile per tutti o facile per la Jebreal? Non ti chiedi perché?
> > La Jebreal è quella che si agitava tanto perché il parlamento inglese non approvasse il brexit deciso dagli elettori inglesi in un referendum.
> >
> > Pensavo fosse un personaggio del mondo affaristico britannico, ma se ha ottenuto anche la cittadinanza italiana sui due piedi, inizio a pensare che sia una del genere dei Betancourt, e che se le servisse la cittadinanza svizzera, notoriamente difficile da ottenere, gliela darebbero pronta chiavi in mano.
> >
> > Voglio dire, se io volessi la cittadinanza inglese, svizzera, statunitense, eccetera... dovrei come minimo essere una celebrità, un vincitore di premio Nobel, o cose simili. Alla Jebreal invece snappete!
> >
> > Ergo, costei è una esponente di qualche sottinsieme significativo dell'elite internazionale che attualmente riveste l'aspetto di un centrosinistra.
> >
> > > Quindi cos'ha detto di sbagliato?
> > >
> > > La Jebreal l'ho sempre vista in televisione che diceva peste e corna sulla destra... e ha perfettamente ragione. Poi però bisogna vedere quali sono le sue idee in senso positivo, perché un antifascista non è necessariamente un liberale.
> >
> > Direi che la Jebreal è quanto di meno liberale ci possa essere.
> >
> > > Più che altro mi chiedo come faccia una persona apparentemente intelligente come te a non vedere che Salvini e Meloni sono tipo i capi della tribù delle scimmie.
> > >
> > > Posso capire che una persona che voglia meno immigrazione dia il voto a Salvini o Meloni tappandosi il naso, ma difendere a spada tratta certi individui... dai, ma sei serio?
> >
> > Il problema è che poiché non seguo granché la politica, perché mi dà il mal di stomaco, di questo o quel politico mi capita di sentire un'opinione e di farmene un'idea positiva per quella - in particolare, della Meloni per aver dato della matta alla Jebreal, della quale del resto l'unica cosa che so è che batteva i piedi per terra quando al referendum ha vinto il brexit. Una volta invece ero estremamente selettivo e bastava che uno dicesse una cosa che non mi andava in mezzo a un mare di argomenti con cui concordavo, per tirargli una riga sopra.
> > Un po' perché esortato da diversi soggetti a esser meno drastico ("tu ce l'hai sempre con tutti, non ti va mai bene nessuno" - "quelli che mi vanno bene non fanno il politico"), un po' per pigrizia, ho finito per smettere di fare le pulci a tutti su quello che dicono, non ascoltando o dimenticando quel che non mi piace e concentrandomi su quel che mi piace, come fa la maggioranza della gente. In effetti è stato un errore, dato che questa sordità selettiva mi ha permesso di farmi fregare dai 5 stelle. Dovrei lasciar perdere i consigli di certi fessi e riprendere le antiche cattive abitudini
> >
> > In effetti, a parte quelle sull'immigrazione, le idee di Salvini e della Meloni non mi piacciono o non mi dicono nulla.
> >
> > Quando hai alcune idee di estrema sinistra, altre di estrema destra e altre di estremo centro, quando vorresti più libertà per te ma allora dovrebbe essere più libertà per tutti ma nella libertà degli altri è compresa quella di nuocerti, è difficile trovare un partito da votare.
> >
>
> La Jabreal è una frustrata, una di quelle femministe che siccome ha subito violenza da bambina deve sfogarsi nel 2020 contro il genere maschile in qualche modo. Umanamente schifosa.
Infatti uno dei motivi per cui mi dà fastidio è che è una neofemminista. Il femminismo era una rivendicazione di parità di diritti, il neofemminismo è un'ideologia antimaschile. Piace alla neosinistra sempre in cerca di pretesti per tenere sotto controllo la plebe.
> Scritto da:
> > Scritto da: Mattia
> > > Scritto da:
> > > > Scritto da: Mattia
> > > > > Scritto da:
> > > > > > > la scimmietta bionda, non avendo nessuna qualità intellettuale,
> > > > > >
> > > > > > belink?
> > > > >
> > > > > Giusto, dimenticavo la sua capacità di crearsi dei followers urlando cazzate per alimentare polemiconi sterili.

> > > >
> > > > Porta esempi di interventi in cui la Meloni ha dato prova di essere una deficiente.
> > >
> > > Fa parte di una destra illiberale, di ispirazione fascista, che esalta la cristianità e che si oppone alle istanze politiche in favore della libertà personale.
> > > Tanto per mettersi ancora un po' di più in ridicolo, fa sceneggiate come quella che vedi nel video sopra, o come quella su cui è stato fatto il famoso remix.
> > >
> > > Solo Salvini la supera per idiozia. Del resto dobbiamo ricordarci che sia lei che Salvini cercano i voti di tutti quei mezzi analfabeti di termometropolitico che si definiscono di destra.
> > >
> > > > Per esempio ha definito la Jebreal "scema", per cui i casi sono due:
> > > > Meloni è una persona normale e Jebreal una scema;
> > > > Meloni è una deficiente e Jebreal una scema deficiente

> > >
> > > Penso che tu ti riferisca a questo.
> > >
> > >
> > >
> > > Non l'ha chiamata "scema"... l'ha chiamata "matta"
> >
> > "scema" dev'essere stata una mia rielaborazione

> >
> > > dopo che lei ha affermato che l'Italia non si è mai liberata dal fascismo (cosa verissima) e che sa che è difficile guardare in faccia a una donna straniera che è diventata cittadina italiana.
> > > Infatti tra gli elettori della Meloni (e anche tra quelli che si fanno corteggiare come te) ci sono tante persone che la cittadinanza non gliel'avrebbero mai data.
> >
> > Minchia, hanno dato la cittadinanza alla Jebreal? Com'è facile avere la cittadinanza in Italia! Facile per tutti o facile per la Jebreal? Non ti chiedi perché?
> > La Jebreal è quella che si agitava tanto perché il parlamento inglese non approvasse il brexit deciso dagli elettori inglesi in un referendum.
> >
> > Pensavo fosse un personaggio del mondo affaristico britannico, ma se ha ottenuto anche la cittadinanza italiana sui due piedi, inizio a pensare che sia una del genere dei Betancourt, e che se le servisse la cittadinanza svizzera, notoriamente difficile da ottenere, gliela darebbero pronta chiavi in mano.
> >
> > Voglio dire, se io volessi la cittadinanza inglese, svizzera, statunitense, eccetera... dovrei come minimo essere una celebrità, un vincitore di premio Nobel, o cose simili. Alla Jebreal invece snappete!
> >
> > Ergo, costei è una esponente di qualche sottinsieme significativo dell'elite internazionale che attualmente riveste l'aspetto di un centrosinistra.
> >
> > > Quindi cos'ha detto di sbagliato?
> > >
> > > La Jebreal l'ho sempre vista in televisione che diceva peste e corna sulla destra... e ha perfettamente ragione. Poi però bisogna vedere quali sono le sue idee in senso positivo, perché un antifascista non è necessariamente un liberale.
> >
> > Direi che la Jebreal è quanto di meno liberale ci possa essere.
> >
> > > Più che altro mi chiedo come faccia una persona apparentemente intelligente come te a non vedere che Salvini e Meloni sono tipo i capi della tribù delle scimmie.
> > >
> > > Posso capire che una persona che voglia meno immigrazione dia il voto a Salvini o Meloni tappandosi il naso, ma difendere a spada tratta certi individui... dai, ma sei serio?
> >
> > Il problema è che poiché non seguo granché la politica, perché mi dà il mal di stomaco, di questo o quel politico mi capita di sentire un'opinione e di farmene un'idea positiva per quella - in particolare, della Meloni per aver dato della matta alla Jebreal, della quale del resto l'unica cosa che so è che batteva i piedi per terra quando al referendum ha vinto il brexit. Una volta invece ero estremamente selettivo e bastava che uno dicesse una cosa che non mi andava in mezzo a un mare di argomenti con cui concordavo, per tirargli una riga sopra.
> > Un po' perché esortato da diversi soggetti a esser meno drastico ("tu ce l'hai sempre con tutti, non ti va mai bene nessuno" - "quelli che mi vanno bene non fanno il politico"), un po' per pigrizia, ho finito per smettere di fare le pulci a tutti su quello che dicono, non ascoltando o dimenticando quel che non mi piace e concentrandomi su quel che mi piace, come fa la maggioranza della gente. In effetti è stato un errore, dato che questa sordità selettiva mi ha permesso di farmi fregare dai 5 stelle. Dovrei lasciar perdere i consigli di certi fessi e riprendere le antiche cattive abitudini

> >
> > In effetti, a parte quelle sull'immigrazione, le idee di Salvini e della Meloni non mi piacciono o non mi dicono nulla.
> >
> > Quando hai alcune idee di estrema sinistra, altre di estrema destra e altre di estremo centro, quando vorresti più libertà per te ma allora dovrebbe essere più libertà per tutti ma nella libertà degli altri è compresa quella di nuocerti, è difficile trovare un partito da votare.
> >
>
> La Jabreal è una frustrata, una di quelle femministe che siccome ha subito violenza da bambina deve sfogarsi nel 2020 contro il genere maschile in qualche modo. Umanamente schifosa.
Infatti uno dei motivi per cui mi dà fastidio è che è una neofemminista. Il femminismo era una rivendicazione di parità di diritti, il neofemminismo è un'ideologia antimaschile. Piace alla neosinistra sempre in cerca di pretesti per tenere sotto controllo la plebe.
Politica
Scritto da:
> Scritto da: Mattia
> > Scritto da:
> > > Scritto da: Mattia
> > > > Scritto da:
> > > > > > la scimmietta bionda, non avendo nessuna qualità intellettuale,
> > > > >
> > > > > belink?
> > > >
> > > > Giusto, dimenticavo la sua capacità di crearsi dei followers urlando cazzate per alimentare polemiconi sterili.
> > >
> > > Porta esempi di interventi in cui la Meloni ha dato prova di essere una deficiente.
> >
> > Fa parte di una destra illiberale, di ispirazione fascista, che esalta la cristianità e che si oppone alle istanze politiche in favore della libertà personale.
> > Tanto per mettersi ancora un po' di più in ridicolo, fa sceneggiate come quella che vedi nel video sopra, o come quella su cui è stato fatto il famoso remix.
> >
> > Solo Salvini la supera per idiozia. Del resto dobbiamo ricordarci che sia lei che Salvini cercano i voti di tutti quei mezzi analfabeti di termometropolitico che si definiscono di destra.
> >
> > > Per esempio ha definito la Jebreal "scema", per cui i casi sono due:
> > > Meloni è una persona normale e Jebreal una scema;
> > > Meloni è una deficiente e Jebreal una scema deficiente
> >
> > Penso che tu ti riferisca a questo.
> >
> >
> >
> > Non l'ha chiamata "scema"... l'ha chiamata "matta"
>
> "scema" dev'essere stata una mia rielaborazione
>
> > dopo che lei ha affermato che l'Italia non si è mai liberata dal fascismo (cosa verissima) e che sa che è difficile guardare in faccia a una donna straniera che è diventata cittadina italiana.
> > Infatti tra gli elettori della Meloni (e anche tra quelli che si fanno corteggiare come te) ci sono tante persone che la cittadinanza non gliel'avrebbero mai data.
>
> Minchia, hanno dato la cittadinanza alla Jebreal? Com'è facile avere la cittadinanza in Italia! Facile per tutti o facile per la Jebreal? Non ti chiedi perché?
> La Jebreal è quella che si agitava tanto perché il parlamento inglese non approvasse il brexit deciso dagli elettori inglesi in un referendum.
>
> Pensavo fosse un personaggio del mondo affaristico britannico, ma se ha ottenuto anche la cittadinanza italiana sui due piedi, inizio a pensare che sia una del genere dei Betancourt, e che se le servisse la cittadinanza svizzera, notoriamente difficile da ottenere, gliela darebbero pronta chiavi in mano.
>
> Voglio dire, se io volessi la cittadinanza inglese, svizzera, statunitense, eccetera... dovrei come minimo essere una celebrità, un vincitore di premio Nobel, o cose simili. Alla Jebreal invece snappete!
>
> Ergo, costei è una esponente di qualche sottinsieme significativo dell'elite internazionale che attualmente riveste l'aspetto di un centrosinistra.
>
> > Quindi cos'ha detto di sbagliato?
> >
> > La Jebreal l'ho sempre vista in televisione che diceva peste e corna sulla destra... e ha perfettamente ragione. Poi però bisogna vedere quali sono le sue idee in senso positivo, perché un antifascista non è necessariamente un liberale.
>
> Direi che la Jebreal è quanto di meno liberale ci possa essere.
>
> > Più che altro mi chiedo come faccia una persona apparentemente intelligente come te a non vedere che Salvini e Meloni sono tipo i capi della tribù delle scimmie.
> >
> > Posso capire che una persona che voglia meno immigrazione dia il voto a Salvini o Meloni tappandosi il naso, ma difendere a spada tratta certi individui... dai, ma sei serio?
>
> Il problema è che poiché non seguo granché la politica, perché mi dà il mal di stomaco, di questo o quel politico mi capita di sentire un'opinione e di farmene un'idea positiva per quella - in particolare, della Meloni per aver dato della matta alla Jebreal, della quale del resto l'unica cosa che so è che batteva i piedi per terra quando al referendum ha vinto il brexit. Una volta invece ero estremamente selettivo e bastava che uno dicesse una cosa che non mi andava in mezzo a un mare di argomenti con cui concordavo, per tirargli una riga sopra.
> Un po' perché esortato da diversi soggetti a esser meno drastico ("tu ce l'hai sempre con tutti, non ti va mai bene nessuno" - "quelli che mi vanno bene non fanno il politico"), un po' per pigrizia, ho finito per smettere di fare le pulci a tutti su quello che dicono, non ascoltando o dimenticando quel che non mi piace e concentrandomi su quel che mi piace, come fa la maggioranza della gente. In effetti è stato un errore, dato che questa sordità selettiva mi ha permesso di farmi fregare dai 5 stelle. Dovrei lasciar perdere i consigli di certi fessi e riprendere le antiche cattive abitudini
>
> In effetti, a parte quelle sull'immigrazione, le idee di Salvini e della Meloni non mi piacciono o non mi dicono nulla.
>
> Quando hai alcune idee di estrema sinistra, altre di estrema destra e altre di estremo centro, quando vorresti più libertà per te ma allora dovrebbe essere più libertà per tutti ma nella libertà degli altri è compresa quella di nuocerti, è difficile trovare un partito da votare.
>
La Jabreal è una frustrata, una di quelle femministe che siccome ha subito violenza da bambina deve sfogarsi nel 2020 contro il genere maschile in qualche modo. Umanamente schifosa.
> Scritto da: Mattia
> > Scritto da:
> > > Scritto da: Mattia
> > > > Scritto da:
> > > > > > la scimmietta bionda, non avendo nessuna qualità intellettuale,
> > > > >
> > > > > belink?
> > > >
> > > > Giusto, dimenticavo la sua capacità di crearsi dei followers urlando cazzate per alimentare polemiconi sterili.

> > >
> > > Porta esempi di interventi in cui la Meloni ha dato prova di essere una deficiente.
> >
> > Fa parte di una destra illiberale, di ispirazione fascista, che esalta la cristianità e che si oppone alle istanze politiche in favore della libertà personale.
> > Tanto per mettersi ancora un po' di più in ridicolo, fa sceneggiate come quella che vedi nel video sopra, o come quella su cui è stato fatto il famoso remix.
> >
> > Solo Salvini la supera per idiozia. Del resto dobbiamo ricordarci che sia lei che Salvini cercano i voti di tutti quei mezzi analfabeti di termometropolitico che si definiscono di destra.
> >
> > > Per esempio ha definito la Jebreal "scema", per cui i casi sono due:
> > > Meloni è una persona normale e Jebreal una scema;
> > > Meloni è una deficiente e Jebreal una scema deficiente

> >
> > Penso che tu ti riferisca a questo.
> >
> >
> >
> > Non l'ha chiamata "scema"... l'ha chiamata "matta"
>
> "scema" dev'essere stata una mia rielaborazione

>
> > dopo che lei ha affermato che l'Italia non si è mai liberata dal fascismo (cosa verissima) e che sa che è difficile guardare in faccia a una donna straniera che è diventata cittadina italiana.
> > Infatti tra gli elettori della Meloni (e anche tra quelli che si fanno corteggiare come te) ci sono tante persone che la cittadinanza non gliel'avrebbero mai data.
>
> Minchia, hanno dato la cittadinanza alla Jebreal? Com'è facile avere la cittadinanza in Italia! Facile per tutti o facile per la Jebreal? Non ti chiedi perché?
> La Jebreal è quella che si agitava tanto perché il parlamento inglese non approvasse il brexit deciso dagli elettori inglesi in un referendum.
>
> Pensavo fosse un personaggio del mondo affaristico britannico, ma se ha ottenuto anche la cittadinanza italiana sui due piedi, inizio a pensare che sia una del genere dei Betancourt, e che se le servisse la cittadinanza svizzera, notoriamente difficile da ottenere, gliela darebbero pronta chiavi in mano.
>
> Voglio dire, se io volessi la cittadinanza inglese, svizzera, statunitense, eccetera... dovrei come minimo essere una celebrità, un vincitore di premio Nobel, o cose simili. Alla Jebreal invece snappete!
>
> Ergo, costei è una esponente di qualche sottinsieme significativo dell'elite internazionale che attualmente riveste l'aspetto di un centrosinistra.
>
> > Quindi cos'ha detto di sbagliato?
> >
> > La Jebreal l'ho sempre vista in televisione che diceva peste e corna sulla destra... e ha perfettamente ragione. Poi però bisogna vedere quali sono le sue idee in senso positivo, perché un antifascista non è necessariamente un liberale.
>
> Direi che la Jebreal è quanto di meno liberale ci possa essere.
>
> > Più che altro mi chiedo come faccia una persona apparentemente intelligente come te a non vedere che Salvini e Meloni sono tipo i capi della tribù delle scimmie.
> >
> > Posso capire che una persona che voglia meno immigrazione dia il voto a Salvini o Meloni tappandosi il naso, ma difendere a spada tratta certi individui... dai, ma sei serio?
>
> Il problema è che poiché non seguo granché la politica, perché mi dà il mal di stomaco, di questo o quel politico mi capita di sentire un'opinione e di farmene un'idea positiva per quella - in particolare, della Meloni per aver dato della matta alla Jebreal, della quale del resto l'unica cosa che so è che batteva i piedi per terra quando al referendum ha vinto il brexit. Una volta invece ero estremamente selettivo e bastava che uno dicesse una cosa che non mi andava in mezzo a un mare di argomenti con cui concordavo, per tirargli una riga sopra.
> Un po' perché esortato da diversi soggetti a esser meno drastico ("tu ce l'hai sempre con tutti, non ti va mai bene nessuno" - "quelli che mi vanno bene non fanno il politico"), un po' per pigrizia, ho finito per smettere di fare le pulci a tutti su quello che dicono, non ascoltando o dimenticando quel che non mi piace e concentrandomi su quel che mi piace, come fa la maggioranza della gente. In effetti è stato un errore, dato che questa sordità selettiva mi ha permesso di farmi fregare dai 5 stelle. Dovrei lasciar perdere i consigli di certi fessi e riprendere le antiche cattive abitudini

>
> In effetti, a parte quelle sull'immigrazione, le idee di Salvini e della Meloni non mi piacciono o non mi dicono nulla.
>
> Quando hai alcune idee di estrema sinistra, altre di estrema destra e altre di estremo centro, quando vorresti più libertà per te ma allora dovrebbe essere più libertà per tutti ma nella libertà degli altri è compresa quella di nuocerti, è difficile trovare un partito da votare.
>
La Jabreal è una frustrata, una di quelle femministe che siccome ha subito violenza da bambina deve sfogarsi nel 2020 contro il genere maschile in qualche modo. Umanamente schifosa.
"Se tutti facessero così..."
"La Romania è ricchissima" cit. Dada
"La Romania è ricchissima" cit. Dada